CAM-PCに付属してくるルールセットの中で私が最も気に入っているのがこれ。HEX-BANGというネーミングは、日本語に訳すと「六角バーン」というところか。FORTHのSCREEN 0に記載された説明を読むと、六角格子上の3状態により構成されたルールであることがわかる。
このルールの面白いところは、状態遷移がリバーシブルだということである。任意の時点において、過去と未来のセル状態を入れ替えることにより、シミュレーションの時間の流れを逆転することができるのだ。ムービーでは、1ドットからなるセルから出発して、4800ステップ進んだところで、セル状態を逆転させ、9600ステップ後に最初の状態に復帰している。
ところで、このルールでのシミュレーションが実に興味深い背景には、セル空間がWraparoundされているという事実がある。つまり、256x256セルの有限な平面が、上下・左右がそれぞれつながっているために、どこにも端がないのである。これはトーラスの表面を考えると理解しやすいだろう。
仮に、セル空間が無限の大きさを持つと仮定すると、このルールによるシミュレーションは退屈極まるものになるだろう。なぜなら、外部からの干渉を一切受けない状況では、斜めに傾いた六角形が無限に膨張するだけだからだ。
ところが、実際には前述のWraparound処理がなされているため、ある時間が経過すると、自由膨張していた六角形は、自分自身の反対側と干渉してしまう。これを契機に、セル空間の成長は思わぬ方向に「相転移」を始める。自分自身と干渉した六角形は、次第に幾何学的な複雑性を増して、まるで万華鏡のような趣を示し始めるのだ。
さらに、こうした幾何学的複雑性を経て、やがて植物の茎の断面のような有機的で非幾何学的な形状へと変化して行く。やがて幾何学性はなりを潜め、ついには点対称性は維持しつつもセル空間全体が沸騰しているかのような状態に至る。ところが、こうした激しく沸き立った状態から時間軸を逆転させると、不思議なことに有機的セル空間が、再び幾何学性を取り戻し、最後にはスタート時点の1ドットに回帰するのだ。これは、実に驚くべきことで、カオス的な状態にあるセル空間が、極めてシンプルな初期状態に復帰するためのパスを「記憶」しているかのようだ。
因みに、最初の六角形はブルーだが、逆転して初期状態に回帰する直前のものはグレーである。これは、時間軸の逆転に伴って、セル表示に用いるカラーテーブルが変更されたことによる。実は、このルールを素直にCAM-PCのカラーテーブルを用いて表示させると、ステップごとに画面がフラッシングしてしまうのだ。そのため、カラーテーブルを回転させることにより、このフラッシングを押さえているのだが、逆転のタイミングによっては、ローテートしているテーブルにズレが生じてしまうのが原因だ。
\ HEX-BANG Reversible 3-state rule on hex lattice 30Mar89nhm
This rule (suggested by Hyman Hartman and Pablo Tamayo) is a
second-order reversible rule of the form discussed in Section
14.2 of the CAMBOOK. To run backwards, we simply interchange
the information corresponding to past and future---a key (Alt-R)
is provided to do this.
Here we also provide an example of un-rotating the colors for
a rule which rotates through a cycle of colors in large uniform
regions. Since we use the STD-MAP which maps all 16 states into
8 colors, we cannot counter-rotate on the basis of the current
color (some colors appear more than once in the same cycle,
attached to different cell states). Instead we counter-rotate
the cell states, and then look up the corresponding color. The
Alt-U key starts color counter-rotation; Alt-N returns to the
normal STD-MAP. See also ROTMAP.4TH and ZHABO.EXP.
\ Reversible 3-state rule on hex lattice 30Mar89nhm
NEW-EXPERIMENT N/MOORE &/CENTERS
: HEX-NOR NORTH SOUTH WEST EAST N.WEST S.EAST
OR OR OR OR OR NOT ;
: BANG CENTERS { HEX-NOR 2 0 0 } &CENTERS - 3 MOD >PLNA
&CENTERS >PLNB ;
MAKE-TABLE BANG 1 128 128 0 B!CELL
: VAL>COLOR 16 MOD CMAP + SHAD-SEG SWAP C@L NOT F AND ;
: RMAP X@ { 8 4 0 3 9 5 1 7 2 A 6 B C D E F } VAL>COLOR >IRGB ;
: RCYC STEP MAKE-CMAP RMAP ;
: Reverse -STEP# 1 0 3 2 PERMUTE ; ALIAS R
: Unrotate.colors MAKE-CMAP STD-MAP MAKE-CYCLE RCYC ; ALIAS U
: Normal.colors MAKE-CMAP STD-MAP MAKE-CYCLE STEP ; ALIAS N
Powered by
コメントする