カオスゲームとは?ランダムなのに図形ができる理由
カオスゲームの手順
カオスゲームは、点を 1 つ動かし続けるだけでフラクタルを描く方法です。シェルピンスキーのギャスケットなら、紙と鉛筆とサイコロで試せます。
- 紙に大きな三角形の頂点 A・B・C を描く。
- 好きな位置に最初の点を打つ。
- サイコロを振り、1・2 なら A、3・4 なら B、5・6 なら C を選ぶ。
- 今の点と、選んだ頂点とのちょうど真ん中に新しい点を打つ。
- 新しい点を「今の点」にして、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 の決め方
写像を選ぶ確率 を変えても、できあがる図形の形は変わりません。変わるのは、点の濃さの分布だけです。ただし、確率の決め方が悪いと、点が一部に集まって薄い部分がなかなか描かれず、形がわかりにくくなります。
目安は、写像が図形の面積を何倍にするか()に比例させることです。大きなコピーを作る写像ほど多く選ぶことで、点の濃さが均一に近づきます。
- ギャスケットのように全ての写像が同じ大きさなら、確率も均等(各 1/3)で構いません。
- バーンズリーのシダでは、シダ全体をわずかに縮める写像を 85%、左右の葉を作る写像を 7% ずつ、茎を作る写像を 1% にしています。
- 茎の写像のように の写像は、面積比では確率 0 になってしまい、茎が描かれません。そこで最小値(1% 程度)を設けます。
シミュレーターの「確率 を面積比で自動設定」ボタンは、 に比例した確率を、最小 0.01 として設定します。シダで確率を「均等化」すると、点が茎や根元に集まり、上の方の葉にはほとんど点が届かなくなります(20 万点で試すと、上から 2 割の範囲に入る点は 0.1% 未満)。形は同じでも見え方が大きく変わるので、比べてみてください。
数学的な解説
カオスゲーム法が収束する理由(エルゴード性)
カオスゲーム法(ランダム反復)では、1 つの点から始めて、毎回写像 を確率 で選んで点を動かします。
どの写像も縮小写像なので、点とアトラクターとの距離は 1 回ごとに 倍以下に縮み、数十回でほぼアトラクター上に乗ります(最初の数十点は描かずに捨てます)。
その後の点の動きは、確率 で決まる「アトラクター上の点の分布(不変測度)」に従います。このように、1 本の点列を長く追うだけで分布全体を調べられる性質をエルゴード性と呼びます(Elton のエルゴード定理)。点を十分多く打てば、アトラクターのどの部分にもいずれ点が落ちるため、全体の形が浮かび上がります。確率 は形そのものを変えず、点の濃さの分布だけを変えます。
参考文献
- M. F. Barnsley, *Fractals Everywhere*, Academic Press, 1988.
- J. H. Elton, "An ergodic theorem for iterated maps", *Ergodic Theory and Dynamical Systems* 7 (1987), 481–488.
- H.-O. Peitgen, H. Jürgens, D. Saupe, *Chaos and Fractals: New Frontiers of Science*, Springer, 1992.