コメント(0)>動画を再生するには、videoタグをサポートしたブラウザが必要です。6)を久しぶりに動作させてみた。書いても、そんな物など知らないという人がほとんどだろう。いう訳で、WIKIにリンクを張っておく。20年も前に、MITで開発されたセルオートマトン用の並列計算機である。計算機と言っても、PC-AT互換機のXTバス(!)に挿入する特殊なカードの形状をしている。これをベンチャー企業のAutomatrixが「CAM-PC」の名称で販売していたのである。1990年代初頭の頃の話だ。当時、グラフィックスワークステーション上で動作するCAD開発に携わっていた私は、Xウィンドウ上で、ジョン・コンウェイのライフゲームを作って遊んでいたものだが、ネットニュースでこのCAM-PCが発売されることを知り、大枚20万円近くをはたいて個人輸入したのであった。1992年末のことである。この並列計算機は、セルオートマトンに用途を限定すれば、当時最先端であったスパコンのCray-2とほぼ同等の性能と謳われていた。確かに、毎秒60フレームでリアルタイム表示されるセルオートマトンは、驚異的なスピードであった。(ここに掲載した動画は、実機の約半分の速度である)セルオートマトンのルールは、柔軟に定義することが可能となっており、そのためのツールとして、FORTHで書かれたCAM-FORTHというアプリケーションが附属していた。このツールを用いて、拡張されたFORTHのワードを用いて様々なセルオートマトンのルールとその表示方法を指定することができる仕組みとなっていた。ホストPC上で動作するCAM-FORTHは、状態遷移のルールと、そのルックアップテーブルを生成し、これをデータとしてCAM-PCに転送する。実際のシミュレーションは、総てCAM-PC内部で完結して実行されるので、ホストPCとはXTバスで接続されているだけで十分なのである。出力は、水平同期15kHzのデジタルRGBモニタを、カードの出力端子に接続して行い、シミュレーションの制御やルールの設定等は、ホストPCに接続されたVGAモニタから行うため、二つのモニタが必要である。今となっては、入手困難なデジタルRGBモニタと、20年近く前に購入した486DXのホストPCは、いまだに私の机の上にある。これらのマシンは、現状では動作しているが、何せ年代ものなので、いつまで動作するか全く判らない。そこで、シミュレーションのムービーを作成して、往年の並列マシンを偲ぶよすがにしようと思ったのである。前置きが長くなったが、第一回は、前述のコンウェイのライフゲームである。参考までにCAM-FORTHで書かれたルールの設定を以下に示しておく。RND>PL50%のランダムスープからスタートしたセルの状態遷移は、約1200ステップで、終局状態に到達する。このルールでは、静止したセルは赤、生成したセルは緑、死滅したセルは青で表示される。終局状態では、多数の安定的なパターンと何種類かの振動パターンが見られる。セル空間は、「ラップアラウンド」されている。上下端と左右端がそれぞれつながっており、有限ながら端のない平面を構成している。トーラスの表面を思い浮かべると解りやすい。ところで、20年前はスパコン並みの計算能力を有していたこのハードウェアも、現在の最先端の汎用CPUの処理能力にはとても及ばない。CPUの進化がそれだけ早かったということだが、今では、完全にソフトウェアで同等以上の性能を引き出すことが可能だ。興味のある方は、Cellabをダウンロードして試してみると良いだろう。CAM-PCのように、インタラクティブにルールの変更をすることはできないものの、CやPascalでルールテーブルをコンパイルして様々なシミュレーションを行うことが可能だ。Proこのブログはクリエイティブ・コモンズでライセンスされています。