{VERSION 5 0 "IBM INTEL NT" "5.0" }
{USTYLETAB {CSTYLE "Maple Input" -1 0 "Courier" 0 1 255 0 0 1 0 1 0 0
1 0 0 0 0 1 }{CSTYLE "" -1 256 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }
{CSTYLE "" -1 257 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 }{CSTYLE "" -1
258 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 259 "" 1 12 0 0
0 0 0 0 0 0 0 0 0 0 0 1 }{PSTYLE "Normal" -1 0 1 {CSTYLE "" -1 -1 "Hel
vetica" 1 12 0 0 0 0 1 2 2 0 0 0 0 0 0 1 }0 0 0 -1 -1 -1 0 0 0 0 0 0
-1 0 }{PSTYLE "Heading 1" 0 3 1 {CSTYLE "" -1 -1 "" 1 18 0 0 0 0 0 1
0 0 0 0 0 0 0 1 }1 0 0 0 6 6 0 0 0 0 0 0 -1 0 }{PSTYLE "Maple Plot" 0
13 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }3 0 0 -1 -1
-1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 0" -1 256 1 {CSTYLE "" -1 -1 "He
lvetica" 1 12 0 0 0 0 2 1 2 0 0 0 0 0 0 1 }0 0 0 -1 -1 -1 0 0 0 0 0 0
-1 0 }{PSTYLE "R3 Font 2" -1 257 1 {CSTYLE "" -1 -1 "Courier" 1 14 0
0 0 0 2 2 2 0 0 0 0 0 0 1 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R
3 Font 2" -1 258 1 {CSTYLE "" -1 -1 "Courier" 1 12 0 0 0 0 2 2 2 0 0
0 0 0 0 1 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 3" -1
259 1 {CSTYLE "" -1 -1 "Courier" 1 12 0 0 0 0 2 2 2 0 0 0 0 0 0 1 }0
0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 4" -1 260 1 {CSTYLE "
" -1 -1 "Courier" 1 12 0 0 0 0 2 2 2 0 0 0 0 0 0 1 }0 0 0 -1 -1 -1 0
0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 5" -1 261 1 {CSTYLE "" -1 -1 "Helveti
ca" 1 12 0 0 0 0 2 1 2 0 0 0 0 0 0 1 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0
}{PSTYLE "R3 Font 6" -1 262 1 {CSTYLE "" -1 -1 "Helvetica" 1 12 0 0 0
0 2 1 2 0 0 0 0 0 0 1 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Fo
nt 7" -1 263 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 0 2 2 2 0 0 0 0 0
0 1 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 8" -1 264 1
{CSTYLE "" -1 -1 "Helvetica" 1 12 0 0 0 0 2 1 2 0 0 0 0 0 0 1 }0 0 0
-1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 9" -1 265 1 {CSTYLE "" -1
-1 "Times" 1 12 0 0 0 0 2 2 2 0 0 0 0 0 0 1 }0 0 0 -1 -1 -1 0 0 0 0 0
0 -1 0 }{PSTYLE "R3 Font 10" -1 266 1 {CSTYLE "" -1 -1 "Helvetica" 1
12 0 0 0 0 2 1 2 0 0 0 0 0 0 1 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }
{PSTYLE "R3 Font 11" -1 267 1 {CSTYLE "" -1 -1 "Helvetica" 1 12 0 0 0
0 2 1 2 0 0 0 0 0 0 1 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "" 3
268 1 {CSTYLE "" -1 -1 "" 1 12 0 0 0 0 0 0 0 0 0 0 0 0 0 1 }0 0 0 -1
-1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "" 3 269 1 {CSTYLE "" -1 -1 "" 1 12 0
0 0 0 0 0 0 0 0 0 0 0 0 1 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }}
{SECT 0 {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "
" 0 "" {TEXT 256 10 "may.mws " }{TEXT -1 52 "Maple worksheet to acco
mpany Robert M. May, 1974 , " }{TEXT 257 96 "Biological populations w
ith non-overlapping generations: stable points, stable cycles and cha
os" }{TEXT -1 12 " , Science, " }{TEXT 258 3 "186" }{TEXT -1 10 ": 645
-647." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 560
"This worksheet has three parts. In the first two parts (also availab
le as a Release 3 worksheet chaos.ms) we look at the model itself, and
especially at the long term behaviour of the trajectories and how thi
s may depend on initial conditions, growth parameters, etc. In section
1 we consider the dynamics of a single species; in section 2 we consi
der two competing species. The third part (originally bifurc.ms) intr
oduces the idea of a bifurcation diagram, which is a record of the rep
eated \"stable points\" that occur for different growth parameter valu
es." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{SECT 0 {PARA 268 "" 0 ""
{TEXT -1 36 "Section 1. Stable cycles and chaos." }}{EXCHG {PARA 0 "
" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 112 "May examines the \+
behavior of difference equation analogues of the logistic equation. H
e looks at two equations:" }}{PARA 0 "" 0 "" {TEXT -1 47 " 1. N
(t+1) = N(t) * exp[r * (1 - N(t)/K]" }}{PARA 0 "" 0 "" {TEXT -1 52 " \+
2. N(t+1) = N(t) * [ 1 + r * (1 - N(t)/K)] " }}{PARA 0 "" 0 ""
{TEXT -1 437 "Both are non-linear equations, and both have a stable eq
uilibrium at N = K, when 2 > r > 0. The second, although more clearly \+
\"logistic-based\" has the unfortunate tendancy to permit overshoot in
which the population can dip negative under extreme oscillation, even
with reasonably small stepsize. The reader is invited to experiment w
ith this model as well, but in this worksheet all computations in this
model have been \"commented out\"." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }
}{PARA 0 "" 0 "" {TEXT -1 617 "We can demonstrate this stability by ca
lculating the trajectory of populations from an initial size of 10 ind
ividuals, over 30 time steps. We will try several values of r from 0.
5 to 2.0. We will use equation 1 as May did in his paper. To avoid h
aving extraneous \"junk\" getting printed, we suppress all printing an
d plotting in the main loop (under control of r), give the plots names
, and plot them afterwards using the animation feature. Two plots are
created: plot_list gives N as a function of t; pairs gives N(t+1) aga
inst N(t). Clustering of points in the latter is an indication of stab
le cyclic behaviour." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "res
tart: with(plots):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 234 "N[0
]:= 10 ; K:= 1000 ; # initial condition and `carrying capacity`\ntitl
e1:=`N(t+1) vs N(t) when r= `: title2:=`N(t) vs t when r= `: # title b
lanks for plots\nsample_r:= [0.4, 0.7, 1.0, 1.3, 1.6, 1.9]; P_frames:=
NULL: R_frames:= NULL:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 83 "
for r in sample_r do\nplot_list:= [0, N[0]]: pairs:= NULL: # initia
lize the plots" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 222 " for t from 0 \+
to 30 do\n #N[t+1]:= N[t] + ( r / k ) * N[t] * ( K - N[t] ): # logi
stic model\n N[t+1]:= N[t] * exp(r * (1 - N[t] / K)):\n pairs:= pa
irs, [N[t], N[t+1]]:\n plot_list:= plot_list, [t+1, N[t+1]]:\n od
:" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 237 "R[r]:= plot([ pairs ], style=
point, color=green, title=cat(title1, convert(r,string))):\nR_frames:=
R_frames, R[r]:\nP[r]:= plot([ plot_list ], style=line, color=plum, t
itle=cat(title2, convert(r,string))):\nP_frames:= P_frames, P[r] :\no
d:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 53 "display([P_frames], \+
insequence=true, thickness = 2);" }}{PARA 13 "" 0 "" {TEXT -1 0 "" }}}
{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "> " 0 "
" {MPLTEXT 1 0 56 "display([ R_frames ], thickness = 2, insequence=tr
ue); " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA
0 "" 0 "" {TEXT -1 675 "\nYou should now have six graphs of the trajec
tory of the population reaching a stable equilibrium of K, at growth r
ates r of 0.4, 0.7, 1.0, 1.3, 1.6, and 1.9. Let us now try values of \+
r close to 2.0 and see if the behavior indeed changes where May says i
t does. This time we use a slightly different idea to plot the list o
f points: we use the \"repeater\" symbol $. You do need to be a littl
e bit careful with this; the repeater variable can't be one that you h
ave already used (so having used t already in the worksheet, the safes
t thing to do is to be sure Maple forgets any previous values it may h
ave had by resetting it to be just the neutral variable \"t\" once aga
in)." }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 62 "N[0]:= 10 ; K:= 1000 ; samp
le_r:= [1.99, 1.999, 2.001, 2.01]; " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0
43 "P_frames:= NULL: R_frames:= NULL: t:= 't';" }}}{EXCHG {PARA 0 "> \+
" 0 "" {MPLTEXT 1 0 21 "for r in sample_r do" }}{PARA 0 "> " 0 ""
{MPLTEXT 1 0 131 " for i from 0 to 2000 do\n #N[i+1]:= N[i] + ( r \+
/ K ) * N[i] * ( K - N[i] );\n N[i+1]:= N[i] * exp( r * (1 - N[i] / \+
K));\n od:" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 277 "R[r]:=plot([[N[t],
N[t+1]] $t=1900 .. 2000], style=point, color=green, title=cat(title1,
convert(r,string))): \nP[r]:=plot([[t,N[t]] $t=1900 .. 2000], style=l
ine, color= coral, title=cat(title2, convert(r, string))):\nP_frames:=
P_frames, P[r]: R_frames:= R_frames, R[r] :\nod:" }}}{EXCHG {PARA
0 "> " 0 "" {MPLTEXT 1 0 42 "display( [P_frames], insequence = true );
" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "> \+
" 0 "" {MPLTEXT 1 0 40 "display( [R_frames], insequence = true);" }}}
{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 ""
{TEXT -1 326 "\nWe have plotted from time step 1900 to time step 2000 \+
on the graphs to see whether the populations have reached an equilibri
um or whether they have stabilized. The model with r=1.999 appears to
be a damped oscillation which is still damping, whereas the model wit
h r=2.001 appears to have entered into a stable oscillation.\n" }}
{PARA 0 "" 0 "" {TEXT -1 303 "Let us now try examining the regions whe
re May says there is a 2 point cycle (2.526 > r > 2.0), a 4 point cycl
e (2.656 > r > 2.526), an 8 point cycle (2.685 > r > 2.656), a cycle o
f 16 or 32 points (2.692>r>2.685). We will also plot graphs of N(t+1)
vs N(t) to see the underlying structure in the data:" }}}{EXCHG
{PARA 0 "> " 0 "" {MPLTEXT 1 0 56 "N[0]:= 10; K:= 1000; sample_r:= [2.
4, 2.6, 2.67, 2.69]; " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 33 "P_frames:=
NULL: R_frames:= NULL:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "
for r in sample_r do" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 156 " for i f
rom 0 to 60 do\n #N[i+1]:= (N[i] + ( r / K ) * N[i] * ( K - N[i] ));
# logistic-based model\n N[i+1]:= N[i] * exp( r * (1 - N[i] / K ))
; \n od:" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 266 "R[r]:= plot([[N[t], N
[t+1]] $t=0 .. 60], style=point, color=green, title=cat(title1, conver
t(r,string))): \nP[r]:= plot([ [t,N[t] ] $t=0 .. 60], style=line, colo
r= plum, title=cat(title2, convert(r,string))):\nR_frames:= R_frames, \+
R[r]: P_frames:= P_frames, P[r]:\nod:" }}}{EXCHG {PARA 0 "> " 0 ""
{MPLTEXT 1 0 56 "display( [P_frames], insequence = true, thickness = 2
);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "
> " 0 "" {MPLTEXT 1 0 41 "display( [R_frames], insequence = true );" }
}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 "
" {TEXT -1 468 "\nNow let us examine May's assertion that in the regio
n of chaotic behavior, the initial conditions determine the pattern of
behavior. Let us try four simulations with r = 3.3, each with a diff
erent starting population. The starting conditions used in the second
and fourth graphs correspond to May's conditions of No/K = 0.02 (No =
20) and No/K = 1.5 (No = 1500); see Fig 1(d) and Fig 1(e). We run th
e time up to 50 instead of 30 (why stop when you're having fun?)." }}}
{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 196 "R_frames:= NULL: P_frames:
= NULL:\ntitle1:=`N(t+1) vs N(t) when N(0)= `: title2:=`N(t) vs t when
N(0)= `:\nr:= 3.3; K:= 1000; sample_inits:= [10, 20, 500, 1500]; # pa
rameters and initial conditions" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT
1 0 34 "for j in sample_inits do\nN[0]:= j;" }}{PARA 0 "> " 0 ""
{MPLTEXT 1 0 105 " for i from 0 to 50 do\n #N[i+1]:= N[i] + ( \+
r / K ) * N[i] * ( K - N[i] ); # logistic-based model " }}{PARA 0 "> \+
" 0 "" {MPLTEXT 1 0 55 " N[i+1]:= N[i] * exp( r * (1 - N[i] / K));
\n od;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 264 "R[j]:=plot([[N[t], N
[t+1]] $t=0 .. 50], style=point, color=green, title=cat(title1, conver
t(j, string))):\nR_frames:= R_frames, R[ j ]: \nP[j]:= plot([[t,N[t]] \+
$t=0 .. 50], style=line, color=blue, title=cat(title2, convert(j, stri
ng))):\nP_frames:= P_frames, P[ j ] :" }}{PARA 0 "> " 0 "" {MPLTEXT 1
0 3 "od:" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 42 "display( [ P_frames ], \+
insequence = true);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}
{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 42 "display( [ R_frames ], inseq
uence = true);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}
{SECT 0 {PARA 3 "" 0 "" {TEXT 259 36 "Section 2. Mutispecies interact
ions" }{TEXT -1 1 "." }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA
0 "" 0 "" {TEXT -1 157 "We turn now to May's discussion of multispecie
s interactions. He suggests an analog of the Lotka-Volterra competiti
on equations (his equations 5a and 5b). " }}}{EXCHG {PARA 0 "> " 0 "
" {MPLTEXT 1 0 216 "header:= `N(t) vs t when r= `:\nalpha:=0.5; beta:=
0.5; K1:=1000; K2:=1000; # competition parameters\nframes:= NULL: N1[0
] := 100; N2[0]:= 100; # initial conditions\nsample_r:= [1.1, 1.5, 2.5
, 4.0]; # sample r values" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1
0 44 "for r in sample_r do\nr1:= r: r2:=2 * r1:" }}{PARA 0 "> " 0
"" {MPLTEXT 1 0 340 " for i from 0 to 30 do\n #N1[i+1]:= (N1[i
] + ( r1 / K1 ) * N1[i] * ( K1 - N1[i] - alpha*N2[i] )):\n N1[i+1]
:= N1[i] * exp( ( r1 / K1 ) * ( K1 - N1[i] - alpha * N2[i] ) ):\n \+
#N2[i+1]:= (N2[i] + ( r2 / K2 ) * N2[i] * ( K2 - N2[i] - beta*N1[i] ))
;\n N2[i+1]:= N2[i] * exp( ( r2 / K2 ) * ( K2- N2[i] - beta * N1[1
] ) );\n od:" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 281 "P[r]:= plot([[
t,N1[t]] $t = 0 .. 30], style=line, color=plum, title=cat(header, conv
ert(r,string))):\nQ[r]:= plot([[t,N2[t]] $t = 0 .. 30], style=line, co
lor=green, title=cat(header, convert(r,string))):\nframes:= frames, di
splay([ P[r], Q[r] ]): # overlay both plots and make video" }}{PARA
0 "> " 0 "" {MPLTEXT 1 0 3 "od:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT
1 0 55 "display( [ frames ], insequence = true, axes = framed);" }}}
{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 ""
{TEXT -1 98 "\nCompare the graphs you just printed with Figure 2 in th
e May paper. Do you see similar dynamics?" }}}{EXCHG {PARA 0 "" 0 ""
{TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 711 "Let's now check his stab
ility conditions. May states (see equation 6) that the continuous ver
sion (differential equations version) of the Lotka-Volterra type syste
m given by equations 5a and 5b exhibits coexistence of the two species
with a stable equilibrium if and only if \n \+
D = a11*a22 - a21*a12 > 0. \nIn our equations, a11 = \+
a22 = 1 and a12 = a21 = 0.5. Therefore D = 1 - 0.25 = 0.75 > 0. (F
or the logistic version of the continuous model, you have already see \+
this analysis, though not in precisely these terms. Take a look at sec
tion 6.3 of E-K.) In the difference equation version of the competiti
on model, the stability criteria are given in equations 7:" }}{PARA
0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 81 " \+
A > D > 0 if A < 2 (7a)" }}
{PARA 0 "" 0 "" {TEXT -1 78 " A > D > (2A -4) \+
if A > 2 (7b)" }}{PARA 0 "" 0 "" {TEXT -1 0 "
" }}{PARA 0 "" 0 "" {TEXT -1 430 "where D is defined as above, N1* and
N2* are the equilibrium solutions of equations 5, and May defines \n
\n A = (a11 K2/(r2 N2*)) + (a22 K1/(r1 N1*)).\n
\nTry solving equations 5 for the equilibrium population sizes of N1 a
nd N2. Then try calculating A and see if the stability conditions in \+
equations 7 are accurate. Do you understand why it is enough to solve \+
the following equations to find the equilibria?\n" }}{PARA 0 "> " 0 "
" {MPLTEXT 1 0 56 "eq5a:= 0=(K1-N1 -alpha*N2); eq5b:= 0=(K2-N2 -beta
*N1);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 71 "parameters:= \{a11
= 1, a22 = 1, a12 = 0.5, a21 = 0.5, c1= r1, c2 = r2\};" }}}{EXCHG
{PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "answer:= solve(\{ eq5a, eq5b\}, \{N
1, N2\});" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 58 "N1equil:= subs
( answer, N1); N2equil:= subs( answer, N2);" }}}{EXCHG {PARA 0 "" 0 "
" {TEXT -1 116 "\nLet's calculate the values of A and D (we have to us
e little d, because Maple has reserved D for its own purposes)." }}
{PARA 0 "> " 0 "" {MPLTEXT 1 0 70 "A:=subs( parameters, a11*K2/(c2 * \+
N2equil) + a22*K1/(c1 * N1equil)); " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0
39 "d:=subs(parameters, a11*a22 - a21*a12);" }}}{EXCHG {PARA 0 "" 0 "
" {TEXT -1 344 "\nIt's plain that equation 7a is relevant since A < 2,
but the condition fails since A is obviously not greater than d, alth
ough we do have d > 0. Therefore, according to May, the species will c
oexist, but not in stable equilibrium. Does this make sense, knowing t
he value of r1 that you last used? We can remind ourselves what this \+
value was:\n" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "r1:= r1; r2:= r2;"
}}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 132 "\nTry other values for c1 and \+
c2 in the parameter set above, and see if there are conditions under w
hich the system should be stable." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}
{PARA 0 "" 0 "" {TEXT -1 439 "What do you think about the stability of
the difference equation competition model compared to the difference \+
equation single species growth model? Under what conditions on r do y
ou observe damped oscillations in the single species model? What is t
he range for the competition model? What about 2-point oscillations i
n the single species model versus the competition model? How differe
nt are the growth rates r over which this occurs?" }}{PARA 0 "" 0 ""
{TEXT -1 63 "\nMake yourself a table of behaviors analogous to May's T
able 1:" }}{PARA 0 "" 0 "" {TEXT -1 63 "\nBehavior \+
Value of \"r\"" }}{PARA 0 "" 0 "" {TEXT -1 80 " \+
Equation 1 E
quation 5" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1
76 "Stable equilibrium 2>r>0 \+
1.49?>r>0" }}{PARA 0 "" 0 "" {TEXT -1 76 "2-point cycle \+
2.526>r>2 ?" }}{PARA 0 "" 0 ""
{TEXT -1 73 "4-point cycle 2.656>r>2.526 \+
?" }}{PARA 0 "" 0 "" {TEXT -1 73 "8-point cycle \+
2.685>r>2.656 ?" }}{PARA 0 "" 0 "
" {TEXT -1 85 "Chaos r>2.692 \+
r>2.49?" }}}}{SECT 0 {PARA 269 "" 0 "" {TEXT
-1 32 "Section 3. Bifurcation analysis." }}{EXCHG {PARA 0 "" 0 ""
{TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 127 "We recall that May exami
nes the behavior of difference equation analogues of the logistic equa
tion. He looks at two equations:" }}{PARA 0 "" 0 "" {TEXT -1 47 " \+
1. N(t+1) = N(t) * exp[r * (1 - N(t)/K]" }}{PARA 0 "" 0 "" {TEXT
-1 50 " 2. N(t+1) = N(t) * [ 1 + r * (1 - N(t)/K)]" }}{PARA 0 "
" 0 "" {TEXT -1 691 "Both are non-linear equations, and both have a st
able equilibrium at N = K, when 2 > r > 0. In the long term the popul
ation N(t) exhibits cyclic behaviour, which becomes more pronounced a
s the value of the growth parameter r increases. The extremes of the o
scillations, known as stable points, recur periodically. Here we exami
ne the distribution of stable points as a function of the growth rate \+
parameter r. For the purpose of this exercise we will assume the syst
em becomes stable after 20 time steps, so the last 10 time steps will \+
be used to estimate the locations of the 'stable points'. This kind o
f plot is called a bifurcation plot (see discussion on p. 53 in Edelst
ein-Keshet)." }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 46 "number_of_steps:= 3
0; record_after_step:= 20;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0
42 "N[0]:= 10 ; K:= 1000 ; plot_list:= NULL:" }}}{EXCHG {PARA 0 "> \+
" 0 "" {MPLTEXT 1 0 239 "for r from 1.0 to 3.0 by 0.02 do\n for t f
rom 0 to number_of_steps do\n #N[t+1]:= N[t] + ( r / K ) * N[t] * (
K - N[t] ); # discrete logistic model\n N[t+1]:= N[t] * exp(r * \+
(1-N[t] / K)): # May's eq 1 (see E-K problem 4, page 62)" }{TEXT -1
3 " " }}{PARA 0 "" 0 "" {TEXT -1 111 "Save the \"stable points\" in
a data list called plot_list. Only use data from time steps 21 - 30
in each run." }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 300 " if t > rec
ord_after_step then\n plot_list:= plot_list, [r, N[t+1]]:# add (
r, N(t+1)) to the points to be plotted\n fi: # Maplese to indic
ate the if-then-else stuff is done\n od: # loop terminator for t (
r fixed) \nod: # loop terminator for r (go back and re-run with new r
value)" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 ""
{TEXT -1 102 "Plot the bifurcation diagram using the saved values of t
he stable points and corresponding r values. " }}{PARA 0 "> " 0 ""
{MPLTEXT 1 0 80 "plot( [ plot_list ], style = point, title=`May eq 1: \+
Bifurcation Map K vs r` );" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0
0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 303 "\nExamine once again May'
s discussion of multispecies interactions. He suggests an analog of t
he Lotka-Volterra competition equations (equations 5a and 5b). Note t
hat the competition is completely symmetric (K1 = K2, alpha = beta), e
xcept that the intrinsic growth rate for sp 2 is twice that of sp 1. \+
" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 161 "alpha:=0.5; beta:=0.5
; K1:=1000; K2:=1000; # competition parameter values\nN1[0]:= 100; \+
N2[0]:=100; # initial values \nplot_list1:= NULL: plot_list2:= NULL
:" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 46 "number_of_steps:= 30; record_
after_step:= 20;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 751 "for r \+
from 1.0 to 3.0 by 0.02 do\nr1:=r: r2:= 2 * r1:\n for t from 0 to
30 do\n #N1[t+1]:= (N1[t] + ( r1 / K1 ) * N1[t] * ( K1 - N1[t] - a
lpha*N2[t] )); # logistic-based model\n N1[t+1]:=N1[t] * exp((r1 / \+
K1) * (K1 - N1[t] -alpha * N2[t]));\n #N2[t+1]:= (N2[t] + ( r2 / K2
) * N2[t] * ( K2 - N2[t] - beta * N1[t] )); # logistic-based model\n \+
N2[t+1]:= N2[t] * exp((r2 / K2) * (K2 - N2[t] - beta * N1[t]));\n \+
if t > record_after_step then\n plot_list1:= plot_li
st1, [r, N1[t+1]]: # add (r, N1(t+1)) to list of points\n plot
_list2:= plot_list2, [r, N2[t+1]]: # add (r, N2(t+1)) to list of point
s\n fi;\n od: # loop terminator for t (r fixed)\nod: # lo
op terminator for r (go back and re-run with new r value)" }}}{EXCHG
{PARA 0 "> " 0 "" {MPLTEXT 1 0 86 "plot([ plot_list1 ], style = point,
title=`May competition Bifurcation Map N1 vs r` );" }}}{EXCHG {PARA
0 "> " 0 "" {MPLTEXT 1 0 86 "plot([ plot_list2 ], style = point, title
=`May competition Bifurcation Map N2 vs r` );" }}}{EXCHG {PARA 0 "" 0
"" {TEXT -1 267 "\nHow do you account for the difference in the last t
wo diagrams? You might want to try some other experiments: for instan
ce what happens if r1 = r = r2, but the competition is asymmetrical (t
ake alpha = 0.5, beta = 0.8, or perhaps try different carrying capacit
ies)?" }}{PARA 0 "" 0 "" {TEXT -1 536 "\nCompare the bifurcation diagr
am for a single species with one of the diagrams for a species that is
experiencing competition. Which system shows greater stability? Look
at the positions of the branch points. These are the values of the g
rowth rate \"r\" at which the population begins to oscillate between t
wo stable points. These locations are not exactly correct, because we
have sampled at time steps 20 - 30, before the damped oscillations ha
ve fully disappeared. Hence we are underestimating the positions of t
he branch points. " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 ""
{TEXT -1 584 "If you want better estimates of the branch points, chang
e the number_of_ steps to 60 (or higher) and change record_after_step \+
to 40 (for example) in both parts of the worksheet. This will take lo
nger to execute, but should give better estimates of the branch point
s, since the models damp out more fully after 40 time steps than afte
r 20. You can also change the stepsize for r from 0.2 to 0.1 (giving \+
finer resolution in the graphs, but calling for twice as much computat
ion). Do these results agree qualitatively with your simulations from
the first section of this worksheet?" }}{PARA 0 "" 0 "" {TEXT -1 0 "
" }}{PARA 0 "" 0 "" {TEXT -1 100 "Why do you think that the competitio
n model oscillates at lower values of r than the logistic model?" }}
{PARA 0 "" 0 "" {TEXT -1 192 "\nHow do the values of r in the competit
ion model compare with values for real organisms? Do you believe that
this kind of instability is likely to occur in real organisms? If so
, which ones?" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart:" }}}
{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}}{MARK "2 2 0 0" 22 }
{VIEWOPTS 1 1 0 1 1 1803 1 1 1 1 }{PAGENUMBERS 0 1 2 33 1 1 }