Beyond Prototyping in theFactory of Agents Rem Collier, Gregory O’Hare, Terry Lowen, Colm Rooney PRISM Laboratory, Department of Computer Science, University College Dublin
Outline • What is Agent Factory? • Visual Design within Agent Factory • Case Study: WAY System • Agent Factory in Context • Conclusions
Agent Factory Development Methodology Agent Factory Development Environment Agent Factory Run-Time Environment What is Agent Factory? • Agent Factory is…“a cohesive framework that supports a structured approachto the development and deployment of multi-agent systems.” • AF-APL is augmented with: • Run-Time Environment • Development Environment AF-APL • Development Methodology
AF-APL • AF-APL is a declarative language. • Designed to simplify the implementation of complex agent behaviours. • Underpinned by a formal agent theory. • Founded upon an analysis of how agents commit to actions. • Formalised as a multi-modal temporal logic. • Specifically, Agent Factory agents employ: • Beliefs • Commitments • Commitment Rules
AF-APL Control Algorithm Perceive 1 Belief Update Perceptors World Query Deliberate 2 Beliefs Act 3 Commitment Management Migrate? Actuators Commitment Rules Commitments
AF-APL • AF-APL Programs define: • Actuators • Perceptors • Modules • Commitment Rules • Initial Mental State
Deals with Interoperability. FIPA compliant Design It is comprised from one or more Agent Platforms (APs) Each AP combines: Support for agent migration White and Yellow Pages Agents Agent Management Services Initial Agent Community The Run-Time Environment
Supports reuse of AF-APL code through inheritance. Implements filtered views of agent classes. Facilitates “publication” of agent designs. The Agent Design Tool
Supports the visualisation, configuration, and execution of agents Provides a filtered view of the agent through a set of views Agent Viewer Tool
Defines a structured approach to the coding and testing phases. Places a partial ordering on the use of the tool set. Identifies key deliverables to be produced. The Development Methodology
Visual Design with Agent Factory • Provision of graphical tools to support the design of agents. • Initial focus upon support for the modelling of agent interaction protocols. • Provides scope for the utilization of various design notations. • Supports users in the fabrication of semantically correct protocols. • Assist users in the generation of agent code based upon published protocols. • Initial prototype supports Agent UML notation.
Inform of success User Updates Inform of failure Semantic Checker Update of Model Interface Model Agent Factory Protocol Tool
WAY System Current Applications • Ubiquitous Computing. Agent Factory has been employed to deliver a number of location aware services for hand-held devices. • Gulliver’s Genie, WAY System, E=mc2, and AD-ME • M-Commerce. Agent Factory is being used to deliver context sensitive shopping for mobile users. • EasiShop • Robotics. Agent Factory was employed as part of a hybrid agent architecture that is being used in ongoing research to investigate social robotics. • IMPACT, MARC • Speech Processing. Agent Factory is being used to process human speech using Phonotactics. • SAID
The Goal of the WAY • Support the mobile citizen in the location, tracking and rendezvousing with a variety of moving entities. I’m walking down Grafton Street Grand, I’ll see you in a minute Well, I’m outside Trinity College Where are you? Allow the mobiles themselves to deal with these requests
Technologies for the WAY • Personal Digital Assistants (PDAs) • Personal Digital Assistant (IPAQ 3600 - 3700) • PCM/CIA Sleeve • Localisation Technology including Global Positioning Systems (GPS) • GPS card / Garmin 2 GPS receiver • Communication over Wireless Networks • Nokia Card Phone 2 GSM 900/1800 • Mobile, Lightweight, Belief Desire Intention (BDI), Agents • Agent Factory
Implementing the WAY • Each user is given their own WAY agent • Maintains information about the users current location and activities • By preference, WAY Agents reside on the users mobile device • When on the device, WAY Agents have access to the users position through GPS • Also, they can interact with the user through a graphical interface • However, if the device is not accessible, the agents migrate to the WAY Server • While there, they remember the users last known coordinates. • WAY Agents communicate regular updates of their users position to interested parties • But only if the user permits it!
At the end of the WAY… Zoomed In Zoomed Out
Agent Factory in Context I • A number of other Agent Development Tools exist: • LEAP (LEAP Consortium). Integration of JADE and ZEUS that is compliant with J2ME. • JADE (TILAB). FIPA-compliant Java API that supports the fabrication of reactive agents. • ZEUS (BT Labs). A graphical toolkit for creating deliberative agent designs, which when completed, are compiled into Java code, customised and finally, executed. • JACK (Agent-Oriented Software). Extends Java with agent-based concepts. JACK code is compiled into Java code and executed. • FIPA-OS (Emorphia). The first FIPA-compliant agent platform. Similar to JADE.
Table 1. A Comparison of Agent Prototyping Environments AF LEAP JACK ZEUS JADE FIPA-OS BDI √ √ Mobility √ √ √ √ White Pages √ √ √ √ √ Yellow Pages √ √ √ √ √ FIPA Compliance √ √ √ √ √ Fabrication Mode Design Instance Design Instance Design Design Inheritance √ √ √ √ Construction Graphical Graphical Graphical Graphical None None Visualization Graphical Graphical None Graphical None None Integrated Methodology √ √ √ Agent Factory in Context II √ √
Summary • Agent Factory: • Is a cohesive framework for the development and deployment of agent-oriented applications on J2ME-compliant devices. • Offers a visually intuitive development environment that: • Promotes design reuse. • Has strong links with Agent UML. • Delivers a rich set of tools to support the development and debugging of agent designs. • Provides a rich coupling between an Agent Development Methodology and the Agent Factory toolset. • Supports mobile agents.
And, finally… • An evaluation version of the Agent Factory Framework is available for download from: http://www.agentfactory.com/
agentfactory.ucd.ie Component Design Library krytan.ucd.ie Published components Agent Designs Development Environment Perceptors Actuators Modules MTS lister.ucd.ie MS Development Environment Deployed components pda1.ucd.ie holly.ucd.ie Agent Platform Agent Platform Agent Factory Physical Architecture
Supports the fabrication of Actuators Interface presents a filtered view of the implementation Generates and compiles relevant Java classes The Actuator Builder