スタートページ> Web教材一覧> オペレーションズリサーチ
捕食-被食関係モデル、ロトカ・ヴォルテラの方程式(Lotka-Volterra equations)
被食者と捕食者の個体数の変化に関するモデルです。
被食者は、捕食者の個体数が増大すると、食べられる機会が増えるので、その個体数は減少します。
捕食者は、被食者の数が増大すると、食料が豊富になり増大しますが、捕食が多くなると食料不足で減少します。
アルフレッド・ロトカとヴィト・ヴォルテラは、その関係を次の方程式で表現しました。
dx/dt = ax - bxy
dy/dt = -cx + dxy
x:被食者の個体数
y:捕食者の個体数
xy:被食者と捕食者が遭遇する可能数
a:捕食者が存在しないときの被食者の増加率
av:捕食者が存在しないときの被食者増加数
b:捕食者に捕食される確率
bxy:捕食による被食者の減少数
a-by:被食者の増加率
c:被食者が存在しないときの捕食者の減少率
cv:被食者が存在しないときの捕食者の減少数
d:被食者を捕食する確率
dxy:捕食による捕食者の増加数
-c+dy:捕食者の増加率
注意
dx/dt = ax - bxy, dy/dt = -cx + dxy
を漸化式に変形すると、
x[t+dt] = x[t] + dx, y[t+dt] = y[t] + dy
で計算できます。
ここでは4次のルンゲ・クッタ法を用いているので、dx, dy は複雑な式になります。
a, b, c, d の値により、いろいろ変化しますが、x,y は同じ周期で x が先行する曲線になります。
標準ケースa b c d x0 y0 0 0.08 0.02 0.02 0.04 10 15 標準ケース 1 0.08 0.02 0.02 0.04 5 4 平衡ケース 2 0.1 0.1 0.1 0.1 2 2 3 0.20 0.05 0.10 0.05 10 5
| |
平衡点とは、時間 t によらず、x, y が変化せず安定している状態です。
dx/dt = 0 → x*(a - b*y) = 0
dy/dt = 0 → y*(-c + d*x) = 0
→ x = 0, y = 0 被食者も捕食者も存在しない
x = c/d, y = a/b
この平衡点の上下、左右で dx/dt, dy/dt の正負が分かれます。
上側では、 dx/dt < 0 になるので、時間が進むにつれ、x は減少、左側へ移動します。
左側にくると dy/dt < 0 になるので、y は減少、下側へ移動します。
このように、時間の経過に伴い、(x, y) は平衡点を中心に反時計回りに移動します。
右上領域; x > c/d, y > a/b → dx/dt<0、dy/dt>0 → dy/dx<0
捕食者が増大すると捕食される機会が多く被食者が減少する 左上がり
左上領域: x < c/d, y > a/b → dx/dt<0、dy/dt<0 → dy/dx>0
被食者が減少すると捕食者は食料が減るので減少する 左下がり
左下領域: x < c/d, y < a/b → dx/dt>0、dy/dt<0 → dy/dx<0
捕食者が減少すると捕食される機会が減るので被食者が増大する 右下がり
右下領域: x > c/d, y < a/b → dx/dt>0、dy/dx>0 → dy/dx>0
被食者が増大すると捕食者は食料が増えるので増大する 右上がり
dy/dx = (dy/dt)/(dx/dt) = x*(a-b*y)/y*(-c+d*x)
を積分すると、
F(x,y) = d*x - c*log(x) + b*y - a*log(y) + K ( K は積分定数)
になります。
K の値により、F(x,y) は 平衡点(c/d, a/b) を中心とした等高線になります。
この等高線が平衡点に近ければ、x,y の変化は小さく安定した状況になります。