Crushing or Crushed

主にShort-handed NLHEで自分が勉強したことについてまとめるブログです。

複数のOpen Rangeに対するBBディフェンスの傾向

せっかく無料のpreflop solutionsを持っているのに腐らさているのはもったいないので、BB vs IPのCBに対するディフェンスを考えてみようと思います。

 

概要

  • PioCloudのpreflop solutionを使用
  • オープンレンジは15,30,50%のものを使用
  • ORの33%CBに対するディフェンスを考える
  • 今回は特に、OOPのチェックレイズレンジについて考察する

 

Raise : Call : Fold Ratio

相手のレンジによってx/r, c, fの割合がどうなっているか調べました。

Call : Fold

vs15 call:fold ratio 1.28
vs30 call:fold ratio 1.48
vs50 call:fold ratio 1.69

という結果に。15%openレンジには1つのフォールドに対して1.28個のコールが存在することになります。同様に50%だと1つのフォールドに対して1.69個のコールが存在することに。

つまり、相手のオープンレンジが広ければ広いほど、こちらは広くコールすることができます。

Raise : Call

vs15 raise:call ratio 0.46
vs30 raise:call ratio 0.39
vs50 raise:call ratio 0.33

15%のopenには1つのコールに対して0.46個のレイズレンジを持つことができます。

openレンジが広くなればなるほどレイズできるハンドが少なくなっているのがわかります。

つまり、相手のレンジが狭ければ狭いほど、コールを減らしてレイズで抵抗する必要があります。(3bet potになるとSPRが変化するのでこの限りではない)

Raise : Fold

vs15 raise:fold ratio 0.58
vs30 raise:fold ratio 0.58
vs50 raise:fold ratio 0.56

この辺はあまりレンジに影響がないようです。

 

以下の調査では、意図的にRaise%が66%以上のものを取り出しています。(GTOでRaise : Call = 12 : 88みたいなハンドは扱いが難しいので。。。)

X/R rangeのEquity

vs15 x/r eq. Average: 61.59, Std: 23.82
vs30 x/r eq. Average: 62.27, Std: 23.56
vs50 x/r eq. Average: 63.51, Std: 22.53

X/R rangeのEquityの平均と偏差を調査しました。意外なことに一番Raiseで抵抗しなければならないvs15%の平均Equityが一番小さいです。BB vs UTG等のゲームではBBはかなり厳しい戦いを強いられますね。

 

Call rangeのEquity

ではコールするハンドのEuqityには変化があるでしょうか?

vs15 call eq. Average: 53.44, Std: 12.42
vs30 call eq. Average: 53.27, Std: 12.62
vs50 call eq. Average: 54.25, Std: 12.95

どのレンジに対してもコールレンジのEquityは同等なようです。

今回は特に検定等はしませんが、有意な差かどうかは微妙なところ。

 

X/R rangeの偏差とCall rangeの偏差の差からわかるように、X/Rする場合はブラフとバリューを混ぜていることがわかります。

 

どんなボードでX/Rをするべきか

    f:id:alphanavis:20180925063026p:plain

全体的な傾向として見えるのは、IPのEuqityが高いほうがX/Rの頻度が高くなっているようです。先ほどと同様にX/R > 66%の場合を取り出してみると、

     f:id:alphanavis:20180925063246p:plain

こんな感じ。

 

Call : Raise Ratioをグラフで確認する                                 

              f:id:alphanavis:20180925063708p:plain

X/Rの頻度が高くなればなるほど、Callできる頻度が低くなっていることが確認できます。

 

次回はどんなボード、ハンドでX/Rするのかをもう少し考えます。

 

おまけ

f:id:alphanavis:20180925064422p:plain

f:id:alphanavis:20180925064438p:plain

これらのグラフから言えることがある方は教えてくださいw

Hand Review: BB vs BTN(AQhh) 3BET POT

お久しぶりです()。今回は1ハンドについて深く見ていきたいと思います。

 

PRE

f:id:alphanavis:20180924164202p:plain

f:id:alphanavis:20180924164152p:plain

いたって普通。いうことなし。(OOPはリニアなレンジで3betしていると想定)

 

FLOP

f:id:alphanavis:20180924170353p:plain

f:id:alphanavis:20180924170303p:plain

 

OOP favouriteなボードなのでOOP側はすべてのハンドで50%程度のベットをすることができます。

 

    f:id:alphanavis:20180924170612p:plain

 

それに対して、IPが抵抗できるハンドはレンジの半分程度しかありません。

KQs, KQo, KTsなどのハンドでコールしたくなりますが、あまりに相手側に有利なので4-outs-straight-drawはバックドアフラッシュがない限り、フォールド優勢です。また、ポケットペアはセット以外はフォールドです。(9h9xとかでもコールできない。)

 

TURN

f:id:alphanavis:20180924171354p:plain

問題のターン。

FLOPの時点でIP vs OOPのEquityは50/50になっていますが、OOPにはかなり不利なカードです。

    f:id:alphanavis:20180924171612p:plain

従って、OOPが50%PSBをできるハンドはGTO的にはほとんどありません。

 

今回は50%のベットを打たれました。AQhhはどうするべきでしょうか。

          

            f:id:alphanavis:20180924172205p:plain

 

AQhhはコールですね、相手のバリューハンドを大きく削りすぎています。PioSolver等で勉強している人には簡単な問題だったかもしれませんね。しかし、AQhhをレイズしないとなると、バリューとブラフのレイズはどのように選んだらいいでしょうか?

 

value bluff ratioの考え方でいくと、こちらのレンジに強いハンドがあればあるほど、ブラフをより多く混ぜれるのでした。

このボードでブラフできるハンドはあるでしょうか。KQのほとんどはフロップで追い出されているし、いわゆるセミブラフができるハンドが少ないです。

では、こちらにレイズを打てるレンジはない?

 

 

 

 

 

f:id:alphanavis:20180924173335p:plain

       

AJo, AJs, ローカードのフラッシュがレイズになっています。いわゆるドロー系のブラフはこちらにはないです。

 

                                  f:id:alphanavis:20180924173828p:plain

                                        (レイズレンジの主要なequity)

 

これらのハンドは現状強いですが、Riverでハートが落ちるとequityがかなり落ちてしまいます。逆アウツとでもいえるでしょうか。なので、このようなシチュエーションではlowカードのフラッシュでレイズするのが良い。

 

Exploitative strategy

GTOではOOP側に50%のベットを打てるレンジはほとんどありません。しかし、今回の相手はベットしてきました。(実際のゲーム中では、相手がGTOから外れていると想定して、AQhhがレイズできるか考えていました。)

 

これに対する搾取戦略を考えます。

f:id:alphanavis:20180924175205p:plain

OOPのターンのベットレンジはこの辺を想定。

これに対する、搾取戦略は

        f:id:alphanavis:20180924175515p:plain

こんな感じ。やはり50%AQhhはコールでした。

搾取戦略ではHighカードのハートを2枚ブロックしていなければ、レイズできます。

Semi-bluffであるKhJxをコールに回しても、EVの差はほとんどないので、

  • こちらに超有利なボード
  • にもかかわらずOOPがharf-pot bet

してきた場合は、相手のバリューハンドを大きくブロックしている場合を除き、強いハンドでレイズすることが望ましいと考えられます。(2nd, 3rd pairは降りる)

 

RIVER

f:id:alphanavis:20180924180204p:plain

JJJJ. GG.

GTOの体系化を1から考える - 4 ~総集編1~

初心に帰って、今までの道のりを俯瞰・整理します。

 

1.GTOとは

 ”一番バランスの取れた戦略”のこと。Plyaer A, BのHUにおいて、Aが一番バランスの取れた戦略を選択すれば、Bは戦略を変化させることによって、AのEVを減少させることができません。またBがGTOでプレイしない場合、自らEVの損失を生み出す戦略 S^B_iが存在します。ポーカーはゼロサムゲームであるため、Bが失ったEVは、AのEVに加算されます。

 メタゲームであるポーカーにおける最終地点がGTO

2.GTOを習得する意義

  1. 相手がGTOでプレイしている場合、こちらがGTOでプレイしないと、EVの損失を自ら生み出してしまう可能性があるから
  2. GTOの性質を知ることにより、GTOから大きく離れた戦略に対して、Exploitする戦略を定量的に考えることができるから
  3. どうしても定性的になりがちなハンドレビュー等の議論を、定量的に評価できるから(時と場合によるが)
  4. LibratusというGTOを模倣するAIがプロ相手に大きな勝利を挙げたから(14bb/100)

じゃあ、GTOを勉強して習得すればいいじゃん!

そう簡単にはいかないのが現実です。

3.GTOを習得するうえで何が障害となりえるか

f:id:alphanavis:20180816000451p:plain

 ゲーム全体の解は現在の計算機では計算不可能です。なのでこのゲーム全体の解を習得するのは非現実的です。(そもそもわからない)

 ベットサイズを複数程度に固定した、部分ゲームにおいては計算機によってGTOが計算可能です。しかし、Solverによって得られた解は複雑で、全ての場合において、私たちがそれらを暗記するのは、ほとんど不可能であると考えられます。

 よりゲームを簡単化したものに対する計算結果を用いて、複数のシチュエーションごとにGTOを近似することができます。(例えば、A-highボードならwhole rangeで33%のベットを打つのが疑似GTOなど)

 上の図を見てわかるように、右に行けば行くほど搾取可能性が大きくなっているのがわかります。ゲームを簡単にすればするほど、情報量が落ちていくのでGTOの精度が落ちていくからです。

 

 

 つまり、ゲームの複雑性戦略の多さGTOを習得することを困難にしています。戦略を決定する要素は多数存在します。IP Range, OOP range, Bet Size, Community Board, Effective Stack Size, ...。上げていったらきりがありません。

 GTO戦略 s^* \in S^* \mathbf{x} \in \mathbb{R}^n で決定されていると仮定すると、

(つまり、 f:\mathbb{R}^n \mapsto S^*, S^* \subset S)

  S^*のサイズが戦略の多さを表す指標と考えることができます。

         f:id:alphanavis:20180816003744p:plain

4.どのように障害を解決するか

 3節でお話しした S^*の大きさが障害を解決する鍵だと考えています。つまり、得られる結果が人間に最低限、習得可能なレベルにするために、 S^*のサイズを減らしてあげることが必要です。

( S^*のすべての要素はGTOなので、 S^*の要素を適当に減らして・または近似して、新たな集合を作る。 g:\mathbb{R}^n\mapsto \hat{S^*})

つまり私たちが知りたいのは、この写像 gと解釈することができます。

また S^*の大きさと、GTOの精度はトレードオフの関係にあると考えています。(トレードオフが線形か非線形かは不明)

 

 

私たちが知りたい疑似GTOは3.の図の水色の点を、人間が模倣可能なレベルを保てる最大限の点まで左側に移動させることです。(重要なのは”左側に”という点で、適切な手法を用いないと、右側の点を取ってしまいかねない。)

5.現在の手法とその問題

 詳しくはこのエントリーをご覧ください。

alphanavis.hatenablog.comこのエントリーの g(\cdot)は、Girvan-Newman法によって求めたクラスタに含まれる戦略の平均です。

 

 考えられる問題として

  1. コサイン類似度は適切に戦略を分けることができるか?
  2. EQでBinningすることによって、よくないことが起こっているのではないか?
  3. 分割したクラスタ内の戦略を平均化する際に、近傍中心性等の指標を用いて、加重平均をとったほうが良いのではないか?
  4. クラスタ間の戦略も反映したほうが良いのではないか?(Functional Cartography等を用いる。)

上げていたらきりがないですが、当面は今の手法のままやってみて、結論だけ付けます。まずは悪い手法でも最後までやってみて、徐々に洗練させていく方向で。

 

www.nature.com

6.最終的なゴール

良い近似戦略が求まったら、ハンドのカテゴリー別に戦略を割り振っていきます。Pioとかだと、「One pairとかFlush Drawで66%ベット、A♣,K♣のブロッカー持ってたら125%ベット」みたいなことを教えてくれないので、人間が理解しやすいような出力形式を目指します。

 

固まってはいませんが、Snowieのレンジアドバイス的な出力にして、もう少し見やすくできればいいかなと思っています。

例えば、

CHECK -> NONE

33% BET -> Top Pair: 100%, Second pair: 100%, Third Pair: 100%,....

66% BET -> A-high Flush: 100%, K-high Flush: 100%, A-high Flush Draw: 100%

125% BET -> NONE

みたいな出力を綺麗なインターフェースで出してみたいです。

 

 

例)雑ですがこんな感じ?(図の中の戦略はテキトーです)

f:id:alphanavis:20180816012921p:plain

GTOの体系化を1から考える - 3 ~Blinds Restealing編~

なぜBlinds Resteal vs BTN CCを勉強するか

  • 頻出かつポットが大きくなりやすいから
  • 正しくプレイできないと、損失が大きくなりやすいから
  • 多くのプレイヤーはサンクコストを嫌い、アグレッシブにCBを打ちすぎるから
  • レンジが広い場合の3betポットを勉強すれば、レンジが狭い場合に応用できそうだから

 

どのように体系化するか

 今回は、フロップをトップダウン的な分類で分けることをしません。トップダウン的な手法というのは、A-high, K-highボード、Pairedボード等に分類する手法のことを指します。

 ではどのようにするのか?戦略をベクトル化して、各戦略ベクトル \mathbf{S}_{\mbox{flop}}の類似度を用いて「似たような戦略をまとめる」という手段を試みます。

f:id:alphanavis:20180803202419p:plain

用意

  1. BB 3bet vs BTN flat 3betのレンジを定義
  2. Game Treeに用いたノードは、bet size: 33%, 66%, 125%、raise size: 3x, 50%を設定
  3. piosubsetの238typeのものを使用して集合分析

 

類似度の定量

 今回は戦略ベクトルの類似度を測る指標としてコサイン距離を用いました。簡単に説明すると、\mathbf{a}\mathbf{b}というベクトルがあるとき、このベクトルが似ていれば、似ているほどコサイン距離は1に近づき、似ていなければ-1に近づきます。(ベクトル同士のの角度が0度に近ければ1に近くなる)

 要するに戦略ベクトル \mathbf{S}_{\mbox{flop1}} \mathbf{S}_{\mbox{flop2}}のコサイン距離が1に近ければ、この二つのフロップに対する戦略は同じようなものと考えることができます。

 

結果1: コサイン類似度

f:id:alphanavis:20180803203515p:plain

 縦横は238のフロップ、グラフの値はコサイン距離です。対角成分が真っ黒なのは同じベクトル同士のコサイン距離なので、自明に1になるからです。

 この表は、グラフの隣接行列として扱うことができるので、それを使って似ている戦略をまとめていきます。何をもってフロップの特徴が似ているかを調査するために、コサイン距離に閾値を設けて、この隣接行列を定義しなおします。

 例えば、閾値を0.9に設定して、隣接行列を定義しなおすと以下のようになります。なんとなくすっきりしました。

f:id:alphanavis:20180803205315p:plain

この隣接行列をグラフ表現すると、

f:id:alphanavis:20180803205725p:plain

こんな感じ。

 

グラフ表現すると何が嬉しいのか

 ノードとノードの繋がりの関係は「戦略が似ているもの」です。要するに、ノード間にリンクがあるものは戦略が似ているものとして関係を持っていることになります。戦略が似ている者同士はリンクでつながれているはずなので、グラフ内の密になっている塊は、同じような戦略を持つフロップ群と解釈することができます。その塊を引っこ抜いてくることでGTOの体系化を目指そう、というモチベーションです。

 Girman-Newmanアルゴリズムというものを用いて、上のグラフからコミュニティを検出してみました。

f:id:alphanavis:20180803210558p:plain

閾値が0.9のときグラフ全体は7個のコミュニティ、4個の独立したノード(リンクを持たないノード)に分けられました。

この結果が妥当であれば、Blinds restealingのシチュエーションでは11個の戦略を知っておけば、簡易的なGTOとして体系化できると考えられます。

Leftover

まず、閾値を変えるとグラフの構造が変わるので、検出されるコミュニティ数も変化します。なので、ちょうどよい閾値を探す必要があります。

f:id:alphanavis:20180803211042p:plain

閾値が0.9以上のとき、コミュニティの数は指数関数的に増えていきます。これは、リンクが減少して、独立したノードが増えてしまうためです。0.3~0.4の傾向については調査中。

 

次に、引っこ抜いたコミュニティの戦略がちゃんと体系化できるものかを調査する必要があります。検出されたコミュニティのフロップ群が「妥当」かどうかを検証する指標が必要です。

謝辞

 集合分析の計算を回すにあたりmaspy_starsさんに協力していただきました。

Descending Size Betting(AoNLH, Kindle, pp.1348-1349)について

AoNLHに書いてあるDescending Size Bettingがどのような時に使われているか、実際に調査してみました。

 

Descending Size Bettingとは

When our strong hands are susceptible to being outdrawn on later streets, we may choose to use a descending bet sizing structure. That is, by betting bigger on earlier streets, we make sure our opponent puts more money into the pot when he’s behind if he wants to try to outdraw us.

Janda, Matthew. Applications of No-Limit Hold'em (Kindle Locations 1348-1349). Two Plus Two Publishing. Kindle Edition.

A descending bet sizing structure is effective when we likely have the best hand and do not want to cheaply give our opponent additional cards.

Janda, Matthew. Applications of No-Limit Hold'em (Kindle Locations 1381-1382). Two Plus Two Publishing. Kindle Edition.

自分たちがベストハンドを持っているが、相手のドローにひっくり返されないようにするために最初のストリードで大きなベットサイズを用いる。ストリートが続くにつれて相手のドロー等のEQR(Equity Realization)が小さくなるので、ベットサイズを小さくしていけばよい。また、完全なポラーレンジでこちらにナットアドバンテージがある場合はDescending Bet Sizingが最適であるそうです。

みたいな感じです。

PioSolverを使って調べてみた

f:id:alphanavis:20180724211345j:plain

プリフロップはSnowieのPreflop Adviserを参考にしました。全てのストリートのベットサイズは25%, 50%, 100%が使われています。

 

Flop

f:id:alphanavis:20180724211451j:plain

このようなボードの場合UTGはPot sized betしか使いません。QJs, JTs等(♣のドローがないようなJTsを含む)でPot Sized Betできる人は少なさそう。それに対してBTNのレイズレンジはありません。この時EQの分布は

f:id:alphanavis:20180724211701j:plain

BTNにコールされた時点で、OOPはPolarレンジ、IPはブラフキャッチの構図になっています。

 

Turn

f:id:alphanavis:20180724211840j:plain

ターンでハート以外のAが落ちたときOOPのベットサイズには50%のものが使われています。

Flop 100%, Turn 50%とベットサイズを落としているためDesceinding Bet Sizingになります。TurnのEQを見てみます。

f:id:alphanavis:20180724212546j:plain

フロップでベットしたA-highのブラフがimproveしたおかげで、OOPのレンジ全体のEQが改善しています。このような時には50%のベットサイズを混ぜるのが良いそうです。

 

f:id:alphanavis:20180724212554j:plain

ターンでハート以外のラグが落ちた場合はポットサイズベット(or Check)が用いられています。この時点でOOPのベットレンジは、フロップの時点よりポラーされていることがわかります。

 

River (Turnで50%のサイズを用いた場合)

f:id:alphanavis:20180724212628j:plain

リバーでハート以外のKが落ちたときOOPのベットサイズには20%のものが使われています。

Flop 100%, Turn 50%, River 25%とベットサイズを落としているためDesceinding Bet Sizingになります。RiverのEQを見てみます。

f:id:alphanavis:20180724212640j:plain

f:id:alphanavis:20180724212657j:plain

RiverのKはOOPのレンジをかなり強くしてしまうため、大きなベットサイズが使えないのだと思います。EQの分布もNut and Air vs. Bluff Catcherの構図にはなっていません。このような時は25%といった、比較的小さなサイズのベットを用いるのが良いです。

 

River (Turnで100%のサイズを用いた場合)

f:id:alphanavis:20180724214329j:plain

f:id:alphanavis:20180724214338j:plain

OOPのEQが高くなるようなカード(A, K, J)が落ちた場合はPot Bet(ALL-IN)です。この時のEQの分布は

f:id:alphanavis:20180724214919j:plain

完全にNut, Air vs Bluff Catcherの分布になっています。

 

結論f:id:alphanavis:20180724215155j:plain

感想:「難しすぎる、これは再現できない」です。ベットサイズを減らして(Flop: 25%, 50%, 100%, Turn: 50%, 25%, River: 25%)、Pioを回してみましたがEV lossが大きすぎて使い物にならなさそうです。

 

このようなベットサイジングをうまく用いるのはかなり難しそうですね。しかし、多くの相手の傾向がこれから外れているということに着目すれば、それをエクスプロイトできそうです。次回は、相手がこの傾向から離れていると仮定したエクスプロイトプレイを考えたいです。

HUDのスタッツはどれくらい信用できる?

最近本業が忙しくて全くポーカーできていません。。。

息抜きに、簡単な記事を書いてみました。(もしかしたら間違ったこと書いてるかも。指摘お待ちしています!)

 

HUDの数値を使うには大きなサンプル数が必要

Blind resteal vs BTN

3betポットに一番なりやすいシチュエーション。BTNのレンジはかなり広く、特にSBはポジションがないため、抵抗する場合はResteal 3betを打ったほうが利益的であることが多いです。そのためresteal率やfold to resteal率はunknownとプリフロップを戦う上で大変重要な数値になります。

 

例)HUDのrestealスタッツが20%の相手にRestealをもらいました。サンプル数は10個でした。この時、SBの真のresteal rangeが10%である確率はどのくらいでしょうか。

                       

 二項分布を考えればわかりますね。実際にn=10, 30, 60 についてプロットしてみます。

      f:id:alphanavis:20180718172458p:plain

n=10のとき、相手の真のresteal率が10%で、観測値が20%になる確率は20%程度あります。観測値が10%であったとしても、それが真のresteal率である確率は40%以下です。

正しくは、

真のresteal率(母平均)を推定するには、母分散 \sigma^2の正規母集団から大きさn=10の標本を得たとき、母平均\muの信頼係数95%の信頼区間を求める、考え方が必要。

 

nが増えるにつれて0.10に収束しているのがわかると思います。サンプルが60個あった場合は、半分以上は真のresteal率からプラスマイナス3%は、分散することになります。

以下にp=0.05, p=0.15の場合もはっておきます。

    f:id:alphanavis:20180718173152p:plain

プレミアでしかrestealしてこない相手(resteal 3bet = 5%の相手)でもn=10しかないときは30%の確率でHUD上でのスタッツは10%になるし、8%くらいの確率で20%といった、超アグレのスタッツに化けます。

    f:id:alphanavis:20180718173203p:plain

逆に15%と、resteal率が高い相手(GTO的にはこのくらい)でもn=10の場合は20%の確率でrestealが観測できないです。n=60でやっとHUDのスタッツ的に意味が出てきそう。

 

じゃあ何ハンドあったら信用していいの?

うーん、次の投稿でもう少し真面目に(定量的に)やってみようかなと思っていますが、sb resteal 3betに関しては50handあれば、参考程度にはできると思います。SBのrestealを50hand集めるとなると、そのプレイヤーの全体のサンプル数は大体800handくらいでしょうか。

( P(player_{sb}) * P(player_{btn}(open)) * observation = 50)

 

今回は、一番サンプルが集まりやすく、重要なスタッツについて説明しました。n=10程度のサンプルがほとんど意味をなさないということが分かったと思います。flop, turnと続くと、取れるサンプルはかなり減ります。

Fold to turn CB等の数値は、もはやレギュラー相手にしか使えないスタッツですね。

HUDの数値を参考にするときに気を付けたいです。

 

こっちも見てみるといいかも(英語)

At what sample size are player statistics accurate? : poker

GTOの体系化を1から考える - 2

お久しぶりです。少し投稿が遅くなってしまいました。

 

今回は前回の記事の続き。この記事を読んでない方はここを先に読むと、以下の議論の理解がスムーズです。

alphanavis.hatenablog.com

背景

「フロップのタイプを固定してもレンジが変わるとお互いのEQも変化する。特定のフロップに対して固定した戦略(例えばすべてのレンジで33%のベット)をとるのは危険」という議論をtwitterで見かけました。これを実際に検証してみます。

前回の記事でもそのことに少し触れていますので、気になる方は上のリンクの5. Range vs Rangeをご覧ください。

 

リサーチクエスチョン

  1. 「フロップのテキスチャーを固定してレンジを変化させると、IPのEQが変化するかもしれない」
  2. 「レンジを変化させてもフロップのテクスチャーによってはIPのEQの変化に差がないかもしれない」

 

実験方法

IP vs BBのレンジ、フロップのタイプを複数用意します。そしてフロップを固定して、各IP vs BBのレンジのEQを計算してその変化を調査します。最後に一つのフロップに対して各レンジに対するIPのEQを計算し、その平均と偏差を求めます。

f:id:alphanavis:20180706090238p:plain

 

フロップが持つ特性を調査するためにクラスタリングという考え方を使いました。

68種類のフロップを5つのEQの特性からクラスタリングします(クラスタリングとは特徴が似たようなものをまとめる手法)。具体的には一つのフロップに対して5つのEQが得られるのでこれを5次元の特徴量として、K-means法を用いて10個のクラスタに分けます。

ペアボード、モノトーンボード、ドライボード、ウェットボードなどのトップダウン的な分類手法は用いていません。

分けたクラスタに対してEQの平均と標準偏差を求め、実際にどのような特徴によってフロップが分けられたかを確認します。

実験の条件

  • 今回使用するのはPioCloudのRake preflop solution
  • IPのオープンサイズは3bbでBBの3-betサイズは10.5bbでお互いのレンジはSingle raised potのものを使用
  • IPのオープンレンジは15%,20%,30%,40%,50%。フロップのサブセットはPIOのpreflop_subsetの68タイプあるものを使用

 

実験結果

           f:id:alphanavis:20180706075604p:plain

上の図が実験結果の概要です。例えばクラスター4はIPのエクイティがOOPに負けているフロップ群です。また標準偏差が1程度であることから、レンジの変化に対してEQの変化が比較的小さいものだということがわかります。

Cluster 4, OOP Favourite Board

f:id:alphanavis:20180706080854p:plain

 

クラスター5はIPに超favouriteなボードだということがわかります。しかし、偏差が4.13と比較的高いことから、レンジの変化に対してEQの変化が大きいことがわかります。要するに、クラスター5に分類されたボード下では戦略(例えばBBの抵抗レンジ)を固定して使うのは危険だということです。これを実際に調べてみました。

Cluster 5, IP Super Favourite Board

f:id:alphanavis:20180706080356p:plain

 フロップの特徴としてはA-high + Pictureか二枚以上のPictureですね。これらのボードに対するIPのEQの平均は58.78%で、IP超有利です。しかし、IPのEQはOPENレンジによって大きく変化することが、標準偏差の大きさからわかります。

AAJ のボードを取り上げてBBの抵抗レンジを見てみましょう。

f:id:alphanavis:20180706081445p:plain

(少し小さいので拡大してご覧ください)

 上の図の抵抗レンジはIPの33%PSBに対するものです。ここからわかるのは

  1. IPのレンジが広くなればなるほどOOPのEQは増加する
  2. UTGに対する抵抗は、9以下のポケットペアは全て降りるバックドアフラドロでもT-high以下は全て降りる。コールはJヒットのみ。後はすべてレイズ
  3. MPに対する抵抗は、ポケットペアをすべてコール(低頻度のレイズ)バックドアフラドロでもT-high以下は全て降りる。ほぼ強いところをレイズ、K-highバックドアフラッシュドローをブラフに入れる
  4. BTNに対する抵抗は、ポケットペアをすべてコール(超低頻度のレイズ)。バックドアフラドロでもT-high以下は全て降りる。レイズ頻度はMPのものとほぼ同じ

 つまりCluster5に分類されるようなフロップでは、レンジによって戦略を変化させる必要があります。

結論

フロップに対するIPとBBのレンジの変化が各プレイヤーのEQに与える影響を検証しました。フロップのタイプによってはEQがあまり変化しないものもあることもわかりました。集合分析する際は、あらかじめレンジの変化によるEQの偏差を確認したほうがいいかもしれません。偏差が大きい場合は、得られたGTOがすべてのレンジで使えない可能性があります。

 

Leftover

今回はレンジ全体のEQを使ってフロップの特徴を調査しましたが、実際は各ハンドのEQの分布が戦略に影響している場合があります。ここを考慮していないので、実験結果が妥当でない可能性があります。次回はハンドのEQ分布を特徴量にしてフロップの特徴を抽出してみたいです。

 

Appendix.

クラスターを張っておきます。興味がある方はご覧ください。右のフロップの特徴は目で見て、何となく傾向をつかんだものです。そうではないものもありますのでご注意ください。

 

f:id:alphanavis:20180706090255p:plain

f:id:alphanavis:20180706090321p:plain

f:id:alphanavis:20180706090333p:plain