Swarm Robotics: Comparison
Please note this is a comparison between Version 2 by Lindsay Dong and Version 1 by Cindy Calderón-Arce.

Swarm robotics is a dynamic research field that integrates two important concepts: Swarm Intelligence (SI) and Multi-Robotics System (MRS).

  • swarm robotics
  • simulators
  • robots

1. Introduction

Swarm Intelligence (SI) is inspired by simple behaviors and self-organization of organisms such as ants, birds, bees, fishes, bacteria, wolves, and so on [3][1]. It can be defined as the collective intelligence that emerges from simple interactions between a large group of autonomous agents [4][2]. SI systems usually consist of a simple agents group, where all individuals interact locally with each other and their environment, with the purpose of achieving a global behavior [5][3]. Generally, agents do not possess global data about the state of its world, nor the task they are working on.
On the other hand, MRS consists of multiple robots sharing a workspace in order to perform assigned tasks. These tasks can be difficult or impossible to accomplish for a single robot [6][4]. There are several advantages of using MRS, such as an increasing ability to resolve task complexity and improving performance, reliability and simplicity in design [7][5].
Swarm robotics (SR) is an area of knowledge within multi-robotics systems, and has its origins in the application of Swarm Intelligence to the field of robotics [8][6]. Particularly, SR studies how to design a large number of relatively simple physically embodied agents. SR seeks a collective behavior based on local interactions among agents and their environment [5,9][3][7].
In order to be considered a swarm and not only a MRS, a group of robots should have most of the following characteristics:
  • Autonomy: it is defined as the ability to perform planned tasks based on current state and sensing, without human intervention [10][8]. Thus, all robots of the swarm must have a real body and be able to physically interact with the world without outside intervention [5,9][3][7].
  • Homogeneity: each robot must have the same design, functionalities and share the same control algorithm [11][9]. Homogeneity is usually wanted because heterogeneity lowers the degree of redundancy, which may reduce robustness if it is not considered carefully [4][2]. However, it has become more common to find works that employ a restrained heterogeneous swarm. In these, robots are designed as a small set of different agent types, that can be put together in order to accomplish a task collaboratively [12][10].
  • Large number: the formal definition of a swarm implies having “a large number” of agents, however, a minimum group size is difficult to decide on and justify. For instance, a swarm of 10 to 20 robots may seem enough for laboratory tests, but if they are deployed in an area of several square kilometers, this number may seem insignificant [9][7].
  • Limited capabilities: a key idea in SR systems is to use relatively simple robots. Thereby, robots might not be able to efficiently carry out tasks on their own, but they would be highly efficient by cooperating with others [5][3]. As mentioned in [9][7], even though robots must be simple, this does not impose any restrictions on the hardware or software complexity of the robots. The simplicity of individual robots should not be taken in absolute terms, but relative to the task.
  • Communication and control schemes: two main approaches can be used to manage communication and control of a robotic system: centralize and decentralize. Centralized schemes have a main entity which collects and synthesizes data from all the agents and, in some occasions, tells them how they should operate on a global level [4][2]. They have the advantage of offering direct control over each agent and making it easy to predict the overall system behavior. On the other hand, decentralized systems use distributed communication and control mechanisms [4][2]. Among their advantages are the following: (i) It reduces delays and bottle necks associated with centralized processing; (ii) It reduces failures associated with agent loss; (iii) It naturally exploits parallelism.
The swarm algorithm and collective behavior should be effective enough to allow scalability, robustness and flexibility of the system. Scalability is accomplished when the system can operate under a wide range of group sizes (from a small number to several thousand individuals or more) without decreasing performance [4,9][2][7]. In [8][6] it is mentioned, as a good practice, to use local sensing and communication to accomplish scalability [8][6]. Robustness is defined as fault tolerance and fail-safety [12][10]. The system should be able to continue functioning even with the loss or malfunction of some robots. Robustness can be attributed to (i) redundancy in the system, in which any individual can be compensated by another one, (ii) decentralized coordination and (iii) simplicity of the individuals [9][7]. Finally, flexibility refers to the ability of adapting to new, different and/or changing requirements of the environment [8][6]. Even though SR use derives plenty of advantages, it is often difficult to design a robot’s behavior in order to achieve the desired global performance [11][9]. For this reason, simulation, modeling and learning approaches are used. Simulation, where a virtual scenario and swarm are created, is used to analyze robot capabilities (sensors and actuators) and programming algorithms. By replicating simulation experiments, the swarm performance can be improved without run-time-consuming experiments with real robots [11][9]. Since it is not always possible to build large groups of physical robots, simulations are a good option to test swarm algorithms on a large scale [5][3].

2. Simulators for Swarm Algorithms

Simulators are an intermediate step between abstraction, such as mathematical models, and real validation using physical robots. Simulations and modeling are some of the most used tools to analyze and validate swarm robotics systems [13][11].

2.1. Software Examples

There are many kinds of platforms, software, and algorithms to simulate robots based on different objectives and types of robot. For example, there are 2D and 3D simulators with specific algorithms to design, analyze and compare swarms. Stage is a free C++ library that simulates multiple mobile robots with a size capacity of up to 100,000 agents. It presents advantages such as code reuse, transparency, experiment replication and modification. Stage is able to simulate mobile robots with several sensors and actuator models, such as infrared rangers, scanning laser rangefinder, color-blob tracking, fiducial tracking, bumpers, grippers and mobile robot bases with global localization (odometric) [16][12]. It provides good performance on tasks such as exploration and foraging, but not for modeling trail-following or cooperative behaviors. Swarm-bots is a robotic simulator in which collective interaction is exploited by the swarm intelligence mechanism. Its control layer can be extended to the physical level and its use has been reported in experiments with up to 40 robots [16][12]. It is a powerful tool, but it is not publicly available. It allows to simulate properties such as robustness, flexibility, and it has the ability to solve complex problems by exploiting parallelism and self-organization [20][13].

2.2. From Simulation to Reality

Most of the time, it is not possible to simulate all aspects of reality. For instance, some simulated sensors and actuators are free of noise and interference. Moreover, simulators usually do not take into account all environment interactions such as friction, luminosity, temperature, wind or dust. Robot internal interactions are also challenging to consider on simulators. This may include battery life and energy level, component degradation and failure, sensors and actuators limitations due to static friction, backslash, hysteresis or saturation. Simulated data sets and environments are far from interactions, details, and situations experienced in the real world. In that sense, virtual reality comes to generate realistic and plausible data for a wide variety of problems. For instance, UnrealROX is an environment built to reduce that reality gap, in which robot agents explore environments and interact with real objects in a simulated world [29][14].

3. Real-Life Swarm Robotics Platforms

Research on swarm robotics uses simulations and real-life implementations to test and evaluate swarm behavior designs. Most swarm robotics use several identical mobile robots as swarm agents. A buoyant development of these robots has been noted in the last few years, all of them looking for a balance between cost and capabilities. Mobile robots such as E-puck, Khepera and Kilobot have been widely popular among swarm robotics researchers, appearing in publications across the globe and still present nowadays. It should be noted that these robots share the feature of being commercially available, which increases their accessibility to research groups. E-pucks were developed by École Polytechnique Fédérale de Lausanne (EPFL) and are differential drive robots with two stepper motors. Notably, they can perform odometry by tracking step counts [33][15]. E-pucks features 8 infrared (IR) sensors, a color camera, which can be used for obstacle detection, and some other sensors such as accelerometers and microphones [34][16]. Inter-robot communication is achieved by using the IR sensors and Bluetooth. Additionally, they are controlled by a dsPIC30 microcontroller [35][17]. An E-puck robot is sold at a retail price of USD 1000 [36][18]. Khepera robots are notorious in academia, they are developed and sold by K-Team (an EPFL spin-off). Kheperas have gone through several iterations, with Khepera IV being the latest. It is a differential drive robot with two DC motors and several options for odometry: magnetic encoders, accelerometer and gyroscope. Additionally, it presents a large array of sensors to be used for obstacle detection, such as 12 IR sensors, 5 ultrasonic sensors, and a color camera [37][19]. Communication with other robots or with a base is achieved by Bluetooth or WiFi [38][20]. Moreover, they present a control architecture with an ARM Cortex-A8 processor and a dsPIC33 microcontroller [39][21]. Khepera IV robots have a price of approximately USD 3200, with documentation and support available in [36][18].

4. Swarm Robotics Applications

Swarm robotics can be applied in many fields, for example, formations, mapping, localization, path planning, object transport and manipulation, coverage, aggregation, foraging, object assembly, self-assembly, tracking, and others [4,5,8,9,11,12][2][3][6][7][9][10].

5.1. Navigation

4.1. Navigation

Navigation in swarm robotics refers to the scenarios where a robot, with limited sensing and localization capabilities, is able to reach a target in an unknown location with the help of other robots [11][9]. Cardona and Calderon in [61][22] develop research on swarm robotics navigation aimed at victim detection. The navigation strategy is based on the application of particle swarm theory, where the attraction and repulsion forces of swarm particle systems are used to avoid obstacles, keep the swarm compact, and navigate to a target location. Once an agent finds a victim, it separates from the main swarm by creating a sub-swarm. The sub-swarm agents use a modified rendezvous consensus algorithm to perform formation control around the victim.

5.2. Foraging

4.2. Foraging

In SR, foraging refers to finding items scattered in environments and bringing them back to a specific area called the “nest” [11][9]. Talamali et al. in [63][23] propose a collective foraging system based on virtual pheromones. It was tested both as a computer simulation and with 200 real robots. The physics-based simulations were conducted with ARGoS. For the real swarm, an augmented reality for kilobot software (ARK) was used in order to simulate the pheromone. The results showed that simple behaviors generally reduce the impact of the reality gap and preserve consistent dynamics in reality. Castello et al. in [64][24] present a division of labor algorithm for a simple foraging task that acts to maintain a target amount of food at the nest despite consumption rates that vary over time. Its algorithm, the adaptive response threshold model (ARTM), showed to be efficient in achieving adaptive workload distribution for a small-sized robot swarm. ARTM also reduces a common problem of real robots: the duration of collisions among them. The experiments were carried out both in simulation and with a real swarm. For the simulation, a multi-robot simulation library STAGE was used. For the physic swarm, they used five e-pucks.

5.3. Exploration

4.3. Exploration

Exploration in SR systems refers to the collective behavior in which robots cooperate to explore an environment in order to accomplish some tasks such as monitoring, surveillance, space coverage, and others [14][25]. Duarte et al. in [65][26] propose the use of swarm robotics systems to carry out marine environmental monitoring missions, focusing on the control of temperature. They conduct a simulation-based evaluation of the robot’s performance over large areas and with large swarm sizes. Moreover, they implemented their proposal in a real aquatic swarm composed of eight units. The results showed that the use of swarm systems is useful in environmental monitoring tasks that involve covering areas.

5.4. Aggregation

4.4. Aggregation

Aggregation is one of the most fundamental swarm behaviors frequently observed in nature. It refers to the task in which each individual positions themselves close enough to each other in one specific place [12][10]. Amjadi et al. in [67][27] propose a method that combines the BEECLUST algorithm with pheromone-following behavior to solve the problem of finding the source of a chemical leakage and clean the contaminated area. They conducted experiments with a simulated model of a Mona robot in the Webots software. The effects of population size and robot speed on the ability of the swarm in a decontamination task were analyzed. The results showed the feasibility of deploying robotic swarms in an exploration and cleaning task in an extreme environment.

5.5. Other Applications

4.5. Other Applications

Collective Decision or Consensus behaviors are the general names for the collective generation of a choice in a swarm. E-puck robots were validated with this type of behavior. Each robot sent its current action (right or left wall following) to the rest of the swarm. Therefore, based on actions from fellow robots, a single agent can change its direction with a probabilistic decision. In addition, the power of the communication transmission was varied during the experiment. An inverse correlation between power intensity and time to achieve consensus has been observed [69][28]. Thymio robots have been validated both as an educational tool and as a robotic swarm platform. The latter was achieved by implementing a Collective Decision algorithm inspired by house-hunting honeybees [70][29]. In this case, Thymio robots were assigned a role as bee or nest. Bees looked out for a nest and committed to it based on a value-sensitive decision. Consequently, consensus was achieved in a few minutes in all cases [56][30]. A branch of Consensus behavior is Rendezvous algorithms. They, in general, consist of a group of robots that seek to meet in a physical space and create a cluster. For example, GRITSbot robots were validated by performing random walks on two agents until they enter a mutual sensing range and reach each other. Successful rendezvous was achieved with two robots in [54][31] and with six robots in [53][32]. A biologically inspired behavior, commonly used in robotic swarms, is Formation Control. Kilobots were also validated with this behavior in [41][33]. A swarm of six Kilobots successfully achieved a collective performance by following a leader through a path. Additionally, GRITSbots were validated with Formation Control in [53][32]. A group of six robots started at random positions and then achieved a hexagon formation.

75. Conclusions

Swarm robotics combines Swarm Intelligence with Multi-Robot Systems. In order to be considered a swarm, a group of robots should have autonomy, homogeneity, large number, limited capabilities, and a specific communication and control scheme. In most cases, swarms of robots are designed and defined for a specific behavior or application. Simulation and modeling are useful tools to approach or deepen the designs and behaviors of robots. In general, robot simulators are developed with a specific objective, for that reason, most of the time, it is not possible to compare them. Each researcher must take into account the specific characteristics of each software, and choose the one whose features best suit their needs. Virtual reality is a possible middle step between simulation and reality in robotics research. Even though it is not possible to simulate all aspects of reality, these kinds of simulations are often used to allow having a glimpse of how a swarm will behave in real life. These types of experiments have been increasing, mainly because they are faster to generate and less expensive and time-consuming. However, working and experimenting with real-life robots is a necessary stage towards evolving the research around the subject. Nowadays, robots are developed with different intentions, for instance, they might focus on education or industrial production. When robots are intended for swarm robotics research, usually, they are validated by creating a robotic swarm with a known behavior, and then the collective response is tracked. Most real robot experiments presented in the literature were performed in controlled environments, far from the scenarios which they are assumed to recreate. This shows that there are still many open problems around the subject. Only further research will help in taking swarm robotics to next level.

 

References

  1. Mavrovouniotis, M.; Li, C.; Yang, S. A survey of swarm intelligence for dynamic optimization: Algorithms and applications. Swarm Evol. Comput. 2017, 33, 1–17.
  2. Barca, J.C.; Sekercioglu, Y.A. Swarm robotics reviewed. Robotica 2013, 31, 345–359.
  3. Khaldi, B.; Cherif, F. An overview of swarm robotics: Swarm intelligence applied to multi-robotics. Int. J. Comput. Appl. 2015, 126, 31–37.
  4. Jose, K.; Pratihar, D.K. Task allocation and collision-free path planning of centralized multi-robots system for industrial plant inspection using heuristic methods. Robot. Auton. Syst. 2016, 80, 34–42.
  5. Khamis, A.; Hussein, A.; Elmogy, A. Multi-robot task allocation: A review of the state-of-the-art. In Cooperative Robots and Sensor Networks 2015; Springer: Cham, Switzerland, 2015; pp. 31–51.
  6. Senanayake, M.; Senthooran, I.; Barca, J.C.; Chung, H.; Kamruzzaman, J.; Murshed, M. Search and tracking algorithms for swarms of robots: A survey. Robot. Auton. Syst. 2016, 75, 422–434.
  7. Şahin, E. Swarm robotics: From sources of inspiration to domains of application. In Proceedings of the SAB 2004 International Workshop, Santa Monica, CA, USA, 17 July 2004; pp. 10–20.
  8. Haidegger, T.; Galambos, P.; Rudas, I. Robotics 4.0—Are we there yet? In Proceedings of the 2019 IEEE 23rd International Conference on Intelligent Engineering Systems (INES), Gödöllö, Hungary, 25–27 April 2019.
  9. Bayındır, L. A review of swarm robotics tasks. Neurocomputing 2016, 172, 292–321.
  10. Hamann, H. Swarm Robotics: A Formal Approach; Springer: Cham, Switzerland, 2018.
  11. Nedjah, N.; Junior, L.S. Review of methodologies and tasks in swarm robotics towards standardization. Swarm Evol. Comput. 2019, 50, 100565.
  12. Vaughan, R. Massively multi-robot simulation in stage. Swarm Intell. 2008, 2, 189–208.
  13. Mondada, F.; Pettinaro, G.C.; Guignard, A.; Kwee, I.W.; Floreano, D.; Deneubourg, J.L.; Nolfi, S.; Gambardella, L.M.; Dorigo, M. SWARM-BOT: A new distributed robotic concept. Auton. Robots 2004, 17, 193–221.
  14. Martinez-Gonzalez, P.; Oprea, S.; Garcia-Garcia, A.; Jover-Alvarez, A.; Orts-Escolano, S.; Garcia-Rodriguez, J. Unrealrox: An extremely photorealistic virtual reality environment for robotics simulations and synthetic data generation. Virtual Real. 2019, 24, 271–288.
  15. Mondada, F.; Bonani, M.; Raemy, X.; Pugh, J.; Cianci, C.; Klaptocz, A.; Magnenat, S.; Zufferey, J.C.; Floreano, D.; Martinoli, A. The e-puck, a robot designed for education in engineering. In Proceedings of the 9th Conference on Autonomous Robot Systems and Competitions, Castelo Branco, Portugal, 7 May 2009; Volume 1, pp. 59–65.
  16. Chen, J.; Gauci, M.; Price, M.J.; Groß, R. Segregation in swarms of e-puck robots based on the brazil nut effect. In Proceedings of the 11th International Conference on Autonomous Agents and Multiagent Systems, Valencia, Spain, 4–8 June 2012; Volume 1, pp. 163–170.
  17. Pitonakova, L.; Winfield, A.; Crowder, R. Recruitment near worksites facilitates robustness of foraging E-puck swarms to global positioning noise. In Proceedings of the 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Madrid, Spain, 1–5 October 2018; pp. 4276–4281.
  18. Products—RoadNarrows Robotics. Available online: https://roadnarrows-robotics.github.io/ (accessed on 11 May 2022).
  19. Peralta, E.; Fabregas, E.; Farias, G.; Vargas, H.; Dormido, S. Development of a Khepera IV Library for the V-REP Simulator. IFAC-PapersOnLine 2016, 49, 81–86.
  20. Varadharajan, V.S.; St-Onge, D.; Adams, B.; Beltrame, G. SOUL: Data sharing for robot swarms. Auton. Robots 2019, 44, 377–394.
  21. Soares, J.M.; Navarro, I.; Martinoli, A. The Khepera IV mobile robot: Performance evaluation, sensory data and software toolbox. In Proceedings of the Robot 2015: Second Iberian Robotics Conference, Lisbon, Portugal, 19–21 November 2015; pp. 767–781.
  22. Cardona, G.A.; Calderon, J.M. Robot swarm navigation and victim detection using rendezvous consensus in search and rescue operations. Appl. Sci. 2019, 9, 1702.
  23. Talamali, M.S.; Bose, T.; Haire, M.; Xu, X.; Marshall, J.A.; Reina, A. Sophisticated collective foraging with minimalist agents: A swarm robotics test. Swarm Intell. 2020, 14, 25–56.
  24. Castello, E.; Yamamoto, T.; Dalla Libera, F.; Liu, W.; Winfield, A.F.; Nakamura, Y.; Ishiguro, H. Adaptive foraging for simulated and real robotic swarms: The dynamical response threshold approach. Swarm Intell. 2016, 10, 1–31.
  25. Brambilla, M.; Ferrante, E.; Birattari, M.; Dorigo, M. Swarm robotics: A review from the swarm engineering perspective. Swarm Intell. 2013, 7, 1–41.
  26. Duarte, M.; Gomes, J.; Costa, V.; Rodrigues, T.; Silva, F.; Lobo, V.; Marques, M.M.; Oliveira, S.M.; Christensen, A.L. Application of swarm robotics systems to marine environmental monitoring. In Proceedings of the OCEANS 2016—Shanghai, Shanghai, China, 10–13 April 2016; pp. 1–8.
  27. Amjadi, A.S.; Raoufi, M.; Turgut, A.E.; Broughton, G.; Krajník, T.; Arvin, F. Cooperative pollution source localization and cleanup with a bio-inspired swarm robot aggregation. arXiv 2019, arXiv:1907.09585.
  28. Cianci, C.M.; Raemy, X.; Pugh, J.; Martinoli, A. Communication in a swarm of miniature robots: The e-puck as an educational tool for swarm robotics. In Proceedings of the International Workshop on Swarm Robotics, Rome, Italy, 30 September–1 October 2006; pp. 103–115.
  29. Reina, A.; Bose, T.; Trianni, V.; Marshall, J.A. Effects of spatiality on value-sensitive decisions made by robot swarms. In Distributed Autonomous Robotic Systems; Springer: Cham, Switzerland, 2018; pp. 461–473.
  30. Vitanza, A.; Rossetti, P.; Mondada, F.; Trianni, V. Robot swarms as an educational tool: The Thymio’s way. Int. J. Adv. Robot. Syst. 2019, 16, 1729881418825186.
  31. Pickem, D.; Lee, M.; Egerstedt, M. The GRITSBot in its natural habitat-a multi-robot testbed. In Proceedings of the 2015 IEEE International Conference on Robotics and Automation (ICRA), Seattle, WA, USA, 26–30 May 2015; pp. 4062–4067.
  32. Pickem, D.; Glotfelter, P.; Wang, L.; Mote, M.; Ames, A.; Feron, E.; Egerstedt, M. The robotarium: A remotely accessible swarm robotics research testbed. In Proceedings of the 2017 IEEE International Conference on Robotics and Automation (ICRA), Singapore, 29 May–3 June 2017; pp. 1699–1706.
  33. Rubenstein, M.; Ahler, C.; Hoff, N.; Cabrera, A.; Nagpal, R. Kilobot: A low cost robot with scalable operations designed for collective behaviors. Robot. Auton. Syst. 2014, 62, 966–975.
More