Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Solver can't go all in if the raise is not atleast 2x the bet #204

Open
jakobGTO opened this issue Nov 15, 2024 · 1 comment
Open

Solver can't go all in if the raise is not atleast 2x the bet #204

jakobGTO opened this issue Nov 15, 2024 · 1 comment

Comments

@jakobGTO
Copy link

Hello, when you give the solver an option to bet a size on the river for which the raise against this size is smaller than 2x the bet (i.e. you bet more than half your stack but not all in), then the solver cannot go all in as a response.

For example on the river, pot is 1000, effective stacks are 500. If OOP bets 270 chips, then the solver does not allow IP to go all-in no matter what betsizes you give him. If however OOP bets 250 chips, then IP is allowed to go all in.

I know the cases you allow a bet larger than half your stack but not all in is quite rare, but something to consider. As in the cases this happens and IP is not allowed to go all in OOP starts having alot of unusual donkbets since its guaranteed to not have to put in more chips.

The parameters i used to see if you can reproduce:

    pot_size = "set_pot 1000"
    effective_stack = "set_effective_stack 500"
    board = "set_board 9s,3s,2d,6c,2c"

    # Define the ranges
    range_ip = (
        "set_range_ip JsJd:0.88,JsJc:0.88,JsJh:0.88,JdJc:0.88,JhJd:0.88,ThTd:0.88,TdTc:0.88,ThTc:0.88,QsQd:0.87,TsTd:0.87,QsQc:0.87,QsQh:0.87,QhQc:0.86,JhJc:0.86,QdQc:0.86,QhQd:0.86,TsTh:0.86,TsTc:0.86,AhAc:0.79,AhAd:0.77,AdAc:0.77,KhKc:0.76,KdKc:0.69,KhKd:0.69,KsKc:0.68,KsKh:0.68,AhQs:0.63,AcQs:0.63,Ad6s:0.61,KcQc:0.57,KhQh:0.57,AsAh:0.56,AsAc:0.55,Ks7c:0.54,Ks7h:0.54,AsAd:0.53,KsKd:0.52,Kd6s:0.47,Kc9h:0.46,Kh9c:0.46,Ks7d:0.45,Kc9d:0.44,Kh9d:0.44,AdQs:0.41,As4h:0.41,As4c:0.41,As5s:0.41,Kd9h:0.4,Kd9c:0.4,Ks9h:0.4,Ks9c:0.39,As4d:0.39,Ks9d:0.38,Js8c:0.36,Js8h:0.36,AhKh:0.35,Ad6h:0.34,Kc7s:0.34,Kh7s:0.34,Ah6s:0.34,Ac6s:0.33,AcKh:0.33,AhKc:0.33,JhTh:0.32,Kh6s:0.32,JcTc:0.32,Kc6s:0.32,Js8d:0.32,As6h:0.31,AcKc:0.31,AhQh:0.29,AcQc:0.28,As6d:0.27,Ks6h:0.25,Kd6h:0.24,Ks8c:0.24,Ks8h:0.24,Ks6d:0.23,Jh8s:0.23,Jc8s:0.23,Td6d:0.22,Ts8h:0.22,Ts8c:0.21,Ts8d:0.21,Kc8s:0.2,AdKh:0.2,As7c:0.2,As7h:0.2,Kh8s:0.19,Qs8c:0.18,Qs8h:0.18,AdKc:0.18,As4s:0.18,As7d:0.18,Qs8d:0.18,Ts6s:0.18,AsQh:0.18,AsQc:0.17,KcJs:0.17,KhJs:0.17,Th4h:0.16,KdJs:0.16,Tc4c:0.16,KdQd:0.15,JdTd:0.15,JdTs:0.15,JhTs:0.15,JcTs:0.15,JsTh:0.14,JsTc:0.14,JsTd:0.14,Kd7c:0.14,Ks8d:0.13,Kd7h:0.13,JdTh:0.13,JdTc:0.13,KdTs:0.13,KcTs:0.13,KhTs:0.13,JhTd:0.12,JcTd:0.12,QdTs:0.11,Th6h:0.11,Jd6d:0.11,QhTs:0.11,QcTs:0.11,KsTd:0.11,Qh8s:0.11,Qc8s:0.11,KcJd:0.1,KsTh:0.1,KsTc:0.1,Kd7s:0.1,QsTh:0.1,QsTc:0.1,KsJh:0.1,KsJc:0.1,KdJh:0.1,KdJc:0.1,Qc9h:0.1,KhJd:0.1,QsTd:0.1,QdTh:0.09,QdTc:0.09,Qh9c:0.09,KcTd:0.09,KhTd:0.09,AdQh:0.09,AdQc:0.09,Qc9d:0.09,Qh9d:0.09,Td4d:0.09,Kh6d:0.08,AhQc:0.08,Kc6d:0.08,AcQh:0.08,Qd9h:0.08,Qd9c:0.08,QhTd:0.08,QcTd:0.08,KdTh:0.08,KdTc:0.08,Ah6d:0.07,Kc7d:0.07,Ac6d:0.07,Kh7d:0.07,Ah2s:0.07,Ac2h:0.07,Kc6h:0.07,7s6s:0.07,Jh8d:0.07,Jc8d:0.07,Ac6h:0.07,Kc7h:0.06,Kh7c:0.06,Th5h:0.06,Ad2h:0.06,Ac2s:0.06,AhQd:0.05,5c4c:0.05,Jh8c:0.05,Jc8h:0.05,Js6s:0.05,Tc5c:0.05,AhKd:0.04,AcQd:0.04,KcJc:0.04,KhJh:0.04,Ad2s:0.04,Td5d:0.04,Ah4s:0.03,AcKd:0.03,JcTh:0.03,JhTc:0.03,Ac7s:0.03,Ah7s:0.03,Ac4s:0.03,5s2s:0.03,3h2h:0.03,Qh8d:0.03,Qc8d:0.03,6s6h:0.02,Jd8c:0.02,Jd8h:0.02,QhJh:0.02,QcJc:0.02,QcTh:0.02,QhTc:0.02,Kc5s:0.02,QdJs:0.02,Qh8c:0.02,Qc8h:0.02,5h4h:0.02,Kh5s:0.02,Kc8d:0.02,Jd8s:0.02,QhJs:0.02,QcJs:0.02,KcJh:0.02,KhJc:0.02,Qs9h:0.02,Kc8h:0.02,Kh8d:0.02,QsJd:0.02,Qs9c:0.02,Kh8c:0.02,AdKd:0.02,QsJh:0.02,QsJc:0.02,QdJh:0.01,QdJc:0.01,AdQd:0.01,6s6d:0.01,Qs9d:0.01,Kd8s:0.01,6h6d:0.01,KcTh:0.01,KhTc:0.01,Th8s:0.01,Jh5h:0.01,Tc8s:0.01,Qd8c:0.01,Qd8h:0.01,Jh6h:0.01,QhJd:0.01,QcJd:0.01,Jc5c:0.01,Qd8s:0.01,Jc4c:0.01,Jh4h:0.01,AsKc:0.01,AsKh:0.01,4s2s:0.01,Jc9h:0.01,Jh9c:0.01,Jh9d:0.01,Jc9d:0.01,7h6h:0.01,AsQd:0.01,As2h:0.01,7d6d:0.01,Kd8c:0.01,Kd8h:0.01,5d4d:0.01,Ah7c:0.01,Ac7d:0.01,Ah7d:0.01,Th8d:0.01,AhKs:0.01,AcKs:0.01,Ah3c:0.01,Tc8d:0.01,Ac3h:0.01,Td8h:0.01,Td8c:0.01,Ac7h:0.01,Td8s:0.01,AsKd:0.01"
    )

    range_oop = (
        "set_range_oop As8s:0.72,AsTs:0.67,KsQs:0.6,AsQs:0.57,KsJs:0.53,As7s:0.52,5s5d:0.5,AsJs:0.47,4s4d:0.44,Td9d:0.42,5s5c:0.42,6d5d:0.41,5s5h:0.39,4s4c:0.38,4s4h:0.38,6h5h:0.37,Jd9d:0.36,Th9h:0.35,Kd9d:0.35,KsTs:0.31,Tc9c:0.3,6s6h:0.28,Qd9d:0.25,Qh9h:0.25,Kc9c:0.25,Qc9c:0.25,Jh9h:0.25,8s8d:0.24,Jc9c:0.24,6s6d:0.24,Kh9h:0.23,8s8c:0.22,8s8h:0.22,5d5c:0.18,5h5c:0.17,7s7d:0.16,Ad9d:0.15,5h5d:0.15,7s7c:0.15,7s7h:0.14,Ac9c:0.11,Ah9h:0.09,Ks8s:0.07,8h8d:0.06,8d8c:0.06,8h8c:0.05,As4s:0.03,4d4c:0.03,4h4d:0.03,4h4c:0.02,Ad5d:0.02,As5s:0.02,Ac5c:0.02,Ah5h:0.01,6h6d:0.01,7d7c:0.01,9h9d:0.01,9h9c:0.01,9d9c:0.01,7h7d:0.01,7h7c:0.01,AdQd:0.01,Ac3c:0.01,Ad3d:0.01,Ah3h:0.01,5s4s:0.01"
    )

    # Betting configurations
    bet_sizes = [
        "set_bet_sizes oop,river,bet,27",
        "set_bet_sizes oop,river,raise,100,1000",
        "set_bet_sizes oop,river,allin",
        "set_bet_sizes ip,river,bet,50",
        "set_bet_sizes ip,river,raise,75,1000",
        "set_bet_sizes ip,river,allin"
    ]

    # Solver settings
    solver_settings = [
        "set_allin_threshold 2",
        "build_tree",
        "set_thread_num 8",
        "set_accuracy 0.05",
        "set_max_iteration 222222",
        "set_print_interval 10",
        "set_use_isomorphism 0",
        "start_solve",
        "set_dump_rounds 3",
        "dump_result /app/install/output_result.json"
    ]
@bupticybee
Copy link
Owner

I see, it's about legal raise size. It's a rule that I have to limit the raise size.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants