Page 195 -
P. 195
192 N. David et al.
Model A
Submodel j
Submodel k
compare
results
Model A’
Submodel j
Submodel k’
Fig. 9.5 Submodel comparison, also referred to as cross-element validation
model elements in order to align the replicated model with the original one. More
generally, if two simulations do not align, trying out different assumptions or
submodels is a practical way of finding the source of errors or mismatches. This
type of study is greatly facilitated when computational models are implemented in
a modular fashion, as discussed in Sect. 9.2.1. If submodels or model elements are
implemented as separate modules in the computational model, it becomes much
simpler to change or swap them in order to perform submodel comparisons.
9.4.2 Developing Replicable Models
An important aspect when developing a simulation model is to guarantee that it may
be replicated by other researchers. Designing and programming for replicability
involves a number of aspects that should be considered. Simulations are often a
mix of conceptual descriptions and hard technical choices about implementation.
The author who reports a model should assume that a replication or alignment may
later be tried and thus should be careful about providing detailed information for
future use. Some of the best practices include, but are not limited to:
– Effective documentation about the conceptual model should be provided, prefer-
ably in the form of a structured natural language description (Müller et al. 2014),
such as the ODD protocol, discussed in Chap. 15 (Grimm et al. 2017)ofthis
volume.The ODD protocol (Overview, Design concepts, Details) is one of the
most widely used templates for making model descriptions more understandable
and complete, providing a comprehensive checklist that covers many of the
key features that can define a model. The ODD + D protocol (Müller et al.
2013) extends the ODD protocol for models in which human-decision making
is simulated, often the case in social simulation.
– The model’s source code should be made available, given that it is the model’s
definitive implementation, not subject to the vagueness and uncertainty possibly
associated with verbal descriptions (Wilensky and Rand 2007; Müller et al.
2014). If possible, an open source simulation platform should be utilised to
implement the model, thus fostering software reuse in order to make simulations