The University of Sheffield
Department of Computer Science

Thomas Blades Undergraduate Dissertation 2005/06

"Modelling Boids"

Supervised by Dr M Gheorghe

Abstract

Individual-based modelling is a popular approach to many different problems involving a number of beings interacting with each other. Use of this type of model has become widespread in research, including 3D graphics, biology, ecology, artificial intelligence, traffic management, and robotics. This project seeks first to study examples of individual-based modelling of dynamic systems in a wide context, and then to build on this knowledge in the creation of a more advanced software implementation.

In 1987 Craig Reynolds introduced a model of bird-like creatures flying around in 3D space. His intention was to create realistic-looking birdas for use in CGI effects form films. The 'boids' that he created were programmed with a few very simple rules of behavior, but as a group they exhibited more advanced, emergent 'flocking' behavior. From then on, many people were interested in the subject, and there are numerous examples of different problems solved using similar techniques. Each example of a boids-like model is programmed to demonstrate certain behaviors. They are very specific, and lack the ability to add new features without adding to the source code (if available). Simulation environments are available that simplify the process of creating simulations, but they are very general so as to be able to create a wide variety of different simulations, so programming is required.

This project takes inspration from previous work, to create a universal boid simulation tool, capable of hosting many different types of boid in the same environment. Boids can be created and modified by the user, and then saved and loaded to/from files. Numerical measures of flocking performance are available, in order to evaluate specific rules and parameters, and find optimal values. The simulation tool is capable of emulating behaviors from other boids-like examples, and providing the facility to experiment with new behavioral rules.