Transcript Document

Stat 35b: Introduction to Probability with Applications to Poker
Outline for the day:
1. P(flop a full house).
2. Pot odds.
3. Multiple callers with KK?
4. Uniform random variables and R.
5. Project teams.
6. More counting problems.
Notes:
HW2 is due Fri Jan 31. Read up through chapter 4.
u 
u

1. Suppose you’re all in next hand, no matter what cards you get.
P(flop a full house)?
Key idea: forget order! Consider all combinations of your 2 cards and the flop.
Sets of 5 cards. Any such combo is equally likely! choose(52,5) different ones.
P(flop full house) = # of different full houses / choose(52,5)
How many different full houses are possible?
13 * choose(4,3) different choices for the triple.
For each such choice, there are 12 * choose(4,2) choices left for the pair.
So, P(flop full house) = 13 * choose(4,3) * 12 * choose(4,2) / choose(52,5)
~ 0.144%, or 1 in 694.
2. POT ODDS CALCULATIONS.
Suppose someone bets (or raises) you, going all-in. What should your chances of
winning be in order for you to correctly call?
Let B = the amount bet to you, i.e. the additional amount you'd need to put in if you
want to call. So, if you bet 100 & your opponent with 800 left went all-in, B = 700.
Let POT = the amount in the pot right now (including your opponent's bet).
Let p = your probability of winning the hand if you call. So prob. of losing = 1-p.
Let CHIPS = the number of chips you have right now.
If you call, then E[your chips at end] = (CHIPS - B)(1-p) + (CHIPS + POT)(p)
= CHIPS(1-p+p) - B(1-p) + POT(p) = CHIPS - B + Bp + POTp
If you fold, then E[your chips at end] = CHIPS.
You want your expected number of chips to be maximized, so it's worth calling if
-B + Bp + POTp > 0, i.e. if p > B / (B+POT).3/39 + 3/39 - C(3,2)/C(39,2) = 15.0%
Example: 2006 World Series of Poker (WSOP).   u

Blinds: 200,000/400,000, + 50,000 ante.
Jamie Gold (4 3): 60 million chips. Calls.
Paul Wasicka (8 7): 18 million chips. Calls.
Michael Binger (A 10): 11 million chips. Raises to $1,500,000.
Gold & Wasicka call.
(pot = 4,650,000)
Flop: 6 10 5.
•Wasicka checks, Binger bets $3,500,000. (pot = 8,150,000)
•Gold moves all-in for 16,450,000. (pot = 24,600,000)
•Wasicka folds. Q: Based on expected value, should he have called?
If Binger will fold, then Wasicka’s chances to beat Gold must be at least
16,450,000 / (24,600,000 + 16,450,000) = 40.1%.
If Binger calls, it’s a bit complicated, but basically Wasicka’s chances must be at
least 16,450,000 / (24,600,000 + 16,450,000 + 5,950,000) = 35.0%.
Want multiple callers with KK?
a) You have $100 and KK and are all-in against TT. You're 81% to
double up, so your expected number of chips after the hand is
0.81 x $200 = $162.
b) You have $100 and KK and are all-in against A9 and TT. You're
58% to have $300, so your expected value is $174.
•
So, if you have KK and an opponent with TT has already called
you, and another who has A9 is thinking about whether to call
you too, you actually want A9 to call!
•
Given this, one may question Harrington's suggested strategy of
raising huge in order to isolate yourself against one player.
4. Uniform Random Variables and R.
Continuous random variables are often characterized by their
probability density functions (pdf, or density):
a function f(x) such that P{X is in B} = ∫B f(x) dx
.
Uniform: f(x) = c, for x in (a, b).
= 0, for all other x.
[Note: c must = 1/(b-a), so that ∫ab f(x) dx = P{X is in (a,b)} = 1.]
In R, runif(1,min=a,max=b) produces a pseudo-random uniform
variable.
5. Project A is problem 8.2, p165.
You need to write code to go all in or fold. In R, try:
install.packages(holdem)
library(holdem)
library(help="holdem")
timemachine, tommy, ursula, vera, william, and xena are examples.
crds1[1,1] is your higher card (2-14).
crds1[2,1] is your lower card (2-14).
crds1[1,2] and crds1[2,2] are suits of your higher card & lower card.
help(tommy)
tommy
function (numattable1, crds1, board1, round1, currentbet, mychips1,
pot1, roundbets, blinds1, chips1, ind1, dealer1, tablesleft)
{ a1 = 0
if (crds1[1, 1] == crds1[2, 1])
a1 = mychips1
a1
}
help(vera)
All in with a pair, any suited cards, or if the smaller card is at least 9.
function (numattable1, crds1, board1, round1, currentbet, mychips1,
pot1, roundbets, blinds1, chips1, ind1, dealer1, tablesleft)
{a1 = 0
if ((crds1[1, 1] == crds1[2, 1]) || (crds1[1, 2] == crds1[2,2]) ||
(crds1[2, 1] > 8.5)) a1 = mychips1
a1
}
You need to email me your function, to [email protected],
by Feb 6 at 8:00pm. It should be written (or cut and pasted) simply
into the body of the email. If you write it in Word, save as text
first, and then paste it into the email.
For instance, if your letter is “b”, you might do:
For instance, if your letter is “b”, you might do:
bruin = function (numattable1, crds1, board1, round1, currentbet,
mychips1, pot1, roundbets, blinds1, chips1, ind1, dealer1,
tablesleft) {
## all in with any pair higher than 7s, or if lower card is J or higher
a1 = 0
if ((crds1[1, 1] == crds1[2, 1]) && (crds1[1, 1] > 6.5)) a1 = mychips1
if (crds1[1,2] > 10.5) a1 = mychips1
a1
} ## end of bruin
Teams:
team a HUANG, RIHAN. ZHANG, HO KWAN. MCELROY, DAVID.
team b LI, JESSE. THOMA, TREVOR. DITTMAR, MICHAEL.
team c WANG, ERIC. LU, SIAO. GU, JIAQI.
team d CHIANG, NICOLE. ZHANG, TONY. ALCORN, KIMBERLY.
team e CHEN, ZHAOYUAN. LI, GAN. REITZ, CLAIRE.
team f BARBER, THOMAS. MENG, QINGYI. SUEZAKI, PATRICK.
team g LAM, SUI YUEN. ZHUANG, YUAN. LAHOZ GONZALEZ, LAURA.
team h XIE, ZITONG. GU, YINGQIAN. LUAN, PEIYAO.
team i CHEN, YIMING. TUZMEN, MEHMET. WANG, ZHAOXIN.
team j POWER, JUSTIN. ALEXANDER, AREN. MAULEON, KIMBERLY.
team k KIM, SO YOUNG. CHEN, XINYUAN. DUTTA, ANJALI.
team l ZHOU, MENGRUI. YU, BRANDON. SANGHVI, ANAV.
team m GAO, YANG. LA, CASEY. TSAI, PEI-CHEN.
team n LIU, YIHAO. LI, RUOYU. SHI, BO.
team o ZHOU, CAROL. YUN, XINYAO. DUONG, MINDY.
team p MAVRODIEV, TEODOR. WONG, LAP KAN. YUZAWA, KATSUHIRO.
team q LEE, FIONA. YANG, YIK. HUSSEIN, MARYAM. MOUTOUX, ALEX.
team r LI, JIANJUN. MUSTAFA, JAMAL. YANG, YI-LONG. HSUEH, JESSICA.
Just submit one email per team.