Potential Field swarms


6_robot_validation_multi_obstacle.png

Philip DeZonia and I explored using potential fields to induce flocking behavior in swarms of holonomic robotic boids as a final project for MEAM520 Introduction to Robotics at the University of Pennsylvania. We wanted to see if flocking could create stable behavior patterns for groups of robots and if such groups would perform better than groups of individuals.

The flocks we explored exhibit only local organization, with each robot's behavior being influenced by its nearest neighbors. Any global organization is then an emergent property of these local interactions. This is advantageous in many real systems, because local organization is computationally much simpler than global planning.

Flocks are traditionally considered to consist of three simple behaviors [1]:

  1. Separation – do not collide with your neighbors.

  2. Alignment – move in the same direction as your neighbors.

  3. Cohesion – stay close to your neighbors.

We explored the application of these rules to point robots and considered the relative strengths of each of these rules as well as how many neighbors are involved in each calculation.

We were able to show some stable groupings as the number of neighbors and forces were varied. Some configurations generated symmetric and stable patterns, while others did not. You can find a sampling of these groupings in the figures below.

 
 

We tried running flocks of these robots through randomly generated fields of obstacles and through Galton arrays. As might be expected, flocks performed better than individual robots in many cases, but certainly not in all. We found that in many cases flocks were able to overcome the local minima present in potential fields by pulling and pushing on each other until the flock as a whole passed the problematic location. But in other cases the whole flock would get stuck and the desire to stay in the group would prevent individuals that might have succeeded otherwise from doing so.

It is reasonable to conclude that a more complex set of rules is required to adjust the flocking behavior as appropriate for the task. For example, if it is preferable for at least one robot to reach the goal it’s cohesion coefficients can be lowered to allow it to separate from the group.

Some of the experiments we ran can be seen in this video:

 

Some experiments from an exploration of potential-field based flocking for MEAM520 in Fall 2017 at the University of Pennsylvania.

 

ATTRIBUTION

This project was done as work for MEAM520 - Introduction to Robotics, taught by Dr. Cynthia Sung at the University of Pennsylvania, Fall 2017.

References

[1] Craig W Reynolds. "Flocks, herds and schools: A distributed behavioral model". In: ACM SIG- GRAPH computer graphics 21.4 (1987), pp. 25{34.12}