SRSP

From IridiaWiki
Revision as of 14:32, 19 September 2013 by Manubrambi (talk | contribs)
Jump to navigationJump to search

Swarm robotics studies how a large number of robots can be designed and controlled so that a desired collective behavior results from local interactions among the robots and between the robots and the environment in which they act (Dorigo and Sahin 2004; Sahin 2005). The design of swarm robotics systems is guided by swarm intelligence principles, which promote the realization of robot swarms that are robust, scalable and flexible. Robots swarms are particularly suited for tasks such as demining, search and rescue, planetary or underwater exploration, and surveillance.

Characteristics of swarm robotics

The main characteristics of a swarm robotics system are:

  • robot swarms consist of a large group of autonomous robots;
  • robots cooperate to tackle a given task;
  • robots are situated in the environment and can act to modify it;
  • robots’ sensing and communication capabilities are local;
  • robots do not have access to centralized control and/or to global knowledge;
  • robots are redundant;
  • the behavior of the robot swarms results from the interactions of the robots with each other and with their environment, that is, the robot swarm self-organizes.

Desirable properties of swarm robotics systems

The characteristics of swarm robotics are deemed to promote the realization of systems which are robust, scalable and flexible.

A robot swarm is able to cope well with the failure of one or more of its individuals: the loss of individuals does not result in the failure of the whole swarm. This robustness to failures is promoted by redundancy, that is, by having many homogeneous robots, and by the lack of a leader or centralized control.

A robot swarms is also able to cope well with changes in its group size: the introduction or removal of individuals does not result in a drastic change in the performance of the swarm. Scalability is promoted by local sensing and communication and by the lack of a centralized control.

Finally, robot swarms are flexible, that is, are able to cope with a broad spectrum of different environment and tasks. Flexibility is promoted by redundancy, simplicity of the behaviors, lack of global knowledge and behavioral mechanisms as, for example, task allocation.

Potential applications of swarm robotics systems

The desired properties of swarm robotics systems make them suitable for several fields of application.

Dangerous applications

Dangerous applications expose humans to the risk of injuries or casualties. An example of such applications is demining, where human operators have to search and defuse manually land mines.

Tackling such applications with robots is a well suited solution, as this approach eliminates or reduces the risks for humans. However, since the risk of losing robots is high, a solution that is robust to failures is necessary, making dangerous applications an ideal field of application for robot swarms.

Example of dangerous applications that can be tackled using robot swarms are: demining, search and rescue, toxic cleaning, military applications.

Applications with unknown or varying size

Very often it is not possible to determine in advance the resources necessary to tackle a problem. For instance, in case of an oil leak it is very often difficult to estimate the oil output and foreseen its development. On the one hand, developing a solution for a small leak could be useless if the leak is discovered to be large or if it increases over time. On the other hand, a solution engineered for a large leak might be a waste of resources if the leak remains small.

Applications with unknown or varying size must be tackled with solutions whose scale can easily adapt. This is the case of robot swarms: robots can be added or removed to fit different requirements of the applications.

Example of applications with unknown or varying size: search and rescue, transportation of large objects, tracking, cleaning, military applications.

Applications in large and unstructured environments

Some applications take place over large extensions of space. Other applications deal with unstructured environments. Unstructured environments are usually characterized by the absence of pre-available communication networks, global localization mechanisms or detailed maps. In such cases, it is necessary to adopt solutions that do not rely on pre-available infrastructures or information.

Swarm robotics systems are well suited for applications in large and unstructured environments, since such systems can tackle them faster than single robots and without relying on local information and or any a priori infrastructure.

Examples of applications in unstructured and large environments are planetary or underwater exploration, military applications, surveillance, demining, cleaning, search and rescue.

Applications in dynamic environments

Some applications take place in environments that change over time. For instance, in a post earthquake situation, buildings can collapse changing the usable paths and creating new hazards to avoid. In applications with dynamic environments it is necessary to adopt solutions which are flexible and can react fast to events. Swarm robotics principles promote the development of flexible systems, making applications in dynamic environments an ideal field of application for robot swarms.

Example of applications in dynamic environments are surveillance, disaster recovery, search and rescue, cleaning, military applications.

Scientific implications of swarm robotics

Beside engineering applications, swarm robotics is also used as a scientific tool: in particular, many models derived from the analysis of natural swarm intelligence systems have been refined and validated using robot swarms. For example, Garnier et al. (2005) validated the model of a collective decision-making behavior in cockroaches using robot swarms.

Swarm robotics has been used also to investigate the evolutionary conditions for the emergence of adaptive behaviour in groups of interacting individuals. The use of robot swarms allow the researcher to identify, in a controlled environment, the evolutionary pressures that lead to complex social behaviors, such as communication (Ampatzis et al., 2008) or collective decision-making (Francesca et al., 2012).

Current research axis

In this section, some examples of current research in swarm robotics are presented, focusing on design, modeling and collective behaviors. For a full review of the literature, see Brambilla et al. (2013).

Design

The design of a robot swarm is a difficult task: requirements are usually expressed at the collective level, but, eventually, the developer needs to define what the individual robots should do so that their interactions result in the desired collective behavior.

Approaches to the design problem in swarm robotics can be divided in two categories: manual design methods and automatic design methods.

Manual design methods

Manual design methods are methods in which the designer, in a trial-and-error process, develops, tests and improves the reactive behaviors of the individual robot until the desired collective behavior is obtained.

The most common behavioral architecture used is the probabilistic finite state machine, where simple behaviors are connected through conditions based on the sensory inputs of the robots. Probabilistic finite state machines have been used to develop several collective behaviors, such as aggregation (Soysal and Sahin 2005), chain formation (Nouyan et al. 2009) and task allocation (Liu et al. 2007).

Another common approach is based on virtual physics, in which each robot is considered a virtual particle that interacts with the environment and other robots through virtual forces. Virtual physics-based design approaches are particularly suited for spatially organizing collective behaviors, such as pattern formation (Spears er al. 2004) and collective motion (Ferrante et al., 2012).

The main limit of manual design methods is that, being bottom-up, the quality of the developed robot swarm depends completely on the ingenuity and expertise of the human designers. A systematic and general top-down design approach is still missing, even though some problem-specific approaches have been recently proposed (Hamann and Worn 2008, Berman et al. 2011, Brambilla et al. 2012).

Automatic design methods

Automatic design methods are used to develop the behavior of a robot swarm, without the need for the manual development of the behaviors of the individual robots.

The main automatic design method is evolutionary robotics (Nolfi and Floreano, 2004). Typically, in evolutionary robotics, artificial evolution is used to configure the parameters of a neural networks that controls the behavior of the robots in the swarm (Trianni and Nolfi, 2011).

Evolutionary robotics has been applied to develop behaviors for various collective behaviors, such as aggregation (Trianni et al., 2003) and collective transport (Gross and Dorigo, 2008).

One of the main limits of evolutionary robotics is that it is often difficult to define the experimental setup and fitness function that will produce an effective collective behavior. Moreover, since collective behaviors are obtained using simulations, often they are not able to overcome the reality gap, that is, despite having good performance in simulation, they do not perform well once instantiated on robots.


Modeling

The analysis and verification of the properties of a robot swarm are usually done by means of models.

A model of a robot swarm can be realized in two ways: by modeling the behaviors of the individual robots, what it is called, modeling the microscopic level, or by modeling the collective behavior of the swarm, what it is called, modeling the macroscopic level.

Modeling the microscopic level is a difficult task, due to the very large number of robots involved. Microscopic models in which the elements composing a system are simulated with the use of a computer are traditionally called simulations. Examples of simulators used for swarm robotics can be found in Kramer and Scheutz (2007) or in Pinciroli et al. (2012)

On the contrary, macroscopic models avoid the complexity and scalability issues of having to model each individual robots, by considering only the collective behavior of the swarm.

One of the most common macroscopic modeling approach is the use of rate or differential equations (Lerman et al. 2005). Rate equations describe the time evolution of the proportion of robots in a particular state, that is, performing a specific action or in a specific area of the environment, over the total number of robots.

Another common approach is the use of Markov chains, which allow researchers to formally verify properties of a robot swarm (Dixon et al., 2011, Massink et al., 2013).

An alternative mesoscopic approach is the use of the Fokker-Plank and Langevin equations, which allows the researcher to model both the behavior of the individual robot, in the form of a deterministic component of the model, and the collective level of the swarm, in the form of a stochastic component of the model. Examples of such models can be found in Hamann and Worn (2008), Berman et al. (2011b) and Prorok et al. (2011).

Collective behaviors

A large part of the research efforts in swarm robotics are directed towards the study of collective behaviors. Most collective behaviors can be categorized into three main groups: spatially organizing behaviors, navigation behaviors, collective decision-making behaviors.

Spatially-organizing behaviors

Spatially-organizing behaviors focus on how to organize and distribute robots and objects in space. Examples of such behaviors are: aggregation (Trianni et al., 2003), pattern formation (Spears et al. 2004), chain formation (Nouyan et al. 2009), self-assembly (O'Grady et al., 2010) and object clustering and assembling (Werfel et al., 2001).

Navigation behaviors

Navigation behaviors focus on how to coordinate the movements of a robot swarm. Examples of such behaviors are: collective exploration (Ducatelle et al., 2011a), collective motion (Ferrante et al., 2012) and collective transport (Gross and Dorigo, 2009).

Collective decision-making

Collective decision-making focuses on how robots influence each other in making decisions over multiple choices. In particular collective decision-making can be used to achieve consensus, such as deciding where to aggregate (Garnier et al., 2005), or specialization, such as task allocation (Pini et al., 2009)

Open issues

Swarm robotics, despite its potential to promote robustness, scalability and flexibility, have yet to be used to tackle a real-world application. There are many reasons for this lack of applications, such as, the limitations of the currently available robots or the lack of an engineering approach to swarm robotics. In particular, the lack of a general top-down methodology for the design of robot swarms, the lack of well defined metrics and testbed applications, and the lack of formal ways to verify and guarantee properties of a robot swarm are all open challenges that must be tackled before swarm robotics can be successfully applied to real-world applications.






References

E. Bonabeau, M. Dorigo, and G. Theraulaz. Swarm Intelligence: From Natural to Artificial System. Oxford University Press, New York, 1999.

J.-L. Deneubourg, S. Aron, S. Goss, and J.-M. Pasteels. The self-organizing exploratory pattern of the Argentine ant. Journal of Insect Behavior, 3:159–168, 1990.

G. Di Caro and M. Dorigo. AntNet: Distributed stigmergetic control for communications networks. Journal of Artificial Intelligence Research, 9:317–365, 1998.

M. Dorigo, V. Maniezzo, and A. Colorni. Positive feedback as a search strategy. Technical Report 91-016, Dipartimento di Elettronica, Politecnico di Milano, Milan, Italy, 1991. Revised version published as: M. Dorigo, V. Maniezzo, and A. Colorni. Ant System: Optimization by a colony of cooperating agents. IEEE Transactions on Systems, Man, and Cybernetics – Part B, 26(1):29–41, 1996.

M. Dorigo and E. Şahin (Eds.). Special Issue on Swarm Robotics. Autonomous Robots, 17:111–246.

M. Dorigo and T. Stützle. Ant Colony Optimization. MIT Press, Cambridge, MA, 2004.

J. Kennedy and R. C. Eberhart. Particle swarm optimization. Proceedings of IEEE International Conference on Neural Networks, IEEE Press, Piscataway, NJ, pp. 1942-1948, 1995.

J. Kennedy, R. C. Eberhart, and Y. Shi. Swarm Intelligence. Morgan Kaufmann, San Francisco, CA, 2001.

E. Lumer and B. Faieta. Diversity and adaptation in populations of clustering ants. Proceedings of the Third International Conference on Simulation of Adaptive Behavior: From Animals to Animats 3, MIT Press, Cambridge, CA, pp. 501-508, 1994.

R. Schoonderwoerd, O. Holland, J. Bruten and L. Rothkrantz. Ant-based Load Balancing in Telecommunications Networks. Adaptive Behavior, 5(2):169–207, 1996.

External Links