Probability CoefficientによるDrawing Oddsの近似計算

以下では、THE SCIENCE OF POKER by Dr. Mahmood N. MahmoodにおいてProbability Coefficientと名付けられているDrawing Odds(手役完成確率)の簡易計算法について、さまざまな角度から分析してみることにします。

以下がProbability Coefficientです。

局面Probability Coefficient
Flop0.040または4%
Turn0.022または2.2%
River0.04または4%

それぞれの局面において、あなたが待ち望んでいるカードが1枚現れることで、showdown時点で手札が改善する確率の近似値をProbability Coefficient×OUTSとして求めることができます。例えば、Flopで9 outsのFlush DrawならDrawing Oddsは0.04×9=0.36で36%になりますが、これは真のDrawing Oddsである35%と極めて近いものです。したがって、Probability Coefficientを覚えておけば、あとは各局面でOutsの数さえわかれば簡単にDrawing Oddsが計算できるわけです。これは便利です

[Probability Coefficientの信頼性]

以下では、このProbability Coefficientによる近似計算が驚くほど成績がよいことを示します。検証の方法として、Drawing odds = F(OUTS)という関係式を想定し、関数Fを統計学的に推定した場合とProbability Coefficientによる近似計算を比較することにします。もともと真のDrawing oddsはOUTSに関する二次曲線ですから、Probability Coefficientのような線形の式では近似に無理があるのは確かです。また、上記のように従属変数が比率・確率のようなカテゴリ変数の場合、通常の線形回帰では(1)確率が0から1までという制約を満たさない、(2)推定値の信頼性が保証されていない、などの問題があります。したがって、理論的には、推計式の左辺(従属変数)を実数値の確率にとって線形回帰を行っても、統計的に信頼できる推定値が得られる保証がありません。このように従属変数がカテゴリ変数の場合、通常LogitあるいはProbit Analysisが使用されます。これらの回帰式は非線形なのでよい精度が期待できそうです。そこで、これらのすべてのモデルで推定量をもとめた上で、当てはまりのよいモデルをさがすという方法をとってみました。もしProbability Coefficientが単純な上に精度がよいとなると、これを利用しない手はないというわけです。 OUTS欄が手札の改善に貢献するカードの数、TRUE欄が真のDrawing odds、LOGIT欄がLogit Analysisで求めた推定値、PROBIT欄がProbit Analysisでもとめた推定値、LINEARが線形回帰でもとめた推定値、SIMPLE欄がProbability Coefficientによる近似値です。

以下の表は、Flopがでた局面でのDrawing Oddsの値です。 LogitProbitともにOUTSが大きい間は当てはまりがよいのですが、低いOUTSではずいぶん乖離が大きくなります。LINEARはずいぶん当てはまりがよく、SIMPLEはOUTSが大きくなると乖離が大きくなるとはいえ、線形回帰とほぼ同様の結果なので、Dr. Mahmood N. Mahmoodは線形回帰の係数から定数項を落として残りの係数をまるめたものと推測されます。線形回帰がこの場合には統計学的には信頼できない方法とはいえ、結果的には非常によく当てはまっています。TurnおよびRiverでもほぼ同様の結果を得ています。通常、10 Outs以上の状況はあまり考えられないことを考慮すれば、10 Outs以下で真のDrawing Oddsに近いProbability Coefficientによる近似値を信頼して使用しても差し支えないと思います。

OUTSTRUELOGITPROBITLINEARSIMPLE
2067.5%71.8%71.7%70.2%80.0%
1965.0%68.6%68.4%66.8%76.0%
1862.4%65.1%64.9%63.5%72.0%
1759.8%61.4%61.2%60.2%68.0%
1657.0%57.6%57.5%56.8%64.0%
1554.1%53.8%53.7%53.5%60.0%
1451.2%49.8%49.9%50.2%56.0%
1348.1%45.9%46.1%46.9%52.0%
1245.0%42.0%42.3%43.5%48.0%
1141.7%38.3%38.5%40.2%44.0%
1038.4%34.6%34.9%36.9%40.0%
935.0%31.1%31.4%33.5%36.0%
831.5%27.9%28.1%30.2%32.0%
727.8%24.8%24.9%26.9%28.0%
624.1%22.0%22.0%23.6%24.0%
520.4%19.4%19.3%20.2%20.0%
416.5%17.1%16.7%16.9%16.0%
312.5%15.0%14.4%13.6%12.0%
28.4%13.1%12.4%10.2%8.0%
14.3%11.4%10.5%6.9%4.0%

推計値をグラフにしてみました。LINEARの当てはまりのよさがよくわかります。Probability Coefficientは、ちょうどTrue drawing oddsの接線のようになっていることがわかります。

[計算式]

上の表の数値は、OUTSの数をW、自然対数をLN、標準正規分布をNDとして、以下の公式でもとめています。LOGITPROBITLINEARはそれぞれ統計ソフトSPSSで推定値を求めました。

1. Flop

TRUE(W÷47)+(W÷46)×[(47−W)÷47]
LOGITLN(P/(1−P)) = −2.20889+0.15728×WをPについて解く
PROBITND(P) = −1.34964+0.09620×WをPについて解く
LINEAR0.03584+0.03329×W
SIMPLE0.04×W

2. Turn

TRUE(W÷46)
LOGITLN(P/(1−P)) = −2.79898+0.13536×WをPについて解く
PROBITND(P) = −1.65278+0.07905×WをPについて解く
LINEAR−0.00010+0.02175×W
SIMPLE0.022×W

3. River

TRUE(W÷45)+(W÷44)×[(45−W)÷45]
LOGITLN(P/(1−P)) = −2.18016+0.16092×WをPについて解く
PROBITND(P) = −0.98935+0.07568×WをPについて解く
LINEAR0.03887+0.03435×W
SIMPLE0.04×W