ΤΥΦΛΗ ΑΝΑΖΗΤΗΣΗ (1) ΣΤΡΑΤΗΓΙΚΗ Ή ΑΛΓΟΡΙΘΜΟΣ ΑΝΑΖΗΤΗΣΗΣ



Σχετικά έγγραφα
Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή

Επίλυση προβληµάτων. Περιγραφή προβληµάτων Αλγόριθµοι αναζήτησης

Εφαρμόζονται σε προβλήματα στα οποία δεν υπάρχει πληροφορία που να επιτρέπει την αξιολόγηση των καταστάσεων του χώρου αναζήτησης.

Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή

Επίλυση Προβλημάτων 1

Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή

Κεφάλαιο 3. Αλγόριθµοι Τυφλής Αναζήτησης. Τεχνητή Νοηµοσύνη - Β' Έκδοση. Ι. Βλαχάβας, Π. Κεφαλάς, Ν. Βασιλειάδης, Φ. Κόκκορας, Η.

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΙΑΤΜΗΜΑΤΙΚΟ ΠΜΣ «ΜΑΘΗΜΑΤΙΚΑ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ & ΤΩΝ ΑΠΟΦΑΣΕΩΝ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ η Σειρά Ασκήσεων ΑΠΑΝΤΗΣΕΙΣ

Επίλυση Προβλημάτων και Τεχνικές Αναζήτησης Εισαγωγή

ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ. Ενότητα 3: Αλγόριθμοι πληροφορημένης αναζήτησης. Ρεφανίδης Ιωάννης Τμήμα Εφαρμοσμένης Πληροφορικής

1 ΠΡΟΒΛΗΜΑΤΑ ΤΝ ΚΑΙ LISP

Τεχνητή Νοημοσύνη. 3η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

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

Επίλυση Προβλημάτων. Αποτελεί ένα από τα βασικά χαρακτηριστικά γνωρίσματα της νοημοσύνης.

Μαθηματικά των Υπολογιστών και των Αποφάσεων Τεχνητή Νοημοσύνη 1η Σειρά Ασκήσεων

Επίλυση Προβληµάτων. ! Αποτελεί ένα από τα βασικά χαρακτηριστικά γνωρίσµατα της νοηµοσύνης. ! Χαρακτηριστικά αλγορίθµων:

Αλγόριθμοι Τυφλής Αναζήτησης

ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ. Ενότητα 2: Δένδρο αναζήτησης. Ρεφανίδης Ιωάννης Τμήμα Εφαρμοσμένης Πληροφορικής

Επίλυση προβλημάτων με αναζήτηση

Κεφάλαιο 2. Περιγραφή Προβληµάτων και Αναζήτηση Λύσης. Τεχνητή Νοηµοσύνη - Β' Έκδοση

Επίλυση Προβλημάτων. Περιγραφή Προβλημάτων Αλγόριθμοι αναζήτησης Αλγόριθμοι τυφλής αναζήτησης. Αλγόριθμοι ευρετικής αναζήτησης Παιχνίδια δύο αντιπάλων

Επίλυση προβληµάτων. Αλγόριθµοι Αναζήτησης

Αλγόριθµοι Ευριστικής Αναζήτησης

Ε ανάληψη. Ε αναλαµβανόµενες καταστάσεις. Αναζήτηση µε µερική ληροφόρηση. Πληροφορηµένη αναζήτηση. µέθοδοι αποφυγής

ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΜΑΤΙΚΗΣ

Ε ανάληψη. Α ληροφόρητη αναζήτηση

Τεχνητή Νοημοσύνη. 4η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Θεωρία Λήψης Αποφάσεων

Αλγόριθµοι Ευριστικής Αναζήτησης

Ε ανάληψη. Καταβολές. Ιστορική αναδροµή. Πράκτορες. Περιβάλλοντα. συνεισφορά άλλων επιστηµών στην ΤΝ σήµερα

ΕΡΩΤΗΜΑΤΑ σε ΑΝΑΖΗΤΗΣΗ

Επίλυση προβληµάτων µε αναζήτηση

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

Κεφάλαιο 4. Αλγόριθµοι Ευριστικής Αναζήτησης. Τεχνητή Νοηµοσύνη - Β' Έκδοση. Ι. Βλαχάβας, Π. Κεφαλάς, Ν. Βασιλειάδης, Φ. Κόκκορας, Η.

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

Θεωρία Λήψης Αποφάσεων

ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ

ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ

Θέμα 1: Robbie και Αναζήτηση

Πληροφορηµένη αναζήτηση και εξερεύνηση

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Τεχνητή Νοημοσύνη. Ενότητα 3: Αναζήτηση

ΥΣ02 Τεχνητή Νοημοσύνη Χειμερινό Εξάμηνο

ΥΣ02 Τεχνητή Νοημοσύνη Χειμερινό Εξάμηνο

Θεωρία Λήψης Αποφάσεων

PROJECT ΣΤΟ ΜΑΘΗΜΑ "ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΕΥΡΕΤΙΚΕΣ ΜΕΘΟΔΟΥΣ"

ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ. Ενότητα 5: Παραδείγματα. Ρεφανίδης Ιωάννης Τμήμα Εφαρμοσμένης Πληροφορικής

6 η Διάλεξη. Ενδεικτικές λύσεις ασκήσεων

Ευφυής Προγραμματισμός

Αναζήτηση (Search) συνέχεια. Τµήµα Ψηφιακών Συστηµάτων Πανεπιστήµιο Πειραιώς

Ε ανάληψη. Ορισµοί της Τεχνητής Νοηµοσύνης (ΤΝ) Καταβολές. Ιστορική αναδροµή. Πράκτορες. Περιβάλλοντα. κριτήρια νοηµοσύνης

Ασκήσεις μελέτης της 4 ης διάλεξης. ), για οποιοδήποτε μονοπάτι n 1

Επίλυση Προβλημάτων 1

Τεχνητή Νοημοσύνη Ι. Εργαστηριακή Άσκηση 4-6. Σγάρμπας Κυριάκος. Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστων

Επίλυση Προβλημάτων 1

Δομές Δεδομένων & Αλγόριθμοι

ΚΕΦΑΛΑΙΟ 1 - Επίλυση Προβλημάτων

Κεφάλαιο 5 Ανάλυση Αλγορίθμων

ΑΣΚΗΣΕΙΣ ΤΕΧΝΗΤΗΣ ΝΟΗΜΟΣΥΝΗΣ. Αναζήτηση και Προβλήματα Ικανοποίησης Περιορισμών

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ

Αλγόριθμοι Ευρετικής Αναζήτησης

Επίλυση Προβληµάτων. Αποτελεί ένα από τα βασικά χαρακτηριστικά γνωρίσµατα της νοηµοσύνης.

Διαχείριση Εφοδιαστικής Αλυσίδας ΙΙ

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος

Θεωρήστε ένα puzzle (παιχνίδι σπαζοκεφαλιάς) με την ακόλουθη αρχική διαμόρφωση : b b b w w w e

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ TEXNHTH ΝΟΗΜΟΣΥΝΗ ΕΡΓΑΣΙΑ 1 η ΑΠΑΝΤΗΣΕΙΣ 1. Α. ΧΩΡΟΣ ΚΑΤΑΣΤΑΣΕΩΝ

Για παράδειγμα η αρχική και η τελική κατάσταση αναπαριστώνται ως εξής: (ένα λίτρο)

Επίλυση Προβλημάτων 1

PROJECT ΣΤΟ ΜΑΘΗΜΑ ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΕΥΡΕΤΙΚΕΣ ΜΕΘΟ ΟΥΣ

Αναζήτηση (Search) Τµήµα Ψηφιακών Συστηµάτων Πανεπιστήµιο Πειραιώς

Επίλυση Προβλημάτων και Τεχνικές Αναζήτησης Εισαγωγή

ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΜΑΤΙΚΗΣ

Άσκηση 3 (ανακοινώθηκε στις 24 Απριλίου 2017, προθεσμία παράδοσης: 2 Ιουνίου 2017, 12 τα μεσάνυχτα).

Τεχνητή Νοημοσύνη Ι. Ενότητα 3: Επίλυση Προβλημάτων με Αναζήτηση

Ευφυής Προσδιορισμός Βέλτιστων Διαδρομών βάσει Μεθόδων Μηχανικής Μάθησης ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ

ΔΙΑΣΧΙΣΗ ΓΡΑΦΗΜΑΤΩΝ 1

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Τεχνητή Νοημοσύνη. Ενότητα 2: Αναζήτηση (Search)

ΙΚΑΝΟΠΟΙΗΣΗ ΠΕΡΙΟΡΙΣΜΩΝ

ΤΕΙ ΛΑΜΙΑΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑ ΥΠΟΛΟΓΙΣΤΩΝ

Αλγόριθμοι Ταξινόμησης Μέρος 4

Θεωρία Λήψης Αποφάσεων

Αλγόριθμοι και Δομές Δεδομένων (IΙ) (γράφοι και δένδρα)

Τεχνητή Νοημοσύνη. 2η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Προγραμματισμός Ι (ΗΥ120)

Τεχνητή Νοημοσύνη ( )

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Γραφήματα. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Αφηρημένες Δομές Δεδομένων. Στοίβα (Stack) Υλοποίηση στοίβας

Σχεδίαση Αλγορίθμων - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1

Αλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1

Ελαφρύτατες διαδρομές

ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ. Ενότητα 6: Προβλήματα ικανοποίησης περιορισμών. Ρεφανίδης Ιωάννης Τμήμα Εφαρμοσμένης Πληροφορικής

Τεχνητή Νοημοσύνη. 6η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Άσκηση 3 (ανακοινώθηκε στις 14 Μαΐου 2018, προθεσμία παράδοσης: 8 Ιουνίου 2018, 12 τα μεσάνυχτα).

Cuckoo Hashing. Αλγόριθμοι και Πολυπλοκότητα. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο

Υπολογιστική Πολυπλοκότητα

Για τις λύσεις των προβλημάτων υπάρχει τρόπος εκτίμησης της επίδοσης (performance) και της αποδοτικότητας (efficiency). Ερωτήματα για την επίδοση

Αναζήτηση σε Γράφους. Μανόλης Κουμπαράκης. ΥΣ02 Τεχνητή Νοημοσύνη 1

Κεφάλαιο 6. Ικανοποίηση Περιορισµών. Τεχνητή Νοηµοσύνη - Β' Έκδοση. Ι. Βλαχάβας, Π. Κεφαλάς, Ν. Βασιλειάδης, Φ. Κόκκορας, Η.

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής

Ασκήσεις μελέτης της 8 ης διάλεξης

Δέντρα Απόφασης (Decision(

Transcript:

ΤΥΦΛΗ ΑΝΑΖΗΤΗΣΗ (1) ΣΤΡΑΤΗΓΙΚΗ Ή ΑΛΓΟΡΙΘΜΟΣ ΑΝΑΖΗΤΗΣΗΣ Μια αυστηρά καθορισµένη ακολουθία ενεργειών µε σκοπό τη λύση ενός προβλήµατος. Χαρακτηριστικά οθέν πρόβληµα: P=<I, G, T, S> Επιλυθέν πρόβληµα: P s =<V, A, F, G s > V: σύνολο καταστάσεων που εξετάστηκαν (V SP) A: αλγόριθµος που χρησιµοποιήθηκε F: σύνολο λύσεων που βρέθηκαν Gs : σύνολο καταστάσεων στόχου που εξετάστηκαν 10-11-98 1

ΤΥΦΛΗ ΑΝΑΖΗΤΗΣΗ(2) Κριτήρια αξιολόγησης στρατηγικών αναζήτησης Πληρότητα (completeness) Βελτιστότητα (optimality) Πολυπλοκότητα χρόνου (time complexity) Πολυπλοκότητα χώρου (space complexity) ΠΡΟΣΟΧΗ Συντοµότερη διαδροµή = διαδροµή µε τις λιγότερες ακµές Βέλτιστη διαδροµή = διαδροµή µε το µικρότερο κόστος 10-11-98 2

ΤΥΦΛΗ ΑΝΑΖΗΤΗΣΗ (3) ΚΑΤΗΓΟΡΙΕΣ ΣΤΡΑΤΗΓΙΚΩΝ Ή ΑΛΓΟΡΙΘΜΩΝ ΑΝΑΖΗΤΗΣΗΣ Σχετικοί µε την κατεύθυνση αναζήτησης Αναζήτηση οδηγούµενη από τα δεδοµένα (data driven search) ή Αλυσίδωση προς τα εµπρός (forward chaining) Αναζήτηση οδηγούµενη από το στόχο (goal driven search) ή Αλυσίδωση προς τα πίσω (backward chaining) 10-11-98 3

ΤΥΦΛΗ ΑΝΑΖΗΤΗΣΗ (3Α) Οδηγούµενη από τα δεδοµένα Οδηγούµενη από το στόχο στόχος στόχος 10-11-98 4

ΤΥΦΛΗ ΑΝΑΖΗΤΗΣΗ (4) Σχετικοί µε τη σειρά αναζήτησης Αναζήτηση προτεραιότητας πλάτους ή Αναζήτηση κατά πλάτος (breadth-first search) Αναζήτηση προτεραιότητας βάθους ή Αναζήτηση κατά βάθος (depth-first search) Αναζήτηση επαναληπτικής εκβάθυνσης (iterative deepening search) Αναζήτηση περιορισµένου βάθους (depth-limited search) 10-11-98 5

ΤΥΦΛΗ ΑΝΑΖΗΤΗΣΗ (4Α) Προτεραιότητα πλάτους Προτεραιότητα βάθους µε οπισθοδρόµηση (backtracking) 10-11-98 6

ΤΥΦΛΗ ΑΝΑΖΗΤΗΣΗ (5) Αναζήτηση προτεραιότητας πλάτους (breadth-first: bfs) 1. ηµιούργησε µια λίστα open (που αρχικά περιέχει τη ρίζα) και µια κενή λίστα closed. 2. Ενόσω open [], έλεγχε αν το πρώτο στοιχείο, έστω Χ, είναι ο στόχος 2.1 Αν είναι, τότε σταµάτα (επιτυχία) 2.2 Αν δεν είναι, τότε 2.2.1 Παράγαγε τα παιδιά του Χ και βάλε το Χ στην closed 2.2.2 ιάγραψε όσα παιδιά του Χ υπάρχουν στην open ή στην closed 2.2.3 Εισάγαγε τα υπόλοιπα παιδιά του Χ στο τέλος της open 3. Σταµάτα (αποτυχία) 10-11-98 7

ΤΥΦΛΗ ΑΝΑΖΗΤΗΣΗ (6) Αναζήτηση προτεραιότητας βάθους (depth-first: dfs) 1. ηµιούργησε µια λίστα open (που αρχικά περιέχει τη ρίζα) και µια κενή λίστα closed. 2. Ενόσω open [], έλεγχε αν το πρώτο στοιχείο, έστω Χ, είναι ο στόχος 2.1 Αν είναι, τότε σταµάτα (επιτυχία) 2.2 Αν δεν είναι, τότε 2.2.1 Παράγαγε τα παιδιά του Χ και βάλε το Χ στην closed 2.2.2 ιάγραψε όσα παιδιά του Χ υπάρχουν στην open ή στην closed 2.2.3 Εισάγαγε τα υπόλοιπα παιδιά του Χ στην αρχή της open 3. Σταµάτα (αποτυχία) 10-11-98 8

ΤΥΦΛΗ ΑΝΑΖΗΤΗΣΗ (7) Αναζήτηση περιορισµένου βάθους Προτεραιότητα βάθους χωρίς να υπερβαίνει ορισµένο βάθος x Όλοι οι κόµβοι στο βάθος x θεωρούνται φύλλα 10-11-98 9

ΤΥΦΛΗ ΑΝΑΖΗΤΗΣΗ (8) Αναζήτηση περιορισµένου βάθους (depth-limited search: dfsl) 1. ηµιούργησε µια λίστα open (που αρχικά περιέχει τη ρίζα), µια κενή λίστα closed και µια µεταβλητή τρέχοντος βάθους d=0. 2. Ενόσω open [], έλεγχε αν το πρώτο στοιχείο, έστω Χ, είναι ο στόχος 2.1 Αν είναι, τότε σταµάτα (επιτυχία) 2.2 Αν δεν είναι, τότε 2.2.1 Αν ο Χ δεν είναι φύλλο (d<d lim ), παράγαγε τα παιδιά του Χ και βάλε το Χ στην closed και d=d+1 2.2.2 ιάγραψε όσα παιδιά του Χ υπάρχουν στην open ή στην closed 2.2.3 Εισάγαγε τα υπόλοιπα παιδιά του Χ στην αρχή της open 3. Σταµάτα (αποτυχία) 10-11-98 10

ΤΥΦΛΗ ΑΝΑΖΗΤΗΣΗ (9) Επαναληπτική εκβάθυνση βάθος = 1 βάθος = 2 10-11-98 11...

ΤΥΦΛΗ ΑΝΑΖΗΤΗΣΗ (10) Αναζήτηση επαναληπτικής εκβάθυνσης (iterative deepening search: ids) 1. Όρισε µια µεταβλητή ορίου βάθους d lim =1. 2. ηµιούργησε µια λίστα open (που αρχικά περιέχει τη ρίζα), µια κενή λίστα closed και µια µεταβλητή τρέχοντος βάθους d=0. 3. Ενόσω open [], έλεγχε αν το πρώτο στοιχείο, έστω Χ, είναι ο στόχος 3.1 Αν είναι, τότε σταµάτα (επιτυχία) 3.2 Αν δεν είναι, τότε 3.2.1 Αν ο Χ δεν είναι φύλλο (d<d lim ), παράγαγε τα παιδιά του Χ και βάλε το Χ στην closed και d=d+1 3.2.2 ιάγραψε όσα παιδιά του Χ υπάρχουν στην open ή στην closed 3.2.3 Εισάγαγε τα υπόλοιπα παιδιά του Χ στην αρχή της open 4. d lim =d lim +1 και πήγαινε στο βήµα 1. 10-11-98 12

ΤΥΦΛΗ ΑΝΑΖΗΤΗΣΗ (11) Αποφυγή επαναλαµβανόµενων καταστάσεων (κόµβων) Επαναλαµβανόµενες είναι οι καταστάσεις που συναντώνται περισσότερες από µια φορές κατά την ανάπτυξη ενός δέντρου καταστάσεων Στα περισσότερα προβλήµατα είναι αδύνατο να τις αποφύγουµε Η ανάπτυξη καταστάσεων (κόµβων) που έχουν ήδη αναπτυχθεί είναι χάσιµο χρόνου, γι αυτό δεν τις (τους) αναπτύσσουµε 10-11-98 13

ΤΥΦΛΗ ΑΝΑΖΗΤΗΣΗ (13) Πλεονεκτήµατα-Μειονεκτήµατα Προτεραιότητα πλάτους εγγυάται τη συντοµότερη διαδροµή (Π) απαιτεί µεγάλο χώρο στη µνήµη: b d (Μ) Προτεραιότητα βάθους απαιτεί µικρό χώρο στη µνήµη: b d (Π) µπορεί να βρεθεί σε *ανακύκλωση κόµβων *ατέρµονα κλάδο (Μ) b: συντελεστής διακλάδωσης (µ.ο. παιδιών ανά κόµβο) d: βάθος επιπέδου στόχου 10-11-98 14

ΤΥΦΛΗ ΑΝΑΖΗΤΗΣΗ (14) Περιορισµένου βάθους αποφυγή ατέρµονων διαδροµών (Π) δύσκολη επιλογή βάθους (Μ) Επαναληπτική εκβάθυνση άριστη ισορροπία χώρου και χρόνου (Π) επανυπολογισµός κόµβων (Μ) 10-11-98 15

ΕΥΡΕΤΙΚΗ ΑΝΑΖΗΤΗΣΗ (1) Η τυφλή αναζήτηση δεν λαµβάνει υπ όψιν της γνώση του πεδίου και δεν µπορεί να βελτιώσει την αποδοτικότητά της πέραν κάποιου σηµείου Η ευρετική αναζήτηση χρησιµοποιεί τέτοια γνώση, που ονοµάζεται ευρετική γνώση (heuristic knowledge), ώστε βελτιώνει σηµαντικά την απόδοση της αναζήτησης Γενικά ευρετικό (heuristic) είναι µια τεχνική που βελτιώνει την αποδοτικότητα της αναζήτησης. Μπορεί να είναι είτε γενικό είτε ειδικό (δηλ. σχετικό µε το πεδίο γνώσης του προβλήµατος). Μας ενδιαφέρουν κυρίως ευρετικά σχετικά µε το πεδίο και αυτά εννοούµε. Τα ευρετικά λειτουργούν ως συνιστώσα ελέγχου της αναζήτησης. 10-11-98 16

ΕΥΡΕΤΙΚΗ ΑΝΑΖΗΤΗΣΗ (2) Ένα ευρετικό µπορεί να αφορά είτε τον ορισµό τελεστών/κανόνων µετασχηµατισµού είτε την εκτίµηση µιας κατάστασης. Η δεύτερη περίπτωση είναι πιο ενδιαφέρουσα. Στην ευρετική αναζήτηση τότε είτε δεν αναπτύσσονται όλοι οι ανοικτοί κόµβοι, αλλά γίνεται επιλογή µε βάση το ευρετικό, είτε η σειρά ανάπτυξης των ανοικτών κόµβων βασίζεται στο ευρετικό. 10-11-98 17

ΕΥΡΕΤΙΚΗ ΑΝΑΖΗΤΗΣΗ (3) Ηαπόφαση για περαιτέρω ανάπτυξη ενός κόµβου βασίζεται εν γένει σε µια συνάρτηση εκτίµησης (evaluation function) f(n), όπου n ο εν λόγω κόµβος. Η f(n) έχει δύο συνιστώσες: f(n) = g(n) + h(n) Η g(n) λέγεται συνάρτηση κόστους και αναφέρεται στο (πραγµατικό) κόστος της διαδροµής από τη ρίζα στον κόµβο n. Η h(n) είναι η ευρετική συνάρτηση και αναφέρεται στο (εκτιµώµενο) κόστος της ελάχιστης διαδροµής από τον κόµβο n στο στόχο. 10-11-98 18

ΣΤΡΑΤΗΓΙΚΕΣ ΕΥΡΕΤΙΚΗΣ ΑΝΑΖΗΤΗΣΗΣ (1) έσµης (Beam search: bs) (Ακτινωτή) * παραλλαγή αναζήτησης προτεραιότητας πλάτους * m καλύτεροι κόµβοι σε κάθε επίπεδο (f(n) = h(n)) Αναρρίχηση λόφων (Hill climbing: hc) * παραλλαγή αναζήτησης προτεραιότητας βάθους * βασικός αλγόριθµος: επιλέγεται το καλύτερο παιδί (f(n) = h(n)), εφ όσον είναι καλύτερο και από τον γονέα, αλλιώς σταµατά (δηλ. δεν υπάρχει οπισθοδρόµηση) * υπάρχουν διάφορες παραλλαγές - ο βασικός, αλλά δεν σταµατά, συνεχίζει κατά πλάτος (Enforced Hill-Climbing: ehc) - επιλέγεται το καλύτερο παιδί του τρέχοντος κόµβου (µε ή χωρίς οπισθοδρόµηση) 10-11-98 19

ΣΤΡΑΤΗΓΙΚΕΣ ΕΥΡΕΤΙΚΗΣ ΑΝΑΖΗΤΗΣΗΣ (1) ιακλάδωση και δέσµευση (Branch and bound: b&b) (Επέκταση και οριοθέτηση) * ανάπτυξη του κόµβου της συντοµότερης τρέχουσας διαδροµής (f(n) = g(n)) Βέλτιστου κόµβου (Best-first search: bfs) * ανάπτυξη του καλύτερου κόµβου (f(n) = h(n)) Αλγόριθµος Α* * συνδυασµός των δύο προηγούµενων (f(n) = g(n) + h(n)) 10-11-98 20

ΣΤΡΑΤΗΓΙΚΕΣ ΕΥΡΕΤΙΚΗΣ ΑΝΑΖΗΤΗΣΗΣ (2) Αναζήτηση δέσµης (beam search: bs) 1. ηµιούργησε µια λίστα open (που αρχικά περιέχει τη ρίζα) και µια κενή λίστα closed. 2. Ενόσω open [], έλεγχε αν το πρώτο στοιχείο, έστω Χ, είναι ο στόχος 2.1 Αν είναι, τότε σταµάτα (επιτυχία) 2.2 Αν δεν είναι, τότε 2.2.1 Παράγαγε τα παιδιά του Χ και βάλε το Χ στην closed 2.2.2 ιάγραψε όσα παιδιά του Χ υπάρχουν στην open ή στην closed 2.2.3 Εισάγαγε τα υπόλοιπα παιδιά του Χ στην open 2.2.4 ιάταξε τα στοιχεία της open µε βάση την ευρετική συνάρτηση 2.2.5 ιάγραψε όλα τα στοιχεία της open πλην των m πρώτων 3. Σταµάτα (αποτυχία) 10-11-98 21

ΣΤΡΑΤΗΓΙΚΕΣ ΕΥΡΕΤΙΚΗΣ ΑΝΑΖΗΤΗΣΗΣ (3) Αναρρίχηση λόφου (hill climbing: hc) 1. Κάνε την αρχική τρέχουσα κατάσταση (Χ) 2. Ενόσω η Χ δεν είναι κατάσταση στόχου 2.1 Παράγαγε τα παιδιά του Χ 2.2 Αν δεν υπάρχουν παιδιά, σταµάτα (αποτυχία) 2.3 Αλλιώς, διάταξέ τα µε βάση την ευρετική συνάρτηση 2.4 Αν το πρώτο παιδί είναι καλύτερο από την Χ 2.2.1 αντικατέστησε την Χ µ αυτό 2.2.2 Αλλιώς, σταµάτα (αποτυχία) 3. Σταµάτα (επιτυχία) 10-11-98 22

ΣΤΡΑΤΗΓΙΚΕΣ ΕΥΡΕΤΙΚΗΣ ΑΝΑΖΗΤΗΣΗΣ (3) Αναρρίχηση λόφου (παραλλαγή) 1. ηµιούργησε µια λίστα open (που αρχικά περιέχει τη ρίζα) και µια κενή λίστα closed. 2. Ενόσω open [], έλεγχε αν το πρώτο στοιχείο, έστω Χ, είναι ο στόχος 2.1 Αν είναι, τότε σταµάτα (επιτυχία) 2.2 Αν δεν είναι, τότε 2.2.1 Παράγαγε τα παιδιά του Χ και βάλε το Χ στην closed 2.2.2 ιάταξε τα παιδιά του Χ µε βάση την ευρετική συνάρτηση 2.2.3 Εισάγαγε τα υπόλοιπα παιδιά του Χ στην αρχή της open 3. Σταµάτα (αποτυχία) 10-11-98 23

ΣΤΡΑΤΗΓΙΚΕΣ ΕΥΡΕΤΙΚΗΣ ΑΝΑΖΗΤΗΣΗΣ (4) Αλγόριθµος Πολυπ. Χρόνου Πολυπ. Χώρου Πληρότητα Βέλτ. Λύση Κατά Πλάτος Ο(b m ) Ο(b m ) ΝΑΙ ΌΧΙ Κατά Βάθος Ο(b m ) O(bm) ΌΧΙ ΌΧΙ Επαναληπτικής Εκβάθυνσης Ο(b m ) O(bm) ΝΑΙ ΌΧΙ έσµης Ο(k m ) Ο(k m ) ή O(km) ΌΧΙ ΌΧΙ Αναρρίχησης Λόφου Ο(b m ) O(bm) ΌΧΙ ΌΧΙ Β&Β Ο(b m ) Ο(b m ) ~g(s) ~g(s) Βέλτιστου Κόµβου Ο(b m ) Ο(b m ) ~h(s) ΟΧΙ Α* Ο(b m ) Ο(b m ) ΝΑΙ ΝΑΙ 10-11-98 24

ΣΤΡΑΤΗΓΙΚΕΣ ΕΥΡΕΤΙΚΗΣ ΑΝΑΖΗΤΗΣΗΣ (5) Κριτήρια αξιολόγησης ευριστικών συναρτήσεων Αποδεκτότητα (Admissibility) Βρίσκει τη συντοµότερη διαδροµή, οδηγεί πάντα στην καλύτερη λύση. Αυτό συµβαίνει όταν h(n) h*(n) (πραγµατική τιµή) Πληροφορικότητα (Informedness) ή Βέλτιστη Αποδοτικότητα (Optimal Efficiency) Εξασφαλίζει/εγγυάται την ανάπτυξη των λιγότερων κόµβων. Αν h1(n) h2 (n) n, τότε h2 περισσότερο πληροφοριακό από h1. 10-11-98 25

ΣΤΡΑΤΗΓΙΚΕΣ ΕΥΡΕΤΙΚΗΣ ΑΝΑΖΗΤΗΣΗΣ (6) Μονοτονικότητα (Monotonicity) ή Συνέπεια (Consistency) Εξασφαλίζει/εγγυάται ότι η ίδια κατάσταση δεν θα παραχθεί αργότερα µε µικρότερο κόστος. h(n) είναι µονότονη αν (1) h(n i ) h(n j ) c(n i, n j ) και (2) h(goal)=0 10-11-98 26