katia sycara intelligent software agents and web technologies lab carnegie mellon university...

61
Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University [email protected] http://www.cs.cmu.edu/~softagents/ Autonomous Semantic Autonomous Semantic Web Services Web Services

Upload: jemima-lambert

Post on 23-Dec-2015

214 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

Katia SycaraIntelligent Software Agents and Web Technologies LabCarnegie Mellon [email protected]://www.cs.cmu.edu/~softagents/

Autonomous Semantic Web Autonomous Semantic Web ServicesServices

Page 2: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

22 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Talk OverviewTalk Overview

The VisionRequirements and ChallengesWeb ServicesSemantic WebMulti Agent Systems (MAS)Semantic Web Services

OWL-S

Future Directions

Page 3: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

33 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

From the Internet to the Semantic Web From the Internet to the Semantic Web

Old World :

“The eye-ball Web”

The architecture of the Web is geared towards delivering information visually (Internet filled with human readable information)

New World:

“The Semantic Web”

The content of the Web becomes computer intelligible (Internet filled with machine understandable information)

Source: IBM

Page 4: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

44 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

From the Internet to Web ServicesFrom the Internet to Web Services

Old World :

“The eye-ball Web”

The architecture of the Web is geared towards delivering information visually (Internet filled with human readable information)

New World:

“The transactional Web”

The architecture of the Web geared towards exchanging information between applications (Internet filled with executables)

Source: IBM

Page 5: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

55 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

From the Internet to Semantic Web ServicesFrom the Internet to Semantic Web Services

Old World :

“The eye-ball Web”

The architecture of the Web is geared towards delivering information visually (Internet filled with human readable information)

New World:

“The Coordination Web”

The architecture of the Web geared towards applications that intelligibly coordinate information exchanges (Internet filled with machine understandable executables)

Source: IBM

Page 6: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

66 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

From the Internet to Autonomous Semantic Web ServicesFrom the Internet to Autonomous Semantic Web Services

Old World :

“The eye-ball Web”

The architecture of the Web is geared towards delivering information visually (Internet filled with human readable information)

New World:

“The Agent Web”

The architecture of the Web geared towards goal directed applications that intelligibly and adaptively coordinate information and action (Internet filled with context-aware and self organizing agents)

Source: IBM

Page 7: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

77 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

The Integration ChallengeThe Integration Challenge

Integrate multiple independent and heterogeneousData repositoriesProcessesApplications

EnsureSemantic equivalence of equivalent conceptsPerformanceCommunication of “semantic” agreementsDynamism: real time access works accuratelyFlexibility: systems enter and leave integration

Page 8: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

88 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

The Integration Past and Future?The Integration Past and Future?

Numerous solutions to date (since the ’70s):Tool drivenData drivenProcess drivenModel drivenWeb services

Page 9: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

99 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

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

Web Services heralded as:“… self-contained, self-describing, modular applications that can be

published, located, and invoked across the Web…”Which will allow…

…on the fly composition of new functionality through the use of loosely coupled reusable software components…decomposition and distribution of large-scale processing tasks into component tasks executed simultaneously across many devices

“Web services are expected to revolutionize our life in much the same way as the Internet has during the past decade or so.” (Gartner)

Page 10: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

1010 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

So what is new about Web Services?So what is new about Web Services?

Component-Based Model Web Services Model

Tightly coupled software applications (high dependencies between systems)

Loosely coupled software applications (low dependencies between applications)

Mainly designed for processes within the enterprise

Mainly designed for processes across enterprises

Uses different protocols and technologies (e.g., Microsoft DCOM, CORBA)

Uses standard protocols and technologies (e.g., XML, SOAP, WSDL, HTTP)

Web Services do for programs what the Web did for Documents

Page 11: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

1111 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Requirements and ChallengesRequirements and Challenges

Information and action integration across the Web (currently the user is the “glue”)System integration/interoperability Web-wide (within and across organizations) Semantic InteroperabilityConsistency of behavior of long running transactions (both for e-commerce and e-science) in the face of partial, distributed failuresDynamic and goal-directed discovery, interaction and composition of applications across the Web

Tension between the “anarchy” of the Web and the requirements for reliable, consistent, trusted transactions of e-commerce and e-science

Page 12: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

1212 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Current State: Web Services StandardsCurrent State: Web Services Standards

SOAP: XML based web services communication protocol

LimitationsUnbounded message formatHas no communicative speech acts (cannot determine intention of actors or type of the message)

WSDL: Structured mechanism to describe a WS interface

Abstract operations that a Web Service can performFormat of messages it can processProtocols it can supportPhysical bindings to URIs and protocols

Limitations

No semantics for message sequencing and correlation

No semantics for message content

Page 13: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

1313 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Current State: Web Services Standards (cnt.)Current State: Web Services Standards (cnt.)

BPEL: Description of how Web Services are composedFlow Model describes the structure of the business process in terms of activities of process steps and data and control links Global Model

• Describes interaction between provider and requester• Mappings between internal operations and WSDL port types

LimitationsNo IOPEsAllows execution of a manually constructed composition

UDDI: Directory Service for Web Services

Limitations: keyword searches, limited capability search

Page 14: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

1414 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Tackling Semantic Interoperability…Tackling Semantic Interoperability…

Lack of Semantic Interoperability is a major hurdle forDiscovery

• Different terms used for advertisements and requests

Invocation• Different specs for messages and WS interface

Understanding• Interpreting the results returned by the Web service

Composing Services• Reconciling private goals with goals of the WS

Negotiating contracts & communications• Different terminology and protocols used

Page 15: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

1515 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Is this a real problem?Is this a real problem?

World Wide Annual Integration plus Data Quality Costs: $1 Trillion / year

“The problem is not in the plumbing. It’s in the semantics”

(quotation from Michael Brodie’s invited talk at ISWC 2003)

Note: some standards committees, e.g. WSDL and UDDI start realizing this truth and planning to incorporate RDF and OWL in these standards

Page 16: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

1616 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Three Significant Technological VisionsThree Significant Technological Visions

Semantic WebMulti Agent Systems (MAS)Semantic Web Services

Page 17: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

1717 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Autonomous Semantic Web Services Stack DiagramAutonomous Semantic Web Services Stack Diagram

UnicodeURI

XML Namespaces

SOAP

WSDL

Messaging

Directories, e.g. UDDI

Process Specifications

Choreography eg BPEL

Autonomous Semantic Web Services Eg Contracts; Info Integration; Business Process Automation; Tasking

RD

F M

odel & S

yntax

RD

F S

chem

a

DA

ML

+O

IL

Ru

les eg Ru

leML

Logic

Fram

ework

Proof

Encryption, Signature

SEMANTICS

GAP NOW

Tru

st

Web

Services S

tack

Semantic Web Stack

Copyright Semantic Web Services Initiative

Page 18: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

1818 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic WebSemantic Web

DefinitionDefinitionGoal of Web Semantics: Development of common representation format, shared ontologies, reasoning mechanisms, and query engines to support improved utilization of Web knowledgeSemantic Web technologies and tools

RdfOWL

“The Semantic Web is an extension of the current Web in which information is given a well-defined meaning, better enabling 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 used for more effective discovery, automation, integration and reuse across various applications. The Web can reach its full potential if it becomes a place where data can be processed by automated tools as well as people”

From the W3C Semantic Web Activity statement

Semantic Web: semantic metadata and ontologies for web content to enable information access, integration, interoperation and consistency.

Page 19: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

1919 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic WebSemantic Web OWLOWL

OWL is a W3C standardOWL is a Description Logic-based Language: provides the basic constructs to describe ontologies

Definition of conceptsRelations between conceptsSpecial relation: subclass for generalization Effectively computable

• Good optimization algorithms support inference

OWL specificationsW3C page on OWL

• http://www.w3c.org/2001/sw/WebOnt/OWL Guide and language reference

• http://www.w3.org/TR/owl-guide/• http://www.w3.org/TR/owl-ref/

TutorialsCostello and Jacobs’ OWL tutorial: http://www.xfront.com/owl

Page 20: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

2020 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

RCal Calendar AgentRCal Calendar Agent

Retsina Semantic Web Calendar Agent supports:Browsing of agendas and schedules marked up in OWL & RDFInvocation of related tasks, such as scheduling meetings and emailIntegration of selected meetings and events into MS Outlook

Can parse markup using several ontologies, including

Hybrid ICal Calendar OntologyDublin Core OntologyFriend-of-a-Friend Ontology

Schedule markup using other ontologies can be accessed via translation agents

DMA2ICal Agent converts OWL Meeting Agenda markup into ICal Markup. http://www.daml.ri.cmu.edu/Cal

Page 21: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

2121 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Importing Schedules into MS OutlookImporting Schedules into MS Outlook

Page 22: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

2222 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Multi Agent SystemsMulti Agent Systems

Agent CharacteristicsAgent Characteristics

A software agent is a computational entity with the following key characteristics:

Situatedness: agent receives sensory inputs from its environment and outputs actions (physical environments, Internet)

Autonomy: agent is goal-directed and has control over its internal state (can reason and act without direct intervention of others)

Interactivity/Sociability: agents interact in peer to peer fashion with humans and/or other agents in pursuit of their goals (individual or collective)

Adaptivity: agents respond reactively or proactively to changes in their environment

Page 23: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

2323 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Relation Agents/Web ServicesRelation Agents/Web Services

AgentDecision Making

Goal DirectedSituation Awareness

Coordination/Teaming

Web ServiceNetwork Interface Mgm

Binding of end pointsData Serialization

Remote Procedure Call

Data structures to conceptsInteraction ManagementService Composition

Semantic Web Service

Network

Page 24: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

2424 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Multi Agent SystemsMulti Agent Systems

Autonomous behavior is needed for Open Autonomous behavior is needed for Open Environments & Complex InteractionsEnvironments & Complex Interactions

Open EnvironmentsNo predefined structureAgents leave and join the society dynamicallyCommunication is not ensured all the timeInformation sources may appear and disappear

Complex InteractionsDynamic task decomposition & allocationProvider selectionPlanning for composition of MAS reasoning

Page 25: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

2525 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Multi Agent SystemsMulti Agent Systems

Generic Tasks in Open EnvironmentsGeneric Tasks in Open Environments

Agents must be able to: discover each other. We distinguish the notion of agent identity from the notion of agent functionality.

Identity is found through Agent Name Services (ANS)Functionality/capability is found through Middle Agents

interact/transact with each other compose results of their reasoningmonitor progress of delegated tasks

Page 26: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

2626 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Multi Agent SystemsMulti Agent Systems

RETSINA Multi-Agent OrganizationRETSINA Multi-Agent Organization

User 1 User 2 User u

InfoSource 1

InfoSource 1

Interface Agent 1Interface Agent 1 Interface Agent 2Interface Agent 2 Interface Agent iInterface Agent i

Agent/ServiceAgent/Service Agent/Service2Agent/Service2 Agent/Service tAgent/Service t

MiddleAgent 2MiddleAgent 2

Agent/Service nAgent/Service n

InfoSource 2

InfoSource 2

InfoSource m

InfoSource m

Goal and TaskSpecifications Results

SolutionsTasks

Info & ServiceRequests

Information and Task ExecutionConflict Resolution Replies

Advertisements

Agent/Service1Agent/Service1

Queries

Answers

Distributed adaptive collections of agents (autonomous services) that coordinate to do tasks on the user’s behalf

RETSINA download atwww.cs.cmu.edu/~softagents

Page 27: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

2727 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Multi Agent SystemsMulti Agent Systems

Agent Discovery and MediationAgent Discovery and Mediation

Agents that provide services advertise their expertise/capabilities to middle agentsRequester agents ask middle agents for agents with particular capabilitiesMiddle agents match requests to advertisements and return resultsCommunication protocols include formal semantics and ontologies for interoperationThe discovery scheme enables system robustness through functional substitutability of agentsOur research at CMU has identified 28 types of middle agents with different functionalities, protocols and performance tradeoffs

Hao-Chi Wong and Katia Sycara “A taxonomy of middle agents for the Internet”, In Proceedings of the Fourth International Conference on Multi-Agent Systems (ICMAS'2000)

Page 28: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

2828 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Multi Agent SystemsMulti Agent Systems MatchmakerMatchmaker

MatchmakerRequester

Provider 1 Provider n

Request for service

Contact information of providers that match the

request Advertisementof capabilities

Delegation of service

Results of service request

This is blueprint for the “SOA Triangle”

Page 29: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

2929 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Multi Agent SystemsMulti Agent Systems FacilitatorFacilitator

FacilitatorRequester

Provider 1 Provider n

Delegation of service+ preferences

Advertisementof capabilities

Delegationof service

Results of service

Results of service

Page 30: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

3030 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Multi Agent Systems/Semantic Web ServicesMulti Agent Systems/Semantic Web Services

Problem of DiscoveryProblem of Discovery

Requester and provider have different viewsProvider sells Mutual FundsRequester wants Mutual Funds of European Companies

There is no exact matchMatchmaker or Facilitator need to exploit the semantics of advertisements and requests to recognize partial matches

Page 31: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

3131 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services

OWL-S OntologyOWL-S Ontology

OWL-S is an OWL ontology to describe Web servicesOWL-S has been accepted as a Note by W3C (12/1/2004)OWL-S leverages on OWL to

Support capability based discovery of Web servicesSupport automatic composition of Web servicesSupport automatic invocation of Web servicesSupport monitoring of the execution of Web services

Complete do not competeOWL-S does not aim to replace the Web services standardsrather OWL-S attempts to provide a semantic layer

• OWL-S relies on WSDL for Web service invocation (see Grounding)• OWL-s Expands UDDI for Web service discovery (OWL-S/UDDI mapping)

http://www.daml.org/services/owl-s/

Page 32: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

3232 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services

Acknowledgements to theAcknowledgements to the OWL-S Web Services CoalitionOWL-S Web Services Coalition

BBN: Mark Burstein

CMU: Katia Sycara, Massimo Paolucci, Naveen Srinivasan

De Montfort University: Monika Solanki

ISI: Jerry Hobbs

U. Of Maryland: Bijan Parsia

Nokia: Ora Lassila

Southampton: Terry Payne

Stanford KSL: Deborah McGuiness

SRI: David Martin

U. Of Toronto: Sheila McIlraith

Vrije Universiteit: Marta Sabou

Yale: Drew McDermott

Page 33: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

3333 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services

Relation to Web Services TechnologyRelation to Web Services Technology

OWL-SWeb Services Infrastructure

DiscoveryWhat it does

Profile UDDI API

ChoreographyHow is done

Process Model BPEL4WS

InvocationHow to invoke

Grounding+ WSDL/SOAP

WSDL/SOAP

Page 34: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

3434 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services

OWL-S Upper OntologyOWL-S Upper Ontology

• Mapping to WSDL• communication protocol (RPC, HTTP, …)• marshalling/serialization• transformation to and from XSD to OWL

• Control flow of the service•Black/Grey/Glass Box view

• Protocol Specification• Abstract Messages

•WS Capability specification to assistDiscovery•Used for advertisement of service Capabilities•Used for requesting WS with desiredcapabilities

Page 35: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

3535 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services

Capability DescriptionCapability DescriptionPreconditions

Set of conditions that should hold prior to service invocationInputs

Set of necessary inputs that the requester should provide to invoke the service

OutputsResults that the requester should expect after interaction with the service provider is completed

EffectsSet of statements that should hold true if the service is invoked successfully.

Service typeWhat kind of service is provided (eg selling vs distribution)

ProductProduct associated with the service (eg travel vs books vs auto parts)

Service Parameters (e.g. security, QoS etc)

Page 36: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

3636 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services

CMU’s Matching AlgorithmCMU’s Matching Algorithm

Matching of I/O of the request with I/O of the advertisementFour degrees of match

ExactSubsumePlug-InFail

Efficient implementation given correct indexing of advertisements

Linear complexity with some restrictions on the query

Current work aims at generalizing matching process to include preconditions/effects service and product types and service parameters

Massimo Paolucci, Takahiro Kawamura, Terry R. Payne, Katia Sycara; "Semantic Matching of Web Services Capabilities." In Proceedings of the 1st International Semantic Web Conference (ISWC2002), 2002

Thing

Vehicle

Car Truck

SedanCoupe

subs

ume

plug

-inex

act

Mid-SizeLuxury

Price

Page 37: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

3737 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

CMU UDDI is publicly available at www.daml.ri.cmu.edu/matchmakeror on SemWebCentralhttp://projects.semwebcentral.org/projects/mm-client/A variant of the CMU UDDI is in use at the NTT UDDI Business Registry (The main public UDDI in Japan) (see Kawamura et al 2003, 2004)

Semantic Web ServicesSemantic Web Services

Integration of OWL-S Matchmaker and UDDIIntegration of OWL-S Matchmaker and UDDI

PublishPublish Port Port InquiryInquiry Port Port

Green Pages

Yellow Pages

White Pages

UDDIUDDIBusiness RegistryBusiness Registry

CapabilityCapability Port Port

OWL-SOWL-SMatching Matching

EngineEngine

• CMU OWL-S Matching engine has been integrated within UDDI server

• CMU UDDI server provides• Normal UDDI Publish/Inquiry ports

• Complete interoperability with any UDDI Client

• Capability Port provides OWL-S based capability requests

(see Srinivasan et al 2004)

• OWL-S Profile has been mapped to UDDI data structure

• OWL-S Web services can be advertised in UDDI as any other Web service

(see Paolucci et al 2002)

Page 38: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

3838 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services

Process ModelProcess Model

Process ModelDescribes how a service works: internal processes of the serviceSpecifies service interaction protocolSpecifies abstract messages: ontological type of information transmitted

FacilitatesWeb service invocationComposition of Web servicesMonitoring of interaction

Page 39: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

3939 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services

Definition of ProcessDefinition of Process

A Process represents a transformation (function). It is characterized by four parameters

Inputs: the inputs that the process requires Preconditions: the conditions that are required for the process to run correctlyResults: a process may have different outcomes depending on some condition

• Condition: under what condition the result occurs• Outputs: the data that results from the execution of the process• Effects: real world changes resulting from the execution of the process

Page 40: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

4040 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services

Composite ProcessesComposite Processes

Composite Processes specify how processes work together to compute a complex function

Composite processes define1. Control Flow

Specify the temporal relations between the executions of the different sub-processes

2. Data FlowSpecify how the data produced by one process is transferred to another process

Page 41: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

4141 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services

Example of Composite ProcessExample of Composite Process

SequenceBookFlight

DepartArrive

FlightsAirline

Airline Flight

Perform

Get FlightsFlight

Perform

Select Flight

Flights

Control Flow LinksSpecify order of execution

Data-Flow LinksSpecify transfer of data

Perform statementsSpecify the execution of a process

Page 42: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

4242 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services Control FlowControl Flow

Processes can be chained to form a workflowOWL-S supports the following control flow constructs

Sequence/Unordered: to represent a list of processes that are executed in sequence or random orderConditionals: if-then-else statementsLoops: while and repeat-until statements Multithreading and synchronization: split process in multiple threads, and rendezvous (joint) pointsNon-deterministic choices: (arbitrarily) select on process of a set

Page 43: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

4343 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services Data FlowData Flow

Dataflow allows information that is transferred from process to process.

OutputInput: The information produced by one process is transferred to another in the

same control construct

Input Input:The information received by a composite process is transferred to the

sub-processes

OutputOutput:The information produced by a subprocess is transferred to a super-

process

Page 44: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

4444 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services Service GroundingService Grounding

Service GroundingProvides a specification of service access information.Service Model + Grounding give everything needed for using the service Builds upon WSDL to define message structure and physical binding layer

Page 45: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

4545 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services Mapping OWL-S /WSDL 1.1Mapping OWL-S /WSDL 1.1

Operations correspond to Atomic Processes

Input/Output messages correspond to Inputs/Outputs of processes

Page 46: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

4646 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services Example of GroundingExample of Grounding

SequenceBookFlight

DepartArrive

FlightsAirline

Airline Flight

Perform

Get FlightsFlight

Perform

Select Flight

Flights

Get Flights OpDepartArrive

Flights

WSDL

AirlineFlight

Select Flight op

Flights

Page 47: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

4747 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services Result of using the GroundingResult of using the Grounding

Invocation mechanism for OWL-SInvocation based on WSDLDifferent types of invocation supported by WSDL can be used with OWL-S

Clear separation between service description and invocation/implementation

Service description is needed to reason about the service• Decide how to use it• Decide how what information to send and what to expect

Service invocation may be based on SOAP and XSD typesThe crucial point is that the information that travels on the wire is the same information used in the ontologies

Allows any web service to be represented using OWL-SFor example: Amazon.com

Page 48: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

4848 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services Mapping OWL-S to WSDLMapping OWL-S to WSDL

OWL-S invocation is based on the GroundingMap atomic processes into WSDL operationsUse XSLT to map between XML Schema data structures and Ontological InformationInvocation procedure totally separated from semantic description of Web service

• Invocation may be modified without changing semantic description

Any Web service can be described in OWL-S without modifying the WSDL description of the service

• Amazon’s Web service has been described in OWL-S maintaining Amazon’s XML-Schema data types

Page 49: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

4949 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services OWL-S Virtual MachineOWL-S Virtual Machine

OWL-S VM a generic processor for the OWL-S Process ModelUses OWL-S to represent service descriptions It can interact with any OWL-S Web serviceBased on the Process Model formal semantics (Ankolekar et al 2002)Implements grounding mapping to WSDLUses OWL to represent information to exchange between Web servicesActively adopts logic inference to reason about OWL-S and OWL ontologiesExploits Web services technology such as Axis and WSIF for actual invocation and message exchange

Anupriya Ankolekar, Frank Huch, Katia Sycara. "Concurrent Execution Semantics for DAML-S with Subtypes." In The First International Semantic Web Conference (ISWC), 2002.

Massimo Paolucci, Anupriya Ankolekar, Naveen Srinivasan and Katia Sycara, "The DAML-S Virtual Machine," In Proceedings of the Second International Semantic Web Conference (ISWC), 2003,

Page 50: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

5050 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services Architecture of CMU OWL-S VMArchitecture of CMU OWL-S VM

SOAP

Provider Web Service Description

WSDL

OWL-SProcessModel

OWL-SGround

ing

OWL Inference Engine

Jess

OWL Jess KB

Process Model Execution Rules

Grounding Execution Rules

OWL-S Processor

Axis’s Web Service Invocation Framework

OWLSWebServiceInvoker

Webservice Invocation

Web Services

Jena

APPLICATION

Requester

OWL-S VM

Page 51: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

5151 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services WSDL2OWL-S ConverterWSDL2OWL-S Converter

Provides partial conversion from WSDL Web service descriptions to OWL-S descriptions

Generates complete specification of GroundingPartial Specification of the Process Model

• Including Atomic Processes

Partial Model of the Profile

Resulting models require additional annotations to include semantic descriptionsCombined with Java2WSDL to provide Java2OWL-SWeb Based Interface

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

Download: http://projects.semwebcentral.org/projects/wsdl2owl-s/

Page 52: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

5252 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services Process Model of AWSProcess Model of AWS

SearchSearchReserveReserve

ShopShop

•WSDL2OWL-S used to generate OWL-S for Amazon’s Web Service•OWL-S VM used to interact with Amazon Web service

Page 53: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

5353 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services PerformancePerformance

OWL-S VM client on OWL-S VM client on browsing+reserving taskbrowsing+reserving taskAnalyzed data by computing:Analyzed data by computing:

Time required by OWL-S VM to Time required by OWL-S VM to execute Process Modelexecute Process ModelTime required for data Time required for data transformation to fit Amazon transformation to fit Amazon requirementsrequirementsTime required to invoke an Time required to invoke an operation on Amazonoperation on Amazon

98 runs total over 4 days in varying load 98 runs total over 4 days in varying load conditionsconditionsResults in millisecondsResults in milliseconds

VM Data Trsfm Invocation

Averagepercentage

83 3%

156 5%

279792%

Strd dev 107 146 1314

OWL-S VMData

Transformation

AmazonInvocation

Page 54: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

5454 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Autonomous Semantic Web ServicesAutonomous Semantic Web Services Problem of CompositionProblem of Composition

No single Web service may achieve all goals of an agent

Composition is the process of chaining results from different Web services automatically

Planning problemHow do the Web services fit together?

Interoperation problemHow does the information returned fit together?

Page 55: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

5555 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Autonomous Semantic Web ServicesAutonomous Semantic Web Services CMU Composition ArchitectureCMU Composition Architecture

Exploits Retsina Architecture for WS compositionOWL-S/UDDI Matchmaker for discoveryRetsina planner to control the agent

• Use interleaving of planning and execution to allow communication while planning

OWL ReasonerOWL-S Virtual Machine to communicate and invoke Web Services

Katia Sycara, Massimo Paolucci, Anupriya Ankolekar and Naveen Srinivasan, "Automated Discovery, Interaction and Composition of Semantic Web services," Journal of Web Semantics, Volume 1, Issue 1, September 2003, pp. 27-46

Page 56: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

5656 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Autonomous Semantic Web ServicesAutonomous Semantic Web Services Example of CompositionExample of Composition

Used in a number of applications: travel domain, supply chain management

Supports composition and execution of Web Services

Connection with autonomous agent technology

in collaboration with

Page 57: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

5757 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services Security and PoliciesSecurity and Policies

No standard OWL-S representation for Security and Policies has been published yet

But experimentation already under goingAdoption of a solution will depend on WS security standards

Security Experiments with • representing security capability/requirements for discovery• Representing security information in Process Model.

Policies: Experiments combining OWL-S and ReiRei statements included in Process Model to constrain the use of a Web service (see Kagal 2004)

Recent work on Formal Verification of OWL-S Process Models provides a way to certify adherence to a policy

Grit Denker, Lalana Kagal, Tim Finin, Massimo Paolucci, Naveen Srinivasan and Katia Sycara, "Security For DAML Web Services: Annotation and Matchmaking" In Proceedings of the Second International Semantic Web Conference (ISWC 2003), Sandial Island, Fl, USA, October 2003, pp 335-350.

Anupriya Ankolekar, Massimo Paolucci, and Katia SycaraSpinning the OWL-S Process Model -- Toward the Verification of the OWL-S Process Models In Proceedings of Workshop on Semantic Web Services:Preparing to Meet the World of Business Applications (ISWC 2004)

Page 58: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

5858 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Semantic Web ServicesSemantic Web Services Production cycle of OWL-S WSProduction cycle of OWL-S WS

1. Developer generates Java code

2. Semi-automated transformation of Java into partial OWL-S description

– WSDL is generate as by-product

3. User friendly OWL-S editor is used to complete the OWL-S description

4. UDDI client can be used for automatic advertisement in UDDI

5. Verification tools are available for correctness checking

6. Automatic client generation: integration with the OWL-S VM

Page 59: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

5959 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

CMU OWL-S IDE (Eclipse based)CMU OWL-S IDE (Eclipse based)

UDDIUDDIClientClient

OWL-S FilesOWL-S Files

ProfileProfile

ProcessProcess

GroundingGrounding

OWL-S2UDDIOWL-S2UDDIConverterConverter

WSDL2OWL-SWSDL2OWL-SConverterConverter

OWL-SOWL-SAPIAPI

OWL-SOWL-SVMVM

Apache’sApache’sJava2WSDJava2WSD

LLConverterConverter

10/22/04

Legend: Tools integrated in the OWL-S IDE

Data Files

OWL-SOWL-S EditorEditor

eclipseeclipse

JavaJavaCodeCode

UDDI-dataUDDI-data structurestructure

WSDLWSDLCodeCode

JavaJavaCodeCode

Spin Based Spin Based VerificationVerification

OWL-S/UDDI OWL-S/UDDI Matching EngineMatching Engine

BBN’s BBN’s SWeDESWeDE

OWL OWL EditorEditor

JavaJavaCodeCode

http://projects.semwebcentral.org/projects/owl-s-ide/

Page 60: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

6060 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Contributions of the three technologiesContributions of the three technologies

Semantic Web: ontologies, metadata annotations and knowledge based inferenceMulti Agent Systems: goal-directedness, semantically meaningful communication protocols, cooperative and self interested reasoning mechanisms Web Services: industry standards and industry buy in

Page 61: Katia Sycara Intelligent Software Agents and Web Technologies Lab Carnegie Mellon University katia@cs.cmu.edu softagents/ Autonomous

6161 Copyright Katia SycaraCopyright Katia Sycara

ISRI-Seminar-05

Future Evolution of Web ServicesFuture Evolution of Web Services

Semantic Web Services: services whose description is in a machine understandable language with formal semanticsAgent-based or Autonomous Semantic Web Services:

goal-directed autonomous choice of partnersbased on own current internal goals, internal attitudes and their projection of their future needs.semantics support ASWS

Semantic Web Services Interest Group created at W3C

[email protected]