SZTUCZNA INTELIGENCJA ALGORYTM MINIMAX Akademia GrniczoHutnicza Adrian Horzyk

  • Slides: 8
Download presentation
SZTUCZNA INTELIGENCJA ALGORYTM MINIMAX Akademia Górniczo-Hutnicza Adrian Horzyk Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii

SZTUCZNA INTELIGENCJA ALGORYTM MINIMAX Akademia Górniczo-Hutnicza Adrian Horzyk Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Katedra Automatyki i Inżynierii Biomedycznej Laboratorium Biocybernetyki 30 -059 Kraków, al. Mickiewicza 30, paw. C 3/205 horzyk@agh. edu. pl, Google: Adrian Horzyk

Drzewa poszukiwań oraz algorytm MINIMAX (MIN-MAX) Algorytm MINIMAX: Ø Wywodzi się z teorii gier,

Drzewa poszukiwań oraz algorytm MINIMAX (MIN-MAX) Algorytm MINIMAX: Ø Wywodzi się z teorii gier, w której gracze wykonują ruchy naprzemiennie. Ø Polega na minimalizacji maksymalnej spłaty dla przeciwnika oraz maksymalizacji minimalnej spłaty przez przeciwnika. Ø Przy założeniu, że grę kończy ruch, dla którego istnieje tylko jedna alternatywa (wygrywająca), algorytm MINIMAX pomaga znaleźć najlepsze ruchy w każdym momencie gry, jeśli rozważymy grę od końca (jej celu). Ø Nie zawsze to jest możliwe ze względu na potencjalnie dużą ilość możliwych posunięć i ich kombinacji w kolejnych ruchach, np. w grze w szachy czy go. Ø Algorytm zakłada, iż każdy z graczy będzie próbował w każdym ruchu zmaksymalizować swoje szanse na wygraną oraz zminimalizować szansę na przegraną, wybierające te opcje, które dają mu największe prawdopodobieństwo wygranej.

Drzewa poszukiwań oraz algorytm MINIMAX (MIN-MAX) Drzewo poszukiwań dla algorytmu MINIMAX ilustruje sposób działania,

Drzewa poszukiwań oraz algorytm MINIMAX (MIN-MAX) Drzewo poszukiwań dla algorytmu MINIMAX ilustruje sposób działania, odpowiednio maksymalizując swoje i minimalizując przeciwnika szanse: MAX GRACZ 4 4 PRZECIWNIK 3 2 MIN GRACZ 9 8 4 4 9 5 8 7 3 2 MAX PRZECIWNIK 3 1 4 9 2 5 3 7 W metodzie MINIMAX definiujemy stany węzłów końcowych w drzewie: +1 (węzły wygrywające), -1 (węzły prowadzące do przegranej), 0 (remis).

Drzewo poszukiwań oraz algorytm MINIMAX w grze kółko-krzyżyk Drzewo wskazuje ścieżki do wygranej lub

Drzewo poszukiwań oraz algorytm MINIMAX w grze kółko-krzyżyk Drzewo wskazuje ścieżki do wygranej lub przegranej:

Drzewo poszukiwań oraz algorytm MINIMAX w grze kółko-krzyżyk W drzewie poszukiwań może istnieć wiele

Drzewo poszukiwań oraz algorytm MINIMAX w grze kółko-krzyżyk W drzewie poszukiwań może istnieć wiele ścieżek wygrywających, przegrywających i remisujących, wobec tego dokonując wyboru konkretnej strategii gry (tzn. funkcji ewaluacyjnej/kosztu oceniającej kolejne ruchy) należy wziąć pod uwagę takie ścieżki, które: ü Zawierają możliwie dużą ilość ścieżek wygrywających (MAX). ü Zawierają możliwie małą ilość ścieżek przegrywających (MIN). ü Zawierają ścieżki na pewno wygrywające. ü Nie zawierają ścieżki prowadzące do pewnej przegranej, czyli bez możliwości jej uniknięcia. ü Zawierają tylko ścieżki wygrywające (ew. również remisujące). ü Zawierają tylko ścieżki przegrywające (ew. również remisujące).

Drzewo poszukiwań dla gry kółkokrzyżyk oraz analiza MINIMAX Gracz MAX dąży do największej, a

Drzewo poszukiwań dla gry kółkokrzyżyk oraz analiza MINIMAX Gracz MAX dąży do największej, a gracz MIN do najmniejszej wartości funkcji kosztu, którą należy zdefiniować dla każdej gry (strategii): Odpowiednie zdefiniowane funkcji kosztu może decydować o sukcesie lub porażce metody, gdyż to wartości wyznaczone przez nią dla

Drzewa poszukiwań MINIMAX oraz metoda obcinania alfa-beta (alpha-beta pruning) Metoda obcinania alfa-beta w algorytmie

Drzewa poszukiwań MINIMAX oraz metoda obcinania alfa-beta (alpha-beta pruning) Metoda obcinania alfa-beta w algorytmie MINIMAX polega na: Ø Przeszukiwaniu takiego drzewa w celu poszukiwania najlepszego ruchu Ø Analizie ruchów oraz ich ocenie, czy ich wykonanie da gorszy wynik od najlepszego gwarantowanego. Jeśli tak, wtedy nie prowadzimy dalszej analizy takiego poddrzewa (obcinamy je). Ø Warcabach bierzemy pod uwagę ilość pionków oraz damek, którym przydzielamy różną ilość punktów w zależności od ich pozycji na planszy, np. : pionek przy brzegu planszy – 4 pkt pionek bliżej środka planszy – 2 pkt pionek w centrum planszy – 1 pkt damka przy brzegu planszy – 16 pkt damka w środku planszy – 6 pkt

Drzewa poszukiwań MINIMAX oraz metoda obcinania alfa-beta Metoda obcinania alfa-beta w algorytmie MINIMAX: Ø

Drzewa poszukiwań MINIMAX oraz metoda obcinania alfa-beta Metoda obcinania alfa-beta w algorytmie MINIMAX: Ø Umożliwia tylko częściową ewaluację drzewa dla określonych wartości granicznych α β węzła, które określają najwyższą i najniższą rozważaną wartość. Ø Skutkiem tego jest pominięcie całego poddrzewa, jeśli w węźle ocena dla ruchu przeciwnika jest odpow. wyższa niż α lub dla naszego ruchu jest niższa niż β, np. dla α = 6 i β = 1 GRACZ 4 4 PRZECIWNIK X X 9 8 3 X X GRACZ 4 4 9 4 PRZECIWNIK 9 2 X 3 1 2 8 X 5 7 3 5 3 2 7