0

Ich habe vor kurzem Minimax und Alpha Beta Pruning-Algorithmen implementiert und ich bin% 100 sicher, dass (Autograder) habe ich sie richtig implementiert. Aber wenn ich mein Programm ausführe, verhalten sie sich anders. Ich bin% 99 sicher, dass der Endzustand von Minimax und Alpha Beta gleich sein sollte. Habe ich recht? Können sie sich auf ihrem Weg vom Ergebnis unterscheiden? Da wir einige Werte ignorieren, wählt min aus, welche nicht von max ausgewählt werden oder umgekehrt.Minimax vs Alpha Beta Beschneiden Algorithmen

+2

Sie beide sollten das gleiche Ergebnis geben. Die Beschneidung in Alpha-Beta betrifft Zweige, die niemals zu einem besseren Ergebnis führen können 2 Ebenen im Suchbaum. – trincot

+1

Autograder ist ein Software-Tool aus [UC Berkeley AI Kurs] (http://ai.berkeley.edu/multiagent.html). Die Implementierung von Minimax und Alpha Beta Prunning sind Teil dieser Herausforderung für das Pacman-Beispiel. Es ist unklar, ob das OP fragt, wie man in akademischen Kursen Erfolg hat oder wie man ein Spiel mit künstlicher Intelligenz spielt. –

+0

Ich habe nicht nach einem Code gefragt. Ich habe die Algorithmen bereits implementiert und sie an verschiedenen Szenarien getestet (das ist der Grund, warum ich% 100 sicher bin, Autograder gab mir volle Punkte, also hat diese Frage nichts mit einer besseren Note zu tun.) Aber obwohl Autograder mich voll gab Punkte, die ich dachte, dass etwas nicht stimmte, deshalb fragte ich. – Prethia

Antwort

0

Ich weiß, das aber eine alte Frage ist ....

Ja Alpha-Beta und Minimax gibt die gleiche Antwort. All Alpha-Beta verhindert, dass Minimax Berechnungen durchführt, die zu 100% garantiert NICHT für den aktuellen Spieler ein optimaler Zustand sind (MAX oder MIN).

Sie können jedoch für einen bestimmten Status entsprechende Aktionen ausführen. Wie Ihr Algorithmus entscheidet, welche gleichwertigen Aktionen zurückgegeben werden, hängt davon ab, wie er implementiert wird. Wenn Sätzen/ungeordnete Listen irgendwo verwendet werden, kann sich die Reihenfolge ändern, in der Auswertungen vorgenommen werden.

Dies hängt auch davon ab, was Sie tun, wenn der Alpha/Beta-Wert der aktuellen besten Option entspricht. Da gleiche Werte kein besseres Ergebnis liefern würden, ist es nicht sinnvoll, diesen Pfad weiter zu erforschen. Daher würden Sie einfach die "erste beste Aktion" beibehalten. Mit Minimax erforschen Sie jedoch alles, also können Sie sich entscheiden, den "letzten besten" Wert zu behalten. In diesem Fall würde Minimax eine andere Aktion als Alpha-Beta ausführen. Aber sie sind immer noch gleichwertig, soweit es Ihre Scoring-Funktion betrifft ...

Verwandte Themen