CS6555 Computer Animation – Lab 4 – Reynolds Boids

In this lab, we were tasked with implementing the Reynolds' Boid model. Reynolds' paper defines an arbitration scheme where overall behavior is affected by suggestions from individual behaviors. The fundamental behaviors are collision avoidance [separation], velocity matching [alignment], and flock centering [cohesion]. Each behavior may cause a conflicting response from the simulated actor and so an arbitration scheme is used to determine which behavior is most significant. Reynolds proposes varying degrees of arbitration. The following demonstration does not use weighted sum parcelling, but instead uses the simplest scheme of a weighting factor to determine the most important behavior and to control based upon that behavior. An additional behavior is introduced in the form of a motivator [attracting] that gives the flocks overall movement the purpose to move toward the goal. Below is a demonstration of all four behaviors working in conjunction.

This problem was a challenging development. Reynolds' paper is fairly easy to digest, but takes close reading to get a deep understanding of the proposed approach. I made several aborted developments in the process because of that typical overwhelming desire to code first without a true appreciation of the model proposed. In some respects, the earlier work was a better approach in creating smooth trajectories and consistency in changes in orientation; however, the complexity was overwhelming. Below is a video of the earlier approach with only the motivator behavior handled.

While the first video is a final product, an aesthetically pleasing and more realistic animation would combine the techniques explored in the aborted development with the successful implementation of the full model proposed by Reynolds'.


Reynolds, C.W., "Flocks, Herds, and Schools: A Distributed Behavioral Model"

Comments are closed.