Open3
pokemon AIつくる

Pokémon Battle Scope
ルールとPBSの仕様
- 竜王戦に特化
- 約数億回分の対戦データを使用
- 独自のポケモンバトルシミュレーター
- ある程度低い確率の事象は除いて判断する
- 急所やかえんほうしゃやけどは考慮していないが、熱湯やけどは考慮している
今回は“ポケモン竜王戦2024”のルールとして、選手は事前にバトルチームを登録していますので、そこから持ち物や基礎ポイント、覚えている技などについてはデータを追加しています。それ以外は、基本的に視聴者と同じ視点で情報を得ていると思ってもらえるとわかりやすいと思います。お互いの選手がどの3匹を選んだかは、そのポケモンが実際に場に出てくるまでAIもわかっていません。
<特別ルール>
・バトルチームから対戦の3匹を選出する際、「ドラゴンテラスタイプ」のポケモンを必ず1匹以上選出する(※2)
・バトルチームの登録は6匹まで、バトルへ選出するのは3匹まで
・対戦に出すポケモンの選択時間は90秒
・対戦に出すポケモンを選ぶ際、対戦相手のバトルチームが表示される
基本はレギュレーションFのシングルバトル
・大会当日の朝に各プレイヤーのパーティーのポケモン、技構成、テラスタイプ、特性、持ち物、性格が公開される(=オープンシート)
PBSは相手の個体値、努力値が見えているっぽい
考察
- %で表示されているのは勝率ではなく盤面評価なので、直観とずれるかも?
- 情報が見えているなら結構正確な評価ができそうなものではある

Poke-RL
OpenAI gym形式にもできるっぽい

実装方針の検討
- まずパーティを固定して両者ともに(選択する行動以外の)情報が全部見えているとして3on3でMCTSとかをやってみる?
- 相手のHP残量とかは本当は大まかにしかわからないが正確にわかるとする
難しそうなポイント
- 1%とか低い確率を追う場面を正確に評価しようとするとサンプル数が多くなる
- 完全に見えていない場合にどうするか
- 交代技やひんしでターン途中に行動を選択する必要がある場合