ゲーム開発におけるAIの可能性を追求し、“AIのソムリエ”を自認するモリカトロンが2021年6月8日にオンラインでのイベントを開催。同社が提供する5つのAIソリューションを説明し、その有意性、可能性などをアピールした。

 ゲーム開発に携わる人や会社を中心にメディアも参加した同イベントでは、質疑応答ではかなり専門的かつ具体的な質問も投げかけられ、参加者の熱量の高さがうかがえた。

モリカトロンという会社

 そもそもモリカトロンという会社名に聞き覚えがない読者も少なくないかもしれない。

 モリカトロンとは、森川幸人氏が代表取締役を務める会社で、ゲームAIの研究開発を中心に、Webメディア“モリカトロンAIラボ”の運営、そして技術情報の発信という3つの事業を展開している。

 森川氏といえば、家庭用ゲーム機やiPhone/iPad向けとしてリリースされているゲームを中心としたアプリケーションの企画・開発ゲーム開発メーカーとして知られるムームーの代表。プレイステーション用ゲームソフトの『がんばれ森川君2号』や『ジャンピングフラッシュ!』、『アストロノーカ』といった作品で知られるゲームクリエイターだ。

森川幸人氏のモリカトロンによるAIソリューション説明会をリポート「ゲームのルールも含めたすべてをAIに作らせられないか?」
『がんばれ森川君2号』人工知能を持つ不思議な生物のPiT(Pet in TV)を育成して、フィールドを冒険していくシミュレーションゲーム。
森川幸人氏のモリカトロンによるAIソリューション説明会をリポート「ゲームのルールも含めたすべてをAIに作らせられないか?」
『アストロノーカ』究極の野菜を作るため、宇宙の果ての小惑星で農業に励むシミュレーションゲーム。

 森川氏の名前を一躍広めることとなった『がんばれ森川君2号』は1997年5月のリリース。PiT(Pet in TV)と呼ばれるAIが搭載されたロボットを育成するという内容で、つまり森川氏はいまから20年以上も前からゲームに搭載するAIの開発を続けて来ているわけだ。

 そんな森川氏は現在、モリカトロンの代表取締役だけでなく、AI研究所所長という役職も兼務している。この日の説明会は、森川氏をはじめとするモリカトロンがゲーム開発者たちやメディアに向け、その成果物を広く知らしめるものとなっていたのである。

森川幸人氏のモリカトロンによるAIソリューション説明会をリポート「ゲームのルールも含めたすべてをAIに作らせられないか?」
モリカトロンの代表取締役にしてゲームAI研究所所長を務める森川幸人氏。

ゲーム開発をサポートする5つのAIソリューション

 説明会の冒頭で概要を述べた森川氏によれば、モリカトロンはクライアントから依頼された案件に沿った形のAI開発を行う傍ら、同時にゲーム製作現場ですぐに使えるAIツールの開発も行ってきたという。そうした成果がこの日の説明会で登場した5つのAIソリューションというわけだ。

 その5つのAIソリューションとは、以下の通り。

  1. AIせりふサポート
  2. AI会話ジェネレーター
  3. AIパズルジェネレーター
  4. AIアニメ制作サポート
  5. COM DK

 それぞれの具体的な内容については、モリカトロンのチーフエンジニアを務める松原卓二氏が解説を行った。

森川幸人氏のモリカトロンによるAIソリューション説明会をリポート「ゲームのルールも含めたすべてをAIに作らせられないか?」
説明会冒頭で示されたスライド。独自のものだけでなく、クライアントとの協働で研究開発を進め、“ゲーム制作現場ですぐに使えるAI”を生み出すのがモリカトロンという会社だ。
森川幸人氏のモリカトロンによるAIソリューション説明会をリポート「ゲームのルールも含めたすべてをAIに作らせられないか?」
5つのAIソリューションを解説したモリカトロンのチーフエンジニア、松原卓二氏。

せりふの“らしさ”をチェック「AIせりふサポート」

 最初に紹介されたのが“AIせりふサポート”だ。これはゲーム内のキャラクターが話すせりふをあらかじめAIに学習させておくことで、そのせりふの“らしさ”をチェックしてくれるというもの。

 機能としては、まずはそのキャラクターのせりふがどれだけマッチしているかを調べる“せりふの分析”、さらに学習したせりふを元にキャラクターの口調に関する特徴などをまとめた資料データを生成する“口調データの出力”、そしてツールに登場した単語などを調べられる“登録したせりふの検索”と、大きくわけて3つにのことを可能にする。

 これらのなかで、中心となるのは“せりふの分析”だろう。このツールを使うことで、事前に学習したせりふに対し、新たに入力したせりふが“そのキャラクターのせりふと推測できるか”、また、“どのキャラクターのせりふだと推測されるか”を判定可能だ。

 複数いるキャラクターのうち、誰のせりふとして相応しいかは、一致率で示される。概ね60%を超える一致率が出れば当人のせりふとして不自然ないものと言えるのだそうだ。

 また、一人称やほかのキャラクターに対する呼びかたに揺らぎがないか、ゲーム内固有のものを含む単語の表記ミスがないか、NGワードが含まれていないか、文字数と行数が規定内に収まっているかもチェックができる。

 せりふをひとつひとつ入力して確認することはもちろん、複数のキャラクター名とせりふを対応させたファイルを作り、それを一括に処理させることも可能だ。

 既存のせりふと比較したときに、新たなせりふがそのキャラクターの特徴をどの程度捉えているか、人称は正しいか、また、NGワードなどが含まれていないかといったことを短時間、かつ正確に分析できるため、「せりふの制作管理においてコスト削減と品質向上が見込める大変便利なツール」(松原氏)となっているという。

AIせりふサポート概要ページ(モリカトロン)
森川幸人氏のモリカトロンによるAIソリューション説明会をリポート「ゲームのルールも含めたすべてをAIに作らせられないか?」
AIせりふサポートでは、あらかじめ学習させたデータと比較することで、誰のせりふとして相応しいか、語句に間違いがないかなどを効率よく正確にチェックできる。

自動生成の文章で人間と自然な雑談を可能にする「AI会話ジェネレーター」

 つぎに紹介されたのは文章生成モデル“GPT-2”をベースにしたAIモデル“AI会話ジェネレーター”だ。その名の通り、会話を生み出すことが可能で、1億5000万ペアに上る大量の対話情報をもとに、会話の文脈を考慮した自然な受け答えが可能だという。

 動作デモではチャットbotとしての活用が示されていたが、ユーザーからの呼びかけに対し、たしかにフレンドリーで自然な対応をする様子が示されていた。もちろんチャットbotだけでなく、ゲームのキャラクターにも応用することができるという。

 サーバー上に置いたAIモデルを活用するためのAPIも用意されているため、SlackやTwitter、LINEなど各種のSNSと連携させて使うこともできるとのこと。

 雑談を主眼に置いていることについては、テンプレートに乗った受け答えになりにくいため、「専門的な会話よりも雑談のほうが技術的には難しい」(森川氏)という背景がある。テーマを絞らない“雑談”は、会話がどう転がっていくかわからない。そこに破綻なく対応するにはAIが最適ということだろう。

 この“AI会話ジェネレーター”は、サーバーへのインストールができるところも特徴のひとつ。たとえばゲーム専用サーバーにインストールし、ゲーム内のキャラクターとプレイヤーとの会話を担ったりといったこともできるほか、利用状況に応じたカスタマイズも受け付けているそうだ。

 カスタマイズの一例としては、キャラクターのせりふデータを学習させることで、その口調を真似ることもできるとのこと。たとえば特徴的な口調を持った既存IPのキャラクターと対話しているような体験を提供できるわけだ。

 後の質疑応答では、特徴的なせりふのサンプルが200~300ほどあれば、そのキャラクターらしいしゃべり方を獲得できるという回答もあった。

 ちなみに前述のGPT-2とは、OpenAIによってリリースされたオープンソースのAIモデル。そのつぎの世代にあたる“GPT-3”というよりパワーアップしたモデルも存在するが、はるかに規模が大きくなっているうえ、ソースコードにアクセスできるライセンスをマイクロソフトが独占しているなど利用しづらい面を持つため、GPT-2を採用したそうだ。

AI会話ジェネレーター概要ページ(モリカトロン)
森川幸人氏のモリカトロンによるAIソリューション説明会をリポート「ゲームのルールも含めたすべてをAIに作らせられないか?」
森川幸人氏のモリカトロンによるAIソリューション説明会をリポート「ゲームのルールも含めたすべてをAIに作らせられないか?」
AI会話ジェネレーターはユーザーとの自然な雑談を交わすことができる。さまざまなSNSのチャットボットとして活用できるほか、独自のサービスに組み込むことも可能だ。

3マッチパズルのステージを自動生成可能「AIパズルジェネレーター」

 ここまでのふたつのツールはゲームやサービスの開発において汎用的に活用ができるものだったが、3番目に紹介された“AIパズルジェネレーター”は、かなり目的が絞られたものになっていた。ステージや難易度、ピースの種類数などを設定すると、3パッチパズルのステージを自動で生成できるツールだ。

 この“AIパズルジェネレーター”はWebアプリとして作られているため、操作はWebブラウザから行う。“基本設定”、“初期配置/補充”、“ミッション”と大きく3つのカテゴリーに分かれた生成条件を設定していくことで、ユーザーのリクエストに応じた3マッチパズルが生成される。

 ちなみに“基本設定”ではステージ数や難易度、フィールドの縦横サイズなどを、“初期配置/補充”では通常のピースと特殊なピースの数や配置を、“ミッション”ではステージの終了条件を設定していく。

 このツールのおもしろいところは生成して終わりではないところ。生成されたものをオートプレイで自ら検証し、条件に合うステージデータを選別するのだ。そのため、クリアできないステージなどが生成結果に混じることはない

 もちろん生成されたステージをそのまま人間が遊ぶこともできる。生成されたものから開発者が検証し、プレイヤーとしての観点から“おもしろいもの”を選りすぐっていけば、さらにゲームとしての完成度は高まるはずだ。

 自動でクリア可能かどうかの検証まで行ってくれるため、ステージ生成にかかる時間を大幅に短縮できるだけでなく、難易度を数値として指定できる。バランス調整も容易いところが“AIパズルジェネレーター”の長所と言える。

 また、特殊なピースやルールといった細部に関してはデフォルトの状態からさらに細かくカスタマイズできるため、作れるゲームをバリエーションをさらに広げられるという。

 なお、このツールの出力結果はJSON形式で記録される。JSONとはJavaScript Object Notationの略で、データ形式のひとつ。PythonやC++、Javaなどさまざまな言語でサポートされているため、汎用性の高いフォーマットとして広く活用されている。つまり、出力結果の活用がそれだけ容易であるということだ。

AIパズルジェネレーター概要ページ(モリカトロン)
森川幸人氏のモリカトロンによるAIソリューション説明会をリポート「ゲームのルールも含めたすべてをAIに作らせられないか?」
AIパズルジェネレーターは、3つのセクションに分かれた細かな条件設定を行うことで、3マッチパズルの盤面を自動で生成してくれるツールだ。
森川幸人氏のモリカトロンによるAIソリューション説明会をリポート「ゲームのルールも含めたすべてをAIに作らせられないか?」
ジェネレートした成果をオートプレイで検証してくれるので、クリアできない盤面が生成されるようなことはない。現状、おもしろさの評価は人間の手に委ねられているが、森川氏はこの部分も自動化したいという。

3Dモデルのアニメーションをメリハリのある動きに変換「AIアニメ制作サポート」

 3Dモデルで作られたアニメーションの動きにメリハリをつける変換ツールがこの“AIアニメ制作サポート”の中身。変換ツール名は“AnImator”と名付けられているそうだ。

 3Dモデルで作られたアニメーションは2Dのものに比べると、“ぬるぬる”とした抑揚のない動きに見えることがある。これを解消するのがこのツールの目的。デモ映像では3Dアニメを作成する統合環境“Blender”を使い、ジャンプしながら右足を大きく蹴り上げる動作を作成していた。

 通常の作業だと、この動きが均等にコマ割りされた状態でアニメーションが作成される。これがぬるぬると感じられる原因だ。そこで、モーションデータをJSON形式で出力し、それをAnImatorで読み込み、処理対象、手法、パラメータを設定。すると、ツールが自動で最適なフレームを選択し、それをキーフレームとしたモーションデータへ変換が行われる。

 その成果が端的に表れていたのが、まさにキャラクターが足を蹴り上げたその瞬間だ。均一にフレームが間引かれた元の動画では、蹴り上げた足がもっとも高く上がった瞬間がキーフレームに選ばれていないのだ。

 一方、AnImatorの出力結果では足がビシっと伸びたその瞬間がきちんと選択され、たしかに全体的な動きにもメリハリが生まれていた。このツールではメリハリの強さとフレームをどのくらい間引くかという2点のパラメータを使い、出力結果を調整可能だ。

 ここで言うメリハリの強さとは、動きの激しいところをどれだけ重視してコマを拾うかということ。これが過ぎるとかえって動きは不自然に見えてしまう。変更前と変更後をプレビューで比較しながらパラメータを調整することで、不自然さを感じさせない迫力ある動きを生み出していくわけだ。

 結果の評価は“人が見てどう感じるか”なので、パラメータの調整は必要だ。しかし、手作業でのコマ打ちに比べれば労力はかなり軽減されている。また、ゲーム内で使用した3Dモデルアニメーションを2Dの映像に変換できるため、映像作品として展開する場合にリソースの流用が容易になるのも大きな利点であるとしている。

AIアニメ制作サポート概要ページ(モリカトロン)
森川幸人氏のモリカトロンによるAIソリューション説明会をリポート「ゲームのルールも含めたすべてをAIに作らせられないか?」
Blenderの出力を読み込み、プレビュー、差分を確認しながら2つのパラメータを設定していく。
森川幸人氏のモリカトロンによるAIソリューション説明会をリポート「ゲームのルールも含めたすべてをAIに作らせられないか?」
足が伸びた瞬間やもっとも高くジャンプしているときなど、動きのなかで重要なフレームをキーフレームとして設定すると同時に、ムダな動作を間引くことでメリハリのある動きへと変換できる。

ゲームプレイの入力を自動化する「COM DK」

 最後に紹介されたのは“COM DK”だ。COMとはコンピューターが演じるプレイヤーを指し、DKはデベロップメントキットの略。松原氏によると、まさに「自動プレイ機能やAIプレイヤーを作ってみたいゲーム開発会社向けの製品」であるとのこと。

 自動プレイ機能はゲームがいまどんな状況であり、どんな操作が要求されているのかを判別し、一方でCOMのアルゴリズムが導き出した操作をゲームに対して入力することで成立する。この仲立ちを行うのがCOM DKだ。ゲームの進行状況をCOMのアルゴリズムに伝え、そしてCOMの操作をゲームに伝える役割を果たす。

 まずはゲーム側にCOMに渡すための情報取得用プラグインを導入。実際の開発では、その情報をもとに適切な操作を行うプログラムを記述していくわけだ。

 サンプルの映像では、3D空間のなかに立つ人物モデルを動かすサンプルプログラムと3Dのレーシングゲーム『Vehicle Game』のうえでそれぞれCOMが動作する様子が紹介された。

 COM DKの現在のバージョンはUnreal Engine4(以下、UE4)に対応。3Dキャラクターを動かすプログラムも、『Vehicle Game』もどちらもUE4のサンプルプログラムとして公開されているもので、COMはPythonで記述されていた。『Vehicle Game』のほうは100行くらいのコードで実現できているとのこと。COM DKの仕様を考えると、どんな言語で記述するかといった制限は非常に緩いと思われる。

 重要な役割を果たすのはゲームに組み込むプラグインの部分で、ここさえ作ればパズルゲームだろうが何だろうが対応できる柔軟さを持っているのがCOM DKの特徴だろう。

 松原氏によれば、COM DKはもともとモリカトロンで格闘ゲームのAIプレイヤーを開発した際のプログラムの一部で、「それに汎用性を持たせ、ライブラリとして切り出したような製品」(松原氏)なのだそうだ。

 完成したゲームに組み込むAIの開発はもちろん、人間による操作と同様の操作をシミュレートできるため、実プレイベースのパフォーマンス計測やメモリリークのチェック、ゲーム内データの収集とその結果を反映したバランス調整など、幅広い応用が考えられると、松原氏は語った。

 目的に応じたレベルの操作をこなすCOMプレイヤーを作ってさえしまえば、24時間稼働可能な無人のテストプレイ環境を構築できるわけで、テスターを雇うよりも人件費の削減やテストプレイ時間の短縮が見込めるのである。

COM DK概要ページ(モリカトロン)
森川幸人氏のモリカトロンによるAIソリューション説明会をリポート「ゲームのルールも含めたすべてをAIに作らせられないか?」
COM DKはゲームとオートプレイヤープログラム(COM)のあいだを取り持つライブラリ。ゲームの進行状況をCOMに伝え、COMの操作をゲームに反映させる。
森川幸人氏のモリカトロンによるAIソリューション説明会をリポート「ゲームのルールも含めたすべてをAIに作らせられないか?」
Pythonによる100行程度のプログラムで実現している『Vehicle Game』のCOMプレイ。ゲームのバランス調整や長時間動作させたときのメモリリークのチェックなど、さまざまな活用が考えられる。

関連3社でシナジー効果を狙うモリカトロン

 5つのAIソリューションについての紹介が終わると、再び森川氏が登場し、モリカトロンの請け負う業務について触れた。

 森川氏によれば、同社はここで紹介されたAIソリューションをはじめ、ゲーム内で用いるものや、デバッグやバランス調整といった開発支援のためのAIを開発しているとのこと。しかし、世間的にはまだまだAIの活用に消極的な開発メーカーは少なくないそうだ。

 森川氏はこうしたメーカーに向け、AIで何ができるのか、どんなメリットがあるのかといった、“AI導入以前の段階”でのコンサルティングも請け負っていると語った。また、モリカトロンのスタッフを社外メンバーとして派遣し、AIの研究開発を行うのも可能であるほか、共同研究やコラボレーションのパートナーも絶賛募集中であるそうだ。

森川幸人氏のモリカトロンによるAIソリューション説明会をリポート「ゲームのルールも含めたすべてをAIに作らせられないか?」
説明会ではモリカトロンの業務を示した森川氏のイラストもスライドとして紹介された。

 説明会の閉会の言葉を述べたのは、モリカトロンの代表取締役社長である本城嘉太郎氏。本城氏はまず、モリカトロンが業界初と言っていい“ゲームAI専門”のAI研究企業であると述べた。同社はこの2年のあいだ研究開発に取り組んでおり、その成果をようやく発表できる段階に来たことがこの日の説明会につながったとのこと。

 また、モリカトロンには、monoAI technology(モノアイテクノロジー)と、AIQVE ONE(アイキューブワン)と2社の関連会社が存在。

 monoAI technologyは、XRやクラウド、通信エンジンなどを得意とする会社で、今後は仮想空間内でのAI活用などの取り組みをモリカトロンと進めていくそうだ。

 もう一社のAIQVE ONEは、AIを使った自動デバッグによるQA(Quality Assurance:品質保証)サービスを専門に行う企業。150名ほどのテスターが在籍し、モリカトロンのAIせりふサポートやCOM DKを活用し、自動化AI、自動化ツールなどの研究を進め、実際のデバッグ作業のなかで活かしていく。

 モリカトロンのAI開発は、ゲーム内にAIを組み込むという直接的な話だけでなく、こうした三“社”三様の使いこなしでAIを用い、ゲーム開発とAIの在りかたを研究していくという。

森川幸人氏のモリカトロンによるAIソリューション説明会をリポート「ゲームのルールも含めたすべてをAIに作らせられないか?」
閉会の言葉を述べたモリカトロンの代表取締役社長の本城嘉太郎氏。関連三社の協業についてアピールした。

 説明会の最後に行われた質疑応答において明かされたところによると、森川氏の「ゲームのルールも含めたすべてをAIに作らせられないか?」という開発へのリクエストがAIパズルジェネレーター開発の発端だったという。

 松原氏によれば、さすがにそれは実現が難しく、3マッチパズルを作る現在の形に落ち着いたとのこと。

 森川氏は盤面に不都合がないところまでしかチェックできないAIパズルジェネレーターの現状にも満足していない様子。これをもう一歩進め、できあがった盤面のおもしろさを評価できるところまで発展させたいとのこと。

 これを受けた松原氏は、担当エンジニアが「GAN(ギャン:敵対的生成ネットワーク)などの画像生成が得意なアルゴリズムをパズルの自動生成に活かせないか」を考えていると語った。

 GANとは、Generative Adversarial Networksの略。生成ネットワーク(Generator)と識別ネットワーク(Discriminator)というふたつのネットワークから構成される人工知能アルゴリズムだ。GeneratorとDiscriminatorはそれぞれ贋作作家と鑑定士に例えられる。たとえば画像生成であれば、Generatorがひたすら生成していく“それっぽい画像”をDiscriminatorが判定し、本物に近いものを選りすぐっていく。

 GeneratorはDiscriminatorを騙そうと学習を重ね、Discriminatorはより正確な判定を行うべく学習を重ねて精度を高めていく。二者がそれぞれ相反する目的に向かって学習を続けていくその構造から“敵対的”と呼ばれるわけだ。

 こうした一連の会話から、森川氏が掲げる高い理想に対し、松原氏が率いる現場開発陣が実現すべく奮闘する。そうしたモリカトロンの姿勢を垣間見ることができた。『がんばれ森川君2号』から一貫する、“AIをゲームに活かそうという森川氏の飽くなき興味”こそがモリカトロンの原動力なのだろう。

 ゲーム内に組み込まれるだけでなく、その開発もAIがサポートする。そんなゲーム開発の先端部分が見られる興味深い説明会であった。なお、この説明会の模様はYouTubeにも公開されている。興味を持たれた方は、ぜひそちらも参照いただきたい。

YouTube「【モリカトロン】AIソリューション説明会2021」