Presentation is loading. Please wait.

Presentation is loading. Please wait.

George Baryannis and Dimitris Plexousakis

Similar presentations


Presentation on theme: "George Baryannis and Dimitris Plexousakis"— Presentation transcript:

1 George Baryannis and Dimitris Plexousakis
Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis Computer Science Department, University of Crete Institute of Computer Science, Foundation for Research & Technology - Hellas SWESE 2013 December 2nd 2013, Berlin, Germany

2 Outline Introduction Composition and Verification of WSSL services
Service Specifications in the Semantic Web Web Service Specification Language Motivating Scenario Composition and Verification of WSSL services WSSL for Composition Planning with WSSL Verification capabilities Experimental Evaluation Implementation with FLUX Evaluation Conclusions & Future Work

3 Service Specifications in the Semantic Web (1)
Service behavior can be formally modeled using semantic specifications in the form of Inputs, Outputs, Preconditions and Effects (IOPEs) using concepts defined in ontologies Such specifications drive the complete service lifecycle Automated and effective composition based on accurately defined service behavior Verification of (composite) service properties against such specifications Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis

4 Service Specifications in the Semantic Web (2)
Specifications including pre/postconditions are prone to three well-known problems in AI literature Frame Problem: how to effectively express what doesn’t change, apart from what’s changed, based on a specification e.g., how to answer definitively whether a money withdrawal service doesn’t affect other accounts Ramification Problem: how to represent knock-on and indirect effects (ramifications) e.g., invalidate a credit card after the latest transaction causes a daily limit to be reached Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis

5 Service Specifications in the Semantic Web (3)
Qualification Problem: how to deal with qualifications that are outside our knowledge and result in inconsistent behavior e.g., all preconditions hold for a money withdrawal service but no effects occur after executing it We addressed all three problems by defining the Web Service Specification Language (WSSL), a formal semantic language based on the fluent calculus Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis

6 George Baryannis and Dimitris Plexousakis
WSSL Overview (1) Service behavior is modeled using the following fluent calculus notions Fluent: a single atomic property, that may change after a service execution State: a snapshot of the environment, as a fluent set 𝑯𝒐𝒍𝒅𝒔(𝒇,𝒛): a macro denoting state z contains fluent f Action: a service execution Situation: a history of service executions Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis

7 George Baryannis and Dimitris Plexousakis
WSSL Overview (2) Action Precondition Axiom: 𝑃𝑜𝑠𝑠 𝐴 𝑥 , 𝑠 ≡ 𝛱 𝐴 𝑥, 𝑠 , i.e. A is possible at situation s iff 𝛱 𝐴 holds – used to represent service preconditions State Update Axiom: 𝑃𝑜𝑠𝑠 𝐴 𝑥 , 𝑠 → ∃𝑦 𝛥 𝑠 ∧𝑆𝑡𝑎𝑡𝑒 𝐷𝑜 𝐴 𝑥 , 𝑠 =𝑆𝑡𝑎𝑡𝑒 𝑠 + 𝜃 + − 𝜃 − – used to represent service postconditions This is a provably correct solution to the frame problem, provided that 𝜃 + and 𝜃 − are disjoint Inputs and Outputs: represented by input and output formulas i.e. provided that A is possible at s, executing A results at a successor state which results from the previous one if we add fluents that have been made true ( 𝜃 + ) and we subtract fluents that have been made false ( 𝜃 − ) Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis

8 George Baryannis and Dimitris Plexousakis
WSSL Overview (3) Causal relationships to solve the ramification problem: ∀ Γ→𝐶𝑎𝑢𝑠𝑒𝑠 𝑧,𝑝,𝑛, 𝑧 ′ , 𝑝 ′ , 𝑛 ′ ,𝑠 Accident modeling to solve the qualification problem Action precondition axioms are rewritten as 𝑃𝑜𝑠𝑠 𝐴 𝑥 , 𝑠 ≡ ∀𝑐 ¬𝐴𝑐𝑐 𝑐, 𝑠 →𝛱 𝐴 𝑥, 𝑠 , to express the default case, where no accident has taken place State update axioms now include a disjunct for each accident case (apart from the default no-accident case) WSSL specifications can be translated to FLUX programs, a fluent calculus implementation in logic programming with constraint handling Under conditions Γ, in situation s, the occurred positive and negative effects p and n possibly cause an automatic update from state to state z’, with positive and negative effects p’ and n’ predicate 𝐴𝑐𝑐 𝐶, 𝑠 means that accident C occurs in situation s. Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis

9 George Baryannis and Dimitris Plexousakis
WSSL Placement USDL Higher- level SoaML WSSL OWL-S WSMO Semantics/ Behavior SAWSDL WSDL Ground Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis

10 Motivating Scenario (1)
Service-based process of assisting vehicle drivers Users contact road assistance via call or SMS Driver’s location and vehicle status are retrieved and a search for the most suitable mechanic is conducted After resolving the issue a payment process follows and a report is sent to the driver by post or Given a set of service specifications, we want to automatically create a composite process that realizes the scenario Taking into account ramifications of services Determining execution results even under unforeseen circumstances Verify the composability and correctness of a candidate composite process Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis

11 Motivating Scenario (2)
Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis

12 Outline Introduction Composition and Verification of WSSL services
Service Specifications in the Semantic Web Web Service Specification Language Motivating Scenario Composition and Verification of WSSL services WSSL for Composition Planning with WSSL Verification capabilities Experimental Evaluation Implementation with FLUX Evaluation Conclusions & Future Work

13 WSSL for Composition (1)
Extend WSSL to support control and data flow ;, ⋅, +, ⊕: 𝐴𝐶𝑇𝐼𝑂𝑁×𝐴𝐶𝑇𝐼𝑂𝑁→𝐴𝐶𝑇𝐼𝑂𝑁, denoting sequence, AND-Split/AND-Join, OR-Split/OR-Join, XOR-Split/XOR-Join 𝐼𝑓:𝐹𝐿𝑈𝐸𝑁𝑇×𝐴𝐶𝑇𝐼𝑂𝑁×𝐴𝐶𝑇𝐼𝑂𝑁→𝐴𝐶𝑇𝐼𝑂𝑁, denoting conditional execution 𝐿𝑜𝑜𝑝:𝐹𝐿𝑈𝐸𝑁𝑇×𝐴𝐶𝑇𝐼𝑂𝑁→𝐴𝐶𝑇𝐼𝑂𝑁, denoting iterative execution Preconditions and postconditions governed by foundational axioms, e.g.: 𝑷𝒐𝒔𝒔 𝒂 𝟏 ⋅ 𝒂 𝟐 , 𝒔 ≡𝑷𝒐𝒔𝒔 𝒂 𝟏 + 𝒂 𝟐 , 𝒔 ≡𝑷𝒐𝒔𝒔 𝒂 𝟏 ⊕ 𝒂 𝟐 , 𝒔 ≡𝑷𝒐𝒔𝒔 𝒂 𝟏 ,𝒔 ∧𝑷𝒐𝒔𝒔 𝒂 𝟐 ,𝒔 𝑷𝒐𝒔𝒔 𝒂 𝟏 ⋅ 𝒂 𝟐 , 𝒔 ⇒𝑺𝒕𝒂𝒕𝒆 𝑫𝒐 𝒂 𝟏 ⋅ 𝒂 𝟐 ,𝒔 =𝑺𝒕𝒂𝒕𝒆(𝑫𝒐 𝒂 𝟐 ,𝒔 + 𝜽 𝟏 + − 𝜽 𝟏 − =𝑺𝒕𝒂𝒕𝒆 𝒔 + 𝜽 𝟐 + − 𝜽 𝟐 − + 𝜽 𝟏 + − 𝜽 𝟏 − Foundational axiom for data flow: 𝑯𝒐𝒍𝒅𝒔 𝑯𝒂𝒔𝑶𝒖𝒕𝒑𝒖𝒕 𝒇 ,𝒛 ⇒𝑯𝒐𝒍𝒅𝒔(𝑯𝒂𝒔𝑰𝒏𝒑𝒖𝒕 𝒇 ,𝒛) Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis

14 George Baryannis and Dimitris Plexousakis
Planning with WSSL (1) Service composition is realized via WSSL planning WSSL planning problem: how to reach goal state defined by Γ(𝑧), starting from initial state defined by Φ 𝑧 e.g., FLUX encoding of the motivating scenario 𝐴𝑠𝑠𝑖𝑠𝑡𝑃𝑙𝑎𝑛 𝑧,𝑝,𝑧 ⇐𝐻𝑜𝑙𝑑𝑠 𝑆𝑜𝑙𝑣𝑒𝑑 𝑠𝑡𝑎𝑡𝑢𝑠,𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛 ,𝑧 , 𝐻𝑜𝑙𝑑𝑠 𝑃𝑎𝑦𝐶𝑜𝑚𝑝𝑙𝑒𝑡𝑒𝑑 𝑝𝑎𝑦𝑓𝑜𝑟𝑚 ,𝑧 , 𝐻𝑜𝑙𝑑𝑠 𝐻𝑎𝑠𝑂𝑢𝑡𝑝𝑢𝑡 𝑟𝑒𝑝𝑜𝑟𝑡 ,𝑧 , 𝑝=[] 𝐴𝑠𝑠𝑖𝑠𝑡𝑃𝑙𝑎𝑛(𝑧, 𝑎 𝑝 , 𝑧 𝑛 )⇐𝑃𝑜𝑠𝑠 𝑎,𝑧 ,𝑆𝑡𝑎𝑡𝑒𝑈𝑝𝑑𝑎𝑡𝑒 𝑧,𝑎, 𝑧 1 ,[] , 𝑃( 𝑧 1 ,𝑝, 𝑧 𝑛 ) WSSL plan: a sequence 𝑎 1 ,…, 𝑎 𝑛 of service executions, which is a solution to the problem iff 𝑃𝑜𝑠𝑠 𝑎 1 ,… 𝑎 𝑛 ,Φ 𝑧 ∧Γ{𝑧/𝑆𝑡𝑎𝑡𝑒(𝐷𝑜 𝑎 1 ,… 𝑎 𝑛 ,Φ 𝑧 )} Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis

15 George Baryannis and Dimitris Plexousakis
Planning with WSSL (2) Introduce heuristics to produce more than sequential-only plans address issues of termination and computation complexity Heuristic encoding of a WSSL planning problem: a FLUX program describing how to reach the goal state from the initial state As the heuristics grow more and more restrictive, the complexity of the planner decreases (and termination probability increases) Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis

16 George Baryannis and Dimitris Plexousakis
Planning with WSSL (3) The most restrictive example encoding for the motivating scenario: assist_plan(Z,[A|P],Z_PR) :- A1=receivesms(_,_), A2=receivecall(_,_), A=xor(A1,A2), poss_xor(A1,A2,Z), state_update_xor(Z,A1,A2, Z_1), assist_plan1(Z_1,P,Z_PR). assist_plan1(Z,[A|P],Z_PR) :- A1=retrievelocation(_,_,_), A2=retrievediagnostics(_,_,_), A=and(A1, A2), poss_and(A1,A2,Z), state_update_and(Z,A1,A2,Z_1),assist_plan2(Z_1,P,Z_PR). assist_plan2(Z,[A|P],Z_PR) :- A=findmech(_,_,_), poss(A,Z), state_update(Z,A,Z_1), assist_plan3(Z_1,P,Z_PR). assist_plan3(Z,[A|P],Z_PR) :- A=receivepay(_, _), poss(A,Z), state_update(Z,A,Z_1), assist_plan4(Z_1,P,Z_PR). assist_plan4(Z,A,Z_PR) :- F=req_deliv(REPORT), A1=ereport(_,_),A2=mreport(_,_), A=if(F,A1,A2), poss_if(F,A1,A2,Z), state_update_if(Z,F,A1,A2,Z_PR). Any answer to the FLUX query assist_plan([callcenterup, gpsactive(user1), systemactive(vehicle1), req_deliv(report1)], P, Z_PR). yields a plan that realizes the goals of the scenario Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis

17 Verification Capabilities
Focus mainly on answering questions about the behavior of produced compositions Liveness properties: e.g., to prove that the produced plan realizes the goals, we prove that either holds( ed(report,z) or holds(delivered(report, z) in the final state z. Safety properties: e.g., make sure that payment is performed for the correct payment form by proving holds(hasinput(payform, z_in), holds(paycompleted(payform, z) Explanations for unexpected behavior, thanks to WSSL’s accident modeling, e.g., no report delivery after executing the composition plan means accident failure(deliv) has occurred Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis

18 Outline Introduction Composition and Verification of WSSL services
Service Specifications in the Semantic Web Web Service Specification Language Motivating Scenario Composition and Verification of WSSL services WSSL for Composition Planning with WSSL Verification capabilities Experimental Evaluation Implementation with FLUX Evaluation Conclusions & Future Work

19 Implementation with FLUX
Composition (and verification) goals and candidate service specifications expressed in WSSL are translated into FLUX JAVA used for the translation mechanism the ECLiPSe CLP system to execute FLUX queries Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis

20 George Baryannis and Dimitris Plexousakis
Evaluation (1) To investigate scalability of the composition process we varied planning problem complexity by increasing service repository size (at the same time increasing the difficulty of achieving the goal) by allowing for more elaborate plans Experiments relied on synthetically generated specifications containing an IOPE quad (plus a causal rule for the final experiment) Composition plans examined contained sequential, parallel and alternating combination of sequential and parallel constructs Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis

21 Evaluation (2) Runtime stays at reasonable levels for up to 500 services and peaks to 4sec for 1000 services and sequence/parallel combinations The inclusion of ramifications (a 50% increase in the size of specifications) leads to a significant increase in runtime) In real-world problems only some postconditions are expected to be linked to a ramification

22 Outline Introduction Composition and Verification of WSSL services
Service Specifications in the Semantic Web Web Service Specification Language Motivating Scenario Composition and Verification of WSSL services WSSL for Composition Planning with WSSL Verification capabilities Experimental Evaluation Implementation with FLUX Evaluation Conclusions & Future Work

23 George Baryannis and Dimitris Plexousakis
Conclusions We proposed a service composition and verification framework using WSSL, a novel specification language for Web services based on the fluent calculus satisfying significant requirements such as automation, dynamicity, and non-determinism supporting rich, semantic behavioral descriptions of services and compositions exploiting WSSL’s solutions to the frame, ramification and qualification problems The framework is an effective demonstration of the benefits of semantic specifications in the context of service science the way to exploit such specifications for the purposes of service composition and verification Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis

24 George Baryannis and Dimitris Plexousakis
Future Work Support knowledge states and comprehensive modeling of partially observable behavior, asynchronous service execution, and derivation of executable business processes Future Improve efficiency by investigating complexity for different heuristics, limiting search space before planning, exploring graph-based rule optimization Next Extending WSSL to support quality aspects so as to achieve QoS-aware service composition and verification Currently Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis

25 George Baryannis and Dimitris Plexousakis
Questions Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis


Download ppt "George Baryannis and Dimitris Plexousakis"

Similar presentations


Ads by Google