カオスゲームとは?ランダムなのに図形ができる理由

カオスゲームの手順

カオスゲームは、点を 1 つ動かし続けるだけでフラクタルを描く方法です。シェルピンスキーのギャスケットなら、紙と鉛筆とサイコロで試せます。

  1. 紙に大きな三角形の頂点 A・B・C を描く。
  2. 好きな位置に最初の点を打つ。
  3. サイコロを振り、1・2 なら A、3・4 なら B、5・6 なら C を選ぶ。
  4. 今の点と、選んだ頂点とのちょうど真ん中に新しい点を打つ。
  5. 新しい点を「今の点」にして、3〜4 を繰り返す。

点を打つ位置はサイコロ次第で、でたらめに見えます。ところが数百点、数千点と続けると、ギャスケットの形がくっきり浮かび上がります。三角形の中央の穴には、最初の数点を除いて点が 1 つも入りません。

この方法は数学者マイケル・バーンズリーが広めたもので、著書『Fractals Everywhere』(1988年)でも扱われています。一般の反復関数系(IFS)では、ステップ 3〜4 を「写像 を確率 で選び、今の点に を当てはめる」に置き換えます。「真ん中に点を打つ」は、頂点に向かって距離を半分に縮める写像です。

シミュレーターのカオスゲームでは、この操作を最大 100 万回繰り返します。点の数を 1 万点から 100 万点に増やすと、形がどう現れるかを比べられます。

なぜ図形が現れるのか

理由は 2 段階に分けて考えるとわかります。

1. 点はすぐにギャスケットの上に乗る

「頂点との真ん中に移る」操作では、どの頂点を選んでも、点とギャスケットの距離が半分以下に縮みます。ギャスケットは 3 つの操作それぞれで自分自身の中へ移るからです。10 回繰り返せば距離は 以下になり、画面上ではもう区別できません。このため、シミュレーターでは最初の数十点を描かずに捨てています。

2. その後はギャスケット全体をまんべんなく動き回る

ギャスケットの上に乗った点は、その後もギャスケットの上を移動し続けます。では、ギャスケットのどの部分にも点が届くのでしょうか。

ギャスケットのどの小さな部分も、「A・B・C をある順番で選ぶ」ことで行き着ける場所として表せます。たとえば「C→A→B」の順に選ぶと、点は必ず決まった小さな三角形の中に入ります。サイコロを振り続ければ、どんな順番もいつかは必ず出てくるので、どの部分にもいつか点が落ちます。点を十分多く打てば、全体の形が浮かび上がるわけです。

このように、1 本の点の列を長く追うだけで図形全体(と点の分布)がわかる性質をエルゴード性と呼びます。反復関数系のカオスゲームについては、J. H. Elton が 1987 年にこの性質を証明しています。

確率 p の決め方

写像を選ぶ確率 を変えても、できあがる図形の形は変わりません。変わるのは、点の濃さの分布だけです。ただし、確率の決め方が悪いと、点が一部に集まって薄い部分がなかなか描かれず、形がわかりにくくなります。

目安は、写像が図形の面積を何倍にするか()に比例させることです。大きなコピーを作る写像ほど多く選ぶことで、点の濃さが均一に近づきます。

シミュレーターの「確率 を面積比で自動設定」ボタンは、 に比例した確率を、最小 0.01 として設定します。シダで確率を「均等化」すると、点が茎や根元に集まり、上の方の葉にはほとんど点が届かなくなります(20 万点で試すと、上から 2 割の範囲に入る点は 0.1% 未満)。形は同じでも見え方が大きく変わるので、比べてみてください。

数学的な解説

カオスゲーム法が収束する理由(エルゴード性)

カオスゲーム法(ランダム反復)では、1 つの点から始めて、毎回写像 を確率 で選んで点を動かします。

どの写像も縮小写像なので、点とアトラクターとの距離は 1 回ごとに 倍以下に縮み、数十回でほぼアトラクター上に乗ります(最初の数十点は描かずに捨てます)。

その後の点の動きは、確率 で決まる「アトラクター上の点の分布(不変測度)」に従います。このように、1 本の点列を長く追うだけで分布全体を調べられる性質をエルゴード性と呼びます(Elton のエルゴード定理)。点を十分多く打てば、アトラクターのどの部分にもいずれ点が落ちるため、全体の形が浮かび上がります。確率 は形そのものを変えず、点の濃さの分布だけを変えます。

参考文献

ほかの解説記事