Predator-Prey for High-Performance Computing
The purpose of PPHPC is to serve as a standard model for studying and evaluating spatial agent-based model (SABM) implementation strategies. It is a realization of a predator-prey dynamic system, and captures important characteristics of SABMs, such as agent movement and local agent interactions. The model can be implemented using substantially different approaches that ensure statistically equivalent qualitative results. Implementations may differ in aspects such as the selected system architecture, choice of programming language and/or agent-based modeling framework, parallelization strategy, random number generator, and so forth. By comparing distinct PPHPC implementations, valuable insights can be obtained on the computational and algorithmical design of SABMs in general.
- Netlogo (certified OpenABM implementation)
- Java (parallel)
- OpenCL (GPU+CPU) (in progress)
-
Fachada, N., Lopes, V.V., Martins, R.C., Rosa, A.C., (2015) Towards a standard model for research in agent-based modeling and simulation, PeerJ Computer Science, 1:e36, http://dx.doi.org/10.7717/peerj-cs.36
-
Fachada, N. (2016), Agent-Based Modeling on High Performance Computing Architectures, PhD Thesis, Instituto Superior Técnico (link)
-
Fachada, N., Lopes, V.V., Martins, R.C., Rosa, A.C., (2017) Parallelization strategies for spatial agent-based models, International Journal of Parallel Programming, 45(3):449-481, http://dx.doi.org/10.1007/s10766-015-0399-9 (arXiv preprint)
-
Fachada, N., Lopes, V.V., Martins, R.C., Rosa, A.C., (2017) Model-independent comparison of simulation output, Simulation Modelling Practice and Theory, 72:131-149, http://dx.doi.org/10.1016/j.simpat.2016.12.013 (arXiv preprint)
-
Fachada, N., Rosa, A.C., (2017) Assessing the feasibility of OpenCL CPU implementations for agent-based simulations, Proceedings of the 5th International Workshop on OpenCL (IWOCL 2017), Article No. 4, http://doi.acm.org/10.1145/3078155.3078174
Several Open Source licenses, which depend on the implementation.