**デジタル・レッドクイーン:LLMとの共演によるコアウォールにおける対抗プログラム進化**

2026/01/09 1:16

**デジタル・レッドクイーン:LLMとの共演によるコアウォールにおける対抗プログラム進化**

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

(欠落していた詳細を組み込んだもの)**

要約

本研究は、大規模言語モデルが Digital Red Queen (DRQ) アルゴリズムを用いて自己プレイにより、ますます堅牢な「Core War」戦士を自律的に進化させることを示しています。各ラウンドで新たに生成された戦士は、以前のすべての戦士を打ち破るよう設計され、実験ではラウンド数が増えるほど進化した戦闘機が未見の人間設計対戦相手を扱う能力が向上することが確認されています—ただし、テスト対戦相手に直接訓練は行われていません。

主な発見点:

  • 収束進化: 異なる初期戦士から始まる独立した DRQ 実行は、形質(挙動)は収束しますが、遺伝子型(ソースコード)では収束しないことが示されました。これは、異なる実装から機能的に類似した解決策が生じることを意味します。
  • Core War はサンドボックス: 1984 年のチューリング完全な競技プログラミングゲームである Core War は、アセンブリ風 Redcode プログラムが共有メモリ空間上で対戦するため、Red‑Queen ダイナミクスと敵対的進化を研究するための極めて変動的かつダイナミックな戦場を提供します。これはサイバーセキュリティやその他の領域に関連しています。
  • 示例戦士: 代表的な DRQ 生成例として、Ring Warrior Enhanced v9Spiral Bomber Optimized v22 が挙げられ、それぞれ単一プログラム内で異なる戦略的アプローチを示しています。
  • オープンリソース: 本論文は arXiv で公開されており、併せて GitHub 上にコードベースが公開されています。これにより、戦士の挙動をさらに探究し可視化することが可能です。

著者らは、この自律的なレッドチーミング手法をゲーム以外へ拡張できると示唆しています――AI システムの強化、医薬品探索、市場エコシステムモデリング、および人工生命研究への応用です。また、Sakana AI が The AI Scientist、LLM‑Squared、Shinka‑Evolve、Automating the Search for Artificial Life、ALE‑Agent などのプロジェクトを基盤にした AI 主導型発見プラットフォームを構築するためにエンジニアを募集していることも指摘しています。

この要約はすべての主要ポイントを保持し、新たな推測を加えず、明確な主旨を提示し、曖昧または混乱を招く表現を排除しています。

本文

デジタル・レッドクイーン:LLMを用いたコアウォーにおける対立的プログラム進化
2026年1月8日


「最適なコードの生存」

コアウォーでは、戦士(warriors) と呼ばれる組み込み風プログラムが仮想コンピュータ上で支配を争います。戦士は高度な戦略―ターゲット付き自己複製、データ爆撃、大規模マルチスレッド化―を駆使して相手をクラッシュさせ、機械を掌握します。

  • 上段パネル:デジタル・レッドクイーン(DRQ)アルゴリズムが発見した戦士同士の対決。各 DRQ ラウンドでマルチエージェントシミュレーションに1 つの新規戦士が追加されます。
  • 下段パネル:ラウンド数が増えるほど、LLM 主導の進化はより堅牢な戦略を発見します。現れた挙動は、生物学的進化と類似し、エージェントは絶えず適応して変化する脅威に対抗し生存しなければならないという点で共通しています。

コアウォーが Turing 完全環境であり、コードとデータが同一のアドレス空間を共有するため、このプロセスは自己修正的ダイナミクスに混沌とした形をもたらします。


要約

コアウォーは 1984 年に導入された競争型プログラミングゲームです。戦士 と呼ばれる対決プログラムが仮想コンピュータ内で支配権を争います。開発者は Redcode という専門的なアセンブリ言語でコードを書きます。本稿では、大規模言語モデル(LLM)が駆動する対立的進化競争が、静的ベンチマークではなく成長する対戦相手の履歴に継続的に適応していく様子を探ります。

主な発見

  • ダイナミックな対立プロセスは、ますます一般的な戦略へと進化します。
  • 興味深い収束進化が生じます:独立したコード実装が類似の高性能挙動に収束します。
  • コアウォーは「レッドクイーン」ダイナミクスを人工システムで研究するためのサンドボックスとして機能し、サイバーセキュリティなど現実世界の対立的環境で AI エージェントが進化する様子を安全かつ制御された形で解析できます。

詳細は技術報告(ウェブペーパー、arXiv)および GitHub で公開したコードをご覧ください。


DRQ により生成された戦士の例

  1. Ring Warrior Enhanced v9
  2. Spiral Bomber Optimized v22

これらは、DRQ が単一プログラム内で質的に異なる戦略を合成し、一般的に高性能な戦士を生み出す能力を示しています。コメントは LLM によって生成されています。


進化した戦士のシミュレーション

当社のサンドボックス型コアウォー環境では、ユーザーはマウスカーソル周辺の戦士の Redcode を対話的に可視化できます。詳細は GitHub をご覧ください。


序章

人間は他種との絶え間ない競争を通じて進化してきました。この競争は、ウイルスや細菌から個人・企業・国際レベルまであらゆる規模で続いています。AI システムが増えるにつれ、それらもまたこの競争環境に入り込み、新たな形態の進化ダイナミクスを生み出します。

これらのダイナミクスを研究するため、LLM を用いてコアウォーで互いに対戦するプログラムを進化させます。コアウォーは、仮想コンピュータ内の共有メモリブロック「Core」で行われるゲームです。Redcode で書かれた各戦士は、相手をクラッシュさせつつ自身のプロセスを存続させようとします。シミュレーションは戦士間で交互に実行され、一度に一命令ずつ処理します。攻撃は、DAT コマンド(無効な命令)を相手が占有するメモリスロットへ書き込むことで、次回実行時にクラッシュさせる仕組みです。


当社の方法:デジタル・レッドクイーン(DRQ)

レッドクイーン仮説 は、生物が常に進化し続けなければ、絶えず変化する競争相手に対抗できないと提唱します。この概念は対立的 Arms Race に自然に適用できます。

DRQ はこの考えを計算機上で具現化したものです:

  1. 初期戦士から開始。
  2. それを打ち負かす第二戦士を進化させる。
  3. 第三戦士は最初の二つに対して優位性を持つように進化させ、というサイクルを繰り返します。

各新しい戦士は、すべての前身によって定義される変化する環境に適応しています。DRQ は独自のアルゴリズムではなく、既存のマルチエージェント・セルフプレイ手法をコアウォー向けに最小限に実装したもので、継続的共進化ダイナミクスを分離し研究するために設計されました。


結果

  • 一般的な頑健性:DRQ が多くのラウンドを経ると、戦士は見たことのない人間設計戦士にも強固になります。これはテストセットで訓練しなくても堅牢なプログラムを生成する安定した手段です。
  • 収束進化:独立した DRQ 実行(それぞれ異なる初期戦士で開始)は、徐々に類似した挙動を持つ戦士へと収束します。収束は遺伝子コードではなく 表現型(行動)レベルで起こります。

これは生物学的な収束進化と同様で、鳥やコウモリの翼、蜘蛛とヘビの毒など異なるメカニズムを通じて同一機能が独立に発展する現象です。進化は機能的要求によって類似した解へと導かれます。


議論

レッドクイーンダイナミクスから収束進化が出現することは、DRQ とコアウォーが対立的 Arms Race を研究する有望なプラットフォームであることを示唆します。得られた洞察は、サイバーセキュリティなど実世界の環境で LLM がどのように進化しうるかを理解し、「レッドテーピング」を事前に自動化する手法として活用できる可能性があります。

コアウォーは自己完結型プログラムが人工機械上で動作し、人工言語を使用しているため、生成されたものがサンドボックス外で実行されることはありません。これによりリスクの高い対立的ダイナミクスを安全な環境で探求できます。


今後の課題

  • エージェントが同時に共進化する、より豊かな設定を探索し、実世界の並列適応集団に近づける。
  • DRQ のようなセルフプレイループを人工生命、ドラッグデザイン、市場エコシステムなど他の競争型マルチエージェントシミュレーションへ適用する。
  • 将来の AI 進化を制御し、進化的 Arms Race の科学を理解するために洞察を活用する。

ご参加ください

Sakana AI は AI 主導の発見の最前線に立っています。本研究以外にも The AI Scientist、LLM‑Squared、Shinka‑Evolve、人工生命探索の自動化、ALE‑Agent などのプロジェクトを開発中です。エンジニアを募集しており、モデル開発を本番化するチームに加わっていただけます。

キャリア機会: [リンク]

同じ日のほかのニュース

一覧に戻る →

2026/01/09 4:54

**200 行以内で書く Claude スタイルプログラムの作り方** 1. **目標を定義する** * プログラムが解決すべき問題(例:テキスト生成、データ分析など)を決める。 * 必要な入力・出力、および制約事項を概略化する。 2. **適切な言語とライブラリを選ぶ** * 迅速なプロトタイピングには Python を推奨。 * `openai` や `anthropic` SDK を使用し、必要最低限のモジュール(例:`json`、`time`)のみインポートする。 3. **コード構成** ```python # 1️⃣ インポート import os, json, time from anthropic import Anthropic # 2️⃣ 設定 api_key = os.getenv("ANTHROPIC_API_KEY") client = Anthropic(api_key=api_key) # 3️⃣ コア関数 def generate_text(prompt: str, max_tokens: int = 200) -> str: response = client.completions.create( model="claude-2.1", prompt=prompt, max_tokens_to_sample=max_tokens, temperature=0.7, ) return response.completion # 4️⃣ ユーティリティ関数 def save_output(text: str, path: str) -> None: with open(path, "w", encoding="utf-8") as f: f.write(text) # 5️⃣ メインフロー if __name__ == "__main__": prompt = input("Enter your prompt: ") result = generate_text(prompt) print("\nGenerated Text:\n", result) save_output(result, "output.txt") ``` 4. **200 行以内に収める** * 不要なコメントや冗長なログを避ける。 * 繰り返しコードの代わりに簡潔なヘルパー関数を使う。 5. **テストと検証** * `generate_text` と `save_output` 用に単純なユニットテストを書く。 * 複数サンプルプロンプトでスクリプトが安定して動作するか確認する。 6. **パッケージング(任意)** * `requirements.txt` を追加: ``` anthropic==0.3.2 python-dotenv==1.0.0 ``` * セットアップと使い方を簡潔に説明した README を用意する。 7. **最終チェックリスト** * 未使用のインポートや変数がないこと。 * 文字列はすべて `utf-8` でエンコードされていること。 * 新しい環境でもエラーなく実行できること。 このテンプレートに沿えば、200 行以内でクリーンかつ機能的な Claude スタイルプログラムが完成します。実験・拡張・デプロイの準備は万端です。

## Japanese Translation: (to address missing elements while keeping clarity):** > 本記事では、JSON形式のツール呼び出し(`read_file`、`list_files`、`edit_file`)を介してLLMと対話し、ディスク上のファイルを操作する軽量なコーディングエージェントの構築方法を示します。 > エージェントのコアループは、ユーザーからの自然言語リクエストをLLMに送信し、そのJSONレスポンスからツール呼び出しを解析して対応するローカル関数を実行し、結果を会話へフィードバックします。ツールが要求されなくなるまでこのプロセスを繰り返します。各ツールは構造化された辞書を返します(`read_file` → `{file_path, content}`、`list_files` → `{path, entries}`、`edit_file` → テキストの作成または置換)。 > システムプロンプトは自動的に生成され、各ツールの名前・説明(docstringから取得)とシグネチャを列挙することでLLMが正しく呼び出せるようにします。例ではAnthropic API経由でClaude Sonnet 4を使用していますが、クライアント初期化部分を書き換えるだけで任意のLLMプロバイダーへ切り替え可能です。 > 実装はインポート、環境変数読み込み(`dotenv`)、ターミナルカラー補助関数、および`resolve_abs_path`ヘルパーを含めて約200行のPythonコードです。プロダクション向けエージェント(例:Claude Code)は、このパターンにgrep、bash、websearchなど追加ツールや高度なエラーハンドリング、ストリーミングレスポンス、要約機能、および破壊的操作の承認ワークフローを組み込んでいます。 > 読者は新しいツールを追加したりLLMプロバイダーを切替えたりして、最小限のボイラープレートで高度なコーディング支援が実現できることを体験できます。 この改訂された概要は主要なポイントをすべて網羅し、未支持の推測を避けつつメインメッセージを明確に保ち、あいまい表現を削除しています。

2026/01/09 5:37

**Sopro TTS:** CPU 上で動作し、ゼロショット音声クローン機能を備えた 1,690 万パラメータのモデル。

## Japanese Translation: ``` ## Summary Soproは、1億6900万パラメータで構築された軽量な英語テキスト・トゥー・スピーチシステムです。リアルタイムのストリーミング合成と、わずか数秒の参照音声からのゼロショットボイスクラーニングを提供します。そのアーキテクチャは重いTransformerをドリーテッドWaveNetスタイルの畳み込みと軽量なクロスアテンション層に置き換え、M3コアマシンでCPUリアルタイム係数0.25(約7.5秒で30秒分の音声生成)を達成します。モデルは依存関係が最小限で、PyTorch 2.6.0のみを必要とし、低スペックハードウェアでも効率的に動作します。 Soproは単純なPython API(`SoproTTS.synthesize`)、コマンドラインインターフェイス(`soprotts …`)、およびUvicornまたはDockerで起動できる対話型Webデモを通じて、非ストリーミング(`SoproTTS.synthesize`)とストリーミング(`SoproTTS.stream`)の両方のモードをサポートします。ストリーミング出力は非ストリーミングモードとビットレベルで完全に一致しないため、最高品質を求めるユーザーは非ストリーミング合成を使用することが推奨されます。 トレーニングにはEmilia YODAS、LibriTTS‑R、Mozilla Common Voice 22、およびMLSなどの公開コーパスからデータが採用され、WaveNet、Attentive Stats Pooling、AudioLM、CSMといった確立された手法を組み込んでいます。ボイスクラーニングの品質はマイクロフォンの品質に依存し、システムは略語よりも音素レベルの参照音声を好みます。 Soproは低リソースフットプリント、CPUフレンドリー、そして簡単な統合性を備えているため、チャットボット、アクセシビリティツール、組み込みデバイス、および軽量TTSと高品質ボイスクラーニングが必要なリアルタイムアプリケーションに最適です。 ```

2026/01/09 0:07

ボーズは古いスマートスピーカーをブリック化せず、オープンソースとして公開しています。

## Japanese Translation: **修正版要約** ボーズは、サウンドタッチスマートスピーカーのAPIドキュメントをオープンソース化することを発表し、公式クラウドサポートを2026年5月6日まで延長しました。これは元々計画されていた期間より約6か月長いものです。また、新しいサウンドタッチアプリの更新ではローカル制御が追加されるため、ユーザーはクラウドサービス終了後も機能を維持できます。Bluetooth、AirPlay、Spotify Connect、および物理的なAUX接続を通じて音楽ストリーミングを継続でき、グループ化、初期設定、構成などのリモートコントロール機能も動作します。APIをオープンソースにすることで、ボーズはクラウドサービス停止によって残されたギャップを埋めるカスタムツールを開発者が構築できるようにしています。この動きは、公式シャットダウン後にデバイス機能を維持したPebbleのRebble Allianceなど、コミュニティ主導の取り組みと共鳴します。

**デジタル・レッドクイーン:LLMとの共演によるコアウォールにおける対抗プログラム進化** | そっか~ニュース