※ChatGPT画伯作、”A poker player in a Texas Hold’em game, suspiciously eyeing their opponent, trying to detect a bluff.”
プリフロップにおけるハンドレンジ
大抵のポーカーの本では、初心者はプリフロップにおいてエントリーしすぎており、VPIPが20%ぐらいになるようにハンドレンジを絞れということが主張される。実際に、筆者がやっているゲームではVPIPが60%ぐらいのプレイヤーが多い気がしている。ポーカーの本の主張が正しければ、VPIPが20%ぐらいになるようにハンドレンジを絞れば、これらのプレイヤーに対して優位に立つことができるということになる。多くのプレイヤーがなぜそれをやらないかというと、この主張が信用されていないか、実は正しくない可能性もあるだろう。そのため、前回のVPIP毎のハンドレンジ表を使ってモンテカルロシミュレーションを行うことでこの主張の妥当性を検証してみようではないかというのが本稿の趣旨である。
ルールの簡略化
実際のテキサスホールデムでは、プリフロップ以降もフロップ、ターン、リバーの意思決定があるため、プリフロップの選択だけで勝敗が決まるわけではないのであるが、これを扱うのは現状困難であるように感じる。そのため、プリフロップで残ったプレイヤーはそれ以降のラウンドですべてチェックをするという前提を置いて、勝敗やチップの配分を決定することにする。
また、4ベットや5ベットまで考えるとルースなプレイヤーはほぼすべてフォールドに追いやられるため、すべての手札について5ベットすべきみたいな結論が出てきてしまう可能性がある。そのため、検証をする際は3ベットがオールインに相当するものと仮定する。具体的には、ブラインドを10/20と仮定し、各プレイヤーはチップを180ずつ持っているものと仮定する。1ベットでは20、2ベットでは60、3ベットでは180に固定でレイズするものとする(アンティがあると仮定する場合は180+アンティをスタックとする)。
この仮定の下で、様々なハンドレンジを持つプレイヤー間で競争させたときの期待値をモンテカルロシミュレーションで計算すれば、どのレンジでプレイするプレイヤーに優位性があるか検証することができるだろう。ポジションによる差異をなくすため、シミュレーション時はディーラーボタンはプレイヤー間で順番に回すものとする。
設定例
実際の検証プログラムはプリフロップの戦略について、ある程度任意に設定できるようにするが、各プレイヤータイプで大体以下のように設定すればイメージが合うだろうと推測する。1%,2人はAA,KK,QQだけというハンドレンジを表す。
3bet/3bet | 2bet/3bet | 2bet/2bet | 1bet/2bet | Fold | |
---|---|---|---|---|---|
ルース パッシブ | 1%, 2人 | 10%, 2人 | 20%, 2人 | 66%, 6人 | 左記以外 |
ルース アグレッシブ | 10%, 2人 | 20%, 2人 | 66%, 6人 | なし | 左記以外 |
タイト パッシブ | 1%, 2人 | 10%, 2人 | 20%, 2人 | なし | 左記以外 |
タイト アグレッシブ | 10%, 2人 | 20%, 2人 | なし | なし | 左記以外 |
筆者が興味を持っているのは、自分以外のプレイヤーが全員ルースパッシブなプレイヤーである場合に、タイトアグレッシブにプレイしたら、果たして優位にプレイできるかということである。もう一つは、これらのプレイヤータイプが混ざっている場合においても、タイトアグレッシブな設定が優位性を持つかということである。ナッシュ均衡戦略(そもそもその通りの戦略をコピーできるプレイヤーは多くないだろう)とは異なり、固定された戦略であるが、現実にはほとんどのプレイヤーは自分の好みのスタイルでプレイしていると考えられるため、アマチュアのプレイヤーが使うにはより参考になるのではないだろうか。
結果
一応、実装してみたのであるが、筆者の実装が悪いのか、このようなモンテカルロシミュレーションをjavascriptで実装することにそもそも無理があったのか、計算が非常に重い。1万回のシミュレーションで30秒から1分ぐらいかかるし、1万回のシミュレーションでは収束したとは言い難い結果しか得られていない。それでも、一定の傾向は見て取れるので、結果に関する考察を簡略的に説明しよう。
試してみる実験としては
- タイトアグレッシブ1人 vs. ルースパッシブ5人
- タイトアグレッシブ1人 vs. ルースアグレッシブ5人
- ルースアグレッシブ1人 vs. ルースパッシブ5人
で、アンティを0, 5 (0.25bb), 10 (0.5bb)と設定した場合について、期待値を計算しよう。ここでのアンティはポットの投入される強制参加費であり、勝者が受け取ることができる形式のものと仮定する。アンティが0の場合はそれぞれ
- タイトアグレッシブのプレイヤーが+15bb/100 gameぐらい有利な期待値を持っている。
- タイトアグレッシブのプレイヤーが+20bb/100 gameぐらい有利な期待値を持っている。
- ルースアグレッシブのプレイヤーが+7bb/100 gameぐらい有利な期待値を持っている。
という結果になった。総じて、タイトアグレッシブの期待値が一番高いようであり、ポーカーの教科書の主張は間違いではないということになる。プリフロップでベットが終わっているため、利益が小さいように見えるかもしれないが、実際はフロップ以降に賭け金が何倍にもなるため、100~200bb/100 gameぐらいプラスであるかもしれないことに注意しておく。
しかし、アンティがある場合はこの結果は大分様相が異なる。アンティが5 (0.25bb) ある場合の結果は以下の通りである。
- タイトアグレッシブとルースパッシブで期待値はあまり変わらない。
- タイトアグレッシブとルースアグレッシブで期待値はあまり変わらない。
- ルースアグレッシブのプレイヤーが+7bb/100 gameぐらい有利な期待値を持っている。
この場合は、タイトアグレッシブはルースパッシブとルースアグレッシブに負けないものの、ルースアグレッシブが最も優位性のあるプレイスタイルということになるかもしれない。アンティを10 (0.5bb) にすると、タイトにするメリットが全く無くタイトアグレッシブはルースパッシブにも負けるという結果になる。もちろん、これはプリフロップ終了時点の期待値であり、フロップ以降ベットを吊り上げればアンティの影響は薄れる傾向があるかもしれない。しかし、手札の価値はフロップでドラスティックに変わるし、滑っていればフォールドすることもできるので、タイトアグレッシブの優位性がなくなっている可能性も相応にあるということになるだろう。
実をいうと、筆者がプレイしているゲームは0.25bbのアンティがついており、これが原因でタイトアグレッシブがあまり強くない印象を受けてしまっているのかもしれない。ゲームのルール設計がルースなプレイヤーに有利になっており、結果としてルースアグレッシブが最も有利なプレイスタイルになっている可能性がある。VPIPが60%近いプレイヤーが大多数となってしまっている原因は、参加者が初心者ばかりでタイトにプレイできないというより、ゲームのルールがルースなプレイヤーに有利になるように設計されているだけなのかもしれない。
また、10000回のシミュレーションでも収束しない(設定例の1.の+15bb/100 game でもマイナスになる場合がある)ということは、現実のプレイでも10000回プレイしてプラスの期待値に相当する利益を全く獲得できない可能性もあるということである。忍耐してタイトにプレイしてもその利益を実感として得ることが難しい場合もあるかもしれないということで、VPIPを20%ぐらいにしろといくら主張しても、聞く耳を持たない人たちが多数いるのは相応に理由があるのかもしれない。
おまけ
実装したプログラムを一応置いておく。計算が重いし、収束もなかなかしないので何回か繰り返さないと筆者の主張を見て取ることが難しいかもしれないことに注意しておく。