阻滞增长模型求解_马尔萨斯与阻滞增长模型对于人口预测的分析
一、問題重述
1790-1980年間美國人口記錄表:
年份
1790
1800
1810
1820
1830
1840
1850
1860
1870
1880
人口(′106)
3.9
5.3
7.2
9.6
12.9
17.1
23.2
31.4
38.6
50.2
年份
1890
1900
1910
1920
1930
1940
1950
1960
1970
1980
人口(′106)
62.9
76.0
92.0
106.5
123.2
131.7
150.7
179.3
204.0
226.5
用以上數據建立馬爾薩斯(Malthus)人口指數增長模型。
二、問題假設
1.假設所給的數據真實可靠;
2.各個年齡段的性別比例大致保持不變;
3.人口變化不受外界大的因素的影響;
4.馬爾薩斯人口模型
(1)單位時間的人口增長率r為常數;
(2)將x(t)視為t的連續可微函數。
5.改進后的模型(阻滯增長模型)
(1)人口凈增長率r為變化量。
三、變量說明
X(t)? t時刻的人口數量
X1790? 1790年的的人口數量
r? 人口凈增長率
Xm? 環境所能容納的最大人口數量,即
四、模型建立
指數增長模型---馬爾薩斯模型
阻滯增長模型(Logistic模型)
五、模型求解
輸入數據
t=[1790:10:1980];
x=[3.9 5.3 7.2 9.6 12.9 17.1 23.2 31.4 38.6 50.2 62.9 76.0 92.0 106.5 123.2 131.7 150.7 179.3 204.0 226.5];
1.馬爾薩斯模型求解
在matlab里用應用程序中的Curve Fitting求參數,得:
圖1.馬爾薩斯人口模型
參數:
Coefficients (with 95% confidence bounds):
r =???? 0.02222? (0.02163, 0.02281)
預測:
每個十年,從1990—2030:
y1 =
331.9474? 414.5429? 517.6900? 646.5022? 807.3656
查閱相關年份美國實際人口數據,1990年為248.7百萬,2000年為281.4百萬,2010年為307.0百萬。可以看出馬爾薩斯模型預測人口與實際相差很大,而且到后來增長速度變快,主要原因是沒有抑制因素。
2.阻滯增長模型求解
在matlab里用應用程序中的Curve Fitting求參數,得:
圖2阻滯增長模型與實際人口數據
參數:
a =?????? 285.9? (257.4, 314.4)
r =???? 0.02858? (0.02763, 0.02953)
預測:
每個十年,從1990—2030:
y2 =
230.9171? 242.5109? 252.0186? 259.6683? 265.7291
改進后的模型與實際人口數據很接近。但依然有一定的誤差。
3.觀察兩種模型及原數據的圖像。
圖3.兩個模型與實際人口數據的對比
由圖可以看出,阻滯增長模型相比于馬爾薩斯模型與實際曲線擬合效果更好。
六、結果分析
1.馬爾薩斯模型為指數增長模型,符合人口增長特點,但忽視了資源有限等外部條件,在最初效果可以,預測時間越長,與實際偏離程度越大。
2. 阻滯增長模型在指數增長的基礎上添加了修正因子,使得模型包含自我抑制作用,考慮到了外部資源、環境容納量等現實因素,對于人口預測有比指數模型更好的意義。
七.實驗代碼
t=[1790:10:1980];
x=[3.9 5.3 7.2 9.6 12.9 17.1 23.2 31.4 38.6 50.2 62.9 76.0 92.0 106.5 123.2 131.7 150.7 179.3 204.0 226.5];
y1=3.9*exp(0.02222.*(t-1790));
y2=285.9./(1+72.31*exp(-0.02858.*(t-1790)));
plot(t,x,'r',t,y1,'b',t,y2,'g');
legend('實際值','馬爾薩斯模型','阻滯增長模型')
總結
以上是生活随笔為你收集整理的阻滞增长模型求解_马尔萨斯与阻滞增长模型对于人口预测的分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网关
- 下一篇: [leetcode]187. Repea