Package fr.lifl.jedi.controllersCore.simulationRun

Package where all elements used to run a simulation are defined.

See:
          Description

Class Summary
SimulationCore The core of a simulation.
SimulationThread This class defines a Thread instance that runs the simulation.
 

Enum Summary
SimulationCoreStates The enumeration of all the states in which the simulation core can be in.
 

Package fr.lifl.jedi.controllersCore.simulationRun Description

Package where all elements used to run a simulation are defined.

This package and its subpackage are the fruits of works lead by the SMAC (which stands for "Systèmes Multi-Agents et Comportements" -- i.e. Multi-Agent Systems and Behavior in english) Research Team, from the University of Lille, France.

This version of JEDI was written by :

Contact : philippe (d) mathieu (a) lifl (d) fr
Replace (d) with a dot, and (a) with an @.

Package contents

This package contains all classes that make possible to run a simulation. It corresponds to the Controller part of the MVC.

In JEDI, performing a simulation is made thanks to an instance of the SimulationCore class. Such a class defines how the simulation is initialized, and when it has to stop.

The role of the simulation core is to synchronize all GUIs : whenever the simualtion finishes its initialization or a time step, events are thown to the controllers of all GUIs to tell them to update. The simulation will continue only when all GUIs finished their update. These controllers are instances of the AbstractGUIController class.

A simulation runs in a thread called SimulationThread, in which simulation runs by time steps, where agents are asked in sequence to behave. The order of that sequence is changed at the beginning of every time step, thanks to an instance of the AgentOrderingPolicy class.