Most hand evaluation methods focus on a situation when you know one hand and try to estimate how many trick in given suit you make knowing something about possible partner's hands.
What I think is crucial for developing good bidding algorithm is a method to estimate how often contract make when you know two hands exactly (because then you can iterate all possible hands and make the best decision).
Is any of you aware of any work done in this direction ? I have some thoughts but I would like to avoid reinventing the wheel if possible.
I feel that dd simulations are not the way to go because:
a)they are very slow
b)they bias results for many honor combinations (for example AJT - Kxx is always 3 tricks when it reality it's more than 2.5 but less than 3).
Page 1 of 1
Hand evaluation methods when seeing two hands
#2
Posted 2012-August-27, 21:23
I agree such an algorithm would be valuable for several purposes. I wrote a program to rank all contracts for a given pair of North/South hands by expected IMP score for use in partnership bidding exercises, but as it was based on DD simulations it suffered from the problems you mentioned. It would also be fascinating to study simple invitational auctions like 1NT-2NT-3NT—try different hand evaluation methods, and for each figure out not only what range should be accepting but also what range should be inviting to maximize expected IMPs. If there's anything left to be learned about hand evaluation or fine tuning of system, I think this is the best way to go about finding it.
One obvious option is to deal out many E/W hands and for each one do a single-dummy simulation having a strong bridge program playing all the hands. I assume you have considered this but don't like it for some or all of the reasons (a) it is very slow (maybe very very slow?), (b) perhaps there is no bridge program strong enough to give accurate results, (c) it may be technically difficult to give the defenders full disclosure about the auction.
Are you willing to approximate by giving up declarer's closed-hand advantage and letting the defenders play double-dummy? If so the problem is closely related to the algorithm used by GIBson, GIB's "new" single-dummy solver. Very roughly speaking it's based on the idea that given a condition like "West has ♠Q and East has at least 3 clubs" there is an efficient (as in, not terribly much more expensive than a full double-dummy search) way to determine whether there is a line of play that is 100% to make the contract assuming the condition holds of the E/W hands. Then the idea is to find a condition which admits a 100% line that is as likely as possible, and play for that. This search is heuristic and approximate due to the size of the problem (exponential in the number of layouts!) and there is no way to know when you have found the best condition, but it is reasonable to hope that a computer can do this as well as a human. Once you have the condition you think is optimal, the answer to "how likely is it to make this contract" is the likelihood of that condition being satisfied.
So I think if you had access to GIBson source code it would be not too hard to get a reasonably accurate and not too computationally expensive estimate of likelihood of making a contract given two hands.
Edit: Actually it might be enough to understand GIBson's output. See http://www.gibware.com/engine.txt.
One obvious option is to deal out many E/W hands and for each one do a single-dummy simulation having a strong bridge program playing all the hands. I assume you have considered this but don't like it for some or all of the reasons (a) it is very slow (maybe very very slow?), (b) perhaps there is no bridge program strong enough to give accurate results, (c) it may be technically difficult to give the defenders full disclosure about the auction.
Are you willing to approximate by giving up declarer's closed-hand advantage and letting the defenders play double-dummy? If so the problem is closely related to the algorithm used by GIBson, GIB's "new" single-dummy solver. Very roughly speaking it's based on the idea that given a condition like "West has ♠Q and East has at least 3 clubs" there is an efficient (as in, not terribly much more expensive than a full double-dummy search) way to determine whether there is a line of play that is 100% to make the contract assuming the condition holds of the E/W hands. Then the idea is to find a condition which admits a 100% line that is as likely as possible, and play for that. This search is heuristic and approximate due to the size of the problem (exponential in the number of layouts!) and there is no way to know when you have found the best condition, but it is reasonable to hope that a computer can do this as well as a human. Once you have the condition you think is optimal, the answer to "how likely is it to make this contract" is the likelihood of that condition being satisfied.
So I think if you had access to GIBson source code it would be not too hard to get a reasonably accurate and not too computationally expensive estimate of likelihood of making a contract given two hands.
Edit: Actually it might be enough to understand GIBson's output. See http://www.gibware.com/engine.txt.
#3
Posted 2012-August-29, 08:52
Hand evaluation model
Nearly all systems evaluate a hand from the viewpoint of one player and in terms of points. These points are usually high card points with adjustments for shortness in the side suits or additional points for length. It is time for players to attempt to assess the value of his hand in terms of playing tricks for the partnership. This assessment is a dynamic number which changes as the location of more of the other 39 cards is revealed. The estimate of our playing tricks is dynamic not static.
Before one removes his cards from the tray, the expected tricks is 6 1/2. We expect to win half of the available 13 tricks. Remove the cards and sort the hand. Tally our points. The estimate of our expected tricks is not a single value. It is a set of values depending on the strain of the final contract. This estimate also has a margin of error depending on the location of the other 39 cards. The standard deviation of the error is nearly 3 tricks. When we know the strain and the combined partnership HCP the s.d. is from 1.5 to 2 tricks. When we also know the sum of our combined trumps the s.d. drops to 1 to 1.25 tricks.
The 2nd estimate of tricks.
E(tricks) = trumps + (HCP - 20)/3 + e
Trumps is the total combined trumps of the partnership.
(HCP - 20)/3 means for every HCP over 20 assign another 1/3 trick to the estimate.
'e' is the error of the estimates.
The third variable for estimating tricks is flatness/skewness. With sufficient trumps well placed singletons and voids can be worth additional tricks. Additional length in the side suit can also produce extra tricks. Every new variable adds another term to the equation for estimating tricks.
Nearly all systems evaluate a hand from the viewpoint of one player and in terms of points. These points are usually high card points with adjustments for shortness in the side suits or additional points for length. It is time for players to attempt to assess the value of his hand in terms of playing tricks for the partnership. This assessment is a dynamic number which changes as the location of more of the other 39 cards is revealed. The estimate of our playing tricks is dynamic not static.
Before one removes his cards from the tray, the expected tricks is 6 1/2. We expect to win half of the available 13 tricks. Remove the cards and sort the hand. Tally our points. The estimate of our expected tricks is not a single value. It is a set of values depending on the strain of the final contract. This estimate also has a margin of error depending on the location of the other 39 cards. The standard deviation of the error is nearly 3 tricks. When we know the strain and the combined partnership HCP the s.d. is from 1.5 to 2 tricks. When we also know the sum of our combined trumps the s.d. drops to 1 to 1.25 tricks.
The 2nd estimate of tricks.
E(tricks) = trumps + (HCP - 20)/3 + e
Trumps is the total combined trumps of the partnership.
(HCP - 20)/3 means for every HCP over 20 assign another 1/3 trick to the estimate.
'e' is the error of the estimates.
The third variable for estimating tricks is flatness/skewness. With sufficient trumps well placed singletons and voids can be worth additional tricks. Additional length in the side suit can also produce extra tricks. Every new variable adds another term to the equation for estimating tricks.
#4
Posted 2012-September-03, 05:01
It sounds to me like you might approve of Culbertson's Honour Trick evaluation method, jogs. He also included methods for counting Playing Tricks in his books, both from the point of view of the initial bidder and that of partner responding. FWiiW his method involves counting tricks for length (both trump and side suit) in the bidder's hand but tricks for shortage + trump support in responder's hand. Most players have moved away from this approach except on specific hand types though...
(-: Zel :-)
Page 1 of 1