Context of the MAGS Project
In an increasingly interconnected and fast-changing world, decision
makers from various sectors (governmental, military, industrial, medical,
social) need to deal with multi-actor dynamic spatial situations (MADSS)
that involve a large number of actors of different types (human, animal,
static, mobile, computer systems, etc.) acting in geographic spaces
of various extents. There are numerous MADSSs that need to be monitored
in order to insure human security and equipment preservation (flood,
earthquake, wildfire, oil slicks), the respect of public order (evacuation
of people, crowd monitoring and control, peace-keeping activities) or
the adequate use of infrastructures (monitoring of people and households
transportation and shopping habits to better plan transportation infrastructures,
location of services’ and retailers, etc.). For any particular
MADSS, decision makers need to obtain an overall understanding of the
situation, to monitor its evolution, to develop strategies and tactics
to adequately intervene, to develop and compare alternative intervention
scenarios. Yet there exists no integrated tool that helps decision makers
when dealing with such complex situations.
aims at modeling systems at the scale of individuals and entity-level
units of the built environment and provides a new way to simulate how
geographic spaces can be used by their future users, particularly in
urban environments. In the MAGS Project we developed a generic software
platform and a method for the creation of Multi-Agent Geo-Simulations
involving several thousand agents interacting in virtual geographic
environments (in 2D and 3D) and endowed with spatial cognitive capabilities
(perception, navigation, reasoning).
Description of the MAGS System
System (MultiAgent Geo-Simulation) (Moulin
et al., 2003) is a generic platform that can be used to simulate,
in real-time, thousands of knowledge-based agents navigating in a 2D
or 3D virtual environment. It runs on Windows Platforms.
have several knowledge-based capabilities such as perception, navigation,
memorization, communication and objective-based behavior which allow
them to display an autonomous behavior within a 2D-3D geographic virtual
environment. The agents in MAGS are able to perceive the elements contained
in the environment, to navigate autonomously inside it and to react
to changes occurring in the environment.
been used to develop applications in several domains: crowd behavior
in urban environments, customers’ behavior in shopping Mall (Ali,
Moulin 2005), the use of geosimulation to support planning activities
in dynamic spatial situations and its application to the attack of forest
fires, the use of MAGS to simulate the propagation of West Nile Virus
in a large territory (Southern part of Quebec).
here if you want to see a Powerpoint presentation about the MAGS Project
and Tear Gaz in front of Quebec parliament House
fence blocks the crowd
A method to develop multi-agent
a generic approach (Ali
Moulin 2005) that we refined when developing several multi-agent
geo-simulations which simulate various kinds of spatial behaviors in
virtual geographic environments. Several of these applications are related
to the customers’ shopping behavior shopping malls : One in Toronto
(Square One) and three in Quebec City (Place Ste-Foy, Place De La Cité
and Place Laurier). We also developed an application that simulates
the shopping behavior of customers in a big department store (Zellers).
The main aim of the development of this kind of applications is to help
shopping mall or retail managers to understand the shoppers’ behavior
in the shopping mall or in a store, in order to evaluate how the changes
of the layout of the mall or store can influence shoppers’ behaviors.
The Virtual Geographic Environment
characteristics of the simulation environment and static objects are
generated from data stored in a Geographic Information System and in
related databases. The spatial characteristics of the environment are
recorded in raster mode which enables agents to access the information
contained in various bitmaps that encode different kinds of information
about the virtual environment and the objects contained in it. The AgentsMap
contains the information about the locations of agents and the static
objects contained in the environment. The ObstaclesMap contains the
locations of obstacles, the AriadneMap contains the paths that can be
followed by mobile agents, the HeightMap represents the elevations of
the environment, etc. The information contained in the different bitmaps
influences the agent’s perception and navigation. In MAGS the
simulation environment is not static and can change during the simulation.
For example, we can add new obstacles, or gaseous phenomena such as
smoke, dense gases and odors which are represented using particle systems,
etc. (Moulin et al., 2003). A module in MAGS simulates the propagation
of dense gas or smoke. Another module enables the user to manipulate
or add objects in the virtual environment while the simulation runs:
hence, agents perceive these new obstacles and react accordingly.
can be found in the MAGS
Presentation and in (Moulin
et al. 2003)
Some details about MAGS agents’ capabilities
have several knowledge-based capabilities.
agent perception process: In MAGS agents can perceive (1) terrain characteristics
such as elevation and slopes; (2) the elements contained in the landscape
surrounding the agent including buildings and static objects; (3) other
mobile agents navigating in the agent's range of perception; (4) dynamic
areas or volumes whose shape changes during the simulation (ex.: smoky
areas or zones having pleasant odors); (5) spatial events such as explosions,
etc. occurring in the agent's vicinity; (6) messages communicated by
other agents. (Moulin and al., 2003).
agent navigation process: In MAGS agents can have two navigation modes:
Following-a-path-mode in which agents follow specific paths which are
stored in a bitmap called ARIANE_MAP or Obstacle-avoidance-mode in which
the agents move through open spaces avoiding obstacles. In MAGS the
obstacles to be avoided are recoded in specific bitmap called OBSTACLE_MAP.
memorization process: In MAGS the agents have three kinds of memory:
Perception memory in which the agents store what they perceive during
the last few simulation steps; Working memory in which the agents memorize
what they perceive in one simulation and Long-term memory in which the
agents store what they perceived in several simulations (Perron et Moulin.,
agent's characteristics: In MAGS an agent is characterized by a number
of variables whose values describe the agent's state at any given time.
We distinguish static states and dynamic states. A static state does
not change during the simulation and is represented by a variable and
its current value (ex.: gender, age group, occupation, marital status).
A dynamic state is a state which can possibly change during the simulation
(ex.: hunger, tiredness, stress). A dynamic state is represented by
a variable associated with a function which computes how this variable
changes values during the simulation. The variable is characterized
by an initial value, a maximum value, an increase rate, a decrease rate,
an upper threshold and a lower threshold which are used by the function.
Using these parameters, the system can simulate the evolution of the
agents' dynamic states and trigger the relevant behaviors (Moulin et
objective-based behavior: In MAGS an agent is associated with a set
of objectives that it tries to reach. The objectives are organized in
hierarchies which are is composed of nodes that represent composite
objectives and leaves that represent elementary objectives which are
associated with actions that the agent can perform. Each agent owns
a set of objectives corresponding to its needs. An objective is associated
with rules containing constraints on the activation and the completion
of the objective. Constraints are dependent on time, on the agent's
states, and the environment's state. The selection of the current agent's
behavior relies on the priority of its objectives. Each need is associated
with a priority which varies according to the agent's profile. An objective's
priority is primarily a function of the corresponding need's priority.
It is also subject to modifications brought about by the opportunities
that the agent perceives or by temporal constraints (Moulin and al.,
agent communication process: In MAGS agents can communicate with other
agents by exchanging messages using mailbox-based communication.
can be found in the MAGS
Presentation and in (Moulin
et al. 2003)