Excel VBA 数学教室ではアフィリエイトプログラムを利用して商品を紹介しています。

ロジスティックモデル(人口増加曲線)

ロジスティック・モデル(Logistic Model)

一般的に都市や国などの限られた範囲において、人口が無制限に増加し続けることはありません。住める土地や食料供給量に限りがあるのですから、必ず上限があるはずです。ロジスティック・モデルは人口 $N(t)$ が増えるほどに、その増加の度合いは緩やかになると考えて、
 \[\mu\left( 1-\frac{N(t)}{k}\right)\]
という形で増加率を定めます ($t$ は時間)。$N(t)=k$ となれば増加率は 0 になるので、$k$ は人口の上限値を示すパラメータです。この増加率にその時刻における人口 $N(t)$ をかけると人口増加数となります。すなわち人口の時間変化は
 \[\frac{dN}{dt}=\left( 1-\frac{N(t)}{k}\right)N\tag{A}\]
という微分方程式で表されます。これをロジスティック方程式(logistic equation)とよびます。これは非常に単純化されたモデルであり、現実の人口変化がこの方程式の解と一致することはまずありえません。たとえばこのモデルでは人口が減少することなく上限に達するまで単調増加し続けますが、現実世界では様々な要因によって時系列のどこかで(現代の日本の人口推移にあるように)人口が減ってしまうことがあります。とはいえロジスティック・モデルを土台にして新たなパラメータを加えるなど細かな修正を行なえば、実際の人口動態に近づけることができます。

ロジスティック方程式の解

ロジスティック方程式は比較的簡単に解くことができます。(A) に $k$をかけて
 \[k\frac{dN}{dt}=\mu (k-N)N\]
変数分離すると
 \[\frac{k}{(k-N)N}dN=\mu dt\]
左辺の分数を分解して
 \[\left(\frac{1}{k-N}+\frac{1}{N}\right)=\mu dt\]
両辺を積分すると
 \[\log\,\left|\frac{N}{N-k}\right|=\mu t+c\]
$B=\pm e^c$ とおくと
 \[N=\frac{Bke^{\mu t}}{Be^{\mu t}-1}\]
さらに $A=-1/B$ とおくと
 \[N(t)=\frac{k}{1+Ae^{-\mu t}}\tag{A-1}\]
という解を得ることができます。$N(\infty)=k$ なので、$k$ が上限値(漸近線)となっていることがわかります。また、$t=0$ における値 $N(0)=k/(1+A)$ を用いると解は
 \[N(t)=\frac{kN(0)}{N(0)+(k-N(0))e^{-\mu t}}\tag{A-2}\]
と表すこともできます。この形は初期値と上限値がわかりやすいのが利点です。

【Excel】ロジスティック曲線のプロット

ロジスティック方程式の解 $N(t)$ はロジスティック曲線とよばれます。上限値と増加係数を $k=1,\:\mu=1$ に固定すると式 (A-2) は
 \[N(t)=\frac{N(0)}{N(0)+(1-N(0))e^{-t}}\tag{A-3}\]
となります。Excel でパラメータ $N(0)$ を動かしながらロジスティック曲線のグラフを描いてみると次のようになります。
 
Excelで書いたロジスティック曲線

エクセルや数学に関するコメントをお寄せください