コンピューターの得意分野の1つがシミュレーションだ。自分でプログラムを書けば、架空生物の生命すらシミュレートできる。本特集ではプログラミング言語「Python」を使って人工生命を作る方法を解説する。
【行動と栄養摂取】

前回作ったのは、ただ「寿命」が尽きるのを持つだけの人工生命でした。updateされるたびに歳を取っていき、あらかじめ決められた「寿命」を迎えると死んでいきます。
これに「行動」する機能を付け足して、RandomWalkerクラスを作ります。このクラスでは、updateのたびに自分自身を前に動かします。前に動くとともに、少し向きを変えます。また、自分の位置が±1の範囲を超えないように制御します。
さらに、「食べ物」を摂取するようにします。摂取すると、その分、寿命が延びます。ただし、「食べ物」を認識してそれを目指すわけではなく、単にでたらめに歩き回り、たまたま食事に成功すると生命力が回復するというものです。
「食べ物」を表すFoodクラスは、Entityクラスの拡張として作ります。このクラスは単に緑色の菱形を表示するだけで、移動することはありません。
メインになる部分では、100個のRandomWalkerをupdateしつつ、Foodにぶつかったら、lifeを5増やす処理を入れています。つまり、RandomWalkerは、Foodを摂食し、寿命を伸ばします。Foodは常に50個存在するように制御されます。
このシミュレーションは、RandomWalkerの数(摂食できなければ死んでいく)、Foodの数(常に一定数に保たれる)、RandomWakerがFoodを摂食した際のlifeアップ、RandomWalkerの動き方、RandomWalkerの寿命、といったパラメータによって変化します。
そのコードがリスト7です。実行結果は図3です。