第1世代(1980s)
Corewar
メモリ上の戦争
1970年代後半から1980年代にかけて生まれた、プログラム同士が仮想メモリ空間で戦うゲーム。戦車や兵士ではなく、自己複製や爆撃を行う「コード」そのものが戦う。現代のAI対戦ゲームや人工生命研究の原点といえる存在。
第2世代(2000s)
Robocode
AIロボット対戦
Javaで書いた戦車ロボット同士を戦わせるプログラミングゲーム。プレイヤーはロボットの動きや射撃をアルゴリズムで制御し、対戦を通じて戦略を改良する。Corewarの「コードが戦う」という思想を、視覚的で教育的な形に発展させた作品。
第3世代(2010s)
Screeps
オンラインAI戦争
JavaScriptで兵士や基地の行動を自動化し、常時オンラインの世界で他プレイヤーのAIと戦うゲーム。プレイヤーは戦闘そのものではなく、戦争を動かすコードを書く。Corewarの思想を「持続する世界」に拡張した作品。
Halite
競技型AI対戦
グリッド状の宇宙で資源を集め、領土を広げるボット同士の対戦競技。任意のプログラミング言語でAIを実装でき、ランキング形式で競い合う。現代のアルゴリズム競技の代表例。
第4世代(2020s〜)
Battlecode
大学発AI戦争競技
MITが主催するAI対戦コンテスト。仮想ロボットの行動をコードで制御し、資源や地形をめぐって戦う。学生を中心に長年続く競技で、現代の「教育版Corewar」ともいえる存在。
AI League(CodeCombat)
eスポーツ型プログラミング対戦
PythonやC++などでAIキャラクターを作り、リーグ形式で戦う教育向け競技。初心者から参加できる設計で、プログラミングと対戦ゲームを融合した新しい学習形式。
公式
https://codecombat.com/league
LLM進化Corewar
AIがコードを進化させる時代
近年は、大規模言語モデル(LLM)がCorewarのwarriorを自動生成・進化させる研究も登場。人間が戦略を書く時代から、AIが戦略を進化させる時代へと移行しつつある。Corewarは再び最先端の研究対象となっている。
例(研究紹介)
https://pub.sakana.ai/
まとめ(1行ずつ)
Corewar:コードが戦う原始形態
Robocode:視覚化された教育型対戦
Screeps:常時オンライン戦争
Halite:競技型アルゴリズム対戦
Battlecode:大学発AI戦争
AI League:教育eスポーツ化
LLM Corewar:AIが戦略を進化