GTO Gecko GTO Gecko トレーニングを始める

ソルバー頻度は25%刻みに丸めていい?EVとExploitabilityを検証

カテゴリー: 理論 | 日付: 2026年9月16日 | 著者: GTO Gecko
細かく分かれた黄緑色と紫色のポーカーチップが、暗いゲートを通って4つの大まかなスタックにまとめられる様子。

Read in English

25ポイント刻みへの丸めは、常に安全でも、常に悪手でもありません。本記事の厳密なリバーゲームでは、1/3ポットとポットベットなら均衡頻度が25%刻みに一致します。しかし、残り5つのベットサイズでは一致しません。3/4ポットでは、Qのベット頻度42.86%・Kのコール頻度57.14%を50%・50%に丸めると、丸めた両戦略をそのまま対戦させたベッター側EVは均衡時から+0.4464チップしか変わりません。それでも、どちらのプレイヤーも単独でベストレスポンスへ切り替えると3.125チップ改善できます。

大切なのは「25%ならよい」という結論ではなく、丸め方の検証方法です。丸めた戦略どうしのEV差が小さくても、一方だけが対応を変えたときの穴は大きい場合があります。両者のベストレスポンスを別々に測り、単位とそのノードへの到達頻度を残し、合成ゲームの結果を実際のソルバー解の保証に広げないことが必要です。

開示:これは、既存の合成AKQゲームを使ってGTO Geckoが設計した独自の頻度丸め実験です。GTO Gecko製品から得た出力でも、ホールデムのソルバー解でも、プレイヤー集団のデータでも、他社ソルバーとの比較でもありません。特定の刻み幅を推奨するものでもありません。公開数値は厳密な有理数演算で算出し、別実装のPython検算器でも再計算しています。

検証するのは、小さな1ストリートのリバーゲーム

ベット前のポットは100チップ。ベッターのレンジはAとQが50%ずつ、ディフェンダーはKだけです。AはKに必ず勝ち、Qにはショーダウンバリューがありません。Aは必ずベットし、Qは頻度fでブラフします。ベットを見たKは頻度cでコールします。ベット額をbとします。

ここでいう「Qのベット頻度」は、Qを持ったときにベットする条件付き確率です。ベットレンジ内のブラフ比率ではありません。AとQの開始時の比率が同じで、Aは必ずベットするため、ベットレンジ内のブラフ比率はf / (1 + f)です。たとえば3/4ポットではf = 3/7ですが、ベットレンジ内のブラフ比率は3/10です。

このA/Q対Kのモデル自体は、出典に挙げた日本語のAKQゲーム解説などで使われてきた教材です。本記事の独自部分は、7つのベットサイズと5つの刻み幅を横断する丸め実験、片側だけを丸める対照実験、再現用の公開バンドルです。

KにとってコールとフォールドのEVが等しくなる条件から、均衡でのQのベット頻度が決まります。QにとってベットとチェックのEVが等しくなる条件から、均衡のコール頻度が決まります。

均衡でのQのベット頻度:f* = b / (100 + b)

均衡コール頻度:c* = 100 / (100 + b)

各グリッドでは、f*c*を最寄りのグリッド点へ別々に丸めます。各プレイヤーのもう一方のアクションは100%から引くため、2択の確率は必ず合計100%です。ちょうど刻みの中間に来た場合は上側へ丸めます。この同点処理も再現用ファイルに固定しています。

これは複数のベットサイズに対する局所的なリバー教材で、ホールデム全体の戦略ではありません。混合ブラフ、混合コール、利得の大きさ、丸め規則の関係以外は意図的に取り除いています。

4つの数値は、別々の問いに答える

宣言したQのベット頻度fとKのコール頻度cをそのまま対戦させたとき、ベッターのこのノードでの総リターンをuB(f,c)とします。ノードへ到達する前の拠出はサンクコストです。すべての終端で両者のリターン合計は開始時のポットPになるため、ディフェンダー側はuD = P − uBです。

uB(f,c) = ½(100 + c·b) + ½f[(1−c)·100 − c·b]

丸め後の対戦EV差は、この値と均衡値との差です。丸めた両戦略を、そのままぶつけたらどうなるかを測っています。どちらかが相手のズレに合わせて戦略を変えた場合は測っていません。

ベッターのベストレスポンス(最適応答、BR)改善量では、丸めたKのコール頻度に対して、Qを常にベットするか常にチェックするか、有利な方へベッターだけが変更します。ディフェンダーのBR改善量では、丸めたQのベット頻度に対して、Kを常にコールするか常にフォールドするか、有利な方へディフェンダーだけが変更します。2つの改善量の合計がNashConvです。

本記事では、2人定和ゲームでのExploitability(エクスプロイタビリティ、被搾取可能量)をNashConv÷2と定義します。つまり、相手の戦略を固定したまま一方だけがベストレスポンスに切り替えたときの改善量を、両席で平均した値です。これはOpenSpielの固定版実装と同じ規約です。別のツールがNashConvそのものを表示する場合もあるため、ラベルだけで比較してはいけません。

25ポイント刻みの結果は、ベットサイズで変わる

次の表ではbだけを変えます。各行で厳密な均衡から出発し、両者の混合頻度を0・25・50・75・100%のうち最も近い値へ丸めます。単位は、この合成ノードへ到達した1回あたりのチップです。初期ポットは100です。

狭い画面では横にスクロールできます。「丸め後の対戦EV差」は、丸めた戦略どうしを対戦させたベッター側EVと均衡EVの差で、Exploitabilityではありません。

7つの厳密なリバーゲームで、最も近い25ポイント刻みへ丸めた結果
ベット均衡のQベット / Kコール丸め後のQベット / Kコール丸め後の対戦EV差ベッターのBR改善量ディフェンダーのBR改善量Exploitability
1/4ポット20% / 80%25% / 75%+0.15632.34380.78131.5625
1/3ポット25% / 75%25% / 75%0000
1/2ポット33.33% / 66.67%25% / 75%+0.52081.56254.68753.1250
3/4ポット42.86% / 57.14%50% / 50%+0.44643.12503.12503.1250
ポット50% / 50%50% / 50%0000
1.5倍ポット60% / 40%50% / 50%+1.25006.25006.25006.2500
2倍ポット66.67% / 33.33%75% / 25%+1.04173.12509.37506.2500

1/3ポットとポットで0になるのは、25ポイント刻みが本質的に優れているからではありません。その2つでは、たまたま均衡頻度がグリッド点と一致します。同じ規則でも、1.5倍ポットと2倍ポットではExploitabilityが6.25チップ、初期ポットの6.25%になります。

ベットサイズ0.1倍から2倍までの折れ線グラフ。均衡頻度が各グリッド上に来る地点ではExploitabilityが0へ戻り、その間で上昇する。25・50ポイント刻みのピークは、おおむね5・10ポイント刻みより高い。
955行の全スイープでは、ベットサイズをポットの10%から200%まで1ポイントずつ動かし、1・5・10・25・50ポイント刻みを検証します。この合成ゲーム族の地図であり、実際のソルバーノードに使える許容誤差グラフではありません。

片側だけを丸めると、EVが合うという罠が見える

1/2ポットが最も分かりやすい診断例です。均衡ではQが1/3でベットし、Kが2/3でコールします。Qのベットだけを25%へ丸め、Kのコールを均衡のままにすると、ベッターの対戦EVは66.6667チップのまま。均衡値と完全に一致します。それでも、Kだけが戦略を変えれば4.1667チップ改善できます。本記事の両席平均規約では、Exploitabilityは2.0833チップです。

Kのコールだけを75%へ丸めても、対戦EVは均衡値と完全に一致します。今度はベッターだけが2.0833チップ改善でき、Exploitabilityは1.0417チップです。対戦EVが均衡値と一致しても、その戦略の組が均衡とは限りません。

1/2ポットの対照実験:均衡のQベット / Kコール = 33.33% / 66.67%
戦略Qベット / Kコール丸め後の対戦EV差ベッターのBR改善量ディフェンダーのBR改善量Exploitability
均衡のまま33.33% / 66.67%0000
Qのベットだけ丸める25% / 66.67%004.16672.0833
Kのコールだけ丸める33.33% / 75%02.083301.0417
両方を丸める25% / 75%+0.52081.56254.68753.1250

この現象は、ソルバー資料の注意点とも一致します。完全な均衡では、混合する各アクションは均衡相手に対して無差別です。しかし、戦略全体を動かせば相手に有利な応答を与える場合があります。PioSOLVERの概念FAQも、アクションEVが近いからといって、混合する全ハンドを同じ一方へ寄せてよいわけではないと説明しています。

細かい刻みはこの例で有利だが、保証ではない

1/2ポットで両頻度を最も近い1・5・10・25・50ポイント刻みに丸めると、Exploitabilityは順に0.125、0.625、1.25、3.125、6.25チップです。この例では細かい刻みほど小さくなります。ただし、この大小関係を他のベットサイズにそのまま当てはめることはできません。粗い刻みでも、均衡頻度がグリッド点と一致すればExploitabilityは0になるためです。

実際のソルバー出力には、到達重みやブロッカーが異なる多数のハンドがあります。各セルを独立に丸めると、レンジ全体のアクション量や構成まで変わります。近いハンドを純粋戦略へ振り分けながら全体頻度を維持する方法は、本記事のセル単位ルールとは別の簡略化です。どちらにも、この合成ゲームの数値をそのまま移せません。

簡略化した戦略を検証する5ステップ

  1. 基準解を固定する。ゲーム定義、レンジ、ボード、スタック、レーキまたはICM、使えるサイズ、収束指標、単位を保存します。
  2. 簡略化ルールを書く。刻み幅、同点処理、各アクションを独立に丸めるか、合計をどう100%へ戻すかを記録します。
  3. 変更したレンジ全体を測る。1ハンドのアクションEVが近いことから、レンジ全体の損失を推測しません。
  4. 両席それぞれのベストレスポンスを計算する。各プレイヤーの改善量を残します。丸めた両戦略間のEVが相殺されても、保護にはなりません。
  5. 到達頻度で重み付けし、複数ノードで繰り返す。まれなノードでの条件付き5チップは、1ハンドあたり5チップではありません。次ストリートや相互に関連する複数ノードの変更も結果を変えます。

ポーカーソルバーの読み方では、頻度とアクションEVの違いを先に整理しています。頻度を決めた後の偏りのない実行は英語版のPoker Randomizer Guideの守備範囲で、簡略化コストとは別です。対戦EVとベストレスポンスが別の問いになる全ゲーム例は、Kuhn Pokerの収束実験で確認できます。

この実験で分からないこと

厳密なベストレスポンスは、相手が丸めた戦略を完全に知り、ミスも適応コストもなく対応できると仮定します。したがって、Exploitabilityは最悪ケースの頑健性指標であり、人間の相手が実際に得る金額の予測ではありません。逆に、丸めた戦略どうしのEV差が小さくても、相手が対応できない証拠にはなりません。

本実験は、1つのリバーノードへ到達した後の条件付き計算です。ベッター側のハンドクラスはAとQの2種類で、各ケースには固定された1つのベットサイズしかなく、ブロッカーも次のアクションもありません。宣言したもの以外のチェックレンジもありません。複数ストリートのホールデム解を丸めた損失、覚えやすさ、レンジ全体のアクション量を意図的に維持する別の簡略化手法は評価できません。

GTO Geckoとの関係

2026年9月16日に確認した日本向けApp Storeの掲載情報によると、GTO Geckoでは、プランに応じて事前計算済みのプリフロップ/フロップ/ターン/リバーのスポット集を利用し、レンジ構成、アクション頻度、EV推定値を比較しながら、シミュレーション形式で意思決定を練習できます。GTO Geckoは、これらの数値を読み解くための学習ツールです。本実験のデータを生成したものではなく、頻度の丸めを検証する機能や任意のノードを解くソルバーとして紹介しているわけでもありません。

混合アクションを学ぶときは、まずレンジ全体の中で元の頻度とEVを確認します。簡略化するなら別の仮説として記録し、元の値を比較用に残します。下記の公開計算機は、合成したA/Q対Kの式だけを扱います。

全結果を再現する

公開バンドルは決定論的で、非公開ソルバー解、ハンド履歴、顧客データを含みません。

生成器はBigIntで約分した分数を使います。検算器は別実装のPython fractions.Fractionで、主要35ケース、片側丸め4ケース、全955行を再計算し、固定ファイル一覧と全ハッシュを確認します。通常モードと最適化モードの両方で実行します。

よくある質問

ソルバー頻度は全部25%刻みに丸めてよいですか?
本実験から一般解は出ません。2つのベットサイズでは完全一致し、5つではExploitabilityが生まれました。実際の損失は、レンジ、到達頻度、ブロッカー、次のストリートなどに依存します。
対戦EVが正しいのに、なぜ搾取されますか?
均衡では、一方の混合が相手を無差別にします。無差別になっている側の頻度を動かしても現在の相手に対するEVは変わらない場合がありますが、相手には有利な純粋応答が生まれます。片側丸めの対照実験が、その相殺を切り分けています。
ExploitabilityとEVロスは同じですか?
定義なしには同じと言えません。本記事では、両者の単独ベストレスポンスによる改善量を平均した値です。片側の最悪ケース損失、NashConv、固定相手へのアクションEV、ゲーム全体のEVは別の量です。
丸めずランダマイザーを使うべきですか?
ランダマイザーは、決めた確率を偏りなく実行する道具です。元の頻度と簡略化後の頻度のどちらが戦略的に妥当かは判定しません。

出典