Home -> Online Articles -> Geosimulation - Agent-based Simulation of Complex Spatial Systems

01-09-2008

Geosimulation - Agent-based Simulation of Complex Spatial Systems
Or How to Put the Real SimCity into Practice with the Agent Analyst Extension for ArcGIS
 

 

Modeling all the individual entities in a spatial system is like building the system from its atoms. Multi-agent simulation offers many advantages for the exploration of social processes and gives researchers intuitive access to modeling. Although explicit spatial simulations are rare, spatial relationships often play an important role when considering processes within systems. Geosimulation seems to be the main paradigm of spatial simulation for the coming years. This article will explain the fundamentals of agent-based geosimulation and its advantages. It will also introduce Agent Analyst Extension, a tool for comfortably creating agent-based models in ArcGIS and OpenMap.

 

By Florian Fischer


Micro-Macro link.

 

When considering simulation software like SimCity, Mobility, MetroQuest, UrbanSim, Transims and the multi-agent transport simulation toolkit, MATSIM-T, the transition from computer games to real-world applications seems obvious. As all these products use similar software algorithms and visualization techniques, it doesn’t matter whether they are made for gaming or spatial planning. Roughly speaking, differences are mainly indicated in the granularity and level of generalization of the data sets used and the presentation of results.

In a 2006 BBC News article on the urban simulation application MetroQuest, developer Dave Biggs states: “We thought, we can just get a fraction of the excitement that people have playing SimCity – but use real information, with real data, from real cities.”

MetroQuest – with SimCity as a blueprint – is used by many urban administrations including Manchester, Edmonton and the Greater Vancouver Regional District.

 

Why Simulate?

Modeling and simulation help to make statements about the behavior of a system under certain conditions. Although these conditions could be tested using the real system, models have the advantage of not endangering, modifying or damaging the real system in any way. Methods of geosimulation are useful to represent spatiotemporal questioning in models. They strengthen the model’s analytical and visual accessibility. Simulations fulfil two complementary functions simultaneously: simulation is the modeling of a process or system, and simulation is the process of designing a model of a real system, too. The explicit modeling of spatial objects, structures and processes is the main characteristic of geosimulation as Benenson and Torrens define it: “Geosimulation is concerned with the design and construction of object-based high-resolution spatial models, using these models to explore ideas and hypotheses about how spatial systems operate”. Examples of geosimulation are the estimation of buyer behavior in shopping malls with regard to the spatial arrangement of shops, relocation behavior within a housing market, and the establishment of social networks within neighbourhoods. One of the most prominent areas of application is transportation simulation, i.e,. modeling the way people organize their activities spatially by means of transport, the drivers’ behavior on-trip or pedestrian behavior within a pedestrian zone. The purposes of geosimulation vary as widely as those of non-spatial simulation. They embrace experimentation, optimization, building a connection between the deductive and inductive approach and creating hypotheses for further testing.

Agent Analyst Components and Action Editor.

 

Modeling and Simulation of Complex Systems

One way of implementing geosimulation is the construction of MAS, i.e., multi-agent systems. They enable direct modeling of human behavior by incorporating the concept of the agent. Collective phenomena are therefore the result of interaction between agents. In multi-agent systems quantitative parameters and processes can be modeled as well as qualitative parameters and processes. The focus in constructing multi-agent systems is on the interaction between agents and the observation of emergent patterns. Interaction is considered as a dynamic relationship where agents mingle with each other as a result of their own actions or other agents’ actions. While interacting in a common environment, agents can even establish indirect interaction. Multi-agent systems have a big advantage due to their anthropomorphic and intuitive way of modeling human behaviour. Their generative approach to individual-specific modeling of behavior enables users to observe and analyse how and why emergent patterns arise within agent-societies. The influence of space as behavioral context, however, is neglected in many models and therefore not incorporated explicitly. This obstacle is likely to be solved by the use of GIS as a modeling tool, but for GIS itself handling dynamic data and modeling human behaviour is not an easy task.

 

GIS Technology and Spatiotemporal Modeling

Only some of the current GIS products are able to handle spatiotemporal data seamlessly, as GIS technology is still dedicated to a traditional, static cartographic paradigm. They conceptualize geo-objects along with their cartographic representation and this hinders the integration of spatially dynamic aspects. GIS has never been thought to represent the spatiotemporal dimensions of social, economic and political processes, but only to represent their spatial structures. To put it simply: what is missing are appropriate tools to model spatiotemporal aspects of human behavior, especially that of interaction between a multitude of spatial entities on a micro level and its emergent results on the macro level.

 

Geographical Information Systems offer a wide range of possibilities for representing spatial variation within models. They offer many tools for spatial data gathering, processing and visualization that are highly usable for building dynamic simulation models. Therefore the use of dynamic simulation methods is of high importance to enrich the analytical potential of GIS.

 

Coupling GIS and MAS

Geosimulation is characterized by an explicit spatial representation of interaction between actors within a spatial system. A Geographical Information System is deployed within this context for pre-processing, analysis and visualization of spatiotemporal model data. It is common practice to couple GIS and MAS when implementing a geosimulation. Generally speaking there are four options for coupling GIS and MAS:

  • loose coupling – establishing a file-based exchange of data between GIS and MAS
  • tight coupling – integrating functionalities of GIS and MAS in a single software package
  • direct cooperative coupling – GIS or MAS are deployed as Server or Client and work together on a client/server basis
  • Indirect cooperative coupling – a software environment is used as the medium for negotiating between GIS and MAS
  • One option for coupling GIS and MAS comfortably is the Agent Analyst Extension for ArcGIS.


Micro-Macro link.


The Agent Analyst Extension for ArcGIS

Agent Analyst is an open-source ArcGIS extension that provides a toolset for fully integrating multi-agent models into ArcGIS. It is based on Repast, the Recursive Porus Agent Simulation Toolkit, developed by the Argonne National Laboratory. Agent Analyst generates agent-based models and runs simulations within the ArcGIS environment by creating agents directly from spatial objects in ArcGIS. The agents’ behavior is programmed in Python. Agent Analyst offers a graphical user interface for scheduling simulations, establishing mappings to ArcGIS layers and specifying the behavior and interactions of the agents. Therefore it adds the capability of agent-based geosimulation to the toolset of ArcGIS users and is a suitable platform for rapid prototyping of geosimulation models. Agent Analyst offers different predefined types of models including different types of agents. The GIS model provides agents with the ability to behave inside a spatial model defined by ArcGIS or OpenMap. Using ArcGIS, agents are created from ESRI shapefiles only.

 

Every model contains exactly one environment component. It is the base element and hosts all further model components, e.g., the agent-type household. Every component has its own fields, actions and a specific schedule. The actions editor is used to program the behavior of every component in Python.

 

Vector Agents, Generic Agents and Distributed Spatial Analysis

The GIS model uses generic agents and vector agents. A vector agent is a spatial software component that is fed by an ESRI shapefile. Every feature of a loaded shapefile becomes a spatial agent using the geometry and attributes of the feature. The features’ attributes are used as characteristics of the vector agent which can influence its behavior and change over time. A generic agent can be useful for creating non-GIS-based actors which might have an indirect spatial reference by pointing to one or more vector agents and hence become spatial agents too. Indirect referencing empowers agents to define neighborhoods irrespective of their geographical neighborhood.

All vector agents can use tools for spatial analysis within their behavioral program. This is the point where the simulation really becomes spatially explicit. Vector agents can access tools for spatial analysis using the JTS Topology Suite from Vivid solutions. The JTS Topology Suite can be applied only for the analysis of vector agents. A more general approach for spatial analysis is the use of ArcObjects. Using ArcObjects even a shift from loose coupling (file-based) to a tight-coupling mode of simulation is possible. ArcObject empowers vector agents as well as generic agents to conduct spatial analysis considering all spatial datasets usable by ArcGIS. JTS Topology Suite can only access datasets which have been loaded into the Agent Analyst extension. Agent Analyst also provides routines to rewrite manipulated attributes and coordinates of agents to the shapefile and refresh the ArcGIS display.

 

Tracking Analyst Extension to Analyze Results

Validating, calibrating and running a geosimulation for different parameter values usually results in a ton of data that needs to be analyzed. As it is spatiotemporal data, the ArcGIS Tracking Analyst Extension offers some functionality for at least visual analysis. The extension allows the flow of spatial entities to be shown as well as the temporal change of state within the cartographic environment of ArcGIS.

In the image below a snapshot of a geosimulation of the relocation behavior of households within Munich’s Messestadt Riem quarter is shown.

 

This snapshot was made from a Tracking Analyst animation. It is not easy, however, to work with Tracking Analyst as it is designed for real-world observation rather than for simulation output. Therefore the data resulting from a geosimulation has to be transformed several times to fit Tracking Analyst’s requirements.

 

A Glorious Future But There Are Still Many Hurdles

Agent-based geosimulation seems to be not only a promising concept for the simulation of complex spatial systems but also technically easy to implement. However, tools for the analysis of dynamic data from simulations are needed. These tools are extremely important for becoming aware of phase transitions, shifting points and conditions within the modeled system and for establishing a useful connection between the virtual, simulated world and the real-world processes.

Moreover, fundamental data for building up an individual-based simulation rarely exists. As socio-economic and demographic data is highly aggregated and not spatially referenced, artificial populations have to be generated for agent-based simulations trying to disaggregate those rough statistical datasets. Alternatively, expensive social surveys have to be conducted to provide the required datasets.

While there are already many ways to model individual agents’ behavior, researchers are still challenged to find more realistic and less mechanical ways of modeling behavior. But what is most important for further progress in geosimulation is to carry out hands-on work and conduct case studies to find out more about its limits and advantages. Moreover, researchers and practitioners must formulate their needs for more precise data in order to attain higher quality models.

 

Florian Fischer (ffischer@geoinformatics.com) is a contributing editor of GeoInformatics. Some recommended links: the highly regarded blog ‘GIS and Agent-Based Modelling’ by Andrew Crooks and Christian Castle of the Centre for Advanced Spatial Analysis, University College London: gisagents.blogspot.com. Geosimulation by Itzhak Benenson and Paul M. Torrens: www.geosimulationbook.com BBC News article about MetroQuest: news.bbc.co.uk/go/pr/fr/-/1/hi/technology/5105534.stm, Stand: 15.08.2006. Agent Analyst: www.institute.redlands.edu/agentanalyst. MetroQuest: www.envisiontools.com. Mobility: www.mobility-online.de. MATSIM-T: http://[NewPageLink]. SimCity: simcity.ea.com. Transims: transims.tsasa.lanl.gov. UrbanSim: www.urbansim.org.