maspy

Poker について GTO Theory / PioSOLVER / プログラミン…

maspy

Poker について GTO Theory / PioSOLVER / プログラミング のことなどを書いていこうと思います. 直接的に上達に役立てて欲しい記事を書くときもあれば, 直接的には役に立ちにくい抽象論やネタ記事を書くときもあると思います.

マガジン

  • PioSOLVER Tips

    PioSOLVERを隅々まで使いこなすための情報をまとめています。 PioSOLVER Proを前提としています。

最近の記事

preflop rangeの分析

HU BTN(SB) open raise → BB call BBには、3-betの機会を見送ってcallで止めたため、preflopで強いハンドが少なくなっているでしょう。 では実際にどのようなflopがBTNに望ましいのか、答えられますか? ・AKQなどの高い数字が落ちるほどBTNはうれしい ・432などの低い数字が落ちるほどBBはうれしい みたいな単純化をしちゃっていませんか?単純化しすぎず、もうちょっと真面目にレンジと向き合ってみることにします。 ーーーーー

    • solverを用いたpokerの学習について

      「何をどう学習するのがベスト」というのは、目指すところや、pokerに使えるエネルギー・時間などによっても正解が変わってくる問題でしょうし、そもそも誰一人正解が分かっていない問題でしょう。色んなことを言う人が居て、それぞれ参考になるところがあると思います。 今回の内容も、一般的に普及していて成功の確度が高い何か、というよりも、私の自己流を大いに含む話なので、そのつもりで読んでもらえればと思います。 ---------- GTO solverを活用して、何をどのように学習

      • PioSOLVER:計算コストについて

        本記事では ・計算に必要なメモリ ・計算にかかる時間 のことをまとめて計算コストと呼ぶこととします。Treeの設定と計算コストの関係について、いくつか重要だと思う部分を解説します。 ーーーーーーーーーー ■ボードによる違い(同型の影響)pokerのハンドは1326種ありますが,例えばFlopが As Ks Qs の場合 ・[3s2c, 3s2d, 3s2c] ・[3c2s, 3d2s, 3h2s], ・[3c2d, 3c2h, 3d2c, 3d2h, 3h2c, 3h2

        • PioSOLVER:全ノードまとめて集合分析

          複数ボードについて戦略頻度を一括で見たい場合に,集合分析レポート(aggregation report)を用いるのはよく知られています. 「Flopで~」「Turnで~」など,調べたいノードが変わるたびに1から集合分析を実行する必要があり,面倒に感じる場合がありますよね. そこで今回は,あらゆるノードでの戦略頻度を一気に集計する方法を解説します. ---------- Solverコマンドの「show_all_freqs」を用いると,全てのノードの発生頻度を一気に取得で

        preflop rangeの分析

        マガジン

        • PioSOLVER Tips
          9本

        記事

          Theory:Nash均衡とGTO

          ■1. Nash均衡の定義と性質(3人以上の場合)まずはNash均衡の定義を確認しましょう。 (1) Nash均衡は戦略の組 (strategy profile)に対して定義される。したがって、「この戦略はNash均衡戦略である」というような表現は誤り。 (2) Nash均衡は一般に、複数(無限個)存在する。 したがって「xxxはNash均衡である」という表現は適切であっても、 「Nash均衡はxxxである」という表現は不適切な場合がある。 (3) nが3以上のとき、各

          Theory:Nash均衡とGTO

          PioSOLVER、scripting:preflop only gameをscriptでまとめて解く

          私のnoteにおいて以前紹介したように、PioSOLVERではpreflop only gameの計算も簡単に行えます。 PioSOLVER:preflop only gameの計算 https://note.mu/maspy_stars/n/nde56df008b4a 私はこの機能を、自分のpreflop のrange(2-bet, 3-betなど)がall-inを受けた場合の対応の確認などに利用しています。 さまざまなeffective stackに対する対処を一気

          PioSOLVER、scripting:preflop only gameをscriptでまとめて解く

          PioSOLVER:preflop only gameの計算

          「PioSOLVERではpreflopの計算にはedge版が必要」というのを 私も聞いたことがありますが、これは正確ではありません。 「preflop → flop → turn → river」の4-streetsからなるgameについてはedgeが必要です(メモリや計算時間などの計算コストは高くなるようです)。しかしながら、「flop以降ではアクションをしてはいけない」と仮定した、 preflop only gameについてはPro版でも解くことができます。 例えば次

          PioSOLVER:preflop only gameの計算

          PioSOLVER、scripting:複数ツリーをまとめて計算するスクリプト

          GTO Solverを勉強に取り入れる場合、避けて通れないのがSolverの実行待ちの時間です。 我々の就寝時間や就業時間にSolverに働いてもらって、なるべく待機時間なしで座学に取り組むことで、Quality Of Lifeを向上させましょう。 計算したい状況(レンジ, bet size)が 決まっている場合tree設定を入力したあとで、「generate script」タグを開きます。 あとは計算したいflopや保存先ディレクトリを設定したあとで、 「script

          PioSOLVER、scripting:複数ツリーをまとめて計算するスクリプト

          PioSOLVER:ライセンスキーの無効化・有効化

          これまで パソコンA でPioSOLVERを使用していたとします。 これを パソコンB で使う場合には、次の手順をとります。 パソコンAの設定(無効化)solver commandの「deactivate」を実行すればよいです。例えば PioViewer.exe -> Tools -> Run Arbitrary Solver Command として、コマンドを入力しましょう。【注1】 パソコンBの設定(有効化)PioViewer.exeを起動すると、ライセンスキーの入力

          PioSOLVER:ライセンスキーの無効化・有効化

          PioSOLVER:ベンチマーク

          環境差によるPioSOLVERの動作速度の性能評価などの比較をしたい場合。 「bench」コマンドにより、適当な条件の計算時間を評価してくれます (2.7GBのtreeを作って 6 iteration するのにかかる時間)。 PioSOLVERのコマンドは、「PioSOLVER-pro.exe」から直接実行するか、または「PioViewer.exe」から「Tools -> Run Arbitrary Solver Command」から実行するという方法があります。

          PioSOLVER:ベンチマーク

          PioSOLVER, Python:全flopの一覧の作成

          ・flopは全部で 52C3 = 22100 個存在する。 ・AsKcQd と AsKdQc みたいな実質同じものをまとめると、1755種類にまで減ります。【注1】 この1755種類の一覧を作成したい場合、PioViwer.exe の generate script から、generate random 22100 flops を実行するのが便利です。 折角なので、A-highだけ、pair boardだけなどの条件をつけて抽出できるように、pythonで加工してみます。

          PioSOLVER, Python:全flopの一覧の作成

          PioSOLVER:treeの大きさの変更

          PioSOLVERでは、treeを3種類の大きさで保存することができます。 小さいtreeでセーブしなおしたい場合作ってみたtreeが大きすぎて、ドライブを圧迫してしまう場合などでしょうか。treeを読み込み、小さいサイズで保存しなおすようなscriptを書いてあげれば解決します。 script.txtの作成は、例えば 複数ツリーをまとめて計算するスクリプトhttps://note.mu/maspy_stars/n/nfe43d2baf4a5 のpythonコードを参考に

          PioSOLVER:treeの大きさの変更

          Quiz:AAの神様の問題の解説(付録)

          Quiz:AAの神様の問題の解説(https://note.mu/maspy_stars/n/n7c4140ce22aa/) の付録となります。 ■1.シンプルな別解■私はAAを使わない解法を模索した結果、なかなか大変な解法になってしまっていました。AAを使うことで簡潔に神様に勝ち越す別解を寄せていただきました。ありがとうございます。 超deepであるため、flopではこちらのEQが50.001%でもあれば神様はcallできません。基本的に50%が確保できるAAに、わずか

          Quiz:AAの神様の問題の解説(付録)

          Quiz:AAの神様の問題の解説

          こちらの問題について、私が用意していた答を解説を行います。 また、失敗例についても簡単に解説を加えています。 正答は、「可能」となります。以下、神様を倒す戦略を説明していきます。 また、プレイヤーを指す言葉として、「我々」「神様」という表現を用いることにします。 私の解法は、自分のハンドとしてAAを利用せずに勝利する方法になります。 (下剋上という意識もあり、最初からその前提で考察をしていました。) AAを利用する別解については ーーーーーー を参照してください。 ■1

          Quiz:AAの神様の問題の解説

          Theory:急なALL-INへの対応

              自分:3bb open from BTN     相手:100bb All-IN from BB 頻出ではありませんが, 多くの人が経験する典型的な状況のひとつだと思います. このようなBBのプレイはGTO理論上は誤りで, どのようなhandを持っている場合でもこのプレイングによりEVを下げてしまうことになります (BTNが適切に対処する前提です). ・BTNはどのような対処をするのがGTOでは正しいのか? ・本当にBBのプレイはどのようなhandの場合でもE

          Theory:急なALL-INへの対応