2022Unpublished venueRequires access

Constraint programming

Νικόλαος Ποθητός

Open publisher page 0 citations

Abstract

Ο Προγραμματισμός με Περιορισμούς (Constraint Programming) αποσκοπεί στην εύκολη διατύπωση και γρήγορη επίλυση των λεγόμενων Προβλημάτων Ικανοποίησης Περιορισμών (Constraint Satisfaction Problems – CSPs) όπως η κατάστρωση ωρολογίων προγραμμάτων, η ανάθεση συχνοτήτων σε ραδιοφωνικούς σταθμούς χωρίς παρεμβολές μεταξύ τους κ.ά. Για την επίλυση των προβλημάτων, ο Προγραμματισμός με Περιορισμούς βασίζεται στις μεθόδους αναζήτησης (search methods) και στη διάδοση περιορισμών (constraint propagation). Η διατριβή αυτή συνεισφέρει και στους δύο αυτούς πυλώνες. Πιο συγκεκριμένα: (i) Αναπτύσσουμε καινούργιες μεθόδους αναζήτησης που βασίζονται σε καινοτόμους ευρετικούς κανόνες. Οι κανόνες αυτοί υλοποιούν τη βαθμιαία τυχαιοποίηση των ντετερμινιστικών ευρετικών κανόνων. Δημιουργούμε ένα υβρίδιο με στόχο την εκμετάλλευση των πλεονεκτημάτων τόσο των ντετερμινιστικών όσο και των τυχαίων ευρετικών κανόνων. (ii) Αξιοποιούμε το πλαίσιο MapReduce προκειμένου να επιταχύνουμε και να κατανείμουμε την αναζήτηση λύσης ενός Προβλήματος Ικανοποίησης Περιορισμών σε όλους τους επιλυτές-εργάτες που τυχαίνει να έχουμε στη διάθεσή μας. (iii) Αναδεικνύουμε τα πλεονεκτήματα των χαλαρών επιπέδων διάδοσης περιορισμών, όπως η συνέπεια ορίων (bounds consistency) έναντι υψηλότερων επιπέδων όπως η συνέπεια ακμών (arc consistency). Προτείνουμε καινούργιες μορφές χαλαρών επιπέδων διάδοσης περιορισμών και συγκρίνουμε την απόδοσή τους σε σχέση με τα υψηλότερα επίπεδα διάδοσης περιορισμών, τόσο θεωρητικά όσο και πρακτικά. Απαντάμε στην ερώτηση για το πότε συμφέρει να χρησιμοποιούμε χαλαρά επίπεδα διάδοσης περιορισμών. Οι συνεισφορές μας δοκιμάστηκαν ως επί το πλείστον σε Προβλήματα Ικανοποίησης Περιορισμών από τον πραγματικό κόσμο, αλλά και σε μια ευρύτερη γκάμα προβλημάτων που χρησιμοποιούνται σε επίσημους διαγωνισμούς επιλυτών Προγραμματισμού με Περιορισμούς. Ένας τέτοιος πρακτικός επιλυτής ανοικτού κώδικα είναι ο Naxos Solver που χρησιμοποιήσαμε ως το πεδίο εφαρμογής των πειραμάτων.

About this research paper

What this paper is about

Ο Προγραμματισμός με Περιορισμούς (Constraint Programming) αποσκοπεί στην εύκολη διατύπωση και γρήγορη επίλυση των λεγόμενων Προβλημάτων Ικανοποίησης Περιορισμών (Constraint Satisfaction Problems – CSPs) όπως η κατάστρωση ωρολογίων προγραμμάτων, η ανάθεση συχνοτήτων σε ραδιοφωνικούς σταθμούς χωρίς παρεμβολές μεταξύ τους κ.ά. Για την επίλυση των προβλημάτων, ο Προγραμματισμός με Περιορισμούς βασίζεται στις μεθόδους αναζήτησης (search methods) και στη διάδοση περιορισμών (constraint propagation). Η διατριβή αυτή συνεισφέρει και στους δύο αυτούς πυλώνες. Πιο συγκεκριμένα: (i) Αναπτύσσουμε καινούργιες μεθόδους αναζήτησης που βασίζονται σε καινοτόμους ευρετικούς κανόνες. Οι κανόνες αυτοί υλοποιούν τη βαθμιαία τυχαιοποίηση των ντετερμινιστικών ευρετικών κανόνων. Δημιουργούμε ένα υβρίδιο με στόχο την εκμετάλλευση των πλεονεκτημάτων τόσο των ντετερμινιστικών όσο και των τυχαίων ευρετικών κανόνων. (ii) Αξιοποιούμε το πλαίσιο MapReduce προκειμένου να επιταχύνουμε και να κατανείμουμε την αναζήτηση λύσης ενός Προβλήματος Ικανοποίησης Περιορισμών σε όλους τους επιλυτές-εργάτες που τυχαίνει να έχουμε στη διάθεσή μας. (iii) Αναδεικνύουμε τα πλεονεκτήματα των χαλαρών επιπέδων διάδοσης περιορισμών, όπως η συνέπεια ορίων (bounds consistency) έναντι υψηλότερων επιπέδων όπως η συνέπεια ακμών (arc consistency). Προτείνουμε καινούργιες μορφές χαλαρών επιπέδων διάδοσης περιορισμών και συγκρίνουμε την απόδοσή τους σε σχέση με τα υψηλότερα επίπεδα διάδοσης περιορισμών, τόσο θεωρητικά όσο και πρακτικά. Απαντάμε στην ερώτηση για το πότε συμφέρει να χρησιμοποιούμε χαλαρά επίπεδα διάδοσης περιορισμών. Οι συνεισφορές μας δοκιμάστηκαν ως επί το πλείστον σε Προβλήματα Ικανοποίησης Περιορισμών από τον πραγματικό κόσμο, αλλά και σε μια ευρύτερη γκάμα προβλημάτων που χρησιμοποιούνται σε επίσημους διαγωνισμούς επιλυτών Προγραμματισμού με Περιορισμούς. Ένας τέτοιος πρακτικός επιλυτής ανοικτού κώδικα είναι ο Naxos Solver που χρησιμοποιήσαμε ως το πεδίο εφαρμογής των πειραμάτων.

Why it matters

A significance statement is not available in the OpenAlex record.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available abstract

Ο Προγραμματισμός με Περιορισμούς (Constraint Programming) αποσκοπεί στην εύκολη διατύπωση και γρήγορη επίλυση των λεγόμενων Προβλημάτων Ικανοποίησης Περιορισμών (Constraint Satisfaction Problems – CSPs) όπως η κατάστρωση ωρολογίων προγραμμάτων, η ανάθεση συχνοτήτων σε ραδιοφωνικούς σταθμούς χωρίς παρεμβολές μεταξύ τους κ.ά. Για την επίλυση των προβλημάτων, ο Προγραμματισμός με Περιορισμούς βασίζεται στις μεθόδους αναζήτησης (search methods) και στη διάδοση περιορισμών (constraint propagation). Η διατριβή αυτή συνεισφέρει και στους δύο αυτούς πυλώνες. Πιο συγκεκριμένα: (i) Αναπτύσσουμε καινούργιες μεθόδους αναζήτησης που βασίζονται σε καινοτόμους ευρετικούς κανόνες. Οι κανόνες αυτοί υλοποιούν τη βαθμιαία τυχαιοποίηση των ντετερμινιστικών ευρετικών κανόνων. Δημιουργούμε ένα υβρίδιο με στόχο την εκμετάλλευση των πλεονεκτημάτων τόσο των ντετερμινιστικών όσο και των τυχαίων ευρετικών κανόνων. (ii) Αξιοποιούμε το πλαίσιο MapReduce προκειμένου να επιταχύνουμε και να κατανείμουμε την αναζήτηση λύσης ενός Προβλήματος Ικανοποίησης Περιορισμών σε όλους τους επιλυτές-εργάτες που τυχαίνει να έχουμε στη διάθεσή μας. (iii) Αναδεικνύουμε τα πλεονεκτήματα των χαλαρών επιπέδων διάδοσης περιορισμών, όπως η συνέπεια ορίων (bounds consistency) έναντι υψηλότερων επιπέδων όπως η συνέπεια ακμών (arc consistency). Προτείνουμε καινούργιες μορφές χαλαρών επιπέδων διάδοσης περιορισμών και συγκρίνουμε την απόδοσή τους σε σχέση με τα υψηλότερα επίπεδα διάδοσης περιορισμών, τόσο θεωρητικά όσο και πρακτικά. Απαντάμε στην ερώτηση για το πότε συμφέρει να χρησιμοποιούμε χαλαρά επίπεδα διάδοσης περιορισμών. Οι συνεισφορές μας δοκιμάστηκαν ως επί το πλείστον σε Προβλήματα Ικανοποίησης Περιορισμών από τον πραγματικό κόσμο, αλλά και σε μια ευρύτερη γκάμα προβλημάτων που χρησιμοποιούνται σε επίσημους διαγωνισμούς επιλυτών Προγραμματισμού με Περιορισμούς. Ένας τέτοιος πρακτικός επιλυτής ανοικτού κώδικα είναι ο Naxos Solver που χρησιμοποιήσαμε ως το πεδίο εφαρμογής των πειραμάτων.

Key concepts: Local consistency, Constraint programming, Constraint satisfaction problem, Constraint satisfaction, Constraint logic programming, Constraint (computer-aided design), Consistency (knowledge bases), Concurrent constraint logic programming

Related papers

Back to paper searchBrowse research topicsOriginal source
Constraint programming — Research Paper | ScholarLens