Table of Contents
SIR Analysis
This tutorial introduces model exploration and sensitivity analysis using a simple SIR (Susceptible-Infected-Recovered) epidemic model as a support. It covers how to define a batch experiment, how to choose and apply the exploration and analysis methods built into GAMA, and how to interpret their results.
All the files related to this tutorial are available in the Models Library
(project Tutorials/SIR Analysis).
Model Overview
In this model, a population of agents moves randomly across the environment. Each agent carries one of three statuses: susceptible (healthy, can be infected), infected (currently sick, can infect others), or recovered (immune). At each simulation step, infected agents attempt to contaminate susceptible neighbors within a given distance, with a given probability. After a fixed number of steps, infected agents recover. The simulation ends either when no infected agents remain or after a maximum number of cycles.
The model is intentionally kept simple — no spatial structure, no demographics, no seasonality — so that the focus remains entirely on the exploration and analysis methodology rather than on the model itself.
Step List
This tutorial is composed of 7 steps corresponding to 7 models which are incremental representations of the same simulation, starting from the simplest agent model and progressively adding exploration and sensitivity analysis capabilities. For each step, we present its purpose, the concepts introduced, and the corresponding GAML code and outputs.
- Simple SIR model
- Stop condition and simulation timer
- Batch experiment and Latin Hypercube Sampling
- Stochastic analysis — how many replications do I need?
- Morris sensitivity analysis — screening parameters
- Sobol sensitivity analysis — quantifying variance contributions
- Beta^d sensitivity analysis — distribution-based screening
Home
Platform
- Installation and Launching
- Workspace, Projects and Models
- Editing Models
- Running Experiments
- Running Headless
- Preferences
- Troubleshooting
Learn GAML step by step
- Introduction
- Manipulate basic Species
- Global Species
- Defining Advanced Species
- Defining GUI Experiment
- Exploring Models
- Optimizing Models
- Multi-Paradigm Modeling
Recipes
- Manipulate OSM Data
- Cleaning OSM Data
- Diffusion
- Using Database
- Using FIPA ACL
- Using BDI with BEN
- Using Driving Skill
- Manipulate dates
- Manipulate lights
- Using comodel
- Save and restore Simulations
- Using network
- Headless mode
- Using Headless
- Writing Unit Tests
- Ensure model's reproducibility
- Going further with extensions
GAML References
- Built-in Species
- Built-in Skills
- Built-in Architecture
- Statements
- Data Type
- File Type
- Expressions
- Exhaustive list of GAMA Keywords
Developing GAMA
- Installing the development version
- Developing Extensions
- Introduction to GAMA Java API
- Using GAMA flags
- Creating a release of GAMA
- Documentation generation