您好,欢迎访问三七文档
关于人口增长的探究一.摘要:人类社会自进入20世纪以来,随着科学技术和生产力飞速发展的同时,世界人口也以空前的规模增长。认识人口数量的变化规律,建立人口模型,作出较为准确的预报,是有效控制人口增长的前提。本次建模是依照已知普查数据,利用指数增长模型、Logistic模型,对世界人口增长进行预测、美国1790-1900年人口增长率的确定及检验。首先假设人口增长指数增长符合模型,即引入常数,用来表示自然环境条件下年增长率r保持不变。利用表给出美国1790-1900年人口数据将时间分为三个阶段,分别计算出增长率r1、r2、r3,并检验与实际数据的差别。但是长期来看,任何地方的人口都不可能无限增长,即指数增长不能预测较长时期的人口演变过程。一般来说,当人口较少时,增长较快,即增长率较大:人口增长到一定数量后,增长就会慢下来,即增长率变小。因此假定人口的增长服从规律:时刻t的人口为x(t),t到t+t时间段内人口的增长量与mx-x(t)成正比(其中为最大人口容量)。试建立模型并求解。作出解的图形并与指数增长模型、阻滞增长模型的结果进行比较。分析人口增长到一定数量后增长率下降的主要原因,自然资源、环境条件等因素对人口的增长起到阻滞作用,并且随着人口的增加,阻滞作用越来越大,即阻滞增长模型就是对指数增长模型的基本假设进行修改后得到的。关键词:人口预测、指数增长模型、阻滞增长模型、最大容量二.问题的提出:1.1650年世界人口为5亿,当时的年增长率为0.3%,用指数增长模型计算什么时候世界人口达到10亿(亿实际上1850年前已超过10)。1970年世界人口为36亿,年增长率为2.1%,用指数增长模型预测什么时候世界人口会翻一番(这个结果可信吗)。你对同样的模型得出的两个结果有何看法?2.美国790—1990年人口资料建立一个分段的指数增长模型。比如把时间分为3段,分别确定增长率,并进行检验。3.假定人口的增长服从这样的规律:时刻t的人口为x(t),t到t+t时间段内人口的增长量与mx-x(t)成正比(其中为最大人口容量)。试建立模型并求解。作出解的图形并与指数增长模型、阻滞增长模型的结果进行比较。三.问题的分析:由题意可知,目的就是为了建立一种模型,根据已有数据的拟合,确定人口增长的增长率,从而预测人口数量问题,进而达到有效控制人口数量的目的。问题一中,首先认识人口数量的变化规律,建立人口与增长率之间的关系,因而顺理成章的利用已有的指数增长模型,预测两个小问中达到的时间段并比较分析。而问题二,根据数据分析可将美国1790-1990年的人口资料分为三个时间段,即1790-1860年、1860-1940年、1940-1990年,增长率分别为r1、r2、r3,算出预测的数据并与实际数据比较,进行检验。问题三,有题意可设该比例系数为k,同时利用微积分中分离变量法求解设的函数表达式以及最大人口容量。最后,根据网上提供的知识,再结合已学的数学软件知识绘制出相应的模型曲线,对指数增长模型、阻滞增长模型的结果进行比较。四.建模过程1)问题一1.模型假设:在预测时,假设该增长符合指数增长模型:记今年人口为,k年后人口为0x,年增长率为r,则0(1)kkxxr2.定义符号说明:1kx——k1年后达到10亿2kx——k2年后世界人口翻一番即72亿1r——年增长率0.3%2r——年增长率=2.1%3.模型建立:记今年人口为,k年后人口为0x,年增长率为r,则0(1)kkxxr4.模型求解:根据步骤3的公式得1kx=1101(1)kkkxxr2202(1)kkkxxr其中,1kx=102kx=721r=0.3%2r=2.1%分别代入公式得:k1=231k2=342)问题二1.基本假设:根据所提出的问题分析可知基本假设如问题一的模型假设2.定义符号说明:x(t):时刻t的人口为x(t)dxdt:单位时间内x(t)的增长量r:人口增长率为常数r3.模型建立:根据数据分析可将美国1790-1990年的人口资料分为三个时间段,1790-1860年、1860-1940年、1940-1990年,增长率分别为r1、r2、r3,利用微积分,将x(t)视为连续、可微函数,记初始时刻(t=0)的人数为,假设一段时间内人口增长率为常数r,即单位时间内x(t)的增量等于r乘以x(t),于是得到x(t)满足微分方程:0,(0)dxrxxxdt0()rtxtxe根据数据分析可将美国1790-1990年的人口资料分为三个时间段,1790-1860年、1870-1940年、1950-1990年,增长率分别为r1、r2、r34.模型求解:结合数据和公式计算出r1=0.0296905r2=0.0158903r3=0.0121781表11790-1860年实际人口与预测人口年17901800181018201830184018501860实际人口/百万3.95.37.29.612.917.123.231.4预测人口百万4.05.47.29.813.118.024.332.2表21870-1940年实际人口与预测人口年18701880189019001910192019301940实际人口/百万38.650.262.976.092.0106.5123.2131.7预测人口/百万39.152.667.580.394.8110.4131.6140.3表31790-1860年实际人口与预测人口年19501960197019801990实际人口/百万150.7179.3204.0226.5251.4预测人口/百万156.4174.2202.7224.5268.73)问题三1.模型假设:假设人口的增长服从规律:时刻t的人口为x(t),t到t+t时间段内人口的增长量与mx-x(t)成正比(其中mx为最大人口容量)。2.定义符号说明:r---比例系数0x---最初的人口数量3.模型建立:当人口数量的增长服从以下规律:时刻t的人口为x(t),t到t+t时间段内人口的增长量与mx-x(t)成正比(其中为最大人口容量)()()()xttxtrxtt(1)0,(0)dxrtxxdt(2)其中,r为比例系数4.模型求解:从模型的建立(1)、(2)可解得0()()exp()mmxtxxxrt指数增长模型曲线:增量模型曲线:Logistic模型曲线:五、参考文献MATLAB程序设计与应用(第二版)六、问题的解决(1)第一小问的结果和实际人口的误差不大,比较吻合。第二问的结果与实际的误差较大,因为该模型的结果说明人口将以指数规律无限制的增长,实际上随着人口的增长,自然资源,环境条件等因素对人口增长有限制作用,则当年的人口增长率随着人口的增长而减小。(2)由002rtxxe,可得当r不变时,人口数量增长一倍的时间是一个定值:2Intr(3)图形比较:指数模型人口按几何级数增长,这个模型与现实不符合,因为人口的增长要受到自然条件等因素的约束。阻滞增长模型和增量模型,考虑了在大量的人口容量,当人口增长到一定程度时就会无限趋于人口最大容量,这与现实是符合的。阻滞增长模型和增量模型的区别是阻滞增长模型是用连续的方法讨论的,增量模型是直接用离散的方法讨论的。七、附录问题一的程序:symstf='10-5*exp(0.003*t)';solve(f,t);symstf='10-5*exp(0.021*t)';solve(f,t);增量模型的拟合代码t=1790:10:1990;y=[3.95.37.29.612.917.123.231.438.650.262.976.092.0106.5123.2131.7150.7179.3204.0226.5251.4];plot(t,y,'b*');%定义需要拟合的函数类型myfun(a,t),a是参数列表,t是变量myfun=@(a,t)-(@(a,t)-a(1))[exp(a(2)*t)];a0=[0.001,1];%初始值%非线性拟合.最重要的函数,第1个参数是以上定义的函数名,第2个参数是初值,第3、4个参数是已知数据点a=lsqcurvefit(myfun,a0,t,y);disp(['a='num2str(a)]);%显示得到的参数%画出拟合得到的函数的图形ti=1790:10:1860;yi=myfun(a,ti);holdon;plot(ti,yi,'r');%给图形加上图例xlabel('年份');ylabel('人口数');legend('原始数据','拟合函数',2);boxon;gridon;指数增长模型的拟合代码表1t=1790:10:1860;y=[3.95.37.29.612.917.123.231.4];plot(t,y,'b*');%定义需要拟合的函数类型myfun(a,t),a是参数列表,t是变量myfun=@(a,t)[exp(a(1)*t+a(2))];a0=[0.001,1];%初始值%非线性拟合.最重要的函数,第1个参数是以上定义的函数名,第2个参数是初值,第3、4个参数是已知数据点a=lsqcurvefit(myfun,a0,t,y);disp(['a='num2str(a)]);%显示得到的参数%画出拟合得到的函数的图形ti=1790:10:1860;yi=myfun(a,ti);holdon;plot(ti,yi,'r');%给图形加上图例xlabel('年份');ylabel('人口数');legend('原始数据','拟合函数',2);boxon;gridon;表2、表3同表1阻滞增长模型的拟合代码t=1790:10:1990;y=[3.95.37.29.612.917.123.231.438.650.262.976.092.0106.5123.2131.7150.7179.3204.0226.5251.4];plot(t,y,'b*');%定义需要拟合的函数类型myfun(a,t),a是参数列表,t是变量myfun=@(a,t)[a(1)./(1+(a(1)./13.2-1)*exp(a(2)*(t-1800)))];a0=[500,1];%初始值%非线性拟合.最重要的函数,第1个参数是以上定义的函数名,第2个参数是初值,第3、4个参数是已知数据点a=lsqcurvefit(myfun,a0,t,y);disp(['a='num2str(a)]);%显示得到的参数%画出拟合得到的函数的图形ti=1790:10:1990;yi=myfun(a,ti);holdon;plot(ti,yi,'r');%给图形加上图例xlabel('年份');ylabel('人口数');legend('原始数据','拟合函数',2);boxon;gridon;
本文标题:关于人口增长的探究
链接地址:https://www.777doc.com/doc-5869557 .html