ラングトンのアリをブラウザで遊べるサイトです。様々な拡張版で遊べます。
こういったサイトを作るのは初めてなので不便に感じるところがあるかもしれません。些細なことでもページ下のコメントで教えていただけると助かります。
ラングトンのアリは、セルオートマトンの一種で、単純なルールに基づいて仮想的な「アリ」が動くシミュレーションです。
簡単に言えば、アリが白黒のマスをルール通りに動いてマスを反転させていく遊びです。ここでは、赤い三角をアリとしています。
クリストファー・ラングトン※1によって考案され、どんどんマスを反転していく様がアリが動いているように見えるのでこんな名前になったそうです。
アリはこの3つのルールを順番に繰り返して動きます。初期配置として※2全てのマスを白の状態として動かすと、最初は混沌と動いているように見えますが、約1万歩後に「道」を作り始めます。どんな初期配置からでも道を作ることが実験的にわかっています。
※1 クリストファー・ラングトン(1949-?) アメリカの計算機科学者、人工生命研究の先駆者。
※2 初期配置はマスの状態(白黒)のこと。ただし白マスまたは黒マスのいずれかは有限個とする。
以下のボタンから、ラングトンのアリで遊べます。スマホやタブレットの方は「モバイル版」ボタンを押してからモードを選択してください。
操作方法・説明は下にあります。ルールがわからなくても、とりあえず通常モードから動かしてみると良いと思います。
軌跡図鑑は、いろいろなパターンのアリの軌跡を記録した場所です。面白い軌跡がたくさんあるので是非。
各モードのボタンを押すと、操作方法が表示されます。
右のチュートリアルボタンを押すとチュートリアルに飛びます。サイトの使い方やラングトンのアリの説明が見れます。
通常のラングトンのアリが動いているところを見ることができます。初期配置を変えたり、アリを増やしたりして遊べます。
赤い三角がアリです。操作方法ボタンで、以下の操作方法とほぼ同じものが見れます。
絵を描いて、アリを動かしてみてください。どんな絵を描いても道を作るはずです。
基本的な操作は通常モードと同じです。「n回に1回、方向を変えずk歩直進する」という条件を追加して遊べます。
さらに、左右に曲がるときに進む歩数を変えることができます。
色々な組み合わせで試してみてください。最初から道を作るものなど、面白いものがたくさんあります。n=0 で通常の動きになります。
このモードでは、「1歩前にいたマス」と「今いるマス」の色の組み合わせによって進む方向が決まります。
黒と白の4通りの組み合わせと、それぞれ方向が上下左右の4通りで、全部で256通りの組み合わせがあります。最初の1歩目で、白,白として動きます。
グルグル回りながら拡大するなど、割と整然とした形になるものが多いです。左右左右で通常モードの動きになります。
使う色を増やし、アリがいるマスのルールに従って左右どちらかを向く→マスの色を次の色に変える→直進という感じで動きます。
色は、白→黒→赤→青→緑→黄→紫→橙→水→桃→茶→灰 の順番で変わります。最大12色です。
例えば、3色で左右左で、アリのいるマスが赤なら、左を向いて色を白に変えて直進します。
色数が偶数で、左右交互にすると通常の動きをします。
アリ自身が複数の状態を持っていて、状態に応じて動きが変わります。
例えば最初設定されているルールでは状態が2つ(0と1)で、
状態0の時、マスが白ならマスを反転せず向きを変えず1マス進み、状態1にする。
マスが黒ならマスを反転して右を向き1マス進み、状態1にする。
状態1の時、マスが白ならマスを反転して左を向き1マス進み、状態0にする。
マスが黒ならマスを反転して向きを変えず1マス進み、状態1にする。となっています。
どの状態の時にも反転有り、白の時右、黒の時左にすると通常の動きをします。
マスが六角形のモードです。通常は、アリがいるマスが黒だったら左に60°向いて1マス直進、白だったら右にに60°向いて1マス直進します。操作方法は通常モードと同じです。
多色では、多色モードと同じルールで、アリがその色のマスにいるときに向かう方向が、右上、右下、下、左下、左上、上の6種類あります。
条件では、条件付きモードと同じルールで、n回に1回方向を変えずk歩直進します。
コラッツ予想を元にアリが動いていくモードです。コラッツ予想とは、
この2.を繰り返すとどんな自然数でもいつか必ず1になるという予想で、数学的に証明されていない未解決問題です。1になった後にも操作を続けると、1→4→2→1→4→2という風に周期に入ります。
どんな初期配置(初期値)からでも収束し周期を作ることや、それらが実験的には必ずなると思うけれど数学的な証明が難しいというところがラングトンのアリと似ています。
このモードでは、初期値をコラッツ予想のルールで操作しながらその操作に合わせてアリが動きます。コラッツ予想の元のルールではなく、例えば偶数なら4で割るなどもできます。
最初に設定されているものは、nが偶数ならnを2で割ってアリがいるマスの色を反転させて右に進む、奇数ならnを3倍して1を足して反転して左に進むという感じになっています。
nが1になったら自動で止まるようになっていますが、止まった後にもう一度スタートボタンを押すと続きから動き始めます。nが割り切れないときは小数点以下切り捨てになってしまうので気を付けてください。
今はマスの色を参照していないので、マスの白黒によっても何か分岐するようなものも作ってみたいです。
履歴