Abstract
Using Multi-Agent Based Simulation (MABS), computing resources requirements often limit the extent to which a model could be experimented with. Regarding this issue, some research works propose to use the General-Purpose Computing on Graphics Processing Units (GPGPU) technology. GPGPU allows to use the massively parallel architecture of graphic cards to perform general-purpose computing with huge speedups. Still, GPGPU requires the underlying program to be compliant with the specific architecture of GPU devices, which is very constraining. Especially, it turns out that doing MABS using GPGPU is very challenging because converting Agent Based Models (ABM) accordingly is a very difficult task. In this context, the GPU Environmental Delegation of Agent Perceptions principle has been proposed to ease the use of GPGPU for MABS. This principle consists in making a clear separation between the agent behaviors, managed by the CPU, and environmental dynamics, handled by the GPU. For now, this principle has shown good results, but only on one single case study. In this paper, we further trial this principle by testing its feasibility and genericness on a classic ABM, namely Reynolds’s boids. To this end, we first review existing boids implementations to then propose our own benchmark model. The paper then shows that applying GPU delegation not only speeds up boids simulations but also produces an ABM which is easy to understand, thanks to a clear separation of concerns.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
The orientation is an angle in degree (between 0 and 360) which gives the heading of the agent according to the landmark fixed in the environment.
- 7.
- 8.
In this context, Thread is similar to the concept of task: A thread may be considered as an instance of the kernel which is performed on a restricted portion of the data depending on its location in the global grid (its identifier).
- 9.
- 10.
In the context of TurtleKit, FieldOfView is the range which is used to select the cells around the agent.
- 11.
The JCuda library allows to call GPU kernels, written in C, directly from Java.
References
Badeig, F., Balbo, F., Pinson, S.: A contextual environment approach for multi-agent-based simulation. In: 2nd International Conference on Agents and Artificial Intelligence, ICAART 2010, Spain, pp. 212–217, June 2010
Beurier, G., Simonin, O., Ferber, J.: Model and simulation of multi-level emergence. In: ISSPIT 2002, April 2008
Grignard, A., Taillandier, P., Gaudou, B., Vo, D.A., Huynh, N.Q., Drogoul, A.: GAMA 1.6: advancing the art of complex agent-based modeling and simulation. In: Boella, G., Elkind, E., Savarimuthu, B.T.R., Dignum, F., Purvis, M.K. (eds.) PRIMA 2013. LNCS, vol. 8291, pp. 117–131. Springer, Heidelberg (2013)
Kubera, Y., Mathieu, P., Picault, S.: IODA: an interaction-oriented approach for multi-agent based simulations. Auton. Agent. Multi-Agent Syst. 23(3), 303–343 (2011)
Laville, G., Mazouzi, K., Lang, C., Marilleau, N., Herrmann, B., Philippe, L.: MCMAS: a toolkit to benefit from many-core architecure in agent-based simulation. In: an Mey, D., Alexander, M., Bientinesi, P., Cannataro, M., Clauss, C., Costan, A., Kecskemeti, G., Morin, C., Ricci, L., Sahuquillo, J., Schulz, M., Scarano, V., Scott, S.L., Weidendorfer, J. (eds.) Euro-Par 2013. LNCS, vol. 8374, pp. 544–554. Springer, Heidelberg (2014)
Laville, G., Mazouzi, K., Lang, C., Marilleau, N., Philippe, L.: Using GPU for Multi-agent multi-scale simulations. In: Omatu, S., Paz Santana, J.F., González, S.R., Molina, J.M., Bernardos, A.M., Rodríguez, J.M.C. (eds.) Distributed Computing and Artificial Intelligence. AISC, vol. 151, pp. 197–204. Springer, Heidelberg (2012)
Luke, S., Cioffi-Revilla, C., Panait, L., Sullivan, K., Balan, G.: MASON: a multiagent simulation environment. Simulation 81(7), 517–527 (2005)
Lysenko, M., D’Souza, R.M.: A framework for megascale agent based model simulations on graphics processing units. J. Artif. Soc. Soc. Simul. 11(4), 10 (2008)
Michel, F.: Translating agent perception computations into environmental processes in multi-agent-based simulations: a means for integrating graphics processing unit programming within usual agent-based simulation platforms. Syst. Res. Behav. Sci. 30(6), 703–715 (2013)
Michel, F., Beurier, G., Ferber, J.: The turtlekit simulation: application to complex systems. In: Workshops Sessions of the Proceedings of the 1st International Conference on Signal-Image Technology and Internet-Based Systems, pp. 122–128. IEEE, November 2005
Owens, J.D., Luebke, D., Govindaraju, N., Harris, M., Kruger, J., Lefohn, A.E., Purcell, T.J.: A survey of general-purpose computation on graphics hardware. Comput. Graph. forum 26(1), 80–113 (2007)
Payet, D., Courdier, R., Sébastien, N., Ralambondrainy, T.: Environment as support for simplification, reuse and integration of processes in spatial MAS. In: Proceedings of the 2006 IEEE International Conference on Information Reuse and Integration, USA, pp. 127–131 (2006). IEEE Systems, Man, and Cybernetics Society
Resnick, M.: StarLogo: an environment for decentralized modeling and decentralized thinking. In: Conference Companion on Human Factors in Computing Systems, CHI 1996, pp. 11–12. ACM, New York (1996)
Reynolds, C.W.: Flocks, herds and schools: a distributed behavioral model. In Proceedings of the 14th Annual Conference on Computer Graphics and Interactive Techniques. SIGGRAPH Computer Graphics 1987, vol. 21, pp. 25–34. ACM, New York (1987)
Richmond, P., Walker, D., Coakley, S., Romano, D.M.: High performance cellular level agent-based simulation with FLAME for the GPU. Briefings Bioinform. 11(3), 334–347 (2010)
Sano, Y., Kadon, Y., Fukuta, N.: A performance optimization support framework for gpu-based traffic simulations with negotiating agents. In: Proceedings of the 2014 Seventh International Workshop on Agent-based Complex Automated Negotiations (2014)
Sklar, E.: NetLogo, a multi-agent simulation environment. Artif. Life 13(3), 303–311 (2007)
Vigueras, G., Orduña, J.M., Lozano, M.: A GPU-Based multi-agent system for real-time simulations. In: Demazeau, Y., Dignum, F., Corchado, J.M., Pérez, J.B. (eds.) Advances in PAAMS. AISC, vol. 70, pp. 15–24. Springer, Heidelberg (2010)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing Switzerland
About this paper
Cite this paper
Hermellin, E., Michel, F. (2016). GPU Environmental Delegation of Agent Perceptions: Application to Reynolds’s Boids. In: Gaudou, B., Sichman, J. (eds) Multi-Agent Based Simulation XVI. MABS 2015. Lecture Notes in Computer Science(), vol 9568. Springer, Cham. https://doi.org/10.1007/978-3-319-31447-1_5
Download citation
DOI: https://doi.org/10.1007/978-3-319-31447-1_5
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-31446-4
Online ISBN: 978-3-319-31447-1
eBook Packages: Computer ScienceComputer Science (R0)