Pandora: An HPC Agent-Based Modelling framework

Overview: 

 

Agent-Based Modelling (ABM) is recognised as one of the techniques with more potential to develop simulations capable of being used in Social Simulation. ABM uses a bottom-up approach to analyse the complexity of human interactions, and understand the emergence of global processes from individuals to the system as a whole. live. ABM is the best tool to simulate the interaction of entities with complex and heterogeneous behaviours within realistic environments. However, these simulations require high computational costs to be effective, and it is difficult to create Agent-Based Models capable of being executed in any type of computer, from laptops to supercomputers.

Pandora Library is an ABM framework created by the social simulation research group of the Barcelona Supercomputing Centre. This tool is designed to implement agent-based models and to execute them in high-performance computing environments. It has been explicitly programmed to allow the execution of large-scale agent-based simulations, and it is capable of dealing with thousands of agents developing complex actions. Pandora has full Geographical Information System support, to cope with simulations in which spatial coordinates are relevant, both in terms of agent interactions and environment. The library also allows the researcher to execute several simulations by modifying initial parameters, as well as to distribute particular executions with high computer costs by using a computer cluster. A cluster is formed by different linked computers (called nodes); the distribution divides the computing cost of the execution between different nodes, each of which executes a part of the entire simulation. As a result we will be able to run the simulation in a fraction of the time that would be needed if we were using a single computer.

The results of each simulation are stored in hierarchical data format (HDF), a popular format that can be loaded by most GIS. This feature is particularly useful, as we will also use GIS to analyse simulation results.

Pandora is complemented by Cassandra, a program developed to analyse the results generated by a simulation created with the library. Cassandra allows the user to visualize the complete execution of simulations using a combination of 2D and 3D graphics, as well as statistical figures.

Features of Pandora/Cassandra:

  • C++ Framework to develop, execute and analyse Agent-Based Models and Cellular Automata

  • Highly scalable parallel execution in High-Performance Computers, Clusters and PC's using MPI/OpenMP

  • Complete integration between environmental related data and agent behaviours.

  • GIS support using GDAL library

  • Capabilities for designing advanced distributed Artificial Intelligence agents.

  • Cassandra: an application designed to analyse simulations created with Pandora.

  • Support for loading simulation results in other GIS applications (GRASS, QGIS) and statistical packages (R project).

Research Lines: 

Applications and potential case studies that can benefit from using Pandora framework are diverse:

  • Exploration of social phenomena, social networks and human interaction.
  • Development of simulations combining environmental and social factors.
  • Predictive modelling with real data.
  • Evolutionary processes: migrations, cultural change, socieconomic dynamics, complex systems.
Projects/Areas: 

 

Pandora is being used in Consolider SimulPast, an ambitious archaeological project that tries to simulated past societies in order to understand human behaviour: http://www.simulpast.es

A list of publications using the library can be found here.

Additional Information: 

 

Pandora is currently being developed and published under a Free Software License.  You can download an unstable version of the code here:

http://xrubio.github.io/pandora/

Contact: xavier.rubio (at) bsc.es