Logistic模型改进及山西人口预测
2013-11-21张荔
张 荔
(晋中师范高等专科学校 数学系,山西 晋中030600)
1 问题分析
认识人口数量的变化规律建立人口模型,做出较准确的预报,是有效控制人口增长的前提.二百多年前英国人口学家Malthus建立了著名的人口指数增长模型.该模型是建立在人口增长率不变的假设的基础上,但是人口增长到一定数量后由于受到自然资源、环境条件的影响增长率是会下降的,因此人们对Malthus模型作了改进,得到了Logistic模型.该模型对r(x)作了一个简单的假定,设r(x)为x的线性函数,即r(x)=r-sx(r>0,s>0)[1].
就我国现阶段而言由于实行计划生育,人口增长率已经很低,显然Logistic模型中r(x)为x的简单线性函数已很难准确预测未来人口.本文对r(x)与x的关系进一步改进,得到了一个新的模型,并对根据1990年到2010年山西人口的数据[2]对山西人口进行了预测.
2 模型假设
1)现有的计划生育政策不变.
2)不考虑人口负增长.
3)人口增长已达到一定的高度,增长率逐渐减小最终将趋于0.
3 模型建立
由假设3),r(x)应表示为e-x的函数,设r(x)=r(x0)ea-bx,r(x0)为人口总量为x0那一年的增长率.
因此改进后的模型为:
表1 山西人口统计表
4 模型求解
1)用线性最小二乘法对a,b进行参数估计.
对r(x)=r(x0)ea-bx两边取对数,可得
用表1的数据拟合(1)式(删去1996年异常数据),用EXCEL求解可得c=-0.000 43,d=4.784 341.
进一步求得a=10.231,b=0.000 43.
r(x0)为1991年的人口增长率,由1990年的人口可求得
基于山西人口数据拟合的参数,人口增长模型为
该方程不易求解.
2)将模型转化为差分方程x(T+1)-x(T)=r(x(T))x(T),T=0,1,2,3,…
则x(T+1)=x(T)+r(x(T))x(T),T=0,1,2,3,…用已知的数据进行递推可达到人口预测的目的.得到表2和图1.
表2 改进的模型拟合山西人口数据的结果
图1 改进的模型拟合图形(以1990年为起点)
可以看出这个模型拟合效果不错.
5 模型检验
以2010年为例,误差为0.5%.可以求得其他年误差更小(1996年除外).
可以用以上数据继续推出2020年山西人口约为4 010万,2030年山西人口约为4 298万,2040年山西人口约为4 571万,2050年山西人口约为4 828万.
6 模型评价
本模型适合现阶段我国计划生育前提下人口预报,误差较小.
但只适用人口增长率大于0的情形,如果人口出现负增长则应再次进行模型改进.
[1]姜启源,谢金星,叶 俊.数学模型[M].北京:高等教育出版社,2003:12-15
[2]中国统计局.2012中国统计年鉴[M].北京:中国统计出版社