Monday, 9 May 2011

Oxford Cup 2011 and Gus Hansen!

This weekend I travelled up to Oxford with some guys from Cardiff Uni PokerSoc to play in the Oxford Cup, a student poker tourney. The actual tourney was on Sunday, but there was some weird event on Saturday which we were invited to, as well as a talk by Gus Hansen at the Oxford Union, so we all went up there on Saturday morning and stayed the night in a hostel.



Invitation-Only Flippament

The Saturday event was apparently the first (and hopefully last) ever "duplicate poker" tournament, and was "officially sanctioned by the International Federation of Poker" (lol). It involved 6 teams (the Six Nations: England, Wales, France, Ireland, Scotland and ummm... Rest of Europe) sitting at 6 tables, one team in each seat on each table, with a load of identical pre-ordered decks so as to eliminate any form of variance.

As expected it was pretty shambolic: for a start there were 8 of us from Wales, and they'd already printed the 6 name cards so I didn't even get to play, although I wasn't that bothered once I saw the first few hands from the rail. Most hands were multi-way AIPFs such as QQ vs 4 lots of unpaired undercards, I even watched one of my team members ship 54s pre and get snapped off by a dominated hand, lulz. Funnily enough it was advertised as some kind of superduperskillament when it ended up being decided by who is dumb enough to call it off 5-ways pre with 32o and bink. We then had to sit through a whole minute of the Scottish national anthem afterwards, sigh.

Anyways, there was some 20p/40p cash going on afterwards. Was running alright for a bit, got £60 in pre with QQ vs AK, we ran it twice and I held both times... then a bit later I got it in with 88 vs T7dd on Q86 two diamonds (vs the same guy), we ran it twice and he hit both times to scoop a £250 pot. Obviously I've played much bigger pots but still kinda frustrating.



Gus Hansen at the Union

Later that evening we went to see Gus Hansen speaking at the Oxford Union - he was pretty hilarious despite all the dumb questions like "do you still play for real money?" and "what was your thought process behind this hand you played several years ago where you shoved 5bbs with Q8s in a tourney?". Apparently he'd had lunch with Richard Dawkins earlier that day, which is very random, so he ended up talking about whether his new BFF would make a good poker player, lol. Shame Dawkins wasn't actually there, as he's one of my heroes (whatever you think of his views on religion, I think he deserves a lot of respect as a scientist). We did manage to get a couple of photos with Gus though (I'm on the far right) and he signed a few copies of them at the tourney on Sunday:

The man, the myth, the legend

We went out for a couple drinks and played a bit more cash, pretty uneventful though and I was really shattered so I ended up playing like a massive nit, finished up slightly. There was one mental hand where UTG limps for 40p, old guy in MP makes it £2, BTN makes it £6.60, BB cold-calls, UTG makes it £22.40, old guy quickly makes it £82.40 (he's about £350 effective with UTG) and everyone folds. He shows T7o. WTF.

Afterwards we went back to the hostel and played a satellite to breakfast, as there were 5 of us and only 4 breakfast coupons. We were using a wide variety of Scrabble, checkers and chess pieces, and some little plastic men as chips. Solid effort. Tim donked out but we played a £1 SnG afterwards and he won that so we pretty much ended up paying for his breakfast anyway. Unfortunately he's not a morning person and had to late-reg for breakfast, which by then was only wafer-thin ham and mayonnaise, ul.



Oxford Cup 2011

On Sunday we played the Oxford Cup, which was a £20 rebuy. Structure wasn't all that great but it got 200 runners which is pretty decent. Gus was playing, so we had a £20-each bounty pool on knocking Gus out, but none of us were on his table. I was in for £60 (initial double stack plus the add-on), so I bought 7k worth of chips and had a really uneventful first few levels.

At 300/600 I still had about 7k chips and was getting really bored and hungry, so when we went on break I thought "fuck it, gonna start shipping so I can get some food". Shortly after the break I shoved a few hands and took down some blinds, then moved to another table and shoved about 10bbs on the BTN with K7s. Guy in the BB, who had been playing fairly tight-passive from what I'd seen (he was on my starting table) says "I'm gonna be really stupid and defend my blinds". True to his word, he called with Q6o and I held.

I then had about 18k at 600/1200 and another guy who was on my starting table opened to 2600 in MP. I'd seen him open a decent amount on this table as he had quite a lot of chips, so I figured it was an alright spot to shove Q8s in the BB. He snap-called with AK and I binked an 8 to double up. He seemed a bit pissed off and I heard him saying to someone how he would normally fold AK but he "knew I was making a move", lol live players.

Shortly afterwards the same guy limped in EP, someone overlimped and I looked down at A5s in the SB. I'd often shove in this spot but I figured he's probably looking for any excuse to call a shove from me. But getting 7:1 I thought it was fine to just complete, so I called 600 more and the BB shoves for 15k. Folds round to me and I tank for a bit... I don't play tourneys so I honestly don't know if this is correct, but I think he can do this reasonably wide and I was getting decent odds so I called and held against 98s. Picked up a few more pots, soon I'd gone from 7k to 75k in a couple of blind levels and we went on break.

Soon we were down to 2 tables and there was a decent crowd and lots of photographers around; I peaked at 130k then blinded down a bit, eventually it's 5k/10k and I have about 95k. Some guy who had been blinding down and hadn't played a single hand for a good hour or so decides to shove his last 25k (with 54o haha)... BTN who just about covers me shoves AQo and I snap in the SB with TT and lose a flip, gg. Apparently some donks on the rail were talking about how TT is such a standard fold (for 9bbs), lol live players again. Anyways I pick up £220 for my efforts, meh.

The fruits of my labour

I still hate live tournies although this one was more bearable than most, partly cause I ran half decent and because Gus Hansen was somehow playing a £20 rebuy. Also saw some of my friends from Cambridge briefly which is always nice.



NitZilla

I've spent a while over the past week or so developing an equity calculator for my poker suite. It turns out it's a pretty simple problem to just solve (just find a way of evaluating hand strengths and run through all the possible combos), but a really difficult problem to solve at all efficiently. The first time I got my program to correctly calculate AA vs KK preflop, it took a whole 2 hours to run, which is not all that surprising when you think how many possible 5-card boards there are, and that my program was going through them exhaustively. Many re-writes later I got it down to 40ms (about 200,000 times faster than my original). By comparison, PokerStove does it in about 6ms, which is really impressive but I'm still very happy with my program.

A lot of the way my program works is inspired by this article by the author of PokerStove. One of the things I realised early on is that flushes really screw things up. If you can ignore suits, you only have to go through all the rank combinations, which is roughly 1000 (4^5 ish) times faster. So I decided to pre-compute the hand strengths of the best hands that can be made from a list of 7 ranks (without using flushes) and from a list of 5 to 7 distinct ranks that are of the same suit (considering only flushes and straight flushes). I stored all these values in hashmaps, as it's pretty easy to store both hand strengths and lists of ranks as integers. It also does a load of bitwise stuff to speed things up, e.g. my program does some nice stuff like ANDing with 31 (11111 in binary, five cards in a row) to check for straights.

Then for the vast majority of 7-card hands and 5-card boards (where you can't make a flush), you can just use the rank strength and work out how many combos there are when you include suits. For those where you can make a flush, you take the maximum of the flush and rank strengths.

The program still has to calculate the strengths at the start, but that only takes about half a second, and the first run takes about 300ms, presumably because of JIT compilation. After that it's a pretty consistent 40ms. I still have to write a GUI for it and add stuff like flop/turn/river calculations and range evaluation, but it can already do preflop (the hardest part by far) with 2-9 single hands and dead cards. I think Omaha shouldn't be too difficult to do either, although I'm not sure if there's any standard way to concisely write down hand ranges.



New Background

I changed the background of this blog, it's an edited version of the GNOME 3 wallpaper which I assume is under the GPL so I guess this background is too. Hope it's not too bright or distracting or anything, let me know if you like/dislike it.

Also remembered you can use almost any HTML tag you like on Blogger, so I've started using proper horizontal lines as separators instead of a bunch of - or = signs, much nicer and easier... for those that have a blog of their own and don't know how, just type <hr /> in the body of your post and it'll put a neat horizontal line there. =)

- HappyPixel

2 comments:

Anonymous said...

youre a cunt mate;)

HappyPixel said...

lol ok