katia sycara intelligent software agents and web technologies lab carnegie mellon university...
TRANSCRIPT
Katia SycaraIntelligent Software Agents and Web Technologies LabCarnegie Mellon [email protected]://www.cs.cmu.edu/~softagents/
Autonomous Semantic Web Autonomous Semantic Web ServicesServices
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
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
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
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
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
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
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
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)
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
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
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
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
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
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
1616 Copyright Katia SycaraCopyright Katia Sycara
ISRI-Seminar-05
Three Significant Technological VisionsThree Significant Technological Visions
Semantic WebMulti Agent Systems (MAS)Semantic Web Services
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
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.
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
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
2121 Copyright Katia SycaraCopyright Katia Sycara
ISRI-Seminar-05
Importing Schedules into MS OutlookImporting Schedules into MS Outlook
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
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
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
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
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
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)
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”
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
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
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/
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
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
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
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)
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
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)
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
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
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
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
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
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
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
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
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
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
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
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,
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
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/
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
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
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?
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
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
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)
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
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/
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
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