At a tournament worth $50,000 held earlier this week
at the Association for the
Advancement of Artificial Intelligence's annual conference in Vancouver,
B.C., poker pros Phil "The Unabomber" Laak and Ali Eslami went up
against Polaris, the reigning world champion computer-poker program.
The two poker pros were sat in different rooms, where each
sat in front of a laptop to play Texas Hold ‘Em. The competition featured four
matches, 500 hands each, between Polaris and the two poker playing
At the end of the first round, Polaris had a slightly higher
chip count, though the total winnings difference was so small that the round
was considered a draw (due to statistical variation). The second round – and
the last for Monday – went in strong favor to Polaris.
The humans made a comeback the next day. At the end of the
two day showdown, the two poker players came out $570 ahead – just enough to
claim a small victory over the computer program.
"I really am happy it's over," said
Eslami. "I'm surprised we won.... it's already so good it will be
tough to beat in future."
The programmers behind Polaris used several different
programs throughout its poker play to test which would be most effective. Phil
Laak described one named Mr. Pink as a "careful, reasonable, disciplined, thoughtful player," while he
called another one named Agent Orange as being "like a crazed, cocaine-driven
maniac with an ax."
subtlety to the whole thing is, we won, not by a significant amount, and the
bots are closing in," Laak told MSNBC.
"That's the true summary."
quote: I.e., if the computer was dealt AA against Laak's KK in their hand #1, then Eslami was dealt AA vs. the computer's AA when he played HIS first hand.
quote: ...Polaris, the reigning world champion computer-poker program...
quote: Man Emerges Victorious in Poker Match Against Machine
quote: "I really am happy it's over," said Eslami. "I'm surprised we won.... it's already so good it will be tough to beat in future."
quote: (...) Poker isn't like chess. There are two main things that make it very different to program:1 - You don't know everything. The opponents cards are a mystery.2 - Neither of you knows which cards will be placed on the table.I distinguish both these factors since they must be handled differently.A program can easily learn statistics and know the odds of any card being drawn and which hand is most probable to win.On the other hand, it is a lot harder to effectively learn how a certain opponent reacts to a good or a bad hand or how he adapts his play to the amount of chips each player has and the size of the pot on the table. It is possible. It can even learn how to use bluffs and when to call or fold. But this is extremely hard to program and is compounded by the fact that you must "reward" the computer when it looses if the decision he made had the best probability of success (and "punish" him, even when he wins against the odds). Furthermore, you can't implement a decent reinforcement learning algorithm if you don't see your opponent's cards when any of you fold (this is a BIG deal since this will make it much harder for you to understand your opponent and evaluate your decisions). In training the computer should probably cheat and see the opponents cards when anyone folds.Plus, even if they make the perfect program, but they make it deterministic (= same situation->same output), the opponents will find it easier to predict on certain situations. Obviously this isn't simple since the opponent does not know your cards, but it can be exploited in some situations. That means a small amount of randomness (or intolerance towards repetition) should be introduced on certain decisions.This is a very difficult problem and this first time around, I would bet on the humans.By next year, if the team is committed to the problem, I would bet on the computer. Why? Because the problem here is finding and fine tuning the best algorithms. The problem with chess is mostly lack of computer power for the needed calculations. You need algorithms that provide the best moves without taking years to compute. In poker you don't require that much computing power; only good algorithms, a very good implementation of reinforcement learning, and lots of time to play against the program (and to make it play against other computers).The current situation is that a chess game can be lost because computers aren't fast enough, while a poker game will be lost because the algorithms weren't good enough (or simply bad luck since there's randomness involved). The first problem will not be easy to solve since you need massive improvements in computing power. The second can be solved by a single brilliant person.Obviously, when you're at the tournament you will also require a bit of luck.