Agent-Based Modelling in NetLogo
Agent-Based Modelling (ABM) involves specifying the behaviour of
individual agents as computer programs and analysing the emergent
outcomes of their interactions through simulation. Hence ABM’s do not
require a macro theory of a system in order to model it. ABM is a tool
used increasingly in physics, biology, computer science, social science
In this course we will introduce students to the craft of ABM through
practical lab work. We will look at some seminal agent-based models in
NetLogo and experiment with them.
Students will be expected to bring a critical eye to the work and also
present, discuss and implement their own ideas and interests. Each
student will produce and present their own ABM in NetLogo, and
experimental results, by the end of the course.
NetLogo is a programming language specifically designed for teaching,
specifying and experimenting with ABM’s. It is popular over many
disciplines for representing and communicating ABM’s. We will introduce
this language through example models in the Lab.
Labs will comprise the presentation of a models, tasks and feedback of
the results obtained. Students will be able to work at their own pace
and on their own projects during the labs.
Prerequisites: Students are not
required to have previous programming experience. However those new to
programming should be willing to pursue their own efforts in terms of
learning NetLogo details through available online resources including
the integrated manual and tutorials. The course will be taught entirely
Assessment: Students will
develop their own ABM in NetLogo producing experiments and
PhD students will additionally write-up their results in the format of
a short technical report. Help will be given during latter lab
sessions to complete these tasks.
Aims (the course aims to):
Objectives (by the end of the
course students will be able to):
- Introduce the NetLogo programming language
- Present and explain the code of a number of seminal ABM models
- Demonstrate the ABM experimental methodology through doing
- Understand NetLogo ABM models through examining the code
- Write their own ABM in NetLogo
- Perform experiments, analysis and a write-up of their own