Modelling Mobility and Mobile Agents using Nets Within Nets Michael K¨ohler and Heiko R¨olke
[email protected]
University of Hamburg, Department of Computer Science Vogt-K¨olln-Straße 30, D-22527 Hamburg
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.1/21
Main Topics of the Paper Nets within nets are well suited to express different kinds of mobility. The mobility models can be used to introduce mobility to multi agent systems.
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.2/21
Main Topics of the Paper Nets within nets are well suited to express different kinds of mobility. The mobility models can be used to introduce mobility to multi agent systems. This talk will mainly deal with the second point.
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.2/21
Overview Types of Mobility Multi Agent Nets (Mulan) Example Mobile Agent System
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.3/21
Types of Mobility Mobility is an interplay between system net (locations) and object net (mobile entity).
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.4/21
Types of Mobility Mobility is an interplay between system net (locations) and object net (mobile entity). Differences are introduced by the direction of the synchronisation necessary to perform the migration and its preconditions: No synchronisation: Spontaneous Move
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.4/21
Types of Mobility Mobility is an interplay between system net (locations) and object net (mobile entity). Differences are introduced by the direction of the synchronisation necessary to perform the migration and its preconditions: No synchronisation: Spontaneous Move Object net triggers move: Agent Move
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.4/21
Types of Mobility Mobility is an interplay between system net (locations) and object net (mobile entity). Differences are introduced by the direction of the synchronisation necessary to perform the migration and its preconditions: No synchronisation: Spontaneous Move Object net triggers move: Agent Move System net triggers move: Transportation
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.4/21
Types of Mobility Mobility is an interplay between system net (locations) and object net (mobile entity). Differences are introduced by the direction of the synchronisation necessary to perform the migration and its preconditions: No synchronisation: Spontaneous Move Object net triggers move: Agent Move System net triggers move: Transportation Both nets "agree" upon the movement: Consensual Move
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.4/21
Spontaneous Move
a
on
M
on
models nondeterministic behaviour
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.5/21
Agent Move a on b
:ch() c
on
M on:ch()
free choice of movement: public locations and interconnections
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.6/21
Transportation []
a
P
on
M
on
load balancing, getting rid of agents
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.7/21
Consensual Move movement preconditions a on b
:ch() c
M
on
on:ch() guard (on may move)
(perhaps) the usual case
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.8/21
Overview Types of Movements Multi Agent Nets (Mulan) Example Mobile Agent System
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.9/21
Mobility in Agent Systems (following the FIPA Standardisation proposals) Agents (objects) are embedded in platforms (locations).
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.10/21
Mobility in Agent Systems (following the FIPA Standardisation proposals) Agents (objects) are embedded in platforms (locations). Platforms offer services and control their access.
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.10/21
Mobility in Agent Systems (following the FIPA Standardisation proposals) Agents (objects) are embedded in platforms (locations). Platforms offer services and control their access. Mobility is a special service.
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.10/21
Mobility in Agent Systems (following the FIPA Standardisation proposals) Agents (objects) are embedded in platforms (locations). Platforms offer services and control their access. Mobility is a special service. Platforms differ from services and agents.
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.10/21
Mobility in Agent Systems (following the FIPA Standardisation proposals) Agents (objects) are embedded in platforms (locations). Platforms offer services and control their access. Mobility is a special service. Platforms differ from services and agents. Transparent mobility is an orthogonal concept.
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.10/21
MAS as Nets Within Nets multi agent system p2 platforms
p1
p3 communication structure
p4
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.11/21
MAS as Nets Within Nets O
multi agent system
O
M
agent platform
Z
internal communication
p2 platforms
p1 destroy
new
p3
a agents
communication structure
external communication
p4
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.11/21
MAS as Nets Within Nets O
multi agent system
O
M
agent platform
Z
internal communication
p2 platforms
p1 destroy
new
p3
a agents
communication structure
external communication
agent structure
p4
outgoing
incoming knowledge base kb re
p
pro
protocols
pi
in
MOCA’02 27.08.2002
Mobile Agents
conversations
out
Heiko R¨olke – p.11/21
MAS as Nets Within Nets O
O
M
agent platform
Z
multi agent system
internal communication
p2 platforms
p1 destroy
new
p3
a agents
communication structure
external communication
agent structure
p4
outgoing
incoming knowledge base kb
protocol
re
p
pro
protocols out
in pi
start
subcall
MOCA’02 27.08.2002
process
stop
in
Mobile Agents
conversations
out
Heiko R¨olke – p.11/21
Interplay of Agent and Protocol receive
send knowledge base kb
reactive
p protocols
start
pro-active
in
start in
pi conversations
out
out
stop stop
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.12/21
Overview Types of Mobility Multi Agent Nets (Mulan) Example Mobile Agent System
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.13/21
Some operations of a MULAN MAS developer:
.@
... define protocols define knowledge of the agents define system net (locations and interconnections) ...
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.14/21
View on mobile agent system
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.15/21
View on mobile agent system
(Physical) Location
Network
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.15/21
View on mobile agent system
(Physical) Location
Network
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.15/21
Example Scenario Simple household robot Household containing several rooms Rooms offer services to the robot (kitchen: coffee) Robot has to migrate to accomplish its tasks
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.16/21
Household
frontyard
leave house
enter house
house location
hall hall
move leave hall
enter hall
kitchen living room
enter living room
kitchen
living room
enter kitchen
next room
next room enter next room
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.17/21
Enhanced System View frontyard
fetch mail mailbox
open
leave house
enter house
house
closed location
open door close door
buffer/store state
hall mail read
bureau deposit mail
hall
move service
leave hall
enter hall
extranous action
kitchen enter living room
living room
coffee supply
kitchen fetch coffee
coffee table drunk
living room
serve coffee
fresh coffee
enter kitchen
next room
next room enter next room
new assignment assign new robot
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.18/21
(System Demonstration)
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.19/21
Conclusion Nets within nets are a suitable means to model mobility. Mobility models can easily be integrated to the Mulan MAS. Additional tool support is under development. The aim is AOSE.
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.20/21
Outlook: Tool support
(Physical) Location
Network
MOCA’02 27.08.2002
Mobile Agents
Heiko R¨olke – p.21/21