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.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Notes
Each machine has two AMD Opteron Magny-Cours processors type 6128, each processor with 8 cores. The total size of the RAM is 16 GB.
However, the sense+control and act phases are still executed in parallel.
With N=105 robots, ARGoS used about 800 MB of RAM.
References
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.
Bachrach, J., Beal, J., & McLurkin, J. (2010). Composable continuous-space programs for robotic swarms. Neural Computing & Applications, 19, 825–847.
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.
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.
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.
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).
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.
Ducatelle, F., Di Caro, G., Pinciroli, C., & Gambardella, L. M. (2011). Self-organised cooperation between robotic swarms. Swarm Intelligence, 5(2), 73–96.
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.
Friedman, M. (2010). Simulation of autonomous robot teams with adaptable levels of abstraction. PhD thesis, Technische Universität Darmstadt, Germany.
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.
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.
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.
Kramer, J., & Schultz, M. (2007). Development environments for autonomous mobile robots: a survey. Autonomous Robots, 22(2), 101–132.
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.
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.
Michel, O. (2004). Cyberbotics Ltd.—Webots: professional mobile robot simulation. International Journal of Advanced Robotic Systems, 1(1), 39–42.
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.
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.
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.
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.
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.
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.
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.
Tanenbaum, A. S. (2001). Modern operating systems (2nd ed.). New Jersey: Prentice-Hall.
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.
Vaughan, R. (2008). Massively multi-robot simulation in Stage. Swarm Intelligence, 2(2), 189–208.
Acknowledgements
The research presented in this paper was carried out in the framework of Swarmanoid, a project funded by the Future and Emerging Technologies programme (IST-FET) of the European Commission under grant IST-022888. This work was also partially supported by the ERC Advance Grant “E-SWARM: Engineering Swarm Intelligence Systems” (grant 246939), and by the EU project ASCENS (grant 257414). Giovanni Pini acknowledges support from Université Libre de Bruxelles through the “Fonds David & Alice Van Buuren”. Manuele Brambilla acknowledges support from the Fund for Industrial and Agricultural Research FRIA-FNRS of Belgium’s French Community. Nithin Mathews thanks Wallonia-Brussels-International (WBI) for its support in the form of a Scholarship for Excellence grant (IN.WBI). Arne Brutschy, Rehan O’Grady, Mauro Birattari and Marco Dorigo acknowledge support from the Belgian F.R.S.-FNRS, of which they are a Research Fellow, a Postdoctoral Researcher, a Research Assistant and a Research Director, respectively.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Pinciroli, C., Trianni, V., O’Grady, R. et al. ARGoS: a modular, parallel, multi-engine simulator for multi-robot systems. Swarm Intell 6, 271–295 (2012). https://doi.org/10.1007/s11721-012-0072-5
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11721-012-0072-5