Jade English
Jade English
1. Introduction
C. Castelfranchi, Y. Lespérance (Eds.): Intelligent Agents VII, LNAI 1986, pp. 89–103, 2001.
© Springer-Verlag Berlin Heidelberg 2001
90 F. Bellifemine, A. Poggi, and G. Rimassa
between different agent systems, because common agent services and ontology are
also needed. The standardisation work of FIPA acknowledges this issue and, beyond
an agent communication language, specifies the key agents necessary for the
management of an agent system and the shared ontology to be used for the interaction
between two systems.
In this paper, we present JADE (Java Agent Development Framework), a software
framework to write agent applications in compliance with the FIPA specifications for
interoperable intelligent multi-agent systems. The next section introduces FIPA
specifications. Section three introduces related work on software frameworks to
develop agent systems. Section four describes JADE main features. Section five
describes the architecture of the agent platform, the communication subsystem.
Section six presents JADE agent model. Finally, section seven concludes with a brief
description about JADE main features, the use of JADE to realise applications and the
relationships between JADE and some other agent software frameworks.
2. FIPA Specifications
The Foundation for Intelligent Physical Agents (FIPA) [7] is an international non-
profit association of companies and organisations sharing the effort to produce
specifications for generic agent technologies. FIPA does not just promote a
technology for a single application domain but a set of general technologies for
different application areas that developers can integrate to make complex systems
with a high degree of interoperability.
The first output documents of FIPA, named FIPA97 specifications, state the
normative rules that allow a society of agents to exist, operate and be managed. First
of all they describe the reference model of an agent platform: they identify the roles of
some key agents necessary for managing the platform, and describe the agent
management content language and ontology. Three mandatory roles were identified
into an agent platform. The Agent Management System (AMS) is the agent that exerts
supervisory control over access to and use of the platform; it is responsible for
maintaining a directory of resident agents and for handling their life cycle. The Agent
Communication Channel (ACC) provides the path for basic contact between agents
inside and outside the platform. The ACC is the default communication method,
which offers a reliable, orderly and accurate message routing service. FIPA97
mandates ACC support for IIOP in order to inter-operate with other compliant agent
platforms. The Directory Facilitator (DF) is the agent that provides yellow page
services to the agent platform.
The specifications also define the Agent Communication Language (ACL), used
by agents to exchange messages. FIPA ACL is a language describing message
encoding and semantics, but it does not mandate specific mechanisms for message
transportation. Since different agents might run on different platforms on different
networks, messages are encoded in a textual form, assuming that agents are able to
transmit 7-bit data. ACL syntax is close to the widely used communication language
KQML. However, there are fundamental differences between KQML and ACL, the
most evident being the existence of a formal semantics for FIPA ACL, which should
eliminate any ambiguity and confusion from the usage of the language.