Cohesion
Separation
Alignment
Visual range
Interactivity
Speed limit

Boids

Boids (supposedly from "bird-oid objects") are an example of simulated 'artificial life' with complex emergent behavior similar to that of a flock of birds.

Each 'boid' follows a set of simple rules which update its current direction and velocity based on the boids which it sees in its neighbourhood, similar to how a cell in the famous Game of Life updates its current state based on other cells around it. That's where most of the similarities end, though. Boids are a 'continuous' model (as opposed to a discrete, grid-based one), and they never 'die' or come into existence—at least not in this particular implementation.

PS: I am not much of a web-designer. This site was designed with desktop computers in mind, at last but not at least since the boids may chase (or flee from) your cursor—make sure to fiddle with the sliders for fine-grained control.

Cohesion

Separation

Alignment

Each boid tries to move towards the collective center of those boids which it sees in its neighbourhood.
Each boid tries to move away from any other boid which is getting too close.
Each boid aligns its own movement direction and speed with that of the other boids it can see.

End