1 / 19

An Infrastructure for Agent Collaboration in Open Environments

An Infrastructure for Agent Collaboration in Open Environments. Kenichi Yoshimura, Lin Padgham, and Wei Liu RMIT University Presented to Agents VIC May 2003. Agentcities Project. www.agentcities.org and www.agentcities.net.

posy
Download Presentation

An Infrastructure for Agent Collaboration in Open Environments

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. An Infrastructure for Agent Collaboration in Open Environments Kenichi Yoshimura, Lin Padgham, and Wei Liu RMIT University Presented to Agents VIC May 2003

  2. Agentcities Project www.agentcities.org and www.agentcities.net • “Agentcities is a worldwide initiative designed to help realise the commercial and research potential of agent based applications by constructing a worldwide, open network of platforms hosting diverse agent based services. The ultimate aim is to enable the dynamic, intelligent and autonomous composition of services to achieve user and business goals, thereby creating compound services to address changing needs.”, from www.agentcities.org. • A working network of agent-based services based on Foundation for Intelligent Physical Agents (FIPA) standards.

  3. Motivations • Agentcities: approaching 100 nodes connected, offering diverse services. But are services easily accessible to create composite services? Standards for Open Environments (FIPA, WSDL) Agent Communication Languages (FIPA ACL, KQML) Ontology Representations (DAML+OIL, OWL) Content Languages (FIPA SL, KIF) Open Environment Service Description and Discovery (DAML+S, UDDI) Interaction Protocols Reliability and Robust Issues

  4. What’s ASKIT?(Agent Service Komposition Interface Tool) • A demonstration system. • Encourage development of complex services using existing services with the minimum effort. • A tool that enables people with limited programming experience compose customised services as easy as browsing information on the Internet. • No knowledge of open environments required. • Viewing a composite service as a loose form of teamwork. • The use of a goal directed BDI framework and study suitability of an existing model of teamwork for open environments.

  5. What does it do? Service types and associated interfaces. Eg. bank service with open account, get balance and transfer money interfaces. ASKIT Interface Team plan Customised Service Open Environment like Agentcities Team of user agents

  6. An Example Scenario User Agent Hi-Fi Agent CD Agent Power Supply Get quote Quote Order CD CD Delivery Power supply unit booking Booking confirmation Order Hi Fi Hi Fi Delivery

  7. Composite Service and Teamwork • Execution of composite services involves collaboration of heterogenous agents. • Similar characteristics desirable such as parallel execution and synchronisation of activities. • Observation of commitments between a user agent and service provider agents - however, traditional models of teamwork are typically too restrictive in open environments. • Implementation issues: • Failure management (eg. request being rejected) • Interaction with unreliable services (eg. services disappearing) • Service discovery • Interaction protocols and content languages • Message delivery and failure recovery

  8. A Current Model of Teamwork • JACK Teams – hierarchical structure of teams. • Team plans to specify: • Member selection. • Coordination of team’s activities separately from individuals. • Roles to capture abstract capabilities. • Transparently implements basic requirements of teams – Eg. failure notification. Coordination Team Team Plan Team members

  9. Provides a framework to model organisations with hierarchies. Support of the BDI architecture with teams. Easy specification of coordinated activities. Good separation of team activities and individual activities. Designed for closed environments. Works only with instances of JACK Teams agents. Eg. team plans rely on basic agreements of team members – success/failure report. Survey of JACK Teams

  10. Mapping Teams to Services • Roles and service types • Both captures abstract capabilities of an entity. • Represent a composite service as a team plan. • Recycling existing facilities such as parallel execution and synchronisation. • Abstractly describe requirements by roles (i.e. service types). • Proxy agents: additional layer mapping JACK Teams to services in open environments. • Making unreliable services consistent from the team’s view – a represented services being unavailable, failures in interactions, and monitoring time-out for network related failures. • Managing interaction protocols and content languages.

  11. Dynamic Service Discovery • Possible to have several instances of the same type of service available simultaneously in open environments. • In ASKIT, a service is modelled as service type and its associated interfaces. • Specify composite services using service types and their interfaces – this enables dynamic discovery of service instances depending on the current configuration of the environment. • Service discovery issues: FIPA’s Directory Facilitators (DFs) and Universal Description, Discovery and Integration (UDDI).

  12. Extending Team Plans • BDI architectures enable recovery from failures by selecting different plans that achieves the same goal. • Establish() method allows dynamic sub-teams selection from a list of potential agents (role containers). • When a team plan fails, why not re-execute with a different combination of agents? • Potentially avoids computational redundancies. • Additional level of backtracking.

  13. HF = Hi Fi Agent CD = CD Agent PS = Power Supply Agent quote = HF.get_quote(); cd = CD.buy(title); psu = PS.order(quote, office); unit = HF.buy(quote); Requires 3 types (HF, CD, PS). 1 and 4 are performed by the same agent. 2 is independent. 3 depend on 1 because it requires a Hi-Fi model (quote). Static Dependency Analysis

  14. An Example Scenario User Agent Hi-FI Agent CD Agent Power Supply Get quote OK Quote OK OK Order CD CD Delivery OK Power supply unit booking OK Booking confirmation OK Order Hi Fi OK Hi Fi Delivery FAIL

  15. An Example Scenario User Agent Hi-FI Agent CD Agent Power Supply Get quote Execute Execute Quote Order CD OK OK CD Delivery Power supply unit booking Execute Execute Booking confirmation Order Hi Fi Execute Execute Hi Fi Delivery

  16. Putting All Together... User Interface Service Discovery Composite Service Team End User’s Agent Backtracking Plan Library of Plans Role Assignment User Specified Composite Service Proxy Agent Proxy Agent Proxy Agent

  17. Issues and Future Work • How to represent services so that we can automate the proxy agents generation? • Analysis of input/output dependencies enough? How about preconditions and consequences? • What’s the right level of commitments of team members in open environments? Our approach too simple??

  18. Resources • ASKIT is unreliably available at http://agentcities.cs.rmit.edu.au/agentcities:7198:login.jsp • FIPA JACK – a plugin for JACK Intelligent Agents for FIPA standard compliancy www.cs.rmit.edu.au/agents/protocols

  19. Acknowledgement • ASKIT project associates: Antony Iorio, Richard Jones, David Shepherdson, Andrew Lucas, Ralph Rönnquist and Jeff Schultz. • Thanks to James Harland, Michael Winikoff, and Ian Mathieson for useful discussion and feedbacks!

More Related