統計は冷酷だ

ポーカー、ゲーム、サッカーなどについて考えていきたい。自分の為にもブログを更新していこうと思う。

確率変数(´・∀・`)

こんにちは、今回はポーカー関係ないです。
内容的には数学です。

突然ですが「確率変数(random variable)」って何か説明できるでしょうか

確率変数って言葉自体はほとんどの人が聞いたことあったりすると思うのですが、理系大学生や卒業生でも答えられないもいるんじゃないかと思います。

結構前ですが、自分が大学教授に確率統計の問題を説明するタイミングがありました。(もちろん教授はその内容をわかっています。)

その時に、はじめの二言目くらいで
「確率変数Xが...」
と話し始めたところ

教授から
「確率変数って何?」
と突っ込まれ

「(´・∀・`)」
となりました。

確かその時は「確率によって変わる変数です。」みたいなことを言った気がするのですが、違いました。

確率変数は標本空間から実数の空間への写像でした。
測度論を学ぶにあたっても理解することが大事な部分だったと思います。

riverで1outを引かれるという事象に約2%という実数が結びついているという感じです。

このブログの確率のところがとてもわかりやすかったです。
ogyahogya.hatenablog.com

3betpotについて①

こんにちは!お久しぶりです。
ブログを書くのが久しぶりになってしまいました。

せっかくツイッターとかで紹介してくれた人もいたのに、そこから更新しないのもSEO(Search Engine Optimization)的にどうなのかとも思っていたのですがなかなか書けていませんでした。

以降はあまり気負わずポーカー以外のたわいもないことも書いてしまおうと思っています。
これからは頻度をあげて更新していく予定です!

今回はcash gameのSBvsBTNの3betpotについて書いていこうと思います。
この状況のGTOについては多くの方が有用なことを書いてくれているので
「このブログ何か新規性あるの?」などと言われると困りますが書いていきます笑 

主にpython,Rを見よう見まねで使ったのですが、自分は特にちゃんと学んだ訳ではないので至らないところも多々あるかと思います。
何かアドバイスなどあればぜひよろしくお願いします。
間違っている可能性もあるので、もし何か指摘などもあったら気軽に教えてください。

①になっていますが予定では
①(今回) Piosolverでの計算結果からGTOの全体的な傾向をみる
⓶それらの結果をいくつかのボードをとってGTOをみてみる
⓷実戦で多くの相手がGTOから乖離していると思われるスポットでどのようにexploitすればいいのか

という構成で書いていく予定です。

今回の状況
cash game
BTN 2.5bbopen
SB 10bb3bet
BB fold
BTN call
OOP,IPのレンジは以下のようなレンジを想定しています。

f:id:takoagemat:20181111043013p:plain
左:OOP、右IP

以下のような設定で計算しました。
f:id:takoagemat:20181111043018p:plain

flopについてはこちらの184flopsubsetを利用しました。
www.piosolver.com


冗長かもしれないので最後にまとめを書いています。

まずはエクイティとベット頻度についてプロットしてみました
縦軸がSBのエクイティ、縦軸がSBのベット頻度です。(ベットサイズ2種の頻度の合計です)

f:id:takoagemat:20181111043224p:plain
Equityとbet頻度

エクイティの高いボードの方がベット頻度が高くなっている傾向があるのがわかると思います。

また、フロップのカードのうちもっとも数値の高いカード(以下highカード)とエクイティ、ベット頻度をグラフにしてみると以下のようになります。

f:id:takoagemat:20181111043222p:plainf:id:takoagemat:20181111043011p:plain
左:エクイティ 右:ベット頻度

これらをみると、基本的にはHighカードが8,9辺りがOOPのエクイティがもっとも低くベット頻度も低い。
Highカードが大きくなるにつれてエクイティも大きくなりベット頻度も大きくなる傾向にあるということが読み取れます。

次にベットサイズについてみていきます。
今回は32%potbetと64%potbetの二つの選択肢で計算したためその二つについてです。

f:id:takoagemat:20181111043006p:plainf:id:takoagemat:20181111043009p:plain
左:32%bet頻度 右:64%ベット頻度

エクイティの高い時は小さいベットを多用し、エクイティの低い時は大きいベットを多く使っているように見えます。

ベットされた時のBTNの戦略についてはLilianさんの記事が実践的でわかりやすいと思います。

次にボードがrainbow,twotone,monotoneでどのようにGTO戦略が変わっているのかみてみます。

f:id:takoagemat:20181111043302p:plainf:id:takoagemat:20181111043259p:plainf:id:takoagemat:20181111043219p:plain
rainbow, twotone, monotone

rainbow(73),twotone(96),monotone(15)の順でベット率が下がっている傾向が読み取れると思います。ボードがウェットになるとIPに有利になるため、OOPのベット率が下がるということかもしれません。(カッコ内はサンプル数です)
特にmonotoneのボードではほとんどOOPはベットしていないことがわかります。

また、highカードが小さい時もボードがコネクトしている時の方がベット頻度が下がっています。(カードの数値の最大値と最小値が3以下かどうかで判別しました。)
左がコネクトしている時の64%potbetの頻度で、右がそれ以外の時のベット頻度です。

f:id:takoagemat:20181111043227p:plainf:id:takoagemat:20181111043305p:plain

次にIPのBMCBについてみていきます。
縦軸がOOPのエクイティ、横軸がベット頻度です。(縦軸がSBのエクイティです)
左のグラフが32%potbetについて、真ん中のグラフが64%potbet、右のグラフがcheckの頻度です。

f:id:takoagemat:20181111043128p:plainf:id:takoagemat:20181111043134p:plainf:id:takoagemat:20181111043131p:plain

OOPと同様にIPも自身のエクイティが高いほど小さいベットを利用し、エクイティが低い時は大きいベットを多く利用し、checkする頻度も高くなっているのが読み取れます。

次にOOPがチェックしてIPにベットされた時のGTOについてみていきます。
これまでと同様縦軸がOOPのエクイティ、横軸が頻度です。
左のグラフがcheckfold,真ん中のグラフがcheckcall,右のグラフがcheckraiseの頻度のグラフです。

f:id:takoagemat:20181111043123p:plainf:id:takoagemat:20181111043131p:plainf:id:takoagemat:20181111043229p:plain


まとめるとGTO
OOPはflopでhighカードが大きいエクイティの高いボードの時に小さいベットを高い頻度で利用し、highカードが小さくエクイティの低い時に大きいサイズのベットを多く利用する。
OOPのcheckに対してIPは自身のエクイティの高い時に小さいサイズのベットを多く利用し、自身のエクイティが低い時は大きいサイズのベットを頻度はあまり高くないが利用する。
OOPはcheckするレンジがある場合、highカードが大きくエクイティが高いほどcheckfoldの頻度が低く、checkcallする頻度が高い。逆にhighカードが小さくエクイティが低いボードの時ほどcheckfoldする頻度も高いが、checkraiseする頻度も高くなっている。
また、ボードがドライであるほどOOPのCB率が高くなっており、monotoneボードではほとんどベットをしない。
highカードが低く、コネクトしているボードではベット率がさらに低い

何か違うと思われるところなどあれば気軽に教えてもらえればと思います。
この記事を書いている時にpiosolverのできることを一つ新たに気づいたので早めに次の記事に活かせたらと思います。

25bbHUMRCについて

こんにちは
今回は25bbでのHUでのSBminraiseBBcallの状況において
GTOを体系的に捉えられることを目標にしました。

状況
HU eff25bb
SB minraise
BB call

今回もpiosolverのスクリプトの機能を用いて25のフロップにおいてGTO戦略を計算しました。
この時点でのお互いのレンジは以下のようになっています。

f:id:takoagemat:20180908150943p:plain
左:OOPのレンジ,右:IPのレンジ

また以下のようなベットサイズで計算しました。

f:id:takoagemat:20180908151116p:plain

その集合分析が以下の表です。

f:id:takoagemat:20180908150939p:plain

それらの値からRでクラスタリングをしてフロップを5つに分類してみました。
ward法というクラスタリング方法で分類してみました。
f:id:takoagemat:20180908154358p:plain


クラスタ
Aとコネクトしているブロードウェイ以外のフロップ
非常にIPのエクイティが高くほとんどレンジ全体でベットできる
ポットベットの割合が非常に多い
turnがA以外のペアになった場合、ベット頻度はほとんど0

クラスタ
Aとブロードウェイカードがあるボード
こちらもほとんどレンジ全体でベットできる
小さいベットの割合が大きい
こちらもturnがA以外のペアになった場合、ベット頻度はほとんど0

クラスタ
ペアボードなどの非常にドライなボード
小さいベットの割合が非常に高い
レンジの半分から7割くらいをベットできる

クラスタ
比較的小さいカードで占められ、ある程度ドライなボード
ベットサイズは大きく、頻度は小さくしている

クラスタ
モノトーンボード、ミドルカードがコネクトしているボードなどのウェットなボード
これらのボードではベット頻度は小さく、ハーフサイズのベットを多く利用している

感じたことメモ
15bbHULCと違い、EVとEquityの相関が強い
SPRが小さい状況なのでコミットしやすくEQRはそこまで重要ではなくなるのかも

分かったこと
あまりレイズされないならばかなり頻度をあげてCBを打つのが利益的
nodelockで計算してみた
CB後にturnでOOPに有利なカードが出た場合はベット頻度がかなり少なくなっている

15bbHULCについて

effective stack15bbでのHUでのGTOをできるだけ簡潔にまとめられることを目標にしています。
①(今回)まず、フロップごとに分類してどのような特徴のフロップでどのような戦略がGTOなのかを大枠でみていきます。
②その後分類ごとの細かい戦略をみていく予定です。

もちろんこのような方法が優れているのかはわかりませんが、とりあえずやってみます。
何かアドバイスなどあればぜひお願いします。
内容もチグハグになるかもしれませんがだんだん改善していければと思っています。

状況
HU(SBがIP)
effective stack 15bb
ante なし
SBLimp-BBcheck
pot 40,eff 280

お互いのレンジはPiocloudのspin&goのpreflop solutionsを利用しました。
piocloud.weebly.com
こんな感じのレンジになっています。

f:id:takoagemat:20180905114926p:plain
左:OOP,右:IP

基本的にIPのlimpレンジには強いハンドも多く含まれているのに対し、OOPは強いハンドの多くをプリフロップでアイソレートするのでチェックレンジに強いハンドが含まれていません。

これらの状況においてpiosolverの集合分析のデータを元にRでの回帰分析、クラスタリング、主成分分析などを用いてどのようなプレイが適しているのか判断できるように体系化できないか考えてみます。

また、flopでIPが全レンジでハーフポットベットをする場合の計算もしてGTOの時とのEVlossも考えてみました。

以下はpiosolverの集合分析から得られた表をIPのエクイティが高い順にまとめたものです。

f:id:takoagemat:20180905122455p:plain
15bbHULC


flopについてはpiosolverが提供している25flopsubsetを利用しました。

www.piosolver.com

それぞれのflopで5分ずつ計算しました。
CPU: Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz

piosolverでの設定は以下の写真の通りです。
f:id:takoagemat:20180905114930p:plain


回帰分析
Bet頻度とEQRの相関係数は0.954982と他の数値に比べて極めて高かった。
Bet頻度はEQRとの強い相関がある。

f:id:takoagemat:20180905233818p:plain

この図からもかなり相関があることが伺えます。

クラスタリング
ward法により、それぞれのフロップをクラスタリングしてみます。

f:id:takoagemat:20180905233821p:plain
ward法によるフロップのクラスタリング

これらを5つのグループに分けてみました。
f:id:takoagemat:20180905233823p:plain

これらの結果を下の表にまとめてみました。

f:id:takoagemat:20180905235911p:plain

重要そうな値とそれぞれの特徴を述べました

f:id:takoagemat:20180906005144p:plain
まとめ

これらのクラスタごとにGTO戦略をみていこうと思います。

それぞれのボードについて

クラスタ
Aハイボード(モノトーン以外)
IPのエクイティが高く、レンジのほとんどのハンドでベット

bet-call
この時点でIPはnuts&airの形になっている
turn以降大きいベットを多様

turn
①ブロードウェイカードがIPにとっては有利
②ボードがA以外のペアになるとほとんどベットしない
ボードがボトムペアになった時はほぼすべてcheckする
→riverでOOPはallinの選択肢あり(checkレンジにも強いハンドを残す)
③フラッシュが完成するリバーに関しては小さいベットの頻度高め


クラスタ
よくある(?)ボード、ベット頻度は50%程度
モノトーンボードではOOPは半分近くcallできる

割とイメージ通り

クラスタ
小さいペアボード、IPのベット頻度かなり低い
ベットに対してはOOPは広くミニマムレイズで対抗している

レイズはミニマムレイズが良い
IPはpassiveにプレイするのがいい


クラスタ
ミドルカードがコネクトしているボード
ベット頻度は低くOOPがcallする頻度も高い

オーバーペアはポットベットしている
IPのベット頻度は低く、OOPはより多くのハンドをcallできる

クラスタ
小さいカードのみのボード
大きなサイズのベットを限られたレンジで利用する
広いレンジで小さいベットは損失が大きい

turn
IPに有利なブロードウェイカードがでた場合allinの選択肢もある
それ以外の時はハーフポットベットのみの利用

マイクロステークスのキャッシュゲーム

自分が感じていることを書いてみます。
そのあとに最近BR$50→$10000challengeをやっているトッププロのCharlie Carrelさんの動画をみていこうと思います。

まず、マイクロステークスのほとんどのプレイヤーはGTOから大きく乖離しておりどのプレイヤーも大きく搾取可能です。
バックドアフラッシュドローなんてほとんど気にしていない人がほとんどだと思います。
それでも自分は最初は2NLでも勝てませんでした。
もちろん、個別にかなりおかしいプレイヤーからアジャストして搾取することから利益を得ることができますが、ここではマイクロステークスの多くのプレイヤーのリークとそれに対するexploitの方法を述べていきます。

自分の考えるマイクロステークスの特徴、リーク

①マイクロステークスでのベットはかなりバリューによっている。
→特にターン、リバーのCBに関して言えばほとんどバリューベットだと言ってもいいと感じる

②相手のCBにおりすぎている。特にフロップのCB
→ベットするレンジがみんなバリューによっているからかもしれないがCBにおりすぎている

③強いハンドはほとんどバリューベットしている
→バランスが取れていないためしばしばcheckレンジが弱いハンドのみでcapされている

④レイズが少ない
→特にflop以降の3bet、donk betに対するレイズが少ない
→そのためベットにレイズ、ドンクベットに対するレイズが有効(ドンクベットに対しては結構なハンドでレイズしないと相手のドンクを悪手にできない)
→donk betにレイズをほとんどしないため逆に搾取されてしまっている

マイクロステークスのプレイヤーの多くが
flopのベットレンジ>turnからのベットレンジ>リバーからのベットレンジ
のように完全に別れてしまっているように感じる

有効だと感じるexploitative play

①こちらはcheckレンジにもしっかりある程度のエクイティがあるハンドも残す
→ターン、リバーでの相手のマージナルなハンドにブラフも混ぜてレイズで対抗してexploitできる

②相手のベットに対してレイズをある程度利用する
→相手はこちらのレイズに対して3betをしてくることはほとんどないため、特にフロップチェックのリバーやターンからのベットにレイズを頻繁にしてexploitできる
→フロップのdonk betに対してもレイズするレンジを作るのがいいと思う

③ブラインドは頻繁にスチールする
→マイクロステークスではSBvsBBで明らかにBBでfoldしすぎ
→SBでpreflopでルースにスチール&flopで頻繁にCB
piocloudのpreflopsolutions
(1)2.5bbopenの場合
open 46.29%
→raise 75 18.94%, call 55.91%, fold 25.15%
(2)3bbopenの場合
open 45.08%
→raise 90 18.74%, call 43.17%, fold 38.08%
HMの結果
sample数 SB全体で2500なのでだいたい2500*81%*80%*75%*50%=600くらい
small blind steal success 55.7%

④バリューはしっかりとり、しっかり降りる
→相手はある程度強いハンドをおりきれないので相手にもある程度強いハンドが相手のレンジにたくさんあって、自分がナッツ級のハンドを持っているときはしっかりバリューを取り切る
→リバーの大きいベットは強いハンドの割合がGTOより明らかに高いのでしっかり降りる


以下の動画は最近BRchallengeを始めたトッププロのCharlieさんのyoutubeの動画です。
この動画ではマイクロステークス(2NL,5NLzoom)での感想が述べられています。


www.youtube.com


簡単に自分が重要だと思ったところを書いていきます。


The things I’ve noticed about 5NL players is they’re somewhere between the first level of thinking about or what is my hand and the second level of thinking about or what is their hands. But then they’re not quite adjusted to the second level. This is obviously a generalization but this is the key thing that you need to take home with you if you’re gonna be learning the micro stakes. You need to be good at generalization, because when you plan in a zoom pool, and when you’re playing the cash game tables online, you do not know who you’re playing against. It is essentially anonymous you may have some notes on some people, and you may some HUD stats some other people but I would recommend turning off that HUD while you’re earning at 2 or 5 NL.

5NLのプレイヤーは第一段階である自分のハンドについての思案をするレベルと第二段階の相手の持っているハンドについての思案を行うレベルの間のどこかにいるだろう。
しかし彼らのほとんどが第二段階のレベルに達していない。
これは大まかに一般化してしまっているが、マイクロステークになれるにはこのような一般化はあなたが身につけるべき要点である。
zoomのプレイヤーはほとんど相手の情報が得られないのでこのような一般化を得意にすることが必要なのである。
2NL,5NLのプレイ中はHUDを表示させないことをオススメする。

中略...

So, what is the adjustment that you can do if you realize that people are kind of like bluffing with value like with made hands but not value hands. The thing I started doing is REbluffing, because they’re not there in the Bluff mindset they’re not gonna hero call once you raise them, and there was this one hand where I had ten high on a double pair board and I was like I’m pretty sure he’s bluffing but I’m scared he’s bluffing with King high, so instead of just calling like a word against like a reasonable player that knows rages that I think’s bluffing, I raised and guys pause your video here I have to ask question what size would you raised it was… correct! you would raise to the minimum because you want to get the cheapest price to be right about how you’re bluffing and this is just one example of many many many examples like I said don’t just write down minraise, when you think they’re bluffing.
This is something that you need to come and bring into your mind.

そしてもしあなたが、zoomのプレイヤーがバリューハンドではないがある程度のバリューがあるハンドでブラフするようなプレイヤーだとわかったら何がそれにアジャストする戦略だろうか。
私が始めたことはブラフし返すことである。なぜなら彼らは一旦レイズされるとヒーローコールしようとしないブラフのマインドセットだからである。
一つの例として自分がTハイを持っており、ボードに2つのペアが出来上がった時があげられる。
私は相手がブラフをしてきているだろうと考えたが、彼がKハイなどでブラフしていることが怖い時、私がブラフを考えているレンジをわかっている合理的なプレイヤー相手の時のようにただコールするのではなく、私はレイズするのである。
みんなにもこのビデオを止めてどのくらいレイズするのがいいか考えてほしい。
その通り!相手を下ろすために最も安くすむミニマムレイズするのが良い。
これは多くの例の中のほんの一例である。
このような考え方があなたにも必要なのだ。

中略...

and then branch out your knowledge of poker because there are so many little things like that there are hundreds and hundreds and hundreds of things that you can learn little tricks that you can learn. But instead of having to rely on someone else to spoon feed you that information. You want to be the kind of person that can go home think about it yourself!

but the one thing that I would say is that make a decision be firm about it if you’re gonna become a professional poker player.

簡易化したリバーのGTOに関しての考察③

どうもこんにちは
今回は過去2回の内容を踏まえて考察していこうと思います。

検証するモデルは
OOP,IPのレンジは[0.1]
potが1、ベットサイズ1
OOPは強制check,OOPはcheck-raiseできない
IPはpotbetのみ
というモデルです。

これらのGTO解については
簡易化したリバーのGTOに関しての考察①
簡易化したリバーのGTOに関しての考察②
をご覧ください

③そのモデルの結果について考察していこうと思います。

ここでは
(1)GTOの特性について
(2)ポットベットに半分より多くのハンドをおりていることについて
の2点を考えていこうと思います。

(1)GTOの特性について

まず、今考えているのはポットベットなのでOOPは1/3の勝率があればcallできます。

実際IPがベットするレンジのうちバリューベット:ブラフベットの比が2:1になっておりOOPのブラフキャッチのレンジ(IPのバリューベットをするレンジには勝っていて、ブラフベットをするレンジには勝っているレンジ)はIPがGTOならばcallしてもfoldしても同じEVです。

この例からもわかるようにGTOは必ずしも一種類の解ではなく、複数存在していることが可能なのです。
また、戦略が有限のゲームにはナッシュ均衡すなわちGTOが必ず存在することが証明されています。


OOPのcall rangeを再掲します。

f:id:takoagemat:20180817185639p:plain
OOP call range


OOPのcall rangには84sまでかなり少ない割合ではありますがGTOはcallしています。
84sでcallするならQハイでfoldしている分をcallした方がいいのではと感じますが、84sでcallしてもこれはGTOであるため、相手はこれをリークとして搾取するのは無理だということです。

実際、混合戦略をとっているハンドはどちらの戦略でも期待値が変わらない選択肢であるのが下の画像からも確認できます。

f:id:takoagemat:20180818034356p:plain

しかしだからといってcall rangeをこれらの混合戦略をとっているハンドのうちどのように選択してもいいわけではありません。

例えばcallする割合を変えずにこのようにOOPのcall rangeを固定して最適戦略を計算し直します。(piosolverのnodelockの機能を使います。)

f:id:takoagemat:20180818040154p:plain
OOP call rage変更


するとIPのベットレンジは以下のようになり、かなりベットする割合が大きくなっています。

f:id:takoagemat:20180818040157p:plain
IPのbet range変更

さらにEVは22.846になっており、先ほどの22.221より大きくなっています。

OOPのコールレンジの偏りによって、OOPが搾取されてしまっているのです。

いかがでしょうか。実際のpokerでのflopからの計算結果をどのように体系化してプレイ方法を学ぶのか難しく自分にもわかりません笑

(2)GTOがpotbetに半分以上のハンドを降りている件について


自分がポーカーを始めた時は、potbetに半分以上降りてくれるならばベットした方がいいのかと思っていました汗
だって半分以上降りてくれるならそれだけでプラスEVじゃんって感じで笑

しかしポーカーはそんな単純じゃありませんでした笑
エクイティが0のハンドは確かにそうなのですが、自分が強いハンドを持っている時はコールしてもらった方が利益に繋がります。

じゃあもしOOPがレンジの上位半分のハンドをコールするならどのように搾取できるのかをpiosolverで計算してみようと思います。

その結果がこちらです。

f:id:takoagemat:20180819161826p:plain
OOPが上位半分をコースする時のIPの最適ベットレンジ

この結果を見てみるとIPはバリューベットのみをしていて全くブラフをしていないことがわかります。

冷静に考えてみると当たり前ですよね。
ブラフしても半分の確率でcallされてしまうのでブラフした時のEVは0なのに対し、ブラフしなければ多少のエクイティがあるのでEVはプラスです。

f:id:takoagemat:20180819162053p:plain
IPのbetとcheckのEV差


IPのEVが22.5になっており、GTOの時の22.221より大きくなっているのでOOPがレンジの半分をコールしたことで搾取されてしまっているがわかります。

OOPがレンジの上位半分をコールしている時に、IPとしてはもしGTO通りのプレイをしているとEVが22.221で相手がGTOの時と変わりませんが、搾取的にブラフをしないでバリューレンジを少し広げることでEVを22.5にあげることができます。


OOPはIPがバリューベットによる利益とブラフによる利益を最小にするためにはポットベットにも半分より多くのハンドをfoldしていいということがですね。

直感的にはこの面積を小さくするということです多分

f:id:takoagemat:20180818015232p:plain


左の紫の面積がバリューベットによるIPの利益、右の緑の面積がブラフベットによるIPの利益です。


ここまで読んでくれた方はありがとうございます。
書いた甲斐があったと思います。間違っている可能性も大いにあります。
気軽にコメントなどお待ちしてます。

簡易化したリバーのGTOに関しての考察②

どうもこんにちは

今回は前回の記事を踏まえて、piosolverを用いて検証していきます。

検証するモデルは
OOP,IPのレンジは[0.1]
potが1、ベットサイズ1
OOPは強制check,OOPはcheck-raiseできない
IPはpotbetのみ
というモデルです。

②piosolverでもGTOを解いてみる

この結果をpiosolverでも解いてみます。
これはリバーのみの計算なのでpiosolverの無料版でもできるはずなので興味がありましたらpiosolverを持っていない方でもご自分でもやってみることをお勧めします。

board AAA23r
range OOP IPともに KQs-64s

f:id:takoagemat:20180817185641p:plain

のように設定します。

こうすることで44種類の強さのハンドで同様のレンジをOOP,IPともにもち、簡易的に[0,1]gameの再現ができます。(勝手に@maspy_starsさんの知恵をパクりました笑)

ちなみにリバーのみの計算はpiosolverではすぐ終わります笑

計算結果は以下のようになります。

IPのベットレンジ

f:id:takoagemat:20180817185633p:plain
IPのベットレンジ

この結果からベットレンジは34.08%であり、大体バリューベットを上位2/9のハンドで、ブラフハンドを上位1/9のハンドでしていることがわかります。
誤差は選択しているレンジが44段階で離散的だからだと考えられます。

OOPのコールレンジ

f:id:takoagemat:20180817185639p:plain
OOPのコールレンジ



この結果から43.85%をcallしており、ほぼ4/9=44%と一致することがわかります。

また以下からもバリューベット:ブラフベットの頻度が2:1になっていることが確認できると思います。

f:id:takoagemat:20180817223009p:plain

右下のベットレンジのEquityのグラフをご覧いただけるとわかりやすいかと思います。

ちなみにEVはpot40で
OOP 17.779
IP 22.221
となっており

 \frac{2.221}{40} \fallingdotseq \frac{1}{18} になっていることが確認できます。

次回はこの結果について深掘りして考察していきたいと思います。