Alpha-Beta Pruning for Games with Simultaneous Moves Abdallah Saffidine, Hilmar Finnsson, Michael Buro Παρουσίαση: Βάλβης Δημήτριος Εργασία στο μάθημα «Προηγμένη Τεχνητή Νοημοσύνη» με θέμα:
Επέκταση της Alpha-Beta pruning από τα παιχνίδια μηδενικού αθροίσματος δύο παικτών, σε μία γενικότερη κλάση, αυτήν των στοιβαγμένων παιχνιδιών πινάκων “stacked matrix games” που επιτρέπουν ταυτόχρονες κινήσεις από τους δύο παίκτες. Βασίζεται σε: – MiniMax – Alpha-Beta pruning – Score Bounded MCTS (Monte Carlo Tree Search) – Nash equilibrium
Κριτήριο κλαδέματος (Γενικά) Κλαδεύουμε τα υποδέντρα, για τα οποία είμαστε σίγουροι ότι σε καμία περίπτωση δεν πρόκειται να βελτιωθούν για την δεδομένη, εγγυημένη απόδοση, θεωρώντας ότι έχουμε λογικούς παίκτες. Όταν μία πράξη α, δεν περιλαμβάνεται σε μία συνδυασμένη στρατηγική (mixed strategy) και η συνδυασμένη αυτή στρατηγική κυριαρχεί (dominates) επί των οπτιμιστικών ορίων της α, τότε η α κυριαρχείται (is dominated) από τη συνδυασμένη στρατηγική και μπορεί να κλαδευτεί.
Πότε κυριαρχείται μια γραμμή ή στήλη πράξεων (Γραμμικός Προγραμματισμός);
Αναζήτηση Δεν χρειάζεται να ξέρουμε την ακριβή του q a,b όταν έχουμε: Ρηχό κλάδεμα: Αν έχουμε αποδείξει ότι η τιμή του q a,b είναι τόσο μικρή ώστε το α να γίνεται dominate από συνδυασμένη στρατηγική που δεν το περιέχει. Βαθύ κλάδεμα: Αποδεικνύοντας ότι το η τιμή του q είναι μικρότερη από το α. Θεωρούμε τα παρακάτω: Διάσχιση δέντρου κατά βάθος Έστω q μία θέση στο δέντρο του παιχνιδιού Α={1..m} το σύνολο των κινήσεων του παίκτη Max Β={1..n} το σύνολο των κινήσεων του παίκτη Min q i,j : Η θέση στην οποία βρισκόμαστε μετά την εκτέλεση των πράξεων i και j p i,j : Το πεσιμιστικό όριο του qi,j με αρχική (default) τιμή minval o i,j : Το οπτιμιστικό όριο του qi,j με αρχική (default) τιμή maxval q a,b : Η επόμενη θέση που θα εξετάσουμε. α a,b : Το κάτω όριο τιμής β a,b : Το άνω όριο
Υπολογισμός του κάτω ορίου α a,b Έστω ότι το α κυριαρχείται, από ένα σύνολο ανάμικτων στρατηγικών D σε κάθε στήλη, εκτός από τη β, δηλαδή: Η πράξη α κυριαρχείται αν και μόνο αν κυριαρχείται στην στήλη b από μια στρατηγική στο D, δηλαδή, η πράξη a κυριαρχείται αν και μόνο αν η τιμή υ της θέσης q a,b ικανοποιεί τη συνθήκη: Αν το D είναι μη κενό, για να έχουμε το αυστηρότερο δυνατό κάτω όριο, μεγιστοποιούμε τις τιμές και έχουμε: Αλλιώς (αν το D είναι κενό) το q a,b δεν φράζεται από κάτω και έτσι δίνουμε τιμή α a,b =minval.
Ο Αλγόριθμος Simultaneous Move Alpha-Beta (SMAB) Ο βασικός αλγόριθμος (SMAB) μας λειτουργεί ως εξής. 1. Αρχικά περνά από όλα τα ζεύγη πράξεων και ελέγχει τις λιγότερο σημαντικές συνθήκες εξόδου. 2. Αν αυτές δεν ισχύουν συνεχίζουμε με τον υπολογισμό των οπτιμιστικών και πεσιμιστικών ορίων. 3. Τέλος αναδρομικά υπολογίζει την τιμή. Στην έρευνα αυτή διατυπώνεται για τον SMAB το εξής θεώρημα: Όταν καλείται η διαδικασία SMAB, με παραμέτρους q, α, β ισχύουν τα εξής: Εκτελείται σε ασθενή πολυωνυμικό χρόνο, στο μέγεθος του δέντρου παιχνιδιού με ρίζα q (δεδομένου ότι χρησιμοποιεί γραμμικό προγραμματισμό). Αν επιστρέψει τιμή v ≤ α, τότε value(q) ≤ v Αν επιστρέψει τιμή v ≥ β, τότε value(q) ≥ v και αν επιστρέψει α < v < β, τότε value(q) = v
Ο Αλγόριθμος Simultaneous Move Alpha-Beta (SMAB) (Συνέχεια)
Ταξινομήσεις και αρχικοποιήσεις Οι οπτιμιστικές και πεσιμιστικές τιμές, μπορούν να αρχικοποιηθούν με ευριστικά ανάλογα με την κατάσταση του παιχνιδιού. Το κλάδεμα μπορεί να επηρεαστεί σημαντικά και από τη σειρά επίσκεψης των ζευγών, που μπορεί να αλλάξει με ταξινόμηση. Έχουμε δύο είδη ταξινόμησης: Ταξινόμηση των κινήσεων (Move ordering): Ταξινομούμε τις ανεξάρτητες κινήσεις, δηλαδή προσφέρουμε στα σύνολα Α και Β συνολικές διατάξεις (total orders) <Α και <Β Ταξινόμηση των κελιών (Cell ordering): Οι διατεταγμένες κινήσεις ταξινομούνται με βάση την σειρά των ανεξάρτητων κινήσεων, δημιουργώντας μια συνολική διάταξη για το ΑxΒ βασισμένο στα <Α και <Β.
Πειραματικά αποτελέσματα εφαρμογή του SMAB για ένα παιχνίδι με κάρτες, που ονομάζεται Goofspiel Στον πίνακα του παιχνιδιού, έχει χρησιμοποιηθεί μία ταξινόμηση κελιών που καλείται L-shaped ordering και αποδεικνύεται ότι οδηγεί σε νωρίτερο και πιο πολύ κλάδεμα από τις λεξικογραφικές ταξινομήσεις. Τα όρια α και β καθορίστηκαν από τον ευρεστικό αλγόριθμο Early Bound Skipping που παραμετροποιείται από έναν ακέραιο s και αυτό που κάνει είναι να παραλείπει τους υπολογισμούς των ορίων α και β που βασίζονται σε γραμμικό προγραμματισμό μέχρι ο πίνακας να έχει συμπληρώσει τουλάχιστον s στήλες και s γραμμές δεδομένων.
Πειραματικά αποτελέσματα (συνέχεια)
Βιβλιογραφία Ballard, B. W The *-minimax search procedure for trees containing chance nodes. Artificial Intelligence 21(3):327–350. Buro, M Solving the Oshi-Zumo game. In van den Herik, H. J.; Iida, H.; and Heinz, E. A., eds., Advances in Computer Games, Many Games, Many Challenges, 10th International Conference, volume 263 of IFIP, 361–366. Graz, Austria: Kluwer. Cazenave, T., and Saffidine, A Score bounded Monte-Carlo tree search. In van den Herik, H.; Iida, H.; and Plaat, A., eds., Computers and Games, volume 6515 of Lecture Notes in Computer Science. Springer Berlin / Heidelberg. 93–104. Everett, H Recursive games. Contributions to the Theory of Games III 39:47–78. Furtak, T., and Buro, M On the complexity of twoplayer attrition games played on graphs. In Youngblood, G. M., and Bulitko, V., eds., Proceedings of the Sixth AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment, AIIDE Gilpin, A., and Sandholm, T Lossless abstraction of imperfect information games. Journal of the ACM 54(5). Knuth, D. E., and Moore, R.W An analysis of alphabeta pruning. Artificial Intelligence 6(4):293–326. Koller, D.; Megiddo, N.; and von Stengel, B Fast algorithms for finding randomized strategies in game trees.In Proceedings of the 26th ACM Symposium on Theory of Computing, 750–759. Kovarsky, A., and Buro, M Heuristic search applied to abstract combat games. In Canadian Conference on AI, 66–78. Ross, S. M Goofspiel: The game of pure strategy. Journal of Applied Probability 8(3):621–625. Russell, S. J., and Norvig, P Artificial Intelligence— A Modern Approach (3rd international edition). Pearson Education. Schiffel, S., and Thielscher, M A multiagent semantics for the game description language. In Filipe, J.; Fred, A.; and Sharp, B., eds., Agents and Artificial Intelligence, volume 67 of Communications in Computer and Information Science. Springer Berlin Heidelberg. 44–55. Shaei, M.; Sturtevant, N.; and Schaeffer, J Comparing UCT versus CFR in simultaneous games. In Proceedings of the IJCAI-09 Workshop on General Game Playing (GIGA’09), 75–82. Sturtevant, N. R., and Korf, R. E On pruning techniques for multi-player games. In Proceedings of the Seventeenth National Conference on Artificial Intelligence and Twelfth Conference on Innovative Applications of Artificial Intelligence, AAAI/IAAI 2000, 201–207. Sturtevant, N. R Leaf-value tables for pruning nonzero-sum games. In IJCAI-05, Proceedings of the Nineteenth International Joint Conference on Artificial Intelligence, 317–323. Edinburgh, Scotland, UK: Professional Book Center. Winands, M. H.; Björnsson, Y.; and Saito, J.-T Monte-Carlo tree search solver. In Proceedings of the 6 th international conference on Computers and Games, CG ’08, 25–36. Berlin, Heidelberg: Springer-Verlag.