Haley: A Hierarchical Framework for Logical Composition of Web Services
description
Transcript of Haley: A Hierarchical Framework for Logical Composition of Web Services
Haley: A Hierarchical Framework for Logical
Composition of Web Services
Haibo Zhao, Prashant DoshiLSDIS Lab, Dept. of Computer Science,
University of Georgia
IEEE International Conference on Web Services 2007
Outline Introduction
Motivating scenario
Background
Model: First order Semi-Markov decision processes (FO-SMDP)
Composing nested Web processes using Haley
Architecture
Experiment & Discussion
Introduction Web service composition
Business processes with Web services as components
Existing approaches to composition: AI planning Classical planning techniques
Golog, Model checking-based planning, HTN planning, Synthy Decision-theoretic planning
MDP (Doshi2004)
Limitations Classical planning assumes deterministic behavior of Web services Guarantee correctness but not optimality State space explosion Cannot operate directly on WS descriptions in FOL
Our Approach: HaleyStochastic SMDP model
Handle uncertainties in WS invocation Provide cost-based optimality
Hierarchical model to represent the hierarchies in Web processes Address the scalability problem
FOL based representation Directly operate on WS description in FOL
Handling Orders in Supply ChainLevel 1: Composition using composite FO-SMDP
Abstract action
Level 0: Composition using primitive FO-SMDP
Level 0: Composition using primitive FO-SMDP
Abstract action
Background: Probabilistic Situation Calculus [Reiter01] A FOL based framework for representing actions, changes and
reasoning about them
Probabilistic Situation calculus elementsActions: parameterirzed FO termsReceiveOrder(o)
Situations: sequence of actions representing the state of the world do(ReceiveOrder(o),s0)
Fluents: situation-dependent relations and functions whose truth values may vary HaveOrder(o, s)
Nature’s Choices: capture stochastic results of actionsChoice(CheckCustomer(o), a) ≡ a = CheckCustomerS(o) ∨ a = CheckCustomerF(o)
Probabalities for nature’s choices:Pr(CheckCustomerS(o),CheckCustomer(o), s) = 0.9Pr(CheckCustomerF(o),CheckCustomer(o), s) = 0.1
Precondition Axioms:HaveOrder(o, s) ⇒ Poss(CheckCustomer(o), s)
Successor state Axioms: Describe the effects on fluentsPoss(a, s) ⇒HaveOrder(o, do(a, s)) ⇔ a = ReceiveOrderS(o) ∨ (HaveOrder(a, s) ∧ a ≠CancelOrderS(o))
First Order MDP(FO-MDP) [Boutilier 01]
Probabilistic situation calculus representation allows concise specification of complex domains
Specify lump sum reward/cost and utilities with case notationkCase(A(x)) = case[ A(x) = CheckCustomer(o), 2; A(x)= VerifyPayment(o), 3; A(x) = ChargeMoney(o),2 ]
Avoid explicit state and action enumeration
A decision-theoretic regression algorithm for solving FO-MDPs
First Order Semi-MDPs (FO-SMDP) FO-SMDP is a temporal generalization of FO-MDPs:
The sojourn time of actions are modeled with a density function; and the system will incur an action-duration cost at an accumulating rate
Case notation of sojourn time distribution
Case notation of accumulating rate
Total reward of a state-action pair
Representing total reward and utilities with case notation, FO-SMDP can be solved analogously to FO-MDP using DT regression
Level 1: Composition using composite FO-SMDP
Abstract action
Abstract action
Level 0: Composition using primitive FO-SMDP
Level 0: Composition using primitive FO-SMDP
Elicitation of Model Parameters (level 0)
Level 0: Model parameters may be obtained from WSDL-S/SAWSDL, OWL-S descriptions of Web services, and service level agreements
Compile situation calculus axioms from preconditions and effects
e.g. WS: ChargeMoney(o)Precondition: V alidCustomer(o) AND V alidPayment(o)Effect: Charged(o)
The precondition axiom:ValidCustomer(o, s) ∧ V alidPayment(o, s) ⇒ Poss(ChargeMoney(o), s)
The successor state axiom:Poss(a, s) ⇒ Charged(o, do(a, s)) ⇔ a=ChargeMoneyS(o)∨Charged(o, s)
Elicit non-functional parameters from service level agreement:
Deriving Model Parameters for Abstract Actions (level≥1)Level ≥1: Derive model parameters related to abstract actions from
lower level Web process
We need to know successor state axioms and the case notations of lump sum cost, sojourn time distribution and accumulating rate
Deriving Model Parameters for Abstract Actions Successor state axioms
– Let
– We have
And
– The successor state axiom of VerifyOrder(o) becomes:
Relation between high-level fluents and low-level fluents
Relation between high-level abstract actions and low-level actions
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
– Add a new case into the case notation of K
kVO = kCase(CheckCustomer(o)) + kCase(VerifyPayment(o)) + kCase(ChargeMoney(o))
)K(a )K(a )K(a ) a K( CMVPCCvo
New case to be added
Deriving Model Parameters for Abstract Actions
Sojourn time distribution F – Assume the sojourn time of all primitive actions follows
Gaussian distribution: fCC(t)=N(t; µcc, σcc), fvo(t)=N(t; µvo, σvo) and fcm(t)=N(t; µcm, σcm)
– Linear combination of Gaussian distributions is a Gaussian distribution, the abstract action VerifyOrder also follows Gaussian fvo(t)=N(t; µvo, σvo) where:
– Add a new case into the case notation of F
cmvpccvo 222cmvpccvo
New case to be added
Deriving Model Parameters for Abstract Actions
Cost Accumulating Rate C – Accumulated cost of an abstract action is the total accumulated cost of
all corresponding primitive actions
– Add a new case into case notation of C
Given model parameters for abstract actions, composite FO-SMDP can be solved analogously to a primitive FO-SMDP
Architecture of Haley
Interleaved Generation and Execution of Nested Web Process
If the action is a primitiveaction
Yes
While the goal state can not be entailed by the KB
Query KB for the current state of the process
Get the optimal action based on the policy
Invoke the corresponding Web service
Recursively invoke a- low level BPEL process
Recursively call this algorithm
-for the low level Web process
No
Update KB with the effects
Performance Evaluation−Comparison with HTN planning and MBP planning on supply chain scenario
−Execute the processes generated by three approaches in a simulated environment 1000 times, measure average rewards
The performance of HTN approaches ours as the environment becomes less uncertain; Haley provides cost based optimization compared to MBP planner
Performance EvaluationComparisons of different decision theoretic planners in the same domain and the collected runtimes
Hierarchal decomposition significantly improves the performance
First order representation avoids the explicit state enumeration
Discussion• Many AI planning based approaches
AI classical planning is not designed to handle WS composition Assumes deterministic behavior of Web services Cannot directly operate on WS descriptions in FOL Does not scale well to large problems
• Haley: our hierarchical framework Stochastic optimization manages uncertainty and delivers
optimality Able to operate directly on WS descriptions in FOL Exploits hierarchy scalability Better performance in uncertain environments
• Future work Incorporate data mediation in Haley