Very little work has been done on poker by computing scientists,
although there are numerous commercial and hobbyist approaches.
The various computer-based approaches to poker can be classified
into three high-level architecture descriptions (or a mixture thereof):
expert system, game-theoretic optimal play, and simulation / enumeration-based
systems. Each of these will be discussed in the following sections.

This chapter will also discuss several case
studies of programs by computing scientists and hobbyists.
Included in the former group is the historical work of
Nicolas Findler along with the more recent ideas of
Daphne Koller and Avi Pfeffer. Findler worked on a
poker-playing program for 5-card draw poker [6].
Koller and Pfeffer implemented the first practical algorithm for
finding optimal randomized strategies in two-player imperfect
information games [10].
Among the hobbyist approaches examined are several that play poker on
an online poker server over IRC
(Internet Relay Chat). Three of these programs are
r00lbot, replicat and xbot (although
variations of these sometimes run under different names).
Additionally there are two public domain programs:
Smoke'em Poker for Microsoft Windows, as well as Seven-Card Stud
and Texas Hold'em implementations by Johann Ruegg
for the UNIX curses package.
There are numerous approaches by commercial companies, although
only a few have a target audience of professional players.
The best of these is Turbo Texas Hold'em by Wilson Software
(http://www.wilsonsoftware.com). It is an extremely rule-based
system.

The final section discusses the architecture selected for
our poker player and the reasons behind the selection.