optimizing the tradeoff between discovery, composition, and execution cost in service composition

39
Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition Authors: Immanuel Trummer , Boi Faltings

Upload: achille-peternier

Post on 20-Jun-2015

421 views

Category:

Technology


2 download

DESCRIPTION

SOSOA talk presented at ICWS 2011.

TRANSCRIPT

Page 1: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service

Composition

Authors:Immanuel Trummer, Boi Faltings

Page 2: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

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

Page 3: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

INTRODUCTION TO QUALITY-DRIVEN SERVICE COMPOSITION

Page 4: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in 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

Page 5: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in 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

Goal:- Cost < x $ per invocation- Minimize response time

Page 6: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

Process in Quality-Driven Service Composition

Discovery Optimization Execution

Composition Phase

Page 7: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

TRADEOFF BETWEEN COMPOSITION EFFORT AND SOLUTION QUALITY

Page 8: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

Tradeoff: Composition Effort vs. Solution Quality

Composition Effort

Quality of the SolutionTradeof

fAdapt Dynamically!

High-Priority Workflows

Optimize

Heavy load on Middleware

Optimize

Page 9: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

Tradeoff: Composition Effort vs. Solution Quality

Composition Effort

Quality of the Solution

Page 10: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

Tradeoff: Composition Effort vs. Solution Quality

Composition Effort- Discovery Cost- Optimization Cost

Quality of the Solution- Execution Cost+ CE

+ CO

CD

C=

Page 11: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

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

Page 12: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

Dependency: Cost and #Services

#Services

Cost

CD

CO

Page 13: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

Dependency: Cost and #Services

#Services

Cost

CD

CO

CE

Page 14: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

Dependency: Cost and #Services

#Services

Cost

CD

CO

CE

C

Minimum Cost

Where?

Page 15: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

ALGORITHM FOR AUTOMATICALLY TUNING COMPOSITION EFFORT

Page 16: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

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

Page 17: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

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

Page 18: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

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

Page 19: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

Growth of Search Space for Optimization

Search Space Round i+1

Search Space Round i

Page 20: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

Growth of Search Space for Optimization

Search Space Round i+1

Search Space Round i

Explored by Inefficient Method in Round i+1

Page 21: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

Growth of Search Space for Optimization

Search Space Round i+1

Search Space Round i

Explored by Efficient Method in Round i+1

Page 22: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

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

Page 23: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

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

Page 24: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

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

Page 25: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

Ratio between Size of New and Old Search Space

𝑆𝑖𝑧𝑒𝑜𝑓 h𝑆𝑒𝑎𝑟𝑐 𝑆𝑝𝑎𝑐𝑒𝑖𝑛𝑟𝑜𝑢𝑛𝑑𝑖+1𝑆𝑖𝑧𝑒𝑜𝑓 h𝑆𝑒𝑎𝑟𝑐 𝑆𝑝𝑎𝑐𝑒 𝑖𝑛𝑟𝑜𝑢𝑛𝑑𝑖

=((𝑖+1)∗𝑘)𝑡

(𝑖∗𝑘)𝑡

Ratio diminishes, big improvements unlikely at some point

Page 26: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

Diminishing Returns

#Iterations

Cost

CE

∆𝐶𝐸 ,𝑖

∆𝐶𝐸 ,𝑖+1

Page 27: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

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

Page 28: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

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:

≤ (≤𝟎)

Page 29: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

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

Page 30: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

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

Page 31: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

EXPERIMENTAL EVALUATION

Page 32: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

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

Page 33: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

Testbed Cost Function

• Total Cost =

𝐶𝐷 𝐶𝑂 𝐶𝐸

Represent dynamic context by changing weights

Page 34: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

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

𝐶=𝑤𝐷∗𝑇 𝐷+𝑤𝑂∗𝑇 𝑂+𝑤𝐸∗𝑇 𝐸

Page 35: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

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

Page 36: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

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

Page 37: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

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

Page 38: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

CONCLUSION

Page 39: Optimizing the Tradeoff between Discovery, Composition, and Execution Cost in Service Composition

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

[email protected]