Pandora: A versatile agent-based modelling platform for social simulation

The evolving field of social simulation is diversifying the degree of complexity of published works, from simple models to large scale simulations with millions of agents. In this context, available platforms are divided between the ones favoring easy to use interfaces and the development of prototyping, and others created for simulating large scenarios with high computing costs. The later group is truly diverse, based on the way executions are accelerate and the wide range of technologies that they can support. The cost of this increase in performance is a steep learning curve, as the users of these platforms need to have advanced programming skills in order to deal with code complexity. Pandora is a novel open-source framework designed to fill the gap between these approaches. A twin interface in Python and C++ offers the same interface to users developing prototypes as well as projects with High-Performance Computing requirements. The need for parallel programming knowledge is also skipped through the automated generation, during compilation time, of needed code for shared and unshared memory distribution using OpenMP and MPI. A set of different helpers (unit testing, georeferencing support) and analytical tools complement the basic framework in order to facilitate the tasks of development, testing and analyzing any type of Agent-Based Model. Pandora’s flexibility is exemplified through different projects that have introduced GPU acceleration, georeferenced data and cloud computing to the framework. Keywords–Agent-Based Models; Social Simulation; HighPerformance Computing; Parallel programming; Multi-Agent Systems

[1]  Peter Wittek,et al.  Quantum Probabilistic Description of Dealing with Risk and Ambiguity in Foraging Decisions , 2013, QI.

[2]  Darrel C. Ince,et al.  The case for open computer programs , 2012, Nature.

[3]  Mark Lake,et al.  Trends in Archaeological Simulation , 2014 .

[4]  Michael J. North,et al.  Complex adaptive systems modeling with Repast Simphony , 2013, Complex Adapt. Syst. Model..

[5]  J. Gareth Polhill,et al.  The ODD protocol: A review and first update , 2010, Ecological Modelling.

[6]  Raymond R. Hill,et al.  A Survey of Agent-Based Modeling Practices (January 1998 to July 2008) , 2009, J. Artif. Soc. Soc. Simul..

[7]  Jorge J. Gómez-Sanz,et al.  Agent Oriented Software Engineering with INGENIAS , 2003, CEEMAS.

[8]  Rick Mugridge Test driven development and the scientific method , 2003, Proceedings of the Agile Development Conference, 2003. ADC 2003.

[9]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[10]  Peter Wittek,et al.  Scalable agent-based modelling with cloud HPC resources for social simulations , 2012, 4th IEEE International Conference on Cloud Computing Technology and Science Proceedings.

[11]  Stephen John Turner,et al.  Large scale agent-based simulation on the grid , 2008, Future Gener. Comput. Syst..

[12]  Peter Wittek,et al.  Social Simulations Accelerated : Large-Scale Agent-Based Modeling on a GPU Cluster , 2013 .

[13]  Xavier Rubio-Campillo,et al.  The development of new infantry tactics during the early eighteenth century , 2014 .

[14]  Ira Rudowsky,et al.  Intelligent Agents , 2004, Commun. Assoc. Inf. Syst..

[15]  Mariam Kiran,et al.  FLAME: simulating large populations of agents on parallel hardware architectures , 2010, AAMAS.

[16]  James J. Thomas,et al.  Defining Insight for Visual Analytics , 2009, IEEE Computer Graphics and Applications.

[17]  Matthias Scheutz,et al.  Adaptive algorithms for the dynamic distribution and parallel execution of agent-based models , 2006, J. Parallel Distributed Comput..

[18]  Dietmar Pfahl,et al.  What Do We Know about Scientific Software Development's Agile Practices? , 2012, Computing in Science & Engineering.

[19]  Michael J. North,et al.  A Declarative Model Assembly Infrastructure for Verification and Validation , 2006, WCSS.

[20]  Jose María Cela,et al.  Simulating archaeologists? Using agent-based modelling to improve battlefield excavations , 2012 .

[21]  Werner Dubitzky,et al.  Repast HPC: A Platform for Large-Scale Agent-Based Modeling , 2012 .

[22]  Gregory R. Madey,et al.  Tools of the Trade: A Survey of Various Agent Based Modeling Platforms , 2009, J. Artif. Soc. Soc. Simul..

[23]  Ken Kahn,et al.  The Modelling4All project a web-based modelling tool embedded in Web 2.0 , 2009, SimuTools.

[24]  Hugues Bersini,et al.  UML for ABM , 2012, J. Artif. Soc. Soc. Simul..