本記事は、10月29日〜30日にかけて開催した「CyberAgent Developer Conference 2024」において発表された「AIを駆使したゲーム開発戦略: 新設AI組織の取り組み」に対して、社内の生成AI議事録ツール「コエログ」を活用して書き起こし、登壇者本人が監修役として加筆修正しました。


杉本 翔 (ゲーム・エンターテイメント事業部 AI戦略本部 エンジニア)

2020年新卒入社。Unityエンジニアとして複数タイトルの新規開発/運用に従事。また、AI技術を活用したゲーム制作支援の研究開発にも従事。2024年からはSGE AI戦略本部のボードメンバーとして、引き続きゲームタイトルへのAI活用を目指した複数の施策に取り組む。

伊原 滉也 (ゲーム・エンターテイメント事業部 AI戦略本部 リサーチエンジニア)

2022年度新卒入社。ゲーム開発効率化の推進と新時代のゲーム体験を創出する技術研究開発を担う。現在は主に、バランス調整支援のためのカードゲームAIやデッキ探索、レベル生成の研究開発に従事。博士(工学)。NITech AI研究センター客員助教。


杉本:それでは、「AIを駆使したゲーム開発戦略: 新設AI組織の取り組み」というテーマで、SGE AI戦略本部の杉本と伊原が発表させていただきます。

改めまして、エンジニアの杉本翔と申します。私は、株式会社サイバーエージェントのゲーム・エンターテイメント事業部に所属し、その中のAI戦略本部という組織で活動しています。以前はUnityエンジニアとして、ゲーム開発に従事しておりましたが、現在はこのAI戦略本部において、UnityでのAI技術の活用を進めるための検証や、導入に向けた実装を担当しています。

こちらが本日のアジェンダです。まず、私からSGE AI戦略本部の概要や、現在進めている取り組み事例についてお話しします。さらに、組織が目指すビジョンや、その達成に向けて具体的にどのような施策を行っているかについてもご紹介させていただきます。

続いて、伊原からは、AI戦略本部の取り組みの一つである「カードゲームのバランス調整支援」に関して、技術的な内容も交えながら詳細に説明いたします。

それでは、まずSGE AI戦略本部についてご説明させていただきます。

1 SGE AI戦略本部について

 

SGE AI戦略本部は、AIを活用した新時代のゲーム開発をスタンダードにすることをミッションにした、ゲーム・エンターテイメント事業部の組織になります。

このスライドにある通り、サイバーエージェントのゲーム・エンターテイメント事業部にはさまざまな子会社があり、それぞれが多様なゲームタイトルの開発を手掛けています。こうした状況の中、昨年、各プロジェクトを横断する組織として新たに設立されたのが「SGE AI戦略本部」です。この戦略本部では、各プロジェクトとの連携を図りつつ、ゲーム開発におけるAIの活用を推進しています。

ここで、この組織のミッションにも掲げている「新時代のゲーム開発」について、簡単に説明させていただきます。AI戦略本部では、「制作」と「体験」の二つの軸を中心に、新しい時代のゲーム開発を実現することを目指しています。

まず、「制作」の領域では、人間がアイデアや創造力の発揮に専念できる環境を構築したいと考えています。AIを活用することで、人間ならではのクリエイティビティを最大限に引き出し、ゲームタイトルの品質向上や開発者の働きがい向上にもつながると考えています。

次に、「体験」の領域では、AIそのものをコンテンツとして活用し、AIが可能にする新たな体験を創出することで、ユーザーに新しい価値を提供すると同時に、新たなビジネスの創出も目指しています。次のパートでは、「制作」の領域における具体的な取り組み事例をいくつかピックアップしてご紹介します。以上がAI戦略本部についての説明となります。

それでは、現在AI戦略本部でどのような具体的な取り組みを行っているのか、いくつかの事例を挙げてご紹介いたします。

今回ご紹介するのは、4つの取り組みです。まず1つ目は「スクリプト制作支援」についてです。この事例は、いわゆる「ADV」と呼ばれるアドベンチャーパートを含むゲームを対象としています。

アドベンチャーパートでは、ゲーム画面にキャラクターが表示され、セリフに合わせて表情やモーションが変わりながら物語が展開していくのが一般的です。このような仕様を実現するには、スクリプトと呼ばれるデータに対して、各セリフに表情やモーションの情報を手作業で入力していく必要がありました。

そこで、AI戦略本部では、セリフに応じて適切なモーションや表情を推薦するシステムを開発し、スクリプターの入力作業を支援しています。既存の制作ツールを拡張する形で導入し、スクリプターの作業フローを変えずに使用できるようにしています。

次にご紹介するのは「サムネイル画像の制作支援」です。ゲーム開発では、大量かつ継続的にサムネイル画像を制作する必要があります。このニーズに対応するため、AI戦略本部では2Dイラストから人物の顔を検出し、自動で切り抜きを行うツールを開発しました。

特に、このツールは汎用性に重点を置いて開発しており、Windows版、Mac版、Linux版をそれぞれ提供しています。そのため、サーバーでのバッチ処理も可能です。導入効果として、あるゲームタイトルでは、想定工数として予定されていたサムネイル制作の工数を約385時間削減できる効率化が実現できました。

次にご紹介するのは「カスタマーサポートの支援」です。お問い合わせメールへの対応では、多くの場合、内容ごとの量を把握し、適切な返答を検討するために、各メールに対して人手でタグを付ける作業が発生します。例えば、「ご意見」「不具合」「引き継ぎ」といったタグを設定するイメージです。ゲームタイトルによってはさらに細かく、特定の機能名に基づいたタグを設定する場合もあります。

こうしたタグ付け作業をAIによって支援するために、AI戦略本部では自動でタグを付与するシステムを導入しました。このシステムを導入したプロジェクトでは、メール1件あたりの処理時間を約30秒削減でき、1か月間で合計50~60時間の作業時間削減に貢献しています。

最後にご紹介するのは「カードゲームのバランス調整支援」です。カードゲームなど、運用中に要素が次々と追加されるゲームでは、ゲームバランスの調整が非常に複雑になります。考えられるカードやユニットの組み合わせが膨大で、強すぎる組み合わせ、いわゆるバランスブレーカーが存在しても、人力で見つけ出すのは難しいのが現状です。

この課題に対して、AI戦略本部では「プレイヤーAI」を活用し、膨大な回数のプレイを高速で実行させたり、「探索AI」を用いて最強のユニットやデッキの組み合わせを見つける支援を行っています。さらに、これらのプレイデータを集計し、使用率やスコア分布、ランキングといった統計情報を可視化することで、ゲームバランスの調整をサポートしています。

また、実際の運用における追加要素に対応するため、AIの学習時間も現実的な範囲に抑えています。

次のパートでは、この取り組みについて、伊原がさらに具体的に説明いたします。

 


3. 事例紹介 カードゲームのバランス調整支援

伊原:ここからは事例紹介として「カードゲームのバランス調整支援」についてお話しします。私は、ゲーム・エンターテイメント事業部AI戦略本部の伊原と申します。今回紹介するバランス調整支援や、レベル生成などの研究開発に取り組んでいます。どうぞよろしくお願いします。

まずは、この取り組みの概要についてお話しします。杉本からの説明にもありましたが、私たちはゲームバランスの調整を支援し、バランス崩壊のリスクを軽減するためのシステムを開発し、複数のプロジェクトで実際のカードデザインワークフローに導入しています。

カードゲームのバランス調整にはいくつかの課題があります。まず1つ目は膨大な組み合わせのシチュエーションが存在することです。たとえば、あるゲームではデッキのパターン数だけでも10の20乗以上あり、さらに1ゲーム内でのプレイパターン数は10の20乗から40乗に及びます。この中でバランスブレイカーと呼ばれる強力すぎるカードや組み合わせが存在したとしても、それを人力で発見するのは非常に困難です。

また、デッキの組み合わせや手札の回り方、プレイングによっても、カードが発揮する性能は変動します。このように、膨大なパターンを網羅的に検証するのは現実的ではありません。

そこで、この課題に対応するために、私たちは「デッキ探索AI」と「カードゲームAI」を開発し、システムに導入しました。デッキ探索AIはグレーボックス最適化を用いて、膨大な組み合わせの中から有望なデッキを効率的に見つけ出します。カードゲームAIは深層強化学習を活用し、デッキをあらゆるシチュエーションで高速にプレイして評価を行います。

もう一つの課題は、新カードが短期間で追加されることです。特にスマートフォンゲームでは、月に2,3回新たな要素が追加されるため、そのたびにAIの再学習が必要となります。しかし、この再学習に時間がかかると、バランス調整のイテレーションに対応することが難しくなります。

この問題に対しては、転移学習を導入し、新しいマスターデータに迅速に適応するカードゲームAIを開発しました。この仕組みにより、AIの学習にかかるリードタイムを従来の10日以上から10時間にまで短縮することができました。

ここまでの内容をまとめます。カードゲームのバランス調整には、膨大な組み合わせパターンと頻繁な新カードの追加という二つの課題がありました。これに対し、デッキ探索AIとカードゲームAIの2種類のAIを転移学習と共に活用することで、バランスブレイカーを効率的に探索するアプローチを実現しました。

このシステムは、プランナーが一連の操作を完結させられるバランス調整支援システムとして設計されています。具体的なバランス調整ワークフローは次の通りです。まず、プランナーが新しい追加カードやパラメータを調整したカードをマスターに反映させ、転移学習を実行します。転移学習によって、新しいカードデータが学習され、その学習結果を画面で確認することができます。

問題がなければそのままデッキ探索を実行し、最後に探索結果の集計データをプランナーが確認します。このシステムをある新規タイトルに導入したところ、いくつかの具体的な導入効果が見られました。

まず、サービス開始時点で1億パターン以上のデッキがシミュレーションされました。総プレイ回数は10億回を超え、人間が1回のプレイに1分かかると仮定すると、約1900年分に相当する検証が行われたことになります。また、設計やテストプレイの段階で見逃されていたプレイパターンを検出し、カード効果の調整にも貢献しています。

例えば、上位のデッキが特定のカードばかりで構成される傾向が見られたり、特定のカードの組み合わせによって疑似的な無限ループが発生するなど、意図しないカードの挙動を発見することができました。さらに、ゲームのコアロジック部分における未発見のバグの検出にも役立っています。

ここからは、このバランス調整支援システムの技術的な詳細について説明します。まずは、カードゲームAIの学習部分についてです。改めて申し上げますが、今回対象としているのは、ターン制の一人プレイカードゲームです。このゲームでは、カード効果の相乗効果を活用してスコアを上げ、決められたターン数以内に目標スコア以上を獲得することでクリアとなります。

カードゲームAIはデッキ探索の際に、デッキの評価や期待スコアの計算に利用されるため、あらゆるゲーム設定やデッキ設定に対して最適なプレイができる必要があります。また、探索システムでは膨大な数のカードゲームを繰り返しプレイするため、1回のプレイ時間を可能な限り短縮することが求められます。

この要件を踏まえ、カードゲームの1プレイに要する時間の目標を0.1秒以下と設定しました。さらに、ワークフローに組み込む上で、プランナーから「マスターデータの更新から36時間以内に結果を確認したい」という要望がありました。このため、マスターの更新からカードゲームの学習、デッキ探索実行、結果の確認までのリードタイムを36時間以内に完了することを目標としました。

今回のカードゲームは、マルコフ決定過程(MDP)としてモデル化が可能です。MDPとは、次の状態が現在の状態と行動によって 確率的に決まるモデルのことです。このカードゲームでは、ゲーム盤面を状態として手札のどのカードを使うか、そのカードの選択を行動として定義することで MDPとしてモデル化できます。

MDP上の展開型ゲームで一般に有効であることが知られている、MCTSモンテカルロ木探索はモンテカルロ法を使った木探索手法で厳密な最適行動も計算可能である一方で、今回の要件の上ではゲームやデッキ設定ごとに探索が必要であり、計算時間が大きいという問題があります。

実際に表の実験結果を見ると、4ターンのゲームでも313秒、9ターンのゲームでも1400秒かかっており、探索に使うにはプレイ時間がかかりすぎています。そこで深層強化学習により、多様なゲーム、デッキ設定に反過して最適なプレイを近似し、高速にプレイすることを目指します。

本取組みでは、学習中に多様なゲーム・デッキ設定を大量に生成し経験させます。前述の通り経験が必要な問題設定と回数がどうしても多くなってしまいますが、こうすることであらゆるゲームやデッキで汎化してうまくプレイできる戦略を学習できます。

実験により深層強化学習によって短い実行時間で優れたプレイ性能を実現することが確認できました。実験では深層強化学習は PPOという手法を採用しました。2つのゲームモードでそれぞれ複数のデッキ設定でプレイした結果の平均値で評価しています。

同じぐらいのスコアを獲得できるMCTSと比較して、プレイ時間は大幅に減少し、同じくらいのプレイ時間のMCTSと比較して、獲得できるスコアは大きく上昇しています。これによって実行時間は要件を満たすことができましたが、前述の通り学習中に経験が必要な問題設定と回数が膨大であり、学習に時間がかかってしまうところが導入上の課題となります。

ここで本取組では、 転移学習によりマスター追従の仕組みを導入し、マスターデータの更新、つまりデザインの決定時から学習完了までのリードタイムを短縮しました。マスター更新時は、前のマスターで学習したモデルをもとに、追加差分を転移学習することで、1からスクラッチ学習するよりも短時間で高性能な戦略を学習できます。

転移学習時には、新カード追加により、徐々に状態空間や行動空間が広がっていってしまうという課題があります。そこで本取組みでは、空間を広げないための工夫として、転移学習の状態表現に大規模言語モデルLLMによる文章埋め込みを活用しています。具体的にはカードの効果テキストをそのままLLMによって文章埋め込みし、その埋め込みをモデルの入力に用いています。

こうすることでゲーム内の構造データに依存しないため、将来的な変更に強く、未知の新規実装カードも追加学習なしで空間内に写像することができます。こちらは転移学習とスクラッチ学習の比較実験です。転移学習により短時間で新規実装カードを扱え、十分な性能が得られることが確認できました。

続いてデッキ探索AIの説明をします。

デッキ探索の目的はバランスブレイカーとなりうるような最大スコアのデッキを発見することです。各デッキで理想のプレイをしたときのスコアによって評価し、作成できる中で最強のデッキを探します。デッキの評価はカードゲームAIのプレイで近似的に評価します。

最適なプレイ、最適な方策で評価するのが理想ではありますがすべてのデッキ設定、カードゲームに対する最適方策の計算は現実的に不可能なので、深層強化学習により汎化して学習した高速に実行可能なモデルによって評価します。

デッキ探索の難しさとして、やはりデッキの組み合わせ数の膨大さが挙げられます。デッキの組み合わせ数は10の20乗以上となっており、総当たり的な解決は困難となります。

探索空間が膨大なため、問題の知識を活用して効率的にすべく、本取組ではグレーボックス最適化と呼ばれる探索手法を採用しました。グレーボックス最適化とは、問題の中身に関する知識が与えられずに解くブラックボックス最適化とは対比的に、問題に関する一部の情報を活用して探索する手法です。

今回はカード効果がデッキ探索に大きく影響を与える要素として考えられるので、カード効果の知識をうまく活用した探索手法を構成し導入しました。具体的には、大規模言語モデルによるカード効果の埋め込みを活用しました。転移学習時へのモデルの入力と同様に、カードの効果テキストの文章埋め込みを、デッキ探索にも活用し効率的な探索を目指します。

遺伝的アルゴリズムのデッキの交叉はこの図のように構成されています。

まず親デッキのカードの和集合を作成し、その和集合に基づく確率分布からのサンプリングによって子デッキを作成します。この時のサンプリング方法に前述のカード効果の文章埋め込みを使って、カード効果に基づく効率的な探索を実現します。

具体的には、カード効果の埋め込み空間上でガウスカーネルによる確率分布を構成し、その分布からのサンプリングによって子デッキを選択します。サンプリングされた点から最近傍のスキルカードを選択し、子デッキに追加します。

この時、ガウス分布の分散が大きければ大きいほどランダム選択に近く、小さければ小さいほど親と子が類似することになります。

こちらは実験結果です。

カード知識の活用による探索性能が向上することが実験により確認できました。ガウス分布の分散が十分に大きい場合はランダム選択と一致し、0の場合は親と全く同じカードの選択肢から探索することになりますが、そのどちらの場合とも比べて性能が上昇しています。

最後にまとめとなります。

まず、プランナーのみで完結してシミュレーション実行可能なバランス調整支援システムを開発しました。深層強化学習と転移学習による 適応的なゲームAIを開発し、学習にかかる時間を300時間から10時間に短縮しました。

またカード知識を活用した効率的なデッキ探索AIにより探索性能が約15%ほど改善しました。これらのシステムの導入効果として、サービス開始時点で1億デッキ、10億ゲーム以上のシミュレーションを実施し、人力では築けなかったプレイパターンの検出し、効果調整に貢献しています。

また副作用として、バグの検出にも役立ちました。


4. 課題と今後の展望

 

杉本:最後に、課題と今後の展望についてお話しします。

これまでの様々な取り組みの中で、実際にゲーム開発のワークフローへAIを導入する際の課題も明らかになってきました。まず技術面では、生成の制御性が不足している場合や、AIの予測精度が低いために導入が難しいケースが見受けられます。サイバーエージェントでは、複数の事業部でAI技術に取り組んでおり、組織間で連携を強化しつつ、最新技術のキャッチアップを進めています。

また、組織的な面では、現場がAIに求めるクオリティ水準が高いため、AIから何らかの出力が得られたとしても、必ずしも現場で使えるとは限らないという課題があります。現場とAI開発チームとの間のギャップを埋めることが、組織的に重要であると考えています。

さらにもう一つの課題は、技術領域やAIモデルの特性によって、あるゲームタイトルに導入したAI技術を別のタイトルに展開する際に、追加のコストが発生する点です。ゲームタイトルごとに開発フローやデータに違いがあり、それに伴う技術検証も必要です。そのため、より汎用的に利用できる技術やツールの開発が重要な課題となります。

今後の展望といたしましては、冒頭でお見せした図にある通り、AI戦略本部としては「制作」と「体験」の二軸で、新時代のゲーム開発の実現を目指しています。制作の領域では、AIによって人間のクリエイティビティを最大化し、プロダクト品質の向上と開発者の働きがいの向上に寄与したいと考えています。

一方、体験の領域では、AIそのものをコンテンツとして活用し、私たちSGE AI戦略本部が驚きと斬新さに満ちたエンターテインメントを通じて新たなビジネスチャンスの創出に貢献できればと思います。

ご静聴ありがとうございました。