Poker AI Project
 

Idea: To have a "bot" that hold its own against other human players, or even other "bots".

Game: Limit 2/4 Texas Holdem. Each person starts with 0 chips, negative chips are valid.

Status: 7 interfaces to the game have successfully been programmed, as follows:

a) Check/call bot - does what it says, used for testing purposes.
b) Raise bot - does what it says, used for testing purposes.
c) Random bot - 33% probability on each turn for check/fold/call, used for testing purposes.
d) Level I bot - does basic pre-flop math, does very basic flop/turn/river math.
e) Level II bot - same pre-flop math as Level I, does more intensive flop/turn/river math.
f) Level III bot - much more extesnive pre-flop math, does 7 full simulations on flop/turn/river considering opponents actions on that hand (NOTE: THIS BOT DOES NOT CONSIDER PREVIOUS GAMES HANDS), and considering strength of hand, and possibility of improving hand.
g) Human player - allows a player to play against any combinations of the above bots.

Language used: 90% C, 10% PERL.

Download: Not available at this time.

TODO: Fix this page. :-), add memory to the bots. Fix usage under Win2k?? (or is it just the user of Win2ks fault?? hmmmmmm)

Analysis: Below are some simulations that have been run of bots vs bots. Simulations are generally ran for 5000 hands, but may be run for lower amounts, depending on CPU availability. EV is how many small bets per hand has been won.

Simulation 1:
1 Raise vs 2 Level I vs 2 Level II vs 1 Level III


Red line is the raise bot, yellow line Level III bot. Others should be self explanatory.

Simulation 2:
2 Level II vs 6 Level III

Simulation 3:
5 Level II bots vs 3 Level III

Simulation 4:
8 raisers vs 1 Level III


Orangey line near the middle is the III bot.

Simulation 5:
1 Level I vs 1 Level II

Simulation 6:
1 Level I vs 1 Level III

Simulation 7:
1 Check/call bot vs 1 Level III


Red line is the Level III bot (losing? weird results)