180 likes | 253 Views
Explore the Fluxplayer approach for a successful General Game Player system, its requirements, and algorithms for game playing. The text discusses advanced artificial intelligence and its practical application in game playing.
E N D
Fluxplayer: A successful General Game Player(Stephan Schiffel , Michael Thielscher) Προηγμένη Τεχνητή Νοημοσύνη Νομικός Βαγγέλης (grad0917@di.uoa.gr) 24/01/2008
Η παρούσα κατάσταση… • Τι γνωρίζουμε • - πληθώρα εξειδικευμένων συστημάτων • Ιδιαιτερότητες • - μη αυτόματη προσαρμογή σε αλλαγές κανόνων • - αδυναμία για διαφορετικά παιχνίδια • Ανθρώπινος Παράγοντας • - κανόνες γνωστοί στον προγραμματιστή • - ανάλυση του παιχνιδιού • - χρήση συγκεκριμένων ευριστικών • Το παράδειγμα • IBM: Deep Blue • Deep Blue vsGarry Kasparov (11 Μαΐου 1997) - (2-1-3) • Μπορεί να παίξει τρίλιζα;;;;;
Τι θα θέλαμε… • Προσδοκίες • καμία προηγούμενη εμπειρία • όχι ανθρώπινη παρέμβαση • ικανό να παίζει τυχαία άγνωστα παιχνίδια • είσοδος η περιγραφή των κανόνων του παιχνιδιού • Απαιτήσεις • συνεισφορά από πολλούς τομείς της ΑΙ • αναπαράσταση γνώσης • συλλογιστική • αναζήτηση με χρήση ευριστικών • κατάστρωση σχεδίου • μηχανική μάθηση
Fluxplayer - Η προσέγγιση • Fluxplayer • a General Game Player • Successful: Νικητής του ΑΑΑΙ GGP 2006 – Έπαθλο $10.000 • Προσέγγιση • Αποδείκτης θεωρημάτων / Συλλογιστική • Αλγόριθμοι αναζήτησης • Ευριστικές συναρτήσεις • Αναγνώριση δομών (προσανατολισμός στην φύση του στόχου)
Αποδείκτης Θεωρημάτων - Συλλογιστική (1/3) • Αξιωματική περιγραφή των κανόνων του παιχνιδιού • Συμβολική αναπαράσταση καταστάσεων, κινήσεων • Γλώσσα περιγραφής παιχνιδιών (GDL) • Κατάλληλη για περιγραφή πεπερασμένων, ντετερμινιστικών, n-παικτών(ν>=1) παιχνιδιών τέλειας πληροφορίας • Σύνολο δεσμευμένων λέξεων με προκαθορισμένη σημασία
H GDL - Εφαρμογή στην τρίλιζα (2/3) • οι παίκτες - (role ?player) π.χ. (role xplayer) , (role oplayer) • αρχική κατάσταση - (init ?fact) π.χ. (init (cell 1 1b)) • νόμιμες κινήσεις - (legal ?p ?m) και (true ?fact) π.χ. (<= (legal ?w (mark ?x ?y)) (true (cell ?x ?y b)) (true (control ?w))) • ενημερώσεις θέσης - (next ?fact) και (does ?player ?move) π.χ. (<= (next (cell ?m ?n x)) (does xplayer (mark ?m ?n)) (true (cell ?m ?n b))) • τέλος του παιχνιδιού - terminal π.χ. (<= terminal (line x)) (<= terminal (not open)) • το αποτέλεσμα – (goal ?player ?value) π.χ. (<= (goal xplayer 100) line(x)) (<= (goal xplayer 50) draw) (<= (goal xplayer 0) line(o))
Αποδείκτης Θεωρημάτων – Συλλογιστική (3/3) • Απαιτήσεις • παραγωγή επιτρεπτών κινήσεων • καθορισμός επόμενων ενεργειών και των αποτελεσμάτων αυτών • καθορισμός του τέλους • Η ιδέα • μετατροπή από GDL σε Prolog • επιτρέπει αποδοτική απόδειξη θεωρημάτων • χρήση του συστήματος FLUX για συλλογιστική
Αλγόριθμος αναζήτησης • Τροποποιημένη επαναληπτική εμβάθυνση πρώτα κατά βάθος • πίνακες αντιμετάθεσης • ευριστικό της ιστορίας • Βάθος >>>, μη-ομοιόμορφη πρώτα κατά βάθος αναζήτηση • Χρήση τεχνικών κλαδέματος – τύπος παιχνιδιού - single-player vs. multi-player π.χ. alpha-beta κλάδεμα σε παιχνίδια με 2 παίκτες - zero-sum vs. non-zero-sum - turn-taking vs. simultaneous-moves π.χ σε turn-taking υπόθεση μεγιστοποίησης του κέρδους
Ευριστική Συνάρτηση (1/3) • Η ανάγκη • περιορισμός του χώρου καταστάσεων • όχι εξαντλητική αναζήτηση • αξιολόγηση μη τερματικών καταστάσεων • αδυναμία χρήσης προκαθορισμένων ευριστικών • Η ιδέα • αυτόματη παραγωγή ευριστικών σε χρόνο εκτέλεσης • χρήση ασαφής λογικής (fuzzy logic) • σε κάθε κατάσταση, υπολογισμός του βαθμού αληθείας για τα κατηγορήματα goal και terminal • αποφυγή τερματικών καταστάσεων όταν ο στόχος δεν ικανοποιείται
Ευριστική Συνάρτηση (2/3) • Ο κόσμος των κύβων • Βαθμός αληθείας κάθε όρου ξεχωριστά • Επιλογή κατάλληλης t-νόρμας και t-co-νόρμας για υπολογισμό πολύπλοκων εκφράσεων • Διαφορετική εκτίμηση συνάρτησης αξιολόγησης για πολλαπλούς στόχους • Αναγωγή σε επιλογή κατάλληλης t-νόρμας
Ευριστική Συνάρτηση (3/3) • Χρήση t-norm της οικογένειας του Yager • Εξάρτηση από δομή εκφράσεων goal και terminal • Αξιολόγηση όλων των πιθανών στόχων σε σχέση με τις τερματικές καταστάσεις • Η τιμή της ευριστικής συνάρτησης για μια κατάσταση υπολογίζεται από τον συνδυασμό της εκτίμησης για κάθε στόχο ξεχωριστά επί την τιμή του στόχου αυτού
Αναγνώριση Δομών • Η ιδέα • εντοπισμός συγκεκριμένων δομών (σχέσεις διαδοχής, διάταξης, ποσότητες, πίνακες παιχνιδιού) • συντακτική και σημασιολογική ανάλυση των κανόνων και των ιδιοτήτων τους • π.χ δυαδικές σχέσεις, μεταβατικές και αντι-συμμετρικές => σχέσεις διάταξης • Πλεονεκτήματα: • διάκριση μεταξύ σημασιολογικά ισοδύναμων αλλά συντακτικά διαφορετικών περιγραφών ενός κατηγορήματος • βελτίωση της συνάρτησης αξιολόγησης
Αξιολόγηση (1/2) • Το πρόβλημα • δυσκολία εύρεσης ενός δίκαιου σχήματος αξιολόγησης • εξάρτηση από πολλούς παράγοντες (το παιχνίδι που παίζεται, οι αντίπαλοι, ο χρόνος που δίνεται για ανάλυση κ.α) • ανυπαρξία προκαθορισμένων δοκιμασιών • Η λύση • αποτελέσματα από >400 αγώνες (>70 για κάθε παίκτη) του ΑΑΑΙ GGP Competition 2006 • Πλεονέκτημα • αναμέτρηση με πραγματικούς αντιπάλους • σύγκριση με «state of the art»συστήματα
Αξιολόγηση (2/2) • Κατηγοριοποίηση παιχνιδιών βάσει ιδιοτήτων • Παιχνίδια με παραπάνω από μία ιδιότητες • Καμία κατηγορία υποσύνολο κάποιας άλλης • Σύγκριση μέσου σκορ ανά τύπο παιχνιδιών με • συνολικό του μέσο σκορ • μέσο σκορ των 6 καλύτερων παικτών • Το πλεονέκτημα: • Η αναγνώριση ποσοτήτων και σχέσεων διάταξης • Το μειονέκτημα: • η εξάρτηση από την περιγραφή του στόχου
Συμπεράσματα • Παραγωγή ευριστικών ταχύτερη από προσεγγίσεις μάθησης • Εύκολη επέκταση σε παιχνίδια όχι τέλειας πληροφορίας • Άφθονος χώρος για βελτιώσεις • Μελλοντικές επεκτάσεις • χρήση τεχνικών αφαίρεσης και γενίκευσης • χρήση μεθόδων από την θεωρία παιγνίων • ανάλυση της επιρροής διαφορετικών συναρτήσεων αξιολόγησης στην απόδοση παιξίματος παιχνιδιών • ορισμός ρεαλιστικών μοντέλων αντιπάλων και συνόλων δοκιμασιών
Το ερώτημα… • Τι νόημα έχουν τελικά όλα αυτά??? • Κριτική: “Το παίξιμο παιχνιδιών είναι ασήμαντο” • Απάντηση: “General Game Playing δεν είναι απλά ένα παιχνίδι! GGP is serious business!”
Αναφορές • Kuhlmann, G.; Dresner, K.; and Stone, P. 2006. Automatic heuristic construction in a complete general game player. In proc. Of AAAI, 1457-62 • Schaeffer, J. 1989. The history heuristic and alpha-beta search enhancements in practice. IEEE Transactions on Pattern Analysis and Machine Intelligence 11(11) • Thielscher, M. 2005. Reasoning Robots: The art and Science of Programming Robotic Agents. Applied Logic Series. Kluwer • http://games.stanford.edu/index.html • http://logic.stanford.edu/classes/cs227/
Ευχαριστώ!!! Ερωτήσεις???