GPU Environmental Delegation of Agent Perceptions: Application to Reynolds’s Boids

  • Emmanuel Hermellin
  • Fabien Michel
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9568)


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.


Multi-Agent Based Simulation Flocking GPGPU CUDA 


  1. 1.
    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 2010Google Scholar
  2. 2.
    Beurier, G., Simonin, O., Ferber, J.: Model and simulation of multi-level emergence. In: ISSPIT 2002, April 2008Google Scholar
  3. 3.
    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)CrossRefGoogle Scholar
  4. 4.
    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)CrossRefGoogle Scholar
  5. 5.
    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)CrossRefGoogle Scholar
  6. 6.
    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)CrossRefGoogle Scholar
  7. 7.
    Luke, S., Cioffi-Revilla, C., Panait, L., Sullivan, K., Balan, G.: MASON: a multiagent simulation environment. Simulation 81(7), 517–527 (2005)CrossRefGoogle Scholar
  8. 8.
    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)Google Scholar
  9. 9.
    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)CrossRefGoogle Scholar
  10. 10.
    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 2005Google Scholar
  11. 11.
    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)CrossRefGoogle Scholar
  12. 12.
    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 SocietyGoogle Scholar
  13. 13.
    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)Google Scholar
  14. 14.
    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)Google Scholar
  15. 15.
    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)CrossRefGoogle Scholar
  16. 16.
    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)Google Scholar
  17. 17.
    Sklar, E.: NetLogo, a multi-agent simulation environment. Artif. Life 13(3), 303–311 (2007)CrossRefGoogle Scholar
  18. 18.
    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)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  1. 1.LIRMM - CNRSUniversity of MontpellierMontpellierFrance

Personalised recommendations