Inną przewagą używania metod przeszukiwania iteracyjnego jest to, że na niskich głębokościach dają one wskazówki do porządkowania ruchów, które mogą być pomocne w odcinaniu gałęzi dla większych głębokości znacznie wcześniej, niż byłoby to możliwe w przypadku innych algorytmów.

Algorytmy takie jak SSS* z drugiej strony używają strategii best-first strategy.

Pseudokod Pseudokod algorytmu alfa-beta:

funkcja minimax(węzeł, głębokość) zwróć alfabeta(węzeł, głębokość, -∞, +∞)

funkcja alfabeta(węzeł, głębokość, α, β) jeżeli węzeł jest końcowy lub głębokość = 0 zwróć wartość heurystyczną węzła jeżeli przeciwnik ma zagrać w węźle dla każdego potomka węzła β := min(β, alfabeta(potomek, głębokość-1, α, β)) jeżeli α≥β przerwij przeszukiwanie {odcinamy gałąź Alfa} zwróć β w przeciwnym przypadku {my mamy zagrać w węźle} dla każdego potomka węzła α := max(α, alfabeta(potomek, głębokość-1, α, β)) jeżeli α≥β przerwij przeszukiwanie {odcinamy gałąź Beta} zwróć α

Przypisy

Linki zewnętrzne

Alfa-beta Alfa-beta