モリカトロン株式会社運営「エンターテインメント×AI」の最新情報をお届けするサイトです。

TAG LIST
ディープラーニング機械学習モリカトロンAIラボインタビューCEDEC2019三宅陽一郎ゲームAICGへの扉小説CGGAN遺伝的アルゴリズムGDC 2019デバッグスクウェア・エニックスさかき漣薄明のバルドは知っているファッションVFX映画イベントレポートQA不完全情報ゲームガイスターボードゲームSIGGRAPHニューラルネットワークVR音楽ロボットAlphaZeroルールベースシナリオ強化学習CMAmadeus CodeメタAIキャラクターAIナビゲーションAIシーマン齊藤陽介サルでもわかる人工知能ワークショップIGDAどうぶつしょうぎマシンラーニング深層学習藤澤仁宮路洋一toioゲームブロックチェーンOpenAI Five映像ピクサーAdobe作曲ビッグデータアストロノーカナラティブモリカトロンパラメータ設計バランス調整対話型エージェント人狼知能マルチエージェントエージェントシミュレーション音声認識ロボティクスeSportsDota 2OpenAIソーシャルゲーム眞鍋和子淡路滋グリムノーツゴティエ・ボエダGautier BoedaJuliusTPRGバーチャル・ヒューマン・エージェントクーガー石井敦茂谷保伯森川幸人成沢理恵お知らせマジック・リープMagic Leap Oneノンファンジブルトークン水野勇太里井大輝GEMS COMPANY初音ミク転移学習敵対的生成ネットワークデバッギングアニメーションリップシンキングUbisoftUbisoft La Forge知識表現北尾まどか将棋畳み込みニューラルネットワークナップサック問題ジェイ・コウガミ音楽ストリーミングSpotifyReplica Studioamuse5Gクラウドゲーミング和田洋一Stadiaクラウド対話エンジン斎藤由多加シーマン人工知能研究所ゴブレット・ゴブラーズSIGGRAPH 2019ARマイクロソフトAIりんなアップルiPhoneカメラ完全情報ゲームAIGraph環世界中島秀之予期知能ウェイポイントパス検索ドラゴンクエストPAIR画像認識AIと倫理アルスエレクトロニカ2019DeNA逆転オセロニア長谷洋平奥村エルネスト純齋藤精一高橋智隆ロボユニ泉幸典ロボコレ2019アートぎゅわんぶらあ自己中心派意思決定モデルウロチョロス理化学研究所教育

【CEDEC2019】AIは今どこまでゲームのデバッグをできるのか?

2019.9.30ゲーム

【CEDEC2019】AIは今どこまでゲームのデバッグをできるのか?

ゲーム開発におけるAIの活用で、今、一番注目されているのは「QA(品質管理)」分野です。これまでどうしても人手に頼らざるを得なかったデバッグを、AIを使って効率化しようと各社が開発を推進しています。モリカトロンが進める”QAのためのAI”は今、何をどこまでできるようになっているのでしょうか?

CEDEC2019で行われた、本城嘉太郎氏(モリカトロン代表取締役社長)による注目のセッション「AIにゲームをデバッグさせることは出来るのか? 〜ゲームAI専門会社モリカトロンの挑戦〜」の内容をご紹介します。

モリカトロンのQA事業の全体像

セッションは大盛況で立ち見も入りきらないほど

もともとサーバエンジニアとしてコンシューマーゲーム開発に長く携わってきた本城嘉太郎氏は、リアルタイム通信ソリューション「モノビットエンジン」を提供するモノビットの代表取締役社長でもあります。2018年に日本のゲーム業界もいよいよAIを無視できなくなったということで、森川幸人氏との共同代表という形でモリカトロン株式会社を立ち上げました。

モリカトロンでは、キャラクターAI、ゲームのバランス調整、ステージのフィールド生成などのゲーム用AI開発プラントを、大手ゲームメーカーと組んで共同開発しています。そして、もうひとつ事業として力を入れている分野がQAです。

まずは、こうした立ち位置のモリカトロンがなぜQAをやるのかという話から。たとえば、「キャラクターに、ここでこう動いてほしい」という要望に対応するには、ディープラーニングというアプローチでは細かい制御が難しい場合があります。そもそもAIが必要ないゲームも多数あります。一方、昨今のゲームの大規模化でQAのコストは莫大になる一方です。QAをどう自動化し、効率化するかが業界的に大きなテーマになっています。つまり、どんなゲームでもQAは必要で、そこにAIを投入することで一番業界に貢献できるのではないか。それがモリカトロンがQA事業を始める動機でした。

共同研究を色々な会社とやらせていただく中で、このすごい技術をさらに業界全体に発展させることはできないかと考えました。そして、一番求められているAIの使い方はデバッグだと思い至りました。ただ、そのときに単にAIツールを作ってそれを販売すればいいのかというと、そうではありません。(本城氏)

こうしてAI技術を中心に据えたQAサービスを展開することになるわけですが、事業の特徴として本城氏は次の4つの点をあげます。

  1. 誰でも簡単に発注できる
  2. AIだけに頼らず、人の力をサポートする形でAIを導入する
  3. AIツールは外部提供せず、社内利用に限定
  4. QAの人的アプローチでも最高を目指す

まずは、誰でも簡単に既存のデバッグ会社と同じように発注でき、後はモリカトロンでAIを使って自動化する体制にしました。また、AIだけに頼らない、人の力をサポートするような形にもしてあります。というのも、現時点のAIに、人と同じようにゲームをプレイしてデバッグさせるのは相当ハードルが高いからです。プロデューサーの立場として考えたとき、「AIだけを使ってデバッグできます」と言われてしまうと逆に不安になりかねません。まずは人を中心にすえた上で、AIで人をサポートすることによって工数を削減するという現実的な路線を採りました。

3つ目は、外部提供せず社内利用に限定すること。これはモノビットエンジンの経験からで、やはりツールには使いこなすための知識やサポートが必要になります。特に、「AI」と「デバッグ」それぞれを考えてみても、トレーニングとセットでなければ外部提供は難しいでしょう。そして4つ目は人的アプローチ。AIだけに頼らない、人がデバッグするということにしっかりフォーカスして、クオリティを上げていくということです。

モリカトロンのQA事業の中で人によるデバッグの位置づけに比重が大きいのが分かります。これは、現時点では人のほうが圧倒的にバグを見つけることができるから。まずは人をサポートするという所から始めています。

モリカトロンが目指す進化のイメージ

本城氏はモリカトロンが進めるQA事業を、最後発のテスト会社ならではのいいとこ取りだと言います。コンシューマーゲームの時代のテストは、とにかく人海戦術でバグを見つけるというものでした。この当時からやっている開発会社の多くは自分なりの考えを持ってバグを見つけだす「テスト職人」をたくさん抱えています。そして携帯電話、スマートフォンの時代になると、テストしなければならない端末が複数台になるため、テスト項目、運用計画、ユーザーレビューなどの作成が、よりシステマチックに求められるようになります。

テスト分野における業界のニーズは時代とともに変化してきた

これはどちらも一長一短です。前者の場合は「ここ、テストしていないんですか?」といった抜け漏れも発生しやすく、後者の場合はテスターがテスト項目をチェックすればいいと思ってしまうため、項目に挙がっていない所はバグが残ってしまいがちです。つまり、人海戦術からテスト戦略提案へと業界ニーズが変化してはいても、旧来型のデバッグ手法も必要とされているのです。

このような背景からモリカトロンは、テスト職人もいて、かつテスト設計もでき、加えてQAエンジニアや自動化AIエンジニアも投入することで、すべてを兼ね備えた最強のデバッグサービスを作りました。具体的なモリカトロンのQAサービスのフローは、次のイメージです。一般的なQAサービスの場合、同じ人が担当し続けますが、モリカトロンの場合はQAエンジニアが入って自動化できる所を探り、サポートを行います。

一般的なQAサービスとモリカトロンのQAサービスの違い

テスト自動化ツール「MorikaTester」

さらに、モリカトロンQAツールについても紹介がありました。まず「MorikaTester」、これはテスト自動化ツールです。デバイス画面をキャプチャーして、スクリプトコマンドに登録された画像とマッチングを行い、スクリプトコマンドを実行するというものです。一般的な画像マッチングを行うRPAツールです。NetEase社がOSSとして無償公開している自動テストツール「AirtestIDE」をベースに、機能追加などを行い、MorikaTesterとして再構築したもので、仕様的には、コードはPyhton3.0系、OpenCVを使って画像認識を行います。

画面を認識し、画像マッチングでボタンを押したり、状況を判断して自動的にゲームを進められる所まで作っています。途中でスクリーンショットを撮ったりチェック項目がOKだったら、その結果をExcelのシートに書き込むレポート機能も実装されています。一度スクリプトを組んでおけば、周回プレイも可能です。(本城氏)

MorikaTesterの仕組み

最大の特徴は、テスターの人たちが使うという前提で、コードに詳しくなくとも直感的に使えるようになっている点です。表示した画面から該当箇所をスクリーンショットで保存しテストの内容を登録すれば、プログラムコード内にマッチング用の画像が取り込まれ、自動化することができます。実際、モリカトロン社内でも、アルバイトで応募してきたテスターの人たちに使ってもらい、彼らが自動化できる所を登録して自動化するということが行われています。

ボタン操作でテストコマンドを登録することができる

テスト自動化の目的は、従来の人的テストに加えて自動化テストの導入によって効率化し、テスト範囲を広げること。さらにテスト工数と人による単純なミスの削減です。では、実戦投入した結果はどうでしょうか。モリカトロンでは、実際に自動化テストのスクリプトを作成してテストを2回実行し、工数を算出しています。

対象にしたのは、いわゆる「シナリオテスト」と呼ばれる、一般的なゲームタイトルをデバッグするときに行うテストです。全テスト項目数15,310のそれぞれを検証し、

(1)完全に自動化できるもの

(2)人が少し介入すれば自動化できるもの

(3) 完全に人の手で検証するもの

を洗い出し、そのうち、(2)の「人が少し介入すれば自動化できるもの」を中心に自動化を行いました。結果として、全項目数15,310項目中およそ40%にあたる、6,180項目が自動化テスト項目となりました。

初回と2回目の工数からシミュレートをした結果は次のとおりです。

 

シナリオテスト回数シミュレーション、人によるテストと自動化テストの比較

人の手によるテストの場合、テスト設計に1日かけ、テスト実行を5日かけ、トータル6日間でテストができました。一方、テストを自動化する場合、テスト設計に1日、自動化できる箇所の抽出にさらに1日、そしてスクリプト化に10日かかりました。さらにテスト実行に3日間、トータルで15日かかりました。これが初回ですが、2倍以上かかっています。

しかし2回目以降の人の手によるテストの場合、テスト設計のメンテナンスに0.5日、テスト実行に5日と、トータルで5.5日。自動化の場合、設計のメンテに0.5日、スクリプトのメンテに0.5日、テスト実行に3日でトータル4日、1.5日分少ないという結果になります。繰り返すことで、7回でちょうど同じ工数になります。30回目までの総工数を比較すると、人の手によるテストでは165日かかる所、自動化すると133日になりました。

現時点で20%程度の削減につながっているといえますが、本城氏はまだまだ自動化というには改良の余地がありそうだと語ります。現状の課題としては、スクリプト生成に時間がかかるため、ここを自動生成できないか取り組んでいます。また、多機種検証を組み込むことで大幅な工数削減が見込めるとして、そこをつなぎ合わせるサービスの開発を進めています。

ただ、今後ゲームが3D化していくにあたって大きな課題もあります。3Dゲームの空間認識においては、奥行きの測定などがあり、その意味を認識させるのが非常に難しいのです。しかも、60分の1秒の間で全部を認識しなければなりません。それに対し、SDKを導入することでゲーム中のデータを取得し、複雑なオートプレイを実現できないかなど、色々な研究をしている所です。

とはいえ、現状でも大人数で同時にプレイするようなゲームのデバッグには大きな効果があります。自動化テストツールでスクリプトを実行するため、1人が複数端末操作できるからです。たとえば、100人が同時に遊ぶゲームのデバッグを従来のデバッグ会社に普通にお願いすると、「1日100人」という見積もりになりますが、自動化テストツールを使うことによって、1人が5端末操作できるので20人、1人が10端末操作すれば10人で足ります。

また、サーバの監視サービスを提供するビヨンド社との協業も進んでいます。これまではプロセスレベルでの監視のみに留まっていましたが、このツールを使うことによってゲーム内部を監視することができるようになります。これについての詳細は、近々発表できるとのこと

AIの目「MorikaEye」とAIの耳「MorikaEar」

「MorikaEye」は表示チェックサポートツールで、Excelと連携して表示の確認をサポートするツールです。これはQA(テスターの)チームから出たアイディアでした。まずExcelのシートに入ったテスト項目をツールに読み込ませると、ゲーム画面の確認すべきポイントを、あらかじめ作っておいたマスク画像によってハイライトします。確認してOKを押すと自動的に次の項目に行き、またハイライトされている画像が表示されます。マスク機能をオンにすることで、見なければいけない所にフォーカスして表示バグをつぶしていき、NGであればコメントを書くこともできます。テスターが自分で一つひとつを確認していく工程のミスを減らそうというツールです。

マスク機能を使った表示チェック支援ツール、MorikaEye

実際に、MorikaEyeを実戦投入した結果、テストケースの作成時にMorikaEyeを前提としたチェック項目を設計することにより、表示チェックが大幅に効率化しました。また、ヒューマンエラーの発生率が低下、テスト工数見積を削減にもつながっています。現場でも、テンポよくチェックできると好評とのこと。

続いて音声チェックサポートツール「MorikaEar」の説明に移ります。これは翻訳案件のローカライズQAへの活用のために作ったものです。たとえば、アドベンチャーパートのセリフ音声チェック、翻訳された言葉が本当に合っているかを人が聞くだけではなく、音声ファイル自体からマッチングすることによって確認できます。

仕組みとしては、端末から再生されている音声に対してリアルタイムで特徴量マッチングを行い、再生している音声データを類推し、その情報を表示します。

MorikaEar の仕組み

音声が流れている最中でもセリフを特定できます。ただ、これを使うためには事前にゲームで使用している音声データと関連情報のデータベースを作っておく必要があります。これにより、今流れている音声を人の耳だけではなく機械でも抽出することができ、ヒューマンエラーの削減につなげることができます。

その他、モリカトロンではQAツール群として以下のツールを用意しています。

  • MorikaTester(前述で紹介済み)
  • MorikaEye(前述で紹介済み)
  • MorikaEar(前述で紹介済み)
  • MorikaBugReporter
  • MorikaDebugSDK
  • TextChecker
  • MovieReporter
  • AutoMapper
  • PallarelViewer

なぜバグが発生するかを分析する品質管理ツール

モリカトロンでは品質分析で、「テストの出来を測る」と同時に、なぜそのバグが起きているのかという分析も行っています。デバッグ期間が1カ月しかなく、最終段階になってもチェック未項目が数千、数百残っているとき、なぜ残っているのかという話をしても、往々にして理由が分からないものです。品質分析では、そうならないように中身を分析していきます。

まず、不具合の分析の中でデバッグのランクをS、A、B、C、Dと分け、それぞれ何個出てきたかを表示します。それがシステムの不具合なのか、コーディングミスなのか、設定ミスなのか、仕様のとおりなのか、というように細かく分類し、それぞれでどれだけバグができたかを分析します。

例で見ていきます。図の例では、マスター設定ミスがすごく多いというのが一発で分かります。それがテスト進捗に影響しそうだと分かれば、さらに機能別に、そしてデイリーで推移を分析していきます。

ランク別に不具合を分析する(マスター設定ミスが要因となる不具合が多く、64件の検出)
不具合を機能別で分析する(キャラのマスター設定ミスによる不具合が多く、31件検出)

すると、結果的にデバッグ終了時に残った数、その起因する所が明示できます。

テストケースのステータス結果(4月28日と29日に「未実装」「BLOCK」の項目が大量に発生している)

これによって、不具合の発生原因として、「マスター設定のミスが、特にキャラから多く検出されるので、マスター設定の開発のスケジュールがタイト、あるいは担当者のイージーミスが考えられる」と分かります。テスト進捗でも「未実装」「BLOCK」の2つの項目で大きく遅れているので、事前に分かっていれば、スケジュールの組み換えなど、もっと効率的にデバッグするための手当をすることができます。

モリカトロンではただ闇雲にバグをつぶすだけではなく、このように分析をすることによって、ソフト全体のバグの進捗を管理できる体制を作っています。AI開発拠点の他、人的アプローチの部分でも、QAのテスターチームの拠点として新宿テストラボ、京都、神戸、高知と拡大しています。

まだまだAIだけでバグを見つけるのは難しいのが現状です。僕らは表側からバグを見つけ出そうとしているのですが、最近はディープラーニングを使った動画解析系のツールも進化してきています。それを使ったテストにもチャレンジしていますが、なかなか困難です。まずは実戦投入できる所からツールを作っていき、今後もデバッグAIで業界発展に貢献していきたいと考えています。(本城氏)

CEDEC2019 AI関連セッションレポート

AIりんなのボイストレーニングが示す、情動的で人間的な機械学習とは?

汎用型ボードゲームAIの開発に向けたモリカトロンの挑戦

人工知能が敵キャラを育てる! ディープラーニングを使った次世代のゲームAI開発

中島秀之氏 基調講演:環境との相互作用を取り込む予期知能が、機械学習の課題を解決に導く

人工知能にテストプレイを丸投げできるか?

1キロ四方のマップを舞台に地形表現の工夫で新しいゲーム体験を作る

Writer:大内孝子

【CEDEC2019】AIは今どこまでゲームのデバッグをできるのか?

この記事が気に入ったら
いいね!しよう

の最新情報をお届けします

RELATED ARTICLE関連記事

Ubisoft La Forgeの研究成果が示すゲームにおける機械学習の未来

2019.6.04ゲーム

Ubisoft La Forgeの研究成果が示すゲームにおける機械学習の未来

【GDC 2019】ソーシャルゲームのバランス調整に遺伝的アルゴリズムを応用する

2019.4.17ゲーム

【GDC 2019】ソーシャルゲームのバランス調整に遺伝的アルゴリズムを応用する

eSports世界チャンピオンを下したOpenAI FiveはゲームAIに何をもたらすか?

2019.4.17ゲーム

eSports世界チャンピオンを下したOpenAI FiveはゲームAIに何をも...

RANKING注目の記事はこちら