Ασκήσεις Επανάληψης. Επανάληψη Εαρινό Εξάμηνο 2019 Σελίδα 1

Σχετικά έγγραφα
Σειρά Προβλημάτων 5 Λύσεις

Σειρά Προβλημάτων 5 Λύσεις

Ασκήσεις από παλιές εξετάσεις

Σειρά Προβλημάτων 5 Λύσεις

Σειρά Προβλημάτων 5 Λύσεις

Σειρά Προβλημάτων 5 Λύσεις

Σειρά Προβλημάτων 5 Λύσεις

Φροντιστήριο 11 Λύσεις

Σειρά Προβλημάτων 5 Λύσεις

Φροντιστήριο 9 Λύσεις

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

Σειρά Προβλημάτων 4 Λύσεις

Φροντιστήριο 10 Λύσεις

Σειρά Προβλημάτων 4 Λύσεις

Σειρά Προβλημάτων 4 Λύσεις

Σειρά Προβλημάτων 4 Λύσεις

Σειρά Προβλημάτων 4 Λύσεις

Σειρά Προβλημάτων 4 Λύσεις

Σειρά Προβλημάτων 1 Λύσεις

Σειρά Προβλημάτων 4 Λύσεις

Σειρά Προβλημάτων 4 Λύσεις

Σειρά Προβλημάτων 4 Λύσεις

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

Λύσεις 4ης Σειράς Ασκήσεων

Σειρά Προβλημάτων 1 Λύσεις

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

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

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Επανάληψη Μαθήματος

Σειρά Προβλημάτων 1 Λύσεις

Σειρά Προβλημάτων 3 Λύσεις

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 16: Αναγωγές

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

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 15: Διαγνωσιμότητα (Επιλυσιμότητα) ΙΙ

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

Chapter 7, 8 : Completeness

Σειρά Προβλημάτων 1 Λύσεις

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

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

Σειρά Προβλημάτων 3 Λύσεις

Σειρά Προβλημάτων 3 Λύσεις

Φροντιστήριο 2 Λύσεις

Φροντιστήριο 2 Λύσεις

Φροντιστήριο 8 Λύσεις

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 13: Παραλλαγές Μηχανών Turing και Περιγραφή Αλγορίθμων

Φροντιστήριο 8 Λύσεις

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

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

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

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

Σειρά Προβλημάτων 3 Λύσεις

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

Σειρά Προβλημάτων 3 Λύσεις

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

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 14: Διαγνωσιμότητα (Επιλυσιμότητα)

Τομές Γραφήματος. Γράφημα (μη κατευθυνόμενο) Συνάρτηση βάρους ακμών. Τομή : Διαμέριση του συνόλου των κόμβων σε δύο μη κενά σύνολα

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Ασυμφραστικές Γλώσσες (2)

Θεωρία Υπολογισμού και Πολυπλοκότητα Κανονικές Γλώσσες (1)

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

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

CSC 314: Switching Theory

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος στη δεύτερη έκδοση

Θεωρία Υπολογισμού και Πολυπλοκότητα Κανονικές Γλώσσες (2)

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

Αυτόματα και Υπολογιστικά Μοντέλα Automata and Models of Computation

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

Σειρά Προβλημάτων 3 Λύσεις

Σειρά Προβλημάτων 1 Λύσεις

Σειρά Προβλημάτων 3 Λύσεις

Φροντιστήριο 7 Λύσεις

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

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 18: Χρονική και Χωρική Πολυπλοκότητα

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Ασυμφραστικές Γλώσσες (2)

Η NTM αποδέχεται αν µονοπάτι στο δέντρο που οδηγεί σε αποδοχή.

Αυτόματα. Παράδειγμα: πωλητής καφέ (iii) Παράδειγμα: πωλητής καφέ (iv) Εισαγωγή στην Επιστήμη των Υπολογιστών 6

Άσκησηη 1. (α) Το αυτόματο. (γ) Να δείξετε όλα aabbb. Λύση. λέξεις. αυτόματο. (β) Τυπικά. μεταβάσεων δ. ορίζεται. (γ) Θα δείξουμε τα.

Σειρά Προβλημάτων 3 Λύσεις

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

HY118-Διακριτά Μαθηματικά. Θεωρία γράφων / γραφήματα. Τι έχουμε δει μέχρι τώρα. Υπογράφημα. 24 -Γράφοι

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

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

Chapter 7, 8 : Time, Space Complexity

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 2: Μαθηματικό Υπόβαθρο

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

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

Αλγόριθμοι για αυτόματα

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

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

Θεωρία Γραφημάτων 6η Διάλεξη

HY118-Διακριτά Μαθηματικά

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

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Ασυμφραστικές Γλώσσες (3)

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

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

Μέγιστη ροή. Κατευθυνόμενο γράφημα. Συνάρτηση χωρητικότητας. αφετηρίακός κόμβος. τερματικός κόμβος. Ροή δικτύου. με τις ακόλουθες ιδιότητες

HY118- ιακριτά Μαθηµατικά. Θεωρία γράφων / γραφήµατα. Τι έχουµε δει µέχρι τώρα. Υπογράφηµα Γράφοι

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

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

Transcript:

Ασκήσεις Επανάληψης Άσκηση 1 (Τελική Εξέταση 5/015) Να δείξετε ότι η πιο κάτω γλώσσα δεν είναι διαγνώσιμη. { Μ L(M) {ΘΕΩΡΙΑ, ΥΠΟΛΟΓΙΣΜΟΥ} και L(M) 3} (Για την αναγωγή μπορείτε να χρησιμοποιήσετε τη γνωστή μη διαγνώσιμη γλώσσα Α ΤΜ.) Λύση: Θέλουμε να δείξουμε ότι η γλώσσα ΘΥ3 = { Μ L(M) {ΘΕΩΡΙΑ, ΥΠΟΛΟΓΙΣΜΟΥ} και L(M) 3} είναι μη διαγνώσιμη. Για να το δείξουμε θα αναγάγουμε μια γνωστή μη διαγνώσιμη γλώσσα, την Α ΤΜ, στην υπό μελέτη γλώσσα ΘΥ3. Συγκεκριμένα, ας υποθέσουμε ότι η γλώσσα ΘΥ3 είναι διαγνώσιμη και η ΤΜ R είναι σε θέση να τη διαγνώσει. Με βάση τον διαγνώστη R θα κατασκευάσουμε ένα διαγνώστη S για το πρόβλημα Α ΤΜ. Αυτό μας οδηγεί σε αντίφαση και επομένως η ΘΥ3 είναι μια μη διαγνώσιμη γλώσσα. O διαγνώστης S έχει ως εξής: S = Με είσοδο Μ,w 1. Φτιάξε τη ΤΜ M η οποία με είσοδο x: (α) Αν x = ΘΕΩΡΙΑ, η Μ αποδέχεται (β) Αν x = ΥΠΟΛΟΓΙΣΜΟΥ, η Μ αποδέχεται (γ) Διαφορετικά, η Μ τρέχει το Μ με είσοδο w. Αν η Μ αποδεχτεί το w τότε και η M αποδέχεται διαφορετικά απορρίπτει.. Τρέξε την R με είσοδο M. 3. Αν η R αποδεχτεί ΑΠΟΔΕΞΟΥ. 4. Αν η R απορρίψει ΑΠΟΡΡΙΨΕ. Εξετάζοντας την πιο πάνω μηχανή παρατηρούμε ότι η μηχανή Μ αποδέχεται τις λέξεις ΘΕΩΡΙΑ και ΥΠΟΛΟΓΙΣΜΟΥ και τουλάχιστον ακόμα μια λέξη, αν και μόνο αν η μηχανή Μ αποδέχεται τη λέξη w. Ως εκ τούτου, με είσοδο τη μηχανή Μ, o διαγνώστης R θα αποδεχτεί αν και μόνο αν η μηχανή Μ αποδέχεται τις λέξεις ΘΕΩΡΙΑ, ΥΠΟΛΟΓΙΣΜΟΥ και τουλάχιστον ακόμα μια λέξη ή, ισοδύναμα, αν και μόνο αν η μηχανή Μ αποδέχεται τη λέξη w. Αυτό ολοκληρώνει την απόδειξη. Επανάληψη Εαρινό Εξάμηνο 019 Σελίδα 1

Άσκηση (Τελική Εξέταση 5/01) Θεωρήστε την πιο κάτω γλώσσα: ΑΝΕΞΑΡΤΗΤΟ_ΣΥΝΟΛΟ = { G,k o G = (V,E) είναι ένα γράφος ο οποίος διαθέτει ένα σύνολο κόμβων S V μεγέθους k τέτοιο ώστε για κάθε u, v S, (u,v) E } Για παράδειγμα, G,3, όπου G o πιο κάτω γράφος, ανήκει στο ΑΝΕΞΑΡΤΗΤΟ_ΣΥΝΟΛΟ αφού διαθέτει το σύνολο με τρεις κόμβους {,3,5} όπου οι κόμβοι, 3 και 5 δεν συνδέονται μεταξύ τους μέσω ακμών. 1 3 5 4 (α) Να δείξετε ότι το πρόβλημα αυτό ανήκει στην κλάση ΝΡ. (β) Να δείξετε ότι το πρόβλημα είναι ΝΡ πλήρες. Λύση (α) Ακολουθεί αλγόριθμος Ν που αποτελεί μη ντετερμινιστικό διαγνώστη πολυωνυμικού χρόνου για το πρόβλημα. Ν := Για είσοδο G, k όπου G ένα μη κατευθυνόμενο γράφημα και k ένας ακέραιος: 1. Επιλέγουμε μη ντετερμινιστικά ένα σύνολο k κόμβων του G, έστω C. Ελέγχουμε αν κάποιο ζεύγος κορυφών του C συνδέεται μέσω ακμή στον γράφο G. 3. Αν υπάρχει κάποιο ζεύγος κορυφών που συνδέεται μέσω ακμής απορρίπτουμε, διαφορετικά, αποδεχόμαστε. Ο χρόνος εκτέλεσης του Ν είναι πολυωνυμικός ως προς το μέγεθος του γράφου, επομένως ο Ν αποτελεί μη ντετερμινιστικό διαγνώστη πολυωνυμικού χρόνου για το πρόβλημα. Συμπεραίνουμε ότι το πρόβλημα ανήκει στην κλάση ΝΡ. (β) Για να δείξουμε ότι το πρόβλημα είναι ΝΡ πλήρες αρκεί να δείξουμε ότι ένα γνωστό ΝΡπλήρες πρόβλημα μπορεί να αναχθεί σε αυτό. Η αναγωγή θα γίνει από το πρόβλημα ΚΛΙΚΑ. Συγκεκριμένα, θα δείξουμε ότι αν υπάρχει πολυωνυμική λύση για το πρόβλημα ΑΝΕΞΑΡΤΗΤΟ_ΣΥΝΟΛΟ τότε υπάρχει πολυωνυμική λύση και για το πρόβλημα ΚΛΙΚΑ. Έστω ένας γράφος G = (V,E) και παράμετρος k. Θέλουμε να αποφασίσουμε κατά πόσο υπάρχει k κλίκα στον γράφο. Κατασκευάζουμε τον γράφο G ως τον γράφο με κορυφές τις κορυφές του G και ακμή ανάμεσα σε δύο κορυφές αν και μόνο οι δύο κορυφές δεν συνδέονται στον γράφο G. Δηλαδή, G = (V,E ) όπου Ε = {(u,v) (u,v) E} Ας υποθέσουμε ότι υπάρχει πολυωνυμική λύση για το πρόβλημα ANEΞΑΡΤΗΤΟ_ΣΥΝΟΛΟ. Τρέχουμε τον σχετικό αλγόριθμο στον γράφο G. Αν ο αλγόριθμος αποδεχτεί τότε Επανάληψη Εαρινό Εξάμηνο 019 Σελίδα

απαντούμε ότι ο αρχικός μας γράφος περιέχει k κλίκα, διαφορετικά, αν απορρίψει, τότε απαντούμε ότι ο γράφος δεν περιέχει k κλίκα. Ορθότητα: Παρατηρούμε τα εξής: Ο γράφος G περιέχει ανεξάρτητo σύνολο μεγέθους k αν και μόνο αν υπάρχει σύνολο S={v 1, v,, v k} τέτοιο ώστε για κάθε v i, v j S, (v i,v j) E αν και μόνο αv υπάρχει σύνολο S={v 1, v,, v k} τέτοιο ώστε για κάθε v i, v j S, (v i,v j) E (από τον ορισμό του Ε ) αν και μόνο αv ο γράφος G περιέχει k κλίκα. Συμπέρασμα: Αν το πρόβλημα ΑΝΕΞΑΡΤΗΤΟ_ΣΥΝΟΛΟ επιλύεται σε πολυωνυμικό χρόνο τότε και το πρόβλημα ΚΛΙΚΑ επιλύεται σε πολυωνυμικό χρόνο. Επομένως, αφού το πρόβλημα της ΚΛΙΚΑΣ είναι ΝΡ πλήρες και το πρόβλημα ΑΝΕΞΑΡΤΗΤΟ_ΣΥΝΟΛΟ είναι ΝΡπλήρες. Επανάληψη Εαρινό Εξάμηνο 019 Σελίδα 3

Άσκηση 3 (Τελική Εξέταση 5/018) Πιο κάτω υπάρχει ένα σχεδιάγραμμα που τοποθετεί τις κλάσεις των κανονικών, ασυμφραστικών, διαγνώσιμων και αναγνωρίσιμων γλωσσών μέσα στο σύνολο όλων των γλωσσών. Ακολουθούν 1 αριθμημένες γλώσσες. Να γράψετε τον αριθμό κάθε γλώσσας στην κλάση που ανήκει. Σαν παράδειγμα έχουν ήδη τοποθετηθεί στο διάγραμμα οι αριθμοί των δύο πρώτων γλωσσών: η γλώσσα με αριθμό 1 είναι κανονική ενώ η γλώσσα με αριθμό είναι αναγνωρίσιμη (αλλά δεν είναι ούτε διαγνώσιμη, ούτε ασυμφραστική, ούτε κανονική). Όλες οι Γλώσσες Αναγνωρίσιμες Γλ. Διαγνώσιμες Γλ. Ασυμφραστικές Γλ. Κανονικές Γλ. 1 1. Σ *. Α ΤΜ (Το πρόβλημα της Αποδοχής σε Μηχανές Turing) 3. { a i b j c k i,j,k 0 και i = j ή i = k ή j = k } 4. { D το D είναι ένα DFA το οποίο αποδέχεται όλες τις λέξεις στο Σ * } 5. { w {a,b} * η w περιέχει διπλάσιο αριθμό a από b } 6. k ΚΛΙΚΑ (To πρόβλημα εύρεσης k κλίκας σε ένα γράφο) 7. { Μ,k η Μ είναι μια ΤΜ η οποία αποδέχεται τουλάχιστον μια λέξη μήκους k } 8. { a i b j a j b i i, j > 0 } 9. { Μ,w η Μ είναι μια ΤΜ η οποία εγκλωβίζεται στη λέξη w } Επανάληψη Εαρινό Εξάμηνο 019 Σελίδα 4

10. { ww R a w w {a,b} * } 11. { G 1, G οι G 1 και G είναι δύο CFG που παράγουν μια κοινή λέξη μήκους 100 } 1. { a k baba n k = n mod } Λύση Αναγνωρίσιμες Γλ. Όλες οι Γλώσσες 7 6 Διαγνώσιμες Γλ. Ασυμφραστικές Γλ. 10 9 Κανονικές Γλ. 1 1 3 8 11 5 4 Επανάληψη Εαρινό Εξάμηνο 019 Σελίδα 5