Alpha-Beta Search
- A variation on minimax search
that avoids provably useless subtrees in the search space.
- Alpha is the best possible outcome (initially -1)
- Beta is the worst that can happen (initially 1)
- Modifying minimax (successor generation loop):
- Initial values for Alpha and Beta are taken from the parent node (-1, 1 for the starting node).
- For each legal move
m
:
- Generate a successor node (passing down current Alpha-Beta values)
- If the current player is the protagonist, and
successor's value is greater than Alpha, set Alpha to successor.
- If the current player is the adversary, and
successor's value is less than Beta, set Beta to successor.
- If Alpha ≥ Beta, exit the loop.