Friday 29 June 2007

Cross-IMPs

The last post ended with me just throwing some numbers at you. One question you might ask is this: how relevant are average scores to real-life duplicate bridge?

Instead of just summing up all the scores that a certain strategy achieves and dividing by the total sample size, let's instead cross-IMP them. In other words, on each board we'll IMP each result with every other result, add up the IMPs won or lost and divide by 6 (the number of comparisons). What we're essentially doing is running a tournament with 7 pairs all playing the same hands and all using their own strategy on every hand.

We'll do 25,000 hands this time and produce the following statistics:

IMPs Agg
1. Bid 3NT: +0.986 321.97
2. Invite 3NT: +0.048 277.32
3. Minor try/invite: -0.107 271.50
4. Minor try/GF: +1.000 323.60
5. Heart try/GF: +1.056 324.11
6. Heart try/invite: +0.324 290.55
7. Pass 1NT: -3.306 138.21

Notice, though, that you get exactly the same ranking list using each method of scoring. Still, cross-IMPs is more what we're used to. For instance, we could multiply the results by 24 and rank them as follows to scale it up to what you might see on a club night:

1st Heart try/GF +25.34
2nd Minor try/GF +24.00
3rd Bid 3NT +23.66
4th Heart try/inv +7.78
5th Invite 3NT +1.15
6th Minor try/inv -2.57
7th Pass 1NT -79.34

From now on we'll be cross-IMPing things instead of just using the average. Sometimes we might delve into Match Points, too.

Thursday 28 June 2007

A Gentle Warm Up

Let's start off gently, by taking you through the processes involved in running a simulation, the kind of things we can do, the kind of things we think about and how useful it all is.

You hold 4 A Q 2 A J 7 6 2 J 9 4 2. LHO passes. Your partner opens a weak NT, showing 12-14 points and a balanced hand. RHO passes and it's your turn. Both sides are vulnerable and it's teams scoring. What is your plan?

You might think this is really easy, one bid stands out and we're stupid to even ask such a simple question. You might be right, but how confident are you? The point of this exercise isn't to test our bridge skills, it's to show us how we might arrive at a solution using a computer. So let's pretend that we have no idea what might be right and proceed.

First of all, let's break down our options. We're playing with our granny who has very simple methods over 1NT — stayman, transfers, baron-2 (partner bids 2NT with a minimum, a four-card minor with a maximum and 3NT with a max and no minor) and 2NT as an escape to a minor. So nothing sophisticated is allowed. I would say that we can do one of the following:
  1. Bid 3NT.
  2. Bid 2. Pass 2NT, bid 3NT over a minor bid, pass 3NT.
  3. Bid 2. Pass 2NT, raise a minor to game, pass 3NT.
  4. Bid 2. Try for a minor game over 2NT, raise a minor directly to game, pass 3NT.
  5. Bid Stayman. Raise 2 to game. Bid 3NT over anything else (which partner always passes, to keep it simple).
  6. Bid Stayman. Raise 2 to game. Invite with 2NT over anything else.
  7. Pass 1NT.

Some of these are silly suggestions, but they're in there for completeness' sake. Perhaps you'd like to think about ranking how well each of these strategies fares?

Next up, we'll think about partner's hand. That's easy. We'll be strict on this. She has a classic weak-NT. 12, 13 or 14 high-card points. She can have a five card major in a 5332 but no six card minor and no 5422 shapes. Yes, we might personally open a few 5422 shapes, or a few hands with six card minors, but not all of them. We might open some 11 counts, decide to pass some 12 counts, upgrade some 14 counts — all sorts of off-centre stuff. The fact is that it makes things more complicated to include them and for very little gain. We're going to be producing tens of thousands of hands and any results that are affected by these rogues will be drowned out by the results from the vastly greater number of normal hands. And besides, when we open these hands we're not expecting partner to account for them — we've decided to treat our hand as if it was a normal 12-14 balanced hand so partner should do the same.

What about the opponents? LHO doesn't have an opening hand and RHO doesn't have an overcalling hand. You will notice, though, that I made this example simpler by having both sides vulnerable, the vulnerability where oppo are least likely to want to compete. We can actually be fairly crude about modelling the opponents' hands. LHO doesn't have a 12 count and we'll say that he doesn't have as good as a 7.5-loser hand either, because he might have preempted. I'm well aware that this isn't perfect but it doesn't matter much. Sure, LHO might have opened a hand like K Q J 10 9 8 J 10 9 J 10 J 10. This is only a 9-count and has 8 losers, but I think most of us would be opening a weak two, wouldn't we? This is pretty extreme, though, and, like partner's bent 1NT openings, will be lost in the noise of boring flat 7-counts. You also can't account for LHO miscounting his hand and passing a 13 count. Or for partner deciding to psyche. Or maybe oppo just play strong twos.

RHO will not have a 15 count. He also won't have a 6.5-loser hand. If you think this is just plain sloppy on my part, stick around as we'll look in future posts just how much this really affects the analysis.

Right then, we now have some sort of handle on what type of hands are out there. What do we do with this? We plug these criteria into a deal generator which will randomly deal any number of hands within your set boundaries. As an example, one of the deals it produces is this:


S: QJT9
H: 653
D: KT
C: AQ53
S: 87653 S: AK2
H: KJ7 H: T984
D: Q854 D: 93
C: 7 C: KT86
S: 4
H: AQ2
D: AJ762
C: J942

Sorry about the formatting but this Blogger thing seems pretty rubbish for doing tables. Anyway, I don't think we could argue too much with the modelling of this hand. It fits the bill pretty accurately. I just ran through about 50 of them and there were no hands which I clear-cut would have acted on as East or West. There were a few hands with six or even seven card suits which an aggressive player might preempt with, but I don't think it's too controversial to suggest that our oppo on this hand are slightly more passive than usual. They are vulnerable, after all, and this isn't pairs.

The next step is to deal out a lot of these hands, work out what contracts our 7 strategies will end up in and determine how many tricks will be made and therefore what the score will be. Determining what the contract will be is easy — we just count suits and points — but we'll get bored very quickly, long before we get to any meaningful results, if we have to evaluate each hand ourselves. Just look at the hand above; how many tricks can North make in NT? How long did it take you to work it out? A heart lead seems reasonable after which it looks like declarer is heading for 7 tricks.

Sod that. Life's too short to sit there working out hundreds of hands like this. Instead we'll use a computer to calculate the double-dummy number of tricks. This has the advantage of being extremely fast. It also has the disadvantage of being less accurate than real-life bridge. I'm not going to go into this at great depth now as it's a big topic, but I'll just say that the above hand comes out at 7 tricks too.

Here's another hand with its results:

S: A86
H: 765
D: 85
C: AKQT6
S: JT53 S: KQ972
H: K83 H: JT94
D: K43 D: QT9
C: 873 C: 5
S: 4
H: AQ2
D: AJ762
C: J942
--------------------------
1. Bid 3NT: -100.0
2. Invite 3NT: -100.0
3. Minor try/invite: 600.0
4. Minor try/GF: 600.0
5. Heart try/GF: -100.0
6. Heart try/invite: -100.0
7. Pass 1NT: 120.0

These are double-dummy results but they fit perfectly well with reality. 5 will make easily (you play diamonds so as to keep East off lead). 3NT will go off.

It happens to be a good hand for trying for a minor, but what happens over 10,000 hands? Here are the averages of the scores:

1. Bid 3NT: 321.26
2. Invite 3NT: 275.11
3. Minor try/invite: 275.76
4. Minor try/GF: 327.17
5. Heart try/GF: 325.04
6. Heart try/invite: 292.75
7. Pass 1NT: 137.92

So there you have it, trying for a minor-suit game comes out on top, closely followed by trying for 4, with bashing 3NT not far behind. But there's not a lot in it. Merely inviting does a fair bit worse, and obviously passing 1NT is just rubbish.

That'll be all for now, but there are still plenty of things to talk about with this hand. How valid are the results? How could we improve them? How good were our assumptions? Those are for the next posts.

Wednesday 27 June 2007

Kicking Off

If you're looking for a blog about structural engineering you are so far off-course. This is about the card game, and about simulations in particular. If it wasn't about simulations, I would have called it something else.

Simulations can be quite useful for finding out interesting things about bridge bidding. They're also good for winning arguments.

This isn't going to be updated very often, I just thought it would be a useful place to aggregate my ideas, thoughts and practical experiences with simulations. Otherwise I'd lose them. Feel free to comment if you want.