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

Σχετικά έγγραφα
Υπολογιστική Πολυπλοκότητα

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Συντομότερα Μονοπάτια για Όλα τα Ζεύγη Κορυφών

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

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

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

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

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

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

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

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

Επιχειρησιακή Έρευνα

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

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

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

NP-complete problems. IS, 4-Degree IS,CLIQUE, NODE COVER, MAX CUT, MAX BISECTION, BISECTION WIDTH. NP-complete problems 1 / 30

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

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

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

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

Λογική Δημήτρης Πλεξουσάκης Φροντιστήριο 6: Προτασιακός Λογισμός: Μέθοδος Επίλυσης Τμήμα Επιστήμης Υπολογιστών

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

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

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

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

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

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Συστήματα Αυτομάτου Ελέγχου. Ενότητα Α: Γραμμικά Συστήματα

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

Chapter 7, 8 : Completeness

Πιθανοτικοί Αλγόριθμοι

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

ΒΟΗΘΗΤΙΚΕΣ ΣΗΜΕΙΩΣΕΙΣ

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

Ουρά Προτεραιότητας: Heap

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

Λογική Δημήτρης Πλεξουσάκης Φροντιστήριο 5: Προτασιακός Λογισμός: Κατασκευή Μοντέλων Τμήμα Επιστήμης Υπολογιστών

ΜΑΘΗΜΑΤΙΚΑ ΓΙΑ ΟΙΚΟΝΟΜΟΛΟΓΟΥΣ

Chapter 9: NP-Complete Problems

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ. Ενότητα 9: Προτασιακή λογική. Ρεφανίδης Ιωάννης Τμήμα Εφαρμοσμένης Πληροφορικής

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

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

Λογική. Δημήτρης Πλεξουσάκης. Ασκήσεις 2ου Φροντιστηρίου: Προτασιακός Λογισμός: Κανονικές Μορφές, Απλός Αλγόριθμος Μετατροπής σε CNF/DNF, Άρνηση

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

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

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

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

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

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

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

4η Γραπτή Ασκηση Αλγόριθμοι και Πολυπλοκότητα CoReLab ΣΗΜΜΥ 7 Φεβρουαρίου 2017 CoReLab (ΣΗΜΜΥ) 4η Γραπτή Ασκηση 7 Φεβρουαρίου / 38

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

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

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

Λογική Δημήτρης Πλεξουσάκης Ασκήσεις στον Κατηγορηματικό Λογισμό Τμήμα Επιστήμης Υπολογιστών

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

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

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

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Cretive Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Δημήτρης Πλεξουσάκης

Chapter 7, 8 : Time, Space Complexity

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Γενικά Μαθηματικά Ι. Ενότητα 1: Συναρτήσεις και Γραφικές Παραστάσεις. Λουκάς Βλάχος Τμήμα Φυσικής ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Τίτλος Μαθήματος: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

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

Υπολογιστικά & Διακριτά Μαθηματικά

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

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

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

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

Μέθοδοι Βελτιστοποίησης

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

7 η ΕΝΟΤΗΤΑ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΛΥΣΗ ΠΡΟΒΛΗΜΑΤΩΝ ΓΡΑΜΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ MATLAB

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

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

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

Transcript:

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

Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άδεια χρήσης άλλου τύπου, αυτή πρέπει να αναφέρεται ρητώς.

Υπολογιστική Πολυπλοκότητα Γιατί κάποια (επιλύσιμα) προβλήματα είναι δύσκολο να λυθούν από υπολογιστικές μηχανές. Ποια επιλύσιμα προβλήματα είναι εύκολα και ποιά δύσκολα; Αντικείμενο: ελάχιστοι υπολογιστικοί πόροι για επιλύσιμα προβλήματα. Εύλογοι υπολογιστικοί πόροι: ευεπίλυτα προβλήματα. Fractional knapsack, minimum spanning tree, shortest paths, max-flow, min-cut, linear programming, ιαφορετικά, δισεπίλυτα προβλήματα. TSP, discrete knapsack, vertex cover, independent set, set cover, scheduling, Επίδραση υπολογιστικού μοντέλου. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2010) Υπολογιστική Πολυπλοκότητα 2

Προσέγγιση Κλάσεις προβλημάτων (complexity classes) με παρόμοια υπολογιστική «δυσκολία» (computational complexity). Με (κατάλληλη) αναγωγή ορίζουμε «διάταξη» προβλημάτων σε κάθε κλάση (με βάση δυσκολία). υσκολότερα προβλήματα: πλήρη για την κλάση, συνοψίζουν δυσκολία κλάσης. Πλήρες πρόβλημα «εύκολο»: όλη η κλάση «εύκολη». Αρνητικό αποτέλεσμα: όλα τα πλήρη προβλήματα «δύσκολα». Έτσι (προσπαθούμε να) καθορίσουμε επαρκείς υπολογιστικούς πόρους για επίλυση δύσκολων προβλημάτων. ιαλεκτική σχέση αλγόριθμων και πολυπλοκότητας. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2010) Υπολογιστική Πολυπλοκότητα 3

Χρονική Πολυπλοκότητα Χρονική πολυπλοκότητα DTM M: Αύξουσα συνάρτηση t : N N ώστε για κάθε x, x = n, M(x) τερματίζει σε t(n) βήματα. Χρονική πολυπλοκότητα προβλήματος Π: Χρονική πολυπλοκότητα «ταχύτερης» DTMπου λύνει Π. Κλάση Ιεραρχία κλάσεων χρονικής πολυπλοκότητας: Πολυωνυμικός χρόνος: Εκθετικός χρόνος: Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2010) Υπολογιστική Πολυπλοκότητα 4

Ευεπίλυτα Προβλήματα Κλάση P : προβλήματα απόφασης που λύνονται σε πολυωνυμικό χρόνο. Θέση Cook Karp : κλάση ευεπίλυτων προβλημάτων ταυτίζεται με κλάση P. Υπέρ θέσης Cook Karp: Συνήθως πολυώνυμα μικρού βαθμού (π.χ. n, n 2, n 3 ). Κλειστότητα κλάσης. ιπλασιασμός υπολογιστικής ισχύος: σημαντική αύξηση στο μέγεθος στιγμιότυπων που λύνουμε. Εναντίον θέσης Cook Karp: Ακραίες περιπτώσεις: πρακτικό το n 100 αλλά όχι το (1.001) n! Γραμμικός Προγραμματισμός: Simplex εκθετικού χρόνου αλλά πολύ γρήγορος στην πράξη. Ελλειψοειδές πολυωνυμικού χρόνου αλλά καθόλου πρακτικός! Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2010) Υπολογιστική Πολυπλοκότητα 5

(Πολυωνυμική) Αναγωγή Π 1 ανάγεται ανάγεται πολυωνυμικά σε Π 2 (Π 1 P Π 2 ): Υπάρχει πολυωνυμικά υπολογίσιμη συνάρτηση R: Σ * Σ * ώστε x Σ *, x Π 1 R(x) Π 2. R καλείται πολυωνυμική αναγωγή. Π 1 P Π 2 : Π 2 είναι τουλ. τόσο δύσκολο όσο το Π 1 (για τον υπολογισμό σε πολυωνυμικό χρόνο). Αν Π 2 P, τότε και Π 1 P. Αν Π 1 P, τότε και Π 2 P. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2010) 6

Πληρότητα Έστω C μια κλάση προβλημάτων. ΠείναιC-δύσκολο (C-hard) ως προς αναγωγή R αν κάθε πρόβλημα Π στην C ανάγεται κατά R στο Π. Αν Π C και Π είναι C-δύσκολο ως προς αναγωγή R, τότε Π είναι C-πλήρες (C-complete) ως προς R. Πλήρη προβλήματα (ως προς κατάλληλη αναγωγή) συνοψίζουν υπολογιστική δυσκολία κλάσης C. Αναγωγή πρέπει να είναι «λίγο ευκολότερη» από «δυσκολότερα» προβλήματα στην κλάση C. Κλάση C κλειστή ως προς αναγωγή R αν Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2010) Υπολογιστική Πολυπλοκότητα 7

Ιδιότητες Αναγωγής Κλάση P είναι κλειστή ως προς πολυωνυμική αναγωγή. Αν Π 2 P, τότε και Π 1 P. Πολυωνυμική αναγωγή είναι μεταβατική. Σύνθεση πολυωνυμικών αναγωγών αποτελεί πολυωνυμική αναγωγή. Αν Π 1 P Π 2 και Π 2 P Π 1, τότε Π 1 και Π 2 πολυωνυμικά ισοδύναμα, Π 1 P Π 2. Κλάσεις κλειστές ως προς αναγωγή R με κοινό πλήρες πρόβλημα ως προς αναγωγή R ταυτίζονται. Έστω κλάσεις C 1, C 2 κλειστές ως προς αναγωγή R. Αν C 1, C 2 έχουν κοινό πλήρες πρόβλημα Π ως προς αναγωγή R, τότε C 1 = C 2. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2010) Υπολογιστική Πολυπλοκότητα 8

(Απλά) Παραδείγματα Αναγωγών Κύκλος Hamilton P TSP με αποστάσεις 1 και 2 TSP(1, 2). ίνεται γράφημα G(V, E). Έχει G κύκλο Hamilton; Από G, κατασκευάζουμε στιγμιότυπο I G του TSP(1, 2): Μία «πόλη» u για κάθε κορυφή u V. Συμμετρικές αποστάσεις: G έχει κύκλο Hamilton ανν I G έχει περιοδεία μήκους V. TSP(1, 2) P Metric TSP. 1 ο ειδική περίπτωση 2 ου : αποστάσεις 1 και 2 ικανοποιούν τριγωνική ανισότητα. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2010) Υπολογιστική Πολυπλοκότητα 9

(Απλά) Παραδείγματα Αναγωγών Min Vertex Cover P Max Independent Set P Max Clique. Vertex cover C σε γράφημα G(V, E) ανν independent set V \ C σε γράφημα G ανν clique V \ C σε συμπληρωματικό γράφημα. Έστω μη κατευθυνόμενο γράφημα G(V, E), V = n. Τα παρακάτω είναι ισοδύναμα: Το G έχει vertex cover k. Το G έχει independent set n k. To συμπληρωματικό έχει clique n k. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2010) Υπολογιστική Πολυπλοκότητα 10

k-ικανοποιησιμότητα Λογική πρόταση φ σε k-συζευκτική Κανονική Μορφή, k-cnf: k-ικανοποιησιμότητα: ίνεται φ σε k-cnf. Είναι φ ικανοποιήσιμη; Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2010) Υπολογιστική Πολυπλοκότητα 11

2-Ικανοποιησιμότητα 2-Ικανοποιησιμότητα P. Παρατηρούμε ότι Κατασκευάζουμε κατευθυν. γράφημα G φ με «συνεπαγωγές» φ. G φ έχει κορυφές Για κάθε όρο Ακμές και μονοπάτια G φ εμφανίζουν συμμετρία: Όμως φ μη ικανοποιήσιμη ανν υπάρχουν x i x i και x i x i μονοπάτια. Λόγω αυτών, καμία αποτίμηση x i και x i σε συμπληρωματικές τιμές δεν ικανοποιεί φ. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2010)

«ύσκολα» Προβλήματα Τι κάνουμε όταν ένα πρόβλημα φαίνεται «δύσκολο»; «ύσκολο»: μετά από μεγάλη προσπάθεια, δεν βρίσκουμε αποδοτικό αλγόριθμο (πολυωνυμικού χρόνου). Πάμεστοαφεντικόκαιλέμε: εν μπορώ να βρω αποδοτικό αλγόριθμο. Απόλυση! εν υπάρχει αποδοτικός αλγόριθμος. Too good to be true! Κανένας δεν μπορεί να βρει αποδοτικό αλγόριθμο: Ανάγουμε πολυωνυμικά κάποιο γνωστό NP-πλήρες πρόβλημα στο «δικό μας». Θεωρία NP-πληρότητας. NP-πλήρη: κλάση εξαιρετικά σημαντικών προβλημάτων που ανάγονται πολυωνυμικά το ένα στο άλλο. Είτε όλα λύνονται σε πολυωνυμικό χρόνο είτε κανένα. Έχουν μελετηθεί τόσο πολύ, ώστε όλοι πιστεύουν ότι κανένα! Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2010) Υπολογιστική Πολυπλοκότητα 13

Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα» του ΕΜΠ έχει χρηματοδοτήσει μόνο την αναδιαμόρφωση του υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους.