Image Credit: Free_styler/Shutterstock.com
Swarm robotics is a field of multi-robotics in which many robots are coordinated in a distributed and decentralized way.
It is based on the use of local rules. Numerous simple identical robots that have limited individual capabilities compared to the complexity of the task are used, taking inspiration from social insects.
Coordination among the robots is achieved using sophisticated communication methods that enable the efficient search of an area and cooperative completion of a task. A multi-robot system has several advantages such as ensuring the maximum coverage of a search area.
Communication between robots in swarms can be via Bluetooth, wireless LAN, or infrared. Infrared communication has a disadvantage in that the robots must be in the line of sight.
This can also be an advantage because, in natural swarms, members react to their direct environment. Using infrared technology and applying this concept to the artificial swarm means that there is no interference from outside of the immediate environment. Infrared does not require much energy and works well for micro-robots.
Wireless LAN is more likely to be applied in mid-size robotic teams as the volume of transmitted data can be high. Disturbance by radiation from other units is possible. Using Bluetooth communication falls between infrared and wireless LAN communication regarding its size and range.
The communication method only provides the basics for direct inter-robot communication. Messages need context so assigning a unique ID to every robot and specifying the type and content of each message is useful.
Designing the behavior of robot swarms is not an easy task. The number of interactions between the robots increases exponentially with the swarm size, making it difficult to predict the dynamics of the group and to trace errors.
There are two general approaches to the design of swarm behaviors. The first is bottom-up, focusing on individual behaviors and low-level interactions. The second is top-down, meaning that the developer treats the swarm as a single entity.
Both approaches have strengths and weaknesses. The bottom-up approach ensures full control of the swarm, but it also exposes the developer to unnecessary details, making development slow and error-prone. The top-down approach allows for fast prototyping but stops developers from fine-tuning swarm behaviors.
Buzz is a new programming language designed specifically for robot swarms. Buzz is based on the idea that an effective language for robot swarms will allow the developer to pick the most suitable approach to behavior development, whether it is bottom-up or top-down.
Being able to express algorithms both in a bottom-up and top-down fashion allows Buzz developers to conveniently encode complex autonomous swarm behaviors.
Carlo Pinciroli is a post-doctoral researcher at MIST, École Polytechnique de Montréal in Canada.
Basic Behaviors and Tasks in Swarm Robotics
Robots must initially gather in order to perform other tasks, such as collective movement, self-assembly, pattern formation, or to exchange information. The aggregation has been studied from a swarm-robotic approach by many researchers.
The purpose of dispersion is to distribute the robots in space to cover as much area as possible without losing the connectivity between them. Once dispersed, the swarm works as a distributed sensor, but also as a tool for exploration.
Pattern formation is the challenge of creating a shape by changing the positions of the individual robots. A simple example of this would be to create a lattice with the optimum distance between the robots for a specific task.
Collective movement is the challenge of coordinating a group of robots and moving them together as a group in a cohesive way. The basic behavior for more complex tasks can be classified into two types: formations and flocking.
In formations, the robots must maintain predetermined positions and orientations among themselves. In flocking, the robots’ relative positions are not as strictly enforced.
Techniques such as embodied evolution allow robots to develop autonomous discovery in the swarm. These approaches are time-consuming as solutions are tested on real robots rather than a simulation. A real robot equipped with a defective controller could cause damage to itself or external entities, making it unsuitable for real-world use.
In a joint effort between researchers at the University of Bristol and the University of West England, Professor Sabine Hauert and co-workers used high-performance mobile computing to develop the ‘Teraflop Swarm’. This is a robot swarm with the ability to run the computationally intensive automatic design process entirely within the swarm which overcomes the constraint of off-line resources.
The distributed evolutionary system running on the swarm itself generates new controllers by using a ‘Behavior Tree’ architecture. Within only fifteen minutes and with no reliance on external infrastructure, the swarm can reach a high level of fitness, demonstrating a considerably shorter time frame than previous embodied evolution methods.
The researchers also showed that the automatically generated controllers can be analyzed, understood, and even improved.
This is the first step towards robot swarms that automatically discover suitable swarm strategies in the wild.
Professor Sabine Hauert, University of West England
Sources and Further Reading
- Liu D., Wang L., Tan K.C. 2009. Design and Control of Intelligent Robotic Systems. Germany, Berlin: Springer.
- Erol Şahin, Sertan Girgin, Levent Bayındır, and Ali Emre Turgut “Swarm Robotics” (book chapter) In Swarm Intelligence, Natural Computing Series, Springer-Verlag Berlin Heidelberg, 2008, p. 87.
This article was updated on 28th February, 2020