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

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

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

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


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

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

2 Μέτρηση της Πολυπλοκότητας (7.1) Η κλάση Ρ (7.2) Η κλάση ΝΡ (7.3) ΝΡ-πληρότητα (7.4)

3 Επιλυσιμότητα και Πολυπλοκότητα Δόγμα Church – Turing Δόγμα Church – Turing: Αν υπάρχει κάποια μέθοδος (αλγόριθμος) μέσω της οποίας μπορούμε να διεκπεραιώσουμε κάποιο υπολογισμό, τότε ο ίδιος υπολογισμός μπορεί να διεκπεραιωθεί μέσω μιας μηχανής Turing. Ανεπίλυτα προβλήματα Ανεπίλυτα προβλήματα: Προβλήματα για τα οποία δεν υπάρχει κανένας αλγόριθμος που να τα επιλύει π.χ. το πρόβλημα του τερματισμού Επιλύσιμα Προβλήματα Επιλύσιμα Προβλήματα: Προβλήματα για τα οποία υπάρχει αλγόριθμος (μηχανή Turing) που τα επιλύει Πολυπλοκότητα Πόσος χρόνος/μνήμη απαιτείται για την επίλυση του προβλήματος; Είναι η επίλυση του προβλήματος πρακτικά εφικτή;

4 Μέτρηση της Πολυπλοκότητας Η δίπλα ΜΤ διαγιγνώσκει τη γλώσσα L 1 = {w#w | w ∈ {a, b}*} Ποια η χρονική της πολυπλοκότητα; Εξαρτάται από: το μήκος της λέξης τη δομή της λέξης

5 Χρονική πολυπλοκότητα Έστω Μ μια ντετερμινιστική ΤΜ που τερματίζει σε κάθε είσοδο. χρόνος εκτέλεσης χρονική πολυπλοκότητα O χρόνος εκτέλεσης ή η χρονική πολυπλοκότητα της Μ είναι η συνάρτηση f: ℕ -> ℕ όπου f(n) είναι το μέγιστο πλήθος βημάτων που είναι δυνατόν να πραγματοποιήσει η Μ όταν το μήκος της εισόδου της είναι n.

6 Εργαλεία Εκτίμησης Πολυπλοκότητας Ασυμπτωτική ανάλυση Στόχος: εκτίμηση του χρόνου σε μεγάλα δεδομένα εισόδου Δυνατότητα σύγκρισης του χρόνου εκτέλεσης διαφορετικών αλγορίθμων Παράδειγμα: Έστω αλγόριθμος με χρονική πολυπλοκότητα f(n) = 3n 3 -4n 2 +n Ασυμπτωτική ανάλυση: Μας ενδιαφέρει ο μεγιστοβάθμιος όρος (αγνοούμε τον συντελεστή του όρου όπως επίσης και τους όρους μικρότερου βαθμού). Τότε λέμε ότι η πολυπλοκότητα του αλγορίθμου είναι ασυμπτωτικά το πολύ n 3

7 Μέτρηση της Πολυπλοκότητας Αριθμητική Γραμμική Άλγεβρα

8 f(n) =Ο(g(n)) Αν f(n) = Ο(g(n)), τότε λέμε πως η συνάρτηση f είναι της τάξεως g(n) ή της τάξεως κεφαλαίο Ο του g(n). η g(n) αποτελεί ασυμπτωτικό, άνω φράγμα της f(n).

9 Γραφική Απεικόνιση f(n) = Ο(g(n))

10 Ασυμπτωτική ανάλυση – Η τάξη ο f(n) = Ο(g(n)) τότε η f είναι ασυμπτωτικά μικρότερη ή ίση της g f(n) = o(g(n)) τότε η f είναι ασυμπτωτικά μικρότερη της g Παραδείγματα f(n) = 6n n + 45 τότε f(n) = ο(n4) n = o(n log n) n log n = o(n 2 )

11 1 ο Παράδειγμα Η δίπλα ΜΤ διαγιγνώσκει τη γλώσσα L 1 = {w#w | w ∈ {a, b}*} Ποια η χρονική της πολυπλοκότητα; O(n) φορές O(n) βήματα O(n) φορές

12 Κλάση Χρονικής Πολυπλοκότητας L 1 ϵ ΤΙΜΕ(Ο(n 2 ))


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

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


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