1 / 30

Γλώσσες περιορισμών

Γλώσσες περιορισμών. Τι είναι οι περιορισμοί( constraints)? Μοντελοποίηση περιορισμών Επίλυση περιορισμών Δένδρα περιορισμών Άλλες περιοχές περιορισμών Properties of constraint solving. Περιορισμοί. Μεταβλητές: αποθήκευση τιμών. Συναρτησιακά σύμβολα : αντιστοίχιση τιμών σε τιμές.

reed-gamble
Download Presentation

Γλώσσες περιορισμών

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Γλώσσες περιορισμών • Τι είναι οι περιορισμοί(constraints)? • Μοντελοποίηση περιορισμών • Επίλυση περιορισμών • Δένδρα περιορισμών • Άλλες περιοχές περιορισμών • Properties of constraint solving

  2. Περιορισμοί Μεταβλητές: αποθήκευση τιμών Συναρτησιακά σύμβολα: αντιστοίχιση τιμών σε τιμές Σχεσιακά σύμβολα: σχέσεις μεταξύ τιμών

  3. Περιορισμοί Στοιχειώδης περιορισμοί : σχέσεις περιορισμών με ορίσματα unary binary Περιορισμοί: συνένωση στοιχειωδών περιορισμών

  4. Ικανοποιησιμότητα Αποτίμηση: ανάθεση τιμών στις μεταβλητές Επίλυση: αποτίμηση που ικανοποιεί τους περιορισμούς

  5. Ικανοποιησιμότητα Ικανοποίησιμη: ο περιορισμός έχει λύση Μη ικανοποίησιμη : ο περιορισμός δεν έχει λύση ικανοποιήσιμη Μη ικανοποιήσιμη

  6. Σύνταξη περιορισμών • Οι περιορισμοί είναι συμβολοσειρές • Οι αγκύλες δεν επηρεάζουν (δεν τις χρησιμοποιούμε) • Η σειρά επηρεάζει • Μερικοί αλγόριθμοι εξαρτώνται από την σειρά

  7. Ισοδυναμία περιορισμών Δύο διαφορετικοί περιορισμοί μπορεί να αναπαριστούν την ίδια πληροφορία Δύο περιοριμοί είναι ισοδύναμοι όταν έχουν το ίδιο σύνολο λύσεων

  8. Μοντελοποίηση χρησιμοποιώντας περιορισμούς • Οι περιορισμοί περιγράφουν ιδεατές συμπεριφορές αντικειμένων στον πραγματικό κόσμο

  9. Ικανοποίηση περιορισμών • Δοθέντος ενός περιορισμού C έχουμε δύο ερωτήσεις • ικανοποίησιμη: έχει λύση; • επίλυση: δώσε μου μία λύση, εάν υπάρχει; • Το πρώτο είναι πιο βασικό • Ένα σύστημα επίλυσης περιορισμών απαντάει το ερώτημα της ικανοποιησιμότητας

  10. Ικανοποίηση περιορισμών • Πως απαντάμε την ερώτηση; • Απλή προσέγγιση: αποτίμηση όλων των πιιθανών τιμών(genarate & test)

  11. Generate & Test • Πιθανώς; η πιο γενική μέθοδος επίλυσης • Αλγόριθμος: generate labelling test ικανοποιησιμότητας Μειονεκτήματα: Βελτιώσεις: blind generator smart generator --> local search αργή εξαγωγή έλεγχος κατά την εξαγωγή ασυνεπειών --> backtracking

  12. Systematic Search Methods Backtracking (BT) • incrementally extends a partial solution towards a complete solution • Algorithm: assign value to variable check consistency until all variables labelled • Drawbacks: • thrashing • redundant work • late detection of conflict A 1 B 2 1 C 2 1 1 D 2 2 1 1 1  A = D, B  D, A+C < 4

  13. Systematic Search Methods GT & BT - Example • Problem:X::{1,2}, Y::{1,2}, Z::{1,2}X = Y, X  Z, Y > Z generate & test backtracking

  14. Consistency Techniques • removing inconsistent values from variables’ domains • graph representation of the CSP • binary and unary constraints only (no problem!) • nodes = variables • edges = constraints • node consistency (NC) • arc consistency (AC) • path consistency (PC) • (strong) k-consistency A>5 A A<C AB C B B=C

  15. Consistency Techniques Arc Consistency (AC) • the most widely used consistency technique (good simplification/performance ratio) • deals with individual binary constraints • repeated revisions of arcs • AC-3, AC-4, Directional AC a b c a b c a b c Y X Z

  16. Consistency Techniques AC - Example • Problem:X::{1,2}, Y::{1,2}, Z::{1,2}X = Y, X  Z, Y > Z X X 1 2 1 2 1 2 1 2 Y Y 1 2 1 2 Z Z

  17. Consistency Techniques Is AC enough? • empty domain => no solution • cardinality of all domains is 1 => solution • Problem:X::{1,2}, Y::{1,2}, Z::{1,2}X  Y, X  Z, Y  Z X 1 2 1 2 Y Z 1 2

  18. Consistency Techniques Path Consistency (PC) V2 • consistency along the path only • checking paths of length 2 is enough • Plus/Minus + detects more inconsistencies than AC - extensional representation of constraints - changes in graph connectivity • Directional PC, Restricted PC V4 V3 V5 V0 V1 ???

  19. Consistency Techniques K -consistency • K-consistency • consistent valuation o (K-1) variables can be extended to K-th variable • strong K-consistency J-consistency for each JK • NC  strong 1-consistency • AC  strong 2-consistency • PC  strong 3-consistency

  20. Ικανοποίηση περιορισμών • Η απλή προσέγγιση δεν δουλεύει για προβλήματα του πραγματικού κόσμου • Μία πιο έξυπνη έκδοση χρησιμοποιείται για περιορισμούς με πεπερασμένο πεδίο ορισμού • Gauss-Jordan σχήμα απαλοιφής

  21. Gauss-Jordan σχήμα απαλοιφής • Επιλογή εξίσωσης c από C • Ξαναγράψε c στη μορφή x = e • Αντικατέστησε το x παντού στη C με e • Επανέλαβε μέχρι • όλες οι εξισώσεις να είναι της μορφής x = e • η μια εξίσωση είναι ισοδύναμη με d = 0 (d != 0) • Επέστρεψε True στην πρώτη περίπτωση αλλιώς False

  22. Gauss-Jordan Παράδειγμα 1 Αντικατάστησε X με 2Y+Z-1 Αντικατάστησε Y με -1 Επέστρεψε false

  23. Gauss-Jordan Example 2 Αντικατάστησε X με 2Y+Z-1 Αντικατάστησε Y με -1 Επίλυση μορφής: περιορισμοί αυτής της μορφής είναι ικανοποιήσιμοι

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

  25. Πηγές • Τεχνητή Νοημοσύνη • Scene Labelling • Λογικός Προγραμματισμός • unification --> constraint solving • Γραφικές αλληλεπιδράσεις • Sketchpad • ThingLab • Επιχειρησιακή Έρευνα • NP-hard combinatorial problems

  26. Εφαρμογές • Προβλήματα Ανάθεσης • τοποθεσία κατασκευής αεροδρόμιων • αγκυροβόλιο πλοίου • προσωπική ανάθεση • κατάλογος νοσοκόμων • ανάθεση πληρομάτων πτήσεων • διαχείριση και διαμόρφωση δικτύων • σχεδιασμός καλοδίωσης σε τηλεπικοινωνιακά δίκτυα • βέλτιστη τοποθέτητση σταθμών σε ασύρματα δίκτυα • μοριακή βιολογία • DNA ακολουθίας • αναλογικός και ψηφιακός σχεδιασμός κυκλωμάτων

  27. Εφαρμογές σε Χρονοδιαγράμματα • η πιο επιτυχής περιοχή εφαρμογών • χρονοδιάγραμμα παραγωγής • σχεδιασμός παραγωγής αεροπλάνων (Dassault Aviation)

  28. Μειονεκτήματα • NP-hard προβλήματα • μη προβλέψιμη συμπεριφορά • σταθερότητα μοντελοποίησης • πολύ ψηλό επίπεδο (νέοι περιορισμοί, επιλυτές) • πολύ χαμηλό επίπεδο (μοντελοποίηση) • πολύ τοπικό • μη αυξητικοί (rescheduling) • αδυναμία συνεργασίας επιλυτών

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

  30. Κατευθύνσεις • μοντελοποίηση • καθολικούς περιορισμούς (όλοι διαφορετικοί) • μοντελοποίηση γλωσσών (Numerica, VisOpt) • κατανοητή μελέτη • οπτικοποίηση, αποτελεσματικό debugging • υβριδικοί αλγόριθμοι • συνεργασία επιλυτών • παραλληλισμός • multi-agent τεχνολογία

More Related