Darwin 2: Evolutionary Computation Java Framework: Peppered Moth Example Applet

Just click on Start to see the simulation of the peppered moth (you may have to accept to run the applet or hit the space bar before you even see it, depending on your browser). Once it's going, try making the environment darker (more soot) and watch how the proportion of dark moths (represented by the small circles) increases. Now make the environment less sooty (simulating the great post-industrial-revolution cleanup) and notice the resurgence of the light moths.

Your browser does not support this applet.

You can, with the appropriate permissions, speed up or slow down the evolution, using the slider bar. However, in order for that to work properly, this needs to be a signed applet, (giving it fuller permissions), otherwise the slider is disabled.

Darwin is an open-source Java framework for solving problems using evolutionary computation.

The Peppered Moth Example is a biological example of an evolutionary computation and utilizes a sex-based evolutionary mechanism. The peppered moth illustrates a very fast adaptation to differing environmental conditions, and was noted and observed during before, during and after the early part of the industrial revolution in Britain.

The genome of the peppered moth is diploid, i.e. it uses "normal" sexual reproduction. The "carbonaria" (dark-wing-making) allele is dominant but to start, the likelihood of any particular gene having the carbonaria allele is only 25%. The allele which gives rise to the lighter color is called the "typica" allele.

The control population generally maintains roughly the original 25% proportion of carbonaria alleles and the computation parameters allow the experimental population (where you can control the sootiness) to occasionally find a mate from the control population. This simulates the rest of the world, as far as the moth populations are concerned. However, there is a further mechanism in play here: approximately once every one hundred gene copies results in an error - and the other allele is used. This tends to ensure (insure if you're in the US) that no allele ever dies out completely.

The age of each of the moths is represented by its size. Moths that are dying are shown (very briefly) in red.

If you want to try different formulas for mate choice and fitness of wing color in soot densities you may go to the options tab.

For more information on the (natural) Peppered Moth see Wikipedia.


If you don't see a grey box titled "Darwin 2 Visualization Applet: Peppered Moth Evolution", and a "start" button in the lower left-hand corner, then something didn't work right in your browser. You need to have the Java HotSpot client (at least version 1.5.10) installed as a plugin in your browser (if you don't have it the browser should offer to get it for you). If your browser asks you if you'd like to install it, you should say yes - it won't do your system any harm. Running applets is perfectly safe!

If you are running Internet Explorer, you will have to click space or return before the applet activates. Running Mozilla browsers (Firefox, etc.) should be straightforward.

Of course, it could be simply that you have "Java" turned off in your browser options. In IE, it's under Tools/Internet Options/Advanced and the checkbox is called "Java (Sun)". In Mozilla/Firefox, it's under Tools/Options/Content and the checkbox is called "Enable Java".

If you open the "Java Console" in your browser (tools menu for IE) you can see some extra information particularly when you stop the simulation.

Reloading the page causes the same security exception as changing the speed of evolution (they both try to stop a running thread). Instead, if you want to start the evolution over again, just navigate away from the page and come back to it.


Last Update: 2009/10/13 By: Robin Hillyard