Skip to main content

A set of strategies used to direct the movement of AI agents - especially flocks and crowds - by combining vectors from one or more local avoidance/approach rules to obtain a net acceleration in each update, "steering" the agent in response to sometimes overlapping environmental considerations.

Steering behaviors were popularized for game development by Craig Reynolds in a 1999 paper presented at the annual Game Developers Conference, building on his earlier work on flocking.

There he introduced multiple individual steering strategies that each compute a desired acceleration for an agent:

  • Seek
  • Flee
  • Pursuit
  • Evasion
  • Offset Pursuit
  • Arrival
  • Obstacle Avoidance
  • Wander
  • Path Following
  • Flow Field Following
  • Unaligned Collision Avoidance
  • Flocking (Boids)
    • Separation
    • Cohesion
    • Alignment
  • Leader following
  • Interpose

He also showed that these behavioral building blocks can be combined into more complex strategies, by switching discretely between them with hierarchical overrides, by blending them through a weighted sum of their individual output vectors, or through "prioritized dithering" incorporating some randomness.