Jump to content

Error in par analysis on hand records


Finch

Recommended Posts

I have a set of hand records, which claim to be created by "HandPrint version 2.0.0" and come from a Duplimate file.

In common with most modern hand records, they include the full DF tables i.e. how many tricks each side can make in each denomination.

 

They also include the Optimal Result (what I call the par result) for each hand e.g. if NS can made 1370 and EW have a save, it says Opt. Res. 1100, if the "save" is 1400 it says Opt. Res. 1370

 

On one board the calculation of the Optimal Result is wrong. I'm 100% certain it's wrong, as is everyone else to whom I've shown this.

(EW can make 9 tricks in NT and 10 tricks in diamonds; NS cannot make more than 7 tricks in a major or 8 tricks in clubs and are vulnerable; it has Opt. Res. as EW +130 rather than +500)

 

I was astonished.

 

Does anyone care to be told this? I can't work out where the software actually comes from.

Link to comment
Share on other sites

Weird, I just looked at a website under design for a bridge club club (mostly for formatting and style suggestions) but I looked at exactly one hand from a game there and par was wrong. By the website's own double dummy analysis (which my analysis confirmed was true) NS could make 10 tricks in diamonds or 9 tricks in hearts and EW could make 9 tricks in spades, but it said par was NS -100 in 4X instead of +130 in 4 (EW were vul so would go for 200 in 4X). I have no idea where that analysis comes from, or if the source could even be the same as the one you are looking at.
Link to comment
Share on other sites

I have seen this happen before. I was likewise astonished the first time I came across it. Less so now.

 

I am not familiar with the particular software package or version that you use.

 

Some early versions of various DD analysers had the occasional bug. I got the impression that the popular ones had ironed them out by now.

Link to comment
Share on other sites

  • 1 month later...

I have a set of hand records, which claim to be created by "HandPrint version 2.0.0" and come from a Duplimate file.

In common with most modern hand records, they include the full DF tables i.e. how many tricks each side can make in each denomination.

 

They also include the Optimal Result (what I call the par result) for each hand e.g. if NS can made 1370 and EW have a save, it says Opt. Res. 1100, if the "save" is 1400 it says Opt. Res. 1370

 

On one board the calculation of the Optimal Result is wrong. I'm 100% certain it's wrong, as is everyone else to whom I've shown this.

(EW can make 9 tricks in NT and 10 tricks in diamonds; NS cannot make more than 7 tricks in a major or 8 tricks in clubs and are vulnerable; it has Opt. Res. as EW +130 rather than +500)

 

I was astonished.

 

Does anyone care to be told this? I can't work out where the software actually comes from.

There are several different angles to this matter, and the comments that follow are probably not the complete picture, but may nevertheless add some light. I'd be very interested to see the hand that provoked the problem, and would be grateful if you are able to post it together with the corresponding DF table.

 

First, this problem definitely exists and in several different forms - some further examples below.

 

Second, and in answer to your last question, "HandPrint version 2.0.0" is a utility written by Kaj G Backas (http://www.sackab.fi/all_htm/KGB_main.htm) that takes a deal file in .dlm format, runs the Deep Finesse engine against the hands, gathers the makeable contract information, attempts to calculate the optimum result, and finally puts all this together (using the Ghostscript utility) in .pdf output form. This utility used to be bundled with the BOS software that came with Duplimate dealing machines; the current position is a bit different (see below). It may also be used with other dealing software / machines, but I have no information on that.

 

More recent versions of the DupSoft dealing software that now comes with Duplimate machines differ from earlier versions in a number of respects: in particular (1) it builds in makeable contract analysis (now using Bo Haglund's double-dummy analyser rather than Deep Finesse), and (2) it uses its own Jannersten-written optimum result calculator to feed the hand print utility that's bundled (and which you call from the DupSoft menu structure).

 

That Jannersten-written calculator had its own bugs - I saw it produce an optimum contract of 8X in a printout early this year (from the software version downloaded at about the same time - I don't have the version number handy). Because of this, I e-mailed both Jannersten and Kaj Backas about it - it was then that he told me that it was no longer his optimum contract analyser that Jannersten were using, and that theirs was still buggy. He also said that "My original handprint functions better, although i know that it is not perfect."

 

As mattias says, the Jannersten software continues to be updated, and I haven't run my earlier problem hand through the latest version.

 

There can also be other issues - you can use other dealing programs, such as DealMaster, with Duplimate machines, and they have their own facilities for producing handprints which, even when using Backas's utility, can introduce their own problems. For example, it's possible with several such set-ups to limit the analysis that's done to eliminate certain (lack of) trump fits, probably because it used to take up to 15 minutes or so to DF-analyse a typical 32 board set on the PCs typically used a few years ago. At the Northants Swiss Pairs 3 years ago, through a misunderstanding my partner and I ended in 6 with AKQJx opposite a void (Ron Davis and his partner were the only others in this contract!). Trumps were 4-4, there were 6 tricks and A outside, and no defence to the slam. We were astonished to see the hand analysis telling us that we couldn't make any contract; the reason was apparently that the analyser hadn't even looked at contracts our way.

 

The conclusion I draw from all this is that the quality of the hand records you get will depend on what software has been used to produce it, and how old the version in use actually is. This is likely to remain the case for quite some time, until both all the software in use exists in a completely correct version and everyone producing hand records has updated to that software.

 

It's actually not a trivial problem to determine the optimum contract in an algorithmic form that you can implement in software, because there are many traps for simple-minded approaches, quite apart from the obvious ones like N/S can make 4NT for 4/630, E/W have a 3/500 save in 5X, but N/S can then make 4/600 in 5. For example, you might, as a first stab, say "Let's start with the dealer, treat them as bidding the highest-scoring makeable contract at the corresponding level (ie taking 4NT as the opening bid if 4/630 is the highest making score played from that position), and work round the table in the obvious way to see if either side can improve their position." Then you realise that this won't do - suppose dealer can make 5, but no other game, but partner can make 4NT - so then you might try adapting the approach in such cases to start with something notional that doesn't out-bid partner's higher-scoring maximum positive score. Then you realise that there are hands that can make 3NT for both N/S and E/W, so you need to get the dealing side in first. But now let's suppose (and unless you can prove in advance that there isn't, that's what you have to do) that there's a hand where N as dealer can make just 2NT, yet both E and S can make 3NT as declarer, and so the optimum result is N playing 3NT-1. And so on ...

 

Obviously there's a solution to this - these examples are off the top of my head, I haven't had occasion to try and work it out fully, and quite possibly someone will post the answer. But the point is that it's quite difficult, and I'm not surprised that those who have tried to implement an algorithm may not have got it 100% correct.

  • Upvote 3
Link to comment
Share on other sites

Obviously there's a solution to this - these examples are off the top of my head, I haven't had occasion to try and work it out fully, and quite possibly someone will post the answer. But the point is that it's quite difficult, and I'm not surprised that those who have tried to implement an algorithm may not have got it 100% correct.

 

I haven't thought about this carefully, but this strikes me as a standard example where a minimax approach will yield a sub game perfect equilibrium.

Link to comment
Share on other sites

I haven't thought about this carefully, but this strikes me as a standard example where a minimax approach will yield a sub game perfect equilibrium.

Oh, I'm quite sure that you can throw a bit of CS / game theory at it and solve the problem that way. But if you're not well versed in that, and quite probably those who've written the software we see don't have that sort of background and have instead approached it in the kind of way I've described, then you'll come across the sort of traps that I've mentioned and may fall into one or more of them.

Link to comment
Share on other sites

One problem with anything that uses DF to generate results is that par can be 6 or fewer tricks (6x-6 at favourable, for instance), and DF (when I had to use it to determine something odd) wouldn't tell you how many tricks made in a suit by a side if it wasn't a contract.
Link to comment
Share on other sites

One problem with anything that uses DF to generate results is that par can be 6 or fewer tricks (6x-6 at favourable, for instance), and DF (when I had to use it to determine something odd) wouldn't tell you how many tricks made in a suit by a side if it wasn't a contract.

You can certainly use the current version of the stand-alone Deep Finesse to get this information (use Modify / Modify Total Tricks), and as I remember (I've not got it installed any more) you could do the same with the original - it's just that the main interface only presents playable contracts. However, it's the underlying calculation "engine" that the analysers use, and I think it's always been possible to get the relevant information (the number of tricks available to each of the 4 possible declarers in each of the 5 denominations) from that.

Link to comment
Share on other sites

Yesterday the club result hand records had an 8X sac -2000 as a par result against a making 7nt.

 

Actually I can post the handrecord, they have them online

http://www.eastsidebridgecenter.com/data/HandRecords/121202A.pdf

board 28.

Seems familiar - from the formatting (and the bug) it looks like it was produced with the Jannersten software I mentioned in #6 above. Jannersten certainly know about it (they acknowledged it to me in March), but their e-mail suggested it might be a while before it was fixed. I'll ask again, and post the answer here.

Link to comment
Share on other sites

  • 4 weeks later...

isnt the deep finesse anaylysis different that what the par result is?

 

if DF says 6making is normal +1430, but 6x other way -4 -1100 or even -5 -1400 then that is the par

I would take par assumes that the most perfect score is obtained either on offense or defense. Where Deep Finesse

analaysis or DD just says what contracts can make.

Link to comment
Share on other sites

The idea is that if you have the DD analysis for each strain, and know the vulnerability, you should be able to calculate the par result from that.

I think what is interesting is to go to regional results where

the hand records are posted with the travelers and see what

par gets you in relation to avg matchpoint results

 

par doesnt necessarily mean avg or avg plus

there are still alot of other variables involved

Link to comment
Share on other sites

Another error on this week's results. This one seems to be caused by not looking for a higher level contract. NS can make 10 tricks in hearts (420) or 11 tricks in diamonds (400). EW can make 10 tricks in spades (620). The par score is given as 100EW, presumably for 5X-1(N). Obviously the correct result is 200NS. Despite these mistakes, I find the DD analysis very helpful in going through the boards quickly and it generally takes very little time to find the errors.

 

Incidentally, my ritual after every session is to produce numbers for how many hands are declared by my partner, by myself and how many we defend, plus a total of how many tricks we were over or under par. Then the number of hands where we beat, were below, or equal to par. And for the MP results themselves grouped by (roughly) bottom > minus > ave- > ave > ave+ > plus > top. Over time these numbers give a reasonable approximation to how well we are doing overall and how aggressive or swingy we are. But the most important part is to go through the hands individually, with the auctions recorded so I can refer back when I spot patterns.

 

Anyone else have a similar ritual? or ideas on anything else I should be doing to get the most from this?

Link to comment
Share on other sites

Another error on this week's results. This one seems to be caused by not looking for a higher level contract. NS can make 10 tricks in hearts (420) or 11 tricks in diamonds (400). EW can make 10 tricks in spades (620). The par score is given as 100EW, presumably for 5X-1(N).

Yeah, that seems like a bug. It sounds like it saw that the strain with the best positive score for NS was hearts, so ignored diamonds when determining what could be done to improve their results over 4 by EW.

Link to comment
Share on other sites

interesting thread but I am still wondering what the fuss is about what is par only because what is its relevance to

matchpoints or imp results unless you are being compared to what the par result should be?

 

yesterday played in a ll 1/2 table game, there were 36 boards in play 8 being top

 

went through each board and compared matchpoint results for par

results:

score 129.5 avg 144 for N/S for the 36 boards

imps could be more drastic as there are quite a few hands where what is par is flat 0 (zero) at matchpoints could be more at imps

 

I was playing in a tournament this summer with a 10,000 plus player (Richard Potter) and we got into this discussion on how

worhtless the par result marking on the hand records really was....so after that discussion I started doing this for club games

at that time and noticed there def. is a luck of the draw on which direction you sit for a particular round when comparing to par.

Link to comment
Share on other sites

interesting thread but I am still wondering what the fuss is about what is par only because what is its relevance to

matchpoints or imp results unless you are being compared to what the par result should be?

As with double dummy analysis, it's an objective standard that you can compare your results to. And like DD analysis, you have to take it with a grain of salt, since double dummy "cheats".

Link to comment
Share on other sites

As with double dummy analysis, it's an objective standard that you can compare your results to. And like DD analysis, you have to take it with a grain of salt, since double dummy "cheats".

yes I fully understand that

but sometimes I dont think some players who are newer or less experienced fully understand that.

DD is done by the Rabbi

if there are 4 stiff Kings off side that you should drop for 7NT then thats par, I guess :rolleyes:

 

I just wonder if anyone has done a detailed analysis or the par results versus the actual results

Link to comment
Share on other sites

  • 2 weeks later...

Another error on this week's results. This one seems to be caused by not looking for a higher level contract. NS can make 10 tricks in hearts (420) or 11 tricks in diamonds (400). EW can make 10 tricks in spades (620). The par score is given as 100EW, presumably for 5X-1(N). Obviously the correct result is 200NS. Despite these mistakes, I find the DD analysis very helpful in going through the boards quickly and it generally takes very little time to find the errors.

Zel, is there any possibility you could e-mail me the hand or, if the print-out's online, post a link to it please? I'd like to put together a collection of these failing hands, to which I'll add some constructions of mine, to act as a test suite for the current and future releases of the software.

 

I'd be very grateful if anyone who notices another example would do similarly. Please ensure that the vulnerability and dealer are specified - the easiest way is just to quote the board number.

 

Many thanks.

Link to comment
Share on other sites

My club just started putting par score on the hand record this week. When going over my results this week, I counted the number of times above- and below-average scores corresponded to beating or not beating par. They matched up on 15 out of 24 boards, or about 2/3 of the time.
Link to comment
Share on other sites

Zel, is there any possibility you could e-mail me the hand or, if the print-out's online, post a link to it please?

 

It is Hand 19. The interesting follow-up is this. On the website results the correct par score (+200) is given. However, the printout gave the par score as -100. Presumably this means that either different programs were used or different versions of the same program. Unfortunately I cannot tell you what software the club uses - perhaps Gerben knows though as he is sometimes the TD there.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...