Agent Based Modelling: NetLogo

Summary: NetLogo is a simple but very powerful platform for Agent Based Model development.

If you are considering developing an Agent Based Model, then you have two choices: you can build it yourself from the start, or you can build it within one of the ABM frameworks available. These include RePast, MASON, and NetLogo. Of these, NetLogo is the simplest to use: it doesn't require you to learn a full programming language, and it has lots of functions to make developing models easy. Because of this, it has become extremely popular with social scientists who want to quickly develop models. Because of this it has a good deal of additional tools it will work with, including R and Weka, and Pajek.

It's limitations early in its development lead to it chiefly being used for abstract spatial models, rather than detailed models. However, you can now import more complicated environments into it, including networks. In general the main issue with NetLogo is that its language is rather constraining, and the way it treats agents often isn't very intuitive if you are used to the freedom of full computing languages. In addition, it's use with external packages tends to lead to rather "black box" code which may be less suitable for critical models where deep knowledge is required. However, it is clear that NetLogo currently leads the pack in terms of off-the-shelf packages for ABM.

Summary slides

Useful courses

Volker Grimm and Steve Railsback (see reading, below), run two extremely well respected courses in ABM modelling with NetLogo. You can find out more on their book website.

Useful reading

Railsback, S.F. and V.Grimm (2011) Agent-Based and Individual-Based Modeling: A Practical Introduction Princeton University Press.

Thiele, J.C., W. Kurth and V. Grimm (2104) Facilitating Parameter Estimation and Sensitivity Analysis of Agent-Based Models: A Cookbook Using NetLogo and R. Journal of Artificial Societies and Social Simulation 17 (3) 11