Alpha-Beta Pruning Under Partial Orders
Michael Ginsberg · 2002
. Alpha-beta pruning is the algorithm of choice for searching game trees with position values taken from a totally ordered set, such as the set of real numbers. We generalize to game trees with position values taken from a partially ordered set, and prove necessary and sufficient conditions for alpha-beta pruning to be valid. Specifically, we show that shallow pruning is possible if and only if the value set is a lattice, and full alphabeta pruning is possible if and only if the value set is a distributive lattice. We show that the resulting technique leads to substantial improvements in the speed of algorithms dealing with card play in contract bridge. 1. Introduction Alpha-beta (α-β) pruning is widely used to reduce the amount of search needed to analyze game trees. However, almost all discussion of α-β in the literature is restricted to game trees with real or integer valued positions. It may be useful to consider game trees with other valuation schema, such as vectors, sets, or constraints. In this paper, we attempt to find the most general conditions on a value set under which α-β may be used. The intuition underlying α-β is that it is possible to eliminate from consideration portions of the game tree that can be shown not to be on the “main line.” Thus if one player P has a move leading to a position of value v, any alternative or future move that would let the opponent produce a value v’ worse for P than v need not be considered, since P can (and should) always make choices in a way that avoid the value v’. The assumption in the literature has been that terms such as “better” and “worse” refer to comparisons made using a total order; there has been almost no consideration of games where payoffs may be incomparable. As an example, imagine a game involving a card selected at random from a standard 52-card deck. If I make move m 1 , I will win the game if the card is an ace.