Extending the JADE Framework for Semantic Peer-To-Peer Service Based Applications

Extending the JADE Framework for Semantic Peer-To-Peer Service Based Applications

Agostino Poggi (DII, Università degli Studi di Parma, Italy) and Michele Tomaiuolo (DII, Università degli Studi di Parma, Italy)
DOI: 10.4018/978-1-61520-973-6.ch002
OnDemand PDF Download:
No Current Special Offers


One of the main challenges of multi-agent systems is to become the main means to support legacy systems interoperability and to make the realization of scalable distributed systems easy. In the last years, however, two technologies, peer-to-peer and service-oriented, have made an impressive progress and seem to have good chances of competing with multi-agent systems for the realization of scalable and interoperable systems. Conversely, neither of these two technologies is able to provide by themselves the autonomy and social and proactive capabilities of agents and thus the development of flexible adaptive distributed systems may be difficult. This chapter shows how JADE, one of the most known and used software framework for the development of multi-agent systems, has been extended with these technologies both to support the realization of multi-agent systems and to facilitate the interoperability with peer-to-peer and service-oriented systems.
Chapter Preview


JADE (Java Agent DEvelopment framework) is a software framework designed to aid the development of agent applications in compliance with the FIPA specifications for interoperable intelligent multi-agent systems (Bellifemine, 2001; Bellifemine, 2008). The purpose of JADE is to simplify development while ensuring standard compliance through a comprehensive set of system services and agents. JADE is an active open source project, and the framework together with documentation and examples can be downloaded from JADE Home Page (JADE, 2009).

JADE is based on a peer-to-peer communication architecture. The intelligence, the initiative, the information, the resources and the control can be fully distributed across mobile terminals as well as computers connected to the fixed network. The environment evolves dynamically together with peers – that in JADE are called agents – that appear and disappear in the system according to the needs and the requirements of the application domain. Communication between the peers, regardless of whether they are running in the wireless or wired network, is completely symmetric with each peer being able to play both initiator and responder roles.

JADE is fully developed in Java and is based on the following driving principles:

  • Interoperability: JADE is compliant with the FIPA specifications (FIPA, 2000). As a consequence, JADE agents can interoperate with other agents, provided that they comply with the same standard.

  • Uniformity and portability: JADE provides a homogeneous set of APIs that are independent from the underlying network and Java version (edition, configuration and profile). More in details, the JADE run-time provides the same APIs both for the J2EE, J2SE and J2ME environment. In theory, application developers could decide the Java run-time environment at deploy-time.

  • Ease of use: the complexity of the middleware is hidden behind a simple and intuitive set of APIs.

  • Pay-as-you-go philosophy: programmers do not need to use all the features provided by the middleware. Features that are not used do not require programmers to know anything about them, neither they add a computational overhead.

Complete Chapter List

Search this Book: