Project Proposal by Martin Stacey


Artificial Ecosystem

Software

Any powerful OO language.

Covers

OO system development, simulation modelling, artificial life, possibly game design.

Skills Required

Programming, OO systems design, possibly computational intelligence learning mechanisms.

Challenge

Conceptual ??? Technical ?? Programming ???

Brief Description

Create life! Artificial life is the academic discipline concerned with the individual and collective behaviour of software agents that simulate lifeforms, interacting with each other in a computational ecosystem. The challenge of this project is to create artifical ecosystems in which lifeforms of different types with different capabilities battle for survival, trying to eat and avoid being eaten, so that the populations of different species rise and fall according to the success of others.

The key to success is to define ways to represent lifeforms of different species so that the simulation can be made more complex incrementally. A key decision is whether to represent individual animals or populations of animals as the units that the simulation uses. Another key decision is what happens at each time interval.

Extensions

In addition to species differing, it would be good to include different types of terrain so that lifeforms might be differently successful in different environments.

A way for species to evolve over time, and possibly to divide into separate species, would be a very valuable addition. Making sure that adaptations have costs, so that species don't simply become impossibly good at everything, is crucial.

A user interface that allows the user to see how the ecosystem changes over time as species are more or less successful in different places would be very valuable, but developing a glossy interface shouldn't interfere with getting an interesting simulation working.

A way to play a game with the system would be a good addition.


Back to