数学建模:人口增长模型
數(shù)學(xué)建模:人口增長(zhǎng)模型
模型目標(biāo):
通過給定的一組人口增長(zhǎng)數(shù)據(jù),預(yù)測(cè)后續(xù)的人口增長(zhǎng)情況.
一、指數(shù)增長(zhǎng)模型
假設(shè)增長(zhǎng)率不變:
若已知人口年增長(zhǎng)率為r,今年人口為 x0x_0x0?,預(yù)測(cè)k年后的人口可以用簡(jiǎn)單的公式得到:
xk=x0(1+r)kx_k = x_0(1+r)^kxk?=x0?(1+r)k
*以美國(guó)人口為例,數(shù)據(jù)點(diǎn)取下表:
用matlab輸入好數(shù)據(jù):
該公式得到的人口增長(zhǎng)模型如下圖(matlab作圖):
選取的增長(zhǎng)率0.2與實(shí)際的人口數(shù)據(jù)點(diǎn)貼合度差,于是進(jìn)一步建立模型,找到偏差更小的增長(zhǎng)率r
精確化增長(zhǎng)率r
把人口看作關(guān)于時(shí)間的可微函數(shù) x(t)x(t)x(t),記 x(0)=x0x(0) = x_0x(0)=x0?
rx0rx_0rx0? 即為單位時(shí)間 x(t)x(t)x(t) 的增長(zhǎng)量
所以得到微分方程:
dxdt=rx,x(0)=x0\frac{dx}{dt} = rx , x(0)=x_0dtdx?=rx,x(0)=x0?
解得:
x(t)=x0ertx(t) = x_0e^{rt}x(t)=x0?ert
上述公式即位指數(shù)增長(zhǎng)模型
數(shù)據(jù)擬合:
接下來(lái)對(duì)指數(shù)增長(zhǎng)模型的參數(shù)進(jìn)行估計(jì),即數(shù)據(jù)擬合
·法一
用人口數(shù)據(jù)和線性最小二乘法,對(duì)上式取對(duì)數(shù):
y=rt+a,y=lnx,a=lnx0y = rt +a , y=lnx,a=lnx_0y=rt+a,y=lnx,a=lnx0?
用matlab進(jìn)行編程擬合:
解得:
r=0.202,x0=e1.8=6.049r = 0.202,x_0 = e^{1.8} = 6.049r=0.202,x0?=e1.8=6.049
帶入得x(t)=6.049e0.0202tx(t) = 6.049 e^{0.0202t}x(t)=6.049e0.0202t
·法2
對(duì)人口數(shù)據(jù)做數(shù)值微分,計(jì)算平均值r‘,x0直接選用原始數(shù)據(jù).
函數(shù)在各點(diǎn)的近似導(dǎo)數(shù)值為(數(shù)值微分中點(diǎn)公式):
x′(tk)=xk+1?xk?12Δt,(k=1,2,3,...,n?1)x'(t_k) = \frac{x_{k+1}-x_{k-1}}{2\Delta t},\\\ \\(k=1,2,3,...,n-1)x′(tk?)=2Δtxk+1??xk?1??,?(k=1,2,3,...,n?1)
x′(0)=4x1?3x0?x22Δt,x′(n)=?4xn?1+3xn+xn?22Δtx'(0) = \frac{4x_1-3x_0-x_2}{2 \Delta t}, x'(n) = \frac{-4x_{n-1}+3x_{n}+x_{n-2}}{2 \Delta t}x′(0)=2Δt4x1??3x0??x2??,x′(n)=2Δt?4xn?1?+3xn?+xn?2??
那么增長(zhǎng)率為: r(tk)=x′(tk)x(tk)r(t_k)=\frac{x'(t_k)}{x(t_k)}r(tk?)=x(tk?)x′(tk?)?
*公式相關(guān)推導(dǎo)可參考數(shù)值計(jì)算方法 第六章 數(shù)值積分和數(shù)值微分
增長(zhǎng)率 rk=x′(tk)x(tk)r_k=\frac{x'(t_k)}{x(t_k)}rk?=x(tk?)x′(tk?)?再取平均值得到r = 0.0205
改進(jìn)的指數(shù)增長(zhǎng)模型
上述模型對(duì)于增長(zhǎng)率r不變的假設(shè)導(dǎo)致預(yù)測(cè)曲線與實(shí)際偏差較大
所以改進(jìn)模型中假設(shè) r 為 t 的函數(shù) r(t)r(t)r(t) , 根據(jù)上述法2的 x′(t)x'(t)x′(t) 畫r—t圖像:
根據(jù)散點(diǎn)圖假設(shè)r(t)=r0?r1tr(t)=r_0-r_1tr(t)=r0??r1?t的線性函數(shù),用最小二乘法線性擬合得到:
r0=0.03252,r1=0.0001143r_0 = 0.03252,\space r_1 = 0.0001143r0?=0.03252,?r1?=0.0001143
根據(jù)微分方程:
dx/dt=r(t)xdx/dt=r(t)xdx/dt=r(t)x
?x(t)=x0e(r0t?r1t2/2)\Rightarrow x(t) = x_0 e^{(r_0t-r_1t^2/2)}?x(t)=x0?e(r0?t?r1?t2/2)
把擬合后的參數(shù)帶入:
最終根據(jù)改進(jìn)模型預(yù)測(cè)的2010年人口為290million,與實(shí)際數(shù)據(jù)281.4吻合度較高.顯然改進(jìn)后的模型優(yōu)于前兩者.
二、logistic模型
改進(jìn)的指數(shù)增長(zhǎng)模型中增長(zhǎng)率線性下降,但沒有體現(xiàn)其下降的相關(guān)影響因素,只是以時(shí)間為變量.logistic模型考慮了自然資源,環(huán)境等對(duì)人口增長(zhǎng)的阻滯作用.
未完…
總結(jié)
以上是生活随笔為你收集整理的数学建模:人口增长模型的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 程序员考试范围(考试大纲)
- 下一篇: PreferenceScreen使用