8

A few years back, I built a MC simulation with the following parameters:

  • Betting wasn't simulated
  • Fixed number of players
  • Cards were dealt, and then flop/turn/river
  • The best hand was recorded

After running millions of iterations, this gave a good ranking of initial hands. Other projects got in the way, and I haven't had time to develop it further. What other elements have you found useful in your simulations? What elements would you like to see simulated?

  • I have a similar project with the following additions: - Betting is simulated - Players fold / raise / call based on pre-determined strategies (e.g. CallingStn always calls, Maniac always raises All-in, Nit folds <=2nd pair on flop etc.) - For each MC round, the results are added to each strategy's EV accumulator. The MC simulation can then begin to compare strategies against each other. What I ultimately want to do then is find optimal counter strategies to certain lines. Particularly Heads-up. – CjS Feb 15 '12 at 13:49
4

Assuming the purpose of the simulation is to determine a useful ordering of hands, the first thing to know is that there is no one true ordering, due to the non-transitivity of hand strengths. So, all orderings are approximations.

This subject has been tackled by many authors in print. A notably useful approach is in Kill Everyone by Nelson, Streib, and Lee; the authors provide distinct rankings for raising all-in versus calling all-in.

With betting simulated to find best "playable" hands when not expecting to be all-in preflop, this blog post is by far the best approach I've seen to the problem:

http://pokercoder.blogspot.com/2006/07/towards-meaningful-ordering-of-hands.html

http://pokercoder.blogspot.com/2006/07/downloadable-hand-orderings.html

| improve this answer | |
3

I see two big improvement possibilities:

  1. Variable Number of Players: Seeing the results against all possible numbers of opponents for each hand is probably more meaningful than against a single fixed number of opponents.
  2. Other games: It should be fairly easy to adjust this to run the same simulation for Omaha, since the cards are dealt in the same way as Hold'em (except that each player has 4 hole cards). I'd be interested in seeing it applied there. I'd also be interested in seeing similar results for stud variants and hi/lo.
| improve this answer | |
3

I think you can get most of the effect of betting just by removing bad hands. e.g. someone dealt an off suit 2,7 who isn't the big blind will probably fold. Very rarely the flop comes down 2/2/7 and your current simulation will credit that hand as a win, whereas in reality that hand almost never sees that flop. Removing bad hands pre-flop gives a more accurate value for the remaining hands.

Of course the definition of "bad hand" is very subjective...

| improve this answer | |
  • 1
    Badness of hands is subjective, but you could model that by making badness a stochastic decision. You might do that by taking the absolute badness and multiply it by a random value. If the resulting value is too low, fold the hand. Else, keep it. – ObscureRobot Jan 25 '12 at 11:32
  • You are going to run the boards anyway. It is not even worth the effort to exclude the hand. If you run 20 million boards 27o will win some of them. – paparazzo Aug 31 '17 at 17:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.