検索
特集/連載

「ポケモンGO」の運営は“AI任せ”だと大失敗? レイドを支えるインフラの正体数字だけを追うとゲームがつまらなくなる

Nianticは「Pokemon GO」の人気機能において、参加率の数値を追い求めた結果、街が同じキャラクターだらけになるという致命的な問題に遭遇した。データへの過信が招くリスクに、同社はどう立ち向かったのか。

PC用表示 関連情報
Share
Tweet
LINE
Hatena

 企業において、顧客の行動データに基づくDX(デジタルトランスフォーメーション)やサービス改善は喫緊の課題となっている。特に、スマートフォンの位置情報を活用したゲームの代表格である「Pokemon GO」のように、現実世界での探索や他者との交流を促す大規模なB2Cサービスでは、ユーザー体験の維持が事業の存続に直結する。

 Pokemon GOの中核となる人気機能「レイドバトル」には、ある大きな課題が生じていた。それは、エンドユーザーの活動時間帯や現在地と、出現するキャラクターの難易度が合致しないというミスマッチだ。社会人が昼休みに会社の近くでプレイしようとしても、低難易度のキャラクターしか出現せず、期待外れに終わるといった事態が頻発していたのだ。

 この課題を根本から解決するため、開発元のNianticは、単純なルールベースによる制御から脱却し、データを意思決定の軸とする「データ駆動」の考え方に基づき、機械学習を活用するアプローチへと大きくかじを切った。曜日や時間帯、地域性、ゲーム内のイベントといった多様な条件を考慮し、世界中の数百万の拠点において、いつ、どこで、どの難易度のキャラクターを出現させるべきかを自動的に予測する仕組みを導入したのだ。結果として、この取り組みはレイドバトルの参加率を2桁成長させるという大きな成果をもたらした。

 世界規模で数兆にも膨れ上がる選択肢から、Nianticはいかにして最適なスケジュールをリアルタイムに導き出しているのか。

数値の最大化が招くファン離れ

 2025年11月に開催されたクラウドネイティブ技術のイベント「KubeCon + CloudNativeCon North America 2025」の基調講演において、その舞台裏が語られた。「Scaling Geo-Temporal ML: How Pokemon Go Optimizes Global Gameplay With Kubernetes and Kubeflow」と題されたセッションには、Nianticの機械学習部門ディレクターであるユンペン・リウ氏と同部門スタッフサイエンティストのアンディー・チャン氏が登壇し、大規模な機械学習システムの全貌を明らかにした。本セッションの動画は以下から視聴できる。

 リウ氏とチャン氏が解説した、数兆規模の処理を支えるシステムの要点は以下の3つに集約される。

1.1000近い特徴量と「ハイブリッド」な予測システム

 エンドユーザーごとの最適なキャラクター出現条件を見つけ出すため、Nianticは1000近い地理/時間データやエンドユーザーのアクティビティー履歴を特徴量として組み込み、過去のデータから将来の数値を予測する「回帰モデル」を構築した。このモデルが導き出す「どれくらいの人が集まるか」という予測値を基に、いつ、どこでキャラクターを出現させるかという最終的な計画を生成するが、開発初期には機械学習ならではのわなに陥ったという。

 当初は単に予測スコアが最も高くなる条件を優先的に適用するアルゴリズムを採用していた。その結果、人口密集地にばかり高難易度のキャラクターが集中してしまう事態が発生したのだ。参加率という数値目標は飛躍的に向上したものの、地域ごとの多様性が失われ、結果的にエンドユーザーの関心をそいでしまうという本末転倒な状況を招いた。

 この反省を生かし、Nianticは仕組みを根本から見直した。参加者を最大化するための厳密な計算手法(線形計画法)をベースとしつつ、ゲームとしての多様性や驚きを提供するための確率的なサンプリング手法をあえて注入する、ハイブリッドなシステムに進化させたのだ。

2.クラウドネイティブ技術とオープンソースの全面採用

 世界中の数百万の拠点を対象に、数兆個の選択肢をリアルタイムに近い形で処理する巨大なインフラを支えるため、Nianticはコンテナオーケストレーションツール「Kubernetes」をシステムの要として採用している。機械学習のワークロードには機械学習ツールキット「Kubeflow」を全面的に活用し、モデルの予測実行にはサーバレス推論を可能にする「KServe」と「Knative」を導入した。処理の自動化やパイプラインの管理には、コンテナネイティブなワークフローエンジン「Argo Workflows」と継続的デリバリー(CD)ツール「Argo CD」を導入し、マイクロサービス全体の監視や制御にはシステム監視ツール「Prometheus」やプロキシソフトウェア「Envoy」を組み合わせている。

 機械学習モデルの開発から運用に至るライフサイクル全体を通しても、オープンソースツールを積極的に取り入れている。実験結果をトラッキングする「MLflow」、分散学習を担う「Ray」、埋め込みベクトル(多様なデータを機械学習モデルが理解しやすいように表現した数値配列)を管理する「Milvus」といったツールを適材適所で活用している。これらのクラウドネイティブな技術群をシームレスに連携させることで、開発の俊敏性を損なうことなく、安定した本番運用を実現している。

3.再現性の確保と自動化による持続可能な運用

 エンドユーザーの行動パターンは、季節の移り変わりや頻繁に実施されるゲーム内イベントによって絶えず変化し続ける。そのため、機械学習モデルを一度構築して終わりではなく、常に最新の状況に適応させる必要がある。

 そこでNianticは独自の評価指標を定義した上で、自動化ツールを用いて本番環境で高頻度にモデルを再学習させるパイプラインを構築した。厳密な実験フレームワークを導入し、実際のユーザーからのフィードバックを迅速に反映できる適応力の高い体制を整えている。万が一処理が失敗した場合にも、安全な状態に素早く回復できる設計を取り入れることで、システム全体の信頼性を担保している。


 「優れた体験はモデルや指標に優先する」というリウ氏の言葉が示す通り、Nianticの機械学習システムは単なるKPI(重要業績評価指標)の達成にとどまらない。エンドユーザーの満足度向上と長期的なゲームプレイの持続性、プライバシーの保護といった高い基準を満たしながら、常に進化を続ける、同社にとって不可欠なシステムになっている。

本稿は、CNCF(Cloud Native Computing Foundation)が2025年11月25日に公開した動画「Keynote: Scaling Geo-Temporal ML: How Pokemon Go Optimizes Global Gamepla... Y. Liu & A. Zhang (ASL)」を基に作成しました。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る