cours.Master.Plateformes.30.09.
12 Pages
English

cours.Master.Plateformes.30.09.

-

Downloading requires you to have access to the YouScribe library
Learn all about the services we offer

Description

¾¾¾¾¾Î¾¾¾¾‹‹¾‹¾¾¾¾‹¾Cours SMA - 2003 Cours SMA - 2003OutlineOutlineMulti-agent Platforms-• Why multi-agent platforms? Standards in MAS : FIPA Examples of multi-agent platforms ConclusionsCosmin CarabeleaCosmin.Carabelea@emse.frSMA/SIMMOENS Mines Saint-EtiennethSeptember 30 , 2003C.Carabelea (SMA/ENSM-SE) 1 C.Carabelea (SMA/ENSM-SE) 2Cours SMA - 2003 Cours SMA - 2003Existing problems Existing problems (2)More and more applications are developed using MAS.Agent’s point of view:it needs support to perform the tasks it is required to do.BUT :how to sense and act upon its environment.There are few multi-agent oriented implementation tools how to communicate and cooperate (unique ids, service discovery, security)Few agent programming languagesMAS Design relies on existing languages and programming techniques Developer’s point of view:the agents are software programs, their creation passes through the four It’s often hard to develop MAS (implementation, distribution, communications, …) phases:analysisThe trend of the work is towards Multi-Agent Oriented designProgramming, meaning programming MAS with MAS toolsdevelopmentdeployment.A new platform is created “everyday”. Too many multi-agentFinal user’s point of view:development tools exist.how to use the multi-agent application.How to choose? How to compare?should he/she trust the agents to do the tasks they are required to do?C.Carabelea (SMA/ENSM-SE) 3 C.Carabelea ...

Subjects

Informations

Published by
Reads 24
Language English

¾
¾
¾
¾
¾
Î
¾
¾
¾
¾


¾

¾
¾
¾
¾

¾
Cours SMA - 2003 Cours SMA - 2003
Outline
Outline
Multi-agent Platforms-
• Why multi-agent platforms?
Standards in MAS : FIPA
Examples of multi-agent platforms
Conclusions
Cosmin Carabelea
Cosmin.Carabelea@emse.fr
SMA/SIMMO
ENS Mines Saint-Etienne
th
September 30 , 2003
C.Carabelea (SMA/ENSM-SE) 1 C.Carabelea (SMA/ENSM-SE) 2
Cours SMA - 2003 Cours SMA - 2003
Existing problems Existing problems (2)
More and more applications are developed using MAS.
Agent’s point of view:
it needs support to perform the tasks it is required to do.
BUT :
how to sense and act upon its environment.
There are few multi-agent oriented implementation tools
how to communicate and cooperate (unique ids, service discovery, security)
Few agent programming languages
MAS Design relies on existing languages and programming techniques Developer’s point of view:
the agents are software programs, their creation passes through the four
It’s often hard to develop MAS (implementation, distribution,
communications, …) phases:
analysis
The trend of the work is towards Multi-Agent Oriented
design
Programming, meaning programming MAS with MAS tools
development
deployment.
A new platform is created “everyday”. Too many multi-agent
Final user’s point of view:
development tools exist.
how to use the multi-agent application.
How to choose? How to compare?
should he/she trust the agents to do the tasks they are required to do?
C.Carabelea (SMA/ENSM-SE) 3 C.Carabelea (SMA/ENSM-SE) 4¾

¾
¾
¾
¾

¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
Cours SMA - 2003 Cours SMA - 2003
What is a multi-agent platform? Outline Outline
A multi-agent platform is a software infrastructure
Introduction
used as an environment for agents’ deployment and
execution.
Standards in MAS : FIPA
Application
Domain-dependent Domain-dependent
Examples of multi-agent platforms
multi-agent application multi-agent application level
Communication and Organizational High-level
Conclusions
Ontologies
negotiation protocols structures services
Low-level
Communication Agent life- Check-in, check-
primitives cycle manager out procedures services
Distributed Low-level communication System
OS level
processing (TCP/IP, Bluetooth, etc.) resources
Hardware
C.Carabelea (SMA/ENSM-SE) 5 C.Carabelea (SMA/ENSM-SE) 6
Cours SMA - 2003 Cours SMA - 2003
Do we need MAS standards? Standards in MAS
Why ?
FIPA Foundation for Intelligent Physical Agents
Standards favor development of the market. www.fipa.org
Market development speed up development of technology.
MASIF - OMG (Object Management Group) : OMG effort to
Why now ?
standardize mobile agents - middleware services and
Technology is under development
internal middleware interfaces
Lack of large agreement on definitions, models, theories, …
www.omg.org
Several research axes
Knowledge Sharing Effort The DARPA Knowledge Sharing
Needs are recognized
Effort
citeseer.nj.nec.com/pati192darpa.html
Stress on the expected features : openness, heterogeneous
systems, emergent properties, …
C.Carabelea (SMA/ENSM-SE) 7 C.Carabelea (SMA/ENSM-SE) 8¾
¾
¾
¾
¾
¾
¾
¾

¾
¾
¾
¾
¾
¾


¾
¾
¾
¾
¾
¾
¾
¾

Cours SMA - 2003 Cours SMA - 2003
Standards in MAS (2) FIPA Overview
www.fipa.org
Aim :
Ontology : DAML, OIL, OWL, …
to create International Standards body in order to promote the development
http://www.daml.org
of agents applications
http://www.ontoknowledge.org/oil/
Structured in :
Other Standards (De Facto)
FIPA Architecture Board, Technical Committees, Working Groups
dynamic discovery of services :
Funded in 1996
Jini (www.sun.com/jini),
62 member companies with heavy involvement from telecommunications
UPnP (www.upnp.org),
companies in particular.
UDDI (www.uddi.org),
BT, EPFL, France Télécom, Fujitsu, HP, Hitachi, IBM, Imperial College, Intel,
Salutation (www.salutation.org)
Motorola, NASA, Nec, NHK, Nortel Networks, NTT, Philips, Siemens, SNCF, SUN
mobility : Aglets (www.trl.ibm.com/aglets/)
Microsystems, Telecom Italia, Toshiba …
coordination rules : JavaSpace (www.sun.com/jini)
First standards in 1997 - FIPA97, since then - FIPA98 and
FIPA2000
C.Carabelea (SMA/ENSM-SE) 9 C.Carabelea (SMA/ENSM-SE) 10
Cours SMA - 2003 Cours SMA - 2003
FIPA Specifications (#80)
FIPA (#80)
FIPA Overview (2)
Applications
FIPA specifies the interfaces of the different components in the
Abstract Architecture
environment with which an agent can interact:
FIPA Platform
humans
other agents
Agent Agent Message
Agent
non-agent software
Communication Transport
Management
the physical world.
FIPA produces two kinds of specifications:
Content
Interaction Communication
normative specifications mandating the external behaviour of an agent and
Language
Protocols Acts
ensuring interoperability with other FIPA-specified subsystems;
informative specifications of applications providing guidance to industry on
the use of FIPA technologies.
ACL Envelope Transport
Representation Representation Protocol
C.Carabelea (SMA/ENSM-SE) 11 C.Carabelea (SMA/ENSM-SE) 12¾
¾
¾
Ù
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
Cours SMA - 2003 Cours SMA - 2003
Abstract Architecture specifications Abstract Architecture specifications (2)
Definition of an abstract architecture
Message transport interoperability.
Supporting various forms of ACL representations.
Supporting various forms of content language.
Supporting multiple directory services representations.
Modelling of the abstract elements and their
relationships.
C.Carabelea (SMA/ENSM-SE) 13 C.Carabelea (SMA/ENSM-SE) 14
Cours SMA - 2003 Cours SMA - 2003
FIPA : conceptual model of an
FIPA Agent Platform
Agent Platform
Agent Platform
Software that implements the set of FIPA specifications.
provides
FIPA-compliant implements at least the Agent Management
*
Normative services
Optional services and Agent Communication Language specifications.
Service
Agent Management Syst.
Life cycle Management Authentication, Resources
Agent Software Integration
White pages (naming)
AMS
White page service Directory Facilitator
A
Ontology Service
Directory (yellow pages)
DF
Yellow page service Agent Comm. Channel
Message transport
Human Agent Interaction
Message Transport service HTTP / IIOP Transport (ACC)
C.Carabelea (SMA/ENSM-SE) 15 C.Carabelea (SMA/ENSM-SE) 16¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
Cours SMA - 2003 Cours SMA - 2003
Outline
FIPA Platforms Inter-operability Outline-
Communication between agents can be
Introduction
Platform Internal – non-standard technologies
Standards in MAS : FIPA
Platform-Platforms – uses the ACC and standard FIPA Message transport
protocols.
Examples of multi-agent platforms
Agent Environment on every platform
A
JADE
Different languages
ACC
PlatF-C
Madkit
Different APIs
Different support features ACC
AgentTool
PlatF-A
Different agent architectures
Zeus
ACC
Same
Multi-agent platforms for small devices
PlatF-B
Base services
Same transports
Conclusions
Same languages
C.Carabelea (SMA/ENSM-SE) 17 C.Carabelea (SMA/ENSM-SE) 18
Cours SMA - 2003 Cours SMA - 2003
JADE: Introduction JADE: Agent development
A JADE agent is simply an instance of a user defined Java class
Java Agent Development Framework http://jade.cselt.it
that extends the base Agent class.
Each agent can have several behaviours, obtained by inheriting
Open Source, written in Java
the Behaviour class (or one of its subclasses).
Goal: developing multi-agent systems and applications
Each agent and each agent’s behaviour is a thread.
conforming to FIPA standards for intelligent agents.
Includes two main products:
An agent can send/receive Java objects, that represent FIPA-ACL
a FIPA-compliant agent platform
messages within the scope of interaction protocols.
a package to develop Java agents.
JADE hides all message coding (encoding/parsing).
Utility agents:
The Message Transport Protocol (MTP) module automatically
DummyAgent tool allows users to interact with JADE agents in a custom
selects the best way to send a message: method invocation, RMI,
way.
TCP/IP, etc.
Sniffer Agent is basically a FIPA-compliant agent used to sniff messages.
Developers can create new MTPs.
C.Carabelea (SMA/ENSM-SE) 19 C.Carabelea (SMA/ENSM-SE) 20¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
Cours SMA - 2003 Cours SMA - 2003
Outline
JADE: containers Outline
Each agent lives inside a container.
A container is a JVM and it:
Introduction
provides a complete runtime environment for agent execution
Standards in MAS : FIPA
allows several agents to run concurrently
Examples of multi-agent platforms
controls the life-cycle of agents
deals with communication.
JADE
Madkit
Main-container
A1 AgentTool
A5
Container 2
Zeus
AMS – white pages service
Multi-agent platforms for small devices
DF – yellow pages service
A2 A3 A4
Conclusions
RMA – remote monitoring agent
Container 1
C.Carabelea (SMA/ENSM-SE) 21 C.Carabelea (SMA/ENSM-SE) 22
Cours SMA - 2003 Cours SMA - 2003
MADKIT: Introduction MADKIT: micro kernel
Multi-Agent Development Kit www.madkit.org
Developed by LIRMM lab, free for educational use.
Java multi-agent platform based on the Aalaadin organizational
model:
Is member plays
Agent 1..n
1..n
1..n
1..n
1..n defines 1..n
Group
Role
A tutorial can be found at http://www.emse.fr/~carabele/master/tp_sma.html
C.Carabelea (SMA/ENSM-SE) 23 C.Carabelea (SMA/ENSM-SE) 24¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
Cours SMA - 2003 Cours SMA - 2003
MADKIT (continued) Outline Outline
Analysis:
Introduction
no specific analysis method
Standards in MAS : FIPA
Design:
Examples of multi-agent platforms
organizational model (groups, roles)
JADE
interaction model (protocols, messages)
Madkit
tasks, goals, etc.
AgentTool
no software tools.
Zeus
Development:
no agent model (to be implemented in Java from scratch). Multi-agent platforms for small devices
Deployment:
Conclusions
use of the G-box (eq. Sandbox)
C.Carabelea (SMA/ENSM-SE) 25 C.Carabelea (SMA/ENSM-SE) 26
Cours SMA - 2003 Cours SMA - 2003
AgentTool: Introduction AgentTool: MaSE process
http://www.cis.ksu.edu/~sdeloach/ai/download-agentool.htm 1. Capturing Goals
initial system specification ⇒ struct. hierarchy of goals
Developed at Kansas State University, free for research and
i.e. similar to requirement specification
academic use.
2. Applying Use Cases (i.e. UML)
Written in Java 1.2.
Use cases and sequence diagrams based on spec.
Conversation verification (requires some additional tools to be
Use cases – represent logical interaction path
downloaded).
Sequence diagrams – number of messages needed
Automatic code generation (up to 90% of the agent).
3. Refining Roles
Methodology used: MASE – Multi-agent Systems Engineering.
Creates roles corresponding to the goals (or a set of goals)
Creates tasks – how to solve goals related to the role
The methodology covers the phases of analysis and design.
C.Carabelea (SMA/ENSM-SE) 27 C.Carabelea (SMA/ENSM-SE) 28¾
Cours SMA - 2003 Cours SMA - 2003
AgentTool: MaSE process (2) MaSE in agentTool MaSE
4. Creating Agent Classes
Sequence
Maps roles to agent classes in an agent class diagram
Roles Tasks
Diagrams
Resemble object class diagrams, but semantics is high-level
conversation versus inheritance (and encapsulation)
5. Constructing Conversations
Agent Class Conversation
Defines coordination protocols for interaction with state diagrams
Diagram Diagram
6. Assembling Agent Classes
Internal functionalities of classes created
Internal Agent
Based on either BDI, reactive, planning, knowledge-based and user-
Diagram
defined architecture.
7. System Design
Deployment
Create instances of the agent classes presented in a deployment
Diagram
diagram
C.Carabelea (SMA/ENSM-SE) 29 C.Carabelea (SMA/ENSM-SE) 30
Cours SMA - 2003 Cours SMA - 2003
AgentTool : Conversation Diagram
A :
AgentTool : Agent Diagram
A :
(half a conversation)
C.Carabelea (SMA/ENSM-SE) 31 C.Carabelea (SMA/ENSM-SE) 32
Actually implemented
+ some code generation¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
Cours SMA - 2003 Cours SMA - 2003
AgentTool : Conversation Diagram
A :
AgentTool : Code Generation :
(the other half)
(the other
Automatic from Agent and Conversation Diagrams
Select platform-dependent components such as a messaging
system
C.Carabelea (SMA/ENSM-SE) 33 C.Carabelea (SMA/ENSM-SE) 34
Cours SMA - 2003 Cours SMA - 2003
Outline ZEUS: Introduction
Outline
Agent Building Toolkit (www.labs.bt.com/projects/agents/zeus)
Introduction
Open Source Licence (Mozilla)
Standards in MAS : FIPA
Developed by Agent Research Programme of BT Intelligent
Examples of multi-agent platforms
Research Lab.
JADE
Integrated environment.
Madkit
Strong emphasis on the importance of methodology.
AgentTool
Three libraries:
Zeus
Utility Agents
Multi-agent platforms for small devices
Agent Building Tool
Conclusions Agent Component Library
C.Carabelea (SMA/ENSM-SE) 35 C.Carabelea (SMA/ENSM-SE) 36¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
¾
Æ
¾
Cours SMA - 2003 Cours SMA - 2003
ZEUS : Agent architecture ZEUS : Predefined agents
Utility agents:
Nameserver agent – white-pages service
Facilitator agent – yellow-pages service
Visualiser agents:
Society Viewer : all agents, organisational relationships, messages.
Reports Tool : decomposition/distribution of active tasks and the execution
states of the various tasks.
Agent Viewer : observes and monitors the internal states of agents.
Control Tool : to remotely review and/or modify the internal states of
individual agents.
Statistics Tool : displays individual agent and society-wide statistics in a
variety of formats.
C.Carabelea (SMA/ENSM-SE) 37 C.Carabelea (SMA/ENSM-SE) 38
Cours SMA - 2003 Cours SMA - 2003
Outline In the near future…
Outline
Taxi-sharing scenario:
Introduction
many users, equipped with mobile phones and PDAs, are waiting for taxis
their devices interact (without the user’s intervention) to find persons with
Standards in MAS : FIPA
similar destinations
Examples of multi-agent platforms
there are small processors embedded in cars the taxi can inform the
user via their devices if it is stuck in a traffic jam
JADE
Madkit
Intelligent house scenario:
AgentTool embedded in all objects in the house: cd-
player, tv, refrigerator, etc.
Zeus
the refrigerator can inform the user the milk is about to expire, etc.
Multi-agent platforms for small devices
when the user comes home, the tv and the cd-player can negotiate which
one will turn on to entertain the user
Conclusions
the objects can act differently if the user is not alone…
C.Carabelea (SMA/ENSM-SE) 39 C.Carabelea (SMA/ENSM-SE) 40