Model Description
The logistic is the simplest representation of population dynamics that contains a minimum level of biological realism. If we imagine a population of individuals at time t, the number of individuals in the next period (periods can range from seconds to days to decades depending on the organism) is the number of individuals now plus the number of births minus the number of deaths. If we assume in the simplest case there are no environmental constraints on births or deaths, then it is reasonable to assume that a constant proportion of living individuals give birth (i.e. fertile females) and have a total number of offspring per period. For example, in the USA in 2010, there were 64.1 births per 1,000 women aged 15-44 years (typical fertile period). When the proportion of women aged 15-44 years in the population is taken into account (about 20%), the birth rate per 1,000 population is 13. The death rate is around 8 per 1,000. If we label the number of individuals in period t as x(t), we have
births = b*x(t), deaths=d*x(t)
where b and d are the per-capita birth and death rates (in the US, b = 13/1000 = 0.013, d = 8/1000 = 0.08). Thus, simply counting individuals, we have
x(t+1) = x(t) + b*x(t) - d*x(t)
and factoring out x(t) yields
x(t+1) = (1 + b - d) x(t)
or, if we define the ``net intrinsic growth rate ``r'' as
r = (1 + b - d)
then we have the simple population growth rule (computation):
x(t+1) = r x(t).
Note, if births > deaths, then r > 1 and the population grows. If the opposite is true, r < 1 and the population dies out (x(t) goes to 0).
In the real world, births and deaths are not constant as in the example above. Namely, they change with population size. The simplest way to express this is that when the population goes up, individuals must compete for resources so births go down and deaths go up due to lower nutrition or outright conflict. The absolute simplest what to capture this dynamic is it assume that the intrinsic growth rate is a decreasing function of x such that we replace ``r'' with r*(1-x). It is simple to see that as x increases, r decreases. There are many ways to represent this mathematically, and each leads to the same qualitative behavior.
This leads to the famous ``logistic growth'' model presented here, i.e.
x(t+1) = rx(t)(1-x(t)).
Basic Dynamics
This scenario shows the system state versus time in the cartesian plane.
discrete logistic phase diagram
Rather than plotting the value of the logistic map versus time in the Cartesian plane, this digram shows how the value of the map changes over time as an animation.
$x_{t+1} = r x_{t}(1-x_{t})$ |
The population size in period t+1 is the population at period t, multiplied by the density-dependent growth rate, r(1-x). See the overview for the biological interpretation of the model. |
#logistic growth model par r=3 number d=0.16,angd=15,aht=0.52,alen=0.05,ahtl=0.47,eqnw=0.2,numw=0.14 number textr=0.03,textl=0.22,textltm=0.4 #all graphichs stuff----------------------- slope=max(-1e+07,min(1e+07,d/(((x+y)/2) - x))) angr=angd*pi/180 th=atan(slope) ah1=sign(th)*alen*cos(th-angr) av1=sign(th)*alen*sin(th-angr) ah2=sign(th)*alen*cos(th+angr) av2=sign(th)*alen*sin(th+angr) ahf=alen*sin(angr) avf=alen*cos(angr) dir=if(sign(x-y)!=0)then(sign(x-y))else(1) textx=if(dir>0)then(textr)else(textl) texty=if(dir<0)then(textr)else(textl) textlt=max(((x+y)/2),textltm) x(t+1)=r*x*(1-x) y(t+1)=x init x=0.01,y=0.01 aux sl=slope aux thang=th aux ah1a=ah1 aux av1a=av1 aux ah2a=ah2 aux av2a=av2 aux direct=dir aux stextx=dir*textx aux stexty=dir*texty @ total=100,yhi=1,ylo=0,bounds=1e+08 done
# animation for the logistic map dimension -0.3;-0.1;1.3;1.1 PERMANENT #==========Title, top equations===== # settext 3;rom;$BLACK text 0;1.05;The logistic map on the number line: settext 2;rom;$BLACK text -0.23;0.98;Recall, the iteration rule is: text -0.21;0.92;or, written differently: settext 2;rom;$BLUE text 0.44;0.98;x(n+1) = r*x(n)*(1-x(n)) text 0.44;0.92;x(1 step later) = r*x(now)*(1-x(now)) # # #=============Number Line============ # # text -0.01;0.4;0 text 0.99;0.4;1 text 0.48;0.4;0.5 line 0;0.5;1;0.5 line 0;0.46;0;0.54 line 0.5;0.46;0.5;0.54 line 1;0.46;1;0.54 line 0.1;0.485;0.1;0.52 line 0.2;0.485;0.2;0.52 line 0.3;0.485;0.3;0.52 line 0.4;0.485;0.4;0.52 line 0.6;0.485;0.6;0.52 line 0.7;0.485;0.7;0.52 line 0.8;0.485;0.8;0.52 line 0.9;0.485;0.9;0.52 # # #===========Begin Transient============ # TRANSIENT speed 100 vtext 0;0.05;r = ;r vtext 0;0;n = ;t line y;aht;(x+y)/2;aht+d;$BLUE;2 line (x+y)/2;aht+d;x;aht;$BLUE;2 line x;aht;x+ah1;aht+av1;$BLUE;2 line x;aht;x+ah2;aht+av2;$BLUE;2 # # # # ~~~~~~~~~~~~~~~~~~~~~~~~~~ #====| Arrows below number line |=========== #====| with numerical labels |=========== # ~~~~~~~~~~~~~~~~~~~~~~~~~~ # settext 1;rom;$BLUE line x;ahtl-d;x;ahtl;$BLUE;2 line x+dir*0.03;ahtl-d;x;ahtl-d;$BLUE;2 line x-ahf;ahtl-avf;x;ahtl;$BLUE;2 line x+ahf;ahtl-avf;x;ahtl;$BLUE;2 vtext x+dir*textx;ahtl-d-0.015; ;x rect x+dir*0.03;ahtl-d+0.015;x+dir*textl;ahtl-d-0.03;$blue # line y;ahtl-d;y;ahtl;$BLUE;2 line y-dir*0.03;ahtl-d;y;ahtl-d;$BLUE;2 line y-ahf;ahtl-avf;y;ahtl;$BLUE;2 line y+ahf;ahtl-avf;y;ahtl;$BLUE;2 vtext y-dir*texty;ahtl-d-0.015; ;y rect y-dir*0.03;ahtl-d-0.03;y-dir*textl;ahtl-d+0.015;$blue # # # #=============points on number line================== # comet x;0.5;-7;50;$RED comet x;0.5;-7;1;$GREEN comet x;0.5;-2;50;$BLACK settext 1;rom;$BLACK # #==============equation text above points=============== # text textlt-eqnw-0.2;aht+d+0.06;x(next) = vtext textlt-eqnw-0.015;aht+d+0.06; ;r text textlt-eqnw+0.12;aht+d+0.06;* vtext textlt-eqnw+0.15;aht+d+0.06; ;y text textlt-eqnw+0.18+numw;aht+d+0.06;*(1 - vtext textlt-eqnw+0.41;aht+d+0.06; ;y text textlt-eqnw+0.44+numw;aht+d+0.06;) text textlt-eqnw-0.2;aht+d+0.02;x(next) = vtext textlt-eqnw-0.015;aht+d+0.02; ;r text textlt-eqnw+0.12;aht+d+0.02;* vtext textlt-eqnw+0.15;aht+d+0.02; ;y text textlt-eqnw+0.18+numw;aht+d+0.02;*( vtext textlt-eqnw+0.36;aht+d+0.02; ;1-y text textlt-eqnw+0.38+numw;aht+d+0.02;)= vtext textlt-eqnw+0.58;aht+d+0.02; ;x rect textlt-eqnw-0.22;aht+d;textlt+0.56;aht+d+0.1;$blue # # done
Anderies JM, Arizona State University.
Mathematical Models in Biology.
. 1988.Chaos and the dynamics of biological populations. Nuclear Physics B (Proe. Suppl.). 2:225-246.
. 1987.