著者: トミー・トンプソン
AI & ゲーム シニアリサーチエキスパート
YouTube @TableFlipGames
HyperAI の概要
DOTA2ではついに人類がAIに勝利しました。
DOTA2の世界最高峰トーナメントであるTi8(The International DOTA2 Championships)は今日、中国チームVGの敗退という悔しさを抱えながら決勝トーナメント3日目を迎えました。その後の OpenAIFive 対ペインチームはハイライトとなりました。 前回 OpenAI が Dendi を破ったのとは異なり、今回は OpenAIFive が初戦で敗北に終わりました。
しかし実際には、OpenAIトレーニングには、Blizzard の父親が制作した「StarCraft」を使用します。これは常に多くのプレイヤーの心の中にある古典であり、その地位は「World of Warcraft」に劣りません。
リアルタイム戦略ゲームとして、マルチアームコラボレーションやマクロ戦略計画などのゲームメカニズムに依存し、同じゲーム内で無数の可能性を生み出すことができ、不確実なシナリオにおける AI の意思決定能力とアルゴリズムの効率を訓練するのに非常に役立ちます。 。現在、このゲームは Google や Microsoft などの有名なテクノロジー企業の AI テスト場となっています。
リアルタイム ストラテジー ゲーム: AI のトレーニングに最適なゲーム
リアルタイム戦略ゲーム (RTS) は戦略ゲームの一種で、ターンベースのゲームとは異なり、プレイヤーは通常、ゲーム内で意思決定者の役割を果たし、軍隊を配置して戦略を立てる必要があります。 . マクロ操作を待ちます。 「StarCraft」に加えて、最も一般的なリアルタイム ゲームには「Warcraft」、「Red Alert」などが含まれます。
このタイプのゲームには通常、フォグ メカニズムがあり、すべてのプレイヤーの視野が限られており、周囲の景色しか見ることができません。プレイヤーは世界を探索して基地を建設し、テクノロジーツリー(さまざまな素材から武器を合成するなど)を作成してリソースを収集する必要があり、敵の要塞を正常に破壊して敵を破壊するか、住居へのすべての攻撃に抵抗することによってのみ勝利することができます。
ゲーム中は、リソースを合理的に配分し、攻撃と防御の計画を立て、マップをどれだけ理解するかが戦闘の勝敗の鍵となります。
そのため、プレイヤーはゲームをプレイする際に常に未知の世界を探索するだけでなく、常に戦闘状況を観察し、攻撃と防御の戦略を立てる必要があります。また、このタイプのゲームの探索空間は膨大であり、無数に存在する可能性があります。ゲームの中の可能性。したがって、RTS ゲームは、不確実なシナリオにおける AI の意思決定能力を訓練し、AI のアルゴリズム効率をテストするのに非常に適しています。
AIの育成は「StarCraft」の攻略から始まる
すべての RTS ゲームの中で、間違いなく「StarCraft」が最良の選択です。
このゲームは有名でプレイヤーが多いため、AI のトレーニングに必要な人間のプレイヤー データを大量に提供できます。さらに、このゲームは非常に複雑で、AI モデルのアルゴリズム効率を効果的にテストできます。したがって、開発者は非常に早い段階から、「StarCraft」を通じて AI モデルをトレーニングすることを期待していました。
『StarCraft』は情報が不完全なゲームであり、128×128のマップ範囲により広大な探索空間を作り出すことができる。現在の Go の検索スペースは約 10170 ですが、「StarCraft」の検索スペースは 101685 に達する可能性があります。また、最大 400 個のユニットを作成することもできます。各タイプのユニットには異なる属性があり、ゲーム内で無数の可能性を生み出す可能性があるため、それに対処するために AI はより多くのアルゴリズムを実行する必要があります。
スタークラフト 2017 リマスター版
さらに、ゲーム内では異なる陣営のプレイヤーがいつでも遭遇するため、AI はミリ秒以内に反応する必要があります。これには、AI が記憶能力とリアルタイム情報分析能力を備え、すべてのランダムな遭遇や検出された状況を統合してゲーム戦略を継続的に調整できることが必要です。また、仮想シーンとしてのゲームなので、トレーニングの試行錯誤のコストが非常に低くなります。これらの要因により、「StarCraft」は AI トレーニングに理想的な場所となっています。
AIはどのように学習したのでしょうか?
オルツ:
AI 研究のために特別に構築された RTS バトル プラットフォーム
Open Real Time Strategy の正式名である ORTS は、オープン RTS API を備えたリアルタイム ストラテジー ゲーム プラットフォームです。 2003 年に、RTS ゲーム上で AI モデルをトレーニングするために、カナダのアルバータ大学のコンピューター サイエンス教授 Michael Buro によって特別に開発されました。
OpenGL API を搭載したこの 3D RTS ゲーム プラットフォームは、市場にあるほとんどのリアルタイム ストラテジー ゲームを模倣でき、3D 画像も処理できます。 ORTS の通信プロトコルとソースコードはすべて外部に公開されており、ユーザーは多数のマップ、モデル、軍事データなどに無料でアクセスし、AI モデルをトレーニングするための AI コントローラーをリモートで構築できます。
オープン リアルタイム ストラテジー ゲーム (ORTS) プラットフォーム。GitHub でプロジェクトを表示できます。頭
リンクを取得します。https://github.com/benoit-dumas/OpenRTS
ORTS は、開発者がリアルタイム ストラテジー ゲームで AI コントローラーを作成できる条件を作成しますが、既存の RTS ゲームの動作メカニズムをコピーすることしかできず、依然としてネイティブ ゲームに直接接続することはできません。参加する人間のプレイヤーが非常に少ないため、ORTS にはほとんどの場合 AI プレイヤーのみが参加します。
最後に、物語は 2009 年に好転しました。ORTS は Blizzard と合意に達し、ORTS が開催した最後の RTS AI コンペティションで API - BWAPI (「StarCraft: Brood War」公式 API) をリリースしました。これは初めてでもあります。 「StarCraft」シリーズの外部AI API。
BWAPI:
AIキャラクターは「StarCraft」内で直接作成可能
BWAPI はオープンソースの C++ フレームワークであり、すべての開発者が「StarCraft」で独自の AI モデルをトレーニングできることを意味します。 BWAPI は、人間のプレイヤーのゲーム データのほか、現在のゲーム ステータス、利用可能な兵士の種類、テクノロジー ツリーのステータス、その他の情報を AI モデルに提供できます。
戦闘では、AIプレイヤーの不正行為を防ぐため、敵プレイヤーが霧に覆われておらず、AIモデルの視野内にいる場合にのみ、敵プレイヤーの位置、属性などの情報を取得できるようにシステムが規定しています。が得られる。
ただし、同じ与えられたフレームワーク内で、AI は人間のプレイヤー以上のことができるためです。その結果、陸上兵士が壁の上を歩いたり、建物が滑り落ちたりするなど、ゲームプレイ中に奇妙な動作が発生する可能性があります。
BWAPIは実際の適用プロセスにはまだ欠陥があるものの、「StarCraft」でAIモデルをトレーニングするというアイデアをうまく実現し、AIの開発を促進したことは否定できません。後にAIIDE(Artificial Intelligence and Interactive Digital Entertainment Conference)が開催するコンペティション「StarCraft」の基礎も築かれた。
相出:
AIコンテスト「StarCraft」にもっと多くの人が参加できるように
AIIDEは2010年、当時世界最大級のゲームAI研究カンファレンスとして、AIのみが参加する初の「StarCraft AI Championship」を開催した。競技は合計 4 つのゲームに分かれており、各ゲームは異なる実戦シナリオで AI モデルのパフォーマンスを実証するために異なる焦点を当てています。
-
最初と 2 番目のセッションは、複雑な地形でのユニット管理に焦点を当てます。
-
3 番目のゲームでは、完全な視界を備えた霧のないゾーン モードが使用されますが、上級部隊の使用は禁止されています。
-
第 4 試合は通常の対決で、霧があっても上級部隊を使用できます。
このコンテストは大成功で、合計 26 の AI チームが参加し、そのうち 17 チームがコンテスト全体を完走しました。第 1 回大会の優勝者は、Zerg AI プレーヤーの Overmind でした。Overmind は、カリフォルニア大学の研究チームによって開発されました。
Overmind の開発者で現在は Google DeepMind の研究員である Oriol Vinyals がスペインの「StarCraft」チャンピオンであったことは言及する価値があります。 Overmind は AIIDE コンテストで優勝しましたが、人間のプレイヤーである Oriol Vinyals に勝つのは困難でした。
2011年は出場者が増え、競技の公平性を確保するため、AIIDEはAIプレイヤーにソースコードの公開を義務付け、すべての競技はC/S(クライアント/サーバーモデル)アーキテクチャに基づくサーバー上で行われることになった。
同年開催された第2回「StarCraft AIコンペティション」では、イギリスのSkyNetが早期防御と定期突撃を重視した戦略で優勝したこのAIプレイヤーはイギリス人エンジニアのアンドリュー・スミス氏が開発したもので、それが証明されています。戦略策定におけるAIアルゴリズムの可能性。
2012 年までに、AIIDE コンテストはすでにゲーム録画を永続的に保存できるようになっており、これは AI が以前のゲームを見て学習できることを意味していました。 AIIDEでは、より多くの人に「StarCraft」AIモデルの開発に参加してもらい、AIの発展を促進していきたいと考え、現在も「StarCraft」AIコンペティションを継続的に開催しています。
AIIDE が 2011 年に 2 回目のコンテストを開催したとき、特に大学生やその他のアマチュア AI プレイヤーを対象とした別の AI コンテスト「StarCraft」も静かに始まりました。
SSCAIT:
学生やアマチュアプレーヤー向けに特別に設計
SSCAIT ("StarCraft" Student AI Competition) は、スロバキアの哲学博士である Michal Certicky によって 2011 年に設立されました。主に、"StarCraft" AI コンテストに興味のある大学生、大学院生、および社会のすべてのプレイヤーを対象として設立されました。
BWAPI を通じて、ほぼ誰もが独自の星間 AI コントローラーを開発できます。
SSCAITはAIIDEよりもオープンで、大会形式も変わり、Twitchで練習試合や本戦のライブ中継を視聴できる。このゲームでは 1 対 1 の白兵戦が行われ、一方の建物が完全に破壊されるか、プログラムがクラッシュして決定を下すことができない場合は除外されます。
「StarCraft」競技では AI が進歩し続け、他の多くのゲームで人間よりも優れたパフォーマンスを発揮しますが、「StarCraft」の人間対マシンの戦いでは、今のところ人間はまだ AI に勝つことができます。
人間と機械の戦いでは、人間はまだわずかに優れています
AIIDEはかつて、2015年の「StarCraft」AIコンテストの上位3名がロシアの「StarCraft」プロプレイヤーDjem5と対戦したことがあるが、一度も勝利することができなかった。
2017 年には、韓国のソウルにある世宗大学でも、4 人の AI プレイヤーが韓国の「StarCraft」プロプレイヤーと世界最強のプロプレイヤーの 1 人である Song Byung Gu と対戦しました。
4 人の AI プレイヤーは世宗大学の MJ Bot、ZZZKBot、tscmoo と Facebook AI Lab の CherryPi で、4 人の AI プレイヤーは全員 27 分以内に倒されました (最速は 4 分半)。
そのため、Google AI 研究所の DeepMind チームは、Alpha Go を作成した後、再び人間に勝つことを期待して「StarCraft」に注目しました。
Google DeepMindが「StarCraft 2」公式APIを公開
2017年8月、DeepMindはBlizzardと協力し、「StarCraft II」の公式AI APIであるSC2LE(翻訳:StarCraft 2 AI ResearchEnvironment)を共同で立ち上げることを正式に発表した。
これは開発者がAIを学ぶために特別に用意されたツールセットですが、「StarCraft II」にのみ適用されます。多くの BWAPI 機能を維持しながら、いくつかの新機能が追加されました。
-
Python 言語を使用して、ゲーム内で AI モデルを構築できます。
-
ゲームのリプレイを見ることができます。
-
ゲームの進行を加速することができます (AI のトレーニングに非常に役立ちます)。
-
カスタム マップを構築できます。
-
DeepMind によって開発された 7 つのミニゲームが AI モデルの機能テスト用に追加されました。
-
より多くの人間プレイヤーのゲーム データを AI モデルに提供できます。
SC2LE キャプチャされたゲームの特徴
SC2LE は 2 つの異なるセットに分かれており、1 つは BWAPI に似ており、特定のフレームワークの下で特定の情報にアクセスできます。もう 1 つは、ゲームで得られた情報を分析できる機械学習などの AI アルゴリズム用に特別に用意されており、アルゴリズムがデータにアクセスしやすくなります。
SC2LE により、より多くの人が AI ゲーム モデルの作成に参加できるようになりますが、「StarCraft」のようなリアルタイム ストラテジー ゲームで AI が人間に勝つことは依然として困難です。しかし、Google、Microsoft、Facebook などの国際的に有名なテクノロジー企業の参加により、この状況はすべて逆転する可能性があります。
今年6月、イーロン・マスク氏と他の多くのシリコンバレーの大物たちが共同設立したAI非営利団体「OpenAI」は、マルチプレイヤーリアルタイム対戦ゲーム「DOTA 2」で人間のビジネスプレイヤーを破り、セミプロプレイヤーを破った。 8月。
「DOTA」は「World of Warcraft III」のゲームエンジンをベースに開発されており、「StarCraft」と同様に「World of Warcraft」もBlizzardが開発したRTSゲームです。 「DOTA 2」はこのエンジンから分離されましたが、ゲームの仕組みの一部はまだ残っています。
『Warcraft』のゲームメカニズムは『DOTA 2』よりも複雑でマップの範囲も広いですが、『DOTA 2』でのAIの勝利はAIがリアルタイムストラテジーゲームにおいてさらに一歩前進したことを証明しています。将来的には、より大規模なテクノロジー企業の参加により、AI が新しいゲームの仕組みを生み出し、既存の対戦ゲームを人間と AI の間の戦いに変える可能性があります。
早速ゲームをプレイして、今日の知識を復習しましょう。