技術文章ゲーム・パズル関係


 

 

ポーカー期待値
Nobuhide Tsuda
Apr-2014

コールすべきか、ドロップ(ベットから降りること)すべきか?

2人でポーカーを行っている場合

既に C だけコールしていて、相手が R レイズし、コールするかドロップするかを決めるにはどうしたらいいのか。
自分が勝つ確率を p(負ける確率は 1-p)とすると、勝った場合の利益は (C+R), 負けた場合は -(C+R) なので、 期待値 Exp は (C+R)*p - (C+R)*(1-p) = 2*(C+R)*p - (C+R) となる。
ドロップした場合は、-C の損が確定するので、コールすべきかどうかは、期待値が -C 以上かどうかで判定できる。

(C+R)*p - (C+R)*(1-p) ≧ -C

2*(C+R)*p ≧ R

p ≧ R / (2*(C+R))

となる。

一番最初に相手が R レイズした来た場合は、C はゼロなので、勝つ確率 p が R / (2*R) = 1/2 より大きければコールした方がよく、1/2 より小さい場合はドロップ(降りる)した方がよい、というしごく当たり前のことになる。

既に 1000 だけコールし、相手が 2000 レイズしてきた場合は、勝つ確率 p が 2000 / (2 * (2000+1000)) = 1/3 より大きければコール、1/3 より小さければドロップした方がよい、ということになる。
勝つ確率のしきい値が 1/2 ではないことに注意して欲しい。単純に降りると既にコールしている分の損が確定してしまうので、 少しくらい勝つ確率が低くても、コールした方が損益の期待値が大きくなるということだ。
どの程度まで確率が低くてもコールした方がよいかは、これまでにコールしてきた金額とレイズ金額で決まる。 既に 2000 コールしてて、相手が 2000 レイズして来た場合は、2000 / (2*(2000+2000)) = 1/4 となる。 すなわち、既に投資(コール)している金額の割合が大きければ大きいほど、少しくらい不利でも勝負に行った方がよい、ということだ。

N人でポーカーを行っている場合

前節は2人でベットをしている場合の話だったが、N人になるとどうであろうか。
この場合は p ≧ R / (N*(C+R)) となる。

最初のコールの場合は、勝つ確率 p が 1/N より大きければコール、小さければドロップした方がよいということになる。
同じような手役であれば、相手の人数が多いほど、勝つ確率は下がるので、至極もっともな話である。

既に何人かがドロップしている場合

既に何人かがドロップし、彼らの掛け金が F とする。残っているのが N 人とすれば、 勝つ確率 p のしきい値は R / (N*(C+R) + F) となる。F が大きいほど、確率的に不利でもコールした方がよい、ということだ。

レイズすべきか

前章では、コールかドロップしか考えなかったが、レイズすべきか?レイズするとすればどの程度レイズすべきかを考えてみよう。

コールした場合の期待値 exp = (N*C+F)*p - C

R だけレイズした場合の期待し expR = (N*(C+R)+F)*p - (C+R)

expR - exp = (N*p - 1)*R

よって、N人残っている場合、勝つ確率が 1/N より大きければレイズした方が、1/N より小さければレイズしない方がよい、ということになる。
勝つ確率が 1/N より大きければ、R が大きければ大きいほど損益期待値は増大するが、負けた場合のダメージが大きくなるので、その分危険性も増す。
実際にどれだけレイズするかは残りのチップ数などの状況に依存するので、期待値だけで判断することは出来ない。

まとめ

基本的には損益の期待値を最大化するのが優れた戦略だと考えられる。