next up previous

1 Introduction     continued...

This case study is a computer simulation of the genetics of small populations. The simulator focuses on the genetic makeup of individuals, and tracks how new mutations that are introduced at random spread through the population. Since most mutations are harmful, as the mutations spread the population's health deteriorates.

What the simulation shows is that under the right conditions, mutations alone are enough to cause extinction; in other words, even with a constant, benign environment, small populations will become extinct merely as a result of new mutations that build up over generations. In fact, there is a critical point after which extinction is inevitable: the population is still at its original size, but a sufficient number of mutations have built up that the next generation will be smaller (since some offspring will be too unhealthy to survive). At this point there begins a snowballing process where each new generation is smaller than the previous one. This sudden collapse in the population has been termed the ``mutational meltdown.''

One of the most interesting aspects of computational science is the syngergy between computer science and the application area (population genetics, in this case). Knowledge of one area alone is not sufficient to make significant advances in research. Biologists need to use modern high performance computer systems to carry out the computationally intense simulations, and to use these systems requires knowledge of parallel algorithms and languages and how to map them effectively to parallel computer systems. Equally important, a computer scientist alone could not implement the simulators, since a straightforward implementation of the underlying biological systems is far too inefficient; mathematical transformations and optimizations based on deep knowledge of the domain are crucial in making the simulators efficient enough for the simulations that are of interest. Three examples of this synergy are included in this chapter, in the section entitled optimizations.