Skip to main content

Overview of Case Studies on Adapting MABS Models to GPU Programming

  • Conference paper
  • First Online:

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 616))

Abstract

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.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    e.g. https://developer.nvidia.com/about-cuda.

  2. 2.

    Compute Unified Device Architecture, https://developer.nvidia.com/what-cuda.

  3. 3.

    Open Computing Language, http://www.khronos.org/opencl.

  4. 4.

    See http://www.lirmm.fr/~fmichel/mle for some videos of this experiment.

  5. 5.

    In all these experiments, the environment is as a 2D square grid discretized in cells.

  6. 6.

    See www.lirmm.fr/~hermellin/Website/Reynolds_Boids_With_TurtleKit.html.

  7. 7.

    Detailed descriptions and computation kernels are available online: http://www.lirmm.fr/~hermellin/Website/GPGPU_MABS_Methodology.html.

References

  1. Weyns, D., Michel, F. (eds.): E4MAS 2014. LNCS (LNAI), vol. 9068. Springer, Heidelberg (2015)

    Google Scholar 

  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 2010

    Google Scholar 

  3. Beurier, G., Simonin, O., Ferber, J.: Model and simulation of multi-level emergence. In: ISSPIT 2002, April 2008

    Google Scholar 

  4. Bleiweiss, A.: Multi agent navigation on the GPU. In: Games Developpement Conference (2009)

    Google Scholar 

  5. Bourgoin, M., Chailloux, E., Lamotte, J.-L.: Efficient abstractions for GPGPU programming. Int. J. Parallel Program. 42(4), 583–600 (2014)

    Article  Google Scholar 

  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)

    Article  Google Scholar 

  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. 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. 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)

    Chapter  Google Scholar 

  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. 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)

    Article  Google Scholar 

  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)

    Chapter  Google Scholar 

  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)

    Chapter  Google Scholar 

  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)

    Article  Google Scholar 

  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 2009

    Google Scholar 

  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)

    Article  Google Scholar 

  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)

    Chapter  Google Scholar 

  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)

    Chapter  Google Scholar 

  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. 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. 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)

    Article  Google Scholar 

  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. 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. 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. 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)

    Article  Google Scholar 

  26. Sklar, E.: NetLogo, a multi-agent simulation environment. Artif. Life 13(3), 303–311 (2007)

    Article  Google Scholar 

  27. Strippgen, D., Nagel, K.: Multi-agent traffic simulation with CUDA. In: High Performance Computing Simulation, HPCS 2009, pp. 106–114, June 2009

    Google Scholar 

  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)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Emmanuel Hermellin .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this paper

Cite this paper

Hermellin, E., Michel, F. (2016). Overview of Case Studies on Adapting MABS Models to GPU Programming. In: Bajo, J., et al. Highlights of Practical Applications of Scalable Multi-Agent Systems. The PAAMS Collection. PAAMS 2016. Communications in Computer and Information Science, vol 616. Springer, Cham. https://doi.org/10.1007/978-3-319-39387-2_11

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-39387-2_11

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-39386-5

  • Online ISBN: 978-3-319-39387-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics