Overview of Case Studies on Adapting MABS Models to GPU Programming

  • Emmanuel HermellinEmail author
  • Fabien Michel
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 616)


General-Purpose Computing on Graphics Units (GPGPU) is today recognized as a practical and efficient way of accelerating software procedures that require a lot of computing resources. However, using this technology in the context of Multi-Agent Based Simulation (MABS) appears to be difficult because GPGPU relies on a very specific programming approach for which MABS models are not naturally adapted. This paper discusses practical results from several works we have done on adapting and developing different MABS models using GPU programming. Especially, studying how GPGPU could be used in the scope of MABS, our main motivation is not only to speed up MABS but also to provide the MABS community with a general approach to GPU programming, which could be used on a wide variety of agent-based models. So, this paper first summarizes all the use cases that we have considered so far and then focuses on identifying which parts of the development process could be generalized.


MABS GPGPU GPU delegation 


  1. 1.
    Weyns, D., Michel, F. (eds.): E4MAS 2014. LNCS (LNAI), vol. 9068. Springer, Heidelberg (2015)Google Scholar
  2. 2.
    Badeig, F., Balbo, F., Pinson, S.: A contextual environment approach for multi-agent-based simulation. In: ICAART 2010, 2nd International Conference on Agents and Artificial Intelligence, pp. 212–217, Spain, June 2010Google Scholar
  3. 3.
    Beurier, G., Simonin, O., Ferber, J.: Model and simulation of multi-level emergence. In: ISSPIT 2002, April 2008Google Scholar
  4. 4.
    Bleiweiss, A.: Multi agent navigation on the GPU. In: Games Developpement Conference (2009)Google Scholar
  5. 5.
    Bourgoin, M., Chailloux, E., Lamotte, J.-L.: Efficient abstractions for GPGPU programming. Int. J. Parallel Program. 42(4), 583–600 (2014)CrossRefGoogle Scholar
  6. 6.
    Che, S., Boyer, M., Meng, J., Tarjan, D., Sheaffer, J.W., Skadron, K.: A performance study of general-purpose applications on graphics processors using CUDA. J. Parallel Distrib. Comput. 68(10), 1370–1380 (2008)CrossRefGoogle Scholar
  7. 7.
    D’Souza, R.M., Lysenko, M., Rahmani, K.: SugarScape on steroids: simulating over a million agents atinteractive rates. In: Proceedings of Agent 2007 Conference (2007)Google Scholar
  8. 8.
    Erra, U., Frola, B., Scarano, V., Couzin, I.: An efficient GPU implementation for large scale individual-based simulation of collective behavior. High Perform. Comput. Syst. Biol. 2009, 51–58 (2009)Google Scholar
  9. 9.
    Hermellin, E., Michel, F.: GPU environmental delegation of agent perceptions: application to reynolds’ s boids. In: Gaudou, B., et al. (eds.) MABS 2015. LNCS, vol. 9568, pp. 71–86. Springer, Heidelberg (2016)CrossRefGoogle Scholar
  10. 10.
    Hermellin, E., Michel, F.: Toward a methodology for developing MABS using GPU programming. In: Proceedings of the International Conference on Autonomous Agents and Multiagent Systems, AAMAS, Singapore (2016)Google Scholar
  11. 11.
    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
  12. 12.
    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., et al. (eds.) Euro-Par 2013. LNCS, vol. 8374, pp. 544–554. Springer, Heidelberg (2014)CrossRefGoogle Scholar
  13. 13.
    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
  14. 14.
    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
  15. 15.
    Michel, F., Ferber, J., Drogoul, A.: Multi-agent systems and simulation: a survey from theagents community’s perspective. In: Uhrmacher, A., Weyns, D., (eds.) Multi-Agent Systems: Simulation and Applications, Computational Analysis, Synthesis, and Design of Dynamic Systems, pp. 3–52. CRC Press - Taylor & Francis, June 2009Google Scholar
  16. 16.
    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
  17. 17.
    Parry, H., Bithell, M.: Large scale agent-based modelling: a review and guidelines for model scaling. In: Heppenstall, A.J., Crooks, A.T., See, L.M., Batty, M. (eds.) Agent-Based Models of Geographical Systems, pp. 271–308. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  18. 18.
    Pavlov, R., Müller, J.P.: Multi-agent systems meet GPU: deploying agent-based architectures on graphics processors. In: Camarinha-Matos, L.M., Tomic, S., Graça, P. (eds.) DoCEIS 2013. IFIP AICT, vol. 394, pp. 115–122. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  19. 19.
    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 - Heuristic Systems Engineering, 16–18 September, Waikoloa, Hawaii, USA, pp. 127–131. IEEE Systems, Man, and Cybernetics Society (2006)Google Scholar
  20. 20.
    Perumalla, K.S., Aaby, B.G.: Data parallel execution challenges and runtime performance of agent simulations on GPUs. In: Proceedings of the 2008 Spring Simulation Multiconference, pp. 116–123 (2008)Google Scholar
  21. 21.
    Ricci, A., Piunti, M., Viroli, M.: Environment programming in multi-agent systems: an artifact-based perspective. Auton. Agent Multi-Agent Syst. 23(2), 158–192 (2011)CrossRefGoogle Scholar
  22. 22.
    Richmond, P., Coakley, S., Romano, D.M.: A high performance agent based modelling framework on graphics card hardware with CUDA. In: Proceedings of The 8th International Conference on Autonomous Agents and Multiagent Systems, AAMAS 2009, vol. 2, pp. 1125–1126. International Foundation for Autonomous Agents and Multiagent Systems, Richland, SC (2009)Google Scholar
  23. 23.
    Richmond, P., Romano, D.M.: Agent based GPU, a real-time 3d simulation and interactive visualisation framework for massive agent based modelling on the GPU. In: Proceedings International Workshop on Super Visualisation, IWSV 2008 (2008)Google Scholar
  24. 24.
    Richmond, P., Romano, D.M.: A high performance framework for agent based pedestrian dynamics on GPU hardware. In: European Simulation and Modelling (2011)Google Scholar
  25. 25.
    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
  26. 26.
    Sklar, E.: NetLogo, a multi-agent simulation environment. Artif. Life 13(3), 303–311 (2007)CrossRefGoogle Scholar
  27. 27.
    Strippgen, D., Nagel, K.: Multi-agent traffic simulation with CUDA. In: High Performance Computing Simulation, HPCS 2009, pp. 106–114, June 2009Google Scholar
  28. 28.
    Weyns, D., Van Dyke Parunak, H., Michel, F., Holvoet, T., Ferber, J.: Environments for multiagent systems state-of-the-art and research challenges. In: Weyns, D., Van Dyke Parunak, H., Michel, F. (eds.) E4MAS 2004. LNCS (LNAI), vol. 3374, pp. 1–47. Springer, Heidelberg (2005)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  1. 1.LIRMM - CNRS University of MontpellierMontpellierFrance

Personalised recommendations