JADE – Java Agent Development Framework Fabio Bellifemine, Telecom Italia LAB 5 th July 2004
-
Upload
quintin-mowles -
Category
Documents
-
view
216 -
download
1
Transcript of JADE – Java Agent Development Framework Fabio Bellifemine, Telecom Italia LAB 5 th July 2004
JADE – Java Agent Development Framework
Fabio Bellifemine, Telecom Italia LAB5th July 2004
http://jade.tilab.com/
Brussels, 5/7/2004
CO
NF
IDE
NT
IAL
– A
ll r
igh
ts r
ese
rved
Table of Content
1. The JADE platform
2. The Open Source Project
3. JADE Board
4. Roadmap
5. Open Issues and Conclusions
Brussels, 5/7/2004
CO
NF
IDE
NT
IAL
– A
ll r
igh
ts r
ese
rved
JADE• JADE is an agent platform that implements the basic services and
infrastructure of a distributed multi-agent application:– agent life-cycle and mobility– white & yellow-page services– peer-to-peer message transport & parsing– agent security– scheduling of multiple agent tasks
• JADE allows faster time-to-market for new services by making key functionality available across multiple applications– terminal2terminal and multi-party communication (N:M)– pro-active applications
• Some relevant features:– is extremely light-weight, ported to J2ME-CLDC-MIDP 1.0 – enables interoperability through FIPA compliance– is an Open Source project originated by TILAB and currently governed
by an International Board– is used by several EU R&D projects
Brussels, 5/7/2004
CO
NF
IDE
NT
IAL
– A
ll r
igh
ts r
ese
rved
Platform Architecture
Agent
Agent
Agent
Agent
Container Container Container
J2SE pJava J2ME
Middleware
JADE API
JAVA Layer
The platform enables ubiquitous deployment & distributed systems – agents can discover, communicate, and provide services
• transparently to their location, to the hosting device• where needed, based on the MSISDN identity• agents can also migrate between different containers
– communication is• peer-to-peer, multi-party• based on semantics, ontology definition,
and interaction protocols
Notice that services canbe provided BY themobile device andterminal-to-terminalcommunication is enabled
Brussels, 5/7/2004
CO
NF
IDE
NT
IAL
– A
ll r
igh
ts r
ese
rved
Java 2 Platform and JADE
JADEJADE-LEAP
• footprint of the JADE-LEAP run-time on mobile phones:
– 10-30 Kbyte if compiled with the JVM (ROMizing)
– 40-100 Kbyte otherwise
• tested over almost all Java mobile phones
• integrated with Operator APN Radius Server to allow SIM-based addressing and authorization
Brussels, 5/7/2004
CO
NF
IDE
NT
IAL
– A
ll r
igh
ts r
ese
rved
JADE for mobile operators
The JADE architecture is a sort of hybrid P2P based on a ‘mediator’ in the Operator Service Centre that controls and authorizes the P2P connectivity:
it authorizes a mobile peer to join the JADE networkon the basis of the IP address, or certificates, or via the Radius Server integration
it assigns logical identifiers to the peers
it manages all the events and allows event-based billing
it manages hot-changes of the IP address
it manages temporary disconnections (e.g. dead spot)
it provides store&forward functionality
it can be managed in load balancing
it enables controls possibly requestedby the magistrature
Pure agent paradigm is disruptive and dangerous for a mobile operator:it empowers the users and the devices, it reduces control of applications, it can relegate the MO just to the data pipe
Java J2ME
JADE run-time
application
Operating System
JADE “mediator”
APN RADIUSServer
Brussels, 5/7/2004
CO
NF
IDE
NT
IAL
– A
ll r
igh
ts r
ese
rved
Model of agent communication
• agents communicate via asynchronous message passing• messages are modeled as communicative actions
– each message has Rational Effect and Feasibility Precondition
• messages can be composed into interaction protocols• the meaning of the message content is based on ontology definitions
– RDF, OWL, …
EnvelopeEncodingScheme
ACLEncodingScheme
CLEncodingScheme
TransportProtocol
InteractionProtocol
Envelope
1 11 isTransmittedOver
Ontology
Message
1
ACL
1
isExpressedIn1..*
1
1..*
1
contains
ContentLanguage
Symbol
11..* 11..*
belongsTo
Content
1
1
1
1
contains
11 11
isExpressedIn
0..*
1
0..*
1
contains
1
Brussels, 5/7/2004
CO
NF
IDE
NT
IAL
– A
ll r
igh
ts r
ese
rved
Ontologies, Protègè and JADE
Elements in the CR Model imported from
the “upper” ontology
Elements in the CR Model imported from
the “upper” ontology
class Car extends Concept {
private int year;
private String type;
.....
}
class Car extends Concept {
private int year;
private String type;
.....
}
Beangenerator
Brussels, 5/7/2004
CO
NF
IDE
NT
IAL
– A
ll r
igh
ts r
ese
rved
On-going activity on distributed security
• Constrain/control through policies:– All the actions that an Agent can
perform on the platform and on other agents
– The access to the services provided by the platform
– The access to the application-level services provided by other agents
• Make JADE a multi-user system– integrate “user” and “ownership”
concepts, as for filesystem– assign “permessions” to users and
agents of performing actions– “delegate” to others the own
permissions• Secure communication between agents
– Confidentiality, integrity, data-origin authentication
Several applications
Several actors
Several communication flows
Brussels, 5/7/2004
CO
NF
IDE
NT
IAL
– A
ll r
igh
ts r
ese
rved
Open Source as a business strategy
• TILAB (formerly CSELT) launched the Open Source Project in 2000
– at the end of the FACTS project, as one of its major achievements
• Goals of the Open Source initiative:
– to spread the intelligent agents paradigm
– to support and drive the FIPA specification process
– to create an effective platform
– to base business upon the applications
• the LGPL license was chosen
– profit• companies can make business based on JADE, they can sell applications
using it, they just cannot keep their own private version of JADE
– openness and control: the code is king• anybody can modify JADE, but modifications must be made public• the Board reserves the right of deciding what to integrate in the next
releases
Brussels, 5/7/2004
CO
NF
IDE
NT
IAL
– A
ll r
igh
ts r
ese
rved
The Open Source Community (updated 19/6/04)
0
10000
20000
30000
40000
50000
60000
25/0
2/20
00
06/0
6/20
00
12/0
9/20
00
18/1
2/20
00
11/0
4/20
01
11/0
7/20
01
25/0
9/20
01
05/0
2/20
02
19/0
7/20
02
24/0
9/20
02
19/0
3/20
03
18/1
2/20
03
1.3 1.4 2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.61 3.0b1 3.1
JADE Version
0
500
1000
1500
2000
2500
3000
25/0
2/20
00
06/0
6/20
00
12/0
9/20
00
18/1
2/20
00
11/0
4/20
01
11/0
7/20
01
25/0
9/20
01
05/0
2/20
02
19/0
7/20
02
24/0
9/20
02
19/0
3/20
03
18/1
2/20
03
1.3 1.4 2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.61 3.0b1 3.1
JADE Version
• ~ 60.000 downloads
– 40+ downloads/day
• 2500+ members of the mailing list
– 5+ e-mails/day
• 270+ accesses/day at the JADE home page
• 2 tutorials on JADE at the Borland Conference (San Jose, Nov. 03), CEEMAS, Holomas
• widely spread in Universities
– UPC, UAB, Rovira i Virgili, Braganca, Amsterdam, Budapest, Praha, Parma, Palermo, Rome, Lausanne, …
– Utah, Canberra, South Carolina, Toronto, Montreal, Pakistan, Newcastle, …
FACTS LEAPmailing list members
cumulative # of downloads
Brussels, 5/7/2004
CO
NF
IDE
NT
IAL
– A
ll r
igh
ts r
ese
rved
Major contributions from the Community
• JADE for mobile, LEAP project• improvements to the GUIs, BlueJADE for J2EE, SLFormatter, HP's
Agents for Mobility Department (HP Labs, Palo Alto, California)• support for Hierarchical State Machine, JADE and .NET, Univ. Utah• bit-efficient add-on, Sonera• HTTP and JMS MTPs, EPFL, UAB, Univ. Galway• JSP Tag Library, Univ. Artois• Protègè beangenerator, Aacklin• ACLAnalyser, Univ. Murcia• JADEX, Univ. Hamburg• benchmark and comparison with other platforms, Rockwell
Automation• documentation, support to the mailing list, misc, private people• + many others valuable contributions (bug reporting, bug fixing,
suggestions, ...)
Brussels, 5/7/2004
CO
NF
IDE
NT
IAL
– A
ll r
igh
ts r
ese
rved
Project Starting Ending Partners using JADE
FACTS 1998 2000 BT, FT, CSELT, KPN, ICL, IRST
DICEMAN 1998 2000 CSELT, KPN, StarLab
LIME 1998 2000 Imperial College
Monads 1999 2000 Sonera
Comma 1999 2001 Univ. Parma, INRIA, ATOS
eXPlanTech(IST-1999-20171) 1999 2001 Univ. Prague
IBROW 1999 2001 Acklin
MedPAge 2000 2006
Knowledge On Demand 2000 2003 ?
IMAGE (IST-2000-30047) 2000 2002 Singular Sofware SA
LEAP 2000 2002 BTExact, Siemens, Motorola, TILAB
EUTIST-AMI(IST-2000-28221) 2000 2002 Univ. Prague
SONG 2000 2002 TILAB, ICL
AgentCities 2001 2003 severals (see the next sheet)
ICONS (IST 2001-32429) 2001 2003 Univ. Ulster
SAFIRA 2001 2002 ICL
Pellucid (IST-2001-34519) 2002 2004 ?
TeSCHeT (Italian MIUR project) 2002 2005 Engineering, TILAB
PISA TNO, FINSA, TUDelft
Collaborator Univ. Parma, ATOS, Univ. Madrid
AgentAcademy University of Twente, APS-group
Esperonto 2002 2005 Univ. of Liverpool
MaBE 2002 2005 Profactor, Atos, …
"@lis" 2003 2006
CrossWork 2004 2006 Profactor
JADE in the EU R&D Projects
Usage of JADE is difficult to track because of the LGPL
license.
This list is incomplete and not up-to-date.
It does not include national projects, e.g. German and Italian
MIUR funded.
We estimate that we are not aware of about 80% of the
projects that have used/are using JADE
Brussels, 5/7/2004
CO
NF
IDE
NT
IAL
– A
ll r
igh
ts r
ese
rved
Table of Content
1. The JADE platform
2. The Open Source Project
3. JADE Board
4. Roadmap
5. Open Issues and Conclusions
Brussels, 5/7/2004
CO
NF
IDE
NT
IAL
– A
ll r
igh
ts r
ese
rved
JADE Board• Founded on March 2003 by TILAB and Motorola
– as a follow-up of their collaboration in the LEAP project
– as a not-for-profit contractual consortium among the Members
• Mission
– Promote, govern, and implement the evolution of JADE
• Goal
– JADE adoption by the mobile industry as a standard middleware for mobile Peer-To-Peer intelligent agent applications completely interoperating on different terminals and networks
Motorola
Tilab
Whitestein
FranceTelecom
Profactor
Board Members
Brussels, 5/7/2004
CO
NF
IDE
NT
IAL
– A
ll r
igh
ts r
ese
rved
JADE Board
• Leading Principles– not-for-profit association– The Board is open and welcomes all companies and organizations that
have a concrete business interest in the exploitation of JADE and that commit to its development and promotion
– JADE APIs are public and its evolution is controlled by the Board– strength of the Open source process– a Consortium Agreement regulates copyright and IPR issues between
members
• Activities of the Board– govern and implement the evolution of JADE through:
• the definition of public API’s,• the development of the underlying software
– decide on the content/functionalities of the JADE releases– specify the technical activities of the JADE Board Software Team– advise on the content of the JADE Web site– nominate and elect new Members
Brussels, 5/7/2004
CO
NF
IDE
NT
IAL
– A
ll r
igh
ts r
ese
rved
Roadmap 2003-2004
19/3/033.0b1
JADE 3.0b1• consolidation of previous features• integrated JADE and LEAP• split container mode• update for compliance to new FIPA standards• persistent DF• XMLCodec• misc add-on
18/12/033.1
JADE 3.1• consolidation of previous features• tutorial for beginners + more documentation• new service-based kernel based on a Distributed Composition Filter pattern• support for replication of the main container• support for application specific message persistency through the PersistentDeliveryService• support for FIPA Propose, 2phase-commit interaction protocol• HTTP, JMS MTPs• Bean-generator, and RDFCodec add-ons
JADE 3.2 • consolidation of previous features• security add-on including support for authentication, authorization, and end-to-end message integrity and confidentiality (J2SE only)• HTTP MTP• Test Suite Framework• Persistent Service• threaded behaviours• agent loading from jar file• logging• SerializableOntology that handles homogeneously ontological concepts and serializable objects• Automatic DF clean-up when a registered agent dies
15/7/043.2
15/12/043.3
JADE 3.3 • consolidation of previous features• security add-on (J2ME)• Web Service Integration• Agent Launcher (Univ. Aachen)• Performance Scalability
Brussels, 5/7/2004
CO
NF
IDE
NT
IAL
– A
ll r
igh
ts r
ese
rved
Open issues and challenges• Technical topics
– JADE for ad-hoc networks– integration with SIP protocol and IMS network– JADE for embedded systems & machine-to-machine applications– Distributed security for J2ME-MIDP terminals (usage of JSR-177 API)
• Model and Tools for dealing with agent trust– Semantic-driven communication – Distributed workflow– Model and Visual tools to organize & deploy an application as a society of
agents• groups of agents, roles, norms, obligations, permissions
– Interaction Protocols for distributed control and self-organization– Methodology & sw-engineering tools
• a complete environment from sw design to deployment• Further increase the level of participation of the Open Source Community
– deployment of some proper web-based tools (e.g. gforge)• to allow access to the CVS repository, creation of sub-projects, forums, …
– educational material, books, courses, tutorials and user workshops– integrating the contributions from the Community– providing support to the Community via e-mail– presenting JADE to proper forums & standards
• e.g. Java-ONE conference, OSGi framework, J2ME community, OMTP
Brussels, 5/7/2004
CO
NF
IDE
NT
IAL
– A
ll r
igh
ts r
ese
rved
Foreseen impact on EU Strategic Objectives
- IST 2.3.2.3 Open source development and run-time environment, middleware and tools to support developers- IST 2.3.1.4 Mobile and Wireless Systems Beyond 3G- IST 2.3.1.5 Towards a global dependability and security framework- IST 2.3.1.7 Semantic-based knowledge systems- IST 2.3.1.9 Networked businesses and governments- IST 2.3.2.5 Networked Embedded Systems
- IST 2.3.1.11 eHealth- IST 2.3.2.6 Applications and Services for the Mobile User and Worker- IST-NMP-1 Fast and Flexibly Manufacturing Enterprise- …
Technology-driven perspective
Application-driven perspective
Brussels, 5/7/2004
CO
NF
IDE
NT
IAL
– A
ll r
igh
ts r
ese
rved
Conclusions
• JADE is a european-driven strong Open Source initiative
– http://jade.tilab.com
– 60,000 downloads, 5+ e-mails/day
– governed by a Board of 5 members
– broad deployment in several EU projects• is the reference tool for AgentCities, AgentLink EU projects
• JADE has a potential impact on several IST strategic objectives
– it can be the catalyst of several on-going R&D initiatives in Europe
– the usage of a common open source technology facilitates harmonization and interoperability of sw developments
• Questions for the plenary discussion
– How to increase the level of participation to the Open Source project?
– How to increase the level of adoption in commercial deployments?
– What the EU can do for JADE and what JADE can do for empowering the EU-vision?