Marine ecosystems are complex, multifaceted systems that play host
to numerous organisms that form key components of nutrition for many
communities around the world, as well as organisms that are vital
to the stability of numerous food chains. Today’s world is
resource-scarce, and hence it is critically important for there to
be an extensive knowledge base to enable our policy makers to formulate
solutions that meet both short-term and long-term objectives.
Every ecosystem consists of interactions between the organisms that
constitute the ecosystem. Indeed, in addition to the dependence and
interdependence regimes between different organisms of separate species,
organisms of the same species interact with one another to ensure
collective survival. It is, therefore, integral to any computer modelling
of an ecosystem that it encapsulates the food chain, as well as key
characteristics of how life forms actually move in real life. That
is, although the system should respond in feasible ways to changes
in its state, there must be sufficient randomness to reflect the
inherent chaotic nature of the world around us. Furthermore, in order
to reach its full potential, the simulation must be easy to use,
and allow for changes to parameters in order for experimentation
The virtual environment of the simulation has been set in the frigid
waters of the Antarctic, an area that will be increasingly thrust
into the spotlight as competing interests fight over access to the
largest remaining unspoilt area of the Earth. Autonomous agents representing
fish, penguins, whales and different types of plankton (the primary
producers in the food chain) move around in the virtual three-dimensional
environment. The interactions between different species are predator-prey
relationships, with the life forms towards the top of the food chain
acting to eat the ones further down, and the life forms towards the
bottom reproducing to ensure survival of their species. Intra-species
relationships include flocking and reproduction.
< Simulation Food Chain
The different types of plankton are the primary producers
in the system, and they are eaten by fish. Fish are the primary
food source for the two animals above it, penguins and whales.
Because the simulation is designed to model the behaviour of the
real world in order to understand the behaviour of real world systems,
scientific accuracy was a concern of the developers in this project.
Research into behaviour and characteristics of Antarctic marine life
forms was carried out so that the formation of the simulated food
chain would be representative, and so that the distinguishing characteristics
of movement of each of the life forms would be maintained. For example,
for fish, different methods of flocking were investigated, while
for penguins, the ways in which real penguins may choose to come
up for breath is reflected in the simulation.
The solution, written in the Java programming language, utilises
object-oriented principles, allowing for easy extensibility and adaptability.
The project can be roughly divided into three sections. Firstly,
the autonomous life forms are part of an inheritance structure, simplifying
code production through common routines, and allowing for polymorphism
in the next section, the framework classes. The framework classes
control the simulation environment including the ground and current,
communication between the life forms and the environment and vectors.
The upper tier is the user interface, consisting of a main program
executable, into which different panels can be inserted, such as
the two- and three-dimensional renderers and the set of graphs. The
three-dimensional renderer relies on the set of jogl libraries (a
Java implementation of OpenGL).