ラングトンループ
Langton’s Loops — 局所ルールが生み出す自己複製
使い方 / Getting started
1つの輪から始まります。輪の内側を流れる色の変化と、外へ伸びる腕を観察してください。「1ステップ」で動きを追い、「+151ステップ」「+1,000ステップ」で計算を早送りします。早送り後は停止し、できた模様が見える倍率になります。
Start with a single loop. Watch signals circulate and an arm extend to construct a daughter loop. Step through the process or fast-forward by 151 or 1,000 steps. Fast-forward computes every step, then pauses and fits the pattern.
- 移動:ドラッグで移動。ホイール、または設定の拡大率でズーム。 / Pan by dragging; zoom with the wheel or slider.
- ループを置く:設定で向きを選び、十分に空いた場所をタップ。 / Choose a rotation and tap an empty area to place a loop.
- 削る・セルを描く:編集すると一時停止。再生で結果を確認。 / Erase or paint cells to pause and edit, then resume.
- リセット:選択した初期配置へ戻ります。早送り中は計算を中止して戻ります。 / Reset restores the selected starting pattern and cancels fast-forward.
- スマートフォンでは右上の⚙から設定を開きます。PNG保存は盤面全体を160 × 160ピクセルで保存します。 / Open settings with ⚙ on mobile. PNG export saves the entire 160 × 160 board.
どんなモデル? / The model
Christopher G. Langtonが1984年に発表した、自己複製する2次元セルオートマトンです。各セルは0〜7の8状態を持ち、自分と上下左右のセルの状態から次の状態を決めます。全セルを同時に更新し、同じ規則を90°ずつ回した向きにも適用します。
Introduced by Christopher G. Langton in 1984, this is an eight-state, two-dimensional cellular automaton. Every cell updates synchronously from its own state and its four orthogonal neighbors. The transition rules apply in all four rotations.
状態0は空間、状態2は外壁です。外壁に囲まれた経路を信号が巡り、腕を伸ばしたり曲げたりする過程を通じて、新たな輪が作られます。「完成した輪をコピーする」という命令はプログラムにありません。初期配置を置いた後は、セル単位の更新だけで複製が進みます。
State 0 is empty space; state 2 forms the sheath. Signals traveling through the enclosed pathway control extension and turning. New loops arise from cell updates, without a command that copies completed organisms.
観察のヒント / What to look for
輪を流れる信号、腕の成長、輪が閉じる瞬間を順に追ってください。増殖が進むと、周囲の輪や構造との接触で複製できない輪も現れます。少し削って壊れ方を比べたり、向きの違う2つのループを置いて、群体の広がり方を観察できます。
Follow the circulating signals, the growing arm, and the closing of a new loop. Crowding can stop further reproduction. Try damage or two differently oriented seeds to see how the colony develops.
自己複製はしますが、このモデルには学習や突然変異による進化は組み込まれていません。編集した任意の模様が複製するとは限りません。表示のcellsは状態1〜7のセル数であり、個体数ではありません。
Self-reproduction here does not include learning or evolutionary mutation. Arbitrary edited patterns may fail to reproduce. The “cells” counter counts nonzero cells, not individual loops.
この実装の範囲 / Implementation
219個の遷移エントリと回転対称性を用い、初期ループは空間以外の86セルで構成しています。実験用の有限盤面は160 × 160セルで、外周の1セル幅は状態0に固定しています。端を反対側につなぎません。ルール表にない近傍は状態0へ移します。盤面の端や手動編集は、無限の空間での標準的な成長とは異なる結果を生むことがあります。
The engine uses 219 transition entries with rotational symmetry and an 86-nonzero-cell seed. The finite 160 × 160 board has a one-cell border fixed at state 0, without wrapping. Unlisted neighborhoods become state 0. Boundaries and manual edits can change behavior compared with standard growth on an unbounded plane.
実際の速度は端末の性能により設定値を下回る場合があります。別タブ表示中は通常の再生を止め、OSで動きを減らす設定がある場合は停止状態で開始します。
Actual speed depends on the device. Normal playback suspends in hidden tabs. Reduced-motion preferences start the simulator paused.
出典・ライセンス / Sources & licenses
- C. G. Langton (1984), Self-reproduction in cellular automata, Physica D 10, 135–144.
- 遷移ルールと初期配置は CellPyLib — Luis M. Antunes(Apache-2.0)からデータを抽出し、JavaScript形式へ変換。ブラウザ用の計算処理・操作画面・解説はALIFE Collection向けに実装しました。
- Rule and seed data adapted from CellPyLib under Apache-2.0; extracted and reformatted for JavaScript. The browser engine, interface and guide were implemented for ALIFE Collection. No endorsement by the original authors is implied.
- 詳しい出典・変更内容 / Attribution & changes · Apache-2.0 license
hamzALIFE · Privacy