Haibo_ICWS07 - THINC Lab at UGA

IEEE International Conference on Web Services 2007
Haley: A Hierarchical Framework for
Logical Composition of Web Services
Haibo Zhao, Prashant Doshi
LSDIS Lab, Dept. of Computer Science,
University of Georgia
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: Haley
Stochastic 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 Chain
Level 1:
Composition using
composite FO-SMDP
Level 0:
Abstract
action
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 elements
Actions: parameterirzed FO terms
ReceiveOrder(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 actions
Choice(CheckCustomer(o), a) ≡ a = CheckCustomerS(o) ∨ a = CheckCustomerF(o)
Probabalities for nature’s choices:
Pr(CheckCustomerS(o),CheckCustomer(o), s) = 0.9
Pr(CheckCustomerF(o),CheckCustomer(o), s) = 0.1
Precondition Axioms:
HaveOrder(o, s) ⇒ Poss(CheckCustomer(o), s)
Successor state Axioms: Describe the effects on fluents
Poss(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 notation
kCase(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
Level 0:
Composition using
primitive FO-SMDP
Level 0:
Composition using
primitive FO-SMDP
Abstract
action
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
Relation between high-level
fluents and low-level fluents
And
Relation between high-level abstract
actions and low-level actions
– The successor state axiom of VerifyOrder(o) becomes:
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 vo )  K(a CC )  K(a VP )  K(a CM )
– Add a new case into the case notation of K
kVO = kCase(CheckCustomer(o)) +
kCase(VerifyPayment(o)) + kCase(ChargeMoney(o))
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:
 vo   cc   vp   cm
2
 vo   cc2   vp2   cm
– Add a new case into the case notation of F
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
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 Evaluation
Comparisons of different decision theoretic planners in the same
domain and the collected runtimes
 First order representation avoids the explicit state enumeration
 Hierarchal decomposition significantly improves the performance
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
Thank You!
Questions?
Contact us
Haibo Zhao: [email protected]
Prashant Doshi: [email protected]