Upload
lily-sandoval
View
214
Download
0
Embed Size (px)
Citation preview
Part III: Resources & Building Blocks
• General Resources
• Applications
• Tools & Components
• Summary
Acknowledgements
• Massimo Paolucci, Katia Sycara– Robotics Institute, Carnegie Mellon University– Material on DAML-S Matchmaker, DAML-S API,
DAML-S Virtual Machine, WSDL2DAML-S, DAMLzon
• Sheila McIlraith, Honglei Zeng, Rob McCool– Knowledge Systems Lab, Stanford University– Material on DAML-S Editor, Automated Web Service
Composition
General Resources• Web site & mailing lists
– http://www.daml.org/services/• New pages for collecting use cases, tools, sample code
– http://www.swsi.org– [email protected]– Look for conference workshops
• DAML-S/OWL-S & related publications– Many and varied– See http://www.daml.org/services/
• W3C Web services activities– Description, Architecture, Choreography WGs– Under discussion: Semantic Web Services IG– Liaisons: Katia Sycara, Jim Hendler, Bijan Parsia
Some Applications Using DAML-S
• CoSAR-TS demo (shown at SWMU)• CMU demo(s)
– Travel planning, Electronic parts buying, DAMLzon
• Stanford KSL demo• MyGrid: (http://mygrid.man.ac.uk)
• AgentCities (www.agentcities.org)
• Task Computing (Fujitsu Labs with MINDSWAP)• Composer demo (http://www.mindswap.org/~evren/composer/)
• MyCampus (http://128.2.199.68/project) • Secure Mobile Services (UMBC/Finin)
Tools & Components
• OWL-S is just another OWL ontologyAll the tools & technologies for OWL are relevant
• Tools & components specialized for OWL-S– Development tools
– Matchmakers
– Service provision (execution) tools
– Service composition technology
• See also: http://www.daml.org/services/– Publications, Tools
Pro
cess
Mod
el
Gro
undi
ng
Development … Deployment … Use …
Publication
Development
Simulation
Discovery
Composition
Selection
Execution, Interoperation
Monitoring, Recovery
Pro
file
Verification
4 “Sweet Spots”
Sweet Spot: Development
• DAML-S API
• WSDL2DAML-S
• DAML-S Editor
• See also: http://www.daml.org/services/– Publications, Tools
DAML-S API
• Provides easy way to process DAML-S in Java
• Translates DAML-S ontologies into Java– One Java class for each DAML-S class– Accessors for each property in DAML-S
classes
• Complete implementation of DAML-S 0.7
WSDL2DAML-S
• WSDL widely used to describe Web services– Wide repositories of WSDL descriptions
• www.salcentral.com www.xmethods.com
• WSDL2DAMLS allows easy derivation of DAML-S code from WSDL documents
• Automatic generation of Grounding– Partial generation of Process Model and Profile– Up to 80% of work required to generate a DAML-S description
is done automatically
• Combined with Java2WSDL to provide Java2DAML-S
DAML-S EditorGoal: Editor tailored to the markup of Web Services in DAML-S+
(not just an ontology editor -- focus on end user needs and intuitions)
Input: graphical and form entry Output: DAML-S
Anticipated Users: • Web service providers • 3rd party Web page developers• 2nd-ary Web service providers • DAML community
Approach: • Use-based• Graphical• Ontology editor and reasoner behind the scenes
What will make it significant Value added by reasoning: • Verification of properties of services• Simulation of services• Diagnostics
Create new DAML-S service
Search Tap server for reusable ontologiesInspect Class/Instance Properties
(notice the inputs/outputs/pre/effect for subclasses of DAML-S Process)
Expand the search results (view the subclasses of search results)
Load reusable ontologies into JTP
Create new class
add/remove new property, add/remove/modify property values
create/edit a simple/composite servicesspecify Control Flow of composite servicesspecify Data Flow of composite services
Pallete of services for Data & Control Flow
specification
Pallete of connectives for Control Flow specification
Browse the Process Ontology to create/edit a service
Select/subclass/sibling a service and Create/Edit its properties
Define the control structure for composite services
Select a service and inspect its properties
Define the data flow within a composite service
<rdfs:Class rdf:ID="ExpandedAcmeMovingService">
<rdfs:subClassOf rdf:resource="http://www.daml.org/services/daml-s/2001/05/Process#Sequence" />
- <rdfs:subClassOf>
- <daml:Restriction>
<daml:onProperty rdf:resource="http://www.daml.org/services/daml-s/2001/05/Process#components" />
<daml:toClass rdf:resource="#PROCESS-LIST-142" />
</daml:Restriction>
</rdfs:subClassOf>
</rdfs:Class>
- <rdfs:Class rdf:ID="PROCESS-LIST-142">
<rdfs:subClassOf rdf:resource="http://www.daml.org/services/daml-s/2001/05/Process#ProcessList" />
- <rdfs:subClassOf>
- <daml:Restriction>
<daml:onProperty rdf:resource="http://www.daml.org/2001/03/daml+oil#first" />
<daml:toClass rdf:resource="#AcmeConfirmMvRoute" />
</daml:Restriction>
</rdfs:subClassOf>
- <rdfs:subClassOf>
- <daml:Restriction>
<daml:onProperty rdf:resource="http://www.daml.org/2001/03/daml+oil#rest" />
<daml:toClass rdf:resource="#PROCESS-LIST-141" />
</daml:Restriction>
</rdfs:subClassOf>
</rdfs:Class>
- <rdfs:Class rdf:ID="PROCESS-LIST-141">
<rdfs:subClassOf rdf:resource="http://www.daml.org/services/daml-s/2001/05/Process#ProcessList" />
- <rdfs:subClassOf>
….-
Finally, generate the DAML-S for the services
Sweet Spot: MatchmakingSweet Spot: Matchmaking
From “Web Services Architecture W3C Working Draft”http://www.w3.org/TR/2002/WD-ws-arch-20021114/
Sweet Spot: Matchmaking
• Matchmakers (and other forms of middle agents) have been a focus in work on software agents
• Work on DL-based matchmaking predates DAML• Semantic Web has brought renewed attention
– E.g. Paolucci/Sycara (CMU), Trastour (HP Labs), Lei/Horrocks (Manchester), …
• Used in most or all SW Services applications– See previous slide
• See also: http://www.daml.org/services/– Publications
DAML-S Matchmaker
• Yellow pages matching service: Web services and agents advertise their capabilities or look for agents and Web services with a given capability
• Uses DAML-S to represent capability of Web Services
• Extends UDDI Registry by adding capability matching which is impossible to do without semantic information
• Emphasis on flexible matching against services not known a priori
DAML-S Matchmaker(2)
• Provides Web interface to compile advertisements and requests– Make easier for human users to compile
advertisements and requests– Does not require profound knowledge of
DAML and DAML-S syntax
• Implementation available at www.damlsmm.ri.cmu.edu
Sweet Spot: MatchmakingSweet Spot: Service Provision
From “Web Services Architecture W3C Working Draft”http://www.w3.org/TR/2002/WD-ws-arch-20021114/
DAML-S VM
DAML-S processor that allows any Web service to interact with Web services using only DAML-S specifications
Features of DAML-S VM
• Uses DAML-S as representation of Web services
• Uses DAML to represent information to exchange between Web services
• Actively adopts logic inference to reason about DAML-S and DAML ontologies
• Shows how to integrate DAML-S within Web services technology such as Axis and WSIF
DAML-S for P2P
• Use DAML-S to expand search mechanism on Gnutella P2P network– Search capabilities in Gnutella restricted to keyword search – No
Semantic Information
• Improve on Gnutella by adding semantics in DAML and capability representation in DAML-S– Removes the need of centralized Registry
• Protocol:– Non DAML nodes allow requests to hop from node to node– DAML nodes reason about the requests that they receive and
decide whether to accept the task
Sweet Spot: MatchmakingSweet Spot (?): Composition
From “Web Services Architecture W3C Working Draft”http://www.w3.org/TR/2002/WD-ws-arch-20021114/
Sweet Spot: Composition
• Stanford Knowledge Systems Lab (McIlraith)
• CMU Robotics Lab (Sycara/Paolucci)
• MINDSWAP (Hendler/Parsia)– http://www.mindswap.org/~evren/composer/
• See also: http://www.daml.org/services/
– Publications
Stanford KSLAutomated Web Service Composition
E.g., Arrange food for 500 people for 2 weeks in Dubai.
Approach:
I. Plan a sequences of services that realize user’s objective. (NP complete or worse)
II. Customize reusable generic procedures - Define and archive reusable generic procedures - Customize with user’s constraints. (NP complete or worse in a reduced search space)
Advantages: efficiency, ease of use, customization
Architecture
DAML-enabled web pages
Web Service Ontologies
Web Procedures Ontologies
AgentBroker
DAML-enabled personal/company
constraints and prefs...
Demo: Dynamic UI with DAML+OIL
User Interface auto-generated from DAML+OIL Ontology
Behind the Scenes
User Constraints+Generic Procedures+deduction=composition **or**
User constraints + Goal + deduction = composition
Talk to Web services through OAA
Agent e-mails itinerary to customer
Email the user travel plans when done...
Agent creates expense claim for customer
Generate expense claim
KSL Service Composition:Status & Challenges
Automated Web Service Composition is working now!
Implementation: DAML+OIL/DAML-S FOL -> Ontolingua, Golog & sit’n calculus in Prolog Java, Prolog, Ontolingua-DAML+OIL translator, OKBC,
DAML-S to PDDL translator, bubble gum, scotch tape
Challenges:• Outstanding DAML-S representation issues• DAML-S-ize our work; Reduce number of repn’s required; Reasoner. • Technical challenges:
• Execution Monitoring & Recovery, Info vs. world-chging services• Automate Service Selection• Low-level synchronization, message passing issues
Tools & Components: Status• DAML-S Matchmaker
– Implementation available at www.damlsmm.ri.cmu.edu
• DAML-S API, WSDL2DAML-S, DAML-S VM, DAML-S for P2P– Not yet publically released; contact Katia Sycara
• DAML-S Editor– Currently being rewritten to
- Replace DAML+OIL with OWL- Exploit new ontology editor- Improve interface
- Not yet publically released;contact Sheila McIlraith
Pro
cess
Mod
el
Gro
undi
ng
Development … Deployment … Use …
Publication
Development
Simulation
Discovery
Composition
Selection
Execution, Interoperation
Monitoring, Recovery
Pro
file
Verification
4 “Sweet Spots”
SummaryThe service paradigm will be a crucial part of the Semantic WebOWL-S supports service descriptions that are integral with other
Semantic Web meta-dataOWL-S aims to enable automatic discovery, selection, invocation,
composition, monitoring of servicesService description ontology (Profile, Process, and Grounding) is
available, in use, and evolvingSeveral extremely useful building blocks have been created and are in useMany publications and other resources are available here:
http://www.daml.org/services/
End of Part III
ExtraMaterialFollows
DAMLzon: DAML-S for Amazon.com
• WSDL2DAML-S used to generate DAML-S for Amazon’s Web Service
• DAML-S VM used to interact with Amazon Web service
Process Model for Amazon.com
Book SearchBook Search Reserve BookReserve Book
Perfomance Measures
• We compared the performance of using DAML-S in its interaction with Amazon.com
• Two experiments– Compared Amazon client with DAML-S VM
client on browsing task– Analyzed DAML-S VM client on
browsing+reserving task• No client for Browsing+Reserving provided by Amazon
Results Experiment 1• Compared Amazon client
with DAML-S VM client on browsing task
• 98 runs total over 4 days in varying load conditions
• Results in milliseconds
Amazon Client DAML-S VM
Average execution time
2007 ms 2021 ms
Only 14 ms more
Strd Deviation
1134 ms 776 ms
Distribution
0
5
10
15
20
25
30
35
40
45
1500 2000 2500 3000 3500 4000 4500 5000 5500 >5500
Amazon Client
DAML-S Client
Time required by DAML-S VM
Time required for DataTransformation
Amazon Invocation Time
Results Experiment 2
• DAML-S VM client on browsing+reserving task
– No client for Browsing+Reserving provided by Amazon
• Analyzed data by computing:– Time required by DAML-S VM to
execute Process Model– Time required for data transformation
to fit Amazon requirements– Time required to invoke an operation
on Amazon
• 98 runs total over 4 days in varying load conditions
• Results in milliseconds
Time of
DAML-S VM
Time of data transform.
Invocation Time
Average 83 156 2797
Strd dev 107 146 1314