raingod
>>
resources
>>
Java
>>
Software
>>
Verhulst
Verhulst
Last updated: 05.11.2000
Verhulst
This applet plots the output of a function called the
Verhulst function. This function was originally developed to model the
growth of a population (i.e. of animals), where the size of the population
at any given point in time depends on two factors: the previous size of the
population, and a constant called 'r'. The function itself is very simple.
It is:
x = (x + (r * x * (1.0 - x)))
The applet shows a graph derived from repeatedly applying the function
and plotting the results using different values of 'r'. The population size
'x' is shown on the vertical axis, and the value of 'r' is shown on the
horizontal axis.
For small values of 'r', the function is relatively well-behaved - the
population size remains constant. As 'r' increases, the population size
starts to oscillate first between two values, then between four, then
eight and shortly thereafter it explodes into chaos, with the population
size changing unpredictably. For slightly higher values of 'r', the
range of variation may once again oscillate between a small number of
values, before returning to chaos again at slightly higher values. These
'stable periods' in the range of 'r' show as white 'windows' in the noisy
black mass of the function: an interesting feature of the system is that
if the chaotic regions are inspected closely (i.e. by examining values of
'r' in a narrow range), they are found to have non-chaotic regions within
them. In other words, the pattern formed exhibits self-similarity, a
characteristic property of fractals.
The applet is designed to permit interactive
exploration of the Verhulst function. To plot the function, click the
'Run' button. You can specify the range of values of 'r' that you want
by typing numbers in the top two number fields, 'start' and 'end'. In
this way you can inspect different parts of the range in greater detail.
The lower number fields determine the number of
iterations of the function that should be plotted. When a plot is
made, the function is called a few times to allow the population to
settle down; a specified number of population values are then
calculated and plotted. The number fields 'settle' and 'plot'
determine the number of times the function is called without
plotting ('settle') and then the number of times the function is
called with results plotted ('plot'). Setting both of these values
to low numbers and then progressively increasing the values for one
or the other produces some interesting results.
The 'shade' checkbox colors the output according
to the number of values plotted at each population size. This can
sometimes help to make structure clearer.
I don't know what it all means, but it's certainly
pretty ...
Note:
because of bugs in the Java implementation in some recent versions of
Explorer, this applet may not display correctly on this page. Try
viewing it through the applet tester
instead. Note also that as it is a Java 1.1 applet, it will not run at
all on some Netscape browsers, which only implement Java 1.0. See the
note on compatibility.
|