見出し画像

【フラクタル解説】FNFE Project #18「relationSHIP」

謝罪

公開予定日より遅れてしまいマジで申し訳ございません。贖罪として次回は癒しとなる画像をおまけに掲載します。
あと#16に誤りがあることが分かりました。マジで申し訳ございません。贖罪としてそのうち特殊なニュートンフラクタルについての特集を組みます。

どうもこんにちは。FNFE Projectへようこそ!
FNFE Projectでは「FNFE=For New Fractal Enthusiast(新たなフラクタル愛好家のため)」という理念の上、フラクタルについて分かりやすく解説していきます。
フラクタルについて全く知らなかったり、記事を読んだだけではなにがなんだかという人も楽しめるので是非読んでみてください!

今回は「マンデルブロ集合の興味深い性質たち」についてやっていきます。

※マンデルブロ集合がわからない人はまず#7を読んでくるといいと思います。

§1: LxM

まずこれの解説からですね。

そもそもこの図が何を表しているのかの復習です。
下はマンデルブロ集合なのですが、上のやつはロジスティック写像の分岐図を表しています。
ロジスティック写像とは、以下のような漸化式です。
xₙ₊₁=axₙ(1-xₙ) ※0≦x₀≦1、0≦a≦4
この時、aを横軸に、xₙの吸引的な軌道が通る点を縦軸に取ったのが上の表というわけです。
よく分からないという人は#12を読むといいと思います。

で、この分岐図は、
・上下左右反転している
・範囲は1≦a≦4
という感じです。

このとき、ロジスティック写像においてa=1の点はマンデルブロ集合においてz₀=0.25の地点に対応し、a=4の点はz₀=-2の点に対応します。
しかしこれはどうもおかしな話であるかのように思えます。z²+cと-ax²+axが対応するとしたら、どうして定数と変数が対応するなんて状況になっているのでしょうか。
そもそも上の分岐図もなんか変です。通常の分岐図と重ね合わせてみるとこんな感じになります。

やはり、通常とは異なる事情があるようです。では何が起こっているのでしょうか。

実は、マンデルブロ集合の式のzₙとc、ロジスティック写像の式のxₙとaとは、このような対応があります。
$${z=a\bigg( \frac{1}{2}-xₙ \bigg),~~c=\frac{a}{2}\bigg( 1-\frac{a}{2} \bigg)}$$
ということでハイパー計算タイムです。これを計算して実際に対応するか確かめてみましょう。

衣替え?

(古堀函菜)ということで計算していくよ!!!

じゃあaとcがどういう感じで対応してるのかっていうことだけど、マンデルブロ集合のcはロジスティック写像の$${a=1+\sqrt{1-4c}}$$に対応してるんだ。
仕組みを解説していくね!
まず、z²+cにおいてc=0.25の場合にあたる、x²+0.25のグラフはこんな感じ。

A1とします。

一方、c=0.25に対応するa=1のロジスティック写像のクモの巣図法はこれ。

B1とします

次に、x²-2のグラフはこれ。

A2とします

a=4のロジスティック写像のクモの巣図法はこれ。

B2とします。

そう!座標や上下が違うだけで対応してるんだ!
A1, A2に対するB1, B2の座標の対応は、Aの最大の不動点pが(0, 0)に、-pが(1, 0)に対応してるって感じ。このpはx²+c=xの最大の根だから、

x²-x+c=0
$${x=\frac{-(-1)+\sqrt{(-1)^2-4×1×c}}{2×1}}$$
$${x=\frac{1+\sqrt{1-4c}}{2}}$$
$${p=\frac{1+\sqrt{1-4c}}{2}}$$だね。

ここで、φ(x)=$${\frac{1}{2}-\frac{x}{2p}}$$
φ⁻¹(x)=p-2px
g(x)=ax(1-x)
f(x)=x²+c
とすると、

$${g(x)=φ(f(φ^{-1}(x)))}$$
$${=\frac{1}{2}-\frac{(p-2px)^2+c}{2p}}$$
$${=\frac{1}{2}-\frac{(p^2+c)-4p^2x+4p^2x^2}{2p}}$$
$${=\frac{1}{2}(1-1+4px-4px^2)}$$
$${=2px(1-x)}$$
$${ax(1-x)=2px(1-x)}$$
$${a=2p}$$
$${a=1+\sqrt{1-4c}}$$
、、、ということになるんだね。
それにしてもこんな関係があるのはすごい意外だね。定数と変数が対応するのも素敵!!!!

これまでで一番可愛い画像できた

§2: JxM

ここからは珠莉亜ちゃんにバトンタッチ!!!ということで、続いてはマンデルブロ集合とジュリア集合の関係について紹介します。

ここで注意点をお話しします。前回も言ったのですが、流れに任せて解説してしまっていたのでもう一度改まって解説します。
私たちが#7や#13などで習ったジュリア集合の定義は、実は正確なものではありません。
こんな定義で習っていたと思います。

zₙ₊₁=f(zₙ,c)
z₀=k cを適当に決めた時、発散しないようなk全体の集合

#7とか#13とか

でもこれは正式な定義ではなく、ちゃんとした定義は以下のような感じです。

zₙ₊₁=f(zₙ,c)、z₀=cとしたとき、z₀の周囲の点が、z₀と似たような動きをする点の集合をファトゥ集合といい、その補集合をジュリア集合と呼ぶ。
また、zₙ₊₁=f(zₙ,c)、z₀=c が発散しないようなc全体の集合を充填ジュリア集合と呼ぶ。

例えば、f(z)=z²という関数を考えます。そうすると、zₙ₊₁=zₙ²、z₀=cという反復には3つの挙動が考えられることになります。
① 0に収束する
② 発散する
③ 1に収束する
z₀=0の場合は、0²=0で①に属します。また値を少しずらしてみて0.1とかにしても、同様に0に収束します。また、z₀=10とかの場合は値が発散していき、z₀をずらして9や10+iにしてみても発散します。
一方、z₀=iの場合はi, -1, 1という順番で1に収束しますが、0.1+iや1.1iや0.9iとか少し変えるだけでも一気に1に収束しなくなります。
このように、関数の反復で周囲の点と全く違う挙動をする点がジュリア集合というわけです。
今回はジュリア集合と充填ジュリア集合を峻別しますので頑張ってついてきてください。

まず、マンデルブロ集合のそれぞれの点は、特定のジュリア集合・充填ジュリア集合と対応しています。

マンデルブロ集合の0地点
充填ジュリア集合、k=0
マンデルブロ集合の-0.15+i地点
ジュリア集合、k=-0.15+i
マンデルブロ集合の-1.15+0.23i地点
充填ジュリア集合、k=-1.15+0.23i

こうなるのはマンデルブロ集合と充填ジュリア集合の定義を見れば大体わかりますね。

・マンデルブロ集合の定義
zₙ₊₁=zₙ²+c
z₀=0
が発散しないcの集合

・(マンデルブロ集合に対する)充填ジュリア集合の定義
zₙ₊₁=zₙ²+k
z₀=c
kを適当に決めた時、発散しないcの集合

こうして見るとマンデルブロ集合の各点cは、z²+cのジュリア集合の原点に対応していると分かります。
z²+kというジュリア集合において、原点が集合に含まれていればkはマンデルブロ集合に属し、含まれていなければ属さないという対応があります。
また、マンデルブロ集合内の点と対応する充填ジュリア集合は、必ず連結となっており、そうでない点に対応する充填ジュリア集合は収束領域を持たないという特徴があります。

なお、マンデルブロ集合以外のフラクタルではこの関係性が崩れることがあります。

バーニングシップフラクタルに対応する充填ジュリア集合
-0.65+0.1i
バーニングシップフラクタル -0.65+0.1i
バーニングシップフラクタルに対応する充填ジュリア集合
-1+0.01i
-1+0.01i周辺

ちなみに、マンデルブロ集合やバーニングシップフラクタル等の初期値z₀を0以外にすると、ジュリア集合との対応が崩れ、図形自体もなんかわけわかんないことになります。
これはz²+c, z₀=1としたものですが、明らかになんか変なのが分かると思います。

ええわ~~この機能
古堀リスペクトが凄い
目が不等号
UCS-ALL-EXTEを導入してから一だけフォントが違う

(才木珠莉亜)ここで一口メモ!マンデルブロ集合の初期値として適切な値の求め方について紹介していくよ!
ここでのマンデルブロ集合は発展的な定義の以下とするよ。

zₙ₊₁=f(zₙ,c)
zₙ=a(任意の複素数)
が発散しないようなcの集合

ジュリア集合の定義でf(zₙ,c)っていう関数が出てたと思うけど、これの微分係数f'(zₙ,c)が0になる点(臨界点)がz₀として適切なんだ。それ以外だとジュリア集合との対応が崩れてしまうんだよ。
例えばマンデルブロ集合の場合だとx²+cの臨界点は0だから、z₀=0が適切なんだね。
式によっては臨界点が複数個になる場合もあるけど、その場合は面白いことが起きるんだ。
z⁴-z²+cという式でマンデルブロ集合を考える。この式には臨界点が0と$${\frac{\sqrt{2}}{2}}$$との2つあって、どちらを選んでもいい感じにジュリア集合と対応するんだけど…

z₀=0
z₀≒0.707

この2つのマンデルブロが重なっている点では、対応するジュリア集合が初期値によって異なる挙動を見せる、ということがあるんだ!

どちらもk=0.6+0.6iのジュリア集合です

このことは次の章にも繋がっていくから大事だよ!

§3: Welcome to C.A.D.

ここからがマグマなんです!!!!!

というわけでマンデルブロ集合の分野で一番楽しい部門、軌道の解説に入ります。
軌道とはめちゃくちゃ適当に説明するとzₙがどんな変化をするのかということです。
§2でzₙ₊₁=zₙ²の挙動には3パターンあるとか色々話をしましたが、こういう挙動を追うのが軌道について調べるということです。難しい言い方をすると力学系、その中でも特に複素力学系ですね。

まずはちょっと簡単なところから入っていきましょう。マンデルブロ集合で、原点からの距離が2を超えると必ず発散することの証明を見ていきます。
※この証明は1993年4月23日にMike HurleyさんがUSENETに投稿したものを基にしています。


f(z)=z²+cという関数の0を初期値とした反復は、以下のように表現される。

0, c, c²+c, (c²+c)²+c…

ここで、これらをz₀, z₁, z₂, z₃…と呼ぶ。
複素数cの原点からの距離を|c|と表す。|z|>2かつ|z|>|c|が成り立つとき、$${\frac{|f(z)|}{|z|}>|z|-1>1}$$が成り立ち、|f(z)|>|z|からzₙが発散することが分かる。
この不等式を確立するには、
$${\frac{|z^2+c|}{|z|}}$$
三角不等式( |a+b|≦|a|+|b| )より、$${\frac{|z^2+c|}{|z|}\ge\frac{|z|^2-|c|}{|z|}}$$
$${\frac{|z|^2-|c|}{|z|}=|z|-\frac{|c|}{|z|}}$$
|z|>|c|から、$${|z|-\frac{|c|}{|z|}\gt z-1}$$
|z|>2から、|z|-1>1

|c|≦2かつ|zₙ|>2の場合、上の条件を満たすため、zₙは発散する。
|c|>2の場合、z₂=c²+cとなり、|c²+c| ≧ |c|²-|c| = |c|(|c|-1) > |c| > 2より、こちらも上の条件を満たし、zₙは発散する。


一見明らかな事でもそれを証明するって難しいんですね。尤も、中2の図形の証明でそれは散々突き付けられていたはずですがw

ほんじゃマンデルブロ・ジュリア集合の軌道について本格的にやっていきますか。
まず、軌道については基本的に3パターンあります。
1. 発散する
2. 特定の1つの値に収束する
3. 周期的な軌道に収束する
これらに分類できない変な挙動もありますが、基本はこの3パターンに分類されます。
3.のとき、zₙ=zₙ₊ₚという軌道に収束していく場合、その軌道の周期はpだという風に言います。
というわけで実際色々見てみましょう。

まずこれが1.の場合です。

次にこれが2です。

最後に、これが3の場合です。

これはzₙ=zₙ₊₅の形に収束していくので、この軌道の周期は5だといえます。
それぞれの初期値での周期を図に表すと、このようになります。

下半分が省かれているのは、実軸を対称に同じ性質を見せるからです。
なんかごちゃごちゃしててわかりにくいですが、z₀をどの値で取るのかによって挙動がめちゃくちゃ変わるということです。カオスですね。
ちなみにこれ面白い性質があって、ちょっと函菜ちゃん来てもらっていいですか。

前髪こそどした?

(僕)これをちょっと見比べてもらって?

全体
-1.765付近の拡大
-1.1付近の拡大

(古堀)う~~~ん。。。あっ!!大きい円盤に接してる円盤の周期は、大きい円盤の周期の倍数になるんだ!!
(才木)他にもあるよ~~~
(古堀)うわっ!?びっくりした!どこから来たの?
(才木)この辺!!

(古堀)あはは何そr…ああぁぁそういうこと!!!!
(僕)やっと気づいたか。。
(古堀)「飛び地」と本体の対応する部分の周期が、倍数となって対応してるんだ!!!
(僕)ほぼ正解。だけど実はマンデルブロ集合は全部繋がってるから正確には飛び地じゃないんだよ。
(古堀)!?!!?!???

特定の周期pを持つジュリア集合は、基本的にほぼ全てのz₀で周期がpになります。

z²+c, c=-0.1+0.75i

例えば、マンデルブロ集合においてc=-0.1+0.75iの時、周期は3になるので、ほぼ全ての点が周期3の軌道に吸引されます。吸引的な軌道、ってわけですね。
しかし充填ジュリア集合にはこれとは別に反発的・不安定な軌道も存在します。充填ジュリア集合の縁となる点を初期値に取ると、充填ジュリア集合の縁を通るようにして不規則に点が動きます。

また、z²-1というジュリア集合を考えてみましょう。これは基本的に0,-1,0,-1…というサイクルに入りますが、x=φで特殊な挙動をします。φ²-1=φなので、φやzₙ=φとなる一部の点だけが反発的な不動点へ収束します。
他にも反発的な周期点もあるようです。(私は見つけられませんでした)
20241027追記:あった。

z²-1.27 z₀≒0.221110255

なお、1つのジュリア集合につき1つの吸引的な軌道しかないのかといわれるとそんなことはなく、先ほども見たz⁴-z²+cなど複数の臨界点がある関数でのジュリア集合は吸引軌道が複数ある場合もあります。

3周期
4周期
z⁴-z²+c -0.595+0.235i それほど綺麗な値じゃないのが悔やまれる

で、先ほど言っていた分類できない変な挙動ってなんやねんって話ですが、それはもう色々あってですね…

まず初めに見るのがカオス的軌道を見せるものです。

バーニングシップフラクタル

これは主にバーニングシップフラクタルなど絶対値が入った関数で見ることが出来ます。

特定の範囲内を点が不規則に巡回していきます。しかしそれ以外特に言うことがありません。
この場合はジュリア集合も変な感じになります。

c=-0.8-0.4i

実はマンデルブロ集合にも隠れているのですが、やや地味なところに居ます。
そう。左にめっちゃ伸びているところです。

先ほど言った通り、虚部が0の時は$${a=1+\sqrt{1-4c}}$$のロジスティック写像との対応が生まれます。
その中には当然カオスな挙動をする部分もある(-2 > c > -1.4くらい)ので、結果として実軸の上を不規則的に巡回する軌道が出てきます。
楽しいですね。

続いては無限周期環状軌道 (名前がわからなかったので僕が適当につけた名前です。正式に名前がつけられているかは知りません。)です。
(20241016追記:リミットサイクルというらしいですがめんどくさいのでどっちでもいいです)
これは主にRe(z)やIm(z)、abs(z)などが出る関数に現れます。

z²+re(z)+0.18+0.32i

名前の通り、輪っかのような形を描いてその中を巡回していきます。
なぜカオス的軌道とこれとでこんなにはっきり形に違いが出るのかはよく分かりませんが、中間みたいな形のものもあったのでもしかすると一概には言えないのかもしれません。

バーニングシップフラクタルの充填ジュリア集合 0.04-0.63i

3つ目がジーゲル円板です。

z²+0.33+0.06i

無限周期環状軌道と似ていますが、特定の範囲内でz₀が直接円環に入り、初期値でどの値を通るかが変わるのが特徴です。

これと少し似ている概念としてMisiurewicz point(ミシュレヴィッツ点)というものがあります。
ミシュレヴィッツ点Mはc=Mとしたとき、以下のような条件を満たす点のことです。
・z₁が周期点の1つとなる
・z₀に戻ってこない
つまりこんな感じです。

ジーゲル円板もこのように直接に軌道に入りますが、あちらは無限周期なのが特徴となります。

最後に周期発散軌道です。(正式な名前があるかはわかりませんが、108Hassiumさんが使用していたのでそれに倣ってこう呼んでいます)
周期発散軌道は、n→∞→n→∞→n→∞→…というサイクルに収束するものです。
例えば、僕が以前「バーニングシップフラクタルのノイズ状の領域と似たような感じ」と誤って紹介した以下のニュートンフラクタルに登場します。

(x⁴-2)/(x³-1)

このノイズ状の領域で周期発散が見られます。
計算すると、0→∞→0→∞→0→∞→…というサイクルに近づいていくのがわかると思います。
他にもa→b→∞→a→b→∞→…という3周期のサイクルや、同じようにしてできる4周期のサイクルができることもあります。
このような挙動はあまり見られないため、zの大きさで発散判定を行わないニュートンフラクタルなどでは描画のバグの原因となることがあります。
私はこれに引っかかったので皆さんも気をつけてください。

多分変な挙動のバリエーションは探せば他にもあります。ぜひ特殊な挙動を見せる唯一無二のフラクタルたちをあなたも見つけていってください。(次回の伏線)

20241013追記

よく考えたらもう1種類ありました。

z²-Im(2z)+c

これはストレンジアトラクターです。無限周期環状軌道と似ていますが、絡まったイアホンみたいな形をしているのが特徴です。
ストレンジアトラクターは元々フラクタルとはちょっと違うカオス理論という分野のお話なのですが、まあ見て分かる通りフラクタルと密接な繋がりがあります。この辺りの話は卒倒するほど複雑なのでだいぶ最後の方にやります。
ちなみにこの形なんか見覚えが…と思った方がいるかもしれませんが、これ僕のアイコンですね。なんでここで伏線回収するの?

まとめ

いかがでしたか?今回はマンデルブロ集合の性質について色々やりました。
今回は証明などの頭を使う内容が多かったですね。久しぶりに8,000文字ほどとなりました。言い訳みたいになるのですが内容のボリュームがえげつなくてまとめるのに引くほど時間がかかってしまいました。
マンデルブロ集合とロジスティック写像・ジュリア集合が対応する原理や、マンデルブロ集合などの軌道についてを見ました。
力学系のお話は#12でやりましたが難しかったですかね。実数、複素数と来てそのうちカオス力学系が出てくるのでまあ頑張れって感じです。
軌道の話はめちゃくちゃ面白いので皆さんも是非色々調べてみてください。自分で知ってみるということが大事なのでね。
次回は休憩枠や!!!!!!よかったな!!!!
次回は「良いフラクタルを見つけるポイント」「フラクタルの探し方」についてやります。
で、これはとっても悲しいお知らせなのですが、受験勉強などで大分忙しくなってくるので、次回より更新頻度を10日に1回に下げようと思います。
まあ全35回のFNFE Projectの折り返し、今年度も折り返しと考えればちょうどいいじゃないですか。
次回は10月16日です。お楽しみに!

次回予告

次回のFNFE Projectは!!!
・いい視点ですね君、刺胞動物だった
・解説おねえさん、前髪がバーコード
・解説はてなくん、特技を披露
・古堀と才木、永遠の愛を誓う
・解説おにいさん、店選びさせられる
などを交えつつ良いフラクタルの見つけ方やフラクタルの探し方を紹介します。

参考にしたサイトなど

👆見習いたい、この画像の分かりやすさ。

👆いい視点ですね!!!

・hrkalonaさんによるフラクタルを描画するためのソフトウェア「Fractal Zoomer

余談

現在、途中から読み始めた人でも読みやすいように、あるいは用語の意味をすぐ確かめられるように、今まで出てきた用語集・キャラクター解説の制作を予定しています。
高校数学に出ないような言葉や、高校数学に出るけど難しいものを主に収録する予定です。お楽しみに!

conwaylife.comのフォーラムで、「2023年にライフゲーム以外のセル・オートマトンで見つかった最も素晴らしいパターン」を決める催し、OCADOTY 2023が開催されていますが、実はこのうち#6と#41は僕が「bibunsekibun」名義で発表したものです。
今はパスワードと登録したメアドを完全に忘却したので活動停止状態なのですが、多分父親のメアドで登録したのを思い出したので復帰できるかもしれません。


いいなと思ったら応援しよう!