読者です 読者をやめる 読者になる 読者になる

hnagamin

競プロとか

セル・オートマトンは進化論の夢を見るか?

この記事はポエム Advent Calender13日目の記事です。6日目の記事はki6o4さんの「Brainfuck短歌」でした。

www.adventar.org


John Horton Conwayは1970年に後にライフゲームと呼ばれる奇妙な思考実験を行った。空間と時間にこれ以上分割できない最小の単位を与え、各空間が周囲と相互作用しながら発展する生態系を考える。そこでは未来の世界がただ現在の世界の有り様によってのみ記述され―これはマルコフ連鎖と呼ばれる―各点は統一的な命令的中心をもたずに八近傍の情報だけを頼りに自分の状態を変えていく。これが一体何を考えるのに役立つのか。Conwayの研究を動機付けたのは次の疑問だった: 果たして自己複製は生命だけに与えられた特権なのか?

ライフゲームと自己複製

ライフゲームは生命の進化をシュミレートする一つのシステムだ。そこには格子に区切られた無限に広いユークリッド平面がある。一つ一つの格子はセル=細胞と、各時刻はgeneration=世代と名付けられた。各セルは「生」或いは「死」という二つの状態を持つ。各セルは八近傍の状態に応じて刻々とこの二つの状態の間を行き来していく。死んだセルの近傍に三つの生きたセルが存在するとき、そのセルは次の世代に「生」状態になる。生きたセルの近傍に四つ以上の生きたセルが有ったり、高々一つしか無かったとき、そのセルは次の世代に「死」状態になる。この規則は、生命にとって過疎や過密が常に有害であるという非常に明快な個体群生態学的事実を反映している。たったこれだけの単純な規則にも関わらず、ライフゲームは我々を長年驚かせてきた。

ライフゲームが発表された当時はコンピュータが発明されていなかったので、研究者は専ら方眼紙を塗り潰すことでセルの生態を観察していた。程なくして世界を移動する物体が発見された。グライダーである。たった5つのセルからなる群れが統一された目的を持つデバイスになったのだ。世界のハッカー達はこれにひどく興奮し、グライダーをハッカーのシンボルとした。グライダーはライフゲームを一躍有名にし、ライフゲームに代わる新たな自律分出系を数学者に考案させ、後にそれらは纏められセル・オートマトンという研究分野に成長した。1970年にConwayは無限に増殖するセルのパターンが存在することを予想し50ドルの賞金を賭けた。この問題は同年Gosperによって肯定的に解決された。Gosperのアイデアは一定の周期でグライダーを撃ち出し続けることだった。Gosper自身はこの仕組みを「グライダー銃」という洒落た名前で呼んでいる。Gosper以降も様々な”無限増殖”パターンが発見された。

ライフゲームが極めて単純な構造で出来ているにも関わらず、今日の複雑なコンピュータと同じ能力を持つことは興味深い。ライフゲームはTuring完全(数学的に言えば、チューリング・マシンをシュミレートできるという性質。ChurchとTuringは、Turing完全な系は任意の計算可能な問題を解くことができることを証明した)なのだ。この事実は我々にライフゲーム上で動く”コンピュータ”を作るという抗いがたい誘惑を与える。実際それは可能だ。グライダーの存在・非存在に1バイトの情報を割り当てれば、或る地点から別の地点に情報を転送することができる。ANDやORなどのコンピュータに必要不可欠な演算もライフゲーム上で実現することが可能だ。

Conwayのモチベーションは自己複製するシステムを考えることだった。Neumannは1952年、或る種の2次元セル・オートマトンには自己複製を行うパターンが存在すると主張した。Neumannが用いたのはオートマトンを特徴づける準群の理論だった。準群の理論は50以上の実数の方程式が解を持たないことを扱う。Neumannは”万能”建設機と自分自身の設計図からなる自己準拠的なモデルを考え、これが自分自身を複製できることを示した。この設計思想は、Luhmannの「セルフリファレンシャル・システム」とも類似している。一方Debrayは個体がそれ自身を産みだすことの生物学的矛盾を指摘し、Neumannに反対した。この論争は2010年にライフゲーム上で実際に自己複製を行うパターンが構成されたことで決着された。このパターンはNeumannのアイデアにならい、小さなコドンと地球の半径にも及ぶ長さのDNAで構成されている。

このように豊かなライフゲームの世界の背後には、ライフゲームの微妙な世界の相互作用のバランスが関わっているとLangtonは指摘する。Langtonはセル・オートマトンを特徴づけるものとしてλパラメータと呼ばれる尺度を導入した。λパラメータは、直観的に言えば初期条件の些細な変化がどの程度全体に波及するかを表している。Langtonはλパラメータが或る値の付近に有るときセル・オートマトンが最大の複雑性を持つことを示した。λが小さすぎるとき、微小な変化は周囲に押しつぶされてしまう。このような世界では初期状態に関わらず系は最終的に静止するか、一定周期で同じ形態を再帰的に反復する。反対にλが大きすぎる場合は、系のちょっとした変化が指数関数的に拡大していき、全体を無秩序に消散させてしまう。世界が秩序的・静的な振る舞いとカオス的・ランダム的な振る舞いの境界に位置するとき、世界は局所的な秩序を長距離に渡って輸送することのできる複雑な様相を形造ることができるのだ。このオートポイエティックな相転移をLangtonは「カオスの縁」と名付けた。カオス理論を特徴づけるものは初期条件鋭敏性とそれが引き起こす未来予測困難性だ。ゲーデル不完全性定理がもたらしたものは、我々は系の全ての初期状態を知ることが不可能であるという人類の限界の規定だった。このことによって、カオスの縁ではシステムは複雑に変化し、大胆にも未来予測を行おうとする我々を翻弄する。さて、閉鎖系の宇宙は逃れることのできないエントロピー増大の刑に処されている。ビッグバンの理論によれば、137億年前に宇宙は1点の爆発によって誕生した。そこでは粒子がF = ma = \frac{1}{2}mv^2という単純な物理法則に従って動き、世界全体に均一な秩序を奏でていた。そこから宇宙は熱力学第三法則に従って乱雑さを指数的に増大させていく。数千年後の未来には宇宙は最大のエントロピーを獲得し、素粒子がただまばらに泳ぐだけの熱的死を迎え、あらゆる情報はロングテールエントロピーの海に飲み込まれていくという。宇宙の晴れ上がりという史上最大規模の相転移に始まる現在の宇宙はちょうどカオスの縁の時代にあたる。適度なカオスはエントロピーの増大よりもむしろ減少を引き起こし、我々生命をダブル・コンティンジェントに生み出した。誕生と生滅の無限速度が、遠心力的な創発と求心力的な秩序の相互浸透的な動的均衡が、カオスの縁において最大限の宇宙的複雑さを生み出しているのだ。

生命と自己複製の関係は、担々麺と芝麻醤の関係に似ていると言えるだろう。担々麺は汁や豆乳、胡麻の有無などの多様性を持ち、むしろその無秩序を包容するスープ(奇しくも、原初の生命を育んだのもスープであった。UreyとMillerは、落雷によって生命の存在しない海中にアミノ酸が発生することを証明し、原始生命の起源を明らかにした)のような雑多さこそがまさに担々麺を特徴付けているのであるが、如何なる担々麺にも兼ね備えておかねばならない物がある。それが芝麻醤だ。芝麻醤の無い担々麺は担々麺とは言えない。同じことが生命にも言える。人をはじめ地球上には様々な生命が息衝いているが、どの生命にも自己複製のメカニズムが必要だ。稀に芝麻醤が入っていない担々麺があるが、そういう場合は大抵代わりに練胡麻が入っている。生命に喩えるならウィルスだ。この二つは全く同じものである。そのような訳で、全ての生命は何らかの自己複製機構を有している。生命の在り方とは、畢竟自己複製の在り方と言えるだろう。

シンギュラリティ以後の人類

欧米はどんどんシンギュラリティに向かって突き進んでいるので、否が応でもシンギュラリティが訪れることは最早自明のことと思われる。技術の発展は―離散コサイン変換的な―不可逆性を孕んでいる。一度発見されてしまった手法は決して失われることがないからだ。発見された手法は組み合わされることでより洗練され、人類は更にシンギュラリティに向け加速していく。組み合わせ爆発による加速=accelerationは科学技術文明の本質だ。知識は混ぜ合わされることでビッグデータ化していくからだ。

近年はDeep Learning研究の発展が著しい。現在は3回目の人工知能ブームの時代と呼ばれる。なぜ今Deep Learningが注目されているのか。それはDeep Learningがアインシュタイン的な、非線形な問題を解くことができるからである。過去に存在した人工知能―これは単純パーセプトロンとよばれた―は現在のDeep Learning同様、人間の脳を模倣したシステムだ。パーセプトロンは2層(入力層、出力層と呼ばれる)に分かれたネットワークを用いてパターン認識を行う。ライフゲームもまた一種のパーセプトロンとみなせる。セルを市松模様に塗り分けると、白い層と黒い層の2層に分離することができるからだ。しかしパーセプトロン線形代数学の行列の理論に基づいていたため、一部の線形分離できない問題を解くことができなかった。XOR問題はあまりにも有名である。Deep Learningは2層しかなかった単純パーセプトロンに新たな層=「隠れ層」を導入することでこの問題を解決した。以降研究が進み、現在では様々な分野に応用されている。京都大学が今年夏、2015層のネットワークからなる深層学習系を用いた農業クラウドIoTシステム「DeepCAT」を発表したことは記憶に新しい。とはいえ現在我が国では人工知能に詳しい人材が圧倒的に不足していることも確かである。しかしこの問題については文系の人材が鍵となるかもしれない。教師付き学習の学習過程は人間を教育する過程と酷似しているからだ。ともあれ、Deep Learningは画期的であり、今後さらなる応用が考えだされていくことは間違いない。

シンギュラリティという単語自体は数学的には「特異点」を意味する。カタストロフィー理論によれば我々のいる世界と特異点事象の地平面によって分離されているので、特異点における物理法則を我々は予測することができない。それではシンギュラリティ以降の文明を考えることは無意味なのだろうか。私は違うと考える。たとえ予測不可能であってもそれが必ず訪れる以上、何らかの対策を打つ必要があるからだ。私の予想では、シンギュラリティ以降の人類にとって武器となるのは「開放のプログラミング」であるはずだ。

何が開放のプログラミングたりえるか?

これ以降重要になってくるのは、想像ではあるが、人間の創造力であろう。では、一体どうやって?

20世紀のITを支配したのは型だった。そこではプログラマーは家父長的な型検査を通るプログラムしか書くことはできなかった。彼らはそれ=変数が一体何であるか、いかなるクラスからインスタンス化されたものかを注意深く判断し、変数を一つ使うのにも前もってコンパイラたる大審問官にお伺い=declarationを立てなければならなかった。人間の思考は男性的な型に制約されていた。ところが、21世紀では少し事情が変わってきている。型の無い言語の浸透だ。Rubyは1995年に日本で開発されたスクリプト言語で、型を持たない言語の代表格だ。Rubyは開発スピードが重視されるWeb業界で大成功を収めた。Rubyの非ユークリッド的な、女性的な柔らかい言語の性質がプログラマーの思考を柔軟にするのだ。開放のためのプログラミングは、型のない言語にこそあると言って良い。

シンギュラリティ以降の世界では、権威はC/C++Fortranなどの型のある線型な言語から、RubyPythonJavaJavaScriptなどの型のない豊かで非線形な言語にシフトするであろう。自己が自己を生む自己複製の世紀では、Lispのマクロも見逃すことはできない。シンギュラリティ以降のLispの重要性を述べるのには、これがそもそも人工知能のために作られた言語だったことを指摘すれば十分であろう。最近ではHaskellScalaなどの圏論(圏論は「数」というもの自体の根源を語る学問であり、その定義は非常に困難である。例えば1, 2, 3 … などの数はそれぞれ圏である。)に基づいた関数型言語も実用化されてきているが、関数型言語も実装は手続き型であるという現実が有る以上、従来の手続き型・オブジェクト指向型アプローチもシンギュラリティ以降生き残っていくであろう。

シンギュラリティは技術の発展の延長線上にあり、避けることは不可能である。人類はシンギュラリティ以降の文明のあり方を模索する必要がある。そこで必要になるのは人間の創造力であり、非線形な、自己複製的な開放のプログラミングなのであろう。


以上で記事を終わります。17日の担当はtest441442301さんです。





※この記事に書いてあることを鵜呑みにしないでください.全部間違えてます