amoeba (CAM-PC)

| コメント(2)


fleetsの記事で、lifegameの艦隊のセル配置がuser contributionに採用されたという話を書いたが、実は、ルールそのものも採用されたことがある。「amoeba」と名付けたものだが、50%のランダムスープからスタートすると、アメーバのようにセル集合が変形を繰り返し、やがて「蒸発」するというものだ。

再生してみると解るが、ごく初期のステップで、地と図が明白になる。緑色の地に青の図という形で「アメーバ」のようなセル集合が現れる。ルールを定義したFORTHスクリプトは以下の通りだ。


\ AMOEBA
NEW-EXPERIMENT N/MOORE
: MRS
NORTH 2 * WEST 2 * EAST 2 * SOUTH 2 *
N.WEST N.EAST S.WEST S.EAST + + + + + + + ;
: AMOEBA
MRS { 1 0 1 0 1 0 0 0 0 0 0 0 0 } >PLN0 CENTER >PLN1 ;
MAKE-TABLE AMOEBA
: DTS-MAP
ALPHA ALPHA' AND >RED ALPHA ALPHA' NOT AND >BLUE
ALPHA NOT ALPHA' AND >GREEN BETA BETA' OR >INTEN ;
: RSTEP
MAKE-CMAP DTS-MAP STEP MAKE-CMAP STD-MAP STEP ;
MAKE-CYCLE RSTEP
OPEN-PATTERN AMOEBA.PAT
0 FILE>PL


ここで、問題となるのは、ムーア近傍の総てのセルがoffの時に、次のステップではそのセルがonになるということである。このため、地の部分は、2ステップを周期に、サイクリックに色が変わってしまう。なぜなら、CAM-PCの標準のカラーテーブルは、プレーン0のみがonの時にはグリーン、プレーン1のみがonの時にはブルー、両方共onの時にはレッド、両方共offの時にはブラックという設定がなされているからだ。

このままでも、セルの状態遷移を把握するには問題はないのであるが、画面がフラッシングして目が疲れる。そこで、標準のカラーマップのグリーンとブルーを入れ替えたマップを生成し、ステップごとにローテーションさせることにより、画面のフラッシングを抑制している。そのための定義をしているのが「DTS-MAP」だ。(単にSTD-MAPを反対にして命名しただけ)

ところで、終局状態では、静的なセル配置や、右中央付近のパルサーのような振動的セル配置が見られる。まるで、まるでアメーバが蒸発するときに「骨格」を残すかのようだ。色々なランダムスープを初期条件に設定して観察をすると、こうした静的、振動的なセル配置や、lifegameのfleetのような移動体なセル配置が見付かり興味深い。これらについては、次回の記事で紹介することにする。


Powered by

automatrix

コメント(2)

よろしければ URL 記載のプログラムも試してみてください

http://www.hcn.zaq.ne.jp/___/misc/life_hex/life_hex.html

コメントする

アーカイブ