Online Poker Bots - Threat or Not? By Harrison Elliot
Introduction
Online games from chess and backgammon to 1st person shooters are rife with people who use computer assisted play or computer robots - even when there is no money at stake. With the appropriate program any player is able to play at a world championship level ruining the game for honest players. What makes online poker different, given that there are huge amounts of money at stake?
In this article I will explain how I developed a poker bot and what I learnt from this experience. My conclusion is that although it is possible to construct a poker playing bot the threat from poker bots to the online poker player is extremely small to non-existent.
"Games" Theory
For interest and college courses I had previously written computer playing programs or bots for games including chess, Connect 4, Othello, backgammon, bridge and various others. For games such as Connect 4, Othello, chess and backgammon where all players have the same available information about the game state, the theory on how to construct expert bots is well known. Deep search techniques, looking many moves ahead, are used for games such as Othello and chess. Recently (10 years ago) it was discovered neural networks could be taught to play backgammon better than almost any human player. Games such as poker and bridge contain hidden information where the players can see their own hand but not that of the other players. The published theory behind writing expert computer bots for these incomplete information games is decades behind the complete information games and there are doubts techniques will be developed so that computers can play at expert or world championship level. At present the best techniques for these incomplete information games seem to involve some form of simulation and opponent modelling.
Anatomy of An Online Poker Bot
There are 3 basics parts to a poker bot:
1) Data Gathering - observing the game state and history
2) Data Processing - using the information from the data gathered to determine whether to fold, call or raise.
3) Output - Pressing the appropriate button on the poker room client.
My Poker Bot
My program was written in early 2004 with Microsoft .Net C++ and was developed to play at one online room only. For the technically minded the program relied heavily on MFC and the Win32 API.
1) Data Gathering
My bot gathered information about game state and history from online poker tables by taking repeated screenshots and analysing the image. To begin with I just observed games, taking screenshots automatically so I could gather data on the position of the cards, chips and button. By determining the color of a certain few pixels I was able to gather all this information about the state of the game.
Eventually I was able to gather data from multiple poker tables (4 at a time) by repeatedly bringing each window to the foreground and taking a screenshot. From this screenshot I was able to determine my cards, board cards, button position, who was left in the hand, pot size and player bet sizes.
2) Data processing
This is the component that eventually bought my poker bot project to an end, unable to develop a strong enough strategy to win consistently. I tried various rules based, neural net and simulation techniques. At best my bot was able to make a very small profit at $1/2 and $2/$4 limit hold?em, but nowhere near the thousands of dollars a week I envisioned earning when I started the project. In the end it just wasn?t worth my time to continue to put resources into developing my poker bot further.
3) Output
This was the easiest component to write. This involved programmatically moving the mouse pointer to the appropriate screen co-ordinates and then sending a mouse down/mouse up command signalling a left-click. I did give consideration to adding the ability for the bot to use chat but never progressed that far.
Conclusion
Although you might run into a poker playing bot whilst playing online the odds are it plays very poorly. At any level of play you are much more likely to run into an expert human player than an expert computer player.
Harrison Elliot wrote this article for Review Poker Rooms-Online poker room reviews plus useful news, articles and links.
?expert=Harrison_Elliot
A Successful Coupon Run - Each year I end my trip to G2E with a coupon run where I try to use up the remainder of the match play coupons that I have left from...
New Slots With Familiar Themes -
This year as I walked around the floor of the G2E I noticed that many of the new slots had older themes. As I walked past the booth of slot...
Exploring the G2E - I have been attending the G2E for the last several years and the show just keeps getting bigger each year. Even this year with the economic slowdown the show is...
Global Gaming Expo Starts Tuesday -
The Global Gaming Expo (G2E) is the annual trade show for the gaming industry held in Las Vegas. Each year many new slot and table games are introduced at the...
WSOP Crowns Youngest Champion - Peter Eastgate, a 22 year old from Denmark became the youngest player to win the World Series of Poker main event on Tuesday. He will collect $9.15 million for his...
Would You Publicize a Jackpot Win - I think everyone who has played a progressive slot machine has fantasized about what they would do if they won the jackpot. If you do win the jackpot there are...
World Series of Poker Final Table Underway - Finally we will get a conclusion to the 2008 World Series of Poker Action got underway Sunday. The players will play down to the final two who will play heads...
Learning the Language of Craps -
"Winner, winner, front line winner, pay the line take the don'ts. Coming out. World bets, horn bets C and E!"
A novice walking by the Craps table may get the feeling...
Casino Visit Cut Back Poll - Between the economic slowdown and the higher prices of fuel this year, the number of people visiting the casinos has decreased dramatically. Many players said they were making fewer trips...
Vote For Those Who Support Online Poker - I urge everyone to get out and vote on Tuesday. Remember if you don't vote, then you don't have the right to complain. Throughout the last year I have been...
Submit your comments
Back to the main page