Keywords

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

1 Introduction

Many geographical systems are characterised by continual change and evolution through time and space. The impacts of interactions between individual agents (humans, cities or more abstract representations), or an individual agent and the environment (physical, social, information etc) can be felt at multiple scales as well as over differing timescales. Previous approaches to modelling the complexity of geographical systems have focused on representing these systems as static aggregations of populations, rational aggregate behaviour and flows of information. Examples of these “traditional approaches” include multiple regression, location-allocation and spatial interaction models; Batty (2012) provides a detailed discussion of the different approaches applied within geographical modelling.

While the utility of these approaches are exemplified within the academic literature, one of the central criticisms that can be levelled at them is treatment of all geographical components as largely homogeneous entities, for example, populations modelled with the same characteristics. Over the course of the twentieth century geography has incorporated ideas and theories from other disciplines including economics, mathematics and computer science. These ideas have strengthened the significance of both modelling and understanding the impact of individual agents and the heterogeneity of geographical systems at different spatial and temporal scales. Simulating these processes and their impacts ‘realistically’ presents a significant challenge for the twenty-first century geographer.

To understand geographical problems such as sprawl, congestion and segregation, researchers have begun to focus on bottom-up approaches to simulating human systems, specifically researching the reasoning on which individual decisions are made. One such approach is agent-based modelling (ABM) which allows one to simulate the individual actions of diverse agents, and to measure the resulting system behaviour and outcomes over time. The distinction between these new approaches and the more aggregate, static conceptions and representations that they seek to complement, if not replace, is that they facilitate the exploration of system processes at the level of their constituent elements.

Essential to the progression of ABM has been the development of automata approaches more generally. An automaton is a processing mechanism with characteristics that change over time based on its internal characteristics, rules and external input. Automata process information input to them from their surroundings and their characteristics are altered according to rules that govern their reaction to these inputs. Two classes of automata tools – cellular automata (CA) and agent-based models – have been particularly popular, and their use has dominated the research literature.

The purpose of this chapter is to provide an overview to ABM. The key features of an agent-based model will be presented along with a discussion of what constitutes an agent-based model and brief overviews of the main areas of consideration when undertaking modelling. The distinction between CA, microsimulation (MSM) and ABM approaches are briefly outlined. The advantages and disadvantages of ABM for simulating geographical systems are then discussed before an overview of geographical applications are given. We conclude the chapter with a summary and discussion of areas that require further consideration.

2 What Is an Agent?

There is no universal agreement amongst researchers on the precise definition of the term ‘agent’ with researchers continually debating whether definition should be by an agent’s application or environment; however definitions do tend to agree on more points than they disagree (Macal and North 2005). Diversity in their application makes agent characteristics difficult to extract from the literature in a consistent and concise manner as often an agent-based model is described from the perspective of its constituent parts (Bonabeau 2002).

From a pragmatic modelling standpoint, there are several features that are common to most agents (Wooldridge and Jennings 1995 – extended and explained further by Franklin and Graesser 1996; Epstein 1999; Macal and North 2005). These are briefly presented below:

  • Autonomy: agents are autonomous units (i.e. governed without the influence of centralised control), capable of processing information and exchanging this information with other agents in order to make independent decisions. They are free to interact with other agents, at least over a limited range of situations, and this does not (necessarily) affect their autonomy.

  • Heterogeneity: agents permit the development of autonomous individuals e.g. an agent representing a human could have attributes such as age, sex, job etc. Groups of agents can exist, but they are spawned from the bottom-up, and are thus amalgamations of similar autonomous individuals.

  • Active: agents are active because they exert independent influence in a simulation. The following active features can be identified:

    • Pro-active/goal-directed: agents are often deemed goal-directed, having goals to achieve (not necessarily objectives to maximise) with respect to their behaviours.

    • Reactive/Perceptive: agents can be designed to have an awareness or sense of their surroundings. Agents can also be supplied with prior knowledge, in effect a ‘mental map’ of their environment, thus providing them with an awareness of other entities, obstacles, or required destinations within their environment.

    • Bounded Rationality: throughout the social sciences, the dominant form of modelling is based upon the rational-choice paradigm (Axelrod 2007). Rational-choice models generally assume that agents are perfectly rational optimisers with unfettered access to information, foresight, and infinite analytical ability (Parker et al. 2003). However, agents can be configured with ‘bounded’ rationality (through their heterogeneity). This allows agents to make inductive, discrete, and adaptive choices that move them towards achieving goals.

    • Interactive/Communicative: agents have the ability to communicate extensively. For example, agents can query other agents and/or the environment within a neighbourhood.

    • Mobility: agents can ‘roam’ the space within a model. Juxtaposed with an agent’s ability to interact and their intelligence, this permits a vast range of potential uses. However, agents can also be fixed.

    • Adaptation/Learning: agents can also be designed to be adaptive, producing Complex Adaptive Systems (CAS; Holland 1995). Agents can be designed to alter their state depending on previous states, permitting agents to adapt with a form of memory or learning. Agents can adapt at the individual level (e.g. learning alters the probability distribution of rules that compete for attention), or the population level (e.g. learning alters the frequency distribution of agents competing for reproduction).

This list is not exhaustive or exclusive; within an application agents can possess other characteristics and for some applications, some features will be more important than others (Wooldridge and Jennings 1995). Often, there are many different types of agents within one simulation.

2.1 What Does an Agent Look Like?

Agents can be representations of any type of autonomous entity. These could be, for example, people, buildings, cars, land parcels, water droplets or insects. Figure 5.1 shows the similarities between the concept of (i) a “social” human and (ii) a grocery retailer and of a representation of an agent within an object-orientated program (see Abdou et al. 2012; Crooks and Castle 2012; Grimm and Railsback 2012 who explore constructions of agent-based models in more detail). It should be noted that ABM is not the same as object-oriented simulation, although the object-oriented paradigm provides a suitable medium for the development of agent-based models. For this reason, ABM systems are invariably object-oriented (Gilbert and Terna 2000).

Fig. 5.1
figure 1_5

Representation of (a) human agent and (b) petrol retailer agent alongside that of representation within an object-orientated environment

A collection of multiple, interacting agents, situated within a model or simulation environment such as represented by the artificial world as shown in Fig. 5.2 is termed an agent-based model. Here, agents can be representations of animate entities such as humans that can roam freely around an environment or be inanimate, such as a petrol retailer, that has a fixed location but can change state.

Fig. 5.2
figure 2_5

ABM: the creation of artificial worlds populated by agents (Adapted from Cederman 2004)

2.2 Rules, Behaviour and Relationships

Each of the inanimate and animate agents outlined above can possess rules that will affect their behaviour and relationships with other agents and/or their surrounding environment. Rules are typically derived from published literature, expert knowledge, data analysis or numerical work and are the foundation of an agent’s behaviour. One rule-set can be applied to all agents or each agent (or categories of agents) can have its own unique rule set. For example, the retail petrol agents in Heppenstall et al. (2006) all operated on the same basic rule set based on a desire to maximise profits. Further work saw different types of retailer agents, for example supermarkets, international, national and independent stations, given their own “realistic” rule-sets based on published behaviour, data analysis and numerical analysis (Heppenstall et al. 2006).

Rules are typically based around ‘if-else’ statements with agents carrying out an action once a specified condition has been satisfied. However, rules can also be put into action in ignorance of the actions of other agents. Agents can also be imbedded with a notion of learning and thus ‘intelligence’ through evolutionary computation (see Heppenstall et al. 2007 for further details). More recently there has been a move towards incorporating behavioural frameworks within agent-based models to better represent human behaviour. For example, Malleson et al. (2010) used the PECS (Physical conditions, Emotional states, Cognitive capabilities and Social status) framework to represent the motivations and desires of criminals. This type of work marks a move towards a more sophisticated handling of agent behaviour. Kennedy (2012) provides an overview of different frameworks for handling human behaviour in agent-based models.

Agents can interact with each other and amongst themselves and with the environment. Relationships may be specified in a variety of ways, from simply reactive (i.e. agents only perform actions when triggered to do so by some external stimulus e.g. actions of another agent) to goal-directed (i.e. seeking a particular goal). The behaviour of agents can be scheduled to take place synchronously (i.e. every agent performs actions at each discrete time step, all change occurs simultaneously), or asynchronously (i.e. agent actions are scheduled by the actions of other agents, and/or with reference to a clock).

2.3 Agent Environments

Environments define the space in which agents operate, serving to support their interaction with the environment and other agents. For example, depending on the space defined for agent interactions, proximity may be defined by spatial distance for continuous space, adjacency for grid cells, or by connectivity in social networks. Agents within an environment may be spatially explicit, meaning agents have a location in geometrical space, although the agent itself may be static. For example, within a route navigation model, agents would be required to have a specific location for them to assess their route strategy. Conversely, agents within an environment may be spatially implicit; this means that their location within the environment is irrelevant.

In a modelling context, agent-based models can be used as experimental media for running and observing agent-based simulations. To this extent, they can be thought of as a miniature laboratory where the attributes and behaviour of agents, and the environment in which they are housed, can be altered and the repercussions observed over the course of multiple simulation runs, thus providing a tool to ‘think with.’ The ability to simulate individual actions of many diverse agents and measure the resulting system behaviour and outcomes over time (e.g. changes in patterns of traffic flow), means agent-based models can be useful tools for studying the effects on processes that operate at multiple scales and organisational levels (Brown 2006). In particular, the roots of ABM are within the simulation of human social behaviour and individual decision-making (Bonabeau 2002). In this sense ABM has transformed social science research by allowing researchers to replicate or generate the emergence of empirically complex social phenomena from a set of relatively simple agent-based rules at the micro-level (Balan et al. 2003).

3 Individual-Based Models

Agent-based models fall into the broad category of individual based models. Within this category are also the closely related techniques of CA and MSM. This section clarifies the scope of these other techniques and emphasises the distinction from agent-based models. CAs and MSM are more fully explained in Iltanen (2012) and Birkin and Wu (2012).

3.1 Cellular Automata

The basic features of CA are well-known from the research literature. A CA is a discrete dynamic system, the behaviour of which is specified in terms of local relations. The space in a CA system is divided into a lattice or grid of regularly-space cells of the same size and shape, usually square. Each cell has a value either 0 or 1 or on a scale from 0 to 1. The state of a cell and its behaviour is determined by the state of other cells in close proximity at a previous time step, by a set of local rules and by the cell itself (Benenson and Torrens 2004; Torrens 2003; Wolfram 2002).

An important feature of a CA is that the automata’s location does not move; they can only change their state. The position of the cells and their neighbourhood relations remain fixed over time. In contrast, agents can be either fixed in location or free to ‘roam’ around their environment. Unlike agents, CAs cannot have more than one attribute; for example, a cell could be occupied or unoccupied, but the cell could not contain multiple attributes such as building type, date built etc.

Both CA and agent-based models, model the complexity of social systems with similar individual level representations. However, they differ in their emphasis; CA model social dynamics with a focus on the emergence of properties from local interactions while agent-based models simulate more complex situations where agents control their own actions based on their knowledge of the environment (Birkin and Wu 2012).

In practice, CA and ABM have often been applied separately to explore a wide variety of geographical phenomena. This is particularly evident in urban modelling. For example, CA models are commonly applied to represent possible land-use changes (for example, White et al. 1997; Landis and Zhang 1998) while ABM are often applied to crowd dynamics and traffic simulation (see Benenson and Torrens 2004 for further reviews). However, models are increasingly being developed using a combination of CA and ABM techniques to produce flexible and powerful models, and the distinction between them is increasingly becoming blurred.

3.2 Microsimulation

MSM is a well established methodology that works on the principle of creating small area microdata at a point in time, and then generating future microdata from that basis (Ballas et al. 2005). MSM has been extensively applied to modelling the effects of different policy scenarios on individual ‘units’, for example understanding the implications of a factory closure on individual households.

As with CA and ABM, MSM operates at the level of the individual, is able to simulate the global consequences of local interactions whilst allowing the characteristics of each individual to be tracked over time. However, crucially in contrast to ABM, MSM only models one-direction interactions: the impact of the policy on the individuals, but not the impact of individuals on the policy and interactions between individuals are not simulated. Furthermore MSM models do not have the behavioural modelling capability of ABM.

Birkin and Wu (2012) see the relationship between ABM and MSM as complimentary; linking the two approaches can help overcomes inherent limitations in both approaches, for example problematic validation in ABM and the absence of real behavioural modelling in MSM. Examples of the hybridisation of these approaches can be found in the work of Boman and Holm (2004) and more recently Wu et al. (2008).

4 Constructing an Agent-Based Model

Creation of an agent-based model can be facilitated through the use of an object-orientated language, modelling toolkits and platforms. Here we briefly discuss these approaches describing their advantages and disadvantages. For a more detailed discussion, the reader is directed to Crooks and Castle (2012).

Frequently used programming languages are Java and C++. While programming from the ground up allows complete control over every aspect of the agent-based model, this can be a time-consuming option unless the researcher is an experienced programmer. Model implementation can be cumbersome and considerable time can be spent on non content-specific aspects such as graphical user interfaces (GUI’s), visualisation and data importing.

Toolkits do not require substantial coding experience and provide conceptual frameworks and templates that allow the user to design a customised model. Prominently used toolkits include the highly popular Repast, SWARM and MASON, although Crooks and Castle (2012) note that there are over 100 toolkits currently available. These toolkits are often supported by libraries of pre-defined methods and functions that can be easily incorporated into an agent-based model and linked into other software libraries, for example geographical information systems (GIS) such as OpenMap or GeoTools. Using a toolkit can greatly reduce the model construction time allowing more time to be dedicated to research. However, drawbacks include a substantial time investment on behalf of the researcher to learn the how to design and implement a model in the toolkit and the programming language the software uses. After this investment of time, it is possible that the desired functionality is not available.

In addition to toolkits, there is a steady increase of available software for constructing agent-based models. Notable examples include NetLogo and AgentSheets. Utilisation of such software is particularly useful for rapid development of basic or prototype models. The major drawback using software is that researchers are restricted to the design framework supported by the software and maybe unable to extend or integrate additional tools.

5 Working with Agent-Based Models

Once a model has been designed at the level of abstraction deemed necessary for the purpose of the model and an appropriate toolkit or software chosen for implementation (see Grimm and Railsback 2012; Crooks and Castle 2012 for more of a discussion), several other important issues need to be considered. These revolve around gaining an understanding and communicating the inner workings of the model but also considerations with respect to verification, calibration and validation of the model itself. It is to these issues that we now turn.

5.1 Verification, Calibration and Validation

One of the greatest challenges of utilising ABM concerns the issues of verification, calibration and validation (Crooks et al. 2008). “Verification is the process of making sure that an implemented model matches its design. Validation is the process of making sure that an implemented model matches the real-world.” (North and Macal 2007, pages 30–31). Verification is thus as a much a matter of testing the logic of the model through its computer programme as testing its formal logic. It involves checking that the model behaves as expected which is something that is often taken for granted. Validation relates to the extent that the model adequately represents the system being modelled (Casti 1997) and in this sense, it involves the goodness-of-fit of the model to data. However, the validity of a model should not be thought of as binary event (i.e. a model cannot simply be classified as valid or invalid); a model can have a certain degree of validity (Law and Kelton 1991), which of course is encapsulated by various measures of fit.

In contrast, calibration involves fine-tuning the model to a particular context and this means establishing a unique set of parameters that dimension the model to its data. This is not validation per se but calibration can often involve validation because the parameters are often chosen so that performance of the model related to data is optimal in some way, in terms of some criterion of goodness-of-fit, for example. This is a large subject area and suffice it to say, many if not most agent-based models suffer from a lack of uniqueness in parameter estimation due to the fact that their assumptions and processes tend to outweigh the data available for a complete assessment of their goodness-of-fit.

Concerns have been raised pertaining to verification and validation by numerous researchers (e.g. Batty and Torrens 2005; Crooks et al. 2008) and can be considered limitations to ABM (see Sect. 5.7). Ngo and See (2012) present a more detailed discussion of how verification, calibration and validation issues can be addressed while Evans (2012) raises awareness of error and uncertainty with respect to input data, parameterisation, and model form and offers guidance to minimising and understanding such errors. These issues are only mentioned here to stress to the reader that these are important and need to be considered when working with agent-based models.

5.2 Communication and Visualisation

Agent-based models tend to be overtly visual and this is extremely helpful as visualisation is one of the most effective ways to communicate key model information with regard to ABM (North and Macal 2007). Some argue that by making models more visual they become more transparent (Batty 2007) but also by visualising key model processes, helps to convey the model clearly and quickly (Kornhauser et al. 2009) and thus aiding with the verification and validation of model outputs. For example, via the GUI of the model we are able to track the simulation history as advocated by Axelrod (2007). Through this we can observe and explain how aggregate outcomes emerge from the local interactions of many individuals. Moreover, there are also qualitative evaluations of model validity that might be made from visualising outcomes of such models. For example, Mandelbrot (1983) argues that models which generate spatial or physical predictions that can be mapped or visualised must ‘look right’.

Patel and Smith (2012) provide a review of tools, techniques and methods for such visualizations in the second and third dimensions. Such tools as game engines and virtual worlds (see Crooks et al. 2009) provide a highly visual and immersive medium for ABM and has the potential to greatly aid in the communication and understanding of agent-based models. The dynamic and real-time visualisation and communication options (especially those in virtual worlds) provided by agent-based models allows us to address the challenge modellers face on how we might communicate and share agent-based models with all those we seek to influence. In the past, model results were mainly presented through the discussion of the model outcomes via static charts or screen shoots. However, as one of the key aspects of ABM lies in their dynamics, real-time visualisation of models and their outcomes can capture this and in a sense, show how micro interaction of individuals leads to more aggregate outcomes.

However, visualisation alone does not address all the issues relating to the communication of agent-based models. We also need methods to convey the model structure and key model parameters that allow for replication of such models. Replication of models allows others to gain confidence about the model and its underlying assumptions (see Crooks et al. 2008). Replication can be aided through the releasing of the source code of the model, along with the data and parameters presented in a paper or by providing a detailed description of the model such as the “ODD” (Overview, Design concepts, Details) protocol (Grimm and Railsback 2012).

6 Advantages of Agent-Based Modelling

The way we currently conceptualise and model human geographical systems, in particular the evolution of cities, has changed, from the aggregate to disaggregate, and from the static to the dynamic as highlighted in Table 5.1. ABM provides us with tools to explore this change in approach. There are three main claimed advantages of the agent-based approach over traditional modelling techniques, such as top-down techniques of non-linear dynamical systems in which related state variables are aggregated (e.g. through differential equations). The agent-based approach: (i) captures emergent phenomena; (ii) provides a natural environment for the study of certain systems; and (iii) is flexible, particularly in relation to the development of geospatial models.

Table 5.1 The changes in modelling techniques using ABM over traditional modelling of the 1960s and 1970s (Source: Bernard 1999)

Traditional urban models focused on modelling the system of interest top-down in contrast to model developers who divided the city into a few 100 units, while assuming average behaviour of individuals. Through their ability to describe behaviour and interactions of a system’s constituent parts from the bottom-up,Footnote 1 ABM provides an alternative approach. Bonabeau (2002) has identified a non-exhaustive list of conditions where ABMs can be useful for capturing emergent behaviour:

  1. 1.

    Interaction between agents is complicated, non-linear, discontinuous, or discrete (i.e. the behaviour of an agent can be altered dramatically, even discontinuously, by other agents). This can be particularly useful if describing discontinuity of individual behaviour, for example, using differential equations;

  2. 2.

    The ability to design a heterogeneous population of agents with an agent-based model is significant. Agents can represent any type of unit. Unlike agent-based models, aggregate differential equations tend to smooth out fluctuations. This is important because under certain conditions, fluctuations can be amplified: a system can be linearly stable but susceptible to large perturbations. Heterogeneity also allows for the specification of agents with varying degrees of rationality. This offers advantages over approaches that assume perfectly rational individuals, if they consider individuals at all;

  3. 3.

    The topology of agent interactions is heterogeneous and complex. Aggregate flow equations usually assume global homogeneous mixing, but the topology of an interaction network can lead to significant deviations from predicted aggregate behavior and,

  4. 4.

    Agents exhibit complex behaviour, including learning and adaptation.

Furthermore, the ability of agent-based models to describe the behaviour and interactions of a system allows for system dynamics to be directly incorporated into the model. This represents a movement away from the static nature of earlier styles of urban and regional modelling (see Batty 1976). However, while time in ABMs is still discrete, i.e. it still moves in ‘snapshots’, the time steps may be small enough to approximate real time dynamics. Additionally different processes occur over different time periods, for example, long term economic cycles, daily commuting and hour by hour social interaction. Agent-based models can incorporate these different scale time processes into a single simulation by using a variety of automata clocks designed to mimic the temporal attributes of the specific urban process under study (Torrens 2003), thus allowing the modeller to realistically simulate urban development or a particular geographical phenomenon (O’Sullivan 2001).

In many cases, ABM is a natural method for describing and simulating a system composed of real-world entities especially when using object-orientated principles (Gilbert and Terna 2000). The agent-based approach is more akin to ‘reality’ than other modelling approaches. Agent-based simulations provide an opportunity to represent and test social theory which cannot easily be described using mathematical formulae (Axelrod 1997). The models often map more naturally to the structure of the problem than equation-based models (Parunak et al. 1998) by specifying simple behavioural and transition rules attached to well defined entities, therefore providing a medium for the infusion of any geographic theory or methodology into the model. In particular, the agent-based approach can be useful when it is more natural to describe the constituent units of a system under some of the following conditions (Bonabeau 2002):

  1. 1.

    The behaviour of individuals cannot clearly be defined through aggregate transition rates (e.g. the decision to move);

  2. 2.

    Individual behaviour is complex. Although hypothetically any process can be explained by an equation, the complexity of differential equations increases exponentially as the complexity of behaviour increases. Describing complex individual behaviour with equations can therefore become intractable;

  3. 3.

    Activities are arguably a more natural way of describing a system than processes; and,

  4. 4.

    Agent behaviour is stochastic. Points of randomness can be applied strategically within agent-based models, rather than arbitrarily within aggregate equations.

Finally, the agent-based approach to modelling is flexible, particularly in relation to geospatial modelling. Notably, spatial simulations benefit from the mobility that agent-based models offer. An agent-based model can be defined within any given system environment (e.g. a building, a city, a road network, a computer network, etc). Therefore agent-based models are essentially without scale. It is the phenomena of interest which drives the scale to be used, for example, from the micro movement of pedestrians within a building during an evacuation (e.g. Gwynne et al. 2001), to the movement of cars on a street network (e.g. Nagel 2003) to the study of urban growth (e.g. Brown et al. 2005). Additionally as ABM allows for the representation of individual objects, it is therefore possible to combine these objects to represent phenomena at different scales within the same model. Furthermore, agents have the ability to physically move within their environment, in different directions and at different velocities. Agent mobility makes ABM very flexible in terms of potential variables and parameters that can be specified. Neighbourhoods can also be specified using a variety of mechanisms such as well understood geographical relations such as market catchments areas, travel to work zones, walking distance buffers etc.

The implementation of agent interactions can easily be governed by space, networks, or a combination of structures (as highlighted in Alam et al. 2012) This would be far more complex to explain by mathematics, for example (Axtell 2000). Significantly, agent-based models can regulate behaviours based on interactions at a specific distance and direction (thus allowing for action-at-a-distance). In addition, agent-based models also provide a robust and flexible framework for tuning the complexity of agents (i.e. their behaviour, degree of rationality, ability to learn and evolve, and rules of interaction). Another dimension of flexibility is the ability to adjust levels of description and aggregation. It is easy to experiment with aggregate agents, sub groups of agents, and single agents, with different levels of description coexisting within a model. Thus, the agent-based approach can be used when the appropriate level of description or complexity is unknown, and finding a suitable level requires exploration.

7 Limitations of Agent-Based Modelling

The enthusiasm of adopting the ABM approach for modelling geographical systems is curtailed by some limitations. Although common to all modelling techniques, one issue relates to the purpose of the model; a model is only as useful as the purpose for which it is constructed. A model has to be built at the right level of abstraction for every phenomenon, judiciously using the right amount of detail for the model to serve its purpose (Couclelis 2002). If the level of abstraction is too simple, one may miss the key variables. Too much detail, and the model will have too many constraints and become overly complicated. Abdou et al. (2012) provide useful advice for designing and building an agent-based model. This remains an art more than a science (Axelrod 2007). Axtell and Epstein (1994) provide practical guidelines for the evaluation of model performance depending on the level of model abstraction.

The nature of the system being modelled is another consideration. For example, a system based on human beings will involve agents with potentially irrational behaviour, subjective choices, and complex psychology (see Kennedy 2012, for an overview of how behavioural frameworks can be implemented in agent-based models). These factors are difficult to quantify, calibrate, and sometimes justify, which complicates the implementation and development of a model, as well as the interpretation of its simulation outputs. However, the fundamental motivation for modelling arises from a lack of full access to data relating to a phenomenon of interest. Often, the target itself is neither well-understood nor easy to access. The development of agent-based models offers a means to increase the utility of simulation models, by closely tailoring the model and subsequent analysis to the needs of end users (Parker et al. 2003). In particular, the visual communication often provided by spatially explicit models, especially those coupled with GIS, can be effective at depicting formal model results to a wide range of users (Axtell 2000). Nevertheless, a model’s output must be interpreted appropriately. Varying degrees of accuracy and completeness in the model inputs determine whether the output should be used purely for qualitative insight, or accurate quantitative forecasting. Crooks and Castle (2012) review the purpose of different ABM approaches in more detail especially relating to explanatory and predictive (descriptive) modelling approaches.

By their very definition, agent-based models consider systems at a disaggregated level. This level of detail involves the description of potentially many agent attributes and behaviours, and their interaction with an environment. The only way to treat this type of problem in agent computing is through multiple runs, systematically varying initial conditions or parameters in order to assess the robustness of results (Axtell 2000). There is a practical upper limit to the size of the parameter space that can be checked for robustness, and this process can be computationally intensive, thus time consuming. Although computing power is increasing rapidly, the high computational requirement of ABM remains a limitation when modelling large systems (see Parry and Bithnell 2012).

In this sense, agent-based models have the potential to suffer from similar limitations of the first generation of urban models such as Lee’s (1973) criticism of data hungriness. However, this can be overcome by considering what level of abstraction is needed to examine the phenomena of interest (for example, is ‘all the detail needed?’). Or a series of smaller models could be created examining specific aspects of the system. There is also a lack of personal data both for the present and the past. For example in the UK, the smallest measure of individual data from the census is the Output Area which contains around 125 households (notwithstanding access to personal data, see Benenson et al. 2002) which can be obtained through MSM techniques as demonstrated in Birkin and Wu (2012).

Critics of complexity theory point out that the wide variety of surprising behaviour exhibited by mathematical and computational models are rarely found in the real-world. In particular, ABMs are very sensitive to initial conditions and to small variations in interaction rules (Couclelis 2002). This path dependence means that using ABM for prediction can be challenging (see Batty and Torrens 2005). Consequently, modellers of complex systems are never likely to enjoy the intellectual comfort of ‘laws’ as seen in the physical or chemical worlds (Wilson 2000). Despite this, and the other limitations that have been highlighted, ABM is a useful tool for exploring systems that exhibit complex behaviour. They highlight uncertainty behind modelling geographical systems and provide a technique to explore such uncertainty through their ability to generate possible futures rather than generating definitive models with strong predictive assumptions (Epstein 1999). Complexity theory has brought awareness of the subtle, diverse, and interconnected facets common to many phenomena, and continues to contribute many powerful concepts, modelling approaches and techniques (see Manson et al. 2012 for further information). In this vein, Section 5.8 explores general ABM applications before focussing on agent-based models of geographical systems.

8 Applications of Agent-Based Models

It is impractical to comprehensively review the full range of ABM applications within this chapter, and even examination of a representative sample presents a challenging exercise. ABMs have been developed for a diverse range of subject areas, such as: archaeological reconstruction of ancient civilisations (Axtell et al. 2002; Kohler et al. 2000); understanding theories of political identity and stability (Lustick 2002); understanding processes involving national identity and state formation (Cederman 2001); biological models of infectious diseases (Yang and Atkinson 2005); growth of bacterial colonies (Kreft et al. 1998); single- (Emonet et al. 2005) and multi-cellular level interaction and behaviour (Athale and Deisboeck 2006); alliance formation of nations during the Second World War (Axelrod and Bennett 1993); modelling economic processes as dynamic systems of interacting agents (Tesfatsion 2006); company size and growth rate distributions (Axtell 1999); geographical retail markets (Heppenstall et al. 2006), size-frequency distributions for traffic jams (Nagel and Rasmussen 1994); price variations within stock-market trading (Bak et al. 1999); voting behaviours in elections (Kollman et al. 1992); identifying and exploring behaviour in battlefields (Ilachinski 1997); spatial patterns of unemployment (Topa 2001); trade networks (Epstein and Axtell 1996); business coalitions over industry standards (Axelrod 2006); social networks of terrorist groups (North et al. 2004), to name but a few. These examples can be constructed as lying on a continuum, from minimalist academic models based upon ideal assumptions, to large scale commercial decision support systems based upon real-world data. In relation to the focus of this chapter, the remainder of this section concentrates on the origin of ABM applied to urban phenomena, particularly in a geographical context.

Despite the advantages of ABM as a tool for simulation, ABM has only recently been adopted for geospatial research. Thomas Schelling is credited with developing the first social agent-based model in which agents represent people, and agent interactions represent a socially relevant process. Schelling’s (1971) model demonstrated that stark segregation patterns can emerge from migratory movements among two culturally distinct, but relatively tolerant, types of household. Yet ABM did not begin to feature prominently in the geographical literature until the mid-1990s when Epstein and Axtell (1996) extended the notion of modelling people to growing entire artificial societies. Epstein and Axtell’s Sugarscape model demonstrated that agents could emerge with a variety of characteristics and behaviours suggestive of a rudimentary society (e.g. in terms of patterns of death, disease, trade, health, culture, conflict, war, etc).

The above two models have inspired a number of modelling efforts with respect to urban simulation and it is to this that we now turn briefly. Further information and summaries of ABM applications are presented in Parts 3 and 4 of this book. As stated previously, ABMs can be applied to any scale, from the atomic to the global. How one defines an agent depends on what phenomena one is interested in.

Numerous efforts have been made to apply ABM to environmental modelling especially land-use and land-cover change models (see Parker 2005; Parker et al. 2012; Magliocco 2012; for further details). ABM specifically pertaining to urban phenomena including dynamics in Latin American cities (Barros 2012) urban housing dynamics (Benenson et al. 2002), urban growth and residential location (Torrens 2006; Brown et al. 2005; Liu and Feng 2012), and gentrification (Jackson et al. 2008). The impact of policy on geographical areas has also been investigated through ABM, for example education planning (Harland and Heppenstall 2012) and crime simulation (Malleson 2012). Due to the ability of agents within ABMs to move, they are also commonly used to simulate traffic movement (e.g. Beuck et al. 2008). Additionally, numerous applications have been developed specifically to study micro-scale phenomena such as pedestrian models (Johnasson and Kretz 2012), which explore how agents move around their environment. Other useful examples of spatially explicit agent-based models include: the simulation of pedestrians in the urban centres (Haklay et al. 2001), the examination of crowd congestion at London’s Notting Hill carnival (Batty et al. 2003), and emergency evacuation of buildings (e.g. Gwynne et al. 2001).

9 Conclusion

Successfully replicating the processes and dynamics that occur within geographical systems is highly challenging. There are a potentially infinite number of individual components linked together by often unknown interconnected processes that play out at different spatial and temporal scales. The notion of bottom-up modelling advocated by ABM allows the results of local phenomena to be understood and measured at a global level. While established methods, such as SI (Spatial Interaction) modelling, treat populations as aggregate homogeneous components, ABMs potentially allow every individual to be assigned their own characteristics. This is a powerful paradigm that holds great promise for facilitating greater understanding of geographical systems.

This chapter has provided a general introduction to ABM. Along with a presentation of the main characteristics of ABM, the distinction between ABM, CA and MSM have been discussed. Important considerations when working with ABM, for example validation, verification and visualisation, were presented along with the advantages and limitations of this approach for geographical systems. The chapter concluded by exploring a diverse range of geographical applications of ABM.