Jump to content

antonylee

Full Members
  • Posts

    499
  • Joined

  • Last visited

  • Days Won

    2

Everything posted by antonylee

  1. There is also bcalc (http://bcalc.w8.pl/) which claims to be twice faster than Bo Haglund's DDS, but the source code is not available. I (and others) have used Bo Haglund's DDS, which is more than enough e.g. for my redeal program (https://github.com/anntzer/redeal). On the other hand DDS is GPL-licensed so think twice before bundling it with a program you want to make money with.
  2. I would suggest you google for Smirnov-Piekarek or Gotard-Piekarek's CC -- basically Polish club but putting all club-based hands in 1♣ as well, thus freeing 2♣ for another preempt. I have read that some Polish juniors are playing something similar. I have played (nonvul) 1♣=12+ 5+♣ unbal (not 4♦5♣ 12-15) or strong NT or 18+, i.e. as above but also swapping the weak and strong notrump range as well. It is sometimes unwieldy but the gains from the extra preempt makes it worth it IMO.
  3. I agree with bluecalm that single dummy leads would be a big step towards more realistic results. I remember seeing some stats posted by bluecalm according to which the opening lead, in world-class play, easily blows up ~0.5-1 imp on average against the defense, whereas the rest of the play is much closer to DD. Also, calculating realistic opening leads, either rule-based, or simulation-based, seems reasonably doable to me. PS: Right now redeal does not support computing DD results for deals in which some cards have been played; this is mostly because I am still looking for the right syntax to input such cases. I'd be interested in your suggestions. PPS: The GUI is fixed now... still have to work on a proper Windows installer. If you already have Python installed however (or use Linux/Mac), again, feedback is welcome :)
  4. Using redeal (https://github.com/anntzer/redeal), linked against Bo Haglund's DDS: from redeal import * predeal = {"S": H("JT652 QJT9 7 K42")} mp = [0, 0, 0] imp = [0] def accept(deal): n = deal.north # OP plays 16-18 NT opening, so be it. I assume no 3-card raise possible. return (balanced(n) and 12 <= n.hcp <= 15 and len(n.spades) < 4 and (len(n.diamonds) > len(n.clubs) or len(n.diamonds) == 4)) def do(deal): n = deal.north score_pass = deal.score("1NN") # assumes non-vul if len(n.spades) + 1 > len(n.hearts): score_bid = deal.score("2SS") elif len(n.spades) + 1 < len(n.hearts): score_bid = deal.score("2HS") else: # assume we always end up in the worst contract between 2H and 2S if equal length score_bid = min(deal.score("2SS"), deal.score("2HS")) if score_bid == score_pass: mp[1] += 1 elif score_bid > score_pass: mp[2] += 1 else: mp[0] += 1 imp[0] += imps(score_bid, score_pass) def final(_): print(mp) print(imp) I get, for 1000 hands: [189, 100, 711] [1557] i.e. +1.6 imp per board for, or +0.5 board per board (mps) for bidding 2H instead of 1N, at worst. The difference is so huge that I don't think using single-dummy simulations will change anything qualitatively. (PS: There is some issue with the GUI version, only the console version works now. Also I still have to upload the code to make it work on Windows... Unix-systems only right now.)
  5. From my personal experience (in France), I think that a few things are fairly effective to get kids to play bridge: clubs in schools, junior tournaments, prizes, etc. I started playing in middle school, where there was a club that would meet one hour per week at lunch time (as a matter of fact, students participating in lunchtime activities had priority at the school cafeteria -- that's why I started :-)), with an oldish professor from the local club (and everything was free of course, who'd have payed to play?). We started by playing minibridge for three years before even hearing about the idea of bidding (though it seems that that approach is receding now), and that was in no way a problem for me (well, I learnt the importance of holding up in NT at that time, for example). There were even a yearly national junior minibridge tournament (including a regional qualifier, etc.) and I remember winning comics there. Also there were some "bridge weeks" during the holidays, with like 2 or 3 hours of bridge per day for a week at the local club, only with juniors. Sure, I was already a bit nerdy at that time but we were easily 15 teenagers from the local area (say South half of Paris suburbs) there. When I went to high school I stopped playing bridge (actually I started playing go then), but restarted when I got into college. Again, there was a club, run (again for free) by two very good players (probably in the top 100 women in France), and that's where I learnt bidding. We were perhaps a dozen players in a university with 1000 students (science majors only), and we set up junior teams to compete in local competitions at a discounted price (or for free), but still eligible to win bottles of champagne or foie gras (that's France after all) or even (rarely) cash prizes (~200$ or so for first place). And there were still activities for juniors, such as pro-ams (though sometimes we would have to take the "pro" side if there were too many "ams" from local high schools) or the national junior pairs and the national junior teams (yay, get crushed by Lorenzini et al.), known for their incredible amounts of free food... Or, for example, in Lyon (second city of France), there is a well-known club run only by juniors, organizing every year a huge tournament (open to all). We would get together the day before and play 2-min-per-board speedball :-) Masterpoints? Who cares... Food and money (and other juniors) makes a junior happy :-)
  6. My GNTC district win this year was quite fun. There was a field of 11 teams so it was a two-day KO with some three-ways. We were seed number two, and won our first matches easily. Still, seed #1 looked like huge favorites, being +100 imps or so on the first day... Anyways, we finally get to play them in the final. In the first session, both of our pairs manage (on different boards..) to defend 2♦X+1, which together with a couple of other mistakes put us down 21 at half time (2x14 boards). Sure, that's not as impressive as other comebacks mentioned here but there's still some work to do. In one board in the second half, I open 2N (minors) with x xx KQJ9x Axxxx and my partner judges well(?) to pass(!) holding both QJTxx Axxxx Ax x, making on a misdefense when the opponents are down in a misfit at the three level. We are clearly picking up imps in this half, but play is very slow and the TD threatens to remove the last board if we don't hurry up. So of course we do, and play what seems to be a routine 4♠ on it. Well, at comparison time it turns out that our teammates managed to sac in 5♣-2 without getting doubled, for a 9-imp pickup which put us ahead by 2! I guess the most funny part was that I was so excited that I managed to (accidentally, I deny any voluntary wrongdoing...) set off Kit Woolsey's car alarm twice (he was playing in the GNT open final at that time) on my way out. The look on his face the second time he had to come out turn off the alarm: priceless.
  7. That's a very interesting read. I think I start to get it. Say I start with 11 spades between dummy and me. At trick 1 then I know the 1-1 split is barely favored (52%). Now let's say instead that the opponents start by cashing 10 tricks (sigh), never touching spades, and I win trick 11. Now I'm down to two spades in both hands. Assume that neither opponent pitched in that suit. I have extracted no information, so the the 1-1 split should still be at 52%. If instead I just reasoned based on the two-card ending then there are C(4,2)=6 possibilities and the 1-1 split occurs in 4 of them, or 67%. Now, why was I confused? I basically made the following thought experiment: assume that you just have a deck of 26 cards, 2 of which are black and the rest are blank. You deal them to your opponents and look at the probability that the black cards are split. It is 52%. Now assume that someone peeks at the cards while you deal them, and throws away all the non-black cards except two of them as you are dealing. This shouldn't change the probability of the 1-1 split and I thought this would be the same as computing the probability in the end position. But actually this procedure is wrong, because it doesn't ensure that (after all but four cards get thrown away) each opponent gets two cards. Instead, a proper protocol would be to have 2 black and 2 red cards in the deck (and 22 blank cards). Again, somebody peeks at the cards while you deal them and throws away all the blank cards, but not the colored ones. Now clearly sometimes you will end with the opponents having different numbers of cards; so what you can do is reshuffle everything and redeal if that happens, keeping only the cases where both opponents have two cards. But by doing so, you are artificially increasing the frequency of 1-1 splits (precisely from 52 to 67%), because a deal where the black cards are 1-1 is more likely to result in both opponents having two cards than a deal where the black cards are 2-0, and thus more likely to be kept.
  8. That is the gist of my question: Say instead of dealing out a full deck I just dealt the remaining cards. Is it really the case that the probabilities are going to be different than from the case where I dealt all the cards and then came down to a five-card ending?
  9. I noticed the following when doing some simulations... Say you reach a 5 card ending with the opponents still holding 6 clubs and 2 diamonds, as well as 2 spades are known to be held by your RHO. Let's say you want to compute the probability (with no extra information, as usual) that diamonds split 1-1. There are 8 unknown cards, 3 of which go to your RHO, which makes a total of C(8,3)=56 possibilities. If diamonds split 1-1, you have 2 choices for your RHO's diamond and C(6,2)=15 choices for his (two) clubs, i.e. 30 possibilities. So the probability of a 1-1 diamond split seems to be 30/56=53.4%. (As a check: if diamonds are 2-0, there are C(6,3)=20 possibilities for RHO's three clubs, and if diamonds are 0-2 there are C(6,1)=6 possibilities for RHO's single club, adding up to 56.) Now you cash a club (you already know a priori both will follow). At that point, there are 6 unknown cards and 2 go to RHO, so C(6,2)=15 possibilities. If diamonds split 1-1, you have again two choices for RHO's diamond and C(4,1)=4 possibilities for his single club, i.e. 8 possibilities. (If diamonds are 2-0, there are C(4,2)=6 possibilities for RHO's clubs, and if diamonds are 0-2 then there is only one possibility, again adding up to 15). So now it seems that the probability of diamonds 1-1 went down to 8/15=53.3%. Either I got the math wrong, or there is some weird restricted choice argument that I don't understand there...
  10. same here (what were you planning to rebid after 1♠-1N?)
  11. Actually no, West cannot remove my spade entry to dummy (he doesn't have a spade anymore). I was thinking of catering for ♣Jx by playing two rounds of clubs before attacking the hearts, but this is in fact useless (East doesn't have enough room to hold four clubs and if west holds four clubs then he is 0544 and attacking hearts works as well). Still, I assume that you discard the possibility of West being 0553 (in which case you have to play on clubs) instead of 0544 because he didn't bid 2♦ (a reasonable assumption)?
  12. You are correct, if I play clubs now I cannot get the last heart.
  13. Spades break 0-6. East wins your king with the ace and plays a diamond to West's ace, king and small. Now (I think that) you can play two rounds of clubs, to which both follow low, and you have to choose between clubs breaking and diamonds breaking (allowing you to set up the hearts, the ♠Q is an entry if west ducks once). Am I correct, and which choice do you pick?
  14. [hv=pc=n&s=s32hqj7dq52cakt76&n=skqt98hk863dj9cq5&d=w&v=e&b=16&a=1h1sp2cp2sp2nppp]266|200[/hv] Matchpoints, ♥4 lead to the 10 (1♥=5 cards). Now, what?
  15. You pick up Kxx Xxxxx Axx AK in 2nd seat, v/v at IMPs. RHO opens 3♦. What's the weakest X with which you would overcall? Would you venture a double? 3NT? What about at matchpoints?
  16. With 6M4m, it is standard to rebid the major if weak (so that one can introduce the minor at the 3-level if needed) and the minor if strong (as one can reverse back into the major if responder doesn't pass). With 6♠4♥, I believe it is standard to always introduce ♥s with opener's second bid (so as not to miss the 4-4 ♥ game). But what about 6♦4♣ hands?
  17. Well, instead have a "kibitzer" to go and kibitz a table whose number corresponds to a board where slam is on (or rather, where you need an anti-percentage play)...
  18. https://github.com/anntzer/redeal from redeal import * predeal = {"N": H('QJT 432 A432 Q32'), "S": H('AK987 AKQ 5 AK54')} win1 = win2 = 0 def do(deal): global win1, win2 if len(deal.east.spades) in (2, 3): win1 += 1 if (len(deal.east.clubs) == 3 or len(deal.east.clubs) < 3 and len(deal.east.spades) < 3 or len(deal.west.clubs) < 3 and len(deal.west.spades) < 3): win2 += 1 def final(n_tries): print(win1, win2) or just from the command line (with the version of the code I've just uploaded): $ redeal -n100 -N'QJT 432 A432 Q32' -S'AK987 AKQ 5 AK54' --initial 'self.win1 = self.win2 = 0' --do 'self.win1 += len(deal.east.spades) in (2, 3); self.win2 += len(deal.east.clubs) == 3 or len(deal.east.clubs) < 3 and len(deal.east.spades) < 3 or len(deal.west.clubs) < 3 and len(deal.west.spades) < 3' --final 'print(self.win1, self.win2)' Too lazy to work out the down 2 case.
  19. I assume you got this 32% by saying that the player with short clubs has short spades half of the times (half of the remaining 100-36=64%, i.e. 32%). But this is incorrect, as (by a vacant places argument) he will have short spades less than half of the times. To be precise, a simulation tells me that your line wins only 59% of the times.
  20. Sorry, edited typo -- I meant 0.4%, as found by previous posters...
  21. This is somewhat unrelated to the main discussion but I'd like to take the opportunity to advertise my dealing program, Redeal (https://github.com/anntzer/redeal), which can run the above-mentioned sim as follows: $ python redeal.py --accept '\ (17 < deal.south.hcp < 20 and deal.south.shape in Shape("(4333)") + Shape("(4432)") or \ (16 < deal.south.hcp < 19 and deal.south.shape in Shape("(5332)") and 5 in [len(deal.south.clubs), len(deal.south.diamonds)]) or \ (15 < deal.south.hcp < 18 and deal.south.shape in Shape("(6322)") and 6 in [len(deal.south.clubs), len(deal.south.diamonds)]))\ and (deal.north.hcp < 6) and deal.print()' -n100 ♠T92♡J972♢AT2♣542 ♠KJ83♡A864♢74♣AJ6 ♠AQ5♡KQ5♢QJ8♣KQT8 ♠764♡T3♢K9653♣973 ♠T872♡J654♢6542♣K ♠J93♡32♢7♣J975432 ♠KQ54♡K987♢AKT♣AT ♠A6♡AQT♢QJ983♣Q86 ♠63♡J962♢T5♣QJT63 ♠QJ752♡T5♢KJ4♣972 ♠A984♡AK87♢A32♣A5 ♠KT♡Q43♢Q9876♣K84 ♠963♡T765♢964♣653 ♠AJ87♡AK32♢J85♣74 ♠K5♡Q4♢AQ3♣AJT982 ♠QT42♡J98♢KT72♣KQ ♠KJ92♡JT53♢9765♣6 ♠T763♡Q76♢QT3♣AJ2 ♠AQ54♡K8♢AK42♣Q73 ♠8♡A942♢J8♣KT9854 ♠KQ8654♡94♢T532♣8 ♠T93♡A862♢K98♣Q32 ♠AJ♡T53♢AQ7♣AKT74 ♠72♡KQJ7♢J64♣J965 ♠T73♡854♢JT873♣82 ♠652♡KQ32♢9♣K9654 ♠AQ9♡97♢KQ6♣AQT73 ♠KJ84♡AJT6♢A542♣J ♠63♡T832♢KT94♣QT5 ♠Q9♡AQ754♢J♣J7642 ♠AJ82♡KJ9♢Q75♣AK8 ♠KT754♡6♢A8632♣93 ♠JT83♡Q5♢J752♣J32 ♠Q7642♡T82♢QT84♣7 ♠AK♡K763♢A93♣AT84 ♠95♡AJ94♢K6♣KQ965 ♠A432♡J96♢T4♣8752 ♠J76♡AKT8♢876♣AJ6 ♠K9♡Q52♢AKQJ3♣KT9 ♠QT85♡743♢952♣Q43 <...> Tries: 23923 100 hands out of 23923 satisfy the given condition, i.e. ~0.4%.
  22. I sometimes use LTC but mostly rely on "how I feel about the hand". On the other hand my regular partner seems to justify all his bidding on Zar points...
  23. http://worldbridge.org/tourn/Lille.12/microSite/RunningScores/ASP/BoardDetailsConditKO.asp?qmatchid=5115&qphase=QF Quick explanation: N/S are cold in 4♥ but to find this North has to enter the auction with a 4315, 16-count (incl. singletong ♦K) after West opens a strong NT. Otherwise, E/W can play and make 2♠. In the open room, Multon overcalles de Wijs' strong 1♣ with 1NT, intended as M+m (by Multon) but first explained (by Zimmermann) as a strong NT and later instead alerted as m+m, and N/S bid all the way to 6♣-2. Quickly after that the director was called and the Monaco pair (according the Vugraph operator) claimed that they did not see the alert of the 1♣ opening(?!!)... (So I'll sit down at de Wijs-Muller's table in the QF of a big international tournament and not know that they play a strong club?...) I saw that the results was adjusted to EW+10, or Monaco +3imps, in the open room (the closed room result was EW: 2♠=). Does anyone know the details of the ruling?
×
×
  • Create New...