|
セルオートマトンと複雑系 Complex Systems Created by Cellular Automata (English here) | ||||||
|---|---|---|---|---|---|---|
|
トップページ ギャラリー セルオートマトンて何? セルオートマトンの歴史 複雑系て何? 人工生命て何? リンク集 |
人工生命て何?以下は人工生命の提唱者クリス G. ラングトンの人工生命に関する短い紹介です。(原文はZoolandを参照してください。)生物学とは生命に関する科学的な研究である。原理的にはそうであるが、実際には、生物学は炭素鎖の化学に基づいた地球上の生命に関する科学である。そして生物学が炭素から成り立っている生物の研究に制限される理由はなく、単に1種類の生命が研究対象になり得るということに過ぎない。このため、理論生物学は長い間、たった1つの例から一般的な原理を引き出すという、根本的な障害と対峙してきた。このように人工生命は、「地球上に生息する生命は生命の一例に過ぎず必ずしも生命の一般的性質を研究するのに都合が良いとは言い難い」という立場から、地球型生命だけでなくもっとそれ以外の生命、具体的には計算機によって合成された生命も対象に含めた研究分野です。逆に言えば、生物学とは人工生命の中で地球型生命という1つのインスタンスのみに注目しているの分野と言えるでしょう。それでは地球型以外も含めて生命の最も基本的な一般的性質としてあげられるのはどんなことでしょうか?例えば
人工生命の最も代表的な例が遺伝的アルゴリズム (GA)です。これはネオダーウィニズム的な思想に基づいて、自然淘汰や突然変異を繰り返すことにより適応度が低い遺伝子配列が徐々に淘汰され適応度の高い配列が生き残っていくアルゴリズムです。この配列を何らかのパラメータ群に置き換えれば、このアルゴリズムを利用して様々な最適化問題を解くことができます。すなわち適応を計算機で実現することは可能です。しかしここで注意して欲しいのは、GAでは任意の遺伝子配列に対して適応度すなわちfitness landscapeが前もって定義されていることです。すなわち、GAにおいては何を最適化するのか、すなわち目標が外部から与えられております。 ニューラルネットワーク(NN)は人工生命というよりは人工知能に分類されることが多いですが、GAのように複雑な最適化問題を解く能力を持っています。これもある意味では適応能力と言えるでしょう。NNは予め与えられた「お手本」を学習することにより最適化(適応)されます。例えば、バックプロバゲーション型のアルゴリズムなどではネットワークの出力がお手本とどのくらい違うかを知ることによりネットワークの最適化が行われますし、自己組織化型等のアルゴリズムでは入力自体がお手本になっています。ホップフィールド型のアルゴリズムでは、お手本からネットワークが一意的に決まってしまい繰り返し計算による最適化も必要ありません。このようにNNにおいても、外部から目標が設定されています。 これに対して生物は自然に発生し、自らを進化させてきました。そのため生命は自分自身で目標を設定できます。その目標は餌を沢山見つけることであったり,交尾をすることであったりします。また多くの人間は沢山お金を得ることを目標とします。そしてそのために、自分自身を変化させていきます。ある者は場所を移動したり、またある者は目標を達成するための方法を改良させます。すなわち適応です。生命体内の分子には外部から明示的に目標が与えられているわけでもないし、目標をどの程度達成したかもそれぞれの分子が理解できるわけでもありません。すなわち、生命は自発的、暗示的に設定された目標に適応しているのです。この意味でGA等は上記の3番目の生命の本質を備えているわけではなく、単なる数理的な道具に過ぎません。私はなにもGAが人工生命の研究として意味がないと主張しているわけではありません。生命みたいなものを作るには、何か足りないのではないかと主張しているのです。 セルオートマトン(CA)では外部から明示的目標を与えることはありません。よって現在の科学水準ではCAを用いて予め人間が指定した循環セールスマン問題(TSP)などの複雑な最適化問題を解かせることはできません。このことをCAのメカニズムから再考してみます。CAを制御工学的な入出力関係に関連付けると、入力はセル空間の初期状態、伝達関数はルール、出力はダイナミクスと考えることができます。通常、計算機によって行れる適応は入出力関係を変えることにより達成されます。入出力関係を変えるには当然、伝達関数を変化させなくてはなりません。上記のGAやNNはこの方法を使っております。しかしながら、CAでは伝達関数に相当するルールは更新されることはなく、入出力関係はいつも同じです。これでは適応のしようがないのではないか、という疑問が湧いてきます。しかし現実の生命を考えてみて下さい。物理法則が時間とともに変化していないのにもかかわらず、生物は知能化したのです。従って原理的には、CAのルールを更新しなくとも,学習や適応の機能を創造することは不可能ではありません。すなわちCAのみで人工生命を研究するということは上記の3番目の生命の本質を備えている自発的生命を研究していることになります。すなわちCAのダイナミクスが自発的に自己再生能力を獲得し、進化能力を獲得すれば、おのずと適応能力を獲得することができるのではないかと期待したくなります。
それでは、例えば、アプレットaquaやgenerationルールを用いて生命にように見えるCAパターンができたとします。この中で生命のように見えるパターンは何らかの目標(例えば子孫を増やすこと)に向かって適応するでしょうか。むろん実際の生物は長い年月を経て知能化されたのであり,混沌とした状態から即座に知能が生まれたわけではありません。それでは上記CAを長期に渡って実行すれば,やがて知能は生まれるでしょうか。やはり、あまり期待できません。それはこれらのCAは複雑系とはいっても、まだかなり単純だからです。例えばライフゲームは万能コンピュータ(万能チューリング機械)であることが証明されていますが、これは人間の操作によって演算が可能であることを示しているのであり自発的に知的な計算をすることを示しているわけではありません。実際、ライフゲームの自己組織化は単純な法則に従うことがわかっています[Su00]。このような単純さはCAに限ったことではなく複雑系として研究されているコンピュータ上の動力学系一般に言えることです。一体、実際の生命とコンピュータ上の動力学系から得られる複雑性とのギャップをどう理解したらいいのでしょう。生命にあって、我々が作れる複雑さにないものは何でしょう?これこそ、我々が生命の起源や進化の本質を理解するのに必要なことではないでしょうか?しかし我々はそのギャップを埋めることが本当にできるでしょうか。
Last Modified on 29, January, 2004 | |||||