OpenSteer: Steering Behaviors for Autonomous Characters
https://github.com/meshula/OpenSteer
>OpenSteer is a C++ library for constructing steering behaviors for autonomous characters in games and animation. In addition to the library, OpenSteer provides an OpenGL-based application called OpenSteerDemo which demonstrates a variety of steering behaviors. The user can quickly prototype, visualize, annotate and debug new steering behaviors by writing a plug-in for OpenSteerDemo. [...]
>OpenSteer was initially developed by Craig Reynolds beginning in 2002 at the Research and Development group of Sony Computer Entertainment America. The OpenSteer authors wish to acknowledge the support of SCEA, SCEI and in particular these executives who had the foresight to release this code as open source for all to use: Shin'ichi Okamoto, Masa Chatani and Dominic Mallinson.
Also there's Blender's boids system, which has two main ancestors: Craig Reynolds' behavioral animation research, and Janne Karhu's rewrite of Blender's particle system. Its evolution turned the classic flocking model into an animator-controlled toolkit for flocks, herds, pursuit, and simple battles.