In 1986 a computer scientist named Craig Reynolds wondered about how birds flock, and if they do so through some form of central control, or whether they use principles of self-organization.
He wrote a computer program in which a number of "boids", a word he created, all follow the exact same rules. As it turned out, these virtual birds behaved...they "flocked"...in a way that was visually very similar to what we see from real birds.
Here's the original video he made, 30 years ago:
According to the Wikipedia page on Flocking Behavior flocking is actually rather simple:
Basic models of flocking behavior are controlled by three simple rules:
- Separation - avoid crowding neighbors (short range repulsion)
- Alignment - steer towards average heading of neighbors
- Cohesion - steer towards average position of neighbors (long range attraction)
With these three simple rules, the flock moves in an extremely realistic way, creating complex motion and interaction that would be extremely hard to create otherwise.
And here's a surprising connection to flocking