見出し画像

005 「人工生命」について

今から20年以上前、ぼくはインターネット上で”AlifeGarden”というゲームサイトを主催していた。”Alife”とは”Artificial Life”のことで、日本語で言えば「人工生命」。ここで何度か書いたとおり、ぼくは学生時代に人工知能(ニューラルネット)の研究をしていたのだが、その研究に行き詰まりつつあったころに、「人工生命」というものが登場して、ぼくはそれに飛びついた。

AlifeGardenのサイトそのものはもうインターネット上には存在しないが、WebArchiveという、昔のサイトのアーカイブを残しているサイトで、今でも当時のものの一部を見ることができる。
AlifeGardenは、そのころぼくがやっていた研究を、一般の人にも理解しやすいようにゲームにしたものだ。その概要を書くと。。。

まず、仮想の二次元空間があり、その中にAからJまでの10種類の物質が無数に散りばめられる。この二次元空間は「閉鎖系」といって、外の世界からは隔離されている。つまり、このAからJまでの物質のそれぞれの個数はこの空間内で一定で、この空間から消えることもなければ増えることもない。

その二次元空間の中に、数千匹の人工生命をばらまく。ここでの人工生命とは、それぞれの個体の性格を表わすいくつかのパラメータを持ったものだ。たとえば、「肉食/草食」や「一度に子供を産む数」というものを数値として持っている。また、さきほどのAからJまでの10種類の物質それぞれに対して、「好き/嫌い」や「物質への適応性(栄養/毒)」というものもパラメータとして持っている。自分にとって栄養となる物質を食べたときには体力がアップし、毒となる物質を食べた場合には体力が消耗する。また、自分にとって栄養となる物質をたくさん含んだ他の人工生命を食べた場合はその人工生命が持っていた物質すべてを自分が摂取することになり、それにしたがって体力が上下する。

草食性の高い人工生命は、空間内に散らばっている物質を食べる。各人工生命は、それぞれの物質に対して「好き/嫌い」と「栄養/毒」を持っているが、中には「好きだけど毒」というものもある。人間で例えれるなら愛煙家のようなものだ。そういうパラメータの組み合わせを持ってしまった悲しい種は、空間内の毒を喜んで食べ続け、そして死んでしまう。(たった今ぼくは、世界中の愛煙家全員を敵に回してしまった。。。)

この空間内の人工生命は生殖の機能もある。つまり、個体同士が交配して、子供を産むということだ。このとき、さきほど例に挙げた「一度に子供を生む数」というパラメータに従って、子供を産むわけだが、子供を産むときには自分の体内にあるそれまでに貯め込んだ物質を子供に分け与えるので、一度にたくさんの子供を産むと、その分自分の体力の消耗も大きくなる。なので、必ずしも子供をたくさん産むことが子孫を残すための得策であるとは限らない。

個体同士が交配するときには、両方の親の持っているパラメータを交配するので、両方の親の性質を引き継ぐような個体が産まれる。そしてここでは交配ができる相手に制限をかけていないので、たとえば肉食性のものと草食性のもののあいのこ、というものも起こりうる。

この二次元空間での人工生命のふるまいは、
- 物質を食べる
- 物質を排泄する
- 他の人工生命を食べる
- 他の人工生命と子供を作る
といったものである。このふるまいを繰り返すと、自然淘汰を繰り返すことになり、結果としてその環境に適応できたものだけが子孫を残し続けることになる。
この自然淘汰を繰り返すと、結局は他の人工生命を食べる肉食性の強いものだけが残る、と当初は予測していたのだが、結果としては全然違うものになった。

一旦は肉食性の強いものが多数派にはなるのだが、そうなると餌となる草食性のものが少なくなるため、食べ物がなくなり、やがて肉食性のものは生きられなくなる。その結果、草食性も滅びるということはなく、ある一定のバランスを持って空間全体に生態系のようなものができあがっていくのだ。

このとき、あるおもしろいことが起こった。すぐに肉食性のものに食べられてしまう草食性の弱い種ができあがっていた。その弱い草食性の種は、自分を好む肉食性にとって「毒」になる物質を貯め込むようになったのだ!つまり、その弱い草食性の人工生命を食べた肉食性の人工生命は、それを食べることによって大きく体力を失い、ひどいときには一度食べただけで死んでしまう。食べられた方の草食性は、個体としての自分は食べられて姿を消してしまうが、他の同族の種を守ることができた、というわけである(当時、ぼくはそれを「毒虫」と呼んでいた)。あるいは、自分が好きな物質をより多く排泄する他の種について回る「寄生虫」のような種もあらわれた。
こういうことが様々起こることによって、その環境に適応したものが残ることになり、そこには生態系が形成されることになる。

さて、ここでひとつ言えることは、このゲームをプログラムしたぼくは、ここで起こることをプログラムしたわけではなく、ただ、性格を表わすパラメータを持った人工生命が交配することによって自然淘汰されていく、という仕組みを作っただけで、そこで起こることはプログラムしたぼくにさえまったくわからなかった、ということだ。
ただ、その環境の中でより長く生きることができたものはより子孫を残すチャンスが与えられていた、ということは言えて、そういう種は繁栄することになる。言い換えれば、環境に適応できたものが繁栄する、ということだ。そして、ここでの適応するべき「環境」というものそのものが、人工生命の各個体間の相互影響によって創り上げられたもので、そこでのルールというものさえその自然淘汰の中で自然発生したものだ、ということである。

人工生命は、技術としては何らかの問題を解決するためのものであるのかどうかはあやしい。もしかしたらまったく何の役にも立たない技術なのかも知れない。でも、だからこそ、人工生命は科学としてはとても面白いものであるし、科学の本質であるとさえぼくには思える。

この記事が気に入ったらサポートをしてみませんか?