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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Μέγιστη Ροή Ελάχιστη Τομή

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

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

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

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

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

Μέγιστη Ροή Ελάχιστη Τομή

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

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

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

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

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

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

Approximation Algorithms for the k-median problem

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

Chapter 7, 8 : Time, Space Complexity

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

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

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

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

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

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

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

Επίπεδα Γραφήματα : Προβλήματα και Υπολογιστική Πολυπλοκότητα

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

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

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

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

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

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

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

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

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

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

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

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

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

Chapter 9: NP-Complete Problems

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

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

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

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

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

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

Πληροφοριακά Συστήματα Διοίκησης. Επισκόπηση μοντέλων λήψης αποφάσεων Τεχνικές Μαθηματικού Προγραμματισμού

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

Ελάχιστο Συνδετικό Δέντρο

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

CSC 314: Switching Theory

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

(Γραμμικές) Αναδρομικές Σχέσεις

Κατευθυνόμενα γραφήματα. Μαθηματικά Πληροφορικής 6ο Μάθημα. Βρόχοι. Μη κατευθυνόμενα γραφήματα. Ορισμός

4η Γραπτή Ασκηση Αλγόριθμοι και Πολυπλοκότητα CoReLab ΣΗΜΜΥ 3/2/2019 CoReLab (ΣΗΜΜΥ) 4η Γραπτή Ασκηση 3/2/ / 37

Εισαγωγή στην Επιστήμη των Υπολογιστών 4ο εξάμηνο ΣHMΜY

Transcript:

Αλγόριθμοι Προσέγγισης για NP-Δύσκολα Προβλήματα Διδάσκοντες: E. Ζάχος, Α. Παγουρτζής Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Υπολογιστική Πολυπλοκότητα Γιατίμερικάπροβλήματαείναιδύσκολοναλυθούν από υπολογιστικές μηχανές. Αντικείμενο: Επιλύσιμα προβλήματα: υπολογιστικοί πόροι. Ευεπίλυτα: spanning tree, shortest paths, max flow, min-cost flow, linear programming, Δυσεπίλυτα: TSP, vertex cover, knapsack, scheduling, Επίδραση υπολογιστικού μοντέλου. Προσεγγιστικοί Αλγόριθμοι 2 Προβλήματα και Αλγόριθμοι Προβλήματα Βελτιστοποίησης Αλγόριθμος: λεπτομερής περιγραφή μεθόδου επίλυσης προβλήματος από υπολογιστική μηχανή. Πρόβλημα: άπειρο σύνολο στιγμιοτύπων. Αποτελεί αντικείμενο μελέτης. Στιγμιότυπο: μαθηματικό αντικείμενο για το οποίο κάνουμε ερώτηση και περιμένουμε απάντηση. Προβλήματα: Βελτιστοποίησης: λύση με βέλτιστη αντικειμενική τιμή. Απόφασης: απάντηση ΝΑΙ ή ΌΧΙ. Πρόβλημα βελτιστοποίησης : Σύνολο στιγμιότυπων Σύνολο αποδεκτών λύσεων: Αντικειμενική συνάρτηση: Δεδομένου στιγμιότυπου σ, ζητείται Συνδυαστικής βελτιστοποίησης: πεπερασμένο σύνολο αποδεκτώνλύσεωνπουπεριλαμβάνειβέλτιστη. Προσεγγιστικοί Αλγόριθμοι 3 Προσεγγιστικοί Αλγόριθμοι 4

Προβλήματα Απόφασης Αποδοτική Επίλυση: Κλάση P Πρόβλημα απόφασης : Σύνολο στιγμιότυπων Σύνολο (αποδεκτών) λύσεων: Δεδομένου Επιδέχεται μόνο δύο απαντήσεων: ΝΑΙ ή ΌΧΙ. Παραδείγματα προβλημάτων απόφασης: Συνεκτικότητα, κύκλος Euler, κύκλος Hamilton. Ικανοποιησιμότητα λογικών προτάσεων. Κάθε πρόβλημα βελτιστοποίησης: έχει λύση με αντικειμενική τιμή καλύτερη από Β; Μέγεθος στιγμιότυπου 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 Προσεγγιστικοί Αλγόριθμοι 6 Αποδοτική Επίλυση: Κλάση P «Δύσκολα» Προβλήματα Υπέρ αξιώματος Cook-Karp: Τι κάνουμε όταν ένα πρόβλημα φαίνεται «δύσκολο»; Κλάση P ανεξάρτητη υπολογιστικού μοντέλου. Συνήθως πολυώνυμα μικρού βαθμού (π.χ. n, n 2, n 3 ). Διπλασιασμός υπολογιστικής ισχύος: σημαντική αύξηση στο μέγεθος στιγμιότυπων που επιλύουμε. Κριτική στο αξίωμα Cook-Karp: Ακραίες περιπτώσεις: πρακτικό το n 00 αλλά όχι το 2 n/00! Γραμμικός Προγραμματισμός: Simplex εκθετικού χρόνου στη χειρότερη περίπτωση αλλά πολύ γρήγορος στην πράξη. Ελλειψοειδές πολυωνυμικού χρόνου αλλά όχι πρακτικός. «Δύσκολο»: μετά από μεγάλη προσπάθεια, δεν βρίσκουμε αποδοτικό αλγόριθμο (πολυωνυμικού χρόνου). Πάμε στο αφεντικό και λέμε: Δεν μπορώ να βρω αποδοτικό αλγόριθμο. Απόλυση! Δεν υπάρχει αποδοτικός αλγόριθμος. Καλό αλλά δύσκολο! Κανένας δεν μπορεί να βρει αποδοτικό αλγόριθμο (και όλοι πιστεύουν ότι δεν υπάρχει). Θεωρία NP-πληρότητας. NP-πλήρη: κλάση εξαιρετικά σημαντικών προβλημάτων που είτε όλα επιλύονται σε πολυωνυμικό χρόνο είτε κανένα. Προσεγγιστικοί Αλγόριθμοι 7 Προσεγγιστικοί Αλγόριθμοι 8

ΗΚλάσηNP ΗΚλάσηNP περιλαμβάνει προβλήματα απόφασης: Για κάθε ΝΑΙ-στιγμιότυπο, υπάρχει «πιστοποιητικό» εύκολο να ελεγχθεί (ελέγχεται σε πολυωνυμικό χρόνο). Συνοπτικό πιστοποιητικό (succinct certificate). Πιστοποιητικό μπορεί να είναι δύσκολο να υπολογισθεί. Αν δοθεί, ελέγχεται εύκολα! Δεν απαιτείται συνοπτικό πιστοποιητικό για ΌΧΙ-στιγμιότυπα. Κλάση co-np περιλαμβάνει προβλήματα απόφασης με συνοπτικό πιστοποιητικό για ΌΧΙ-στιγμιότυπα. Προβλήματα Ρ ανήκουν ΝΡ Προβλήματα Ρ ανήκουν co-νρ Για σημαντικότερα προβλήματα βελτιστοποίησης, αντίστοιχα προβλήματα απόφασης ανήκουν στο NP. Συντομότερο s t μονοπάτι μήκους Β? Πιστοποιητικό μονοπάτι μήκους Β. Ελάχιστο Επικαλύπτον Δέντρο βάρους Β? Πιστοποιητικό επικαλύπτον δέντρο βάρους Β. Υπάρχει κύκλος Hamilton? Περιοδεία Περιοδεύοντος Πωλητή μήκους Β? Πιστοποιητικό περιοδεία μήκους Β. Ελάχιστο κάλυμμα κορυφών με #κορυφών Β? Πιστοποιητικό κάλυμμα κορυφών με Βκορυφές. Προσεγγιστικοί Αλγόριθμοι 9 Προσεγγιστικοί Αλγόριθμοι 0 NP-Πληρότητα ΡκαιΝΡ ΝΡ-δύσκολο πρόβλημα Π αν κάθε πρόβλημα Π στο ΝΡ ανάγεται σε πολυωνυμικό χρόνο στο Π. Αναγωγή: αλγόριθμος πολυωνυμικού χρόνου με ιδιότητα x ΝΑΙ-στιγμ. ανν R(x) ΝΑΙ-στιγμ. Αν Π λύνεται σε πολυωνυμικό χρόνο, Π επίσης! ΝΡ-πλήρες πρόβλημα κάθε ΝΡ-δύσκολο που ανήκει ΝΡ. Εξ ορισμού Ερώτημα: Αν, πολλά σημαντικά προβλήματα ευεπίλυτα! Αν (όπως όλοι πιστεύουν), κάποια προβλήματα στο ΝΡ δεν λύνονται σε πολυωνυμικό χρόνο! Εξ ορισμού, τα ΝΡ-πλήρη πρέπει να είναι σε αυτά. Προσεγγιστικοί Αλγόριθμοι Προσεγγιστικοί Αλγόριθμοι 2

Αντιμετώπιση NP-Δυσκολίας Αντιμετώπιση NP-Δυσκολίας Αν, όχι αλγόριθμος που για όλα τα στιγμιότυπα υπολογίζει βέλτιστη λύση σε πολυωνυμικό χρόνο. Ευρετικές τεχνικές: συχνά γρήγορα βέλτιστη λύση αλλά και δύσκολα στιγμιότυπα (αργά ή / και όχι βέλτιστη λύση). Τοπική αναζήτηση. Simulated annealing. Γενετικοί αλγόριθμοι. Branch-and-Bound, Branch-and-Cut. Ανάλυση μέσης περίπτωσης / πιθανοτική ανάλυση. Γρήγοροι σε στιγμιότυπα που εμφανίζονται συχνότερα (αργοί μόνο για στιγμιότυπα με μικρή πιθανότητα). Διαφορά από ευρετικές τεχνικές: θεωρητική ανάλυση. Γνωρίζουμε πιθανότητα και πότε καλή / κακή απόδοση. «Εύκολες» περιπτώσεις. Αλγόριθμοι προσέγγισης [Johnson, Sahni and Gonzalez,, 70 s] Αλγόριθμοι πολυωνυμικού χρόνου (χ.π.). Όχι (πάντα) βέλτιστη λύση. Ανάλυση χειρότερης περίπτωσης ως προς ποιότητα λύσης. Προσεγγιστικοί Αλγόριθμοι 3 Προσεγγιστικοί Αλγόριθμοι 4 Αλγόριθμοι Προσέγγισης Ελάχιστο Κάλυμμα Κορυφών Απόδοση χειρότερης περίπτωσης γνωστών ευρετικών αλγόριθμων (αρχικά κυρίως άπληστων). Σχεδιασμός poly-time αλγόριθμων που συμπεριφέρονται αποδεδειγμένα καλά για κάθε στιγμιότυπο. Λόγος προσέγγισης Αλγόριθμου Α για πρόβλημα Π (πάντα ): Είσοδος: γράφημα Εφικτή λύση: υποσύνολο κορυφών κάθε ακμή τουλάχιστον ένα άκρο στο είναι κάλυμμα κορυφών (vertex cover). Στόχος: κάλυμμα κορυφών με ελάχιστο #κορυφών. ΝΡ-δύσκολο πρόβλημα. Προβλήματος Π: Προσεγγιστικοί Αλγόριθμοι 5 Προσεγγιστικοί Αλγόριθμοι 6

Ταίριασμα Μεγιστοτικό Ταίριασμα Ταίριασμα : υποσύνολο ακμών χωρίς κοινά άκρα. Μεγιστοτικό ταίριασμα : ταίριασμα που αν προσθέσουμε ακμή παύει να είναι ταίριασμα. Για κάθε ταίριασμα Μ, τουλάχιστον ένα από τα άκρα ακμών Μ ανήκει σε κάθε κάλυμμα κορυφών: ταίριασμα Μ, ελάχιστο κάλυμμα κορυφών C * Μ Μεγιστοτικό ταίριασμα Μ : κάθε ακμή εκτός Μ έχει κοινό άκρο με ακμή του Μ. Άκρα ακμών μεγιστοτικού ταιριάσματος Μ συγκροτούν κάλυμμα κορυφών C. C = 2 M 2 C * Προσεγγιστικοί Αλγόριθμοι 7 Προσεγγιστικοί Αλγόριθμοι 8 Αλγόριθμος ΜΜ Υπολογισμός μεγιστοτικού ταιριάσματος Μ. Προσθήκη ακμών ενόσω υπάρχουν ακμές που προσθήκη τους δίνει ταίριασμα. κάλυμμα κορυφών C:όλαταάκραακμώνΜ. Πολυωνυμικός χρόνος. Ορθότητα : ιδιότητα μεγιστοτικού ταιριάσματος. Λόγος προσέγγισης = 2. C = 2 M 2 C * (πάνω φράγμα). Παραδείγματα όπου κόστος ΜΜ διπλάσιο βέλτιστου. Βασική Ιδέα (ελαχιστοποίηση) Ξεκινώ από κάτω φράγμα στο κόστος βέλτιστης λύσης. Για κάθε ταίριασμα Μ, C * Μ. Κάτω φράγμα εκφράζεται σαν συνάρτηση κάποιων άλλων παραμέτρων του στιγμιότυπου εισόδου. Πολλές φορές κάτω φράγμα προκύπτει από δυϊκότητα. (Πολυωνυμικός) αλγόριθμος: εφικτή λύση με κόστος = συνάρτηση των παραμέτρων στο κάτω φράγμα. Μεγιστοτικό ταίριασμα Μ: κάλυμμα κορυφών C, C = 2 M. Σύγκριση δίνει άνω φράγμα στο λόγο προσέγγισης. C = 2 M 2 C *. Προσεγγιστικοί Αλγόριθμοι 9 Προσεγγιστικοί Αλγόριθμοι 20

Περιοδεύων Πωλητής Κάτω φράγμα Είσοδος: n σημεία με (συμμετρικές) αποστάσεις τους. Αποστάσεις ικανοποιούν τριγωνική ανισότητα (metric space). Αποδεκτές λύσεις: περιοδείες (μεταθέσεις) n σημείων. Στόχος: περιοδεία ελάχιστου συνολικού μήκους. Ελάχιστο Επικαλύπτον Δέντρο (ΕΕΔ). Κάθε περιοδεία έχει μήκος βάρος ΕΕΔ. Περιοδεία ακμή: επικαλύπτον δέντρο. Αλγόριθμος: Τ * ΕΕΔ βάρους w(t * ) «Διπλασιασμός» ακμών Τ * (άρτιοι βαθμοί) Κύκλος Euler στο διπλασιασμένο Τ * Αποφυγή διπλών εμφανίσεων «κόβοντας» δρόμο. Μήκος 2w(T * ) λόγω τριγωνικής ανισότητας Λόγος προσέγγισης 2 (tight). β α γ ζ δ ε Προσεγγιστικοί Αλγόριθμοι 2 Προσεγγιστικοί Αλγόριθμοι 22 Καλύτερος Αλγόριθμος Δρομολόγηση Εργασιών Αλγόριθμος Χριστοφίδη (976) Ελάχιστο Επικαλύπτον Δέντρο. Ταίριασμα ελάχιστου βάρους μεταξύ κορυφών ΕΕΔ με περιττό βαθμό. Κύκλος Euler. Περιοδεία μήκους βάρος ΕΕΔ + βάρος ταιριάσματος. Λόγος προσέγγισης = 3/2. Μετά 30 χρόνια, καλύτερος γνωστός αλγόριθμος. Υπάρχουν καλύτεροι αλγόριθμοι για ειδικές περιπτώσεις (π.χ. TSP(, 2), planar TSP, ). Είσοδος: m ίδιες μηχανές (σύνολο Μ). n εργασίες μεγέθους w,w 2,, w n (σύνολο J). Αποδεκτές λύσεις: κάθε δρομολόγηση φ Στόχος: ελαχιστοποίηση μέγιστου φορτίου μηχανής: Προσεγγιστικοί Αλγόριθμοι 23 Προσεγγιστικοί Αλγόριθμοι 24

Κάτω φράγμα Αλγόριθμος Graham (966). Εργασίες μία μία με σειρά που δίνονται (online). Νέα εργασία σε μηχανή με ελάχιστο φορτίο (greedy). Άνω φράγμα στο μέγιστο φορτίο: Φορτίο μηχανής i πριν δρομολογηθεί εργασία j : k μηχανή με μεγαλύτερο φορτίο w λ τελευταία εργασία στην μηχανή k 3 Προσεγγιστικοί Αλγόριθμοι 25 Προσεγγιστικοί Αλγόριθμοι 26 μηχ. μηχ. 2 μηχ. 3 Κάλυμμα Συνόλων (Set Cover) Παράδειγμα Σύνολο στοιχείων Μη-κενά υποσύνολα του Κόστος υποσυνόλων: Ζητούμενο: κάλυμμα S με ελάχιστο κόστος. Ελάχιστου κόστους συλλογή υποσυνόλων ΝΡ-δύσκολο πρόβλημα. Απληστία: καλύτερος προσεγγιστικός αλγόριθμος. S = {, 2, 3, 4, 5, 6, 7, 8 } X = {, 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 = {, 4, 7, 8} Βέλτιστη λύση: X 5, X 6 Προσεγγιστικοί Αλγόριθμοι 27 Προσεγγιστικοί Αλγόριθμοι 28

Άπληστος Αλγόριθμος Αντιπαράδειγμα Σύνολο U ακάλυπτων στοιχείων (αρχικά U = S). Δεν πλησιάζει τη βέλτιστη λύση! Επιλογή υποσυνόλου που ελαχιστοποιεί κόστος ανά ακάλυπτο στοιχείο που καλύπτει: Ενημέρωση U και συνέχεια ενόσω U δεν είναι κενό. Βέλτιστη λύση έχει κόστος +ε. Κόστος άπληστου αλγόριθμου: Παράδειγμα: χειρότερη περίπτωση άπληστου αλγόριθμου. Προσεγγιστικοί Αλγόριθμοι 29 Προσεγγιστικοί Αλγόριθμοι 30 Ανάλυση Μη-Προσεγγισιμότητα Έστω OPT κόστος βέλτιστης λύσης. Προβλήματα στο ΝΡ που προσέγγιση είναι ΝΡ-δύσκολη! Αρχή i-οστής επανάλ.: ακάλυπτα στοιχεία (κάθε προηγούμενη επανάληψη καλύπτει στοιχείο). Βέλτιστη καλύπτει στοιχεία με μέσο κόστος Άπληστη επιλογή έχει κόστος / στοιχείο Αθροίζοντας για n επαναλήψεις, κόστος άπληστου αλγ. Περιοδεύων Πωλητής χωρίς τριγωνική ανισότητα, μέγιστη κλίκα / σύνολο ανεξαρτησίας, χρωματικός αριθμός, Πρόβλημα Περιοδεύοντος Πωλητή χωρίς Τριγωνική Ανισότητα (ΠΠΠ): n σημεία και συμμετρικές αποστάσεις (αλλά όχι metric). Ζητούμενο: περιοδεία ελάχιστου συνολικού μήκους. Λόγος προσέγγισης Αποδεικνύεται ότι δεν υπάρχει αλγόριθμος πολυωνυμικού χρόνου με καλύτερο λόγο προσέγγισης. Για κάθε γ, γ-προσέγγιση ΠΠΠ είναι ΝΡ-δύσκολη [Sahni και Gonzalez, 976]. Κάθε γ-προσεγγιστικός αλγόριθμος για ΠΠΠ λύνει πρόβλημα κύκλου Hamilton! Προσεγγιστικοί Αλγόριθμοι 3 Προσεγγιστικοί Αλγόριθμοι 32

Απόδειξη Γράφημα G(V, E): υπάρχει κύκλος Hamilton στο G; Αναγωγή σε γ-προσέγγιση ΠΠΠ (για οποιοδήποτε γ > ): Κορυφές σημεία. Αποστάσεις: Κύκλος Hamilton στο G περιοδεία μήκους V Όχι κύκλος Hamilton στο G περιοδεία μήκους γ V + V > γ V γ-προσεγγιστικός αλγόριθμος για ΠΠΠ: Κύκλος Hamilton στο G περιοδεία μήκους γ V Αποφασίζει (σωστά) αν υπάρχει κύκλος Hamilton στο G. Επισκόπηση Περιοχής Σχήματα προσέγγισης: λόγος (+ε), για κάθε ε > 0. Σακίδιο, δρομολόγηση εργασιών, γεωμετρικά προβλήματα, Δυναμικός προγραμματισμός και διακριτοποίηση. Σταθερός λόγος προσέγγισης. MAX-SNP-δυσκολία: ΝΡ-δύσκολο να υπάρξει σχήμα PCP Θεώρημα: NP = PCP(log n, ). Προβλήματα σε μετρικούς χώρους: ΠΠΠ-ΤΑ, facility location, δέντρο Steiner, Προβλήματα σε γραφήματα: κάλυμμα κορυφών, μέγιστη τομή, feedback vertex set, Προβλήματα ικανοποιησιμότητας: Max-k-SAT. Προσεγγιστικοί Αλγόριθμοι 33 Προσεγγιστικοί Αλγόριθμοι 34 Επισκόπηση Περιοχής Επισκόπηση Περιοχής Τεχνικές για σταθερό λόγο προσέγγισης: Λογαριθμικός λόγος προσέγγισης. Τοπική αναζήτηση μέθοδος απληστίας. Primal-dual μέθοδος. Dual-fitting μέθοδος. Relaxation του Ακέραιο Προγράμματος σε Γραμμικό Πρόγραμμα, επίλυση, και τυχαίο στρογγύλεμα μη-ακέραιων λύσεων. Ελάχιστο κάλυμμα συνόλων Άπληστος αλγόριθμος (dual-fitting) καλύτερος δυνατός. Αραιότερη τομή, γραμμικές διατάξεις, Εμβάπτιση μετρικών χώρων σε απλούστερους χώρους όπου προβλήματα λύνονται ευκολότερα. Πολυωνυμικός λόγος προσέγγισης. Μέγιστη κλίκα / σύνολο ανεξαρτησίας, χρωματισμός γραφημάτων, PCP Θεώρημα: για κάθε ε > 0, προσέγγιση μέγιστης κλίκας σε λόγο V ε είναι ΝΡ-δύσκολο πρόβλημα! Προσεγγιστικοί Αλγόριθμοι 35 Προσεγγιστικοί Αλγόριθμοι 36