Upload
achille-peternier
View
421
Download
2
Tags:
Embed Size (px)
DESCRIPTION
SOSOA talk presented at ICWS 2011.
Citation preview
Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service
Composition
Authors:Immanuel Trummer, Boi Faltings
Presentation Plan
1. Introduction to Quality-Driven Service Composition
2. Tradeoff between Composition Effort and Solution Quality
3. Algorithm for Automatically Tuning Composition Effort
4. Experimental Evaluation5. Conclusion
INTRODUCTION TO QUALITY-DRIVEN SERVICE COMPOSITION
Problem of Quality-Driven Service Composition
Compression WSMerging WS
Transcoding WS
Translation WS
Video
Text
Candidates:- S1,1- S1,2
…
Candidates:- S2,1- S2,2
…
Candidates:- S3,1- S3,2
…
Candidates:- S4,1- S4,2
…
Example: «Web Services Selection for Distributed Composition of Multimedia Content», Wagner & Kellerer, 2004
Invocation-Cost: 0.15$Response Time: 0.4 sec
Problem of Quality-Driven Service Composition
Compression WSMerging WS
Transcoding WS
Translation WS
Video
Text
Candidates:- S1,1- S1,2
…
Candidates:- S2,1- S2,2
…
Candidates:- S3,1- S3,2
…
Candidates:- S4,1- S4,2
…
Example: «Web Services Selection for Distributed Composition of Multimedia Content», Wagner & Kellerer, 2004
Goal:- Cost < x $ per invocation- Minimize response time
Process in Quality-Driven Service Composition
Discovery Optimization Execution
Composition Phase
TRADEOFF BETWEEN COMPOSITION EFFORT AND SOLUTION QUALITY
Tradeoff: Composition Effort vs. Solution Quality
Composition Effort
Quality of the SolutionTradeof
fAdapt Dynamically!
High-Priority Workflows
Optimize
Heavy load on Middleware
Optimize
Tradeoff: Composition Effort vs. Solution Quality
Composition Effort
Quality of the Solution
Tradeoff: Composition Effort vs. Solution Quality
Composition Effort- Discovery Cost- Optimization Cost
Quality of the Solution- Execution Cost+ CE
+ CO
CD
C=
Tradeoff: Composition Effort vs. Solution Quality
Composition Effort- Discovery Cost- Optimization Cost
Quality of the Solution- Execution Cost+ CE
+ CO
CD
C=
Parameter: #Downloaded Services per
Task
Dependency: Cost and #Services
#Services
Cost
CD
CO
Dependency: Cost and #Services
#Services
Cost
CD
CO
CE
Dependency: Cost and #Services
#Services
Cost
CD
CO
CE
C
Minimum Cost
Where?
ALGORITHM FOR AUTOMATICALLY TUNING COMPOSITION EFFORT
Sketch of Iterative Algorithm
Discovery next k services/task
OptimizationWithin
current search spaceExecution?
Condition for Next Iteration?
Round i:∆CD,i
∆CO,i ∆CE,i
Relation between Cost for Last Round and Cost for New Round
?
?
?
Relation:∆CD,i
∆CO,i
∆CE,i
∆CD,i+1
∆CO,i+1
∆CE,i+1
Relation between Cost for Last Round and Cost for New Round
=
?
?
Relation:∆CD,i
∆CO,i
∆CE,i
∆CD,i+1
∆CO,i+1
∆CE,i+1
Growth of Search Space for Optimization
Search Space Round i+1
Search Space Round i
Growth of Search Space for Optimization
Search Space Round i+1
Search Space Round i
Explored by Inefficient Method in Round i+1
Growth of Search Space for Optimization
Search Space Round i+1
Search Space Round i
Explored by Efficient Method in Round i+1
Growth of Search Space for Optimization (Cont.)
• Search Space Size in round i:
• Search Space Size in round i+1:
• Size of newly added search space:
(𝑖∗𝑘)𝑡
((𝑖+1)∗𝑘)𝑡
𝑘𝑡( (𝑖+1 )𝑡−𝑖𝑡 )
Size of newly added search space grows from round to round
t : number of tasksk: new services per task and iteration
Relation between Cost for Last Round and Cost for New Round
=
?
?
Relation:∆CD,i
∆CO,i
∆CE,i
∆CD,i+1
∆CO,i+1
∆CE,i+1
Relation between Cost for Last Round and Cost for New Round
=
≤
?
Relation:∆CD,i
∆CO,i
∆CE,i
∆CD,i+1
∆CO,i+1
∆CE,i+1
Ratio between Size of New and Old Search Space
𝑆𝑖𝑧𝑒𝑜𝑓 h𝑆𝑒𝑎𝑟𝑐 𝑆𝑝𝑎𝑐𝑒𝑖𝑛𝑟𝑜𝑢𝑛𝑑𝑖+1𝑆𝑖𝑧𝑒𝑜𝑓 h𝑆𝑒𝑎𝑟𝑐 𝑆𝑝𝑎𝑐𝑒 𝑖𝑛𝑟𝑜𝑢𝑛𝑑𝑖
=((𝑖+1)∗𝑘)𝑡
(𝑖∗𝑘)𝑡
Ratio diminishes, big improvements unlikely at some point
Diminishing Returns
#Iterations
Cost
CE
∆𝐶𝐸 ,𝑖
∆𝐶𝐸 ,𝑖+1
Relation between Cost for Last Round and Cost for New Round
=
≤
?
Relation:∆CD,i
∆CO,i
∆CE,i
∆CD,i+1
∆CO,i+1
∆CE,i+1
Relation between Cost for Last Round and Cost for New Round
∆CD,i
∆CO,i
∆CE,i
∆CD,i+1
∆CO,i+1
∆CE,i+1
=
≤
Relation:
≤ (≤𝟎)
Sketch of Iterative Algorithm
Execution?
Condition for Next Iteration?
Round i:∆CD,i
∆CO,i ∆CE,i
Discovery next k services/task
OptimizationWithin
current search space
Sketch of Iterative Algorithm
Execution?
Round i:∆CD,i
∆CO,i ∆CE,i
? New Iteration
Discovery next k services/task
OptimizationWithin
current search space
Number of iterations is near-optimal
EXPERIMENTAL EVALUATION
Testbed Overview
• Starting Point:– Randomly generated sequential workflows with
randomly generated quality requirements• Discovery:– Randomly generated service candidates– Simulated registry download
• Optimization:– Transformation to Integer Linear Programming problem– Use of IBM CPLEX v12.1
• Verified that our initial assumptions hold
Testbed Cost Function
• Total Cost =
𝐶𝐷 𝐶𝑂 𝐶𝐸
Represent dynamic context by changing weights
Comparison: with vs. without Tuning
doe Doe dOe doE DoE dOE DOe0%
100%
200%
300%
400%
500%
600%
700%
800%10SPT 40SPT 70SPT With Tuning
Scenario
Agg
rega
ted
Cost
𝐶=𝑤𝐷∗𝑇 𝐷+𝑤𝑂∗𝑇 𝑂+𝑤𝐸∗𝑇 𝐸
Comparison: with vs. without Tuning𝐶=𝟏∗𝑇 𝐷+𝟏∗𝑇𝑂+𝟏𝟎𝟎∗𝑇 𝐸
doe Doe dOe doE DoE dOE DOe0%
100%
200%
300%
400%
500%
600%
700%
800%10SPT 40SPT 70SPT With Tuning
Scenario
Agg
rega
ted
Cost
Comparison: with vs. without Tuning𝐶=𝟏𝟎𝟎∗𝑇 𝐷+𝟏𝟎𝟎∗𝑇𝑂+𝟏∗𝑇 𝐸
doe Doe dOe doE DoE dOE DOe0%
100%
200%
300%
400%
500%
600%
700%
800%10SPT 40SPT 70SPT With Tuning
Scenario
Agg
rega
ted
Cost
Comparison: with vs. without Tuning𝐶=𝑤𝐷∗𝑇 𝐷+𝑤𝑂∗𝑇 𝑂+𝑤𝐸∗𝑇 𝐸
doe Doe dOe doE DoE dOE DOe0%
100%
200%
300%
400%
500%
600%
700%
800%10SPT 40SPT 70SPT With Tuning
Scenario
Agg
rega
ted
Cost
CONCLUSION
Conclusion
• Tradeoff between Composition Effort and Solution Quality in Service Composition
• Iterative Algorithm for Quality-Driven Service Composition
• Tuning of Composition Effort Gains in Efficiency
• Iterative scheme is generic