Upgrade to Pro — share decks privately, control downloads, hide ads and more …

機械学習で作った ポケモン対戦bot で 遊ぼう!

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.

機械学習で作った ポケモン対戦bot で 遊ぼう!

リモートポケモン学会 2026/02/21 の発表です。

https://x.com/rimopoke/status/2022628011590537676?s=20

Avatar for Yusuke Fukasawa

Yusuke Fukasawa

February 21, 2026
Tweet

More Decks by Yusuke Fukasawa

Other Decks in Research

Transcript

  1. • fufufukakaka, fu3ka3 (ふか) • 機械学習エンジニア ◦ 自然言語処理・推薦をはじめとして全般 • ポケモン

    ◦ SVは全シーズン遊び切りました ◦ チャンピオンズが出たらまず動画解析用のアノテーションを頑張らない と...と怯えている ◦ 過去に対戦動画解析・選出予測・プレゼンの自動要約などで発表 自己紹介
  2. 先行研究: LLM系 大規模言語モデルを使うのが最近の流行 • PokéLLMon ◦ GPT-4 などの LLM に対戦ログを与えたうえで次の行動を

    提案させる手法を提案 • PokeChamp ◦ PokéLLMon を発展させた LLM + ミニマックス探索エージェント • Metamon ◦ Showdown の膨大な人間対戦ログから オフライン RL で エージェントを学習
  3. 選出を予測するモデル • バトルデータベースにて公開されている上位構築パーティを用いる • Masked Language Model でポケモンを単語とみなした BERT を

    学習 ◦ 構築のうち1匹が欠けているとして、この一匹を推定させる ◦ これによって「カイリューってこういう意味を持ってるかも」を学習して もらう
  4. 不完全情報を考慮した行動モデル • meta が 2020年に提案した ReBel を用いる • これはポーカーの対戦アルゴリズムとして提案されたもの •

    公開されている情報と「相手がこのカードを持っているのでは?」 という 仮定から確率分布を推定 • 仮定に従い、各あり得る世界線での最適手を探索した後 確率に基づいて価値を重み付けして最終的な最適手を選ぶ びっくりテラスには どうしても 負けやすい...
  5. 今回仮定する情報 情報
 説明
 観測による更新 
 相手の選出したポケモン 
 3体; 最初の予測情報からスタートする
 交代などで判明


    技構成
 4つの技
 技使用時に判明
 持ち物
 きあいのタスキ、こだわりスカーフ等
 持ち物発動時に判明
 テラスタイプ 
 テラスタル時のタイプ
 テラスタル使用時に判明
 特性
 いかく、ばけのかわ等
 特性発動時に判明
 努力値配分 
 AS振り、HB振り等
 技使用時に推定
 

  6. CFRアルゴリズムによる ”後悔”最小化アルゴリズム • ReBeL では CFR というアルゴリズムを使ってナッシュ均衡に近い戦略を 選ぶ • 「相手がどの型であっても、平均的に最も良い結果が得られる

    行動」(安定行動)を選ぶイメージ • 各行動について「もしこの行動を選んでいたら、どれだけ良かった(悪かっ た)か」を計算→一番、後悔しない行動を選ぶ • 「後悔を最小化する」というアプローチを繰り返すと、理論的にはナッシュ 均衡(お互いに最善を尽くしている状態)に収束することが証明されていま す
  7. • Value Network(勝率予測) ◦ 盤面の状態から「この状況での勝率」を予測するネットワーク ◦ CFR の _evaluate_action で使用され、各行動の価値を評価

    • Selection BERT(選出予測) ◦ 前述の選出提案モデル ◦ Self-Play の結果から「勝った試合での選出」を学習することで、より 強い選出ができるようになる(はず) 学習させるネットワーク
  8. ベースラインには全て勝ち越し • Selection BERTの有無で勝率に差が出た ◦ ランダム行動時: 100% → 90% ◦

    ランダムは行動で巻き返せないので、選出の影響がでかい ▪ Selection BERT はそれなりの影響力があったといえる • CFR相手はそれなりの行動をしてくるので選出の影響は少なかった • (50回しか対戦していないので、ランダム性による差かも)
  9. 機械学習ベースの比較対象も用意してみた! • Decision Transformer • 強化学習を「系列予測問題」として再定義したアーキテクチャ • 入力系列: `[目標リターン₁, 状態₁,

    行動₁, 目標リターン₂, 状態₂, 行動₂, ...]` ◦ 推論時は「勝ちたい(RTG=1.0)」を条件として与え、その目標を達成す るような行動を自己回帰的に生成 • MCTS を組み合わせて数手先まで読んで、一番良い行動を提案する
  10. ReBel vs Decision Transformer • 100試合やった結果... ReBel の勝率が 73% でした

    • Decision Transformer の欠点 ◦ 自然な交代行動をほとんどしない ◦ 眼の前の相手に対して有効な技を 打ち続ける ◦ 学習にかかる時間が長すぎた • 一般家庭の設備でやるには ReBel は ちょうどいい ◦ ニューラルネットが極小 + 不完全情報を信念で効率よく処理 まだ収束してな さそう...
  11. Case1:コライドン vs 連撃ウー ラオス(HB調整) • 相手の裏にはルギアとキ ラフロルがいる状況 • コライドンが鉢巻 けたぐりをしたら、

    そのターンから相手の交 代択選択確率が 上がった • 硬いウーラオスに良いダ メージが入ったので鉢巻 と判断された?
  12. • ReBel による対戦ボットを作った話を紹介しました ◦ 不完全情報を「信念」として扱い、ベイズ更新で絞り込んでいく ◦ CFR でナッシュ均衡に近い戦略を計算する ◦ BERT

    による選出予測も組み合わせた • そこそこ強いボットができた ◦ どでかいニューラルネットよりも上手く機能する • 今後: 人間と比べてどれくらい強いのか、という実験もしたい まとめ