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