Simulate “Full Pay Jacks or Better” optimal strategy video poker. As the linked article notes:
The following strategy is for full pay Jacks or Better video poker. “Full Pay” designates the following paytable, per coin based on five coins bet, which returns 99.54% of money bet assuming optimal strategy.
One Hand
Run simple simulations with a single hand, without drawing new cards.
Calculate payouts, using the table from the optimal strategy article and these pay tables:
Hand | Payout |
---|---|
Royal Flush | 800 |
Straight Flush | 50 |
Four of a Kind | 25 |
Full House | 9 |
Flush | 6 |
Straight | 4 |
Three of a Kind | 3 |
Two Pair | 2 |
Jacks or Better | 1 |
Payout is per coin when betting 5 coins.
payout <- hands |>
as_tibble_col(column_name = "hand") |>
mutate(payout = case_match(
hand,
c("high_card", "one_pair") ~ 0,
"jacks_better" ~ 1,
"two_pair" ~ 2,
"three_ofakind" ~ 3,
"straight" ~ 4,
"flush" ~ 6,
"full_house" ~ 9,
"four_ofakind" ~ 25,
"straight_flush" ~ 50,
"royal_flush" ~ 800
))
Filter only Royal Flushes:
payout |>
filter(payout == 800)
#> # A tibble: 3 × 2
#> hand payout
#> <chr> <dbl>
#> 1 royal_flush 800
#> 2 royal_flush 800
#> 3 royal_flush 800
Calculate the total payout, and percentage return:
A simple “one hand” simulation performs much poorer than the expected return of 99.54% for optimal strategy.