Swarm robotics is a very interesting concept in robotics that depends not on singularly advanced or smart artificial intelligence, but intelligence in numbers. In terms of robotics, it involves mostly simple physical robots that exhibit complex behavior by interaction with each other, or with the environment as a whole. Inspired by the phenomenon observed in some insects, birds and animals called swarm intelligence, swarm robotics uses similar principles, relying on constant feedback and a de-centralized structure. The term ‘swarm’ is generally applied to insects, but can also be used to refer to other animals exhibiting similar behavior. While still in its infancy, swarm robotics has a huge potential in diverse areas, and could fundamentally change how we deal with automation and robotics in general.
Swarm behavior can be simply defined as the collective behavior exhibited by a large number of similar entities with otherwise limited capabilities individually. Emergence is one term that can be attached to swarm behavior, a process by which larger patterns and entities are observed through interactions between smaller or simpler constituent entities, that otherwise do not exhibit them when considered by themselves. Arguably, the theory of evolution is also somewhat based on this principle, and its broader scope allows it to be applied in economic and social behavior in the real world as well.
Stigmergy is another phenomenon that plays a big role in some such systems, and could very well be the focal point for advanced swarm robotics, where different groups of robots could indirectly interact to create a larger intelligent system. It is basically a trace left by actions caused by either an individual entity or group of entities, which stimulates further action by different entities or groups. This form of self-organization eliminates the need for direct communication between different groups, and is serves almost as a form of memory.
Speaking of which, self-organization can be defined as coordination arising in large groups arising from interactions between the composing entities, when the system itself initially doesn’t exhibit any form of organization. The interesting part is that self-organization doesn’t occur only in swarms, but in a multitude of physical, chemical, social and biological systems. Examples include crystallization, swarm behavior, the Underground Railroad, and many more.
In nature, swarm behavior is observed in locusts, bees, ants, sardines, salmons, some bacteria and even in quadrupeds like sheep. In fact, even humans sometimes exhibit this sort of behavior, which is sometimes termed as crowd psychology.
Although a recent phenomenon with respect to nanorobotics and microbotics, swarm robotics can trace its origins from a program developed in 1986 called ‘Boids’, by Craig Reynolds. It was a simple simulation of emergent behavior in bird like objects. The beauty of this program came from the fact that complex behavior arose only from adhering to 3 simple rules. Individual entities in the program seemed to exhibit patterns and behavior not specifically programmed, simply by adhering to rules governing interaction. Those rules were:
- Separation: steer to avoid crowding local flockmates
- Alignment: steer towards the average heading of local flockmates
- Cohesion: steer to move toward the average position (center of mass) of local flockmates
Over time, many other rules were added, to study the effects of different types of forces, including fear, goals, chaos and more. Using this algorithm, even placing previously non-existent obstacles or objects without any further programming caused the ‘boids’ to avoid them and behave in a coherent manner, sparking the thought of the vast potential of such systems. This model was first used in computer animation, since it was leaps and bounds ahead of the then current simulation systems. It made its feature film debut in Batman Returns in 1992, simulating a swarm of bats and flock of penguins in the film.
Networking and Communication – The Importance
Since swarm robotics depends on collective behavior over singular potential, one of the most important points to consider is communication or networking between these individual constituent entities. Apart from miniaturization and cost, efficient communication has been one of the most significant challenges in this arena. Even with regards to networking, cost, area, interference, speed and range are the main factors to consider. Since this sort of application involves constantly changing network topology, numbers and circumstances, this type of networking is called ad-hoc networking. Individual constituent entities should be able to function both as clients and server nodes, with possibly self-aware problem fixing through intercommunication, and this is something that traditional networks were not designed for.
From a collective point of view, it is possible to consider three cases for communication, which are:
- Small clusters, where smaller sub groups of robots act as different networks and intercommunication is a form of SPPN (swarm peer to peer networking).
- Single large group, the classic model, where there’s only one group of robots which communicate with each other directly.
- Pre-defined network group, where a separate group of robots acts as the networking focal point and the rest of the group communicates with it.
All of these models are viable in specific situations, but the real challenge lies in adapting to different situations, in which a set model may not be the most efficient. An adaptive system that changes the protocols depending on situation is the most viable, but also the most difficult to implement in terms of cost and technology. The need for contextual communication for truly intelligent swarms means that traditional methods may not be so usable after all.
Characteristics and Advantages of Swarm Robotics
Swarm robotics forego the traditional centralized intelligence model of most robots, although a singular intelligence to coordinate a swarm of robots might still be required, and truly self-efficient robots are still even further away. Nevertheless, some of the most important advantages of swarm robotics are apparent regardless of the central intelligence model. They are:
- They are highly scalable and flexible, and can be adapted to many situations.
- They are highly fault tolerant. Even in case of the failure of one or more individual robots it’s not necessary that the whole system will fail. Of course, this is up to a limit, depending on the number, situation or application.
- They can be part of systems that divide work in different ways, with dynamic task allocation.
- The distributed nature enables multiple tasks to be completed at the same time.
- They are cost scalable, and since the individual entities are supposed to be simple, numbers can be altered according to costs or requirement.
While swarm robotics can be used in applications as an alternative, there are some applications in which swarm robotics will be far more efficient. Some of the applications include:
- Cartography and exploration
- Search and rescue
- Pollution, disaster damage or leakage counteractions
- Work in toxic or radiated environments
- Medical applications
- Building and repair
- Domestic applications
There are literally thousands of applications of efficient swarm robotics applications, and as mentioned earlier, could fundamentally change our approach to robotics and task based technologies. Imagine a world where one swarm of robots could do much more than just one task, the cost saving, efficiency and convenience would be great indeed!
Existing Swarm Robotics Projects
Currently, there are quite a lot of projects in the world creating swarm robots, geared towards different applications, and working towards a more efficient model, considering all the challenges faced by such systems. Some of these projects include:
- Sambots, a project of self-assembly swarm robots, that form multiple new structures through self-assembly and self-construction, most chained structures like a snake, caterpillar, and shapes like a rectangle, triangle and more.
- I-Swarm Project, a project of micro-robotics that can be used for medical applications due to their small size and relative cheap cost.
- iRobot Swarm Project, a project from MIT, it studies complex algorithm behavior and real world environment behavior, in addition to fault tolerance. It has been used to develop a global monitoring device and automatic charging station.
- Kobot Project, a project concentrating on short range sensing and intercommunication to sense relative headings of individual entities as well as efficient navigation.
- Kilobot Project, a project concentrating on large scale intercommunication and collective algorithms. It has several successful operations like return home, power on, charge all robots and more.
With all these applications and flexibility, it’s safe to say that swarm robotics will play a big role in the future, possibly changing robotics as we know it. However, we can’t argue that implementation of truly intelligent and self-organized systems will take a while. Basic principles state that complex behavior arises from simple rules and interaction, but using these principles in the real world, actually developing hardware that is resilient, efficient, cost effective, power efficient, adaptable and independent is nothing short of a herculean task, even now.
But then again, considering the rapid advancement of technology, it’s almost impossible to predict the timeline, and we may have proper functioning swarm robotics sooner than we think. Maybe the day when we’re treated by swarm robots for life threatening conditions isn’t as far away as we think!