2018/01/09

強化学習をバランス調整に活用。『逆転オセロニア』が目指す、ゲーム開発の近未来

AI(人工知能)が、人間の仕事を代替する。

 

近年、そんなフレーズが各種メディアに登場するようになりました。今後10~20年で、今存在しているさまざまな仕事は自動化されると考えられています。そして、その波は“ゲーム開発”にも訪れているのです。

 

DeNAでは、オセロとトレーディングカードゲームの要素を組み合わせた対戦ゲームアプリ『逆転オセロニア』のキャラクターバランス調整を、AIによってサポートすべく研究を続けています。今回は、本プロジェクトを推進し研究・開発に“フルスイング”してきたエンジニアであるAIシステム部AI研究開発グループの奥村エルネスト純、甲野佑、田中一樹に、彼らが成し遂げようとしている未来について聞きました。

 

「世界的に見ても前例がない領域」に挑むやりがい

――なぜ、オセロニアのバランス調整にAIを導入しようとしているのでしょうか?

 

奥村:ゲームのバランス調整をより効率よく正確に行うためです。『逆転オセロニア』では、1,000種類以上のキャラクターがリリースされており、それぞれ独自のスキルが割り当てられています。各プレイヤーはそれらのキャラクターから様々なデッキを構築し、オセロをベースにしたルールに従って勝利を競うので、ルールはシンプルですがとても戦略性の高いゲームとなっています。

 

 

こういった多数のキャラクターが登場するゲームの場合、運用年数が長くなるにつれてキャラクター同士の組み合わせパターンも爆発的に増えてしまいます。そのため、テストやバランス調整に費やす工数も増大し、調整の難易度も上がってしまう、という課題があります。

 

また、キャラクターのスキルの組み合わせによっては、ゲームバランスを崩すようなパターンが生まれる可能性も高くなります。そうなってしまうと、プレイヤーはみなそのキャラクターを組み込んでデッキが硬直化してしまうため、ゲームが大切にしている「デッキ構築の楽しさ」や「ハラハラするような対戦の体験」が大きく毀損されてしまいます。

 

AIシステム部AI研究開発グループ 奥村エルネスト純
国内外の研究機関で観測的宇宙論の研究に従事し、京都大学理学研究科宇宙物理学専攻にて博士号取得。2014年4月にDeNAでデータアナリストとしてのキャリアをスタート。事業推進をデータからサポートすることを目指し、主にゲーム領域のデータ分析・パラメータ設計の経験を積む。2017年1月より機械学習エンジニアに転身し、強化学習技術を中心としたゲームAIの研究開発を推進。機械学習の実ビジネス適用や、UXデザインに興味を持っている。

 

そうした課題を解決するため、「自動的にプレイをくり返すことでキャラクターの性能を評価し、調整の工数を削減できるようなAI」の研究開発に取り組み始めました。現在、『逆転オセロニア』のAI開発チームは私を含めて3名。私がリーダーを務め、エンジニアの甲野佑さんと田中一樹さんとともにプロジェクトを推進しています。

 

――これまでも、囲碁をプレイするAIなど、ゲームをAIに解かせる取り組みはありました。そういった研究事例と、『逆転オセロニア』のAI研究はどういった違いがありますか?

 

奥村:技術的に深い内容については2人から解説がありますが、私から言えるのは2つ。

 

1つ目は、将棋や囲碁などと比較すると『逆転オセロニア』はキャラクターの種類が多く、情報が不完全である(相手の手持ちのキャラクターやデッキに入っているキャラクターが何かわからない)ため、乗り越えなければいけない技術課題がたくさんあること。

 

現在、AIが人間よりも強くなっているゲームのほとんどって、「ゲーム内に登場するキャラクター(駒)の種類が比較的少ない」「完全情報ゲーム(情報の全てが互いのプレイヤーに公開されている)」という特徴があるんです。

 

だから、『逆転オセロニア』のような複雑性の高いゲームをAIが解けるかというのは、そもそも未知数なんですね。世界的に見ても前例がほとんどありません。でも、だからこそ、その領域にチャレンジできるのは非常にやりがいのあることなんですよ。

 

2つ目は、事業貢献を目指すことによる「現場とのコミュニケーション」の重要性。実際の運用サービスに対してAIを導入するので、双方に取ってメリットがないと取り組み自体が進みません。

 

だからこそ、「なにが目的でどんな研究をしているのか」「実現すれば、具体的にどのようなことができるようになるのか」といったことを、プロジェクトに関わるメンバー全員に過不足なく伝えるように尽力しています。

 

――AIを用いた各種取り組みは前例がないケースがほとんどのため、周囲のメンバーにその情報を伝えるのも一苦労かと思います。奥村さんはどうやって、その情報を上手に伝えていますか?

 

奥村:開発の見通しを丁寧に説明して、期待値がずれないように意識を集中しています。このような研究開発では、そもそもどのような成果が出せるかが不透明なことが前提なので、お互いの期待値がずれると進行に影響が出てしまいます。隔週でプロデューサーと議論の場を設けていますが、確実に達成できそうな最低ライン・現時点での見通し・上手くいったらできること、を素直に伝えながら、お互いの認識が合うまで話し合いを進めてきました。

 

特に、今回のプロジェクトで大事だったなと思うのは「ゴールを一緒に作る」という点です。私たちの立場からは、現場の課題をちゃんと拾えていないと的はずれなソリューションを渡してしまいますし、悪く言えばただの独りよがりな研究になってしまいます。一方で、現場には解決したい課題はたくさんあるものの、AIでなにを解決すべきかまでは見えづらく、足元の運用が忙しいなかで中長期の研究開発に踏み切りづらい状況があります。

 

そのため、現場の本当の運用課題は何なのかについて議論を尽くしてきましたし、こちらも研究開発をするだけでなく、AIを使ったゲーム内企画を作って提案したりと、「利用者に楽しんでもらえるゲームを作る」という目標を共有しながら一緒に着地点を探しています。

 

このように話すと、どれも当たり前のことに思えますが、やはりそうした当たり前のコミュニケーションを愚直に取り続けるのが一番の近道なのではないでしょうか。おかげさまで、チーム側も今回のプロジェクトには非常に理解を持って向き合ってくれており、すごく動きやすいです。

 

AIが、自分自身でキャラクターの特徴を学習する

――甲野さんはこのプロジェクトにおいてどんなことを担当していますか?

 

甲野:私は「強化学習(※)」という手法を用いてAIを強化する取り組みをしています。

 

※強化学習…機械学習の1種。与えられた環境に対する自律的な試行錯誤を元に、教師データを与えなくてもAIが自発的に学習していく技術のこと。

 

もともと前職では、大学でヒトの意思決定傾向や脳における行動の習慣/階層化過程を組み合わせた強化学習モデルの基礎研究をしていました。そろそろ基礎ではなく応用に踏み込んでみたいと思っていた頃に、DeNAで『逆転オセロニア』のバランス調整に強化学習を用いたAIを導入しようとしていることを知ったんです。

 

強化学習ってまだビジネス応用が上手くいっていない技術で、まだまだ実用化はこれからという領域なんです。だから、その技術を積極的にサービスに組み込んでいこうとする会社はすごくチャレンジングだなと思って、DeNAを受けました。

 

AIシステム部AI研究開発グループ 甲野佑
博士 (情報学)。2017年4月に中途入社。前職では大学でヒトの意思決定傾向や脳における行動の習慣/階層化過程を組み合わせた強化学習モデルの基礎研究を行っていた。入社以来ゲームAI開発に携わっており、学習アーキテクチャ全体の設計と強化学習アルゴリズムの開発などに従事している。

 

――機械学習にはさまざまな手法がありますが、強化学習を用いる意味はどういった部分にありますか?

 

甲野:専門的な話になりますが、『逆転オセロニア』のようにさまざまなキャラクターが追加されて行くゲームでは、新しいキャラクターのリリースごとにゲームの構成要素が変わるため、理論的には「従来と別のゲーム」になってしまうんです。

 

そうなったときに、プレイログの蓄積を待ってから学習させ直すと膨大な時間がかかる上にリリース前の検証ができないので、AI 自身にゲームが変わってもゼロから学習できる能力を付加する必要があります。

 

――その「AI 自身がゼロから学習できる能力を付加」するために、強化学習が有効だということですね。『逆転オセロニア』に強化学習を適応させるにあたり「学習効率を改善させるために、こういう点を工夫した」という例はありますか?

 

甲野:キャラクターの特徴獲得を自動化させたことですね。従来の考え方では新しいキャラクターが増えた場合には、「この駒はこういう特徴を持っている」という情報を専門知識を有する人間の手作業によって個々に定義していくのが普通でした。しかし AI の実際の運用を想定した時、それを毎回人手で行うのは現実的ではありません。そこで、駒の挙動などから「AI が理解しやすい駒の特徴表現」を AI 自身が自律的に獲得する「表現学習(※)」フェーズを入れました。

 

※表現学習…機械学習の1種。例えば自然言語における「単語」など、それ自身に対して個別に人間が意味を与えられない情報に対して「文章」の前後関係などから意味(特徴表現)を自律的に学習する手法。『逆転オセロニア』では自然言語における「文章」を「ゲーム展開」に置き換え「単語」に対応する「駒=キャラクター」を表現学習する。

 

――人がキャラクターの特徴を入力する学習手法が「演繹法」だとするならば、AI自身がキャラクターの挙動から特徴を推論するのは「帰納法」のようなアプローチですね。

 

表現学習を用いれば、データ保持に必要な次元数を劇的に圧縮できる

――田中さんの担当領域は?

 

田中:僕は2017年に新卒入社し、最初はAI同士が対戦する機能やゲームロジックとの繋ぎこみなど全体的な実験環境を開発していました。

 

AIシステム部AI研究開発グループ 田中一樹
剣道に打ち込む高校時代を過ごし、米国の経営誌の「データサイエンティストはもっともセクシーな職業だ」という言葉をきっかけに、セクシーを目指して大学4年の頃にデータ分析をはじめる。大学院時代には国内外のデータ分析コンペで賞を受賞し、その賞金100万円をがん患者の支援団体に寄付した。一見大人しそうだが、バックパックやアウトドアなどの活発な趣味をもち、小学生時代には「最も芸人になりそうな同級生」に選ばれたという意外性をもつ。2017年度に新卒でDeNAに入社し、現在はオセロニアのAI開発を行う。Kaggle Master。

 

現在は、対戦時の棋譜(オセロニアの対局記録)を教師データとして、AIがそれを真似る形で打ち手を学習する「教師あり学習(※1)」という手法を用いてAIの強化に取り組んでいます。それとは別に、「表現学習(※2)」と言われる手法を用いることで、モデルの学習を効率化しながらAIを強化するといったチューニング作業も担当しています。

 

※1…機械学習の手法の1つ。入力と出力(データとラベル)のペアからなる教師事例をもとに学習を行い、出力が未知である入力事例に対して正しい出力を予測させることを目的とする。
※2…画像や音、自然言語、時系列データといった要素を、分散表現(ベクトル)として抽象化し獲得する手法。分散表現はコンピュータにより自動計算される。

 

――表現学習の手法は、どういったデータを保持する際に強みを発揮しますか?

 

田中:例えば、「全キャラクターの情報」を保持するときです。通常、ゲームに1,000種類のキャラクターがいる場合、その情報を表現するには1,000次元のベクトルが必要になるんです。これはone-hotベクトルと呼ばれますが、キャラクターが増えるとその分次元が増えていくなどの問題があります。そのような弱点を表現学習では解決でき、キャラクターが増えてもそれを固定の5次元くらいに圧縮することが可能になります。

 

――表現学習は、なぜそれほど少ない情報量でデータを表現できるんですか?

 

田中:ざっくり言うと、あるゲーム状況下において「発生する結果の近似値」を覚えさせているからです。例えば、『逆転オセロニア』には「『竜属性』で貫通スキルを持っているキャラクター」とか「『魔属性』でカウンターや罠スキルを持っているキャラクター」というように、キャラクターには固有のアーキタイプのようなものが存在しています。そして、似たアーキタイプのキャラクターであれば、当然ながらゲーム内での挙動と結果も似ています。その結果が他のデータと比べてどれくらい似ているかを学習させる、というイメージです。

 

だから、どんなにキャラクターの種類が増えても、キャラクターのアーキタイプ(発生する結果の近似値)そのものに大きな変動はないので、少ないデータ量で表現できます。

 

――キャラクターの持っている「特徴そのもの」を情報として持っておく、というイメージですか?

 

田中:そうですね。特徴を埋め込むという感じです。「フィニッシャー(ゲームの勝敗を決定づけるために採用されるキャラクター)っぽい」とか「序盤に置くと活躍しそう」といった、人間の感覚値に近い情報を5次元に上手く埋め込んでいきます。その結果、異なるキャラクター同士でも分散表現が似ているキャラクターは同じような活用方法なんだ、ということをAIが学習してくれます。

 

この手法を用いた理由としては、純粋に「データ量を圧縮するため」という面もありますし、「新しく登場したキャラクターに対しても、似た分散表現をもつ既存のキャラクターと同系統のテストを通すことで、運用が効率化される」という面もあるんです。キャラクター数が非常に多い『逆転オセロニア』には、非常に向いている手法だと思います。

 

「人間っぽい行動パターンに近づけているか?」を確認するため、Webツールを開発

――『逆転オセロニア』のバランス調整AIを開発するにあたり、「これを実施したことで、開発効率が劇的に改善した」というノウハウはありますか?

 

田中:一番大きかったのが、AIがどんな位置にどのキャラクターを置いたのかをWebブラウザ上で確認できるツールを奥村さんを中心に独自に開発したことです。これが、すごく便利で。それまでは、AIの対戦ログ情報をテキストベースで追っていたのですが、何万ものログを全部目で追うってすごく大変だったんです。

 

このツールでは、AIの行動をWebブラウザ上で確認できるだけではなく、それが人間の打ち手とどれくらい似ているかをヒートマップによって比較できるようになっています。その内容を元に、「人間っぽい行動パターンに近づけているか?」「今のAIの戦術ってどうなっているのか?」を確認しています。また、実際に自分たちが開発したAIとバトルすることでも確認しています。

 

▲Webツールの画面(画面上のデータは全て開発環境のものです)。

 

甲野:実は、新しい AI が過去の AI より相対的に強くなっても、「人間から見ると違和感のある打ち手」になってしまうケースはよくあるんです。でも、私たちが取り組んでいるプロジェクトの目的が「人間によるバランス調整の作業をAIによって代替すること」である以上、その状態のままではいけません。真にあらゆるパターンで人間以上に強い AI でない限り (そして真に人間以上であるか否かの定義・検証は困難)、人間の挙動に近いかどうかは代替えとしての AI を評価する上で大きな判断材料になります。

 

そのために、人間とAIの挙動の近似を確認できるツールを開発しました。確認作業がかなり効率化しましたね。

 

面白さを作るのは、人間

――最後に聞きたいのですが、この仕事のどういった部分にやりがいを感じていますか?

 

田中:「本質的に重要な仕事」に人間が集中するお手伝いができることです。ゲームの面白さを作るのってあくまで「人」であって、AIはそのサポートだと僕たちは考えています。

 

甲野:バランス調整のためのテストって、もちろんすごく重要な作業なんですけど、人間の創造性が発揮される業務ではありません。だからこそ、その作業をAIが代替することで、人間はより「面白さ」を作るための作業に集中できるようになる。クリエイティブな時間が増えるんです。

 

「AI が人間の仕事を奪う」なんて近年よく言われていますけど、むしろ「奪ってほしい仕事は奪ってもらう」というのが僕たちの仕事なんです。

 

――人間が創造的な仕事に注力するためのお手伝い。それって、すごくチャレンジングな仕事ですね。

 

奥村:そうですね。そういう意味では、僕たちってすごく恵まれた環境にいるな、とよく思うんです。DeNAには「データを用いてサービスを改善し続けていく」というマインドがもともとありますし、それを実現できるだけの膨大なデータもあります。そして何よりも、AIを事業の大きな柱とするというビジョンがあります。

 

その環境でAI研究に従事させてもらえて、新しいビジネスを生み出すチャンスをもらえていることは、すごく充実感がある。新しい未来を開拓している感覚があります。

 

撮影:小堀将生