intelligence agents multimedia owl-s an alternative perspective terry r. payne intelligence, agents,...

87
Intelligence Agents Intelligence Agents Multimedia Multimedia OWL-S OWL-S An alternative perspective An alternative perspective Terry R. Payne Terry R. Payne Intelligence, Agents, Multimedia Intelligence, Agents, Multimedia Group Group University of Southampton University of Southampton

Upload: ashlyn-bailey

Post on 30-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Intelligence AgentsIntelligence AgentsMultimediaMultimedia

OWL-SOWL-SAn alternative perspectiveAn alternative perspective

Terry R. PayneTerry R. Payne

Intelligence, Agents, Multimedia Intelligence, Agents, Multimedia GroupGroup

University of SouthamptonUniversity of Southampton

Page 2: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Web ServicesWeb Services

A new paradigm? A new paradigm?Or just the new black?Or just the new black?

Page 3: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Web Services - A New Paradigm?Web Services - A New Paradigm?

• Web Services heralded as:Web Services heralded as: “… “… self-contained, self-describing, modular self-contained, self-describing, modular

applications that can be published, located, and invoked applications that can be published, located, and invoked across the Web…”across the Web…”

• Which will allow…Which will allow… ……large companies to shrink around their core large companies to shrink around their core

competencies into small, flexible, and highly profitable unitscompetencies into small, flexible, and highly profitable units ……on the fly composition of new functionality through the on the fly composition of new functionality through the

use of loosely coupled reusable software componentsuse of loosely coupled reusable software components ……decomposition and distribution of large-scale processing decomposition and distribution of large-scale processing

tasks into component tasks executed simultaneously across tasks into component tasks executed simultaneously across many devicesmany devices

Page 4: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Web Services - Liberating the MachineWeb Services - Liberating the Machine

• Web Services traditionally have a human interfaceWeb Services traditionally have a human interface Required information is presented using formsRequired information is presented using forms Humans interpret labels and enter corresponding Humans interpret labels and enter corresponding

informationinformation Humans interpret resulting informationHumans interpret resulting information

• Form-based interaction ill-suited for machine Form-based interaction ill-suited for machine comprehensioncomprehension Prior knowledge can be used to prime parsing of pagesPrior knowledge can be used to prime parsing of pages

- E.g. screen scrapingE.g. screen scraping CGI-based services can ignore presented page and submit CGI-based services can ignore presented page and submit

a preformed request directly to the servera preformed request directly to the server

• Web Services make the implicit specifications Web Services make the implicit specifications explicit!explicit!

Page 5: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Perspectives on Web Services 1Perspectives on Web Services 1

• Functional (Request-Response) ServicesFunctional (Request-Response) Services Search Engines or conversion servicesSearch Engines or conversion services May be implemented simply in Java (e.g. unit conversion) May be implemented simply in Java (e.g. unit conversion)

or use GET/POST protocolor use GET/POST protocol

Page 6: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Perspectives on Web Services 2Perspectives on Web Services 2

• Conversational ServicesConversational Services Online ShoppingOnline Shopping Require the user to navigate several stages before Require the user to navigate several stages before

transaction is completetransaction is complete

Page 7: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Interaction MechanismsInteraction Mechanisms

• Functional – i.e. Request-ResponseFunctional – i.e. Request-Response User visits a page and types in requestUser visits a page and types in request Web service returns an answerWeb service returns an answer

• Conversational – i.e. Solicit-Response interactionConversational – i.e. Solicit-Response interaction Analogous to being asked questions to refine the request!Analogous to being asked questions to refine the request! Triggered by the user visiting the page, of courseTriggered by the user visiting the page, of course Whilst attempting to satisfy user’s request, the Web service Whilst attempting to satisfy user’s request, the Web service

presents a page containing information and choicepresents a page containing information and choice User responds with informationUser responds with information Ultimately, the service returns the desired response to the Ultimately, the service returns the desired response to the

initial requestinitial request

Page 8: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Human Oriented Services vs Machine Human Oriented Services vs Machine Oriented ServicesOriented Services

• WWW is organized around URIs, HTML, and HTTP.WWW is organized around URIs, HTML, and HTTP. URIs provide defined ids to refer to elements on the webURIs provide defined ids to refer to elements on the web

- URLs are machine resolvable, but other URIs may resolve to URLs are machine resolvable, but other URIs may resolve to any object…any object…

HTML provides a standardized way to describe document HTML provides a standardized way to describe document structuresstructures

- allowing browsers to render information for the human readerallowing browsers to render information for the human reader

HTTP defines a protocol to retrieve information from the HTTP defines a protocol to retrieve information from the web.web.

- resulting in a near-ubiquitous communication frameworkresulting in a near-ubiquitous communication framework

• Not surprisingly, web services require a similar Not surprisingly, web services require a similar infrastructure around UDDI, WSDL, and SOAP.infrastructure around UDDI, WSDL, and SOAP.

Source: Dieter Fensel & Christoph Bussler

Page 9: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

From Human to Machine…From Human to Machine…

URI HTML HTTP

UDDI WSDL SOAP

Source: Dieter Fensel & Christoph Bussler

Page 10: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Overview of Web Services StandardsOverview of Web Services Standards

• Data and Control Flow descriptions Data and Control Flow descriptions of Web Services; Security and of Web Services; Security and ManagementManagement

• A mechanism for registering and A mechanism for registering and looking up web serviceslooking up web services

• Programmatic way of describing the Programmatic way of describing the Web Service InterfaceWeb Service Interface

• Web Services Communication Web Services Communication protocolprotocol

XM

L

SOAP

HTTP

WSDL

UDDI

WS

-Ch

or

BP

EL4W

S

WS

-Secu

rity

WS

-Rou

tin

getc

Page 11: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

A Case of Too Many Proposals?A Case of Too Many Proposals?

• Many other Web Services Proposals exist:Many other Web Services Proposals exist: TransportTransport

- DIMEDIME - Direct Internet Message Encapsulation - Direct Internet Message Encapsulation- HTTPRHTTPR - Reliable HTTP - Reliable HTTP

Packaging & ExtensionsPackaging & Extensions- SOAP-DSIGSOAP-DSIG - SOAP Security Extensions: Digital Signature - SOAP Security Extensions: Digital Signature- SWA - SOAPSWA - SOAP - Messages with Attachments - Messages with Attachments- WS-LicenseWS-License - Web Services License Language - Web Services License Language- WS-ReferralWS-Referral - Web Services Referral Protocol - Web Services Referral Protocol- WS-RoutingWS-Routing - Web Services Routing Protocol - Web Services Routing Protocol- WS-SecurityWS-Security - Web Services Security Language - Web Services Security Language

Source: Pavel Kulchenko - http://www.xml.com/pub/a/2002/01/09/soap.html?page=1

Page 12: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Source: Pavel Kulchenko - http://www.xml.com/pub/a/2002/01/09/soap.html?page=1

A Case of Too Many Proposals?A Case of Too Many Proposals?

• Other Web Services Proposals have come (and gone!):Other Web Services Proposals have come (and gone!): DescriptionDescription

- BPEL4WS BPEL4WS - - Business Processing Execution Language for Web Business Processing Execution Language for Web - WSCMWSCM - Web Services Component Model - Web Services Component Model- WSMFWSMF - Web Services Modeling Framework - Web Services Modeling Framework- WSMLWSML - Web Services Meta Language - Web Services Meta Language- WSOLWSOL - Web Service Offerings Language - Web Service Offerings Language- WSXLWSXL - Web Services Experience Language - Web Services Experience Language- WSUIWSUI - Web Services User Interface - Web Services User Interface- XLANGXLANG - Web Services for Business Process Design - Web Services for Business Process Design

DiscoveryDiscovery- USML USML - UDDI Search Markup Language- UDDI Search Markup Language- WS-InspectionWS-Inspection - Web Services Inspection Language - Web Services Inspection Language

Page 13: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

The whole picture, or just a small part?The whole picture, or just a small part?

• UDDI, WSDL, and SOAP are important steps into UDDI, WSDL, and SOAP are important steps into the direction of a web populated by services.the direction of a web populated by services. However, they only address part of the overall stack that However, they only address part of the overall stack that

needs to be available in order to achieve the WS Visionneeds to be available in order to achieve the WS Vision Are they really addressing the needs of Agents?Are they really addressing the needs of Agents?

• Lets recap on what WS and Agents are…Lets recap on what WS and Agents are…

Source: Dieter Fensel & Christoph Bussler

Page 14: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Several characteristics of Web Several characteristics of Web Services?Services?

• A Web Service is accessible over the Web.A Web Service is accessible over the Web.

• Web Services communicate using platform-Web Services communicate using platform-independent and language-neutral Web protocolsindependent and language-neutral Web protocols

• A Web Service provides a specific functionality that A Web Service provides a specific functionality that can be used by other programs can be used by other programs

• Web Services can be located through Web Service Web Services can be located through Web Service Registries Registries

Many of these characteristics Many of these characteristics are shared by Multi Agent are shared by Multi Agent Systems…Systems…… … but is that the whole picture?but is that the whole picture?

Page 15: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Example Agent Architecture - RetsinaExample Agent Architecture - Retsina

Page 16: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Agents vs Web ServicesAgents vs Web Services

• The WS stack provides a representation specification:The WS stack provides a representation specification:

SOAPSOAP messages can support communication messages can support communication

WSDLWSDL - declarative specifications of - declarative specifications of meaningful messagesmeaningful messages - Typically thought of as describing service interfaces, but a Typically thought of as describing service interfaces, but a

WSDL operation isn’t necessarily a service!WSDL operation isn’t necessarily a service!

BEPL4WSBEPL4WS - describes coordination between operations - describes coordination between operations- Still need to determine if the service (with multiple execution Still need to determine if the service (with multiple execution

paths) can deliver meaningful results given a set of beliefs paths) can deliver meaningful results given a set of beliefs

WS-ChorWS-Chor - describes how several services interact to - describes how several services interact to achieve a joint goalachieve a joint goal

- Still need to plan across a dynamic space of services to Still need to plan across a dynamic space of services to determine a coalition that will achieve this goaldetermine a coalition that will achieve this goal

- This may also require supporting servicesThis may also require supporting services• (e.g. Agent-based commitment, or GRID reservations)

Page 17: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

One Advantage of building on Web ServicesOne Advantage of building on Web Services

• Web Services have:Web Services have: provided de facto standard for ubiquitous communicationprovided de facto standard for ubiquitous communication

- http !!!http !!!

provided a unified base representation languageprovided a unified base representation language- <XML/><XML/>

provided a universal naming schemeprovided a universal naming scheme- Universal Resources IdentifiersUniversal Resources Identifiers

- Name SpacesName Spaces

• All this is syntax, but what does it all mean?All this is syntax, but what does it all mean? And if it means something to you, does it mean the same to And if it means something to you, does it mean the same to

me?me?

Page 18: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

The Need for Semantics for ServicesThe Need for Semantics for Services

• Both Web Services and Multi Agent Systems benefit Both Web Services and Multi Agent Systems benefit from inclusion of semanticsfrom inclusion of semantics For example, DAML - For example, DAML - DARPA Agent Markup LanguageDARPA Agent Markup Language was was

designed to provide ontologies and description logics for designed to provide ontologies and description logics for Agent Markup to improve interoperabilityAgent Markup to improve interoperability

Semantic Web provides open, extensible, semantic Semantic Web provides open, extensible, semantic framework for describing and publishing semantic contentframework for describing and publishing semantic content

• Benefits?Benefits? Improved interoperabilityImproved interoperability Automated service composition, discovery and invocationAutomated service composition, discovery and invocation Access to knowledge on the internetAccess to knowledge on the internet

Page 19: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Requirements…Requirements…

• Need a framework to provide semantic descriptions Need a framework to provide semantic descriptions of these services to supportof these services to support Invocation of a previously-unseen serviceInvocation of a previously-unseen service Composition of several services to achieve a goalComposition of several services to achieve a goal Planning / Model Checking to determine valid execution Planning / Model Checking to determine valid execution

paths through the compositionpaths through the composition

• For ExampleFor Example “…“…generate a workflow to buy all the books within a generate a workflow to buy all the books within a

set, given that only sub-sets of the books are available set, given that only sub-sets of the books are available at any given online book store…at any given online book store…” - Jim Hendler” - Jim Hendler

Page 20: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Semantics on the WebSemantics on the Web

• With the Web being such a rich resource, it has been the target With the Web being such a rich resource, it has been the target of many Semantic effortsof many Semantic efforts OntobrokerOntobroker iBrowiBrow SHOESHOE

• Development of common representation format, shared Development of common representation format, shared ontologies, reasoning mechanisms, and query engines to ontologies, reasoning mechanisms, and query engines to support improved utilisation of Web knowledgesupport improved utilisation of Web knowledge

Semantic Web has emerged from this to provide description logics and extendable ontologies

Page 21: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

The Semantic WebThe Semantic Web

““The Semantic Web is an extension of the current Web in which The Semantic Web is an extension of the current Web in which information is given a well-defined meaning, better enabling information is given a well-defined meaning, better enabling computers and people to work in cooperation. It is the idea of computers and people to work in cooperation. It is the idea of having data on the Web defined and linked in a way that it can be having data on the Web defined and linked in a way that it can be used for used for more effective discovery, automation, integration and more effective discovery, automation, integration and reuse across various applicationsreuse across various applications. The Web can reach its full . The Web can reach its full potential if it becomes a place where data can be processed by potential if it becomes a place where data can be processed by automated toolsautomated tools as well as people” as well as people”

From the W3C Semantic Web Activity statementFrom the W3C Semantic Web Activity statement

““computational agents require computational agents require machine-readable descriptions of the machine-readable descriptions of the content and capabilities of web accessible resourcescontent and capabilities of web accessible resources. These . These descriptions must be in addition to the human-readable versions descriptions must be in addition to the human-readable versions of that information. “of that information. “

From the OWL GuideFrom the OWL Guide

Page 22: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Tackling Semantic Interoperability…Tackling Semantic Interoperability…

• Semantic Interoperability is a major hurdle forSemantic Interoperability is a major hurdle for Locating ServicesLocating Services

- Different terms used for advertisements and requestsDifferent terms used for advertisements and requests

Negotiating contracts & communicationsNegotiating contracts & communications- Different protocols used by different communities when Different protocols used by different communities when

agreeing whether to transactagreeing whether to transact

InvokingInvoking- Constructing valid messages based on the published Constructing valid messages based on the published

signature/interface of a servicesignature/interface of a service

UnderstandingUnderstanding- Interpreting the results of invoking a serviceInterpreting the results of invoking a service

Composing ServicesComposing Services- Constructing plans to achieve meta-goals based on available Constructing plans to achieve meta-goals based on available

Services/AgentsServices/Agents

Page 23: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Examples of Semantic MismatchExamples of Semantic Mismatch

• Semantic Mismatch at the Content LevelSemantic Mismatch at the Content Level Provider returns value Provider returns value PennsylvaniaPennsylvania, but requester only , but requester only

understands two letter state codes (i.e. understands two letter state codes (i.e. PAPA))

• Semantic Mismatch at the Attribute levelSemantic Mismatch at the Attribute level Requester needs Requester needs rainfallrainfall but provider provides but provider provides precipitationprecipitation

• Semantic Mismatch at the level of UnitsSemantic Mismatch at the level of Units Requester has value in Requester has value in inchesinches, but provider requires , but provider requires cmcm

• Semantic Mismatch at the Message levelSemantic Mismatch at the Message level Requester has Requester has lengthlength & & widthwidth, provider requires , provider requires areaarea

Page 24: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Semantic Web ServicesSemantic Web Services

• DAML-S (OWL-S) Coalition formedDAML-S (OWL-S) Coalition formed To explore how Distributed (i.e. Web-Based) semantics To explore how Distributed (i.e. Web-Based) semantics

could be used to describe agents and facilitate knowledge could be used to describe agents and facilitate knowledge exchangeexchange

Developed a high level architecture and set of ontologies for Developed a high level architecture and set of ontologies for servicesservices

Emphasis moved from Emphasis moved from AgentsAgents to to Web ServicesWeb Services……

Page 25: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

DAML-S & OWL-SDAML-S & OWL-S

• DAML-SDAML-S: A : A DDARPA ARPA AAgent gent MMarkup arkup LLanguage for anguage for SServiceservices An upper ontology for describing An upper ontology for describing propertiesproperties & & capabilitiescapabilities of of

agents & (Web) services in an agents & (Web) services in an unambiguousunambiguous, computer , computer interpretable markup language.interpretable markup language.

Originally a DAML+OIL Ontology for (Web) servicesOriginally a DAML+OIL Ontology for (Web) services Now based on OWL - Web Ontology LanguageNow based on OWL - Web Ontology Language

• AI-inspired markup language: AI-inspired markup language: tailored to the representational needs of Servicestailored to the representational needs of Services expressive power expressive power well-defined semanticswell-defined semantics ontologies support reuse, mapping, succinct markup, ...ontologies support reuse, mapping, succinct markup, ...

Page 26: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

OWL-S ObjectivesOWL-S Objectives

• Provide:Provide: An upper ontology for describing properties & capabilities of An upper ontology for describing properties & capabilities of

agents & (Web) services in an unambiguous, computer agents & (Web) services in an unambiguous, computer interpretable markup language.interpretable markup language.

Supporting ontologies for describing service types, security Supporting ontologies for describing service types, security definitions, execution parameters, access and invocation definitions, execution parameters, access and invocation characteristics.characteristics.

Guidelines for advertising, modeling and requesting Guidelines for advertising, modeling and requesting services.services.

Infrastructure to support the location and invocation of Infrastructure to support the location and invocation of services.services.

Page 27: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

OWL-S ObjectivesOWL-S Objectives

• Model services using DAML syntax and description-Model services using DAML syntax and description-logicslogics

• Achieve semantic interoperability through tight Achieve semantic interoperability through tight coupling with Semantic Web standards.coupling with Semantic Web standards.

• Automate:Automate: WS DiscoveryWS Discovery WS InvocationWS Invocation WS Selection, Composition & InteroperationWS Selection, Composition & Interoperation WS Execution MonitoringWS Execution Monitoring

Page 28: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Automating WS Discovery & SelectionAutomating WS Discovery & Selection

• Support tasks such asSupport tasks such as- Find me an airline that can fly me to SardiniaFind me an airline that can fly me to Sardinia

• Issues:Issues: How are service capabilities defined in the How are service capabilities defined in the

advertisement/request?advertisement/request?- How are constraints specified?How are constraints specified?

How do mediation/discovery services affect the format of How do mediation/discovery services affect the format of the request specification?the request specification?

Page 29: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Automating WS InvocationAutomating WS Invocation

• Support tasks such asSupport tasks such as- Book flight tickets from Alitalia to arrive on the 9th June.Book flight tickets from Alitalia to arrive on the 9th June.

• Issues:Issues: What is the format of the messages sent between service What is the format of the messages sent between service

provider and service requester?provider and service requester? How are values in incoming messages validated to ensure How are values in incoming messages validated to ensure

successful invocation?successful invocation?

Page 30: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Automating WS Composition & Automating WS Composition & InteroperationInteroperation

• Support tasks such as:Support tasks such as:- Arrange travel from Pittsburgh to Civitavecchia via Rome.Arrange travel from Pittsburgh to Civitavecchia via Rome.

• Issues:Issues: How are composite tasks defined?How are composite tasks defined? How are multi-party interactions mediated?How are multi-party interactions mediated? How are tasks decomposedHow are tasks decomposed

- Matching with pre-defined composite models?Matching with pre-defined composite models?

- Planning based on known or discovered services?Planning based on known or discovered services?

Page 31: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Automating WS Execution MonitoringAutomating WS Execution Monitoring

• Support tasks such asSupport tasks such as- Have the ferry tickets been reserved yet??Have the ferry tickets been reserved yet??

• Issues:Issues: How does a service monitor and share its current execution How does a service monitor and share its current execution

status?status? How are execution monitoring queries defined?How are execution monitoring queries defined? How are failures and aborts handled?How are failures and aborts handled?

Page 32: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Standards for Web Services on the Standards for Web Services on the Semantic WebSemantic Web

• RepresentationRepresentation RDFRDF

• Description LogicDescription Logic DAML+OIL & OWLDAML+OIL & OWL

• Service Ontologies / MethodologiesService Ontologies / Methodologies DAML-S / OWL-SDAML-S / OWL-S

- Service ProfilesService Profiles

- Process ModelsProcess Models

- Service GroundingService Grounding

Alternate ApproachesAlternate Approaches- IRS & Problem Solving MethodsIRS & Problem Solving Methods

- WSMOWSMO

Page 33: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Building on Existing Web Services Building on Existing Web Services StandardsStandards

XM

L

SOAP

HTTP

OWL-S(Grounding)

WSDL

OWL-SService

Matching

UDDI

Page 34: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Web Services Description Web Services Description LanguageLanguage• Extensible XML based description of web based Extensible XML based description of web based

services and how they are invokedservices and how they are invoked• Allow for several interfaces using different Allow for several interfaces using different

communication languagescommunication languages E.g. http, SOAP, etc.E.g. http, SOAP, etc.

• Supports simple transactions (operations)Supports simple transactions (operations) E.g. request-response, solicit-response, etc. E.g. request-response, solicit-response, etc.

• Used within OWL-S to describe interface and simple Used within OWL-S to describe interface and simple transaction protocol for atomic services.transaction protocol for atomic services.

Page 35: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

UDDI: Universal Discovery, Description UDDI: Universal Discovery, Description and Integrationand Integration

• Provides registries and simple lookup services for:Provides registries and simple lookup services for: White PagesWhite Pages Yellow PagesYellow Pages Green PagesGreen Pages

• UDDI T-models have been defined to support UDDI-UDDI T-models have been defined to support UDDI-based OWL-S Profile descriptionsbased OWL-S Profile descriptions

• CMU’s OWL-S Matchmaker extends UDDI server to CMU’s OWL-S Matchmaker extends UDDI server to provide semantic service-capability requests.provide semantic service-capability requests.

Page 36: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

OWL-S Upper OntologyOWL-S Upper Ontology

. input types

. output types

. preconditions

. postconditions

. communication protocol (RPC, HTTP, …). port number. marshalling/serialization

• process flow• composition hierarchy• process definitions

Page 37: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Constructing a serviceConstructing a service

1.1. Describe the process modelDescribe the process model Atomic (functional) or composite (conversational)Atomic (functional) or composite (conversational) Determining what to exposeDetermining what to expose

- Just interaction pointsJust interaction points

- Additional process information for reasoningAdditional process information for reasoning• Transporting Wine trans-continental

2.2. Describe the profile and advertiseDescribe the profile and advertise Expose input & outputs, preconditions and effectsExpose input & outputs, preconditions and effects Determine relevant metadataDetermine relevant metadata

3.3. Bind to a transport mechanism via the groundingBind to a transport mechanism via the grounding Provide (or augment existing) WSDL document and bind to itProvide (or augment existing) WSDL document and bind to it

4.4. Define the Service concept to link the models togetherDefine the Service concept to link the models together presents profilepresents profile describedBy processdescribedBy process supports groundingsupports grounding

Page 38: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Presenting Service ProfilesPresenting Service Profiles

• Service ProfileService Profile Presented by a service.Presented by a service. RepresentsRepresents

““what the service provides”what the service provides”

One can derive:One can derive:- Service AdvertisementsService Advertisements

- Service RequestsService Requests

Page 39: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Describing the profileDescribing the profile

• A profile represents a functional description of the A profile represents a functional description of the service capabilitiesservice capabilities Describe:Describe:

- Dataflow propertiesDataflow properties• Inputs required to invoke the service• Outputs that are generated by the service

- World State propertiesWorld State properties• Preconditions that should be satisfied• Effects that will be asserted if the service execution is successful

• Service metadata is presentedService metadata is presented Determine additional data that should be used when Determine additional data that should be used when

searching for, or selecting servicessearching for, or selecting services- Quality of Service ParametersQuality of Service Parameters

- References to supporting servicesReferences to supporting services

- etcetc

Page 40: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

OWL-S Service ProfileOWL-S Service Profile

Non Functional Non Functional PropertiesProperties

Functionality Functionality DescriptionDescription

Page 41: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

OWL-S Service ProfileOWL-S Service ProfileFunctionality DescriptionFunctionality Description

•Functional Specification of what Functional Specification of what the service provides in terms of the service provides in terms of parametersparameters, subclassed as:, subclassed as:

preconditionspreconditions inputsinputs outputsoutputs effectseffects

•Summarizes the Summarizes the abstract abstract capabilitycapability of a service. of a service.

Page 42: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

OWL-S Service ProfileOWL-S Service ProfileFunctionality DescriptionFunctionality Description

• PreconditionsPreconditions Set of conditions that should hold prior to service invocationSet of conditions that should hold prior to service invocation

• InputsInputs Set of necessary inputs that the requester should provide to Set of necessary inputs that the requester should provide to

invoke the serviceinvoke the service

• OutputsOutputs Results that the requester should expect after interaction Results that the requester should expect after interaction

with the service provider is completedwith the service provider is completed

• EffectsEffects Set of statements that should hold true if the service is Set of statements that should hold true if the service is

invoked successfully.invoked successfully. Often refer to real-world effectsOften refer to real-world effects

- Package being delivered, or Credit card being debitedPackage being delivered, or Credit card being debited

Page 43: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

OWL-S Service ProfileOWL-S Service ProfileFunctionality DescriptionFunctionality Description

• An An Input/Output/Precondition/EffectInput/Output/Precondition/Effect parameter has parameter has three properties:three properties: parameterNameparameterName: the name of the parameter: the name of the parameter restrictedTorestrictedTo : a resource corresponding to some : a resource corresponding to some

RDF/DAML property type within some ontology (i.e. the RDF/DAML property type within some ontology (i.e. the range of a parameter instance)range of a parameter instance)

refersTorefersTo : the corresponding parameter defined within the : the corresponding parameter defined within the process modelprocess model

Page 44: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

OWL-S Service ProfileOWL-S Service ProfileFunctionality DescriptionFunctionality Description

Page 45: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

OWL-S Service ProfileOWL-S Service ProfileNon Functional PropertiesNon Functional Properties

•Provides supporting information about the service.Provides supporting information about the service.

Page 46: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

OWL-S Service ProfileOWL-S Service ProfileNon Functional PropertiesNon Functional Properties

•These includeThese include serviceNameserviceName textDescriptiontextDescription has_processhas_process qualityRatingqualityRating serviceParameterserviceParameter serviceCategoryserviceCategory contactInformationcontactInformation

Page 47: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

OWL-S Service ProfileOWL-S Service ProfileNon Functional Properties - QualityRatingNon Functional Properties - QualityRating

Page 48: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

OWL-S Service ProfileOWL-S Service ProfileNon Functional Properties – ServiceCategoryNon Functional Properties – ServiceCategory

Page 49: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

OWL-S Service ProfileOWL-S Service ProfileNon Functional Properties – ServiceParameterNon Functional Properties – ServiceParameter

Page 50: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Profile HierarchyProfile Hierarchy

• Sub-classing the Profile model facilitates the creation Sub-classing the Profile model facilitates the creation and specialisation of service categoriesand specialisation of service categories

• Each subclass can:Each subclass can: Introduce new propertiesIntroduce new properties Place restrictions on existing propertiesPlace restrictions on existing properties

• Sub-classing can also be used to specialise requests Sub-classing can also be used to specialise requests for servicefor service

• An example Profile Hierarchy is provided, but others An example Profile Hierarchy is provided, but others could just as easily be definedcould just as easily be defined

Page 51: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Profile Hierarchy – sample ontologyProfile Hierarchy – sample ontology

Page 52: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Describing Service ModelsDescribing Service Models

• Service ProcessService Process Describes how a Describes how a

service works.service works.

• FacilitatesFacilitates (automated) Web (automated) Web

service invocationservice invocation compositioncomposition interoperationinteroperation monitoringmonitoring

Page 53: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

OWL-S Service Model OWL-S Service Model (Overview)(Overview)

Page 54: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Processes within the Process ModelProcesses within the Process Model

• Three types of ProcessThree types of Process AtomicAtomic

- invokable, bound to groundinginvokable, bound to grounding

SimpleSimple- Provides abstraction, encapsulation etc. Not invokable unless realized as an atomic Provides abstraction, encapsulation etc. Not invokable unless realized as an atomic

process, or expanded into a composite processprocess, or expanded into a composite process

Composite processComposite process- Models the workflow of several simple or atomic processesModels the workflow of several simple or atomic processes

• Each process type can express IOPEsEach process type can express IOPEs IOPEs bound to atomic processes, or inferred as computed IOPEsIOPEs bound to atomic processes, or inferred as computed IOPEs

Page 55: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Process Model Control ConstructsProcess Model Control Constructs

• Four types of control constructFour types of control construct Sequential, concurrent, conditional, and iterationSequential, concurrent, conditional, and iteration

• Test and conditional constructs used to control workflowTest and conditional constructs used to control workflow

Page 56: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

<rdfs:Class rdf:ID="BookFlight"> <rdfs:subClassOf rdf:resource="#CompositeProcess" /> <rdfs:subClassOf rdf:resource="http://www.daml.org/Process#Sequence" /> <daml:subClassOf> <daml:Restriction> <daml:onProperty rdf:resource="http://www.daml.org/Process#components" /> <daml:toClass> <daml:subClassOf> <daml:unionOf rdf:parseType="daml:collection"> <rdfs:Class rdfs:about="#GetFlightDetails" /> <rdfs:Class rdfs:about="#GetContactDetails" /> <rdfs:Class rdfs:about="#ReserveFlight" /> <rdfs:Class rdfs:about="#ConfirmReservation" /> </daml:unionOf> </daml:subClassOf> </daml:toClass> </daml:Restriction> </daml:subClassOf></rdfs:Class>

Composite Process Example (Sequence)Composite Process Example (Sequence)

Composite Process

Confirm Reservation

BookFlight

Get Contact Details

Sequence

Get Flight Details

Reserve Flight

SequenceSequence

Page 57: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Composition of ServicesComposition of Services

• Two definitions commonly used:Two definitions commonly used:

1.1. The workflow or business model of a service.The workflow or business model of a service.- Describes:Describes:

• conversation & interaction between provider and requester• abstract description of internal model assumed by provider

2.2. On the fly construction of plans that achieve meta goals On the fly construction of plans that achieve meta goals based on available services.based on available services.• Creating new plans / workflows from existing services…Creating new plans / workflows from existing services…

Page 58: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Composition of ServicesComposition of Services

• Services may themselves be composed by a number of other Services may themselves be composed by a number of other services.services. Can be broken down into a hierarchy of subtasksCan be broken down into a hierarchy of subtasks Subtasks may be part of a larger service offered by a service providerSubtasks may be part of a larger service offered by a service provider

- e.g. process of logging into an accounte.g. process of logging into an account

May be offered by a different service providerMay be offered by a different service provider- e.g. booking a hotel as part of a travel plane.g. booking a hotel as part of a travel plan

• Mind Swap’s Web Service ComposerMind Swap’s Web Service Composer Demonstrates how tasks can be composed from different DAML-S Demonstrates how tasks can be composed from different DAML-S

services.services. Leads the user (via a web interface) through a top-down view of the Leads the user (via a web interface) through a top-down view of the

compositioncomposition- http://www.mindswap.org/~evren/composer/http://www.mindswap.org/~evren/composer/

Page 59: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

MindSwap’s Web Service ComposerMindSwap’s Web Service Composer

Page 60: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Supporting a Service GroundingSupporting a Service Grounding

• Service GroundingService Grounding Provides a specification of service Provides a specification of service

access information.access information. Service Model + Grounding give Service Model + Grounding give

everything needed for using the everything needed for using the service service

Builds upon Builds upon WSDLWSDL to define to define message structure and physical message structure and physical binding layerbinding layer

• Specifies:Specifies: communication protocols, communication protocols,

transport mechanisms, agent transport mechanisms, agent communication languages, etc.communication languages, etc.

Page 61: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Service Grounding: “How to access it”Service Grounding: “How to access it”

• How to access the serviceHow to access the service• Implementation-specificImplementation-specific• Message formatting, transport mechanisms, Message formatting, transport mechanisms,

protocols, serializations of typesprotocols, serializations of types• Service Model + Grounding give everything needed Service Model + Grounding give everything needed

for using the servicefor using the service

Page 62: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

OWL-S / WSDL BindingOWL-S / WSDL Binding

DL-based Types

WSDL

OWL-S

Process Model

Atomic Process

Operation Message

Inputs / Outputs

Binding to SOAP, HTTP, etc.

Page 63: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

OWL-S / WSDL MappingOWL-S / WSDL Mapping

Page 64: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Mapping Messages and PartsMapping Messages and Parts

Service GroundingService Grounding

WSDL DefinitionWSDL Definition

Page 65: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Resources Available – Resources Available – Tools & ExamplesTools & Examples

Page 66: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

OWL-S MatchmakerOWL-S Matchmaker

• Filter-Based Semantic Matching Engine for OWL-S Filter-Based Semantic Matching Engine for OWL-S profiles based on heuristic filtersprofiles based on heuristic filters Logical inference on the OWL Ontologies guarantee Logical inference on the OWL Ontologies guarantee

correctness of matchingcorrectness of matching Information Retrieval techniques that help to speed up the Information Retrieval techniques that help to speed up the

matchingmatching

• Extends an existing UDDI serverExtends an existing UDDI server Enable capability descriptions and matching of DAML Enable capability descriptions and matching of DAML

enabled services registered with UDDIenabled services registered with UDDI

Page 67: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

OWL-S Matchmaker Processing ModuleOWL-S Matchmaker Processing Module

OntologyDB

OntologyReasoner

TF/IDFCalculator

Ontologyfilter

Commentfilter

Similarityfilter

Subsumptionfilter

Constraintfilter

OWL-S Matchmaking Engine

Ontology Server

WordsDB

ProfileDB

Page 68: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

WSDL2DAML-S ConverterWSDL2DAML-S Converter

• Provides partial conversion from WSDL Web service Provides partial conversion from WSDL Web service descriptions to OWL-S descriptionsdescriptions to OWL-S descriptions Generates complete specification of GroundingGenerates complete specification of Grounding Partial Specification of the Process ModelPartial Specification of the Process Model

- Including Atomic ProcessesIncluding Atomic Processes

Partial Model of the ProfilePartial Model of the Profile

• Resulting models require additional annotations to Resulting models require additional annotations to include semantic descriptionsinclude semantic descriptions

• Web Based Interface Web Based Interface

http://www.daml.ri.cmu.edu/wsdl2damls/

Page 69: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton
Page 70: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

MindSwap’s Web Service ComposerMindSwap’s Web Service Composer

• Demonstrates how tasks Demonstrates how tasks can be composed from can be composed from different OWL-S services.different OWL-S services.

• Leads the user (via a web Leads the user (via a web interface) through a top-interface) through a top-down dynamic view of the down dynamic view of the compositioncomposition

• Generates a composition Generates a composition that is then directly that is then directly executable through WSDL executable through WSDL groundings.groundings.

http://www.mindswap.org/~evren/composer/

Page 71: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

KSL DAML-S Editor KSL DAML-S Editor Define the control structure for composite servicesDefine the control structure for composite services

Page 72: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Task ComputingTask Computing

http://www.flacp.fujitsulabs.com/~rmasuoka/papers/Task-Computing-ISWC2003.html

• Task Computing Task Computing EnvironmentEnvironment Implemented using Implemented using

RDF, OWL, OWL-S RDF, OWL, OWL-S and pervasive and pervasive computing discovery computing discovery (UPnP).(UPnP).

Supports composition Supports composition of services within a of services within a pervasive environmentpervasive environment

Generates OWL-S Generates OWL-S process models which process models which are then enactedare then enacted

Page 73: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Remaining Issues and Remaining Issues and ChallengesChallenges

Additional PerspectivesAdditional Perspectives

Page 74: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Agents, Services and ProcessesAgents, Services and Processes

• Proposed definitions for what constitutes a service / process / Proposed definitions for what constitutes a service / process / agent ...agent ...

AgentAgent::- Intelligent Autonomous Entity capable of offering several services Intelligent Autonomous Entity capable of offering several services

(providing different functionalities)(providing different functionalities)

ServiceService::- Encapsulated functionality (or set of functionalities) that achieve a goal Encapsulated functionality (or set of functionalities) that achieve a goal

(in a variety of ways). Two types…(in a variety of ways). Two types…• Core Service - The main functionality offered

• Ancilliary Services - Additional functionalities that support the core service

ProcessProcess::- Declared sub-components within the serviceDeclared sub-components within the service

• Composite Process can be hierachically decomposed

• Simple Process provides abstraction of a service

• Atomic Process has a defined grounding to support invocation/data passing

NOTE - Not necessarily the agreed definition across the community!NOTE - Not necessarily the agreed definition across the community!

Page 75: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Current confusion between Services and Current confusion between Services and Processes - Processes - service or process composition?service or process composition?

• Service composition is currently achieved through process Service composition is currently achieved through process compositioncomposition

• No clear distinction between service-client dialog and No clear distinction between service-client dialog and coordination of multiple servicescoordination of multiple services

Page 76: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Ancillary ServicesAncillary Services

• Provide loosely-bound support for a core serviceProvide loosely-bound support for a core service Additional services, e.g. reservation, commitmentAdditional services, e.g. reservation, commitment

- This service should be available at 10am Thursday, when the This service should be available at 10am Thursday, when the prior workflow completes. Can I reserve this service?prior workflow completes. Can I reserve this service?

Higher order services, based on parametric callHigher order services, based on parametric call- If I invoke this service with these parameters, when will it If I invoke this service with these parameters, when will it

complete, and what will it cost?complete, and what will it cost?

• Such ancilliary services necessary for Grid servicesSuch ancilliary services necessary for Grid services• Also exist within many agent frameworksAlso exist within many agent frameworks

Supporting FIPA behaviors, such as responding to queriesSupporting FIPA behaviors, such as responding to queries Supporting Commitment or Team-based behaviorsSupporting Commitment or Team-based behaviors

Page 77: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Example - Stock PurchaserExample - Stock Purchaser

• Stock purchasing service can be used to buy stock. It charges Stock purchasing service can be used to buy stock. It charges a commission wich is a function on the volume of stock bought. a commission wich is a function on the volume of stock bought. Interaction is through a dialog, where the price is provided and Interaction is through a dialog, where the price is provided and creditcard details a requested.creditcard details a requested. Service provides:Service provides:

- Core Service: Purchase_StockCore Service: Purchase_Stock- Anciliary Service: Execution_Cost (based on calling parameters)Anciliary Service: Execution_Cost (based on calling parameters)

Execution_Cost(atomic service)

Ticker_symbol

QuantityCost

Check_Price(atomic service)

Buy_Stock(atomic service)

Ticker_symbol

QuantityStock-Price

Reciept-RefStock-Price

CreditCard#

Sequence (control flow)Purchase_Stock(composite service)

Stock_Buying_Service

Page 78: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Oblex view of ServicesOblex view of Services

• Describing bundles of servicesDescribing bundles of services Akkermans et alAkkermans et al

• Supports relationships between servicesSupports relationships between services Core serviceCore service - - main functionalitymain functionality Supporting ServiceSupporting Service - - mandatory additional functionalitymandatory additional functionality Extending ServiceExtending Service - - optional additional functionalityoptional additional functionality

• Service bundling common in the business worldService bundling common in the business world E.g. Phone or Electricity operatorsE.g. Phone or Electricity operators

• Formal concepts applied to agents have received Formal concepts applied to agents have received little attentionlittle attention May facilitate planning or service composition?May facilitate planning or service composition?

Page 79: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Service DialogService Dialog

• Individual processes indicate dialog points when Individual processes indicate dialog points when interacting with the core serviceinteracting with the core service

• Issue: Client is performing some task based on Issue: Client is performing some task based on results of results of Check_PriceCheck_Price - this should be defined - this should be defined Such actions are defined within Agent-based dialog Such actions are defined within Agent-based dialog

protocols protocols [McBurney & Parsons, 2003][McBurney & Parsons, 2003]

• Need to use the Simple ProcessNeed to use the Simple Process

Client

Check_Price(atomic service)

Buy_Stock(atomic service)

Page 80: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Example - Modified Stock PurchaserExample - Modified Stock Purchaser

• Add behavior expected from the client as a simple processAdd behavior expected from the client as a simple process Should be expanded by the client into an atomic service the client Should be expanded by the client into an atomic service the client

provides, that the client uses to decide whether to buy at the given provides, that the client uses to decide whether to buy at the given price.price.

Execution_Cost(atomic service)

Ticker_symbol

QuantityCost

Check_Price(atomic service)

Commit_to_Buy(simple service)

Ticker_symbol

QuantityStock-Price

Stock-Price

Sequence (control flow)Purchase_Stock(composite service)

Stock_Buying_Service

Buy_Stock(atomic service)

Reciept-RefStock-Price

CreditCard#

Sequence (control flow)

Stock-Price

CreditCard#

Page 81: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Planning for dialogsPlanning for dialogs

• Planning is necessary to determine execution paths Planning is necessary to determine execution paths through service dialoguethrough service dialogue i.e. Model Checkingi.e. Model Checking Given a set of beliefs, can the agent:Given a set of beliefs, can the agent:

- 1) Understand the different stages of the dialog1) Understand the different stages of the dialog

- 2) Provide necessary resources to satisfy the dialog2) Provide necessary resources to satisfy the dialog

- 3) Trust the service given the resource requirements and client 3) Trust the service given the resource requirements and client expectationsexpectations

• Also necessary to:Also necessary to: Determine if client can perform the dialog task (based on its Determine if client can perform the dialog task (based on its

own capabilities)own capabilities) Determine if the task should be delegated to a third partyDetermine if the task should be delegated to a third party

Page 82: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Planning also used for Service Planning also used for Service compositioncomposition

• Several services can be combined to achieve higher Several services can be combined to achieve higher level goalslevel goals e.g. many book stores offer book-buying services. Another e.g. many book stores offer book-buying services. Another

may provide a currency conversion service.may provide a currency conversion service. To achieve Jim’s goal, many book-buying services may To achieve Jim’s goal, many book-buying services may

need to be combined, including those out of the countryneed to be combined, including those out of the country- which need the prices converting to ??? into dollarswhich need the prices converting to ??? into dollars

• This is the commonly used definition of “Service This is the commonly used definition of “Service Composition”Composition” May result in several services being choreographed May result in several services being choreographed

according to the composed model / workflowaccording to the composed model / workflow Different compositions require different control structures…Different compositions require different control structures…

Page 83: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Service and Process InteractionService and Process Interaction

• Conversational Service involves interaction with client throughout Conversational Service involves interaction with client throughout the process model (Hub-n-Spoke model)the process model (Hub-n-Spoke model)

This is the approach currently assumed by OWL-SThis is the approach currently assumed by OWL-S

• Pipelining service composed of several other servicesPipelining service composed of several other services Client provides data at start, and retrieves result at endClient provides data at start, and retrieves result at end

This is the approach often required by GRID ServicesThis is the approach often required by GRID Services

P1

Client

P2 P3

P1

Client

P2 P3

Page 84: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Partially Instantiated ServicesPartially Instantiated Services

• Workflows may be generated by hand, as well as Workflows may be generated by hand, as well as through automated compositionthrough automated composition Some service instances may be mandatory, and shouldn’t Some service instances may be mandatory, and shouldn’t

be replaced through discovery.be replaced through discovery.- E.g. PE.g. P22 below below

Other services can be selected for the plan at Other services can be selected for the plan at plan/execution timeplan/execution time- E.g. PE.g. P11 and P and P33 below below

AnyP1

Client

P2 athttp://…

AnyP3

Page 85: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Wrap up…Wrap up…Agents, Web Services and OWL-SAgents, Web Services and OWL-S

• There exists a considerable body of work on AgentsThere exists a considerable body of work on Agents encompasses notions ofencompasses notions of

- communicationcommunication- negotiation / argumentation / auctionsnegotiation / argumentation / auctions- commitment, coalitions, communitiescommitment, coalitions, communities- evolving behaviour and adaptationevolving behaviour and adaptation- autonomous behaviourautonomous behaviour

Different MAS have different ways of defining theseDifferent MAS have different ways of defining these- both in terms of syntax, and their semanticsboth in terms of syntax, and their semantics

• Web Services provideWeb Services provide a declarative specification ofa declarative specification of

- messagesmessages- workflows, orchestrations, and choreographiesworkflows, orchestrations, and choreographies- resources, security requirements, contractsresources, security requirements, contracts

Standardized syntax (XML) but lacking:Standardized syntax (XML) but lacking:- higher level autonomous reasoning, adaptation and coordinationhigher level autonomous reasoning, adaptation and coordination- formal semantics to support interoperation between servicesformal semantics to support interoperation between services

Page 86: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Wrap up…Wrap up…Agents, Web Services and OWL-SAgents, Web Services and OWL-S

• OWL-S providesOWL-S provides Set of ontologies for defining services, that support:Set of ontologies for defining services, that support:

- DiscoveryDiscovery

- Workflow analysis, compositionWorkflow analysis, composition

- Service invocation / interactionService invocation / interaction

Initial design grounded in AI techniquesInitial design grounded in AI techniques- but focus shifted towards augmenting Web Servicesbut focus shifted towards augmenting Web Services

• Question: Are requirements of Agents the same as WS?Question: Are requirements of Agents the same as WS? From a simple, functional perspective… perhaps…From a simple, functional perspective… perhaps… but complex multi-agent behaviors requires a richer, dynamic but complex multi-agent behaviors requires a richer, dynamic

representationrepresentation- Many Agent theories have no analogies within the WS community… Many Agent theories have no analogies within the WS community…

yet!yet!

Page 87: Intelligence Agents Multimedia OWL-S An alternative perspective Terry R. Payne Intelligence, Agents, Multimedia Group University of Southampton

Intelligence AgentsIntelligence AgentsMultimediaMultimedia

Questions?Questions?