Alexis Drogoul edited this page Jul 17, 2018 · 35 revisions



Changes from 1.6.1 to 1.8


  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 Toolbar
  15. Validation of Models
  16. Running Experiments
  17. Launching Experiments
  18. Experiments User interface
  19. Menus and commands
  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 Datas
  2. Diffusion
  3. Using Database
  4. Calling R
  5. Using FIPA ACL
  6. Using GamAnalyzer
  7. Using BDI
  8. Using Driving Skill
  9. Manipulate dates
  10. Manipulate lights
  11. Using comodel
  12. Headless mode
  13. FAQ
  14. 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. Co-modeling
  7. BDI Agents

Pedagogical materials

Developing Extensions

  1. Installing the GIT version
  2. Architecture of GAMA
  3. Developing a Plugin
  4. Developing a Skill
  5. Developing a Statement
  6. Developing an Operator
  7. Developing a Type
  8. Developing a Species
  9. Developing a Control Architecture
  10. Index of annotations
  11. IScope
  12. Creating a release of GAMA
  13. Documentation generation
  14. Website generation

Scientific References

Projects using GAMA

Training Session


Older versions

Coding Camp

Clone this wiki locally

Installing the GIT version

Tested on MacOS X (10.13)

Important note: the current Git version is not compatible with the GAMA 1.6.1 release: if you plan to create plugins for this release, please download the source at revision r11988 (on Google Code) and Eclipse following this procedure. It is neither compatible with the GAMA 1.7RC2 release: if you plan to create plugins for this release, please download the source on the branch mars on the GitHub and install Eclipse Mars SR2.

Install Eclipse Oxygen

Download the "Eclipse Oxygen 3A IDE for Java and DSL Developers" version. This is the latest version under which GAMA is certified to work. Regarding Java, we strongly recommend to install the Java Oracle 1.8 JDK that can be downloaded here.

Unpack it and launch it. Please refer to this link for more information on running Eclipse.

One important step required for GAMA to correctly produce its supporting files once it will have been installed is to set the default encoding of the workspace to UTF-8. It can be done by selecting, in the Preferences, "General", then "Workspace", then "Text file encoding" and choosing "UTF-8" in the drop-down menu available in "Other:".

If you install another version of Eclipse, please keep in mind that GAMA is compatible only, for the moment, with XText 2.14.0 (see here to obtain it).

Install additional required components to Eclipse

The Xtext plugin provided with the Eclipse release should be updated to XText 2.14.

  1. Open the install window:
  • Help > Install new softwares
  1. Choose the plugin to install
  • Copy the following address in Work with text field:
  • Uncheck Show only the latest versions of available software
  • In Xtext, check:
    • Xtext Complete SDK
  • Next
  1. Accept the licence and restart.

Install GAMA source code

The source is to be downloaded from GitHub in two steps: by creating a local clone of the GitHub repository and then importing the different projects that constitute GAMA into the Eclipse workspace.

  1. Open the Git perspective:
  • Windows > Perspective > Open Perspective > Other...
  • Choose Git Open GIT perspective
  1. Click on "Clone a Git repository" Clone Repository
  • In Source Git repository window:
    • Fill in the URI label with:
    • Other fields will be automatically filled in. Source GIT repository
  • In Branch Selection windows,
    • check the master branch
    • Next

Git branch selection

  • In Local Destination windows,
    • Choose a Directory (where the source files will be downloaded).
    • Everything else should be unchecked
    • Finish

Local destination

This can take a while...

Import projects into workspace

You have now to import projects into the workspace (notice that the folders downloaded during the clone will neither be copied nor moved).

Note: contrarily to previous Eclipse versions, import project from the Git perspective does not work properly for GAMA.

  1. In the Java perspective, choose:
  • File / Import...,

Context Working tree

  • In the install window, select Git / Projects from Git,
  • Click on Next,
  • In the Project from Git window, select Existing local repository.,

Context Local Repository

  • Click on Next,
  • In the newt window, select your Git repository,
  • Click on Next,
  • In the Select a wizard to used to import projects, check that
    • Import existing Eclipse projects is selected
    • Working Tree is selected

GIT Import projects

  • Click on Next,

  • In the Import project window,

    • Uncheck Search for nested projects
    • Select all the projects Choose Projects to import
  • Finish

  1. Clean project (Project menu > Clean ...)

If you have errors...

If errors continue to show on in the different projects, be sure to correctly set the JDK used in the Eclipse preferences. GAMA is targeting JDK 1.8, and Eclipse will produce errors if it not found in your environment. So, either you set the compatibility to 1.8 by default (in Preferences > Java > Compiler > Compiler Compliance Level) or you change the error produced by Eclipse to a warning only (in Preferences > Java > Compiler > Building > "No strictly compatible JRE for execution environment available).


  1. In the ummisco.gama.product plugin, open the gama.runtime.product file (gama.product is used to produce the release).
  2. Go to "Overview" tab and click on Synchronize
  3. Click on Launch an Eclipse Application

GIT Tutorials

For those who want learn more about Git and Egit, please consult the following tutorials/papers

  1. EGIT/User Guide
  2. Git version control with Eclipse (EGIT) - Tutorial
  3. 10 things I hate about Git
  4. Learn Git and GitHub Tutorial