Why Agent-Based Modelling?

Sandtable is known as a specialist in agent-based modelling. As such, we’re often asked what kind of modelling question ABM is best placed to answer. Or, put another way, what does ABM do that other techniques can’t?

In the table below we’ve mapped features of the system to be modelled (along the top) against modelling approaches (down the right). A tick indicates that the modelling approach can capture the relevant system feature.

Models_vs_ABM

What we see immediately is that ABM has pretty good coverage across all potential system features. Where it has no coverage, that’s because it would be a waste of time to build an ABM given the availability of other techniques. If you’re trying to model the mean field of a system, there is no point building out an ABM only to go back to recover the mean of the agent behaviour.

What we also see is that there are some features that ABM covers that few other approaches cover, such as local and spatial interactions, and individual level behaviour. If you need an individual level model with spatial interactions, ABM is a good way to go.

But note also that there’s a lot of overlap between ABM and other modelling approaches in terms of what they are good for modelling. In a case where both ABM and another modelling approach can be used, what are the advantages of using ABM? Briefly:

  • ABMs are extensible: models can be incrementally advanced and refashioned to answer new business questions.
  • ABMs are interpretable. For example, they support transparent and granular scenario planning based on real-world concepts.
  • ABM is an holistic modelling approach that permits multiple questions to be answered across a complete system (i.e. ABMs are many question models). In this sense, it can be used to reconcile two contradictory models of different parts of the system.
  • It’s often the case that individual-level behaviour is better understood than aggregate (population) level. Since it works at individual-level, ABM starts with something that is often better understood.
  • ABM embraces complexity: as such, it doesn’t require the introduction, early in the modelling process, of a host of simplifying assumptions.
  • Finally, there’s a subject bias for ABMs: they are particularly well suited to modelling behaviour, because of their reliance on the agent and agency metaphor.

It’s this last point that brings us back to where we started. “Why ABM?” isn’t the right question. Depending on the problem, you may or may not want to use ABM. The real question is, “Why do you, Sandtable, use ABM.” Sandtable’s focus is on understanding human behaviour, and the relationship between the micro and macro level. ABM provides us with a flexible approach that is well-suited to the kind of questions we’re trying to address.

Appendix: Modelling Techniques Described

Machine Learning

An approach to model parameterisation based on statistical inference from exemplar data (learning).

Linear regression

A simple mathematical model relating an outcome to a linear combination of input variables.

Stochastic Differential Equations (SDE)

Differential equations where one or more terms are a stochastic process. SDEs are continuous time, continuous state-space models.

ODE : ordinary differential equation

Describes the evolution of a system by giving the derivates of the elements of the system as function of one variable (usually time) and the value of the variables itself.

PDE : partial differential equation

Same as ODE, but now there is more than one independent variable. E.g. a time variable and two space variables are used to describe how heat spreads on a surface.

Probabilistic Programming

Probabilistic programming is related to Bayesian Networks and Graphical models. It is used to describe probabilistic models on which inference can be performed.

Mean Field theory

Aims to describe the behaviour of a stochasitc system or behaviour using a simpler model. E.g. reducing a many body system to a one body system.

Mixed Effects Models

When both fixed and random effects are used to describe data of different individuals. E.g. for a linear regression on data of N subjects: instead of fitting one line, you fit N lines, but impose that they have the same slope (fixed effect) but there might be a different intercept (random effect) of each of the N fitted lines.

Deep learning

A machine learning technique in which there are a large number of processing layers between input and output, typically built around neural networks. The technique is designed to find high-level abstractions in the input data, such as the presence of a cat in a YouTube video.

Agent-Based Model (ABM)

An agent-based model simulates the actions and interactions of autonomous agents with a view to assessing their effects on the system as a whole.

Markov Jump Process

The Markov jump process (or Kolmogorov equations) is a continuous-time and discrete state space Markov process which includes transition probabilities between states, as well as an additional parameter specifies the rate of leaving a given state. In general, Markov processes allow for the study of stochastic systems, such as the birth-death process.

Leave a comment

Please prove that you are human: