login about faq

If I've done my math right, in Texas Hold-em, there's 'only' 52c5 = 2,598,960 possible sets of 5 community cards, and 47c2 = 1,081 hole card combinations, giving 2,809,475,760 possible combinations (the reverse, 52c2 * 50c5, produces the same total).

This seems eminently enumerable on modern hardware; why has nobody enumerated them all, grouped by hole cards, to give a ranking for each possible hole card combination given a particular set of 5 community cards?

Then, you can sum that for each possible set of 4 cards, and 3 cards, and so forth, eventually producing a database that, given your own hole cards and 3 to 5 community cards, will tell you exactly what percentage of other hands you'll beat. Unless I'm seriously mistaken, that means you can avoid an awful lot of monte carlo simulations or exhaustive searches in favor of a simple lookup.

Speaking storage, the 5-community-card db would take about 5.2 gigabytes uncompressed, but there's not much point storing that permanently given how easy it is to enumerate all pairs of hole cards. The DBs for 4 and 3 cards would take about 113MB and 2.3MB, respectively, which is trivial.

I have a hunch that if any of this makes sense, it's been done. So which is it? Is this old hat, or am I fundamentally mistaken about something obvious?

Edit: A friend points out that since the hero's hand affects possible other hands, this isn't enough - you have to evaluate every other hand against the community cards, making the number of possibilities 52c5 * 47c2 * 45c2 - about 3 orders of magnitude larger. Harder, but still doable.

asked Aug 12 '10 at 19:35

Nick%20Johnson's gravatar image

Nick Johnson
112

edited Aug 12 '10 at 20:56


It's much faster to run a quick Monte Carlo simulation to get good estimates of the values than to look up and sum values from a 52c5 * 47c2 * 45c2 database.

Also, it doesn't scale if you want to consider more than two players. Three players would be 52c5 * 47c2 * 45c2 * 43c2, which would require more than a petabyte.

link

answered Aug 13 '10 at 17:08

Daniel%20Stutzbach's gravatar image

Daniel Stutzbach
304116

The point is that no summing is required - a single lookup is sufficient to find the number of wins/draws for a given setup. And the heads-up table should provide a very close approximation for the information needed against >2 players.

(Aug 30 '10 at 21:49) Nick Johnson

The evaluations of interest do not ask what your equity is against a random hand. The question might be what equity ATo has against two hands, one in a top 10% range, and the other in a top 20% range, for example. That would not be a simple look-up in a database.

Programs like PokerStove already store many precomputed calculations, and so do other good hand evaluation systems which you will find if you look up what other people have done. See, for example, this thread on 7-card hand evaluators.

link

answered Aug 13 '10 at 08:28

Douglas%20Zare's gravatar image

Douglas Zare
1.9k2512

Its old hat. 7 card datatables where you can look up a hands strength are the basis for the fastest poker hand evaluators. These 7 card lookup tables are under 300mb. The main problem was coming up with a way to rank poker hands by strength.
What is probably confusing you is that hand strength doesn't directly give you a hands winning percentage. After a flop with 2 diamond cards hole cards that are suited in diamonds and yet didn't even make a pair currently have low handstrength but have excellent winning chances. To get a hands winning percentage you still have to conduct a monte-carlo or exhaustive search through every remaining possible outcome. Who wins If my one opponent has AQ of hearts and a 7d and a 6c comes down on the turn and river given the flop was 3d,4d,8d? What if my opponent had a Q of diamonds instead? Etc. The reason you don't see tables that include the winning percentage is that they quickly become too large to store and view and always take to long to generate on the fly. Instead you find interfaces online allowing simple winning percentage calculations which take under a second. More complicated questions would eat up too much server time. I lowball estimate my laptop could generate a table of winning percentages for all possible hole card combinations in 75 hours. That table would have about 2652 rows and columns.
Check out the following links: a online interface for calculating winning percentages: http://www.cardplayer.com/poker-tools/odds-calculator/texas-holdem All about Poker Hand Evaluation (check out the 2X2 in particular:
http://www.codingthewheel.com/archives/poker-hand-evaluator-roundup

link

answered Aug 13 '10 at 09:02

mazoula%201's gravatar image

mazoula 1
7114

edited Sep 05 '10 at 04:25

Can you edit your answer so it's not all in a huge, unwrapped quote?

(Aug 30 '10 at 21:48) Nick Johnson
Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or __italic__
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Tags:

×30
×28
×9

Asked: Aug 12 '10 at 19:35

Seen: 767 times

Last updated: Sep 05 '10 at 04:25

powered by OSQA