ΠΛΗ 405 Τεχνητή Νοημοσύνη Τμήμα Ηλεκτρονικών Μηχανικών και Μηχανικών Υολογιστών Πολυτεχνείο Κρήτης Αναζήτηση με Αντιαλότητα Adversarial Search
ΠΛΗ 405Τεχνητή Νοηµοσύνη
Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υ̟ολογιστώνΠολυτεχνείο Κρήτης
Αναζήτηση µε Αντι̟αλότητα
Adversarial Search
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 2
Ε̟ανάληψη
� Προβλήµατα ικανο̟οίησης ̟εριορισµών
– ορισµός και χαρακτηριστικά
� Ε̟ίλυση ̟ροβληµάτων ικανο̟οίησης ̟εριορισµών
– αναζήτηση µε υπαναχώρηση
– τοπική αναζήτηση
� ∆οµή ̟ροβληµάτων
– ανεξάρτητα υποπροβλήµατα
– δένδρα περιορισµών
– αφαίρεση µεταβλητών
– αποσύνθεση δένδρου
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 3
Σήµερα
� Παιχνίδια– παιχνίδια ως αναζήτηση
� Βέλτιστες στρατηγικές– στρατηγική minimax
� Βελτιώσεις– κλάδεµα α-β
� Ατελείς α̟οφάσεις– περιορισµοί χρόνου
– συναρτήσεις αξιολόγησης
– έλεγχος αποκοπής
– πρώιµο κλάδεµα
Παιχνίδια
Games
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 5
Παιχνίδια
– ανταγωνιστικά πολυπρακτορικά περιβάλλοντα όπου οι στόχοι των πρακτόρων είναι αλληλοσυγκρουόµενοι
� Θεωρία ̟αιγνίων (game theory)– µαθηµατική θεωρία, κλάδος των οικονοµικών
– κάθε πράκτορας έχει «σηµαντική» επίδραση στους άλλους
� Γιατί τα µελετάµε;– καλές επίδοσεις = δείγµα ευφυίας
– δύσκολο, ενδιαφέρον, διασκεδαστικό, µακρόχρονο πρόβληµα
� Συνηθέστερα ̟αιχνίδια στην ΤΝ– αιτιοκρατικά (deterministic), δύο παικτών, εκ περιτροπής
(turn-taking), µηδενικού αθροίσµατος (zero-sum), µε τέλεια πληροφόρηση (perfect information)
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 6
Τύ̟οι Παιχνιδιών
PokerΑγωνίαScrabble21, 31
ΝαυµαχίαStrategoMastermindMinesweeper
Ατελής Πληροφόρηση
(imperfect information)
ΤάβλιMonopolyΓκρινιάρηςTetris
ΣκάκιΝτάµαOthelloΠέτρα-Χαρτί-Ψαλίδι
Τέλεια Πληροφόρηση
(perfect information)
Τυχαία(chance)
Αιτιοκρατικά (deterministic)
Τύ̟οι Παιχνιδιών
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 7
Παιχνίδια και Τεχνητή Νοηµοσύνη
� Ιστορία
– πρώτοι υπολογιστικοί τρόποι παιξίµατος (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, ο υπολογιστής δεν µπορεί να νικήσει τον µέσο άθρωπο
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 8
Παιχνίδια και Αναζήτηση
� Αναζήτηση
– δεν υπάρχει αντίπαλος
– αντιµετώπιση: (ευριστική) µέθοδος για την εύρεση στόχου
– ζητούµενο: εύρεση βέλτιστου στόχου χωρίς χρονικό περιορισµό
– αξιολόγηση: κόστος από την αρχική κατάσταση έως το στόχο
� Παιχνίδια
– υπάρχει αντίπαλος (απρόβλεπτος)
– αντιµετώπιση: στρατηγική – µια ενέργεια για κάθε αντίπαλη ενέργεια
– ζητούµενο: εύρεση καλύτερης λύσης µέσα σε χρονικά όρια
– αξιολόγηση: ποιότητα τρέχουσας κατάστασης ως προς το στόχο
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 9
Παιχνίδια ως Αναζήτηση
� Γενικοί κανόνες
– 2 παίκτες: MAXimizer και MINimizer (o ΜΑΧ παίζει πρώτος)
– παίζουν εναλλάξ µέχρι το τέλος (νικητής και ηττηµένος)
� Αναζήτηση
– κατάσταση: διάταξη του αβακίου και παίκτης που έχει σειρά
– διαδοχή: ζεύγη (νόµιµη κίνηση, επόµενη κατάσταση)
– τερµατική κατάσταση: τερµατισµός του παιχνιδιού
– απολαβή: αριθµητική αξιολόγηση τερµατικών καταστάσεων
� Ανα̟αράσταση
– δένδρο παιχνιδιού (game tree) µε εναλλαγή κινήσεων (παικτών)
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 10
∆ένδρο Παιχνιδιού
Βέλτιστες Στρατηγικές
Optimal Strategies
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 12
Στρατηγική Minimax
� Στρατηγική
– περιπτωσιακή (contingent) για κάθε δυνατή κίνηση του αντιπάλου
� MinimaxMINIMAX-VALUE(n)=
UTILITY(n) If n is a terminal
maxs ∈ successors(n) MINIMAX-VALUE(s) If n is a max node
mins ∈ successors(n) MINIMAX-VALUE(s) If n is a min node
– επίλεξε την κίνηση που µεγιστοποιεί την minimax τιµή (ΜΑΧ)
– επίλεξε την κίνηση που ελαχιστοποιεί την minimax τιµή (ΜΙΝ)
� Υ̟όθεση
– ο αντίπαλος είναι αλάνθαστος, παίζει πάντα την βέλτιστη κίνηση
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 13
Παράδειγµα: Στρατηγική Minimax
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 14
Αλγόριθµος Υ̟ολογισµού Minimax
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 15
Χαρακτηριστικά Αλγορίθµου Minimax
� Υ̟ολογισµός
– πλήρης µέθοδος (σε πεπερασµένα δένδρα)
– βέλτιστη µέθοδος (ως προς την χειρότερη περίπτωση)
� Πολυ̟λοκότητα
– b νόµιµες κινήσες ανά στρώση (ply), m στρώσεις
– χρονική πολυπλοκότητα: O(bm)
– χωρική πολυπλοκότητα: O(bm) ή O(m)
� Ποιότητα
– συντηρητική στρατηγική
– πρακτικά ανεπαρκής [b ≈ 35, m ≈ 100 για το σκάκι]
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 16
Παιχνίδια Πολλών Παικτών
– αντί για µεµονωµένες minimax τιµές, έχουµε διανύσµατα τιµών
– όλοι οι παίκτες είναι MAXimizers!
– µπορεί να προκύψουν συµµαχίες µεταξύ παικτών
Κλάδεµα α-β
α-β pruning
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 18
Κλάδεµα άλφα-βήτα (α-β pruning)
� Πρόβληµα
– εκθετικός αριθµός καταστάσεων ⇒ εκθετικός χρόνος
� Ερώτηµα
– υπολογισµός minimax χωρίς επίσκεψη όλων των κόµβων;
– ναι, κλάδεµα κόµβων που δεν επηρεάζουν την τελική απόφαση
� Ορισµοί
– α: τιµή της καλύτερης επιλογής (µεγαλύτερη τιµή) που έχει βρεθεί οπουδήποτε κατά µήκος της διαδροµής του ΜΑΧ
– β: τιµή της καλύτερης επιλογής (µικρότερη τιµή) που έχει βρεθεί οπουδήποτε κατά µήκος της διαδροµής του ΜΙΝ
– οι κόµβοι µε τιµές εκτός του διαστήµατος [α,β] κλαδεύονται
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 19
Παράδειγµα: Κλάδεµα άλφα-βήτα
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 20
Λογική Κλαδέµατος α-β
� Λογική
– n και m κόµβοι του δένδρου
– αν ο παίκτης έχει καλύτερη επιλογή m:� στον γονέα του κόµβου n
� σε οποιοδήποτε κόµβο πάνω από τον n
– τότε ο n µπορεί να αποκοπεί
– ο παίκτης δεν θα φθάσει ποτέ στον n� θα προτιµήσει την επιλογή m
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 21
Αλγόριθµος Κλαδέµατος α-β
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 22
Παράδειγµα: Κλάδεµα α-β (3 στρώσεις)
Α
Β
E
L M
F
N O
G
P Q
C
H
R S
I
T U
D
J
V W
K
X Y
2 3 8 5 7 6 0 1 5 2 8 4 10 2
MAX
MIN
MAX3 8 7
3
1 5
1
8 10
8
8
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 23
Ε̟ίδραση της Σειράς Εξέτασης ∆ιαδόχωνΑ
Β
E F G
C
H I J
D
K L M
ΜΑΧ
ΜΙΝ
1 2 3 4 5 6 7 8 9
1 4 7
7
Α
Β
EFG
C
HIJ
D
KLM
ΜΑΧ
ΜΙΝ
123456789
367
7
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 24
Μείωση Πολυ̟λοκότητας
� Χρονική ̟ολυ̟λοκότητα
– από Ο(bm) σε Ο(bm/2) : µέγιστη δυνατή µείωση
– ουσιαστικά, επιτρέπει την εξερεύνηση σε διπλάσιο βάθος δένδρου
– ευρετικές µέθοδοι για τη σειρά εξέτασης των κινήσεων
– τυχαία εξέταση διαδόχων: µέση πολυπλοκότητα Ο(b3m/4)
� Ε̟αναλαµβανόµενες καταστάσεις
– σε παιχνίδια µε αντιµεταθέσεις
– λύση: πίνακας αντιµεταθέσεων (transposition table)
– παρέχει δυνατότητα για επιπλέον κλάδεµα
Ατελείς Α̟οφάσεις
Imperfect Decisions
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 26
Περιορισµένοι Πόροι
� Πρόβληµα
– 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]
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 27
Συνάρτηση Αξιολόγησης
� Αξιολόγηση
– εκτίµηση αναµενόµενης χρησιµότητας από τρέχουσα κατάσταση
– ανθρώπινος τρόπος σκέψης για παιχνίδια
� Αρχές σχεδίασης
– να αξιολογεί (διατάσσει) σωστά τις τερµατικές καταστάσεις
– να συσχετίζει την αξιολόγηση µε πραγµατικές πιθανότητες νίκης
– να υπολογίζεται σε λογικά χρονικά περιθώρια
� Αβεβαιότητα
– λόγω υπολογιστικών περιορισµών, όχι λόγω πληροφόρησης
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 28
Κατασκευή Συναρτήσεων Αξιολόγησης
� Χαρακτηριστικά (features)
– αφηρηµένα (συνοπτικά) στοιχεία της κατάστασης
– προσδιορίζουν κατηγορίες καταστάσεων ή κλάσεις ισοδυναµίας
� Αναλογίες
– ποσοστό καταστάσεων στην ίδια κατηγορία που οδηγεί σε νίκη
– (72% νίκη)×(+1) + (20% ήττα) ×(-1) + (8% ισοπαλία)×(0) = 0,52
� Συνδυασµοί
– αριθµητικές συνεισφορές χαρακτηριστικών
– συνδυασµός συνεισφορών, π.χ. αθροιστικός (ανεξαρτησία)
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 29
Παράδειγµα: Σκάκι
� Αξία υλικού
– Πιόνι = 1
– Αξιωµατικός = 3
– Ίππος = 3
– Πύργος = 5
– Βασίλισσα = 9
� Αξιολόγηση
– λευκά: 31
– µαύρα: 36
– διαφορά: -5
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 30
Ανεξαρτησία Χαρακτηριστικών
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 31
Τιµές Συνάρτησης Αξιολόγησης
� ∆ιατήρηση στρατηγικής
– παρεκλίσεις από πραγµατικές τιµές δεν είναι απαραίτητα κακές
– οι µονότονοι µετασχηµατισµοί δεν αλλοιώνουν τη στρατηγική
– αρκεί η διατήρηση της διάταξης µεταξύ τερµατικών κόµβων
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 32
Α̟οκο̟ή Αναζήτησης
� Α̟οκο̟ή
– απόφαση κλήσης συνάρτησης αξιολόγησης
� Α̟λές µέθοδοι
– επιλογή σταθερού βάθους αναζήτησης
– επαναληπτική εκβάθυνση (µέχρι εξαντλήσεως χρόνου)
� Πρόβληµα
– πιθανή παραπλάνηση αναζήτησης ανάλογα µε θέση αποκοπής
� Αναζήτηση ηρεµίας (quiescence search)
– αποκοπή µόνο σε «ήρεµες» (quiescent) καταστάσεις
– αποφυγή απότοµων µεταβολών αξίας στο εγγύς µέλλον
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 33
Ορίζοντας Αναζήτησης
� Ε̟ίδραση του ορίζοντα (horizon effect)
– αναπόφευκτη κίνηση αντιπάλου που προκαλεί µεγάλη ζηµιά
– οι κινήσεις παρεµπόδισης ωθούν τον κίνδυνο εκτός ορίζοντα
� Παράδειγµα
– αναπόφευκτο: λευκό πιόνι σε βασίλισσα
– παρεµπόδιση: σαχ µε πύργο (14 στρώσεις)
� Μοναδικές ε̟εκτάσεις (singular extensions)
– «σαφώς ανώτερη» κίνηση από όλες
– αναζήτηση µε µοναδική επέκταση (b=1)
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 34
Πρώιµο Κλάδεµα (Forward Pruning)
� Πρώιµο κλάδεµα
– αυθαίρετη αποκοπή επιλεγµένων κινήσεων σε κάποιους κόµβους
– κίνδυνος: πιθανή αποκοπή καλών κινήσεων
– καταστραφικό όταν εφαρµόζεται κοντά στη ρίζα
� Καταλληλότητα
– συµµετρικές κινήσεις
– ισοδύναµες κινήσεις
– κόµβοι σε πολύ µεγάλο βάθος
ΠΛΗ 405 – Τεχνητή Νοηµοσύνη – 2007
Μ. Γ. Λαγουδάκης Τµήµα ΗΜΜΥ – Πολυτεχνείο Κρήτης Σελίδα 35
Μελέτη
� Σύγγραµµα
– Ενότητες 6.1 – 6.4