The Swarm Intelligence is very useful where human intervention could be delayed due to some technical reasons, but multiple activities or tasks must continue on its own without any serious conflict.
Basically, a swarm has a cluster of intelligent objects capable of deciding their activities or tasks independently, but they are working together to achieve a common goal.
However, the interesting part is that a common goal must be established by the swarm. Among the members, who decides the common goal for the entire swarm? How does each member plan and co-ordinate their activities or tasks in line with a common goal over spatiotemporal domain without any serious conflict with other member's activities or tasks?
Meeting the target and perfect conflict avoidance is key to swarm intelligence. We have observed a group of fish swimming together or birds flying in an organised manner. People moving on the road like member of a swarm in a traffic jam scenario.
As the swarms traverse in a spatial domain, all the members of the swarm are continuously gathering information about their current situation, predict their future course of action, and adjust their next action accordingly. Are their any communication languages used between members to assure zero-conflict? May not be true. Else, is every member of the swarm making only relative adjustments? Perhaps, the most cost effective approach would be to adjust their relative moves continuously.
The Local Continuous Adaptation principle covers the following product features
- to define a spatial range of observation
- to gather samples in-range to build context continuously
- to define a sample expiry time limit
- to perform situation analysis continuously
- to perform actions in a non-conflicting manner
The conflict avoidance is only a key requirement in the reactive models. While doing so, the members are able to restrict their own moves to avoid the chaos.
However, a proactive approach needs alignment with the strategic goals too. It requires communication using a broadcast network. Each member of the swarm is free to initiate communication about their next move. All other members are expected to process incoming data feeds continuously and align accordingly.
There could be multiple data feeds (e.g. text, audio, video). Each feed is assigned an independent layer for data processing. The situational analysis combines input from each layer to get overall temporal context.
Such a swarm management approach is very useful in a wide range of applications. For example, fraud detection in financial services, self-driving vehicles, drone flying in a battlefield, rover on other celestial objects, etc.