• ベストアンサー

あるシミュレーションの内容が思い出せません。

以前何かで、ある種のコンピュータシミュレーションの話を聞いたことがあります。 まず、マス目に区切られた平面があって、各マスは点灯することができるとする。 そこで何かしらの確率的な条件を付けて各マスの点灯に法則付けすることで、疑似的に自然社会の生存競争(共存)をシミュレートすることができる。 のような内容です。 結果的に、集落が出現する、みたいな現象がみられる、という記憶もあるのですが、忘れてしまいました。 自分で実際にシミュレートできたら楽しいなあとも思っているのですが。 知っている方おられましたら、詳しいところをぜひ教えてください。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.3

> 自分で実際にシミュレートできたら楽しいなあ というだけのことであれば、自分で勝手に規則を考えて、実際にシミュレートなされば良い。  たとえば:  n行m列に並んだ升目を考えて、ただし、一番上の行は一番下の行につながってる。一番左の列は一番右の列につながっているということにする。(これはドーナツの表面(トーラス)と同じ位相を持つ空間です。)これが「今の状態」だと思うことにします。  これらの升目は場所を表す。各升目には「何もいない」か「オオカミが居る」か「ヒツジが居る」としましょうか。  で、オオカミとヒツジの行動のルールを定めます。  オオカミが居る升目の隣にヒツジが居る升目があるなら、オオカミは隣接するヒツジの居る升目のどれかに移動して、ヒツジを喰ってしまう。そして、ある確率で、オオカミが元居た升目にもう1匹オオカミが生まれる。  オオカミが居る升目の隣にヒツジが居る升目がないなら、ある確率でオオカミは餓死し、その升目は何もいない状態になる。餓死しない場合、オオカミが居る升目の隣に何もいない升目があるなら、ある確率でオオカミは隣接する何もいない升目のどれかに移動する。さもなくば、オオカミはその場にとどまる。  ヒツジが居る升目の隣に何もいない升目があるなら、ある確率で、隣接する何もいない升目のどれかにもう1匹ヒツジが生まれる。    てな感じでしょうかね。以上の設定に出てくるいくつかの確率の値を適当に決めておいて、最初にランダムにヒツジとオオカミをばらまき、シミュレーションをやってみる。確率を変えたり、ルールを変えたり、いろいろとお楽しみになれば宜しいかと。  ほかにも、森林火災(火は燃え広がるけれども、燃えるものがなくなれば消える。火が消えた跡には、しばらくするとまた木が生えてくる)ですとか、回遊する魚をサメが追いかけ回すだとか、いろんなことをイメージしたルールを考えて、試してみることができます。  ところで、セルラーオートマトンという数学分野(既に出ている回答にあるgame of lifeもセルラーオートマトンの一種です)では、升目の状態が刻々変わって行く、という点については上記のようなシステムと同じなのだけれども、ルールの作り方が全く違う。すなわち、単に、「ある升目(セル)が、それ自身の状態とその周囲にあるセルの状態に応じて、それ自身の状態を変える」という風に考える。確率は使わないし、個々のオオカミやヒツジというものも考えないんです。それでも、多くの升目がどんどんと千変万化する様子を眺めていると、あたかも「ある個体が移動して行ったり、増殖したり、死滅したりしている」ように見えちゃう。面白いものです。  2次元平面のセルラーオートマトンについて最も興味深い定理は、そもそもセルラーオートマトンというものの発案者であるフォン・ノイマン自身によるもので、一群のセルから成るパターンが、万能チューリングマシン(あらゆる計算ができるコンピュータ)になるようにできる、ということ、および、一群のセルから成るパターンが自己増殖する(つまり、自分の複製を作る。これは生命の最も重要な特徴!)ようにできる、ということ。で、のちにコンウェイが考えたgame of lifeでも、万能チューリングマシンと自己増殖のパターンが作れることが証明されています。

Fannerge87K
質問者

お礼

詳しいところまで、ありがとうございます! シミュレーションは自分でできそうです! 最後の定理は、やや理解に苦しんでいますが、また考えてみます。 ありがとうございました。

その他の回答 (2)

回答No.2

確率的な要素はありませんが「ライフゲーム」では? 私も昔何種類も作りました。 シンプルなロジックだからプログラミングの演習にちょうど良いです。

Fannerge87K
質問者

お礼

ありがとうございます。 楽しそうなので、自分でいろいろやってみます ^_^ ありがとうございました。

  • ggg_1983
  • ベストアンサー率47% (16/34)
回答No.1

ライフゲームのことでしょうか。フリーソフトもたくさん出てますよ。 http://ja.wikipedia.org/wiki/%E3%83%A9%E3%82%A4%E3%83%95%E3%82%B2%E3%83%BC%E3%83%A0 http://www.vector.co.jp/vpack/filearea/win/game/sim/life/

Fannerge87K
質問者

お礼

ありがとうございます! これでした! ありがとうございました m(._.)m

関連するQ&A