ゲームAIでJevの確率をどう使うか
JevのChoiceは、選択された1候補だけでなく全候補の確率分布を返す。ゲームAIではこの分布をそのままactionにする方法もあれば、探索や既存ヒューリスティックと組み合わせる方法もある。
重要なのは、Choice確率を「その手で勝つ確率」や「GTOでその手を選ぶ頻度」と同一視しないことである。
Choice確率が意味しているもの
公式ドキュメントでは、Choiceの probabilities は与えた候補全体に対する分布で合計1になる。choice は最大確率候補、confidence は分布がどれだけ尖っているかを要約した値である。
ゲームなら、たとえば合法手A/B/Cへ 0.70 / 0.20 / 0.10 が返ったとき、最も安全な解釈は「この入力と質問のもとで、JevがAを相対的に最も強く支持した」である。
これだけから「Aで70%勝つ」とは言えない。
独立実験が示した較正上の注意
jev-does-not-play-dice という独立実験では、モデルに手がかりのない公平なサイコロの出目を6択Choiceで当てさせると、実測正答率は偶然水準に近い19.0%だった一方、選んだ候補への平均報告確率は82.9%だった。公平なcoinでも実測52%に対して平均報告確率92%だった。
これは「Jevの確率は常に無意味」という証拠ではない。入力条件と質問形式が特殊であり、公式がいうcalibrationを全用途で否定する実験でもない。ただし、ゲームの未知状態や運要素へChoice分布をそのまま真の事象確率として使うのは危険だという強い警告になる。
使い方1:argmax
最も単純なのは最高確率手を常に選ぶ。
利点:
- 再現性が高い
- benchmarkしやすい
- 不要なランダム悪手を増やさない
欠点:
- 同じ局面で行動が固定されやすい
- 相手から読まれやすい
- Jevの2位以下の情報をほとんど捨てる
将棋や麻雀の「まず性能を測る」段階ではargmaxが最も解釈しやすい。
使い方2:確率からsampling
p(action) をそのままカテゴリ分布としてsampleすれば、多様な行動になる。ただしこの分布はGTOのmixed strategyではない。ポーカーの公開実験では、solverの混合比とJevの分布が大きく異なる例がある。
対戦ゲームでsamplingを使うなら、「Jevの確率が戦略的混合比として正しい」のではなく、探索性や行動多様性を与えるための工学的選択と考えるべきである。
使い方3:温度やrankで加工
多様性を調整したければ、アプリ側で
q_i ∝ p_i^(1/T)
のような温度変換を行える。T<1なら上位へ集中し、T>1なら平坦になる。これはJevの公式セマンティクスではなく、ゲームAI側のpolicy加工である。
またtop-kだけ残す、上位候補をrankで重み付けする、一定確率未満を切る、といった方法もある。
使い方4:Jevをpolicy priorとして探索へ入れる
完全情報ゲームでは、確率を「最終回答」ではなく探索順序に使う方法が有力である。
- Jev上位手から先にalpha-beta探索する
- MCTSのpriorとして利用する
- beam searchで上位K手だけ展開する
- constraint puzzleでbacktrackingの枝順を決める
この方法なら、Jevが一度間違えても探索/制約チェックが訂正できる。
使い方5:ルールベース特徴と合成
Jev分布を、コードで計算した評価値と合成することもできる。たとえば正規化したヒューリスティック h_i に対し、
score_i = α log(p_i + ε) + β h_i
のようにすれば、Jevの意味的直感と、ゲーム固有の確定的知識を混ぜられる。
ここで重要なのは、αとβを「雰囲気」で決めず、対局結果や既知の正解データで検証することだ。
実用上の原則
Jevの確率は、ゲームAIでは次の順番で扱うと安全である。
- まずargmaxでbase lineを測る。
- 分布と実際の正解/勝率のcalibration curveを取る。
- samplingが必要なら、目的を「多様性」「探索」「GTO近似」のどれか明確にする。
- 真の勝率や事象確率へ変換したいなら、別途empirical calibrationを行う。
- ルールで検証できる部分はJev確率よりコードを優先する。
関連: JevをゼロショットゲームAIとして見る / JevをゲームAIで多段利用する設計 / Jevを数独などの制約パズルへ使うなら探索ヒューリスティックとして考える