Προσαρμοστικοί αλγόριθμοι για προβλήματα ικανοποίησης περιορισμών : πτυχιακή εργασία

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

Πλήρης περιγραφή

Αποθηκεύτηκε σε:
Λεπτομέρειες βιβλιογραφικής εγγραφής
Κύριος συγγραφέας: Βογιατζής, Αρτέμιος
Συγγραφή απο Οργανισμό/Αρχή: Πανεπιστήμιο Αιγαίου. Σχολή Θετικών Επιστημών. Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων
Μορφή: Thesis Βιβλίο
Γλώσσα:Greek
Δημοσίευση: Καρλόβασι, Σάμος : Πανεπιστήμιο Αιγαίου, Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων, 2007.
Θέματα:
Διαθέσιμο Online:http://hdl.handle.net/11610/8885
Ετικέτες: Προσθήκη ετικέτας
Δεν υπάρχουν, Καταχωρήστε ετικέτα πρώτοι!
Περιγραφή
Περίληψη:Η παρούσα εργασία έχει σαν αντικείμενο την μελέτη αλγορίθμων και ευριστικών μεθόδων για προβλήματα ικανοποίησης περιορισμών. Ο στόχος αυτών των αλγορίθμων είναι η επίλυση των προβλημάτων, δηλαδή η συνεπής (ή μη) ανάθεση μίας τιμής σε κάθε μία από τις μεταβλητές που συμμετέχουν στο πρόβλημα, ή απόδειξη ότι δεν υπάρχει λύση.Οι γνωστοί αλγόριθμοι που εξετάζονται είναι οι MAC και Forward Checking, που ανήκουν στην κατηγορία των look- ahead αλγορίθμων [11]. Οι αλγόριθμοι αυτοί επιλέγουν τις μεταβλητές με κάποια σειρά και κάνουν ανάθεση τιμών σε αυτές έως ότου όλες να έχουν από μία έγκυρη τιμή σύμφωνα με τους περιορισμούς. Μετά από κάθε προσωρινή ανάθεση τιμής σε μία μεταβλητή ο MAC αλγόριθμος εφαρμόζει έλεγχο συνέπειας τόξου (arc consistency) σε ολόκληρο το πρόβλημα, ενώ ο Forward Checking ελέγχει την συμβατότητα μεταξύ της συγκεκριμένης μεταβλητής και των γειτονικών της στις οποίες δεν έχει ανατεθεί τιμή. Αυτό αποτελεί, ουσιαστικά, μία περιορισμένη μορφή ελέγχου συνέπειας τόξου. Σε περίπτωση ασυμβατότητας μελλοντικών τιμών, οι αλγόριθμοι αυτοί αφαιρούν αυτές τις τιμές καθώς δεν θα μπορούν να συμμετέχουν στη λύση του αρχικού προβλήματος. Λόγω κατασκευής λοιπόν, ο ΜΑC αλγόριθμος χρησιμοποιεί το μέγιστο επίπεδο διάδοσης συνέπειας τόξου και ο Forward Checking ένα ασθενέστερο μοντέλο ελέγχου συνέπειας. Σε πολύ εύκολα προβλήματα, ο Forward Checking είναι πιο αποδοτικός του MAC λόγω του λιγότερου χρόνου που χρειάζεται για την επίλυσή τους, καθώς ο MAC εφαρμόζει πάντα πλήρη έλεγχο συνέπειας τόξου και καθυστερεί χωρίς να υπάρχει πραγματική ανάγκη [6]. Σε δύσκολα προβλήματα, ωστόσο, ο Forward Checking αργεί να ανακαλύψει τις ασυνέπειες με αποτέλεσμα ο MAC να είναι αποδοτικότερος μια και εξερευνεί πολύ μικρότερο κομμάτι του χώρου αναζήτησης από ότι ο Forward Checking. Παρουσιάζει ενδιαφέρον να εξετάσουμε αλγορίθμους που κάνουν έλεγχο για παραπάνω από μία μεταβλητή σε κάθε επανάληψη (όπως ο Forward Checking) αλλά δεν εξετάζουν ολόκληρο το πρόβλημα όπως ο MAC. Αυτοί οι αλγόριθμοι εφαρμόζουν έλεγχο συνέπειας τόξου για περιοχές που αποτελούνται από λιγότερες ή το πολύ ίδιες μεταβλητές με τις συνολικές του προβλήματος. Eφαρμόζουν, δηλαδή, λιγότερο ισχυρή διάδοση συνέπειας από αυτήν που χρησιμοποιεί ο MAC και ταυτόχρονα είναι πιο «ισχυροί» του Forward Checking. Οι αλγόριθμοι αυτοί εφαρμόζουν έλεγχο συνέπειας για ένα υποδίκτυο μόνο του αρχικού προβλήματος. Το μέγεθος του υποδικτύου που εξετάζεται βασίζεται στην έννοια της «γειτονιάς», δηλαδή στο σύνολο των μεταβλητών και περιορισμών που βρίσκονται σε κάποια προκαθορισμένη απόσταση από την εκάστοτε μεταβλητή που εξετάζεται. Για την επιλογή της επόμενης, κάθε φορά, μεταβλητής προς εξέταση, μπορεί να εφαρμοστεί μία ευριστική συνάρτηση ώστε να επιλέγεται η μεταβλητή που εμφανίζεται ως η πιο «περιορισμένη». Εξετάζονται δύο τέτοιες συναρτήσεις σε συνδυασμό με τους αλγορίθμους. Η μία βασίζεται σε χαρακτηριστικά κάθε μεταβλητής ξεχωριστά (η ευριστική συνάρτηση dom/deg) και η άλλη λαμβάνει υπ όψιν πληροφορίες για κάποιο τμήμα του συνολικού προβλήματος. Στο παρόν κείμενο παρουσιάζονται τα αποτελέσματα των πειραμάτων για διάφορους συνδυασμούς αλγορίθμων/ ευριστικών συναρτήσεων.
This work includes examination of algorithms used to solve Constraint Satisfaction Problems (CSPs). These problems are considered to be solved when each variable of which they consist is assigned a valid value, thus satisfying all constraints.We use two known algorithms, Forward Checking and MAC. They both belong to look- ahead category of algorithms. These algorithms eliminate inconsistencies found in a subnetwork of the whole problem, since an inconsistent partial instantiation cannot be a part of the problem s solution.We also examine another kind of algorithms, which are more powerful than Forward Checking but weaker than MAC as far as propagation is considered. Forward Checking only checks compatibility between each current variable and its future neighbors. MAC performs a full arc- consistency check (AC- 3) to the whole problem for each variable that is assigned a value. The new kind of algorithms perform a full arc consistency check only for a subnetwork of the whole problem, designated as neighborhood of level- i, meaning the consistency check has a scope of all variables that can be reached from current variable with up to i hops from it.The effectiveness of these algorithms can be improved with the use of variable ordering heuristics. The heuristics are usually based on characteristics of each variable apart. There are other heuristics, though, which are based on characteristics of a wider subset of variables. In this work, we examine one heuristic for each category, dom/deg and heuristic proposed in [1] respectively.The results are based on experiments done using various combinations of algorithms and heuristics.
Περιγραφή τεκμηρίου:Μέλη της εξεταστικής επιτροπής: Στεργίου Κωνσταντίνος, Βούρος Γεώργιος, Σταματάτος Ευστάθιος.
Φυσική περιγραφή:vi, 72 σ. : σχ., διαγρ. ; 30 εκ.
Βιβλιογραφία:Βιβλιογραφία: σ. 72.
Πρόσβαση:Διάθεση πλήρους κειμένου ;