首页 数学建模作业6指数增长模型和Logistic模型

数学建模作业6指数增长模型和Logistic模型

举报
开通vip

数学建模作业6指数增长模型和Logistic模型数学建模作业6指数增长模型和Logistic模型 佛山科学技术学院 上 机 报 告 课程名称 数学建模 上机项目 指数增长模型和Logistic模型 专业班级 姓 名 学 号 ________ 一、问题提出 人口问题是当前世界上人们最关心的问题之一。认识人口数量的变化规律,作出较准确的预报,是有效控制人口增长的前提。 要求:分别建立并求解两个最基本的人口模型,即:指数增长模型和Logistic模型,并利用表1给出的近两百年的人口统计数据,画出图形拟合数据,对模型做出检验,最后用它预报2000年的人口...

数学建模作业6指数增长模型和Logistic模型
数学建模作业6指数增长模型和Logistic模型 佛山科学技术学院 上 机 报 告 课程名称 数学建模 上机项目 指数增长模型和Logistic模型 专业班级 姓 名 学 号 ________ 一、问题提出 人口问题是当前世界上人们最关心的问题之一。认识人口数量的变化规律,作出较准确的预报,是有效控制人口增长的前提。 要求:分别建立并求解两个最基本的人口模型,即:指数增长模型和Logistic模型,并利用表1给出的近两百年的人口统计数据,画出图形拟合数据,对模型做出检验,最后用它预报2000年的人口。 表1 人口统计数据 1790 1800 1810 1820 1830 1840 1850 年(公元) 3.9 5.3 7.2 9.6 12.9 17.1 23.2 人口(百万) 1860 1870 1880 1890 1900 1910 1920 年(公元) 31.4 38.6 50.2 62.9 76.0 92.0 106.5 人口(百万) 1930 1940 1950 1960 1970 1980 1990 年(公元) 123.2 131.7 150.7 179.3 204.0 226.5 251.4 人口(百万) 模型一:指数增长(Malthus)模型: (1) 模型假设 k常用的计算公式:今年人口 x, 年增长率 r,k年后人口为 xxr,,(1)0k0 假设:人口增长率r是常数(或单位时间内人口的增长量与当时的人口成正比)。 符号说明: x xt()~t=0时的人口数,~时刻t的人口数 0 (2)模型建立 (显示模型函数的构造过程) tt,,由于量大,可看作连续、可微函数,到时间内人口的增量为 xt()t xttxt()(),,, ,rxt(),t 于是满足微分方程 xt() dx,,rx, (1) dt, ,xx(0),0, (3)模型求解 (显示模型的求解方法、步骤及运算程序、结果) 解微分方程(1)得 rt (2) xtxe(),0 当时,,即随着时间增加,人口按指数规律无限增长。 xtr()(0),,,t,, (4)模型的参数估计 要用模型的结果(2)式来预报人口,必须对常数r进行估计,可以用表1的数 据通过拟合得到。取,通过(2)式以及表中1790-1990的数据进行最小二x,3.90 乘法拟合得r=0.2169.程序如下: 模型求解:取初始值x(0)=3.9 Matlab程序: 建立M文件volum.m,如下: function y=volum(beta,t) y=3.9*exp(beta(1)*t); 再建立r1.m程序,如下: t=0:1:20; 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 251.4]; beta0=[0.01]; [beta,r,J]=nlinfit(t',x','volum',beta0); beta 结果为beta =0.2169 (5)模型检验 先建立M文件renkou.m,如下: function x=renkou(beta,t) x=3.9*exp(beta*t); 再建立程序zhishu.m,如下: t=0:1:20; 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 251.4]; beta0=0.01; beta=nlinfit(t',x','renkou',beta0) y=3.9*exp(beta*t); y plot(t,x,'*',t,y) error=abs(y-x) 结果为: beta = 0.2169 y = Columns 1 through 8 3.9000 4.8444 6.0176 7.4748 9.2849 11.5334 14.3264 17.7957 Columns 9 through 16 22.1051 27.4582 34.1075 42.3671 52.6268 65.3711 81.2015 100.8655 Columns 17 through 21 125.2914 155.6324 193.3208 240.1359 298.2879 error = Columns 1 through 8 0 0.4556 1.1824 2.1252 3.6151 5.5666 8.8736 13.6043 Columns 9 through 16 16.4949 22.7418 28.7925 33.6329 39.3732 41.1289 41.9985 30.8345 Columns 17 through 21 25.4086 23.6676 10.6792 13.6359 46.8879 图像如下: 根据拟合出的数据和原来数据填写表格,如下: 表2 实际人口与按指数增长模型计算的人口比较 年 实际人口 指数增长模型 (公元) (百万) 预测人口(百万) 误差 1790 3.9 3.9000 0 1800 5.3 4.8447 0.4553 1810 7.2 6.0181 1.1819 1820 9.6 7.4758 2.1242 1830 12.9 9.2866 3.6134 1840 17.1 11.5360 5.5640 1850 23.2 14.3303 8.8697 1860 31.4 17.8014 13.5986 1870 38.6 22.1132 16.4868 1880 50.2 27.4695 22.7305 1890 62.9 34.1232 28.7768 1900 76.0 42.3885 33.6115 1910 92.0 52.6558 39.3442 1920 106.5 65.4101 41.0899 1930 123.2 81.2537 41.9463 1940 131.7 100.9350 30.7650 1950 150.7 125.3834 25.3166 1960 179.3 155.7538 23.5462 1970 204.0 193.4805 10.5195 1980 226.5 240.3453 13.8453 1990 251.4 298.5617 47.1617 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 原因,该模型的结果说明人口将以指数规律无限增长。而事实上,随着人口的增加,自然资源、环境条件等因素对人口增长的限制作用越来越显著。如果当人口较少时人口的自然增长率可以看作常数的话,那么当人口增加到一定数量以后,这个增长率就要随着人口增加而减少。于是应该对指数增长模型关于人口净增长率是常数的假设进行修改。下面的模型是修改后的阻滞增长模型。 模型二:Logistic模型(阻滞增长模型) (1)模型假设 假设1:人口增长率r为人口xt()的函数rx()(减函数),即可假定rxrsxrs(),,0,,,(线性函数),r叫做固有增长率。 x 假设2:自然资源和环境条件能容纳的最大人口容量为 m (2)模型建立 r当时,增长率应为0,即,于是,代入,得: xx,rx()0,s,rxrsx(),,mmxm x (4) ()(1)rxr,,xm 将(3)式代入(1)式得: dxx,(1),,rx,dtx (5) ,m ,(0)xx,0, (3)模型求解 (显示模型的求解方法、步骤及运算程序、结果) 解(4)得 xm (6) (),xtx,rtm1(1),,ex0 dx~x 根据方程(4)作出曲线图,如图1所示,由图1看出人口增长率随人口dt 数的变化规律。根据结果(5)式作出的曲线图,如图2所示,由图2可看出人xt~口数随时间的变化规律。 dx/dt O x/2 mx x m dx~x 图1:阻滞增长模型曲线图 dt x xm x/2 m x 0 t 0 图2:阻滞增长模型曲线图 xt~ (4)模型的参数估计 r,0.2798通过表1中1790-1990年的数据对和进行拟合,得到,xrm 。程序如下: x,311.9555m 模型求解:取初始值x(0)=3.9 Matlab程序: 建立M文件volum1.m,如下: function y1=volum1(beta,t) y1=beta(1)./(1+((beta(1)./3.9)-1).*exp(-beta(2)*t)); 再建立程序rm.m,如下: t=0:1:20; 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 251.4]; beta0=[10 0.01]'; [beta,r,J]=nlinfit(t',x','volum1',beta0); beta 结果为beta = 311.9555 0.2798 (5)模型检验 t=0:1:20; 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 251.4]; y=(311.9555)./(1+((311.9555)./3.9-1).*exp(-0.2798*t)); y plot(t,x,'*',t,y,'r'); wucha=abs(x-y) y = Columns 1 through 8 3.9000 5.1384 6.7615 8.8824 11.6432 15.2189 19.8204 25.6927 Columns 9 through 16 33.1076 42.3459 53.6659 67.2571 83.1819 101.3160 121.3073 142.5731 Columns 17 through 21 164.3532 185.8106 206.1566 224.7610 241.2164 wucha = Columns 1 through 8 0 0.1616 0.4385 0.7176 1.2568 1.8811 3.3796 5.7073 Columns 9 through 16 5.4924 7.8541 9.2341 8.7429 8.8181 5.1840 1.8927 10.8731 Columns 17 through 21 13.6532 6.5106 2.1566 1.7390 10.1836 根据拟合出的数据和原来数据填写表格 表3 实际人口与按logistic增长模型计算的人口比较 年 实际人口 logistic模型 (公元) (百万) 预测人口(百万) 误差 1790 3.9 3.9000 0 1800 5.3 5.1384 0.1616 1810 7.2 6.7615 0.4385 1820 9.6 8.8824 0.7176 1830 12.9 11.6432 1.2568 1840 17.1 15.2189 1.8811 1850 23.2 19.8204 3.3796 1860 31.4 25.6927 5.7073 1870 38.6 33.1076 5.4924 1880 50.2 42.3459 7.8541 1890 62.9 53.6659 9.2341 1900 76.0 67.2571 8.7429 1910 92.0 83.1819 8.8181 1920 106.5 101.3160 5.1840 1930 123.2 121.3073 1.8927 1940 131.7 142.5731 10.8731 1950 150.7 164.3532 13.6532 1960 179.3 185.8106 6.5106 1970 204.0 206.1566 2.1566 1980 226.5 224.7610 1.7390 1990 251.4 241.2164 10.1836 根据对比可知,第二个模型更好,所以我们用第二个模型来预测。用拟合得出的 311.9555公式可以预测,即2000年的人口有x(2000)306.4791,xt,()311.9555,0.2798t,,e1(1)3.9 306.4791百万人。
本文档为【数学建模作业6指数增长模型和Logistic模型】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_266065
暂无简介~
格式:doc
大小:165KB
软件:Word
页数:12
分类:
上传时间:2017-10-15
浏览量:54