ΠΛΗ 405 Τεχνητή Νοηµοσύνη -...
Transcript of ΠΛΗ 405 Τεχνητή Νοηµοσύνη -...
ΠΛΗ 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