Www.WorldHistory.Biz
Login *:
Password *:
     Register

 

31-08-2015, 03:46

Procedure and Implementation

Simulation typically involves eight steps, which operate in feedback as shown in Figure 6:

1.  It begins with a set of real-world observations (e. g., a settlement distribution) and a body of theory.

2.  A specific problem is defined (e. g., to what extent was the mode of tenure a principal determinant of that pattern?).

3.  The next step is the construction of a conceptual model of the process thought to have been at work. Almost all archaeological interpretation proceeds through the construction of conceptual models, but very often they are not explicitly stated. If simulation is envisaged the conceptual model must be made explicit. It might initially be specified in natural language or possibly using flowcharts or other graphical means of depiction, but ultimately, in order to study a model with a computer, it must be expressed mathematically, logically, or algorithmically. It may be that future developments in artificial intelligence will permit specification in natural language, but that is not yet possible.

4. The conceptual model must be implemented as a computer model. It may be possible to implement a relatively simple model in a spreadsheet. More complex models expressed as systems of equations can be implemented within general-purpose mathematical modeling applications, such as MATLAB or Mathe-matica, or alternatively using a specialist mathematical simulation application such as STELLA. Cellular automata can also be implemented in MATLAB and Mathematica, but they are just as likely to be implemented as new applications written using an appropriate computer programming language. Agent-based models are almost always implemented as new

Figure 4 The trail of an individual forager in an agent-based simulation designed to explore the effect of increased memory on foraging strategies. Bar height indicates magnitude of resource extraction; darker colors indicate more recent extraction events. Reproduced from Costopoulos A (2001) Evaluating the impact of increasing memory on agent behaviour: Adaptive patterns in an agent-based simulation of subsistence. Journal of Artificial Societies and Social Simulation, 4(4)7<Http://www. soc. surrey. ac. uk/JASSS/4/4/7.html>.


Figure 5 Output from a cellular automaton showing the effect of a local ‘majority rule’ in which cells adopt the same strategy as the majority of their neighbors.


Applications written in an ‘object-oriented programming language’. Exactly how much new program code is required will depend on the complexity of the model and, in particular, whether the entire model is written from scratch or alternatively builds on simulation modeling ‘toolkits’ such as those provided by SWARM, Repast, or NetLogo. Either way, few archaeologists have the requisite programming skills and most will need expert assistance.

5.  The process of ‘verification’ ensures that the computer model is a faithful implementation of the conceptual model, that is, that there are no programming errors.

6.  The next step is to establish the validity of the conceptual model. The validity of most simulation models will be judged on whether the modeled process is realistic, not on the realism of the output alone, since several models might produce output matching the archaeological evidence. Consequently, ‘validation’ of archaeological simulations can be difficult; one option is to perform a ‘sensitivity analysis’ to investigate whether the model produces theoretically reasonable output for a wide range of input values (e. g., very low to very high rainfall).

7. The final, but by no means least important, step is to run a series of experiments with the simulation model in order to learn more about the problem at hand. The exact experimental strategy will depend on the purpose of the simulation. Hypothesis-testing may require that either the input or the process is

Figure 6 The process of computer simulation.


Varied until the output matches an observed state. Heuristic use for theory-building is generally less concerned with obtaining a match with an observed state and more with understanding the variability in the model output. Either way, it is important to make multiple runs of a simulation that includes ‘stochastic’ elements in order to explore the variability produced by chance events.



 

html-Link
BB-Link