model-driven framework for guided design space exploration presented at ase 2011
TRANSCRIPT
Budapest University of Technology and EconomicsDepartment of Measurement and Information Systems
A Model-driven Framework forGuided Design Space Exploration
Ábel Hegedüs, Ákos Horváth, István Ráth and Dániel Varró
Budapest University of Technology and Economics
ASE 2011Lawrence, Kansas,US, November 9th, 2011
Design Space Exploration
2
Design Space Exploration
Design Alternative 1
Design Alternative 2
Design Alternative 3
Design Alternative 4
Goals
Global Constraints
Operations
Initial Design
Special state space exploration• potentially infinite state space• „dense” solution space
Storage subsystemis deployed on
clustered servers
Running Example Automated cloud infrastructure configuration
o Components have prerequisiteso Structural constraints
„What configuration operations should be performed to create the needed infrastructure?”o Find sequence of operations leading to a
desired stateo Desired state is not given, only requirements
and constraints
Can be solved using Design Space Explorationo Evaluate alternatives to find desired solutions
based on various criteriao Potentially infinite state space (worst case)
3
Application server requires at least two
database
Storage subsystem is deployed on
clustered servers
Application server requires at least two
database
Overview of the framework
s
4
Design Space Exploration
Model-driven Guided
Guidance
HintsDesign problem
description
Design Space Exploration
Exploration strategy
What kind of models are used? What are
the goals?
What is known already?
How to interpret hints?
In which order should alternatives
be explored?
What are the reachable
alternatives?
Design Space Exploration
Model-driven Guided
Guidance
HintsDesign problem
description
Design Space Exploration
Exploration strategy
Overview of the framework
5
Formalization of theproblem domaino Metamodelo Initial modelo Rules / Operationso Global constraintso Goals
Solution:Sequence of operationso Leads to a model that satisfies all goalso Each intermediate model satisfies
global constraints
Design problem description
6
S S
DB
Cl
m(DB) >= 5
S S S S
DBNode
addS
S
So SoCl
S S
Cl
addDB
m(App) = 3
App
Node
Server (S)Database (DB)
Application (App)
Storage (St)
Cluster (Cl)Cloud MW (CM)
deployedOn (dOn)
Socket (So)
Design Space Exploration
Model-driven Guided
Guidance
HintsDesign problem
description
Design Space Exploration
Exploration strategy
Overview of the framework
7
Design Space Exploration (DSE)
High-level overview
8
Initial model
Modified model
Operation
Solutionmodel
Application of an operation
Goals satisfied
Constraints violated
Design Space Exploration
Model-driven Guided
Guidance
HintsDesign problem
description
Design Space Exploration
Exploration strategy
Overview of the framework
9
Possible sources
o System analysis
o Previous experience
o Expert knowledge
Not included in design problem description
Hints
10
• Simulation• Model checking• Qualitative and
quantitative methods
• Measurements on similar systems
• Monitoring• Service Level Agreement
• Domain expert• User interaction
Hints
Model transformation specific hintso Dependency relations
between transformation rules
o Algebraic abstraction andquantitative analysis
Combination of hintso Dependency graph
(PNGT’10)
11
addCl
addS
addSt
addDB
addApp
1
1 10
1
addCM
3
addS
addS
Node
ClonR
2
CM
add Cluster
S S S S
DBNode
addS
S
So SoCl
S S
Cl
addDB
[ 0 1 1 3 1 1 ]
addCM
addCl
addSt
addDB
addS
addApp
Place/Transition netOccurrence vector
Evaluated over the dependency graph
Guidance
Exploiting hints for guiding the exploration
Decision support
o Is the current state likelyto be part of a solution?
o Which labeling should beapplied next in the current state?
12
Cut-off criteria
Selection criteria
Guidance in action
13
M
Gd
addCl
addS
addSt
addDB
addApp
1
1 10
1
addCM
3
CM
SS S
DBM’
CM
SSS S
DBM’’
CM
ClSSS S
DB
Gd’
addCl
addS
addSt
addDB
addApp
1
1 1
1
addCM
2
0
addS addCl
Selectoperation
Modify value
Applyoperation
Selectoperation
Design Space Exploration
Model-driven Guided
Guidance
HintsDesign problem
description
Design Space Exploration
Exploration strategy
Overview of the framework
14
Guided Design Space Exploration
High-level overview
15
Initial model
Modified model
Operation
Solutionmodel
Cut-off criteria satisfied
Selection criteria used
Example: Selection and Cut-off Criterion
16
Gd
addCl
addS
addSt
addDB
addApp
1
1 10
1
addCM
3
Permanently disable rule: • Rule needs to be applied• No other rules can enable it(all enablers are disabledpermanently)
Gd
addCl
addS
addSt
1
1 10
1
addCM
3
addApp
addDB
Independent rule application• Enabled rule with no forward dependency
• Apply it as early as possible• Reduce branching factor
Implementation
18
Model-driven Guided Design Space Exploration
VIATRA2
Guidance
Criteria definitions
Dependency graph (EMF)
Dependency analysis(Condor)
ILP solver(CPLEX)
Design problem description
Design Space Exploration
Abstraction
PN ILPGT
Exploration strategy
VIATRA2 Model Transformation Framework
viatra.inf.mit.bme.hu
Automatically derived from problem description (PNGT’06)
Domain-independent criteria evaluation algorithm
Guided search strategies
Application to calculate quick fixes (VL/HCC’11)
Evaluation
Main evaluation criteria
o Guidance decreases traversed design space
o Relevant solutions are found
o Representative set of
• Problem description
• Hints
Evaluated case studies
o Service reconfiguration
o Cloud infrastructure
o Quick fixes for graphical editors (BPEL)
19
Evaluation results
20
1
10
100
1,000
10,000
100,000
1,000,000
Power Small (23)
Power Large (66)
Clustered DB (28)
RC Small (5)
RC Medium
(9)
RC Large (21)
Number of visited states
Fixed Priority Occurrence Full guidance
Logarithmic scale!Fixed: 200 000Occur.: 900Full Gui.: 20
Additional constraint introduced:Clustered databases
76 alternative occurrence vectors evaluated
400,000
500,000
600,000
700,000
800,000
Good News:• Guided DSE works for many problems• Hints can really increase efficiency
„Bad” News (Future Work): • Problematic rule dependencies
• Unrelated operations• Strongly connected graph
• Infeasible occurrence vectors
Design Space Exploration
Model-driven Guided
Guidance
HintsDesign problem
description
Design Space Exploration
Exploration strategy
Future Work
21
Extended Dependency Analysis:• Analyze dependencies between
• Rules/Operations• Constraints, Goals
Incremental handling of• Criteria evaluation• Infeasible occurrence vectors• State identification
Design Space Exploration
Model-driven Guided
Guidance
HintsDesign problem
description
Design SpaceExploration
Explorationstrategy
Conclusions
22
Problem Description:• Extensive use of model-based techniques
• Metamodelling, pattern matching, model transformation
Hints:• Exploit hints from system analysis
• Dependency analysis• Algebraic abstraction
Exploration:• Guided exploration to increase efficiency
• Cut-off criteria• Selection criteria
Guided DSE Framework:• Implemented over VIATRA2• Evaluated on multiple domains
using different strategies