
2026/05/18 4:21
成長するニューラル細胞自動機構造
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
最大の進歩は、多細胞の自己組織化、形態形成、および再生のためのアルゴリズムを発見するために微分可能なセルラーオートマトン(CA)を用いるという提案です。静的な DNA シ퀼エンスを焦点とする従来のゲノム学分野とは異なり、このアプローチでは生物学的構造が成長するか停止するタイミングを支配する動的な規則を明らかにし、可塑性や頑健性といった本質的な特性を再現することを目的としています。该方法は細胞を 2D グリッドとしてモデル化し、各ユニットには16 次元の状態ベクトルを持たせます:最初の 3 チャネルは RGB(目標範囲 [0.0, 1.0])、1 チャネルは生体細胞 ($\alpha > 0.1$) と死体細胞を区別するためのアルファ値、そして暗黙的なチャネルは事前に定義された意味を持たない化学物質やシグナル機構の濃度を表します。
知覚処理については、x および y 方向の空間微分を推定する固定された Sobel フィルターを用い、これを細胞の局所状態と連結して 48 次元の知覚ベクトル ($16 \times 2 + 16$) を形成します。約 8,000 パラメータを持つ学習済み更新規則は局所的な3x3 ニュートンホッドを通じて振る舞いを適用し、グローバル同期制約なし(最終的な ReLU なし)で相互作用をシミュレートします。トレーニングの不安定性に対処するため、モデルは更新を確率 0.5 でランダムにマスクすることでランダム性を導入し、本質的には独立した細胞タイミンングをシミュレートするのではなくグローバルなロックを回避します。さらに、「サンプルプール」戦略は最高損失のサンプルを置換することで不安定性に対処し、特定の再生実験では低損失のサンプルを意図的に損傷させることで自己修復振る舞いへの一般化を強制します。
アラン・チューリングの反応拡散系およびフォン・ノイマンの自己複製モデルに基づき、本フレームワークはin silico実験において単に知覚フィールドを回転させる(Sobel カーネルを回転させる)だけで再トレーニングを行わずに勾配角度に調整されるパターンを生成できることを示しました。さらに、「生体細胞マスクルール」は空の細胞(隣接する $\alpha > 0.1$ のセルがないもの)をゼロに設定することを強制し、これらが計算に参加するのを防ぎます。物理的に実装された場合、このようなモデルは中央集権的な調整なしで光信号を通じて通信する独立したマイクロコンピューターグリッドとして機能することができます。究極的には、これは解剖学的な成長と再生をシミュレートするための新たな道具を提供するとともに、複雑な生物学的形態は静的な設計図ではなく、単純な発見可能な規則から発生することを証明します。
本文
コンテンツ
- 成長を学ぶ
- 何が残存し、存在するか
- 再生を学ぶ
- 知覚領域の回転
はじめに
本稿は「微分可能な自己組織化システム」というテーマの一部であり、隣接分野の複数の専門家による批判的な註釈に挟み込まれた、短編記事を集めた実験形式のものであり、微分可能な自己組織化システムを探求することを目的としています。
多細胞生物の多くは、単一の卵細胞から生命を開始します。この卵細胞の子孫(娘細胞)は、信頼性を持って自己集積し、多くの臓器と組織を備えた極めて複雑な形態を、毎回同一の配置で構築します。自らの体を構築する能力は、恐らくあらゆる生命体が有する最も基本的なスキルでしょう。形態形成(生物の形状が発達するプロセス)は、自己組織化と呼ばれる現象の最も顕著な例の一つです。細胞とは、体の微細な構成要素であり、隣接する細胞と通信して臓器の形や全体計画を決定し、各臓器をどこに成長させるか、どう互いに接続するか、そしていつ成長を停止するかを決めます。複雑な結果が単純な規則からどのように émergence(顕現)するかを理解すること、また外部からの摂動下でも恒常性フィードバックループによって身体を安定した状態または正しい全体形態を保持しようとする仕組みを理解することは、現在も活発に研究されている分野です。明らかなのは、進化は物理学と計算の法則を利用して、ゲノムでコード化された細胞というハードウェア上で動作する極めて堅牢な形態形成ソフトウェアを実装することに成功したという点です。
このプロセスは摂動に対して極めて堅牢です。生物が完全発育を終えても、いくつかの種はまだ損傷を修復する能力を持っています(これを再生と呼びます)。サラマンダーなどの一部の生物は、重要な臓器、四肢、目、さらには脳の一部さえも完全に再生できます!形態形成は驚くほど適応的なプロセスです。時には、極めて異例な発達プロセスであっても生存可能な生物が生じる場合があります。例えば、早期の哺乳類の胚胎が二つに切られた場合、各半分が完全な個体を形成し、同じ遺伝子を持つ双子(一重犭合胎)となります!
この分野における最大の難問は、「細胞集団は何をどのように、そしていつ停止すべきかを知っているのか」という問いです。ゲノム学や幹細胞生物学はパズルの一部に過ぎません。なぜなら、それらは各細胞内の特定成分の分布や、異なる種類の細胞の確立を説明するに過ぎないからです。再生プロセスに必要な多くの遺伝子については知られていますが、細胞が非常に具体的な形態学的最終目標に向かって複雑な臓器を構築またはリモデリングする方法を知るために十分であるアルゴリズムについてはまだ解明されていません。したがって、バイオメディシンの将来の作業における重要なキーストーンの一つは、大規模な解剖学が細胞集団内でどのように特定され、またこの情報を書き換えて成長と形態を合理的に制御できるのかというプロセスの発見です。生命のソフトウェアには、「ここに目を作れ」といったシンプルな信号トリガーで活性化される多数のモジュールやサブルーチンが存在することが明らかになってきています。このようなサブルーチンの発見と発達論理の概要図示は、発生生物学と計算機科学の境界にある新たな分野です。次の重要な段階は、このプロセスに関する計算モデルを構築することであり、生物学者の概念ツールの充実を図りつつ、生物学の発見をより良いロボティクスや計算技術に転換するのを支援することです。
もし、生物的生命と同じような可塑性と堅牢性を持つシステムを設計できればどうでしょう?自己成長・自己修復が可能な構造や機械が可能になります。そのような技術は、再生医療の現在の取り組みを変革します。科学者と臨床家は、体内の細胞が必要な時に構造を構築させるためにどのような入力または刺激を与えるべきかを見つけようとしています。形態形成コードの謎を解明するのを助けると同時に、生物学の知見を利用して現実世界で自己修復システムを作成することを目指し、私たちはいくつかの望ましい特性を in silico(シミュレーション上の)実験において再現しようとしています。
モデル
工学分野や研究者たちは、局所的相互作用を取り入れた多くの種類のシミュレーションを使用しており、これは偏微分方程式(PDE)系、粒子系、そして各種のセルオートマトン(CA)などです。私たちがここで注目するのは、集団が持つ複雑で再生的な振る舞いを生み出す細胞レベルの規則を特定する試みの指針となるセルオートマトンモデルです。セルオートマトンは通常、グリッド上のセルが反復的に更新される構成を持ちます。各ステップにおいて、同じ規則集が各セルに適用されます。新しいセルの状態は、直近の近傍にある少数のセルの状態のみによって決まります。一見単純であるにもかかわらず、CA は豊かな興味深い振る舞いを示すことが多く、生物現象をモデル化するために長い歴史を持つツールです。
では、単一のセルから始め、2D グリッド上で事前に定義された多細胞パターンを生み出すセルオートマトンの更新規則を開発してみましょう。これが我々の生物発達の類推的な玩具モデルです。CA を設計するには、可能なセルの状態とその更新機能を指定する必要があります。典型的な CA モデルは離散値のセットでセル状態を表現しますが、連続値ベクトルを使用するバリエーションも存在します。連続値を使用することの利点は、更新規則が細胞の近傍の状態に対して微分可能関数になることを許容できる点にあります。局所環境に基づいて個別の細胞の振る舞いを導くこれらの規則は、生物のゲノムでコード化されたローレベルのハードウェア仕様に類推できます。初期構成から一定数のステップ分のモデルを実行することで、そのようなハードウェアによって可能とされるパターニング振る舞いを明らかにできます。
では、微分可能な更新規則が何故特別なのかというと、損失関数という強力な言語を使用して我々の希望を表現し、勾配に基づく数値最適化の広範な既存の機械を用いてそれらを達成することができるからです。異なる微分可能関数を積み重ねて、それらのパラメータを最適化してさまざまなタスクを実行するという技術は長い歴史を持ちます。近年では、(深層)ニューラルネットワーク、ディープラーニング、あるいは微分プログラミングなど、さまざまな名称の下で急速に発展しています。
セル状態
各セルの状態は 16 つの実数値のベクトルとして表現します(上記の図参照)。最初の 3 チャンネルは私たちが視覚化できるセルの色(RGB)を表します。目標パターンは、色チャンネルの値を [0.0, 1.0] の範囲に設定し、フォアグラウンド画素では $\alpha$ を 1.0、背景では 0.0 とします。
アルファチャンネル ($\alpha$) は特別な意味を持ちます:それは「生きている細胞」を区別する役割を果たします。ここでいう「生きている」とは、パターンが成長されているものに属する細胞のことです。具体的には、$\alpha > 0.1$ を持つセルとその近傍のセルは「生きている」とみなされます。他のセルは「死んでいる」または空であり、各時間ステップでその状態ベクトルの値を明示的に 0.0 に設定します。したがって、$\alpha > 0.1$ を持つセルは「成熟した」細胞と考えられ、$\alpha \leq 0.1$ の近傍のセルは「成長中」であり、もし $\alpha$ が 0.1 の閾値を超えれば成熟できます。
隠れチャンネルには事前定義された意味はなく、どの様に使用するかは更新規則次第です。これらは、細胞が成長を統率するために使用されるいくつかの化学物質の濃度、電気的ポテンシャル、または他のシグナリング機構と解釈できます。生物学的な類推にすれば——全ての細胞は同じゲノム(更新規則)を共有しており、差別化されるのは細胞が受け取り、放出し、内部に蓄積する情報(化学シグナリング)によってコード化された情報だけです。
セルオートマトン規則
さて、更新規則を定義する時です。我々の CA は、16 次元ベクトルの規則的な 2D グリッド上で動作します。本質的には形状が [高さ, 幅, 16] の 3D アレイです。我々は各セルに同じ操作を適用したいと考えており、その結果は細胞の小さな近傍(3x3)のみ依存すればよくればよいでしょう。これは信号処理と微分プログラミングの礎の一つである畳み込み(convolution)操作を強く想起させます。畳み込みは線形操作ですが、他のセルベースの操作と組み合わせることで、望ましい振る舞いを学習できる複雑な更新規則を作成することができます。我々の細胞更新規則は、順次適用される以下のフェーズに分割できます。
知覚(Perception)
このステップでは、各細胞が周囲の環境をどのように知覚するかを定義します。固定されたカーネルを用いた 3x3 の畳み込みによってこれを実装します。有人論者が主張するところ、「このカーネルを定義することは冗長である——実際には、単に細胞が必要な知覚カーネル係数を学習させればよい」という意見があります。我々の固定操作の選択は、実際の生命の細胞が生物発達のガイドとして主に化学勾配のみ reliance することから motivated です。したがって、我々は古典的な Sobel フィルターを使用して、$\vec{x}$ および $\vec{y}$ 方向のセル状態チャンネルの偏微分を推定し、各状態チャンネルに対して 2D グラディエントベクトルを形成します。これらのグラディエントを細胞自身の状態と連結させ、$16*2+16=48$ 次元の知覚ベクトル(あるいは、より正確には「受けた知覚」ベクトル)を各セルのために作成します。
def perceive(state_grid): sobel_x = [[-1, 0, +1], [-2, 0, +2], [-1, 0, +1]] sobel_y = transpose(sobel_x) # Sobel フィルターを状態と畳み込みする # x, y, およびチャンネル次元に対して。 grad_x = conv2d(sobel_x, state_grid) grad_y = conv2d(sobel_y, state_grid) # 細胞の状態チャンネル、x 方向のチャンネルグラディエント、 # および y 方向のチャンネルグラディエントを連結する。 perception_grid = concat( state_grid, grad_x, grad_y, axis=2) return perception_grid
更新規則
各セルは現在、知覚ベクトルに一連の操作を適用します。これは通常のカウント可能な微分プログラミングのビルディングブロック(例:1x1-畳み込みと ReLU 非線形性)から成り、我々はこれを細胞の「更新規則」と呼びます。思い出してください、更新規則は学習されるものであり、各セルが同じ更新規則を実行します。この更新規則をパラメータ化するネットワークは、約 8,000 のパラメータを持っています。残差ニューラルネットワークに触発されて、更新規則は細胞の状態への累積的な更新量(incremental update)を出力し、それを次の時間ステップ前のセルに適用します。更新規則は「何も行わない」初期振る舞いを示すように設計されており、これを実現するために最終畳み込み層の重みをゼロで初期化しています。また、更新規則の最終層の出力に対して ReLU を適用することを避けています。なぜなら、細胞状態への累積的な更新は必ずしも状態を増減させなければならないからです。
def update(perception_vector): # 次の擬似コードは単一の細胞の知覚ベクトルに対して動作します。 # パフォーマンス理由から、実装では 1D 畳み込みを使用しています。 x = dense(perception_vector, output_len=128) x = relu(x) ds = dense(x, output_len=16, weights_init=0.0) return ds
ランダムセル更新
典型的なセルオートマトンでは、すべてのセルが同時に更新されます。これはグローバルな時計の存在を意味し、全細胞を同期させます。グローバル同期に依存することは、自己組織化システムからの期待にはふさわしくありません。各セルが独立して更新を実行し、更新の間隔でランダム時間を待機するという仮定により、この要件を緩和します。この振る舞いをモデル化するために、更新ベクトルに対してランダムなセル毎のマスクを適用し、事前に定義された確率(訓練時には 0.5 を使用)で全ての更新値をゼロに設定します。この操作は、更新ベクトルに対するセル毎のドロップアウトの適用としても見なせます。
def stochastic_update(state_grid, ds_grid): # ランダムな分数の更新をゼロ化する。 rand_mask = cast(random(64, 64) < 0.5, float32) ds_grid = ds_grid * rand_mask return state_grid + ds_grid
生きている細胞のマスキング
我々は、単一のセルで始まり空の細胞が計算に参加したり隠れ状態を持ちたりしない成長プロセスをモデル化したいと考えています。これを実現するためには、空の細胞のすべてのチャンネルを明示的にゼロに設定します。あるセルが「空」とみなされるのは、その 3x3 の近傍に「成熟した」($\alpha > 0.1$)細胞が存在しない場合です。
def alive_masking(state_grid): # アルファチャンネルを「生命」の尺度とする。 alive = max_pool(state_grid[:, :, 3], (3,3)) > 0.1 state_grid = state_grid * cast(alive, float32) return state_grid
実験 1:成長を学ぶ
最初の实验中、我々は単に CA をランダムな数の更新後に目標画像を達成するように訓練しました。このアプローチは極めて単純であり、問題に直面します。しかし、それが浮き彫りにした課題は将来の試みを洗練させるのを助けます。
グリッドをゼロで初期化しますが、中央に一つだけ種のセルを除きます:
- RGB を除くすべてのチャンネルを 1 に設定する。
- 種の RGB チャンネルはゼロに設定します(白い背景に対して可視となるようにするため)。
グリッドが初期化されたら、更新規則を反復して適用します。各トレーニングステップで、パターンが一連の反復において安定していることを願うため、[64, 96] の範囲からランダムな CA ステップ数をサンプリングします。最後のステップでは、グリッド内の RGBA チャンネルと目標パターンの間のピクセル単位 L2 損失を適用します。この損失は、リкурレントニューラルネットワークの訓練標準方法である時間方向バックプロポゲーションによって更新規則のパラメータに対して微分可能に最適化できます。
我々はトレーニング後期の段階で損失値の突然の変化として現れるトレーニング不安定性を観察しました。これらを軽減するために、パラメータ勾配に対して変数ごとの L2 正規化を適用しました。これは重みの正規化と類似の効果があるかもしれません。他のトレーニングパラメータは付録のソースコードに含まれています。
最適化が収束したら、我々の学習した CA が種のセルから始めてどのようにパターンを成長させるかを見せるためのシミュレーションを実行できます。訓練中に使用されたステップ数よりも長い時間実行すると何が起きるか見てみましょう。以下のアニメーションには、異なる絵文字パターンを生成するように訓練されたいくつかのモデルの振る舞いが示されています。
トレーニングのバッチによって得られるモデルは、長期にわたる振る舞いに大きく異なることがあります。いくつかは消滅する傾向があり、いくつかは成長を止める方法が分からなさそうです。しかし、いくつかは驚くほど安定しています!我々はどのようにして訓練を恒常的なパターンの生成に向けさせることができるでしょうか?
実験 2:何が残存し、存在するか
前の実験が不安定だった理由を理解するための一つのアプローチは、動的システムとの類似性を引き出すことです。我々は各細胞を動的システムとみなすことができます。各セルは同じダイナミクスを共有し、相互に局所的に結合されています。我々の細胞更新モデルを訓練するということは、これらのダイナミクスを調整することに他なりません。我々の目標は、いくつかの属性を満たすようなダイナミクスを見つけることです。最初は、システムが種のパターンから目標パターンへと進化することを望んでいましたが、これは実験 1 で達成しました。今では、観測された不安定性(動的システムのメタファーにおける目標パターンをアトラクターとする行為)を回避することに焦点を当てます。
これを達成するための一つの戦略は、CA をはるかに長い時間をかけて反復させ、損失を周期的に目標に対して適用し、これらの長い時間間隔を介してバックプロポゲーションによってシステムを訓練することです。直感的に、より長い時間間隔と複数の損失適用により、モデルは目標形状のアトラクターを作成する可能性が高くなります。なぜなら、我々は系統的にダイナミクスを形成し、システムがどこへ向かっても目標パターンに戻ることができるようにするためです。ただし、より長い時間期間は大規模にトレーニング時間を増大させ、特に中間活性化のすべてが後方パス(backwards-pass)のためにメモリに保存される必要があるため、メモリ要件も大幅に増大します。
その代わりに、我々は「サンプリングプール」ベースの戦略を提案します。同様の効果を生み出します。反復を開始するための種の状態のプールを定義し、最初は単一の水黒色ピクセルの種状態で満たされます。そして、トレーニングステップで使用するためにこのプールからバッチをサンプリングします。「劇的な忘却」に相当することを防ぐため、このバッチ内の一つサンプルを元の単一ピクセルの種状態で置換します。トレーニングステップを完了したら、バッチ用にサンプリングされたプールのサンプルをトレーニングステップからの出力状態で置換します。以下のアニメーションには、20 トレーニングステップごとにプール内のエントリからのランダムなサンプリングが示されています。
def pool_training(): # アルファと隠れチャンネルを (1.0) に設定する。 seed = zeros(64, 64, 16) seed[64//2, 64//2, 3:] = 1.0 target = targets['lizard'] pool = [seed] * 1024 for i in range(training_iterations): idxs, batch = pool.sample(32) # 損失で昇順ソート。 batch = sort_desc(batch, loss(batch)) # 最も高損失のサンプルを種に置き換える。 batch[0] = seed # トレーニングを実行する。 outputs, loss = train(batch, target) # 出力をプールに復帰させる。 pool[idxs] = outputs
トレーニング初期段階では、システム内のランダムなダイナミクスにより、モデルはさまざまな不完全で誤った状態に到達することがあります。これらの状態がプールからサンプリングされるにつれ、我々はそのような状態から回復できるようにダイナミクスを洗練させます。最終的には、モデルが種の状態から目標の状態へ行くことにおいてより堅牢になるにつれて、プールのサンプルはこれを反映し、ターゲットパターンに非常に近づくようになります。これにより、トレーニングがこれらのほぼ完了したパターンをさらに洗練させることができます。
本質的に、我々は前の最終状態を新しい起点として使用し、CA が種から成長するだけでなく、すでに形成されたパターンを維持または改善する方法も学習できるようにします。これにより、結合システムにおいて目標形状をアトラクターとして生成することを奨励するように、通常よりもはるかに長い時間間隔に対して周期的な損失を追加することが可能になります。また、バッチ内の最も高損失のサンプル(ランダムなものではなく)に再種付けを行うことが、トレーニング初期段階でより安定であることを我々は発見しました。それはプールの低品質状態をきれいにすることを助けるためです。
これが CA 規則の典型的なトレーニング進捗の外観です。細胞ルールは機能を洗練させつつ並行的にパターンを安定化すること进行学习します。
実験 3:再生を学ぶ
生きている生物は自らの体を成長させるだけでなく、それを維持するのが得意です。すり減った皮膚が新しい皮膚で置換されるだけでなく、非常に重い複雑な重要臓器への損傷さえもいくつかの種では再生されます。我々が上記で訓練したモデルの一部に再生能力がある可能性はあるでしょうか?
上記のアニメーションには、同じ設定を使用して訓練された 3 つの異なるモデルが示されています。各モデルを 100 ステップにわたってパターンを発展させ、その後最終状態を 5 つの方法で損傷させます:形成されたパターンの異なる半分を除去し、中央から正方形を切り取るように。再び、これらのモデルが訓練外モードでかなり異なる振る舞いを示すことがわかります。例えば、「爬虫類(lizard)」は明確にそれ用に訓練されていなくても、非常に強い再生能力を発達させます!
我々は単一のセルから目標形状へのアトラクターを生成するように結合システムを訓練したので、損傷を受けた後で非自己破壊的反応へと一般化することが予想されました。なぜなら、システムは成長し、安定化し、決して完全に自己破壊しないように訓練されたからです。これらのシステムのいくつかは自然に再生能力へ傾くかもしれませんが、爆発的な細胞分裂(制御不能な成長)、損傷への不応答(過度の安定化)、あるいは自己破壊を含む異なる振る舞いを発達させるものはありません。特に重大な種類の損傷の場合です。
モデルがより一貫した正確な再生能力を示すようにしたい場合は、目標パターンのアトラクション盆地を増やすことができます——自然に我々の目標形状へ傾く細胞構成の空間を増加させます。これを行うために、各トレーニングステップの前にいくつかのプールサンプリング状態を損傷させます。システムは現在、ランダムに配置された消去円によって損傷された状態から再生することを可能である必要があります。我々の望みは、これはさまざまな種類の損傷からの再生能力へと一般化することです。
上記のアニメーションには、トレーニング進捗(サンプル損傷を含む)が示されています。8 つの状態をプールからサンプリングします。次に、最も高損失のサンプル(左上のもの)を種状態に置き換えますし、低損失の 3 つの状態(右上のもの)はパターン内のランダムな円形領域をゼロに設定することで損傷させます。下段の行は、それぞれの最上段の開始状態からの反復後の状態を示します。実験 2 のように、結果としての状態は再びプールに注入されます。
上記のアニメーションから我々が見ることができるように、トレーニング中に損傷に晒されたモデルは、非常に堅牢で、トレーニング過程での損傷型とは異なるもの(例えば上記のような長方形の損傷)にも適用されます。
実験 4:知覚領域の回転
前掲のように、我々は Sobel フィルターを使用して $\vec{x}$ と $\vec{y}$ 方向の状態チャンネルの勾配を推定することにより、細胞が近傍の細胞を知覚することをモデル化します。都合の良い類推は、各エージェントが直交する方向を指す 2 つのセンサー(例えばケモセンス受容体)を持ち、センサー軸沿いに特定の化学物質の濃度勾配を検知できるということです。そのセンサーを回転させるのはどうでしょうか?これを行うには Sobel カーネルを回転させます。
$$ \begin{bmatrix} K_x \ K_y \end{bmatrix} = \begin{bmatrix} \cos \theta & -\sin \theta \ \sin \theta & \cos \theta \end{bmatrix} * \begin{bmatrix} Sobel_x \ Sobel_y \end{bmatrix} $$
この知覚領域の単純な修正は、再トレーニングなしで角度を選択することによるパターンの回転バージョンを生み出します。
ピクセルグリッド上での個体細胞によって量子化されていない完全な世界では、これは驚くべきことではありません。なぜなら、$\vec{x}$ と $\vec{y}$ 方向の知覚勾配は選択された角度に対して不変であることが期待されるからです——単なる参照系の切り替えです。しかし、ピクセルベースモデルでは、それほど単純ではないことに注意する必要があります。ピクセルベースグラフィックスを回転させることは、必ずしも双射ではないマッピングを計算し、古典的には所望の結果を達成するためにピクセル間に補間を行うことを伴います。これは、単一のピクセルが回転すると現在多くのピクセルに重なり合う傾向があるためです。上記のようなパターンの成功成長は、トレーニング中に経験されたもの以外の根本条件に対するある種の堅牢性を示唆しています。
CA と PDEs
細胞オートマトンと PDE 系のさまざまな種類、およびそれらが物理的・生物的あるいは社会的システムのモデル化に応用される事について記述する膨大な文献が存在します。数行でこの分野の概要を提示することは不可能ですが、この作業にインスピレーションを与えたいくつかの代表的な例を記述します。アラン・チューリングは 1952 年に彼の有名なチューリングパターンを導入し、反応拡散システムが形態形成中の化学的振る舞いの有効なモデルであることを提案しました。時間の試みを耐えた特にインスピレーションに富んだ反応拡散モデルの一つはグレイ・スコットモデルで、これには僅かな変数によって制御される極端な多様な振る舞いを見せます。
フォン・ノイマンが CA を自己複製のモデルとして導入して以来、研究者たちの心を魅了しており、非常に単純な規則から極めて複雑な振る舞いが出現することを目撃しました。同様に、学術界外の広範な聴衆はコングウィーの生命ゲームの生命に似た振る舞いに惑わされました。ルール 110 のような単純なものさえもチューリング完全であるという証明に触発された部分があり、ウルフラムの「科学への新しい種」は、CA などの初等コンピュータプログラムを世界中を理解するためのツールとして広範に使用することを中心としたパラダイムシフトを求めるものです。
最近では、いくつかの研究者がコングウィーの生命ゲームをより連続的なドメインで動作するように一般化しました。我々は特に Rafler の SmoothLife や Chan の Lenia にインスピレーションを受けました。Lenia は「生命体」全体の種類も発見・分類します。
多くの研究者が進化アルゴリズムを使用して、事前に定義された単純なパターンを再生する CA 規則を見つけることに使用しました。例えば、J. ミラーは我々と類似の実験を提案し、進化的アルゴリズムを使用して French flag を構築し、再産することのできる CA 規則を設計しました。
ニューラルネットワークと自己組織化
畳み込みニューラルネットワークとセルオートマトンの密接な関係はすでに多くの研究者によって観察されました。その結合は非常に強く、我々が人気のある ML フレームワークに readily available のコンポーネントを使用して Neural CA モデルを構築することを可能にしました。したがって、異なる専門用語を使用して、我々の Neural CA は「ピクセル単位ドロップアウトを持つ再帰的残差畳み込みネットワーク」と呼ばれ得る可能性があります。
Neural GPU は、非常に類似した計算アーキテクチャを提供しますが、乗算とソートアルゴリズムの文脈に適用されています。
より広く見ると、我々は自己組織化の概念が Graph Neural Network モデルの人気を通じて主流機械学習へと進路を見出していると考えています。通常、GNN は(動的である可能性がある)グラフの頂点を超えた反復計算を実行します。頂点はグラフエッジを介して局所的に通信し、タスクを達成するために必要なグローバル情報をメッセージ交換の複数ラウンドを超えて集約します。原子が互いに通信して分子の実現特性を生み出すことができるように、あるいは点がポインクラウドの点の近傍と通信して彼らのグローバル形状を把握できるように考えることができます。
自己組織化は、より伝統的な動的グラフネットワークを使用する魅力的な当代代の作品でも登場しました。著者たちは自己集合エージェントを発展させ、さまざまな仮想タスクを解決することを発見しました。
スワームロボティクス
自己組織化の力を実証するための最も顕著な demonstrations の一つは、それがスワームモデリングに適用される時です。1987 年、Reynolds の Boids は、手作業で作られた小さな規則集だけで鳥の群れのような振る舞いをシミュレートしました。今日では、我々は微小ロボットにプログラムを組み込み、物理的なエージェント上で彼らの集団行動をテストすることができます。これらは Mergeable Nervous Systems や Kilobots のような作業によって示されています。我々の知る限り、スワームロボットに組み込まれたプログラムは現在人間によって設計されています。我々の作業がこの分野へのインスピレーションとして役立つことを願っており、微分モデリングを通じて集団振る舞いの設計を奨励することを期待しています。
議論
胚発生成モデル化
本稿では玩具の胚発生と再生モデルについて記述します。これは生物学とそれを超えた多くの応用を持つ将来の作業の主要な方向です。再生の進化と制御を理解するための示唆、およびバイオメディカル修復のためにこの理解を活用することに加えて、バイオエンジニアリングの分野があります。分野が単一細胞集団の合成生物学から新しい生命機械の真の形態合成へと移行するにつれて、システムレベルの能力(例:解剖学的恒常性(再生修復))をプログラミングするための戦略を開発することは不可欠です。長い間、再生生物は特定の解剖学的パターンを回復できることが知られていましたが、最近では、目標形態が DNA によってハードコーディングされていないだけでなく、この解剖学的恒常性の設定値を格納する生体回路によって維持されていることが発見されました。技術はこの設定値を書き換えるために現在利用可能であり、結果として平たい虫の 2 頭の発生(上記に示されるように、単純な水中での切り分け後に次世代で 2 頭の再生された虫が生じる)などの結果を導いています。システムレベルの目標状態をスワーム振る舞いのために格納する計算プロセスのモデルを開発し始めることが不可欠です。そうすることで、効率的な戦略が開発され、合理的にこの情報構造を編集し、所望の大規模な結果をもたらすことができます(つまり、再生医療と他の多くの進歩を阻害している逆問題を打ち破る)。
エンジニアリングと機械学習
本稿で記述されたモデルは現代コンピュータまたはスマートフォンの強力な GPU で動作します。しかし、そのようなシステムの実装がより「物理的」なもの是什么样かについて想像してみましょう。我々はそれを微小な独立したコンピューターのグリッドとして想像できます。各コンピューターは細胞のゲノム(ニューラルネットワーク重みと制御コード)を記憶するために約 10Kb の ROM と、細胞状態と中間活性化のために約 256 バイトの RAM を必要とします。各セルは隣接するセルに 16 値の状態ベクトルを通信する能力を持つ必要があります。各セルはまた、それが表すピクセルの色を表示するために RGB ダイオードを必要とします。単一の細胞更新には約 10k の乗算加算操作が必要であり、グリッド全体で同期する必要はありません。我々は、細胞が更新の間でランダム時間間隔を待つかもしれませんと提案します。上記に記述されたシステムは均一かつ分散型です。しかし、我々の方法はこれを事前に定義されたグローバル状態に達するようにプログラムし、多要素の故障や再起動の場合にこの状態を回復するための手段を提供します。したがって、我々はこのようなモデリングが信頼性のある自己組織化エージェントの設計のために使用されるかもしれないと推測します。より理論的な機械学習の面で、我々は分散モデルの事例を示しました。それは深層学習分野での現代の作業の大多数で使用されるより伝統的なグローバルモデリングとは反対の方向であると考えており、より分散された学習モデリングを探求するものにインスピレーションを与えられることを願っています。