40 likes | 172 Views
Stat 35b: Introduction to Probability with Applications to Poker Outline for the day: Gold and Benyamine. Luck, skill, and bluffing. Hw2, 2.10, 3.2, 3.6. Tournaments. u u . Winning codes*:
E N D
Stat 35b: Introduction to Probability with Applications to Poker Outline for the day: Gold and Benyamine. Luck, skill, and bluffing. Hw2, 2.10, 3.2, 3.6. Tournaments. u u
Winning codes*: dabest = function (numattable1, crds1, board1, round1, currentbet, mychips1, pot1, roundbets, blinds1, chips1, ind1, dealer1, tablesleft) { ## All in if AA, KK, QQ, JJ or AK ## When no one has bet and less than 25 big blinds, go all in if any pocket pair, ## and AK, AQ, AJ, AT, KL, KQ, QJ ## When we have less than 6 big blinds, go in on all suited connectors that are ## greater than 5 or if we have an Ace ## When we have less than 3 big blinds go all in a1 = 0 if((crds1[1,1] == crds1[2,1]) && (crds1[1,1] > 10.5)) a1 = mychips1 if(crds1[1,1] + crds1[2,1] > 26) a1 = mychips1 if((pot1 < 2*blinds1) && (mychips1 < 25.01 * blinds1)){ if(crds1[1,1] == crds1[2,1]) a1 = mychips1 if(crds1[1,1] + crds1[2,1] > 23) a1 = mychips1 if((crds1[1,1] == 12) && (crds1[2,1] == 11)) a1 = mychips1 } if(mychips1 < 6*blinds1){ if(crds1[1,1] > 13.5) a1 = mychips1 if((crds1[1,1] - crds1[2,1] == 1) && (crds1[1,2] == crds1[2,2]) && (crds1[2,1] > 4.5)) a1 = mychips1 } if(mychips1 < 3*blinds1) a1 = mychips1 a1 } ## end of dabest * a last-minute rule change made the last tournament worth double, letting dabest come from behind to win narrowly.
jamesbond = function(numattable1, crds1, board1, round1, currentbet, mychips1, pot1, roundbets, blinds1, chips1, ind1, dealer1, tablesleft){ ## DESCRIPTION of "if" statements: ## The first if statement means if you have less chips than 2 times the big blind, ## you go all-in no matter what ## The second if statement says that if you have less chips than 3 times the big blind, ## you go all-in if both your cards add up to greater than or equal to ## 23 (ie, A9, AT, KJ, KQ...) OR you have any pocket pair ## After the jump is the standard set of betting rules the algorithm follows: ## The first if statement means you go all-in if you have pocket 10s or higher ## The second statement means you go all-in if you have AQ or AK ## The third statement adds on AT and AJ to the above statement ## ONLY IF no one has gone all-in yet and there are only less than or ## equal to 2 people left to bet after you ## After the next jump is a set of conditions for once there are 3 or fewer ## people left at the table and our player begins to get more aggressive: ## The first statement means you go all-in if you have suited connectors ## with the smaller card greater than 7 ## The second statement goes all-in if you have pocket 5s or better ## The third statement goes all-in if you have suited cards with the smaller of the cards ## greater than or equal to 10 ## The final statement goes all-in if you have at least one ace. ## continued on next page
jamesbond = function(numattable1, crds1, board1, round1, currentbet, mychips1, pot1, roundbets, blinds1, chips1, ind1, dealer1, tablesleft){ a1 = 0 z = sum(roundbets[,1] > blinds1) if (mychips1 < 2*blinds1) a1 = mychips1 if ((mychips1 < 3*blinds1) && ((crds1[1,1] + crds1[2,1] >= 23) || (crds1[1,1] == crds1[2,1]))) a1 = mychips1 if ((crds1[1,1] == crds1[2,1]) && (crds1[1,1] > 9.5)) a1 = mychips1 if ((crds1[1,1] == 14) && (crds1[2,1] > 11.5)) a1 = mychips1 if ((crds1[1,1] == 14) && (crds1[2,1] >= 9.5) && (z >= numattable1 - 3) && (currentbet <= blinds1)) a1 = mychips1 if ((numattable1 <= 3) && (crds1[1,1] - crds1[2,1] == 1) && (crds1[1,2] == crds1[2,2]) && (crds1[2,1] > 6.5)) a1 = mychips1 if ((numattable1 <= 3) && (crds1[2,1] > 4.5) && (crds1[1,1] == crds1[2,1])) a1 = mychips1 if ((numattable1 <= 3) && (crds1[2,1] > 9.5) && (crds1[1,2] == crds1[2,2])) a1 = mychips1 if ((numattable1 <= 3) && (crds1[1,1] == 14)) a1 = mychips1 a1 } ## end of jamesbond