2002年11月24日 21:32:44
書評である。
加藤恭義、他。セルオートマトン法―複雑系の自己組織化と超並列処理―。森北出版、1998。ISBN
4-627-82541-2
自己組織化、という言葉を知っていても、具体的にどのようなものなのか、実感のある人がどれだけいるであろうか。かく言う私も、本書を見るまでは自己組織化と偶然のパターンが想起する妄想との区別が、いまいちはっきりしなかった。
自己組織化とは何か、本書はその疑問に真っ向から挑戦している。また、工学書らしく、実用面からの考察も多い。やや古い本であるが、ここで取り上げる理由である。
なお、オートマトンとは「からくり人形」のことで、もちろん、コンピュータもオートマトンの実例である。「セル」は空間内の箱を示す。空間内の箱の一つ一つにからくり人形がいて、隣のからくり人形から影響を受けて行動する、と想像すれば良いであろう。自己組織化とは、それらのからくり人形の集団が、あたかも組織化されたかのごとく、まるで合目的的に行動する、ということである。
▼ ライフ・ゲーム
私の年代なら、セルオートマトンといえば、ライフ・ゲームが想起される。インターネットで検索すれば、いくつもの実働するプログラムが手に入るだろうから、知らない方は、時間があれば是非とも試していただきたい。本書の冒頭でも、計算機の世界では歴史的なこの事件が言及されている。ライフ・ゲームはセルオートマトンに生物の栄枯盛衰をシミュレーションさせた、お遊びなのだが、無限に活動するパターンが発見されて、単なる遊びを超えてしまった。個々の生命は滅びても種としては生き残る、あるいは、個々の細胞は死滅しても個体は生き残る(紅葉と枯葉を想起すればよい)、というわけだ。グライダー胞、と言えばライフ・ゲーム愛好家には感慨深いものがあろう。
▼ 直交計算機
本書に直接は出てこないが、コネクションマシンはセルオートマトンのための計算機だった、の件を見れば、直交計算機に触れざるを得ないだろう。現在の通常のコンピュータでは、たとえば8bit機では、同一アドレスにある8bitに数値や文字などの意味があると考えるのが通常であるし、それ以外は考えられない、というのが正直なところであろう。しかし、歴史的にはごく初期から、8bit
= 1bit x 8の並列計算機、という考え方もあった。データはアドレス進行方向に1bitの列として表現される。8倍の並列になる代償として直列データの計算が必要となるのだが、それでもハードウェアが貧弱な時代においては、それなりの意義があった。今では8bit並列では苦労する意味がほとんどないと思えるが、16,777,216bit並列ならどうだろうか、直交計算機の現代的意味は、その超並列性にある。
と、ここまで書いてみて、手元に資料が無いことを発見してしまった。おそらくどこかの図書館で見たのだとは思うが、うろ覚えなので、見てくださっている方には申し訳ない。
▼ セルオートマトン法におけるブレークスルー
動きが見ていて楽しい、ではなく、セルオートマトンが現実の物理的問題の解決に役立つためには、いくつかの技術的突破が必要であった。
まずは、数学的モデルから。連続的でなく、離散的モデルが無ければセルオートマトンに物理的問題を解かせることが、そもそも不可能である。これは1970年代の初期に構築されたそうである(41頁)。
次に、セル分割による空間の非等方性の問題がある。マンハッタン距離とか、京都距離とか呼ばれる格子の距離は、我々の住むユークリッド空間のピタゴラスの距離とは異なる。これは格子分割の方法と、想定する粒子間の相互作用の巧妙な定義によって解決した。さらに、三次元の非等方性の問題も四次元座標からの考察で解決した(66頁)。
粒子の直接のシミュレーションではなく、温度などのマクロ量のシミュレーションも考えられ、その場合は、不均一な格子が採用可能となる(94頁)。
いくつかの無視できない制限はあるものの、こうなってくると、セルオートマトンによる物理シミュレーションの利点が目立つ状態となり、爆発的に研究が進んだそうである。残るは、当然ながら、現実の物理現象に「なんとなく似ている」のではなくて、数値実験として意味があるかどうかである。本書の特徴の一つは、広く認められた物理モデルとセルオートマトンが同等であることを示していることにある(54頁)。
結果は、目を見張るもので、豊富な図により、視覚的にも理解できる。ごく近傍の状態しか分からない個々のオートマトンが、全体として複雑な物理現象を再現する、これが自己組織化、なのである。具体例としては、流体の物理が取り上げられていて、カルマン渦、対流と乱流、沸騰のような相変化、などがある。変わったところでは、動物の皮膚や貝殻の模様のシミュレーションがある。
▼ 超並列計算機
スーパーコンピュータの主流は今でもベクトル計算機であろう(その後のWebの調査によると、政治的理由により、日本が得意とするベクトル計算機はスーパーコンの主流ではなくなったらしい(2002-12-19))。大型計算機をひたすら追いかけているように見えるパソコンCPUアーキテクチャの動向からすると、ベクトル計算機能の導入は時間の問題ではないか、と思えるほどである。
汎用性の観点からは、セルオートマトン計算機は今のところ、物理シミュレーション専用機のようである。しかし、コネクションマシンを引き合いに出すまでも無く、セルオートマトン機の並列性は並ではない。それ故、「超並列計算機」と誰しもが認めている。
セルオートマトン機は、コンピュータ設計者からは異端扱いされている、と思われる、SIMD(Single Instruction Multiple Data)機である。しかし、もしも、これが何か現実の役に立つとすれば、そして、さらなる発展性があれば、社会的状況も変化するであろう。