{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 }