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

Save this PDF as:
 WORD  PNG  TXT  JPG

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

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

Transcript

1 Θεωρία Υπολογισμού και Πολυπλοκότητα Κεφάλαιο 14. Χρονική Πολυπλοκότητα 17, 20, 24 Απριλίου 2007 Δρ. Παπαδοπούλου Βίκη 1

2 Υπολογίσιμα και Εφικτά Υπολογίσιμα Προβλήματα Είδαμε ότι 1. Οτιδήποτε μπορούμε να περιγράψουμε με ένα αλγόριθμο μπορεί να υπολογιστεί με μια μηχανή Turing 2. υπάρχουν προβλήματα που δεν μπορούν να επιλυθούν (π.χ. πρόβλημα τερματισμού 3. υπάρχουν προβλήματα που μπορούν να επιλυθούν Επιλύσιμα προβλήματα Πόσους υπολογιστικούς πόρους απαιτούν χρόνο χώρο? 2

3 Παράδειγμα Το πρόβλημα του Πλανώδιου πωλητή: Για ένα σύνολο από πόλεις και κόστη διαδρομών από πόλη σε πόλη, βρες μια διαδρομή που να περνά από κάθε κόμβο του δικτύου ακριβώς μια φορά και να ελαχιστοποιεί την συνολικό κόστος της διαδρομής που θα ακολουθηθεί. Μπορεί να λυθεί σε (n-1)! χρόνο. Είναι μη ρεαλιστικός! Συμπέρασμα. Ορισμένα επιλύσιμα προβλήματα είναι υπολογιστικά δύσκολα 3

4 Ασυμπτωματικός Ρυθμός Ανάπτυξης Μια συνάρτηση f(n) λέμε ότι αυξάνεται πιο αργά από την συνάρτηση g(n) και συμβολίζεται f(n) g(n) εάν Γράφουμε f(n)= o (g(n)) εάν f(n) g(n) f(n)= Ο (g(n)) εάν για όλα τα n 0, f(n) K g(n). Γνωστές συναρτήσεις: (i=σταθερό) 1. Πολυλογαριθμική Σειρά: { (log(n)) i i = 1,2,...} 2. Πολυωνιμική Σειρά: {n i i = 1, 2,...} 3. Υποεκθετική Σειρά: { nlog n i i = 1,2,...} 4. Εκθετική Σειρά: {2 in i = 1,2,...} 5. Υπερεκθετική Σειρά: {2 n i i = 1,2,...} 4

5 Ιδιότητες Σε κάθε σειρά, εάν i < j τότε η i-οστή συνάρτηση αυξάνεται πιο αργά από την j-οστή. Π.χ., nlog(n) 3 nlog(n) 4. Για οποιεσδήποτε δύο σειρές, κάθε συνάρτηση στην προγενέστερη σειρά αυξάνεται πιο αργά από οποιαδήποτε συνάρτηση στην μεταγενέστερη σειρά. (εκτός απο την πρώτη συνάρτηση της τελευταίας σειράς). Π.χ., (log(n) 64 n n 2n 3. 5

6 Πολυπλοκότητα Χώρου και Χρόνου Υπολογιστική Πολυπλοκότητα μιας μηχανής Turing Χρόνος Χώρος (μνήμη) ΧΡΟΝΟΣ. Χρόνος εκτέλεσης μιας μηχανής Turing με είσοδο w, Time M (x) : Aριθμός βημάτων της μηχανής έως ότου η μηχανή τερματίσει. Αν δεν τερματίσει ο χρόνος είναι άπειρος Φράγμα χρόνου της M, t(n) x n, ( υποθέτουμε t(n) n+1 ) Time M (x) max{n+1, t(n)} 6

7 Πολυπλοκότητα Χρόνου Ποιο μοντέλο μηχανής Turing θεωρούμε? Θεώρημα. Για οποιαδήποτε Ντετερμινιστική Μηχανή Τuring (NMT) με πολλές ταινίες M, υπάρχει μια διπλής κατεύθυνσης, μονής ταινίας ΝΜΤ M 1 που υπολογίζει την ίδια συνάρτηση τέτοια ώστε για όλες τις εισόδους x, έχουμε Time M1 (x) c (Time M (x)) 2 γιακάποιασταθερά c > 0. 7

8 Πολυπλοκότητα Χώρου Για λέξη εισόδου x, ο χώρος μνήμης, Space M (x) τον οποίο η ΝΜΤ M χρησιμοποιεί πάνω στην x είναι οαριθμόςτωνκελιώνπάνωστιςταινίεςεργασίας(διάβασμα, εγγραφή) τα οποία η κεφαλή της ταινίας επισκέπτεται τουλάχιστον μια φορά κατά την διάρκεια του υπολογισμού. Η ΝΜΤ έχει ένα φράγμα χώρου s(n) εάν για είσοδο x, Space M (x) max {1,d s( x )e} Θεώρημα Για οποιοδήποτε ΝΜΤ με πολλές ταινίες Μ, υπάρχει ένα τυπικό ΝΜΤ μονής ταινίας εργασίας M 2 που υπολογίζει την ίδια συνάρτηση τέτοιο ώστε Space M2 (x) Space M (x) για όλα τα x. 8

9 Πολυπλοκότητα Χρόνου και Χώρου Θεώρημα 1. Για οποιαδήποτε ΝΜΤ M μονής ταινίας εργασίας και οποιαδήποτε είσοδο x, Space M (x) Time M (x) + 1. Συμπέρασμα. Ο χώρος είναι πιο ισχυρός από τον χρόνο, μπορούμε να επαναχρησιμοποιήσουμε τον χώρο ενώ τον χρόνο όχι. Ορισμός. Μια γλώσσα έχει χρονική πολυπλοκότητα f(n) εάν αποφασίζεται από μια ΝΜΤ με πολλές ταινίες με φράγμα χρόνου f(n). Ορισμός. Μιαγλώσσαέχειχωρική πολυπλοκότητα f(n) εάν αποφασίζεται από μια ΝΜΤ με πολλές ταινίες με φράγμα χώρου f(n). Για οποιαδήποτε συνάρτηση f(n), ορίζουμε κλάσεις πολυπλοκότητας: DTIME(f(n)) = {L L έχει χρονική πολυπλοκότητα f(n) } DSPACE(s(n)) = {L L έχει χωρική πολυπλοκότητα s(n) } 9

10 Συντελεστές της f(n) είναι σημαντικοί? Θεώρημα Συμπίεσης Ταινίας. Για οποιαδήποτε συνάρτηση s(n) και οποιαδήποτε σταθερά c > 0, DSPACE(s(n)) = DSPACE(c s(n)). Θεώρημα Θεώρημα Γραμμικής Επιτάχυνσης. Υποθέστε ότι lim n t(n)/n =. Τότε, για οποιαδήποτε σταθερά c > 0, DTIME(t(n)) = DTIME(c t(n)) Συμπέρασμα. Χρησιμοποιούμε τους τυπικούς ασύμπτωτικους ρυθμούς ανάπτυξης της f(n) (πχ. log n, n 2, 2 n ) για τις κλάσεις πολυπλοκότητας DSPACE(f(n)) και DTIME(f(n)) χωρίς να καθορίσουμε τους συντελεστές της f(n). 10

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

12 Κλάση P (Polynomial Time) H ΝΜΤ M είναι μια ΝΜΤ πολυωνυμικού χρόνου εάν η M έχει φράγμα χρόνου t(n) για κάποια πολυωνυμική συνάρτηση t(n) = n c. Μια γλώσσα L είναι πολυνωνυμικά αποφασίσιμη αν υπάρχει μηχανή ΝΜΤ πολυωνυμικού χρόνου Μ που την αποφασίζει. Συμπερασματικά: H κλάση P περιέχει προβλήματα που μπορούν να αποφασιστούν σε πολυωνυμικό χρόνο από μια Ντετερμινιστική μηχανή Turing. Παρατήρηση. Από το Θεώρημα 1 (Space M (x) Time M (x) + 1), P PSPACE 12

13 Κλάση P Θεώρημα. ΗκλάσηP είναι κλειστή ως προς την πράξη της σύνθεσης, σύμπτυξης, ένωση, τομή, και συμπληρώματος, για γλώσσες. Απόδειξη. (ένωση A B) Έστω Μ 1 η ΝΜΤ που αποφασίζει για την γλώσσα A με φράγμα χρόνου p 1 Έστω Μ 2 η ΝΜΤ που αποφασίζει για την γλώσσα την B με φράγμα χρόνου p 2 p 1, p 2 : πολυωνυμικές συναρτήσεις ΗμηχανήΜ δύο ταινιών, για είσοδο w, αντιγράφει την w στην 2 η ταινία. Πρώτα προσομοιώνει την Μ 1 με είσοδο w στην 1η ταινία Mετά προσομοιώνει την M 2 με είσοδο w στην 2η ταινία Εάν είτε η Μ 1 είτε η Μ 2 αποδέχεται τη λέξη, η Μ αποδέχεται τη λέξη Αλλιώς την απορρίπτει. η Μ αποδέχεται την w εάν και μόνο αν είτε w Α ή w B. 13

14 Θήκη Kleene Έστω μια γλώσσα A P. Δείχνουμε ότι τότε Α * P. w in A* εάν και μόνο αν υπάρχει διαμερισμός της w ( w =n) σε υποσυμβολισειρές x=x 1 L x m, 1 m n, τέτοια ώστε x i A, για κάθε i=1, L m. Θεώρημα. ΗκλάσηP είναι κλειστή ως προς την πράξη της θήκης Kleene για γλώσσες. Απόδειξη. (Φροντιστήριο) 14

15 Γενικά Αποδεκτή Άποψη. ΗκλάσηP αντιπροσωπεύει την κλάση των εφικτών επιλύσιμων γλωσσών, ήαπλάεφικτών προβλημάτων. 15

16 Κλάση PSPACE (polynomial space) Περιέχει τα προβλήματα που μπορούν να λυθούν σε πολυωνυμικό χώρο. Ένα πρόβλημα που απαιτεί για παράδειγμα εκθετικό χρόνο μπορεί να απαιτεί μόνο πολυωνυμικό χώρο. Επειδή μπορούμε να αναγραφούμε στην ταινία στα σημεία τα οποία δεν θα τα χρειαστούμε στο μέλλον. Θεώρημα. PSPACE EXPPOLY Μια γλώσσα στην PSPACE μπορεί να επιλυθεί σε υποεκθετικό χρόνο. Μπορεί να λυθεί σε πολυνωνυμικό χρόνο? Μεγάλο αναπάντητο ερώτημα.. 16

17 Κλάση P 17

18 Προβλήματα στην κλάση P Μια κανονική γλώσσα L μπορεί να αποφασιστεί σε πολυωνυμικό χρόνο: Πώς?: από το διάγραμμα καταστάσεων ενός αυτόματου που δέχεται τη γλώσσα προκύπτει ένας αλγόριθμος που ελέγχει εάν w L, σε χρόνο w. Σύνολο Κανονικών γλωσσών P Μια γλώσσα χωρίς συμφραζόμενα L μπορεί να αποφασιστεί σε πολυωνυμικό χρόνο: Πώς?: από το διάγραμμα καταστάσεων του αυτόματου στοίβας το οποίο δέχεται τη γλώσσα προκύπτει ένας αλγόριθμος που ελέγχει εάν w L, σε χρόνο w.(σύνθετος αλγόριθμος, επειδή τα αυτόματα στοίβας είναι μη ντετερμινιστικά) Σύνολο γλωσσών χωρίς συμφραζόμενα P 18

19 Προβλήματα Πρόβλημα Συνεκτικότητας. Δεδομένου ενός κατευθυνόμενου γραφήματος G, υπάρχει ένα μονοπάτι μεταξύ δύο κόμβων v i, v j, όπου v i, v j V? Το πρόβλημα ανήκει στο P? H κλάση P αφορά γλώσσες!! Μετατρέπουμε το πρόβλημα έτσι ώστε να αφορά γλώσσες : Το Πρόβλημα Συνεκτικότητας σε μορφή γλώσσας: Γλώσσα R = {κ(g) b(i) b(j) : υπάρχει μονοπάτι από τον v i, v j στο G(V, E) } κ(g) = κωδικοποίηση G : δίνεται με ένα πίνακα γειτνίασης a(), a(i,j) =1 εάν και μόνο εάν υπάρχει ακμή μεταξύ των κόμβων v i και v j, όπου i, j n. b(i), b(j) = κωδικοποίηση των κόμβων v i και v j 19

20 Προβλήματα και Γλώσσες Έτσι, αναφερόμαστε σε προβλήματα και εννοούμε ότι τις αντίστοιχες γλώσσες τους. Το πρόβλημα συνεκτικότητας ανήκει P λύνεται σε χρόνο O(n 2 )(n=πλήθος κόμβων του G) Πώς? Μέσω ψαξίματος κατά πλάτος αρχίζοντας από τον κόμβο v i. 20

21 Προβλήματα.. Πρόβλημα Κύκλου Euler: Δεδομένου ενός γραφήματος G, υπάρχει κλειστό μονοπάτι στο G, το οποίο χρησιμοποιεί κάθε ακμή του G ακριβώς μια φορά? Σε μορφή γλώσσας: L = {κ(g) : το G είναι ένα γράφημα Euler (=έχει ένα κύκλο Euler)} Η L ανήκει στο P: Γιατί υπάρχει ένας χαρακτηρισμός (τηςμορφήςοg είναι γράφος Euler εάν και μόνο αν ισχύει κάτι) οοποίοςμπορεί να ελεγχθεί σε πολυωνυμικό χρόνο. 21

22 Προβλήματα που φαίνεται να ΜΗΝ ανήκουνστηνκλάσηp 22

23 Προβλήματα Πρόβλημα Κύκλου Hamilton: Δεδομένου ενός γραφήματος G, υπάρχειέναςκύκλοςπουναπερνάαπόκάθεκορυφήτουg ακριβώς μια φορά? Ένας αλγόριθμος για το πρόβλημα: εξέτασε όλες τα πιθανά μονοπάτια κόμβων έλεγξε εάν είναι Hamilton κύκλος. Απαιτεί εκθετικό χρόνο! Δενείναιγνωστόςπολυωνυμικόςαλγόριθμοςγιατοπρόβλημα 23

24 Προβλήματα Βελτιστοποίησης Το πρόβλημα του Πλανώδιου πωλητή: Για ένα δεδομένο δίκτυο με n κόμβους και αποστάσεις d ij που συμβολίζει την απόσταση των κόμβων v i v j, βρες μια διαδρομή π: που να περνά από κάθε κόμβο του δικτύου ακριβώς μια φορά και ελαχιστοποιεί τηνσυνολικήαπόστασηπουθαδιανυθεί. Δηλ. Βρες μια μετάθεση π του {1, 2, n} (δηλ. π(i) είναι η σειρά που περνούμε από την πόλη i στην διαδρομή) που να ελαχιστοποιεί το άθροισμα: c(π)= d π(1)π(2) + d π(1)π(2) +.+ d π(1)π(2) Μας ενδιαφέρει ΟΧΙ ΜΟΝΟ να βρουμε κάτι αλλά υπάρχει μια συνάρτηση κόστους c(π) ΚΑΙ επιθυμούμε να ικανοποιείται από το κατι. Ως γλώσσα: Δεδομένου ενός δικτύου με n κόμβους και αποστάσεις d ij και ενός ακεραίου B, υπάρχει μια μετάθεση του δικτύου τέτοια ώστε c(π) Β? 24

25 Το πρόβλημα του Πλανώδιου πωλητή ΠΑΡΑΤΗΡΗΣΗ. Αν μπορούσαμε να λύσουμε το πρόβλημα βελτιστοποίησης, θα μπορούσαμε να λύσουμε και το πρόβλημα ως γλώσσα. δηλ. το πρόβλημα βελτιστοποίησης είναι πιο δύσκολο από την έκδοση του προβλήματος ως γλώσσα Δεν είναι γνωστός πολυνωνυμικός αλγόριθμος για το πρόβλημα 25

26 Το πρόβλημα Μέγιστου Ανεξάρτητου Συνόλου Το πρόβλημα μέγιστου ανεξάρτητου συνόλου: Για ένα δεδομένο γράφημα G(V, E) βρες ένα υποσύνολο I V τέτοιο ώστε για κάθε v i, v j Ι ισχύει (v i, v j ) Ε το Ι είναι το μέγιστο δυνατό για το γράφημα G. Σε μορφή γλώσσας: Το πρόβλημα μέγιστου ανεξάρτητου συνόλου: Για ένα δεδομένο γράφημα G(V, E) και ενός ακεραίου K, υπάρχει ένα υποσύνολο I V τέτοιο ώστε για κάθε v i, v j Ι (v i, v j ) V Ι K? Δεν είναι γνωστός πολυωνυμικός αλγόριθμος για το πρόβλημα 26

27 Ικανοποιησιμότητα Τύπων Bool Ορισμός. Τύπος Bool Χ={x 1, L, x n } : Δυαδικές Μεταβλητές Bool : αρνήσεις των x 1 L, x n ή literals Συνθήκη = (x i L x j )= (x i, L, x j ) = x 1 ή ή x j (x i : στοιχεία της C) Τύπος Bool σε κανονική διαζευκτική μορφή: F = {C 1, L, C m } = C 1 και C 2 και C m Παράδειγμα. 27

28 Ικανοποιησιμότητα Τύπων Bool Ορισμός (συνέχεια). Απόδοση τιμών αληθείας (truth assignment) Τ για τον F είναι μια συνάρτηση Τ: Χ {>, }, όπου > = αληθές = ψευδές Η Τ ικανοποιεί τον F εάν: για κάθε συνθήκη C F υπάρχει τουλάχιστον μια μεταβλητή x i, τέτοια ώστε είτε 1. T(x i ) = > και x i C (x i : αληθές στοιχείο) είτε 2. T(x i ) = και : αληθές στοιχείο) O F είναι ικανοποιήσιμος εάν υπάρχει μια απόδοση τιμών αληθείας που τον ικανοποιεί. 28

29 Παράδειγμα. H Τ είναι αληθής για την F. 29

30 Παράδειγμα. Παράδειγμα 2. Ο F δεν είναι ικανοποιήσιμος! Γιατί? 30

31 Πρόβλημα Ικανοποιησιμότητας Ορισμός. Ικανοποιησιμότητα (Satisfiability) ή SAT : Δεδομένου ενός τύπου Bool F σε κανονική διαζευκτική μορφή, είναι ικανοποιήσιμος? Δεν υπάρχει γνωστός πολυωνυμικός αλγόριθμος για το πρόβλημα 31

32 Ειδικές περιπτώσεις δύσκολων προβλημάτων Περιορισμός SAT σε δύο στοιχεία για κάθε συνθήκη : 2-SAT Παράδειγμα. 32

33 Πολυωνυμικός Αλγόριθμος για το 2-SAT 1. Ξεκαθάρισμα: 1. Εάν έχουμε μια συνθήκη με μόνο ένα στοιχείο, θέτουμε την αντίστοιχη σε μεταβλητή έτσι ώστε η συνθήκη να είναι αληθής. 2. Ελέγχουμε τις υπόλοιπες συνθήκες: 1. αν έχουν το ίδιο στοιχείο είναι αληθείς. Oπότε τις αφαιρούμε. 2. αν έχουν την άρνηση του στοιχείου σημαίνει ότι το 2 ο στοιχείο της συνθήκης πρέπει να είναι αληθές, οπότε εκτελούμε το Ξεκαθάρισμα για το στοιχείο αυτό. Παράδειγμα. 33

34 2. (Τώρα έχουμε 2 μεταβλητές σε κάθε συνθήκη) Για κάθε μεταβλητή x i σε κάθε συνθήκη: Θέτουμε Τ(x i ) => και κάνουμε Ξεκαθάρισμα. Επαναφέρουμε τον F στην αρχική μορφή (πριν το προηγούμενο βήμα), θέτουμε Τ(x i )= και κάνουμε Ξεκαθάρισμα. Αν και τα δύο Ξεκαθαρίσματα αποτύχουν συμπεραίνουμε ότι ο F είναι μη ικανοποιήσιμος. Αλλιώς αναθέτουμε στην x i την επιτυχή τιμή αληθείας και επαναλαμβάνουμε το βήμα 2 για την επόμενη μεταβλητή. Παράδειγμα. 34

35 Πολυωνυμικός Αλγόριθμος για το 2-SAT Χρονική Πολυπλοκότητα Αλγόριθμου: Σε κάθε μεταβλητή γίνονται το πολύ δύο ξεκαθαρίσματα Κάθε Ξεκαθάρισμα παίρνει πολυωνυμικό χρόνο. Πόσο? Ο αλγόριθμος παίρνει πολυωνυμικό χρόνο. Πόσο? 35

36 Κλάση NP 36

37 Μη-Ντετερμινιστικές Μηχανές Turing: Eίναι δυνατόν σε μια συνολική κατάσταση να υπάρχουν πολλές δυνατές επόμενες συνολικές καταστάσεις (μεταβάσεις). Ο υπολογισμός σε μια ΝΜΤ είναι ένα μονοπάτι από συνολικές καταστάσεις. Ο υπολογισμός σε μια ΜΜΤ είναι ένα δένδρο από συνολικές καταστάσεις. Mια ΜΜΤ M δέχεται μια είσοδο x εάν υπάρχει τουλάχιστον ένα πεπερασμένο μονοπάτι υπολογισμού (a 0, L, a m ), a i : συνολική κατάσταση, στο δέντρο υπολογισμού της M με ρίζα a 0 = (s, BxB) και φύλλο a m = (h, uyv), όπου a i a i+1. Για κάποιες εισόδους η M το δένδρο υπολογισμού μπορεί να είναι άπειρο. 37

38 Λειτουργία ΜΜΤ Ορισμός. Για μια ΜΜT M, L(M) να είναι το σύνολο όλων των λέξεων που δέχεται η M. Στάδιο Εικασίας (μαντέματος, guessing) Μαντεύει ποια είναι η κατάλληλη μεταβίβαση για την είσοδο που έχει και την εκτελεί. Στάδιο επαλήθευσης: Ελέγχει ντετερμινιστικά αν το μάντεμα ήταν σωστό για την είσοδο που έχει. 38

39 Πολυπλοκότητα Χρόνου σε μια ΜΜΤ Πολυπλοκότητα Χρόνου σε μια ΜΜΤ M: Για x L(M), Time M (x) είναι ο αριθμός βημάτων στο πιο σύντομο μονοπάτι υπολογισμού αποδοχής της x. Δηλ. στο στάδιο του μαντέματος, μαντεύει με την πρώτη προσπάθεια το σωστό (αν υπάρχει). Εάν η M απορρίπτει την x, θέτουμε Time M (x) =. Η M έχει φράγμα χρόνου t(n) εάν Time M (x) max{ x + 1, t( x )} για όλα τα x L(M). Ορισμός. Μια γλώσσα έχει χρονική πολυπλοκότητα f(n) εάν αποφασίζεται από μια ΜΜΤ σε φράγμα χρόνο f(n). 39

40 Πολυπλοκότητα Χρόνου και Χώρου για ΜΜΤ Πολυπλοκότητα Χώρου σε μια ΜΜΤ M: Εάν x L(M), τότε θέτουμε Space M (x), να είναι ο αριθμός των κελιών ταινίας στην ταινίας εργασίας (διαβάζει, γράφει) που επισκέπτεται η M είναι ένα υπολογιστικό μονοπάτι αποδοχής που χρησιμοποιεί τον ελάχιστο χώρο. Εάν η M απορρίπτει την x, θέτουμε Space M (x) =. Η M έχει φράγμα χώρου s(n) εάν Space M (x) max{ x + 1, s( x )} για όλα τα x L(M). Ορισμός. Μιαγλώσσαέχειχωρική πολυπλοκότητα s(n) εάν αποφασίζεται από μια MΜΤ φράγμα χώρου f(n). 40

41 Κλάσεις Πολυπλοκότητας σε ΜΜΤ NTIME( t(n) ) = {L(M) M είναι μια ΜΜΤ με φράγμα χρόνου t(n)} NSPACE( s(n) ) = {L(M) M είναι μια ΜΜΤ με φράγμα χώρου s(n)} NP = U c>0 NTIME(n c ) (Non-Deterministic Polynomial Time) NPSPACE = U c>0 NSPACE(n c )(Non-Deterministic Polynomial Space) 41

42 Γνωστά Θεωρήματα Παρατηρείστε: P NP NP NPSPACE Θεώρημα. Για οποιαδήποτε σταθερά c > 0, ΝSPACE(s(n)) = ΝSPACE(c s(n)). Θεώρημα. Υποθέστε ότι lim n t(n)/n=. Τότε, για οποιαδήποτε σταθερά c>0, ΝTIME(t(n)) = ΝTIME(c t(n)) Θεώρημα Savitch. Εάν s(n) log n τότε NSPACE( s(n) ) DSPACE( ( s(n) 2 ). Πόρισμα 1. PSPACE = NPSPACE (από Θεώρημα Savitch και PSPACE NPSPACE) Πόρισμα 2. NP PSPACE (αφού ΝP NPSPACE = PSPACE) 42

43 Πλεονέκτημα Μη Ντετερμινισμού Μια μη-ντετερμινιστική μηχανή Turing μπορεί να μαντεύει τα υποψήφια μονοπάτια μπορεί να είναι εκθετικού πλήθους Μια ντετερμινιστική μηχανή Turing θα έπρεπε να τα ελέγχει όλα για να βρει το σωστό εκθετικός χρόνος Μια μη-ντετερμινιστική μηχανή μπορεί να μαντέψει το σωστό και να ελέγξει ότι όντως είναι. Κλάση NP Περιλαμβάνει τα προβλήματα για τα οποία μια μηντετερμινιστική μηχανή μπορεί να μαντέψει ένα μονοπάτι υπολογισμού του προβλήματος (μια υποψήφια λύση) και να ελέγξει εάν είναι σωστό σε πολυωνυμικό χρόνο. 43

44 Ένα Μεγάλο Ερώτημα ΗκλάσηNP φαίνεται ότι περιέχει μεγαλύτερη πληθώρα προβλημάτων Υπάρχει ανάλογο του Πορίσματος 1 (PSPACE=NPSPACE) για τις (χρονικές) κλάσεις P και NP? Δηλ. P=NP? Το ερώτημα παραμένει ανοικτό από το 1970 και θεωρείται το πιο σημαντικό ανοικτό ερώτημα στη Θεωρία Πολυπλοκότητας co-np = κλάση συνόλων Α ταοποίατασυμπληρώματαανήκουνστηνnp. Οι μη ντετερμινιστικές κλάσεις πολυπλοκότητας που είναι χρονικά φραγμένες δεν είναι γνωστό ότι είναι κλειστές ως προς το συμπλήρωμα. 44

45 Φροντιστήριο Παράδειγμα. Δείξτε ότι NSPACE(n) & NSPACE(n 2 log n). 45

46 Σχέσεις κλάσεων πολυπλοκότητας A B σημαίνει A $ B, A? B σημαίνει A B, αλλά δεν είναι γνωστό κατά πόσο A = B. 46

47 Προβλήματα που ανήκουν στην κλάση NP Το πρόβλημα SAT ανήκει στην κλάση NP. Απόδειξη. Σχεδιάζουμε μια ΜΜΤ M η οποία αποφασίζει σε πολυωνυμικό μη ντετερμινιστικό χρόνο για οποιαδήποτε στιγμιότυπο I=(X,F) του προβλήματος SAT εάν είναι ικανοποιήσιμο. 1 η φάση. Έστω F το στιγμιότυπο του SAT στην είσοδο της μηχανής. Μετρά τις μεταβλητές του F(=n)καιγράφεισεμιαδεύτερηταινίατη λέξη BI n. 2 η φάση (Μη-ντετερμινιστική φάση). Μη ντετερμινιστικά (μαντεύοντας), αντικαθιστά τη λέξη B I n με μια λέξη w {>, }. 3 η φάση (Ντετερμινιστική φάση). Ελέγχει εάν w ικανοποιεί την F. Ο αλγόριθμος τρέχει σε πολυωνυμικό μη ντετερμινιστικό χρόνο. Γιατί? 47

48 Παράδείγμα. (Φροντιστήριο) Να δείξετε ότι το πρόβλημα του πλανώδιου πωλητή ανήκει στην κλάση NP. Απόδειξη. Είσοδος: I= (D, B) πίνακας n n, στοιχεία : d ij Μάντεμα (μη ντετερμινιστική φάση): Μαντεύει μια λύση για το I: Η ΜΜΤ γράφει σε μια 2 η ταινία μια συμβολοσειρά από 0, 1 και t μήκους I. Έλεγχος (ντετερμινιστική φάση): 1. Ελέγχει αν η λέξη που έγραψε είναι μια δυαδική κωδικοποίηση μιας μετάθεσης n αριθμών διαχωρισμένων με ένα κενό, δηλ. της μορφής π(1) t π(2) L t π(n). A. Εάν ναι, τότε υπολογίζει το κόστος της μετάθεσης π, c(π) με βάση των πίνακα με τα κόστη διαδρομών D. a) Εάν c(π) B αποφασίζει YES. 2. Αλλιώς αποφασίζει NO. Ο αλγόριθμος ολοκληρώνεται σε πολυωνυμικό μη ντετερμινιστικό χρόνο. 48

49 Θεώρημα. Αν L NP τότε L EXP. Απόδειξη. Έστω Μ μια μη ντετερμινιστική μηχανή Turing που αποφασίζει την L σε πολυωνυμικό χρόνο p(n). Θα κατασκευάσουμε μια ντετερμινιστική μηχανή Turing M ηοποία αποφασίζει για την L σε χρόνο c p(n)., όπου c<2 k, k=σταθερή παράμετρος γλώσσας. H M προσομοιώνει την Μ για όλους τους δυνατούς υπολογισμούς της μήκους 1, 2,, p(n). 49

50 Συμπέρασμα. P ΝP EXP. Ε={(p(m),w) η Μ δέχεται την είσοδο w σε το πολύ 2 w βήματα. Ε EXP Ε P (θεώρημα προηγούμενης διάλεξης). είτε P & ΝP ή ΝP & EXP. Ποιο από τα δύο ισχύει είναι ένα μεγάλο ανοικτό ερώτημα! 50

Chapter 7, 8 : Time, Space Complexity

Chapter 7, 8 : Time, Space Complexity CSC 314: Switching Theory Chapter 7, 8 : Time, Space Complexity 12 December 2008 1 1 Υπολογίσιμα και Εφικτά Υπολογίσιμα Προβλήματα Είδαμε ότι 1. Οτιδήποτεμπορούμεναπεριγράψουμεμεένααλγόριθμο μπορεί να

Διαβάστε περισσότερα

CSC 314: Switching Theory

CSC 314: Switching Theory CSC 314: Switching Theory Course Summary 9 th January 2009 1 1 Θέματα Μαθήματος Ερωτήσεις Τι είναι αλγόριθμος? Τι μπορεί να υπολογιστεί? Απαντήσεις Μοντέλα Υπολογισμού Δυνατότητες και μη-δυνατότητες 2

Διαβάστε περισσότερα

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

Λύσεις 4ης Σειράς Ασκήσεων Λύσεις 4ης Σειράς Ασκήσεων Άσκηση 1 Αναγάγουμε τν Κ 0 που γνωρίζουμε ότι είναι μη-αναδρομική (μη-επιλύσιμη) στην γλώσσα: L = {p() η μηχανή Turing Μ τερματίζει με είσοδο κενή ταινία;} Δοσμένης της περιγραφής

Διαβάστε περισσότερα

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

ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ Ενότητα 12: Μη ντετερμινιστικές μηχανές Turing Ρεφανίδης Ιωάννης Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

Chapter 7, 8 : Completeness

Chapter 7, 8 : Completeness CSC 314: Switching Theory Chapter 7, 8 : Completeness 19 December 2008 1 1 Αναγωγές Πολυωνυμικού Χρόνου Ορισμός. f: Σ * Σ * ονομάζεται υπολογίσιμη σε πολυνωνυμικό χρόνο αν υπάρχει μια πολυωνυμικά φραγμένη

Διαβάστε περισσότερα

t M (w) T ( w ) O( n) = O(n 2 )

t M (w) T ( w ) O( n) = O(n 2 ) Κεφάλαιο 9 Υπολογιστική Πολυπλοκότητα Σύνοψη Πέρα από το ερώτημα του αν για ένα πρόβλημα υπάρχει Μηχανή Turing, που το επιλύει, μας απασχολεί επίσης και το ερώτημα του αν ένα πρόβλημα είναι «πρακτικά»

Διαβάστε περισσότερα

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

Αλγόριθµοι και Πολυπλοκότητα Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 15 Ιουνίου 2009 1 / 26 Εισαγωγή Η ϑεωρία

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Επίπεδα Γραφήματα : Προβλήματα και Υπολογιστική Πολυπλοκότητα Αλγόριθμοι πολυωνυμικού χρόνου Ένας αλγόριθμος πολυωνυμικού χρόνου έχει χρόνο εκτέλεσης όπου είναι μία (θετική) σταθερά Κλάση πολυπλοκότητας : περιλαμβάνει τα προβλήματα που επιδέχονται λύση σε πολυωνυμικό

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Κλάσεις Πολυπλοκότητας Κλάσεις Πολυπλοκότητας Παύλος Εφραιμίδης pefraimi ee.duth.gr Κλάσεις Πολυπλοκότητας 1 Οι κλάσεις πολυπλοκότητας P και NP P: Polynomial ΗκλάσηP περιλαμβάνει όλα τα υπολογιστικά προβλήματα που μπορούν

Διαβάστε περισσότερα

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

Μη Ντετερμινισμός και NP-Πληρότητα Μη Ντετερμινισμός και P-Πληρότητα ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Μη Ντετερμινιστικές Μηχανές Turing Μη ντετερμινιστική Μηχ. Turing (ΝTM)

Διαβάστε περισσότερα

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

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιμότητα. Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. Κεφάλαιο 8 NP και Υπολογιστική Δυσεπιλυσιμότητα Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 πρόβλημα αναζήτησης (search problem) Ένα πρόβλημα αναζήτησης είναι ένα πρόβλημα στο

Διαβάστε περισσότερα

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

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Θεμελιώσεις Επιστήμης Η/Υ ΠΛΗ30 Τελική Εξέταση 26 Ιουνίου 2013 Ονοματεπώνυμο Φοιτητή Αριθμός Μητρώου Φοιτητή Τμήμα Υπογραφή Φοιτητή Υπογραφή Επιτηρητή Διάρκεια: 180 Ερώτημα Μονάδες Βαθμολογία 1 10+10 2

Διαβάστε περισσότερα

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

Σειρά Προβλημάτων 5 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 5 Λύσεις Να δείξετε ότι οι πιο κάτω γλώσσες είναι διαγνώσιμες. (α) { D το D είναι ένα DFA το οποίο αποδέχεται όλες τις λέξεις στο Σ * } (α) Για να διαγνώσουμε το πρόβλημα μπορούμε

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 12: Θεωρία υπολογισµών

ΚΕΦΑΛΑΙΟ 12: Θεωρία υπολογισµών ΚΕΦΑΛΑΙΟ 12: Θεωρία υπολογισµών 1 Συναρτήσεις και ο υπολογισµός τους 2 Μηχανές Turing 3 Καθολικές γλώσσες προγραµµατισµού 4 Μια µη υπολογίσιµη συνάρτηση 5 Πολυπλοκότητα προβληµάτων 1 Συναρτήσεις Μία συνάρτηση

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Θεμελιώσεις Επιστήμης Η/Υ ΠΛΗ30 Τελική Εξέταση 2 Ιουλίου 2014 Ονοματεπώνυμο Φοιτητή Αριθμός Μητρώου Φοιτητή Τμήμα Υπογραφή Φοιτητή Υπογραφή Επιτηρητή Διάρκεια: 180 Ερώτημα Μονάδες Βαθμολογία 1 8+8+4 2

Διαβάστε περισσότερα

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

Προσεγγιστικοί Αλγόριθμοι Πολλά NP-πλήρη προβλήματα έχουν μεγάλο πρακτικό ενδιαφέρον. http://xkcd.com/287/ Πολλά NP-πλήρη προβλήματα έχουν μεγάλο πρακτικό ενδιαφέρον. Πως μπορούμε να αντιμετωπίσουμε το γεγονός ότι είναι απίθανη(;)

Διαβάστε περισσότερα

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Αναγωγές Θεωρία Υπολογισμού και Πολυπλοκότητα Αναγωγές Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Ανεπίλυτα Προβλήματα από τη Θεωρία Γλωσσών (5.1) To Πρόβλημα της Περάτωσης Το Πρόβλημα της Κενότητα

Διαβάστε περισσότερα

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

Σειρά Προβλημάτων 5 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 5 Λύσεις Να δείξετε ότι οι πιο κάτω γλώσσες είναι διαγνώσιμες. (α) { G,k η G είναι μια ασυμφραστική γραμματική η οποία παράγει κάποια λέξη 1 n όπου n k } (β) { Μ,k η Μ είναι

Διαβάστε περισσότερα

ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑ Φεβρουάριος 2005 Σύνολο μονάδων: 91

ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑ Φεβρουάριος 2005 Σύνολο μονάδων: 91 Ε.Μ.Πoλυτεχνείο ΣΗΜΜΥ, ΣΕΜΦΕ Τομέας Τεχνολογίας Πληροφορικής & Υπολογιστών Διδάσκων: Ε.Ζαχος Ονοματεπώνυμο:... Αριθμός Μητρώου:... Σχολή:... εξάμηνο:... ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑ Φεβρουάριος 005 Σύνολο

Διαβάστε περισσότερα

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

Φροντιστήριο 9 Λύσεις Άσκηση 1 Φροντιστήριο 9 Λύσεις Να κατασκευάσετε μια μηχανή Turing με δύο ταινίες η οποία να αποδέχεται στην πρώτη της ταινία μια οποιαδήποτε λέξη w {a,b} * και να γράφει τη λέξη w R στη δεύτερη της ταινία.

Διαβάστε περισσότερα

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

Σειρά Προβλημάτων 5 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 5 Λύσεις Να δείξετε ότι οι πιο κάτω γλώσσες είναι διαγνώσιμες. (α) { Μ η Μ είναι μια ΤΜ η οποία διαγιγνώσκει το πρόβλημα ΙΣΟΔΥΝΑΜΙΑ ΤΜ (διαφάνεια 9 25)} (α) Γνωρίζουμε ότι το

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΣΧΕΣΕΙΣ ΜΕΤΑΞΥ ΚΛΑΣΕΩΝ ΠΟΛΥΠΛΟΚΟΤΗΤΑΣ

ΣΧΕΣΕΙΣ ΜΕΤΑΞΥ ΚΛΑΣΕΩΝ ΠΟΛΥΠΛΟΚΟΤΗΤΑΣ ΣΧΕΣΕΙΣ ΜΕΤΑΞΥ ΚΛΑΣΕΩΝ ΠΟΛΥΠΛΟΚΟΤΗΤΑΣ Κλάσεις Πολυπλοκότητας Περιλαµβάνουν αναδροµικές γλώσσες Οι γλώσσες ταξινοµούνται στις κλάσεις πολυπλοκότητας ανάλογα µε τη δυσκολία απόφασης τους (ποσότητα απαιτούµενων

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 12: Θεωρία υπολογισμού

ΚΕΦΑΛΑΙΟ 12: Θεωρία υπολογισμού ΚΕΦΑΛΑΙΟ 12: Θεωρία υπολογισμού 12.1 Συναρτήσεις και ο υπολογισμός τους 12.2 Μηχανές Turing 12.3 Καθολικές γλώσσες προγραμματισμού 12.4 Μια μη υπολογίσιμη συνάρτηση 12.5 Πολυπλοκότητα προβλημάτων 12.6

Διαβάστε περισσότερα

Υπολογιστικό Πρόβληµα

Υπολογιστικό Πρόβληµα Υπολογιστικό Πρόβληµα Μετασχηµατισµός δεδοµένων εισόδου σε δεδοµένα εξόδου. Δοµή δεδοµένων εισόδου (έγκυρο στιγµιότυπο). Δοµή και ιδιότητες δεδοµένων εξόδου (απάντηση ή λύση). Τυπικά: διµελής σχέση στις

Διαβάστε περισσότερα

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Κανονικές Γλώσσες (1) Θεωρία Υπολογισμού και Πολυπλοκότητα Κανονικές Γλώσσες () Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Πεπερασμένα Αυτόματα (Κεφάλαιο., Sipser) Ορισμός πεπερασμένων αυτομάτων και ορισμός του

Διαβάστε περισσότερα

Η δυαδική σχέση M ( «παράγει σε ένα βήμα» ) ορίζεται ως εξής: (q, w) M (q, w ), αν και μόνο αν w = σw, για κάποιο σ Σ

Η δυαδική σχέση M ( «παράγει σε ένα βήμα» ) ορίζεται ως εξής: (q, w) M (q, w ), αν και μόνο αν w = σw, για κάποιο σ Σ Πεπερασμένα Αυτόματα (ΠΑ) Τα πεπερασμένα αυτόματα είναι οι απλούστερες «υπολογιστικές μηχανές». Δεν έχουν μνήμη, μόνο μία εσωτερική μονάδα με πεπερασμένο αριθμό καταστάσεων. Διαβάζουν τη συμβολοσειρά εισόδου

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Στοιχεία Θεωρίας Υπολογισμού

Στοιχεία Θεωρίας Υπολογισμού Κεφάλαιο 3 Στοιχεία Θεωρίας Υπολογισμού Στο κεφάλαιο αυτό παρουσιάζεται μια εισαγωγή σε βασικές έννοιες της θεωρίας υπολογισμού, με έμφαση στην υπολογιστική πολυπλοκότητα. Η εξοικείωση με τις έννοιες αυτές

Διαβάστε περισσότερα

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Διαγνωσιμότητα Θεωρία Υπολογισμού και Πολυπλοκότητα Διαγνωσιμότητα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Διαγνώσιμες Γλώσσες (4.1) Επιλύσιμα Προβλήματα σχετικά με Κανονικές Γλώσσες Επιλύσιμα Προβλήματα

Διαβάστε περισσότερα

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

Κλάση NP, NP-Complete Προβλήματα Κλάση NP, NP-Complete Προβλήματα Βαγγέλης ούρος douros@aueb.gr 1 11/6/2012 Αλγόριθμοι, Εαρινό Εξάμηνο 2012, Φροντιστήριο #14 Προβλήματα Απόφασης & Βελτιστοποίησης 2 Πρόβλημα Απόφασης: Κάθε πρόβλημα που

Διαβάστε περισσότερα

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

ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ Ενότητα 13: Πολυωνυμική αναγωγή Ρεφανίδης Ιωάννης Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες,

Διαβάστε περισσότερα

Το πρόβλημα μονοδρόμησης (The One-Way Street Problem)

Το πρόβλημα μονοδρόμησης (The One-Way Street Problem) Το πρόβλημα μονοδρόμησης (The One-Way Street Problem) Το πρόβλημα Σχετίζεται με τη διαχείριση της κίνησης οχημάτων στους δρόμους Αν δεν υπήρχαν καθυστερήσεις στην κίνηση στις πόλεις Αποφυγή σπατάλης ενέργειας

Διαβάστε περισσότερα

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Θεωρία Υπολογισμού και Πολυπλοκότητα Κεφάλαιο 10. Μηχανές Turing 20,23 Μαρτίου 2007 Δρ. Παπαδοπούλου Βίκη 1 Μηχανές Turing: Ένα Γενικό Μοντέλο Υπολογισμού Ποια μοντέλα υπολογισμού μπορούν να δεχθούν γλώσσες

Διαβάστε περισσότερα

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

Αλγόριθμοι και Πολυπλοκότητα Αλγόριθμοι και Πολυπλοκότητα Ανάλυση Αλγορίθμων Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ανάλυση Αλγορίθμων Η ανάλυση αλγορίθμων περιλαμβάνει τη διερεύνηση του τρόπου

Διαβάστε περισσότερα

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Χρονική Πολυπλοκότητα Θεωρία Υπολογισμού και Πολυπλοκότητα Χρονική Πολυπλοκότητα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Μέτρηση της Πολυπλοκότητας (7.1) Η κλάση Ρ (7.2) Η κλάση ΝΡ (7.3) ΝΡ-πληρότητα (7.4)

Διαβάστε περισσότερα

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

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Θεμελιώσεις Επιστήμης Η/Υ ΠΛΗ30 Τελική Εξέταση 10 Ιουνίου 015 Ονοματεπώνυμο Φοιτητή Αριθμός Μητρώου Φοιτητή Τμήμα Υπογραφή Φοιτητή Υπογραφή Επιτηρητή Διάρκεια: 10 Ερώτημα Μονάδες Βαθμολογία 1 7+6+7 8+7+5

Διαβάστε περισσότερα

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

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 14: Διαγνωσιμότητα (Επιλυσιμότητα) ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας Διάλεξη 14: Διαγνωσιμότητα (Επιλυσιμότητα) Τι θα κάνουμε σήμερα Εισαγωγή Επιλύσιμα Προβλήματα σχετικά με τις Κανονικές Γλώσσες (4.1.1) Επιλύσιμα Προβλήματα

Διαβάστε περισσότερα

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

Δομές Δεδομένων και Αλγόριθμοι Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου Χειμερινό Εξάμηνο 2014-2015 Παρουσίαση 9 P vs NP 1 / 13 Δυσκολία επίλυσης υπολογιστικών προβλημάτων Κάποια προβλήματα είναι εύκολα να λυθούν με

Διαβάστε περισσότερα

Τεχνητή Νοημοσύνη. 8η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Τεχνητή Νοημοσύνη. 8η διάλεξη ( ) Ίων Ανδρουτσόπουλος. Τεχνητή Νοημοσύνη 8η διάλεξη (2016-17) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται στο βιβλίο Artificial Intelligence A Modern Approach των S. Russel

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Αλγόριθμοι για αυτόματα Κεφάλαιο 8 Αλγόριθμοι για αυτόματα Κύρια βιβλιογραφική αναφορά για αυτό το Κεφάλαιο είναι η Hopcroft, Motwani, and Ullman 2007. 8.1 Πότε ένα DFA αναγνωρίζει κενή ή άπειρη γλώσσα Δοθέντος ενός DFA M καλούμαστε

Διαβάστε περισσότερα

ΑΛΕΞΑΝΔΡΕΙΟ Τ.Ε.Ι. ΘΕΣΣΑΛΟΝΙΚΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Πτυχιακή εργασία ΑΣΤΡΟΠΕΚΑΚΗ ΔΕΣΠΟΙΝΑ

ΑΛΕΞΑΝΔΡΕΙΟ Τ.Ε.Ι. ΘΕΣΣΑΛΟΝΙΚΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Πτυχιακή εργασία ΑΣΤΡΟΠΕΚΑΚΗ ΔΕΣΠΟΙΝΑ ΑΛΕΞΑΝΔΡΕΙΟ Τ.Ε.Ι. ΘΕΣΣΑΛΟΝΙΚΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Πτυχιακή εργασία ΑΣΤΡΟΠΕΚΑΚΗ ΔΕΣΠΟΙΝΑ ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ: ΚΟΤΙΝΗ ΙΣΑΒΕΛΛΑ ΘΕΣΣΑΛΟΝΙΚΗ 2010 ΠΕΡΙΕΧΟΜΕΝΑ ΕΙΣΑΓΩΓΗ... 4 ΚΕΦΑΛΑΙΟ

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Θεωρία Υπολογισμού και Πολυπλοκότητα Κεφάλαιο 4. Πεπερασμένα Αυτόματα 6 Φεβρουαρίου 2007 Δρ. Παπαδοπούλου Βίκη 1 Μοντέλα Υπολογισμού 1930 : Μηχανή Turing : αφαιρετική μηχανή (μοντελοποίηση ενός υπολογιστή)

Διαβάστε περισσότερα

Σε αυτό το µάθηµα. Εισαγωγή στις Μηχανές Turing. Μηχανή Turing (Turing Machine - TM) Μηχανές Turing. Παραδείγµατα Μηχανών Turing

Σε αυτό το µάθηµα. Εισαγωγή στις Μηχανές Turing. Μηχανή Turing (Turing Machine - TM) Μηχανές Turing. Παραδείγµατα Μηχανών Turing Σε αυτό το µάθηµα Εισαγωγή στις Μηχανές Turing Ορέστης Τελέλης telelis@unipi.gr Τµήµα Ψηφιακών Συστηµάτων, Πανεπιστήµιο Πειραιώς Παραδείγµατα Μηχανών Turing Παραλλαγές: Πολυταινιακές, Μη ντετερµινιστικές

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΣΥΝΔΥΑΣΤΙΚΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Ενότητα 4 Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας

Διαβάστε περισσότερα

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Κανονικές Γλώσσες (2) Θεωρία Υπολογισμού και Πολυπλοκότητα Κανονικές Γλώσσες (2) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Κανονικές Εκφράσεις (1.3) Τυπικός Ορισμός Ισοδυναμία με κανονικές γλώσσες Μη Κανονικές

Διαβάστε περισσότερα

Κατευθυνόμενα γραφήματα. Μαθηματικά Πληροφορικής 6ο Μάθημα. Βρόχοι. Μη κατευθυνόμενα γραφήματα. Ορισμός

Κατευθυνόμενα γραφήματα. Μαθηματικά Πληροφορικής 6ο Μάθημα. Βρόχοι. Μη κατευθυνόμενα γραφήματα. Ορισμός Κατευθυνόμενα γραφήματα Μαθηματικά Πληροφορικής 6ο Μάθημα Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήμιο Αθηνών Κατευθυνόμενο γράφημα G είναι ένα ζεύγος (V, E ) όπου V πεπερασμένο σύνολο του οποίου

Διαβάστε περισσότερα

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

Προσεγγιστικοί Αλγόριθμοι για NP- ύσκολα Προβλήματα Προσεγγιστικοί Αλγόριθμοι για NP- ύσκολα Προβλήματα ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Αντιμετώπιση NP- υσκολίας Αν P NP, όχι αλγόριθμος

Διαβάστε περισσότερα

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Ασυμφραστικές Γλώσσες (2) Θεωρία Υπολογισμού και Πολυπλοκότητα Ασυμφραστικές Γλώσσες (2) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Αυτόματα Στοίβας (2.2) Τυπικός Ορισμός Παραδείγματα Ισοδυναμία με Ασυμφραστικές

Διαβάστε περισσότερα

L A P. w L A f(w) L B (10.1) u := f(w)

L A P. w L A f(w) L B (10.1) u := f(w) Κεφάλαιο 10 NP -πληρότητα Σύνοψη Οι γλώσσες στην κλάση πολυπλοκότητας P μπορούν να αποφασίζονται σε πολωνυμικό χρόνο. Οι επιστήμονες πιστεύουν, αν και δε μπορούν να το αποδείξουν ότι η P είναι ένα γνήσιο

Διαβάστε περισσότερα

Κατευθυνόμενα γραφήματα. Μαθηματικά Πληροφορικής 6ο Μάθημα. Βρόγχοι. Μη κατευθυνόμενα γραφήματα. Ορισμός

Κατευθυνόμενα γραφήματα. Μαθηματικά Πληροφορικής 6ο Μάθημα. Βρόγχοι. Μη κατευθυνόμενα γραφήματα. Ορισμός Κατευθυνόμενα γραφήματα Μαθηματικά Πληροφορικής 6ο Μάθημα Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήμιο Αθηνών Κατευθυνόμενο γράφημα G είναι ένα ζεύγος (V, E ) όπου V πεπερασμένο σύνολο του οποίου

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Γραμμικός Προγραμματισμός Μια εταιρεία παράγει κέικ δύο κατηγοριών, απλά και πολυτελείας: Ένα απλό κέικ αποδίδει κέρδος 1 ευρώ. Ένα κέικ πολυτελείας αποδίδει κέρδος 6 ευρώ. Η καθημερινή ζήτηση του απλού κέικ είναι 200. Η καθημερινή

Διαβάστε περισσότερα

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

Δομές Δεδομένων και Αλγόριθμοι Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου, Τμήμα Μηχανικών Πληροφορικής ΤΕ Χειμερινό Εξάμηνο 2014-2015 (Παρουσίαση 6) 1 / 20 Ρυθμοί αύξησης Γραμμικός ρυθμός αύξησης: n, 2n, Πολυωνυμικός

Διαβάστε περισσότερα

Τίτλος Μαθήματος: Θεωρία Γραφημάτων. Ενότητα: Εισαγωγή σε βασικές έννοιες. Διδάσκων: Λέκτορας Xάρης Παπαδόπουλος. Τμήμα: Μαθηματικών

Τίτλος Μαθήματος: Θεωρία Γραφημάτων. Ενότητα: Εισαγωγή σε βασικές έννοιες. Διδάσκων: Λέκτορας Xάρης Παπαδόπουλος. Τμήμα: Μαθηματικών Τίτλος Μαθήματος: Θεωρία Γραφημάτων Ενότητα: Εισαγωγή σε βασικές έννοιες Διδάσκων: Λέκτορας Xάρης Παπαδόπουλος Τμήμα: Μαθηματικών Θεωρία Γραφημάτων Χάρης Παπαδόπουλος 2012, Διάλεξη Κεφαλαίου 1 Περιεχόμενα

Διαβάστε περισσότερα

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

Σειρά Προβλημάτων 4 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 4 Λύσεις (α) Να διατυπώσετε την τυπική περιγραφή μιας μηχανής Turing που να διαγιγνώσκει τη γλώσσα { a 2n b n c 3n n 2 } : H ζητούμενη μηχανή Turing μπορεί να διατυπωθεί ως την

Διαβάστε περισσότερα

Συνδυαστική Βελτιστοποίηση

Συνδυαστική Βελτιστοποίηση Τμήμα Εφαρμοσμένης Πληροφορικής, Παν. Μακεδονίας 1 Άγγελος Σιφαλέρας sifalera@uom.gr 4 η Διάλεξη Τμήμα Εφαρμοσμένης Πληροφορικής, Παν. Μακεδονίας 2 Knapsack Problem, (1/9) Ένας επενδυτής διαθέτει ένα χρηματικό

Διαβάστε περισσότερα

Κεφάλαιο 5 Ανάλυση Αλγορίθμων

Κεφάλαιο 5 Ανάλυση Αλγορίθμων Κεφάλαιο 5 Ανάλυση Αλγορίθμων 5.1 Επίδοση αλγορίθμων Τα πρωταρχικά ερωτήματα που προκύπτουν είναι: 1. πώς υπολογίζεται ο χρόνος εκτέλεσης ενός αλγορίθμου; 2. πώς μπορούν να συγκριθούν μεταξύ τους οι διάφοροι

Διαβάστε περισσότερα

Εισαγωγή στην Ανάλυση Αλγορίθμων

Εισαγωγή στην Ανάλυση Αλγορίθμων Εισαγωγή στην Ανάλυση Αλγορίθμων (4) Μεθοδολογία αναδρομικών σχέσεων (Ι) Με επανάληψη της αναδρομής Έστω όπου r και a είναι σταθερές. Βρίσκουμε τη σχέση που εκφράζει την T(n) συναρτήσει της T(n-) την T(n)

Διαβάστε περισσότερα

ΠΛΕ075: Προηγμένη Σχεδίαση Αλγορίθμων και Δομών Δεδομένων. Λουκάς Γεωργιάδης

ΠΛΕ075: Προηγμένη Σχεδίαση Αλγορίθμων και Δομών Δεδομένων. Λουκάς Γεωργιάδης ΠΛΕ075: Προηγμένη Σχεδίαση Αλγορίθμων και Δομών Δεδομένων Λουκάς Γεωργιάδης loukas@cs.uoi.gr www.cs.uoi.gr/~loukas Βασικές έννοιες και εφαρμογές Αλγόριθμος: Μέθοδος για την επίλυση ενός προβλήματος Δομή

Διαβάστε περισσότερα

Ασκήσεις στους Γράφους. 1 ο Σετ Ασκήσεων Βαθμός Μονοπάτια Κύκλος Euler Κύκλος Hamilton Συνεκτικότητα

Ασκήσεις στους Γράφους. 1 ο Σετ Ασκήσεων Βαθμός Μονοπάτια Κύκλος Euler Κύκλος Hamilton Συνεκτικότητα Ασκήσεις στους Γράφους 1 ο Σετ Ασκήσεων Βαθμός Μονοπάτια Κύκλος Euler Κύκλος Hamilton Συνεκτικότητα Ασκηση 1 η Να αποδείξετε ότι κάθε γράφημα περιέχει μια διαδρομή από μια κορυφή u σε μια κορυφή w αν και

Διαβάστε περισσότερα

Μεταγλωττιστές. Γιώργος Δημητρίου. Μάθημα 2 ο. Πανεπιστήμιο Θεσσαλίας - Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών

Μεταγλωττιστές. Γιώργος Δημητρίου. Μάθημα 2 ο. Πανεπιστήμιο Θεσσαλίας - Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Γιώργος Δημητρίου Μάθημα 2 ο Αλφάβητα και Γλώσσες Αλφάβητο: Ένα μη κενό και πεπερασμένο σύνολο συμβόλων Γλώσσα: Ένα οποιοδήποτε υποσύνολο των συμβολοσειρών ενός αλφαβήτου (οι προτάσεις της γλώσσας, πχ.

Διαβάστε περισσότερα

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

Υπολογιστικά & Διακριτά Μαθηματικά Υπολογιστικά & Διακριτά Μαθηματικά Ενότητα 5: Αναδρομικές σχέσεις - Υπολογισμός Αθροισμάτων Στεφανίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

Διαβάστε περισσότερα

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Θεωρία Υπολογισμού και Πολυπλοκότητα Κεφάλαιο 7. Κατηγορηματικές Γραμματικές 27,2 Φεβρουαρίου, 9 Μαρτίου 2007 Δρ. Παπαδοπούλου Βίκη 1 Κατηγορηματικές Γραμματικές Ή Γραμματικές Χωρίς Συμφραζόμενα Παράδειγμα.

Διαβάστε περισσότερα

ΣΥΝΕΚΤΙΚΟΤΗΤΑ ΓΡΑΦΗΜΑΤΩΝ

ΣΥΝΕΚΤΙΚΟΤΗΤΑ ΓΡΑΦΗΜΑΤΩΝ Συνεκτικότητα Γραφημάτων 123 ΚΕΦΑΛΑΙΟ 4 ΣΥΝΕΚΤΙΚΟΤΗΤΑ ΓΡΑΦΗΜΑΤΩΝ 4.1 Τοπική και Ολική Συνεκτικότητα Γραφημάτων 4.2 Συνεκτικότητα Μη-κατευθυνόμενων Γραφημάτων 4.3 Συνεκτικότητα Κατευθυνόμενων Γραφημάτων

Διαβάστε περισσότερα

Ασκήσεις (2) Άσκηση 1

Ασκήσεις (2) Άσκηση 1 Άσκηση 1 Ασκήσεις () Εισαγωγή στην Ανάλυση Αλγορίθμων Υποθέστε ότι συγκρίνουμε την υλοποίηση της ταξινόμησης με εισαγωγή και της ταξινόμησης με συγχώνευση στον ίδιο υπολογιστή. Για εισόδους μεγέθους n,

Διαβάστε περισσότερα

10.1 Υπολογίσιμες συναρτήσεις και αναδρομικά σύνολα

10.1 Υπολογίσιμες συναρτήσεις και αναδρομικά σύνολα Κεφάλαιο 10 Υπολογισιμότητα Κύρια βιβλιογραφική αναφορά για αυτό το Κεφάλαιο είναι η Hopcroft, Motwani, and Ullman 2007. 10.1 Υπολογίσιμες συναρτήσεις και αναδρομικά σύνολα Μέχρι στιγμής έχουμε δει ουσιαστικά

Διαβάστε περισσότερα

q 0 q 0.2 q 0.1 q 0.05 q 0.05 q 0.25 q 0.15 q 0.1 q 0.2 q 0.25 q 0.25 q 0.25

q 0 q 0.2 q 0.1 q 0.05 q 0.05 q 0.25 q 0.15 q 0.1 q 0.2 q 0.25 q 0.25 q 0.25 Κεφάλαιο 2 Κανονικές Γλώσσες & Πεπερασμένα Αυτόματα Σύνοψη Τα Πεπερασμένα Αυτόματα (ΠΑ) είναι το απλούστερο και το πιο ευρέως διαδεδομένο μοντέλο υπολογισμού από αυτά που θα εξετάσουμε. Είναι επίσης γνωστά

Διαβάστε περισσότερα

Chapter 9: NP-Complete Problems

Chapter 9: NP-Complete Problems Θεωρητική Πληροφορική Ι: Αλγόριθμοι και Πολυπλοκότητα Chapter 9: NP-Complete Problems 9.3 Graph-Theoretic Problems (Συνέχεια) 9.4 Sets and Numbers Γιώργος Αλεξανδρίδης gealexan@mail.ntua.gr Κεφάλαιο 9:

Διαβάστε περισσότερα

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

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ Θεωρία Υπολογισμού Ενότητα 26: Καθολική Μηχανή Turing Τμήμα Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που

Διαβάστε περισσότερα

Διαίρει και Βασίλευε. πρόβλημα μεγέθους Ν. διάσπαση. πρόβλημα μεγέθους k. πρόβλημα μεγέθους Ν-k

Διαίρει και Βασίλευε. πρόβλημα μεγέθους Ν. διάσπαση. πρόβλημα μεγέθους k. πρόβλημα μεγέθους Ν-k Διαίρει και Βασίλευε πρόβλημα μεγέθους Ν διάσπαση πρόβλημα μεγέθους k πρόβλημα μεγέθους Ν-k Διαίρει και Βασίλευε πρόβλημα μεγέθους Ν διάσπαση επιλύουμε αναδρομικά τα υποπροβλήματα πρόβλημα μεγέθους k πρόβλημα

Διαβάστε περισσότερα

Πληρότητα της μεθόδου επίλυσης

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

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ 1 ΛΥΣΕΙΣ Ανάλυση Πολυπλοκότητας

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ 1 ΛΥΣΕΙΣ Ανάλυση Πολυπλοκότητας ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 231: Δομές Δεδομένων και Αλγόριθμοι ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ 1 ΛΥΣΕΙΣ Ανάλυση Πολυπλοκότητας ΠΕΡΙΓΡΑΦΗ Σε αυτή την άσκηση καλείστε να αναλύσετε και να υπολογίσετε το

Διαβάστε περισσότερα

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

Αλγόριθμοι και Πολυπλοκότητα Αλγόριθμοι και Πολυπλοκότητα Ροή Δικτύου Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Μοντελοποίηση Δικτύων Μεταφοράς Τα γραφήματα χρησιμοποιούνται συχνά για την μοντελοποίηση

Διαβάστε περισσότερα

Τεχνητή Νοημοσύνη. 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος. http://www.aueb.gr/users/ion/

Τεχνητή Νοημοσύνη. 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος. http://www.aueb.gr/users/ion/ Τεχνητή Νοημοσύνη 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται στα βιβλία: Τεχνητή Νοημοσύνη των Βλαχάβα κ.ά., 3η έκδοση, Β. Γκιούρδας

Διαβάστε περισσότερα

Τυχαίοι γράφοι Η διάμετρος του G(n, 2 ln n/n) Ioannis Giotis

Τυχαίοι γράφοι Η διάμετρος του G(n, 2 ln n/n) Ioannis Giotis Τυχαίοι γράφοι Η διάμετρος του G(n, 2 ln n/n) Ioannis Giotis Θεώρημα για σφαίρες Θα δείξουμε ότι το γράφημα G(n, 2 ln n n 1 ) έχει μικρή διάμετρο Θα ξεκινήσουμε με ένα θεώρημα για το μέγεθος μιας σφαίρας

Διαβάστε περισσότερα

Εισαγωγή στην Ανάλυση Αλγορίθμων (2-3)

Εισαγωγή στην Ανάλυση Αλγορίθμων (2-3) Εισαγωγή στην Ανάλυση Αλγορίθμων (2-3) 3.1 Ασυμπτωτικός συμβολισμός (Ι) Οι ορισμοί που ακολουθούν μας επιτρέπουν να επιχειρηματολογούμε με ακρίβεια για την ασυμπτωτική συμπεριφορά. Οι f(n) και g(n) συμβολίζουν

Διαβάστε περισσότερα

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

Θεωρία Υπολογισμού και Πολυπλοκότητα To Δόγμα Church-Turing Θεωρία Υπολογισμού και Πολυπλοκότητα To Δόγμα Church-Turing Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Μηχανές Turing (3.1) Τυπικό Ορισμός Παραδείγματα Παραλλαγές Μηχανών Turing (3.2) Πολυταινιακές

Διαβάστε περισσότερα

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Θεωρία Υπολογισμού και Πολυπλοκότητα Κεφάλαιο 1. Μαθηματικό Υπόβαθρο 23, 26 Ιανουαρίου 2007 Δρ. Παπαδοπούλου Βίκη 1 1.1. Σύνολα Ορισμός : Σύνολο μια συλλογή από αντικείμενα Στοιχεία: Μέλη συνόλου Τα στοιχεία

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Μεταγλωττιστές. Ενότητα 2: Τυπικές γλώσσες (Μέρος 1 ο ) Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Μεταγλωττιστές. Ενότητα 2: Τυπικές γλώσσες (Μέρος 1 ο ) Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ Μεταγλωττιστές Ενότητα 2: Τυπικές γλώσσες (Μέρος 1 ο ) Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

Mh apofasisimèc gl ssec. A. K. Kapìrhc

Mh apofasisimèc gl ssec. A. K. Kapìrhc Mh apofasisimèc gl ssec A. K. Kapìrhc 15 Maòou 2009 2 Perieqìmena 1 Μη αποφασίσιμες γλώσσες 5 1.1 Ανάγω το πρόβλημα A στο B................................. 5 1.2 Αναγωγές μη επιλυσιμότητας..................................

Διαβάστε περισσότερα

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

ΑΣΥΜΠΤΩΤΙΚΗ ΑΝΑΛΥΣΗ & ΠΡΟΣΘΕΣΗ ΑΣΥΜΠΤΩΤΙΚΗ ΑΝΑΛΥΣΗ & ΠΡΟΣΘΕΣΗ Θέματα μελέτης Ορθότητα και απόδοση αλγορίθμων Παρουσίαση και ανάλυση αλγορίθμου για πρόσθεση Al Khwarizmi Αλγόριθμοι Το δεκαδικό σύστημα εφευρέθηκε στην Ινδία περίπου το

Διαβάστε περισσότερα

Περιεχόμενα. Εισαγωγή του επιμελητή, Γιάννης Σταματίου 15 Πρόλογος 17 Εισαγωγή 23. Μέρος I. ΕΠΑΝΑΛΗΠΤΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΑΝΑΛΛΟΙΩΤΕΣ ΣΥΝΘΗΚΕΣ

Περιεχόμενα. Εισαγωγή του επιμελητή, Γιάννης Σταματίου 15 Πρόλογος 17 Εισαγωγή 23. Μέρος I. ΕΠΑΝΑΛΗΠΤΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΑΝΑΛΛΟΙΩΤΕΣ ΣΥΝΘΗΚΕΣ Περιεχόμενα Εισαγωγή του επιμελητή, Γιάννης Σταματίου 15 Πρόλογος 17 Εισαγωγή 23 Μέρος I. ΕΠΑΝΑΛΗΠΤΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΑΝΑΛΛΟΙΩΤΕΣ ΣΥΝΘΗΚΕΣ 1. Επαναληπτικοί αλγόριθμοι: Μέτρα προόδου και αναλλοίωτες συνθήκες.....................................................29

Διαβάστε περισσότερα

Σχεδίαση & Ανάλυση Αλγορίθμων

Σχεδίαση & Ανάλυση Αλγορίθμων Σχεδίαση & Ανάλυση Αλγορίθμων Ενότητα 1 Αλγόριθμοι και Πολυπλοκότητα Σταύρος Δ. Νικολόπουλος Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων Webpage: www.cs.uoi.gr/~stavros Εισαγωγή Ας ξεκινήσουμε

Διαβάστε περισσότερα

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

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 3: Ντετερμινιστικά Πεπερασμένα Αυτόματα (DFA) ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας Διάλεξη 3: Ντετερμινιστικά Πεπερασμένα Αυτόματα (DFA) Τι θα κάνουμε σήμερα Εισαγωγή στα Ντετερμινιστικά Πεπερασμένα Αυτόματα 14-Sep-11 Τυπικός Ορισμός Ντετερμινιστικών

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Μέγιστη ροή. Κατευθυνόμενο γράφημα. Συνάρτηση χωρητικότητας. αφετηρίακός κόμβος. τερματικός κόμβος. Ροή δικτύου. με τις ακόλουθες ιδιότητες Κατευθυνόμενο γράφημα Συνάρτηση χωρητικότητας 2 6 20 Ροή δικτύου Συνάρτηση αφετηρίακός κόμβος 0 με τις ακόλουθες ιδιότητες 9 7 τερματικός κόμβος Περιορισμός χωρητικότητας: Αντισυμμετρία: Διατήρηση ροής:

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΤΕΙ ΛΑΜΙΑΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑ ΥΠΟΛΟΓΙΣΤΩΝ ÌïëëÜ Ì. Á μýô Á.Ì. : 5 moll@moll.r ΤΕΙ ΛΑΜΙΑΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑ ΥΠΟΛΟΓΙΣΤΩΝ ΜΑΘΗΜΑ : ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΙΑΔΙΚΤΥΟ (ΕΡΓΑΣΤΗΡΙΟ) Ε ΕΞΑΜΗΝΟ ΕΙΣΗΓΗΤΕΣ: Χαϊδόγιαννος Χαράλαμπος ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ

Διαβάστε περισσότερα

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

Υπολογισιμότητα και Πολυπλοκότητα Κεφάλαιο 11 Υπολογισιμότητα και Πολυπλοκότητα 11.1 Ιστορία - Εισαγωγή Η Συλλογιστική του Αριστοτέλη αποτέλεσε την πρώτη προσπάθεια θεμελίωσης της λογικής και των μαθηματικών. Ο Leibni(t)z πρότεινε το εξής

Διαβάστε περισσότερα

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

Αλγόριθµοι Προσέγγισης για NP- ύσκολα Προβλήµατα Αλγόριθµοι Προσέγγισης για NP- ύσκολα Προβλήµατα Παύλος Σπυράκης Πανεπιστήµιο Πατρών Τοµέας Θεµελιώσεων και Εφαρµογών της Επιστήµης των Υπολογιστών Ερευνητικό Ακαδηµαϊκό Ινστιτούτο Τεχνολογίας Υπολογιστών

Διαβάστε περισσότερα

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

Αυτόματα. Παράδειγμα: πωλητής καφέ (iii) Παράδειγμα: πωλητής καφέ (iv) Εισαγωγή στην Επιστήμη των Υπολογιστών. Προδιαγραφές Εισαγωγή στην Επιστήμη των Υπολογιστών 4ο εξάμηνοσ.h.m.μ.y. & Σ.Ε.Μ.Φ.Ε. http://www.corelab.ece.ntua.gr/courses/ 3η ενότητα: Αυτόματα και Τυπικές Γραμματικές Στάθης Ζάχος Συνεργασία: Κωστής Σαγώνας Επιμέλεια:

Διαβάστε περισσότερα