1 / 36

An Infrastructure for Agent Service Composition in Open Environments

An Infrastructure for Agent Service Composition in Open Environments. Kenichi Yoshimura 1 , Lin Padgham 1 , and Wei Liu 2 1 RMIT University 2 The University of Western Australia. Outline. Motivation (Semantic Web and Agentcities) Communication in an Open Environment (FIPA-JACK)

nani
Download Presentation

An Infrastructure for Agent Service Composition 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 Service Composition in Open Environments Kenichi Yoshimura1, Lin Padgham1, and Wei Liu2 1 RMIT University 2 The University of Western Australia

  2. Outline • Motivation (Semantic Web and Agentcities) • Communication in an Open Environment (FIPA-JACK) • Service Composition v.s. Teamwork • A Service Composition Tool (ASKIT) • Conclusion and future work • What’s next

  3. Striding Towards Semantic Web • Today’s web • Keyword based search • Human Consumable (information centric) • Semantic Web (leading web to its full potential) • Match making using semantic meaningful information • Machine Processable (service centric) • Benefits • Better quality of service – search engines • Service Composition

  4. Semantic Web: Not an easy move • Content Providers – Static website owners (annotate content using ontologies) • Service Providers – Companies and Government (deploy HTML form based services into Web services) • Service Consumers (able to search and compose services) Who are going to go through all this trouble and become early Semantic Web Adopters?

  5. Agentcities Project www.agentcities.org and www.agentcities.net • Agentcities is a worldwide open network of platforms hosting diverse agent based services. • It is also a test-bed to help realise the commercial and research potential of agent based applications • The ultimate aim is to • enable the dynamic, intelligent and autonomous composition of services to achieve user and business goals. • A working network of agent-based services based on Foundation for Intelligent Physical Agents (FIPA) standards

  6. Key Characteristics of an Open System • Open • Join and leave at any time • Distributed • Deployed anywhere in the world • Autonomous • Represent different interests • Heterogeneous • Implemented in different ways

  7. Request CreateAccount Request CreateAccount Done (Account23) Done (Account22) Request BookTaxi Personal Assistant Automatic Teller Account Manager Done ($12, Cash) Request Action(Transfer 22 23 $12) Done Action(Transfer 22 23 $12) Taxi Agent Multiple Agents - Interaction

  8. Request CreateAccount Request CreateAccount Done (Account23) Done (Account22) Request BookTaxi Personal Assistant Automatic Teller Account Manager Done ($12, Cash) Request Action(Transfer 22 23 $12) Done Action(Transfer 22 23 $12) Taxi Agent Multiple Agents - Interaction

  9. Agent Infrastructures Used by Agentcites Platforms • FIPA Compliant Agent Development Tools (Open Source) • JADE • FIPA-OS • April Agent Platform • Zeus • BDI Agent Development Tools • JACK (Commercial) - Made FIPA Compliant through FIPA-JACK

  10. In order to communicate • Use same vocabulary and have the same perception of the world • Use the agreed syntax • Follow agreed semantic of communicative act • Follow agreed sequence of messages Ontology

  11. Content Language Ontology In order to communicate • Use same vocabulary and have the same perception of the world • Use the agreed syntax • Follow agreed semantic of communicative act • Follow agreed sequence of messages

  12. Communicative Act Content Language Ontology In order to communicate • Use same vocabulary and have the same perception of the world • Use the agreed syntax • Follow agreed semantic of communicative act • Follow agreed sequence of messages

  13. Protocol Communicative Act Content Language Ontology In order to communicate • Use same vocabulary and have the same perception of the world • Use the agreed syntax • Follow agreed semantic of communicative act • Follow agreed sequence of messages

  14. FIPA Request Protocol Create Account No enough opening balance Not FIPA ACL Account Created with AccountNumber Account Created Same Account Exist

  15. ACL Performatives • Inform • Request • QUERY_REF • Refuse • Failure • …… many more

  16. FIPA ACL Message (Example) Content Language: SL (request :sender (agent-identifier :name x) :receiver (set (agent-identifer :name y)) :content ( (action (agent-identifier :name y) (createClient :personalInfo (PersonalInfo :lastname Liu :agentId( … ) …))) :ontology urn:x-acnet:EPFL:ontology:banking:v2.0 :protocol fipa-request)

  17. FIPA Agent Mangement Ontology Domain Ontologies Ontology and Content (request :sender (agent-identifier :name x) :receiver (set (agent-identifer :name y)) :content ( (action (agent-identifier :name y) (createClient :personalInfo (PersonalInfo :lastname Liu :agentId( … ) …))) :ontology urn:x-acnet:EPFL:ontology:banking:v2.0 :protocol fipa-request)

  18. Composite Service and Teamwork • Execution of composite services involves unconsciouscollaboration 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. (E.g. Joint Intentions, Joint Goals and mutual beliefs)

  19. 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

  20. 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

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

  22. 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). • JACK team plans have strong notions of failure. • When a team plan fails, why not re-execute with a different combination of agents? • Potentially avoids computational redundancies. • Additional level of backtracking.

  23. 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

  24. 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

  25. 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

  26. 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

  27. What’s ASKIT?(Agent Service Komposition Interface Tool) (RMIT) • A demonstration system. • Demonstrate service composition – reuse existing services. • 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.

  28. 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

  29. 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

  30. Conclusion • An infrastructure • Enables user-friendly service composition • Implements service composition successfully using simple hierarchical teamworks • Focus on flexibility in the control flow of services and robustness in an open environment

  31. Issues and Future Work • Service Description and Dynamic Discovery • Represent services so that we can automate the proxy agents generation • Analysis of preconditions and post-conditions of services • What’s the right level of commitments of team members in open environments?

  32. Agentcities Project www.agentcities.org and www.agentcities.net • Agentcities funding finishes in Oct 2003. • What happened to Agentcities network support? • OpenNet initiative is to keep the network alive. • More support on Web Services standard, SOAP, WSDL, UDDI.

  33. Interaction Protocol Agent Communication Language Content Language Content Ontology Web Services v.s. Agent Services Web Services Agent Services WSFL Service Flow DAML-S Static -> UDDI Service Discovery Agent Directory Service & Service Directory Service Direct -> UDDI Service Publication WSDL Service Description DAML-S SOAP XML-BasedMessaging HTTP, FTP, SMTP, IIOP… Network Message Transport Service

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

  35. 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! • Thanks to Kenichi for the ASKIT slides!

  36. Questions ?

More Related