分析過ぎ去った時代、つまり昨年 9 月、マイクロソフト CEO のサティア ナデラ氏は開発者会議でこう語った。「私たちはゲームで人間に勝つための AI を追求しているのではありません。」
今週、レドモンドがほぼそれを実現したことが明らかになった。ミズ・パックマンでゲーマーを圧倒し、その過程でいくつかの見出しを飾ることのできる概念実証AIを開発したのだ。この機械学習システムは、このアーケードゲームで999,990というパーフェクトスコアを達成したという。これは、人間のハイスコア記録である266,330を大きく上回るものだ。
この成果は少々遅すぎるように思える。DeepMindのAlphaGoは人間の囲碁の達人に勝利した。LibratusとDeepStackはヘッズアップ・ノーリミット・テキサスホールデムでポーカーのプロを圧倒した。VicariousはBreakoutでライバルたちを圧倒した。DeepMindのDQNは様々なAtariコンソールゲームの遊び方を自己学習した。などなど。
しかし、Ms.パックマンの遅延は許容できるでしょう。なぜなら、機械がマスターするのはかなり難しいゲームだからです。プレイするのは、まるでデジタルナイトクラブで金曜の夜を生き抜くようなものです。暗い迷路を駆け抜け、薬を飲み、繰り返し流れる電子音に耳を傾けながら、幽霊のような悪党を避けていくのです。
コンピューターはこのゲームをうまくプレイできません。なぜなら、考慮すべきゲーム状態があまりにも多すぎるからです。どうやら10の77乗通りもあるようです。AIにとって迷路を進むのは難しくありませんが、そこに薬を拾ったり、ゴーストを避けたり食べたり、フルーツを集めて高得点を狙ったりすることを加えると、人工知能にとっては途端に大変な作業になります。電子プレイヤーは、迷路を効率的に探索して薬を探したり、ゴーストを避けたり食べたり、届きにくいペレットを手に入れるために戦略的にライフを犠牲にしたりといった二次的な目標を理解し、習得しなければなりません。これらはすべて、全体的な主要目標を達成するためのものです。
言語処理を通じて汎用AIを追求し、最近マイクロソフトに買収されたカナダのAI企業Maluubaは、Ms.パックマンで人間に勝てるボットを作るという難題を解決したようだ。
素晴らしい。@Microsoft の @MaluubaInc が独自の強化学習技術を使って Ms. Pac-Man に勝利しました。https://t.co/ATO23AqHHc pic.twitter.com/o8G0vreCEh
— スティーブン・グッゲンハイマー (@StevenGuggs) 2017年6月14日
現在、強化学習を用いてソフトウェアエージェントにゲームをプレイさせるのが流行しています。その仕組みは、ボットがスコアを上げるたびに(通常は良い動きをすることで)、それを報酬と解釈するということです。時間が経つにつれて、コードはどの決定と行動がより多くの報酬につながるかを理解し始めます。そして、これらの報酬を追い求める中で、ボットはどんどん強くなり、より良い動きをし、最終的にはゲームをかなり上手にこなせるようになります。強化学習はゲームによって適性が異なるため、万能な解決策ではありません。
従来の強化学習手法は、シングルエージェントプレイヤーを用いてDoomからStarCraftまで様々なタイトルに挑戦してきたが、Ms Pac-Manには適していない。MaluubaのプログラムマネージャーであるRahul Mehrotra氏と、この新興企業の共同創業者兼CTOであるKaheer Suleman氏は、The Registerの取材に対し、可能な状態の数が多いため、複雑な環境をシングルエージェントで扱うことが困難だと説明した。
Maluubaが今週arXivにオンライン公開した論文では、チームの勝利に導いたMs. Pac-Man戦略について解説されています。この戦略は、ハイブリッド報酬アーキテクチャ(HRA)と呼ばれる手法を用いて実現されています。単一のボットが単独でゲームをクリアしようとするのではなく、オラクルエージェントの下で並行して動作する最大163のサブエージェント間で問題が分担されます。この中央オラクルがMs. Pac-Manの動きを制御します。
オラクルエージェントが新しいオブジェクト(ペレット、ゴースト、フルーツなど)を見つけると、そのオブジェクトを表すサブエージェントを作成し、固定の重みを割り当てます。ペレットとフルーツには正の重みが、ゴーストには負の重みが割り当てられます。これらの値は、オラクルエージェントがミズ・パックマンを各オブジェクトの方向に移動させた場合の期待報酬を計算するために使用されます。例えば、キャラクターをゴーストの方向に移動させた場合の期待報酬は負ですが、フルーツやペレットの列の方向に移動させた場合の期待報酬は非常に正になります。
ゲームの各ステップにおいて、オラクルはサブエージェントからの期待報酬をすべて集計し、その情報を用いてミズ・パックマンを報酬合計が最大化される方向に動かします。彼女はゴーストを避け、薬とフルーツを手に入れ、ハイスコアを獲得します。
エージェントがミズ・パックマンがペレットを飲み込み、ゴーストを回避するのを手伝う様子のスクリーンショット
実際には、複合エージェントがミズ・パックマンを迷路の中で誘導している。サブエージェントは環境を制御するわけではない(例えば、ゴーストは彼女を追いかけ続ける)点に注意する必要がある。サブエージェントは、現在のゲーム状況に応じてミズ・パックマンに最適な戦略を提示するだけだ。HRAは、ゲームの約8億4000万フレームのビデオデータを解析し、4つの異なるマップに対応する超人的なミズ・パックマンプレイヤーを構築した。
それで何が問題なのですか?
これらはすべてちょっとした巧妙なトリックであり、ちょっとしたハックです。重要なのは、報酬の重みがソフトウェアにハードコードされていることです。ゴーストは-1,000に設定されています。錠剤と果物はゲーム内ポイントに基づいて重みが設定されています。これは研究者によってプログラムされています。つまり、AIはほとんど何も学習していないということです。ゴーストはミズ・パックマンの命を奪い、最終的にはゲーム全体を失う原因となるため、避けるべき悪者であること、錠剤を集める必要があること、果物は良いもので動かないゴーストではないことなどを学習していないのです。
他の強化学習システムは、何時間もの試行錯誤を経て、例えばスペースインベーダーで発射ボタンを押すと得点が加算されること、撃ち続けると物が消えて得点が加算されること、動きながら撃つとより多くの物が消えて得点が加算されること、敵の弾を避けるように動くとプレイヤーの生存時間が長くなり、得点が加算されることなどを発見しました。これらのシステムは、自らの意思決定の価値をゼロから学習しました。ボールを打つ、物を撃つ、報酬を得る、理解する、そしてより良くなる。
マルーバのHRAは、正直に言って概念実証と言えるでしょう。苦労して学習する必要はなかったのです。必要な知識はすべて既に備わっています。ゼロから自ら学習し、環境から自ら知性を構築できるようになるまでは、これはあらかじめプログラムされた迷路探索アルゴリズムです。論文の共著者の一人であるロマン・ラロッシュ氏は、重みは「現時点では手動で」定義されていることを認めつつも、将来的には動的に定義できるようになることを期待していると付け加えました。この固定設計は論文に記載されています。
基本的に、このアルゴリズムはMs. Pac-Manを解くためにハードコードされているため、別の特殊なモデルを最初から作り直さない限り、他のシナリオに設計を適応させるのは難しいかもしれません。率直に言って、コンピューターがMs. Pac-Manを解くのを見たいのでなければ、このアルゴリズムは誰にとってもあまり価値がありません。
Mehrotra氏とSuleman氏によると、このプロジェクトは、複雑な環境下での強化学習を自然言語や会話にどのように適用できるかを探るMaluubaの取り組みの一環である。
皮肉な言い方をすれば、Microsoftは買収を機に、DeepMindなどの取り組みに匹敵する注目を集めるデモを発表しようとしたと言えるでしょう。確かに、MaluubaのHRAには興味深いプログラミングと巧妙な数学が関わっています。そして、見た目も洗練されており、それがジャーナリストやシンクフルエンサーに愛された理由です。しかし、現実的に考えてみましょう。これはMAMEの自動操縦版と言えるでしょう。®