| Top Page |


確率的なふらつき(酔歩運動,個体数の増減)

JAVAで書いた習作シミュレータ

Updated on 28 February 2001-02-28

高校生の体験学習を担当する機会がありました. 生物の個体数が偶然に増えたり減ったりするうちにたまたま絶滅することもある, ということをシミュレーションで味わってもらうことにしました. そのためにJavaのにわか勉強をして,2つほどプログラムを書いてみました. ほんとににわか勉強なので,ごくごくつたないシミュレータですが, 一応載せてみました.

当然ですが,ブラウザの設定でJavaを有効にしておかないと動作しません.


道をあっちへふらふら,こっちへふらふら

狭い道をふらふらと歩いている,という状況です.右に揺れるか,左に 揺れるかは,一歩ごとにランダムに決めます.右に行く確率と左に行く 確率は同じなので,平均したら道のまん中に居られるはずですが, たまたま右が続いたり,左が続いたりすると,道から落っこちてしまいます. 道幅が狭いほど,道から落っこちやすくなります.

はじめに道幅を設定してから,準備ボタンを押します. それから「一歩」ずつ進んでみたり,「行けっ!」と号令を かけてみたりして試してください.

個体数の確率的な増減

生物の個体数の変動にも確率的な揺らぎがあります. 特に個体数が少ない集団の場合,この確率的な揺らぎのために 絶滅してしまう危険が大きくなります.

このシミュレーションでは,毎年,まず, 各個体が50%の確率で死亡します. 集団の半分が死亡するのではなく,各個体がそれぞれ50%の確率で 死亡するのだ,というところがポイントです.個体数分のコインを 投げて,ウラが出た数だけ死亡する,というイメージです.たまたま たくさんウラが出ることもあるでしょうし,オモテがたくさん出る こともあるでしょう.

続いて,各個体がコインを2枚投げて,オモテが出た数だけ子供を作ります. 平均して1個体の子供を作ることになりますが,これまた偶然にオモテ 2枚が出ることもあるでしょうし,2枚ともウラのこともあるでしょう.

毎年,平均すると死亡によって個体数が半分になったあと,繁殖によって 個体数が2倍になる,というプロセスを繰り返すので,平均したら 個体数の変化はないはずです.でも,偶然により個体数は増えたり減ったり します.たまたま個体数がゼロになったらそこで絶滅です.

最初の個体数を設定してから「準備」ボタンを押すと,初期個体数分の ●が表示されます.

あとは,「繁殖」「死亡」を続けるか,「行け!」ボタンで一気に 進めるかして,個体数のランダムな変動を見てみてください. 明るい●が生きてる個体,暗い●が死んだ個体をあらわします.

最後まで行ってからもう一度試すには,また「準備」ボタンを押します.

「死亡の変動」を設定すると,死亡率を年によって高くしたり低くしたり できます.たくさん死ぬ年の死亡率が,死ににくい年の何倍になるかを 設定します.ある年がどっちになるかはランダムに決まります.

変動の値が1.0なら毎年50%で変わらず,3.0なら,高い死亡率は低い死亡率 の3倍ということになります.ただし,平均したら50%になるようにしています.

さて,このような変動があると絶滅の確率はどのように変化するでしょう?


| Top Page |