Scalable Multi-agent Simulation Based on MapReduce

  • Tobias AhlbrechtEmail author
  • Jürgen Dix
  • Niklas Fiekas
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10207)


Jason is perhaps the most advanced multi-agent programming language based on AgentSpeak. Unfortunately, its current Java-based implementation does not scale up and is seriously limited for simulating systems of hundreds of thousands of agents.

We are presenting a scalable simulation platform for running huge numbers of agents in a Jason style simulation framework. Our idea is (1) to identify independent parts of the simulation in order to parallelize as much as possible, and (2) to use and apply existing technology for parallel processing of large datasets (e.g. MapReduce).

We evaluate our approach on an early benchmark and show that it scales up linearly (in the number of agents).


  1. 1.
    Ahlbrecht, T., Dix, J., Fiekas, N., Grabowski, J., Herbold, V., Honsel, D., Waack, S., Welter, M.: Agent-based simulation for software development processes. Technical report IfI-16-02, TU Clausthal, September 2016 (to appear).
  2. 2.
    Ahlbrecht, T., Dix, J., Fiekas, N., Kraus, P., Müller, J.P.: An architecture for scalable simulation of systems of cognitive agents. Int. J. Agent-Orient. Softw. Eng. 5, 232–265 (2016)CrossRefGoogle Scholar
  3. 3.
    Bordini, R., Dix, J.: Chapter 13: Programming multi-agent systems. In: Weiss, G. (ed.) Multiagent Systems, pp. 587–639. MIT-Press, Cambridge (2013)Google Scholar
  4. 4.
    Bordini, R.H., Hübner, J.F., Wooldridge, M.: Programming Multi-agent Systems in AgentSpeak Using Jason (Wiley Series in Agent Technology). Wiley, Hoboken (2007). ISBN 0470029005CrossRefzbMATHGoogle Scholar
  5. 5.
    Dean, J., Ghemawat, S.: MapReduce: simplified data processing on large clusters. Commun. ACM 51(1), 107–113 (2008). ISSN 0001–0782, doi: 10.1145/1327452.1327492.
  6. 6.
    Honsel, V., Honsel, D., Herbold, S., Grabowski, J., Waack, S.: Mining software dependency networks for agent-based simulation of software evolution. In: 2015 30th IEEE/ACM International Conference on Automated Software Engineering Workshop (ASEW), pp. 102–108. IEEE (2015)Google Scholar
  7. 7.
    Lin, J., Schatz, M.: Design patterns for efficient graph algorithms in MapReduce. In: Proceedings of 8th Workshop on Mining and Learning with Graphs, MLG 2010, pp. 78–85. ACM, New York (2010). ISBN 978-1-4503-0214-2, doi: 10.1145/1830252.1830263.
  8. 8.
    Radenski, A.: Using MapReduce streaming for distributed life simulation on the cloud. ECAL 2013, 284–291 (2013)CrossRefGoogle Scholar
  9. 9.
    Rao, A.S.: AgentSpeak(L): BDI agents speak out in a logical computable language. In: Velde, W., Perram, J.W. (eds.) MAAMAW 1996. LNCS, vol. 1038, pp. 42–55. Springer, Heidelberg (1996). doi: 10.1007/BFb0031845 CrossRefGoogle Scholar
  10. 10.
    Vitter, J.S.: Random sampling with a reservoir. ACM Trans. Math. Softw. (TOMS) 11(1), 37–57 (1985)MathSciNetCrossRefzbMATHGoogle Scholar
  11. 11.
    Wang, G., Salles, M.A.V., Sowell, B., Wang, X., Cao, T., Demers, A.J., Gehrke, J., White, W.M.: Behavioral simulations in MapReduce. CoRR, abs/1005.3773 (2010).
  12. 12.
    Wielemaker, J., Schrijvers, T., Triska, M., Lager, T.: SWI-Prolog. Theory Pract. Log. Prog. 12(1–2), 67–96 (2012)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
  14. 14.
    Zhang, S., Han, J., Liu, Z., Wang, K., Xu, Z.: SJMR: parallelizing spatial join with MapReduce on clusters. In: Proceedings of 2009 IEEE International Conference on Cluster Computing, 31 August – 4 September 2009, New Orleans, Louisiana, USA, pp. 1–8 (2009). doi: 10.1109/CLUSTR.2009.5289178.

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  1. 1.Department of InformaticsClausthal University of TechnologyClausthal-ZellerfeldGermany

Personalised recommendations