Programmability and Performance of Parallel ECS-Based Simulation of Multi-agent Exploration Models

  • Alessandro Pellegrini
  • Francesco Quaglia
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8805)


While the traditional objective of parallel/distributed simulation techniques has been mainly in improving performance and making very large models tractable, more recent research trends targeted complementary aspects, such as the “ease of programming”. Along this line, a recent proposal called Event and Cross State (ECS) synchronization, stands as a solution allowing to break the traditional programming rules proper of Parallel Discrete Event Simulation (PDES) systems, where the application code processing a specific event is only allowed to access the state (namely the memory image) of the target simulation object. In fact with ECS, the programmer is allowed to write ANSI-C event-handlers capable of accessing (in either read or write mode) the state of whichever simulation object included in the simulation model. Correct concurrent execution of events, e.g., on top of multi-core machines, is guaranteed by ECS with no intervention by the programmer, who is in practice exposed to a sequential-style programming model where events are processed one at a time, and have the ability to access the current memory image of the whole simulation model, namely the collection of the states of any involved object. This can strongly simplify the development of specific models, e.g., by avoiding the need for passing state information across concurrent objects in the form of events. In this article we investigate on both programmability and performance aspects related to developing/supporting a multi-agent exploration model on top of the ROOT-Sim PDES platform, which supports ECS.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    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 (LNAI), vol. 2377, pp. 102–111. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  2. 2.
    Di Sanzo, P., Antonacci, F., Ciciani, B., Palmieri, R., Pellegrini, A., Peluso, S., Quaglia, F., Rughetti, D., Vitali, R.: A framework for high performance simulation of transactional data grid platforms. In: Proceedings of the 6th International ICST Conference on Simulation Tools and Techniques, SimuTools 2013. ICST, pp. 63–72 (2013)Google Scholar
  3. 3.
    Fujimoto, R.M.: Parallel discrete event simulation. Communications of the ACM 33(10), 30–53 (1990)CrossRefGoogle Scholar
  4. 4.
    Low, M.Y.H., Gan, B.P., Wei, J., Wang, X., Turner, S.J., Cai, W.: Shared state synchronization for HLA-based distributed simulation. Simulation 82(8), 511–521 (2006)CrossRefGoogle Scholar
  5. 5.
    Gan, B.P., Low, M., Wei, J., Wang, X., Turner, S., Cai, W.: Synchronization and management of shared state in HLA-based distributed simulation. In: Proceedings of the Winter Simulation Conference, pp. 847–854 (December 2003)Google Scholar
  6. 6.
    Pellegrini, A., Vitali, R., Peluso, S., Quaglia, F.: Transparent and efficient shared-state management for optimistic simulations on multi-core machines. In: Proceedings 20th International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems, pp. 134–141. IEEE Computer Society (August 2012)Google Scholar
  7. 7.
    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 (May 2014)Google Scholar
  8. 8.
    Quaglia, F., Pellegrini, A., Vitali, R., Peluso, S., Didona, D., Castellari, G., Gheri, V., Cucuzzo, D., D’Alessio, S., Santoro, T.: ROOT-Sim: The ROme OpTimistic Simulator - v 0.99 RC-1 (October 2011),
  9. 9.
    Popov, K., Vlassov, V., Rafea, M., Holmgren, F., Brand, P., Haridi, S.: Parallel agent-based simulation on a cluster of workstations. In: Kosch, H., Böszörményi, L., Hellwagner, H. (eds.) Euro-Par 2003. LNCS, vol. 2790, pp. 470–480. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  10. 10.
    The Mozart Programming System,
  11. 11.
    Cordasco, G., De 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, Part I. LNCS, vol. 7155, pp. 460–470. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  12. 12.
    Hybinette, M., Kraemer, E., Xiong, Y., Matthews, G., Ahmed, J.: Sassy: A design for a scalable agent-based simulation system using a distributed discrete event infrastructure. In: Proceedings of the 2006 Winter Simulation Conference, WSC, pp. 926–933. Society for Computer Simulation (2006)Google Scholar
  13. 13.
    Richmond, P., Walker, D.C., Coakley, S., Romano, D.M.: High performance cellular level agent-based simulation with FLAME for the GPU. Briefings in Bioinformatics 11(3), 334–347 (2010)CrossRefGoogle Scholar
  14. 14.
    Marurngsith, W., Mongkolsin, Y.: Creating GPU-enabled agent-based simulations using a PDES tool. In: Omatu, S., Neves, J., Rodriguez, J.M.C., Paz Santana, J.F., Gonzalez, S.R. (eds.) Distrib. Computing & Artificial Intelligence. AISC, vol. 217, pp. 227–234. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  15. 15.
    Fleischmann, J., Wilsey, P.A.: Comparative analysis of periodic state saving techniques in time warp simulators. In: Proceedings of the 9th Workshop on Parallel and Distributed Simulation, pp. 50–58. IEEE Computer Society (June 1995)Google Scholar
  16. 16.
    Preiss, B.R., Loucks, W.M., MacIntyre, D.: Effects of the checkpoint interval on time and space in Time Warp. ACM Transactions on Modeling and Computer Simulation 4(3), 223–253 (1994)CrossRefMATHGoogle Scholar
  17. 17.
    Quaglia, F.: Combining periodic and probabilistic checkpointing in optimistic simulation. In: Proceedings of the 13th workshop on Parallel and distributed simulation, pp. 109–116. IEEE Computer Society Press (1999)Google Scholar
  18. 18.
    Quaglia, F.: Event history based sparse state saving in time warp. In: Proceedings of the 12th Workshop on Parallel and Distributed Simulation, pp. 72–79. IEEE Computer Society Press (1998)Google Scholar
  19. 19.
    Quaglia, F.: A cost model for selecting checkpoint positions in Time Warp parallel simulation. IEEE Transactions on Parallel and Distributed Systems 12(4), 346–362 (2001)CrossRefGoogle Scholar
  20. 20.
    Rönngren, R., Ayani, R.: Adaptive checkpointing in Time Warp. In: Proceedings of the Workshop on Parallel and Distributed Simulation, Society for Computer Simulation, pp. 110–117 (July 1994)Google Scholar
  21. 21.
    Cucuzzo, D., D’Alessio, S., Quaglia, F., Romano, P.: A lightweight heuristic-based mechanism for collecting committed consistent global states in optimistic simulation. In: Proceedings of the IEEE/ACM International Symposium on Distributed Simulation and Real Time Applications, pp. 227–234. IEEE Computer Society, Los Alamitos (2007)Google Scholar
  22. 22.
    Fox, D., Ko, J., Konolige, K., Limketkai, B., Schulz, D., Stewart, B.: Distributed multirobot exploration and mapping. Proceedings of the IEEE 94(7), 1325–1339 (2006)CrossRefGoogle Scholar
  23. 23.
    Mehl, H.: A deterministic tie-breaking scheme for sequential and distributed simulation. In: Proceedings of the Workshop on Parallel and Distributed Simulation. ACM (1992)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Alessandro Pellegrini
    • 1
  • Francesco Quaglia
    • 1
  1. 1.DIAGSapienza, University of RomeItaly

Personalised recommendations