-
Notifications
You must be signed in to change notification settings - Fork 99
GamlLanguage
Models that users want to simulate in GAMA have to be written in a special language, called GAML (short for GAma Modeling Language)
GAML is born from the necessity to have a high-level declarative way of defining and reusing structures found in almost all agent-based models. See here for more information about its background.
Although this choice requires users to learn a new programming (or better, modeling) language, everything has been made in GAMA to support a short learning curve, so that they can become almost autonomous in a limited time (informal measures taken at the different events centered on GAMA have shown that one day is enough to acquire sufficient skills in writing complete models in GAML).
The documentation on GAML is organized in 5 main points:
- Description of the general structure of a model: see this page
- Description of the declaration of species (and all their components): see this page and all its subpages
- Description of the declaration of experiments: see this page for regular experiments and this one for batch experiments.
- Reference of the language regarding all the structures provided to modelers
- Recipes of how to use special or advanced features offered in GAML: see this page.
In addition, some of the fundamental concepts behind GAML are also described in detail, both on the modeling infrastructure and the runtime infrastructure on which GAML is relying to run experiments on models.
- Installation and Launching
- Workspace, Projects and Models
- Editing Models
- Running Experiments
- Running Headless
- Preferences
- Troubleshooting
- Introduction
- Manipulate basic Species
- Global Species
- Defining Advanced Species
- Defining GUI Experiment
- Exploring Models
- Optimizing Model Section
- Multi-Paradigm Modeling
- Manipulate 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
- Built-in Species
- Built-in Skills
- Built-in Architecture
- Statements
- Data Type
- File Type
- Expressions
- Exhaustive list of GAMA Keywords
- Installing the GIT version
- Developing Extensions
- Introduction to GAMA Java API
- Using GAMA flags
- Creating a release of GAMA
- Documentation generation