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

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

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

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


Παρουσίαση με θέμα: "Θεωρία Υπολογισμού Χρονική Πολυπλοκότητα και Μοντέλα."— Μεταγράφημα παρουσίασης:

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

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

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

4 2 ο Παράδειγμα L 2 = {0 n 1 n | n ≥ 0}

5 Υπάρχει γρηγορότερος αλγόριθμος; 0(n) 0(nlogn) 0(n)

6 Υπάρχει ακόμη γρηγορότερος αλγόριθμος; 0(n) 0(1)

7 Και στη Java; M(string x) { n = x.len; if n % 2 == 1 reject; else for (i = 1; i <= n/2; i++) if x[i] != 0 reject; if x[n-i+1] != 1 reject; accept; }

8 O χρόνος εκτέλεσης διαφοροποιείται ανάλογα με το μοντέλο υπολογισμού!

9 Σύνοψη Η L 2 μπορεί διαγνωστεί από μια μονοταινιακή ΤΜ σε χρόνο Ο(n lg n). – Μπορεί να δειχθεί ότι αυτό είναι και κάτω φράγμα για την επίλυση του προβλήματος (δεν υπάρχει ΤΜ που να μπορεί να πετύχει ταχύτερη εκτέλεση). Η L 2 μπορεί να διαγνωστεί από μια διταινιακή ΤΜ σε χρόνο Ο(n). – Αυτός είναι και ο βέλτιστος χρόνος για επίλυση του προβλήματος Συμπέρασμα: Η πολυπλοκότητα εξαρτάται από το μοντέλο

10 Συμπεράσματα Θεωρία Υπολογισιμότητας Δόγμα Church-Turing: Όλα τα εύλογα υπολογιστικά μοντέλα είναι ισοδύναμα (επιλύουν την ίδια κλάση από προβλήματα). Θεωρία Πολυπλοκότητας Η επιλογή του μοντέλου επηρεάζει τη χρονική πολυπλοκότητα μιας γλώσσας Ταξινόμηση προβλημάτων με βάση τη χρονική πολυπλοκότητα Ποιο μοντέλο θα πρέπει να χρησιμοποιείται για τη μέτρηση του χρόνου;; Τα καθιερωμένα ντετερμινιστικά μοντέλα δεν παρουσιάζουν μεγάλες διαφορές ως προς τις χρονικές τους απαιτήσεις.


Κατέβασμα ppt "Θεωρία Υπολογισμού Χρονική Πολυπλοκότητα και Μοντέλα."

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


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