Download presentation
Presentation is loading. Please wait.
Published byRonald Greene Modified over 9 years ago
1
Simulation Adaptation, Composition and Reuse Paul F. Reynolds, Jr. reynolds@virginia.edureynolds@virginia.edu 434 924-1039 reynolds@virginia.edu David Brogan, Rob Bartholet, Joe Carnahan, Xinyu Liu, Ross Gore, Lingjia Tang, Yannick Loitière, Michael Spiegel, Chris White David Brogan, Rob Bartholet, Joe Carnahan, Xinyu Liu, Ross Gore, Lingjia Tang, Yannick Loitière, Michael Spiegel, Chris White M odeling a nd S imulation T echnology R esearch I nitiative Computer Science Department University of Virginia, USA Paul F. Reynolds, Jr. reynolds@virginia.edureynolds@virginia.edu 434 924-1039 reynolds@virginia.edu David Brogan, Rob Bartholet, Joe Carnahan, Xinyu Liu, Ross Gore, Lingjia Tang, Yannick Loitière, Michael Spiegel, Chris White David Brogan, Rob Bartholet, Joe Carnahan, Xinyu Liu, Ross Gore, Lingjia Tang, Yannick Loitière, Michael Spiegel, Chris White M odeling a nd S imulation T echnology R esearch I nitiative Computer Science Department University of Virginia, USA http://www.cs.virginia.edu/~MaSTRI/ Designing for Change:
2
What Are Key M&S Challenges? Multi-resolution modeling – Simulating over- lapping phenomena at two or more levels of (spatial/temporal) resolution concurrently. Composition – Composition – Constructing a (larger) simulation from two or more existing simulations. Interoperability – Interoperability – When two or more simulations can execute together meaningfully. Reuse – Reuse – Using a simulation for a purpose other than that for which it was originally intended. Multi-resolution modeling – Simulating over- lapping phenomena at two or more levels of (spatial/temporal) resolution concurrently. Composition – Composition – Constructing a (larger) simulation from two or more existing simulations. Interoperability – Interoperability – When two or more simulations can execute together meaningfully. Reuse – Reuse – Using a simulation for a purpose other than that for which it was originally intended. Adapting for reuse
3
Modeling and Simulation Technology Research Initiative Simulation design and semi-automated adaptation for reuse COERCECOERCE –Coercibility: the practices and methods for capturing designer knowledge in software –Coercion: a user-guided, semi-automated software adaptation process ComposabilityComposability –Reusing components, possibly with acceptable amounts of revision, to meet new requirements Simulation design and semi-automated adaptation for reuse COERCECOERCE –Coercibility: the practices and methods for capturing designer knowledge in software –Coercion: a user-guided, semi-automated software adaptation process ComposabilityComposability –Reusing components, possibly with acceptable amounts of revision, to meet new requirements
4
Simulation Flexible Points Sensitivity Analyses Design-time provided insights Expansion Opportunities Metadata for coercing Coercibility
5
Flexible Points Sensitivity Analyses Expansion Opportunities Simulation Modify? (solid insight) New requirements visualize Coercion metadata Optimize? (need to explore) Coercion
6
coerce(model) what-I-want
7
Full physics bicyclist 2D point mass
8
Collaborators at UVa Aerospace engineering (thermo-acoustic coupling)Aerospace engineering (thermo-acoustic coupling) High-energy physics (quark-gluon plasma)High-energy physics (quark-gluon plasma) Neuroscience (multi-scale model of hippocampus)Neuroscience (multi-scale model of hippocampus) Earth Science (forest respiration)Earth Science (forest respiration) Biomedical Science (proposal: cell/tissue MRM)Biomedical Science (proposal: cell/tissue MRM) Aerospace engineering (thermo-acoustic coupling)Aerospace engineering (thermo-acoustic coupling) High-energy physics (quark-gluon plasma)High-energy physics (quark-gluon plasma) Neuroscience (multi-scale model of hippocampus)Neuroscience (multi-scale model of hippocampus) Earth Science (forest respiration)Earth Science (forest respiration) Biomedical Science (proposal: cell/tissue MRM)Biomedical Science (proposal: cell/tissue MRM)
9
Outline of talk CoercibilityComposabilityCoercionCoercibilityComposabilityCoercion
10
Capturing and encoding the nature of alternative conditions (not specifics) Stipulate when simulation can/cannot be usedStipulate when simulation can/cannot be used State when/how it can be changedState when/how it can be changed Identify critical dependenciesIdentify critical dependencies Capturing and encoding the nature of alternative conditions (not specifics) Stipulate when simulation can/cannot be usedStipulate when simulation can/cannot be used State when/how it can be changedState when/how it can be changed Identify critical dependenciesIdentify critical dependencies Coercibility
11
Designing for change Build upon simplifying assumptions Frequently hiddenFrequently hidden Small changes can invalidate simulationSmall changes can invalidate simulation Examples:Examples: –Bounding the space and time of the simulation –Selecting equations to represent phenomena –Knowing 4 th order Runge Kutta is good enough Build upon simplifying assumptions Frequently hiddenFrequently hidden Small changes can invalidate simulationSmall changes can invalidate simulation Examples:Examples: –Bounding the space and time of the simulation –Selecting equations to represent phenomena –Knowing 4 th order Runge Kutta is good enough
12
Case study Defining a simulation’s context Articulate the assumptions in Falling Body ModelArticulate the assumptions in Falling Body Model –A sphere falls to earth… –10 people listed assumptions –29 assumptions were ultimately identified The top three people only found 21, 19, and 16 Defining a simulation’s context Articulate the assumptions in Falling Body ModelArticulate the assumptions in Falling Body Model –A sphere falls to earth… –10 people listed assumptions –29 assumptions were ultimately identified The top three people only found 21, 19, and 16 Spiegel et al., WSC 2005
13
Capturing Insight Flexible Points Any element of the model or simulation that can be manipulated in meaningful and effective ways to direct a simulation’s behaviorAny element of the model or simulation that can be manipulated in meaningful and effective ways to direct a simulation’s behavior Examples:Examples: –Value substitution for constants/parameters –Replacing abstraction assumptions –Modifying stochastic elements –Tuning logical time components Flexible Points Any element of the model or simulation that can be manipulated in meaningful and effective ways to direct a simulation’s behaviorAny element of the model or simulation that can be manipulated in meaningful and effective ways to direct a simulation’s behavior Examples:Examples: –Value substitution for constants/parameters –Replacing abstraction assumptions –Modifying stochastic elements –Tuning logical time components
14
Clarifying Flexible Points Pragmatic definition, emphasis on semi- automated transformation Contrast with Simulation parametersSimulation parameters Design decisionsDesign decisions Pragmatic definition, emphasis on semi- automated transformation Contrast with Simulation parametersSimulation parameters Design decisionsDesign decisions Parameters Design decisions Flexible points Carnahan et al. Fall SIW 2004 Carnahan et al., WSC 2005
15
“Assembly of parts into a whole without modifying the parts.” (Szyperski 2002) “The capability to select and assemble simu- lation components in various combinations into valid simulation systems to satisfy specific user requirements.” (Petty and Weisel 2003) “Assembly of parts into a whole without modifying the parts.” (Szyperski 2002) “The capability to select and assemble simu- lation components in various combinations into valid simulation systems to satisfy specific user requirements.” (Petty and Weisel 2003) Composability We advocate semi-automated adaptation of components to support composability. --practical and realistic
16
Composability It’s hard to build component repositories Size of componentsSize of components Component interfacesComponent interfaces Classifying semanticsClassifying semantics It’s hard to build compositions Some theoretical results, few practicalSome theoretical results, few practical It’s hard to build component repositories Size of componentsSize of components Component interfacesComponent interfaces Classifying semanticsClassifying semantics It’s hard to build compositions Some theoretical results, few practicalSome theoretical results, few practical
17
r1r1 r3r3 r4r4 r2r2 r5r5 r6r6 R x1x1 x3x3 x4x4 x8x8 x2x2 x6x6 x7x7 x5x5 r8r8 r7r7 X CS: Is there a subset of X of cardinality k or less that covers R? Example instance when k = 3 REQUIREMENTS COMPONENTS Component Selection (CS)
18
Component Selection CS is NP-complete Reduction from SAT (Page and Opper 1999)Reduction from SAT (Page and Opper 1999) Reduction from MSC (Petty et al. 2003)Reduction from MSC (Petty et al. 2003) Approximate solutions to CS are possible Limit the amount of emergenceLimit the amount of emergence Use Greedy algorithmUse Greedy algorithm CS is NP-complete Reduction from SAT (Page and Opper 1999)Reduction from SAT (Page and Opper 1999) Reduction from MSC (Petty et al. 2003)Reduction from MSC (Petty et al. 2003) Approximate solutions to CS are possible Limit the amount of emergenceLimit the amount of emergence Use Greedy algorithmUse Greedy algorithm Fox et al. WSC 2004
19
Applied Simulation Component Reuse (ASCR) Critical New Assumption: Any component can be adapted to satisfy any requirement What does this buy us? We no longer have to assume the existence of a master set of components.We no longer have to assume the existence of a master set of components. We can more flexibly react to changing requirements.We can more flexibly react to changing requirements. But … We now have to account for the cost or utility of adapting a component!
20
ASCR A formal model and analysis of component selection with adaptable components What is utility and cost of adapting component to satisfy additional requirements?What is utility and cost of adapting component to satisfy additional requirements? What is value of incomplete satisfaction?What is value of incomplete satisfaction? A formal model and analysis of component selection with adaptable components What is utility and cost of adapting component to satisfy additional requirements?What is utility and cost of adapting component to satisfy additional requirements? What is value of incomplete satisfaction?What is value of incomplete satisfaction?
21
Results Proven: Exact cover by three sets (X3C) reduces to ASCR brings flexibility to component selection, but the problem remains intractable (NP-Hard)brings flexibility to component selection, but the problem remains intractable (NP-Hard) Ongoing work: Discovering scalable methods, algorithms, and heuristics for component selectionDiscovering scalable methods, algorithms, and heuristics for component selection Encoding adaptability into the componentEncoding adaptability into the component Proven: Exact cover by three sets (X3C) reduces to ASCR brings flexibility to component selection, but the problem remains intractable (NP-Hard)brings flexibility to component selection, but the problem remains intractable (NP-Hard) Ongoing work: Discovering scalable methods, algorithms, and heuristics for component selectionDiscovering scalable methods, algorithms, and heuristics for component selection Encoding adaptability into the componentEncoding adaptability into the component Bartholet et al., WSC 2005
22
Efficient Adaptation of a simulation for reuse and component selection Flexible pointsFlexible points Language toolsLanguage tools Automatic visualizationAutomatic visualization Sensitivity AnalysisSensitivity Analysis OptimizationOptimization Efficient Adaptation of a simulation for reuse and component selection Flexible pointsFlexible points Language toolsLanguage tools Automatic visualizationAutomatic visualization Sensitivity AnalysisSensitivity Analysis OptimizationOptimization Support user seeking insight Coercion
23
Optimization Traditionally used to find best parameter values Generates additional insight Identify sensitive/brittle systemsIdentify sensitive/brittle systems Explore novel circumstancesExplore novel circumstances Detect correlationsDetect correlations Discover constraintsDiscover constraints Bound search spaceBound search space Traditionally used to find best parameter values Generates additional insight Identify sensitive/brittle systemsIdentify sensitive/brittle systems Explore novel circumstancesExplore novel circumstances Detect correlationsDetect correlations Discover constraintsDiscover constraints Bound search spaceBound search space
24
S0S0 S?S? P: The Coercion Process B target ? S?S? S?S?..
25
P: The Coercion Process S0S0 P SnSn Satisfies B target ? Modify Run optimizer or modify? Optimize YesNo B target
26
Paths to Coercion S0S0 P S? SnSn S0S0
27
Dangerous Divergence SnSn S0S0
28
Distance Function S0S0 SiSi B target Ii Ii D(S i, I i ) Insight is vital! Coercion converges on solution when D(S n, I n )==0
29
The Convergence of Coercion How can we guarantee coercion will terminate? We benefit from our successesWe benefit from our successes –Better satisfy B target with good transformations We learn from our mistakesWe learn from our mistakes –Gain insight from bad transformations How can we guarantee coercion will terminate? We benefit from our successesWe benefit from our successes –Better satisfy B target with good transformations We learn from our mistakesWe learn from our mistakes –Gain insight from bad transformations
30
Focus on User Interaction with Optimization Tools Explore what you don’t know and exploit what you do know Explore Unknown Exploit Insight Code Modification Random Code Generation Simulated Annealing Genetic Algorithms Gradient-Based Search Response Surface Methodology
31
Running Example Global Minimum
32
Simulated Annealing Global Minimum
33
Simulated Annealing Explore Unknown Exploit Insight Simulated Annealing Insight: Perturbation func. Cooling schedule
34
Genetic Algorithms
35
Explore Unknown Exploit Insight Genetic Algorithms Insight: Mutation func. Crossover func.
36
Gradient-Based Search
37
Explore Unknown Exploit Insight Gradient-Based Search Insight: Initial guess
38
Response Surface Methodology
39
Explore Unknown Exploit Insight Response Surface Methodology Insight: What to inspect Where to inspect What to infer
40
Optimization Techniques Explore Unknown Exploit Insight Simulated Annealing Genetic Algorithms Gradient-Based Search Response Surface Methodology Waziruddin et al. Fall SIW 2004
41
Identify/classify best practices for optimization in coercion Set-up time Computation time Technique preemption Set-up time Computation time Technique preemption
42
Set-up Time Explore Unknown Exploit Insight Simulated Annealing Genetic Algorithms Gradient-Based Search Response Surface Methodology More Set-up Time
43
Computation Time Explore Unknown Exploit Insight Simulated Annealing Genetic Algorithms Gradient-Based Search Response Surface Methodology More Computation Time
44
Explore Unknown Exploit Insight Simulated Annealing Genetic Algorithms Gradient-Based Search Response Surface Methodology More Preemption Technique Preemption
45
Summary Efficient simulation adaptation appears viable for simulation reuse Currently funded under NSF (ITR) DDDAS program: dynamic adaptation Quite interested in collaborations with application experts. reynolds@cs.virginia.edudbrogan@cs.virginia.edu
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.