2024.12.19
システムの穴を運用でカバーしようとしてミス多発… バグが大量発生、決算が合わない状態から業務効率化を実現するまで
リンクをコピー
記事をブックマーク
梅津寛子氏(以下、梅津):では「マイクロソフトのエンジニアが考えるQAの未来〜AI and Gaming Research Summitから〜」ということで、セッションを始めたいと思います。よろしくお願いします。
下田純也氏(以下、下田):よろしくお願いします。
梅津:まずちょっと自己紹介からしたいと思います。私は日本マイクロソフト株式会社でゲーム&エンターテイメント営業本部という、ゲーム会社向けの営業本部の中でAccount Technology Strategistという、ちょっとよくわからない名前ですが、要は技術営業をしています、梅津寛子です。
下田:マイクロソフトでテクニカル技術のスペシャリスト、特にゲームの技術スペシャリストで、Global Black Beltという組織に所属している下田です。よろしくお願いします。
梅津:まずちょっと前提として、今日お話する「AI and Gaming Research Summit」に関して説明したいと思います。こちらは2021年の2月23日と24日に開催されたイベントです。
Microsoft Researchという、マイクロソフトが持っている研究機関が主催しています。AIに関するゲームに向けた研究の発表会ということで、Microsoft Researchの研究者だけではなく、それ以外のアカデミックな学校の先生などが研究をされている部分に関して発表をしてもらいました。
YouTubeでも見れるようになっていますが、ちょっと英語で発表されているところもあって。なかなかみなさんに届けるのが難しかったり、英語でわかりづらい部分があったりもあるので、今日はその中から、我々がいくつかピックアップして紹介したいと思っています。
まず前提として、Microsoft Researchとは何かを説明したいと思います。先ほどお話したとおり、Microsoft Researchはマイクロソフトが持っている研究機関で、さまざまな研究をやっています。
例えば、人の言葉の音声認識だったり、機械翻訳の精度をより高くするであったり。人間が話した言葉を学習させることで、機械がしゃべっているものをより人間に近いようなかたちでしゃべらせるであったり。先ほど画像の認識の話もありましたが、その部分をより精度を高く解析するであったり、全世界にある研究施設を使って、いろいろな分野を研究しています。
これに関してはゲームに関係するところだけではなく、ヘルスケアや経済学的なところであったりと、いろいろな分野に関して研究をしています。その中でも、やはりマイクロソフトはXboxを持っていることもあり、ゲームの分野に非常に役立てている部分があるので、そちらもちょっと紹介できればと思います。
(スライドの)左上にある図は、麻雀の『天鳳』をベースにした研究です。麻雀の『天鳳』のAIということで、麻雀するためのAIを作っています。Suphxという名前でリリースされていて、『天鳳』のゲームの中でもSuphxと戦えるイベントをやったりしています。
麻雀もけっこう人間の感情だったり、AIで実装するのがなかなか難しいと言われていた部分でしたが、うまくAIとして実装できた大きな事例として紹介されています。
(スライドの)その下が「AirSim」です。こちらはどちらかというとQAに近いというか、QAとして使ってもらえるものになっています。ドローンであったり、車の自動運転をベースにしたのQAを行えます。
ゲームエンジンとして、Unreal EngineとUnityにも対応するかたちでGitHubでも展開しているので、もし興味のある方がいたら、ぜひ使ってもらえればと思います。このあたり、下田さんから何か補足があればお願いします。
下田:そうですね。かなりリッチな環境で自動運転などをするものになっているので、ぜひ見てもらえればと思います。GitHubでソースコードも含めて公開されているので、ぜひ中身を見てもらって、ゲームエンジンに組み込むとか、動かしてみてもらえればと思います。
梅津:ありがとうございます。最後、(スライドの)右上にあるのが、2020年かな? 公開されました。「Project Paidia」というもので、こちらもQAに使ってもらえるところもあるので、また後ほどのスライドで詳しく説明できればと思います。
では、ちょっと実際のセッションの話に移りたいと思います。AIエージェントの「AI and Gaming Research Summit」のセッションから紹介したいと思います。
下田:最初にUniversity of California、バークレー校のAncaさん。「ロボットが人を助けたり、人と協力して仕事をしたりする」研究をしている方です。レストランの厨房でチームメンバーと協力しながら料理を作って出す、『Overcooked』というゲームがあり、それを題材にコンピュータに協力プレイをさせる研究成果を発表してもらいました。その内容がかなり興味深かったので、ここで紹介できればと思います。
梅津:これもすごくおもしろいゲームで、料理を作っていくところで、例えばお皿を鍋に入れてしまわないようにするようなところも、きちんと学習させることを、ロジカルにいろいろと行っているセッションでした。
下田:そうですね。協力プレイってなかなかAIの中でも難しいもので。単体のAIがすごく強くなっていく囲碁や、今出ている『StarCraft』『Dota』『Quake』などで、スーパープレイヤーを作るのは意外と簡単です。
「DeepMind」や「Alpha Go」もこの系統ですが、複数のプレイヤーが協力することを学ばせるのがなかなかチャレンジングで。
AIの研究で使われるセオリーとして、人から学ぶ場合や対戦ゲームをしている場合、相手や人は、なるべく最適な手を打っていると仮定して、それに基づいて学習させていくことが普通の流れだと思います。
しかし、協力プレイなど、人のいろいろな絡み方は最適解ではないことをやっている場合がかなり多く、そこからちゃんと学習するのが、なかなか難しいという話をしていました。
梅津:そうですね。“人が動くところをどう表現していくか”は、なかなか難しいというお話でした。
下田:実際、リアルなアイススケートであったり、複数人のプレイであったりも、人同士がかなりうまく一緒に練習しないと、いい関係はできないじゃないですか。パートナーが変わってしまうと、タイミングがずれてしまったり。普通の人間でも起こるので、やはりAIにも起こってしまいます。
(スライドを見て)ここにも書かれていますが、『Overcooked』風のモデルでも、機械エージェント同士が協力プレイするのは、すごくうまく学習をさせれば連携できるようになってはいくものの、そこに他者が入ってくる。1人はエージェントのままで人間が追加されるとかをすると、まったく協調性が取れないAIができあがっているようなものがあって、それに対してどうやっていたか、という話をしていました。
恐らく今後QA、テストでもマルチプレイはどんどん増えてくると思います。マルチプレイゲームを作りたい会社も増えていると思うので、そういったところに役に立ってくるかと思っています。
梅津:そこに1つヒントとして出てくるのが、先ほどちょっと冒頭でも話した『Project Paidia』です。こちらは下田さんから説明をお願いしてもいいですか?
下田:はい。このProject Paidiaは複数人対複数人、チーム対チームの対戦ゲームです。
ある場所を守りながら敵のところに攻めにいかなければいけないので、みんなでどこかに攻めに行ってしまうと、裏からまわられて、全部取られてしまいます。「俺はあっち行くからお前はこっちを守ってろ」のような、意思疎通が阿吽の呼吸でできないと、いい結果が出ないので、いかにAIで仲間プレイヤーを作るかが、すごくチャレンジングだったとのお話でした。
梅津:例えば、キャラクターたちがうまく宝箱を開けて先に進むための鍵を先に取っておくとか、ドアを開けるような行動とか。「この人だったら、こういう行動を取ってもらったらうれしいだろうな」みたいなことを、AIが先回りしてちゃんとやってくれるところ。が実装できるプロジェクトになっています。これが、Ninja Theoryの『Bleeding Edge』で実際に使われた話になっています。
下田:やはり機械学習をやる場合の、最初の手順としてよくあるのが、3Dのゲームをそのまま最初からやるのではなく、その世界を2D空間、上から見下ろした空間に落として、実際にプロトタイプでどう動くかの学習などができる下地を作って学習させつつ、いい結果、いい動きをしたときに、報酬のシグナルを与えるようなことをしたり。これのプロトタイプとして、キャラクターの性格づけが大きく違うようなもので、ちゃんと学習させる。
例えば、足が遅いけど強力なタンク役と、足の速いアサシンの組み合わせみたいなもので、ちゃんとうまくコラボレーションできるように学習させる。下地をどんどん作っていった、という話がありました。
本番のゲームに移行するにあたり、実際にはそのゲームのコードからさまざまなステートやプレイヤーデータを得たり、『キャプチャー・ザ・フラッグ』のようなことをやるので、フラッグの場所を得たり、チームメイトの場所を得たりをしていましたが、ただコンピュータにしかわからない、深い情報はあまり得ないようにしていたと。
例えば、敵の位置はコンピュータ内の絶対座標ですぐに見れると思いますが、それは人間の感覚とはちょっと違っています。実際のプレイヤーは、自分から見た相対的な位置で「あそこに何がある」「仲間がどこにいる」「敵がどこにいる」を見ているわけで。
実際のプレイヤーが得られているものに近い情報の獲得の仕方をして、かつ「あそこに奥行きがあるものがありそうだ」「手前に何かがある」というプレイヤーの視野情報や進路情報を得て、それを元に学習させるようなことをやっていたそうです。
あとはコントローラーの情報や、何から進む、バックする、ターンするようなことを行い、それらの中ではある程度協調プレイがうまくできるようになったそうです。ApeX-DQNなどを使って、かなりうまく動くようにはなりましたが、やはりさっきのAncaさんの話と同じように、人間プレイヤーが参加すると、うまく動かない問題が起こったそうです。
梅津:人間が入ってくることによって、AIが合わせて動かないといけない部分に関しては、なかなか難しい問題です。
下田:そうですね。実際、マルチプレイの仲間プレイヤーをAIで作るシチュエーションでもそうだと思うし、マルチプレイのテスト環境を作るところにおいても、いろいろな学習成果を得たもの同士を混ぜ合わせると、なかなかうまく協調しない問題が起こり得るので。そこをどうやって解決するかが、今回メインのトピックとしてエージェントで話されていました。
太文字で書いていますが、機械学習したエージェント同士でも、学習環境Aと学習環境Bで学習してきたものを組み合わせると、実はうまく動かなかったそうです。機械学習同士であればうまく動くのではないかと思いますが、環境が違うところで学習させたものは、なかなかうまくいかないことも起こったそうです。こういう話を聞くとすごくおもしろかったですね。
梅津:同じものが学習として得られるわけではないところに関しては、本当になかなか見れないので、おもしろいですね。
(次回につづく)
2024.12.12
会議で発言しやすくなる「心理的安全性」を高めるには ファシリテーションがうまい人の3つの条件
2024.12.19
12万通りの「資格の組み合わせ」の中で厳選された60の項目 532の資格を持つ林雄次氏の新刊『資格のかけ算』の見所
2024.12.16
32歳で成績最下位から1年でトップ営業になれた理由 売るテクニックよりも大事な「あり方」
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
2024.12.10
メールのラリー回数でわかる「評価されない人」の特徴 職場での評価を下げる行動5選
2024.12.13
ファシリテーターは「しゃべらないほうがいい」理由 入山章栄氏が語る、心理的安全性の高い場を作るポイント
PR | 2024.12.20
モンスター化したExcelが、ある日突然崩壊 昭和のガス工事会社を生まれ変わらせた、起死回生のノーコード活用術
2024.12.18
「社長以外みんな儲かる給与設計」にした理由 経営者たちが語る、優秀な人材集め・会社を発展させるためのヒント
2024.12.12
今までとこれからで、エンジニアに求められる「スキル」の違い AI時代のエンジニアの未来と生存戦略のカギとは
PR | 2024.11.26
なぜ電話営業はなくならない?その要因は「属人化」 通話内容をデータ化するZoomのクラウドサービス活用術
Climbers Startup JAPAN EXPO 2024 - 秋 -
2024.11.20 - 2024.11.21
『主体的なキャリア形成』を考える~資格のかけ算について〜
2024.12.07 - 2024.12.07
Startup CTO of the year 2024
2024.11.19 - 2024.11.19
社員の力を引き出す経営戦略〜ひとり一人が自ら成長する組織づくり〜
2024.11.20 - 2024.11.20
「確率思考」で未来を見通す 事業を成功に導く意思決定 ~エビデンス・ベースド・マーケティング思考の調査分析で事業に有効な予測手法とは~
2024.11.05 - 2024.11.05