Date post: | 28-Dec-2015 |
Category: |
Documents |
Upload: | dwain-blake |
View: | 216 times |
Download: | 0 times |
Configuration and Adaptation of Semantic Web
ProcessesKunal Verma
Ph.D. Thesis Defense (6/13/2006)LSDIS Lab, Dept of Computer Science, University of Georgia
Advisors: John A. Miller and Amit P. ShethAdvisory Committee: Budak Arpinar, Robert Bostrom, Ling Liu
Outline
• Motivation
• Dynamic Process Configuration
• Process Adaptation
• Empirical Evaluation
• Conclusions, Related Work and Future Agenda
Motivation• Evolution of business needs drives IT innovation
• Initial focus on automation led to workflow technology
• In order to facilitate efficient inter-organizational processes distributed computing paradigms were developed– CORBA, JMS, Web Services
• The current and future needs include:– Creating highly adaptive process that react to changing
conditions• Focus on real time events and data – RFID and ubiquitous devices
– Have the ability to quickly collaborate with new partners– Aligning business goals and IT processes
Motivation• Current Tools focus on allowing businesses to have greater
dynamism and agility– Microsoft Dynamics, IBM Websphere Business Integration, SAP
Netweaver• All of these Current focus on dynamic and agility through human
interaction using GUIs• All of them list SOA (WS) as a technology for realization
• The future– Move focus to greater automation
• Capture domain knowledge and declaratively specify criteria for process configuration (Dynamic process configuration)
• Add decision making support to process execution tools for process adaptation (Process Adaptation)
“Each enterprise will measure and aspire to its own unique level of dynamism based on its individual purpose. It is about being nimble and adaptable. A fully integrated business platform can respond faster, and completely, to change. Whether it involves fulfilling a new mandate or embracing a new market opportunity. Some organizations will push the envelope, automating event-triggered responses for highly integrated closed-loop processes, setting the stage for self-optimizing systems.”
Sandra Rogers, White Paper: Business Forces Driving Adoption of Service Oriented Architecture, Sponsored by: SAP AG
Web Services and Semantics• Web services deployment increasing in industry
– Standards based interoperability– Loosely coupled systems– Still based on manual integration
• Adding semantics can take us to the next level of automation– Use ontologies for shared understanding– Move towards semi-automated integration
Configuration and Adaptation – Roadmap
Semantic Web Enablers
Ontologies: Specification of
conceptualization. Mode of capturing concepts and their relationships, etc.
OWL: Ontology Web Language
SWRL: Semantic Web Rule Language
Annotation/Representation
WSDL-S/SAWSDL (02-06)
DiscoveryMapping WSDL-S into UDDI (02-04)
Constraint AnalysisSemantic Policies (04-06) and
Agreements (05-06)
Dynamic ExecutionService Manager
basedRuntime Binding (03-06)
WSDL
UDDI
WS-Policy, WS-Agreement
BPEL Engines (BPWS4J,
ActiveBPEL)
BPEL CompositionCreating abstract
BPEL Process (03-06)
Existing WS Standards/
Infrastructure
Semantic Web Services and
Processes
Process Adaptation
Dynamic Process Configuration
Configuration and Adaptation
Receive
Configure: Discover
VP1: getMBQuote
VP2: getRAMQuote
VP1: orderMB VP2:orderRAM
Configure: Analyze
Reply
Receive
Configure: Discover
VP1: getMBQuote
VP2: getRAMQuote
VP1: orderMB VP2:orderRAM
Configure: Analyze
Reply
1. Process Creation: Abstract process with virtual partner services and process constraints
2. Process Configuration: -Service discovery -Constraint analysis
3c. Adaptation: - Event based adaptation - Find a path from error state to goal state
Receive
Configure: Discover
VP1: getMBQuote
VP2: getRAMQuote
VP1: orderMB VP2:orderRAM
Configure: Analyze
Reply
3a. Executable Process: Virtual partners replaced by actual services
3b. Process Execution: Monitoring of processstates during execution
High Level Architecture
METEOR-S MIDDLEWARE
Workflow Engine(IBM BPWS4J)
Web Services
Discovery
Constraint Analysis
Configuration Module
Adaptation Module
MDP
Deployed Web Process
Configuration/Invocation Request Message
Configuration/Invocation Response Message
Eve
nt fr
om s
ervi
ce
Service invocation
Process and
Service Managers
Entities
Process Manager (PM): Responsible for global process configuration
Service Manager (SM): Responsible for interaction of process with service
Configuration Module (CM):Discovery and constraint analysis
Adaptation Module (AM): Process adaptation from exceptions/events
Motivating Scenario
• Consider a simplified supply chain process of a computer manufacturer– Most parts are multiple sourced (overseas and internal
suppliers)• Overseas goods cheaper but greater lead times
– There often exist part compatibility constraints• Choosing a certain motherboard restricts choices of RAMs,
processors– Must respect relationship with preferred suppliers
• Suppliers characterized as preferred or secondary– Sometimes important to maintain production schedule in
the presence of delayed orders
Dynamic Process Configuration
Dynamic Process ConfigurationDynamic configuration Problem
Find optimal partners for the process based on process constraints – cost, supply time, etc.
Conceptual Approach
1. Create framework to capture represent domain knowledge
2. Represent constraints on the domain knowledge
3. Ability to reason on the constraints and configure the process
Dynamic Process ConfigurationResearch Challenges
– Capturing functional and non-functional requirements of the Web process (Abstract process specification)
– Discovering service partners based on functional requirements (Semantic Web service discovery)
– Choosing optimal partners that satisfy non-functional requirements (Constraint Analysis)
K. Verma, R. Akkiraju, R. Goodwin, P. Doshi, J. Lee, On Accommodating Inter Service Dependencies in Web Process Flow, AAAI Spring Symposium on Semantic Web Services, 2004R. Aggarwal, K. Verma, J. A. Miller, Constraint Driven Composition in METEOR-S, SCC 2004.K. Verma, K.Gomadam, J. Miller and A. Sheth, Configuration and Execution of Dynamic Web Processes, LSDIS Lab Technical Report, 2005.
Abstract Process Specification
1. Specify process control flow by using virtual partners
2. Specify Process Constraints
3. Capture Functional Requirements of Services using Semantic Templates
Process Constraints
• Constraints can be specified on a partner, an activity or the process as a whole.
• An objective function can also be specified e.g., minimize cost and supply-time, etc.
• Two types of constraints:– Quantitative (Q) (Time < 5 sec)– Logical (L) (preferredPartner, Security, etc.)
Process Constraints
TrueSatisfyPartner 1PreferredSupplier(P1) (Logical)
TrueSatisfyProcessCompatible (P1, P2) (Logical)
Activity
Process
Process
Scope
Σ Dollars<200000SatisfyCost (Quantitative)
MAX Days< 7SatisfySupplytime (Quantitative)
Σ DollarsMinimizeCost (Quantitative)
AggregationUnitValueGoalFeature
Semantic TemplatesPIP
QueryOrderStatus (3A5)
CancelOrder (3A9)RequestPurchase
Order (3A4)
ReturnProduct (3C1)PurchaseOrderDetails
PurchaseOrderConfirmation
hasInput hasOutput
Part of Rosetta Net Ontology
Data SemanticsFunctional SemanticsNon-Functional Semantics
WSDL-S is used to capture semantic templates
• Semantic Templates capture the functionality of a Web service with the help of ontologies/other domain models
• Find a service that sells RAM in Athens, GA. It must allow the user to return and cancel, if needed
• The template can also have non-functional (QoS) requirements such as response time, security, etc.
Service Level Metadata (SLM)IndustryCategory = NAICS:ElectronicsProductCategory = DUNS:RAMLocation = Athens, GA
Operation 1 Action = Rosetta#RequestPurchaseOrderInput = Rosetta#PurchaseOrderRequestOutput = Rosetta#PurchaseConfirmationPolicy = {Encryption = RSA, ResponseTime < 5 sec}
SEMANTIC TEMPLATE
Operation 2 Action = Rosetta#CancelOrder…………..
…………<xs:element name= "processPurchaseOrderResponse" type="xs:stringwssem:modelReference="POOntology#OrderConfirmation"/></xs:schema></types><interface name="PurchaseOrder"><wssem:category name= “Electronics” taxonomyURI=http://www.naics.com/
taxonomyCode=”443112” />
<operation name=“order” pattern=wsdl:in-outmodelReference = "rosetta:#RequestPurchaseOrder" >
<input messageLabel = ”processPurchaseOrderRequest"element="tns:processPurchaseOrderRequest"/><output messageLabel ="processPurchaseOrderResponse"element="processPurchaseOrderResponse"/>
<!—Precondition and effect are added as extensible elements on an operation><wssem:precondition name="ExistingAcctPrecond"wssem:modelReference="POOntology#AccountExists"><wssem:effect name="ItemReservedEffect"wssem:modelReference="POOntology#ItemReserved"/></operation></interface>
WSDL-S Example
Rama Akkiraju, Joel Farrell, John Miller, Meenakshi Nagarajan, Amit Sheth, and Kunal Verma, Web Service Semantics, WSDL-S W3C Member Submission
K. Sivashanmugam, Kunal Verma, Amit Sheth, John A. Miller, Adding Semantic to Web Service Standards, ICWS 2003.
Semantic Discovery• Finds actual services matching semantic templates
• Implemented as a layer over UDDI [1]
• Current implementation based on ontological representation of operations, inputs and outputs.
• Returns ranked of services for each semantic template
• Builds upon following previous discovery implementations– Extends matching presented in [2] to consider operations and
service level metadata– Extends the approach presented “WSDL to UDDI Mapping” [3]
to support operation level discovery
[1] K. Verma, K. Sivashanmugam, A. Sheth, A. Patil, S. Oundhakar and John Miller, METEOR-S WSDI: A Scalable Infrastructure of Registries for Semantic Publication and Discovery of Web Services, JITM
[2] M. Paolucci, T. Kawamura, T. Payne and K. Sycara, Semantic Matching of Web Services Capabilities, ISWC 2002.2
[3] Using WSDL in a UDDI Registry, Version 2.0.2 - Technical Note, http://www.oasis-open.org/committees/uddi-spec/doc/tn/uddi-spec-tc-tn-wsdl-v202-20040631.pdf
Semantic Discovery
ILP Solver
SWRL Reasoner
PROCESS CONSTRAINTSQ: Cost <= $600000
Q: SupplyTime < 7 DaysL: Compat (RAM, MB)= True
L: Compat (PROC, MB)= TrueL: preferredSupplier(S1) = True
Min: Cost
ILP SOLVER RESULTS – Service Sets that satisfy all quantitative
constraints in increasing Cost order1. R1, M2, P1 Cost = $4000002. R4, M1, P3 Cost = $4100003. R4, M2,P3 Cost = $441000
SWRL REASONER RESULTS Service sets that satisfy both quantitative and non-quantitative
constraints1. R1, M2,P1 Cost = $4000002. R4, M1,P3 Cost = $410000
(REJECTED SET 3 as R4 not compatible with M2 and P3 not compatible with M2)
CONSTRAINT ANALYSIS MODULE
RAM Candidate Service 1 (R1)
Q: Cost = $45000Q: SupplyTime < 5 Days
.
.RAM Candidate Service 3
(R3)Q: Cost = $40000
Q: SupplyTime < 8 Days
RAM Candidate Service 4 (R4)
Q: Cost = $41000Q: Supply Time < 8 Days
MB Candidate Service 1 (M1)
Q: Cost = $110000Q: Supply Time < 7 Days
MB Candidate Service 2 (M2)
Q: Cost = $145000Q: Supply Time < 7 Days.
.
.MB Candidate Service 4
(M4)Q: Cost = $185000
Q: Supply Time <6 Days
Processor Candidate Service 1 (P1)
Q: Cost = $210000Q: Supply Time < 5 Days
.
.Processor Candidate Service
3 (P3)Q: Cost = $255000
Q: Supply Time < 8 Days
Processor Candidate Service 4 (P4)
Q: Cost = $228000Q: Supply Time < 5 Days
SEMANTIC TEMPLATES (ST1, ST2 and ST3) from
Abstract Process Specification
UDDI Registry with Semantic
Layer
DISCOVERY RESULTS – List of candidate service for each template
Constraint Analysis• Operations Research has been used in industry for business
process optimization
• For process configuration our approach seeks to combine domain knowledge in ontologies with a standard optimization technique
• Multi-paradigm proposed:– Integer Linear Programming for quantitative constraints– Semantic Web Rule Language and OWL for domain constraints
• Discovered Services first given to ILP solver– It returns ranked sets of services
• Then each set is checked for logical constraints using a SWRL reasoner– Sets not satisfying the criteria are rejected
Quantitative Constraint Analysis• Create a binary variable xij for each
candidate service.1 if candidate service j is chosen for activity i
0, otherwise {ij
,x
• Set up constraints for the number of services chosen for each activity. – N(i) is the number of candidate services of activity ‘i’ and M is the number of
activities.
11
1N( i )
i M ijj
( i ) x
Quantitative Constraint Analysis• Set the cost constraint on activity1
• Set the supply time constraint
1 1 7i M j N( i ) ij ij( i ) ( j ) SupplyTime( x ) x
• Set up the objective function
1 1M N( i )
ij iji jMinimize : cos t( x ) x
11 11 200000N( )
j jj cos t( x ) x
Configuration – Quantitative Constraint Analysis
ILP Solver
SWRL Reasoner
PROCESS CONSTRAINTSQ: Cost <= $600000
Q: SupplyTime < 7 DaysL: Compat (RAM, MB)= True
L: Compat (PROC, MB)= TrueL: preferredSupplier(S1) = True
Min: Cost
ILP SOLVER RESULTS – Service Sets that satisfy all quantitative
constraints in increasing Cost order1. R1, M2, P1 Cost = $4000002. R4, M1, P3 Cost = $4100003. R4, M2,P3 Cost = $441000
SWRL REASONER RESULTS Service sets that satisfy both quantitative and non-quantitative
constraints1. R1, M2,P1 Cost = $4000002. R4, M1,P3 Cost = $410000
(REJECTED SET 3 as R4 not compatible with M2 and P3 not compatible with M2)
CONSTRAINT ANALYSIS MODULE
RAM Candidate Service 1 (R1)
Q: Cost = $45000Q: SupplyTime < 5 Days
.
.RAM Candidate Service 3
(R3)Q: Cost = $40000
Q: SupplyTime < 8 Days
RAM Candidate Service 4 (R4)
Q: Cost = $41000Q: Supply Time < 8 Days
MB Candidate Service 1 (M1)
Q: Cost = $110000Q: Supply Time < 7 Days
MB Candidate Service 2 (M2)
Q: Cost = $145000Q: Supply Time < 7 Days.
.
.MB Candidate Service 4
(M4)Q: Cost = $185000
Q: Supply Time <6 Days
Processor Candidate Service 1 (P1)
Q: Cost = $210000Q: Supply Time < 5 Days
.
.Processor Candidate Service
3 (P3)Q: Cost = $255000
Q: Supply Time < 8 Days
Processor Candidate Service 4 (P4)
Q: Cost = $228000Q: Supply Time < 5 Days
SEMANTIC TEMPLATES (ST1, ST2 and ST3) from
Abstract Process Specification
UDDI Registry with Semantic
Layer
DISCOVERY RESULTS – List of candidate service for each template
Logical Constraint Analysis
• Use a SWRL reasoner to perform logical constraint analysis
• Domain knowledge is captured as ontologies
• Rules are created with the help of the knowledge in the ontology
• Implemented using IBM’s ABLE and SNOBASE– SNOBASE stores OWL ontologies using ABLE Rule Language
(ARL)– Our implementation is based on SWRL rules written in ARL
K. Verma, R. Akkiraju, R. Goodwin, Semantic Matching of Web Service Policies SDWP 2005 & Filed PatentN. Oldham, K. Verma, A. Sheth, Semantic WS-Agreement Based Partner Selection, WWW 2006
Domain Ontology
Supplier Part
MotherBoard
RAM
Supplies
worksWith
partnerStatus
R1
RAM1
Supplies
R5
M1
MB1
Supplies
M2
Supplies
worksWith
R4
M3
RAM2
Supplies
INSTANCES
SCHEMA
RAM Motherboard Processor
Works_withMB
Works_withCPU
Works_withCPU
RDRAM DDR2 RAM
ISAISA
Model: MR16Q162GDB0-CA2Memory_speed: 800 MHzVoltage: 2.5VRequires: dual_channel_motherboardUses: DIMMSStorage:512MB
Model: KVR533D2S4/256Memory_speed: 400 MHzVoltage:1.8 VRequires: dual_channel_motherboardUses: DIMMSStorage:512MB
Model: D875PBZCPU_Type: IntelPentium4FSB: 800 MHzType: dual_channel_motherboardRAM_Modules: DIMMSRAM_Speed:800/533/400
Model: Athlon ADA3800BVBOX Type: Athlon64FX2Clock_speed: 3.80 GhzCore_type: DualAdressing_size: 64 BitCache:1MBFSB: 800 MHz
Model: D865PERLCPU_Type: IntelPentium4FSB: 800 MHzType: dual_channel_motherboardRAM_Modules: RIMMSSupports_RAM_Speed:800/533/400
Model: Pentium 4 672Type: Pentium4Clock_speed: 3.80 GhzCore_Type: SingleAdressing_size: 32 BitCache:2MBFSB: 1200 MHz
Supplier
R1
Supplies
ISA
ISA
R3 R4
M1 M2 M4
P1 P4
Model: MR16R162GDF0-CM8Memory_speed: 800 MHzVoltage: 2.5VRequires: dual_channel_motherboardUses: RIMMSStorage:512MB
Model: A8N-SLICPU_Type: Athlon64FX/Athlon64X2FSB: 1066/800/533MHzType: dual_channel_motherboardRAM_Modules: DIMMSSupports_RAM_Speed:800/533/400
supplies
Part
Works_with
ISA
Domain Ontology – Detailed View
Rules• Supplier 1 should be a preferred supplier.
– “if S1 is a supplier and its supplier status is preferred then the S1 is a preferred supplier”.
Supplier (?S1) and partnerStatus (?S1, “preferred”) => preferredSupplier (?S1)
• Supplier 1 and supplier 2 should be compatible. – if S1 and S2 are suppliers and they supply parts P1 and P2, respectively, and
the parts work with each other, then suppliers S1 and S2 are compatible for parts P1 and P2.
Supplier (?S1) and supplies (?S1, ?P1) and Supplier (?S2) and supplies (?S2, ?P2) and worksWith (?P1, ?P2) => compatible (?S1, ?S2, ?P1, ?P2)
RAM (?P1) and MB (?P2) and worksWithMB (?P1, ?P2) =>worksWith (?P1, ?P2)
Using Rules to resolve Heterogeneities Manufacturer Process Constraint:Availability is greater than 95%
Supplier Policy:Mean Time to Recover equals 5 minutesMean Time between failures equals 15 hours
Rule: Availability = Mean Time Between Failures/(Mean Time Between Failures + Mean Time To Recover)
Availability equals 99.4%.
K. Verma, R. Akkiraju, R. Goodwin, Semantic Matching of Web Service Policies SDWP 2005 & Filed PatentN. Oldham, K. Verma, A. Sheth, Semantic WS-Agreement Based Partner Selection, WWW 2006
Configuration – Logical Constraint Analysis
ILP Solver
SWRL Reasoner
PROCESS CONSTRAINTSQ: Cost <= $600000
Q: SupplyTime < 7 DaysL: Compat (RAM, MB)= True
L: Compat (PROC, MB)= TrueL: preferredSupplier(S1) = True
Min: Cost
ILP SOLVER RESULTS – Service Sets that satisfy all quantitative
constraints in increasing Cost order1. R1, M2, P1 Cost = $4000002. R4, M1, P3 Cost = $4100003. R4, M2,P3 Cost = $441000
SWRL REASONER RESULTS Service sets that satisfy both quantitative and non-quantitative
constraints1. R1, M2,P1 Cost = $4000002. R4, M1,P3 Cost = $410000
(REJECTED SET 3 as R4 not compatible with M2 and P3 not compatible with M2)
CONSTRAINT ANALYSIS MODULE
RAM Candidate Service 1 (R1)
Q: Cost = $45000Q: SupplyTime < 5 Days
.
.RAM Candidate Service 3
(R3)Q: Cost = $40000
Q: SupplyTime < 8 Days
RAM Candidate Service 4 (R4)
Q: Cost = $41000Q: Supply Time < 8 Days
MB Candidate Service 1 (M1)
Q: Cost = $110000Q: Supply Time < 7 Days
MB Candidate Service 2 (M2)
Q: Cost = $145000Q: Supply Time < 7 Days.
.
.MB Candidate Service 4
(M4)Q: Cost = $185000
Q: Supply Time <6 Days
Processor Candidate Service 1 (P1)
Q: Cost = $210000Q: Supply Time < 5 Days
.
.Processor Candidate Service
3 (P3)Q: Cost = $255000
Q: Supply Time < 8 Days
Processor Candidate Service 4 (P4)
Q: Cost = $228000Q: Supply Time < 5 Days
SEMANTIC TEMPLATES (ST1, ST2 and ST3) from
Abstract Process Specification
UDDI Registry with Semantic
Layer
DISCOVERY RESULTS – List of candidate service for each template
Runtime Configuration Support
SM1
M1
SM2
M2
M3
P1
P2
P3
SM1
SM3
M2
P1
Binding phase
One to Many Binding phase
One to One Binding phase
Analyze process constraints and create
a set of optimal partners
Discover partners and Get quote from all
partners
Process execution with set of optimal partners
Receive
Configure: Discover
VP1: getMBQuote
VP2: getRAMQuote
VP1: orderMB VP2:orderRAM
Configure: Analyze
Reply
Phases
One to Many binding( Information gathering phase): Number of services bound to same service manager. Used for information gathering for constraint analysis
Binding (Constraint Analysis Phase): Constraint Analysis and binding optimal partner to each SM
One to One binding (Execution and adaptation phase): Normal process execution with optimal partner
Process Adaptation
Process Adaptation
• Ability to adapt the processes from failures, unexpected events
• Two kinds of failures– Failures of physical components like services, processes,
network• Can replace services using dynamic configuration
– Logical failures like violation of SLA constraints/Agreements such as Delay in delivery, partial fulfillment of order
• Need additional decision making capabilities
K. Verma, A. Sheth, Autonomic Web Processes, ICSOC 2005K. Verma, P. Doshi, K. Gomadam, A. Sheth, J. Miller, Optimal Adaptation of Web Processes with Coordination Constraints, ICWS 2006.
Process AdaptationAdaptation Problem
Optimally react to events like delays in ordered goods
Conceptual Approach
1. Maintain states of the process – normal states, error states, goal states
2. Capture costs while transitioning from anomalous states to goal state
3. Ability to decide optimal actions on the basis of state
Order
Wait for Delivery
Received
Order received
Delayed
Order delayed
Optimal to change supplier
Optimal to waitOrder
received
K. Verma, A. Sheth, Autonomic Web Processes, ICSOC 2005K. Verma, P. Doshi, K. Gomadam, A. Sheth, J. Miller, Optimal Adaptation of Web Processes with Coordination Constraints, ICWS 2006.
Process Adaptation• Research Challenges
– Creating a model to recover from failures and handle future events– Model must deal with two important factors
• Uncertainty about when a failure occurs• Cost based recovery
• Scenario– After order for MB and RAM are placed, they may get delayed– The manufacturer may have severe costs if assembly is halted. – It must evaluate whether it is cheaper to cancel/return and reorder or
take the penalty of delay– Caveat: possible that reordered goods may be delayed too
• Proposed Solution– Modeling decision making capabilities of Service Managers as Markov
Decision Processes (MDPs)
Modeling Decision Making Process of Service Managers using MDPsEach Service Manager is controlled by a MDPSM-MDP = <S, A, PA, T, C, OC> , where
• S is the set of local states of the service manager.
• A is the set of actions of the service manager. The actions include invoking Web service operations and calling the configuration manager.
• PA : S → A is a function that gives the permissible actions of the service manager from a particular state.
• T : S × A × S → [0, 1] is the local Markovian transition function. The transition function gives the probability of ending in a state j by performing action a in state i.
• C : S × A → R is the function that gives the cost of performing an action from some state of the service manager.
• OC is the optimality criterion. We minimize the expected cost over a finite number of steps, N, also called the horizon.
Policy Computation• The optimal action at each state is represented using a
policy. • In order to compute the policy, a value is associated to
each state. – The value represents long term expected cost of performing
the optimal action from that state and is calculated the following dynamic programming equation.
n na PA( s )
pi ( s ) arg min Q ( s,a )
1
n na PA( s )
n ns'
V ( s ) min Q ( s,a )
Q ( s,a ) C( s,a ) T( s' | s,a )V ( s')
The policy pi : S × N → R is then computed as:
N is the number of steps to go and Gamma is the discount factorAlgorithm developed by Bellman in 57
Generating States using preconditions and effects
Operation: Order
Pre: Ordered = False
Post: Ordered = True
Operation: Cancel
Pre: Ordered = True & Received = false
Post: Canceled=True & Ordered = false
Operation: Return
Pre: Ordered = True & Received = True
Post :Returned = True & Ordered = false and
Received = false
Event: Delayed
Pre: Ordered = True & Received = false
Post: Delayed=True & Ordered = True
Event: Received
Pre: Ordered = True & Received = false
Post: Received = True
Actions Events Flags
Ordered
Received
Delayed
Cancelled
Returned
Use an algorithm similar to reachability analysis to generate states
Not possible to generate without preconditions and effects
Generated State Transition Diagram
<OC R Del Rec
<OC R Del Rec
<OC R Del Rec
<OC R Del Rec
<OC R Del Rec
<OC R Del Rec
<OC R Del Rec
<OC R Del Rec
State No.
Values of Boolean variables
Explanation
1 Ordered
2 Ordered and Canceled
3 Ordered and Delayed
4 Ordered, Received and Returned
5 Ordered, Delayed and Cancelled
6 Ordered, Delayed, Received and Returned
7 Ordered, Delayed and Received
8 Ordered and Received
s2
s3
s6 s7
s8
s4
s5
W
W
WW
O
R
Rec
Del
Rec
C
O
C
R
OO
s1
DFA = { S, s1, F, T, A}
Costs and Probabilities
• Costs of ordering taken from configuration module– From first two service sets
• Optimal supplier and alternate supplier
• Probability of delay and cost of returning and canceling taken from supplier policy– Can be represented using WS-Policy or WS-
Agreement
Supplier Policy– The supplier gives a probability of 55% for delivering the
goods on time.– The manufacturer can cancel or return goods at any
time based on the terms given below.• If the order is delayed because of the supplier, the order
can be cancelled with a 5% penalty to the manufacturer.• If the order has not been delayed, but it has not been
delivered yet, it can be cancelled with a penalty of 15% to the manufacturer.
• If the order has been received after a delay, it can be returned with a penalty of 10% to the manufacturer.
• If the order has been received without a delay, it can be returned with a penalty of 20% to the manufacturer.
Costs and Probabilities
Current State Action Next State Cost
<O CR Del Rec NOP <O CR Del Rec 0
<O CR Del Rec CANCEL <O CR Del Rec 150
<O CR Del Rec DEL <O C R Del Rec 0
<O CR Del Rec RECEIVE <O C R Del Rec 0
<O CR Del Rec ORDER <O CR Del Rec 100
<O C R Del Rec NOP <O C R Del Rec DelayCost = {200, 300, 400}
<O C R Del Rec CANCEL <O C R Del Rec 50
<O C R Del Rec RECEIVE <O C R Del Rec 0
<O CR Del Rec ORDER <O CR Del Rec 100
<O C R Del Rec ORDER <O CR Del Rec 100
<O C R Del Rec ORDER <O CR Del Rec 100
<O C R Del Rec CANCEL <O C R Del Rec 150
<O C R Del Rec NOP <O C R Del Rec 0
<O C R Del Rec RETURN <O CR Del Rec 200
<O C R Del Rec NOP <O C R Del Rec 0
s2
s3
s6 s7
s8
s4
s5
W
W
WW
O
R
Rec
Del
Rec
C
O
C
R
OO
0.45
0.35
0.85
s1
Handling Inter-Service dependencies• Since the RAM and Motherboard must be
compatible, the actions of service managers (SMs) must be coordinated
• For example, if MB delivery is delayed, and MB SM wants to cancel order and change supplier, the RAM SM must do the same
• Hence, coordination must be introduced in SM-MDPs
Centralized Approach• State space created by Cartesian product of transition
diagrams
• Joint actions from each state
• Transition probability created by multiplying states
• Costs created by adding cost per action from each state– Compatible actions given rewards– Incompatible actions given penalties
• Optimal but exponential with number of manager
Decentralized Approach
• Simple coordination mechanism
• If one service manager changes suppliers– All dependent managers must change
suppliers
• Low complexity but sub-optimal
Hybrid Approach• If the policy of some SM dictates it to change suppliers, the
following actions happen:– it sends a coordinate request to PM – PM gets the current cost of changing suppliers or current
optimal action by polling all SMs
• It takes the cheapest action (change supplier or continue)
• A bit like decentralized voting- will change suppliers if majority are delayed
• It mirrors performance of centralized approach and has complexity like the decentralized approach
Dynamic and Adaptive Processes in Healthcare
Figure and Table from a joint Amit Sheth, Prashant Doshi publication
Relevant Event Type Effects on the Pathway
1.Adverse drug reaction Stop drug therapy or reduce dosage
1.Sudden worsening of symptoms Increase dosage or modify pathway by initiating new therapy
1.New drug alert Prescribe the drug for the appropriate activity
1. Newly discovered drug-drug interaction
Add new dependency in the pathway
1.New co-morbidity Possibly modify the pathway or drug prescriptions
AM
Empirical Evaluation
Evaluating Dynamic Configuration• Evaluation with help of the supply chain
scenario
• Use the variations in currency exchange rates of China and Taiwan as the primary factor affecting supplier prices
• Assume that process is dynamically configured every fortnight
Observations
• Static binding – Configured at the first run and same partners are
persisted with for all subsequent runs– Cost changes due to variations in currency
• Dynamic binding– Dynamically configured with latest prices for all runs– With just ILP (Dynamic1) Always the lowest cost, logical
constraints not guaranteed– With ILP and SWRL (Dynamic2) Lowest cost for partners
satisfying all constraints
Results – Process Configuration
800
900
1000
1100
Jan
FebM
ar AprM
ay Jun Ju
lAug Sep O
ct
Month of configuring process
Pro
cess
co
st p
er u
nit
(in
$)
Static Process
Dynamic1 Process -only ILP
Dynamic2 Process -both ILP and SWRL
15.2%
2.73%
7.1%
Average Cost
Difference: 9.32%
Evaluating Process Adaptation• Evaluation with the help of the supply chain
scenario
• Two main parameters used for the evaluation– Probability of Delay – (probability that an item ordered
from a supplier will be delayed)– Penalty of Delay – (cost for the manufacturer for not
reacting to delay)
• Total process cost = $1000 and cost of changing suppliers (CS) =$200
Cost of Waiting = 200
900
1300
1700
2100
2500
0.1 0.2 0.3 0.4 0.5 0.6 0.7
Probability of delay
Ave
rag
e C
ost
M-MDP
Random
Hyb. MDP
MDP-CoM
Evaluating Adaptation
KEY
M-MDP: Centralized
Random: Random process (changes suppliers for 50% of delays)
Hyb. Com: Hybrid
MDP-Com: Decentralized
Evaluating Adaptation
Cost of Waiting = 300
900
1300
1700
2100
2500
0.1 0.2 0.3 0.4 0.5 0.6 0.7
Probability of delay
Ave
rag
e C
ost
M-MDP
Random
Hyb. MDP
MDP-CoM
Evaluating Adaptation
Cost of Waiting = 400
900
1300
1700
2100
2500
0.1 0.2 0.3 0.4 0.5 0.6 0.7
Probability of delay
Ave
rag
e C
ost
M-MDP
Random
Hyb. MDP
MDP-CoM
Observations
• Results
– For Penalty = 200 (cost of CS = cost of delay), MDP always waits
– For Penalty = 300, 400 (cost of CS < cost of delay), MDP changes at lower prob., waits at higher prob.
• Conclusions
– Thus MDP makes intelligent decisions and outperforms random process that changes suppliers 50% of the time it is delayed
– Centralized MDP performs the best, followed by Hybrid MDP
Evaluating Adaptation with Extended Scenario• In previous model length of delay was not
considered• Three delay events instead of 1
– Del1 (0-7 days)– Del2 (7-21 days)– Del3 (21 days and more)
• Adaptation graph exhibits exactly the same behavior
Evaluating Adaptation with Extended Scenario
Delay Penalty = 300 Dollars (Extended Scenario)
1000
1100
1200
1300
1400
1500
1600
1700
1 2 3 4 5 6 7
Probability of delay
Ave
rag
e C
ost
Centralized MDP
Random
Hybrid MDP
Dentralized MDP
Testing Adaptation with Configuration• Process executed in two modes
– Configuration with random adaptation– Configuration with Hybrid MDP based
adaptation
• Tested across different probabilities
• MDP based adaptation outperforms random adaptation
Testing Adaptation with Configuration
Configuration with Adaptation
0
200
400
600
800
1000
0.1 0.2 0.3 0.4 0.5 0.6 0.7
Delay Probability
Co
st (
$)
Dynamic ProcessAverage Cost
Random Adaptation
MDP based adaptation
Static Process Cost
Static Process withRandom adaptation
Static Process with MDPbased adaptation
Architecture
METEOR-S Middleware
Axis 2.0 Based Architecture
Configuration Architecture
Adaptation Architecture
Conclusions, Related Work and Future Agenda
Summary - Dynamic Process Configuration• Showed how domain knowledge in ontologies can
be used with ILP for configuration
• Multi-paradigm approach for constraint analysis to handle broader set of constraints
• In business and scientific processes, configuration is an important problem– Especially in WS based systems where businesses are
seeking to create dynamic processes– This thesis is the first comprehensive work in this area.
Summary - Adaptation• Showed the utility of Markov Decision Processes for optimal
adaptation of Web processes
– Adaptation is need to handle logical failures and events
– Whether to adapt or not depends on the cost of the failure• For this evaluation it was the cost of the delay
• In the real world things often go wrong or not as expected– Earlier processes were static or real time events were not
available as easily– Many researchers/industry vendors seeking to create adaptive
business process frameworks– This is one of the first works that provides cost based
adaptation
Related Work• Semantic Web Services
– OWL-S, WSMO, FLOWS
• Quality driven composition [1]– Uses ILP for optimizing processes– Our work uses a multi-paradigm approach to considering a broader set of
constraints
• Support in Websphere [2] and Oracle BPEL Engine for runtime binding.– Based on replacing services with same interfaces. Service selection is not the
focus– Our focus is on finding optimal services based on process constraints
• Automated workflow composition– Plethora of work based on automatically generating processes based on high
level goals. [3]– Our focus is on configuring pre-existing processes.
[1] L. Zeng, B. Benatallah, M. Dumas, J. Kalagnanam, Q. Sheng: Quality driven Web services composition, WWW 2003
[2] Dynamic service binding with WebSphere Process Choreographer, http://www-128.ibm.com/developerworks/webservices/library/ws-dbind/
[3] J. Rao and X. Su. "A Survey of Automated Web Service Composition Methods". SWSWPC 2004.
Related work• Focus on correctness of changes to control flow structure
– Adept[1], Workflow inheritance [2], METEOR
• Use of ECA rules [3] to automatically make changes
• Change of service providers based on migration rules in E-Flow [4]
• We extend previous work in this area by using:– Cost based adaptation – Coordination Constraints across services
[1] M. Reichert and P. Dadam. Adeptflex-supporting dynamic changes of workflows without losing control. Journal of Intelligent Information Systems, 10(2):93–129, 1998[2] W. van der Aalst and T. Basten. Inheritance of workflows: an approach to tackling problems related to change. Theoretical Computer Science, 270(1-2):125–203, 2002.[3] R. Muller, U. Greiner, and E. Rahm. Agentwork: a workflow system supporting rule-based workflow adaptation. Journal of Data and Knowledge Engineering, 51(2):223–256, 2004.[4] Fabio Casati, Ski Ilnicki, Li-jie Jin, Vasudev Krishnamoorthy, Ming-Chien Shan: Adaptive and Dynamic Service Composition in eFlow. CAiSE 2000: 13-31
Future Work
• To apply this framework to more business and scientific problems
• Study impact of ubiquitous computing (especially event generation) on dynamic process configuration
• Move towards autonomic Web processes
Publications• Dynamic Process Configuration
– K. Verma, R. Akkiraju, R. Goodwin, P. Doshi, J. Lee, On Accommodating Inter Service Dependencies in Web Process Flow Composition, Proceedings of the AAAI Spring Symposium on Semantic Web Services, March, 2004, pp. 37-43
– R. Aggarwal, K. Verma, J. A. Miller, Constraint Driven Composition in METEOR-S, SCC 2004.
– K. Verma, K.Gomadam, J. Miller and A. Sheth, Configuration and Execution of Dynamic Web Processes, LSDIS Lab Technical Report, 2005.
• Adaptation– K. Verma, A. Sheth, Autonomic Web Processes, ICSOC 2005– K. Verma, P. Doshi, K. Gomadam, A. Sheth, J. Miller, Optimal Adaptation of Web
Processes with Co-ordination Constraints, ICWS 2006.
• Semantic Policy/SLA Representation and Matching– K. Verma, R. Akkiraju, R. Goodwin, Semantic Matching of Web Service Policies
SDWP 2005 & Filed Patent– N. Oldham, K. Verma, A. Sheth, Semantic WS-Agreement Based Partner
Selection, WWW 2006 (nominated for best student paper)
Publications
• Semantic Web Service Discovery– K. Verma, K. Sivashanmugam, A. Sheth, A. Patil, S. Oundhakar and John Miller,
METEOR-S WSDI: A Scalable Infrastructure of Registries for Semantic Publication and Discovery of Web Services, JITM
– K. Sivashanmugam, K. Verma, A. Sheth, Discovery of Web Services in a Federated Registry Environment, ICWS04
• Semantic Annotation/Representation– Rama Akkiraju, Joel Farrell, John Miller, Meenakshi Nagarajan, Amit Sheth, and
Kunal Verma, Web Service Semantics, WSDL-S W3C Member Submission– K. Sivashanmugam, Kunal Verma, Amit Sheth, John A. Miller, Adding Semantic to
Web Service Standards, ICWS 2003.
• Semantic Web Composition– K. Sivashanmugam, J. Miller, A. Sheth, and K. Verma, Framework for Semantic
Web Process Composition, International Journal of Electronic Commerce, Winter 2004-5, Vol. 9(2) pp. 71-106
Backup Slides
Semantics for Web Services and Processes • Functional and Data Semantics
– Service (WSDL-S)[1]
• Non-Functional Semantics– Policies (Define tags to capture semantic
information 2])• Business Level Policies, Process Level Policies,
Instance Level Policies Individual Component Level Policy
– Agreements (SWAPS) [3]
• Execution Semantics– State Transitions based on exceptions/failures – Process (BPEL + Semantic Templates) [4]
• Ontologies– Domain Specific Ontologies – RosettaNet,
SUMO Finance– Domain Independent/Upper Ontologies
[1] Web Service Semantics – WSDL-S, W3C Member Submission., http://www.w3.org/Submission/WSDL-S/
[2] K. Verma, R. Akkiraju, R. Goodwin, Semantic matching of Web service policies, SDWP, 2005
[3] N. Oldham, K. Verma, A. Sheth, Semantic WS-Agreement Partner, WWW 2006
[4] K. Sivashanmugam, J. Miller, A. Sheth, and K. Verma, Framework for Semantic Web Process Composition, IJEC, 2004
Timing Overheads
• Comparison of overheads due to dynamic process configuration
• Static Binding: BPEL process with pre-defined partners run on BPWS4J engine
•Dynamic Binding: Run using Axis 2.0 based architecture and BPWS4J engine
0
200
400
600
800
1000
No Configuration. Static Binding Configuration w ith Discovery
Tim
e (m
s)
Process Execution Time Discovery Constraint Analysis
Convergence of Value Function
Marginalizing events
Hybrid Approach
State Generation AlgorithmAlgorithm: Generate States (s0) Start with initial state s0 // e.g. (ordered=false) Add s0 to a set S While s( s S ) and s is unmarked //states While Aa( a )& s satisfies pre( a ) //actions create ns by applying effect(a) to s if ( ns S ) Add ns to set S Create edge from s to ns end if end while //actions While Ee( e )& s satisfies pre( e ) //effects create ns by applying effect(e) to s if ( ns S ) Add ns to set S Create edge from s to ns end if end while //effects mark s as visited End while //states
Use of ontologies enables shared understanding between the service provider and service requestor
Semantic Publication and Template Based Discovery
WSDL
<Operation>
<Input1>
<Output1>
Service Template
Operation:buyTicket
Input1:TravelDetails
Output1:Confirmation
Annotations
Publish
Search
UDDI
Class
TravelServices
Class
DataClass
Operations
subClassOf subClassOf
subClassOfsubClassOf subClassOf subClassOf
ClassTicket
Information
ClassTicket
Booking
ClassTicket
Cancellation
ClassConfirmation
Message
Operation:cancelTicket
Input1:TravelDetails
Output1:Confirmation
For simplicity of depicting, the ontology is shown with classes for both operation and dataAdding Semantics to Web Services Standards
Syntactic, QoS, and Semantic (Functional & Data) Similarity
Name,Description,
….
Name,Description,
….
Name,Description,
…
Name,Description,
…
XY
ABC
Web Service Web Service
Similarity ?
A2A2A1A1Calendar-Date
…
…
Event
…
Similarity ?
Web Service Web Service
Functional & Data Similarity
Functional & Data Similarity
]1..0[, and
],1..0[).,.().,.(
),(
21
21
21
sdSOsdSTSynDSsnSOsnSTSynNS
SOSTtySynSimilar
3 ),,(QoSdimD*),,(QoSdimD*),,(QoSdimD
),ty(OpSimilari
yreliabilitSOSTcostSOSTtimeSOST
SOST
SyntacticSimilaritySyntacticSimilarity
PurchasePurchaseBuyBuy
XY
ABC
QoS QoS
Web Service Web Service
Similarity ?
QoSSimilarity
QoSSimilarity
Web ServiceDiscovery
Web ServiceDiscovery
Area
Coordinates
Forrest
{name}
{x, y}
Information Function
Get Information Get Date
METEOR-S Web Service Discovery Infrastructure (MWSDI)• MWSDI deals with adding semantics to
UDDI registries• Provides transparent access to UDDI
registries based on their domain or federation
• Implementation of UDDI Best Practices and Semantic Discovery
1 http://lsdis.cs.uga.edu/Projects/METEOR-S
Extended Registries Ontologies (XTRO)• Provides a multi-
faceted view of all registries in MWSDI – Federations– Domains– Registries
subDomainOf
supports
belongsTo
consistsOf
belongsToFederation
Ontology
Registry
Domain
RegistryFederation
Variations in Chinese and Taiwanese Currency
Source for graphs and data: www.x-rates.com
Generated State Transition Diagram
DFA = { S, s1, F, T, A}
S = set of states
s1 = start state
F = set of final states
T = Transition Function T : S × A → S
A = Finite set of actions and events