===========================================================================

Σχετικά έγγραφα
(50 μον.) πάντοτε Διατυπώστε

Μεταβλητες: Q, NSW, V, T, SA, WA, NT. Πεδίο Ορισμού: Για κάθε μεταβλητη το ίδιο. D i ={R, G, B} όπου i= Q, NSW,., NT.

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

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

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

Πρόβληµα ικανοποίησης περιορισµών

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

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

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

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

Ισορροπημένα Δένδρα. για κάθε λειτουργία; Ισορροπημένο δένδρο : Διατηρεί ύψος κάθε εισαγωγή ή διαγραφή

Επίλυση Προβλημάτων με Χρωματισμό. Αλέξανδρος Γ. Συγκελάκης

Αλγόριθµοι CSPs Κώδικας. Μάθηµα Τεχνητής Νοηµοσύνης ΥΣ02 Χειµερινό εξάµηνο

Σειρά Προβλημάτων 1 Λύσεις

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

Κεφάλαιο 1: Κίνηση και γεωμετρικά σχήματα

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

9. Κόκκινα-Μαύρα Δέντρα

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

Το Πρόβλημα της Πινακοθήκης (The Art Gallery Problem)

y(p) = 0 y(p) = 0 y(p) = 0

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

χ(k n ) = n χ(c 5 ) = 3

Εργοστάσιο Ανακύκλωσης

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

Εφαρμοσμένα Μαθηματικά ΙΙ 9ο Σετ Ασκήσεων (Λύσεις) Διανυσματικοί Χώροι

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

Πληρότητα της μεθόδου επίλυσης

Αλγόριθμοι και πολυπλοκότητα: 4 η σειρά ασκήσεων ΣΗΜΜΥ - Ε.Μ.Π.

Αριθμητική Ανάλυση και Εφαρμογές

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

Το Κ2 είναι ένα παιχνίδι για 1 έως 5 παίκτες, ηλικίας 8 ετών και άνω, με διάρκεια περίπου 60 λεπτά.

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

ΗΥ180: Λογική Διδάσκων: Δημήτρης Πλεξουσάκης. Φροντιστήριο 8 Επίλυση για Horn Clauses Λογικός Προγραμματισμός Τετάρτη 9 Μαΐου 2012

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

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

Το Πρόβλημα της Πινακοθήκης (The Art Gallery Problem)

Λύσεις 1ης Ομάδας Ασκήσεων

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

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

Αλγόριθμοι για ανάθεση συχνοτήτων και έλεγχο αποδοχής κλήσεων σε κυψελικά ασύρματα δίκτυα

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

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

Δισδιάστατη ανάλυση. Για παράδειγμα, έστω ότι 11 άτομα δήλωσαν ότι είναι άγαμοι (Α), 26 έγγαμοι (Ε), 12 χήροι (Χ) και 9 διαζευγμένοι (Δ).

HY Λογική Διδάσκων: Δ. Πλεξουσάκης

3η Σειρά Γραπτών Ασκήσεων

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

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

Δρομολόγηση Και Πολύχρωματισμός. Γραφημάτων ΚΑΡΑΓΕΩΡΓΟΣ ΤΙΜΟΘΕΟΣ Α.Μ 1026

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

Επιχειρησιακή έρευνα (ασκήσεις)

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

Σειρά Προβλημάτων 5 Λύσεις

Φροντιστήριο 11 Λύσεις

Θέματα υπολογισμού στον πολιτισμό

Θεωρία Γραφημάτων 8η Διάλεξη

Λύσεις 4ης Σειράς Ασκήσεων

Συνήθεις Διαφορικές Εξισώσεις Ι Ασκήσεις - 19/10/2017. Ακριβείς Διαφορικές Εξισώσεις-Ολοκληρωτικοί Παράγοντες. Η πρώτης τάξης διαφορική εξίσωση

A) στην 2 Β) στην 3 Γ) στην 4 Δ) στην 8 E) στην 16

Κατανεμημένα Συστήματα Ι

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

Pr(10 X 15) = Pr(15 X 20) = 1/2, (10.2)

1ο μέρος 1. Φτιάχνουμε την πίστα. Μια ενδεικτική πίστα φαίνεται παρακάτω:

Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές

Διακριτά Μαθηματικά. Απαρίθμηση: Εισαγωγικά στοιχεία Αρχή του Περιστεριώνα

ψ φ2 = k χ φ2 = 4k χ φ1 = χ φ1 + χ φ2 + 3 = 4(k 1 + k 2 + 1) + 1 ψ φ1 = ψ φ1 + χ φ2 = k k = (k 1 + k 2 + 1) + 1

Παραδείγματα μεταβλητών

Σειρά Προβλημάτων 4 Λύσεις

n ίδια n διαφορετικά n n 0 n n n 1 n n n n 0 4

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

1 κεντρικό ταμπλό. 1 εγχειρίδιο οδηγιών. Κύβοι μεταναστών. 25 Ιρλανδοί 25 Άγγλοι 25 Γερμανοί 25 Ιταλοί. Δείκτες πολιτικής εύνοιας

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

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

> μεγαλύτερο <= μικρότερο ή ίσο < μικρότερο == ισότητα >= μεγαλύτερο ή ίσο!= διαφορετικό

Σειρά Προβλημάτων 3 Λύσεις

Ορισμός του χρώματος όρισε το χρώμα πένας σε [06_π03.sb] άλλαξε χρώμα πένας κατά. άλλαξε χρώμα πένας κατά άλλαξε χρώμα πένας κατά [06_π04.

Δομές Δεδομένων. Ενότητα 13: B-Δέντρα/AVL-Δέντρα. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Δομές Δεδομένων

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ. Τελικές εξετάσεις Παρασκευή 4 Ιουλίου 2014, 18:00-21:00

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

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

Άσκηση 1. με κόκκινο χρώμα σημειώνονται οι κρίσιμοι κόμβοι

Διαχείριση Έργων Πληροφορικής

ΠΡΟΕΤΟΙΜΑΣΙΑ ΠΑΡΑΔΕΙΓΜΑ ΠΡΟΕΤΟΙΜΑΣΙΑΣ ΓΙΑ 4 ΠΑΙΚΤΕΣ: 1. ΠΡΟΕΤΟΙΜΑΣΙΑ ΤΩΝ ΝΗΣΙΩΝ

Δημιουργία και επεξεργασία διανυσματικών επιπέδων στο QGIS

Επαγωγή και αναδρομή για άκυκλα συνεκτικά γραφήματα

Λύσεις για τις ασκήσεις του lab5

Εθνικό Μετσόβιο Πολυτεχνείο Τομέας Υδατικών Πόρων και Περιβάλλοντος. Διαχείριση Υδατικών Πόρων

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Δημήτρης Πλεξουσάκης

Μονοπάτια και Κυκλώµατα Euler. Στοιχεία Θεωρίας Γραφηµάτων (3,4) Παραδείγµατα. Κριτήρια Υπαρξης.

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΦΡΟΝΤΙΣΤΗΡΙΟ ΑΛΓΟΡΙΘΜΩΝ ΒΟΗΘΟΣ: ΒΑΓΓΕΛΗΣ ΔΟΥΡΟΣ

ΠΟΡΕΙΑ ΤΟΥ ΠΑΙΧΝΙΔΙΟΥ Σε κάθε γύρο έχετε 2 ενέργειες. Στην κάθε ενέργεια μπορείτε να κάνετε ένα από τα εξής:

Περιεχόμενα του Παιχνιδιού

Ασκήσεις ανακεφαλαίωσης στο μάθημα Τεχνητή Νοημοσύνη

Θεωρία Γραφημάτων 10η Διάλεξη

Αλγόριθμοι και Πολυπλοκότητα

ΕΠΙΣΗΜΟΙ ΚΑΝΟΝΕΣ ΤΟΥ ΟΙ ΚΑΡΤΕΣ

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

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

Εθνικό Μετσόβιο Πολυτεχνείο Τομέας Υδατικών Πόρων και Περιβάλλοντος. Τεχνολογία Συστημάτων Υδατικών Πόρων

Σειρά Προβλημάτων 3 Λύσεις

Transcript:

=========================================================================== Α. (50 µον.) Σας δίνεται ο ακόλουθος γράφος, το οποίο πρέπει να χρωµατίσετε χρησιµοποιώντας 4 χρώµατα (R,G,B,Υ), ώστε δύο γειτονικές κορυφές να µην έχουν το ίδιο χρώµα. Θεωρείστε ότι ο χρωµατισµός γίνεται πάντοτε µε την εξής σειρά: σειρά Q, NSW, V, T, SA, WA, NT Διατυπώστε το παραπάνω ως πρόβληµα ικανοποίησης περιορισµών. Επιλύστε το πρόβληµα µε 1. υπαναχώρηση (οπισθοδρόµηση) µε άλµα, και 2. πρώιµο έλεγχο και οπισθοδρόµηση 3. τοπική αναζήτηση (hill climbing) Για τα 1 και 2 χρησιµοποιείστε πίνακα που δείχνει τα επίπεδα του δέντρου αναζήτησης ανά µεταβλητή. ------------------------------------------------------------------------------------------------------------------------------- Ο γράφος της άσκησης θεωρείται ότι είναι ένας χάρτης με γειτονικές περιοχές. Ο σκοπός είναι να χρωματίσουμε τις περιοχές με τα χρώματα που δίνονται (κόκκινο, πράσινο, μπλε, κίτρινο) έτσι ώστε ανα δύο οι περιοχές που είναι γειτονικές (στον γράφο, συνδέονται) να μην έχουν το ίδιο χρώμα. Αυτό το πρόβλημα θα το διατυπώσουμε ως πρόβλημα ικανοποίησης περιορισμών. Θα ορίσουμε τις μεταβλητές του προβλήματος, τα πεδία τιμών τους και θα σχεδιάσουμε το γράφο περιορισμών. Εδώ, χρειαζόμαστε 7 μεταβλητές όπου η κάθε μια θα αντιστοιχεί σε μια περιοχή του χάρτη. Έστω, Q, NSW, V, T, SA, WA, NT όπως είναι ονομασμένες και οι περιοχές στο γράφο. Όλες οι μεταβλητές έχουν το ίδιο πεδίο τιμών, δηλαδή τα χρώματα {κόκκινο, πράσινο, μπλε, κίτρινο}.

Οι περιορισμοί του προβλήματος φαίνονται παρακάτω: WA NT NT Q SA NSW WA SA SA Q SA V NT SA Q NSW NSW V Αυτός ο πίνακας δείχνει ότι καμιά περιοχή δε μπορεί να έχει το ίδιο χρώμα με τη γειτονική της. Ο γράφος περιορισμών φαίνεται παρακάτων: 1. Για την επίλυση του προβλήματος σε αυτό το ερώτημα θα χρησιμοποιήσουμε τον αλγόριθμο υπαναχώρησης με άλμα. Ουσιαστικά, ξεκινάμε, από τη δωθείσα σειρά, να χρωματίσουμε τις περιοχές. Ο αλγόριθμος μοιάζει με αυτόν του κατά βάθους, σε κάθε επίπεδο, επιλέγουμε να προχωρήσουμε προς τα κάτω το δέντρο, από το αριστερότερο παιδί που μπορούμε. Σε κάθε επίπεδο αναθέτουμε τιμή σε μια μόνο μεταβλητή. Όταν κάθε κόμβος που επιλέγεται να επεκταθεί ελέγχεται, τότε αν οι τιμές στις μεταβλητές δεν ικανοποιούν τους περιορισμούς μας, τότε ο αλγόριθμος υπαναχωρεί και προσπαθεί να βρει άλλο μονοπάτι προς επέκταση. Θα ορίσουμε το σύνολο συγκρούσεων της μεταβλητής Χ ως εξής: Για κάθε μεταβλητή Χ, είναι το σύνολο των μεταβλητών στις οποίες έχουν ανατεθεί τιμές, και συνδέονται με την Χ μέσω περιορισμών (κατασκευάζεται κατά τον πρώιμο έλεγχο). Υπάρχουν δύο είδη υπαναχώρησεων: i)χρονολογική υπαναχώρηση: Στην πιο πρόσφατη μεταβλητή (προηγούμενη της Χ) ii)υπαναχώρηση με άλμα: Στην πιο πρόσφατη μεταβλητή του συνόλου συγκρούσεων της Χ Στο συγκεκριμένο ερώτημα ζητείται υπαναχώρηση με άλμα!

Η σειρά με την οποία χρωματίζουμε τις περιοχές του γράφου είναι η δοθείσα εξής : Q, NSW, V, T, SA, WA, NT. Στην αρχική κατάσταση, καμία περιοχή δεν έχει χρωματιστεί και το πεδίο τιμών κάθε μεταβλητής είναι όλα τα χρώματα. Ξεκινάμε δίνοντας τιμές (χρώματα) στην περιοχή Q: Θα επεκτέινουμε τον αριστερότερο κόμβο για τον οποίο, το σύνολο συγκρούσεων δεν περιέχει μεταβλητές διότι ενώ συνδέεται με μεταβλητές στο γράφο περιορισμών, δεν τους έχουν ανατεθεί ακόμα τιμές. 1 Θα προσπαθήσουμε τώρα να επεκτείνουμε τον αριστερότερο κόμβο, όμως παρατηρούμε από το γράφο περιορισμών πως η περιοχή NSW δε μπορεί να έχει το ίδιο χρώμα με την Q. Το σύνολο συγκρούσεων της NSW είναι το {Q}. Συνεπώς, γυρνάμε πίσω στον κόμβο Q και επιλέγουμε άλλο μονοπάτι. Θα δοκιμάσουμε το 2 ο κατά σειρά, NSW=G, όπου και παρατηρούμε πως δεν έχουμε κάποια δυσκολία εφόσον ικανοποιούνται οι περιορισμοί.

Το δέντρο αναδιαμορφώνεται ως εξής: 1 2 Τώρα θα επιλέξουμε προς επέκταση τον αριστερότερο κόμβο του 3 ου επιπέδου όπου χρωματίζουμε το V. Ικανοποιούνται οι περιορισμοί συνεπώς μπορούμε να προχωρήσουμε. 1 2 3

Θα προσπαθήσουμε να επεκτείνουμε τον αριστερότερο κόμβο του 4 ου επιπέδου που μόλις χρωματίσαμε. Όλοι οι περιορισμοί ικανοποιούνται και συνεχίζουμε χρωματίζοντας την περιοχή SA. 1 2 3 4 Όταν πάμε να επεκτείνουμε το αριστερότερο φύλλο, θα δούμε πως δεν ικανοποιούνται οι περιορισμοί. Η περιοχή SA δε μπορεί να πάρει την τιμή κόκκινο λόγω της Q. Συνεπώς, το σύνολο συγκρούσεων της SA είναι μέχρι στιγμής το {Q}. Επιλέγουμε το 2 ο κατά σειρά, SA=G, όπου πάλι λόγω της NSW, η SA δε μπορεί να πάρει την τιμή πράσινο. Συνεπώς, το σύνολό συγκρούσεων της SA είναι το {Q, NSW}. Επιλέγουμε το 3 o και δίνουμε την τιμή μπλε στην περιοχή SA, όπου δεν έχουμε κάποιο περιορισμό. Έτσι επεκτείνουμε αυτό το φύλλο και το δέντρο θα γίνει ως εξης:

1 2 3 4 5 Επεκτείνεται ο αριστερότερος κόμβος εφόσον δεν υπάρχουν περιορισμοί και η περιοχή WA θα πάρει την τιμή κόκκινο. Το τελικό δέντρο θα είναι το εξής:

1 2 3 4 5 6

Το αριστερότερο παιδί δεν είναι στη λύση διότι λόγω του γράφου περιορισμών, δε μπορεί η περιοχή ΝΤ να έχει το ίδιο χρώμα με την Q. Το 2 ο παιδί όμως βρίσκεται στη λύση εφόσον ικανοποιούνται οι περιορισμοί. Όλες οι περιοχές έχουν χρωματιστεί και ο αλγόριθμος ολοκληρώνει. Καμία περιοχή δε συνορεύει με άλλη με το ίδιο χρώμα. Αυτή είναι μια λύση, από τις πολλές. Τελικές τιμές στις μεταβλητές: Q = R, NSW = G, V = R, T = R, SA = B, WA = R, NT = G

2. Η επίλυση του προβλήματος με πρώιμο έλεγχο και οπισθοδρόμηση αφορά τον αλγόριθμο Forward Check (FC). Αυτός ο αλγόριθμος λειτουργεί ως εξής: Ξεκινάμε να αναθέτουμε τιμές στις διάφορες μεταβλητές. Για κάθε τιμή που προσδίδουμε σε μια μεταβλητή, αφαιρούμε τιμές από τα πεδία ορισμού των μεταβλητών που σχετίζονται με τη μεταβλητή που αναθέσαμε τιμή λόγω των περιορισμών. Όταν κάποια μεταβλητή καταλήξει να έχει μηδενικό σύνολο τιμών και δεν έχει πάρει τιμή προφανώς, τότε θα πρέπει να κάνουμε οπισθοδρόμηση αφού δε θα καταλήξουμε σε λύση. Γι αυτό το λόγο σχεδιάσαμε και το γράφο περιορισμών! Η σειρά με την οποία κατεβαίνουμε το μονοπάτι στο δέντρο που χτίζουμε ακολουθά τη λογική του κατά βάθους αλγορίθμου, δηλαδή επεκτείνεται σε κάθε επίπεδο το αριστερότερο παιδί. Σε κάθε επίπεδο αναθέτουμε τιμή σε μια μόνο μεταβλητή. Η σειρά με την οποία χρωματίζουμε τις περιοχές του γράφου είναι η δοθείσα εξής : Q, NSW, V, T, SA, WA, NT. Στην αρχική κατάσταση, καμία περιοχή δεν έχει χρωματιστεί και το πεδίο τιμών κάθε μεταβλητής είναι όλα τα χρώματα. Ξεκινάμε δίνοντας τιμές (χρώματα) στην περιοχή Q: Σύμφωνα με τον αλγόριθμο, θα επεκτείνουμε το αριστερότερο παιδί, σε επόμενο επίπεδο. Εκεί θα χρωματίσουμε τη 2 η περιοχή η οποία είναι η NSW. Πρωτού πάμε το 2 ο επίπεδο, παρατηρούμε πως όλες οι μεταβλητές έχουν πεδίο ορισμού όλα τα χρώματα. Δίνοντας στην περιοχή Q το χρώμα κόκκινο και παρατηρώντας από το γράφο ότι αυτή συνδέεται με τις περιοχές NSW, SA, NT θα αφαιρέσουμε από το πεδίο τιμών αυτών το κόκκινο χρώμα. Τα νέα πεδία ορισμού είναι τα εξής: NSW, SA, NT = {G, B, Y}. WA, V, T = {R, G, B, Y}

Συνεχίζουμε επεκτείνοντας τον αριστερότερο κόμβο στην περιοχή NSW με δυνατές τιμές τις {G, B, Y}. 1 Παρατηρούμε από το γράφο πως η περιοχή NSW συνδέεται με τις Q, V, SA και συνεπώς θα επηρρεαστεί το πεδίο τιμών τους. Πριν, τα πεδία τιμών ήταν: NSW, SA, NT = {G, B, Y}. WA, V, T = {R, G, B, Y} Τώρα, τα πεδία τιμών θα έχουν ως εξής (δε μας ενδιαφέρουν οι ήδη χρωματισμένες περιοχές): SA = {B, Y} NT = {G, B, Y} V = {R, B, Y} WA, T = {R, G, B, Y} Στη συνέχεια θα χρωματίσουμε την περιοχή V στο 3 ο επίπεδο του δέντρου η οποία μπορεί να πάρει όλα τα χρώματα πέραν του πράσινου.

1 2 Η περιοχή V συνδέεται με τις NSW και SA. Εφόσον η NSW χρωματίστηκε, θα αλλάξουμε το πεδίο τιμών της SA (στην πράξη παρατηρούμε πως δεν επηρρεάζεται τελικά). Πριν, τα πεδία τιμών ήταν: SA = {B, Y} NT = {G, B, Y} WA, T = {R, G, B, Y} Τώρα τα πεδία τιμών θα γίνουν: SA = {B, Y} NT = {G, B, Y} WA, T = {R, G, B, Y}

Επεκτείνουμε το αριστερότερο παιδί στο επόμενο επίπεδο όπου εκεί θα χρωματίσουμε την περιοχή Τ. 1 2 3 Η περιοχή Τ δεν επηρρεάζει καμία διότι δεν συγγενεύει με καμία. Άρα τα πεδία τιμών έχουν ως είχαν: SA = {B, Y} NT = {G, B, Y} WA = {R, G, B, Y} Επεκτείνουμε τον αριστερότερο κόμβο στο επίπεδο χρωματισμού της SA.

1 2 3 4 Η περιοχή SA συνδέεται με όλες πέραν της Τ. Συνεπώς θα αλλάξει το πεδίο ορισμού των εναπομείναντων. Το πεδίο ορισμού πριν ήταν: NT = {G, B, Y} WA = {R, G, B, Y} Τώρα, το πεδίο ορισμού θα είναι το: NT = {G, Y}

WA = {R, G, Y} Συνεχίζουμε με τον αλγόριθμο, χρωματίζοντας την WA 1 2 3 4 5 Βασισμένοι στο γράφο περιορισμών μας, βλέπουμε ότι η περιοχή WA συνδέεται με τις εναπομείναντες αχρωμάτιστες περιοχές: NT.

Επεκτείνουμε τον αριστερότερο κόμβο. Το πεδίο ορισμού της ΝΤ που είναι και η τελευταία προς χρωματισμό ήταν το {G, Y}. Τώρα θα είναι το ίδιο διότι η WA χρωματίστηκε με R το οποίο ήταν ήδη εκτός του περίου τιμών της NT. Το δέντρο καταλήγει να είναι το εξής: 1 2 3 4 5 6 Επιλέγουμε για χρωματισμό της ΝΤ την τιμή G.

Όλες οι περιοχές έχουν χρωματιστεί και ο αλγόριθμος ολοκληρώνει. Καμία περιοχή δε συνορεύει με άλλη με το ίδιο χρώμα. Αυτή είναι μια λύση, από τις πολλές. Τελικές τιμές στις μεταβλητές: Q = R, NSW = G, V = R, T = R, SA = B, WA = R, NT = G Q NSW V T SA WA NT RGBW RGBY RGBY RGBY RGBY RGBY RGBY R G RGBY RGBY RGBY RGBY GBY R G RBY RGBY BY RGBY GBY R G R RGBY BY RGBY GBY R G R R BY RGBY GBY R G R R B RGY GY R G R R B R GY R G R R B R G

3. Για την επίλυση αυτού του προβλήματος σε αυτό το ερώτημα θα χρησιμοποιήσουμε τον αλγόριθμο αναρρίχησης λόφων (Hill Climbing-HC) ο οποίος λειτουργεί βάσει ευριστικής την οποία θα τη θεωρήσουμε στη συνέχεια. Η γενική φιλοσοφία της τοπικής αναζήτησης είναι η εξής: Δημιούργησε μια αρχική ανάθεση τιμών για όλες τις μεταβλητές. Μέτρησε πόσοι περιορισμοί παραβιάζονται Επέλεξε μια μεταβλητή και άλλαξέ της τη τιμή, έτσι ώστε να μειωθεί κατά το δυνατόν περισσότερο το πλήθος των περιορισμών που παραβιάζονται (ευρετική συνάρτηση). Επανέλαβε τα βήματα 2 και 3 μέχρι να βρεις λύση. Ουσιαστικά ο αλγόριθμος ξεκινάει χρωματίζοντας όλες τις περιοχές (όλους τους κόμβους του γράφου) με τυχαίες τιμές από το πεδίο τιμών τους. Βλέπει βάσει των περιορισμών, πόσες συγκρούσεις έχουμε και βάσει αυτού αλλάζει τιμές στις διάφορες περιοχές μέχρι να βρει λύση. Υπάρχουν παραλλαγές του αλγορίθμου όπου αν δεν βρεθεί σύντομα λύση, τότε ξεκινάει πάλι δίνοντας διαφορετικές τιμές σε όλες τις μεταβλητές από την αρχή και συνεχίζει με τα υπόλοιπα βήματα. Για ευκολία στην επίλυση, θα θεωρήσουμε πως η τυχαία κατανομή τιμών στις μεταβλητές δε θα είναι τόσο τυχαία για μας. Θεωρούμε πως η αρχική κατάσταση είναι όλες οι περιοχές να έχουν την πρώτη τιμή από το πεδίο τιμών τους, δηλαδή όλες οι περιοχές να έιναι χρωματισμένες κόκκινες. Η ευρετική συνάρτηση που θα χρησιμοποιήσουμε θα είναι η εξής: Σε κάθε κατάσταση, ελέγχουμε όλες τις μεταβλητές και τον αριθμό των συγκρούσεων λόγω των περιορισμών που έχει η κάθε μια. Θα επιλέγεται προς νέο χρωματισμό κάθε φορά η περιοχή αυτή η οποία θα συμμετέχει σε περισσότερες συγκρούσεις από άλλες. Αν υπάρχει ισοψηφία και όλες οι περιοχές συμμετέχουν στον ίδιο αριθμό συγκρούσεων, θα επιλέγεται περιοχή βάσει λεξικογραφικής σειράς (πχ, SA και Q, θα επιλεχθεί η Q). Με τον χρωματισμό μιας περιοχής δεν περιμένουμε αυτή η περιοχή να έχει μηδενικές συγκρούσεις με άλλες, αλλά να έχει τις ελάχιστες δυνατές. Το καλύτερο θα είναι να μην έχει καμία σύγκρουση.

Eκκίνηση αλγορίθμου: Η αρχική κατάσταση μας είναι όλες οι περιοχές κόκκινες. Παρατηρούμε ότι η περιοχή SA συμμετέχει σε 5 περιορισμούς συγκρούωντας με τις V, NSW, Q, NT, WA. Αμέσως μετά είναι η Q η οποία συμμετέχει σε 3 περιορισμούς κοκ. Επιλέγεται η SA προς αλλαγή χρώματος. Με την επιλογή να χρωματιστεί πράσινη, που είναι και η 2 η τιμή του πεδίου τιμών της, παρατηρούμε πως δεν συγκρούεται με καμία. Η SA χρωματίζεται πράσινη. Χρησιμοποιούμε την ευρετική συνάρτηση και βλέπουμε τώρα πως υπάρχει ισοψηφία περιοχών που υπόκεινται σε συγκρούσεις. Οι περιοχές NSW, Q, NT, συγκρούωνται η καθεμία με 2 άλλες. Οι V, WA, συγκούωνται η καθεμία μόνο με μια περιοχή. Από τις NSW, Q, NT, επιλέγεται λεξικογραφικά η NSW. Με το χρωματισμό της σε πράσινο θα υπάρχει μια σύγκρουση, αλλά με τον χρωματισμό της σε μπλε δε θα υπάρχει καμία. Η NSW συνεπώς χρωματίζεται μπλε. Βάσει ευριστικής συνάρτησης, τώρα πια, η περιοχή με τις περισσότερες συγκρούσεις είναι η NT, με 2 συγκρούσεις. Με χρωματισμό της σε πράσινο, θα συμμενέχει σε 1 σύγκρουση. Με τον χρωματισμό της σε μπλε όμως δε θα συμμετέχει σε καμία. Η περιοχή NT συνεπώς χρωματίζεται μπλε. Λειτουργούμε ξανά την ευριστική συνάρτηση και παρατηρούμε πως καμία περιοχή δε συμμετέχει σε σύγκρουση με άλλες και κανένας περιορισμός δεν παραβιάζεται. Ο αλγόριθμος ολοκληρώνει επιτυχώς. Παρουσιάζεται και το δέντρο αναζήτησης της λύσεως. ---------------------------------------------------------------------------------------------------------------------

===================================================================== Β. (50 μον.) Σας ζητείτε να κατασκευάσετε μια λέξη 8 γραμμάτων με τα γράμματα Α,Β,Γ,Δ,Ε,Σ,Η,Ο και με τους εξής περιορισμούς: 1. Πρέπει να αρχίζει με A 2. Πρέπει να καταλήγει σε Α ή Σ 3. Οι θέσεις 7 και 4 πρέπει να έχουν το γράμμα E 4. Το A δεν μπορεί αν εμφανίζεται σε άλλη θέση εκτός της πρώτης και της τελευταίας 5. Το Α ακολουθεί οποιοδήποτε άλλο γράμμα 6. Το Β ακολουθεί το Ε 7. Το Ο ακολουθεί το Σ 8. Το Δ ακολουθεί το Α ή το Ε 9. Το Ε ακολουθεί το Α ή το Σ 10. Το Σ ακολουθεί το Η 11. Δύο διαδοχικές θέσεις δεν μπορούν να έχουν το ίδιο γράμμα. Διατυπώστε το παραπάνω ως πρόβλημα ικανοποίησης περιορισμών. Επιλύστε το πρόβλημα με 1. πρώιμο έλεγχο και οπισθοδρόμηση χρησιμοποιώντας πίνακα που δείχνει τα επίπεδα του δέντρου αναζήτησης ανά θέση της λέξης (1 8) 2. έλεγχο συνέπειας κόμβου αρχικά, και έλεγχο συνέπειας τόξου μετά από κάθε ανάθεση τιμής (αλγόριθμος MAC) ------------------------------------------------------------------------------------------------------------ Ωστέ να αναλύσουμε και να διατυπώσουμε το πρόβλημα αυτό ως πρόβλημα ικανοποίησης περιορισμών θα πρέπει πρώτα από όλα να αθεωρήσουμε τις μεταβλητές του προβλήματος. Θα πρέπει να δημιουργήσουμε μια λέξη με 8 γράμματα 12345678. Μπορούμε να θεωρήσουμε κάθε γράμμα της λέξης σαν μια ξεχωριστή μεταβλητή. Η λέξη συνεπώς θα είναι της μορφής X1X2X3X4X5X6X7X8. Συνεπώς θα έχουμε 8 μεταβλητές Xi, i [1,8]. Η κάθε μεταβλητή έχει πεδίο ορισμού τα δωθέντα γράμματα. Συνεπώς, για κάθε μεταβλητή Χ, Dx ={Α, Β, Γ, Δ, Ε, Σ, Η, Ο}. Οι περιορισμοί είναι οι εξής: 1. Το 1 ο γράμμα θα είναι το Α. Άρα, X1=A. 2. Το 8 ο γράμμα θα είναι το Α ή το Σ. Άρα X8=A ή Χ8=Σ. 3. Η θέση 4 και η θέση 7 θα έχουν το γράμμα Ε. Συνεπώς, X4=E και Χ7=Ε. 4. Το Α θα εμφανίζεται μόνο στην πρώτη και την τελευταία θέση. Συνεπώς, αυτό μεταφράζεται σαν Xj A, j [2,7].

5. Το Α ακολουθεί οποιοδήποτε άλλο γράμμα. Αυτό σημαίνει ότι αν μια θέση α έχει Α, τότε η προηγούμενη της θα έχει οποιοδήποτε γράμμα χωρίς περιορισμό, δηλαδή αν Xα=Α Χα-1={Α, Β, Γ, Δ, Ε, Σ, Η, Ο}. 6. Το Β ακολουθεί το Ε σημαίνει ότι αν μια θέση έχει Ε, τότε μετά από αυτό μπορεί να έχει όποιο θέλει ενώ αν μια θέση έχει Β, τότε πριν θα πρέπει να έχει απαραίτητα το Ε! Δηλαδή, αν Χα=Β Xα-1=Ε. 7. Χα=Β Xα-1=Ε. 8. Χα=Ο Xα-1=Σ. 9. Χα=Δ Xα-1=Ε. 10. Χα=Ε Χα-1=Α ή Xα-1=Σ. 11. Χα=Σ Xα-1=Η. 12. Χα Χα+1 1. Θα ακολουθήσουμε τη λύση μέσω του αλγορίθμου με πρώιμο έλεγχο και οπισθοδρόμηση που εξηγήσαμε στην προηγούμενη άσκηση. Τα πεδία τιμών των μεταβλητών είναι τα εξής : X1,2,3,4,5,6,7,8={Α,Β,Γ,Δ,Ε,Σ,Η,Ο} Ξεκινάμε από την αρχική μας κατάσταση κατά την οποία η λέξη δεν έχει ούτε ένα γράμμα. Θα ξεκινήσουμε δίνοντας τιμές στο 1 ο γράμμα. Οι αριθμοί στους κόμβους θα δείχνει τη σειρά με την οποία ανοίχτηκαν. Αν η μεταβλητή Χ1 πάρει την τιμή Α τότε δεν έχουμε κάποιο πρόβλημα με τους περιορισμούς (εξάλλου μόνο το Α περιορίζεται να πάρει). Παίρνοντας την τιμή Α η Χ1, επηρρεάζει το πεδίο τιμών της Χ2 που είναι η επόμενη. Η Χ2 δε θα μπορεί να πάρει την ίδια τιμή με την Χ1, συνεπώς δε θα μπορεί να πάρει Α. Επίσης, δε θα μπορέσει να πάρει την τιμή Β γιατί πριν θα πρέπει να υπάρχει Ε, δε θα μπορέσει να πάρει την τιμή Ο γιατί πριν θα πρέπει να υπάρχει Σ, δε θα μπορέσει να πάρει την τιμή Σ γιατί πριν θα πρέπει να υπάρχει Η. Άρα, το νέο πεδίο ορισμού για την Χ2={Γ, Δ, Ε, Η}

Τώρα, βάσει των περιορισμών, αν το Χ2 πάρει την τιμή Γ, τότε το πεδίο της Χ3 θα είναι το {Α,Η}. Αν η Χ3 πάρει την τιμή Α, τότε παραβιάζονται οι περιορισμοί. Αν όμως πάρει την τιμή Η, τότε η Χ4 θα έχει πεδίο το {Α,Γ,Σ} όπου παραβιάζονται οι περιορισμοί και στα 3 γράμματα. Συνεπώς, οπισθοδρομούμε πίσω στην Χ3 και εφόσον δεν υπάρχει άλλη τιμή που μπορεί να πάρει, οπισθοδρομούμε πίσω στην Χ2 δίνοντας της την τιμή Δ. Ακολουθώντας το ίδιο μοτίβο, καταλήγουμε ότι η μεταβλητή Χ2 θα πάρει την τιμή Η, περιορίζοντας το πεδίο της Χ3 σε {Α,Γ,Σ} όπου μόνο αν πάρει την τιμή Σ, δε θα έχουμε πρόβλημα με τους περιορισμούς. Αν πάρει την τιμή Σ, τότε το πεδίο της Χ4 θα είναι το {Α,Γ,Ε,Η}.

Από το πεδίο της Χ4, η μόνη τιμή που δεν παραβιάζει περιορισμούς είναι η Ε (Χ4=Ε). Εφόσον Χ4=Ε, το πεδίο της Χ5 θα είναι το {Α,Β,Γ,Δ,Η}. Αν η μεταβλητή Χ5 πάρει την τιμή Α, παραβιάζονται οι περιορισμοί. Αν πάρει την τιμή Β, το πεδίο της Χ6 θα είναι το {Α,Γ,Η} όπου αν πάρει την τιμή Α, παραβιάζονται οι περιορισμοί. Αν πάρει την τιμή Γ, η Χ7 θα έχει πεδίο το {Α,Η} όπου όλες οι τιμές θα παραβιάσουν τουες περιορισμούς. Συνεπώς, γυρνάμε πίσω στην Χ6 δίνοντας της την τιμή Η όπου πάλι θα καταλήξουμε σε αδιέξοδο στην Χ7. Ακολουθώντας το ίδιο μοτίβο, καταλήγουμε ότι η μεταβλητή Χ5 θα πάρει την τιμή Η, αλλάζοντας το πεδίο της Χ6 σε {Α,Γ,Σ}. Από αυτές τις τιμές, μόνο μέσω της Σ δε θα καταλήξουμε σε αδιέξοδο. Αν η Χ6 πάρει την τιμή Σ, η Χ7 θα πάρει τις {Α,Γ,Ε,Η} όπου όλες εκτός της Ε παραβιάζουν τους περιορισμούς. Η Χ7 θα πάρει την τιμή Ε και τέλος η Χ8 θα έχει πεδίο το {Α,Β,Γ,Δ,Η} όπου μόνο η τιμή Α ικανοποιεί το πρόβλημα μας. Το τελικό δέντρο είναι το εξής: Η αρίθμηση στους κόμβους δείχνει τη σειρά με την οποία ανοίχτηκαν! Ο αλγόριθμος ολοκληρώνει επιτυχώς και η ζητούμενη λέξη είναι η : ΑΗΣΕΗΣΕΑ.

2. Για την επίλυση αυτού του προβλήματος θα χρησιμοποιήσουμε το μηχανισμό συνέπειας κόμβου αρχικά και στη συνέχεια το μηχανισμό έλεγχο συνέπειας τόξου μετά από ανάθεση τιμής που είναι ο αλγόριθμος MAC. Θα εξηγήσουμε αυτές τις λειτουργίες. Συνέπεια κόμβου: Ένας περιορισμός c ικανοποιεί την συνέπεια κόμβου για ένα πεδίο D, αν: i) Είτε ο αριθμός των μεταβλητών που συμμετέχουν στον περιορισμό είναι διάφορος του 1, ii) Είτε όταν μόνο μια μεταβλητή X συμμετέχει στον περιορισμό c, θα πρέπει dx D(X) το {x dx} να αποτελεί λύση του περιορισμού c. Συνέπεια τόξου: Ένας περιορισμός c ικανοποιεί την συνέπεια τόξου για ένα πεδίο D, αν: i) Είτε ο αριθμός των μεταβλητών που μετέχουν στον περιορισμό c είναι διάφορος του 2, ii) Είτε όταν δύο μεταβλητές x, y, που μετέχουν στον περιορισμό c, θα πρέπει dx D(X) να dy D(Y) τέτοια ώστε {x dx, y dy} να αποτελεί λύση του περιορισμού c και θα πρέπει dy D(Y) να dx D(X) τέτοια ώστε {x dx, y dy}, ώστε αυτά να αποτελούν λύση του περιορισμού c. Για την συνέπεια κόμβου θα εξετάσουμε όλα τα πεδία των 8 μεταβλητών μας. Ξεκινάμε γνωρίζοντας πως Dxi={Α, Β, Γ, Δ, Ε, Σ, Η, Ο}, θα ελέγξουμε και τα 8 πεδία μας. Ουσιαστικά θα τα κοιτάξουμε ένα-ένα, σε αντίθεση με τη συνέπεια τόξου όπου θα τα εξετάσουμε ανα δύο! Για το Χ1: Το πεδίο ορισμού είναι το {A, Β, Γ, Δ, Ε, Σ, Η, Ο}. Παρατηρούμε πως το Χ1 πρέπει να πάρει την τιμή Α αναγκαστικά λόγω περιορισμού. Συνεπως, δεν ισχύει πως dx1 D(X1) το {x1 dx1} αποτελεί λύση του περιορισμού και δεν υπάρχει συνέπεια κόμβου. Για να υπάρξει η συνέπεια θα πρέπει να υπάρχει μόνο το Α στο πεδίο τιμών, αφού μόνο γι αυτό υπάρχει συνέπεια κόμβου. Άρα, D x1={a}. Ομοίως, D x4=d x7={e}. Για το Χ8: Το πεδίο ορισμού είναι το {Α, Β, Γ, Δ, Ε, Σ, Η, Ο}. Υπάρχει περιορισμός ώστε το Χ8 ν έχει τιμή μόνο Α ή Σ. Για να έχουμε συνεπώς συνέπεια κόμβου για αυτόν τον περιορισμό θα πρέπει να κρατήσουμε μόνο αυτές τις δύο τιμές για τις οποίες ο περιορισμός μας ικανοποιείται. Συνεπώς, D x8={α, Σ}. Με την ίδια λογική, για κάθε μεταβλητή, πέραν της πρώτης και της τελευταίας, το πεδίο ορισμού θα έχει ως έχει, όμως θα αφαιρεθεί η τιμή Α από τα πεδία όλων διότι βάσει περιορισμού, μόνο η πρώτη και η τελευταία μεταβλητή θα μπορεί να έχει σαν τιμή το Α, καμία άλλη, ώστε να ικανοποιείται ο περιορισμός και να υπάρχει συνέπεια κόμβου σε κάθε πεδίο. Οι μεταβλητές που μέχρι στιγμής είχαν το Α στο πεδίο ορισμού τους και δεν ήταν η πρώτη και η τελευταία είναι οι 2, 3, 5, 6. Συνεπώς, D x2=d x3=d x5=d x6={β, Γ, Δ, Ε, Σ, Η, Ο}

Ο γράφος περιορισμών ήταν ο εξής: Μετά την επιβολή του ελέγχου συνέπειας κόμβου ο γράφος περιορισμών θα είναι ο εξής:

Τώρα θα εξετάσουμε τη συνέπεια τόξου μετά από ανάθεση τιμής σε κάθε πεδίο. Ουσιαστικά θα εξετάσουμε τις μεταβλητές ανα δύο για συνέπεια τόξου αναθέτωντας τιμές στις διάφορες για να περιορίσουμε κι άλλο τα πεδία ορισμών εφόσον έτσι μας καθοδηγούν και οι περιορισμοί που δίνονται. Τα νέα μας πεδία ορισμών είναι τα εξής: Dx1={A} Dx4,7={E} Dx2,3,5,6={Β, Γ, Δ, Ε, Σ, Η, Ο} Dx8={Α, Σ} Παρατηρούμε οι μεταβλητές X1,4,7 έχουν μόνο μια τιμή που μπορούν να πάρουν από το π.ο τους. Συνεπώς μπορούμε κάνοντας αυτή την ανάθεση τιμών να προχωρήσουμε στις υπόλοιπες με συνέπεια τόξων, αφού αναθέσουμε τιμές (MAC). Θα εξετάσουμε πρώτα τις μεταβλητές X3 και Χ4 για τον περιορισμό Το Ε ακολουθεί το Α ή το Σ. Για να έχουν συνέπεια τόξου θα πρέπει dx3 D(X3) να dx4 D(X4) τέτοια ώστε {x3 dx3, x4 dx4} να αποτελεί λύση του περιορισμού c και θα πρέπει dx4 D(X4) να dx3 D(X3) τέτοια ώστε {x3 dx3, x4 dx4}, ώστε αυτά να αποτελούν λύση του περιορισμού. Το ότι το Ε ακολουθεί το Α ή το Σ σημαίνει ότι όπου υπάρχει Ε, ακριβώς στην προηγούμενη θέση θα πρέπει να υπάρχει Α ή Σ. Αυτή η συνέπεια για αυτή τη δυάδα μεταβλητών ικανοποιείται μόνο αν η μεταβλητή Χ3 πάρει την τιμή Α ή Σ, εφόσον η Χ4=Ε (X3 X4). Όλες οι άλλες τιμές από το πεδίο τιμών της Χ3 δεν ικανοποιούν τη συνέπεια κι έτσι θα πρέπει να διαγραφούν. Εφόσον στο πεδίο τιμών της Χ3 δεν υπάρχει το Α, το πεδίο τιμών θα έχει μόνο την τιμή Σ. Για την τιμή Σ ικανοποιείται και ο περιορισμός της Χ4 να είναι Ε(X3 X4) και συνεπώς η συνέπεια τόξου. Συνεπώς, D x3={σ},της αναθέτεται και υπάρχει support στην Χ2. Ομοίως, ακριβώς, D x6={σ}, της αναθέτεται και υπάρχει support στην Χ5. Τώρα, θα εξετάσουμε τη δυάδα μεταβλητών X2 και Χ3 εφόσον οριστικοποιήσαμε την τιμή της Χ3 για τον περιορισμό Το Σ ακολουθεί το Η. Αυτό σημαίνει ότι όπου υπάρχει Σ, ακριβώς μια θέση πριν, θα υπάρχει Η. Για να ικανοποιείται η συνέπεια τόξου, θα πρέπει το Χ2 να πάρει την τιμή Η, αφού είναι η μόνο που μπορεί να αντιστοιχιθεί με την τιμή Σ της Χ3 (X2 X3). Όποιες άλλες τιμές δεν ικανοποιούν αυτόν τον περιορισμό. Συνεπώς μένει μόνο η τιμή Η στο πεδίο τιμών της Χ2. Παρατηρούμε πως αυτή η τιμή της Χ2 που έμεινε δεν παραβιάζει κάποιον περιορισμό στην Χ3 και έτσι μπορεί να αντιστοιχηθεί με αυτή τη φορά (X2 X3). Συνεπώς, D x2={h}, της αναθέτεται και υπάρχει support στην Χ1. Ομοίως, ακριβώς, D x5={h}, της αναθέτεται και υπάρχει support στην Χ4.

Εξετάζοντας τις μεταβλητές Χ7 και Χ8 για τον περιορισμό Το Σ ακολουθεί το Η αναθέτουμε στην μεταβλητή Χ8 την τιμή Σ. Παρατηρούμε πως δεν έχουμε support στη Χ7. Συνεπώς, γυρνάμε πίσω και αναθέτουμε στην Χ8 την τιμή Α όπου υπάρχει support στη Χ7 ικανοποιώντας τη συνέπεια τόξου από Χ8 σε Χ7. Για την τιμή Ε του Χ7 επίσης έχουμε ικανοποίηση της συνέπειας τόξου για αυτόν τον περιορισμό και από τις δύο μεταβλητές τελικώς. Ο τελικός γράφος είναι ο εξής: Συνεπώς, τα τελικά πεδία ορισμών των μεταβλητών μας θα είναι: Dx1={A}, Dx2={H}, Dx3{Σ}, Dx4={E}, Dx5={H}, Dx6={Σ}, Dx7={Ε}, Dx8={Α}.

Με τη συνέπεια κόμβου όπως και με τη συνέπεια τόξου, ο σκοπός είναι να περιοριστεί όσο το δυνατόν γίνεται, το πεδίο ορισμού της κάθε μεταβλητής μέσω των περιορισμών. Όταν ολοκληρωθεί η συνέπεια τόξου, τότε, αν μερικές μεταβλητές έχουν παραπάνω από μια τιμή που μπορούν να πάρουν από το πεδίο ορισμού τους, μπορούμε να ξεκινήσουμε να αναθέτουμε τιμές στις μεταβλητές από τα πεδία ορισμών τους και να τρέχουμε τον αλγόριθμο συνέπειας τόξου για κάθε περιορισμό κι έτσι να αφαιρέσουμε κι άλλες τιμές από τα πεδία τους ώστε να καταλήξουμε πιο γρήγορα σε μια αποδοτική λύση (αλγόριθμος MAC). Βέβαια πολλές φορές όταν κάποιες μεταβλητές έχουν ήδη μόνο μια τιμή στο πεδίο τους που μπορούν να πάρουν, μπορεί να βοηθήσει όπως εδώ να ξεκινήσουμε αμέσως τον MAC για να φθάσουμε λίγο πιο γρήγορα στη λύση. Το κάνουμε αυτό (τον MAC), είτε διότι έτσι μπορεί να εμφανιστούν νέοι περιορισμοί που θα μας βοηθήσουν να μειώσουμε τα πεδία των μεταβλητών που πριν δε φαινόντουσαν (παράδειγμα 4queens), είτε διότι μπορεί να υπήρχαν περιορισμοί οι οποίοι για να δώσουν κάποια λύση θα έπρεπε κάποιες μεταβλητές να είχαν μόνο μια τιμή (βλ.παρακάτω)! Παραπανω, όταν για τις μεταβλητές Χ1,4,7 το πεδίο τιμών τους ήταν μόνο ένα γράμμα, μπορούμε να πούμε ότι έγινε και ανάθεση τιμής, διότι μόνο έτσι μπορέσαμε να δούμε κάποιους περιορισμούς, να ελέγξουμε τη συνέπεια τόξου μετά από ανάθεση τιμής για τις μεταβλητές και να δώσουμε λύση προχωρόντας στις άλλες μεταβλητές. Αν οι μεταβλητές αυτές δεν είχαν μόνο μια τιμή στο πεδίο τιμών τους και δεν είχε γίνει έτσι ανάθεση τιμής, οι περιορισμοί Το Ε ακολουθάει το Σ και Το Σ ακολουθάει το Η δε θα εφαρμοζόντουσαν αμέσως κι έτσι θα δυσκολευόμασταν να βρούμε λύση. Τότε θα έπρεπε να εκτελέσουμε τον MAC και να αναθέσουμε τιμές στις μεταβλητές από τα πεδία ορισμών τους και να κάναμε ελέγχους συνέπειας τόξου ώστε να μπορέσουμε να περιορίσουμε τα πεδία τιμών των άλλων μεταβλητών καταλήξουμε σε λύση. Ο αλγόριθμος MAC μπορεί να αναπαρασταθεί με δέντρο. Εδώ δε χρειάστηκε γιατί η λύση βγήκε αμέσως και δε χρειάστηκε να κάνουμε αναθέσεις τιμών σε μεταβλητές όπου έχουν πεδία με πολλές τιμές! Τώρα πια, βάσει των τελικών πεδίων ορισμών, οι τιμές που απέκτησαν οι μεταβλητές στα πεδία ορισμού τους μέσω του αλγορίθμου MAC, όπου έγινε έλεγχος συνέπειας τόξου για κάθε περιορισμό, είναι και οι τελικές που θα έχουν. Όλοι οι περιορισμοί έχουν ικανοποιηθεί και καταλήγουμε στην τελική λέξη: ΑΗΣΕΗΣΕΑ.