Agent-based modelling

Agent-based modelling (ABM) is a flexible tool to study the economy as a complex adaptive system. It is a bottom-up approach embedding heterogeneous interacting agents, where the interactions of agents at the micro level give rise to emerging patterns at the meso and macro levels. The agents’ behavior, which is typically adaptive and informed by learning processes, is described by explicit heuristics, which are derived from behavioral and empirical evidence. The complex system can be characterized by out-of-equilibrium dynamics in an inherently uncertain environment. Due to their complexity, ABMs are typically not analytically solvable, such that their exploration often requires the use of computational simulation techniques. Moreover, they provide extreme flexibility in the choice of model assumptions, which makes them particularly suitable for the analysis of alternative scenarios, especially for policy evaluation.

A schematic of the elements of an agent-based model and their interactions.
Source: Haldane and Turrell (2018).

ABM and macroeconomics

Recent events and current challenges, such as the Great Recession, the pandemic and climate change, have shown that the standard macroeconomic modelling framework is inherently ill-equipped with tools to understand and analyze complex economic systems (Dosi and Roventini, 2019). Macroeconomics rooted in the DSGE framework not only fails at predicting such out-of-equilibrium dynamics, but it does not even admit its possibility. Some major limits of the standard macroeconomic framework are the often superficial treatment of inequality and heterogeneity, the lack of complex interactions between the financial and real sides of the economy, and the inability of embedding tipping points and systemic risk.

ABMs have proved to be a valid alternative paradigm for macroeconomic modelling. Its reliance on the principles of complexity theory allows the endogenous generation of heterogeneity and novelty, avoiding any isomorphism between the micro and the macro, in a system characterized by deep uncertainty, with repeated imbalances possibly leading to the emergence of tipping points. Due to their flexibility, they also represent excellent laboratories to design and test policies.

ABMs may indeed be complementary to more standard macroeconomic models, such as DSGE, as, while the latter can work only in normal times, ABMs can account for both mild and deep recessions (Stiglitz, 2011, 2015). Macroeconomic ABMs may be thought of as lying within a wider modelling space, here shown as having two axes. Internal consistency is best represented by strongly microfounded behaviour, while external consistency is demonstrated by agreement with the data. On the other axis is the degree of agent heterogeneity which the model can include, with representative agents on one end and heterogeneity along many dimensions at the other. The within variation of each model type is likely to be larger than the variation between them, but the figure illustrates their approximate location on the wider modelling space (Haldane and Turrell, 2018, p.233).

A spectrum of macroeconomic modelling.
Source: Haldane and Turrell (2018).

Building blocks

Conceptual framework

Conceptually, the agent-based modelling framework is characterized by some main building blocks (Fagiolo and Roventini, 2017):

  • a bottom-up perspective is inherent in this kind of modelling technique, as ABMs are characterized by macro outcomes that are the result of agents’ micro dynamics;
  • heterogeneity is key: ABMs are flexible tools in terms of the possibility of encompassing heterogeneity along several dimensions of agents;
  • the economy is represented as an evolving complex system, such that aggregate phenomena emerge from interactions among agents, which are inherently non-linear;
  • non-linearity also characterizes micro-macro feedbacks in the model;
  • interactions and decisions are endogenous and typically shaped by adaptive expectations, depending on past choices made by other agents;
  • agents are boundedly rational and their learning is shaped through search in dynamically evolving environments;
  • path-dependency guides the evolution of the system, with novelty being endogenous and persistent, such that agents face “true Knighting uncertainty”;
  • markets evolve based on selection criteria, in an evolutionary spirit.

Markets and agents

Typically, ABMs are composed of populations of agents (e.g., consumers, workers, firms, banks, etc.), observed at discrete time steps. Every agent is characterized by a set of micro-economic variables and time-invariant parameters (in addition to macroeconomic parameters). At each time step agents interact on different markets (e.g., good market, labor market, credit market, etc.) and their micro-economic variables are updated. Consumers/workers typically demand consumption goods and save, in addition to supplying labor on the labor market. In some models they may even have a demand for credit and/or financial assets. Firms, which might produce different kinds of goods (consumption vs. capital good firms), demand labor and credit (in some models also capital/intermediate goods from other firms), fix quantities and prices. Banks set interest rates and supply loans, possibly also interacting with other banks (Dawid and Delli Gatti, 2018). Of course, the degree of sophistication of each type of agent and market varies from model to model depending on the key research questions the modeler wants to address. Finally, heuristics, as well as interaction patterns, may change over time. The latter are key building blocks shaping the bottom-up approach in ABMs, where interactions within and across markets can give rise to coordination failures, possibly leading to fluctuations on the macroeconomic side.

Finally, ABMs represent flexible laboratories to investigate impacts of fiscal, monetary, labor market, industrial, innovation and climate policies on both different classes of agents and, more generally, on the macroeconomic performance of the economy. The modeller can also consider combinations of different types of policies and test their impacts on both growth and business cycles. Therefore, models may embed a government designing and implementing the various kinds of policies.

Implementation and simulation

Since agent-based models incorporate the actions and interactions of heterogeneous and autonomous agents, they feature an inherent complexity, which makes it impossible to analyze these models analytically. Instead, agent-based modelling relies on a computational approach in which the interactions of agents and the emergent behavior of the system are analyzed by means of computer simulations. Thus, an agent-based model is a computer program in which a complex adaptive system of heterogeneous agents is implemented and simulated. Several modelling frameworks based on different programming languages are available for implementing agent-based models. A list of popular platforms can be found at Leigh Tesfatsion's website.

In order to run a simulation, an agent-based model requires specific inputs. In general, one can distinguish the parametrization of the model, and the initial conditions describing the initial values of relevant agent-specific variables.

The behavior of agents may be apparently erratic due to a substantial influence of stochasticity in the agents’ decision-making, which gives rise to some degree of randomness also of the aggregate behavior of the models. Consequently, the analysis of a single simulation instance (a single run) does not provide sufficient information to identify the statistical distribution of regularities. To obtain meaningful numerical results, ABMs are typically simulated and analyzed by means of Monte Carlo experiments. Monte Carlo methods rely on repeated random sampling by carrying out several runs with differing random seeds for the computer's pseudo-random number generator. The model behavior is then not described based on single runs but on the statistical properties of a set of runs.

In order to produce reliable simulation outcomes, the modeler has to carry out several steps. First, the implementation has to be tested and debugged in order to ensure the correct functioning of the implementation. Second, since the agent behavior is not directly derived from some sort of maximization problem, the model assumptions and behavioral rules have to be carefully selected such that they are a good representation of real world behavior. Finally, the model has to be estimated and the output of the simulation validated. Estimation refers to finding a good model parametrization implying that moments of selected (aggregate) variables match empirically observable counterparts. Frequentist methods, such as the Method of Simulated Moments (MSM), as well as Bayesian approaches, have been used.

Output validation describes the process of evaluating the extent to which the outcome of a simulated model is a good representation of real world observations. A standard approach prescribes the matching of several micro- and macro-level stylized facts (i.e., well described empirical regularities). Recently, more sophisticated statistical techniques have been developed to satisfy more stringent output validation requirements (see, e.g., Fagiolo et al., 2019 for a deeper discussion of estimation and evaluation techniques).

Agent-based policy analysis

The agent-based approach has been used to study various policy questions in different policy domains ranging from fiscal, monetary, innovation policies to climate policies. There are some inherent features of the approach that makes it particularly suitable for carrying out policy analyses:

  • Agent-based modelling does not impose strong theoretical consistency requirements, as ABMs are not subject to issues of analytical tractability. This allows for a much higher degree of flexibility in model building, which in turn enables implementing policy measures at a much higher level of sophistication.
  • Agent-based models are characterized by out-of-equilibrium dynamics. This makes it possible to represent different time scales within the same model framework enabling an explicit distinction of short- and long-term effects of policies.
  • The explicit modeling of heterogeneous agents does not only allow to analyze the effects of policies on macroeconomic variables, such as GDP, unemployment and inflation rates, it also offers the possibility for a rigorous analysis of distributional effects, such as the study of wage distributions of workers or productivity distributions of firms.

Agent-based simulations are typically executed as experiments of multiple runs deploying different parameter constellations. This experimental setup offers a quite natural formulation of policy scenarios. Indeed, one can systematically compare different policies varying specific policy parameters. The use of Monte Carlo methods allows for rigorous statistical testing of the simulation outcome such that statistically robust policy findings can be derived from policy experiments.

(More on policy and ABMs)

Further reading

For reviews of agent-based macro modelling see Dawid and Delli Gatti (2018), Dosi and Roventini (2019), Fagiolo and Roventini (2017) and Haldane and Turrell (2019).


  • Dawid, H., & Gatti, D. D. (2018). Agent-based macroeconomics. Handbook of computational economics, 4, 63-156.
  • Dosi, G., & Roventini, A. (2019). More is different... and complex! the case for agent-based macroeconomics. Journal of Evolutionary Economics, 29(1), 1-37.
  • Fagiolo, G., Guerini, M., Lamperti, F., Moneta, A., & Roventini, A. (2019). Validation of agent-based models in economics and finance. In Computer simulation validation (pp. 763-787). Springer, Cham.
  • Fagiolo, G., Roventini, A. (2017). Macroeconomic policy in DSGE and Agent-based models redux: new developments and challenges ahead. Journal of Artificial Societies and Social Simulation, 20(1):1, DOI.
  • Haldane, A. G., Turrell, A. E. (2018). An interdisciplinary model for macroeconomics. Oxford Review of Economic Policy, 34(1-2):219-251, DOI.
  • Haldane, A. G., & Turrell, A. E. (2019). Drawing on different disciplines: macroeconomic agent-based models. Journal of Evolutionary Economics, 29(1), 39-66.
  • Stiglitz, J. (2011). Rethinking Macroeconomics: What failed, and how to repair it”. Journal of the European Economic Association, 9: 591-645.
  • Stiglitz, J. (2015). Towards a general theory of deep downturns. NBER Working Paper 21444.

K+S Models

The Keynes + Schumpeter (K+S) computer-simulation model family is designed to allow the study of several relevant properties of the macroeconomic system. K+S is a general disequilibrium, stock-and-flow consistent agent-based theoretical model, populated by heterogeneous firms, which behave according to bounded-rational rules.


The Labour-augmented K+S model is populated also by heterogeneous workers and supports decentralized interactions among firms and workers in both the product and the labour markets, introducing an endogenous process of workers' skills accumulation.

Run the model


The K+S model with endogenous emergence of new products and entry and exit of the associated industries.

Run the model


The K+S model with an interbank system.

Run the model

Private R&D

The K+S model with Private R&D collaboration.

More about the model

Public and private R&D

The K+S model with Public and Private R&D collaboration.

More about the model

Eurace@Unibi Models

Closed Economy

The Eurace@Unibi model provides a representation of a closed macroeconomic model with a spatial structure. The main objective is to provide a micro-founded macroeconomic model that can be used as a unifi ed framework for policy analysis in different economic policy areas and for the examination of generic macroeconomic research questions.

Visit the model site

Other Models

Pharmaceutical industry

The model embeds an artificial pharmaceutical industry populated by firms that compete in different submarkets. Moreover, it includes a patent system that allows innovative companies to exclude competitors from areas of the product space surrounding their newly discovered drugs. The model can be used to simulate alternative policy scenarios with different patent regimes in order to investigate their impact on industry evolution.

Run the model


Policy simulation

Tutorial, using a vignette style, on how to use this website to run the available models and test for policy scenarios.

Open tutorial

Copyright © 2022 GROWINPRO Project

Disclaimer: The information and views set out in this software are those of the author(s) and do not necessarily reflect the official opinion of the GROWINPRO Project. GROWINPRO does not guarantee the accuracy of the data included in this study. Neither GROWINPRO nor any person acting on GROWINPRO’s behalf may be held responsible for the use which may be made of the information contained therein.

Copyright Notice: The Models here are property of the respective authors. The Models are protected by copyright laws, trademark and design rights. Any unauthorized use of the Models will be considered a violation of the authors’ intellectual property rights. The Models may not be copied, distributed, published or used in any way, in whole or in part, without prior written agreement from the authors, except as otherwise allowed by the agreed Conditions of Use.

No Warranties: this site, the associated models and their results are provided “as is” without any express or implied warranty of any kind including warranties of non-infringement of intellectual property or fitness for any particular purpose. In no event shall the authors or its suppliers and partners be liable for any damages whatsoever (including, without limitation, damages for loss of profits or loss of information) arising out of the use of or inability to use the information provided on this site, even if the authors or its suppliers and partners have been advised of the possibility of such damages. Because some jurisdictions prohibit the exclusion or limitation of liability for incidental or consequential damages, some of the above limitations may not apply to you.