Craig Reynolds proposed boids in 1987 for procedural animation of bird flocks and fish schools. Three rules per agent: separate from nearby neighbors, align heading with the local flock, and cohere toward the group's center of mass. No leader, no global plan.
Each rule operates within a limited perception radius, so a boid only sees its nearest neighbors. The emergentflocking, lane formation, and obstacle splitting all arise from purely local decisions. No agent has any knowledge of the flock's overall shape.
The three force weights act as personality knobs. High separation produces nervous, jittery swarms that avoid contact. High cohesion creates tight schools that move as a dense mass. High alignment yields parallel columns that stream in formation. The balance between them determines the character of the flock.
Move your cursor to attract the flock. Hold shift to scatter them. Tune the weights to see how the collective behavior shifts.
Craig Reynolds (1987)