《常微分方程》实验报告五.doc

《常微分方程》实验报告五 专业 信息与计算科学 班级 1     姓名    学号 实验地点 实验室  实验时间2015.12.3  实验名称:一阶微分方程应用:人口预测模型 实验目的: 1.了解微分方程在实际中的应用; 2.学会用简单的微分方程模型描述人口增长问题; 3.掌握Malthus模型和Logistic模型的应用。 实验内容: (1)Malthus模型 基本假设:人口的增长率为常数,记为。记时刻的人口为,(即为模型的状态变量)且初始时刻的人口为,得到微分方程: 求得解为 对它两端取对数,得 令,则上式可写为 年份 1949 1969 1982 1990 2000 人口(万 5.4167 8.0671 10.0817 11.3368 12.9533 lnx(t) 1.6895 2.0878 2.3107 2.4281 2.5614 t=[1 21 34 42 52]; y=[1.6895 2.0878 2.3107 2.4281 2.5614]; p=polyfit(t,y,1) t=1:1:100; f=exp(0.0172*t+1.699); plot(t,f) 结果:p = 0.0172 1.6993 解得 r=0.0172,m=1.6993 曲线方程为 (2)Logistic模型 假设人口的增长率为的减函数,如设,其中为固有增长率(很小时),为人口容量(资源、环境能容纳的最大数量),得到微分方程: 将看作一个整体变量y,作为的估计值, 估计出r和k 年份 1949 1969 1982 1990 人口(万) 5.4167 8.0671 10.0817 11.3368 0.024465 0.019210 0.015562 0.014259 t=[5.1467 8.0671 10.0817 11.3768]; y=[0.024465 0.019210 0.015562 0.014259]; p=polyfit(t,y,1) s=1:1:100; g=(19.3529*504167)./(5.4167+(19.3529-5.4167).*exp(-0.0329*s)); plot(s,g) 结果:p = -0.0017 0.0329 解得 =0.0329 ,=19.3529 曲线方程为 当=15时,最后求得。令=y,则有 年份 1949 1969 1982 1990 2000 人口(亿) 5.4167 8.0671 10.0817 11.3368 12.9533 0.5705 -0.1505 -0.7178 -1.1297 -1.8451 t=[1 21 34 42 52]; z=[0.5705 -0.1515 -0.7178 -1.1297 -1.8451]; p=polyfit(t,z,1) s=1:1:100; g=(15*504167)./(5.4167+(15-5.4167).*exp(-0.0422*s)); plot(s,g) 结果:p = 0.0422 0.7284 解得 =0.0422 =15 曲线方程为 Malthus模型和Logistic模型的共同优点是:(1)模型简单,都是一阶微分方程,其解析解易求得;(2)生物意义明确,参数少,只要有前面某一段的数据,就可以拟合参数,从而以后一阶段的人口规模进行预测。缺点:考虑因素比较简单,把个体都视为相同的,没有考虑年龄结构、性别比例等其他影响人口规模增长的因素,因此较为粗糙。尤其是Malthus模型,甚至没有考虑有限的资源对人口容纳量是有限的,从而得出了人口规模以几何级数增长的结论,按照这一结论,将会导致人口爆炸的错误结论。 实验分析:用matlab估计Logistic模型在未来的人口数量,相对于数据,曲线图更直观明了,通过求解一阶微分方程,可以对未来一阶段的人口规模进行预测。 实验总结:matlab这个软件的强大性超出了我们的想象,通过这次实验,我了解微分方程在实际中的应用,学会用简单的微分方程模型描述人口增长问题,并且掌握Malthus模型和Logistic模型的应用。

文档评论(0)

1亿VIP精品文档

相关文档