Abstract
In high-performance computing of multi-agent systems, there often exists a load imbalance that slows down the calculation. In this paper, we discuss the parallelization of the Boids model for simulating a swarm intelligence. We apply the multi-level hierarchy of parallelism to the Boids model to mitigate the load-imbalance problem. To eliminate numerical errors due to parallelization, we apply pseudo-quadruple arithmetic. The parallel performance is evaluated on three major architectures, including many-core processors on an x86-based server with GPUs, and the Earth Simulator. The parallelization can decrease the negative effects of a load imbalance to almost zero in a simulation of 50 million agents. In addition, the parallelization guarantees the reproducibility of the results in a sequential execution. The strong scaling shows the potential to complete a simulation in real-time on the Earth Simulator. In addition, the weak scaling shows the ability to calculate 100 billion agents within a reasonable amount of time.
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs10015-016-0308-3/MediaObjects/10015_2016_308_Fig1_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs10015-016-0308-3/MediaObjects/10015_2016_308_Fig2_HTML.jpg)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs10015-016-0308-3/MediaObjects/10015_2016_308_Fig3_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs10015-016-0308-3/MediaObjects/10015_2016_308_Fig4_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs10015-016-0308-3/MediaObjects/10015_2016_308_Fig5_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs10015-016-0308-3/MediaObjects/10015_2016_308_Fig6_HTML.gif)
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Weiss G (1999) Multiagent systems—modern approach to distributed artificial intelligence. The MIT Press, Cambridge
Collier N, North M (2012) Parallel agent-based simulation with repast for high performance computing. Simulation 89(10):1215–1235
Mas E, Koshimura S, Imamura F, Suppasri A, Muhari A, Adriano B (2015) Recent advances in agent-based tsunami evacuation simulations: case studies in Indonesia, Thailand, Japan and Peru. Pure Appl Geophys 172(12):3409–3424
Lin Ming C, Guy Stephen, Narain Rahul, Sewall Jason, Patil Sachin, Chhugani Jatin, Golas Abhinav, van den Berg Jur, Curtis Sean, Wilkie David, Merrell Paul, Kim Changkyu, Satish Nadathur, Dubey Pradeep, Manocha Dinesh (2009) Interactive modeling, simulation and control of large-scale crowds and traffic. Lect Notes Comput Sci 5884:94–103
Wijerathne ML, Melgar LA, Hori M, Ichimura T, Tanaka S (2013) HPC enhanced large urban area evacuation simulations with vision based autonomously navigating multi agents. Proced Comput Sci 18:1515–1524. doi:10.1016/j.procs.2013.05.319
Marquez C, César E, Sorribes J (2013) A load balancing schema for agent-based SPMD applications. In: Proceedings of the international conference on parallel and distributed processing techniques and applications, pp 12–18
Terai M, Matsuzawa T (2006) MPI-OpenMP hybrid parallel computation in continuous-velocity lattice-gas model. Parallel computational fluid dynamics—theory and applications, Elsevier, pp 477–484
Reynolds CW (1987) Flocks, herds, and schools: a distributed behavioral model. Comput Graph 21(4):25–34
Grest GS, Dunweg B, Kremer K (1989) Vectorized link cell fortran code for molecular dynamics simulations for a large number of particles. Comput Phys Commun 55:269–285
Balevičius R, Kačianauskas R, Džiugys A, Maknickas A, Vislavičius K (2005) Demmat code for numerical simulation of multi-particle systems dynamics. Inf Technol Control 34(1):71–78
DE Knuth (1969) The art of computer programming: seminumerical algorithm, vol 2, Chapter 4.2. Addison Wesley, Boston
MPI forum (2016) http://meetings.mpi-forum.org/. Accessed 11 Aug 2016
OpenMP Architecture Review Board (2016) OpenMP Specifications, http://openmp.org/. Accessed 11 Aug 2016
OpenACC standard (2016) http://www.openacc.org/. Accessed 11 Aug 2016
Smith B, Bjørstad P, Gropp W (1996) Domain decomposition: parallel multilevel methods for elliptic partial multilevel methods for ellipitec partial equations. Cambridge University Press, Cambridge
Kurokawa M, Himeno R, Shigetani T, Matsuzawa T (2000) A case study of the partitioning patterns for domain decomposition method on VPP700E. RIKEN Rev 30:30–34
Japan Agency for Marine-Earth Science and Technology (JAMSTEC) Earth Simulator (2016) http://www.jamstec.go.jp/es/en/system/index.html. Accessed 11 Aug 2016
Author information
Authors and Affiliations
Corresponding author
About this article
Cite this article
Hirokawa, Y., Nishikawa, N., Asano, T. et al. A study of real-time and 100 billion agents simulation using the Boids model. Artif Life Robotics 21, 525–530 (2016). https://doi.org/10.1007/s10015-016-0308-3
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10015-016-0308-3