Platform for Simulations with Multiple Agents
PlaSMA has originally been developed at the Collaborative Research Centre 637 Autonomous Cooperating Logistic Processes (SFB 637) at the University of Bremen.
It is an event-driven simulation system which has been designed to solve and evaluate scenarios of the logistics domain. In particular the system allows to simulate autonomous logistic processes where autonomous agents perform planning and decision processes. The platform is based on the FIPA-compliant Java Agent Development Framework (JADE). JADE offers components for agent communication and coordination. PlaSMA extends this architecture as a simulation middleware for discrete event time progression.
Simulation experiments are defined by an OWL ontology
and user-implemented software agents which represent the individuals defined in the ontology.
Although the main focus is on logistics simulation, the system is suitable for other domains as well.
Technical Details
In general the PlaSMA architecture consists of the following components: the world model, physical objects, infrastructure, action triggers, behavior definitions and agents. The agents in a PlaSMA simulation scenario have methods for, e.g., sending and receiving messages as well as executing actions within defined behaviours. The simulation agent is a logical simulation process that represents either an environmental process, an organisation or a set of physical objects.
The world model of a PlaSMA scenario can be modeled as a graph so that the infrastructure of the logistics domain can be mapped accordingly. Graph nodes represent, e.g., traffic junctions or logistic sources and sinks. Graph edges represent roads, rails, waterways, etc. For modeling real transport infrastructures it is possible to import a graph from OpenStreetMap.
The PlaSMA application is platform-independent. It runs with the Java Virtual Machine on Windows and Linux. To run PlaSMA, simply get it from our download page, unpack the file and start both, the server and the client. To learn more about PlaSMA, please have a look into the PlaSMA User Guide and the Javadoc API documentation. Both documents provide information on how to use the PlaSMA System and how to create a scenario from scratch.
The PlaSMA software package contains a server application and two different client applications. The PlaSMA server runs the simulation either on a local machine or on mutiple computers in parallel. The client (GUI or console) starts simulation scenarios and provides information about simulation progress. The graphical user interface allows to configure simulation parameters and shows simulation entities on a 3D world map. The command line client for console is for advanced users and only shows percentage of simulation progress.
PlaSMA - Platform for Simulations with Multiple Agents
Release notes for version 12.02:
General
* Major rewrite and extension of Aurora GUI client.
* Added support for direct import of transport infrastructures from OpenStreetMap[1].
* Consolidation of XML schemas for configuration files (PlaSMA server, client, and
scenarios).
* Major changes to scenario configuration (see User Guide).
* Support for modeling scenarios without ontological grounding.
* Scenarios for previous PlaSMA versions are no longer supported.
* Discontinued command line evaluation tool.
* PlaSMA now requires JDK 1.6 to run.
* Added support for PostgreSQL 9.x.
* Change version numbering for new releases to YY.MM.
Aurora GUI client
* Supports editing of scenario configuration, including creating, editing and/or
removing agents to the scenario. Agents can be linked to represented physical
objects or legal bodies.
* Edited scenario configurations can be stored persistently.
* Log Output can be read and searched from the GUI and filtered by Agents, Categories,
Log Levels and specified keywords.
* Displayed infrastructure in WorldWind visualization depends on zoom level.
* Removed scenario agents from WorldWind sidebar.
* Supports editing and persistently storing a list of known PlaSMA hosts.
* Completed German / English localization of Aurora GUI client.
* Supports semi-automatic error reports.
* Supports configuration of database for infrastructure import.
Worldmodel
* Accelerated loading of ontology-based infrastructures.
* Extended ontology-based Germany infrastructure graph.
* Added support for large-scale transport infrastructures (up to 200,000 edges) from
databases instead of ontology-based transport infrastructures.
API
* New approach to describe Agent Configuration as enumeration.
* Added support for typed agent attributes.
* Added support for optional agent attributes.
* Added support for mandatory agent attributes. If a mandatory attribute is
omitted in the XML Agent Configuration, a suitable default value is substituted
automatically. This applies also to the Agent Configuration in the GUI.
* Added support for attribute lists.
* Added method getReferencedObjFor(OntologyObjectProperty oop) with possible values
{REPRESENTS_OBJECT, OPERATES_FOR, REPRESENTS_INFRASTRUCTURE} to find out the
referenced objects of an agent.
Library Updates
* Updated JADE to version 4.1.
* Updated WorldWind to version 2.1.
* Updated PostgreSQL to version 9.1.
* Updated PostgreSQL JDBDC 4 Driver to version 9.1.
* Added SQLite 3.7.4.
* Added Guava 11.0.
* Added Javamail 1.4.4.
[1] http://www.openstreetmap.org
PlaSMA - Platform for Simulations with Multiple Agents
Display release notes

