Αλγόριθµοι Προσέγγισης για NP- ύσκολα Προβλήµατα

Σχετικά έγγραφα
Προσεγγιστικοί Αλγόριθμοι για NP- ύσκολα Προβλήματα

Αλγόριθμοι Προσέγγισης για NP-Δύσκολα Προβλήματα

για NP-Δύσκολα Προβλήματα

Προσεγγιστικοί Αλγόριθμοι για NP- ύσκολα Προβλήματα

Υπολογιστική Πολυπλοκότητα

Υπολογιστική Πολυπλοκότητα

Προσεγγιστικοί Αλγόριθμοι βασισμένοι σε Γραμμικό Προγραμματισμό

Ασυμπτωτικός Συμβολισμός

Προσεγγιστικοί Αλγόριθμοι βασισμένοι σε Γραμμικό Προγραμματισμό

Προσεγγιστικοί Αλγόριθμοι

Υπολογιστική Πολυπλοκότητα

Ασυμπτωτικός Συμβολισμός

Υπολογιστικό Πρόβληµα

Προσεγγιστικοί Αλγόριθμοι

Ασυμπτωτικός Συμβολισμός

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

Πολυπλοκότητα. Παράμετροι της αποδοτικότητας ενός αλγόριθμου: Χρόνος εκτέλεσης. Απαιτούμενοι πόροι, π.χ. μνήμη, εύρος ζώνης. Προσπάθεια υλοποίησης

Μη Ντετερμινισμός και NP-Πληρότητα

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

Προσεγγιστικοί Αλγόριθμοι βασισμένοι σε Γραμμικό Προγραμματισμό

NP-πληρότητα. Λεωνίδας Παληός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων

Μη Ντετερμινισμός και NP-Πληρότητα

Κλάση NP, NP-Complete Προβλήματα

Κεφάλαιο 1. Πέντε Αντιπροσωπευτικά Προβλήματα. Έκδοση 1.4, 30/10/2014. Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιμότητα. Παύλος Εφραιμίδης V1.1,

Προσεγγιστικοί Αλγόριθμοι

Μη Ντετερμινισμός και NP-Πληρότητα

υναμικός Προγραμματισμός

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

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιμότητα. Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιµότητα. Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Κλάσεις Πολυπλοκότητας

Προσεγγιστικοί Αλγόριθμοι βασισμένοι σε Γραμμικό Προγραμματισμό

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

υναμικός Προγραμματισμός

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 5: ΚΑΤΗΓΟΡΙΕΣ ΑΛΓΟΡΙΘΜΙΚΩΝ ΠΡΟΒΛΗΜΑΤΩΝ-ΑΝΑΓΩΓΗ

Προηγμένα Θέματα Αλγορίθμων (ΣΗΜΜΥ ΕΜΠ) Αλγόριθμοι Δικτύων και Πολυπλοκότητα (ΕΜΠ - ΑΛΜΑ) Προσεγγιστικοί Αλγόριθμοι.

Κατώτερα φράγματα Κατώτερο φράγμα: εκτίμηση της ελάχιστης εργασίας που απαιτείται για την επίλυση ενός προβλήματος. Παραδείγματα: Αριθμός συγκρίσεων π

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

Δυναμικός Προγραμματισμός

Δυναμικός Προγραμματισμός

Προσεγγιστικοί Αλγόριθμοι βασισμένοι σε Γραμμικό Προγραμματισμό

υναμικός Προγραμματισμός

Αλγόριθµοι Γραφηµάτων

Ακέραιος Γραµµικός Προγραµµατισµός

Θεωρία Υπολογισμού και Πολυπλοκότητα

Ακέραιος Γραµµικός Προγραµµατισµός

Μοντελοποίηση προβληµάτων

Δυναμικός Προγραμματισμός

Εισαγωγή στην Επιστήμη των Υπολογιστών

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

Γράφοι: κατευθυνόμενοι και μη

Εισαγωγή στην Επιστήμη των Υπολογιστών

Δυϊκότητα. Δημήτρης Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Εθνικό Μετσόβιο Πολυτεχνείο

HY118- ιακριτά Μαθηµατικά. Θεωρία γράφων / γραφήµατα. Τι είδαµε την προηγούµενη φορά. Συνεκτικότητα Γράφοι

Συντομότερες Διαδρομές

Συντομότερες ιαδρομές

ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ

Γράφοι. Ένας γράφος ή αλλιώς γράφηµα αποτελείται απο. Εφαρµογές: Τηλεπικοινωνιακά και Οδικά ίκτυα, Ηλεκτρονικά Κυκλώµατα, Β.. κ.ά.

Chapter 7, 8 : Time, Space Complexity

Συντομότερες ιαδρομές

Chapter 7, 8 : Completeness

Γραμμικός Προγραμματισμός

Ενότητα 5: Αλγόριθμοι γράφων και δικτύων

Θεωρία Αποφάσεων και Βελτιστοποίηση

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

ΑΛΓΟΡΙΘΜΟΙ. Ενότητα 11: Περιορισμοί της Αλγοριθμικής Ισχύος

ΣΥΝΔΥΑΣΤΙΚΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ

Συντομότερες ιαδρομές

Θεωρία Υπολογισμού και Πολυπλοκότητα

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

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

Συντομότερες Διαδρομές

Δομές Δεδομένων & Αλγόριθμοι

Κουτσιούμπας Αχιλλέας U. Adamy, C. Ambuehl, R. Anand, T. Erlebach

ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ

ΠΛΗ 20, 4 η ΟΣΣ: Βασικές Έννοιες Θεωρίας Γραφημάτων

Υπολογιστική Πολυπλοκότητα Εξέταση Ιουνίου 2017 Σελ. 1 από 5

Αναζήτηση Κατά Πλάτος

ιδάσκοντες: Φ. Αφράτη,. Φωτάκης,. Σούλιου Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Θεμελιώδη Θέματα Επιστήμης Υπολογιστών

Δομές Δεδομένων και Αλγόριθμοι

viii 20 Δένδρα van Emde Boas 543

ΠΛΕ075: Προηγμένη Σχεδίαση Αλγορίθμων και Δομών Δεδομένων. Λουκάς Γεωργιάδης

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 18: Χρονική και Χωρική Πολυπλοκότητα

HY118-Διακριτά Μαθηματικά. Θεωρία γράφων/ γραφήματα. Τι είδαμε την προηγούμενη φορά. Συνεκτικότητα. 25 -Γράφοι

ΚΕΦΑΛΑΙΟ 12: Θεωρία υπολογισµών

Βασικές Έννοιες Θεωρίας Γραφημάτων

Approximation Algorithms for the k-median problem

Θεωρία Γραφημάτων: Ορολογία και Βασικές Έννοιες

Χρήστος Ι. Σχοινάς Αν. Καθηγητής ΔΠΘ. Συμπληρωματικές σημειώσεις για το μάθημα: «Επιχειρησιακή Έρευνα ΙΙ»

Περιεχόμενα. Εισαγωγή του επιμελητή, Γιάννης Σταματίου 15 Πρόλογος 17 Εισαγωγή 23. Μέρος I. ΕΠΑΝΑΛΗΠΤΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΑΝΑΛΛΟΙΩΤΕΣ ΣΥΝΘΗΚΕΣ

HY118- ιακριτά Μαθηµατικά. Θεωρία γράφων / γραφήµατα. Τι έχουµε δει µέχρι τώρα. Υπογράφηµα Γράφοι

CSC 314: Switching Theory

ΠΛΗ 20, 4 η ΟΣΣ: Βασικές Έννοιες Θεωρίας Γραφημάτων

ILP-Feasibility conp

Υπολογιστική Γεωμετρία

Συστήματα Παραγωγής ΠΑΡΑΔΕΙΓΜΑ ΓΡΑΜΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

Θεωρία Γραφημάτων: Ορολογία και Βασικές Έννοιες

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

Transcript:

Αλγόριθµοι Προσέγγισης για NP- ύσκολα Προβλήµατα Παύλος Σπυράκης Πανεπιστήµιο Πατρών Τοµέας Θεµελιώσεων και Εφαρµογών της Επιστήµης των Υπολογιστών Ερευνητικό Ακαδηµαϊκό Ινστιτούτο Τεχνολογίας Υπολογιστών

Υπολογιστική Πολυπλοκότητα Γιατί µερικά προβλήµατα είναι δύσκολο (ή αδύνατο) να λυθούν από υπολογιστικές µηχανές. Αντικείµενο: Προβλήµατα που (δεν) µπορούν να λυθούν. Επιλύσιµα: υπολογιστικοί πόροι. Ευεπίλυτα: spanning tree, shortest paths, max flow, min-cost flow, linear programming, υσεπίλυτα: TSP, vertex cover, knapsack, scheduling, Επίδραση υπολογιστικού µοντέλου. Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 2

Προβλήµατα και Αλγόριθµοι Αλγόριθµος: λεπτοµερής περιγραφή µεθόδου επίλυσης προβλήµατος από υπολογιστική µηχανή. Πρόβληµα: άπειρο σύνολο στιγµιοτύπων. Αποτελεί αντικείµενο µελέτης. Στιγµιότυπο: µαθηµατικό αντικείµενο για το οποίο κάνουµε ερώτηση και περιµένουµε απάντηση. Προβλήµατα: Βελτιστοποίησης: λύση µε βέλτιστη αντικειµενική τιµή. Απόφασης: απάντηση ΝΑΙ ή ΌΧΙ. Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 3

Προβλήµατα Απόφασης Πρόβληµα απόφασης : Σύνολο στιγµιότυπων Σύνολο (αποδεκτών) λύσεων: εδοµένου Επιδέχεται µόνο δύο απαντήσεων: ΝΑΙ ή ΌΧΙ. Παραδείγµατα προβληµάτων απόφασης: Συνεκτικότητα, κύκλος Euler, κύκλος Hamilton. Ικανοποιησιµότητα λογικών προτάσεων. Κάθε πρόβληµα βελτιστοποίησης: έχει λύση µε αντικειµενική τιµή καλύτερη από Β; Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 4

Αποδοτική Επίλυση: Κλάση P Μέγεθος στιγµιότυπου n : αριθµός bits για αναπαράστασή του. Αλγόριθµος πολυωνυµικού χρόνου λύνει κάθε στιγµιότυπο σε χρόνο O(n d ),dσταθερά. Κλάση P : προβλήµατα απόφασης που επιλύονται από αλγόριθµους πολυωνυµικού χρόνου. Shortest paths, MST, max flow, min cut, min-cost flow, maximum matching, linear programming, Αξίωµα Cook-Karp : κλάση ευεπίλυτων προβληµάτων ταυτίζεται µε κλάση P. Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 5

Αποδοτική Επίλυση: Κλάση P Υπέρ αξιώµατος Cook-Karp: Κλάση P ανεξάρτητη υπολογιστικού µοντέλου. Συνήθως πολυώνυµα µικρού βαθµού (π.χ. n, n 2, n 3 ). ιπλασιασµός υπολογιστικής ισχύος: σηµαντική αύξηση στο µέγεθος στιγµιότυπων που επιλύουµε. Κριτική στο αξίωµα Cook-Karp: Ακραίες περιπτώσεις: πρακτικό το n 100 αλλά όχι το 2 n/100! Γραµµικός Προγραµµατισµός: Simplex εκθετικού χρόνου στη χειρότερη περίπτωση αλλά πολύ γρήγορος στην πράξη. Ελλειψοειδές πολυωνυµικού χρόνου αλλά όχι πρακτικός. Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 6

«ύσκολα» Προβλήµατα Τι κάνουµε όταν ένα πρόβληµα φαίνεται «δύσκολο»; «ύσκολο»: µετά από µεγάλη προσπάθεια, δεν βρίσκουµε αποδοτικό αλγόριθµο (πολυωνυµικού χρόνου). Πάµε στο αφεντικό και λέµε: εν µπορώ να βρω αποδοτικό αλγόριθµο. Απόλυση! εν υπάρχει αποδοτικός αλγόριθµος. Καλό αλλά δύσκολο! Κανένας δεν µπορεί να βρει αποδοτικό αλγόριθµο (και όλοι πιστεύουν ότι δεν υπάρχει). Θεωρία NP-πληρότητας. NP-πλήρη: κλάση εξαιρετικά σηµαντικών προβληµάτων που είτε όλα επιλύονται σε πολυωνυµικό χρόνο είτε κανένα. Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 7

Η Κλάση NP περιλαµβάνει προβλήµατα απόφασης: Για κάθε ΝΑΙ-στιγµιότυπο, υπάρχει «πιστοποιητικό» εύκολο να ελεγχθεί (ελέγχεται σε πολυωνυµικό χρόνο). Συνοπτικό πιστοποιητικό (succinct certificate). Πιστοποιητικό µπορεί να είναι δύσκολο να υπολογισθεί. Αν δοθεί, ελέγχεται εύκολα! εν απαιτείται συνοπτικό πιστοποιητικό για ΌΧΙ-στιγµιότυπα. Κλάση co-np περιλαµβάνει προβλήµατα απόφασης µε συνοπτικό πιστοποιητικό για ΌΧΙ-στιγµιότυπα. Προβλήµατα Ρ ανήκουν ΝΡ Προβλήµατα Ρ ανήκουν co-νρ Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 8

Η Κλάση NP Για σηµαντικότερα προβλήµατα βελτιστοποίησης, αντίστοιχα προβλήµατα απόφασης ανήκουν στο NP. Συντοµότερο s t µονοπάτι µήκους Β? Πιστοποιητικό µονοπάτι µήκους Β. Ελάχιστο Επικαλύπτον έντρο βάρους Β? Πιστοποιητικό επικαλύπτον δέντρο βάρους Β. Υπάρχει κύκλος Hamilton? Περιοδεία Περιοδεύοντος Πωλητή µήκους Β? Πιστοποιητικό περιοδεία µήκους Β. Ελάχιστο Σύνολο Κάλυψης µε #κορυφών Β? Πιστοποιητικό σύνολο κάλυψης µε Β κορυφές. Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 9

NP-Πληρότητα ΝΡ-δύσκολο πρόβληµα Π αν κάθε πρόβληµα Π στο ΝΡ ανάγεται σε πολυωνυµικό χρόνο στο Π. Αναγωγή: αλγόριθµος πολυωνυµικού χρόνου µε ιδιότητα x ΝΑΙ-στιγµ. ανν R(x) ΝΑΙ-στιγµ. Αν Π λύνεται σε πολυωνυµικό χρόνο, Π επίσης! ΝΡ-πλήρες πρόβληµα κάθε ΝΡ-δύσκολο που ανήκει ΝΡ. Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 10

Ρ και ΝΡ Εξ ορισµού Ερώτηµα: Αν, πολλά σηµαντικά προβλήµατα ευεπίλυτα! Αν (όπως όλοι πιστεύουν), κάποια προβλήµατα στο ΝΡ δεν λύνονται σε πολυωνυµικό χρόνο! Εξ ορισµού, τα ΝΡ-πλήρη πρέπει να είναι σε αυτά. NP NP-Πλήρη Προβλήµατα P Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 11

Αντιµετώπιση NP- υσκολίας Αν, όχι αλγόριθµος που για όλα τα στιγµιότυπα υπολογίζει βέλτιστη λύση σε πολυωνυµικό χρόνο. Ευρετικές τεχνικές: συχνά γρήγορα βέλτιστη λύση αλλά και δύσκολα στιγµιότυπα (αργά ή / και όχι βέλτιστη λύση). Τοπική αναζήτηση. Simulated annealing. Γενετικοί αλγόριθµοι. Branch-and-Bound, Branch-and-Cut. Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 12

Αντιµετώπιση NP- υσκολίας Ανάλυση µέσης περίπτωσης / πιθανοτική ανάλυση. Γρήγοροι σε στιγµιότυπα που εµφανίζονται συχνότερα (αργοί µόνο για στιγµιότυπα µε µικρή πιθανότητα). ιαφορά από ευρετικές τεχνικές: θεωρητική ανάλυση. Γνωρίζουµε πιθανότητα και πότε καλή / κακή απόδοση. «Εύκολες» περιπτώσεις. Αλγόριθµοι προσέγγισης [Johnson, Sahni and Gonzalez,, 70 s] Αλγόριθµοι πολυωνυµικού χρόνου (χ.π.). Όχι (πάντα) βέλτιστη λύση. Ανάλυση χειρότερης περίπτωσης ως προς ποιότητα λύσης. Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 13

Αλγόριθµοι Προσέγγισης Απόδοση χειρότερης περίπτωσης γνωστών ευρετικών αλγόριθµων (αρχικά κυρίως άπληστων). Σχεδιασµός poly-time αλγόριθµων που συµπεριφέρονται αποδεδειγµένα καλά για κάθε στιγµιότυπο. Λόγος προσέγγισης Αλγόριθµου Α για πρόβληµα Π (πάντα 1): Προβλήµατος Π: Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 14

Ελάχιστο Σύνολο Κάλυψης Είσοδος: γράφηµα Εφικτή λύση: υποσύνολο κορυφών κάθε ακµή τουλάχιστον ένα άκρο στο είναι σύνολο κάλυψης (vertex cover). Στόχος: σύνολο κάλυψης µε ελάχιστο #κορυφών. ΝΡ-δύσκολο πρόβληµα. Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 15

Ταίριασµα Ταίριασµα : υποσύνολο ακµών χωρίς κοινά άκρα. Για κάθε ταίριασµα Μ, τουλάχιστον ένα από τα άκρα ακµών Μ ανήκει σε κάθε σύνολο κάλυψης: ταίριασµα Μ, ελάχιστο σύνολο κάλυψης C * Μ Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 16

Μεγιστοτικό Ταίριασµα Μεγιστοτικό ταίριασµα : ταίριασµα που αν προσθέσουµε ακµή παύει να είναι ταίριασµα. Μεγιστοτικό ταίριασµα Μ : κάθε ακµή εκτός Μ έχει κοινό άκρο µε ακµή του Μ. Άκρα ακµών µεγιστοτικού ταιριάσµατος Μ συγκροτούν σύνολο κάλυψης C. C = 2 M 2 C * Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 17

Αλγόριθµος ΜΜ Υπολογισµός µεγιστοτικού ταιριάσµατος Μ. Προσθήκη ακµών ενόσω υπάρχουν ακµές που προσθήκη τους δίνει ταίριασµα. Σύνολο κάλυψης C : όλα τα άκρα ακµών Μ. Πολυωνυµικός χρόνος. Ορθότητα : ιδιότητα µεγιστοτικού ταιριάσµατος. Λόγος προσέγγισης = 2. C = 2 M 2 C * (πάνω φράγµα). Παραδείγµατα όπου κόστος ΜΜ διπλάσιο βέλτιστου. Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 18

Βασική Ιδέα (ελαχιστοποίηση) Ξεκινώ από κάτω φράγµα στο κόστος βέλτιστης λύσης. Για κάθε ταίριασµα Μ, C * Μ. Κάτω φράγµα εκφράζεται σαν συνάρτηση κάποιων άλλων παραµέτρων του στιγµιότυπου εισόδου. Πολλές φορές κάτω φράγµα προκύπτει από δυϊκότητα. (Πολυωνυµικός) αλγόριθµος: εφικτή λύση µε κόστος = συνάρτηση των παραµέτρων στο κάτω φράγµα. Μεγιστοτικό ταίριασµα Μ: σύνολο κάλυψης C, C = 2 M. Σύγκριση δίνει άνω φράγµα στο λόγο προσέγγισης. C = 2 M 2 C *. Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 19

Περιοδεύων Πωλητής Είσοδος:nσηµεία µε (συµµετρικές) αποστάσεις τους. Αποστάσεις ικανοποιούν τριγωνική ανισότητα (metric space). Αποδεκτές λύσεις: περιοδείες (µετάθεσεις) n σηµείων. Στόχος: περιοδεία ελάχιστου συνολικού µήκους. µήκους 1 α ζ α ζ µήκους 2 β ε β ε γ δ γ δ Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 20

Κάτω φράγµα Ελάχιστο Επικαλύπτον έντρο (ΕΕ ). Κάθε περιοδεία έχει µήκος βάρος ΕΕ. Περιοδεία ακµή: επικαλύπτον δέντρο. Αλγόριθµος: Τ * ΕΕ βάρους w(t * ) «ιπλασιασµός» ακµών Τ * (άρτιοι βαθµοί) Κύκλος Euler στο διπλασιασµένο Τ * Αποφυγή διπλών εµφανίσεων «κόβοντας» δρόµο. Μήκος 2 w(t * ) λόγω τριγωνικής ανισότητας Λόγος προσέγγισης 2 (tight). β α γ ζ δ ε Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 21

Καλύτερος Αλγόριθµος Αλγόριθµος Χριστοφίδη (1976) Ελάχιστο Επικαλύπτον έντρο. Ταίριασµα ελάχιστου βάρους µεταξύ κορυφών ΕΕ µε περιττό βαθµό. Κύκλος Euler. Περιοδεία µήκους βάρος ΕΕ + βάρος ταιριάσµατος. Λόγος προσέγγισης = 3/2. Μετά 30 χρόνια, καλύτερος γνωστός αλγόριθµος. Υπάρχουν καλύτεροι αλγόριθµοι για ειδικές περιπτώσεις (π.χ. TSP(1, 2), planar TSP, ). Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 22

ροµολόγηση Εργασιών Είσοδος: m ίδιες µηχανές (σύνολο Μ). n εργασίες µεγέθους w 1, w 2,, w n (σύνολο J). Αποδεκτές λύσεις: κάθε δροµολόγηση φ Στόχος: ελαχιστοποίηση µέγιστου φορτίου µηχανής: 1 1 Εργασίες : 1 1 1 1 1 3 1 µηχ. 1 µηχ. 21 µηχ. 32 µηχ. 3 1 1 1 1 3 Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 23

Κάτω φράγµα. 1 1 1 3 1 1 1 µηχ. 1 µηχ. 2 µηχ. 3 Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 24

Αλγόριθµος Graham (1966) Εργασίες µία µία µε σειρά που δίνονται (online). Νέα εργασία σε µηχανή µε ελάχιστο φορτίο (greedy). Άνω φράγµα στο µέγιστο φορτίο: Φορτίο µηχανής i πριν δροµολογηθεί εργασία j : k µηχανή µε µεγαλύτερο φορτίο w λ τελευταία εργασία στην µηχανή k 3 1 1 1 1 1 1 µηχ. 1 µηχ. 2 µηχ. 3 Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 25

Κάλυψη Συνόλου (Set Cover) Σύνολο στοιχείων Μη-κενά υποσύνολα του Κόστος υποσυνόλων: Ζητούµενο: κάλυψηsµε ελάχιστο κόστος. Ελάχιστου κόστους συλλογή υποσυνόλων ΝΡ-δύσκολο πρόβληµα. Απληστία: καλύτερος προσεγγιστικός αλγόριθµος. Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 26

Παράδειγµα S = {1, 2, 3, 4, 5, 6, 7, 8 } X 1 = {1, 2, 3}, X 2 = {2, 3, 4, 8}, X 3 = {3, 4, 5} X 4 = {4, 5, 6}, X 5 = {2, 3, 5, 6, 7}, X 6 = {1, 4, 7, 8} Βέλτιστη λύση: X 5, X 6 Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 27

Άπληστος Αλγόριθµος Σύνολο U ακάλυπτων στοιχείων (αρχικά U = S). Επιλογή υποσυνόλου που ελαχιστοποιεί κόστος ανά ακάλυπτο στοιχείο που καλύπτει: Ενηµέρωση U και συνέχεια ενόσω U δεν είναι κενό. Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 28

Αντιπαράδειγµα εν πλησιάζει τη βέλτιστη λύση! Βέλτιστη λύση έχει κόστος 1+ε. Κόστος άπληστου αλγόριθµου: Παράδειγµα: χειρότερη περίπτωση άπληστου αλγόριθµου. Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 29

Ανάλυση Έστω OPT κόστος βέλτιστης λύσης. Αρχή i-οστής επανάλ.: ακάλυπτα στοιχεία (κάθε προηγούµενη επανάληψη καλύπτει 1 στοιχείο). Βέλτιστη καλύπτει στοιχεία µε µέσο κόστος Άπληστη επιλογή έχει κόστος / στοιχείο Αθροίζοντας για nεπαναλήψεις, κόστος άπληστου αλγ. Λόγος προσέγγισης Αποδεικνύεται ότι δεν υπάρχει αλγόριθµος πολυωνυµικού χρόνου µε καλύτερο λόγο προσέγγισης. Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 30

Μη-Προσεγγισιµότητα Προβλήµατα στο ΝΡ που προσέγγιση είναι ΝΡ-δύσκολη! Περιοδεύον Πωλητής χωρίς τριγωνική ανισότητα, µέγιστη κλίκα / σύνολο ανεξαρτησίας, χρωµατικός αριθµός, Πρόβληµα Περιοδεύοντος Πωλητή χωρίς Τριγωνική Ανισότητα (ΠΠΠ): n σηµεία και συµµετρικές αποστάσεις (αλλά όχι metric). Ζητούµενο: περιοδεία ελάχιστου συνολικού µήκους. Για κάθε γ, γ-προσέγγιση ΠΠΠ είναι ΝΡ-δύσκολη [Sahni και Gonzalez, 1976]. Κάθε γ-προσεγγιστικός αλγόριθµος για ΠΠΠ λύνει πρόβληµα κύκλου Hamilton! Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 31

Απόδειξη Γράφηµα G(V, E): υπάρχει κύκλος Hamilton στο G; Αναγωγή σε γ-προσέγγιση ΠΠΠ (για οποιοδήποτε γ > 1): Κορυφές σηµεία. Αποστάσεις: Κύκλος Hamilton στο G περιοδεία µήκους V Όχι κύκλος Hamilton στο G περιοδεία µήκους γ V + V 1 > γ V γ-προσεγγιστικός αλγόριθµος για ΠΠΠ: Κύκλος Hamilton στο G περιοδεία µήκους γ V Αποφασίζει (σωστά) αν υπάρχει κύκλος Hamilton στο G. Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 32

Επισκόπηση Περιοχής Σχήµατα προσέγγισης: λόγος (1+ε), για κάθε ε > 0. Σακίδιο, δροµολόγηση εργασιών, γεωµετρικά προβλήµατα, υναµικός προγραµµατισµός και διακριτοποίηση. Σταθερός λόγος προσέγγισης. MAX-SNP-δυσκολία: ΝΡ-δύσκολο να υπάρξει σχήµα PCP Θεώρηµα: NP = PCP(logn, 1). Προβλήµατα σε µετρικούς χώρους: ΠΠΠ-ΤΑ, facility location, δέντρο Steiner, Προβλήµατα σε γραφήµατα: σύνολο κάλυψης, µέγιστη τοµή, feedback vertex set, Προβλήµατα ικανοποιησιµότητας: Max-k-SAT. Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 33

Επισκόπηση Περιοχής Τεχνικές για σταθερό λόγο προσέγγισης: Τοπική αναζήτηση µέθοδος απληστίας. Primal-dual µέθοδος. Dual-fitting µέθοδος. Relaxation του Ακέραιο Προγράµµατος σε Γραµµικό Πρόγραµµα, επίλυση, και τυχαίο στρογγύλεµα µη-ακέραιων λύσεων. Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 34

Επισκόπηση Περιοχής Λογαριθµικός λόγος προσέγγισης. Ελάχιστο σύνολο κάλυψης για σύνολα Άπληστος αλγόριθµος (dual-fitting) καλύτερος δυνατός. Αραιότερη τοµή, γραµµικές διατάξεις, Εµπέδωση µετρικών χώρων σε απλούστερους χώρους όπου προβλήµατα λύνονται ευκολότερα. Πολυωνυµικός λόγος προσέγγισης. Μέγιστη κλίκα / σύνολο ανεξαρτησίας, χρωµατισµός γραφηµάτων, PCP Θεώρηµα: για κάθε ε > 0, προσέγγιση µέγιστης κλίκας σε λόγο V 1 ε είναι ΝΡ-δύσκολο πρόβληµα! Συνδυαστική Βελτιστοποίηση Αλγόριθµοι Προσέγγισης 35