ΠΛΗ31
ΕΝΟΤΗΤΑ 1: ΑΝΑΖΗΤΗΣΗ
Μάθηµα 1.4:
Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
∆ηµήτρης Ψούνης
A. Θεωρία
1. Εισαγωγή
1. Μοντελοποίηση Προβληµάτων Αναζήτησης
2. Το Πλάνο της Αναζήτησης
2. Το Πρόβληµα του Λαβυρίνθου
1. ∆ιατύπωση του Προβλήµατος
2. Ορισµός Κατάστασης
3. Ορισµός Τελεστών Μετάβασης
4. Ορισµός Συνάρτησης Πραγµατικού Κόστους
5. Ορισµός Ευρετικής Συνάρτησης
6. Εφαρµογή Αλγορίθµων Αναζήτησης
3. Ο Κόσµος των Κύβων
1. ∆ιατύπωση του Προβλήµατος
2. Ορισµός Κατάστασης
3. Ορισµός Τελεστών Μετάβασης
4. Ορισµός Συνάρτησης Πραγµατικού Κόστους
5. Ορισµός Ευρετικής Συνάρτησης
6. Εφαρµογή Αλγορίθµων Αναζήτησης
2∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Περιεχόµενα Μαθήµατος
4. Το Ευθύγραµµο Παζλ
1. ∆ιατύπωση του Προβλήµατος
2. Ορισµός Κατάστασης
3. Ορισµός Τελεστών Μετάβασης
4. Ορισµός Συνάρτησης Πραγµατικού Κόστους
5. Ορισµός Ευρετικής Συνάρτησης
6. Εφαρµογή Αλγορίθµων Αναζήτησης
5. Το Πρόβληµα των ∆οχείων
1. ∆ιατύπωση του Προβλήµατος
2. Ορισµός Κατάστασης
3. Ορισµός Τελεστών Μετάβασης
4. Ορισµός Συνάρτησης Πραγµατικού Κόστους
5. Ορισµός Ευρετικής Συνάρτησης
6. Εφαρµογή Αλγορίθµων Αναζήτησης
A. Θεωρία
1. Εισαγωγή
1. Μοντελοποίηση Προβληµάτων Αναζήτησης
Ένα Πρόβληµα Αναζήτησης µοντελοποιείται ορίζοντας τα εξής τέσσερα στοιχεία:
• Την Κατάσταση (µία µαθηµατική αναπαράσταση ενός στιγµιότυπου του προβλήµατος).
• Συνήθως είναι ένας πίνακας (π.χ. µονοδιάστατος, διδιάστατος κ.λπ. ) µε δυαδική, ακέραια
ή κωδικοποίηση πραγµατικών αριθµών µε τις απαραίτητες πληροφορίες ενός στιγµιότυπου
(µίας φωτογραφίας δηλαδή του προβλήµατος).
• Τους Τελεστές ∆ράσης (οι κινήσεις που επιτρέπονται στο πρόβληµα ως ενέργειες σε µια
κατάσταση)
• Οι τελεστές δράσης (ή µετάβασης) θα ορίζονται περιγραφικά από την διατύπωση του
προβλήµατος και θα αποµένει να τους συντάξουµε τυπικά.
• Τη Συνάρτηση Πραγµατικού Κόστους g(v) (ορίζοντας τα βάρη των ακµών ή ισοδύναµα το
κόστος εφαρµογής των τελεστών µετάβασης)
• Η συνάρτηση κόστους διαδροµής θα είναι πάντα το άθροισµα των βαρών των ακµών από
την αφετηρία έως τον τρέχοντα κόµβο
• Την Ευρετική Συνάρτηση h(v) (µία εκτίµηση για το πόσο απέχει µία κατάσταση από τον κόµβο
στόχο του προβλήµατος).
• Όσο πιο µικρός ο αριθµός τόσο λιγότερο εκτιµάται ότι απέχει από τον κόµβο στόχο, άρα ο
κόµβος είναι και πιο υποσχόµενος να οδηγήσει γρήγορα σε µία λύση του προβλήµατος.
• Προσοχή, για την εξέταση για το αν η ευρετική συνάρτηση είναι παραδεκτή, δηλαδή ότι
δεν υπερεκτιµά το πραγµατικό κόστος για να πάµε από τον κόµβο στον κόµβο-στόχο
(µαθηµατικά δηλαδή ότι: h(v)≤h*(v) για κάθε κόµβο του γραφήµατος)
3∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
ΚΑΤΑ ΠΛΑΤΟΣ UCS
Συνάρτηση g(v)
A*
Συνάρτηση g(v)
Συνάρτηση h(v)
ΧΩΡΟΣ ΑΝΑΖΗΤΗΣΗΣ
A. Θεωρία
1. Εισαγωγή
2. Το Πλάνο της Αναζήτησης
Ένα Πρόβληµα Αναζήτησης µοντελοποιείται
ορίζοντας τα εξής τέσσερα στοιχεία:
• Την Κατάσταση
• Τους Τελεστές ∆ράσης
• Τη Συνάρτηση Πραγµατικού Κόστους g(v)
• Την Ευρετική Συνάρτηση h(v)
Αυτή είναι και η προεργασία που κάνουµε
προκειµένου να αποκτήσουν νόηµα αυτά
που κάναµε στα προηγούµενα µαθήµατα!
4∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
ΠΡΟΒΛΗΜΑ
ΑΝΑΖΗΤΗΣΗΣ
Κατάσταση
Τελεστές ∆ράσης
ΧΩΡΟΣ ΚΑΤΑΣΤΑΣΕΩΝ
ΜΑΘ1.1
ΚΑΤΑ ΒΑΘΟΣ
Εκτέλεση Αλγορίθµου
(∆ένδρο Αναζήτησης)
Greedy
Συνάρτηση h(v)
Λαβύρινθος
∆οχεία
Ευθύγραµµο Παζλ
Κόσµος των Κύβων
Τυφλή Αναζήτηση
ΜΑΘ1.2
Ευρετική Αναζήτηση
ΜΑΘ1.3
A. Θεωρία
2. Το Πρόβληµα του Λαβυρίνθου
1. ∆ιατύπωση του Προβλήµατος
Στο Πρόβληµα του Λαβυρίνθου δίνεται ένα πλέγµα διαστάσεων MxN. Τα τετράγωνα είτε είναι
προσβάσιµα, είτε είναι εµπόδια.
Ένα ροµπότ βρίσκεται σε ένα τετράγωνο και επιθυµεί να µεταβεί σε ένα τετράγωνο-στόχο. Μπορεί
να κινηθεί κατά µία θέση πάνω, κάτω, αριστερά και δεξιά εφόσον βέβαια αυτό είναι εφικτό (δεν είναι
εµπόδιο και δεν βγαίνει εκτός των ορίων του πίνακα).
Στο παράδειγµα το ροµπότ βρίσκεται στο τετράγωνο-αφετηρία (5,1) και επιθυµούµε να µεταβεί στο
τετράγωνο-στόχο (3,3). Ζητείται η µοντελοποίηση του ως πρόβληµα αναζήτησης.
5∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Υ
1 2 3 4 5
Χ
1
2
3 Τ
4
5
Παρατήρηση 2: Κάθε
κατάσταση είναι µια
συντοµογραφία της φωτογραφίας
του προβλήµατος
Παρατήρηση 1: Ο ορισµός της κατάστασης ορίζει (νοητά) τους
κόµβους του χώρου καταστάσεων του προβλήµατος
A. Θεωρία
2. Το Πρόβληµα του Λαβυρίνθου
2. Κατάσταση
Αναπαριστούµε µία κατάσταση του προβλήµατος µε ένα διατεταγµένο ζεύγος (X,Y) όπου
• Χ, Υ ∈ 1,2,3,4,5 είναι οι συντεταγµένες που βρίσκεται το ροµπότ.
6∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
1,1 1,2 1,3 1,4 1,5
2,1 2,4 2,5
3,1 3,3 3,4 3,5
4,1 4,5
5,1 5,2 5,3 5,4 5,5
5,1
5,2
A. Θεωρία
2. Το Πρόβληµα του Λαβυρίνθου
3. Τελεστές ∆ράσης
Τελεστές ∆ράσης: Ορίζουµε τους ακόλουθους 4 τελεστές οι οποίοι περιγράφουν πλήρως τις
κινήσεις που µπορεί να κάνει το ροµπότ:
ΠΑΝΩ: Μετακίνηση του ροµπότ µία θέση πάνω
Προϋποθέσεις: Χ 1 και το τετράγωνο X 1, Y δεν είναι εµπόδιο.
Αποτέλεσµα: Το ροµπότ µετακινείται στο τετράγωνο X 1, Y
ΚΑΤΩ: Μετακίνηση του ροµπότ µία θέση κάτω
Προϋποθέσεις: Χ 5 και το τετράγωνο X 1, Y δεν είναι εµπόδιο.
Αποτέλεσµα: Το ροµπότ µετακινείται στο τετράγωνο X 1, Y
ΑΡΙΣΤΕΡΑ: Μετακίνηση του ροµπότ µία θέση αριστερά
Προϋποθέσεις: Y 1 και το τετράγωνο X, Y 1 δεν είναι εµπόδιο.
Αποτέλεσµα: Το ροµπότ µετακινείται στο τετράγωνο X, Y 1
∆ΕΞΙΑ: Μετακίνηση του ροµπότ µία θέση δεξιά
Προϋποθέσεις: Y 5 και το τετράγωνο X, Y 1 δεν είναι εµπόδιο.
Αποτέλεσµα: Το ροµπότ µετακινείται στο τετράγωνο X, Y 1
7∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Παρατήρηση: Πάντα στον ορισµό των τελεστών θεωρούµε ότι βρισκόµαστε σε µια τυχαία
κατάσταση, όπως την έχουµε ορίσει νωρίτερα. Εδώ λοιπόν οι ορισµοί θεωρούν ότι βρισκόµαστε στο
(X,Y) και περιγράφεται πως γίνεται η αλλαγή στην κατάσταση, λόγω της επίδρασης του αντίστοιχου
τελεστή.
Παρατήρηση 1: Ο ορισµός της κατάστασης ορίζει (νοητά) τις ακµές του χώρου καταστάσεων του
προβλήµατος
A. Θεωρία
2. Το Πρόβληµα του Λαβυρίνθου
3. Τελεστές ∆ράσης
8∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Παρατήρηση 2: Οι ακµές σε έναν χώρο καταστάσεων είναι πάντα κατευθυνόµενες! (διότι ορίζονται
από την εφαρµογή ενός τελεστή). Ωστόσο, καθαρά για λόγους συντοµίας, συµβολίζουµε µε µη
κατευθυνόµενες ακµές εφαρµογές τελεστών που είναι αµφίδροµες. Συνεπώς θα ήταν συνεπέστερο
(αν και πιο χρονοβόρο) να είχαµε την εξής απεικόνιση:
1,1 1,2
2,1
∆
Α
∆
Α
1,3
∆
Α
Κ
Π
Κ
…
Παρατήρηση 1: Έτσι τώρα ο γράφος καταστάσεων αποκτά
και βάρη στις ακµές
A. Θεωρία
2. Το Πρόβληµα του Λαβυρίνθου
4. Συνάρτηση Πραγµατικού Κόστους
Συνάρτηση Πραγµατικού Κόστους: Ορίζουµε ότι το κόστος κάθε ακµής είναι ίσο µε 1
(ισοδύναµα το κόστος εφαρµογής των τελεστών µετάβασης είναι ίσο µε 1).
g(n): Άθροισµα βαρών των ακµών από την αφετηρία έως τον κόµβο n.
9∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
1,1 1,2 1,3 1,4 1,5
2,1 2,4 2,5
3,1 3,3 3,4 3,5
4,1 4,5
5,1 5,2 5,3 5,4 5,5
1 1 1 1
1
11
1 1 1 1
1
1
1
1
1
1
1
1
1
1
Παρατήρηση 2: Ο ισοδύναµος
τρόπος είναι ότι όποτε
χρησιµοποιούµε έναν τελεστή
µετάβασης το κόστος που
πληρώνουµε είναι ίσο µε 1:
1,1 1,2
2,1
∆:1
Α:1
∆:1
Α:1
1,3
∆:1
Α:1
Κ:1 Π:1
…
Κ:1 Π:1
A. Θεωρία
2. Το Πρόβληµα του Λαβυρίνθου
5. Ευρετική Συνάρτηση
Ειδικά για το πρόβληµα του Λαβυρίνθου η καταλληλότερη ευρετική συνάρτηση είναι η απόσταση
Manhattan για την οποία είναι γνωστό ότι είναι παραδεκτή.
• Η απόσταση Manhattan δύο τετραγώνων ορίζεται ως manhattan ((x1,y1),(x2,y2)) = |x1-x2|+|y1-y2|
• και πρακτικά είναι το ελάχιστο πλήθος κινήσεων που θα χρειαζόταν το ροµπότ για να φτάσει στο
στόχο αν δεν υπήρχαν εµπόδια.
10∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Υ
1 2 3 4 5
Χ
1
2
3 Τ
4
5
4 3 2 3 4
3 2 1 2 3
2 1 0 1 2
3 2 1 2 3
4 3 2 3 4
• manhattan ((5,1),(3,3)) = |5-3|+|1-3|=4
Παρατήρηση 1: Έτσι τώρα ο γράφος καταστάσεων αποκτά
και την εκτίµηση της ευρετικής συνάρτησης για κάθε
κατάσταση.
A. Θεωρία
2. Το Πρόβληµα του Λαβυρίνθου
5. Ευρετική Συνάρτηση
Ευρετική Συνάρτηση: Ορίζουµε ως ευρετική συνάρτηση την απόσταση Manhattan της κατάστασης
(Χ,Υ), από την κατάσταση-στόχο (X1,Y1): manhattan ((X,Y),(X1,Y1)) = |X-X1|+|Y-Y1|
Παρατήρηση: Η ευρετική συνάρτηση είναι παραδεκτή.
11∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Παρατήρηση 2: Η ευρετική
συνάρτηση καθορίζεται από την
κατάσταση-στόχο, άρα πλέον είναι
απαιτητό να έχουµε και τον ορισµό
του τερµατισµού (αλλά και της
αφετηρίας)
1,1 1,2 1,3 1,4 1,5
2,1 2,4 2,5
3,1 3,3 3,4 3,5
4,1 4,5
5,1 5,2 5,3 5,4 5,5
1
1
1
1
1
1
1 1 1 1
1 1
1
1
1
1
1
1 1 1 1
h=0 h=1
h=2
h=2
h=2
h=2
h=2
h=3h=3
h=3
h=3
h=3
h=3
h=3
h=4
h=4 h=3
S
T
h=4
h=4
A. Θεωρία
2. Το Πρόβληµα του Λαβυρίνθου
6. Εφαρµογή των Αλγορίθµων Αναζήτησης
12∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Άσκηση: Εφαρµόστε τους αλγορίθµους αναζήτησης Κατά Βάθος, Κατά Πλάτος, UCS, Greedy, A*
στο παράδειγµα – πρόβληµα του λαβυρίνθου
A. Θεωρία
2. Το Πρόβληµα του Λαβυρίνθου
6. Εφαρµογή των Αλγορίθµων Αναζήτησης
13∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
A. Θεωρία
3. O Κόσµος των Κύβων
1. ∆ιατύπωση του Προβλήµατος
Στο πρόβληµα των κύβων (λόγω δηµοφιλίας αναφέρεται και ως ο κόσµος των κύβων) 3 κύβοι µε
ονόµατα Α,Β,Γ. είναι πάνω σε ένα τραπέζι και ζητείται να προκύψει µία τοποθέτηση των κύβων σε
στοίβες, όταν επιτρέπονται οι εξής κινήσεις:
• Μετακίνηση ενός κύβου από το τραπέζι πάνω σε µία στοίβα κύβων.
• Μετακίνηση ενός κύβου από την κορυφή µιας στοίβας είτε πάνω στο τραπέζι είτε πάνω σε µια
άλλη στοίβα
Θεωρούµε ότι η σειρά των κύβων σε µια στοίβα έχει σηµασία, ενώ η σειρά των στοιβών στο
τραπέζι δεν έχει σηµασία.
Η αρχική και η τελική κατάσταση δίνονται στο παρακάτω σχήµα:
14∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Β
Α
Γ
Αρχική Κατάσταση
Β
Α
Γ
Τελική Κατάσταση
A. Θεωρία
3. Ο Κόσµος των Κύβων
2. Κατάσταση
Κατάσταση: Αναπαριστούµε µία κατάσταση του προβλήµατος µε ένα σύνολο στοιβών, όπου
κάθε στοίβα αναπαρίσταται µε µία διατεταγµένη n-άδα µε τα ονόµατα των στοιβών όπως βρίσκονται
στη στοίβα από πάνω προς τα κάτω.
Για παράδειγµα η αρχική και η τελική κατάσταση αναπαριστώνται ως εξής:
15∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Β
Α
Γ
Αρχική Κατάσταση
{(Α,Β),(Γ)}
Β
Α
Γ
Τελική Κατάσταση
{(Β,Α,Γ)}
A. Θεωρία
3. Ο Κόσµος των Κύβων
3. Τελεστές ∆ράσης
Τελεστές ∆ράσης: Ορίζουµε τους τελεστές ΦΟΡΤΩΣΕ(X,Y) και ΞΕΦΟΡΤΩΣΕ(Χ) ως εξής:
ΦΟΡΤΩΣΕ(Χ,Υ): Μετακίνηση του κύβου Χ πάνω στον κύβο Υ
Προϋποθέσεις:
(1) Ο κύβος Χ δεν έχει άλλο κύβο πάνω του
(2) Ο κύβος Υ δεν έχει άλλο κύβο πάνω του
Αποτέλεσµα:
Ο κύβος Χ είναι πάνω στον κύβο Υ
ΞΕΦΟΡΤΩΣΕ(Χ): Μετακίνηση του κύβου Χ στο τραπέζι
Προϋποθέσεις:
(1) Ο κύβος Χ δεν είναι στο τραπέζι
(2) Ο κύβος Χ δεν έχει άλλο κύβο πάνω του
Αποτέλεσµα:
Ο κύβος Χ είναι στο τραπέζι
16∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
A. Θεωρία
3. Ο Κόσµος των Κύβων
3. Τελεστές ∆ράσης
17∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Με τον ορισµό της κατάστασης και των τελεστών δράσης ορίζεται (νοητά) ο χώρος καταστάσεων
του προβλήµατος.
Ευρετική Συνάρτηση: Ορίζουµε ως ευρετική συνάρτηση, το πλήθος των κύβων που είναι σε λάθος ύψος σε
σχέση µε την κατάσταση-στόχο.
Παράδειγµα:
Οι κύβος Β είναι σε λάθος ύψος, ενώ οι κόµβοι Α και Γ είναι σε σωστό ύψος. Άρα η ευρετική αξιολόγηση του
κόµβου είναι ίση µε 1 (h(v)=1). Παρατηρούµε λοιπόν ότι η ευρετική συνάρτηση είναι παραδεκτή αφού οι κόµβοι
που είναι σε λάθος ύψος θα απαιτήσουν τουλάχιστον µία κίνηση για να βρεθούν σε σωστή θέση. Στο παράδειγµα
θα απαιτηθούν δύο κινήσεις, δηλαδή h*(v)=2
A. Θεωρία
3. Ο Κόσµος των Κύβων
4-5. Συνάρτηση Πραγµατικού Κόστους – Ευρετική Συνάρτηση
Συνάρτηση Πραγµατικού Κόστους: Ορίζουµε ότι το κόστος κάθε ακµής είναι ίσο µε 1 (ισοδύναµα το κόστος
εφαρµογής των τελεστών µετάβασης είναι ίσο µε 1).
g(n): Άθροισµα βαρών των ακµών από την αφετηρία έως τον κόµβο n.
18∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Β
Α
Γ
Β
Α
Γ
Τελική Κατάσταση
v
ΦΟΡΤΩΣΕ(Α,Γ) ΦΟΡΤΩΣΕ(Β,Α)
A. Θεωρία
3. Ο Κόσµος των Κύβων
4-5. Συνάρτηση Πραγµατικού Κόστους – Ευρετική Συνάρτηση
19∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Με τον ορισµό συναρτήσεων κόστους και ευρετικής συνάρτησης πλέον ο γράφος είναι έτοιµος για
να εκτελέσουµε τους αλγορίθµους αναζήτησης.
1 1 1 1 1 1
1 1 1
1 1 1 1 1 1
S
T h=0
h=1
h=2h=3h=2 h=2 h=3
h=2
h=2 h=2h=1 h=3 h=3
A. Θεωρία
3. Ο Κόσµος των Κύβων
6. Εφαρµογή Αλγορίθµων Αναζήτησης
20∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Άσκηση: Εφαρµόστε τον αλγόριθµο Α* για την επίλυση του προβλήµατος του κόσµου των κύβων
του παραδείγµατος.
A. Θεωρία
4. Το Πρόβληµα του Ευθυγράµµου Παζλ
1. ∆ιατύπωση του Προβλήµατος
Στο Πρόβληµα του Ευθυγράµµου Παζλ δίδεται ένα πλαίσιο 4 κενών θέσεων στο οποίο
τοποθετούνται 3 πλακίδια εκ των οποίων τα δύο είναι άσπρα και το ένα είναι µαύρο.
Οι κινήσεις που επιτρέπονται είναι µετακίνηση του πλακιδίου στην κενή θέση (δεξιά ή αριστερά) είτε
απ΄ευθείας εφόσον είναι δίπλα του, είτε υπερπηδώντας άλλα πλακίδια.
Η αρχική και η τελική κατάσταση φαίνονται στο παρακάτω σχήµα:
21∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Αρχική Κατάσταση Τελική Κατάσταση
A. Θεωρία
4. Το Πρόβληµα του Ευθυγράµµου Παζλ
2. Κατάσταση
Κατάσταση: Αναπαριστούµε µία κατάσταση του προβλήµατος µε έναν πίνακα 4 θέσεων που
περιέχει τα γράµµατα Λ (δύο φορές), Μ (µία φορά), Κ(συµβολίζει το κενό).
Για παράδειγµα η αρχική και η τελική κατάσταση αναπαριστώνται ως εξής:
22∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Αρχική Κατάσταση
[Λ,Λ,Κ,Μ]
Τελική Κατάσταση
[Μ,Κ,Λ,Λ]
A. Θεωρία
4. Το Πρόβληµα του Ευθυγράµµου Παζλ
3. Τελεστές ∆ράσης
Τελεστές ∆ράσης: Ορίζουµε έναν(!) τελεστή Τ(Χ) που συµβολίζει την µετακίνηση του κενού!
Σκέψη:
Αντί να λέµε ότι µετακινούµε π.χ. το λευκό πλακίδιο στη θέση του κενού, λέµε ισοδύναµα ότι
µετακινούµε το κενό στη θέση του πλακιδίου.
Λύση. Θεωρώντας ότι το κενό είναι στη θέση Υ ∈ 1,2,3,4 , έχουµε ότι:
Τ(Χ): Μετακίνηση του κενού κατά Χ θέσεις {-3,-2,-1: Αριστερά, 1,2,3: ∆εξιά}
Προϋποθέσεις: 1 Υ Χ 4
Αποτέλεσµα: Το πλακίδιο στην θέση Υ+Χ µετακινείται στη θέση του κενού.
23∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
A. Θεωρία
4. Το Πρόβληµα του Ευθυγράµµου Παζλ
3. Τελεστές ∆ράσης
24∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Με τον ορισµό της κατάστασης και των τελεστών δράσης ορίζεται (νοητά) ο χώρος καταστάσεων
του προβλήµατος.
[Λ,Λ,Κ,Μ]
[Κ,Λ,Λ,Μ] [Λ,Κ,Λ,Μ] [Λ,Λ,Μ,Κ]
[Μ,Λ,Λ,Κ] [Λ,Μ,Λ,Κ] [Κ,Λ,Μ,Λ] [Λ,Κ,Μ,Λ]
[Μ,Κ,Λ,Λ] [Μ,Λ,Κ,Λ] [Κ,Μ,Λ,Λ] [Λ,Μ,Κ,Λ]
Ευρετική Συνάρτηση: Ορίζουµε ως ευρετική συνάρτηση, το πλήθος των πλακιδίων που είναι σε λάθος θέση σε
σχέση µε την κατάσταση-στόχο.
Παράδειγµα:
Και τα 3 πλακιδια είναι σε λάθος θέση σε σχέση µε την τελική κατάσταση (h(v)=3). Παρατηρούµε λοιπόν ότι η
ευρετική συνάρτηση είναι παραδεκτή αφού και τα 3 πλακίδια που είναι σε λάθος θέση θα απαιτήσουν τουλάχιστον
µία κίνηση για να βρεθούν σε σωστή θέση. Στο παράδειγµα θα απαιτηθούν τρεις κινήσεις, δηλαδή h*(v)=3
A. Θεωρία
4. Το Πρόβληµα του Ευθυγράµµου Παζλ
4-5. Συνάρτηση Πραγµατικού Κόστους – Ευρετική Συνάρτηση
Συνάρτηση Πραγµατικού Κόστους: Ορίζουµε ότι το κόστος κάθε ακµής είναι ίσο µε 1 (ισοδύναµα το κόστος
εφαρµογής των τελεστών µετάβασης είναι ίσο µε 1).
g(n): Άθροισµα βαρών των ακµών από την αφετηρία έως τον κόµβο n.
25∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Τελική Κατάσταση
v
Τ(-2) Τ(3) Τ(-2)
A. Θεωρία
4. Το Πρόβληµα του Ευθυγράµµου Παζλ
4-5. Συνάρτηση Πραγµατικού Κόστους – Ευρετική Συνάρτηση
26∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Με τον ορισµό συναρτήσεων κόστους και ευρετικής συνάρτησης πλέον ο γράφος είναι έτοιµος για
να εκτελέσουµε τους αλγορίθµους αναζήτησης.
[Λ,Λ,Κ,Μ]
[Κ,Λ,Λ,Μ] [Λ,Κ,Λ,Μ] [Λ,Λ,Μ,Κ]
[Μ,Λ,Λ,Κ] [Λ,Μ,Λ,Κ] [Κ,Λ,Μ,Λ] [Λ,Κ,Μ,Λ]
[Μ,Κ,Λ,Λ] [Μ,Λ,Κ,Λ] [Κ,Μ,Λ,Λ] [Λ,Μ,Κ,Λ]
1 1
1
1 1
1 1
1
1
1 1
1
1
1
11
1
h=3
S
Τ
h=0
h=1
h=2
h=1 h=1 h=2
h=2 h=2 h=2
h=2 h=3
A. Θεωρία
4. Το Πρόβληµα του Ευθυγράµµου Παζλ
6. Εφαρµογή Αλγορίθµων Αναζήτησης
27∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Άσκηση: Εφαρµόστε τον αλγόριθµο Α* για την επίλυση του προβλήµατος του ευθυγράµµου παζλ
του παραδείγµατος.
A. Θεωρία
5. Το Πρόβληµα των ∆οχείων
1. ∆ιατύπωση του Προβλήµατος
Στο Πρόβληµα των ∆οχείων, δίνονται δύο δοχεία Α και Β µε χωρητικότητα 3 lt και 2 lt αντίστοιχα.
Επιτρέπεται να γεµίσουµε (πλήρως) ένα δοχείο από τη βρύση, να αδειάσουµε τελείως ένα δοχείο
και να αδειάσουµε (όσο περιεχοµένο χωράει) από το ένα δοχείο στο άλλο.
Η αρχική και η τελική κατάσταση φαίνονται στο παρακάτω σχήµα:
28∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Αρχική Κατάσταση Τελική Κατάσταση
1
2
3
1
2
Α Β
1
2
3
1
2
Α Β
A. Θεωρία
5. Το Πρόβληµα των ∆οχείων
2. Κατάσταση
Κατάσταση: Αναπαριστούµε µία κατάσταση του προβλήµατος µε ένα διατεταγµένο ζέυγος (X,Y)
όπου Χ είναι τα λίτρα στο δοχείο Α και Υ είναι τα λίτρα στο δοχείο Β.
Για παράδειγµα η αρχική και η τελική κατάσταση αναπαριστώνται ως εξής:
29∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Αρχική Κατάσταση
(0,0)
Τελική Κατάσταση
(0,1)
1
2
3
1
2
Α Β
1
2
3
1
2
Α Β
A. Θεωρία
5. Το Πρόβληµα των ∆οχείων
3. Τελεστές ∆ράσης
Τελεστές ∆ράσης: Ορίζουµε έξι τελεστές που αναπαριστούν τις κινήσεις που επιτρέπονται ως
εξής:
30∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Τ1: Γέµισε το δοχείο Α
Προϋποθέσεις: Το δοχείο Α δεν είναι γεµάτο (Χ≠3)
Αποτέλεσµα: Το δοχείο Α είναι γεµάτο (Χ=3)
Τ3: Άδειασε το δοχείο Α
Προϋποθέσεις: Το δοχείο Α δεν είναι άδειο (Χ≠0)
Αποτέλεσµα: Το δοχείο Α είναι άδειο (Χ=0)
Τ5: Άδειασε το δοχείο Α στο δοχείο Β
Προϋποθέσεις:
(1) Το δοχείο Α δεν είναι άδειο (Χ≠0)
(2) Το δοχείο Β δεν είναι γεµάτο (Υ ≠2)
Αποτέλεσµα:
Αδειάζουµε (όσο χωράει) από το Α στο Β
Αν |Χ+Υ|≤2 τότε νέα κατάσταση: (0,Χ+Υ)
Αν |Χ+Υ|>2 τότε νέα κατάσταση: (Χ-(2-Υ),2)
Τ2: Γέµισε το δοχείο Β
Προϋποθέσεις: Το δοχείο Β δεν είναι γεµάτο (Υ≠2)
Αποτέλεσµα: Το δοχείο Α είναι γεµάτο (Υ=2)
Τ4: Άδειασε το δοχείο Β
Προϋποθέσεις: Το δοχείο Β δεν είναι άδειο (Υ≠0)
Αποτέλεσµα: Το δοχείο Β είναι άδειο (Υ=0)
Τ6: Άδειασε το δοχείο Β στο δοχείο Α
Προϋποθέσεις:
(1) Το δοχείο Β δεν είναι άδειο (Υ≠0)
(2) Το δοχείο Α δεν είναι γεµάτο (Χ≠3)
Αποτέλεσµα:
Αδειάζουµε (όσο χωράει) από το Β στο Α
Αν |Χ+Υ|≤3 τότε νέα κατάσταση: (Χ+Υ,0)
Αν |Χ+Υ|>3 τότε νέα κατάσταση: (3,Υ-(3-Χ))
A. Θεωρία
5. Το Πρόβληµα των ∆οχείων
3. Τελεστές ∆ράσης
31∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα ΑναζήτησηςΜε τον ορισµό της κατάστασης και των τελεστών δράσης ορίζεται (νοητά) ο χώρος καταστάσεων
του προβλήµατος.
(0,0)
(3,0)
(0,2)
(3,2)(1,2) (2,0)
Τ1
Τ2
Τ3
Τ4
Τ2Τ5
Τ1
Τ6
Τ6
Τ1
Τ4
Τ3
Τ3
(1,0)
Τ4
Τ5
Τ1
Τ3
(2,2)
Τ2
Τ3
Τ1
Τ2
(0,1)
Τ5
Τ1
Τ3
Τ4Τ4
(3,1)
Τ1
Τ2
Τ6 Τ6
Τ3
Τ4
Τ5
Ευρετική Συνάρτηση: Ορίζουµε ως ευρετική συνάρτηση, το άθροισµα των απολύτων διαφορών των λίτρων των
δοχείων σε σχέση µε την κατάσταση στόχο: f(X,Y)=|X-0|+|Y-1|
Παράδειγµα:
Η ευρετική αξιολόγηση του κόµβου v είναι ίση µε h(v)=3+1=4. Ωστόσο (σύµφωνα και µε το γράφο καταστάσεων η
βέλτιστη λύση είναι αυτή που φαίνεται στο σχήµα, δηλαδή h*(v)=3. Συνεπώς η ευρετική ∆ΕΝ είναι παραδεκτή.
A. Θεωρία
5. Το Πρόβληµα των ∆οχείων
4-5. Συνάρτηση Πραγµατικού Κόστους – Ευρετική Συνάρτηση
Συνάρτηση Πραγµατικού Κόστους: Ορίζουµε ότι το κόστος κάθε ακµής είναι ίσο µε 1 (ισοδύναµα το κόστος
εφαρµογής των τελεστών µετάβασης είναι ίσο µε 1).
g(n): Άθροισµα βαρών των ακµών από την αφετηρία έως τον κόµβο n.
32∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Τελική Κατάσταση
v
Τ5Τ4
Τ5
A. Θεωρία
5. Το Πρόβληµα των ∆οχείων
3. Τελεστές ∆ράσης
33∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα ΑναζήτησηςΠλέον ο γράφος είναι έτοιµος για την εκτέλεση των αλγορίθµων αναζήτησης (Όλα τα κόστη ακµών
είναι ίσα µε 1).
(0,0)
(3,0)
(0,2)
(3,2)(1,2) (2,0)
Τ1
Τ2
Τ3
Τ4
Τ2Τ5
Τ1
Τ6
Τ6
Τ1
Τ4
Τ3
Τ3
(1,0)
Τ4
Τ5
Τ1
Τ3
(2,2)
Τ2
Τ3
Τ1
Τ2
(0,1)
Τ5
Τ1
Τ3
Τ4Τ4
(3,1)
Τ1
Τ2
Τ6 Τ6
Τ3
Τ4
Τ5
Τ
S
h=0
h=3
h=2
h=2
h=4
h=1
h=4
h=1
h=3
h=3
A. Θεωρία
5. Το Πρόβληµα των ∆οχείων
6. Εφαρµογή Αλγορίθµων Αναζήτησης
34∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
Άσκηση: Εφαρµόστε τον αλγόριθµο Α* για την επίλυση του προβλήµατος των δοχείων του
παραδείγµατος.

More Related Content

PDF
ΠΛΗ31 ΜΑΘΗΜΑ 3.1
PDF
ΠΛΗ31 ΜΑΘΗΜΑ 1.3
PDF
ΠΛΗ31 ΜΑΘΗΜΑ 2.2
PDF
ΠΛΗ31 ΜΑΘΗΜΑ 3.4
PDF
ΠΛΗ31 ΜΑΘΗΜΑ 2.3
PDF
ΠΛΗ31 ΜΑΘΗΜΑ 1.1
PDF
ΠΛΗ30 ΜΑΘΗΜΑ 2.2
PDF
ΠΛΗ20 ΜΑΘΗΜΑ 6.2
ΠΛΗ31 ΜΑΘΗΜΑ 3.1
ΠΛΗ31 ΜΑΘΗΜΑ 1.3
ΠΛΗ31 ΜΑΘΗΜΑ 2.2
ΠΛΗ31 ΜΑΘΗΜΑ 3.4
ΠΛΗ31 ΜΑΘΗΜΑ 2.3
ΠΛΗ31 ΜΑΘΗΜΑ 1.1
ΠΛΗ30 ΜΑΘΗΜΑ 2.2
ΠΛΗ20 ΜΑΘΗΜΑ 6.2

What's hot (20)

PDF
ΠΛΗ31 ΜΑΘΗΜΑ 3.3
PDF
ΠΛΗ31 ΜΑΘΗΜΑ 3.5
PDF
ΠΛΗ30 ΜΑΘΗΜΑ 2.1
PDF
ΠΛΗ31 ΜΑΘΗΜΑ 1.2
PDF
ΠΛΗ30 ΜΑΘΗΜΑ 3.2
PDF
ΠΛΗ31 ΜΑΘΗΜΑ 4.3
PDF
ΠΛΗ20 ΜΑΘΗΜΑ 1.2
PDF
ΠΛΗ20 ΜΑΘΗΜΑ 0.4
PDF
ΠΛΗ20 ΜΑΘΗΜΑ 1.5
PDF
ΠΛΗ20 ΜΑΘΗΜΑ 1.1
PDF
ΠΛΗ30.ΚΑΡΤΑ - ΑΝΑΛΥΣΗ ΔΙΑΔΙΚΑΣΤΙΚΩΝ ΑΛΓΟΡΙΘΜΩΝ
PDF
ΠΛΗ30 ΜΑΘΗΜΑ 1.1
PDF
ΠΛΗ20 ΜΑΘΗΜΑ 3.3
PDF
ΠΛΗ20 ΜΑΘΗΜΑ 1.3
PDF
ΠΛΗ20 ΤΥΠΟΛΟΓΙΟ ΣΥΝΔΥΑΣΤΙΚΗΣ
PDF
ΠΛΗ30 ΜΑΘΗΜΑ 1.2
PDF
ΠΛΗ31 ΜΑΘΗΜΑ 2.1
PDF
ΠΛΗ20 ΜΑΘΗΜΑ 3.2
PDF
ΠΛΗ30 ΤΥΠΟΛΟΓΙΟ ΕΝΟΤΗΤΑΣ 2
PDF
ΠΛΗ20 ΜΑΘΗΜΑ 3.1
ΠΛΗ31 ΜΑΘΗΜΑ 3.3
ΠΛΗ31 ΜΑΘΗΜΑ 3.5
ΠΛΗ30 ΜΑΘΗΜΑ 2.1
ΠΛΗ31 ΜΑΘΗΜΑ 1.2
ΠΛΗ30 ΜΑΘΗΜΑ 3.2
ΠΛΗ31 ΜΑΘΗΜΑ 4.3
ΠΛΗ20 ΜΑΘΗΜΑ 1.2
ΠΛΗ20 ΜΑΘΗΜΑ 0.4
ΠΛΗ20 ΜΑΘΗΜΑ 1.5
ΠΛΗ20 ΜΑΘΗΜΑ 1.1
ΠΛΗ30.ΚΑΡΤΑ - ΑΝΑΛΥΣΗ ΔΙΑΔΙΚΑΣΤΙΚΩΝ ΑΛΓΟΡΙΘΜΩΝ
ΠΛΗ30 ΜΑΘΗΜΑ 1.1
ΠΛΗ20 ΜΑΘΗΜΑ 3.3
ΠΛΗ20 ΜΑΘΗΜΑ 1.3
ΠΛΗ20 ΤΥΠΟΛΟΓΙΟ ΣΥΝΔΥΑΣΤΙΚΗΣ
ΠΛΗ30 ΜΑΘΗΜΑ 1.2
ΠΛΗ31 ΜΑΘΗΜΑ 2.1
ΠΛΗ20 ΜΑΘΗΜΑ 3.2
ΠΛΗ30 ΤΥΠΟΛΟΓΙΟ ΕΝΟΤΗΤΑΣ 2
ΠΛΗ20 ΜΑΘΗΜΑ 3.1
Ad

Viewers also liked (18)

PDF
ΠΛΗ31 ΜΑΘΗΜΑ 1.4 - ΚΑΡΤΑ
PDF
ΠΛΗ31 ΜΑΘΗΜΑ 1.4 - ΚΑΡΤΑ (ΕΚΤΥΠΩΣΗ)
PDF
ΠΛΗ31 ΜΑΘΗΜΑ 1.4 (ΕΚΤΥΠΩΣΗ)
PDF
ΠΛΗ31 PROLOG ΜΑΘΗΜΑ 2
PDF
ΠΛΗ31 PROLOG ΜΑΘΗΜΑ 2 (ΕΚΤΥΠΩΣΗ)
PDF
PROLOG - ΜΑΘΗΜΑ 3 (ΕΚΤΥΠΩΣΗ)
PDF
PROLOG - ΜΑΘΗΜΑ 3
PDF
ΠΛΗ31 ΤΕΣΤ 32
PDF
ΠΛΗ31 ΤΕΣΤ 3
PDF
ΠΛΗ31 ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 2.1
PDF
ΠΛΗ31 ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 2.1 (ΕΚΤΥΠΩΣΗ)
PDF
ΠΛΗ31 ΜΑΘΗΜΑ 2.1 (ΕΚΤΥΠΩΣΗ)
PDF
PROLOG ΜΑΘΗΜΑ 5 (ΕΚΤΥΠΩΣΗ)
PDF
PROLOG ΜΑΘΗΜΑ 5
PDF
ΠΛΗ31 PROLOG ΜΑΘΗΜΑ 1 (ΕΚΤΥΠΩΣΗ)
PDF
PROLOG - ΜΑΘΗΜΑ 4
PDF
ΠΛΗ31 PROLOG ΜΑΘΗΜΑ 1
PDF
PROLOG - ΜΑΘΗΜΑ 4 (ΕΚΤΥΠΩΣΗ)
ΠΛΗ31 ΜΑΘΗΜΑ 1.4 - ΚΑΡΤΑ
ΠΛΗ31 ΜΑΘΗΜΑ 1.4 - ΚΑΡΤΑ (ΕΚΤΥΠΩΣΗ)
ΠΛΗ31 ΜΑΘΗΜΑ 1.4 (ΕΚΤΥΠΩΣΗ)
ΠΛΗ31 PROLOG ΜΑΘΗΜΑ 2
ΠΛΗ31 PROLOG ΜΑΘΗΜΑ 2 (ΕΚΤΥΠΩΣΗ)
PROLOG - ΜΑΘΗΜΑ 3 (ΕΚΤΥΠΩΣΗ)
PROLOG - ΜΑΘΗΜΑ 3
ΠΛΗ31 ΤΕΣΤ 32
ΠΛΗ31 ΤΕΣΤ 3
ΠΛΗ31 ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 2.1
ΠΛΗ31 ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 2.1 (ΕΚΤΥΠΩΣΗ)
ΠΛΗ31 ΜΑΘΗΜΑ 2.1 (ΕΚΤΥΠΩΣΗ)
PROLOG ΜΑΘΗΜΑ 5 (ΕΚΤΥΠΩΣΗ)
PROLOG ΜΑΘΗΜΑ 5
ΠΛΗ31 PROLOG ΜΑΘΗΜΑ 1 (ΕΚΤΥΠΩΣΗ)
PROLOG - ΜΑΘΗΜΑ 4
ΠΛΗ31 PROLOG ΜΑΘΗΜΑ 1
PROLOG - ΜΑΘΗΜΑ 4 (ΕΚΤΥΠΩΣΗ)
Ad

Similar to ΠΛΗ31 ΜΑΘΗΜΑ 1.4 (20)

PDF
Συναρτήσεις καλοκαιρινή προετοιμασία μαθηματικά θετικών σπουδών,οικονομίας κ...
PDF
ΠΛΗ31.ΚΑΡΤΑ ΜΑΘΗΜΑ 1.1
PDF
άλγεβρα α΄ λυκείου γιώργος αποστόλου
PDF
λυγάτσικας ζήνων ασκήσεις άλγεβρας B΄λυκείου 2015-6
PDF
ΠΛΗ31 ΤΕΣΤ 17
PPTX
Εισαγωγή στις Αρχές της Επιστήμης των ΗΥ: κεφαλαιο 2.1 προβλημα
DOC
Plataros papadopoulou
PDF
13η Διάλεξη - Ανάλυση LU (συνέχεια)
DOC
μαθηματικα γενικης επαναληπτικες 2011
PPTX
Διαδικασίες επίλυσης (υπολογιστικού) προβλήματος
PPTX
αεππ κεφαλαιο 1 ανάλυση προβλήματος
PDF
άλγεβρα β΄ λυκείου γιώργος αποστόλου
PDF
Lyseis sxol math_kat
DOC
Άλυτα προβλήματα μαθηματικών
PDF
Kef1o Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον
PDF
Παραγοντοποίηση LU
PDF
μαλλιάκας κ ροδίων-παιδεία_ιανουάριος_2017-1
PDF
ΠΛΗ31 ΤΕΣΤ 24
Συναρτήσεις καλοκαιρινή προετοιμασία μαθηματικά θετικών σπουδών,οικονομίας κ...
ΠΛΗ31.ΚΑΡΤΑ ΜΑΘΗΜΑ 1.1
άλγεβρα α΄ λυκείου γιώργος αποστόλου
λυγάτσικας ζήνων ασκήσεις άλγεβρας B΄λυκείου 2015-6
ΠΛΗ31 ΤΕΣΤ 17
Εισαγωγή στις Αρχές της Επιστήμης των ΗΥ: κεφαλαιο 2.1 προβλημα
Plataros papadopoulou
13η Διάλεξη - Ανάλυση LU (συνέχεια)
μαθηματικα γενικης επαναληπτικες 2011
Διαδικασίες επίλυσης (υπολογιστικού) προβλήματος
αεππ κεφαλαιο 1 ανάλυση προβλήματος
άλγεβρα β΄ λυκείου γιώργος αποστόλου
Lyseis sxol math_kat
Άλυτα προβλήματα μαθηματικών
Kef1o Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον
Παραγοντοποίηση LU
μαλλιάκας κ ροδίων-παιδεία_ιανουάριος_2017-1
ΠΛΗ31 ΤΕΣΤ 24

More from Dimitris Psounis (20)

PDF
Η ΓΛΩΣΣΑ C++ - ΜΑΘΗΜΑ 4 - ΚΛΑΣΕΙΣ ΚΑΙ ΑΝΑΦΟΡΕΣ
PDF
Η ΓΛΩΣΣΑ C++ - ΜΑΘΗΜΑ 4 - ΚΛΑΣΕΙΣ ΚΑΙ ΑΝΑΦΟΡΕΣ (4διαφ)
PDF
ΓΛΩΣΣΑ C++ - ΜΑΘΗΜΑ 3 - ΚΛΑΣΕΙΣ ΚΑΙ ΔΕΙΚΤΕΣ (4δ)
PDF
ΓΛΩΣΣΑ C++ - ΜΑΘΗΜΑ 3 - ΚΛΑΣΕΙΣ ΚΑΙ ΔΕΙΚΤΕΣ
PDF
Η ΓΛΩΣΣΑ C++ - ΜΑΘΗΜΑ 2 - ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΚΛΑΣΕΙΣ
PDF
Η ΓΛΩΣΣΑ C++ - ΜΑΘΗΜΑ 2 - ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΚΛΑΣΕΙΣ (4 διαφ)
PDF
C++ - ΜΑΘΗΜΑ 1 - ΕΙΣΑΓΩΓΗ ΚΑΙ ΣΧΕΣΗ ΜΕ ΤΗ C
PDF
C++ - ΜΑΘΗΜΑ 1 - ΕΙΣΑΓΩΓΗ ΚΑΙ ΣΧΕΣΗ ΜΕ ΤΗ C (4sl/p)
PDF
ΠΛΗ20 ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 6
PDF
ΠΛΗ20 ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 5
PDF
ΠΛΗ10 ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 2.2 (ΕΚΤΥΠΩΣΗ)
PDF
ΠΛΗ10 ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 2.2
PDF
ΠΛΗ10 ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 2.1 (ΕΚΤΥΠΩΣΗ)
PDF
ΠΛΗ10 ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 2.1
PDF
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΣΕ C - ΜΑΘΗΜΑ 7
PDF
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΣΕ C - ΜΑΘΗΜΑ 8 (ΕΚΤΥΠΩΣΗ)
PDF
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΣΕ C - ΜΑΘΗΜΑ 8
PDF
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΣΕ C - ΜΑΘΗΜΑ 7 (ΕΚΤΥΠΩΣΗ)
PDF
ΠΛΗ31 - ΤΕΣΤ 33
PDF
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΣΕ C - ΜΑΘΗΜΑ 6
Η ΓΛΩΣΣΑ C++ - ΜΑΘΗΜΑ 4 - ΚΛΑΣΕΙΣ ΚΑΙ ΑΝΑΦΟΡΕΣ
Η ΓΛΩΣΣΑ C++ - ΜΑΘΗΜΑ 4 - ΚΛΑΣΕΙΣ ΚΑΙ ΑΝΑΦΟΡΕΣ (4διαφ)
ΓΛΩΣΣΑ C++ - ΜΑΘΗΜΑ 3 - ΚΛΑΣΕΙΣ ΚΑΙ ΔΕΙΚΤΕΣ (4δ)
ΓΛΩΣΣΑ C++ - ΜΑΘΗΜΑ 3 - ΚΛΑΣΕΙΣ ΚΑΙ ΔΕΙΚΤΕΣ
Η ΓΛΩΣΣΑ C++ - ΜΑΘΗΜΑ 2 - ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΚΛΑΣΕΙΣ
Η ΓΛΩΣΣΑ C++ - ΜΑΘΗΜΑ 2 - ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΚΛΑΣΕΙΣ (4 διαφ)
C++ - ΜΑΘΗΜΑ 1 - ΕΙΣΑΓΩΓΗ ΚΑΙ ΣΧΕΣΗ ΜΕ ΤΗ C
C++ - ΜΑΘΗΜΑ 1 - ΕΙΣΑΓΩΓΗ ΚΑΙ ΣΧΕΣΗ ΜΕ ΤΗ C (4sl/p)
ΠΛΗ20 ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 6
ΠΛΗ20 ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 5
ΠΛΗ10 ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 2.2 (ΕΚΤΥΠΩΣΗ)
ΠΛΗ10 ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 2.2
ΠΛΗ10 ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 2.1 (ΕΚΤΥΠΩΣΗ)
ΠΛΗ10 ΚΑΡΤΕΣ ΜΑΘΗΜΑΤΟΣ 2.1
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΣΕ C - ΜΑΘΗΜΑ 7
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΣΕ C - ΜΑΘΗΜΑ 8 (ΕΚΤΥΠΩΣΗ)
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΣΕ C - ΜΑΘΗΜΑ 8
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΣΕ C - ΜΑΘΗΜΑ 7 (ΕΚΤΥΠΩΣΗ)
ΠΛΗ31 - ΤΕΣΤ 33
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΣΕ C - ΜΑΘΗΜΑ 6

ΠΛΗ31 ΜΑΘΗΜΑ 1.4

  • 1. ΠΛΗ31 ΕΝΟΤΗΤΑ 1: ΑΝΑΖΗΤΗΣΗ Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης ∆ηµήτρης Ψούνης
  • 2. A. Θεωρία 1. Εισαγωγή 1. Μοντελοποίηση Προβληµάτων Αναζήτησης 2. Το Πλάνο της Αναζήτησης 2. Το Πρόβληµα του Λαβυρίνθου 1. ∆ιατύπωση του Προβλήµατος 2. Ορισµός Κατάστασης 3. Ορισµός Τελεστών Μετάβασης 4. Ορισµός Συνάρτησης Πραγµατικού Κόστους 5. Ορισµός Ευρετικής Συνάρτησης 6. Εφαρµογή Αλγορίθµων Αναζήτησης 3. Ο Κόσµος των Κύβων 1. ∆ιατύπωση του Προβλήµατος 2. Ορισµός Κατάστασης 3. Ορισµός Τελεστών Μετάβασης 4. Ορισµός Συνάρτησης Πραγµατικού Κόστους 5. Ορισµός Ευρετικής Συνάρτησης 6. Εφαρµογή Αλγορίθµων Αναζήτησης 2∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Περιεχόµενα Μαθήµατος 4. Το Ευθύγραµµο Παζλ 1. ∆ιατύπωση του Προβλήµατος 2. Ορισµός Κατάστασης 3. Ορισµός Τελεστών Μετάβασης 4. Ορισµός Συνάρτησης Πραγµατικού Κόστους 5. Ορισµός Ευρετικής Συνάρτησης 6. Εφαρµογή Αλγορίθµων Αναζήτησης 5. Το Πρόβληµα των ∆οχείων 1. ∆ιατύπωση του Προβλήµατος 2. Ορισµός Κατάστασης 3. Ορισµός Τελεστών Μετάβασης 4. Ορισµός Συνάρτησης Πραγµατικού Κόστους 5. Ορισµός Ευρετικής Συνάρτησης 6. Εφαρµογή Αλγορίθµων Αναζήτησης
  • 3. A. Θεωρία 1. Εισαγωγή 1. Μοντελοποίηση Προβληµάτων Αναζήτησης Ένα Πρόβληµα Αναζήτησης µοντελοποιείται ορίζοντας τα εξής τέσσερα στοιχεία: • Την Κατάσταση (µία µαθηµατική αναπαράσταση ενός στιγµιότυπου του προβλήµατος). • Συνήθως είναι ένας πίνακας (π.χ. µονοδιάστατος, διδιάστατος κ.λπ. ) µε δυαδική, ακέραια ή κωδικοποίηση πραγµατικών αριθµών µε τις απαραίτητες πληροφορίες ενός στιγµιότυπου (µίας φωτογραφίας δηλαδή του προβλήµατος). • Τους Τελεστές ∆ράσης (οι κινήσεις που επιτρέπονται στο πρόβληµα ως ενέργειες σε µια κατάσταση) • Οι τελεστές δράσης (ή µετάβασης) θα ορίζονται περιγραφικά από την διατύπωση του προβλήµατος και θα αποµένει να τους συντάξουµε τυπικά. • Τη Συνάρτηση Πραγµατικού Κόστους g(v) (ορίζοντας τα βάρη των ακµών ή ισοδύναµα το κόστος εφαρµογής των τελεστών µετάβασης) • Η συνάρτηση κόστους διαδροµής θα είναι πάντα το άθροισµα των βαρών των ακµών από την αφετηρία έως τον τρέχοντα κόµβο • Την Ευρετική Συνάρτηση h(v) (µία εκτίµηση για το πόσο απέχει µία κατάσταση από τον κόµβο στόχο του προβλήµατος). • Όσο πιο µικρός ο αριθµός τόσο λιγότερο εκτιµάται ότι απέχει από τον κόµβο στόχο, άρα ο κόµβος είναι και πιο υποσχόµενος να οδηγήσει γρήγορα σε µία λύση του προβλήµατος. • Προσοχή, για την εξέταση για το αν η ευρετική συνάρτηση είναι παραδεκτή, δηλαδή ότι δεν υπερεκτιµά το πραγµατικό κόστος για να πάµε από τον κόµβο στον κόµβο-στόχο (µαθηµατικά δηλαδή ότι: h(v)≤h*(v) για κάθε κόµβο του γραφήµατος) 3∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
  • 4. ΚΑΤΑ ΠΛΑΤΟΣ UCS Συνάρτηση g(v) A* Συνάρτηση g(v) Συνάρτηση h(v) ΧΩΡΟΣ ΑΝΑΖΗΤΗΣΗΣ A. Θεωρία 1. Εισαγωγή 2. Το Πλάνο της Αναζήτησης Ένα Πρόβληµα Αναζήτησης µοντελοποιείται ορίζοντας τα εξής τέσσερα στοιχεία: • Την Κατάσταση • Τους Τελεστές ∆ράσης • Τη Συνάρτηση Πραγµατικού Κόστους g(v) • Την Ευρετική Συνάρτηση h(v) Αυτή είναι και η προεργασία που κάνουµε προκειµένου να αποκτήσουν νόηµα αυτά που κάναµε στα προηγούµενα µαθήµατα! 4∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης ΠΡΟΒΛΗΜΑ ΑΝΑΖΗΤΗΣΗΣ Κατάσταση Τελεστές ∆ράσης ΧΩΡΟΣ ΚΑΤΑΣΤΑΣΕΩΝ ΜΑΘ1.1 ΚΑΤΑ ΒΑΘΟΣ Εκτέλεση Αλγορίθµου (∆ένδρο Αναζήτησης) Greedy Συνάρτηση h(v) Λαβύρινθος ∆οχεία Ευθύγραµµο Παζλ Κόσµος των Κύβων Τυφλή Αναζήτηση ΜΑΘ1.2 Ευρετική Αναζήτηση ΜΑΘ1.3
  • 5. A. Θεωρία 2. Το Πρόβληµα του Λαβυρίνθου 1. ∆ιατύπωση του Προβλήµατος Στο Πρόβληµα του Λαβυρίνθου δίνεται ένα πλέγµα διαστάσεων MxN. Τα τετράγωνα είτε είναι προσβάσιµα, είτε είναι εµπόδια. Ένα ροµπότ βρίσκεται σε ένα τετράγωνο και επιθυµεί να µεταβεί σε ένα τετράγωνο-στόχο. Μπορεί να κινηθεί κατά µία θέση πάνω, κάτω, αριστερά και δεξιά εφόσον βέβαια αυτό είναι εφικτό (δεν είναι εµπόδιο και δεν βγαίνει εκτός των ορίων του πίνακα). Στο παράδειγµα το ροµπότ βρίσκεται στο τετράγωνο-αφετηρία (5,1) και επιθυµούµε να µεταβεί στο τετράγωνο-στόχο (3,3). Ζητείται η µοντελοποίηση του ως πρόβληµα αναζήτησης. 5∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Υ 1 2 3 4 5 Χ 1 2 3 Τ 4 5
  • 6. Παρατήρηση 2: Κάθε κατάσταση είναι µια συντοµογραφία της φωτογραφίας του προβλήµατος Παρατήρηση 1: Ο ορισµός της κατάστασης ορίζει (νοητά) τους κόµβους του χώρου καταστάσεων του προβλήµατος A. Θεωρία 2. Το Πρόβληµα του Λαβυρίνθου 2. Κατάσταση Αναπαριστούµε µία κατάσταση του προβλήµατος µε ένα διατεταγµένο ζεύγος (X,Y) όπου • Χ, Υ ∈ 1,2,3,4,5 είναι οι συντεταγµένες που βρίσκεται το ροµπότ. 6∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης 1,1 1,2 1,3 1,4 1,5 2,1 2,4 2,5 3,1 3,3 3,4 3,5 4,1 4,5 5,1 5,2 5,3 5,4 5,5 5,1 5,2
  • 7. A. Θεωρία 2. Το Πρόβληµα του Λαβυρίνθου 3. Τελεστές ∆ράσης Τελεστές ∆ράσης: Ορίζουµε τους ακόλουθους 4 τελεστές οι οποίοι περιγράφουν πλήρως τις κινήσεις που µπορεί να κάνει το ροµπότ: ΠΑΝΩ: Μετακίνηση του ροµπότ µία θέση πάνω Προϋποθέσεις: Χ 1 και το τετράγωνο X 1, Y δεν είναι εµπόδιο. Αποτέλεσµα: Το ροµπότ µετακινείται στο τετράγωνο X 1, Y ΚΑΤΩ: Μετακίνηση του ροµπότ µία θέση κάτω Προϋποθέσεις: Χ 5 και το τετράγωνο X 1, Y δεν είναι εµπόδιο. Αποτέλεσµα: Το ροµπότ µετακινείται στο τετράγωνο X 1, Y ΑΡΙΣΤΕΡΑ: Μετακίνηση του ροµπότ µία θέση αριστερά Προϋποθέσεις: Y 1 και το τετράγωνο X, Y 1 δεν είναι εµπόδιο. Αποτέλεσµα: Το ροµπότ µετακινείται στο τετράγωνο X, Y 1 ∆ΕΞΙΑ: Μετακίνηση του ροµπότ µία θέση δεξιά Προϋποθέσεις: Y 5 και το τετράγωνο X, Y 1 δεν είναι εµπόδιο. Αποτέλεσµα: Το ροµπότ µετακινείται στο τετράγωνο X, Y 1 7∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Παρατήρηση: Πάντα στον ορισµό των τελεστών θεωρούµε ότι βρισκόµαστε σε µια τυχαία κατάσταση, όπως την έχουµε ορίσει νωρίτερα. Εδώ λοιπόν οι ορισµοί θεωρούν ότι βρισκόµαστε στο (X,Y) και περιγράφεται πως γίνεται η αλλαγή στην κατάσταση, λόγω της επίδρασης του αντίστοιχου τελεστή.
  • 8. Παρατήρηση 1: Ο ορισµός της κατάστασης ορίζει (νοητά) τις ακµές του χώρου καταστάσεων του προβλήµατος A. Θεωρία 2. Το Πρόβληµα του Λαβυρίνθου 3. Τελεστές ∆ράσης 8∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Παρατήρηση 2: Οι ακµές σε έναν χώρο καταστάσεων είναι πάντα κατευθυνόµενες! (διότι ορίζονται από την εφαρµογή ενός τελεστή). Ωστόσο, καθαρά για λόγους συντοµίας, συµβολίζουµε µε µη κατευθυνόµενες ακµές εφαρµογές τελεστών που είναι αµφίδροµες. Συνεπώς θα ήταν συνεπέστερο (αν και πιο χρονοβόρο) να είχαµε την εξής απεικόνιση: 1,1 1,2 2,1 ∆ Α ∆ Α 1,3 ∆ Α Κ Π Κ …
  • 9. Παρατήρηση 1: Έτσι τώρα ο γράφος καταστάσεων αποκτά και βάρη στις ακµές A. Θεωρία 2. Το Πρόβληµα του Λαβυρίνθου 4. Συνάρτηση Πραγµατικού Κόστους Συνάρτηση Πραγµατικού Κόστους: Ορίζουµε ότι το κόστος κάθε ακµής είναι ίσο µε 1 (ισοδύναµα το κόστος εφαρµογής των τελεστών µετάβασης είναι ίσο µε 1). g(n): Άθροισµα βαρών των ακµών από την αφετηρία έως τον κόµβο n. 9∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης 1,1 1,2 1,3 1,4 1,5 2,1 2,4 2,5 3,1 3,3 3,4 3,5 4,1 4,5 5,1 5,2 5,3 5,4 5,5 1 1 1 1 1 11 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Παρατήρηση 2: Ο ισοδύναµος τρόπος είναι ότι όποτε χρησιµοποιούµε έναν τελεστή µετάβασης το κόστος που πληρώνουµε είναι ίσο µε 1: 1,1 1,2 2,1 ∆:1 Α:1 ∆:1 Α:1 1,3 ∆:1 Α:1 Κ:1 Π:1 … Κ:1 Π:1
  • 10. A. Θεωρία 2. Το Πρόβληµα του Λαβυρίνθου 5. Ευρετική Συνάρτηση Ειδικά για το πρόβληµα του Λαβυρίνθου η καταλληλότερη ευρετική συνάρτηση είναι η απόσταση Manhattan για την οποία είναι γνωστό ότι είναι παραδεκτή. • Η απόσταση Manhattan δύο τετραγώνων ορίζεται ως manhattan ((x1,y1),(x2,y2)) = |x1-x2|+|y1-y2| • και πρακτικά είναι το ελάχιστο πλήθος κινήσεων που θα χρειαζόταν το ροµπότ για να φτάσει στο στόχο αν δεν υπήρχαν εµπόδια. 10∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Υ 1 2 3 4 5 Χ 1 2 3 Τ 4 5 4 3 2 3 4 3 2 1 2 3 2 1 0 1 2 3 2 1 2 3 4 3 2 3 4 • manhattan ((5,1),(3,3)) = |5-3|+|1-3|=4
  • 11. Παρατήρηση 1: Έτσι τώρα ο γράφος καταστάσεων αποκτά και την εκτίµηση της ευρετικής συνάρτησης για κάθε κατάσταση. A. Θεωρία 2. Το Πρόβληµα του Λαβυρίνθου 5. Ευρετική Συνάρτηση Ευρετική Συνάρτηση: Ορίζουµε ως ευρετική συνάρτηση την απόσταση Manhattan της κατάστασης (Χ,Υ), από την κατάσταση-στόχο (X1,Y1): manhattan ((X,Y),(X1,Y1)) = |X-X1|+|Y-Y1| Παρατήρηση: Η ευρετική συνάρτηση είναι παραδεκτή. 11∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Παρατήρηση 2: Η ευρετική συνάρτηση καθορίζεται από την κατάσταση-στόχο, άρα πλέον είναι απαιτητό να έχουµε και τον ορισµό του τερµατισµού (αλλά και της αφετηρίας) 1,1 1,2 1,3 1,4 1,5 2,1 2,4 2,5 3,1 3,3 3,4 3,5 4,1 4,5 5,1 5,2 5,3 5,4 5,5 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 h=0 h=1 h=2 h=2 h=2 h=2 h=2 h=3h=3 h=3 h=3 h=3 h=3 h=3 h=4 h=4 h=3 S T h=4 h=4
  • 12. A. Θεωρία 2. Το Πρόβληµα του Λαβυρίνθου 6. Εφαρµογή των Αλγορίθµων Αναζήτησης 12∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Άσκηση: Εφαρµόστε τους αλγορίθµους αναζήτησης Κατά Βάθος, Κατά Πλάτος, UCS, Greedy, A* στο παράδειγµα – πρόβληµα του λαβυρίνθου
  • 13. A. Θεωρία 2. Το Πρόβληµα του Λαβυρίνθου 6. Εφαρµογή των Αλγορίθµων Αναζήτησης 13∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
  • 14. A. Θεωρία 3. O Κόσµος των Κύβων 1. ∆ιατύπωση του Προβλήµατος Στο πρόβληµα των κύβων (λόγω δηµοφιλίας αναφέρεται και ως ο κόσµος των κύβων) 3 κύβοι µε ονόµατα Α,Β,Γ. είναι πάνω σε ένα τραπέζι και ζητείται να προκύψει µία τοποθέτηση των κύβων σε στοίβες, όταν επιτρέπονται οι εξής κινήσεις: • Μετακίνηση ενός κύβου από το τραπέζι πάνω σε µία στοίβα κύβων. • Μετακίνηση ενός κύβου από την κορυφή µιας στοίβας είτε πάνω στο τραπέζι είτε πάνω σε µια άλλη στοίβα Θεωρούµε ότι η σειρά των κύβων σε µια στοίβα έχει σηµασία, ενώ η σειρά των στοιβών στο τραπέζι δεν έχει σηµασία. Η αρχική και η τελική κατάσταση δίνονται στο παρακάτω σχήµα: 14∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Β Α Γ Αρχική Κατάσταση Β Α Γ Τελική Κατάσταση
  • 15. A. Θεωρία 3. Ο Κόσµος των Κύβων 2. Κατάσταση Κατάσταση: Αναπαριστούµε µία κατάσταση του προβλήµατος µε ένα σύνολο στοιβών, όπου κάθε στοίβα αναπαρίσταται µε µία διατεταγµένη n-άδα µε τα ονόµατα των στοιβών όπως βρίσκονται στη στοίβα από πάνω προς τα κάτω. Για παράδειγµα η αρχική και η τελική κατάσταση αναπαριστώνται ως εξής: 15∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Β Α Γ Αρχική Κατάσταση {(Α,Β),(Γ)} Β Α Γ Τελική Κατάσταση {(Β,Α,Γ)}
  • 16. A. Θεωρία 3. Ο Κόσµος των Κύβων 3. Τελεστές ∆ράσης Τελεστές ∆ράσης: Ορίζουµε τους τελεστές ΦΟΡΤΩΣΕ(X,Y) και ΞΕΦΟΡΤΩΣΕ(Χ) ως εξής: ΦΟΡΤΩΣΕ(Χ,Υ): Μετακίνηση του κύβου Χ πάνω στον κύβο Υ Προϋποθέσεις: (1) Ο κύβος Χ δεν έχει άλλο κύβο πάνω του (2) Ο κύβος Υ δεν έχει άλλο κύβο πάνω του Αποτέλεσµα: Ο κύβος Χ είναι πάνω στον κύβο Υ ΞΕΦΟΡΤΩΣΕ(Χ): Μετακίνηση του κύβου Χ στο τραπέζι Προϋποθέσεις: (1) Ο κύβος Χ δεν είναι στο τραπέζι (2) Ο κύβος Χ δεν έχει άλλο κύβο πάνω του Αποτέλεσµα: Ο κύβος Χ είναι στο τραπέζι 16∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
  • 17. A. Θεωρία 3. Ο Κόσµος των Κύβων 3. Τελεστές ∆ράσης 17∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Με τον ορισµό της κατάστασης και των τελεστών δράσης ορίζεται (νοητά) ο χώρος καταστάσεων του προβλήµατος.
  • 18. Ευρετική Συνάρτηση: Ορίζουµε ως ευρετική συνάρτηση, το πλήθος των κύβων που είναι σε λάθος ύψος σε σχέση µε την κατάσταση-στόχο. Παράδειγµα: Οι κύβος Β είναι σε λάθος ύψος, ενώ οι κόµβοι Α και Γ είναι σε σωστό ύψος. Άρα η ευρετική αξιολόγηση του κόµβου είναι ίση µε 1 (h(v)=1). Παρατηρούµε λοιπόν ότι η ευρετική συνάρτηση είναι παραδεκτή αφού οι κόµβοι που είναι σε λάθος ύψος θα απαιτήσουν τουλάχιστον µία κίνηση για να βρεθούν σε σωστή θέση. Στο παράδειγµα θα απαιτηθούν δύο κινήσεις, δηλαδή h*(v)=2 A. Θεωρία 3. Ο Κόσµος των Κύβων 4-5. Συνάρτηση Πραγµατικού Κόστους – Ευρετική Συνάρτηση Συνάρτηση Πραγµατικού Κόστους: Ορίζουµε ότι το κόστος κάθε ακµής είναι ίσο µε 1 (ισοδύναµα το κόστος εφαρµογής των τελεστών µετάβασης είναι ίσο µε 1). g(n): Άθροισµα βαρών των ακµών από την αφετηρία έως τον κόµβο n. 18∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Β Α Γ Β Α Γ Τελική Κατάσταση v ΦΟΡΤΩΣΕ(Α,Γ) ΦΟΡΤΩΣΕ(Β,Α)
  • 19. A. Θεωρία 3. Ο Κόσµος των Κύβων 4-5. Συνάρτηση Πραγµατικού Κόστους – Ευρετική Συνάρτηση 19∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Με τον ορισµό συναρτήσεων κόστους και ευρετικής συνάρτησης πλέον ο γράφος είναι έτοιµος για να εκτελέσουµε τους αλγορίθµους αναζήτησης. 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 S T h=0 h=1 h=2h=3h=2 h=2 h=3 h=2 h=2 h=2h=1 h=3 h=3
  • 20. A. Θεωρία 3. Ο Κόσµος των Κύβων 6. Εφαρµογή Αλγορίθµων Αναζήτησης 20∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Άσκηση: Εφαρµόστε τον αλγόριθµο Α* για την επίλυση του προβλήµατος του κόσµου των κύβων του παραδείγµατος.
  • 21. A. Θεωρία 4. Το Πρόβληµα του Ευθυγράµµου Παζλ 1. ∆ιατύπωση του Προβλήµατος Στο Πρόβληµα του Ευθυγράµµου Παζλ δίδεται ένα πλαίσιο 4 κενών θέσεων στο οποίο τοποθετούνται 3 πλακίδια εκ των οποίων τα δύο είναι άσπρα και το ένα είναι µαύρο. Οι κινήσεις που επιτρέπονται είναι µετακίνηση του πλακιδίου στην κενή θέση (δεξιά ή αριστερά) είτε απ΄ευθείας εφόσον είναι δίπλα του, είτε υπερπηδώντας άλλα πλακίδια. Η αρχική και η τελική κατάσταση φαίνονται στο παρακάτω σχήµα: 21∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Αρχική Κατάσταση Τελική Κατάσταση
  • 22. A. Θεωρία 4. Το Πρόβληµα του Ευθυγράµµου Παζλ 2. Κατάσταση Κατάσταση: Αναπαριστούµε µία κατάσταση του προβλήµατος µε έναν πίνακα 4 θέσεων που περιέχει τα γράµµατα Λ (δύο φορές), Μ (µία φορά), Κ(συµβολίζει το κενό). Για παράδειγµα η αρχική και η τελική κατάσταση αναπαριστώνται ως εξής: 22∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Αρχική Κατάσταση [Λ,Λ,Κ,Μ] Τελική Κατάσταση [Μ,Κ,Λ,Λ]
  • 23. A. Θεωρία 4. Το Πρόβληµα του Ευθυγράµµου Παζλ 3. Τελεστές ∆ράσης Τελεστές ∆ράσης: Ορίζουµε έναν(!) τελεστή Τ(Χ) που συµβολίζει την µετακίνηση του κενού! Σκέψη: Αντί να λέµε ότι µετακινούµε π.χ. το λευκό πλακίδιο στη θέση του κενού, λέµε ισοδύναµα ότι µετακινούµε το κενό στη θέση του πλακιδίου. Λύση. Θεωρώντας ότι το κενό είναι στη θέση Υ ∈ 1,2,3,4 , έχουµε ότι: Τ(Χ): Μετακίνηση του κενού κατά Χ θέσεις {-3,-2,-1: Αριστερά, 1,2,3: ∆εξιά} Προϋποθέσεις: 1 Υ Χ 4 Αποτέλεσµα: Το πλακίδιο στην θέση Υ+Χ µετακινείται στη θέση του κενού. 23∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης
  • 24. A. Θεωρία 4. Το Πρόβληµα του Ευθυγράµµου Παζλ 3. Τελεστές ∆ράσης 24∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Με τον ορισµό της κατάστασης και των τελεστών δράσης ορίζεται (νοητά) ο χώρος καταστάσεων του προβλήµατος. [Λ,Λ,Κ,Μ] [Κ,Λ,Λ,Μ] [Λ,Κ,Λ,Μ] [Λ,Λ,Μ,Κ] [Μ,Λ,Λ,Κ] [Λ,Μ,Λ,Κ] [Κ,Λ,Μ,Λ] [Λ,Κ,Μ,Λ] [Μ,Κ,Λ,Λ] [Μ,Λ,Κ,Λ] [Κ,Μ,Λ,Λ] [Λ,Μ,Κ,Λ]
  • 25. Ευρετική Συνάρτηση: Ορίζουµε ως ευρετική συνάρτηση, το πλήθος των πλακιδίων που είναι σε λάθος θέση σε σχέση µε την κατάσταση-στόχο. Παράδειγµα: Και τα 3 πλακιδια είναι σε λάθος θέση σε σχέση µε την τελική κατάσταση (h(v)=3). Παρατηρούµε λοιπόν ότι η ευρετική συνάρτηση είναι παραδεκτή αφού και τα 3 πλακίδια που είναι σε λάθος θέση θα απαιτήσουν τουλάχιστον µία κίνηση για να βρεθούν σε σωστή θέση. Στο παράδειγµα θα απαιτηθούν τρεις κινήσεις, δηλαδή h*(v)=3 A. Θεωρία 4. Το Πρόβληµα του Ευθυγράµµου Παζλ 4-5. Συνάρτηση Πραγµατικού Κόστους – Ευρετική Συνάρτηση Συνάρτηση Πραγµατικού Κόστους: Ορίζουµε ότι το κόστος κάθε ακµής είναι ίσο µε 1 (ισοδύναµα το κόστος εφαρµογής των τελεστών µετάβασης είναι ίσο µε 1). g(n): Άθροισµα βαρών των ακµών από την αφετηρία έως τον κόµβο n. 25∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Τελική Κατάσταση v Τ(-2) Τ(3) Τ(-2)
  • 26. A. Θεωρία 4. Το Πρόβληµα του Ευθυγράµµου Παζλ 4-5. Συνάρτηση Πραγµατικού Κόστους – Ευρετική Συνάρτηση 26∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Με τον ορισµό συναρτήσεων κόστους και ευρετικής συνάρτησης πλέον ο γράφος είναι έτοιµος για να εκτελέσουµε τους αλγορίθµους αναζήτησης. [Λ,Λ,Κ,Μ] [Κ,Λ,Λ,Μ] [Λ,Κ,Λ,Μ] [Λ,Λ,Μ,Κ] [Μ,Λ,Λ,Κ] [Λ,Μ,Λ,Κ] [Κ,Λ,Μ,Λ] [Λ,Κ,Μ,Λ] [Μ,Κ,Λ,Λ] [Μ,Λ,Κ,Λ] [Κ,Μ,Λ,Λ] [Λ,Μ,Κ,Λ] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 11 1 h=3 S Τ h=0 h=1 h=2 h=1 h=1 h=2 h=2 h=2 h=2 h=2 h=3
  • 27. A. Θεωρία 4. Το Πρόβληµα του Ευθυγράµµου Παζλ 6. Εφαρµογή Αλγορίθµων Αναζήτησης 27∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Άσκηση: Εφαρµόστε τον αλγόριθµο Α* για την επίλυση του προβλήµατος του ευθυγράµµου παζλ του παραδείγµατος.
  • 28. A. Θεωρία 5. Το Πρόβληµα των ∆οχείων 1. ∆ιατύπωση του Προβλήµατος Στο Πρόβληµα των ∆οχείων, δίνονται δύο δοχεία Α και Β µε χωρητικότητα 3 lt και 2 lt αντίστοιχα. Επιτρέπεται να γεµίσουµε (πλήρως) ένα δοχείο από τη βρύση, να αδειάσουµε τελείως ένα δοχείο και να αδειάσουµε (όσο περιεχοµένο χωράει) από το ένα δοχείο στο άλλο. Η αρχική και η τελική κατάσταση φαίνονται στο παρακάτω σχήµα: 28∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Αρχική Κατάσταση Τελική Κατάσταση 1 2 3 1 2 Α Β 1 2 3 1 2 Α Β
  • 29. A. Θεωρία 5. Το Πρόβληµα των ∆οχείων 2. Κατάσταση Κατάσταση: Αναπαριστούµε µία κατάσταση του προβλήµατος µε ένα διατεταγµένο ζέυγος (X,Y) όπου Χ είναι τα λίτρα στο δοχείο Α και Υ είναι τα λίτρα στο δοχείο Β. Για παράδειγµα η αρχική και η τελική κατάσταση αναπαριστώνται ως εξής: 29∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Αρχική Κατάσταση (0,0) Τελική Κατάσταση (0,1) 1 2 3 1 2 Α Β 1 2 3 1 2 Α Β
  • 30. A. Θεωρία 5. Το Πρόβληµα των ∆οχείων 3. Τελεστές ∆ράσης Τελεστές ∆ράσης: Ορίζουµε έξι τελεστές που αναπαριστούν τις κινήσεις που επιτρέπονται ως εξής: 30∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Τ1: Γέµισε το δοχείο Α Προϋποθέσεις: Το δοχείο Α δεν είναι γεµάτο (Χ≠3) Αποτέλεσµα: Το δοχείο Α είναι γεµάτο (Χ=3) Τ3: Άδειασε το δοχείο Α Προϋποθέσεις: Το δοχείο Α δεν είναι άδειο (Χ≠0) Αποτέλεσµα: Το δοχείο Α είναι άδειο (Χ=0) Τ5: Άδειασε το δοχείο Α στο δοχείο Β Προϋποθέσεις: (1) Το δοχείο Α δεν είναι άδειο (Χ≠0) (2) Το δοχείο Β δεν είναι γεµάτο (Υ ≠2) Αποτέλεσµα: Αδειάζουµε (όσο χωράει) από το Α στο Β Αν |Χ+Υ|≤2 τότε νέα κατάσταση: (0,Χ+Υ) Αν |Χ+Υ|>2 τότε νέα κατάσταση: (Χ-(2-Υ),2) Τ2: Γέµισε το δοχείο Β Προϋποθέσεις: Το δοχείο Β δεν είναι γεµάτο (Υ≠2) Αποτέλεσµα: Το δοχείο Α είναι γεµάτο (Υ=2) Τ4: Άδειασε το δοχείο Β Προϋποθέσεις: Το δοχείο Β δεν είναι άδειο (Υ≠0) Αποτέλεσµα: Το δοχείο Β είναι άδειο (Υ=0) Τ6: Άδειασε το δοχείο Β στο δοχείο Α Προϋποθέσεις: (1) Το δοχείο Β δεν είναι άδειο (Υ≠0) (2) Το δοχείο Α δεν είναι γεµάτο (Χ≠3) Αποτέλεσµα: Αδειάζουµε (όσο χωράει) από το Β στο Α Αν |Χ+Υ|≤3 τότε νέα κατάσταση: (Χ+Υ,0) Αν |Χ+Υ|>3 τότε νέα κατάσταση: (3,Υ-(3-Χ))
  • 31. A. Θεωρία 5. Το Πρόβληµα των ∆οχείων 3. Τελεστές ∆ράσης 31∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα ΑναζήτησηςΜε τον ορισµό της κατάστασης και των τελεστών δράσης ορίζεται (νοητά) ο χώρος καταστάσεων του προβλήµατος. (0,0) (3,0) (0,2) (3,2)(1,2) (2,0) Τ1 Τ2 Τ3 Τ4 Τ2Τ5 Τ1 Τ6 Τ6 Τ1 Τ4 Τ3 Τ3 (1,0) Τ4 Τ5 Τ1 Τ3 (2,2) Τ2 Τ3 Τ1 Τ2 (0,1) Τ5 Τ1 Τ3 Τ4Τ4 (3,1) Τ1 Τ2 Τ6 Τ6 Τ3 Τ4 Τ5
  • 32. Ευρετική Συνάρτηση: Ορίζουµε ως ευρετική συνάρτηση, το άθροισµα των απολύτων διαφορών των λίτρων των δοχείων σε σχέση µε την κατάσταση στόχο: f(X,Y)=|X-0|+|Y-1| Παράδειγµα: Η ευρετική αξιολόγηση του κόµβου v είναι ίση µε h(v)=3+1=4. Ωστόσο (σύµφωνα και µε το γράφο καταστάσεων η βέλτιστη λύση είναι αυτή που φαίνεται στο σχήµα, δηλαδή h*(v)=3. Συνεπώς η ευρετική ∆ΕΝ είναι παραδεκτή. A. Θεωρία 5. Το Πρόβληµα των ∆οχείων 4-5. Συνάρτηση Πραγµατικού Κόστους – Ευρετική Συνάρτηση Συνάρτηση Πραγµατικού Κόστους: Ορίζουµε ότι το κόστος κάθε ακµής είναι ίσο µε 1 (ισοδύναµα το κόστος εφαρµογής των τελεστών µετάβασης είναι ίσο µε 1). g(n): Άθροισµα βαρών των ακµών από την αφετηρία έως τον κόµβο n. 32∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Τελική Κατάσταση v Τ5Τ4 Τ5
  • 33. A. Θεωρία 5. Το Πρόβληµα των ∆οχείων 3. Τελεστές ∆ράσης 33∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα ΑναζήτησηςΠλέον ο γράφος είναι έτοιµος για την εκτέλεση των αλγορίθµων αναζήτησης (Όλα τα κόστη ακµών είναι ίσα µε 1). (0,0) (3,0) (0,2) (3,2)(1,2) (2,0) Τ1 Τ2 Τ3 Τ4 Τ2Τ5 Τ1 Τ6 Τ6 Τ1 Τ4 Τ3 Τ3 (1,0) Τ4 Τ5 Τ1 Τ3 (2,2) Τ2 Τ3 Τ1 Τ2 (0,1) Τ5 Τ1 Τ3 Τ4Τ4 (3,1) Τ1 Τ2 Τ6 Τ6 Τ3 Τ4 Τ5 Τ S h=0 h=3 h=2 h=2 h=4 h=1 h=4 h=1 h=3 h=3
  • 34. A. Θεωρία 5. Το Πρόβληµα των ∆οχείων 6. Εφαρµογή Αλγορίθµων Αναζήτησης 34∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης Άσκηση: Εφαρµόστε τον αλγόριθµο Α* για την επίλυση του προβλήµατος των δοχείων του παραδείγµατος.