180 likes | 309 Views
Mobile Agents. In Distributed Systems. Luk Stoops VUB - programming laboratory. What is a Software Agent User View. An agent is a program that assists people and act on their behalf Agents function by allowing people to delegate work to them. What is a Software Agent System View.
E N D
Mobile Agents In Distributed Systems Luk Stoops VUB - programming laboratory
What is a Software AgentUser View • An agent is a program that assists people and act on their behalf • Agents function by allowing people to delegate work to them
What is a Software AgentSystem View • Software object situated in an execution environment • mandatory properties • Reactive • Autonomous (control over its own actions) • Goal driven (pro-active) • Temporally continuous
What is a Software AgentSystem View • Possible properties • Communicative • can communicate with other agents • Mobile • can travel from one host to an other • Learning • adapts in accordance with previous experience • Believable • appears believable to the end-user
Stationary Agent • Executes only on the system where it begins execution • Gets information from other resources via • Remote Procedure Call • Object Request Broker (CORBA)
Mobile Agent • Not bound to the system where it begins execution • Ability to transport itself form one system to another • Ability to travel allows him to move to a system that contains an object with which the agent wants to interact
Overcome Network Latency • Critical real-time systems • robots in manufacturing processes • Agents dispatched from central controller • Act locally
Encapsulate Protocols • Protocols that implement the input /output conversions are hard-coded in the host • As protocols evolve (security, efficiency) they become a legacy problem • Mobile Agents can move to remote hosts in order to establish “channels” based on proprietary protocols
x y u v (x+y) * (u+v) Adapt Dynamically • Sense their execution environment and react autonomously to changes • Multiple mobile agents can distribute themselves among the hosts to form the optimal configuration for solving a particular problem
Naturally Heterogeneous • Network computing is fundamentally heterogeneous • hardware • software • Mobile agents are computer- and transport layer independent • Optimal conditions for seamless system integration
Robust and Fault-tolerant • Able to react dynamically to unfavorable situations and events • If a host is being shut down, all agents executing on that machine will be warned and give time to dispatch and continue their operation on another host in the network
Applications • Electronic commerce • agent to agent negotiation • Personal Assistance • schedule a meeting • Secure brokering • involved parties are invited on a secure host • Distributed information retrieval • search engine to remote sources
Applications • Telecommunication networks services • dynamic network reconfiguration • Workflow applications and groupware • Monitoring and notification • Information dissemination • internet “push” model • Parallel processing • mobile agent can clone themselves
Literature • http://www.acm.org/~danny • http://www.trl.ibm.co.jp/aglets • http://www.meitca.com/hsl/projects/concordia • http://www.objectspace.com/voyager • http://www.cs.dartmouth.edu/~agent • http://www.uni-kl.de/ag-nehmer/ara • http://www.cs.uit.no/dos/tacoma