[Martin Taylor 2010.03.06.11.45]
[Martin Taylor 2010.03.05.14.54]
What is breve?
breve is a free simulation environment designed for multi-agent
simulation. breve allows users to define the behaviors of autonomous
agents in a continuous 3D world, then observe how they interact. breve
includes support for a rich visualization engine, realistic physical
simulation and an easy-to-use scripting language.
Starting in breve 2.6, breve simulations can be written in breve’s
custom “steve”
language, or with the popular open-source Python language. Both
of these languages, along with their strengths and weaknesses are
described later in this documentation.
breve can be used as a tool to explore any type of simulated
world.
breve has been used for a wide variety of simulation applications:
simulated virtual creatures, artificial ecosystems, simulations of
molecular biology, visualization and much more. breve facilitates the
construction of complex agent-based simulations by automatically
handling agent communication, representation in 3D space, graphical
rendering, physical simulation and a number of other features which are
useful to agent-based simulations.
I’ve had a little look at breve demos, documentation, and forums. It
looks mostly very nice, but it is a sole-author project that hasn’t
been updated for a couple of years. The author not long ago said that
further development was ongoing, and a version with new features was in
the works, so it’s worth keeping an euye on. Although it is
multiplatform, the Mac interface is nicer than the others. One possible
gotcha for control experiments is that I saw no interface for capturing
mouse movements, in other words for involving the human with the
simulated agents. I’m sure one could be written, but I’m not sure how
platform-independent it would be.
This morning I looked at
and saw two systems that looked as though they might possibly be
candidates (available for Windows, Linux and Mac, free and open source,
with 3D representation). I haven’t investigated either of them further,
and if anyone knows anything about either (or any other), please let us
know. The ones I noted were SeSaM and
Repast . Repast has a visual
programming mode that might let one diagram control loops. Here’s what the home page says about SeSaM:
···
http://en.wikipedia.org/wiki/Comparison_of_agent-based_modeling_softwarehttp://www.simsesam.de/http://repast.sourceforge.net/
Multi-Agent
Simulation Environment
SeSAm
(Shell
for Simulated Agent Systems)
provides a generic environment for modelling and experimenting with
agent-based simulation. We specially focused on providing a tool for
the easy construction of complex models, which include dynamic interdependecies or emergent
behaviour.
SeSAm
provides:
-
and many
further features…
SeSAm
is usefull for simulations in many application domains, such as: -
Logistics
(coordination, storage layout optimization, software test,…), -
Production
(factory, optimized plans for different requirements,…) -
Traffic
(avoidance of traffic jams, traffic light control, route choice…), -
Passenger Flow
(market improvement, evacuation of buildings) -
Health Care
(optimization of clinical processes, reduction of costs) -
Biology
(understanding of insect behaviour, testing theories) -
and many other
domains…
SeSAm
is a tool for so called agent based simulation. Agents are active
entities of the simulation and their behaviour is implemented with
activity diagrams. Based on an extensive number of primitive
components, a user is able to design a simulation graphically without
knowing the syntax of a traditional programming language.
The
model specification is executable in the same environment and the
dynamics of this simulation may be observed. As there are freely
configurable instruments for gathering data and scripting options for
constructing simulation experiments, SeSAm is a highly valuable tool
for MAS simulations especially for complex models with flexible agent
behaviour and interactions.
Repast Simphony
- Fluid model component development using any mixture of Java, Groovy, and flowcharts
in each project; - A pure Java point-and-click
model execution environment that includes built-in results logging
and graphing tools as well as automated connections to a variety of
optional external tools including the R statistics environment, *ORA and Pajek
network analysis plugins, A live agent SQL query tool plugin, the VisAD
scientific visualization package, the Weka data mining
platform, many popular spreadsheets, the MATLAB computational mathematics
environment, and the iReport
visual report designer; - An extremely flexible hierarchically nested definition of space
including the ability to do point-and-click and modeling and
visualization of 2D environments; 3D environments; networks including
full integration with the JUNG
network modeling library as well as Microsoft
Excel spreadsheets and UCINET
DL file importing; and geographical spaces including 2D and 3D
Geographical Information Systems (GIS) support; - A range of data storage “freeze dryers” for model check pointing
and restoration including XML file storage, text file storage, and
database storage; - A fully concurrent multithreaded discrete event scheduler;
- Libraries for genetic algorithms, neural networks, regression,
random number generation, and specialized mathematics; - An automated Monte Carlo simulation framework which supports
multiple modes of model results optimization; - Built-in tools for integrating external models;
- Distributed computing with Terracotta;
- Full object-orientation;
- Optional end-to-end XML simulation
- A point-and-click model deployment system; and
- Availability on virtually all modern personal computing platforms
including Windows, Mac OS, and Linux.