Agent Based Modeling (ABM) with Mesa and Python Training Course

Last updated

Course Code



14 hours (usually 2 days including breaks)


  • Python programming experience
  • Javascript (optional)


  • Researchers
  • Investigators
  • Analysts


Mesa is a Python framework for creating agent-based models (ABM). Mesa aims to provide an alternative to NetLogo, Repast, and MASON. Agent based modeling allows investigators in the fields of biology, social sciences, network, business, etc. to simulate the actions and interactions of autonomous agents in order to evaluate their effects on their environment.

This instructor-led, live training (online or onsite) is aimed at investigators who wish to use Mesa to create Agent Based Models in a Python environment.

By the end of this training, participants will be able to:

  • Install and configure the development environment needed to start modeling in Python.
  • Quickly create an agent-based model using Mesa's built-in core components.
  • Expand the complexity of the model.
  • Visualize agent activity in real-time inside a browser.
  • Analyze the results of the model interactively using Python data analysis tools.
  • Integrate the model with other Python systems such as machine learning applications.

Format of the Course

  • Interactive lecture and discussion.
  • Lots of exercises and practice.
  • Hands-on implementation in a live-lab environment.

Course Customization Options

  • To request a customized training for this course, please contact us to arrange.

Course Outline


Overview of Agent Based Modeling

Case Study: Using Agents to Simulate Financial Transactions

Overview of Agent Based Modeling Frameworks for Java, C++, Python, etc.

Overview of Mesa's Core Features

Setting up the Environment

Choosing between a Text Editor or IDE and Jupyter Notebook

Creating a Simple Model

Case Study: Using Agents to Simulate a Pandemic

Choosing a Model Based on the Use Case (Boltzmann Wealth, Schelling Segregation Model, SIR, etc.)

Working with the Mesa's Model and Agent Classes

Defining the Variables

Setting Model Level Parameters

Scheduling the Actions of an Agent

Running the Model

Adding Agents to the Model

Adding Space to the Model

Collecting Data Using the Data Collector

Running the Model Multiple Using the Mesa Batch Runner

Visualizing the Simulation Interactively

Visualizing Agent Activity in a Grid

Adding a Chart to the Visualization

Creating a Visualization Module (optional - requires Javascript)

Integrating the Model with a Machine Learning Application.

Best Practices


Summary and Conclusion

Related Categories

Related Courses

Course Discounts

Course Discounts Newsletter

We respect the privacy of your email address. We will not pass on or sell your address to others.
You can always change your preferences or unsubscribe completely.

Some of our clients

This site in other countries/regions