Elsevier

Neurocomputing

Volume 172, 8 January 2016, Pages 292-321
Neurocomputing

A review of swarm robotics tasks

https://doi.org/10.1016/j.neucom.2015.05.116Get rights and content

Abstract

Swarm intelligence principles have been widely studied and applied to a number of different tasks where a group of autonomous robots is used to solve a problem with a distributed approach, i.e. without central coordination. A survey of such tasks is presented, illustrating various algorithms that have been used to tackle the challenges imposed by each task. Aggregation, flocking, foraging, object clustering and sorting, navigation, path formation, deployment, collaborative manipulation and task allocation problems are described in detail, and a high-level overview is provided for other swarm robotics tasks. For each of the main tasks, (1) swarm design methods are identified, (2) past works are divided in task-specific categories, and (3) mathematical models and performance metrics are described. Consistently with the swarm intelligence paradigm, the main focus is on studies characterized by distributed control, simplicity of individual robots and locality of sensing and communication. Distributed algorithms are shown to bring cooperation between agents, obtained in various forms and often without explicitly programming a cooperative behavior in the single robot controllers. Offline and online learning approaches are described, and some examples of past works utilizing these approaches are reviewed.

Introduction

Swarm robotics is a field of research which studies how systems composed of multiple autonomous agents (robots) can be used to accomplish collective tasks, where the tasks either cannot be accomplished by each individual robot alone, or are carried out more effectively by the robots as a group. Dudek et al. [1] identified the following categories for tasks executable by robots: tasks that are inherently single-agent, tasks that may benefit from the use of multiple agents, tasks that are traditionally multi-agent, and tasks that require multiple agents. The swarm robotics discipline focuses on the last three categories, and past works have demonstrated in many application domains that using a multitude of agents to solve a task in a distributed manner allows working with significantly less complex agents at the individual level.

Three desired properties have been identified in a seminal paper by Şahin [2] as main motivations for swarm robotics studies: scalability, flexibility and robustness. The author defined a set of criteria to distinguish swarm robotics research from related disciplines: robots are autonomous, i.e. capable of moving and interacting with the environment without centralized control; the task at hand can be carried out collectively by a large number of robots, meaning that the system should be designed with scalability in mind; the swarm is made of relatively few homogeneous groups of robots, the focus being on large numbers of identical individuals rather than on centrally planned heterogeneous teams where each individual has a predefined role; the capabilities of a single robot (such as sensing, communication and computation capabilities) are limited compared to the difficulty of the collective task; and finally, sensing and communication are done by each robot at a local level, ensuring that interactions between swarm members are distributed and do not rely on coordination mechanisms that would hinder scalability. Swarm robotics takes inspiration from the collective behavior observed in nature in many living species, where local interactions between individuals and with the environment lead a group of autonomous agents to solve complex tasks in a distributed manner, without a central control unit. The locality of interactions and communication, which might be seen as a limitation, has a beneficial effect on scalability and robustness of the system, and is thus generally preferred over the use of global communication and sensing.

The expression “swarm intelligence”, which is now widely used in the field of swarm robotics, refers to the superior capabilities of a swarm of agents compared to its single individuals. The local events triggered by swarm members during execution of a task translate into a global behavior which often transcends the individual capabilities, to the point that many collective tasks can be successfully done by robots that are not explicitly programmed to execute those tasks: the global, macroscopic dynamics is said to emerge from interactions of swarm members between each other and with the environment.

The possibility to achieve global objectives at the swarm level by means of distributed algorithms acting at the individual level comes at a price: it is often difficult to design the individual robot behavior so that the global performance is maximized. This problem has been widely studied by swarm robotics researchers, and has been addressed with simulation, modeling and learning approaches. Simulation, where a given multi-robot scenario is replicated in a virtual environment in which robot capabilities (sensors and actuators) and interactions are simulated by a computer program, allows assessing the performance of a robot swarm with repeated runs of an experiment, eliminating or mitigating the need for time-consuming experiments with real robots and facilitating algorithm optimization with a trial-and-error approach. Modeling (more precisely, macroscopic modeling) utilizes mathematical formulas to link individual-level control parameters to swarm-level dynamics; with such formulas, the impact of algorithm parameters can be evaluated directly, and often valuable insights on the global dynamics of the swarm can be intuitively obtained. Learning refers generically to adaptation of algorithm parameters based on previous experience; learning methods can be categorized in offline approaches, where the parameter optimization phase is part of the design of robot controllers, and online approaches, where robots dynamically update their control parameters based on their perception of the environment.

A widely used offline learning method is artificial evolution, which, starting from initial values of algorithm parameters, iteratively executes robot experiments evaluating for each experiment a fitness function which estimates the performance of the algorithm in executing a swarm-level task; the most performing parameter values at a given iteration are identified and used as a basis to program robots in subsequent iterations. Similar to what happens in nature with the evolution of species, robots are able to evolve their behavior across different “generations” and accomplish the given task. While neural networks are a common type of robot controllers used with artificial evolution, recent works explored the use of alternative methods such as rule-based grammatical evolution [3].

Online learning methods have been shown to be able to increase the flexibility of a swarm, i.e. its capability to adapt to different environment conditions. By definition, robots learning during task execution must have some form of memory which allows them to remember past experiences in order to adapt their future behavior; thus, inclusion of online learning methods in robot controllers implies an additional level of complexity in robot implementation. But generally the biggest difficulties encountered in this domain are due to different aspects: first, robots often have a limited and noisy perception of the environment and of the progression of a global task; second, as already discussed, the distributed nature of the problem makes it difficult to relate individual behavior to global performance. Two types of online learning methods can be identified in past works: reinforcement learning and parameter adaptation. Reinforcement learning is based on a model where robots, which can be in a given set of states and can execute a given set of actions, receive feedback on the results of their actions through a reward; the objective of robots is to choose a mapping between states and actions so as to maximize the reward. Using a local reinforcement paradigm, the reward is assigned only to robots which directly accomplish an objective, while with global reinforcement all the robots are rewarded for each accomplishment; local reinforcement is more coherent with swarm intelligence principles because it does not require sharing global information in the swarm. Other online learning methods can be described as based on dynamic adaptation of robot algorithm parameters triggered by observations of the environment.

In this paper, various tasks for which past works have proposed solutions using a swarm intelligence approach are surveyed, focusing on distributed control, locality of interactions and simplicity of individual robot controllers. The next section is dedicated to previous swarm robotics reviews; then, the subsequent sections describe the different tasks and the corresponding solutions proposed in past studies; finally, future research directions are outlined and concluding remarks are made in the last sections.

Section snippets

Previous work

In the last two decades, theoretical research on multi-robot systems has been fueled by technological advances that now allow building relatively cheap small robots. An early categorization of multi-robot systems is given by Dudek et al. [4], [1], who identified swarm size, communication range, communication topology, communication bandwidth, swarm reconfigurability, swarm unit processing ability and swarm composition as taxonomy axes to classify natural or engineered multi-agent systems.

The

Aggregation

Self-organized aggregation, i.e. the task of gathering a number of autonomous individuals in a common place, is a basic behavior widely observed in nature with many animal species. Various mathematical models have been proposed to describe aggregation, and robotic systems have been engineered with various algorithms to implement aggregation dynamics. This task has been studied either as a standalone problem, or in the context of more specialized tasks which require gathering multiple agents.

Flocking

Flocking is a behavior observed in nature in many bird species, which form large groups of individuals moving together toward a common target location. Other examples of analogous collective behaviors found in animals are fish schooling and formation of herds in ungulates. These behaviors emerge at the collective level in a distributed manner, as a consequence of local interactions between autonomous agents, and as such are of interest to swarm robotics researchers, who have studied the

Foraging

The collective foraging task, inspired by the behavior of ants in colonies, is another commonly studied scenario in swarm robotics. Ants and other social animals are able to efficiently exploit food sources using local interactions between individuals. In an artificial swarm robotics system for the foraging task, a specific area is designated as the “nest”, and the objective of the swarm is finding items scattered in the environment and bringing them to the nest. Multi-foraging is an extension

Object clustering and sorting

Object clustering refers to a task where objects scattered in the environment must be grouped together. Compared to foraging, in the object clustering task there is not a predefined destination place for collected objects, the goal being to place the objects near each other. In a variation of this task, there is more than one type of objects, and clusters must be formed separately for each object type; in this case, the task is often referred to as sorting, because the objects are sorted

Navigation

A collective navigation scenario is one 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. Studies where multiple robots must navigate to the same location are not considered in this category, where the focus is on scenarios where the target location needs to be reached by a single robot, which can exploit the presence of the other robots to facilitate its task.

Path formation

Path formation in swarm robotics refers to a process where robots are able to build collectively a path between two locations in the environment, so that the time needed to reach one location from the other is minimized. This task can also be referred to as chain formation, because often the path is marked by a chain of robots, either stationary or moving. As described in the section dedicated to the foraging task, path formation mechanisms can be observed in many instances in the foraging

Deployment

In a self-deployment scenario, robots must deploy themselves in an environment without central coordination. This task has potentially many practical applications, ranging from mapping of unknown environments to autonomous surveillance systems.

Collaborative manipulation

Usually, swarm systems allow agents to execute collective tasks more efficiently than each individual alone can do; in some instances, the task at hand cannot be executed by any single individual, but requires cooperation between multiple individuals. A typical example taken from insect societies is the retrieval of large food items by groups of ants: depending on the item size, this task may require a large number of ants, which must work in coordination in order to bring the task to

Task allocation

Task allocation or division of labor in a swarm robotics system refers to the ability to dynamically change the task executed by each robot based on local perception of the environment. With this ability, robotic systems can exhibit efficient work dynamics by adapting the ratio of robots engaged in a given task (or not engaged in any task) based on the current demand for the task or the gain expected from task execution. Even though robots are endowed with local sensing capabilities and thus

Other swarm robotics tasks

This section contains a brief description of other swarm robotics tasks with some examples of relevant past works.

Future research directions

As seen in the previous sections, there is an abundance of research work on many different aspects of swarm robotics systems, and swarm implementations have been proposed using a variety of design methods. To validate proposed solutions, mathematical modeling, computer simulations and experiments with real robots have been extensively used. However, to this date the use of robotic swarms in real-world applications is still lacking: while laboratory experiments can give a sense of what a given

Conclusions

In the swarm robotics discipline, a variety of tasks have been analyzed in a multitude of studies published in the last decades; some of them are directly derived from collective behaviors found in nature, for example cockroach and honeybee aggregation, bird flocking, and ant foraging, others are specific to artificial systems. All these tasks have a common point, i.e. they can be solved by a group of robots using a distributed algorithm where each robot is guided only by local interactions

Levent Bayındır received his B.Sc. degree in Computer Science from Ege University, Turkey, in 2002 and his Ph.D. degree in Swarm Robotics at the KOVAN research lab from Middle East Technical University, Turkey, in 2012. He is currently an assistant professor of Computer Engineering at Atatürk University in Erzurum, Turkey. His research interests include swarm robotics and pervasive computing.

References (186)

  • L. Iocchi, D. Nardi, M. Salerno, Reactivity and deliberation: a survey on multi-robot systems, in: Balancing reactivity...
  • L. Bayındır et al.

    A review of studies in swarm robotics

    Turk. J. Electr. Eng.

    (2007)
  • V. Gazi, B. Fidan, Coordination and control of multi-agent dynamic systems: Models and approaches, in: Swarm Robotics,...
  • I. Navarro, F. Matía, An introduction to swarm robotics, ISRN Robotics 2013,...
  • Y. Mohan, S. Ponnambalam, An extensive review of research in swarm robotics, in: World Congress on Nature &...
  • M. Brambilla et al.

    Swarm roboticsa review from the swarm engineering perspective

    Swarm Intell.

    (2013)
  • J.C. Barca et al.

    Swarm robotics reviewed

    Robotica

    (2013)
  • A. Mogilner et al.

    A non-local model for a swarm

    J. Math. Biol.

    (1999)
  • E.J. Hackett-Jones et al.

    Aggregation patterns from nonlocal interactionsdiscrete stochastic and continuum modeling

    Phys. Rev. E

    (2012)
  • J. Vanualailai, B. Sharma, A Lagrangian-based swarming behavior in the absence of obstacles, in: Workshop on...
  • R.C. Fetecau

    Collective behavior of biological aggregations in two dimensionsa nonlocal kinetic model

    Math. Models Methods Appl. Sci.

    (2011)
  • R. Fetecau et al.

    A nonlocal kinetic model for predator–prey interactions

    Swarm Intell.

    (2013)
  • A. Priolo, Swarm aggregation algorithms for multi-robot systems (Ph.D. thesis), University of Roma Tre,...
  • S. Kernbach et al.

    Re-embodiment of honeybee aggregation behavior in an artificial micro-robotic system

    Adapt. Behav.

    (2009)
  • S. Kernbach et al.

    Adaptive collective decision-making in limited robot swarms without communication

    Int. J. Robot. Res.

    (2013)
  • H. Hamann, H. Wörn, K. Crailsheim, T. Schmickl, Spatial macroscopic models of a bio-inspired robotic swarm algorithm,...
  • H. Hamann, B. Meyer, T. Schmickl, K. Crailsheim, A model of symmetry breaking in collective decision-making, in: From...
  • F. Arvin et al.

    Imitation of honeybee aggregation with collective behavior of swarm robots

    Int. J. Comput. Intell. Syst.

    (2011)
  • S. Garnier, C. Jost, R. Jeanson, J. Gautrais, M. Asadpour, G. Caprari, G. Theraulaz, Aggregation behaviour as a source...
  • J. Amé et al.

    Collegial decision making based on social amplification leads to optimal group formation

    Proc. Natl. Acad. Sci.

    (2006)
  • S. Garnier et al.

    Self-organized aggregation triggers collective decision making in a group of cockroach-like robots

    Adapt. Behav.

    (2009)
  • N. Correll, A. Martinoli, Modeling Self-Organized Aggregation in a Swarm of Miniature Robots, in: IEEE 2007...
  • G. Mermoud, J. Brugger, A. Martinoli, Towards multi-level modeling of self-assembling intelligent micro-systems, in:...
  • T. Schmickl, C. Möslinger, K. Crailsheim, Collective perception in a robot swarm, in: Swarm Robotics, Springer, Berlin,...
  • T. Schmickl, C. Möslinger, K. Crailsheim, Collective perception in a robot swarm, in: Swarm Robotics, Springer, Berlin,...
  • O. Soysal, E. Şahin, Probabilistic aggregation strategies in swarm robotic systems, in: Proceedings 2005 IEEE Swarm...
  • L. Bayındır, A probabilistic geometric model of self-organized aggregation in swarm robotic systems (Ph.D. thesis),...
  • V. Trianni, T.H. Labella, R. Groß, E. Şahin, M. Dorigo, J.L. Deneubourg, Modeling Pattern Formation in a Swarm of...
  • N. Fatès

    Solving the decentralised gathering problem with a reaction–diffusion-chemotaxis scheme

    Swarm Intell.

    (2010)
  • G. Francesca et al.

    AutoMoDea novel approach to the automatic design of control software for robot swarms

    Swarm Intell.

    (2014)
  • G. Francesca, M. Brambilla, V. Trianni, M. Dorigo, M. Birattari, Analysing an evolved robotic behaviour using a...
  • V. Trianni, R. Groß, T.H. Labella, E. Şahin, M. Dorigo, Evolving aggregation behaviors in a swarm of robots, in:...
  • M. Gauci, J. Chen, T. J. Dodd, R. Groß, Evolving aggregation behaviors in multi-robot systems with binary sensors, in:...
  • J. Gomes et al.

    Evolution of swarm robotics systems with novelty search

    Swarm Intell.

    (2013)
  • J. Gomes, A.L. Christensen, Generic behaviour similarity measures for evolutionary swarm robotics, in: Proceeding of...
  • M. Gauci et al.

    Self-organized aggregation without computation

    Int. J. Robot. Res.

    (2014)
  • E. Bahçeci, E. Şahin, Evolving aggregation behaviors for swarm robotic systems: a systematic case study, in:...
  • N. Fatès, N. Vlassopoulos, A robust aggregation method for quasi-blind robots in an active environment, in: ICSI 2011,...
  • A.F. Winfield et al.

    Modelling a wireless connected swarm of mobile robots

    Swarm Intell.

    (2008)
  • F. Arvin et al.

    Cue-based aggregation with a mobile robot swarma novel fuzzy-based method

    Adapt. Behav.

    (2014)
  • Cited by (339)

    View all citing articles on Scopus

    Levent Bayındır received his B.Sc. degree in Computer Science from Ege University, Turkey, in 2002 and his Ph.D. degree in Swarm Robotics at the KOVAN research lab from Middle East Technical University, Turkey, in 2012. He is currently an assistant professor of Computer Engineering at Atatürk University in Erzurum, Turkey. His research interests include swarm robotics and pervasive computing.

    View full text