IDEM 112

Agent-based modeling and simulation (ABM-ABS)

Co-organizers: Max Planck Institute for Demographic Research, Vienna Institute of Demography and University of Southampton

Course coordinator: Anna Klabunde

Start: October 20th 2014
End: October 30th 2014
Location: Max Planck Institute for Demographic Research (MPIDR), Rostock

Jakub Bijak (University of Southampton)
Thomas Fent (Vienna Institute of Demography)
Alexia Fürnkranz-Prskawetz (Vienna Institute of Demography)
Jutta Gampe (MPIDR, Rostock)
Jonathan Gray (University of Southampton)
Jason Hilton (University of Southampton)
Anna Klabunde (MPIDR, Rostock)
Sebastian Klüsener (MPIDR, Rostock)
Bernhard Rengs (Vienna Institute of Demography)
Francisco Villavicencio (MPIDR, Rostock)
Frans Willekens (MPIDR, Rostock)
Sabine Zinn (MPIDR, Rostock)

Course description

Agent-based or individual-based models describe how populations evolve, patterns (e.g. social networks) emerge, and collective features (e.g. norms) are established as outcomes of actions and interactions at the micro-level. Simple heuristics or rules govern the actions and interactions. Agents may be humans, institutions or organizations. They have attributes, capacities (e.g. human capital: education and health) and resources (time and capital: physical, financial, social and cultural). Agents are autonomous - they determine their own actions -, connected - they interact with each other and with the environment - and adaptive – they change their behaviour in response to changes in their own characteristics, in that of other agents or in the environment. Feedback and memory are key concepts.

Agent-based modeling (ABM) is approached as an extension of microsimulation. ABM adds to microsimulation (a) individual and group decision processes and (b) social interaction processes.

The course offers four important skills that help to be innovative in research:

  • Simulation skills. Simulation uses a model to generate data. In general, the model is estimated from data using state-of-the-art statistical techniques. If the model is an accurate representation of reality, simulated data are close to empirical data. They may be used to test hypotheses, assess the effects of (policy) interventions, answer other ‘what-if’ questions or fill in missing data (imputation). The data-generating process is the procedure or algorithm that generates the data. In the course, we use (multistate) survival models to generate time-to-event data and event sequences (life histories), and to construct virtual populations. A properly designed virtual population may be used as a “virtual laboratory” and a policy tool.
  • An agent-based modeling language. A common language facilitates the specification of an ABM, standardizes the model description, and enhances the communication of the model and its implementation on the computer, i.e. the translation of the model into computer code. The ODD protocol developed by Grimm and Railsback (2005) will be used, which has emerged as a standard. It is recommended for documenting models submitted to www.openabm.org, an archive for sharing models and a platform for model-related discussions. The site is maintained by the Network for Computational Modeling in the Social and Ecological Sciences (CoMSES Net). The ODD+D protocol, which extends the ODD protocol to the description of human decision processes in ABM, will be covered too.
  • Software skills to implement ABMs on the computer. NetLogo will be used as the main software platform (http://ccl.northwestern.edu/netlogo/). NetLogo, which is free, was originally designed as an educational tool (to teach ABM) but its use in science has grown rapidly. To enhance the design and analysis of experiments with ABM, Thiele et al. (2012) developed RNetLogo, which is free at http://cran.at.r-project.org. The package embeds NetLogo in R and makes it possible to control and analyze NetLogo simulations from R.
  • Skills in the design and analysis of computer experiments. It involves model validation, prediction and application or development of theories of behaviour and social interaction.


The course consists of two sections. The first section focuses on micro-simulation and R. The second section focuses on ABM-ABS and NetLogo. Lectures are in the morning. Afternoons are for computer tutorials, assignments and projects. All lectures and tutorials take place in room 005.

Lectures and computer lab

October 20

Welcome (Frans Willekens and Anna Klabunde)

Lecture 1: Microsimulation in demography: introduction and overview (Frans Willekens)

Lecture 2: Agent-based modeling in demography: introduction and overview (Alexia Fürnkranz-Prskawetz)

Introduction to MPIDR computers and login (room 100)

Computer lab: Estimation of transition rates and transition probabilities with R (introduction to packages survivaleha and Biograph and SHARELIFE data on effects of partnership formations and living arrangements on age at first birth) (Frans Willekens)

October 21

Lecture: Simulation of time-to-event data using survival models and competing risks models (Jutta Gampe)

Computer lab: Using the Human Mortality Database to simulate life spans of members of a synthetic cohort (Jutta Gampe)

October 22

Lecture: Multistate modeling of life histories (Frans Willekens)

Computer lab: Simulation of life histories with MicSim (Sabine Zinn)

October 23

Lecture: NetLogo: basic structure and illustration to partnership formation, living arrangements, social effects and networks (Thomas Fent)

Computer lab: NetLogo (Thomas Fent)

October 24

Lecture: Decision-making in ABMs:
  a. Practices and challenges (Anna Klabunde)
  b. The theory of planned behaviour (Frans Willekens)

Computer lab: NetLogo: Advanced features (Bernhard Rengs)

October 27

Lecture: Decision making in ABM: Agents with Agency (Jonathan Gray)

Discussion: How to model decision-makers: Ways ahead in demography (Frans Willekens, Anna Klabunde, Jonathan Gray)

Computer lab: RNetLogo: interface between NetLogo and R (Sebastian Klüsener and Francisco Villavicencio)

October 28

Lecture: Documentation of ABMs (Anna Klabunde)

Computer lab: Work on Mini project (group projects): Pathways to first birth in Europe: effects of partnership formations and living arrangements on age at first birth. Data: SHARELIFE. (Frans Willekens)
  a. Simulation of life histories
  b. Distribution of pathways to first birth (state sequences and ages at transition)

October 29

Mini-project: Agent-based model of decision making for the “Pathways to first birth” project, implemented in NetLogo (Anna Klabunde)

October 30

Lecture: Introduction to the design of computer experiments (Jakub Bijak and Jason Hilton)

Lecture: Statistical analysis of the results of experiments (Jakub Bijak and Jason Hilton)

Computer lab: Design and analysis of computer experiments (Jason Hilton and Jakub Bijak)

Course prerequisites

An intermediate knowledge of R or, alternatively, a working knowledge of R in combination with skills in another programming language, is a course prerequisite. If you never used R in your research work, please make sure you have a sufficient knowledge before the course starts, e.g. by attending a free online course such as the ones offered by Roger Peng and colleagues from John Hopkins University: http://jhudatascience.org/. Alternatively or additionally you can also use the tutorial website from UCLA (http://www.ats.ucla.edu/stat/r/) or any other R-tutorial which goes into sufficient detail.

No prior knowledge of NetLogo is required.

A basic knowledge of survival analysis is preferable, but not mandatory. No prior knowledge of multistate modeling is required.


Evaluation will be based on active participation in the computer lab and on the outcome of the mini-project. Reports of the mini-project should be prepared in the weeks following the course and should be submitted before 31st December 2014. Reports are submitted by individuals or groups, provided the members of the group collaborated on a mini project during the course. A certificate is awarded upon successful completion of the required coursework.


A reading list will be provided.

Financial support

There is no tuition fee for this course.  Students are expected to pay their own transportation and living costs.  However, a limited number of scholarships are available on a competitive basis for outstanding candidates and for those applicants who might otherwise not be able to come.

Recruitment of students

  • Applicants should either be enrolled in a PhD program (those well on their way to completion will be favored) or have received their PhD.
  • A maximum of 20 students will be admitted.
  • The selection will be made by the MPIDR based on the applicants’ scientific qualifications.

How to apply

  • Applications should be sent by email to the MPIDR.  Please begin your email message with a statement saying that you apply for course IDEM 112 – Agent-based Modeling and Simulation.  You also need to include the following three documents, either in the text of the email or as attached documents.  (1) A two-page curriculum vitae, including a list of your scholarly publications.  (2) A one-page letter from your supervisor at your home institution supporting your application.  (3) A two-page statement of your research and how it relates to the course.  Please include a short description of your knowledge of R and survival analysis.  Please indicate (a) whether you would like to be considered for financial support and (b) if you would be able to come without financial aid from our side.
  • Send your email to Heiner Maier (idem@demogr.mpg.de).
  • Application deadline is 20 August 2014.
  • Applicants will be informed of their acceptance by 5 September 2014.
  • Applications submitted after the deadline will be considered only if space is available.