Motivation: Why validate simulations?
Definition: Verification, Validation, Calibration
(Steps, that subsume validation)
Verification
Does the code do what the specification asks?
- code could include faults
Definition: Verification, Validation, Calibration
(Steps, that subsume validation)
Structural Validation
Does the model correctly represent the problem space?
- are relevant relationships included in the model etc?
Definition: Verification, Validation, Calibration
(Steps, that subsume validation)
Input/Output validation
Does the simulation correctly represent the problem space?
Calibration: adjusting input values to get valid output values
-> danger: overfitting the model when calibrating it
-> agent-based models are subject to over parametrization -> customer learning -> we can make assumptions but we don’t know the parameter for sure (no input parameters)
Simulation Data
Different layers of data
Input data
Process data
Output (result) data
Simulation Data
Different layers of data
Input data
- e.g. customer arrival rate, range of products a company offers
Simulation Data
Different layers of data
Process data
Simulation Data
Different layers of data
Output (Results) data
Simulation data
Input data
Assumption:
- Structure of relevant simulation components and parameters has been determined
Direct observation:
Indirect inference:
Simulation data
Input data: scenarios
Stochastic scenarios
Worst- and best case scenarios
Qualitatively discrete scenarios
Simulation data
Input data: scenarios
Stochastic scenarios
Simulation data
Input data: scenarios
Worst- and best-case scenarios
Simulation data
Input data: scenarios
Qualitatively discrete scenarios
- test robustness and the necessity of individualized strategies
Simulation data
Example: railway ticket as simulation input
Directly observable:
Indirect inference (also: estimation):
Simulation data
Input data on the future
Simulation data
Process data
Simulation systems are fully transparent - all data that is generated in the process of the simulation can be observed
We may look at: empirically-available process data
And we can compare it to: simulation-exclusive process data (= generate process data that wouldn’t have been availble in the real world):
Simulation data
Result data
Usually empirically-available
Simulation-exclusive
Simulation dara
Result data
Usage
Simulation data
Data farming
= simulation models run thousands of times can provide insights into the different consequences of different options
Simulation data
Data farming
Which types of data farming are there?
Simple: Monte Carlo
- Create data from known distributions
Mechanic: Discrete event-based white box
Emergent: Agent-based black box
Simulation data
Data farming with Monte-Carlo Simulations
Problem: Idea: Chance: Risk: Example:
Problem:
- empirical data set is not large enough to allow for significant statements about variable relationships
Idea:
- create additional data based on distributions fitted to the empirical sample (fill in potential gaps)
Chance:
- draw more meaningful conclusions from the enriched data set
Risk:
- enriched data set is “tainted” by a priori assumptions about distributions (gaps are filled based on assumptions)
Example:
- survey responses on the influence of consultative committees
Verification
aims to ensure that the code does what the specification asks - identify and eliminate “bugs”
Problem: when to stop testing?
Structural validation
Does the model correctly represent the problem space?
Questions:
Structural validation
ODD protocol
Overview:
Design:
4. Design Concepts (Basic principles, emergence, adaptation, objectives, learning, prediction …)
Details: