©Copyright JASSS


Simulation for the Social Scientist

Nigel Gilbert and Klaus G. Troitzsch
Buckingham: Open University Press
Cloth: ISBN 0-355-19745-0; Paper: ISBN 0-335-19744-2

Order this book

Reviewed by
Andrea Schertler
Institute of World Economics, University of Kiel, Germany.

Cover of book

This book describes various types of simulation models, discusses which should be used for different kinds of economic or social questions and makes some suggestions about how to build and present simulations. Simulation models differ with respect to the number of levels they describe; some take only one level into consideration, for example economic growth on the macroeconomic level, while others allow simultaneous consideration of more than one level, for example economic growth is observed on the macro level, but it results from the actions of innovative agents at the microeconomic level. In addition, simulation models differ with respect to the extent of communication between agents and the complexity and number of agents in the system. Modelling economic growth at the macroeconomic level requires only one agent with low complexity. In order to understand the microeconomic innovation process in more detail, we need a system involving more than one agent. These agents transmit and receive information about each other, because they develop competitive products and they must be represented in a more complex way, in order to map their innovation decisions adequately.

The book is interesting for a wide range of researchers. Those already using simulation techniques can get further ideas about how to present simulation results and how to make their (sometimes very complex) models easier for others to understand. For newcomers, the book gives many examples of the various types of simulation models, sometimes including program code with detailed comments by the authors. Thus novices only need some basic programming knowledge to understand how the code works. Besides the introduction of different software packages, novices will also find the 'further reading sources' and the multitude of homepages given in the book very helpful. In each of the chapters three to nine, the authors present one type of simulation model and discuss some selected models in detail. As a result of this procedure, readers do not have to start at the beginning of the book to get information about a specific type of simulation model. In the first and second chapters, the authors discuss the purposes and advantages of simulations as well as the steps usually undertaken in building and presenting simulation models. Thus these chapters are not only of interest for newcomers, because researchers already using simulation techniques can find therein helpful ideas about how to improve their methodology and presentation of simulation models.

What are the purposes and advantages of using simulations in the social sciences? This topic is discussed in the first chapter. The purpose of simulation is to better understand an interesting phenomenon, such as the technology diffusion process, to predict variables of interest, such as the overall tax income after changing the tax system, or to develop substitutes for human capabilities, such as a flight simulator with which pilots can be trained without having to understand the program code or crash a real plane. Simulation models employed to explain a phenomenon or to predict variables of interest have some advantages over purely mathematical models. Their main advantage is that they are less abstract than mathematical models. However, this main advantage can also be the main disadvantage. Because they are less abstract, many simulation models are considerably more complex, so that understanding these models is a difficult undertaking for outsiders.

What are the steps usually undertaken in building and presenting simulations models? This is the substance of the second chapter. The most interesting steps in building simulation models are verifying and validating them as well as conducting the sensitivity analysis. Verifying means checking whether the program does what it should do, i.e. what the model builder thinks it should do. Validating means checking whether the phenomenon of interest is correctly described by the simulation model. In validating the model, data on the phenomenon are compared with the data obtained from the simulation model. Discrepencies between the empirical and simulated data can be the result, for example, of mis-specifying the initial parameters. In conducting a sensitivity analysis the model builder checks how sensitively the simulation output reacts to variations in initial conditions and parameters. This analysis is necessary because path-dependences are not unusual in simulation models.

Which type of simulation model can be used to explain the growth of an economy on the macroeconomic level? This is the topic considered in chapter 3. The type of model which considers one level, predominantly the macroscopic economic or social level, and uses only one agent with low complexity is called 'system dynamics'. Typically these models lead to difference or differential equations. In these equations, the future state of one or more variable(s) of interest, for example, the capital stock of an economy, depends on the value(s) of current state(s). Under specific conditions, these equations can be solved analytically. But this approach provides only equilibrium values for the variables of interest, while the use of simulations can also deliver information about the different trajectories and about the time which the variables of interest need to reach their equilibrium values.

Which type of simulation model is used to analyse the effects of financial and social policy interventions? This is discussed in chapter 4. With 'microanalytical' simulation models, the effects of policy interventions can be analysed because this type of model allows the consideration of two levels and agents with higher complexity. Considering two levels is necessary, because researchers are mostly interested in the effects of policy interventions at the aggregate level, such as the tax income after changing the tax system as a whole, but this aggregate tax income critically depends on individual effects or more precisely on the income distribution of the households observed at the microeconomic level. In order to capture various reactions of individual households (based on their different income positions in a changing tax system), these households have to be modelled rather richly. In building a microanalytical simulation model, the model builder begins by collecting data on the target population constituting a representative sample with regard to the properties of interest. Secondly, by reproducing the collected data using a simulation model, the model builder estimates transition probabilities for individual units. After the model builder has determined the structure of the target population, he can analyse the effects of changing the variables of interest, such as changing the tax system.

Which type of simulation model is used to determine the efficient number of counters and clerks serving customers in a bank? This is the question addressed in chapter 5. With 'queuing' models, this optimal number can be determined. Like system dynamics, this type of model takes only one level into consideration. But while system dynamics often looks at the macro level, these models consider many agents on the micro level. The efficient number of counters and clerks should minimise the average waiting time of customers and the time in which a clerk has nothing to do. The answer is very simple when the number of customers is equal at each point in time. But this is almost never the case. In building this type of simulation model, the structure of the system has to be well understood. How many possible routes can a customer take inside the bank and how long is the average serving time which may be equal for all customers or differ due to different tasks? Furthermore, at least the mean of the statistical distribution of the customer arrival process has to be known. If only mean values are available, a random number generator can generate the simulated customers' arrivals at the counters.

Which type of simulation model is used to understand individual behaviours that depend on the attributes of the overall population? This topic is discussed in chapter 6. This type is called 'multilevel' simulation modelling. The complexity of agents is low and the number of agents is high. This is the first type of simulation model presented in the book in which communication between agents can be represented. In a typical example, birth and death rates as attributes of a population are given on the upper level of the model, while a number of individuals (including information about sex, age and income as individual attributes) are modelled on the lower level. What is going on in this type of simulation model is that a probability distribution exists on the upper level, while the realisation of this probability distribution is determined on the lower level. Attributes of the population and of the individuals are interdependent. The stochastic process on the upper level can be treated mathematically by using the master equation approach. But only for individual transition probabilities can stable equilibrium values be approximated. As with system dynamics, the analytical approach does not show the different development paths which researchers can only get using a simulation model.

Which type of simulation model is used to model local interaction? These are described in chapter 7. 'Cellular automata' models are applicable for the construction of models with local interaction where the distance difference between individuals has an economic or social value. A cellular automata model is based on a regular grid with a given dimension. One- or two-dimensional models are by far the most common. This grid consists of a number of cells; each of the cells is in one of a well-defined number of states. At the beginning, the cells are endowed differently, i.e., they show different states. The state of a cell can be determined by considering the states of the neighbouring cells. Rules for changing states are defined ex ante and can be homogenous for all cells or heterogeneous. The dynamic dimension of these models is more abstract than in the previously described types because here one time step is considered over when every cell has had the possibility to change its state. In order to analyse local economic competition, the state of a cell might gives the conditions of a specific production site. Producers with decision rules defined ex antecan move over this grid in order to find the best production site for themselves.

Which type of simulation model is used to analyse information flows between individuals which live in an interacting population? Chapter 8 tackles this topic. 'Multi-agent' models involve simulated entities which interact intelligently with their (simulated) environment. Furthermore, every agent potentially constitutes an element of the environment for every other agent. An agent is usually represented by a self-contained program, so that action parameters and decision rules have to be defined ex ante. Computational agents are autonomous, have a common language, see what their environment does (and react to it) and are able to react regardless of whether the environment changes. (That is, they are not behaviourist.) Computational agents have to be distinguished from economic or social agents. The number of these two agent types can differ in a model because various economic agents may be represented by only one computer agent, i.e., a computational agent defines only the functional form for the decision rules of economic agents in the case where individuals of a population have identical decision rules defined ex ante. These agents differ only in respect of their ability to process information. While one individual decides to do something, another one does not, because the latter agent has a poorer ability to process information than the former.

Which type of simulation model is used to model learning and evolution of a heterogeneous population? Models of this kind are described in chapter 9. So far, all the types of models discussed have defined the decision rules of the agents ex ante. With models based on learning and evolution, agents can be developed which not only interact with each other but also endogenously learn over time, such that decision rules do not have to be defined ex ante. In order to model learning and evolution, the authors discuss two approaches: artificial neural networks and genetic algorithms. Artificial neural networks are inspired by the working of the human brain. With these networks, model builders try to replicate (in an abstract manner) the neurons of the human brain which receive information from (and send information to) a variety of other neurons. Genetic algorithms are inspired by evolution through natural selection. These algorithms find the optimal solution of a complex problem by selecting not only the best candidate solution, because this can result in achievement of only a local maximum, but by selecting a subset of the better entries probabilistically.

Summing up, the book gives a good survey of various types of simulation models, available program packages and the work of researchers using specific types of simulation model. The book only gives a more or less comprehensive introduction to each type of simulation model, because a large number of types is considered. However, the 'further reading sources' provided for each type of simulation model make it very easy to find a more detailed description of a type or to find further examples. Nobody should expect the book to offer a full evaluation of the costs and benefits of the various program packages because these depend heavily on the specific question or phenomenon of interest which the researcher wants to analyse. The variety of homepages provided enables interested researcher to find other researchers already using a specific simulation type and find libraries of computer code.

ButtonReturn to Contents of this issue

©Copyright Journal of Artificial Societies and Social Simulation, 2000