Slashdot Log In
$100,000 Poker Bot Tournament
Posted by
timothy
on Sun Jun 12, 2005 08:28 PM
from the upped-my-bet-now-up-yours-robot dept.
from the upped-my-bet-now-up-yours-robot dept.
Costa Galanis writes "The LA Times is reporting that a poker tournament will be held where engineers will be able to pit their automatic poker-playing programs against each other in a tournament similar to the upcoming World Series of Poker main event, with a 100,000 dollar cash prize for the winning program. The article mentions how the recent rise in popularity of poker has encouraged many to try and create the poker equivalent of chess' Big Blue, the chess playing computer program that defeated the world's top chess player in a widely publicized event, and also talks about how many engineers also are trying to make bots that are good enough to play and beat human players for money in online casinos."
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
Bluffing. (Score:4, Insightful)
Re:Bluffing. (Score:5, Interesting)
If two bots were identical and one bluffed 3% of the time (and didn't bluff away all of his chips), in the long run the bluffing bot should win. Because the non-bluffing bot will believe the bluffing bot has a hand those extra 3% of hands, and thus the bluffing bot will in the long run win more than half of the hands and do better in the long run.
The interesting question is how often one should program the computer to bluff in what situations. . .
Parent
Re:Bluffing. (Score:4, Informative)
No, there's a skill to bluffing. While a good poker player can bluff with 2-7 off suit, just randomly throwing money into the pot really isn't the way to go.
Parent
Re:Bluffing. (Score:5, Informative)
In a high stakes game or no-limit game, bluffing is very common, because every bet and action often involves a significant amount of money and little mistakes over the course of a session can end up costing large sums of money. Thus, bluffing becomes a viable weapon in these game formats because you can use your opponents' fear of making mistakes against him.
However, in a small stakes game, bluffing is often close to impossible, as many players are simply put, unbluffable. With the current poker boom, the skill level of the average player has decreased considerably; often causing poorly skilled players to play hands in a very losing fashion, such as showing Ace high at the showdown. Against these type of players, a bluff is generally quite ineffective and a losing proposition, since the theory behind bluffing is to force your opponent to fold a better hand. Thus, when your opponent simply does not fold, the point becomes moot.
As such, it would actually be easier to create a bot that plays low-stakes poker, as a non-bluff game involves simple math, decision trees and a bit of fuzzy logic. What it is not however, is a game of chance, as it is still a profitable game that has edges to be exploited.
This has been a bit off topic, but I wanted to clear up the notion that poker comes down to chance, when there is very solid mathematical theory behind it.
Parent
That's not the point of bluffing. (Score:3, Informative)
There's a 'rule' in texas hold'em: If the other players are playing loose, you play tight. If the other players are playing tight, you find another table. Some games really can't be bluffed.
And I want to clear this up: an indivual game is still a
Re:That's not the point of bluffing. (Score:4, Funny)
Parent
Re:That's not the point of bluffing. (Score:3, Interesting)
I bluff a lot early in the night, then I start playing tight later in the night.
Then, when I get a really good hand, and bet hard, I get a few people to come in with me, because I've got them into the mindset that they have me figured out. They "know" I'm bluffing.
It's all about letting them think they have you figured out.
Re:Bluffing. (Score:3)
I wanted to clear up the notion that poker comes down to chance, when there is very solid mathematical theory behind it.
The classic book [amazon.com] on this subject is by David Sklansky. Highly recommended.
Re:Bluffing. (Score:5, Interesting)
Not true at all. To be a successful player, you must detect patterns in your opponents' play so you can infer whether you are likely to be ahead of them, and how to maximize the pot when you think you're going to win. This is very difficult for computers to do, even with sophisticated learning algorithms.
Parent
Eliza (Score:3, Funny)
Re:Eliza (Score:5, Funny)
Parent
The bot... (Score:3, Funny)
Be easy to beat if its anything like... (Score:4, Funny)
1. Let openents Place you their bets.
2. Place a stupidly huge bet.
3. They fold.
4. Profit!
Deep Blue (Score:5, Informative)
Could this have been predicted? (Score:4, Insightful)
Perhaps the winning program could be reconfigured to create business plans?
Lots of problems tho (Score:4, Funny)
I think what is required here is clear and concise rules on what kind of weaponry the bots get to wield.
Also, I don't think bots should get to wear sunglasses.
Um... pokerbot will always win (Score:5, Interesting)
Re:Um... pokerbot will always win (Score:5, Insightful)
Since decks are made out of 52 cards, and you get two of them, it gets very easily to calculate probabilities for a human (mostly involves multiplying by 2).
Finally, making the probabalistic move every time will not do as well, because if you do that you would absolutely never bluff. A bot to be good in the long run must bluff, otherwise it is far too predictable and you can gain too much information from its bets and raises.
To give a quick example: If there's 100$ in the pot, and the bot bets 10$, I need to believe I'll win 1/11 times in order to justify my call. If I know that the bot never bluffs and only bets there when he's best, I can fold every time and save 10$. If the bot bluffs 1/11 times though, I suddenly have an actually complicated decision. And note if I fold those complicated decisions every time I lose more money, because he is betting more hands and I am folding each time he bets.
So no, straight up probabilities simply won't cut it.
(For more information, see Sklansky's Theory of Poker.)
Parent
Re:Um... pokerbot will always win (Score:3, Informative)
You still seem confused. Every hand in poker is played with a single deck; there are no 5 decks of cards like in blackjack. Take 52 cards, shuffle, deal the hand, repeat. That's it.
What would a program want $100000 for? (Score:5, Funny)
What would a computer program do with $100,000? Build a cluster to run itself on?
Re:What would a program want $100000 for? (Score:4, Funny)
Parent
Re:What would a program want $100000 for? (Score:5, Funny)
two chicks at the same time
Parent
Re:What would a program want $100000 for? (Score:5, Funny)
Wouldn't that be two chips at the same time?
Parent
This is incredibly difficult (Score:5, Insightful)
The hardest part of playing poker is "reading" your opponents' hands -- learning how they tend to play, and inferring what cards they are likely to hold, whether they are bluffing or slow-playing, etc.
It may be easy to read a poker bot's style of play, but reading good human players is extremely difficult. So even if a certain bot crushes the competition in this tournament, it may not do so well against humans.
The keys are the algorithms... (Score:5, Insightful)
The key, clearly, is the way your program "behaves" in response to opponent betting. You could code a program that only plays based on the probability of achieving a winning hand in a statistical sense. (IE, if my pocket has a 75% chance of becoming a hand that will beat 65% of all possible hands, then play it regardless) That wouldn't obviously play that well, since the bot won't consider opponent betting. However, if your bot regards opponent betting, it will easily become susceptible to power bluffing if the algorithm doesn't guard against it. (Hence, you have routines like poorly written cell phone games where you just have to come out of the blocks betting like mad and you'll 90% of the time bluff the bot out of the hand)
I wouldn't be surprised if some of the more ingenious bots would be a medley of pure probability, observed opponent behavior (for trend matching with a fixed opponent), and a database of "real life" situations. If I were to design a bot for poker, and had the resources, I'd be sorely tempted to first host an online poker website and take a ton of samples from actual, online play. You have the advantage (right now, at least) of being able to record everyone's exact hands (at every stage of the hand) as well as everyone's betting. You could distill that into a form of database where you could try and match a bot's hand to a pre-existing condition case, and determine, along with your other ranking criteria, what a human player once did with that same hand, and whether that player won or not.
Londovir I could see bots taking over after awhile, but it's going to take some time...and even then, it should be entertaining to watch programmers trying to tweak their bot to beat another bot, sometimes without even knowing they are going up against another bot.
Hidden markov models (Score:5, Interesting)
Poker is Hard (Score:5, Informative)
Poker is a hard problem. The game tree is huge for even heads up limit (~ 10^18 leaf nodes). Ring games (3-10 players) are intractable via any game theoretic methods. The only feasible possibilities are searching parts of the game tree through intelligent sampling methods, and perhaps abstracting the game down a bit.
Work has focused on both solving abstracted versions of the game and exploiting opponent weaknesses. A publication concerning most recent methods involving bayesian best response will be available soon at the following link:
http://www.cs.ualberta.ca/~finnegan/publications/
Just in case any one was wondering, calculating your raw chances of winning, dubbed "7 card roll out strength" is no problem at all once you harness the versatility of the gnu poker-eval library located on sourceforge.
Re:Poker is Hard (Score:3, Interesting)
About your sig: it is highly unlikely that any form of prime factorization is NP-complete. The reason is that the problem is contained in both NP and co-NP. So if it's NP-complete, then NP=co-NP, which nobody seriously believes is true and would be very surprising.
Poker bots ARE a real science (Score:5, Informative)
A team at the University of Alberta has been working on with a poker research group [ualberta.ca] that has been researching and coding poker bots for years. One look at their page should tell you that there is definitely some high level thinking and analysis required to develop a poker bot. More importantly, is that fact that they *have* delivered a bot called Poki Poker [poki-poker.com] that has an impressive record at beating human opponents in 1 vs 1 heads-up matches. Brian Alspach, Professor Emeritus of Mathematics and Statistics at Simon Fraser University has also contributed numerous publications [math.sfu.ca] to the field, giving credence to the fact that there is a genuine science behind creating an AI that can play good poker.
So, before anyone else spouts off about poker being a game of chance or poker bots being mindless hundred line pieces of code, please do your research. A lot of people have worked very hard on this subject to simply have it dismissed as beneath them. Just ask yourself this: If you could create a poker bot so easily, one that could generate at the very least, a poker bot that made $2/hr playing the low limit games, what would stop you from launching thousands of these bots upon the online world? Because unlike a human, you can replicate a bot innumerable times, which in this case would be the equivalent of finding the goose that lays golden eggs. If you understand this, you may begin to understand why there is so much interest in the creation of poker bots..
Intentional obfuscation... (Score:3, Insightful)
Case in point, one thing that some people think is worth doing in the first few rounds of poker is to intentionally lose or call as many hands as you can, just to determine your opponents' betting methods and/or tells. Could something similar be done with programs? For instance, measuring the number of clock ticks that an opponent takes to analyze a given hand. If identical flops show up in subsequent rounds, and identical intervals lead to identical bets, is it possible that you've figured out how your opponent likes to bet? Furthermore, would it be worthwhile to throw in an empty do() while loop of random length in order to throw off such attempts? But how about betting patterns themselves?
This is one thing I've always thought was missing in creating AI. It's not so much about coming up with "perfect" AI because so long as it follows a set pattern, it'll never be perfect. If it's consistent, either you'll figure out how to beat it, or you'll give up in frustration because you know you can never beat it. But create multiple different AIs that follow basic tactics, and then mix them up, there's the challenge.
Schedule of events... (Score:5, Funny)
here's a list of the things... (Score:5, Funny)
1. When to hold 'em
2. When to fold 'em
3. When to walk away
4. When to run
5. Never count your money: When you're sitting at the table, there'll be time enough for counting, when the dealings done.
Re:What's The Catch...? (Score:5, Informative)
Parent
Re:What's The Catch...? (Score:5, Funny)
And by that, you mean the house definitely wins every time.
Parent
Re:What's The Catch...? (Score:3, Funny)
Re:What's The Catch...? (Score:5, Informative)
In the poker world, the common standard for a profitable, solid player is to earn two big bets per hour, which covers both the casino rake and tip. In a $3/$6 texas hold'em limit game for example, the big bet is $6, which equals a $12/hr wage for a solid player. Online, where you not only do not have to pay a tip to the dealer, but also generally pay a lower rake and play about 150% more hands per hour than in a brick and mortar casino, it's very well possible to win nearly twice what you would by playing online.
Thus, the only "catch" here is that by creating a successful poker bot that can play as well as a solid human, it may very well upheave the online poker industry as a whole. After all, if you could spawn near unlimited instances of an application that could pull in a meager $2/hr playing the $0.50/$1 low limit tables, that still means an insane amount of money. Whether or not it's legal.. that's another issue.
Parent
Re:What's The Catch...? (Score:5, Informative)
If you just simply spawn 1000 bots, as easy as that seems, you'll be detected easily, and your online assets siezed. At the very least you'd need 100 or more IP's, and probably some variance in reaction times, mouse movements, etc.
that's the difficult part, because online casinos have alot of money to lose if players get spooked by the fear of bots. So they'll be trying *hard* to detect you.
Parent
Re:erm.. WTF (Score:4, Interesting)
Have you ever watched poker on TV? Did you notice that the same few people seem to be at the final table a disproportional percentage of the time. It's because although the cards themselves are random, the game is not. Every bet and every action is a subtle piece of a conversation about your perceived strength of your own hand versus your perceived strengths of your opponents.
There's a lot of skill. It's not simply high card wins. The really good poker players willoften win without the best hands, because they know when their opponents are weak and will be willing to give up on a pot.
So, yeah, a poker bot could replicate this.
Parent
Re:erm.. WTF (Score:3, Insightful)
The challenge in poker is learning how your opponent plays and knowing when they're bluffing, along with not giving away too much yourself, and being able to bluff well. Chess might take more mathmatical and/or logic skills, but Poker takes a lot more skill when it comes to intangibles and the subtle differences in your opponents' skills. This makes for a much much tougher programming challenge.
If bot A simply bets what it should b
Re:erm.. WTF (Score:3, Insightful)
>>The game of Poker will never be open to all audiences. It is a game aimed at RICH adults, limiting the potential audience. I am not saying you and your college buddies can't get together and play free poker. But schools would never encourage the game like Chess. There is a real scientific aspect to Chess that Poker does not have.
Yea
Re:erm.. WTF (Score:3, Insightful)
Huh? It's not like the only games have $10,000 buyins.
There is a real scientific aspect to Chess that Poker does not have.
Absolutely wrong. Poker is a textbook example of game theory, and because of imperfect information, it's arguably more strategically complex than chess. In chess, "all" you have to do is look ahead N moves and pick the best one. Sure, it gets complicated because
Re:Bot Training (Score:5, Interesting)
Against real players the primary way of determining this is through the unconscious betting patterns almost every player has. Bots with some AI could do well at this. Bots against other bots is potentially an even more difficult problem.
What I fail to see is why anyone who had a well functioning bot would enter this kind of contest. There is far more money to be made without getting yourself the undue notoriety of this sort of success.
Parent
Re:Bot Training (Score:5, Interesting)
If you disagree, you're more than welcome to join our weekly game.
Parent
Re:Are we to assume... (Score:3, Insightful)
Re:overlords (Score:4, Funny)
SHUUUUUUUUUUUUUUUUUUUUUUUUUUUUT UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUP!!!!!!"
Sorry, man. I promised myself I'd do that after I had heard that joke for the millionth time.
Parent
Re:overlords (Score:5, Funny)
Pssh. You're too young. Just wait till you're asked to take the oath for when you hear it for the billionth time.
AI AI CTHULHU FTHAGN!
Parent
Re:overlords (Score:4, Funny)
You try to say that right when you're in non-euclidea- - Oh my God the tentacle came out of WHE-
NO CARRIER
Parent
Re:I for one ... (Score:3)
Read post 2? Try reading any other Slashdot article. It was redundant years ago. They're taking over Slashdot! "I, for one, welcome our overused-as-an-SNL-skit overlords."
Re:Heres hoping this doesnt ruin online poker (Score:3, Interesting)
I, for one, as a blog and website operator am SICK AND FUCKING TIRED of comment/trackback/referral spam. Do they honestly think that by spamming my server logs I'm going to going to be interested in throwing my money at them? I seem to be missing something, but I'm guessing the people in charge of advertising and promotions for these sites aren't that far removed from Percy from The Green Mile.
I'm sure many will agree with me: die poker
Re:Heres hoping this doesnt ruin online poker (Score:5, Interesting)
It may be that current bots can beat some of the worse human players, but it's not clear how many of the human players are that bad, and it's not clear how good the companies that run the servers are at detecting bot behavior.
One thing I'm still wondering about is human-human collusion. It's a big concern in breathe-the-same-air games between humans who don't know each other. Not sure about online poker, however -- do you get thrown in a table with randomly chosen players, none of whom you're likely to know? What about collusion between bots? E.g., you could be the only player at the table, not realizing you're playing against 6 bots, each of which knows what cards the others have.
Parent