Swarm intelligence deals with natural and artificial systems composed of many individuals that coordinate using self-organisation. Examples of such systems are colonies of ants and termites, schools of fish, flocks of birds, herds of land animals.
Swarm intelligence is a multidisciplinary field since systems with the above characteristics can be observed in a variety of domains. Research in swarm intelligence is often classified according to the following criteria.
Natural vs. Artificial: It is customary to divide swarm intelligence research into two areas according to the nature of the systems under analysis. We speak therefore of natural swarm intelligence research, where biological systems are studied; and of artificial swarm intelligence, where human artifacts are studied.
Scientific vs. Engineering: The goal of the scientific stream is to model swarm intelligence systems and understand the mechanisms that allow a system as a whole to behave in a coordinated way as a result of local individual-individual and individual-environment interactions. On the other hand, the goal of the engineering stream is to exploit the understanding developed by the scientific stream in order to design systems that solve problems of practical relevance.
Natural/Scientific: Foraging Behavior of Ants
In a now classic experiment done in 1990, Deneubourg and his group showed that, when given the choice between two paths of different length joining the nest to a food source, a colony of ants has a high probability to collectively choose the shorter one. Deneubourg has shown that this behavior can be explained via a simple probabilistic model in which each ant decides where to go by taking random decisions based on the intensity of pheromone perceived on the ground, the pheromone being deposited by the ants while moving from the nest to the food source and back.
Artificial/Scientific: Clustering by a Swarm of Robots
Several ant species cluster corpses to form cemeteries. Deneubourg et al. (1991) were among the first to propose a distributed probabilistic model to explain this clustering behavior. In their model, ants pick up and drop items with probabilities that depend on information on corpse density which is locally available to the ants. Beckers et al. (1994) have programmed a group of robots to implement a similar clustering behavior demonstrating in this way one of the first swarm intelligence scientific oriented studies in which artificial agents were used.
Natural/Engineering: Exploitation of collective behaviors of animal societies
A possible development of swarm intelligence is the controlled exploitation of the collective behavior of animal societies. For example, small insect-like robots are used as lures to influence the behavior of a group of cockroaches. The technology developed within this project could be applied to various domains including agriculture and cattle breeding.
Properties of a Swarm Intelligence System
The typical swarm intelligence system has the following properties:
- it is composed of many individuals;
- the individuals are relatively homogeneous (i.e., they are either all identical or they belong to a few typologies);
- the interactions among the individuals are based on simple behavioral rules that exploit only local information that the individuals exchange directly or via the environment (stigmergy);
- the overall behaviour of the system results from the interactions of individuals with each other and with their environment, that is, the group behavior self-organizes.
The characterizing property of a swarm intelligence system is its ability to act in a coordinated way without the presence of a coordinator or of an external controller. Many examples can be observed in nature of swarms that perform some collective behavior without any individual controlling the group, or being aware of the overall group behavior. Notwithstanding the lack of individuals in charge of the group, the swarm as a whole can show an intelligent behavior. This is the result of the interaction of spatially neighboring individuals that act on the basis of simple rules.
Most often, the behavior of each individual of the swarm is described in probabilistic terms: Each individual has a stochastic behavior that depends on his local perception of the neighborhood.
Because of the above properties, it is possible to design swarm intelligence system that are scalable, parallel, and fault tolerant.
Studies and Applications of Swarm Intelligence
Clustering Behavior of Ants
Ants build cemeteries by collecting dead bodies into a single place in the nest. They also organize the spatial disposition of larvae into clusters with the younger, smaller larvae in the cluster center and the older ones at its periphery. This clustering behavior has motivated a number of scientific studies. Scientists have built simple probabilistic models of these behaviors and have tested them in simulation (Bonabeau et al. 1999). The basic models state that an unloaded ant has a probability to pick up a corpse or a larva that is inversely proportional to their locally perceived density, while the probability that a loaded ant has to drop the carried item is proportional to the local density of similar items. This model has been validated against experimental data obtained with real ants. In the taxonomy this is an example of natural/scientific swarm intelligence system.
Nest Building Behavior of Wasps and Termites
Wasps build nests with a highly complex internal structure that is well beyond the cognitive capabilities of a single wasp. Termites build nests whose dimensions (they can reach many meters of diameter and height) are enormous when compared to a single individual, which can measure as little as a few millimeters. Scientists have been studying the coordination mechanisms that allow the construction of these structures. In the taxonomy this is an example of natural/scientific swarm intelligence system.
Flocking and Schooling in Birds and Fish
Flocking and schooling are examples of highly coordinated group behaviors exhibited by large groups of birds and fish. Scientists have shown that these elegant swarm-level behaviors can be understood as the result of a self-organized process where no leader is in charge and each individual bases its movement decisions solely on locally available information: the distance, perceived speed, and direction of movement of neighbours. In the taxonomy these are examples respectively of natural/scientific and artificial/engineering swarm intelligence systems.
Ant colony optimisation:
Ant colony optimization is a population-based metaheuristic that can be used to find approximate solutions to difficult optimization problems. It is inspired by the above-described foraging behavior of ant colonies. In ant colony optimization (ACO), a set of software agents called “artificial ants” search for good solutions to a given optimization problem transformed into the problem of finding the minimum cost path on a weighted graph. The artificial ants incrementally build solutions by moving on the graph. The solution construction process is stochastic and is biased by a pheromone model, that is, a set of parameters associated with graph components (either nodes or edges) the values of which are modified at runtime by the ants. ACO has been applied successfully to many classical combinatorial optimization problems, as well as to discrete optimization problems that have stochastic and/or dynamic components. Ant colony optimization is probably the most successful example of artificial/engineering swarm intelligence system with numerous applications to real-world problems.
Particle swarm optimisation:
Particle swarm optimization is a population based stochastic optimization technique for the solution of continuous optimization problems. It is inspired by social behaviors in flocks of birds and schools of fish. In particle swarm optimization (PSO), a set of software agents called particles search for good solutions to a given continuous optimization problem. Each particle is a solution of the considered problem and uses its own experience and the experience of neighbor particles to choose how to move in the search space. In practice, in the initialization phase each particle is given a random initial position and an initial velocity. The position of the particle represents a solution of the problem and has therefore a value, given by the objective function. While moving in the search space, particles memorize the position of the best solution they found. At each iteration of the algorithm, each particle moves with a velocity that is a weighted sum of three components: the old velocity, a velocity component that drives the particle towards the location in the search space where it previously found the best solution so far, and a velocity component that drives the particle towards the location in the search space where the neighbor particles found the best solution so far. PSO has been applied to many different problems and is another example of successful artificial/engineering swarm intelligence system.
Swarm-based Network Management
The first swarm-based approaches to network management were proposed in 1996 by Schoonderwoerd et al., and in 1998 by Di Caro and Dorigo. Schoonderwoerd et al. proposed Ant-based Control (ABC), an algorithm for routing and load balancing in circuit-switched networks; Di Caro and Dorigo proposed AntNet, an algorithm for routing in packet-switched networks. While ABC was a proof-of-concept, AntNet, which is an ACO algorithm, was compared to many state-of-the-art algorithms and its performance was found to be competitive especially in situation of highly dynamic and stochastic data traffic as can be observed in Internet-like networks. An extension of AntNet has been successfully applied to ad-hoc networks (Di Caro, Ducatelle and Gambardella 2005). These algorithms are another example of successful artificial/engineering swarm intelligence system.
Cooperative Behavior in Swarms of Robots
There are a number of swarm behaviors observed in natural systems that have inspired innovative ways of solving problems by using swarms of robots. This is what is called swarm robotics. In other words, swarm robotics is the application of swarm intelligence principles to the control of swarms of robots. As with swarm intelligence systems in general, swarm robotics systems can have either a scientific or an engineering flavour. Clustering in a swarm of robots was mentioned above as an example of artificial/scientific system. An example of artificial/engineering swarm intelligence system is the collective transport of an item too heavy for a single robot, a behavior also often observed in ant colonies.
The text in this blog comprises excerpts from the following Sources :
And here are a few videos that will help in appreciating the concept and usefulness of Swarm intelligence :
1: Why Swarm Intelligence (~ 3minutes) : https://youtu.be/jfoAYg-gk98/
2: Inside the ant colony : (~5 minutes) : https://youtu.be/vG-QZOTc5_Q
3: Five principles of Swarm Intelligence(~2 minutes): https://youtu.be/axxXz2BM0yw
4: Taming the swarm; collective artificial intelligence( ~20 minutes): https://youtu.be/LHgVR0lzFJc
5: Changing the world through Swarm Intelligence (~20 minutes) : https://youtu.be/zdiFV-AFbBA