Alpha-Beta Suche
Idee
Die Alpha-Beta Suche ist eine Erweiterung des Minimax-Algorithmus und wird angewendet, um die Suche in dem Spielbaum zu beschleunigen. Hierzu werden Zweige weggeschnitten, die keine relevanten Informationen enthalten. [1]
Argumentation der Gültigkeit
Der maximierende Spieler findet einen Zug mit der Evaluation
Dieses Vorgehen, genannt Alpha-Beta Pruning, wird in Abb. 1 visualisiert.
Ein vollständiger Korrektheitsbeweis ist in dem Artikel von Donald E. Knuth[2] zu finden.
Umsetzung
Beim Parsen des Suchbaums wird für den jeweils aktuellen Knoten ein Intervall
Sobald für den maximierenden Spieler ein Zug gefunden wird, der für eine Bewertung
Wenn für den maximierenden Spieler eine Zugbewertung
Wenn für den minimierenden Spieler eine Zugbewertung
Perfomance
Die Anzahl
Wenn die Alpha-Beta Suche die maximal mögliche Anzahl an Knoten wegschneidet, verbleibt die folgende Anzahl an Blattknoten [1:3]:
T = \begin{cases}
b^{\frac{n+1}{2}} + b^{\frac{n-1}{2}} - 1 & n \text{ ungerade}
&\\
2b^{\frac{n}{2}}-1 & n \text{ gerade}
\end{cases}