ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... ·...

35
ΠΛΗ 405 Τεχνητή Νοημοσύνη Τμήμα Ηλεκτρονικών Μηχανικών και Μηχανικών Υολογιστών Πολυτεχνείο Κρήτης Πληροφορημένη Αναζήτηση II

Transcript of ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... ·...

Page 1: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

ΠΛΗ 405Τεχνητή Νοηµοσύνη

Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υ̟ολογιστώνΠολυτεχνείο Κρήτης

Πληροφορηµένη Αναζήτηση II

Page 2: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Ε̟ανάληψη� Ε̟αναλαµβανόµενες καταστάσεις– µέθοδοι αποφυγής� Αναζήτηση µε µερική ̟ληροφόρηση– προβλήµατα χωρίς αισθητήρες– προβλήµατα ενδεχοµένων� Πληροφορηµένη αναζήτηση– άπληστη αναζήτηση πρώτα στο καλύτερο– αναζήτηση Α*

Page 3: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Σήµερα� Πληροφορηµένη αναζήτηση µε ̟εριορισµό µνήµης– Α* µε επαναληπτική εκβάθυνση– αναδροµική αναζήτηση πρώτα στο καλύτερο– αναζήτηση SMA*� Ευρετικές συναρτήσεις– επινόηση και κατασκευή� Το̟ική αναζήτηση– αναρρίχηση λόφων– προσοµοιωµένη ανόπτηση– γενετικοί αλγόριθµοι– συνεχείς χώροι

Page 4: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Πληροφορηµένη Αναζήτησηµε Περιορισµένη Μνήµη

Informed Search with Bounded Memory

Page 5: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

A* µε Ε̟αναλη̟τική Εκβάθυνση(Iterative-Deepening A* - IDA*)� Μεθοδολογία– ανάλογη µέθοδος µε την αναζήτηση επαναληπτικής επιµήκυνσης– αναζήτησης A* πρώτα κατά βάθος µε περιορισµένο κόστος g(n) + h(n)– σταδιακή αύξηση του ορίου αποκοπής 0, f1(n), f2(n), f3(n), ...– νέο όριο: το µικρότερο f(n) πάνω από το όριο στο προηγούµενο στάδιο– πλήρης και βέλτιστη µε παραδεκτή h– γραµµική χωρική πολυπλοκότητα Ο(bd)– εκθετική χρονική πολυπλοκότητα O(bd)� Μειονεκτήµατα– πιθανόν, αργή αύξηση του ορίου αποκοπής ⇒ αργή πρόοδος– δεν ανιχνεύει επαναλαµβανόµενες καταστάσεις

Page 6: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Α* - Σύνορο Αναζήτησης

Page 7: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Α* - Ε̟έκταση Κόµβου

Page 8: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Στάδια Αναζήτησης IDA*

Page 9: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Αναδροµική Αναζήτηση Πρώτα στο Καλύτερο(Recursive Best-First Search, RBFS)� Μεθοδολογία

– αναζήτηση πρώτα στο καλύτερο µε γραµµικό χώρο– ουσιαστικά, αναζήτηση κατά βάθος, όχι όµως τυφλά� θυµάται το καλύτερο κόστος f* γειτόνων κατά µήκος του µονοπατιού� επέκταση κατά βάθος αν f ≤ f*, αλλιώς οπισθοχώρηση– οπισθοδρόµηση πίσω στο καλύτερο εναλλακτικό µονοπάτι (f*)� αλλαγή του f κάθε κόµβου µε το καλύτερο f των παιδιών του– πλήρης και βέλτιστη µε παραδεκτή h– γραµµική χωρική, εκθετική χρονική πολυπλοκότητα� Μειονεκτήµατα– πιθανόν, υπερβολική επαναπαραγωγή κόµβων ⇒ αργή πρόοδος– δεν ανιχνεύει επαναλαµβανόµενες καταστάσεις

Page 10: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Αναζήτηση RBFS

Page 11: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Αναζήτηση RBFS

Page 12: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Αναζήτηση SMA*(Simple Memory-bounded A*)� Μεθοδολογία– αναζήτηση A* µε περιορισµένο χώρο– όταν γεµίσει η µνήµη, διαγράφει ένα παλιό κόµβο για κάθε νέο� διαγράφεται ο χειρότερος κόµβος (αυτός µε το µεγαλύτερο f) και τα αδέλφια του και εισάγεται ο γονικός κόµβος� η καλύτερη τιµή f των διαγραφόµενων κόµβων µεταφέρεται στον γονέα� διαγράφεται ο παλαιότερος κόµβος, σε περίπτωση ισοτιµίας τιµών f– πλήρης (υπό προϋποθέσεις) και βέλτιστη µε παραδεκτή h– περιορισµένη χωρική, εκθετική χρονική πολυπλοκότητα� Χαρακτηριστικά– γενικά, ο καλύτερος αλγόριθµος αναζήτησης γενικής χρήσης– περιορισµός µνήµης, πιθανόν επιφέρει απαγορευτικό χρόνο

Page 13: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Ευρετικές ΣυναρτήσειςHeuristic Functions

Page 14: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Puzzle των 8 Πλακιδίων

� Ευρετικές συναρτήσεις– h1 = ο αριθµός των πλακιδίων που δεν είναι στη θέση τους– h2 = το άθροισµα αποστάσεων των πλακιδίων από τον προορισµό τους� απόσταση Manhattan ή απόσταση οικοδοµικών τετραγώνων– παραδεκτές ευρετικές συναρτήσεις (δεν υπερεκτιµούν)– h1 ≤ h2 ⇒ η h2 κυριαρχεί της h1 ⇒ η h2 επεκτείνει λιγότερους κόµβους

h1 = 8h2 = 18h* = 26

Page 15: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

∆ραστικός Παράγοντας ∆ιακλάδωσης– οµοιόµορφο δένδρο: N + 1 = 1 + b* + (b*)2 + … + (b*)d

1,261,48—164139135—24 1,281,48—121918094—22 1,271,47—6767276—20 1,261,46—3633056—18 1,251,45—2111301—16 1,231,44—113539—14 1,241,422,7873227364403512 1,221,382,7939934712710 1,241,332,80253963848 1,301,342,7318206806 1,451,482,8712131124 1,791,792,4566102 A*(h2)A*(h1)IDSA*(h2)A*(h1)IDSd ∆ραστικός ̟αράγοντας διακλάδωσης b*Κόστος αναζήτησηςN

Page 16: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Ε̟ινόηση Παραδεκτών Ευρετικών� Χαλαρά ̟ροβλήµατα (relaxed problems)– απλοποίηση (χαλάρωση) των κανόνων του προβλήµατος– προϋπόθεση: f(βέλτιστη λύση χαλαρού) ≤ f(βέλτιστη λύση αρχικού)– συνεπής h: το κόστος βέλτιστης λύσης για το χαλαρό πρόβληµα � Παραδείγµατα χαλάρωσης κανόνων– Puzzle: ένα ̟λακίδιο µ̟ορεί να µετακινηθεί α̟ό το A στο B αν το A συνορεύει οριζόντια ή κάθετα µε το B και το B είναι κενό

– TSP: το κόστος του MST είναι κάτω όριο για το βέλτιστη διαδροµή� Συλλογή ευρετικών συναρτήσεων– παραδεκτές ευρετικές συναρτήσεις h1, h2, ..., hm– h=max{h1, h2, ... , hm} συνεπής και κυριαρχεί έναντι των h1,...,hm

Page 17: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Ε̟ινόηση Παραδεκτών Ευρετικών� Βάσεις δεδοµένων ̟ροτύ̟ων (pattern databases)– ακριβή κόστη λύσεων υποπροβληµάτων

� Βάσεις ξένων ̟ροτύ̟ων (disjoint pattern databases)– ξεχωριστές βάσεις δεδοµένων, πλήρης αφαίρεση κοινών κινήσεων– κατασκευή ευριστικής µε πρόσθεση των εκτιµήσεών τους

Page 18: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Εκµάθηση Ευρετικών Συναρτήσεων� Εµ̟ειρία– επίλυση προβληµάτων και υπολογισµός πραγµατικού κόστους– συλλογή παραδειγµάτων { κατάσταση n, κόστος h*(n) }� Χαρακτηριστικά (features)– εµπλουτισµός περιγραφής κατάστασης– π.χ. αριθµός πλακιδίων εκτός θέσης, άθροισµα αποστάσεων– νέα συλλογή { [κατάσταση n, χαρακτηριστικά n], κόστος h*(n) }� Εκµάθηση (learning)– αλγόριθµος επαγωγικής (inductive) µάθησης για γενίκευση– π.χ. δένδρα αποφάσεων ή νευρωνικά δίκτυα

Page 19: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Το̟ική ΑναζήτησηLocal Search

Page 20: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Το̟ική Αναζήτηση� Προβλήµατα στόχου– µας ενδιαφέρει ο στόχος, όχι η διαδροµή προς το στόχο– π.χ. παιχνίδι 8 βασιλισσών, χρονοπρογραµµατισµός ενεργειών� Αλγόριθµοι το̟ικής αναζήτησης– παρακολουθούν µόνο την τρέχουσα κατάσταση– µετακινούνται γενικά µόνο σε γειτονικές καταστάσεις– δεν κάνουν συστηµατική αναζήτηση – δεν είναι πλήρεις� Πλεονεκτήµατα– χρησιµοποιούν ελάχιστη (σταθερή) µνήµη– βρίσκουν καλές λύσεις σε πολύ µεγάλους ή άπειρους χώρους

Page 21: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Παράδειγµα: Πρόβληµα Βασιλισσών

Page 22: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Βελτιστο̟οίηση (Optimization)� Προβλήµατα βελτιστο̟οίησης– αντικειµενική συνάρτηση (objective function) για αξιολόγηση– αντικειµενική συνάρτηση: απεικονίζει κάθε κατάσταση σε ένα αριθµό– στόχος: κατάσταση που βελτιστοποιεί την αντικειµενική συνάρτηση� βελτιστοποίηση: µεγιστοποίηση ή ελαχιστοποίηση� µετατροπή βελτιστοποίησης µε αλλαγή προσήµου� Το̟ίο χώρου καταστάσεων (state space landscape)– τοποθεσία = κατάσταση, υψόµετρο = τιµή αντικειµενικής συνάρτησης– ακρότατα: καθολικό (global) ελάχιστο και καθολικό µέγιστο– τοπικά ακρότατα: τοπικό (local) ελάχιστο ή τοπικό µέγιστο– βελτιστότητα: εύρεση καθολικού ελαχίστου ή µεγίστου

֏֏

Page 23: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Το̟ίο Χώρου Καταστάσεων

Page 24: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Αναρρίχηση Λόφων (Hill Climbing)� Αλγόριθµος– διάλεξε µια γειτονική κατάσταση µε καλύτερη τιµή– σταµάτησε όταν όλοι οι γείτονες έχουν χειρότερες ή ίσες τιµές

Page 25: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Αναρρίχηση Λόφων – Παράδειγµα

Τοπικό ελάχιστο µε h=1Τρέχουσα τιµή h=17

Page 26: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Προβλήµατα Αναρρίχησης Λόφων� Προβλήµατα– τοπικά µέγιστα– κορυφογραµµές– οροπέδια

� Αντιµετώ̟ιση– πλάγιες κινήσεις– στοχαστική αναζήτηση� τυχαία επιλογή «καλών» κινήσεων� αναρρίχηση λόφων µε πρώτη επιλογή– τυχαίες επανεκκινήσεις� πλήρης αλγόριθµος

Page 27: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Προσοµοιωµένη Ανό̟τηση(Simulated Annealing)� Ιστορικό

– επινοήθηκε από τον Nicholas Metropolis το 1953– βασίζεται σε µοντέλα φυσικής για στερεά σώµατα– µια µορφή στοχαστικής αναρρίχησης λόφων� Αλγόριθµος– προ-επιλέγει τυχαία µια κίνηση (ανεξάρτητα από τιµή)– αν αυτή έχει καλύτερη τιµή, γίνεται αποδεκτή– αν όχι, τότε γίνεται αποδεκτή µε πιθανότητα P=e∆Ε/Τ� ∆Ε<0 η χειροτέρευση στην τιµή και Τ>0 η παράµετρος «θερµοκρασίας»– η θερµοκρασία µειώνεται σταδιακά µε την πάροδο του χρόνου– αρχικά επιτρέπονται πολλές τυχαίες κινήσεις, σταδιακά µειώνονται

Page 28: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Προσοµοιωµένη Ανό̟τηση

Page 29: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Το̟ική Ακτινική Αναζήτηση(Local Beam Search)� Αλγόριθµος

– παράλληλη αναρρίχηση λόφων από διαφορετικά σηµεία– επιλέγονται k τυχαίες αρχικές καταστάσεις– εκτελούνται k τοπικές αναζητήσεις παράλληλα– σε κάθε βήµα επιλέγονται τα k καλύτερα παιδιά από όλα τα παιδιά του προηγούµενου βήµατος� Χαρακτηριστικά

– µεταφορά πόρων όπου γίνεται µεγαλύτερη πρόοδος– πρόβληµα: συγκέντρωση όλων των αναζητήσεων στον ίδιο χώρο– αντιµετώπιση: στοχαστική επιλογή των k παιδιών

Page 30: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Γενετικοί Αλγόριθµοι (Genetic Algorithms)� Αλγόριθµος– στοχαστική ακτινική αναζήτηση + γενετήσια αναπαραγωγή διαδόχων– ̟ληθυσµός (population): k άτοµα ή καταστάσεις (αρχικά τυχαίες)– χρωµόσωµα: αναπαράσταση κάθε κατάστασης (συµβολοσειρές)– καταλληλότητα (fitness): ευρετική συνάρτηση αξιολόγησης ατόµων– ε̟ιλογή (selection): επιβιώνουν τα «καλύτερα» άτοµα στον πληθυσµό– διασταύρωση (crossover): δηµιουργία ατόµου από δύο «καλούς» γονείς– µετάλλαξη (mutation): τυχαία, ανεξάρτητη αλλαγή σε κάποιο άτοµο� Χαρακτηριστικά– απαιτείται προσεκτική σχεδίαση της αναπαράστασης

Page 31: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Γενετικοί Αλγόριθµοι: Παράδειγµα

Page 32: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Το̟ική Αναζήτηση σε Συνεχείς Χώρους� Συνεχείς χώροι– συνεχείς (πραγµατικές) µεταβλητές κατάστασης– άπειρος αριθµός διαδόχων καταστάσεων� Αντιµετώ̟ιση– διακριτοποίηση (discretization) µε πλέγµα� εφαρµογή συµβατικού αλγορίθµου τοπικής αναζήτησης– απευθείας αναζήτηση στο συνεχή χώρο� χρησιµοποίηση της κλίσης (gradient) του τοπίου � Παράδειγµα– τοποθέτηση 3 εφετείων στην Κρήτη– αντικειµενική συνάρτηση: f(x1,y1,x2,y2,x3,y3)

Page 33: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Ακολούθηση Πλαγιάς (Gradient Following)� Κλίση (gradient)– η πρώτη µερική παράγωγος ως προς κάθε µεταβλητή

– αντικατάσταση µε την εµπειρική κλίση όταν η f δεν είναι διαθέσιµη� Κατάβαση/Ανάβαση Πλαγιάς– σε κάθε βήµα µεταβολή προς πλέον επικλινές : x← x ± α∇f(x)– παράµετρος α: ένας µικρός πραγµατικός αριθµός

),,,,,( 332211 yf

xf

yf

xf

yf

xff

∂∂

∂∂

∂∂

∂∂

∂∂

∂∂=∇

Page 34: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Βελτιστο̟οίηση µε Περιορισµούς� Πρόβληµα– βελτιστοποίηση της αντικειµενικής συνάρτησης– ικανοποίηση όλων των περιορισµών στις µεταβλητές κατάστασης– δυσκολία ανάλογη της φύση των περιορισµών και της συνάρτησης� Αντιµετώ̟ιση– γενικά, µαθηµατικός προγραµµατισµός– γραµµικός προγραµµατισµός (linear programming)– τετραγωνικός προγραµµατισµός (quadratic programming)– µη γραµµικός προγραµµατισµός (non-linear programming)– ακέραιος προγραµµατισµός (integer programming)

Page 35: ΠΛΗ 405 Τεχνητή Νοηµοσύνηai/previous/2006-spring/lectures/lecture... · –απευθείαςαναζήτηση στο ... Microsoft PowerPoint - lecture06.ppt

Μελέτη� Σύγγραµµα– Ενότητα 4.1 – 4.4