Monday, May 18, 2009

So much for that stuff. I meant to write here a little more frequently but oh well.

So I'm writing this poker AI for an AI class, but I'm not writing "the good one", since that would be too hard. "The good one" would be an AI that used Bayesian Inference about its opponent(s) and some formulas about strategy to determine its own strategy. One rule I came up with was:

if b*( P(opponent is value betting)) > (2*a + b)*P(opponent is bluffing) then fold
else call.

for b being the bet size, P being the standard notation for "probability of", and a being the ante size.

In essence, b is the bet you would lose if you call and lose. And you would lose that bet if your opponent is value betting (this is using the assumption that you can beat a bluff and only a bluff), so you should fold if that amount (that you expect to lose weighted by the probability that you will lose it) is greater than this other amount (that you expect to win when your opponent is bluffing weighted by the probability that he is bluffing).

Note the cool bolding to reveal a summary of the confusing babble.

Anyways, I thought it was cool that for a whole range of hands (that can beat a bluff but only a bluff) you should completely fold, or completely call based solely on whether your opponent bluffs too much or not.

This leads me to believe that this notion of bluffing a fixed portion of the time equal to

P(bet) = (2*a + b)/b P(bluff)

so that your opponent is indifferent of calling or folding seems like a brittle strategy, since if you bluff too much your opponent should always call, and if you bluff too little your opponent should always fold.