#1
|
|||
|
|||
hand vs hand(s) probability program
Hi,
I'm a programmer planning to write a program which calculates the win percentages of a hand against one or several other hands at each street in a hold'em game. I'm wondering if I have to brute force every possible board and calculate how many boards will win for every hand or if there's another way to solve it mathematically. I hope someone can point me in the right direction. Thanks in advance |
#2
|
|||
|
|||
Re: hand vs hand(s) probability program
pokerstove.com
|
#3
|
|||
|
|||
Re: hand vs hand(s) probability program
That software does not calculate the hand vs hand win percentages. From the FAQ:
[ QUOTE ] Q1. What does PokerStove calculate? The values generated are all-in equity values. This is not the chance that a hand will win the pot. Rather it is the fraction of the pot that a hand will win on average over many repeated trials, including split pots. [/ QUOTE ] |
#4
|
|||
|
|||
Re: hand vs hand(s) probability program
If you look, though, it does provide win% and tie% for the specific hands, so you may be able to use the GPL code to grab these. You might want to brush up on the Monte Carlo method.
|
#5
|
|||
|
|||
Re: hand vs hand(s) probability program
I swear Dags and other top pros already have such a program.
Also, Pokerstove gives equal weight to each hand within a range. This is incorrect information as you may feel your opponent is x% more likely to have one hand than another. |
#6
|
|||
|
|||
Re: hand vs hand(s) probability program
Thanks for the replies. I know there are programs around to calculate the odds between several hands. But the idea was develop one myself in order to get a clear idea of the underlying techniques and theories. So the original question should have been something like: How do odds calculators work? Anyway, it looks like I have delve into the Monte Carlo as rjp suggested.
Greets |
#7
|
|||
|
|||
Re: hand vs hand(s) probability program
[ QUOTE ]
Hi, I'm a programmer planning to write a program which calculates the win percentages of a hand against one or several other hands at each street in a hold'em game. I'm wondering if I have to brute force every possible board and calculate how many boards will win for every hand or if there's another way to solve it mathematically. I hope someone can point me in the right direction. Thanks in advance [/ QUOTE ] As far as I know, nobody has ever managed to express a poker hand situation (ie, I have thish hand, he could have any of these hands) as a mathematical equation. That would pretty awesome. Let me know if you manage to pull it off!! Seriously though, there are two ways to do simulations such as performed by www.propokertools.com or pokerstove. These are: 1) Complete enumeration. List every possible hand and board combination, perform a race, and total the results. 2) Monte carlo simulation. Pick random hands and random boards a large number of times. It is pretty easy to whip up a decent monte carlo simulator, although there are some tricky points when generating the random hands. Enumeration is harder, but with a few tricks (mostly involving symmetry) you can compute a shocking number of boards. For example, in razz, suits don't matter, so it is ripe for exploiting symmetries. Take a look at: http://www.propokertools.com/simulat...762&h2=254 That's over 18 billion boards in under two seconds. Of course not every actual board is being dealt. For some situations, there is a third option 3) Precompute a bunch of values using enumeration over the course of a few days, and store the results. Then use them later. Hope this helps. - bachfan |
|
|