Skip to content
Arthur Brugière edited this page Jun 22, 2020 · 87 revisions



Changes from 1.6.1 to 1.8

Moving to 1.9


  1. Installation and Launching
  2. Installation
  3. Launching GAMA
  4. Headless Mode
  5. Updating GAMA
  6. Installing Plugins
  7. Troubleshooting
  8. Workspace, Projects and Models
  9. Navigating in the Workspace
  10. Changing Workspace
  11. Importing Models
  12. Editing Models
  13. GAML Editor (Generalities)
  14. GAML Editor Tools
  15. Validation of Models
  16. Running Experiments
  17. Launching Experiments
  18. Experiments User interface
  19. Controls of experiments
  20. Parameters view
  21. Inspectors and monitors
  22. Displays
  23. Batch Specific UI
  24. Errors View
  25. Preferences

Learn GAML step by step

  1. Introduction
  2. Start with GAML
  3. Organization of a Model
  4. Basic programming concepts in GAML
  5. Manipulate basic Species
  6. Global Species
  7. Regular Species
  8. Defining Actions and Behaviors
  9. Interaction between Agents
  10. Attaching Skills
  11. Inheritance
  12. Defining Advanced Species
  13. Grid Species
  14. Graph Species
  15. Mirror Species
  16. Multi-Level Architecture
  17. Defining GUI Experiment
  18. Defining Parameters
  19. Defining Displays Generalities
  20. Defining Charts
  21. Defining 3D Displays
  22. Defining Monitors and Inspectors
  23. Defining Export files
  24. Defining User Interaction
  25. Exploring Models
  26. Run Several Simulations
  27. Batch Experiments
  28. Exploration Methods
  29. Optimizing Model Section
  30. Runtime Concepts
  31. Optimizing Models
  32. Multi-Paradigm Modeling
  33. Control Architecture
  34. Defining Equations


  1. Manipulate OSM Data
  2. Diffusion
  3. Using Database
  4. Calling R
  5. Using FIPA ACL
  6. Using GamAnalyzer
  7. Using BDI with BEN
  8. Using Driving Skill
  9. Manipulate dates
  10. Manipulate lights
  11. Using comodel
  12. Save and restore Simulations
  13. Using network
  14. Headless mode
  15. Using Graphical Editor
  16. Using Git from GAMA
  17. Writing Unit Tests
  18. FAQ
  19. Known Issues

GAML References

  1. Built-in Species
  2. Agent Built-in
  3. Model Built-in
  4. Experiment Built-in
  5. Built-in Skills
  6. Built-in Architecture
  7. Statements
  8. Data Type
  9. File Type
  10. Expressions
  11. Literals
  12. Units and Constants
  13. Pseudo Variables
  14. Variables And Attributes
  15. Operators [A-A]
  16. Operators [B-C]
  17. Operators [D-H]
  18. Operators [I-M]
  19. Operators [N-R]
  20. Operators [S-Z]
  21. Index


  1. Predator Prey
  2. Road Traffic
  3. 3D Tutorial
  4. Incremental Model
  5. Luneray's flu
  6. BDI Agents

Pedagogical materials


  1. Developing Extensions
  2. Installing the GIT version
  3. Architecture of GAMA
  4. Developing Plugins
  5. Developing Skills
  6. Developing Statements
  7. Developing Operators
  8. Developing Types
  9. Developing Species
  10. Developing Control Architectures
  11. Index of annotations

Developing GAMA

  1. Introduction to GAMA Java API
  2. IScope
  3. Creating a release of GAMA
  4. Documentation generation
  5. Website generation

Scientific References

Projects using GAMA

Training Session

  1. Coding Camp
  2. Reorganization


Older versions

Clone this wiki locally


GAMA logo

GAMA is a modeling and simulation development environment for building spatially explicit agent-based simulations.

Its latest version, 1.8.1, can be freely downloaded or built from source, and comes pre-loaded with several models, tutorials and a complete on-line documentation.

Multiple application domains

GAMA has been developed with a very general approach and can be used for many application domains. Some additional plugins had been developed to fit with particular needs.

Example of application domains where GAMA is mostly present:

  • Transport
  • Urban planning
  • Epidemiology
  • Environment

Training sessions

Some training sessions about topics such as "urban management", "epidemiology", "risk management" are also provided by the team. Since GAMA is an open-source software that continues to grow, if you have any particular needs for improvement, feel free to share it to its active community!

Multiple application domains

High-level and intuitive agent-based language

Thanks to its high-level and intuitive language, GAMA has been developed to be used by non-computer scientists. You can declare your species, giving them some special behaviors, create them in your world, and display them in less than 10 minutes.

GAML is the language used in GAMA, coded in Java. It is an agent-based language, that provides you the possibility to build your model with several paradigms of modeling. Once your model is ready, some features allow you to explore and calibrate it, using the parameters you defined as input of your simulation.

We provide you a continual support through the active mailing list where the team will answer your questions. Besides, you can learn GAML on your own, following the step by step tutorial, or personal learning path in order reach the point you are interested in.

High level language

GIS and Data-Driven models

GAMA (GIS Agent-based Modeling Architecture) provides you, since its creation, the possibility to load easily GIS (Geographic Information System).

You can import a large number of data types, such as text, files, CSV, shapefile, OSM (open street map data), grid, images, SVG, but also 3D files, such as 3DS or OBJ, with their texture.

Some advanced features provide you the possibility to connect GAMA to databases, and also to use powerful statistical tools such as R.

GAMA has been used in large-scale projects, using a great number of agents (up to millions of agents).

Data-driven models

Declarative user interface

GAMA provides you the possibility to have multiple displays for the same model. You can add as many visual representations as you want for the same model, in order to highlight a certain aspect of your simulation. Add easily new visual aspects to your agents.

Advanced 3D displays are provided: you can control lights, cameras, and also adding textures to your 3D objects. On the other hand, dedicated statements allow you to define easily charts, such as series, histogram, or pies.

During the simulations, some advanced features are available to inspect the population of your agents. To make your model more interactive, you can add easily some user-controlled action panels, or mouse events.

Declarative User Interface

Development Team

GAMA is developed by several teams under the umbrella of the IRD/SU international research unit UMMISCO:

  • UMI 209 UMMISCO, IRD, 32 Avenue Henri Varagnat, 93143 Bondy Cedex, France.
  • DREAM Research Team, University of Can Tho, Vietnam (2011 - 2019).
  • UMR 5505 IRIT, CNRS/University of Toulouse 1, France (2010 - 2019).
  • UR MIAT, INRA, 24 Chemin de Borde Rouge, 31326 Castanet Tolosan Cedex, France (2016 - 2019).
  • UMR 6228 IDEES, CNRS/University of Rouen, France (2010 - 2019).
  • UMR 8623 LRI, CNRS/University Paris-Sud, France (2011 - 2019).
  • MSI Research Team, Vietnam National University, Hanoi, Vietnam (2007 - 2015).

Citing GAMA

If you use GAMA in your research and want to cite it (in a paper, presentation, whatever), please use this reference:

Taillandier, P., Gaudou, B., Grignard, A.,Huynh, Q.-N., Marilleau, N., P. Caillou, P., Philippon, D., & Drogoul, A. (2019). Building, composing and experimenting complex spatial models with the GAMA platform. Geoinformatica, (2019), 23 (2), pp. 299-322, [doi:10.1007/s10707-018-00339-6]

or you can choose to cite the website instead:

GAMA Platform website,

A complete list of references (papers and PhD theses on or using GAMA) is available on the references page.


YourKit logo

YourKit supports open source projects with its full-featured Java Profiler. YourKit, LLC is the creator of YourKit Java Profiler and YourKit .NET Profiler, innovative and intelligent tools for profiling Java and .NET applications.

Creative Commons License
This page is licensed under a Creative Commons Attribution 4.0 International License.