Agent-Based Models

The page on Models in Social Science identifies a number of important problems for the rigorous development and testing of theories in the social sciences, many of which apply equally to biological systems in general. Agent-Based Modelling provides an attractive solution to these problems, as explained by Robert Axtell in his paper Why Agents? On the Varied Motivations for Agent Computing in the Social Sciences:

There are ... several advantages of agent-based computational modeling over conventional mathematical analysis. First ... it is easy to limit agent rationality in agent-based computational models. Second, even if one wishes to use completely rational agents, it is a trivial matter to make agents heterogeneous in agent-based models. One simply instantiates a population having some distribution of initial states, e.g., preferences. That is, there is no need to appeal to representative agents. Third, since the model is "solved" merely by executing it, there results an entire dynamical history of the process under study. That is, one need not focus exclusively on the equilibria, should they exist, for the dynamics are an inescapable part of running the agent model. Finally, in most social processes either physical space or social networks matter. These are difficult to account for mathematically except in highly stylized ways. However, in agent-based models it is usually quite easy to have the agent interactions mediated by space or networks or both.

However, the agent-based modeling methodology has one significant disadvantage vis-a-vis mathematical modeling. Despite the fact that each run of such a model yields a sufficiency theorem, a single run does not provide any information on the robustness of such theorems. That is, given that agent model A yields result R, how much change in A is necessary in order for R to no longer obtain? In mathematical economics such questions are often formally resolvable via inspection, simple differentiation, the implicit function theorem, comparative statics, and so on. The only way to treat this problem in agent computing is through multiple runs, systematically varying initial conditions or parameters in order to assess the robustness of results. While the curse of dimensionality places a practical upper bound on the size of the parameter space that can be checked for robustness, it is also the case that vast performance increases of computer hardware are rapidly converting what was once perhaps a fatal difficulty into a manageable one.

Over recent years, agent-based models have rapidly become widespread, especially in the biological and behavioural sciences, greatly facilitated by the development of programming systems that make such models relatively easy to implement. Probably the best known of these systems is NetLogo, based at Northwestern University, which also hosts the first two "model libraries" listed below. An even more "user-friendly" system, which builds on top of NetLogo to enable non-programmers to build models, is called Modelling4All, and based at Oxford University.

Collections of Agent-Based Models and Systems

Screenshot of diffusion-limited aggregation model

Agent-based model of diffusion-limited aggregation, in NetLogo