Uncertainty in agent-based models for smart city forecasts

Developing methods that can be used to better understand uncertainty in individual-level models of cities


Individual-level modelling approaches, such as agent-based modelling (ABM), are ideally suited to modelling the behaviour and evolution of social systems. However, there is inevitably a high degree of uncertainty in projections of social systems, so one of the key challenges facing the discipline is the quantification of uncertainty within the outputs of these models. The aim of this project is to develop methods that can be used to better understand uncertainty in individual-level models. In particular, it will explore and extend the state-of-the-art in two related areas: ensemble modelling and associated emulators for use in individual-level models.

Explaining the science

Agent-based modelling is a means of simulating systems that focuses on the individual units that ultimately drive the underlying system. In the context of cities, these units are usually people, vehicles, businesses, etc. Although agent-based models are ideally suited to modelling many social phenomena, they often have considerable uncertainty associated with them. We can never be sure of the decisions that individuals will take, which means that models must be run hundreds or thousands of times to allow us to explore the universe of possible outcomes that result from all of these different decisions. This project will look at two ideas in particular - those of ensembles and emulators - which should make it easier to better understand the inner-workings of agent-based models and allow us to run large experiments.

Project aims

The aim of this project is to develop methods that can be used to better understand uncertainty in individual-level models. In particular, it will explore and extend the state-of-the-art in two related areas: ensemble modelling and associated emulators for use in individual-level models. 

The use of ensembles in many physical science modelling disciplines – such as numerical weather forecasting in particular – has been well developed, but at present, the method cannot be easily applied to agent-based models (ABMs). As agent-based models are typically designed using theories about human behaviour, model misspecification can be a significant problem that is not shared in other fields. Hence an improved understanding about how ensembles can be applied and how their outputs can be interpreted, in the context of agent-based modelling, will be extremely timely and valuable.

The project will also investigate emulators, and their applicability to individual-level models. The motivation behind the use of emulators is that individual-based simulations are usually extremely computationally expensive, so the use of emulators can make experiments that require hundreds or thousands of individual model runs possible. A good emulator could be used in an ensemble, for example. The project will, therefore, explore the use of emulators as a means of simulating the behaviour of more complex agent-based models.


Agent-based models are regularly applied to the study of human and biological systems. They are appropriate for the study of any system in which the interactions of the underlying individuals are crucial for the running of the wider system. This project will specifically study the flows of people and vehicles around urban areas. Simulations of these movements will be developed and then ensembles and emulators will be built to better understand the results. Ultimately this could be useful for stakeholders who are interested in better understanding how cities work and for making short term forecasts under different scenarios.