Alfa Beta |
Iteracyjne | |
2 |
324 |
372 |
3 |
6547 |
4760 |
4 |
30918 |
22693 |
5 |
404293 |
305549 |
■ Alfa Beta * Iteracyjne
450000 400000 350000 300000 250000 200000 150000 100000 50000
0 ■ ■ "
1,5 2 2,5 3 3,5 4 4,5 5 5,5
Jak widać, algorytm z iteracyjnym pogłębianiem wypadł nieco lepiej od „czystej" AlfaBety. Nie wpływa jednak znacząco na przeszukiwaną przestrzeń, przez co niemożliwe jest zwiększenie głębokości przeszukiwania w sensownym czasie.
• Z uwagi na cechy gry łatwo można zauważyć, że przestrzeń zmienia się w trakcie rozgrywki w sposób stały, niezależnie od przebiegu rozgrywki. Odcięcia, które mogą powstać są bardzo trudne do przewidzenia z uwagi na randomizację ruchów w każdym wywołaniu algorytmu.
• Metoda z iteracyjnym pogłębianiem okazała się lepsza, dzięki niej powstało więcej odcięć w trakcie działania alfa-bety.
• Wygrana z komputerem nie sprawia większych trudności, wystarczy stawiać pionki tak, aby miały wspólnych 2 sąsiadów. Nie udało się dostosować funkcji oceny heurystycznej tak, aby wychwytywała takie sytuacje.
• W grze nie ma prawa wystąpić cykl. Remis ogłaszany jest jedynie w przypadku, gdy żaden z graczy nie będzie miał możliwości wygrania gry.
• Funkcja oceny z pewnością może zostać ulepszona. Szansą na jej poprawę mogłoby być znalezienie sposobu na wyeliminowanie przypadków gdy przeciwnik stawia pionki w sposób opisany powyżej. Można ograniczyć też randomizację jedynie do pierwszego wywołania algorytmu, kosztem jednak naturalnej gry algorytmu. Komputer grałby wtedy bardziej schematycznie.
• W trakcie wykonywania gry nie wystąpiły większe problemy natury implementacyjnej, wszystkie drobne błędy spowodowane były słabą znajomością języka C#.