ΠΛΗ 405 Τεχνητή Νοηµοσύνη Αναζήτηση µε Αντι αλότητα Adversarial Search Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υ ολογιστών Πολυτεχνείο Κρήτης
Ε ανάληψη Προβλήµατα ικανο οίησης εριορισµών ορισµός και χαρακτηριστικά Ε ίλυση ροβληµάτων ικανο οίησης εριορισµών αναζήτηση µε υπαναχώρηση τοπική αναζήτηση οµή ροβληµάτων ανεξάρτητα υποπροβλήµατα δένδρα περιορισµών αφαίρεση µεταβλητών αποσύνθεση δένδρου Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 2
Παιχνίδια παιχνίδια ως αναζήτηση Βέλτιστες στρατηγικές στρατηγική minimax Βελτιώσεις κλάδεµα α-β Ατελείς α οφάσεις περιορισµοί χρόνου συναρτήσεις αξιολόγησης έλεγχος αποκοπής πρώιµο κλάδεµα Σήµερα Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 3
Παιχνίδια Games
Παιχνίδια ανταγωνιστικά πολυπρακτορικά περιβάλλοντα όπου οι στόχοι των πρακτόρων είναι αλληλοσυγκρουόµενοι Θεωρία αιγνίων (game theory) µαθηµατική θεωρία, κλάδος των οικονοµικών κάθε πράκτορας έχει «σηµαντική» επίδραση στους άλλους Γιατί τα µελετάµε; καλές επίδοσεις = δείγµα ευφυίας δύσκολο, ενδιαφέρον, διασκεδαστικό, µακρόχρονο πρόβληµα Συνηθέστερα αιχνίδια στην ΤΝ αιτιοκρατικά (deterministic), δύο παικτών, εκ περιτροπής (turn-taking), µηδενικού αθροίσµατος (zero-sum), µε τέλεια πληροφόρηση (perfect information) Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 5
Τύ οι Παιχνιδιών Τύ οι Παιχνιδιών Τέλεια Πληροφόρηση (perfect information) Ατελής Πληροφόρηση (imperfect information) Αιτιοκρατικά (deterministic) Σκάκι Ντάµα Othello Πέτρα-Χαρτί-Ψαλίδι Ναυµαχία Stratego Mastermind Minesweeper Τυχαία (chance) Τάβλι Monopoly Γκρινιάρης Tetris Poker Αγωνία Scrabble 21, 31 Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 6
Παιχνίδια και Τεχνητή Νοηµοσύνη Ιστορία πρώτοι υπολογιστικοί τρόποι παιξίµατος (Babbage, 1846) πρώτες βέλτιστες στρατηγικές (Zermelo, 1912; Von Neumann, 1944) πρώτο πρόγραµµα για σκάκι (Turing, 1951) πρώτη χρήση µηχανικής µάθησης για βελτίωση (Samuel, 1952-57) Σήµερα σκάκι: Deep Blue νίκη επί Garry Kasparov το 1997 ντάµα: Chinook παγκόσµιος πρωταθλητής τάβλι: TD-gammon νικητής υπολογιστικής ολυµπιάδας 1989 Othello: Logistello νίκη 6-0 επί του παγκόσµιου πρωταθλητή Εξαίρεση: Go, ο υπολογιστής δεν µπορεί να νικήσει τον µέσο άθρωπο Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 7
Παιχνίδια και Αναζήτηση Αναζήτηση δεν υπάρχει αντίπαλος αντιµετώπιση: (ευριστική) µέθοδος για την εύρεση στόχου ζητούµενο: εύρεση βέλτιστου στόχου χωρίς χρονικό περιορισµό αξιολόγηση: κόστος από την αρχική κατάσταση έως το στόχο Παιχνίδια υπάρχει αντίπαλος (απρόβλεπτος) αντιµετώπιση: στρατηγική µια ενέργεια για κάθε αντίπαλη ενέργεια ζητούµενο: εύρεση καλύτερης λύσης µέσα σε χρονικά όρια αξιολόγηση: ποιότητα τρέχουσας κατάστασης ως προς το στόχο Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 8
Παιχνίδια ως Αναζήτηση Γενικοί κανόνες 2 παίκτες: MAXimizer και MINimizer (o ΜΑΧ παίζει πρώτος) παίζουν εναλλάξ µέχρι το τέλος (νικητής και ηττηµένος) Αναζήτηση κατάσταση: διάταξη του αβακίου και παίκτης που έχει σειρά διαδοχή: ζεύγη (νόµιµη κίνηση, επόµενη κατάσταση) τερµατική κατάσταση: τερµατισµός του παιχνιδιού απολαβή: αριθµητική αξιολόγηση τερµατικών καταστάσεων Ανα αράσταση δένδρο παιχνιδιού (game tree) µε εναλλαγή κινήσεων (παικτών) Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 9
ένδρο Παιχνιδιού Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 10
Βέλτιστες Στρατηγικές Optimal Strategies
Στρατηγική Minimax Στρατηγική περιπτωσιακή (contingent) για κάθε δυνατή κίνηση του αντιπάλου Minimax MINIMAX-VALUE(n)= UTILITY(n) max s successors(n) MINIMAX-VALUE(s) min s successors(n) MINIMAX-VALUE(s) If n is a terminal If n is a max node If n is a min node επίλεξε την κίνηση που µεγιστοποιεί την minimax τιµή (ΜΑΧ) επίλεξε την κίνηση που ελαχιστοποιεί την minimax τιµή (ΜΙΝ) Υ όθεση ο αντίπαλος είναι αλάνθαστος, παίζει πάντα την βέλτιστη κίνηση Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 12
Παράδειγµα: Στρατηγική Minimax Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 13
Αλγόριθµος Υ ολογισµού Minimax Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 14
Χαρακτηριστικά Αλγορίθµου Minimax Υ ολογισµός πλήρης µέθοδος (σε πεπερασµένα δένδρα) βέλτιστη µέθοδος (ως προς την χειρότερη περίπτωση) Πολυ λοκότητα b νόµιµες κινήσες ανά στρώση (ply), m στρώσεις χρονική πολυπλοκότητα: O(b m ) χωρική πολυπλοκότητα: O(bm) ή O(m) Ποιότητα συντηρητική στρατηγική πρακτικά ανεπαρκής [b 35, m 100 για το σκάκι] Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 15
Παιχνίδια Πολλών Παικτών αντί για µεµονωµένες minimax τιµές, έχουµε διανύσµατα τιµών όλοι οι παίκτες είναι MAXimizers! µπορεί να προκύψουν συµµαχίες µεταξύ παικτών Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 16
Κλάδεµα α-β α-β pruning
Κλάδεµα άλφα-βήτα (α-β pruning) Πρόβληµα εκθετικός αριθµός καταστάσεων εκθετικός χρόνος Ερώτηµα υπολογισµός minimax χωρίς επίσκεψη όλων των κόµβων; ναι, κλάδεµα κόµβων που δεν επηρεάζουν την τελική απόφαση Ορισµοί α: τιµή της καλύτερης επιλογής (µεγαλύτερη τιµή) που έχει βρεθεί οπουδήποτε κατά µήκος της διαδροµής του ΜΑΧ β: τιµή της καλύτερης επιλογής (µικρότερη τιµή) που έχει βρεθεί οπουδήποτε κατά µήκος της διαδροµής του ΜΙΝ οι κόµβοι µε τιµές εκτός του διαστήµατος [α,β] κλαδεύονται Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 18
Παράδειγµα: Κλάδεµα άλφα-βήτα Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 19
Λογική Κλαδέµατος α-β Λογική n και m κόµβοι του δένδρου αν ο παίκτης έχει καλύτερη επιλογή m: στον γονέα του κόµβου n σε οποιοδήποτε κόµβο πάνω από τον n τότε ο n µπορεί να αποκοπεί ο παίκτης δεν θα φθάσει ποτέ στον n θα προτιµήσει την επιλογή m Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 20
Αλγόριθµος Κλαδέµατος α-β Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 21
Παράδειγµα: Κλάδεµα α-β (3 στρώσεις) 8 Α MAX 3 Β 1 C 8 D MIN 3 E 8 F 7 G 1 H 5 I 8 J 10 K MAX L M N O P Q R S T U V W X Y 2 3 8 5 7 6 0 1 5 2 8 4 10 2 Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 22
Ε ίδραση της Σειράς Εξέτασης ιαδόχων 7 Α ΜΑΧ 1 Β 4 C 7 D ΜΙΝ E F G H I J K L M 1 2 3 4 5 6 7 8 9 ΜΑΧ Α 7 ΜΙΝ D 7 C 6 Β 3 M L K J I H G F E 9 8 7 6 5 Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 23 4 3 2 1
Μείωση Πολυ λοκότητας Χρονική ολυ λοκότητα από Ο(b m ) σε Ο(b m/2 ) : µέγιστη δυνατή µείωση ουσιαστικά, επιτρέπει την εξερεύνηση σε διπλάσιο βάθος δένδρου ευρετικές µέθοδοι για τη σειρά εξέτασης των κινήσεων τυχαία εξέταση διαδόχων: µέση πολυπλοκότητα Ο(b 3m/4 ) Ε αναλαµβανόµενες καταστάσεις σε παιχνίδια µε αντιµεταθέσεις λύση: πίνακας αντιµεταθέσεων (transposition table) παρέχει δυνατότητα για επιπλέον κλάδεµα Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 24
Ατελείς Α οφάσεις Imperfect Decisions
Περιορισµένοι Πόροι Πρόβληµα minimax µε α-β pruning διαπερνάει όλο το δένδρο παιχνιδιού είναι αδύνατον να εξετασθούν όλες οι τερµατικές καταστάσεις Ευρετική συνάρτηση αξιολόγησης (evaluation function) αξιολογεί τους ενδιάµεσους κόµβους ως τερµατικούς εκτίµηση της αναµενόµενης χρησιµότητας Έλεγχος α οκο ής (cutoff test) τερµατισµός εκβάθυνσης και εφαρµογή συνάρτησης αξιολόγησης A certain number of variations are investigated move by move until a more or less quiescent position is reached and at this point something of the nature of an evaluation is applied to the resulting position. [Shannon, 1950] Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 26
Συνάρτηση Αξιολόγησης Αξιολόγηση εκτίµηση αναµενόµενης χρησιµότητας από τρέχουσα κατάσταση ανθρώπινος τρόπος σκέψης για παιχνίδια Αρχές σχεδίασης να αξιολογεί (διατάσσει) σωστά τις τερµατικές καταστάσεις να συσχετίζει την αξιολόγηση µε πραγµατικές πιθανότητες νίκης να υπολογίζεται σε λογικά χρονικά περιθώρια Αβεβαιότητα λόγω υπολογιστικών περιορισµών, όχι λόγω πληροφόρησης Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 27
Κατασκευή Συναρτήσεων Αξιολόγησης Χαρακτηριστικά (features) αφηρηµένα (συνοπτικά) στοιχεία της κατάστασης προσδιορίζουν κατηγορίες καταστάσεων ή κλάσεις ισοδυναµίας Αναλογίες ποσοστό καταστάσεων στην ίδια κατηγορία που οδηγεί σε νίκη (72% νίκη) (+1) + (20% ήττα) (-1) + (8% ισοπαλία) (0) = 0,52 Συνδυασµοί αριθµητικές συνεισφορές χαρακτηριστικών συνδυασµός συνεισφορών, π.χ. αθροιστικός (ανεξαρτησία) Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 28
Παράδειγµα: Σκάκι Αξία υλικού Πιόνι = 1 Αξιωµατικός = 3 Ίππος = 3 Πύργος = 5 Βασίλισσα = 9 Αξιολόγηση λευκά: 31 µαύρα: 36 διαφορά: -5 Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 29
Ανεξαρτησία Χαρακτηριστικών Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 30
Τιµές Συνάρτησης Αξιολόγησης ιατήρηση στρατηγικής παρεκλίσεις από πραγµατικές τιµές δεν είναι απαραίτητα κακές οι µονότονοι µετασχηµατισµοί δεν αλλοιώνουν τη στρατηγική αρκεί η διατήρηση της διάταξης µεταξύ τερµατικών κόµβων Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 31
Α οκο ή Αναζήτησης Α οκο ή απόφαση κλήσης συνάρτησης αξιολόγησης Α λές µέθοδοι επιλογή σταθερού βάθους αναζήτησης επαναληπτική εκβάθυνση (µέχρι εξαντλήσεως χρόνου) Πρόβληµα πιθανή παραπλάνηση αναζήτησης ανάλογα µε θέση αποκοπής Αναζήτηση ηρεµίας (quiescence search) αποκοπή µόνο σε «ήρεµες» (quiescent) καταστάσεις αποφυγή απότοµων µεταβολών αξίας στο εγγύς µέλλον Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 32
Ορίζοντας Αναζήτησης Ε ίδραση του ορίζοντα (horizon effect) αναπόφευκτη κίνηση αντιπάλου που προκαλεί µεγάλη ζηµιά οι κινήσεις παρεµπόδισης ωθούν τον κίνδυνο εκτός ορίζοντα Παράδειγµα αναπόφευκτο: λευκό πιόνι σε βασίλισσα παρεµπόδιση: σαχ µε πύργο (14 στρώσεις) Μοναδικές ε εκτάσεις (singular extensions) «σαφώς ανώτερη» κίνηση από όλες αναζήτηση µε µοναδική επέκταση (b=1) Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 33
Πρώιµο Κλάδεµα (Forward Pruning) Πρώιµο κλάδεµα αυθαίρετη αποκοπή επιλεγµένων κινήσεων σε κάποιους κόµβους κίνδυνος: πιθανή αποκοπή καλών κινήσεων καταστραφικό όταν εφαρµόζεται κοντά στη ρίζα Καταλληλότητα συµµετρικές κινήσεις ισοδύναµες κινήσεις κόµβοι σε πολύ µεγάλο βάθος Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 34
Μελέτη Σύγγραµµα Ενότητες 6.1 6.4 Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ Πολυτεχνείο Κρήτης Σελίδα 35