demonstrates one particular benefit of considering service providers; focuses on achieving robust composition in a large search space; assumes template-based ...
Introduction
Prelims
Agents
Related Work
Provider-Composer Negotiations for Semantic Robustness in Service Compositions Nikolay Mehandjiev
Freddy Lécué
Centre for Service Research The University of Manchester Booth Street East, Manchester, UK
ICSOC-ServiceWave, November 24-26, 2009 Stockholm, Sweden
Usman Wajid
Conclusion
Introduction
Prelims
Agents
Outline
1
Introduction
2
Preliminaries
3
Agents and Template-based Composition
4
Related Work
5
Conclusion
Related Work
Conclusion
Introduction
Prelims
Agents
Related Work
Conclusion
Scope
Introduction and Scope Conventional and Web Services Intertwine both areas can “learn” from each other; e.g. produce better software by considering service providers.
Role of Service Providers in Web Service Composition Currently only in service quality and contracts. This is OK for small and cheap services, but sub-optimal for complex and evolving assemblies. This Talk: demonstrates one particular benefit of considering service providers; focuses on achieving robust composition in a large search space; assumes template-based composition.
Introduction
Prelims
Agents
Related Work
Conclusion
Scope
Introduction and Scope Conventional and Web Services Intertwine both areas can “learn” from each other; e.g. produce better software by considering service providers.
Role of Service Providers in Web Service Composition Currently only in service quality and contracts. This is OK for small and cheap services, but sub-optimal for complex and evolving assemblies. This Talk: demonstrates one particular benefit of considering service providers; focuses on achieving robust composition in a large search space; assumes template-based composition.
Introduction
Prelims
Agents
Related Work
Conclusion
Scope
Introduction and Scope Conventional and Web Services Intertwine both areas can “learn” from each other; e.g. produce better software by considering service providers.
Role of Service Providers in Web Service Composition Currently only in service quality and contracts. This is OK for small and cheap services, but sub-optimal for complex and evolving assemblies. This Talk: demonstrates one particular benefit of considering service providers; focuses on achieving robust composition in a large search space; assumes template-based composition.
Introduction
Prelims
Agents
Related Work
Template-based Service Composition
Template-based Composition of Semantic Services Service Composition: aims to satisfy the need for a service by bringing together existing ones; manual or automated; “from scratch” or using existing templates. Template Instantiation: A template contains a set of tasks: unbound service specifications. The aim is to find the optimal service to instantiate each task. We focus on optimising the “data fit” between service inputs and preceding outputs. Functional Description Pre-Conditions
Post−Conditions
Functional View of Services: Formally specified inputs and outputs.
Name And Input Description Parameters
Formally specified service aim. Output Parameters
Pre-conditions and post-conditions are semantic expressions.
Conclusion
Introduction
Prelims
Agents
Related Work
Template-based Service Composition
Template-based Composition of Semantic Services Service Composition: aims to satisfy the need for a service by bringing together existing ones; manual or automated; “from scratch” or using existing templates. Template Instantiation: A template contains a set of tasks: unbound service specifications. The aim is to find the optimal service to instantiate each task. We focus on optimising the “data fit” between service inputs and preceding outputs. Functional Description Pre-Conditions
Post−Conditions
Functional View of Services: Formally specified inputs and outputs.
Name And Input Description Parameters
Formally specified service aim. Output Parameters
Pre-conditions and post-conditions are semantic expressions.
Conclusion
Introduction
Prelims
Agents
Related Work
Template-based Service Composition
Template-based Composition of Semantic Services Service Composition: aims to satisfy the need for a service by bringing together existing ones; manual or automated; “from scratch” or using existing templates. Template Instantiation: A template contains a set of tasks: unbound service specifications. The aim is to find the optimal service to instantiate each task. We focus on optimising the “data fit” between service inputs and preceding outputs. Functional Description Pre-Conditions
Post−Conditions
Functional View of Services: Formally specified inputs and outputs.
Name And Input Description Parameters
Formally specified service aim. Output Parameters
Pre-conditions and post-conditions are semantic expressions.
Conclusion
Introduction
Prelims
Agents
Related Work
Semantic Web Services
Semantic Web Services
Parameters (i.e., Input and Output) of Web services in semantic Web are concepts referred to in an ontology T : WSDL-S, SA-WSDL (W3C Proposed Recommendation); OWL-S profile level; WSMO capability level.
Conclusion
Introduction
Prelims
Agents
Related Work
Web Service Composition and its Semantic Links Semantic Link: Semantic connection between services; ... more particulary between Output and Input parameters; ... denoted by sly ,x and valued by SimT (Out_sy , In_sx );
S y Input Parameters
S y Output Parameters
S x Input Parameters
Out_sy
In_sx
Semantic connection: Sim T
Web service: sy
S x Output Parameters
Web service: sx
SimT is reduced to the five matchmaking functions [M.Paolucci et al. ISWC’02, Li and Horrocks WWW’03]: Exact i.e., T |= Out_sy ≡ In_sx ; X PlugIn i.e., T |= Out_sy v In_sx ; X Subsume i.e., T |= In_sx v Out_sy ; 7 Intersection i.e., T 6|= Out_sy u In_sx v ⊥; 7 Disjoint i.e., T |= Out_sy u In_sx v ⊥; X
For 7 we need some refinements: Extra Description.
Conclusion
Introduction
Prelims
Agents
Related Work
Web Service Composition and its Semantic Links Semantic Link: Semantic connection between services; ... more particulary between Output and Input parameters; ... denoted by sly ,x and valued by SimT (Out_sy , In_sx );
S y Input Parameters
S y Output Parameters
S x Input Parameters
S x Output Parameters
SlowNetWorkConnection NetWorkConnection Semantic connection: Sim T
Web service: sy
Web service: sx
SimT is reduced to the five matchmaking functions [M.Paolucci et al. ISWC’02, Li and Horrocks WWW’03]: Exact i.e., T |= Out_sy ≡ In_sx ; X PlugIn i.e., T |= Out_sy v In_sx ; X Subsume i.e., T |= In_sx v Out_sy ; 7 Intersection i.e., T 6|= Out_sy u In_sx v ⊥; 7 Disjoint i.e., T |= Out_sy u In_sx v ⊥; X
For 7 we need some refinements: Extra Description.
Conclusion
Introduction
Prelims
Agents
Related Work
Conclusion
Robustness
Non Robust Semantic Links in Web Service Composition
The open issue: How transform a non robust semantic link SimT (Out_sy , In_sx ) in its robust form? The suggested approach: by retrieving the Extra Description H - information contained by In_sx and not by Out_sy through Concept Abduction or Concept Difference. T. Di Noia, E. Di Sciascio et al. Abductive matchmaking using description logics. In IJCAI, pages 337–342, Acapulco, Mexico, 2003. MK. G. Teege. Making the difference: A subtraction operation for DLs. In KR, pages 540–550, San Francisco, California, 1994.
Introduction
Prelims
Agents
Related Work
Conclusion
Robustness
Non Robust Semantic Links in Web Service Composition
The open issue: How transform a non robust semantic link SimT (Out_sy , In_sx ) in its robust form? The suggested approach: by retrieving the Extra Description H - information contained by In_sx and not by Out_sy through Concept Abduction or Concept Difference. T. Di Noia, E. Di Sciascio et al. Abductive matchmaking using description logics. In IJCAI, pages 337–342, Acapulco, Mexico, 2003. MK. G. Teege. Making the difference: A subtraction operation for DLs. In KR, pages 540–550, San Francisco, California, 1994.
Introduction
Prelims
Agents
Related Work
Conclusion
Robustness
Concept Abduction in Web Service Composition Definition (Concept Abduction) Let L be a DL, Out_sy , In_sx be two concepts in L, and T be a set of axioms in L. A Concept Abduction Problem (CAP), denoted as hL, Out_sy , In_sx , T i is finding a concept H ∈ L such that T |= Out_sy u H v In_sx . The Extra Description H represents what is underspecified in Out_sy in order to completely satisfy In_sx ; ⇒ Explains why Out_sy and In_sx can not be chained by a robust semantic link. The Common Description Out_sy u In_sx refers to information required by In_sx and effectively provided by Out_sy .
Introduction
Prelims
Agents
Related Work
Conclusion
Robustness
Concept Abduction with an Example Definition (Concept Abduction) Let L be a DL, Out_sy , In_sx be two concepts in L, and T be a set of axioms in L. A Concept Abduction Problem (CAP), denoted as hL, Out_sy , In_sx , T i is finding a concept H ∈ L such that T |= Out_sy u H v In_sx . e.g., in case of non robust semantic link valued by the Subsume match level. S y Input Parameters
S y Output Parameters
Web service: sy
S x Input Parameters
S x Output Parameters
Web service: sx
Introduction
Prelims
Agents
Related Work
Conclusion
Robustness
Concept Abduction with an Example Definition (Concept Abduction) Let L be a DL, Out_sy , In_sx be two concepts in L, and T be a set of axioms in L. A Concept Abduction Problem (CAP), denoted as hL, Out_sy , In_sx , T i is finding a concept H ∈ L such that T |= Out_sy u H v In_sx . e.g., in case of non robust semantic link valued by the Subsume match level. S y Input Parameters
S y Output Parameters
Web service: sy
S x Input Parameters
S x Output Parameters
Web service: sx
Introduction
Prelims
Agents
Related Work
Conclusion
Robustness
Concept Abduction in Web Service Composition Definition (Concept Abduction) Let L be a DL, Out_sy , In_sx be two concepts in L, and T be a set of axioms in L. A Concept Abduction Problem (CAP), denoted as hL, Out_sy , In_sx , T i is finding a concept H ∈ L such that T |= Out_sy u H v In_sx . Explains Why a semantic link is not robust... ... hence provides a way to replace (How) a non robust semantic link in its robust form: Subsume match level 7 ⇒ Exact match level X; Intersection match level 7 ⇒ PlugIn match level X.
Introduction
Prelims
Agents
Related Work
Agents and Template-based Composition Service Providers and the Service Composer are agents The Service Composer selects a Composition Template and advertises it on a noticeboard Service Providers watch the noticeboards of interest and bid to provide services Semantic Composition Template is a graph containing a set of tasks Ti as its nodes and a set of Abstract Semantic Links sl A i,j as its edges.
Conclusion
Introduction
Prelims
Agents
Related Work
Conclusion
Service Providers Bidding to Instantiate Tasks
Service Providers Bidding to Instantiate Tasks Service Providers are represented by Software Agents Agents monitor noticeboards for suitable tasks for their services. A service s is considered suitable for task T if: 1 2 3 4 5
The service s achieves the same goal as T . The pre-conditions of s are implied by the pre–conditions of T . The post-conditions of s imply the post-conditions of T . SimT (In_T , In_s) is PlugIn. SimT (Out_s, Out_T ) is PlugIn.
Introduction
Prelims
Agents
Related Work
Conclusion
Protocol Outline
Protocol Outline A For each non-robust abstract link sli,j
the service composer agent calculates its HTi ,Tj ; and initiates a three-phase negotation protocol, involving the providers of services si and sj , aiming to select services which provide robust instantiation of the semantic link. The assumptions behind three phases are: 1
Phase 1: robust composition “for free” (i.e. w/out extra services), using differences in specs between a task and its services;
2
Phase 2: additional services (and usage fees), but no modifications;
3
Phase 3: service providers adapt services against payment.
Introduction
Prelims
Agents
Related Work
Conclusion
Protocol Outline
Protocol Outline A For each non-robust abstract link sli,j
the service composer agent calculates its HTi ,Tj ; and initiates a three-phase negotation protocol, involving the providers of services si and sj , aiming to select services which provide robust instantiation of the semantic link. The assumptions behind three phases are: 1
Phase 1: robust composition “for free” (i.e. w/out extra services), using differences in specs between a task and its services;
2
Phase 2: additional services (and usage fees), but no modifications;
3
Phase 3: service providers adapt services against payment.
Introduction
Prelims
Agents
Related Work
Conclusion
Protocol Detail - Phase 1
Protocol Detail - Phase 1 Step 1 1
Service Composer sends CFP(HTi ,Tj ) to all providers of si ;
2
The response depends on Out_si compared to HTi ,Tj : a) Proposal: if T |= Out_si v HTi ,Tj u Out_Ti . b) Refuse: If T |= Out_si u HTi ,Tj v ⊥. c) Counter-Proposal:If there is satisfiable intersection, i.e., T 6|= Out_si u HTi ,Tj v ⊥, the provider will propose Out_si instead.
Step 2 1
Service Composer sends CFP({Out_si }) to providers of sj .
2
The responses depend if In_sj subsumes any of the counter-proposals: a) Proposal: if SimT (Out_si , In_sj ) is of a PlugIn type; b) Counter-Proposal: If SimT (Out_si , In_sj ) is an Intersection type, the counter-proposal is the extra description required for this concrete semantic link sli,j i.e., T |= Out_si u Hsi ,sj v In_sj . We have “Paired Offer”.
If the second step ends up with counter-proposals rather than proposals, the composer will initiate the second phase of negotiation.
Introduction
Prelims
Agents
Related Work
Conclusion
Protocol Detail - Phase 1
Protocol Detail - Phase 1 Step 1 1
Service Composer sends CFP(HTi ,Tj ) to all providers of si ;
2
The response depends on Out_si compared to HTi ,Tj : a) Proposal: if T |= Out_si v HTi ,Tj u Out_Ti . b) Refuse: If T |= Out_si u HTi ,Tj v ⊥. c) Counter-Proposal:If there is satisfiable intersection, i.e., T 6|= Out_si u HTi ,Tj v ⊥, the provider will propose Out_si instead.
Step 2 1
Service Composer sends CFP({Out_si }) to providers of sj .
2
The responses depend if In_sj subsumes any of the counter-proposals: a) Proposal: if SimT (Out_si , In_sj ) is of a PlugIn type; b) Counter-Proposal: If SimT (Out_si , In_sj ) is an Intersection type, the counter-proposal is the extra description required for this concrete semantic link sli,j i.e., T |= Out_si u Hsi ,sj v In_sj . We have “Paired Offer”.
If the second step ends up with counter-proposals rather than proposals, the composer will initiate the second phase of negotiation.
Introduction
Prelims
Agents
Related Work
Conclusion
Protocol Detail - Phases 2 and 3
Protocol Detail - Phases 2 an 3 Step 1 1
Service Composer sends CFP(MatrixH) to all providers of si ;
2
MatrixH contains all Paired Offers, padded with HTi ,Tj ;
3
The response can be one of the following: a) Statement-of-Interest: “Buying Time” to find partners. b) Proposal: When ready to provide the missing information. c) Failure: If the service provider cannot help.
Step 2 1
Service Composer sends CFP({Out_si }) to providers of sj .
2
The response options are the same as for Step 1.
3
For Phase 2, both si and sj consider forming partnerships and coalitions;
4
For Phase 3, both sets consider adapting their own service offerings.
If more than one positive response is received, the general service selection criteria are used.
Introduction
Prelims
Agents
Related Work
Conclusion
Protocol Detail - Phases 2 and 3
Protocol Detail - Phases 2 an 3 Step 1 1
Service Composer sends CFP(MatrixH) to all providers of si ;
2
MatrixH contains all Paired Offers, padded with HTi ,Tj ;
3
The response can be one of the following: a) Statement-of-Interest: “Buying Time” to find partners. b) Proposal: When ready to provide the missing information. c) Failure: If the service provider cannot help.
Step 2 1
Service Composer sends CFP({Out_si }) to providers of sj .
2
The response options are the same as for Step 1.
3
For Phase 2, both si and sj consider forming partnerships and coalitions;
4
For Phase 3, both sets consider adapting their own service offerings.
If more than one positive response is received, the general service selection criteria are used.
Introduction
Prelims
Agents
Related Work
Conclusion
Service Composition
Related Work - Robustness in Service Composition At Functional Level Most of FLC consider not robust semantic links hence some inconsistencies in the composition model: e.g. [O.Lassila and S.Dixit AAAI’04] and [Zhang et al. ICWS’03] with Exact, Subsume, PlugIn and Disjoint; e.g. [J.Cardoso and A.Sheth JIIS’03] with computation of syntactic similarity; e.g. [T.Di Noia et al. WWW’05];
In the same direction ... Semi-Automation of Robust Composition (End-User Assistance) [F.Lécué et al. ICWS’07]; Authors of [F.Lécué and A.Delteil AAAI’07] suggest to use the Concept Difference (more costly) [Teege KR’94] and not the Concept Abduction.
Introduction
Prelims
Agents
Related Work
Conclusion
Service Composition
Related Work - Robustness in Service Composition At Functional Level Most of FLC consider not robust semantic links hence some inconsistencies in the composition model: e.g. [O.Lassila and S.Dixit AAAI’04] and [Zhang et al. ICWS’03] with Exact, Subsume, PlugIn and Disjoint; e.g. [J.Cardoso and A.Sheth JIIS’03] with computation of syntactic similarity; e.g. [T.Di Noia et al. WWW’05];
In the same direction ... Semi-Automation of Robust Composition (End-User Assistance) [F.Lécué et al. ICWS’07]; Authors of [F.Lécué and A.Delteil AAAI’07] suggest to use the Concept Difference (more costly) [Teege KR’94] and not the Concept Abduction.
Introduction
Prelims
Agents
Related Work
Conclusion
Agent Negotiation and Coalition Formation
Related Work - Agent Negotiation Using Agents for Web Service Composition Mostly focused on contracts and norms, e.g. [Kollingbaum et.al. at WISER’2006]; Only a few focus on the composition problem, e.g. [Hassine et.al. at ISWC’06]; Agents for robust composition of WS instances are used in [Lécué et.al. at ECOWS’09]. Using Agents to Represent Service Providers and Requesters Mature work on negotiation and coalition formation protocols; “Service” is a core concept in agent research but not directly linked to Semantic Web Services; There are some examples of work on agents collaborating to procure web services [Abdoessalam et.al. WETICE’04]
Introduction
Prelims
Agents
Related Work
Conclusion
Agent Negotiation and Coalition Formation
Related Work - Agent Negotiation Using Agents for Web Service Composition Mostly focused on contracts and norms, e.g. [Kollingbaum et.al. at WISER’2006]; Only a few focus on the composition problem, e.g. [Hassine et.al. at ISWC’06]; Agents for robust composition of WS instances are used in [Lécué et.al. at ECOWS’09]. Using Agents to Represent Service Providers and Requesters Mature work on negotiation and coalition formation protocols; “Service” is a core concept in agent research but not directly linked to Semantic Web Services; There are some examples of work on agents collaborating to procure web services [Abdoessalam et.al. WETICE’04]
Introduction
Prelims
Agents
Related Work
Conclusion and Future Work Conclusion Template-based Service composition as a composition of Semantic links; Considering service providers represented as agents can help by: robustness of semantic links; phased protocol to minimise robustness costs; near-linear complexity using Extra Descriptions.
Further work in the area Linking instance-based and template-based compositions; Optimising across different semantic links - coalition formation; Optimising in case of “split” and “join” semantic links.
Conclusion
Introduction
Prelims
Agents
Related Work
Conclusion and Future Work Conclusion Template-based Service composition as a composition of Semantic links; Considering service providers represented as agents can help by: robustness of semantic links; phased protocol to minimise robustness costs; near-linear complexity using Extra Descriptions.
Further work in the area Linking instance-based and template-based compositions; Optimising across different semantic links - coalition formation; Optimising in case of “split” and “join” semantic links.
Conclusion
Introduction
Questions?
Prelims
Agents
Related Work
Conclusion