鳥の群れからエージェントへ: AIシステムの群れ行動ルール
1986 年、クレイグ レイノルズは、鳥はどのようにして群がるのかという、些細なことに聞こえる質問をしました。哲学的な質問ではありません。工学的なもの。彼は、各鳥の進路をスクリプト化することなく、コンピューター グラフィックスで説得力のある群れをレンダリングしたいと考えていました。
彼の答えは 3 つのルールを使用しました。分離: 隣人の混雑を避けるために操縦します。位置合わせ: 隣接するものの平均的な方位に向けて操縦します。凝集性: 隣接するものの平均的な位置に向けて舵を取ります。リーダーも飛行計画も中央管制官もいない。各鳥に 3 つのルールをローカルに適用するだけで、実際の群れと区別できないほどのグローバルな調整が可能になります。1
40 年後、私は 10 人の専門エージェントとともに multi-agent AI system を運営し、調査、議論、決定の投票を行っています。それらのエージェントが間違った質問について完璧な合意に達した23夜、私はレイノルズが説明したのと同じダイナミクスを見ていることに気づきました:単純なルールからの緊急の調整と、同じメカニズムからの緊急の失敗です。
TL;DR
レイノルズの鳥の群れシミュレーション(boids)アルゴリズムは、3 つの単純なローカル ルールが集中制御なしで一貫したグローバルな動作を生み出すことを示しています。ローカルの指示 (このコードを評価し、セキュリティ面をチェックし、このアーキテクチャをレビュー) に従うエージェントは、ルールが適切に選択されている場合には緊急に調整を行い、ルールが適切に選択されていない場合には緊急に混乱を引き起こします。特殊なケースを修正するためにルールを追加すると、エージェントは改善されるのではなく、「悪化」します。私の 23-agent runaway incident はこれを証明しました。深さだけでなく幅を制限するスポーンバジェットは、レイノルズの分離ルールと同等のエージェントです。
3 つのルール、無限の群れ
上のルールを切り替えて、何が起こるかを確認してください。 3 つすべてがアクティブになると、ボイドは自然に集まります。 分離を取り除くと、それらは単一の塊に崩壊します。 配置を削除すると、ランダムな動きに分散されます。 凝集を取り除くと、局所的な進行方向を維持しながらバラバラになります。それぞれのルールが必要です。どれも単独では十分ではありません。
レイノルズはこれを 1987 年の SIGGRAPH で「群れ、群れ、学校: 分散行動モデル」として発表しました。1 この論文はコンピューター グラフィックスを変えました。 BOID が登場する前は、アニメーション化された群れには手書きのパスが必要でした。ボイドの後、フロックはルールから出現しました。 10 年以上後の 1998 年、レイノルズはこの作品で映画芸術科学アカデミーから科学工学賞を受賞しました。2
より深い貢献は、特定のルールではありませんでした。それは、グローバルな調整にグローバルな知識は必要ないことの証明でした。各ボイドは、その直近の隣人についてのみ知っています。群れの地図を持っているボイドはいない。群れの行き先を知る者はいない。群れには目的地がありません。協調的な動きのように見えるのは、ローカルな決定がグローバルなパターンを生み出すことです。
ピクセルからプロセスまで
群がる鳥 (ボイド) から AI エージェントへのマッピングは比喩的なものではありません。 NeurIPS 2025 ワークショップの論文「Revisiting Boids for Emergent Intelligence via Multi-Agent Collaboration」では、鳥の群れ (boids) の原理をマルチエージェント システムに明示的に適用しています。3 この論文では、協力的なツール構築環境におけるエージェントのための自然言語ガイダンスとしてレイノルズの規則を使用しています。整列と分離は隣接するツールのメタデータから導き出され、凝集性は前のラウンドのグローバルな概要を注入します。
私のマッピングはより単純で、論文を読む前にシステムを構築したものです。
| ボイズルール | エージェント相当 | 何が妨げられるのか |
|---|---|---|
| 分離 | スポーン予算: 親ごとにアクティブなエージェントを制限します | エージェントが同じサブ問題にパイルアップする |
| 位置合わせ | 共有の評価基準: すべてのエージェントが同じ証拠基準を使用します | 互換性のない品質定義に取り組んでいるエージェント |
| 凝集 | コンセンサスプロトコル: エージェントはグループの発見に向かって集中します | 無関係な話に流れ込むエージェント |
平行線は完璧ではありません。 Boids ルールは連続的です (平均方位に向けて操縦します)。エージェント ルールは個別です (最大で 12 個の子を生成します)。 Boid は空間座標内で動作します。エージェントは問題のある空間で動作します。しかし、構造的な洞察は成り立ちます。ローカル ルールは、各エージェントによって独立して適用され、一貫したグループの行動を生み出します。そして故障モードも同じです。
Night 23 のエージェントは間違った質問について同意した
2026年2月 エージェントに「フックディスパッチシステムの改善を検討してほしい」と依頼。エージェントは自身の信頼度を 0.58 と評価し、deliberation system をトリガーしました。 3 人の研究エージェントが誕生しました。それぞれが副次的な問題を発見し、独自の研究エージェントを生み出しました。これらのエージェントはさらに発生しました。
7 分後: 23 のアクティブなエージェント プロセス。 API クレジットで 4.80 ドル。トークンの消費量は 1 分あたり 0.70 ドルで増加しています。
再帰ガードは深さ (親が子を生成し、子が孫を生成) を追跡しましたが、幅 (親が 12 個の子を生成し、それぞれがさらに 12 個を生成) は追跡しませんでした。エージェントは水平に拡散するため、深さ制限 3 はトリガーされませんでした。プロセスを手動で強制終了しました。
すべてのエージェントは、フック ディスパッチ システムには改善が必要であることに同意しました。どのエージェントも合理的な変更を提案しました。捜査そのものの範囲が適切かどうか疑問を呈した捜査員は一人もいなかった。
この結果は、凝集と整列はあるが分離がない場合に何が起こるかを示しています。エージェントは同じ結論に向かって収束し (凝集)、同じ評価基準に基づいて調整されました (調整)。しかし、彼らが同じ副次的な問題に集中することを妨げるものは何もありませんでした。レイノルズの用語では、23 個のボイドが空間内の同じ点を占めており、レイノルズの分離規則が明示的に禁止している動作です。
分割としてのスポーン予算
修正には 20 分かかりました。親ごとのアクティブな子の合計を追跡するスポーン バジェット (上限は 12.4) 深さだけでなく幅の制約。
boid の用語では、スポーン バジェットは分離ルールです。つまり、隣人を混雑させないでください。エージェントの観点から言えば、N+1 番目のエージェントは視点を追加せずにコストを追加するため、サブ問題に N 人を超えるエージェントを配置しないでください。 23 人のエージェントの事件は、分離ルールが 3 つのルールの中で最も重要であることを私に教えてくれました。それがなければ、調整と凝集は病的なものになり、エージェントは同じ間違った答えに熱心に集中します。
レイノルズのアルゴリズムは通常、まさにこの理由から、分離力を整列または凝集よりも 1.5 ~ 2 倍高く重み付けします。1 私のシステムでは、hooks はスポーン バジェット (決定論的、エージェントの合理化の影響を受けない) を強制する一方で、プロンプトとコンテキストの整列と凝集 (より柔らかく、曲げやすい) を形成します。最も厳しい制約には最も厳しい強制が適用されます。
ルールが増えるとエージェントの質が悪化する理由
上の鳥の群れのシミュレーションを切り替えます。ここで、「キャンバスの中心を避ける」という 4 番目のルールを追加することを想像してください。 5つ目は「上半分を好む」。 6つ目は「100フレームごとにコースを反転する」。
それぞれのルールは個別に合理的です。彼らは力を合わせて群れを滅ぼします。ボイドは競合する力の間で揺れ動き、すべての制約を同時に満たすことができません。優雅な植毛が音となって崩れ去る。
エージェント オーケストレーションでも同じパターンが見られました。私の審議システムの初期バージョンには、最小限の調査の深さ、必須の引用数、必須の反論の生成、強制的な悪魔の代弁者パスなど、複雑なルールがありました。各ルールにより、いくつかの特定の失敗ケースが改善されました。彼らは一緒に、問題を解決するよりもルールを満たすためにより多くのトークンを費やすエージェントを生み出しました。
私が文書化した compounding engineering philosophy は、これがシステム レベルで発生する理由を説明しています。新しいルールがそれぞれ既存のルールと相互作用し、組み合わせが複雑になります。 10 個のルールが 10 個の制約を生み出すわけではありません。それらは潜在的に 45 のペアごとの相互作用を生成します。システムの動作の予測、デバッグが難しくなり、緊急の障害が発生する可能性が高くなります。
レイノルズの元の論文はこれを暗黙のうちに理解していました。彼は boid のルールを 3 つに制限しました。これ以上のことを想像できなかったからではなく、3 つで十分だったからです。 4 つ目を追加するには、4 つすべての重みのバランスを再調整する必要がありますが、この問題は追加するたびに指数関数的に増大します。
エージェントのレッスン: 必要な動作を生み出す最小限のルールから始めましょう。既存のルールでは対処できない特定の障害が発生した場合にのみ、ルールを追加します。また、ルールを追加するときは、他のルールと干渉しないかどうかを確認してください。
構造を生み出す空虚
単純なルールからの出現は、私の執筆の中で予期せぬ何かにつながる哲学的な側面を持っています。
Nothing is structural。中央コントローラーがないことは boid の制限ではありません。それはアーキテクチャです。群れが調整するのは、個々の鳥が他の鳥に対して権限を持っていないためです。一羽の鳥がリーダーになった場合、システムはその鳥の判断に依存して脆弱になり、失敗しやすくなります。
エージェントにも同様のことが当てはまります。私の審議システムが機能するのは、単一のエージェントが拒否権を持っていないからです。各エージェントは独立して評価します。コンセンサスプロトコルは彼らの発見を集約したものです。 1 つのエージェントがガベージを生成すると、他のエージェントがそれを上回ります。オーバーライド権限を持つ「主任エージェント」を追加すると、排除するために検討を構築した単一障害点が再び導入されることになります。
同じ投稿で引用された老子: 「そこにある何もないものを、目の前にある目的に適応させなさい。」5 boids アルゴリズムの空きスペース (中央制御の欠如) は、緊急の調整を可能にする構造要素です。
他のドメインでの新たなパターン
「単純なルール、緊急の行動」パターンは、ボイドやエージェントに特有のものではありません。これは、ローカルな決定がグローバル構造に集約される場合にはどこにでも現れます。
Hamming codes は、関連する形態の出現を示しています。 2 のべき乗の位置にパリティ ビットを戦略的に配置すると、すべての「1」ビットの位置の XOR 演算からエラーの位置が * 現れる* システムが作成されます。どこにエラーがあるのかは誰にもわかりません。エラーの場所は構造から現れます。単一のパリティ ビットだけでは、ほとんど何もわかりません。適切な位置にある複数のパリティ ビットによってすべてがわかります。
Conway’s Game of Life は、グリッドに適用される 4 つのルールからグライダー、発振器、およびチューリング完全計算を生成します。ルールは boid よりも単純です (セルは 2 ~ 3 個の隣接セルがある場合は存続し、そうでない場合は消滅します)。出現する複雑さには制限がありません。
どの場合でも、パターンは同じです。ローカル ルール、中央コーディネーターなし、緊急のグローバルな動作です。そして、どのケースでも同じ失敗モードが当てはまります。ルールを追加しすぎると、システムはエレガントな出現から混沌とした干渉に崩壊します。
重要なポイント
マルチエージェント システムを設計するエンジニア向け:
-
3 つのルールが群れを生み出します。 4 つのルールはそうではないかもしれません。 レイノルズの洞察は、適切に選択された 3 つのルールが緊急の調整には十分であるということでした。 4 つ目を追加すると干渉が発生し、最初の 3 つが生成した動作が破壊される可能性があります。必要な動作を生成する最小限のルールから始めます。
-
分離は最も重要なルールです。 これがないと、調整と凝集が病的になり、エージェントが同じ間違った答えに集中してしまいます。 spawn budget (幅制約) は、マルチエージェント システムに対して行った 1 つの変更の中で最も影響力がありました。
分散システムを構築するアーキテクト向け:
-
リーダーの不在がアーキテクチャです。 集中管理により単一障害点が生じます。ローカルルールによる分散型調整の方が回復力が高くなります。追加する特別な理由がない限り、「リード エージェント」を使用せずにエージェント システムを設計してください。
-
ルールが増えると、より多くの交互作用が作成されます。 N 個のルールにより、最大 N(N-1)/2 のペアごとの交互作用が生成されます。追加するたびに、動作の予測が難しくなります。既存のルールでは対処できない特定の障害が発生した場合にのみ、ルールを追加します。
アルゴリズムが視覚的直感と出会う Interactive Explorations シリーズの一部: Hamming codes that catch their own mistakes からリーダーなしで群がるボイドまで。エージェント オーケストレーション パターンは、The Ralph System および Multi-Agent Deliberation に詳細に示されています。 metacognitive programming layer は、上記のエージェント間の調整を補完するために、個々のエージェントの自己監視を追加します。
-
C.W. レイノルズ (1987)。 「群れ、群れ、学校: 分散行動モデル」 SIGGRAPH ‘87: コンピューター グラフィックスおよびインタラクティブ技術に関する第 14 回年次会議の議事録、25 ~ 34 ページ。 ZQ0QZZ ↩↩↩
-
レイノルズは、ボイドの研究を基礎とした行動アニメーションへの貢献により、1998 年に映画芸術科学アカデミーから科学工学賞を受賞しました。このアルゴリズムは、バットマン リターンズ (1992) 以来、映画制作に使用されてきました。 oscars.org/sci-tech/ceremonies/1998。レイノルズの履歴書: red3d.com/cwr/resume.html も参照してください。 ↩
-
「マルチエージェントコラボレーションによる緊急インテリジェンスのためのボイドの再考。」 NeurIPS 2025 ワークショップ: スケーリング環境。 openreview.net/pdf?id=46LJ81Yqm2。この論文では、observed-reflect-build ループに従うエージェントに対する自然言語ガイダンスとして boids ルールを適用しています。 ↩
-
スポーン予算の実装は The Ralph System に記載されています。重要なアーキテクチャ上の決定: プロンプト (勧告) ではなくフック (決定的) を通じて幅制限を強制します。 「スポーンを制限する」ように指示されたエージェントは、制限を超えて正当化します。アクティブな子をカウントし、spawn API 呼び出しをブロックするフックはできません。 ↩
-
老子、Tao Te Ching、第 11 章。翻訳: James Legge.この一節全体では、車輪のハブ、部屋の壁、容器の粘土について説明しています。これらの 3 つの例では、実用性が素材ではなく空隙から生まれます。詳細については、Nothing is Structural を参照してください。 ↩