DeepStack
DeepStack is an artificial intelligence computer program designed to play two-player poker, specifically heads up no-limit Texas hold 'em. It is the first computer program to outplay human professionals in this game.
Background
is a key benchmark game in academic community and substantial amount of research was done to find optimal strategies against worst case adversaries.While human professionals have been outplayed in large perfect information games, such as Chess, decades before, imperfect information games require much more complex recursive reasoning.
Prior popular approaches relied mainly on simplification of the game by using abstractions. However, abstractions in imperfect-information games often result in highly-exploitable strategies.
Instead, DeepStack uses several algorithmic innovations, such as the use of neural networks and continual resolving.
The program was developed by an international team from Charles University, Czech Technical University and University of Alberta.
Algorithm
At the core of the program is the use of neural networks for determining the value of specific card combinations.The networks are trained only on a small number of games states and are used to generalize to situations not seen during training.
The program uses search with the neural networks and continual resolving to ensure strategy found at each step is consistent with the strategy used in previous steps.
The search procedure uses counterfactual regret minimization to iteratively update strategy in its lookahead tree, and the neural networks are used for leaf evaluation. The leaf evaluation avoids reasoning about the entire remainder of the game by substituting the computation beyond a certain depth with a fast approximate estimate.