100 likes | 225 Views
Η λίστα των προβλημάτων μας. Ταξινόμηση Αναζήτηση Συντομότερα μονοπάτια σε γράφο Ελάχιστα ζευγνύοντα δένδρα Έλεγχος πρώτων αριθμών Πρόβλημα περιοδεύοντας πωλητή Πρόβλημα σάκου Σκάκι Πύργοι του Hanoi Τερματισμός προγράμματος. Κατηγοριοποίηση πολυπλοκότητας προβλήματος.
E N D
Η λίστα των προβλημάτων μας • Ταξινόμηση • Αναζήτηση • Συντομότερα μονοπάτια σε γράφο • Ελάχιστα ζευγνύοντα δένδρα • Έλεγχος πρώτων αριθμών • Πρόβλημα περιοδεύοντας πωλητή • Πρόβλημα σάκου • Σκάκι • Πύργοι του Hanoi • Τερματισμός προγράμματος Σχεδιαση Αλγοριθμων - Τμημα Πληροφορικης ΑΠΘ - Κεφαλαιο 9ο
Κατηγοριοποίηση πολυπλοκότητας προβλήματος Υπάρχει κάποιος πολυωνυμικός αλγόριθμος επίλυσης του προβλήματος? Πιθανές απαντήσεις: • ΝΑΙ • ΟΧΙ • επειδή μπορεί να αποδειχθεί ότι όλοι οι αλγόριθμοι θέλουν εκθετικό χρόνο • επειδή μπορεί να αποδειχθεί ότι δεν υπάρχει αλγόριθμος να επιλύσει αυτό το πρόβλημα • ΔΕΝ ΓΝΩΡΙΖΩ • ΔΕΝ ΓΝΩΡΙΖΩ, αλλά αν εφευρισκόταν ένας τέτοιος αλγόριθμος, τότε θα δινόταν λύση και σε πολλά άλλα προβλήματα σε πολυωνυμικό χρόνο Σχεδιαση Αλγοριθμων - Τμημα Πληροφορικης ΑΠΘ - Κεφαλαιο 9ο
Τύποι προβλημάτων • Προβλήματα βελτιστοποίησης:κατασκευάζουμε μια λύση που μεγιστοποιεί η ελαχιστοποιεί μια αντικειμενική συνάρτηση • Προβλήματα απόφασης:απάντηση με ΝΑΙ/ΌΧΙ σε μια ερώτηση Πολλά προβλήματα έχουν εκδοχές βελτιστοποίησης η απόφασης. Π.χ. το πρόβλημα του περιοδεύοντας πωλητή • βελτιστοποίηση: βρες ένα hamiltonian κύκλο ελάχιστου βάρους • απόφαση: βρες ένα hamiltonian κύκλο βάρους < k Σχεδιαση Αλγοριθμων - Τμημα Πληροφορικης ΑΠΘ - Κεφαλαιο 9ο
Άλλα προβλήματα • Διαμερισμός: Δεδομένωνnθετικών ακεραίων, να βρεθεί αν είναι δυνατό να τους διαμερίσουμε σε δυο ανεξάρτητα υποσύνολα με το ίδιο άθροισμα • Bin packing: Δεδομένων nαντικειμένων με μέγεθος που είναι θετικός πραγματικός αριθμός όχι μεγαλύτερος του 1, να τοποθετηθούν στο μικρότερο αριθμό bins μεγέθους 1 • Χρωματισμός γράφου: Να βρεθεί ο χρωματικός του αριθμός δεδομένου γράφου, δηλαδή ο μικρότερος αριθμός χρωμάτων που πρέπει να αποδοθούν στις κορυφές του γράφου ώστε να μην υπάρχουν δυο γειτονικές κορυφές με το ίδιο χρώμα • Ικανοποιησιμότητα CNF: Δεδομένης λογικής πρότασης σε συζευκτική κανονική μορφή (σύζευξη διαζεύξεων εκφράσεων), υπάρχει μια απόδοση τιμών στις μεταβλητές που να καθιστά την έκφραση αληθή? Σχεδιαση Αλγοριθμων - Τμημα Πληροφορικης ΑΠΘ - Κεφαλαιο 9ο
Η κλάσηP P: η κλάση των προβλημάτων απόφασης, τα οποία επιλύονται σε χρόνο O(p(n)), όπου p(n) είναι ένα πολυώνυμο ως προς n Γιατί πολυώνυμο ? • Αν ΟΧΙ, πολύ αναποτελεσματικό • Κομψές ιδιότητες κλεισίματος • Ανεξάρτητες από μηχανές Σχεδιαση Αλγοριθμων - Τμημα Πληροφορικης ΑΠΘ - Κεφαλαιο 9ο
Η κλάσηNP NP: η κλάση των προβλημάτων απόφασης, τα οποία επιλύονται σε πολυωνυμικό χρόνο σε μια μη-αιτιοκρα-τική μηχανή • Ένας μη-αιτιοκρατικός υπολογιστής μπορεί να μαντέψει τη σωστή απάντηση ή λύση • Τα ΝΡ είναι μια κλάση προβλημάτων • με λύσεις που είναι επιβεβαιώσιμες σε πολυωνυμικό χρόνο, ή • που είναι επιλύσιμες σε πολυωνυμικό χρόνο σε μια μηχανή που μπορεί να εκτελέσει παράλληλα άπειρους υπολογισμούς • Σημείωση: η έκφραση NPσημαίνει “Nondeterministic Polynomial-time” Σχεδιαση Αλγοριθμων - Τμημα Πληροφορικης ΑΠΘ - Κεφαλαιο 9ο
Παράδειγμα: ικανοποιησιμότητα CNF • Το πρόβλημα είναιNP. Ο μη-αιτιοκρατικός αλγόριθμος: • μαντεύει τη σωστή απόδοση τιμών • ελέγχειαν οι αποδόσεις ικανοποιούν τον τύπο CNF • Παράδειγμα:(A⋁¬B⋁¬C)⋀(¬A⋁B)⋀(¬B⋁D⋁F)⋀(F⋁¬D) • Αληθείς αποδόσεις: A B C D E F • 0 1 1 0 1 0 • 1 0 0 0 0 1 • 1 1 0 0 0 1 • ... (πόσες είναι συνολικά ?) • Φάση ελέγχου: Θ(n) Σχεδιαση Αλγοριθμων - Τμημα Πληροφορικης ΑΠΘ - Κεφαλαιο 9ο
Που βρισκόμαστε τώρα ? • Έχει επιδειχθείμη-αιτιοκρατικός πολυωνυμικός αλγόριθμος για την ικανοποιησιμότητα CNF • Το CNF-sat είναι σεNP • Παρόμοιοι αλγόριθμοι μπορούν να βρεθούν για τα προβλήματα TPS, HC, Partition, κλπαποδεικνύο-ντας ότι αυτά τα προβλήματα είναι επίσης σε NP • Όλα τα προβλήματα σε Pμπορούν επίσης να επιλυ-θούν με αυτόν τον τρόπο (αλλά χωρίς μαντεψιά), και συνεπώς ισχύει: P⊆NP • Η μεγάλη ερώτηση: P = NP ? Σχεδιαση Αλγοριθμων - Τμημα Πληροφορικης ΑΠΘ - Κεφαλαιο 9ο
ΠροβλήματαNP-complete • Ένα πρόβλημα απόφασηςDείναιNP-complete αν και μόνο αν • D ∈NP • Κάθε πρόβλημα σε NPείναιμειώσιμο (reducible)σε πολυωνυμικό χρόνο στο D • Θεώρημα του Cook(1971):το CNF-sat είναιNP-complete • ΆλλαNP-complete προβλήματαπου λαμβάνονται μέσω πολύ-ωνυμικών μειώσεων γνωστών NP-complete προβλημάτων • Η κλάση των NP-complete προβλημάτων δηλώνεται με NPC Σχεδιαση Αλγοριθμων - Τμημα Πληροφορικης ΑΠΘ - Κεφαλαιο 9ο
Μειώσεις (reductions) • Παράδειγμα: Πολυωνυμική μείωση του κατευθυνόμενου HC σε μη κατευθυνόμενο HC y1 y2 y3 y x x3 x1 x2 → v u • Το αποδεικνύει αυτό? • Το HC είναι δυσκολότερο ή ευκολότερο για κατευθυνόμενους γράφους? v1 v2 v3 u1 u2 u3 • Αν το HC είναι NPC για κατευθυνόμενους γράφους, είναι επίσης NPC γιαμη κατευθυνόμενους γράφους? ή • Αν το HC είναι NPC για μη κατευθυνόμενους γράφους, είναι επίσης NPC για κατευθυνόμενους γράφους? Σχεδιαση Αλγοριθμων - Τμημα Πληροφορικης ΑΠΘ - Κεφαλαιο 9ο