PCで苔を育てる人

自作シミュレーションゲームPraparatを作っています。 人工生命をシミュレーションするゲームです。https://www.nicovideo.jp/watch/sm41192001

【人工生命】自分の動画を自分で紹介【Praparat】

私が初めて買ってもらったゲームはポケモンでした。楽しみ方は人それぞれですが、私の場合、そのゲームに「発見の喜び」を感じていました。その世界にどんなポケモンがいるのか、その全容は明らかではなく、新たな地で、まだ見ぬポケモンを探す冒険を楽しんでいました。しかし、大きくなるにつれ、その喜びは失われていきます。というのも、それらのポケモンは決して私が初めて見つけたわけではないのです。攻略本、最近では攻略サイトですが、ともかく、私が初めて発見したと思っていたその事実は、既に他の人が見つけ、理路整然とまとめているのです。もっと言えば、そのゲームを作ったプログラマは、誰よりも早くそのことを知っています。それに気づいてしまったときに、私はあまりゲームを楽しめなくなっていました。

そんな悩みを解決するために開発したのが、今回紹介するソフト、Praparatです。目指したのは本当の意味での「発見の喜び」を感じられるゲームです。そのためには、それを作ったプログラマですら、どんな生き物が現れるか分からない必要があります。それを実現するため、実際の生き物の仕組みを模倣してみることにしました。

つまり、その生き物の設計図はDNAに書かれており、細胞分裂を繰り返すことで、その形を形成、突然変異による形質の獲得と淘汰を繰り返す中で、環境に適応した個体が生き残る。このような仕組みを作れば、プログラマですらどんな生き物が現れるか分かりません。

こうした思想の元、プログラムの設計に着手したわけですが、さっそく大きな壁にぶち当たります。DNAからどのように体が形成されていくのか分からないのです。

生き物の設計図がDNAであることは漠然と知っています。そして、DNAが4種類の塩基配列によって情報を記録していることも高校1年生の授業で習いました。しかし、私の知識はそこで止まっており、「DNA」と「細胞分裂による体の形成」が結びつかないのです。

体を組み立てる第三者がいれば話は簡単です。手がどんな形をしていて、体のどこから生えているか等をDNAに書いておけばいいのです。第三者はそれを見ながら、プラモデルを組み立てるようにパーツを並べていけばいい。

しかし、実際の状況は違います。例えるなら、監督のいない集団演技に近いはずです。最初は自分1人と設計図だけがあり、設計図に従い、新たな個体を生成することができる。それを繰り返すことで、運動場に手の形を作り出すわけです。問題は、彼らは全体を俯瞰して見ることのできる優れた目などを持っておらず、分かるのはせいぜい自分の周りにいる他の細胞の様子だけ。そして、どの細胞も同じ設計図を持っているという点も気になります。みな同じ設計図を持っているのに、「あ、俺は指先の細胞だからもう分裂やめよう」などと、どうして思えるのでしょうか。こういう状況で、どんな指示を設計図に書いておけば、彼らは手の形を作り出せるのか。それが全然わからなかったのです。

生物系に進んだ知り合いにも聞いてみたのですが、彼らもよく分からないようでした。仕方がないので、実際の生物の仕組みを模倣することは諦めて、どんな設計図なら任意の形の形成が可能か考えてみることにしました。そうして苦し紛れで思いついたのが、「本」と「栞(しおり)」を使う方法です。

そういった経緯で作成したプログラムとその紹介動画です。よかったらみてください!

www.nicovideo.jp

www.nicovideo.jp

www.nicovideo.jp

www.nicovideo.jp