8
公開同人誌 「カオス」入門の入門 暗黒通信団 はじめに 「規則があるのに先が予測できない数値列」と言われたら、何 のことだと思うだろうか。「規則があるんなら先は分かるに決 まってる」と普通は思うだろう。あるいは「一般項の分からない ぜんかしき 漸化式」といってもいい。項を順に計算していけるなら、その範 囲で先は分かるのだが、一般項が分からないので、予測は立たな * 1 これはそんな「カオス」の入門の入門である。カオスは一般に 「混沌」と訳されて、しばしばゲームのモンスターになったりす る。しかし本稿でいうカオスは科学用語であり、正確には「決定 論的カオス (deterministic chaos)」という。カオスは数学と物 理とコンピュータ科学のあいだ辺りにまたがっている概念で、生 物学や地球科学の現象としても出てくる。要するにどこにでも 出てくるのだが、いまいち認知度が低い。世の中のどこを見て も、超絶難解な専門書か、ざっくばらんなトークみたいな本が多 いので、トークよりはちょっとだけ踏み込んだ同人誌を書くこと にした。もちろん正確な勉強をするには、まともな専門書を読む べきなのは言うまでもない。 なお、本稿は季刊誌「理科の探検」に 1 年にわたって連載した 記事が元になっている。連載が終わったので大幅加筆、再構成し て同人誌にすることにした。貴重な機会と許可をくれた左巻編 集長他に感謝したい。 1 世界で一番簡単なカオス カオスはただの混沌ではない。カオス時系列には生成するため の規則がある。しかしカオスの定義というのは実は結構面倒だ。 そしてなぜ面倒なのかを説明するのも面倒だ * 2 。だから先に実 例から入ってみるのが正しいと思う。 1 十倍シフト写像 知る限り世界で最も簡単なカオスは「シフト写像」という。ベル ヌーイという数学者の研究に始まるもので、もともとのシフト写 像は二進数の話だった。が、ここでは簡単のために十進数バー ジョンで話を進めよう。本質的には何も変わらない。 この「十倍シフト写像」は、何か小数を与えると、それを「10 倍して、整数部分を 0 にする」という(結構単純な)規則で書か れる。規則といったが、これをカオスの世界では数学っぽく「写 像」という。10 倍するというのは、小数の数字列が一つ左にシ フトすることなので「シフト写像」である。 例えば初期値 x0 に円周率をとってみる。円周率は無理数の 一種で 3.141592…と繰り返さずに無限に続く。これを 10 倍す ると 31.415926…となるが、整数部分を除くので次の値 x1 0.415926…になる。次はこれを 10 倍して 4.159265…の整数部 4 を取り除いて、0.159265…だ。つまり順に、3.141592, 0.415926, 0.159265…という数値の列ができる。 x 0 =3.14159265358979323846 ··· x 1 =0.41592653589793238463 ··· x 2 =0.15926535897932384626 ··· x 3 =0.59265358979323846264 ··· x 4 =0.92653589793238462643 ··· x 5 =0.26535897932384626434 ··· x 6 =0.65358979323846264338 ··· x 7 =0.53589793238462643383 ··· 円周率の小数点以下は繰り返さずに無限に続くので、こうしてで きた数値列も無限に繰り返さず続く。「規則はあるのに先の予測 ができない数値の列」…おぉ、カオスだ。初期値は円周率でなく ても、 2 3 でも、無理数であれば何でもよい。 「だけどそれは初期値が無理数だからじゃないか」と思うだろ う。シフト写像の数値列が予測できないのは、無理数の下の桁が 予測できないことの裏返しにすぎない。だから初期値が有理数 なら、有理数は循環小数になるのでカオスにはならない。 そうなのだが、実は数直線の上で有理数と無理数では無限倍く らい無理数が多いということが知られている * 3 。だから数直線 上から乱数によって初期値を適当にとってきたのなら、シフト写 像がつくる数値列はほぼカオスになるのだ。 2 初期値鋭敏性・位相推移性 シフト写像は単純だが、カオスの基本的な性質が凝縮されてい る。例えば円周率の小数点以下 11 桁めで四捨五入してしまった としよう。10 桁目が 5 ではなくて 6 になり、それ以下は 0 続く。3.14159265358…が 3.1415926536000…になるのだから、 数値としてみればたいした違いはない。しかし、シフト写像にか けると、恐ろしいことになる。たった 10 回シフトしたところで 5.8 6.0、つまり 0.2 の違いが現れ、それ以降はもうデタラ メだ。こういうふうに、最初の値が少しだけ違っていても、写像 が進むに連れて急速に違いが拡大していく性質を「初期値鋭敏 性」という。カオスの大事な性質だ。 シフト写像にはもう一つ大事なカオスの特徴が隠れている。 数値列が有限の範囲に収まっているということだ。(最初の無理 数を除けば)0 から 1 のあいだの数値しか出てこない。他のカ オスでも値が無限に大きくなっていったりはしない。しかしカ オスの数値列は繰り返さない(無理数に出てくる数字は決して 繰り返さないのだ)。その結果、直観的には、似た数字の列が何 * 1 といっても正確には「一般項が分からない漸化式」とカオスは違うので、これは結構近い概念だけど、一応ただの喩えだ。 * 2 そもそもカオスの定義自体が科学者の間で揺れていたりするのだ。 * 3 証明は対角線論法というものを使うが割愛。ネットで調べてくれ。 1

「カオス」入門の入門 - ankokudan.organkokudan.org/d/dl/pdf/pdf-chaos.pdfこの「十倍シフト写像」は、何か小数を与えると、それを「10 倍して、整数部分を0

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 「カオス」入門の入門 - ankokudan.organkokudan.org/d/dl/pdf/pdf-chaos.pdfこの「十倍シフト写像」は、何か小数を与えると、それを「10 倍して、整数部分を0

公開同人誌

「カオス」入門の入門暗黒通信団

■はじめに「規則があるのに先が予測できない数値列」と言われたら、何

のことだと思うだろうか。「規則があるんなら先は分かるに決

まってる」と普通は思うだろう。あるいは「一般項の分からない

 ぜんかしき

漸化式 」といってもいい。項を順に計算していけるなら、その範

囲で先は分かるのだが、一般項が分からないので、予測は立たな

い*1。

これはそんな「カオス」の入門の入門である。カオスは一般に

「混沌」と訳されて、しばしばゲームのモンスターになったりす

る。しかし本稿でいうカオスは科学用語であり、正確には「決定

論的カオス (deterministic chaos)」という。カオスは数学と物

理とコンピュータ科学のあいだ辺りにまたがっている概念で、生

物学や地球科学の現象としても出てくる。要するにどこにでも

出てくるのだが、いまいち認知度が低い。世の中のどこを見て

も、超絶難解な専門書か、ざっくばらんなトークみたいな本が多

いので、トークよりはちょっとだけ踏み込んだ同人誌を書くこと

にした。もちろん正確な勉強をするには、まともな専門書を読む

べきなのは言うまでもない。

なお、本稿は季刊誌「理科の探検」に 1年にわたって連載した

記事が元になっている。連載が終わったので大幅加筆、再構成し

て同人誌にすることにした。貴重な機会と許可をくれた左巻編

集長他に感謝したい。

●1 世界で一番簡単なカオスカオスはただの混沌ではない。カオス時系列には生成するため

の規則がある。しかしカオスの定義というのは実は結構面倒だ。

そしてなぜ面倒なのかを説明するのも面倒だ*2。だから先に実

例から入ってみるのが正しいと思う。

◆1 十倍シフト写像知る限り世界で最も簡単なカオスは「シフト写像」という。ベル

ヌーイという数学者の研究に始まるもので、もともとのシフト写

像は二進数の話だった。が、ここでは簡単のために十進数バー

ジョンで話を進めよう。本質的には何も変わらない。

この「十倍シフト写像」は、何か小数を与えると、それを「10

倍して、整数部分を 0にする」という(結構単純な)規則で書か

れる。規則といったが、これをカオスの世界では数学っぽく「写

像」という。10 倍するというのは、小数の数字列が一つ左にシ

フトすることなので「シフト写像」である。例えば初期値 x0 に円周率をとってみる。円周率は無理数の一種で 3.141592…と繰り返さずに無限に続く。これを 10 倍すると 31.415926…となるが、整数部分を除くので次の値 x1 は0.415926…になる。次はこれを 10 倍して 4.159265…の整数部分 4 を取り除いて、0.159265…だ。つまり順に、3.141592…,0.415926…, 0.159265…という数値の列ができる。

x0 = 3.14159265358979323846 · · ·x1 = 0.41592653589793238463 · · ·x2 = 0.15926535897932384626 · · ·x3 = 0.59265358979323846264 · · ·x4 = 0.92653589793238462643 · · ·x5 = 0.26535897932384626434 · · ·x6 = 0.65358979323846264338 · · ·x7 = 0.53589793238462643383 · · ·

円周率の小数点以下は繰り返さずに無限に続くので、こうしてで

きた数値列も無限に繰り返さず続く。「規則はあるのに先の予測

ができない数値の列」…おぉ、カオスだ。初期値は円周率でなく

ても、√2や

√3でも、無理数であれば何でもよい。

「だけどそれは初期値が無理数だからじゃないか」と思うだろ

う。シフト写像の数値列が予測できないのは、無理数の下の桁が

予測できないことの裏返しにすぎない。だから初期値が有理数

なら、有理数は循環小数になるのでカオスにはならない。

そうなのだが、実は数直線の上で有理数と無理数では無限倍く

らい無理数が多いということが知られている*3。だから数直線

上から乱数によって初期値を適当にとってきたのなら、シフト写

像がつくる数値列はほぼカオスになるのだ。

◆2 初期値鋭敏性・位相推移性シフト写像は単純だが、カオスの基本的な性質が凝縮されてい

る。例えば円周率の小数点以下 11桁めで四捨五入してしまった

としよう。10 桁目が 5 ではなくて 6 になり、それ以下は 0 が

続く。3.14159265358…が 3.1415926536000…になるのだから、

数値としてみればたいした違いはない。しかし、シフト写像にか

けると、恐ろしいことになる。たった 10回シフトしたところで

約 5.8と 6.0、つまり 0.2の違いが現れ、それ以降はもうデタラ

メだ。こういうふうに、最初の値が少しだけ違っていても、写像

が進むに連れて急速に違いが拡大していく性質を「初期値鋭敏

性」という。カオスの大事な性質だ。

シフト写像にはもう一つ大事なカオスの特徴が隠れている。

数値列が有限の範囲に収まっているということだ。(最初の無理

数を除けば)0 から 1 のあいだの数値しか出てこない。他のカ

オスでも値が無限に大きくなっていったりはしない。しかしカ

オスの数値列は繰り返さない(無理数に出てくる数字は決して

繰り返さないのだ)。その結果、直観的には、似た数字の列が何

*1 といっても正確には「一般項が分からない漸化式」とカオスは違うので、これは結構近い概念だけど、一応ただの喩えだ。*2 そもそもカオスの定義自体が科学者の間で揺れていたりするのだ。*3 証明は対角線論法というものを使うが割愛。ネットで調べてくれ。

1

Page 2: 「カオス」入門の入門 - ankokudan.organkokudan.org/d/dl/pdf/pdf-chaos.pdfこの「十倍シフト写像」は、何か小数を与えると、それを「10 倍して、整数部分を0

度も出てくることになる。これを格好良く「位相推移性」とい

う*4*5。数値が有限の範囲に収まってるにどうして繰り返しがな

いのか、というのは当然の疑問だ。それはフラクタルというもの

に関係している。あとで出てくる。

本当はもっと色々な性質が潜んでいるのだが、今はこれくらい

にしておこう。

◆3 コンピュータとカオスシフト写像は実はコンピュータと深い関係がある。コンピュー

タというものは、パソコンでもスマホでもゲーム機でも、みな

CPU(計算する部分)とメモリ(記憶する部分)というものを

中心に構成されている。CPUとメモリの関係はすごろくの駒と

盤面の関係に似ている。ただしサイコロはない。駒 (CPU)が盤

面 (メモリ) のある位置にあるとすると、駒 (CPU) は足下の盤

面 (メモリ) に書かれた数値を読み出し何か計算をする。その計

算結果によって駒 (CPU) は盤面 (メモリ) の上を進んだり戻っ

たり、飛び跳ねたり、盤面 (メモリ) に新しい数値を書き込んだ

りする。コンピュータが計算するというのは、無限に長い一直線

の盤面の上で、この作業をものすごい数繰り返していることを意

味する。そして駒 (CPU)がある決まった位置に到着したら、す

ごろくがアガリ=プログラムが終了することになる。こうしたモ

デルはコンピュータの生みの親の一人チューリングが作ったの

で「チューリングマシン」と呼ばれている。

さて、ある小数を一直線に書き出して盤面に見立て、小数点を

「駒」と見立ててみよう。整数の部分には無限にたくさん 0を並

べておく。するとシフト写像は、駒が盤面を左から右に向かって

ひたすら走っているようなプログラムに対応する。なぜなら 10

倍するというのは小数点を一つ右に移動することだからだ。そ

こで現実のプログラムに近づけて、駒が右だけではなく左にも移

動できるようなシフト写像を考えることができる。つまり、駒は

単にいつも右に進むのではなくて、足下の盤面に書かれた数値

によって、右に進んだり左に進んだりする。これは(ムーアの)

「一般化シフト写像」と呼ばれる。一般化シフト写像がつくる数

値列も多くの場合カオスになる。

チューリングはそもそもこのモデルを一つの問題を考えるた

めに作り出した。「駒 (CPU) が特定の位置にくるかどうか(つ

まりプログラムが無事に終了するかどうか)を判定するような

プログラムはあるか?」という問題で、停止性問題といわれる。

チューリングは、論理を駆使して「そんなプログラムはない」と

いうことを証明した。これは数学では「ゲーデルの不完全性定

理」という大定理に対応する。停止性問題が言わんとすることは

「駒 (CPU)が盤面 (メモリ)のどの位置に来るかは、その位置に

くるまで実際にプログラムを走らせるしかない」ということであ

り、これをカオスの世界のことばに訳せば「カオスの数値列の中

にある数値が出てくるかどうかは、実際にその数値になるまで写

像を繰り返し計算するしかない」となる。つまり、暴走しないお

よそほとんどのプログラムは、実はカオスの写像で、コンピュー

タが計算するということはカオスの写像を計算しているに過ぎ

ないのだ。パソコンのソフトもスマホのアプリも、実はみんなカ

オスを計算している。すばらしい。

◆4 ディオファンタス方程式だが話はここで終わらない。もっと深淵なのだ。ディオファン

タス方程式というのは、整係数多変数高次不定方程式である。要

するに整数係数の連立方程式なのだが、方程式の数が足りないた

め解が一意に決まらないようなものである。古くは古代アレク

サンドリアの数学者ディオファントスの著作『算術』に出てくる

概念だが、これが有名になったのはヒルベルトの第 10問題が大

きい。それは、「ディオファントス方程式の一般的で有限的な可

解性判定方法をもとめよ」という問題で、現在ではロシアの数学

者ユーリ・マチャセビッチによって否定的に解決されている。

マチャセビッチという人は、この研究の副産物として、帰納的

可算集合の要素を整数解とするディオファントス方程式が、必ず

存在することを証明した。つまり、ある性質の整数を枚挙するア

ルゴリズムが存在するなら、それは何かの不定法定式の解集合に

なっているということだ。実際に素数を求める 19変数多項式が

知られていたりする。

さて、どうしてそんな話がいきなり出てきたかというと、停

止性問題の非可解性はディオファンタス方程式に関する命題に

コードできるという関係性があるからだ。つまり、停止性問題に

関する命題を整数不定方程式に対応づける方法が存在する、とい

うことは、あるカオスが、ある不定方程式に対応しているかもし

れない、ということだ。不定方程式についてもカオスについて

も、様々な特殊事例と分類法が研究されているが、それらが対応

するならば、極めて新しいパラダイムが拓けるというものだ。

定理証明言語に Haskell というのがある。この言語で書かれ

たあるプログラムを実行することは、ある数学的な証明を実行す

ることに対応する*6。停止性問題とはつまりプログラムの実行

が有限ステップで終了するかどうかということなのだが、停止性

問題とあるカオスが対応するなら、カオスと、ある定理証明言語

のプログラムが対応するということになる。ある数学的な定理

がある力学系に対応しているのなら、力学系を記述する空間と数

学的な定理が構成する空間に対応が存在するということである。

いわば、証明幾何学のようなものが作れるということだ。

*4 もう少しだけ正確に言えば「点は時間経過とともにアトラクタ内の任意の点に近づく」となる。アトラクタって何だ?それはあとで書く。*5 初期値鋭敏性と位相推移性に加えて「周期軌道稠密性」を加えたものをカオスだという定義がある。Devaneyによって提唱された。*6 興味ある人はラムダ計算とかで検索してみると良い。

2

Page 3: 「カオス」入門の入門 - ankokudan.organkokudan.org/d/dl/pdf/pdf-chaos.pdfこの「十倍シフト写像」は、何か小数を与えると、それを「10 倍して、整数部分を0

さらに、ここでプログラムという点から論理の循環が見えてく

る。カオスはある初期値とある漸化式(アルゴリズム)によって

作られる数列なのであるが、それが回りまわって、ある定理証明

言語のプログラムが対応するというのなら、これはカオスを生成

するプログラムと、カオス自体が対応するプログラムが対応する

ということを意味するのである。一つのアクロバットなプログ

ラム変換の可能性が拓けるのだ。

●2 世界で二番目に簡単なカオス

◆1 ロジスティック写像再び先ほどの質問が出てくる。「シフト写像がカオスなのは初期

値が無理数だからじゃないか」、裏を返せば「カオスとは無理数

であるということに強く依存したシステムなのか」という疑問

だ。ある意味ではそうなのだが、ここで問われてるレベルでいう

ならば「そんなことはない」と言える。次の写像を見てみよう。

ロジスティック写像といわれていて、たぶん世界で二番目に簡単

なカオスである。メイという人が個体数の増減から作った式だ。

xn+1 = axn(1− xn)

数学は苦手だという人のために日本語訳すると「何か数値があっ

たら、それを 1から引いたものに、元の数値と aを掛けると、次

の数値が出る」である。その、出てきた次の数値をまた「1から

引いたものと、その数値と aを掛けて」次の数値を出す。これを

延々と繰り返すわけだ。高校ではこういう式の形を「 ぜんかしき

漸化式 」と

して習う。aに 3.8を入れて、初期値 x0 を 0.1にして実際にやってみよう。3.8も 0.1もどちらも無理数ではないにもかかわらず、こうして作られる数値列はひどく複雑になる。

x0 = 0.1x1 = 3.8 · 0.1(1− 0.1) = 0.342x2 = 3.8 · 0.342(1− 0.342) = 0.855136 · · ·x3 = 3.8 · 0.855136(1− 0.855136) = 0.470736 · · ·x4 = 3.8 · 0.470736(1− 0.470736) = 0.946746 · · ·x5 = · · · · · · · · · · · · · · · · · · · · · · · · · · · = 0.191589 · · ·x6 = · · · · · · · · · · · · · · · · · · · · · · · · · · · = 0.588555 · · ·x7 = · · · · · · · · · · · · · · · · · · · · · · · · · · · = 0.920200 · · ·x8 = · · · · · · · · · · · · · · · · · · · · · · · · · · · = 0.279040 · · ·x9 = · · · · · · · · · · · · · · · · · · · · · · · · · · · = 0.764472 · · ·x10 = · · · · · · · · · · · · · · · · · · · · · · · · · · · = 0.684208 · · ·

複雑なものはグラフにせよと学校では習うのだが、グラフにして

も全く分からない。まるで乱数のようで、とても規則性があるよ

うには見えない。*7。

1.0

0.5

0.0

xt

300250200150100500

t

しかし、複雑であっても規則があるから、これは乱数ではな

い。ただグラフの描き方が悪いから規則性が見えないだけなの

だ。もっとビシッと乱数でないことが分かる方法が…ある。そ

れがカオス専用のグラフである。

◆2 カオスのグラフ -その 1:遅れ時間座標-

グラフとはそもそも何であろうか。ある時点とその時の値の関

係を描くものである。しかし、ロジスティック写像を作る式(漸

化式)は、ある時点と次の時点の関係を式にしている。だから、

それを正しくグラフにしたければ、ある時点と次の時点を縦と

横にとるようなグラフにすべきではないか。…これを実現した

のが「遅れ時間座標」という座標の取り方だ。一次元の場合「リ

ターンプロット」とも言われ、有名なので本稿では以降これを

「リターンプロット」と呼ぶことにする。実際に見てみよう。左

が先のロジステック写像で右が真の乱数*8だ。差は明快だ。1.0

0.8

0.6

0.4

0.2

0.0

xt+

1

1.00.80.60.40.20.0

xt  1.0

0.8

0.6

0.4

0.2

0.0

xt+

1

1.00.80.60.40.20.0

xt

具体的にどうやってこのグラフを作るかというと、

0.1, 0.342, 0.855136, 0.470736 · · · という数値列を眺めながら、最初の点を (0.1, 0.342)、次を (0.342, 0.855136)、その次を

(0.855136, 0.470736)、…というふうに、ずらしながら数値のペ

ア (a, b)を作っていき、(a, b)の位置に点を打っていく。こうし

てグラフを作ると、xn が x軸、xn+1 が y 軸に対応することに

なり、カオスの漸化式をそのまま図形にできるというわけだ。こ

の図形のことをカオス界では「アトラクタ」という。アトラクタ

というのは遊園地のアトラクションと同じ語源で「引きつけるも

の」という意味だ。点の列は「アトラクタ」に引きつけられてい

て、アトラクタの外には出ない。

*7 3.8 という数値に何か意味があるに違いないと思った人は筋がいい。この値が 3.5699... から 4 のあいだだと乱数のようになる。あとで出てくる。

*8 東芝製物理乱数生成機を利用。統計数理研究所ホームページ http://random.ism.ac.jpから誰でもデータを取得可能だ。

3

Page 4: 「カオス」入門の入門 - ankokudan.organkokudan.org/d/dl/pdf/pdf-chaos.pdfこの「十倍シフト写像」は、何か小数を与えると、それを「10 倍して、整数部分を0

とはいえ、「グラフの描き方次第で規則性が見えたり見えな

かったりする」というのは結構衝撃的な話だ。今まで、ちょっと

普通のグラフに描いてみて「これは単なるノイズだよね」といっ

て忘れてしまっていたものに、実は規則性があるのかもしれな

い。様々な実験結果をひっくり返して見直さないといけないか

もしれない。カオスが発見されたとき、科学者はすごい衝撃を受

けたはずだ。

◆3 リアプノフ指数さて、カオスの研究者たちは、この点同士の関係をもう少し詳

しく調べてみた。まず、どこでもいいから、リターンプロット

の上で隣同士の点のペアを選び、その距離を測る。隣同士だか

ら距離は小さいはずだ。カオスの漸化式によって二つの点は二

次関数のうえのそれぞれ別の位置に移動していく。一回移動す

るごとに距離を測って記録しておく。こうして距離の変化を調

べてみると、リターンプロットの上で点同士が急速に離れてい

くのが分かる。この離れ方が実はカオスだと指数関数*9になっ

ている。そこで、その指数の値を「リアプノフ指数 (Lyapunov

exponent)」といって、これがプラスであることをカオスの条件

だとした。実は先ほどの「初期値鋭敏性」もリアプノフ指数がプ

ラスであるということの裏返しだ。なぜなら、近くにある点同士

が急速に離れるということは、数の列を計算するときの最初の値

がほんの少し違うだけでも、出てくる数の列が全然違ったものに

なるということを意味するからだ。残念ながらカオスの正確な

定義は科学者の間でも統一されていないが、少なくとも初期値鋭

敏性があり、決定論的であるということは絶対の条件とされてい

る。

◆4 カオスを表すグラフ -その 2:リカレンスプロット-

実はカオスにはもう一つ重要な表現手段がある。それはリカレ

ンスプロットという。リターンプロットが「初期値鋭敏性」に関

係するのに対し、リカレンスプロットは「位相推移性」に関係す

る。カオスでは、ほぼ似たような…だが異なる…数値列が何度

となく繰り返されるので、それを検出してやろうという趣旨の

グラフだ。具体的には (a, b)の位置に対して |xa − xb|が一定値a以上なら点を打つ。つまり、時系列の過去のある点との値の差

を表現しているグラフで、もし似た繰り返しがあれば右斜めの線

がたくさん見えることになる*10。以下は順に、正弦波、物理乱

数、ロジスティック写像のリカレンスプロットだ。aは 0.3にし

てある。

200

150

100

500

200150100500

200

150

100

500

200150100500

200

150

100

500

200150100500

●3 一次元写像とファイゲンバウム定数

◆1 シフト写像とパイこね変換シフト写像は実は古くから何かをこねる方法として実生活に使

われてきた。例えば、そばやうどんは、生地を薄く引き伸ばし

て、それを切って重ねることで生地の中のムラをなくし、生地を

均一にする。パンの場合は生地を薄く引き伸ばしたあと、切らず

に折りたたむが、こちらには名前が付いていて、その名も「パイ

こね変換 (Baker’s Transformation)」(あるいはテント写像)と

いう。パンの場合の例を示したのが右の図である。二つの変換

の違いはリターンプロットでみるとよく分かる。下の図で、左が

パイこね変換で右がシフト写像(二進数版)だ。横軸が 0.5から

1の部分に違いがある。

*9 y = abx みたいな形の関数。リアプノフ指数は bの部分に相当する。*10 この図ではあまり綺麗に見えていないのだけど。*11 実はファイゲンバウムという人が、一次元写像にはユニバーサル関数という親玉のような写像があることを示した。しかしこれを方程式で示すことにはまだ世界の誰も成功していない。ユニバーサル関数を求める級数が分かれば、すぐ下で出てくるファイゲンバウム定数も正確に計算できるようになるだろう。

4

Page 5: 「カオス」入門の入門 - ankokudan.organkokudan.org/d/dl/pdf/pdf-chaos.pdfこの「十倍シフト写像」は、何か小数を与えると、それを「10 倍して、整数部分を0

ちなみにどちらも、ロジスティック写像と同じく上にとがった

図形になっている。これらはまとめて一次元写像といわれてお

り、同じ仲間のカオスである*11。一次元写像はカオスを生成す

る写像の中では最も簡単なものだが、実生活でも広く使われてき

たし、数学や計算機と深く関係する重要なカオスなのだ。

パイこね変換(左)とシフト写像(右)

◆2 分岐ロジスティック写像の式は xn+1 = 3.8xn(1−xn)であった。こ

の 3.8 に意味はあるのだろうか? 実は 3.6 でも 3.7 でも 3.9 で

もカオスになるし、それらもやっぱりロジスティック写像と呼ば

れる。ただし 4.0より大きくすると発散してしまう。そこで 3.8

のところを a と置いて、もっと小さな値にしたら何が起こるの

だろうか。例えば a = 2.7 にして x を 0.1 から始めると、カオ

スにはならず、0.1, 0.243, 0.4966677, 0.674970, · · · と進んで、だいたい 0.6付近の一定値になってしまう。aを少し大きくして

3.2にすると、不思議なことに今度は 0.51と 0.79を交互に繰り

返すようになる。aをもう少し大きくすると 4つの値を交互にと

るようになり、8個の値を順にとるようになり、16個、32個…

と続く。これは x の初期値によらない。a が 3.569945 · · · 以上になるとカオスだ。ファイゲンバウムという人がこれを詳しく

調べたので、3.569945 · · · をファイゲンバウム点と呼ぶ。だが現代でさえ、これが無理数かどうかも分かっていないし、この値

を求める級数展開も知られていない。

ファイゲンバウムは横軸に変数 a、縦軸に出てくる値をいれた

グラフを作った。これは「分岐図」と呼ばれている。aという一

つの変数の値に応じて状況がガラリと変わってしまうことがよ

く分かる。カオスや数学の研究者はそういう現象を「分岐」と呼

ぶが、ほぼ同じことを物理学では相転移と呼ぶ。ちなみに、こう

して繰り返す値が倍ずつ増えていくような分岐は特に「周期倍分

岐」と呼ぶ。カオスの種類に応じて、他にもいくつかのタイプの

分岐が知られている。

1.0

0.8

0.6

0.4

0.2

0.0

x

4.03.83.63.43.23.02.82.62.4

a

この分岐図をよく見てみよう。

a = 3.000, 3.449, 3.544, 3.564, 3.568, 3.569 · · · あたりで線が二つに分かれていることが分かる。1番目はぴったり 3で、2

番目の 3.449は実は 1 +√6であることが知られているが、3番

目になるともう高次方程式を解かなくてはいけなくなり、解析的

な表現は難しくなる。4番目以降の値もよく分かっていない。し

かし、これらの数の差の比をとってやると、つまり、

3.544− 3.499

3.449− 3.000,3.564− 3.544

3.544− 3.499,3.568− 3.564

3.564− 3.544· · ·

という計算を繰り返して数値列を作ってやると、その値が一定値

に近づいていくことが知られている。それを(第一)ファイゲン

バウム定数といって、だいたい 4.669 · · · である。ファイゲンバウムは、ファイゲンバウム定数が、どんな一次元写像でも同じ値

になることを(難しい数学を使って)証明した。しかしその定数

が実際にどんな値なのかは現在でさえ謎に包まれていて、計算機

で無理矢理計算してわずかに数百桁が求まっているだけである。

ファイゲンバウム定数の級数展開を見つけられたら、円周率のよ

うに何兆桁も計算できるようになるが、それは未解決問題だ。

◆3 フラクタルファイゲンバウム定数は一次元写像から見つかったものだから、

れっきとしたカオスの定数だ。ところがこれが意外なところで

再発見された。マンデルブロ集合だ。これは、 xn+1 = x2n − y2

n + a

yn+1 = 2xnyn + b

という漸化式の a と b を色々変えてやったときに x と y の値

が発散して無限大にならないような点の集まりだ。下の絵の黒

い部分がそれである。フラクタルの典型例といわれているのだ

が、そもそもフラクタルってなんだ? それは部分を拡大してい

くともとと同じ形になるような図形のことだ。この絵の、適切な

点*12を中心に拡大すると、もとと同じ図形が現れる*13。マンデ

ルブロ集合は大小様々な円がたくさん集まったような形をして

いるが、不思議なことに隣り合う円の直径の比がなぜかファイゲ

ンバウム定数になっている。

*12 (−1.401155189 · · · , 0)。−1.401155189 · · · はマンデルブロ集合のファイゲンバウム点と呼ばれている。*13 木の形や巻き貝の巻き方など、自然界にはフタクタル構造がいたるところに見られるが、これは一定の法則に基づいて成長してした結果としてよく起こることだ。

5

Page 6: 「カオス」入門の入門 - ankokudan.organkokudan.org/d/dl/pdf/pdf-chaos.pdfこの「十倍シフト写像」は、何か小数を与えると、それを「10 倍して、整数部分を0

ではフタクタルとカオスには何か深遠な関係があるのだろう

か。ある。カオスのリターンプロットにはフラクタルが潜んで

いることがとても多い。簡単で分かりやすい例としてエノン写

像というカオスで示してみよう。典型的なエノン写像は xn+1 = 1− 1.4x2n + yn

yn+1 = 0.3xn

という漸化式で示される。よく知られている初期値として

x0 = 0.63135448, y0 = 0.18940634 として、(xn, yn) をグ

ラフにすると、下のような図になる。

この図の左上部分を拡大すると、ほぼ同じような図形が現れ

る。これはフラクタルだ*14。カオスはアトラクタという決まっ

た有限の形をもつが、その中に無数の不安定な軌道が埋め込まれ

ている。有限の形の中に無限本の軌道を埋めるために、フラクタ

ルが潜んでいるのだ。実際、エノン写像だけでなく、他のカオス

でも何らかの形でフラクタル構造が見つかることは多い。ある

カオスの中に、どのような軌道がどんなふうに含まれているかが

ちゃんと分かれば、カオスを分類することができるかもしれない

が、これも最先端の研究テーマで、まだほとんど分かっていない

ようだ。

●4 もっと複雑なカオス -統計的判定-「いつまでも一次元写像の話ばかりでつまらん」という声が聞こ

えてきそうだ。もっと高次元のカオスはないのかといえば、実は

際限なく「ある」…と思われる。ローレンツアトラクタを改良し

た高次元版のローレンツアトラクタ方程式が色々と提唱されて

いるし*15、1 次元でカオスであればそれに非カオスの成分を加

えてもだいたいカオスになるだろう。しかしそんな方法でやた

らと高次元のカオスを作っても実はそれほど面白くはない。む

しろ高次元のカオスは、既にある謎の時系列から発見してくると

いうほうが意味深いのだ。

何かの実験、観測から得られた複雑な数値の列(実データ)が

カオスかどうかを調べたい、というときどうしたらいいのか。も

ちろんそれを生成する式が見つかればベストだ。しかしカオス

のような複雑なデータから、それを生成する式を見つけてくる

ことは、実際には不可能に近い*16。とりあえず仕方ないからリ

ターンプロットを描いて眺めるわけだが、「見た目にカオスっぽ

い」では科学じゃない。

実データがカオスかどうかを判定するには、大きく分けて二

つの性質を示すことになる。「リアプノフ指数がプラスであるこ

と」と「決定論性があること」だ。リアプノフ指数は、数値をリ

ターンプロットしてやり、プロット上の点がどんなふうに離れて

いくかを実際に点同士の距離を追っていくことでプラスかどう

かが分かる。一方、「決定論性がある」ことを調べるのは少し面

倒だ。これはサロゲート法という仮説検定法(統計的検定の一

種)を使う。ある性質だけを壊すようにデータを改変してしま

い、元のデータと色々な性質を比べるのだ。例えば、数値列に含

まれる数値の順番をデタラメに入れ替えてしまう。入れ替えて

も、数値列全体の平均や標準偏差は変わらない。しかしもしそう

することで何か元の数値列と違う点が見つかったならば、元の数

値列には平均、分散の他に大事な性質があったんだろうというこ

とが予測できる。これは「ランダムシャッフルサロゲート」とい

う。他にも、数値列が線形的な式から作られてるのかそうではな

いのかを調べる「フーリエ変換サロゲート」も有名だ。こうした

いくつものサロゲート法を組み合わせて、決定論的であると主

張するのが実験的な数値列からカオスを判定する一つの方法で

ある。

その他にも、フタクタルを特徴づける相関次元(という量があ

るのだ)が整数値にならないことを調べる方法もある。こういう

様々な方法を駆使して「たぶんカオスじゃないかな」と当たりを

つけていくのが実データに対するカオスの発見方法だ。

●5 終わりに -カオスは科学の基礎を揺るがす-「まぁなんか、ゴチャゴチャと難しい話があるんだね」くらいが

ここまでの感想ではなかろうか。しかしここではっきり断言し

ておこう。カオスの概念は、哲学的な意味で現代科学が到達した

真の最高峰である。「哲学的な意味で」というのは、カオスの概

念が単に科学の一分野を超えて「科学」という枠組み自体の根幹

*14 この拡大は解説のためで正確ではない。*15 例:http://web.atmos.ucla.edu/~kayo/samsi/da_samsi/data/emanuel_lorenz_jas98.pdf

*16 これは最適化問題として最先端で研究されているレベルの難題だ。

6

Page 7: 「カオス」入門の入門 - ankokudan.organkokudan.org/d/dl/pdf/pdf-chaos.pdfこの「十倍シフト写像」は、何か小数を与えると、それを「10 倍して、整数部分を0

を問うているからだ。

近代以降、数学と情報科学を除くすべての自然科学は、実験

事実から法則を推定することで発展してきた。だが実験結果は

無条件で何でも正しいわけではない。条件を同じにすれば誰が

やっても誰がいつやっても(統計的に)同じ結果が出ること、こ

れが実験結果を真実と見なす大前提だ。だが本当に厳密な意味

で「条件を同じにした」実験は絶対に無理だということも、人類

は知っている。「太陽は毎日東からのぼる」ですら、その位置も

時間も毎日少しずつ変わっている。歴史は決して繰り返さない。

それでも、もし何か普遍の真実があるなら、実験を繰り返して得

られたデータの平均値は真実の値に近づいていくだろう、という

一種の盲信が近代の自然科学を進めてきた。これは現代では中

心極限定理と呼ばれ、証明されたのは 20世紀になってからであ

る*17。

カオスの存在はここに疑問を投げかけた。初期値の微妙な違

いで数値列のその後は大幅に変わる、「初期値依存性」というや

つだ。もちろんカオスにはアトラクタの形状という大域的、統計

的性質は見いだせるが、個々の現象をできるだけ予測したいと

いう現代的な精密科学には、冷徹な限界を突きつけた。何かの

現象がサロゲート法などを駆使してカオスだと分かった瞬間に、

精密な予測は諦めねばならない。ニュートン以降、近代物理学は

ひたすら精緻化の道をたどってきたが、これからも観測機器が精

密になればどんどん理論が精密になるだろうという楽観的な予

想は許されない。カオスは人類が知によって到達した、知の限界

なのだ。

もちろんカオスが非常に特殊なケースで、人為的に微妙な調整

しないと出現しないようなものであれば、それほど怖がることは

ない。しかしカオスは、今まで単に人類が「見なかったこと」に

してきただけで、実は自然界のあちこちに頻出している。例えば

気象現象の多くはカオス的であるといわれているから、どんなに

高性能の計算機を使っても、天気予報の予測精度には限界があ

る。神経細胞から代謝系まで、多くの生命現象にもカオスがひし

めいている。心電図などカオスであることが正常であり、カオス

性を失ったら自律神経が不調であると見なされる。ベロウソフ・

ジャボチンスキー (BZ)反応など、少し複雑な化学反応もカオス

の出番だ。交流回路、流体現象、楽器音、複雑ネットワーク等、

カオスはどこにでも普通に見つかる。そしてどの分野であれ、カ

オス性が発見されるやいなや、人類は一般式を立てて未来予測を

することに諦観しなければならないのだ。もちろんそれでも微

分方程式を立てて対抗を試みるが、微分方程式にも容赦なくカオ

スは出現する。こう書くとカオスはまるで自然科学を恐怖のど

ん底に落とし込む混沌の狂気だが、裏を返せば、カオスが見つか

ると同時に、そこに無駄な努力をしなくても済むということでも

ある。カオスを知っている人は、天気予報が間違ったからといっ

て気象庁に怒りの電話をかけたりしない。

精緻化の代わりに科学が見いだしたアプローチは「統計」で

あった。点列の詳細を追うことは諦め、アトラクタという構造を

一種の確率分布として見なしてしまえばカオスを怖がらなくて

もいい、というのが現代における一つの見方である。といって

も、カオスの漸化式とアトラクタの統計の間の一般的な関係はほ

とんど分かっておらず、相変わらず漸化式を素直に追ってアトラ

クタの形を推定するしかないのが現状だ。

実験事実を基礎にしていない数学や情報科学はもっと深刻だ。

それらは実験誤差を含まない学問であるため、統計性に逃げてし

まうことが許されない。先の章で名前だけ紹介した「ゲーデルの

不完全性定理」は、どんな公理をもとに数学の体系を作っても、

絶対に証明できない問題が含まれるのだと主張する。それはつ

まり数学という大伽藍構築の努力に限界を突きつけたことであ

り、数学は 20世紀前半の時点で既にカオスと同じ哲学的諦観に

到達してしまった。解けない積分、解けない漸化式、諸々の実数

論や切断など、解析学と基礎論を中心にカオスは大暴れである。

実際のところカオス界は未解決問題の塊であり、しかも科学

の多くの分野で(技術的理由以外で)行き詰まっている諸問題の

根元に居座っている。例えば未解決問題の代表選手「リーマン

予想」にもカオスの影がちらほら見える*18し、不確定性原理に

も関係しているらしい。量子力学と一般相対性理論が統一でき

ない理由にもカオスがあるんじゃないかという説もある。思う

に今後 100 年の科学はカオス抜きには語れないわけで、カオス

の問題を解決していくことがノーベル賞やフィールズ賞につな

がっていくのだろう。学校の勉強で「こんなの昔の偉い人が解決

してしまってて、もうやることないじゃないか、どこが面白いん

だ」と思ったのなら是非カオスにダイヴしてほしいと思う。問題

は山積み、まさに狩り放題である。

●6 付録:有名なカオスの式微分方程式については通常、オイラー法により漸化式に直して数

値計算される。

• ロジスティック写像:3.569945 · · · < a < 4

xn+1 = axn(1− xn)

• テント写像:

xn+1 =

µxn xn < 12

µ(1− xn)12≤ xn.

*17 それすら成り立たないコーシー分布などがあるが、カオスと何か関係があるのかというとよく分からない。確率分布の安定性とカオスの関係は今後の課題だ。

*18 暗黒通信団刊「素数のまとめノート」参照。

7

Page 8: 「カオス」入門の入門 - ankokudan.organkokudan.org/d/dl/pdf/pdf-chaos.pdfこの「十倍シフト写像」は、何か小数を与えると、それを「10 倍して、整数部分を0

• エノン写像:Ex: a = 1.4, b = 0.3 xn+1 = 1− ax2n + yn

yn+1 = bxn

• 池田写像:xn+1 = 1 + u(xn cos tn − yn sin tn)

yn+1 = u(xn sin tn + yn cos tn)

tn = 0.4− 6/(1 + x2n + y2

n)

• ティンカーベル写像: xn+1 = x2n − yn + axn + byn

yn+1 = 2xnyn + cxn + dyn

• ローレンツアトラクタ:dx = (py − px)dt

dy = (rx− y − xz)dt

dz = (xy − bz)dt

• レスラーアトラクタ:Ex: a = 0.15, b = 0.2, c = 10dx = (−y − z)dt

dy = (x+ ay)dt

dz = (b+ z(x− c))dt

「カオス」入門の入門

2014 年 12 月 30 日 初版発行2019 年 6 月 1 日 PDF 版発行

著 者  シ(し)発行者  星野 香奈 (ほしの かな)

発行所  同人集合 暗黒通信団 (http://ankokudan.org/d)     〒277-8691 千葉県柏局私書箱 54 号 D 係∑̀∞· · 間違いがあったら作者までご連絡ください。

c⃝Copyright 2014-2019 暗黒通信団 Printed in Japan

8