19
Pizza and a Movie A Case Study in Advanced Web Services Dr Luigi Ceccaroni Dr Jonathan Dale Network Agent Research Group Fujitsu Laboratories of America July, 2002

Pizza and a Movie

Embed Size (px)

DESCRIPTION

A Case Study in Advanced Web Services

Citation preview

Page 1: Pizza and a Movie

Pizza and a MovieA Case Study in

Advanced Web Services

Dr Luigi CeccaroniDr Jonathan Dale

Network Agent Research Group

Fujitsu Laboratories of America

July, 2002

Page 2: Pizza and a Movie

© 2002 Fujitsu Laboratories of America

Outline

• Introduction

• The Evening Organizer

• The scenario

• Conclusions

• Challenges

Page 3: Pizza and a Movie

© 2002 Fujitsu Laboratories of America

Introduction• Advanced Web Services (WS++)

– Communicate on wide-area networks, such as the Internet.

– Have explicit representation of the capabilities offered.

– Support semantically grounded communication.

– Are reusable in different contexts and situations.

– Are published, discovered through agreed registry mechanisms.

– Are invoked through interactive and dynamic interfaces.

• Agents– Advertise their existence.

– Establish communications with other agents.

– Describe their function, input and output requirements.

– Negotiate an exchange of data and services.

– Cooperate in the completion of a task.

Page 4: Pizza and a Movie

© 2002 Fujitsu Laboratories of America

The Evening Organizer

• Part of Agentcities.RTD composite services• Uses various domain services such as:

Weather Cinema Hotel Restaurant Taxi

• Application for San Francisco• Part of an envisioned pervasive-computing infrastructure

(location and context-aware services) • AAP based

Page 5: Pizza and a Movie

© 2002 Fujitsu Laboratories of America

The Evening OrganizerPersonal Assistant AgentUser

Evening Organizer

Gather UserPreferences

Initiate EveningPlanning Task

ComposeItinerary

GatherReview

Information

GatherRatings

Information

RefineItinerary

GatherService

Information

ProposeItinerary

SeekApproval of

Itinerary

ApproveItinerary

ModifyItinerary

CancelItinerary

Make ItineraryReservations

MakeItinerary

Reservations

ProposeItinerary withReservations

Seek Approvalof Itinerary with

Reservations

ApproveItinerary

ModifyItinerary

CancelItinerary

Book ItineraryReservations

1

2

34

56

7a

8

9

10a

7b

10b

The user can monitor booking

execution

Page 6: Pizza and a Movie

© 2002 Fujitsu Laboratories of America

Initiating an evening organization taskA user wants to go to a restaurant to eat a pizza and

then go to a cinema to see a Sci-Fi movie.

The user is guided, via Web forms, towards a Restaurant and Shows template.

(Restaurant (typeOfCuisine:Cuisine = Pizza)

Shows = CinemaShow (show:Performance (genre:string = Sci-Fi)))

Page 7: Pizza and a Movie

© 2002 Fujitsu Laboratories of America

The Evening OrganizerPersonal Assistant AgentUser

Evening Organizer

Gather UserPreferences

Initiate EveningPlanning Task

ComposeItinerary

GatherReview

Information

GatherRatings

Information

RefineItinerary

GatherService

Information

ProposeItinerary

SeekApproval of

Itinerary

ApproveItinerary

ModifyItinerary

CancelItinerary

Make ItineraryReservations

MakeItinerary

Reservations

ProposeItinerary withReservations

Seek Approvalof Itinerary with

Reservations

ApproveItinerary

ModifyItinerary

CancelItinerary

Book ItineraryReservations

1

2

34

56

7a

8

9

10a

7b

10b

The user can monitor booking

execution

Page 8: Pizza and a Movie

© 2002 Fujitsu Laboratories of America

Composing an itineraryThe personal agent (PA) expands the instantiated

template into an instantiated itinerary (Web Services selection and composition).

(Taxi (source:string = UserHome) Restaurant … Taxi … Shows … Taxi (destination:string = UserHome))

Page 9: Pizza and a Movie

© 2002 Fujitsu Laboratories of America

The Evening OrganizerPersonal Assistant AgentUser

Evening Organizer

Gather UserPreferences

Initiate EveningPlanning Task

ComposeItinerary

GatherReview

Information

GatherRatings

Information

RefineItinerary

GatherService

Information

ProposeItinerary

SeekApproval of

Itinerary

ApproveItinerary

ModifyItinerary

CancelItinerary

Make ItineraryReservations

MakeItinerary

Reservations

ProposeItinerary withReservations

Seek Approvalof Itinerary with

Reservations

ApproveItinerary

ModifyItinerary

CancelItinerary

Book ItineraryReservations

1

2

34

56

7a

8

9

10a

7b

10b

The user can monitor booking

execution

Page 10: Pizza and a Movie

© 2002 Fujitsu Laboratories of America

Restaurant service

JTP Knowledge

BASE Restaurant Booking

Agent

KIF

Evening Organizer

QUERY-REF

INFORM

RE

QU

ES

T

INF

OR

M-D

ON

E

Ext

ende

d-F

IPA

-SL

Extended-FIPA-SL

SQLSQL database

RestaurantFinderAgent

HTML(Web)

DAML+OIL DAML-S

Restaurant services

Page 11: Pizza and a Movie

© 2002 Fujitsu Laboratories of AmericaGrounding for Web Services invocation (Finder Agents)

(QUERY-REF :sender  ( agent-identifier  :name [email protected]:1099 :addresses (sequence http://bo.agentcities.net:7778 )) :receiver  (set ( agent-identifier  :name [email protected] :addresses (sequence http://sf.us.agentcities.net:8080/acc ))) :content  "( (all ?r1 (and

(instance ?r1 daml-s#serviceProfile)

(= (value ?r1 restaurant#CuisineType) \"restaurant#FrenchCuisine\") ) ) )"

 :language  extended-FIPA-SL :ontology  (sequence    

daml-s:http://.../onto1    

restaurant:http://...onto3) :protocol  fipa-query)

Page 12: Pizza and a Movie

© 2002 Fujitsu Laboratories of America

The Evening OrganizerPersonal Assistant AgentUser

Evening Organizer

Gather UserPreferences

Initiate EveningPlanning Task

ComposeItinerary

GatherReview

Information

GatherRatings

Information

RefineItinerary

GatherService

Information

ProposeItinerary

SeekApproval of

Itinerary

ApproveItinerary

ModifyItinerary

CancelItinerary

Make ItineraryReservations

MakeItinerary

Reservations

ProposeItinerary withReservations

Seek Approvalof Itinerary with

Reservations

ApproveItinerary

ModifyItinerary

CancelItinerary

Book ItineraryReservations

1

2

34

56

7a

8

9

10a

7b

10b

The user can monitor booking

execution

Page 13: Pizza and a Movie

© 2002 Fujitsu Laboratories of AmericaGrounding for Web Services invocation (Booking Agents)

 (REQUEST :sender  ( agent-identifier  :name [email protected]:1099 :addresses (sequence http://bo.agentcities.net:7778 )) :receiver  (set ( agent-identifier  :name [email protected] :addresses (sequence http://sf.us.agentcities.net:8080/acc )) ) :content  "(action ( ( agent-identifier  :name [email protected] :addresses (sequence http://sf.us.agentcities.net:8080/acc ))) (process#booking :restaurant#howmany 8 :restaurant#when \"2002-06-17-1630\" ))" :ontology (sequence    

process:http://.../onto2    restaurant:http://...onto3)

 :language  extended-FIPA-SL        :protocol  fipa-request-protocol)

Page 14: Pizza and a Movie

© 2002 Fujitsu Laboratories of America

The Evening OrganizerPersonal Assistant AgentUser

Evening Organizer

Gather UserPreferences

Initiate EveningPlanning Task

ComposeItinerary

GatherReview

Information

GatherRatings

Information

RefineItinerary

GatherService

Information

ProposeItinerary

SeekApproval of

Itinerary

ApproveItinerary

ModifyItinerary

CancelItinerary

Make ItineraryReservations

MakeItinerary

Reservations

ProposeItinerary withReservations

Seek Approvalof Itinerary with

Reservations

ApproveItinerary

ModifyItinerary

CancelItinerary

Book ItineraryReservations

1

2

34

56

7a

8

9

10a

7b

10b

The user can monitor booking

execution

Page 15: Pizza and a Movie

© 2002 Fujitsu Laboratories of America

Final form of the itinerary (Taxi

(source:string = UserHome) (destination:string = Ft. Mason Ctr., A) Restaurant = Antica Trattoria (seating:RestaurantSeating = Indoor) (typeOfCuisine:Cuisine = Pizza) Taxi (source:string = Ft. Mason Ctr., A) (destination:string = 1345 Bush St) Shows = CinemaShow (show:Performance (title:string = Barbarella) (genre:string = Sci-Fi)) (location:EventHost (name:string = Alliance Française)) Taxi (source:string = 1345 Bush St) (destination:string = UserHome))

Page 16: Pizza and a Movie

© 2002 Fujitsu Laboratories of America

The Evening OrganizerPersonal Assistant AgentUser

Evening Organizer

Gather UserPreferences

Initiate EveningPlanning Task

ComposeItinerary

GatherReview

Information

GatherRatings

Information

RefineItinerary

GatherService

Information

ProposeItinerary

SeekApproval of

Itinerary

ApproveItinerary

ModifyItinerary

CancelItinerary

Make ItineraryReservations

MakeItinerary

Reservations

ProposeItinerary withReservations

Seek Approvalof Itinerary with

Reservations

ApproveItinerary

ModifyItinerary

CancelItinerary

Book ItineraryReservations

1

2

34

56

7a

8

9

10a

7b

10b

The user can monitor booking

execution

Page 17: Pizza and a Movie

© 2002 Fujitsu Laboratories of America

Conclusions• EO: a simple process (black-box) expanding to a composite

process• Personal Agent: interface between user and EO• Dynamic input: Web form filled out by the user, user

preferences• Conditional output: Complete itinerary with reservations

booked and tickets purchased, or itinerary partially organized, or failure and error message

• Future work: – DAML-S version advertising properties and capabilities through a profile

description, and providing a grounding consistent with DAML-S 0.7 – Integration with a logic-based content language to be compatible with the

requirements of semantic agent communication within Agentcities– Restaurant, cinema and taxi services

Page 18: Pizza and a Movie

© 2002 Fujitsu Laboratories of America

Challenges(addressed by Agentcities)

• Semantic interoperability, use of ontologies

• Need for standard searching mechanisms and service classification

• Tools, frameworks and methodologies, to help the software-agent developer

• Dynamic, intelligent and autonomous composition of services

Page 19: Pizza and a Movie

© 2002 Fujitsu Laboratories of America

Availability Details (September 2002)

The Evening Organizer for

San Francisco

http://sf.us.agentcities.net/Luigi Ceccaroni, Jonathan Dale

[email protected]

Restaurant services:

http://sf.us.agentcities.net/aap/RestaurantServiceDescription.htm

AAP on SourceForge.net:http://www.sourceforge.net/projects/networkagent