-
Notifications
You must be signed in to change notification settings - Fork 99
G__GraphicalEditor
The graphical editor allows defining a GAMA model through a graphical interface (gadl
files). It is based on the Graphiti Eclipse plugin. It allows as well to produce a graphical model (diagram) from a gaml
model. A tutorial is available here.
Using the graphical editor requires to install the graphical modeling plug-in. See here for information about plug-ins and their installation.
The graphical editor plug-in is called Graphical_modeling and is directly available from the GAMA update site https://updates.gama-platform.org/graphical_modeling/1.9.0
Note that the graphical editor is still under development. Updates of the plug-in will be added to the GAMA website. After installing the plug-in (and periodically), check for updates for this plug-in: in the "Help" menu, choose "Check for Updates" and install the proposed updates for the graphical modeling plug-in.
A new diagram can be created in a new GAMA project. First, right-click on a project, then select "New" on the contextual menu. In the New Wizard, select "GAMA -> Model Diagram", then "Next>"
In the next Wizard dialog, select the type of diagram (Empty, Skeleton or Example) then the name of the file and the author.
Skeleton and Example diagram types allow to add to the diagram some basic features.
Similarly to GAML editor, the graphical editor proposes a live display of errors and model statuses. A graphical model can actually be in three different states, which are visually accessible above the editing area: Functional (orange color), Experimentable (green color) and InError (red color). See the section on model validation for more precise information about these statuses.
In its initial state, a model is always in the Functional state, which means it compiles without problems, but cannot be used to launch experiments. The InError state occurs when the file contains errors (syntactic or semantic ones).
Reaching the Experimentable state requires that all errors are eliminated and that at least one experiment is defined in the model. The experiment is immediately displayed as a button in the toolbar, and clicking on it will allow the modeler to launch this experiment on your model.
Experiment buttons are updated in real-time to reflect what's in your code. If more than one experiment is defined, corresponding buttons will be displayed in addition to the first one.
The following figure presents the editing framework:
The species feature allows the modeler to define a species with a continuous topology. A species is always a micro-species of another species. The top-level (macro-species of all species) is the world species.
- source: a species (macro-species)
- target: -
The grid feature allows the modeler to define a species with a grid topology. A grid is always a micro-species of another species.
- source: a species (macro-species)
- target: -
The inheriting link feature allows the modeler to define an inheriting link between two species.
- source: a species (parent)
- target: a species (child)
When a model is created, a world species is always defined. It represents the global part of the model. The world species, which is unique, is the top-level species. All other species are micro-species of the world species.
The action feature allows the modeler to define an action for a species.
- source: a species (owner of the action)
- target: -
The reflex feature allows the modeler to define a reflex for a species.
- source: a species (owner of the reflex)
- target: -
The aspect feature allows the modeler to define an aspect for a species.
- source: a species (owner of the aspect)
- target: -
The equation feature allows the modeler to define an equation for a species.
- source: a species (owner of the equation)
- target: -
The GUI Experiment feature allows the modeler to define a GUI experiment.
- source: world species
- target: -
The display feature allows the modeler to define a display.
- source: GUI experiment
- target: -
The Batch Experiment feature allows the modeler to define a Batch experiment.
- source: world species
- target: -
The Plan feature allows the modeler to define a plan for a BDI species, i.e. a sequence of statements that will be executed in order to fulfill a particular intention.
- source: a species with a BDI architecture
- target: - s
The Rule feature allows the modeler to define a rule for a BDI species, i.e. a function executed at each iteration to infer new desires or beliefs from the agent's current beliefs and desires.
- source: a species with a BDI architecture
- target: -
The Perception feature allows the modeler to define a perception for a BDI species, i.e. a function executed at each iteration that updates the agent's Belief base according to the agent perception.
- source: a species with a BDI architecture
- target: -
The State feature allows the modeler to define a state for a FSM species, i.e. sequence of statements that will be executed if the agent is in this state (an agent has a unique state at a time).
- source: a species with a finite state machine architecture
- target: -
The Task feature allows the modeler to define a task for a Tasked-based species, i.e. sequence of statements that can be executed, at each time step, by the agent. If an agent owns several tasks, the scheduler chooses a task to execute based on its current priority weight value.
- source: a species with a task-based architecture
- target: -
It is possible to change the color of a pictogram.
- Right-click on a pictogram, then select the "Chance the color".
It is possible to automatically generate a Gaml model from a diagram.
- Right-click on the graphical framework (where the diagram is defined), then select the "Generate Gaml model". A new GAML model with the same name as the diagram is created (and open).
- 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