Slashdot Mirror


Poker Driving Artificial Intelligence Research

J-Hawker writes "The Canadian Press has a story about a University of Alberta team that is using Texas Hold-'em to study artificial intelligence. Poker seems to be a much more useful game for this research than chess. From the article: 'Poker has what are currently some of the biggest challenges to (artificial intelligence) systems, and uncertainty is the primary hurdle that we're facing,' said Michael Bowling, adding that the University of Alberta program was able to use its opponents' actions to infer certain things about their hands. 'The same techniques, the same principles that we're developing to build poker systems are the same principles that can be applied to many other problems. The nice thing about chess as a property of the game is what we call perfect information. You look at the board, you know where all the pieces are, you know whose turn it is — you have complete knowledge of the game,' he said. 'But in the real world, knowing everything is just so rare. Everything we do all day long is all about partial information. So poker's much more representative of what the real world's like, and in that sense it becomes a much harder problem.'"

40 of 212 comments (clear)

  1. Straight Forward Evaluation by eldavojohn · · Score: 4, Interesting
    Poker seems to be a much more useful game for this research than chess.
    This shouldn't be a surprise. Poker has the advantage of always being able to simply evaluate your chip count. Chess doesn't. You can't enumerate chess games through the entire gamespace so the initial opening moves are based on libraries or heuristics. In response to the machine not knowing all aspects of the "game space," I thought that there were a lot of developments in the field that allowed these to be accounted for. What ever happened to good old Trial and Error or Fuzzy Systems? Aren't these viable strategies when playing poker?

    What confuses me is how the poker openings differ. I would speculate that a program would be some heuristic relating the ratio of bluffing to "playing the odds." I have gambling friends that play poker all the time and they have these rules that they follow when they play initially against people. They say it's the best until you "know" the people you're playing. Once you can read them then you deviate from the rules. The real irony is that the most successful people I know adhere to a system until they learn someone's movements. Sounds to me like I would write an application that specializes in playing the odds until it recognizes a historical action that statistically reveals the player is bluffing/not bluffing.

    Simply put, unless you knew someone's reputation as being a bluffer, you would play the opening hand always the same way. Aren't we forced to program the "AI" of the poker software as being this simple heuristic? Will programs ever be able to "read" players intelligently or will they rely on Markov models & statistics they develop from playing against the same human over and over?

    Most unfortunate is the fact that the primary reason my friends gamble is they don't experience the same kind of rush while playing other games as they do with poker because it's more social than other games. If we program applications to beat humans, where does the "social aspect" of the game go?

    Even more interesting is the network of poker bots that are set up and running some of the web sites that host poker players. Imagine sitting down at a table of five with four of the other seats taken. Now imagine that these aren't humans but instead bots on four different IP addresses that are sharing card information over an IP connection so that they can leverage odds over you and stop themselves from making stupid mistakes (i.e. they share a card on the table for a pair but really need three of a kind to pose a threat). There's a reason why the percentages fluctuate on TV when cards are revealed whether they be in the flop or in another player's hand.
    --
    My work here is dung.
    1. Re:Straight Forward Evaluation by bdonalds · · Score: 5, Interesting
      Now imagine that these aren't humans but instead bots on four different IP addresses that are sharing card information over an IP connection so that they can leverage odds over you and stop themselves from making stupid mistakes
      Just to address a small part of your post- Bots Schmots! This is a problem already with humans. I used to like to play Euchre and the like online, but too many times it became obvious my opponents were communicating to each other and ruined the fun.
      --
      The most important thing to do in your life is to not interfere with somebody else's life. -FZ
    2. Re:Straight Forward Evaluation by andrewman327 · · Score: 2, Insightful

      I agree with you in part. Poker is a game of odds with lots of unknowns. It is quite easy to calculate the odds based on what limited information you have which is what the poker TV shows do to simplify things for viewers. But like you said, your buddies use more advanced practices against known players. I would love to see some advanced biometric lie detector used as part of the AI platform to determine the probability of a bluff and factor that into its thinking.

      --
      Information wants a fueled airplane waiting at the hangar and no one gets hurt.
    3. Re:Straight Forward Evaluation by Pulzar · · Score: 2, Interesting
      Simply put, unless you knew someone's reputation as being a bluffer, you would play the opening hand always the same way. Aren't we forced to program the "AI" of the poker software as being this simple heuristic?


      The simpler the heuristic used to program the AI, the easier it will be for the opponents to figure out what the bot is doing. A big difference between a mediocre and a successful poker player is the ability to vary their play significantly enough to make it hard for anybody to put them on a hand, without impacting their play so much that they are playing badly.

      There are many systems out there developed for the "opening hand", as you call it, and, yes, AI can be programmed to play the preflop game fairly well. After the flop, though, it's a whole different game. As much as you hear about odds in poker, it's not a matter of simple math to calculate them and play "proper odds". You only know your odds if you know exactly what every opponent has... and that's where simple heuristics fail miserably.

      Finally, even if you knew everybody's cards, even then you would still need to know exactly how much they are going to bet (if at all) in the future rounds of betting in order to calculate the exact odds you're getting. Once again, that's something that's still very hard for bots to figure out.
      --
      Never underestimate the bandwidth of a 747 filled with CD-ROMs.
    4. Re:Straight Forward Evaluation by Pulzar · · Score: 3, Insightful
      I used to like to play Euchre and the like online, but too many times it became obvious my opponents were communicating to each other and ruined the fun.

      In Euchre, knowing your partner's cards is a *huge* advantage... In poker, knowing the cards on one other player at the table gives you such a minute advantage that it's irrelevant in almost all practical cases.

      Sure, if all of the players at the table except for you are sharing their cards, and are not required to conceal it (i.e. they can openly collude in their betting patterns against you), then they have a big advantage. But, that's, again, not very realistic.
      --
      Never underestimate the bandwidth of a 747 filled with CD-ROMs.
    5. Re:Straight Forward Evaluation by Propagandhi · · Score: 4, Interesting
      Aren't we forced to program the "AI" of the poker software as being this simple heuristic? Will programs ever be able to "read" players intelligently or will they rely on Markov models & statistics they develop from playing against the same human over and over?
      Playing poker with 100% consistency is no way to be an excellent poker player. It's easy to make a bot that follows a set of statistics which give it a good chance to win regardless of how their opponent ha played in the past, but if the bot takes into account the player's past actions then it can improve its chances of success. Taking into account the opponent's aggressiveness becomes especially important late in a tournament style match (when other players have been eliminated), most bots aren't designed to play in these situations (hence why you don't see many bots in tournaments, playing instead at the normal tables).

      The bot would, ideally, be as good as a very observant player, noting those who bluff and those who don't. Obviously noting 1 or 2 bluffs or non-bluffs would not be enough to make a decision, but over the course of a long tournament, or even better a poker playing career, this information would become very useful. The bot would learn its opponents, and this is what makes it an interesting problem.

      Even more interesting is the network of poker bots that are set up and running some of the web sites that host poker players.
      I'd argue that cheating at online poker isn't very interesting at all. Humans can do the exact same thing, and online poker companies monitor game's to ensure that there isn't an uncommonly high percentage of people in the same area playing any game. Obviously it might be easier to distribute the bots across the country, but I think it's still more likely (today) to run into actual players grifting you in this manner.

      There's a reason why the percentages fluctuate on TV when cards are revealed whether they be in the flop or in another player's hand.
      Quantum physics, right? You can accurately determine the odds of winning, or the cards in hand, but not both at the same time? Swear I read something about this somewhere.
    6. Re:Straight Forward Evaluation by The+Mad+Debugger · · Score: 2, Interesting
      What confuses me is how the poker openings differ. I would speculate that a program would be some heuristic relating the ratio of bluffing to "playing the odds." I have gambling friends that play poker all the time and they have these rules that they follow when they play initially against people. They say it's the best until you "know" the people you're playing. Once you can read them then you deviate from the rules.
      and
      Simply put, unless you knew someone's reputation as being a bluffer, you would play the opening hand always the same way. Aren't we forced to program the "AI" of the poker software as being this simple heuristic? Will programs ever be able to "read" players intelligently or will they rely on Markov models & statistics they develop from playing against the same human over and over?
      Unfortunately it's not quite that simple. First of all, the opening strategies have quite a lot of inputs. Your action varies based on the cards in your hand, the amount of money on the table, your position in the game (did you act first, or last, or somewhere in between), who is in or out, how they've acted (called or raised), etc.

      Second, good poker strategy is not just reactive. It includes active attempts to probe for information by examining the reactions of others at the table. In general your strategy remains fairly constant, but you adjust your behavior (how aggressively do you play), based on the information that you've learned by observing the play of others at the table.

      Third, good poker strategy is intentionally deceptive. Sometimes you might specifically decide to play the same hand a different way the second time than the first. Sometimes you will bet your cards for value, and others you won't.

      In the long run, you're going to end up with an estimation of each player, and how well/poorly agressively/meekly they're playing, and that's information that you form over time. It's also hard to come by sometimes, because when a player folds, you generally don't get to see their cards, and it can be very expensive to take lots of hands all the way to a showdown just to see what the other player had. At the same time, you're trying to hide as much information as you can from the other players at the table, and possibly create a false image of your intents.

      That's what this article is about there is a *lot* there, which makes it a very interesting problem. Your behaviors aren't nearly as fixed as they are in chess. It's further complicated by conflicting opinions as to the best play of certain hands and situations.

      If you're interested in the mathematical and game theory aspects of poker, check out "The Theory of Poker" by David Slansky. It has lots of great discussion on the mathematical basis of decisionmaking in poker, including theory of bluffing, etc. Of course, as I just mentioned, it's not the only opinion on how poker should be played, but it's a good starting point.

      Most unfortunate is the fact that the primary reason my friends gamble is they don't experience the same kind of rush while playing other games as they do with poker because it's more social than other games. If we program applications to beat humans, where does the "social aspect" of the game go?
      Poker bots can be mostly sucessful because there are a lot of iditots who play mathematically unsound poker, and are pretty much begging to give their money away. If your bot playes sound poker, it doesn't matter if you give up some money to players who are playing better. Your expectation is positive because there is so much money there to be had.

      If you don't like the idea of bots, get some friends, some beer, and play in your kitchen. It makes it much harder to have colluding computers (as you described) take your cash. Plus, then, you also get to drink beer.
    7. Re:Straight Forward Evaluation by brunes69 · · Score: 4, Informative

      What confuses me is how the poker openings differ. I would speculate that a program would be some heuristic relating the ratio of bluffing to "playing the odds." I have gambling friends that play poker all the time and they have these rules that they follow when they play initially against people. They say it's the best until you "know" the people you're playing. Once you can read them then you deviate from the rules. The real irony is that the most successful people I know adhere to a system until they learn someone's movements. Sounds to me like I would write an application that specializes in playing the odds until it recognizes a historical action that statistically reveals the player is bluffing/not bluffing.

      You can tell you don't play much poker.

      Part of what differentiates a pro player to an amatur player in poker, is the ability to "project an image". A pro player will purposefully *project* an image of a bluffer, or a tight player, so that they can exploit that image of themselves when they see fit in the game.

      Thusly, it is very difficlt to get a "read" on a good poker player, because not only do you not know what cards they have, but you don't know how they would play for any two given cards, so you can't use their behaviour to prdict the cards they have.

      In the end, the above description is what any decent player is aiming for while they play.

      Because of this, a computer can have a hard time going beyond implied odds calulations in determining how to play a hand - and any pro ill tell you, implied odds are a good starting point, but they won't make you money in the long run.

    8. Re:Straight Forward Evaluation by rcs1000 · · Score: 4, Interesting

      Two things:

      (1) Knowing the cards of the other players is a small, but significant, advantage. Say you've got two hearts, and your three buddies have a heart each. Well, you're chance of getting another three hearts on the table are significantly affected. (Likewise, if they have none, it increases the chance you'll want to stay in and catch the flop.)

      (2) Much more serious, though, is collusion in betting. You and your buddy can conspire to raise the pot *as much as you like*. In a fixed raise game, this is an enormous advantage. Another player cannot just "call" and see the next card, as there will always be a player still to call who can reraise.

      Personally, though, I love bots. I'm happy to play them all day long. (So long as they're not colluding, of course...)

      Cheers,

      Robert

      --
      --- My dad's political betting
    9. Re:Straight Forward Evaluation by Relic+of+the+Future · · Score: 2, Interesting
      When it's REAL MONEY on the line, any advantage can be significant enough to warant taking advantage of it.

      That said, uses (and abuses and detection) of out-of-band communication isn't what this research is about; those are concerns for someone else's research project. It's a problem that has plagued poker (and euchre and bridge and a thousand other partial-information games) since the game was invented. That's not a technological problem or a decision making problem, it's a social problem, and A.I. hasn't quite yet advanced to the point where we can worry about it trying to cheat at cards. (Although I welcome the day that we do have to worry about that.)

      --
      Those who fail to understand communication protocols, are doomed to repeat them over port 80.
    10. Re:Straight Forward Evaluation by Jerf · · Score: 2, Insightful

      You only know your odds if you know exactly what every opponent has... and that's where simple heuristics fail miserably.

      Completely untrue; you clearly don't understand the purpose of "odds" and probability. The entire purpose of "computing odds" is to deal with situations where you don't have all the information. If you had all the information, you wouldn't be "computing odds", you'd just know.

      It is a simple matter of math to compute odds based on knowing what you have, and not knowing anything else. You can't compute the odds they show you on the TV when they know all the hands on the table, but the human gamblers don't get those odds either.

      It isn't a simple matter of math to know what to do with those odds, and that's the problem. Computing the odds is a pretty straightforward task, though.

      So, in a nutshell, you're claiming that AI players have special problems because they can't compute odds that the human players can't compute either. If anything, it's easier for bots because they can run 100%-accurate real math in the blink of an eye, where a human will probably be using an approximation.

    11. Re:Straight Forward Evaluation by Pulzar · · Score: 2
      Completely untrue; you clearly don't understand the purpose of "odds" and probability. The entire purpose of "computing odds" is to deal with situations where you don't have all the information. If you had all the information, you wouldn't be "computing odds", you'd just know.

      Well, I have to say that it is you who is mistaken about the purpose of the odds. See, even if you know everybody's cards, you don't *know* who is going to win, because there are 5 community cards that have to be dealt.. (in later betting stages, there will, obviously, be less of them still to come). What you are doing when you see everybody's cards is calculating the odds of a player winning the hand once every community card has been dealt. Those are the odds you typically see on TV poker shows. Of course, once the final card (typically called river) has been dealt, then you *know* who wins.

      It is a simple matter of math to compute odds based on knowing what you have, and not knowing anything else. You can't compute the odds they show you on the TV when they know all the hands on the table, but the human gamblers don't get those odds either.

      Clearly, it is not a simple matter of math to compute the odds knowing what you have an not knowing anything else. Having two 3s on a flop of 456, you can easily compute the odds of you hitting a straight, a set, or a full house. Calculating the odds of that actually being the best/winning hand is completely different. This is where you have to know the probability of the opponents holding hands that could beat you even if you hit something (or the probability of them holding something that can't beat a pair of 3s). That is an exercise in psychology, recognizing betting patterns, gut feel, etc. much more than any kind of simple math. Good AI bots actually use some pretty advanced math trying to do this prediction (which results in percentages assigned to every possible hand that an opponent could have), but there's obviously still a lot of room for improvement. The UofA poker site has some very good papers on the methods that they have used in the past...
      --
      Never underestimate the bandwidth of a 747 filled with CD-ROMs.
    12. Re:Straight Forward Evaluation by Pulzar · · Score: 2, Interesting
      (1) Knowing the cards of the other players is a small, but significant, advantage. Say you've got two hearts, and your three buddies have a heart each.

      In general, 4 guys playing together on one table is hard to do more than a couple of times before being flagged on any poker site. So, in most cases, you'll have one buddy telling you that he has no heart (affecting the odds by a negligible amount, and the most likely case), one heart (affecting the odds somewhat, and somewhat less likely to happen), or two (which will happen the least often, but will affect the odds the most).

      So, it depends on the definition of 'significant', but the small edge that you will get once every 40-50 hands (probability of having 2 suited cards and flopping a flush draw) is not enough to significantly influence the outcome of a game. The quality of your play in other 39 out of 40 hands will be the deciding factor.

      (2) Much more serious, though, is collusion in betting.

      Very true, but this is, luckily, very easily detectable when all of the cards are visible to somebody (i.e. the online poker room operator). So, it's something that you can only do for a short period of time before somebody complains to the operator, at which point it will be obvious that two players playing at the same table a lot are following this particular betting pattern.

      It's probably only worth it to sit down at the highest limits possible, try to scoop some money very quickly, and never play again at that site. It's not a very good long-term strategy, though :).
      --
      Never underestimate the bandwidth of a 747 filled with CD-ROMs.
    13. Re:Straight Forward Evaluation by enjo13 · · Score: 2, Informative

      The bot would, ideally, be as good as a very observant player, noting those who bluff and those who don't. Obviously noting 1 or 2 bluffs or non-bluffs would not be enough to make a decision, but over the course of a long tournament, or even better a poker playing career, this information would become very useful. The bot would learn its opponents, and this is what makes it an interesting problem.

      A large part of what makes Hold'Em a unique challenge is that you really don't have a lot of deterministic information to go off of. A great many hands never reach the stage where you GET to see other players cards. So the data set is inherently incomplete. You can't know that a player likes to bluff, because an effective bluffer never actually shows his cards. After all, the whole idea of bluffing is that you never make it to the end of the hand where you HAVE to show your cards.So its not a simple problem of looking at past history to determine future play, because the past history is quite incomplete. You can know how often a player bluffs and gets called on it, but there may be another player who is actually bluffing much more often that AI can't know about through simple deterministic means.

      This is why players have the option of showing their winning hand after they've won a pot, even if it doesn't make it to the final draw. Actually making it to the final card is not that common in practice (I would guess about 1/3 of hands). A good player will intentionally create the PERCEPTION of a certain playstyle by showing (or not) cards at the end of the hand. They can use that in the future to change their playstyle and catch unsuspecting players. A purely historical approach to data (based on a LOT of unknown outcomes) just doesn't work well here.

      --
      Turn s60 photos into awesome videos with mScrapbook for all S60 3rd edition phones!
  2. AI doesn't work for Spades! by Dareth · · Score: 4, Insightful

    The AI is "able to use its opponents' actions to infer certain things about their hands"

    While it may seem logical to use the actions of people playing to determine something about their hands, in reality people do not play logically. My uncle has been playing spades for probably better than 30 years, yet I have yet in my relatively limited 10+ years of playing to determine any rational for how he plays. Basically, he really sucks at spades. No matter how "Intelligent" artifical or otherwise I manage to code a game, it can't reason out the reasoning behind a non-logical person.

    Good quote I say somewhere: Artifical intelligence is no match for natural stupidity!

    And this holds true for more than card game AI. It will not be too long until AI could reasonably drive around and get from point A to point B safely. But it will be a damn long time before it can do it if it has to share the road with people driving as well!

    --

    I only look human.
    My mother is a halfling and my dad is an ogre, so that makes me an Ogreling
    1. Re:AI doesn't work for Spades! by Relic+of+the+Future · · Score: 3, Insightful
      Go play against any of the simple online paper-scissors-rocks bots; then come back and re-evaluate your position.

      You are not as unpredictable as you think.

      --
      Those who fail to understand communication protocols, are doomed to repeat them over port 80.
    2. Re:AI doesn't work for Spades! by Jerf · · Score: 2, Insightful

      No matter how "Intelligent" artifical or otherwise I manage to code a game, it can't reason out the reasoning behind a non-logical person.

      Your understanding of Artificial Intelligence is about forty years out of date.

      Artificial intelligence does not use "logic" as its basic representation and hasn't for a while now. In fact your statement is trivially false; it is easy to write a program based on Markov Chains that will beat the snot out of an average human at Rock-Paper-Scissors, and the worst way to lose to that program will be to randomly/"non-logically" bash on the keyboard. I'm talking "undergrad homework assignment" easy. And even a skilled human will find themselves challenged by the program for quite while until they basically learn how to execute the program in their head and out-guess it.

      And Markov Chains are old and no longer considered interesting.

  3. More info than a real player? by Red+Flayer · · Score: 3, Insightful
    To ensure that no one computer got lucky, each side was given the opportunity to play its opponent's hand after each deal.
    Thereby eliminating one important premise of poker -- you don't know what hand an opponent was playing unless someone called the last bet. In terms of an algorhithm for the program to 'learn' based upon others' behavior, this means the program has a lot more information than a regular player would. Of course, it's possible to verify that this info isn't fed into the algorithm, but I'd be more impressed if the info wasn't available at all.

    Also, why ensure that no one computer got lucky? Isn't that the point of playing several thousand hands of limit poker, to eliminate the effect of luck in the study? If it's necessary to normalize all the hands received by the players, then something else is wrong with the study. I'd like to see if the results differed, and how, when the hand repetition is removed.
    --
    "Trolls they were, but filled with the evil will of their master: a fell race..." -- J.R.R. Tolkien on Olog-hai
    1. Re:More info than a real player? by Best+ID+Ever! · · Score: 2, Informative

      It's possible they're smart enough to start the programs with the same starting conditions in each case, i.e. no knowledge of their opponents hands.

      The effect of luck in poker win rates can still be seen over even 100000 hands. Google for "poker" and "confidence interval" for some in depth discussions on it.

  4. Not anytime soon. by Lejade · · Score: 3, Interesting

    Before anyone goes off about how AIs will eventually replace us, my company runs a (GPL and GNU/linux friendly) poker site and the last thing i am worried about is bots taking over humans in no-limit games. To win consistently against serious players an AI would need to be a LOT smarter than what the guys from Alberta have. It would need to have a serious grasp of human psychology. It might happen, eventually, but by then society might have changed so much that "money" might also be an obsolete concept...

    And even if such software existed, it would basically mean that you couldn't win at online poker anymore because skill would not be relevant anymore. That wouldn't be very different from the current situation with player-versus-casino luck games (like roulette or slots).
    And we can all see how poorly these are doing, right? :)

  5. Re:Bluffing by Cherita+Chen · · Score: 4, Informative

    Most good players don't actually "Bluff" in the sense that they are totally full of crap, and have no hand. Most bluffs are calculated risks based on the overall odds of "Improving" the hand, such as the case with four of a suit and two cards left to be turned over. In that case, the overall odds of hitting the flush are good enough to bet on (unless of course there is a pair showing on the board, which would indicate a possible full-house), even though the player has no "real" hand yet. Situations such as this can be quantified. Granted there are some real morons out there who will try to "bluff" with nothing, they are relatively rare and don't usually last long.

    --
    I'm not fat, just big boned...
  6. Already bots playing by slapyslapslap · · Score: 4, Interesting

    There are already bots playing against unsuspecting people at the online casinos. I'm not sure how much AI is involved, but apparently they play better than most humans.

    1. Re:Already bots playing by UnanimousCoward · · Score: 2, Interesting

      The bot issue is orthogonal to AI research WRT hold'em at this point. The theory behind deploying bots is playing 'solid' poker in low-stakes games (since that's where the 'bad' players are), winning pennies or small bucks per hour, and massively scaling up. The AI angle is, of course, more intriguing against 'good' players.

      --
      Twelve-and-three-quarter inches. Unyielding. This wand belonged to Bellatrix Lestrange.
  7. Re:Bluffing by AuMatar · · Score: 5, Informative

    Good poker players constantly semi-bluff and do continuation bets. They do plain bluffs in some situations too. Its all about reading your opponent- if I think an opponent will lay down a hand if he doesn't have a pair, I will always bet on the flop even with nothing- the odds favor him having nothing as well, and if he always lays down non-pairs I'll win more money by betting than I lose.

    --
    I still have more fans than freaks. WTF is wrong with you people?
  8. Everything I know I learned from Star Trek by The_REAL_DZA · · Score: 2, Funny
    ...poker's much more representative of what the real world's like...

     
    Kirk had to 'splain the same thing to Spock at least once...(Re: Episode #3, "The Corbomite Maneuver")
    --


    This space intentionally left (almost) blank.
  9. Re:If you are really interested... by Best+ID+Ever! · · Score: 4, Insightful

    If someone had a bot that could successfully beat online poker, why would they sell it?

  10. Sudoku is trivial for an AI by Harmonious+Botch · · Score: 2, Informative

    ...given a large enough stack. I think I could write a perfect Sudoku program in about 30 lines of code. Most of it would be a reursive routine.

  11. stupid computer by ExE122 · · Score: 4, Insightful

    "Computers aren't particularly good at learning, for example, or reasoning by analogy"

    Computers aren't good at retaining knowledge and recognizing patterns? That's news to me... this statement is obviously made by someone who doesn't know what he's talking about...

    A very strong and useful technique in AI is to create learning algorithms. Some of these, such as reinforcement learning, are actually quite effective. Using something like Monte Carlo methods to give it a randomness factor simulates human learning, and computers don't forget what they are taught. The difficulty with learning isn't that computers can't do it... it's being able to define an effective set of state-action pairs for the computer to learn upon.

    I spent time researching natural language processing, sometimes using AI techniques that did exactly what this person claims computers aren't good at: reasoning by analogy. One method involved building a knowledge base which generalized input so that patterns can be found and the grammar could be recovered. The weakness in the system wasn't reasoning by analogy, in fact I'd say computers are much better at that than people. It was rather a lack of a real world model which allowed for a wider array of perception.

    The reason this game is difficult is not based on a computer's inability to solve problems, rather that there are so many possibilities that we cannot effectively design algorithms that the can be put to use. This isn't even news, the same has been said about the game of Go for the longest time.

    I think a more accurate statement for this person to make would've been: "The overwhelming complexity of poker makes it a difficult game to define in a way for a computer to be able to play effectively."

    --
    "A man is asked if he is wise or not. He replies that he is otherwise" ~Mao Zedong

    --
    Capitalism: When it uses the carrot, it's called democracy. When it uses the stick, it's called fascism.
  12. Re:This is not good ... by arose · · Score: 2, Funny
    It fights back.
    They call the bluff.
    --
    Analogies don't equal equalities, they are merely somewhat analogous.
  13. Re:Innovation through vices by tbone1 · · Score: 2, Interesting
    Aside from military use (which to some might be a vice as well), isn't it interesting how much of our innovation nowadays is centered around profiting from people's vices (gambling, sex/porn, etc)

    Considering that a lot of naval technology of the 16th, 17th, and 18th centuries was stimulated by things like warfare, tobacco, sugar/rum, tea, coffee, and the slave trade, is this really surprising?

    --

    The Independent: Reverend Spooner Arrested in Friar Tuck Incident - ISIHAC, Historical Headlines
  14. Re:If you are really interested... by Anonymous Coward · · Score: 2, Informative

    Why don't you read about the software? This is just a toolkit. This software provides a .DLL that will allow your machine to interface with online poker sites and gather statistical data. There is also a mode that allows for automated play. It is important to note that you really need to be skilled (software/mathematics) to effectivly use the automated software. Again, if anyone is really interested in AI/online poker, this is THE tool to get you started.

  15. Re:Innovation through vices by OldeTimeGeek · · Score: 2, Insightful

    The operative word there is "profit". Profit is the motive - vice is merely the easiest way to achieve it.

  16. Computer Go by dahl_ag · · Score: 5, Interesting

    While it probably doesn't have nearly the financial motivation that poker does, the AI behind Computer Go also represents a huge challenge. The rules of Go are very simple, but it is impossible to 'solve' using brute-force techniques like you might use with something like chess.

  17. Not true at all by brunes69 · · Score: 2, Informative

    If you are chasing a flush, knowing the suits of the other person's two cards can ajust your odds bu a huge factor. For example, if you were four to a flush post-flop (giving you odds of 38/100 to hit your flush), and you all of a sudden know that two cards not in play are *not* of your suit, that ups the odds to 43/100 - this is a huge odd jump in hold-em, and can mean the difference between folding and going all-in in a race situation.

    Two players colluding in a game is a huge problem. Even a marginal advantage equals to a huge advantage played out over time.

  18. Poker isn't the best! by PresidentEnder · · Score: 2, Interesting

    Poker is only one of many double-blind, "real-world" games out there. I like the idea of making an AI learn poker (poker masters are more like human beings than chess masters, certainly), but it is my humble opinion that Kriegspiel is where it's really at.

    --
    I used to carry a bottle of whiskey for snake bite. And two snakes. -Nefarious Wheel
  19. Re:The real questions are... by Helios1182 · · Score: 2, Insightful
    Sudoku is incredibly easy to solve. In fact, the harder problem is figuring out how many unique boards, solutions, etc. there are. There was actually a good article in Scientific American a few months ago dealing with that.

    AI as a field is still very hot. The difference is that the goals have changed and the field has fractured into smaller sub-fields. The goal of a truly "human intelligence" doesn't seem feasible in any near term scenario. Fields such as statistical learning theory, natural language processing, computer vision, genetic algorithms, and many more yielded very interesting results.

  20. Limit vs. No-Limit by BadBlood · · Score: 2, Interesting

    One distinction to make is that bots can be and have been successful playing against human opponents in limit poker, where the bet size is fixed on each betting round.

    In no-limit poker, when each bet has the potential to cost your opponent all of their money/chips, the decision making process is more critical and mistakes more costly. Variance in no-limit poker is much larger and the AI required to determine whether your opponent is bluffing or has "the nuts" becomes a much larger problem to solve.

    --


    Praying for the end of your wide-awake nightmare.
  21. I don't get it... by rice_burners_suck · · Score: 2

    How can Poker be better to test IA than Chess? Isn't Poker a random game of chance, where Chess is a game of strategy and tactics? I don't get it.

  22. Imperfect bot by an imperfect man by inf4m0usB · · Score: 2

    Somewhere I read Go was a more challenging setting for AI... Anyways, in the end the bot will only be as smart as the programmer(s) and whatever weakness a programmer has in his game/logic an elite player will be able to abuse that weakness in the bot. Lets not forget, poker also involves a great deal of acting. If you can determine how a bot analyzes its opponents, you can feed it bad information then wait for the full house (on the low pocket pair) against the ace high flush...I'm all in!

  23. Re: No more info than a real player. by eisbaer4 · · Score: 2, Informative

    I am a member of the Alberta team.

    The article did not explain this part of the competition very well. The bots did not have access to any hidden information. The opponent's cards were only revealed at a showdown.

    Here's how it works. A mini-match (1000 games) was played, with all of the cards recorded. Then a completely separate mini-match was played with the same cards, but with the positions reversed. This is possible because fresh copies of the programs can be started with a clean slate, having no memory of the previous match. (In fact, the two halves of the mini-match aren't even played on the same computer). Many of these duplicate matches were then played (40 for the fast competition, 12 for the slow competition) between each pair of players.

    It is essential to run the matches in duplicate, in order to equalize the opportunities each side gets. The natural fluctation (variance) due to luck is huge in poker, making it very difficult to separate the signal from the noise. The problem is much worse than most people imagine, making accurate measurement of performance a sticky problem. The duplicate matches go a long way toward reducing that variance, and revealing the true long-term expectation.

    [On a related note, I created a technique for direct assessment of poker decisions, which cuts away much of the noise. It is described in detail in my PhD thesis, which should be available from the CPRG website (http://games.cs.ualberta.ca/poker/) in September. A detailed analysis of the AAAI matches will also be available.]

    Incidentally, there are a lot of incorrect statements being made in this thread. See the post titled "Some Actual Factual Information" for links to some of the original sources.

        - Darse.

    --
    char*p="char*p=%c%s%c;main(){printf(p,34,p,34);}"; main(){printf(p,34,p,34);}