检验马尔萨斯(Malthus)人口指数增长模型的编程

来源:百度知道 编辑:UC知道 时间:2024/06/17 00:56:08
1.数据拟合Malthus人口指数增长模型中参数
从1790—1980年间美国每隔10年的人口记录如下表:
年 份 1790 1800 1810 1820 1830 1840 1850
人口(×106) 3.9 5.3 7.2 9.6 12.9 17.1 23.2
年 份 1860 1870 1880 1890 1900 1910 1920
人口(×106) 31.4 38.6 50.2 62.9 76.0 92.0 106.5
年 份 1930 1940 1950 1960 1970 1980
人口(×106) 123.2 131.7 150.7 179.3 204.0 226.5
用以上数据检验马尔萨斯(Malthus)人口指数增长模型,根据检验结果进一步讨论马尔萨斯人口模型的改进。
提示:Malthus 模型的基本假设是:人口的增长率为常数,记为 r。记时刻t的人口为x(t),(即x(t)为模型的状态变量)且初始时刻的人口为x0,于是得到如下微分方程:dx/dt=rx
x(0)=x0

需要先求微分方程的解,再用数据拟合模型中的参数。
帮我编程,我看下,因为我根本不太懂

那个方程解出来是指数方程。2个参数。

线性回归拟合。。。

三组数据可以得到三组增长率,及误差。

看结果再说怎么改进啊。

数学模型
由dx/dt=rx
x(0)=x0
解得x(t)= x0*e^(rt)
lnx(t)=lnx0+rt => y=a+rt (y=lnx(t),a=lnx0)
用Matlab画出图形求出a,r就可得y=0.2142t+1.7213 , 所以lnx0=1.7213 => x0=5.5918
所以x(t)=5.5918*e^(0.2141t)

我也想知道 表示看不懂 呜呜😭