Προβλήματα Ικανοποίησης Περιορισμών Ασκήσεις
2 Άσκηση 5.2 Πόσες λύσεις έχει το πρόβλημα χρωματισμού του παρακάτω χάρτη; Πόσες λύσεις έχει το πρόβλημα χρωματισμού του παρακάτω χάρτη;
3 Άσκηση 5.2 Υπάρχουν 18 διαφορετικές λύσεις: Υπάρχουν 18 διαφορετικές λύσεις: Ξεκινήστε με το SA που μπορεί να πάρει οποιοδήποτε από τα τρία χρώματα Ξεκινήστε με το SA που μπορεί να πάρει οποιοδήποτε από τα τρία χρώματα Στη συνέχεια το WA μπορεί να πάρει οποιοδήποτε από τα υπόλοιπα 2 χρώματα Στη συνέχεια το WA μπορεί να πάρει οποιοδήποτε από τα υπόλοιπα 2 χρώματα Για τους υπόλοιπους κόμβους το χρώμα είναι πια καθορισμένο (γιατί;) Για τους υπόλοιπους κόμβους το χρώμα είναι πια καθορισμένο (γιατί;) Η Τασμανία μπορεί να πάρει οποιοδήποτε από τα τρία χρώματα Η Τασμανία μπορεί να πάρει οποιοδήποτε από τα τρία χρώματα Επομένως: 3 2 3=18 Επομένως: 3 2 3=18
4 Άσκηση 5.5 Δώστε μια ακριβή διατύπωση για το παρακάτω πρόβλημα ικανοποίησης περιορισμών: Δώστε μια ακριβή διατύπωση για το παρακάτω πρόβλημα ικανοποίησης περιορισμών: Ορθογώνιος σχεδιασμός δαπέδου: Ορθογώνιος σχεδιασμός δαπέδου: Βρείτε μη επικαλυπτόμενες θέσεις μέσα σε ένα μεγάλο ορθογώνιο για ένα δεδομένο αριθμό μικρότερων ορθογωνίων Βρείτε μη επικαλυπτόμενες θέσεις μέσα σε ένα μεγάλο ορθογώνιο για ένα δεδομένο αριθμό μικρότερων ορθογωνίων
5 Άσκηση 5.5 Μια διατύπωση είναι η εξής: Μια διατύπωση είναι η εξής: Χρησιμοποιούμε μία μεταβλητή για κάθε μικρό ορθογώνιο Χρησιμοποιούμε μία μεταβλητή για κάθε μικρό ορθογώνιο Κάθε μεταβλητή είναι ένα διάνυσμα τεσσάρων τιμών [x 1, y 1, x 2, y 2 ] – οι τιμές της είναι οι συντεταγμένες του άνω αριστερά και του κάτω δεξιά χώρου στον οποίο θα τοποθετηθεί το ορθογώνιο Κάθε μεταβλητή είναι ένα διάνυσμα τεσσάρων τιμών [x 1, y 1, x 2, y 2 ] – οι τιμές της είναι οι συντεταγμένες του άνω αριστερά και του κάτω δεξιά χώρου στον οποίο θα τοποθετηθεί το ορθογώνιο Το πεδίο ορισμού κάθε μεταβλητής είναι το σύνολο των διανυσμάτων που μπορεί να πάρει – μέγεθος μικρού ορθογωνίου και θέση μέσα στο δάπεδο Το πεδίο ορισμού κάθε μεταβλητής είναι το σύνολο των διανυσμάτων που μπορεί να πάρει – μέγεθος μικρού ορθογωνίου και θέση μέσα στο δάπεδο
6 Άσκηση 5.5 Περιορισμοί: Περιορισμοί: Δύο ορθογώνια δε γίνεται να επικαλύπτονται Δύο ορθογώνια δε γίνεται να επικαλύπτονται Για παράδειγμα: Για παράδειγμα: Εάν η τιμή της μεταβλητής R 1 είναι [5, 8, 9, 6], τότε καμία άλλη μεταβλητή δεν μπορεί να πάρει κάποια τιμή που να επικαλύπτεται με το ορθογώνιο με συντεταγμένες [5, 8] και [9, 6] για το άνω αριστερά και το κάτω δεξιά άκρο, αντίστοιχα. Εάν η τιμή της μεταβλητής R 1 είναι [5, 8, 9, 6], τότε καμία άλλη μεταβλητή δεν μπορεί να πάρει κάποια τιμή που να επικαλύπτεται με το ορθογώνιο με συντεταγμένες [5, 8] και [9, 6] για το άνω αριστερά και το κάτω δεξιά άκρο, αντίστοιχα.
7 Άσκηση 5.11 Δείξτε πως ένας τριαδικός περιορισμός, όπως ο “A+B=C”, μπορεί να μετατραπεί σε τρεις δυαδικούς περιορισμούς με τη χρήση μιας βοηθητικής μεταβλητής. Μπορείτε να θεωρήσετε τα πεδία πεπερασμένα Δείξτε πως ένας τριαδικός περιορισμός, όπως ο “A+B=C”, μπορεί να μετατραπεί σε τρεις δυαδικούς περιορισμούς με τη χρήση μιας βοηθητικής μεταβλητής. Μπορείτε να θεωρήσετε τα πεδία πεπερασμένα Υπόδειξη Υπόδειξη Σκεφτείτε μια νέα μεταβλητή που παίρνει τιμές οι οποίες είναι ζεύγη άλλων τιμών και εξετάστε περιορισμούς όπως “το Χ είναι το πρώτο στοιχείο του ζεύγους Υ” Σκεφτείτε μια νέα μεταβλητή που παίρνει τιμές οι οποίες είναι ζεύγη άλλων τιμών και εξετάστε περιορισμούς όπως “το Χ είναι το πρώτο στοιχείο του ζεύγους Υ”
8 Άσκηση 5.11 Εισάγουμε μια καινούρια μεταβλητή την ΑΒ Εισάγουμε μια καινούρια μεταβλητή την ΑΒ Αν το πεδίο τιμών των Α και Β είναι το Ν, τότε το πεδίο τιμών της ΑΒ είναι το Ν Ν Αν το πεδίο τιμών των Α και Β είναι το Ν, τότε το πεδίο τιμών της ΑΒ είναι το Ν Ν Τώρα, έχουμε τρεις δυαδικούς περιορισμούς: Τώρα, έχουμε τρεις δυαδικούς περιορισμούς: Έναν ανάμεσα στη μεταβλητή Α και τη μεταβλητή ΑΒ Έναν ανάμεσα στη μεταβλητή Α και τη μεταβλητή ΑΒ Έναν ανάμεσα στη μεταβλητή Β και τη μεταβλητή ΑΒ Έναν ανάμεσα στη μεταβλητή Β και τη μεταβλητή ΑΒ Έναν ανάμεσα στη μεταβλητή ΑΒ και τη μεταβλητή C Έναν ανάμεσα στη μεταβλητή ΑΒ και τη μεταβλητή C Όλοι οι τριαδικοί περιορισμοί μπορούν να αντικατασταθούν αντίστοιχα Όλοι οι τριαδικοί περιορισμοί μπορούν να αντικατασταθούν αντίστοιχα
9 Άσκηση 5.11 Δείξτε πως ένας περιορισμός με τέσσερις μεταβλητές A, B, C, D μπορεί να μετατραπεί σε δυαδικούς περιορισμούς (πόσους;) με τη χρήση βοηθητικών μεταβλητών. Μπορείτε να θεωρήσετε τα πεδία πεπερασμένα Δείξτε πως ένας περιορισμός με τέσσερις μεταβλητές A, B, C, D μπορεί να μετατραπεί σε δυαδικούς περιορισμούς (πόσους;) με τη χρήση βοηθητικών μεταβλητών. Μπορείτε να θεωρήσετε τα πεδία πεπερασμένα
10 Άσκηση 5.11 Αρχικά, εισάγουμε τη μεταβλητή ΑΒ και έχουμε τρεις δυαδικούς περιορισμούς μεταξύ των μεταβλητών Α, Β και C και έναν τριαδικό μεταξύ των μεταβλητών AB, C και D Αρχικά, εισάγουμε τη μεταβλητή ΑΒ και έχουμε τρεις δυαδικούς περιορισμούς μεταξύ των μεταβλητών Α, Β και C και έναν τριαδικό μεταξύ των μεταβλητών AB, C και D Στη συνέχεια, εισάγουμε τη μεταβλητή CD και έχουμε τρεις δυαδικούς περιορισμούς μεταξύ των μεταβλητών ΑΒ, C και D Στη συνέχεια, εισάγουμε τη μεταβλητή CD και έχουμε τρεις δυαδικούς περιορισμούς μεταξύ των μεταβλητών ΑΒ, C και D Πόσους δυαδικούς περιορισμούς έχουμε; Πόσους δυαδικούς περιορισμούς έχουμε;
11 Άσκηση 5.13 Εξετάστε τον παρακάτω λογικό γρίφο: Εξετάστε τον παρακάτω λογικό γρίφο: «Σε πέντε σπίτια, κάθε ένα με διαφορετικό χρώμα, ζουν 5 άτομα διαφορετικής εθνικότητας κάθε ένα από τα οποία προτιμά διαφορετική μάρκα τσιγάρων, διαφορετικό ποτό και διαφορετικό κατοικίδιο ζώο» «Σε πέντε σπίτια, κάθε ένα με διαφορετικό χρώμα, ζουν 5 άτομα διαφορετικής εθνικότητας κάθε ένα από τα οποία προτιμά διαφορετική μάρκα τσιγάρων, διαφορετικό ποτό και διαφορετικό κατοικίδιο ζώο» Με δεδομένα τα παρακάτω γεγονότα, απαντήστε στην εξής ερώτηση: Με δεδομένα τα παρακάτω γεγονότα, απαντήστε στην εξής ερώτηση: «Που ζει η ζέβρα και σε ποιο σπίτι πίνουν νερό;» «Που ζει η ζέβρα και σε ποιο σπίτι πίνουν νερό;»
12 Άσκηση 5.13 Δεδομένα: Ο Άγγλος μένει στο κόκκινο σπίτι Ο Άγγλος μένει στο κόκκινο σπίτι Ο Ισπανός έχει το σκύλο Ο Ισπανός έχει το σκύλο Ο Νορβηγός μένει στο πρώτο σπίτι από τα αριστερά Ο Νορβηγός μένει στο πρώτο σπίτι από τα αριστερά Στο κίτρινο σπίτι καπνίζουν Kools Στο κίτρινο σπίτι καπνίζουν Kools Αυτός που καπνίζει Chesterfields μένει δίπλα σε εκείνον που έχει την αλεπού Αυτός που καπνίζει Chesterfields μένει δίπλα σε εκείνον που έχει την αλεπού Ο Νορβηγός μένει δίπλα στο μπλε σπίτι Ο Νορβηγός μένει δίπλα στο μπλε σπίτι Αυτός που καπνίζει Winston έχει τα σαλιγκάρια Αυτός που καπνίζει Winston έχει τα σαλιγκάρια Αυτός που καπνίζει Lucky Strike πίνει πορτοκαλάδα Αυτός που καπνίζει Lucky Strike πίνει πορτοκαλάδα Ο Ουκρανός πίνει τσάι Ο Ουκρανός πίνει τσάι Ο Γιαπωνέζος καπνίζει Parliaments Ο Γιαπωνέζος καπνίζει Parliaments Αυτός που καπνίζει Kools μένει δίπλα στο σπίτι που έχουν το άλογο Αυτός που καπνίζει Kools μένει δίπλα στο σπίτι που έχουν το άλογο Αυτός που πίνει καφέ μένει στο πράσινο σπίτι Αυτός που πίνει καφέ μένει στο πράσινο σπίτι Το πράσινο σπίτι βρίσκεται ακριβώς δεξιά από το κρεμ σπίτι Το πράσινο σπίτι βρίσκεται ακριβώς δεξιά από το κρεμ σπίτι Αυτός που πίνει γάλα μένει στο μεσαίο σπίτι Αυτός που πίνει γάλα μένει στο μεσαίο σπίτι
13 Άσκηση 5.13 Προτείνετε κάποιες αποδοτικές αναπαραστάσεις για το παραπάνω πρόβλημα Προτείνετε κάποιες αποδοτικές αναπαραστάσεις για το παραπάνω πρόβλημα 1 η αναπαράσταση 1 η αναπαράσταση Μία μεταβλητή για κάθε χρώμα, κατοικίδιο ζώο, ποτό, εθνικότητα και μάρκα τσιγάρων (συνολικά 25 μεταβλητές) Μία μεταβλητή για κάθε χρώμα, κατοικίδιο ζώο, ποτό, εθνικότητα και μάρκα τσιγάρων (συνολικά 25 μεταβλητές) Οι τιμές είναι 1...5, οι οποίες αντιστοιχούν στα σπίτια (δείχνουν σε πιο σπίτι «ανήκει» κάθε μεταβλητή) Οι τιμές είναι 1...5, οι οποίες αντιστοιχούν στα σπίτια (δείχνουν σε πιο σπίτι «ανήκει» κάθε μεταβλητή) 2 η αναπαράσταση 2 η αναπαράσταση Πέντε μεταβλητές για κάθε σπίτι Πέντε μεταβλητές για κάθε σπίτι Μία για το χρώμα, με πεδίο ορισμού το σύνολο των χρωμάτων Μία για το χρώμα, με πεδίο ορισμού το σύνολο των χρωμάτων Μία για την εθνικότητα, με πεδίο ορισμού το σύνολο των εθνικοτήτων Μία για την εθνικότητα, με πεδίο ορισμού το σύνολο των εθνικοτήτων Μία για το κατοικίδιο ζώο, με πεδίο ορισμού το σύνολο των κατοικίδιων Μία για το κατοικίδιο ζώο, με πεδίο ορισμού το σύνολο των κατοικίδιων Μία για το ποτό, με πεδίο ορισμού το σύνολο των ποτών Μία για το ποτό, με πεδίο ορισμού το σύνολο των ποτών Μία για τη μάρκα τσιγάρων, με πεδίο ορισμού το σύνολο των μάρκων τσιγάρων Μία για τη μάρκα τσιγάρων, με πεδίο ορισμού το σύνολο των μάρκων τσιγάρων