The Flocking Robots Project


Last update: October 31, 2000 by Hanspeter Kunz

Boids background image: Java is required to view boids in their naturalenvironment.

this applet is written by Conrad Parker


Project Description

This project is part of Collective Behavior approach.

Flocking birds (and schooling fish) have always been one of the greatest spectacles nature can offer. Biologists, and lately the Artifical Life community, have shown interest in flocking behavior. Flocking is an example of emergent collective behavior: there is no leader, i.e., no global control. Flocking behavior emerges from the the local interactions.

Flocking adresses a variety of important topics in the field of multiagent simulation and collective robotics which include agent interaction, kin recognition, and finally the emergence of collective behavior. Yet it also problem so straightforward that it allows actual implementation both in simulation and on real robots.

For the above reasons flocking is one of the most interesting yet simple biological behaviors studied to date in the fields of mathematical biology and robotics. Countless papers on the subject have been published over the years, and a great variety of models is available (see for example [1] [2] [3]).

Flocking rules

These models are based on the following assumptions:

  1. Homogeneity: Every bird in flock has same behavior model. The flock moves without a leader, even though temporary leaders seem to appear.
  2. Locality: The motion of each bird is only influenced by its nearest flockmates. Vision is considered to be the most important senses for flock organization.

In short they are homogeneous and local. Furthermore these models implement more or less explicitly the following three flocking rules:

  1. Collision Avoidance: Avoid collision with nearby flockmates.
  2. Velocity Matching: Attempt to match velocity with nearby flockmates.
  3. Flock Centering: Attempt to stay close to nearby flockmates.
Often, another (implicit) rule is added:
  1. Travel speed: Attempt to travel with a certain speed.

The goal of the Flocking Robots Project is to implement these (apparent) trivial rules in real robots.

Implementing flocking on real robots

Key issues:

  • Most flocking rules working in simulation are only poorly situated. Mapping these rules to real robots poses a problem.
  • Rules have to be reformulated to a situated form.
  • Different sensor modalities can be exploited to simplify the problem.
  • Tight sensory-motor coupling through the environment can compensate errors due to low cost computation (redundancy).

Platform:
Samurai 2 robot, equipped with an Acer 314T running linux for online image processing, and a Lucent WaveLAN IEEE811.2b wireless ethernet link.

Samurai 2 robot




Links

Craig W. Reynolds' Boids Page   Excellent introduction to flocking rules. Many links.

References

[1] Craig W. Reynolds; Flocks, Herds, and Schools: A Distributed Behavioral Model; Computer Graphics 21(4), July 1987, 25-34

[2] Hiro-Sato Niwa; Self-Organizing Dynamic Model of Fish Schooling; Journal of theoretical Biology (1994) 171, 123-136

[3] Andreas Huth, Christian Wissel; The Simulation of the Movement of Fish Schools; Journal of theoretical Biology (1991) 156, 365-385


Send questions and remarks to hkunz@ifi.unizh.ch

[Go to AILab] Go to AILab main page Go to IFI main page [Go to IFI]