A boids flocking behaviour algorithm implementation in Python and Pygame
See Notes for detailed explanation of the implementation.
http://www.vergenet.net/~conrad/boids/pseudocode.html
http://gamedevelopment.tutsplus.com/series/understanding-steering-behaviors--gamedev-12732