Model Description
Here, a simple model of a subsistence economy based solely on the cultivation of maize and agave is presented. While maize is an annual plant that humans can eat and store, agave is a perennial plant that can be used for multiple purposes: as edible materials yielding caloric values and as fiber materials for producing items like clothing, ropes, and baskets.Ā
This model tries to capture the essence of a cultivation strategy of a portfolio of plants that have differing levels of sensitivity toward common environmental disturbances, e.g., droughts. Because adult agave is less sensitive toward droughts than maize and are perennial, the combined cultivation strategy can deliver the complementarity effect ā if the cropping of maize fails, societies can resort to consuming agave as the backup source of caloric values.
However, is agave cultivation alone sufficient for guaranteeing this complementarity effect? Can there be any 'hidden' biophysical geometry that determines whether or not the complementarity effect is actually realized?Ā This model illustrates that the cultivation of agave can complement the shortage of maize only when climatic conditions meet a certain pattern. It turns out that this condition is met when the average rainfall is at intermediate levels with modest variance (e.g., standard deviation of 20% from mean precipitation).Ā
Scenarios
In the model, annual rainfall (rhat) is a random variable. Stochasticity is added to the standard deviation of rainfall (signmar) to generate the randomness in annual rainfall. Annual rainfall in turn affects the annual maize and agave harvests. Here, we can test two scenarios: (scenario 1) the standard deviation of rainfall is low such that droughts don't occur often; and (scenario 2) the standard deviation of rainfall is high such that droughts occur more frequently.
To test scenario 1, lower the standard deviation of rainfallĀ (signmar) to around 0.2 and observe the dynamics of total maize stock and agave harvest (set the y-axis to total maize stock and then to agave harvests). The total maize stock (Mt) and agave harvest (AGt) will seldom fall down to zero levels (note: if they both fall down to zero levels simultaneously, it means that a famine has occurred).
To test scenario 2, try to increase the standard deviation of rainfallĀ (signmar) to around 0.9 and observe the dynamics of total maize stock and agave harvest. Most likely, the total maize stock (Mt) and agave harvest (AGt) will simultaneously reach zero levels frequently. In these instances, even if societies cultivate agave for insurance values, the complementarity effect doesn't happen and thus cannot prevent famine.
$\Large r_{t}=\widehat{r}(1+\sigma _{r}w_{t})$ |
Rainfall. This is a random variable following a stochastic process. |
$\Large \mbox {Defining} \ \ Y_{t}: \\
\Large \mbox {If} \ \ r_{t} > \overline{r}_{m} \ \ \rightarrow \ \ Y_{t}=Y_{max} \\
\Large \mbox {If} \ \ r_{t} < \underline{r}_{m} \ \ \rightarrow \ \ Y_{t}=0 \\
\Large \mbox {If} \ \ \underline{r}_{m} < r_{t} < \overline{r}_{m} \ \ \rightarrow \ \ Y_{t}=Y_{max}\times \frac{(r_{t}-\underline{r}_{m})}{(\overline{r}_{m}-\underline{r}_{m})}$ |
Annual yield of maize. The yield level is determined by rainfall. |
$\Large \mbox {Defining} \ \ x^{j}_{long_{t}}\ (j=1,2,3): \\
\Large \mbox {If} \ r_{t} < \underline{r}_{j} \ \ \rightarrow \ \ x^{j}_{long_{t}}=0 \\
\Large \mbox {If} \ r_{t} > \underline{r}_{j} \ \ \rightarrow \ \ x^{j}_{long_{t}}=\overline{s}_{j} \\
\Large \mbox {Defining} \ \ x^{j}_{long_{t}}\ (j=4,..,15): \\
\Large \mbox {If} \ r_{t} < \overline{r}_{a} \ \ \rightarrow \ \ x^{j}_{long_{t}}=\overline{s}_{a}*\frac{r_{t}}{\overline{r}_{a}} \\
\Large \mbox {If} \ r_{t} > \overline{r}_{a} \ \ \rightarrow \ \ x^{j}_{long_{t}}=\overline{s}_{a}$ |
Annual yield of agave variety that grows for 15 years. The yield level is determined by rainfall. |
$\Large \mbox {Defining} \ \ x^{j}_{short_{t}}\ (j=1,2): \\
\Large \mbox {If} \ r_{t} < \underline{r}_{j} \ \ \rightarrow \ \ x^{j}_{short_{t}}=0 \\
\Large \mbox {If} \ r_{t} > \underline{r}_{j} \ \ \rightarrow \ \ x^{j}_{short_{t}}=\overline{s}_{j} \\
\Large \mbox {Defining} \ \ x^{j}_{short_{t}}\ (j=2,..,7): \\
\Large \mbox {If} \ r_{t} < \overline{r}_{a} \ \ \rightarrow \ \ x^{j}_{short_{t}}=\overline{s}_{a}*\frac{r_{t}}{\overline{r}_{a}} \\
\Large \mbox {If} \ r_{t} > \overline{r}_{a} \ \ \rightarrow \ \ x^{j}_{short_{t}}=\overline{s}_{a}$ |
Annual yield of agave variety that grows for 7 years. The yield level is determined by rainfall. |
$\Large x^{j}_{long_{t+1}}=s_{j}(r_{t}, \underline{r}_{j}, \overline{s}_{j})x^{j-1}_{long_{t}} exp\left [ a(1-x^{j-1}_{long_{t}}) \right ] \ \ \ \ for \ \ j=1,2,3 \\
\Large x^{j}_{long_{t+1}}=s_{j}(r_{t}, \underline{r}_{a}, \overline{s}_{a})x^{j-1}_{long_{t}} exp\left [ a(1-x^{j-1}_{long_{t}}) \right ] \ \ \ \ for \ \ j=4,...,15$ |
Population dynamics of 15-year age agave variety in a unit area |
$\Large x^{j}_{short_{t+1}}=s_{j}(r_{t}, \underline{r}_{j}, \overline{s}_{j})x^{j-1}_{short_{t}} exp\left [ a(1-x^{j-1}_{short_{t}}) \right ] \ \ \ \ for \ \ j=1,2 \\
\Large x^{j}_{short_{t+1}}=s_{j}(r_{t}, \underline{r}_{a}, \overline{s}_{a})x^{j-1}_{short_{t}} exp\left [ a(1-x^{j-1}_{short_{t}}) \right ] \ \ \ \ for \ \ j=3,...,7$ |
Population dynamics of 7-year age agave variety in a unit area |
$\Large U_{t}^{maize}=\mbox{min} \left ( U_{d}, \ M_{t}+Y_{t}) \right )$ |
Amount of maize utilized in a year |
$\Large U_{t}^{total}=\mbox{min} \left ( U_{d}, \ U_{t}^{maize}+EatAgave*AG_{t}) \right )$ |
Amount of maize and agave utilized in a year. If people decide not to eat agave, this is the same as the amount of maize utilized alone. |
$\Large AG_{t}=A_{long}*x^{15}_{long_{t}}+A_{short}*x^{7}_{short_{t}}$ |
Annual yield of agave. Its value depends on the populations of last age classes of 15-year age and 7-year age agave varieties. |
$\Large M_{t+1}=(M_{t}+Y_{t})-U_{t}^{maize})(1-\delta _{c})$ |
Total stock of maize in a givenyear. |
#the discrete logistic par al=0.6,as=1,rsigma=0.2,rjt=30,area_s=10,area_l=10 par rat=30,sjmax=1,samax=1,rcth=100,rctl=50,yc=30,dc=0.2,xinitl=0.01 par xinits=0.01,Ud=20,Um=15,rmean=100,eatagave=1 wiener w rain=max(rmean*(1+rsigma*w),0) sa(x,xt,smax)=if(x<xt)then(smax*x/xt)else(smax) sj(x,xt,smax)=if(x<xt)then(0)else(smax) sc(x,xth,xtl,smax)=if(x<xth)then(if(x>xtl)then(smax*(x-xtl)/(xth-xtl))else(0))else(smax) flag(x,xmin,a,b)=if(x<xmin)then(a)else(b) mflag(x,a,b)=if(x>a)then(if(x<b)then(1)else(0))else(0) Uc=min(Ud,corn+yield) Ut=min(Ud,Uc+eatagave*(area_l*xlong15+area_s*xshort7)) rf(t+1)= rain xlong0(t+1)=xinitl xlong1(t+1)=sj(rain,rjt,sjmax)*xlong0*exp(al*(1-xlong0)) xlong2(t+1)=sj(rain,rjt,sjmax)*xlong1*exp(al*(1-xlong1)) xlong3(t+1)=sj(rain,rjt,sjmax)*xlong2*exp(al*(1-xlong2)) xlong4(t+1)=sa(rain,rat,samax)*xlong3*exp(al*(1-xlong3)) xlong5(t+1)=sa(rain,rat,samax)*xlong4*exp(al*(1-xlong4)) xlong6(t+1)=sa(rain,rat,samax)*xlong5*exp(al*(1-xlong5)) xlong7(t+1)=sa(rain,rat,samax)*xlong6*exp(al*(1-xlong6)) xlong8(t+1)=sa(rain,rat,samax)*xlong7*exp(al*(1-xlong7)) xlong9(t+1)=sa(rain,rat,samax)*xlong8*exp(al*(1-xlong8)) xlong10(t+1)=sa(rain,rat,samax)*xlong9*exp(al*(1-xlong9)) xlong11(t+1)=sa(rain,rat,samax)*xlong10*exp(al*(1-xlong10)) xlong12(t+1)=sa(rain,rat,samax)*xlong11*exp(al*(1-xlong11)) xlong13(t+1)=sa(rain,rat,samax)*xlong12*exp(al*(1-xlong12)) xlong14(t+1)=sa(rain,rat,samax)*xlong13*exp(al*(1-xlong13)) xlong15(t+1)=sa(rain,rat,samax)*xlong14*exp(al*(1-xlong14)) markerl(t+1)=112233 xshort0(t+1)=xinits xshort1(t+1)=sj(rain,rjt,sjmax)*xshort0*exp(as*(1-xshort0)) xshort2(t+1)=sj(rain,rjt,sjmax)*xshort1*exp(as*(1-xshort1)) xshort3(t+1)=sa(rain,rat,samax)*xshort2*exp(as*(1-xshort2)) xshort4(t+1)=sa(rain,rat,samax)*xshort3*exp(as*(1-xshort3)) xshort5(t+1)=sa(rain,rat,samax)*xshort4*exp(as*(1-xshort4)) xshort6(t+1)=sa(rain,rat,samax)*xshort5*exp(as*(1-xshort5)) xshort7(t+1)=sa(rain,rat,samax)*xshort6*exp(as*(1-xshort6)) markers(t+1)=112233 corn(t+1)=(yield+corn - Uc)*(1-dc) yield(t+1)=sc(rain,rcth,rctl,yc) AG(t+1)=eatagave*(area_l*xlong15+area_s*xshort7) crf2(t+1)=(crf2+flag(Ut,Um,1,0))*flag(Ut,Um,1,0) cre(t+1)=cre+flag(Ut,Um,1,0) cr1(t+1)=cr1+mflag(crf2,0,2) cr2(t+1)=cr2+mflag(crf2,1,3) cr3(t+1)=cr3+mflag(crf2,2,4) cr4(t+1)=cr4+mflag(crf2,3,5) cr5(t+1)=cr5+mflag(crf2,4,6) cr6(t+1)=cr6+mflag(crf2,5,7) cr7(t+1)=cr7+mflag(crf2,6,8) cr8(t+1)=cr8+mflag(crf2,7,9) cr9(t+1)=cr9+mflag(crf2,8,10) cr6over(t+1)=cr6+cr7+cr8+cr9 rmn(t+1)= rmean rsg(t+1)= rsigma #aux rainf=rain #aux sju=sj(rain,rjt,sjmax) #aux sad=sa(rain,rat,samax) aux corncal=Uc aux totcal=Ut aux fl=flag(Ut,Um,1,0) aux totagave2=10*xlong15+10*xshort7 aux totagave1=20*xlong15 #aux mflag1=mflag(crf2,0,2) #aux mflag2=mflag(crf2,1,3) #aux mflag3=mflag(crf2,2,4) init cr1=0, cr2=0, cr3=0, cr4=0, cr5=0, cr6=0, cr7=0, cr8=0, cr9=0 init xlong0=0.01000000,xlong1=0.01811219,xlong2=0.03264585,xlong3=0.05833080,xlong4=0.10263015,xlong5=0.17583634,xlong6=0.28831449,xlong7=0.44189098,xlong8=0.61765409,xlong9=0.77691901,xlong10=0.88818914,xlong11=0.94981879,xlong12=0.97885150,xlong13=0.99135137,xlong14=0.99650908,xlong15=0.99859852,xshort0=0.01000000,xshort1=0.02691235,xshort2=0.07121281,xshort3=0.18027076,xshort4=0.40919393,xshort5=0.73877639,xshort6=0.95931441,xshort7=0.99914956 @ ylo=0,yhi=1.1 @ xp=t,yp=x,bounds=1000000 # tell xpp that it is discrete and iterate 100 times @ meth=discrete,total=100 done
Yu JHD, Arizona State University.
Bozicevic M, Arizona State University.
Analyzing the Impact of Agave Cultivation on Famine Risk in Arid Pre-Hispanic Northern Mexico. Human Ecology. 36(3):409-422.
. 2008.