Documentation
These are just some of the many questions a model developer has to answer in order to really know and understand his/her model, and OpenMOLE built-in methods are designed to help you answer some of these questions.
Simulation models can be abstracted as a program that transforms a set of inputs into a set of outputs. Any type of data can be used as input for simulation models: locally-defined parameters, pictures, CSV files, DB connections, etc. However, simulation experiments usually revolve around @b{parameter space exploration} (e.g. sensitivity analysis).
Likewise, the outputs generated by simulation experiments are, most of the time, metrics computed on the dynamics produced by a simulation run (e.g. fitness or error functions).
Nota Bene: These performance scores are defined relatively to each other and are not absolute values.
Why explore your model? 🔗
Simulation models are necessarily a simplification of reality, and hypotheses have to be made when developing them. Thus every model needs to be questioned in order to fully understand the extent of its capabilities: Is it relevant to tackle the research question behind it? How to extract significant knowledge from the model? What kind of dynamics can it exhibit? How does each mechanism of the model impact those dynamics? Is every mechanism really necessary?These are just some of the many questions a model developer has to answer in order to really know and understand his/her model, and OpenMOLE built-in methods are designed to help you answer some of these questions.
Simulation models can be abstracted as a program that transforms a set of inputs into a set of outputs. Any type of data can be used as input for simulation models: locally-defined parameters, pictures, CSV files, DB connections, etc. However, simulation experiments usually revolve around @b{parameter space exploration} (e.g. sensitivity analysis).
Likewise, the outputs generated by simulation experiments are, most of the time, metrics computed on the dynamics produced by a simulation run (e.g. fitness or error functions).
OpenMOLE methods 🔗
There are four types of general questions that can be addressed by OpenMOLE methods:- What are all the possible inputs producing a given output?
- This is a Calibration or optimization problem, solved with genetic algorithms.
- How does an input variation affect the output?
- This is addressed by performing a Sensitivity Analysis.
- How do the inputs individually participate to produce the outputs? Is every parameter necessary to produce the outputs? What are the robustness intervals of the inputs that lead to a desired output?
- This is an extension of the sensitivity analysis, it is performed through the Calibration Profiles Algorithm.
- What are all the possible outputs of the model?
- This can be done with the Pattern Space Exploration (PSE) method.
Methods characteristics 🔗
Each OpenMOLE method is presented with a figure summarizing its performance with regard to a few criteria they all have in common.Nota Bene: These performance scores are defined relatively to each other and are not absolute values.
To go further 🔗
- Calibration methods make an extensive use of Genetic Algorithms.
- Specific tasks are available to handle the stochasticity of your model.
- Distribution schemes have been specifically designed for distributed computing environments.