A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab,...

21
A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th International Conference on Service Oriented Computing

Transcript of A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab,...

Page 1: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

A Hierarchical Framework for Composing Nested Web

Processes

Haibo Zhao, Prashant DoshiLSDIS Lab, Dept. of Computer Science,

University of Georgia

4th International Conference on Service Oriented Computing

Page 2: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

Introduction• Web process

Business processes with Web services as components

• Existing approaches to Composition: AI planning Classical planning techniques

Golog (McIlraith2001), MBP-based planning (Traverso2003), HTN planning (Wu2003), Synthy (Srivastava2005)

Decision-theoretic planning MDP (Doshi2004)

• Limitations Classical planning assumes deterministic behavior of Web services Guarantees correctness but not optimality Existing approaches do not scale well to large processes

• Our approach Hierarchy in Web processes to address the scalability problem A hierarchical semi-MDP to model the hierarchy Stochastic SMDP model to handle uncertainties and optimality

Page 3: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

Motivating Scenario 1 Order handling in supply chain

singly nested

Page 4: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

Motivating Scenario 2 Patient Transfer Pathway

doubly nested

Page 5: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

Our Approach

Level 0Compositionusing primitiveSMDP

Level 0Compositionusing primitiveSMDP

Level 1Compositionusing compositeSMDP

Abstractactions

Page 6: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

Semi-MDP (SMDP)SMDP = <S, A, T, K, F, C, s0>

• S: set of all states Capture feature-based state space (factored into variables) E.g. isOrderValid Yes/No/Unknown

• A: set of actions, some temporally extended Model Web service invocations or operations

Level 0 – action is the invocation of a primitive WS E.g. receiveOrder Level > 1 – Abstract action is the invocation of a lower-level Web process E.g.

verifyOrder

• T: transition function, T: S X A Δ(S) Uncertain effects with probabilities E.g. T( inventoryAvail = Yes | Check Inventory Status , inventoryAvail = Unknown) = 0.3 • K: lump sum reward/cost, K: S X A R WS invocation or usage reward/cost • F: sojourn time distribution, F: S X A Δ(t)

Level 0 – uncertain response time of Web services Level > 1 – uncertain runtime of lower level Web process

• C: reward/cost accumulating rate, C: S X A R Reward/cost rate (cost per time unit) of using Web services

• s0 : initial state

Page 7: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

Solving SMDPs• Expected Utility of state s: Quantitative measure of immediate effects

and long-term effects of actions

Where:

• Solving a SMDP is maximizing the expected utility of each state, Solution techniques include: Value Iteration, Policy Iteration and Linear Programming

• The solution is a policy: Mapping from states of process environment to actions

– More robust than a sequence of Web service invocations

• Execution of a policy:1. Determine the current state s2. Invoke WS given by action a based on the policy3. Repeat 1-2 until the goal is achieved

Page 8: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

Elicitation of Model Parameters

• Level 0: Model parameters may be obtained from WSDL\SAWSDL, OWL-S descriptions of Web services, and WS-Agreements

• Level >1: Derive model parameters related to abstract actions from lower level Web process

• Specifically, we want to know transition function T, lump sum reward K, sojourn time distribution F, and accumulating rate C

Page 9: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

Abstract Actions and Variable Correspondence• Abstract action “Verify Order”( ) is composed of “Check Customer”(acc),

“Verify Payment”(avp), and “Charge Money”(acm)

• Actions affect only certain variables

• Correspondence between high-level and lower-level preconditions and effects For example:

voa

High-level variable OrderValid=?

Corresponding low-level variable values

OrderValid = U CustomerValid=U and PaymentVerified=U and AccountCharged=U

OrderValid = Y CustomerValid=Y and PaymentVerified=Y and AccountCharged=Y

OrderValid = N CustomerValid=N or PaymentVerified=N or AccountCharged=N

Page 10: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

Deriving Transition Function T for Abstract Actions

• Correspondence:

E.g. The transition from (OV=U) to (OV=Y)

),|( 1 vopec aSST

),|Pr( 03 voass

}),,{,|Pr( 03 cmvpcc aaass

),|(),|(),|1( 23120 cmvpcc assTassTassT

pS

1eS

High-level variable OV=? Corresponding low-level variables

OrderValid = U CustomerValid=U and PaymentVerified=U and AccountCharged=U

OrderValid = Y CustomerValid=Y and PaymentVerified=Y and AccountCharged=Y

OrderValid = N CustomerValid=N or PaymentVerified=N or AccountCharged=N

Page 11: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

Deriving Model Parameters for Abstract Actions

• Lump sum cost K – lump sum cost of the abstract action is the total of

lump sum costs of the corresponding primitive actions

)K(a )K(a )K(a ) a K( CMVPCCvo

Page 12: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

Deriving Model Parameters for Abstract Actions

• Sojourn time distribution F – Assume the sojourn time of all primitive actions follows

Gaussian distribution: FCC: N(t; µcc, σcc), Fvo: N(t; µvo, σvo) and Fcm: N(t; µcm, σcm)

•Linear combination of Gaussian distributions is a Gaussian distribution

•The abstract action VerifyOrder also follows Gaussian Fvo: N (t; µvo, σvo) where:

222cmvpccvo cmvpccvo

Page 13: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

Deriving Model Parameters for Abstract Actions

• Accumulating Cost Rate C – Accumulated cost of an abstract action is the total accumulated cost of

all corresponding primitive actions

– Where: Ecc(F), Evp(F) and Ecm(F) are expected sojourn time

Given model parameters for abstract actions, composite SMDP can be solved analogous to a primitive SMDP

)()()(

)()()(

FEFEFE

FECFECFECC

cmvpcc

cmcmvpvpccccvo

Page 14: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

System Architecture

Page 15: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

BPEL Snippet

Page 16: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

Interleaved Generation and Execution of Nested Web Process

Page 17: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

Performance Evaluation• Methodology

−Comparison with HTNs (Wu 2003) on two scenarios

−Run the processes generated by two approaches in a simulated environment 1000 times

−Measure average reward and standard deviation

The performance of HTN approaches ours as the environment becomes less uncertain

Page 18: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

Discussion• Many AI planning approaches

AI classical planning is not designed to handle WS composition Assumes deterministic behavior of Web services Does not scale well to large problems

• Our hierarchical framework Stochastic optimization manages uncertainty and delivers

optimality Exploits hierarchy scalability Better performance in uncertain environments

• Future work Integrate first-order logic to manage state space explosion

Page 19: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

Thank You!

Questions?

Page 20: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

Outline

• Introduction

• Motivating scenarios

• Semi-Markov decision process (SMDP)

• Composing nested web processes using Hierarchical SMDP

• System architecture

• Experiment & Discussion

Page 21: A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.

Composing Web Processes Using H-SMDP