Date post: | 15-Jan-2016 |
Category: |
Documents |
Upload: | belinda-oneal |
View: | 217 times |
Download: | 2 times |
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
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
Motivating Scenario 1 Order handling in supply chain
singly nested
Motivating Scenario 2 Patient Transfer Pathway
doubly nested
Our Approach
Level 0Compositionusing primitiveSMDP
Level 0Compositionusing primitiveSMDP
Level 1Compositionusing compositeSMDP
Abstractactions
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
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
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
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
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
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
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
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
System Architecture
BPEL Snippet
Interleaved Generation and Execution of Nested Web Process
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
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
Thank You!
Questions?
Outline
• Introduction
• Motivating scenarios
• Semi-Markov decision process (SMDP)
• Composing nested web processes using Hierarchical SMDP
• System architecture
• Experiment & Discussion
Composing Web Processes Using H-SMDP