見出し画像

(分析家向け)ボードファクターの分類におけるExcelの計算式について

1.ボードストラクチャの分類例

ポーカーにおいて、ボードに並んだトランプは、そのストラクチャーによって様々な呼ばれ方をします。
ポーカープロたちは、ボードストラクチャーをどう呼び、どのように評価していたか?

主な例として、下記のようなものがあります。

①フィル・ゴードン「ドライ」VS「ウェット」

フィル・ゴードンは、カードが噛み合っておらず、ドローが少ないボードを「ドライ」、フラッシュドローやコネクタがあり、ドローヘビーなボードを「ウェット」と大きく分類しています。

「コール側のドローハンドに代償を払わせるため、オリジナルはウェットなボードほど高く打つべき」とフィル・ゴードンは述べています。

②エド・ミラー「スタティック」VS「ダイナミック」

エド・ミラーは、フロップからリバーにかけてハンドの強弱が変化しにくいボードを「スタティック」、様々なドローによって目まぐるしくハンドの強弱が変わるボードを「ダイナミック」と分類しています。

「スタティックなボードほどオリジナルは少ないバレルで相手を降ろしやすく、ダイナミックになるほどバレルの回数は増え、ポットが大きくなりやすい」とエド・ミラーは述べています。


ポーカープロの定説の真偽は別に判断するとして、こうしたボードテクスチャの分類は、プレイヤーがアクションを判断するときに多いに助けとなります。

「ボードがウェットまたはダイナミックか?」を判断する大事な要素として、1つにスートによるもの(レインボー、ツートーン、モノトーン)と、もう1つにコネクションによるもの(ガット、コネクタ、ストレートコンボがあるボードなど)があります。

ウェットやダイナミックを構成する「スート」と「コネクション」のボードファクターは、果たしてプレイヤーのEQやアクションに対して、どれほどの影響を持っているのでしょう?

こうしたボードファクターが与えるEQやアクションへの影響力を定量分析し、先人たちの定説を改めて正しいのか検証します。

今回の記事は、その前段階として「ボードファクターの分類方法」について取り上げるとともに、これからGTOで分析される方向けに、普段使っているExcel計算式を書いてみます。
参考になれば幸いです。

また、分析用の計算式は全て試行錯誤で作っているので、もっと簡単にできるよ!という方法があれば、是非教えてください!
特に、新たなボードファクターのご提案は積極的に募集しています。

2.GTO+によるテキスト出力

まず、GTO+で出力される計算結果では、ボードはこんな形で出てきます。
(出力方法については、過去記事をご参考ください。)

データは[AdAcQh]、[AdTdAs]…と並んでいるテキストファイルです。

これをエクセルに全て貼り付けます。
項目はかわいく色とりどりにしました。

この[AdAcQh]、[AdTdAs]…といった形で出力されているボードについて、ボードファクターの該当の有無を導出する計算式を付けていきます。

3.スート判定用計算式

スートの判定方法はシンプルです。
例えば下図のC4セル[AdAcQh]であれば、2・4・6文字目の「d,c,h,s」で重複が無いかを調べます。

後の回帰分析用にダミー変数として設定しているので、該当する場合は1、該当しない場合は0を出力するような計算式としています。

●レインボー:2文字目≠4文字目かつ4文字目≠6文字目
=IF(OR(MID(C4,2,1)=MID(C4,4,1),MID(C4,4,1)=MID(C4,6,1)),0,1)
●ツートーン:「2文字目=4文字目または4文字目=6文字目」かつモノトーンでない
=IF(AND(OR(MID(C4,2,1)=MID(C4,4,1),MID(C4,4,1)=MID(C4,6,1)),O4=0),1,0)
●モノトーン:2文字目=4文字目かつ4文字目=6文字目
=IF(AND(MID(C4,2,1)=MID(C4,4,1),MID(C4,4,1)=MID(C4,6,1)),1,0)

ちなみに、ペアボードの判定式も同様に、2・4・6文字目で判定していた重複を1・3・5文字目(カードナンバー)に当てはめるだけです。

以上の式によって、全てのボードをレインボー・ツートーン・モノトーンのどれかに分類することができます。

4.コネクション判定用計算式

ボードのコネクションについて、コネクタ・ガット・ストレートコンボの有無といったコネクションを判定します。

しかし、GTO+で出力されてくるボードには、数字だけでなく[AdAcQh]といったピクチャーも混ざっています。

そのため、前段階として「T=10」「J=11」…といった数値の当てはめ(VLOOKUP関数)が必要になります。

VLOOKUP関数で使えるように、下図のようにピクチャーを変換するためのデータセットを準備します。
(AはKより大きい「14」としてTJQKAストレートを作ることもあれば、2より小さい「1」としてA2345ストレートを作ることもあります。
実践では「14」として認識することが殆どなので、下図の左パターンのみでも十分有用ですが、「1」として認識する右パターンをOR式で判定式に加えると、ストレートコンボやコネクタ条件を拾いやすくなります。)

参照するデータを作ったら、各カードを数値に変換します。

●カードの数値化(R~T列):"ラベル"シートから数値を出力
1枚目:=VLOOKUP(MID(C4,1,1),'ラベル'!A:B,2,false)
2枚目:=VLOOKUP(MID(C4,3,1),'ラベル'!A:B,2,false)
3枚目:=VLOOKUP(MID(C4,5,1),'ラベル'!A:B,2,false)
●カードの並び替え(ハイカード順)
1st:=MAX(R4:T4)
2nd:=LARGE(R4:T4,2)
3rd:=MIN(R4:T4)

数値に変換するまでが面倒ですが、後は簡単です。

コネクションの条件ごとに関数を組んでいきます。

ただ、スートの条件式と違って、コネクションの要素は重複しやすい(ストレートコンボ条件とコネクタ条件など、どちらも該当することが多い)ため、最もウェットでより厳しい条件から該当を選んでいくような計算式にしています。
(イメージとしては、全てのボードで最もウェットな条件に引っかかったものから「1」とし、残ったボードに段々とドライにした条件を繰り返し当てはめていく感じです。)

<3枚ウェット>
●ストレート条件(3連):ペアボードでないかつ最大値-最小値=2
=IF(AND(P4=0,MAX(U4:W4)-MIN(U4:W4)=2),1,0)
●ストレート条件(それ以外):ペアボードでないかつストレート(3連)でないかつ最大値-最小<5
=IF(AND(P4=0,X4=0, MAX(U4:W4)-MIN(U4:W4)<5),1,0)
※ストレート条件とは、フロップの3枚でストレートを作るコンボが存在することを意味しています。

<2枚ウェット>
●コネクタ:上の条件に当てはまらない、1st-2nd=1または2nd-3rd=1
=IF(AND(SUM(X4:Y4)=0,OR(U4-V4=1,V4-W4=1)),1,0)
●1ギャップ:上の条件に当てはまらない、1st-2nd=2または2nd-3rd=2
=IF(AND(SUM(X4:Z4)=0,OR(U4-V4=2,V4-W4=2)),1,0)
●2ギャップ:上の条件に当てはまらない、1st-2nd=3または2nd-3rd=3
=IF(AND(SUM(X4:AA4)=0,OR(U4-V4=3,V4-W4=3)),1,0)

<ドライ>
ドライ:上のどの条件に当てはまらない
=IF(SUM(X4:AB4)=0,1,0)

ちなみに、もっと簡易的にウェット・ドライを知りたい場合には、STDEV関数で標準偏差を求めれば、3枚がそれぞれどの程度散らばっているかを指数にすることもできます。

また、参考ですが、先のとおりAを「2」とした場合を含むストレート条件式は、下図のようになります。
先の1st~3rd導出の一連を1つのセルで済むような計算式で組んでいるので、ぱっと見はかなり長いですが、やっていることはOR関数で2つのストレート条件式(A=14,A=1)のどちらかに該当したものを1としているだけです。


5.今後の検証

今回の記事は、GTOソフトを使った分析家向けに、現状使っている計算式を紹介したものでした。

ボードをこうしたボードファクターごとに分類することによって、集合分析したボードたちの共通点を知ることができます。
その結果、例えば「モノトーンボードの時のCB率は、レインボーの時に比べて約半分になる」「ストレートコンボが存在するボードではCB率が約20%落ちる」といった、統計とGTOに基づいた一般的な理論を導くことができます。

次回の記事では、冒頭で触れた先人たちが残した定説について、上記のボードファクターを使った回帰分析で検証しようと思います。


基本無料・無課金制NOTEです。 ご連絡はTwitter@NENDERS_Pokerまで。