MCPで接続 →

計算を入力してください

公式

Show calculation steps (1)
  1. Equilibrium Point

    Equilibrium Point: ロトカ・ヴォルテラ 捕食者-被食者モデル計算機

    Steady-state populations where the derivatives vanish.

広告

結果

Population at t = 100
0.87 被食者  /  9.95 捕食者
シミュレーション後の最終個体数
項目 被食者(x) 捕食者(y)
ピーク個体数 42.8 21.4
平衡点 10 5

ロトカ・ヴォルテラモデルとは?

ロトカ・ヴォルテラ方程式は、2種類の生物が「捕食者」と「被食者」として相互作用する生態系のダイナミクスを記述する、2本の1階非線形微分方程式です。1920年代にアルフレッド・ロトカとヴィト・ヴォルテラがそれぞれ独立に導き出したこのモデルは、個体数が周期的に増減する様子を見事にとらえています。すなわち、被食者が増える → 捕食者が餌に恵まれて増える → 被食者が激減する → 捕食者が飢えて減る、というサイクルが繰り返されるのです。

時間に対する被食者と捕食者の個体数の振動曲線、捕食者のピークが被食者より遅れる
捕食者(オレンジ)と被食者(緑)の個体数は時間とともに振動し、捕食者のピークは被食者のピークより遅れて現れます。

この計算機の使い方

被食者の初期個体数(\(x_0\))と捕食者の初期個体数(\(y_0\))、4つのレートパラメータ(\(\alpha\)=被食者の増加率、\(\beta\)=捕食率、\(\delta\)=被食者を食べることによる捕食者の増加率、\(\gamma\)=捕食者の死亡率)、時間刻み幅(\(dt\))、そして積分するステップ数を入力します。計算機は古典的な4次のルンゲ=クッタ法(RK4)でシステムを時間発展させ、最終的な個体数、各個体数が到達したピーク、そして解析的に求まる平衡点を表示します。

数式の解説

被食者の方程式 $$\frac{dx}{dt} = \alpha\,x - \beta\,x\,y$$ は、被食者が指数的に増える一方で、捕食者と出会うことで減少していくことを表します。捕食者の方程式 $$\frac{dy}{dt} = \delta\,x\,y - \gamma\,y$$ は、捕食者が狩りの成功によって増え、自然に死んでいくことを表します。ゼロでない平衡点は $$x^{*} = \frac{\gamma}{\delta} \qquad y^{*} = \frac{\alpha}{\beta}$$ にあり、この点では両方の微分がゼロとなって個体数は一定に保たれます。

中央に平衡点を持つ捕食者対被食者個体数の閉ループ位相図
捕食者(y軸)を被食者(x軸)に対してプロットすると、平衡点を囲む閉じたループが描かれます。

計算例

\(x_0 = 40\)、\(y_0 = 9\)、\(\alpha = 0.1\)、\(\beta = 0.02\)、\(\delta = 0.01\)、\(\gamma = 0.1\)、\(dt = 0.1\) で1000ステップ(\(t\) は100まで)計算すると、個体数は振動します。平衡点は被食者が $$x^{*} = \frac{0.1}{0.01} = 10$$ 捕食者が $$y^{*} = \frac{0.1}{0.02} = 5$$ で、サイクルはこの中心の周りを回るように描かれます。

よくある質問

どの積分法を使っていますか? 4次のルンゲ=クッタ法を採用しています。同じ刻み幅であれば、単純なオイラー法よりもはるかに高精度です。

個体数が発散したりゼロになったりするのはなぜ? 時間刻み幅が極端に大きかったり、レートが極端な値だったりすると、数値解が不安定になることがあります。\(dt\) を小さくすると、より滑らかで正確なサイクルが得られます。

平衡点から始めるとどうなりますか? \(x_0 = \gamma/\delta\) かつ \(y_0 = \alpha/\beta\) の場合、両方の微分がゼロになるため個体数は変化しません。これがシステムの固定点です。

最終更新: