0% found this document useful (0 votes)
43 views

Jade English

The document discusses JADE, a software framework for developing multi-agent systems that complies with FIPA specifications. It allows for efficient agent communication and development. The document provides background on FIPA specifications, related work, and an overview of JADE's features and architecture.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
43 views

Jade English

The document discusses JADE, a software framework for developing multi-agent systems that complies with FIPA specifications. It allows for efficient agent communication and development. The document provides background on FIPA specifications, related work, and an overview of JADE's features and architecture.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

Developing Multi-agent Systems with JADE

Fabio Bellifemine1, Agostino Poggi2, and Giovanni Rimassa2


1
CSELT S.p.A.
Via G. Reiss Romoli, 274, 10148, Torino, Italy
[email protected]
2 Dipartimento di Ingegneria dell’Informazione, University of Parma
Parco Area delle Scienze, 181A, 43100, Parma, Italy
(poggi,rimassa}@ce.unipr.it

Abstract. JADE (Java Agent Development Framework) is a software


framework to make easy the development of multi-agent applications in
compliance with the FIPA specifications. JADE can then be considered a
middle-ware that implements an efficient agent platform and supports the
development of multi agent systems. JADE agent platform tries to keep high the
performance of a distributed agent system implemented with the Java language.
In particular, its communication architecture tries to offer flexible and efficient
messaging, transparently choosing the best transport available and leveraging
state-of-the-art distributed object technology embedded within Java runtime
environment. JADE uses an agent model and Java implementation that allow
good runtime efficiency, software reuse, agent mobility and the realization of
different agent architectures.

1. Introduction

Nowadays, agent-based technologies are considered the most promising means to


deploy enterprise-wide and worldwide applications that often must operate across
corporations and continents and inter-operate with other heterogeneous systems. It is
because they offer the high-level software abstractions needed to manage complex
applications and because they were invented to cope with distribution and
interoperability [2,9,12,19,24,36].
However, agent-based technologies are still immature and few truly agent-based
systems have been built. Agent-based technologies cannot keep their promises, and
will not become widespread, until standards to support agent interoperability are in
place and adequate environments for the development of agent systems are available.
However, many people are working on the standardisation of agent technologies (see,
for example, the work done by Knowledge Sharing Effort [27], OMG [22] and FIPA
[7]) and on development environments to build agent systems (see, for example,
DMARS [28], RETSINA [34] MOLE [1]).
Such environments provide some predefined agent models and tools to ease the
development of systems. Moreover, some of them try to inter-operate with other agent
systems through a well-known agent communication language, that is, KQML [6].
However, a shared communication language is not enough to support interoperability

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.

You might also like