alpha/beta pruning
alpha/beta pruning
(games, algorithm)An optimisation of the minimax
algorithm for choosing the next move in a two-player game.
The position after each move is assigned a value. The larger
this value, the better the position is for me. Thus, I will
choose moves with maximum value and you will choose moves with
minimum value (for me).
If it is my move and I have already found one move M with value alpha then I am only interested in other moves with value greater than alpha. I now consider another of my possible moves, M', to which you could reply with a move with value beta. I know that you would only make a different reply if it had a value less than beta. If beta is already less than alpha then M' is definitely worth less than M so I can reject it without considering any other replies you might make.
The same reasoning applies when considering my replies to your reply. An alpha cutoff is when your reply gives a lower value than the current maximum (alpha) and a beta cutoff is when my reply to your reply gives a higher value than the current minimum value of your reply (beta).
In short, if you've found one possible move, you need not consider another move which your opponent can force to be worse than the first one.
If it is my move and I have already found one move M with value alpha then I am only interested in other moves with value greater than alpha. I now consider another of my possible moves, M', to which you could reply with a move with value beta. I know that you would only make a different reply if it had a value less than beta. If beta is already less than alpha then M' is definitely worth less than M so I can reject it without considering any other replies you might make.
The same reasoning applies when considering my replies to your reply. An alpha cutoff is when your reply gives a lower value than the current maximum (alpha) and a beta cutoff is when my reply to your reply gives a higher value than the current minimum value of your reply (beta).
In short, if you've found one possible move, you need not consider another move which your opponent can force to be worse than the first one.
This article is provided by FOLDOC - Free Online Dictionary of Computing (foldoc.org)