Robot formations that avoid obstacles
In formations, robots are positioned at a precise distance and sometimes angle from one another to form shapes. Robots that advance in formations can share communication, computation and sensing resources and work together to explore the world or transport objects.
Ideally, robot formations should be able to advance in a common direction while avoiding obstacles in their environment. Addressing this challenge, Monteiro et al. propose that each robot follows a leader. The idea is that a leader who knows where to go is followed by robots that remain at a fixed angle and distance from it. These followers can then serve as leaders for other robots. As a result, each robot is directly or indirectly following a single leader while maintaining precise angle and distance to one robot in the formation as shown in the image below. “Who follows who?” is described by a matrix sent to the robots. The formation can therefore be changed by sending different formation matrices to the robots.
To maintain the formation while avoiding obstacles, followers use an attractor dynamics approach that changes their speed and heading. Simply put, followers are attracted to positions at correct distance and angle from their leader while being repulsed by obstacles. Using this technique formations can be formed from any starting position, can split to avoid obstacles and reassemble seamlessly.
Results in simulation and reality show robots can move in formations through cluttered environments with moving obstacles, replace leaders that have failed, and switch formations. In the video below three Khepera I robots are successful in switching between line, triangle and column formations and avoiding obstacles. In these experiments, robots needed to communicate their position to other robots in the formation. A later robot developed uses a camera to alleviate the need to communicate since robots can directly sense where their neighbors are.
In the future, Monteiro et al. plan to investigate how to design formation matrices at runtime depending on the needs of a mission and avoid problems due to robots not seeing each other.