Introduction to Agent-Based Modeling

A 3-Day Remote Seminar Taught by Paul Smaldino, Ph.D.

Understanding the behavior of complex social systems is tricky. Mathematical and computational models are used by a wide range of social and biological scientists to clarify hypotheses and test the consequences of their assumptions. Agent-based models are a class of formal models in which individual actors are instantiated as computational objects. This enables us to account for variability in agent properties (including biological and behavioral traits, physical and network locations), and allows us to explore, through simulation, how macro-level phenomena emerge from micro-level behaviors under constraints. They have been used to better understand social phenomena such as cooperation, collective problem solving, polarization, segregation, traffic flow, the spread of disease, and the emergence of social norms.

In this three-day seminar, you will learn the basics for understanding, building, and analyzing agent-based models using NetLogo, a popular, free, and easy-to-learn language designed expressly for coding and visualizing agent-based models.  We will focus on models of contagion, which are important in epidemiology and public health but are also widely used to understand how behaviors, ideas, and innovations spread. By the end of the course, you will be able to build, visualize, and analyze your own agent-based model of contagion, and will have the resources to engage with and build models of other phenomena.

Starting December 2, we are offering this seminar as a 3-day synchronous*, remote workshop for the first time. Each day will consist of a 4-hour live lecture held via the free video-conferencing software Zoom. You are encouraged to join the lecture live, but will have the opportunity to view the recorded session later in the day if you are unable to attend at the scheduled time.

Each lecture session will conclude with a hands-on exercise reviewing the content covered, to be completed on your own. An additional lab session will be held Thursday and Friday afternoons, where you can review the exercise results with the instructor and ask any questions.

*We understand that scheduling is difficult during this unpredictable time. If you prefer, you may take all or part of the course asynchronously. The video recordings will be made available within 24 hours of each session and will be accessible for 4 weeks after the seminar, meaning that you will get all of the class content and discussions even if you cannot participate synchronously.

Closed captioning is available for all live and recorded sessions.

More Details About the Course Content

This course is for those wishing to get their feet wet working with agent-based models of social systems. It is designed to be accessible to students who are relatively new to agent-based modeling, while still being useful to more experienced modelers. The course uses NetLogo, which is a software tool and programming language designed to be easy to learn but powerful enough to be used for real research. However, many of the techniques we will learn are platform-independent, and so will apply whether your future modeling work uses NetLogo or some other programming language or software library.  The course focuses on models of contagion, which is of particular interest these days for some reason. However, most of the modeling techniques you will learn are applicable to models of social dynamics more generally.

You can learn about modeling by watching and listening, but you can only learn how to model by practicing. This course therefore emphasizes hands-on practice with coding and analyzing agent-based models.


To participate in the hands-on exercises, you are strongly encouraged to use a computer with the most recent version of NetLogo installed. This software is free and available for Windows, Mac, and Linux platforms. If you are new to NetLogo, you may wish to work through the tutorial included in the NetLogo User Manual. Familiarity with software that allows you to plot data (e.g., Excel, R, Python, Stata) is also useful.

Who Should Register?

This course is for anyone interested in agent-based or mathematical modeling of social systems. While we will focus on contagion models, many of the techniques you will learn are broadly applicable to other model systems, from industrial organization to communication to evolution. You do not need to be familiar with NetLogo or be an expert coder of any kind, but you should have some familiarity with basic coding elements like variables, conditionals, loops, etc.


Day 1

  • Models, agent-based and otherwise
  • How NetLogo works
  • Cellular automata models
  • A simple host-pathogen model
  • Qualitative model analysis

Day 2

  • Mobile agents
    • Random walks
    • Toroidal vs. bounded space
    • Agent interactions
  • SI and SIS models
    • Infection curves
    • Systems dynamics
  • SIR models
    • Modeling interventions
    • Flattening the curve

Day 3

  • Modeling vaccines and herd immunity
  • Batch runs
    • Using BehaviorSpace
    • Parameter Sweeps
  • Network models
    • Ring lattices
    • Random networks
    • Path length
    • Clustering
  • Small-world networks
  • Simple and complex contagions on networks
  • Building your own models

Seminar information

Thursday, December 2, 2021 –
Saturday, December 4, 2021

Each day will follow this schedule:

10:00am-2:00pm ET: Live lecture via Zoom

4:00pm-5:00pm ET: Live lab session via Zoom (Thursday and Friday only)

Payment Information

The fee of $895 includes all course materials.

PayPal and all major credit cards are accepted.

Our Tax ID number is 26-4576270.