36
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

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

Embed Size (px)

Citation preview

Page 1: 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

An Infrastructure for Agent Service Composition in Open Environments

Kenichi Yoshimura1, Lin Padgham1, and Wei Liu2

1 RMIT University2 The University of Western Australia

Page 2: 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

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

Page 3: 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

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

Page 4: 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

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?

Page 5: 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

Agentcities Project

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

www.agentcities.org and www.agentcities.netwww.agentcities.org and www.agentcities.net

Page 6: 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

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

Page 7: 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

Multiple Agents - Interaction

PersonalAssistant

AccountManager

AutomaticTeller

Taxi Agent

RequestCreateAccount

Done(Account22)

Done(Account23)

RequestCreateAccount

RequestAction(Transfer 22 23 $12)

RequestBookTaxi

Done($12, Cash)

DoneAction(Transfer 22 23 $12)

Page 8: 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

Multiple Agents - Interaction

PersonalAssistant

AccountManager

AutomaticTeller

Taxi Agent

RequestCreateAccount

Done(Account22)

Done(Account23)

RequestCreateAccount

RequestAction(Transfer 22 23 $12)

RequestBookTaxi

Done($12, Cash)

DoneAction(Transfer 22 23 $12)

Page 9: 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

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

Page 10: 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

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

Page 11: 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

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

Content Language

Page 12: 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

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

Content Language

Communicative Act

Page 13: 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

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

Content Language

Communicative Act

Protocol

Page 14: 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

FIPA Request Protocol

no t-unders tood re fusereason

fa i lu rereason

in fo rmD one(ac t ion)

in fo rm(io ta x ( resu lt act ion) x)

ag ree

requestac t ion

Not FIPA ACL

No enough

opening balance

Create Account

Same Account Exist Account

Created

Account Created with

AccountNumber

Page 15: 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

ACL Performatives Inform Request QUERY_REF Refuse Failure …… many more

no t-unders tood re fusereason

fa i lu rereason

in fo rmD one(ac t ion)

in fo rm(io ta x ( resu lt act ion) x)

ag ree

requestac t ion

Page 16: 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

FIPA ACL Message (Example)

(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)

Content Language: SL

Page 17: 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

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)

FIPA Agent Mangement Ontology

Domain Ontologies

Page 18: 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

Composite Service and Teamwork

Execution of composite services involves unconscious 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. (E.g. Joint Intentions, Joint Goals and mutual beliefs)

Page 19: 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

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.

Team members

Coordination Team Team

Plan

Page 20: 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

Survey of JACK Teams

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.

Page 21: 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

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.

Page 22: 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

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.

Page 23: 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

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 DeliveryFAIL

OK

OK

OK

OK

OK

OK

OK

Page 24: 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

Static Dependency Analysis

HF = Hi Fi AgentCD = CD AgentPS = Power Supply Agent

1. quote = HF.get_quote();

2. cd = CD.buy(title);3. psu =

PS.order(quote, office);

4. 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).

Page 25: 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

An Example Scenario

User Agent Hi-FI Agent CD Agent Power SupplyPower Supply

Get quote

Quote

Order CD

CD Delivery

Power supply unit booking

Booking confirmation

Order Hi Fi

Hi Fi Delivery

OK

OK

Execute

Execute

Execute

Execute

Execute

Execute

Page 26: 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

Putting All Together...

Proxy Agent

Composite Service Team

End User’s Agent

User InterfaceUser Interface Service DiscoveryService Discovery

Backtracking Plan

User Specified Composite Service

Proxy AgentProxy Agent

Library of Plans

Role Assignment

Page 27: 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

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.

Page 28: 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

What does it do?

ASKIT Interface

Customised Service

Open Environment like Agentcities

Team of user agents

Service types and associated interfaces.

Eg. bank service with open account, get balance and transfer money interfaces.

Team plan

Page 29: 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

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

Page 30: 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

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

Page 31: 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

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?

Page 32: 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

Agentcities Project

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.

www.agentcities.org and www.agentcities.netwww.agentcities.org and www.agentcities.net

Page 33: 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

Web Services v.s. Agent Services

Service Flow

Service Discovery

Service Publication

Network

Service Description

XML-Based Messaging

WSFL

Static -> UDDI

Direct -> UDDI

WSDL

SOAP

HTTP, FTP, SMTP, IIOP…

Interaction Protocol

Agent Communication Language

Content Language

Content Ontology

DAML-S

DAML-S

Agent Directory Service &Service Directory Service

Message TransportService

Web Services Agent Services

Page 34: 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

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 compliancyhttp://www.cs.rmit.edu.au/agents/protocols

Page 35: 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

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!

Page 36: 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

Questions