Agent-based models (ABMs) play a useful role in social sciences, helping us to understand emergent patterns in social and environmental systems while retaining detail of the individuals. However, their predictive potential is limited, as calibration is often restricted to a one-shot approach. Dynamic Data Assimilation (DDA) of ABMs is an as-yet unexplored area that would allow the models to be calibrated on the fly, resulting in continuous error constraint. The purpose of this project was to apply DDA to a very basic ABM, and to identify any ABM-specific problems with data assimilation.

Data and methods

The agent-based model was designed using python to simulate agents moving along a street, from point A to point B. Footfall cameras were placed at points A and B, counting how many agents passed. Halfway along the street some agents would leave the system, at a certain constant rate termed the bleed-out rate. The inspiration for this model came from publicly available footfall data sourced from cameras in Leeds city centre.

We assumed (unrealistic) knowledge of the number of agents leaving point A and used dynamic data assimilation with synthetic data to estimate the number of agents at point B.

The dynamic data assimilation method used was the Ensemble Kalman Filter (EnKF). The algorithm combines noisy observations with a model that has knowledge of the underlying system, to produce estimates of the true system state.

Key findings

Figure 1 shows the results obtained when running the EnKF for five days. The camera counts at point B predicted solely by the model are shown in red, the analysis (the DDA predictions produced by combining the noisy observations with the model predictions) in green, and the blue square markers show the true synthetic data. The camera counts were recorded hourly, to mirror the hourly counts made by the Leeds cameras.

The analysis is much closer to the true synthetic data than the model forecasts are. This shows that the EnKF is successfully using the observations to adjust the model forecasts, making a more accurate prediction of the system.

In predicting the number of agents at point B, the dynamic data assimilation method also performs parameter estimation of the bleed-out rate, shown in figure 1.b). After a period of initial fluctuation, the rate settles to a roughly constant value, varying slowly with a mean of 0.357. Given that the true bleed-out rate is 0.356, this is very successful.

Figure 1.a) The camera B counts for 5 days (colours explained in text). 1.b) Parameter estimation of the bleed-out rate. The true bleed-out rate used to generate the synthetic data is shown in red, the analysis estimation in blue.

Value of the research

Successful application of the EnKF has shown how dynamic data assimilation can perform reliable parameter estimation. A more detailed explanation of the EnKF can also act as a how-to guide, to help the agent-based model community apply dynamic data assimilastion methods to their own research.

The mathematics involved in applying the EnKF highlighted certain agent-based model related issues. For example, we needed to know the maximum number of active agents in the system’s future. Further work should be carried out into the issues that were identified, to determine for which agent-based models the EnKF is most appropriate.


Alice Tapper – The University of Leeds
Dr Jonathan Ward – The University of Leeds
Dr Nicolas Malleson – The University of Leeds
Dr Andrew Evans – The University of Leeds