PDA

View Full Version : Computers playing poker


sillyarms
01-14-2003, 12:11 PM
If you were a computer which poker game would you be best at? Computers have the ability to calculate odds almost instantly giving them an edge over humans in that aspect however computers have no feel for when someone is bluffing or simply betting a strong hand. So my question is at what poker game do you think a computer would be strongest?



sillyarms

p.s. my guess is 7 card stud because it is easier to calculate accruate odds with that many cards face up.

cepstrum
01-14-2003, 01:48 PM
computers in general fail miserably at reasonably complex poker games, no matter how well they calculate odds. 7-card stud would be a particularly bad game for them, as it's extremely complex and hand values can change radically in ways that even strong human players often fail to understand. even third street would be hard.

the games you want are those which can be played well with a few very simple rules: think 5-card stud and omaha high only.

cepstrum

tewall
01-14-2003, 02:49 PM
Sklansky discussed which poker games are the easiest to learn in one of his books. I think the list he came up with work well with computers as the games which have more rule-based strategies would be the easiest for both humans and computers to learn. I think the #1 game he listed may have been razz.

I think a computer could be programmed to play a reasonably solid game of limit 5 card draw, Jacks or better to open. That's a pretty mathematical game. I think computers would do O.K. at no fold'em games. There the strategies are driven more by mathematical considerations, so they should be programmable.

It would be simple to program a computer to play no limit hold 'em based on the "Sklansky system" (basically going all-in pre-flop with a certain list of hands)

eMarkM
01-14-2003, 05:07 PM
Poker is different than, say, chess in that it is a game of "imperfect information". You don't know what your opponent has, whereas chess is pure number crunching of variations.

There's a web site for a group at University of Alberta (http://www.cs.ualberta.ca/~games/poker/) trying to make a decent playing computer program that they hope will eventually be able to take on world class players. Some interesting articles if you're into the AI aspects of a poker playing program, even provides a bit of source code, too.

Not sure what the answer to your question is, which would it be best at. The group mentioned above is using HE, probably because it's the most popular.

Botman
01-14-2003, 05:13 PM
I have posted before numerous times on the Internet Forum, I am a computer scientist and the author of a bot which plays successfully online. I use a screen scraping modified version of VNC to read the pixels of cards, dealer button, etc; and I use algorithms like Wilson does (based on tables) along with AI to figure out generally what to do and then more specifically based on player interhand and intrahand history. I win about 2 BBs per hour at 2-4 and 3-6 HE but the 5-10 players are too tight and good for now for my bot.I am working on it.

Limit Holdem is not that difficult to program to play well,
but it is not for the average person who has taken a CS course or two. (I worked extensively [not recently or at Alberta] on Chess and Bridge programs for graduate degrees and while at universities and research centers when I was young (alas). Poker is more difficult in some ways and much less difficult in others.)

Limit 7-stud is what I should have programmed due to greater information, but I enjoy HE more, so I did it first.

My instinct is that the best game money wise to program would be Limit Omaha but it is also the hardest to find online.

Just my thoughts,

Botman /forums/images/icons/club.gif

cepstrum
01-14-2003, 06:04 PM
hello botman -

i am also a computer scientist, and i think that if you really do have a bot that's beating, say, paradise 2-4 or 3-6 out of 2 bets an hour, that's worthy of a phd, or another if you already have one. perhaps you should publish your results, because you are making quite a claim.

cepstrum

andyfox
01-14-2003, 06:27 PM
"I use a screen scraping modified version of VNC to read the pixels of cards, dealer button, etc; and I use algorithms like Wilson does (based on tables) along with AI to figure out generally what to do and then more specifically based on player interhand and intrahand history."

Yeah, I to that to. Or, if the pot is big, I call; if it's small, I fold. /forums/images/icons/grin.gif

andyfox
01-14-2003, 06:28 PM
"I use a screen scraping modified version of VNC to read the pixels of cards, dealer button, etc; and I use algorithms like Wilson does (based on tables) along with AI to figure out generally what to do and then more specifically based on player interhand and intrahand history."

Yeah, I do that to. Or, if the pot is big, I call; if it's small, I fold. /forums/images/icons/grin.gif

andyfox
01-14-2003, 06:28 PM
"I use a screen scraping modified version of VNC to read the pixels of cards, dealer button, etc; and I use algorithms like Wilson does (based on tables) along with AI to figure out generally what to do and then more specifically based on player interhand and intrahand history."

Yeah, I do that too. Or, if the pot is big, I call; if it's small, I fold. /forums/images/icons/grin.gif

Kurn, son of Mogh
01-14-2003, 06:32 PM
Omaha8

Botman
01-15-2003, 12:12 PM
Hi, it isn't phd caliber work in my opinion.

About other publications:

I wrote a letter to "This American Life" including a lot of details, after Ira's show on Las Vegas Poker; they said it was interesting, but they politely rejected a radio show with interview from my study -- where my machines are set up (PC on one desk, Linux running a modified VNC on another making the actual moves).

I have offered the story on what I've done to a few publications -- not technical ones -- both Poker related and also more general magazines (with an initial draft),
no answers from anyone yet, but I suspect they will be rejected.

I always offer all comers to see the game play. It is pretty amazing to watch. The program plays really well, but it has some 'other' overwhelming advantages over 2-4 and 3-6 players.

Botman

droidboy
01-15-2003, 12:40 PM
why not post a screen shot?

Botman
01-15-2003, 06:24 PM
Anything I post shotwise, including photes, can be faked.

For instance, who here really believes that Ange, of Paradise fame, with her elaborate website, was really who she said she was, or even a woman for that matter? (Since she failed the Paradise test posted by others here on how you can tell the real gender of a Paradise player, I think she was a man, even though her so-called photos looked very female.)

I could post tables of rules for different hands, or my prefloptables.c, which defines what I do preflop, and which
would be a pain in the ass to just type in to fake you out.

But mostly I enjoy winning $$ while at work, or while I am in the shower or in bed with the lovely Mrs. Botman. And I await the XYZZYX Pokerroom Challenge, where they offer to pay $100k to any bot that can beat the game; or any real magazine or Cardplayer Mag or whatever, who wants a cool story and will pay for it after coming to the Botcave and watching it play.

Botman /forums/images/icons/club.gif

mdlm
01-15-2003, 08:03 PM
Very interesting info botman.

1. I have posted before numerous times on the Internet Forum,

According to the info next to your name you've only posted 3 times?! Under what name have you posted on the Internet forum.

2. The program plays really well, but it has some 'other' overwhelming advantages over 2-4 and 3-6 players.

What are some of these 'overwhelming' advantages?

3. I could post tables of rules for different hands, or my prefloptables.c, which defines what I do preflop,

Can you do that or email them to me?

4. I use a screen scraping modified version of VNC to read the pixels of cards, dealer button, etc

What is VNC? Do you screen scrape from the dealer text? Or straight from the screen? Have you found some sites easier to screen scrape than others?

Botman
01-15-2003, 11:13 PM
1. According to the info next to your name you've only posted 3 times?! Under what name have you posted on the Internet forum.

This forum used to have anonymous posting rules. I have made about 1000 posts (at least) on 2+2. But this ID is new.
I have real id, under which many people know me.

2. What are some of these 'overwhelming' advantages?

Oh, it always calculates odds right. It never tilts. It check raises a lot, which has 3-4 major advantages (see posts by Sklansky on this topic). It never has fear. I will stop there. There is much more.


3. Can you do that or email them to me?

Send me a PM here, I will cut a bit of C code into a PM back. But it really proves nothing. Consider my plight: I have written a brilliant program, I could get a second phd for it /forums/images/icons/smile.gif but I cannot put my name to it. Oh, sigh.


4 What is VNC? Do you screen scrape from the dealer text? Or straight from the screen? Have you found some sites easier to screen scrape than others?

4. I wonder why you did not got str8 to google to lookup what VNC is. If you did, you would find that it is a remote control program which comes with source code. The source code allowed me to read screens, crack what cards are what, where the button is, when my FOLD, Call and Raise buttons appear, etc --- FROM A SEPARATE COMPUTER -- this is important. I crack screens, I can do it on many sites.

I hope you are enlightened /forums/images/icons/smile.gif

Botman /forums/images/icons/club.gif

mdlm
01-16-2003, 08:36 AM
This is excellent stuff. Thanks for the clarification.

Here are a few more questions:

1. The source code allowed me to read screens, crack what cards are what, where the button is, when my FOLD, Call and Raise buttons appear, etc --- FROM A SEPARATE COMPUTER -- this is important

Why is it important to have it on a separate computer? Is this to get VNC to work or is there some other reason?

2. Did you find it harder to create the VNC "crack" code or was it harder to create the code that beats hold 'em?

3. Since you have a program that works automatically, you are in a great position to evaluate how hard the LL games are at each site. Which sites does your system find easiest to beat? Which are hardest?

4. Once your system has figured out whether it wants to check/raise/fold, how does it click on the button?

5. Instead of using the VNC system to screen scrape would it be easier to look at the Internet communication information and get the card values, players, etc. from there?

Thx.

Botman
01-16-2003, 04:48 PM
1.Why is it important to have it on a separate computer? Is this to get VNC to work or is there some other reason?

Easier for me, and I think easier to debug.

2. Did you find it harder to create the VNC "crack" code or was it harder to create the code that beats hold 'em?

2. Both are very hard, not sure which is harder though.

3. Since you have a program that works automatically, you are in a great position to evaluate how hard the LL games are at each site. Which sites does your system find easiest to beat? Which are hardest?

3. Not sure. Poker is a game which hasa long term view, so I think I will not know the answer to this for a few yrs.

4. Once your system has figured out whether it wants to check/raise/fold, how does it click on the button?

4. VNC has a function which moves and clicks the mouse. I call that function.

5. Instead of using the VNC system to screen scrape would it be easier to look at the Internet communication information and get the card values, players, etc. from there?

5. I wouldn't even try that, since all sites claim to encrypt their data, and I believe them. If anyone can tell me how to read data from one of the sites I would love to know.


Botman

KrackedKings
01-17-2003, 05:41 PM
Botman,

One main question:
How does your AI differ from the lookup tables in Wilson's Turbo Texas Holdem? You imply that your program uses tables as Wilson's program does, but that there is separate AI. Give us some idea of how they interact and what this separate AI is really (lookup tables can be considered AI themselves, yes/no), or are you just using more advanced lookup tables?

Supplementary questions:
I'd like to see the lookup tables, and compare them with Wilson's best "profiles." Possible?

How long has online poker got if this info becomes accepted truth? If bots destroy the bottom end of online poker, they will destroy online poker completely (I was hoping this progression would take another four years or more). As far as I can see if you can prove your claim, it'll make you famous. Exploiting fame can be very valuable. You wouldn't have to hide it, what are the legal problems? None that I can see.

Also, I think you have a pretty fair idea of which sites are weakest (note: you say that the program does not handle 5-10 HE yet, and that is a "short run" deduction), so which sites have your program done the best at so far?
Information please?

Thanks in advance for any answers.

AlanBostick
01-17-2003, 06:49 PM
The very best games for computers would be five-card draw and five-card lowball draw, simply because of how straightforward a winning strategy can be in these games, at least against unsophisticated players.

Back while the old IRC poker server was running, both Greg Wohletz' r00lbot (a perl script, as I recall) and the U. of Alberta program, Pokibot, were regular players. Both beat the games quite handily, in the face of reasonably sophisticated opposition. The 10-20 game played like free-money games anywhere; but players couldn't play 20-40 unless they won their buyins in the 10-20, and that filtered for at least a minimum of poker skill. r00lbot and Pokibot played in both. The 20-40 game was about as tough as a California or online 6-12 game.

Both bots won solidly, although I think r00lbot beat the game much more handily than Poki did. r00lbot's play algorithms were abstracted from Sklansky & Malmuth; I think the Alberta group wanted their program to generate it's own principles of good play.

I see no reason why bots couldn't play in online games. Botman's approach sounds completely feasible to me; and I don't see why someone couldn't hack at a poker-site client to get access to the incoming data after it's been decrypted. (One obvious approach: look at what card images are being loaded into the graphics buffer.)

BruceZ
01-17-2003, 08:36 PM
In the introduction to Caro's Fundamental Secrets of Winning Poker it says Caro has a computer called Orac that could play pro level heads-up no-limit hold'em in the mid '80s. It has since been enhanced, and Caro says it has a distinct advantage over any player in the world.

KSU78
01-19-2003, 11:20 AM
Botman,

I am not going to say that what you have presented here is not pausible. I will say that I have no fear of playing against a bot. They are not infallible in poker terms. And rest assured, they will not destroy on-line poker.

I understand the game of blackjack. And a computer can and does play blackjack perfectly. That's why they are illegal in a casino. However, blackjack is not poker. In Texas hold'em, it is plain and simple that one does not need a computer to calculate the odds or to optimize play. Carbon-based gray matter can do the same quite well with outstanding accuracy. If I were to undertake such a project, I would make certain that the game was 7 card stud. It offers the greatest potential for making a profit. On the other hand, Texas hold'em offers the greatest potential for a loss.

Respectfully,
KSU78

Botman
01-19-2003, 01:45 PM
You said:

One main question:
How does your AI differ from the lookup tables in Wilson's Turbo Texas Holdem? You imply that your program uses tables as Wilson's program does, but that there is separate AI. Give us some idea of how they interact and what this separate AI is really (lookup tables can be considered AI themselves, yes/no), or are you just using more advanced lookup tables?

ANSWER: More advanced tables, which take into account number of players, what they've done before, and pre and post ratchet up and ratchet down logic, which takes secondary effects into account. Not really AI, but neat brute force.


Supplementary questions:
I'd like to see the lookup tables, and compare them with Wilson's best "profiles." Possible?

ANSWER: No. Sorry, I am keeping this to myself. I am hoping that an article on this makes it to a real magazine, then I will show some shots and code.

How long has online poker got if this info becomes accepted truth? If bots destroy the bottom end of online poker, they will destroy online poker completely (I was hoping this progression would take another four years or more). As far as I can see if you can prove your claim, it'll make you famous. Exploiting fame can be very valuable. You wouldn't have to hide it, what are the legal problems? None that I can see.

ANSWER: I am really doing this. It is pretty hard. I do not think I will beat 10-20 and up players regularly and I do not that others will, so I think there is ZERo danger for online poker.

Famous, I already am, no bull, at least in the business circles I run. So I am doing this as an intellectual challenge.

Also, I think you have a pretty fair idea of which sites are weakest (note: you say that the program does not handle 5-10 HE yet, and that is a "short run" deduction), so which sites have your program done the best at so far?
Information please?

ANSWER: Sorry, that's private. I would be crazy to name a site I have played at.


Thanks in advance for any answers.

My pleasure,

Botman /forums/images/icons/club.gif