Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

ΘΕΩΡΙΑ ΠΟΛΥΠΛΟΚΟΤΗΤΑΣ ΠΑΡΟΥΣΙΑΣΗ ΣΤΑ ΚΕΦΑΛΑΙΑ 7.4 – 7.6 NP ΠΛΗΡΟΤΗΤΑ.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "ΘΕΩΡΙΑ ΠΟΛΥΠΛΟΚΟΤΗΤΑΣ ΠΑΡΟΥΣΙΑΣΗ ΣΤΑ ΚΕΦΑΛΑΙΑ 7.4 – 7.6 NP ΠΛΗΡΟΤΗΤΑ."— Μεταγράφημα παρουσίασης:

1 ΘΕΩΡΙΑ ΠΟΛΥΠΛΟΚΟΤΗΤΑΣ ΠΑΡΟΥΣΙΑΣΗ ΣΤΑ ΚΕΦΑΛΑΙΑ 7.4 – 7.6 NP ΠΛΗΡΟΤΗΤΑ

2 NP ΠΛΗΡΟΤΗΤΑ Στις αρχές της δεκαετίας του 1970 δύο ερευνητές ανακάλυψαν ορισμένα προβλήματα στην κλάση ΝΡ τα οποία έχουν την εξής ιδιαιτερότητα: H πολυπλοκότητα του καθενός από αυτά συνδέεται με την πολυπλοκότητα ολόκληρης της κλάσης. Τέτοιου είδους προβλήματα ονομάζονται ΝΡ – πλήρη και η ύπαρξη τους είναι εξαιρετικής σημασίας, τόσο για θεωρητικούς όσο και για πρακτικούς λόγους. Για να αποδεικνύουμε ότι ένα πρόβλημα είναι NP-πλήρες, χρησιμοποιούμε την έννοια της αναγωγής πολυωνυμικού χρόνου.

3 ΑΝΑΓΩΓΙΜΟΤΗΤΑ ΠΟΛΥΩΝΥΜΙΚΟΥ ΧΡΟΝΟΥ Διαισθητικά, μια αναγωγή τ είναι μια συνάρτηση που μετασχηματίζει σε πολυωνυμικό χρόνο στιγμιότυπα ενός προβλήματος A σε στιγμιότυπα ενός προβλήματος B με τέτοιο τρόπο ώστε το x είναι ένα 'ναι' στιγμιότυπο του A αν και μόνο αν το τ(x) είναι ένα 'ναι' στιγμιότυπο του B.

4 ΑΝΑΓΩΓΙΜΟΤΗΤΑ ΠΟΛΥΩΝΥΜΙΚΟΥ ΧΡΟΝΟΥ Έστω ότι μας δίνεται μία πολυωνυμική αναγωγή τ από το πρόβλημα A στο πρόβλημα B. 'Εστω επίσης ότι υπάρχει πολυωνυμικός αλγόριθμος για το πρόβλημα B. Για να αποφασίσουμε αν ένα στιγμιότυπο x του A είναι ένα 'ναι' στιγμιότυπο του A, αρκεί να υπολογίσουμε το τ(x) και μετά να ελέγξουμε αν αυτό είναι ένα 'ναι' στιγμιότυπο του B. Επομένως, αν το πρόβλημα B μπορεί να επιλυθεί αποτελεσματικά, τότε το ίδιο ισχύει και για το A. Επίσης, αν το A απαιτεί εκθετικό χρόνο, τότε το ίδιο ισχύει και για το B. Συμπέρασμα: Αν έχουμε πολυωνυμική αναγωγή από το A στο B, τότε το B είναι τουλάχιστον τόσο δύσκολο όσο και το A.

5 NP-ΠΛΗΡΗ ΠΡΟΒΛΗΜΑΤΑ Η γλώσσα SAT (SATisfiability = αληθευσιμότητα) είναι NP- πλήρης Για κάθε γλώσσα Α της ΝΡ, κατασκευάζουμε μια πολυωνυμικού χρόνου αναγωγή της Α στην SAT. Η αναγωγή αυτή δέχεται μια λέξη w και επιστρέφει έναν λογικό τύπο φ που προσομοιώνει για είσοδο w μια πολυωνυμικού χρόνου αντιαιτιοκρατική μηχανή Turing για την Α.

6 NP-ΠΛΗΡΗ ΠΡΟΒΛΗΜΑΤΑ Η γλώσσα SAT (SATisfiability = αληθευσιμότητα) είναι NP-πλήρης Εάν η μηχανή αποδέχεται, τότε ο φ έχει αληθοποιό τιμοδοσία, η οποία αντιστοιχεί στον αποδεκτικό υπολογισμό της μηχανής. Εάν η μηχανή δεν αποδέχεται, τότε καμία τιμοδοσία δεν καθιστά τον φ αληθή. Επομένως η λέξη w ανήκει στη γλώσσα Α εάν και μόνο εάν ο τύπος φ είναι αληθεύσιμος.

7 NP-ΠΛΗΡΗ ΠΡΟΒΛΗΜΑΤΑ Η γλώσσα SAT (SATisfiability = αληθευσιμότητα) είναι NP-πλήρης Ένας λογικός τύπος μπορεί να περιέχει τις λογικές πράξεις ΚΑΙ, Ή και ΟΧΙ, και οι πράξεις αυτές αποτελούν τη βάση των κυκλωμάτων που χρησιμοποιούνται στους ηλεκτρονικούς υπολογιστές. Επομένως, το ότι μπορούμε να σχεδιάσουμε έναν λογικό τύπο που να προσομοιώνει μια μηχανή Turing είναι μάλλον αναμενόμενο. Η δυσκολία έγκειται στις λεπτομέρειες της υλοποίησης αυτής της ιδέας.

8 NP-ΠΛΗΡΗ ΠΡΟΒΛΗΜΑΤΑ Η γλώσσα 3-SAT είναι NP-πλήρης Προφανώς η 3SAT ανήκει στη NP οπότε αρκεί να δείξουμε ότι κάθε γλώσσα στη κλάση NP ανάγεται στη 3SAT σε πολυωνυμικό χρόνο. Παράδειγμα: Δίδεται μια λογική έκφραση σε μορφή CNF με clauses με ακριβώς 3 literals. Υπάρχει ανάθεση τιμών αλήθειας στις μεταβλητές της έκφρασης ώστε αυτή να ικανοποιείται;

9 ΑΛΛΑ NP-ΠΛΗΡΗ ΠΡΟΒΛΗΜΑΤΑ Το φαινόμενο της ΝP πληρότητας εμφανίζεται αρκετά συχνά. Διάφορα ΝΡ – πλήρη προβλήματα απαντούν σε πολλούς διαφορετικούς τομείς μελέτης. Επιπλέον, για λόγους που προς το παρόν δεν είναι κατανοητοί, τα περισσότερα από τα προβλήματα της ΝΡ που ανακύπτουν φυσιολογικά είτε ανήκουν αποδεδειγμένα στην Ρ είτε είναι αποδεδειγμένα ΝΡ πλήρη.

10 ΑΛΛΑ NP-ΠΛΗΡΗ ΠΡΟΒΛΗΜΑΤΑ Αν λοιπόν αναζητά κανείς έναν αλγόριθμο πολυωνυμικού χρόνου για κάποιο νέο πρόβλημα της ΝΡ, είναι λογικό να αφιερώσει μέρος του χρόνου του στην προσπάθεια να αποδείξει ότι το πρόβλημα είναι ΝΡ πλήρες, αφού με τον τρόπο αυτό ενδέχεται να αποφύγει την αναζήτηση ενός αλγορίθμου που πιθανότατα δεν υπάρχει.

11 ΑΛΛΑ NP-ΠΛΗΡΗ ΠΡΟΒΛΗΜΑΤΑ Το πρόβλημα του κομβικού καλύμματος Κομβικό κάλυμμα ενός ακατεύθυντου γραφήματος G είναι οποι ο δήποτε υποσύνολο κόμβων του G τέτοιο ώστε κάθε ακμή να απολήγει σε έναν από αυτούς τους κόμβους. Στο πρόβλημα του κομβικού καλύμματος, το ζητούμενο είναι να προσδιοριστεί εάν ένα γράφημα περιέχει κάποιο κομβικό κάλυμμα συγκεκριμένου μεγέθους.

12 ΑΛΛΑ NP-ΠΛΗΡΗ ΠΡΟΒΛΗΜΑΤΑ Το πρόβλημα του κομβικού καλύμματος Για να δείξουμε ότι η γλώσσα ΚΟΜΒΙΚΟ ΚΑΛΥΜΜΑ είναι ΝΡ πλήρης θα πρέπει να δείξουμε ότι ανήκει στην ΝΡ και ότι κάθε γλώσσα της ΝΡ ανάγεται σε αυτήν σε πολυωνυμικό χρόνο. Για το πρώτο σκέλος το πιστοποιητικό είναι απλώς το k κομβικό κάλυμμα. Για το δεύτερο σκέλος ανάγουμε την γλώσσα ΚΟΜΒΙΚΟ ΚΑΛΥΜΜΑ σε πολυωνυμικό χρόνο.

13 ΑΛΛΑ NP-ΠΛΗΡΗ ΠΡΟΒΛΗΜΑΤΑ Το πρόβλημα του κομβικού καλύμματος Η αναγωγή συνίσταται στη μετατροπή κάθε τύπου φ σε ένα γράφημα G και σε έναν αριθμό k, έτσι ώστε ο φ να είναι αληθεύσιμος όταν και μόνο όταν το G έχει κάποιο k κομβικό κάλυμμα. Η μετατροπή γίνεται χωρίς να γνωρίζουμε εάν ο φ είναι η όχι αληθεύσιμος.

14 ΑΛΛΑ NP-ΠΛΗΡΗ ΠΡΟΒΛΗΜΑΤΑ Το πρόβλημα της χαμιλτονιανής διαδρομής Στο πρόβλημα αυτό ζητούμενο είναι να προσδιοριστεί αν το γράφημα εισόδου περιέχει διαδρομή που ξεκινάει από κάποιο κόμβο s, καταλήγει σε κάποιο κόμβο t, και διέρχεται από κάθε κόμβο του γραφήματος ακριβώς μία φορά.

15 ΑΛΛΑ NP-ΠΛΗΡΗ ΠΡΟΒΛΗΜΑΤΑ Το πρόβλημα της χαμιλτονιανής διαδρομής Για να αποδείξουμε ότι η γλώσσα ΧΑΜΙΛΤΟΝΙΑΝΗ ΔΙΑΔΡΟΜΗ είναι ΝΡ πλήρης μένει να δείξουμε ότι κάθε γλώσσα της ΝΡ ανάγεται στη ΧΑΜΙΛΤΟΝΙΑΝΗ ΔΙΑΔΡΟΜΗ σε πολυωνυμικό χρόνο. Για το σκοπό αυτό, αναγάγουμε σε πολυωνυμικό χρόνο τη γλώσσα 3SAT στη ΧΑΜΙΛΤΟΝΙΑΝΗ ΔΙΑΔΡΟΜΗ.

16 ΑΛΛΑ NP-ΠΛΗΡΗ ΠΡΟΒΛΗΜΑΤΑ Η γλώσσα ακατεύθυντη χαμιλτονιανή διαδρομή είναι ΝΡ πλήρης Η αναγωγή δέχεται ένα κατευθυντό γράφημα G και δύο κόμβους του, s και t, και επιστρέφει ένα ακατεύθυντο γράφημα G’ και δύο κόμβους του, s’ και t’. Το G περιέχει χαμιλτονιανή διαδρομή από τον s μέχρι τον t εάν και μόνο εάν το G’ περιέχει χαμιλτονιανή διαδρομή από τον s’ μέχρι τον t’.

17 ΑΛΛΑ NP-ΠΛΗΡΗ ΠΡΟΒΛΗΜΑΤΑ Το πρόβλημα του αθροίσματος υπακολουθίας Στο πρόβλημα αυτό μας δίδεται μια ακολουθια αριθμών και ένας αριθμός – στόχος t και μας ζητείται να προσδιορίσουμε εάν η ακολουθία εμπεριέχει κάποια υπακολουθία τα μέλη της οποίας έχουν άθροισμα t.

18 ΑΛΛΑ NP-ΠΛΗΡΗ ΠΡΟΒΛΗΜΑΤΑ Το πρόβλημα του αθροίσματος υπακολουθίας Για να καταστρώσουμε την αναγωγή στην ΝΡ πλήρη γλώσσα 3SAT θα βρούμε δομές του προβλήματος ΑΘΡΟΙΣΜΑ ΥΠΑΚΟΛΟΥΘΙΑΣ (πχ να αναπαριστούν μεταβλητές και φράσεις). Το στιγμιότυπο του προβλήματος το οποίο θα κατασκευάσουμε περιέχει αριθμούς μεγάλου μεγέθους, γραμμένους στο δεκαδικό σύστημα. Κάθε μεταβλητή αναπαρίσταται από ένα ζεύγος αριθμών της ακολουθίας ενώ κάθε φράση αντιστοιχεί σε μια συγκεκριμένη θέση στις δεκαδικές αναπαραστάσεις των αριθμών.


Κατέβασμα ppt "ΘΕΩΡΙΑ ΠΟΛΥΠΛΟΚΟΤΗΤΑΣ ΠΑΡΟΥΣΙΑΣΗ ΣΤΑ ΚΕΦΑΛΑΙΑ 7.4 – 7.6 NP ΠΛΗΡΟΤΗΤΑ."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google