White Rose DTP Advanced Methods Showcase

Agent-Based Modelling


Nick Malleson

University of Leeds, UK

n.s.malleson@leeds.ac.uk


Slides available at:
www.nickmalleson.co.uk/presentations.html

Overview

Introduction to ABM

Aggregate v.s. Individual-Based Modelling

Modelling Theory, Geography, Behaviour and Emergence with ABM

Challenges

ABM Example: Simulating daily mobility

Discussion

Diagram of regression

Introduction to ABM

Aggregate v.s. Individual

'Traditional' modelling methods work at an aggregate level, from the top-down

E.g. Regression, spatial interaction modelling, location-allocation, etc.

Aggregate models work very well in some situations

Homogeneous individuals

Interactions not important

Very large systems (e.g. pressure-volume gas relationship)

Diagram of regression

Introduction to ABM

Aggregate v.s. Individual

But they miss some important things:

Low-level dynamics, i.e. “smoothing out” (Batty, 2005)

Interactions and emergence

Individual heterogeneity

Unsuitable for modelling complex systems

Diagram of the sims

Introduction to ABM

Systems are driven by individuals

(cars, people, ants, trees, whatever)

Bottom-up modelling

An alternative approach to modelling

Rather than controlling from the top, try to represent the individuals

Account for system behaviour directly

Autonomous, interacting agents

Represent individuals or groups

Situated in a virtual environment

A termite mound.
Attribution: JBrew (CC BY-SA 2.0).

Why ABM?

Emergence

"The whole is greater than the sum of its parts." (Aristotle?)

Simple rules → complex outcomes

E.g. who plans the air-conditioning in termite mounds?

Hard to anticipate, and cannot be deduced from analysis of an individual

ABM uses simulation to (try to) understand how macro-level patterns emerge from micro-level behaviours

Why ABM?

Better Representations of Theory

Example: Crime theories emphasise importance of ...

Individual behaviour (offenders, victims, guardians)

Individual geographical awareness

Environmental backcloth

Why ABM?

Better Representations of Space

Example of GIS data

Micro-level environment is very important

Can richly define the space that agents inhabit

More Natural Description of a System

Describe the entities directly, rather than using aggregate equations

Why ABM?

History of the Model Evolution

Rather than returning a single result, the model evolves

The evolution itself can be interesting

Analyse why certain events occurred

Diagram illustrating different ABM applications by behavioural and system/environment complexity

An experiment:

Choose a number between 1 and 4 (inclusive)

Were you able to chose a number at random?

Or did most people choose the number 3?

Modelling agent behaviours

Many behaviours are hard / impossible to model

Choose those that are the most important. Cannot include everything!

Some can be very simple - e.g. threshold-based rules (Kennedy, 2012) are common (Birks et al. 2012, 2013; Dray et al. 2008; Groff 2007a,b; Hayslett-McCall, 2008)

IF hunger IS ABOVE hunger_threshold THEN search_for_food
OTHERWISE do_something_else

More advanced cognitive frameworks exist

Beliefs, Desires, Intentions (Bratman et al., 1988)

PECS (Schmidt, 2000).

Reinforcement learning (watch this space)

ABM Predictive Example

Awareness space test

Agent-Based Modelling - Difficulties

Will I play with the truck, or the duck?

(actually he played with his trains...)

Tendency towards minimal behavioural complexity

Stochasticity

Computationally expensive (not amenable to optimisation)

Complicated agent decisions, lots of decisions, multiple model runs

Modelling "soft" human factors

Need detailed, high-resolution, individual-level data

Individual-level data

ABM Example:
Simulating Urban Mobility

Motivation: better models of daily urban dynamics by combining diverse data and simulation

Simulating Urban Flows (surf) and Data Assimilation for Agent-Based Modelling (dust) projects

Crols, T., and N. Malleson (2019) Quantifying the Ambient Population Using Hourly Population Footfall Data and an Agent-Based Model of Daily Mobility. GeoInformatica DOI: 10.1007/s10707-019-00346-1.

Malleson, N., K. Minors, Le-Minh Kieu , J. A. Ward , A. West and A. Heppenstall (2020) Simulating Crowds in Real Time with Agent-Based Modelling and a Particle Filter. Journal of Artificial Societies and Social Simulation (JASSS) 23 (3). http://jasss.soc.surrey.ac.uk/23/3/3.html DOI: 10.18564/jasss.4266

Simulating Urban Mobility

Wi-Fi footfall counters. Case study: Otley, West Yorkshire

The surf model environment in Otley The surf model environment in Otley (zoom in)

Simulating Urban Mobility

Diagram illustrating SURF method

Simulating Urban Mobility: Results 1

Initial results from the surf model

Simulating Urban Mobility: Results 2

Results after including commuter agents

Next steps: real-time model updating

Diagram of dynamic data assimilation and an ABM

Data Assimilation for Agent-Based Modelling (dust.leeds.ac.uk)

Next steps: digital twins...

Concept of a social digital twin: data and methods at the 
                                  individual level, meso level and macro level

If you want to learn more ...

Why Model? (Epstein, 2008)

Generative Social Science (Epstein, 2007)

How to build and use Agent-Based models in social science (Gilbert & Terna, 2000)

Validation and verification of Agent-Based Models in the social sciences (Ormerod & Rosewell, 2009)

Agent based models in Python: Intro to Mesa (free tutorial on Complexity Explorer)

Fundamentals of NetLogo (another free tutorial)

Summary

Introduction to ABM

Aggregate v.s. Individual-Based Modelling

Modelling Theory, Geography and Emergence with ABM

Modelling behaviour

Challenges

ABM Example: Simulating daily mobility

Discussion

White Rose DTP Advanced Methods Showcase

Agent-Based Modelling


Nick Malleson

University of Leeds, UK

n.s.malleson@leeds.ac.uk


Slides available at:
www.nickmalleson.co.uk/presentations.html