Swarm Intelligence

, Volume 6, Issue 4, pp 271–295 | Cite as

ARGoS: a modular, parallel, multi-engine simulator for multi-robot systems

  • Carlo Pinciroli
  • Vito Trianni
  • Rehan O’Grady
  • Giovanni Pini
  • Arne Brutschy
  • Manuele Brambilla
  • Nithin Mathews
  • Eliseo Ferrante
  • Gianni Di Caro
  • Frederick Ducatelle
  • Mauro Birattari
  • Luca Maria Gambardella
  • Marco Dorigo
Article

Abstract

We present a novel multi-robot simulator named ARGoS. ARGoS is designed to simulate complex experiments involving large swarms of robots of different types. ARGoS is the first multi-robot simulator that is at the same time both efficient (fast performance with many robots) and flexible (highly customizable for specific experiments). Novel design choices in ARGoS have enabled this breakthrough. First, in ARGoS, it is possible to partition the simulated space into multiple sub-spaces, managed by different physics engines running in parallel. Second, ARGoS’ architecture is multi-threaded, thus designed to optimize the usage of modern multi-core CPUs. Finally, the architecture of ARGoS is highly modular, enabling easy addition of custom features and appropriate allocation of computational resources. We assess the efficiency of ARGoS and showcase its flexibility with targeted experiments. Experimental results demonstrate that simulation run-time increases linearly with the number of robots. A 2D-dynamics simulation of 10,000 e-puck robots can be performed in 60 % of the time taken by the corresponding real-world experiment. We show how ARGoS can be extended to suit the needs of an experiment in which custom functionality is necessary to achieve sufficient simulation accuracy. ARGoS is open source software licensed under GPL3 and is downloadable free of charge.

Keywords

Simulation Swarm robotics Multi-robot systems High-performance ARGoS 

References

  1. Ashley-Rollman, M. P., Pillai, P., & Goodstein, M. L. (2011). Simulating multi-million-robot ensembles. In 2011 IEEE international conference on robotics and automation (pp. 1006–1013). Piscataway: IEEE Press. CrossRefGoogle Scholar
  2. Bachrach, J., Beal, J., & McLurkin, J. (2010). Composable continuous-space programs for robotic swarms. Neural Computing & Applications, 19, 825–847. CrossRefGoogle Scholar
  3. Bonani, M., Magnenat, S., Rétornaz, P., & Mondada, F. (2009). The hand-bot, a robot design for simultaneous climbing and manipulation. In Lecture notes in computer science: Vol. 5928. Proceedings of the second international conference on intelligent robotics and applications (ICIRA 2009) (pp. 11–22). Berlin: Springer. Google Scholar
  4. Bonani, M., Longchamp, V., Magnenat, S., Rétornaz, P., Burnier, D., Roulet, G., Vaussard, F., Bleuler, H., & Mondada, F. (2010). The marXbot, a miniature mobile robot opening new perspectives for the collective-robotic research. In Proceedings of the IEEE/RSJ international conference on intelligent robots and systems (IROS) (pp. 4187–4193). Piscataway: IEEE Press. Google Scholar
  5. Carpin, S., Lewis, M., Wang, J., Balakirsky, S., & Scrapper, C. (2007). USARSim: a robot simulator for research and education. In Proceedings of the IEEE conference on robotics and automation (ICRA) (pp. 1400–1405). Piscataway: IEEE Press. CrossRefGoogle Scholar
  6. Dorigo, M., Floreano, D., Gambardella, L., Mondada, F., Nolfi, S., Baaboura, T., Birattari, M., Bonani, M., Brambilla, M., Brutschy, A., Burnier, D., Campo, A., Christensen, A., Decugnière, A., Di Caro, G., Ducatelle, F., Ferrante, E., Förster, A., Martinez Gonzales, J., Guzzi, J., Longchamp, V., Magnenat, S., Mathews, N., Montes de Oca, M., O’Grady, R., Pinciroli, C., Pini, G., Rétornaz, P., Roberts, J., Sperati, V., Stirling, T., Stranieri, A., Stützle, T., Trianni, V., Tuci, E., Turgut, A., & Vaussard, F. (2013) Swarmanoid: a novel concept for the study of heterogeneous robotic swarms. IEEE Robotics and Automation Magazine (In press). Google Scholar
  7. Ducatelle, F., Di Caro, G., & Gambardella, L. (2010). Cooperative self-organization in a heterogeneous swarm robotic system. In Proceedings of the genetic and evolutionary computation conference (GECCO), New York: ACM. Proceedings on CD-ROM. Google Scholar
  8. Ducatelle, F., Di Caro, G., Pinciroli, C., & Gambardella, L. M. (2011). Self-organised cooperation between robotic swarms. Swarm Intelligence, 5(2), 73–96. CrossRefGoogle Scholar
  9. Ferrante, E., Turgut, A. E., Mathews, N., Birattari, M., & Dorigo, M. (2010). Flocking in stationary and non-stationary environments: a novel communication strategy for heading alignment. In R. Schaefer, C. Cotta, J. Kołodziej, & G. Rudolph (Eds.), LNCS: Vol. 6239. Parallel problem solving from nature—PPSN XI (pp. 331–340). Berlin: Springer. CrossRefGoogle Scholar
  10. Friedman, M. (2010). Simulation of autonomous robot teams with adaptable levels of abstraction. PhD thesis, Technische Universität Darmstadt, Germany. Google Scholar
  11. Holmes, D. W., Williams, J. R., & Tilke, P. (2010). An events based algorithm for distributing concurrent tasks on multi-core architectures. Computer Physics Communications, 181(2), 341–354. CrossRefGoogle Scholar
  12. Howard, A., Matarić, M., & Sukhatme, G. (2002). Mobile sensor network deployment using potential fields: a distributed, scalable solution to the area coverage problem. In Proceedings of the international symposium on distributed autonomous robotic systems (DARS) (pp. 299–308). New York: Springer. CrossRefGoogle Scholar
  13. Koenig, N., & Howard, A. (2004). Design and use paradigms for Gazebo, an open-source multi-robot simulator. In Proceedings of the IEEE/RSJ international conference on intelligent robots and systems (IROS) (pp. 2149–2154). Piscataway: IEEE Press. Google Scholar
  14. Kramer, J., & Schultz, M. (2007). Development environments for autonomous mobile robots: a survey. Autonomous Robots, 22(2), 101–132. CrossRefGoogle Scholar
  15. Magnenat, S., Rétornaz, P., Bonani, M., Longchamp, V., & Mondada, F. (2010). ASEBA: a modular architecture for event-based control of complex robots. IEEE/ASME Transactions on Mechatronics, PP(99), 1–9. Google Scholar
  16. Mathews, N., Christensen, A., Ferrante, E., O’Grady, R., & Dorigo, M. (2010). Establishing spatially targeted communication in a heterogeneous robot swarm. In Proceedings of 9th international conference on autonomous agents and multiagent systems (AAMAS 2010) (pp. 939–946). Toronto: IFAAMAS. Google Scholar
  17. Michel, O. (2004). Cyberbotics Ltd.—Webots: professional mobile robot simulation. International Journal of Advanced Robotic Systems, 1(1), 39–42. Google Scholar
  18. Mondada, F., Bonani, M., Raemy, X., Pugh, J., Cianci, C., Klaptocz, A., Magnenat, S., Zufferey, J.-C., Floreano, D., & Martinoli, A. (2009). The e-puck, a robot designed for education in engineering. In Proceedings of the 9th conference on autonomous robot systems and competitions (Vol. 1, pp. 59–65). Castelo Branco: IPCB. Google Scholar
  19. Montes de Oca, M. A., Ferrante, E., Mathews, N., Birattari, M., & Dorigo, M. (2010). Opinion dynamics for decentralized decision-making in a robot swarm. In M. Dorigo et al. (Eds.), LNCS: Vol. 6234. Proceedings of the seventh international conference on swarm intelligence (ANTS 2010) (pp. 251–262). Berlin: Springer. Google Scholar
  20. Pinciroli, C., O’Grady, R., Christensen, A., & Dorigo, M. (2009). Self-organised recruitment in a heterogeneous swarm. In The 14th international conference on advanced robotics (ICAR 2009) (p. 8). Proceedings on CD-ROM, paper ID 176. Google Scholar
  21. Pinciroli, C., Trianni, V., O’Grady, R., Pini, G., Brutschy, A., Brambilla, M., Mathews, N., Ferrante, E., Caro, G. D., Ducatelle, F., Stirling, T., Gutiérrez, A., Gambardella, L. M., & Dorigo, M. (2011). ARGoS: a modular, multi-engine simulator for heterogeneous swarm robotics. In Proceedings of the IEEE/RSJ international conference on intelligent robots and systems (IROS 2011) (pp. 5027–5034). Los Alamitos: IEEE Comput. Soc. Google Scholar
  22. Pini, G., Brutschy, A., Scheidler, A., Dorigo, M., & Birattari, M. (2012). Task partitioning in a robot swarm: retrieving objects by transferring them directly between sequential sub-tasks. Technical report TR/IRIDIA/2012-010, IRIDIA, Université Libre de Bruxelles, Brussels, Belgium. Google Scholar
  23. Roberts, J., Stirling, T., Zufferey, J., & Floreano, D. (2007). Quadrotor using minimal sensing for autonomous indoor flight. In European micro air vehicle conference and flight competition (EMAV). Proceedings on CD-ROM. Google Scholar
  24. Roberts, J., Stirling, T., Zufferey, J.-C., & Floreano, D. (2009). 2.5d infrared range and bearing system for collective robotics. In IEEE/RSJ international conference on intelligent robots and systems (IROS 2009), Piscataway: IEEE Press. Google Scholar
  25. Tanenbaum, A. S. (2001). Modern operating systems (2nd ed.). New Jersey: Prentice-Hall. Google Scholar
  26. Teschner, M., Heidelberger, B., Mueller, M., Pomeranets, D., & Gross, M. (2003). Optimized spatial hashing for collision detection of deformable objects. In Proceedings of the vision, modeling, and visualization conference (pp. 47–54). Heidelberg: Aka. Google Scholar
  27. Vaughan, R. (2008). Massively multi-robot simulation in Stage. Swarm Intelligence, 2(2), 189–208. CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media New York 2012

Authors and Affiliations

  • Carlo Pinciroli
    • 1
  • Vito Trianni
    • 2
  • Rehan O’Grady
    • 1
  • Giovanni Pini
    • 1
  • Arne Brutschy
    • 1
  • Manuele Brambilla
    • 1
  • Nithin Mathews
    • 1
  • Eliseo Ferrante
    • 1
  • Gianni Di Caro
    • 3
  • Frederick Ducatelle
    • 3
  • Mauro Birattari
    • 1
  • Luca Maria Gambardella
    • 3
  • Marco Dorigo
    • 1
  1. 1.IRIDIA, CoDEUniversité Libre de BruxellesBruxellesBelgium
  2. 2.ISTCConsiglio Nazionale delle RicercheRomaItaly
  3. 3.IDSIAUSI-SUPSIManno-LuganoSwitzerland

Personalised recommendations