Προσεγγιστικοί Αλγόριθμοι βασισμένοι σε Γραμμικό Προγραμματισμό ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο
Αντιμετώπιση NP- υσκολίας Αν P NP, όχι αλγόριθμος που για όλαταστιγμιότυπα NP-δύσκολου προβλήματος υπολογίζει βέλτιστη λύση σε πολυωνυμικό χρόνο. Ευρετικές τεχνικές: συχνά γρήγορα βέλτιστη λύση αλλά και δύσκολα στιγμιότυπα (αργά ή / και όχι βέλτιστη λύση). Τοπική αναζήτηση. Simulated annealing. Γενετικοί αλγόριθμοι. Branch-and-Bound, Branch-and-Cut. Θεωρία Υπολογισμού (Άνοιξη 2012) Προσεγγιστικοί Αλγόριθμοι 2
Αντιμετώπιση NP- υσκολίας «Εύκολες» περιπτώσεις. Ανάλυση μέσης περίπτωσης / πιθανοτική ανάλυση. Γρήγοροι σε στιγμιότυπα που εμφανίζονται συχνότερα (αργοί μόνο για στιγμιότυπα με μικρή πιθανότητα). ιαφορά από ευρετικές τεχνικές: θεωρητική ανάλυση. Γνωρίζουμε πιθανότητα και πότε καλή / κακή απόδοση. Αλγόριθμοι προσέγγισης [Johnson, Sahni and Gonzalez,, 70 s] Αλγόριθμοι πολυωνυμικού χρόνου (χ.π.). Όχι (πάντα) βέλτιστη λύση. Ανάλυσηχειρότερηςπερίπτωσηςωςπροςποιότηταλύσης. Θεωρία Υπολογισμού (Άνοιξη 2012) Προσεγγιστικοί Αλγόριθμοι 3
Προσεγγιστικοί Αλγόριθμοι Απόδοση χειρότερης περίπτωσης γνωστών ευρετικών αλγόριθμων (αρχικά κυρίως άπληστων). Σχεδιασμός poly-time αλγόριθμων που συμπεριφέρονται αποδεδειγμένα καλά για κάθε στιγμιότυπο. Λόγος προσέγγισης Αλγόριθμου Α για πρόβλημα Π: Προβλήματος Π: Θεωρία Υπολογισμού (Άνοιξη 2012) Προσεγγιστικοί Αλγόριθμοι 4
Κάλυμμα Συνόλου (Set Cover) Σύνολο στοιχείων Μη-κενά υποσύνολα του Κόστος υποσυνόλων: Ζητούμενο: κάλυμμα του S με ελάχιστο κόστος. Ελάχιστου κόστους συλλογή υποσυνόλων f = μέγιστο πλήθος συνόλων όπου ανήκει κάποιο στοιχείο. ΝΡ-δύσκολο πρόβλημα. Απληστία: καλύτερος προσεγγιστικός αλγόριθμος. Θεωρία Υπολογισμού (Άνοιξη 2012) Προσεγγιστικοί Αλγόριθμοι 5
Παράδειγμα f = μέγιστος βαθμός στοιχείου του S(= 4). 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 Θεωρία Υπολογισμού (Άνοιξη 2012) Προσεγγιστικοί Αλγόριθμοι 6
Άπληστος Αλγόριθμος Σύνολο U ακάλυπτων στοιχείων (αρχικά U = S). Επιλογή υποσυνόλου που ελαχιστοποιεί κόστος ανά ακάλυπτο στοιχείο που καλύπτει: Ενημέρωση U και συνέχεια ενόσω U δεν είναι κενό. Θεωρία Υπολογισμού (Άνοιξη 2012) Προσεγγιστικοί Αλγόριθμοι 7
Αντιπαράδειγμα εν πλησιάζει τη βέλτιστη λύση! Βέλτιστη λύση έχει κόστος 1+ε. Κόστος άπληστου αλγόριθμου: Παράδειγμα: χειρότερη περίπτωση άπληστου αλγόριθμου. Θεωρία Υπολογισμού (Άνοιξη 2012) Προσεγγιστικοί Αλγόριθμοι 8
Ανάλυση Έστω OPT κόστος βέλτιστης λύσης. Αρχή i-οστής επανάλ.: ακάλυπτα στοιχεία (κάθε προηγούμενη επανάληψη καλύπτει 1 στοιχείο). Βέλτιστη καλύπτει στοιχεία με μέσο κόστος Άπληστη επιλογή έχει κόστος / στοιχείο Αθροίζοντας για n επαναλήψεις, κόστος άπληστου αλγ. Λόγος προσέγγισης Αποδεικνύεται ότι δεν υπάρχει αλγόριθμος πολυωνυμικού χρόνου με καλύτερο λόγο προσέγγισης (εκτός αν NP (quasi)p). Θεωρία Υπολογισμού (Άνοιξη 2012) Προσεγγιστικοί Αλγόριθμοι 9
Γενική Προσέγγιση ιατυπώνουμε το πρόβλημα ως Ακέραιο Γραμμικό Πρόγραμμα (IP). Set Cover IP: «Χαλαρώνουμε» το IP σε Γραμμικό Πρόγραμμα (LP). Set Cover LP: Integrality gap: Θεωρία Υπολογισμού (Άνοιξη 2012) Προσεγγιστικοί Αλγόριθμοι 10
Γενική Προσέγγιση Χρησιμοποιούμε τη βέλτιστη λύση του LP ή/και ιδιότητες της για να κατασκευάσουμε (σε πολυωνυμικό χρόνο) εφικτή λύση για το IP και να αναλύσουμε το λόγο προσέγγισης. «Στρογγυλοποίηση» βέλτιστης λύσης LP: (deterministic και) randomized rounding. υϊκότητα και χρέωση κόστους σε dual variables: dual fitting. υϊκότητα και complementary slackness: primal-dual. Ανάλυση (προβλήματα ελαχιστοποίησης): Άνω φράγμα στο κόστος εφικτής λύσης. Κάτω φράγμα στο κόστος βέλτιστης λύσης: βέλτιστη λύση LP ή εφικτή λύση για το δυϊκό. Λόγος προσέγγισης integrality gap. Μέθοδος δίνει (συχνά καλύτερο) άνω φράγμα στο λόγο προσέγγισης για κάθε συγκεκριμένο instance. Θεωρία Υπολογισμού (Άνοιξη 2012) Προσεγγιστικοί Αλγόριθμοι 11
Set Cover: Στρογγυλοποίηση Έστω x βέλτιστη λύση LP με κόστος OPT Επιλέγουμε κάθε σύνολο j με x j 1/f Ηλύσημαςείναιεφικτή: στοιχείο i, αντίστοιχος περιορισμός έχει #μετ/τών f Αφού άθροισμα 1, τουλάχιστον μία μετ/τή έχει τιμή 1/f Κάτω φράγμα: Κόστος βέλτιστης (ακέραιης) λύσης OPT Άνω φράγμα: Στρογγυλοποίηση αυξάνει τιμές μετ/των κατά παράγοντα f Κόστος εφικτής λύσης f OPT Λόγος προσέγγισης f Λόγος προσέγγισης 2 για vertex cover. Θεωρία Υπολογισμού (Άνοιξη 2012) Προσεγγιστικοί Αλγόριθμοι 12
Set Cover: Randomized Rounding Έστω x βέλτιστη λύση LP με κόστος OPT Επιλέγουμε κάθε σύνολο j ανεξάρτητα, με πιθανότητα x j Επαναλαμβάνουμε cln(n) φορές, σταθερά c 2 Ηλύσημαςείναιεφικτή (με μεγάλη πιθανότητα): στοιχείο i, πιθανότητα να μην καλυφθεί το i 1/n c Πιθανότητα να υπάρχει στοιχείο ακάλυπτο 1/n c 1 Κάτω φράγμα: Κόστος βέλτιστης (ακέραιης) λύσης OPT Θεωρία Υπολογισμού (Άνοιξη 2012) Προσεγγιστικοί Αλγόριθμοι 13
Set Cover: Randomized Rounding Έστω x βέλτιστη λύση LP με κόστος OPT Επιλέγουμε κάθε σύνολο j ανεξάρτητα, με πιθανότητα x j Επαναλαμβάνουμε cln(n) φορές, σταθερά c 2 Άνω φράγμα (στο αναμενόμενο κόστος μιας εφικτής λύσης): Αναμενόμενο κόστος «λύσης» (μπορεί μη εφικτή) c ln(n) OPT Αναμενόμενο κόστος εφικτής λύσης c ln(n) OPT / Pr[λύση εφικτή] Λόγος προσέγγισης 2c ln(n) Μετατροπή του αλγόριθμου σε ντετερμινιστικό (derandomization) με την μέθοδο των conditional probabilities. Θεωρία Υπολογισμού (Άνοιξη 2012) Προσεγγιστικοί Αλγόριθμοι 14