Project Status: The group project was successfully completed and presented at the 2nd year group project presentations.
Completion Time: 10:00am     Friday 17th June 1999
Place: New Cavendish Street Campus, 2nd Floor, Large Lecture Theatre


Boids were originally invented by Craig Reynolds and are quite simply a model of the flocking, herding or schooling behaviours observed with intelligent lifeforms.  The grouping behaviour for the boids is produced by the application of just three simple rules:

1. The attraction of the boids to each other.
2. The adjustment of each individual boids velocity to match up with the rest of the flocks velocity.
3. The avoidance of any direct collisions with any other boids or objects.

All the behaviour produced from each boid is a resultant combination of these three individual boid behaviours, within its local environment.  Boid behaviour therefore is a good model of a cellular automaton, where there can be an emergence of group behaviour.  The implementation of the boid behaviours can be varied using very basic or advanced programming techniques.  Basic boids would just inhabit a blank two dimensional plane and follow simple averaging algorithms.  Advanced boids could live in a complex three dimensional environment with obstacles ect.  Their behaviour could be influenced by much finer details, like their field of vision and movement characteristics, which could even be particular to each boid.

Elaboration of boid details can go on and on indefinitely.  But the essence and underlying framework for all boid simulations, is just the deployment of the three simple rules to produce the complex and fascinating emergent behaviour.

Group Members

Raffaello Bartocci Graphics design & programming
Amalgamation & production of the final design document
Group presentations coordination
Nadeem Kasker Statistics design & programming 
User documentation 
Tester (1 of 2)
James King Programming coordination
Application framework design & programming
Natasha Omezi Requirements specification
Poster session coordination
Stuart Piercy HCI & GUI design & programming 
Tester (2 of 2)
Robert Platt Boids A.I. design & programming
Web page editor
Teamwork planning & coordination

Client: Stuart Pattinson
Consultant: Roger Carsley

Related www Links:
   Boids (Flocks, Herds, and Schools: a Distributed Behavioral Model)
   Flock Applet: Boids in Java
   C++ Boids by Christopher Kline

Screen Shot of the Java 1.2 Application

Contact Details:

Date of Last Update: Saturday 30th August 2003