Alpha-Beta pruning in Artificial Intelligence

Alpha-Beta Pruning Principle

If a move determined to be worse than another move that has already been examined, then further examining the possible consequences of that worse move is pointless.

Alpha-Beta pruning in Artificial Intelligence

Analysis of Alpha-Beta Pruning

This method provides its best performance when the game tree is assigned such that the best choice at each level is the first one to be examined by the algorithm using alpha-beta cut-off will examine a game tree to double the depth that a Minimax algorithm without alpha-beta pruning would examine in the same number of steps. How? If a game tree is arranged optimally, then the number of nodes that must be examined to find the best move using alpha-beta pruning cab be derived as found –

Alpha-Beta pruning Algorithm

function alpha-beta (current-node)
{
if is-leaf(current-node)
return static-evaluation(current-node)
if is-max-node(current-node) and
alpha-value of (current-node)>=
beta-value-of(min-ancestor-of(current-node)
then cut-off-search-below(current-node);
if is-min-node(current-node) and
beta-value-of(current-node)<= alpha-value-of(max-anchestor-of(current-node) 
then cut-off-search-below (current-node); 
}