This d3.js app uses a few simple rules to simulate swarming behavior: swarmers (points) attempt to maintain fixed distances from, and match velocity to, their neighors.

Restart Pause

Drag to pan, scroll-wheel or pinch to zoom. Restart the simulation with different settings or pause using the buttons above.

Number of swarmers: 50 300 How many swarmers are simulated. Too many make the simulation slow.

Distance between swarmers: 20 50 Station-keeping space between neighbors.

Swarmer neighbors: 0 10 Number of connections per point.

Randomness of movement: None A lot

Acceleration: None High Tendency of points to accelerate along their (group's) current velocity vector.