ΠΛΗ31 ΜΑΘΗΜΑ 1.4

34
ΠΛΗ31 ΕΝΟΤΗΤΑ 1: ΑΝΑΖΗΤΗΣΗ Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης ∆ηµήτρης Ψούνης

Transcript of ΠΛΗ31 ΜΑΘΗΜΑ 1.4

Page 1: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

ΠΛΗ31ΕΝΟΤΗΤΑ 1: ΑΝΑΖΗΤΗΣΗ

Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

∆ηµήτρης Ψούνης

Page 2: ΠΛΗ31 ΜΑΘΗΜΑ 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. Εφαρµογή Αλγορίθµων Αναζήτησης

Page 3: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

A. Θεωρία1. Εισαγωγή1. Μοντελοποίηση Προβληµάτων Αναζήτησης

Ένα Πρόβληµα Αναζήτησης µοντελοποιείται ορίζοντας τα εξής τέσσερα στοιχεία:• Την Κατάσταση (µία µαθηµατική αναπαράσταση ενός στιγµιότυπου του προβλήµατος).

• Συνήθως είναι ένας πίνακας (π.χ. µονοδιάστατος, διδιάστατος κ.λπ. ) µε δυαδική, ακέραια ή κωδικοποίηση πραγµατικών αριθµών µε τις απαραίτητες πληροφορίες ενός στιγµιότυπου (µίας φωτογραφίας δηλαδή του προβλήµατος).

• Τους Τελεστές ∆ράσης (οι κινήσεις που επιτρέπονται στο πρόβληµα ως ενέργειες σε µια κατάσταση)

• Οι τελεστές δράσης (ή µετάβασης) θα ορίζονται περιγραφικά από την διατύπωση του προβλήµατος και θα αποµένει να τους συντάξουµε τυπικά.

• Τη Συνάρτηση Πραγµατικού Κόστους g(v) (ορίζοντας τα βάρη των ακµών ή ισοδύναµα το κόστος εφαρµογής των τελεστών µετάβασης)

• Η συνάρτηση κόστους διαδροµής θα είναι πάντα το άθροισµα των βαρών των ακµών από την αφετηρία έως τον τρέχοντα κόµβο

• Την Ευρετική Συνάρτηση h(v) (µία εκτίµηση για το πόσο απέχει µία κατάσταση από τον κόµβο στόχο του προβλήµατος).

• Όσο πιο µικρός ο αριθµός τόσο λιγότερο εκτιµάται ότι απέχει από τον κόµβο στόχο, άρα ο κόµβος είναι και πιο υποσχόµενος να οδηγήσει γρήγορα σε µία λύση του προβλήµατος.

• Προσοχή, για την εξέταση για το αν η ευρετική συνάρτηση είναι παραδεκτή, δηλαδή ότι δεν υπερεκτιµά το πραγµατικό κόστος για να πάµε από τον κόµβο στον κόµβο-στόχο (µαθηµατικά δηλαδή ότι: h(v)≤h*(v) για κάθε κόµβο του γραφήµατος)

3∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Page 4: ΠΛΗ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

Page 5: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

A. Θεωρία2. Το Πρόβληµα του Λαβυρίνθου1. ∆ιατύπωση του Προβλήµατος

Στο Πρόβληµα του Λαβυρίνθου δίνεται ένα πλέγµα διαστάσεων MxN. Τα τετράγωνα είτε είναι προσβάσιµα, είτε είναι εµπόδια. Ένα ροµπότ βρίσκεται σε ένα τετράγωνο και επιθυµεί να µεταβεί σε ένα τετράγωνο-στόχο. Μπορεί να κινηθεί κατά µία θέση πάνω, κάτω, αριστερά και δεξιά εφόσον βέβαια αυτό είναι εφικτό (δεν είναι εµπόδιο και δεν βγαίνει εκτός των ορίων του πίνακα). Στο παράδειγµα το ροµπότ βρίσκεται στο τετράγωνο-αφετηρία (5,1) και επιθυµούµε να µεταβεί στο τετράγωνο-στόχο (3,3). Ζητείται η µοντελοποίηση του ως πρόβληµα αναζήτησης.

5∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Υ

1 2 3 4 5

Χ

1

2

3 Τ

4

5

Page 6: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

Παρατήρηση 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

Page 7: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

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) και περιγράφεται πως γίνεται η αλλαγή στην κατάσταση, λόγω της επίδρασης του αντίστοιχου τελεστή.

Page 8: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

Παρατήρηση 1: Ο ορισµός της κατάστασης ορίζει (νοητά) τις ακµές του χώρου καταστάσεων του προβλήµατος

A. Θεωρία2. Το Πρόβληµα του Λαβυρίνθου3. Τελεστές ∆ράσης

8∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Παρατήρηση 2: Οι ακµές σε έναν χώρο καταστάσεων είναι πάντα κατευθυνόµενες! (διότι ορίζονται από την εφαρµογή ενός τελεστή). Ωστόσο, καθαρά για λόγους συντοµίας, συµβολίζουµε µε µη κατευθυνόµενες ακµές εφαρµογές τελεστών που είναι αµφίδροµες. Συνεπώς θα ήταν συνεπέστερο (αν και πιο χρονοβόρο) να είχαµε την εξής απεικόνιση:

1,1 1,2

2,1

Α

Α1,3

Α

ΚΠ

Κ

Page 9: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

Παρατήρηση 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

Α:11,3

∆:1

Α:1

Κ:1 Π:1

Κ:1 Π:1

Page 10: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

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 43 2 1 2 32 1 0 1 23 2 1 2 34 3 2 3 4

• manhattan ((5,1),(3,3)) = |5-3|+|1-3|=4

Page 11: ΠΛΗ31 ΜΑΘΗΜΑ 1.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=3S

T

h=4

h=4

Page 12: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

A. Θεωρία2. Το Πρόβληµα του Λαβυρίνθου6. Εφαρµογή των Αλγορίθµων Αναζήτησης

12∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Άσκηση: Εφαρµόστε τους αλγορίθµους αναζήτησης Κατά Βάθος, Κατά Πλάτος, UCS, Greedy, A*στο παράδειγµα – πρόβληµα του λαβυρίνθου

Page 13: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

A. Θεωρία2. Το Πρόβληµα του Λαβυρίνθου6. Εφαρµογή των Αλγορίθµων Αναζήτησης

13∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Page 14: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

A. Θεωρία3. O Κόσµος των Κύβων1. ∆ιατύπωση του Προβλήµατος

Στο πρόβληµα των κύβων (λόγω δηµοφιλίας αναφέρεται και ως ο κόσµος των κύβων) 3 κύβοι µε ονόµατα Α,Β,Γ. είναι πάνω σε ένα τραπέζι και ζητείται να προκύψει µία τοποθέτηση των κύβων σε στοίβες, όταν επιτρέπονται οι εξής κινήσεις:• Μετακίνηση ενός κύβου από το τραπέζι πάνω σε µία στοίβα κύβων.• Μετακίνηση ενός κύβου από την κορυφή µιας στοίβας είτε πάνω στο τραπέζι είτε πάνω σε µια άλλη στοίβα

Θεωρούµε ότι η σειρά των κύβων σε µια στοίβα έχει σηµασία, ενώ η σειρά των στοιβών στο τραπέζι δεν έχει σηµασία. Η αρχική και η τελική κατάσταση δίνονται στο παρακάτω σχήµα:

14∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Β

Α

Γ

Αρχική Κατάσταση

Β

Α

Γ

Τελική Κατάσταση

Page 15: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

A. Θεωρία3. Ο Κόσµος των Κύβων2. Κατάσταση

Κατάσταση: Αναπαριστούµε µία κατάσταση του προβλήµατος µε ένα σύνολο στοιβών, όπου κάθε στοίβα αναπαρίσταται µε µία διατεταγµένη n-άδα µε τα ονόµατα των στοιβών όπως βρίσκονται στη στοίβα από πάνω προς τα κάτω.Για παράδειγµα η αρχική και η τελική κατάσταση αναπαριστώνται ως εξής:

15∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Β

Α

Γ

Αρχική Κατάσταση

(Α,Β),(Γ)

Β

Α

Γ

Τελική Κατάσταση

(Β,Α,Γ)

Page 16: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

A. Θεωρία3. Ο Κόσµος των Κύβων3. Τελεστές ∆ράσης

Τελεστές ∆ράσης: Ορίζουµε τους τελεστές ΦΟΡΤΩΣΕ(X,Y) και ΞΕΦΟΡΤΩΣΕ(Χ) ως εξής:

ΦΟΡΤΩΣΕ(Χ,Υ): Μετακίνηση του κύβου Χ πάνω στον κύβο ΥΠροϋποθέσεις: (1) Ο κύβος Χ δεν έχει άλλο κύβο πάνω του(2) Ο κύβος Υ δεν έχει άλλο κύβο πάνω του Αποτέλεσµα:Ο κύβος Χ είναι πάνω στον κύβο Υ

ΞΕΦΟΡΤΩΣΕ(Χ): Μετακίνηση του κύβου Χ στο τραπέζιΠροϋποθέσεις:(1) Ο κύβος Χ δεν είναι στο τραπέζι(2) Ο κύβος Χ δεν έχει άλλο κύβο πάνω τουΑποτέλεσµα:Ο κύβος Χ είναι στο τραπέζι

16∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Page 17: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

A. Θεωρία3. Ο Κόσµος των Κύβων3. Τελεστές ∆ράσης

17∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Με τον ορισµό της κατάστασης και των τελεστών δράσης ορίζεται (νοητά) ο χώρος καταστάσεων του προβλήµατος.

Page 18: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

Ευρετική Συνάρτηση: Ορίζουµε ως ευρετική συνάρτηση, το πλήθος των κύβων που είναι σε λάθος ύψος σε σχέση µε την κατάσταση-στόχο.Παράδειγµα:

Οι κύβος Β είναι σε λάθος ύψος, ενώ οι κόµβοι Α και Γ είναι σε σωστό ύψος. Άρα η ευρετική αξιολόγηση του κόµβου είναι ίση µε 1 (h(v)=1). Παρατηρούµε λοιπόν ότι η ευρετική συνάρτηση είναι παραδεκτή αφού οι κόµβοι που είναι σε λάθος ύψος θα απαιτήσουν τουλάχιστον µία κίνηση για να βρεθούν σε σωστή θέση. Στο παράδειγµα θα απαιτηθούν δύο κινήσεις, δηλαδή h*(v)=2

A. Θεωρία3. Ο Κόσµος των Κύβων4-5. Συνάρτηση Πραγµατικού Κόστους – Ευρετική ΣυνάρτησηΣυνάρτηση Πραγµατικού Κόστους: Ορίζουµε ότι το κόστος κάθε ακµής είναι ίσο µε 1 (ισοδύναµα το κόστος εφαρµογής των τελεστών µετάβασης είναι ίσο µε 1).g(n): Άθροισµα βαρών των ακµών από την αφετηρία έως τον κόµβο n.

18∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Β

Α

Γ

Β

Α

Γ

Τελική Κατάσταση

v

ΦΟΡΤΩΣΕ(Α,Γ) ΦΟΡΤΩΣΕ(Β,Α)

Page 19: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

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

Page 20: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

A. Θεωρία3. Ο Κόσµος των Κύβων6. Εφαρµογή Αλγορίθµων Αναζήτησης

20∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Άσκηση: Εφαρµόστε τον αλγόριθµο Α* για την επίλυση του προβλήµατος του κόσµου των κύβων του παραδείγµατος.

Page 21: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

A. Θεωρία4. Το Πρόβληµα του Ευθυγράµµου Παζλ1. ∆ιατύπωση του Προβλήµατος

Στο Πρόβληµα του Ευθυγράµµου Παζλ δίδεται ένα πλαίσιο 4 κενών θέσεων στο οποίο τοποθετούνται 3 πλακίδια εκ των οποίων τα δύο είναι άσπρα και το ένα είναι µαύρο.

Οι κινήσεις που επιτρέπονται είναι µετακίνηση του πλακιδίου στην κενή θέση (δεξιά ή αριστερά) είτε απ΄ευθείας εφόσον είναι δίπλα του, είτε υπερπηδώντας άλλα πλακίδια.

Η αρχική και η τελική κατάσταση φαίνονται στο παρακάτω σχήµα:

21∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Αρχική Κατάσταση Τελική Κατάσταση

Page 22: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

A. Θεωρία4. Το Πρόβληµα του Ευθυγράµµου Παζλ2. Κατάσταση

Κατάσταση: Αναπαριστούµε µία κατάσταση του προβλήµατος µε έναν πίνακα 4 θέσεων που περιέχει τα γράµµατα Λ (δύο φορές), Μ (µία φορά), Κ(συµβολίζει το κενό).Για παράδειγµα η αρχική και η τελική κατάσταση αναπαριστώνται ως εξής:

22∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Αρχική Κατάσταση[Λ,Λ,Κ,Μ]

Τελική Κατάσταση[Μ,Κ,Λ,Λ]

Page 23: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

A. Θεωρία4. Το Πρόβληµα του Ευθυγράµµου Παζλ3. Τελεστές ∆ράσης

Τελεστές ∆ράσης: Ορίζουµε έναν(!) τελεστή Τ(Χ) που συµβολίζει την µετακίνηση του κενού!

Σκέψη:

Αντί να λέµε ότι µετακινούµε π.χ. το λευκό πλακίδιο στη θέση του κενού, λέµε ισοδύναµα ότι µετακινούµε το κενό στη θέση του πλακιδίου.

Λύση. Θεωρώντας ότι το κενό είναι στη θέση Υ ∈ 1,2,3,4 , έχουµε ότι:

Τ(Χ): Μετακίνηση του κενού κατά Χ θέσεις -3,-2,-1: Αριστερά, 1,2,3: ∆εξιάΠροϋποθέσεις: 1 Υ Χ 4

Αποτέλεσµα: Το πλακίδιο στην θέση Υ+Χ µετακινείται στη θέση του κενού.

23∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Page 24: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

A. Θεωρία4. Το Πρόβληµα του Ευθυγράµµου Παζλ3. Τελεστές ∆ράσης

24∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Με τον ορισµό της κατάστασης και των τελεστών δράσης ορίζεται (νοητά) ο χώρος καταστάσεων του προβλήµατος.

[Λ,Λ,Κ,Μ]

[Κ,Λ,Λ,Μ] [Λ,Κ,Λ,Μ] [Λ,Λ,Μ,Κ]

[Μ,Λ,Λ,Κ] [Λ,Μ,Λ,Κ] [Κ,Λ,Μ,Λ] [Λ,Κ,Μ,Λ]

[Μ,Κ,Λ,Λ] [Μ,Λ,Κ,Λ] [Κ,Μ,Λ,Λ] [Λ,Μ,Κ,Λ]

Page 25: ΠΛΗ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)

Page 26: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

A. Θεωρία4. Το Πρόβληµα του Ευθυγράµµου Παζλ4-5. Συνάρτηση Πραγµατικού Κόστους – Ευρετική Συνάρτηση

26∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Με τον ορισµό συναρτήσεων κόστους και ευρετικής συνάρτησης πλέον ο γράφος είναι έτοιµος για να εκτελέσουµε τους αλγορίθµους αναζήτησης.

[Λ,Λ,Κ,Μ]

[Κ,Λ,Λ,Μ] [Λ,Κ,Λ,Μ] [Λ,Λ,Μ,Κ]

[Μ,Λ,Λ,Κ] [Λ,Μ,Λ,Κ] [Κ,Λ,Μ,Λ] [Λ,Κ,Μ,Λ]

[Μ,Κ,Λ,Λ] [Μ,Λ,Κ,Λ] [Κ,Μ,Λ,Λ] [Λ,Μ,Κ,Λ]

1 11

1 11 1

1

11 1

1

1

1

11

1

h=3S

Τ

h=0

h=1

h=2

h=1 h=1 h=2

h=2 h=2 h=2

h=2 h=3

Page 27: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

A. Θεωρία4. Το Πρόβληµα του Ευθυγράµµου Παζλ6. Εφαρµογή Αλγορίθµων Αναζήτησης

27∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Άσκηση: Εφαρµόστε τον αλγόριθµο Α* για την επίλυση του προβλήµατος του ευθυγράµµου παζλτου παραδείγµατος.

Page 28: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

A. Θεωρία5. Το Πρόβληµα των ∆οχείων1. ∆ιατύπωση του Προβλήµατος

Στο Πρόβληµα των ∆οχείων, δίνονται δύο δοχεία Α και Β µε χωρητικότητα 3 lt και 2 lt αντίστοιχα.

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

Η αρχική και η τελική κατάσταση φαίνονται στο παρακάτω σχήµα:

28∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Αρχική Κατάσταση Τελική Κατάσταση

1

2

3

1

2

Α Β

1

2

3

1

2

Α Β

Page 29: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

A. Θεωρία5. Το Πρόβληµα των ∆οχείων2. Κατάσταση

Κατάσταση: Αναπαριστούµε µία κατάσταση του προβλήµατος µε ένα διατεταγµένο ζέυγος (X,Y) όπου Χ είναι τα λίτρα στο δοχείο Α και Υ είναι τα λίτρα στο δοχείο Β. Για παράδειγµα η αρχική και η τελική κατάσταση αναπαριστώνται ως εξής:

29∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Αρχική Κατάσταση(0,0)

Τελική Κατάσταση(0,1)

1

2

3

1

2

Α Β

1

2

3

1

2

Α Β

Page 30: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

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-Χ))

Page 31: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

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

Page 32: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

Ευρετική Συνάρτηση: Ορίζουµε ως ευρετική συνάρτηση, το άθροισµα των απολύτων διαφορών των λίτρων των δοχείων σε σχέση µε την κατάσταση στόχο: 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

Page 33: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

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

Page 34: ΠΛΗ31 ΜΑΘΗΜΑ 1.4

A. Θεωρία5. Το Πρόβληµα των ∆οχείων6. Εφαρµογή Αλγορίθµων Αναζήτησης

34∆ηµήτρης Ψούνης, ΠΛΗ 31, Μάθηµα 1.4: Τέσσερα ∆ηµοφιλή Προβλήµατα Αναζήτησης

Άσκηση: Εφαρµόστε τον αλγόριθµο Α* για την επίλυση του προβλήµατος των δοχείων του παραδείγµατος.