Load-Sharing Policies in Parallel Simulation of Agent-Based Demographic Models

  • Alessandro Pellegrini
  • Cristina Montañola-Sales
  • Francesco Quaglia
  • Josep Casanovas-García
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10104)


Execution parallelism in agent-Based Simulation (ABS) allows to deal with complex/large-scale models. This raises the need for runtime environments able to fully exploit hardware parallelism, while jointly offering ABS-suited programming abstractions. In this paper, we target last-generation Parallel Discrete Event Simulation (PDES) platforms for multicore systems. We discuss a programming model to support both implicit (in-place access) and explicit (message passing) interactions across concurrent Logical Processes (LPs). We discuss different load-sharing policies combining event rate and implicit/explicit LPs’ interactions. We present a performance study conducted on a synthetic test case, representative of a class of agent-based models.


  1. 1.
    Andrew, H.: Demographic Methods. Routledge, London (1998)Google Scholar
  2. 2.
    Balbo, A.L., Rubio-Campillo, X., Rondelli, B., Ramírex, M., Lancelotti, C., Torrano, A., Salpeteur, M., Lipovetzky, N., Reyes-García, V., Montañola-Sales, C., Madella, M.: Agent-based simulation of Holocene monsoon precipitation patterns and hunter-gatherer population dynamics in semi-arid environments. J. Archaeol. Method Theory 21(2), 426–446 (2014)CrossRefGoogle Scholar
  3. 3.
    Barnes, P.D., Carothers, C.D., Jefferson, D.R., LaPre, J.M.: Warp speed: executing time warp on 1,966,080 cores. In: Proceedings of the 2013 ACM SIGSIM Conference on Principles of Advanced Discrete Simulation - SIGSIM-PADS 2013, p. 327 (2013). http://dl.acm.org/citation.cfm?id=2486134, http://dl.acm.org/citation.cfm?doid=2486092.2486134
  4. 4.
    Bauer, P., Lindén, J., Engblom, S., Jonsson, B.: Efficient inter-process synchronization for parallel discrete event simulation on multicores. In: Proceedings of the 3rd ACM Conference on SIGSIM-Principles of Advanced Discrete Simulation - SIGSIM-PADS 2015, pp. 183–194. ACM Press, New York (2015). http://dl.acm.org/citation.cfm?doid=2769458.2769476
  5. 5.
    Carothers, C.D., Fujimoto, R.M.: Efficient execution of time warp programs on heterogeneous, NOW platforms. IEEE Trans. Parallel Distrib. Syst. 11(3), 299–317 (2000)CrossRefGoogle Scholar
  6. 6.
    Cingolani, D., Pellegrini, A., Quaglia, F.: RAMSES: reversibility-based agent modeling and simulation environment with speculation-support. In: Hunold, S., et al. (eds.) Euro-Par 2015. LNCS, vol. 9523, pp. 466–478. Springer, Cham (2015). doi:10.1007/978-3-319-27308-2_38 CrossRefGoogle Scholar
  7. 7.
    Cordasco, G., Chiara, R., Mancuso, A., Mazzeo, D., Scarano, V., Spagnuolo, C.: A framework for distributing agent-based simulations. In: Alexander, M., et al. (eds.) Euro-Par 2011. LNCS, vol. 7155, pp. 460–470. Springer, Heidelberg (2012). doi:10.1007/978-3-642-29737-3_51 CrossRefGoogle Scholar
  8. 8.
    Dantzig, G.B.: Discrete-variable extremum problems. Oper. Res. 5, 266–288 (1957)MathSciNetCrossRefGoogle Scholar
  9. 9.
    Fujimoto, R.M.: Parallel discrete event simulation. Commun. ACM 33(10), 30–53 (1990)CrossRefGoogle Scholar
  10. 10.
    Glazer, D.W., Tropper, C.: On process migration and load balancing in time warp. IEEE Trans. Parallel Distrib. Syst. 4(3), 318–327 (1993)CrossRefGoogle Scholar
  11. 11.
    Holcombe, M., Coakley, S., Smallwood, R.: A general framework for agent-based modelling of complex systems. In: Proceedings of the 2006 European Conference on Complex Systems. European Complex Systems Society Paris, France (2006)Google Scholar
  12. 12.
    Jefferson, D.R.: Virtual time. ACM Trans. Progr. Lang. Syst. 7(3), 404–425 (1985)CrossRefGoogle Scholar
  13. 13.
    Jennings, N.R., Sycara, K., Wooldridge, M.: A roadmap of agent research and development. Auton. Agents Multi-agent Syst. 1(1), 7–38 (1998). http://eprints.soton.ac.uk/252112/ CrossRefGoogle Scholar
  14. 14.
    Karpov, Y.G.: AnyLogic – a new generation professional simulation tool. In: Proceedings of the 6th International Congress on Mathematical Modeling, MATHMOD (2004)Google Scholar
  15. 15.
    Kaufman, L., Rousseeuw, P.J.: Clustering by means of medoids. In: Statistical Data Analysis Based on the L1-Norm and Related Methods, pp. 405–416 (1987)Google Scholar
  16. 16.
    Lloyd, S.: Least squares quantization in PCM. IEEE Trans. Inf. Theory 28(2), 129–137 (1982). http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=1056489 MathSciNetCrossRefMATHGoogle Scholar
  17. 17.
    Luke, S., Cioffi-Revilla, C., Panait, L., Sullivan, K., Balan, G.: MASON: a multiagent simulation environment. Simulation 81(7), 517–527 (2005)CrossRefGoogle Scholar
  18. 18.
    Lysenko, M., D’Souza, R.M.: A framework for megascale agent based model simulations on the GPU. J. Artif. Soc. Soc. Simul. 11(4), 10 (2008). http://jasss.soc.surrey.ac.uk/11/4/10.html Google Scholar
  19. 19.
    Marziale, N., Nobilia, F., Pellegrini, A., Quaglia, F.: Granular time warp objects. In: Proceedings of the 2016 ACM/SIGSIM Conference on Principles of Advanced Discrete Simulation, PADS, pp. 57–68. ACM Press, New York (2016). http://dl.acm.org/citation.cfm?doid=2901378.2901390
  20. 20.
    Minar, N., Burkhart, R., Langton, C., Askenazi, M.: The SWARM simulation system: a toolkit for building multi-agent simulations. Technical report, Santa Fe Institute (1996)Google Scholar
  21. 21.
    Montañola-Sales, C., Casanovas-Garcia, J., Kaplan-Marcusán, A., Cela-Espín, J.M.: Demographic agent-based simulation of Gambians immigrants in Spain. In: Proceedings of the 10th Social Simulation Conference. European Social Simulation Association (2014)Google Scholar
  22. 22.
    North, M.J., Howe, T.R., Collier, N.T., Vos, J.R., M.J. North, T.R. Howe, N.T. Collier, J.V.: The repast simphony runtime system. In: Proceedings of the Agent 2005 Conference on Generative Social Processes, Models and Mechanisms, pp. 151–158. Argonne National Laboratory (2005)Google Scholar
  23. 23.
    Page, S.E.: Agent-based models. In: Durlauf, S.N., Blume, L.E. (eds.) The New Palgrave Dictionary of Economics, pp. 47–52. Nature Publishing Group (2008). http://www.dictionaryofeconomics.com/article?id=pde2008_A000218
  24. 24.
    Park, H.K., Han, J.H.: Fast rendering of large crowds using GPU. In: Stevens, S.M., Saldamarco, S.J. (eds.) ICEC 2008. LNCS, vol. 5309, pp. 197–202. Springer, Heidelberg (2008). doi:10.1007/978-3-540-89222-9_24 CrossRefGoogle Scholar
  25. 25.
    Pellegrini, A., Quaglia, F.: Programmability and performance of parallel ECS-based simulation of multi-agent exploration models. In: Lopes, L., et al. (eds.) Euro-Par 2014. LNCS, vol. 8805, pp. 395–406. Springer, Cham (2014). doi:10.1007/978-3-319-14325-5_34 Google Scholar
  26. 26.
    Pellegrini, A., Quaglia, F.: Transparent multi-core speculative parallelization of DES models with event and cross-state dependencies. In: Proceedings of the 2014 ACM/SIGSIM Conference on Principles of Advanced Discrete Simulation, PADS, pp. 105–116. ACM Press (2014). http://dl.acm.org/citation.cfm?doid=2601381.2601398
  27. 27.
    Prats, C., Montañola-Sales, C., Gilabert-Navarro, J.F., Valls, J., Casanovas-Garcia, J., Vilaplana, C., Cardona, P.J., López, D.: Individual-based modeling of tuberculosis in a user-friendly interface: understanding the epidemiological role of population heterogeneity in a city. Front. Microbiol. 6, 1564 (2016). http://journal.frontiersin.org/Article/10.3389/fmicb.2015.01564/abstract CrossRefGoogle Scholar
  28. 28.
    Richmond, P., Romano, D.: 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 Supervisualisation (2008)Google Scholar
  29. 29.
    Takahashi, T., Tadokoro, S., Ohta, M., Ito, N.: Agent based approach in disaster rescue simulation - from test-bed of multiagent system to practical application. In: Birk, A., Coradeschi, S., Tadokoro, S. (eds.) RoboCup 2001. LNCS, vol. 2377, pp. 102–111. Springer, Heidelberg (2002). doi:10.1007/3-540-45603-1_11 CrossRefGoogle Scholar
  30. 30.
    Tisue, S., Wilensky, U.: Netlogo: a simple environment for modeling complexity. In: Proceedings of the International Conference on Complex Systems, ICCS, pp. 1–10. NECSI (2004). http://ccl.sesp.northwestern.edu/papers/netlogo-iccs2004.pdf
  31. 31.
    Vitali, R., Pellegrini, A., Quaglia, F.: A load sharing architecture for optimistic simulations on multi-core machines. In: Proceedings of the 19th International Conference on High Performance Computing, HiPC, pp. 1–10. IEEE Computer Society (2012)Google Scholar
  32. 32.
    Vitali, R., Pellegrini, A., Quaglia, F.: Assessing load sharing within optimistic simulation platforms. In: Proceedings of the 2012 Winter Simulation Conference, WSC. Society for Computer Simulation (2012)Google Scholar
  33. 33.
    Vitali, R., Pellegrini, A., Quaglia, F.: Load sharing for optimistic parallel simulations on multi core machines. ACM SIGMETRICS Perform. Eval. Rev. 40(3), 2–11 (2012). http://dl.acm.org/citation.cfm?doid=2425248.2425250 CrossRefGoogle Scholar
  34. 34.
    Vitali, R., Pellegrini, A., Quaglia, F.: Towards symmetric multi-threaded optimistic simulation kernels. In: Proceedings of the 26th Workshop on Principles of Advanced and Distributed Simulation, PADS, pp. 211–220. IEEE Computer Society, July 2012. http://ieeexplore.ieee.org/articleDetails.jsp?arnumber=6305914, http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=6305914

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Alessandro Pellegrini
    • 1
  • Cristina Montañola-Sales
    • 2
  • Francesco Quaglia
    • 1
  • Josep Casanovas-García
    • 2
  1. 1.DIAGSapienza University of RomeRomeItaly
  2. 2.inLab FIBBarcelona School of InformaticsBarcelonaSpain

Personalised recommendations