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

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

Διακριτά Μαθηματικά ΙI Μηχανές Πεπερασμένων Καταστάσεων

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


Παρουσίαση με θέμα: "Διακριτά Μαθηματικά ΙI Μηχανές Πεπερασμένων Καταστάσεων"— Μεταγράφημα παρουσίασης:

1 Διακριτά Μαθηματικά ΙI Μηχανές Πεπερασμένων Καταστάσεων
Κώστας Στεργίου Λέκτορας Τμήμα Μηχανικών Πληροφοριακών & Επικοινωνιακών Συστημάτων Πανεπιστήμιο Αιγαίου ΤΜΗΜΑ ΜΠΕΣ

2 Μηχανές Επεξεργασίας Πληροφοριών
Με τον όρο μηχανή επεξεργασίας πληροφοριών εννοούμε μια μηχανή που δέχεται ένα σύνολο από σήματα εισόδου και παράγει ένα αντίστοιχο σύνολο από σήματα εξόδου Μηχανή Επεξεργασίας Πληροφοριών Σήματα Εισόδου Σήματα Εξόδου ΤΜΗΜΑ ΜΠΕΣ

3 Μηχανές Επεξεργασίας Πληροφοριών
Παραδείγματα μηχανών επεξεργασίας πληροφοριών Λάμπα γραφείου σήματα εισόδου: ΠΑΝΩ/ΚΑΤΩ σήματα εισόδου: ΦΩΣ/ΣΚΟΤΑΔΙ Αθροιστής σήματα εισόδου: δύο δεκαδικοί αριθμοί σήματα εισόδου: το άθροισμα τους Αυτοκίνητο σήματα εισόδου: πίεση στο γκάζι, γωνία τιμονιού σήματα εισόδου: ταχύτητα, κατεύθυνση Αυτόματος πωλητής καφέ σήματα εισόδου: νομίσματα, επιλογή καφέ σήματα εισόδου: ποτήρι καφέ, ρέστα ΤΜΗΜΑ ΜΠΕΣ

4 Μηχανές Επεξεργασίας Πληροφοριών
Τα σήματα εισόδου σε μια μηχανή επεξεργασίας πληροφοριών μεταβάλλονται με το χρόνο τα σήματα εξόδου πρέπει να μεταβάλλονται αντίστοιχα Μια μηχανή επεξεργασίας πληροφοριών δέχεται μια χρονική ακολουθία σημάτων εισόδου και παράγει μια αντίστοιχη χρονική ακολουθία σημάτων εξόδου Παράδειγμα: Για την παρακάτω ακολουθία σημάτων εισόδου μιας λάμπας ΠΑΝΩ ΚΑΤΩ ΚΑΤΩ ΠΑΝΩ ΚΑΤΩ ΠΑΝΩ ΠΑΝΩ ... Παράγεται η εξής ακολουθία σημάτων εξόδου ΦΩΣ ΣΚΟΤΑΔΙ ΣΚΟΤΑΔΙ ΦΩΣ ΣΚΟΤΑΔΙ ΦΩΣ ΦΩΣ ΤΜΗΜΑ ΜΠΕΣ

5 Μηχανές Επεξεργασίας Πληροφοριών
Παράδειγμα: Για την παρακάτω ακολουθία σημάτων εισόδου ενός αθροιστή Παράγεται η εξής ακολουθία σημάτων εξόδου Τα δύο προηγούμενα είναι παραδείγματα μηχανών χωρίς μνήμη Το σήμα εξόδου κάθε χρονικής στιγμής εξαρτάται μόνο από το σήμα εισόδου εκείνης της στιγμής κι όχι από τις προηγούμενες εισόδους ΤΜΗΜΑ ΜΠΕΣ

6 Μηχανές Επεξεργασίας Πληροφοριών
Σε μια μηχανή με μνήμη το σήμα εξόδου κάθε στιγμή μπορεί να εξαρτάται όχι μόνο από το σήμα εισόδου εκείνης της στιγμής, αλλά κι από προηγούμενα σήματα εισόδου η μηχανή “μπορεί να θυμάται” τι έγινε στο παρελθόν αλλά όχι βέβαια τα πάντα που έχουν γίνει στο παρελθόν! Παράδειγμα: Ο αυτόματος πωλητής καφέ δέχεται ως είσοδο κέρματα των 10, 20, και 50 λεπτών κι ένας καφές κοστίζει 60 λεπτά. Για την παρακάτω ακολουθία σημάτων εισόδου Παράγεται η εξής ακολουθία σημάτων εξόδου ΤΙΠΟΤΑ ΤΙΠΟΤΑ ΚΑΦΕΣ ΤΙΠΟΤΑ ΚΑΦΕΣ ΤΙΠΟΤΑ ΚΑΦΕΣ ΤΙΠΟΤΑ ΤΜΗΜΑ ΜΠΕΣ

7 Καταστάσεις Για να περιγράψουμε τα γεγονότα του παρελθόντος, εισάγουμε την έννοια της κατάστασης μια κατάσταση αντιπροσωπεύει την “περίληψη” του παρελθόντος της μηχανής Παράδειγμα: Στον αυτόματο πωλητή καφέ υπάρχουν πιθανές 7 καταστάσεις που καθορίζουν το συνολικό ποσό που έχει εισαχθεί από την τελευταία πώληση καφέ: >60 Σε οποιαδήποτε στιγμή η κατάσταση και τα σήματα εισόδου εκείνη τη στιγμή θα καθορίσουν την έξοδο Παράδειγμα: Αν η κατάσταση είναι 50 και η είσοδος 10 τότε η έξοδος είναι ΚΑΦΕΣ ΤΜΗΜΑ ΜΠΕΣ

8 Καταστάσεις Καθώς έρχονται νέα σήματα εισόδου, η μηχανή μπορεί να αλλάζει κατάσταση (για να ανανεώνει την περίληψη της ιστορίας της) Σε οποιαδήποτε στιγμή η κατάσταση εξαρτάται από τα σήματα εισόδου εκείνη τη στιγμή και από την προηγούμενη κατάσταση Παράδειγμα: Συμπεριφορά αυτόματου πωλητή καφέ Συνολικό ποσό Είσοδος 10 λεπτά 20 λεπτά 50 λεπτά 10 20 50 30 60 40 Συνολικό ποσό Έξοδος ΤΙΠΟΤΑ 10 20 30 40 50 60 ΚΑΦΕΣ ΤΜΗΜΑ ΜΠΕΣ

9 Μηχανές Πεπερασμένων Καταστάσεων
Μια μηχανή μπορεί να έχει έναν πεπερασμένο αριθμό καταστάσεων στις οποίες μπορεί να βρεθεί κατά τη διάρκεια της λειτουργίας της Μια τέτοια μηχανή ονομάζεται Μηχανή Πεπερασμένων Καταστάσεων π.χ. Αυτόματος πωλητής καφέ Μια μηχανή με άπειρο αριθμό καταστάσεων ονομάζεται Μηχανή Απείρων Καταστάσεων Παράδειγμα? Εμείς θα ασχοληθούμε μόνο με μηχανές πεπερασμένων καταστάσεων ΤΜΗΜΑ ΜΠΕΣ

10 Παράδειγμα Μια μηχανή που δέχεται ως είσοδο έναν ακέραιο αριθμό και δίνει ως έξοδο τον μεγαλύτερο ακέραιο που έχει δεχθεί μέχρι εκείνη τη στιγμή πρέπει να έχει μνήμη Τι πρέπει να αποθηκεύει? Αν οι αριθμοί εισόδου κυμαίνονται σε ένα συγκεκριμένο διάστημα τότε η μηχανή έχει πεπερασμένες καταστάσεις Αν δεν υπάρχει περιορισμός για το ποιος ακέραιος θα έρθει ως είσοδος τότε η μηχανή έχει άπειρες καταστάσεις ΤΜΗΜΑ ΜΠΕΣ

11 Μηχανές Πεπερασμένων Καταστάσεων
Μια Μηχανή Πεπερασμένων Καταστάσεων – ΜΠΚ (Finite State Machine) καθορίζεται από Ένα πεπερασμένο σύνολο καταστάσεων S = {s0,s1,s2,…} Ένα ειδικό στοιχείο του συνόλου S που ονομάζεται αρχική κατάσταση Ένα πεπερασμένο σύνολο από γράμματα εισόδου I = {i1,i2,i3,…} Ένα πεπερασμένο σύνολο από γράμματα εξόδου O = {o1,o2,o3,…} Μια συνάρτηση f από το SI στο S, που ονομάζεται συνάρτηση μετάβασης Μια συνάρτηση g από το S στο O, που ονομάζεται συνάρτηση εξόδου ΤΜΗΜΑ ΜΠΕΣ

12 Μηχανές Πεπερασμένων Καταστάσεων
Μια μηχανή πεπερασμένων καταστάσεων είναι ένα θεωρητικό εργαλείο για την περιγραφή μηχανών επεξεργασίας πληροφοριών και δυναμικών συστημάτων Οι ΜΠΚ υπήρχαν πριν τη γέννηση της επιστήμης υπολογιστών Οι ΜΠΚ μας βοηθούν να δώσουμε ακριβείς περιγραφές και ορισμούς συστημάτων σε αντίθεση με τη φυσική γλώσσα Μια ΜΠΚ μπορεί να υλοποιηθεί σε υλικό ή σε λογισμικό ΤΜΗΜΑ ΜΠΕΣ

13 Μηχανές Πεπερασμένων Καταστάσεων
Συνολικό ποσό Είσοδος 10 λεπτά 20 λεπτά 50 λεπτά 10 20 50 30 60 40 Σε κάθε στιγμή μια μηχανή πεπερασμένων καταστάσεων βρίσκεται σε μια από τις καταστάσεις της Όταν έλθει ένα γράμμα εισόδου, η μηχανή θα μεταβεί σε μια άλλη κατάσταση σύμφωνα με τη συνάρτηση μετάβασης Σε κάθε κατάσταση, η μηχανή παράγει ένα γράμμα εξόδου σύμφωνα με τη συνάρτηση εξόδου Συνολικό ποσό Έξοδος ΤΙΠΟΤΑ 10 20 30 40 50 60 ΚΑΦΕΣ Παράδειγμα: αυτόματος πωλητής καφέ ΤΜΗΜΑ ΜΠΕΣ

14 Αναπαράσταση μιας ΜΠΚ – Πίνακας
Μια ΜΠΚ μπορεί να αναπαρασταθεί με έναν πίνακα μετάβασης καταστάσεων κι έναν πίνακα εξόδου ή με τον συνδυασμό τους γράμματα εξόδου αρχική κατάσταση γράμματα εισόδου Κατάσταση Είσοδος a b c S0 S1 S2 S5 S3 S6 S4 Κατάσταση Είσοδος Έξοδος a b c S0 S1 S2 S5 S3 S6 S4 1 Κατάσταση Έξοδος S0 S1 S2 S3 S4 S5 S6 1 σύνολο καταστάσεων ΤΜΗΜΑ ΜΠΕΣ

15 Αναπαράσταση μιας ΜΠΚ - Γράφος
Μια ΜΠΚ μπορεί να αναπαρασταθεί με έναν γράφο μετάβασης καταστάσεων γράφος μετάβασης καταστάσεων πίνακας μετάβασης πίνακας εξόδου ΤΜΗΜΑ ΜΠΕΣ

16 Παράδειγμα – Αυτόματος Πωλητής
Πως μπορεί να αναπαρασταθεί με γράφο η ΜΠΚ του αυτόματου πωλητή καφέ? Κατάσταση Είσοδος Έξοδος a b c S0 S1 S2 S5 S3 S6 S4 1 ΤΜΗΜΑ ΜΠΕΣ

17 ΜΠΚ ως Μοντέλα Φυσικών Συστημάτων
Παράδειγμα: Μετρητής Υπόλοιπου (modulo) 3 Δέχεται μια ακολουθία από 0,1,2 ως είσοδο και παράγει μια ακολουθία από 0,1,2 ως έξοδο τέτοια ώστε σε κάθε στιγμή η έξοδος ισούται με το υπόλοιπο ως προς 3 όλων των ψηφίων που έχουν εισαχθεί μέχρι εκείνη τη στιγμή A/0 B/1 1 C/2 2 αρχική κατάσταση Κατάσταση Είσοδος Έξοδος 1 2 Α A B C Β ΤΜΗΜΑ ΜΠΕΣ

18 ΜΠΚ ως Μοντέλα Φυσικών Συστημάτων
Παράδειγμα: Σύγκριση 2 Δυαδικών Αριθμών Δέχεται δύο δυαδικούς αριθμούς και προσδιορίζει το μεγαλύτερο ή αν είναι ίσοι. Τα ψηφία των αριθμών εισάγονται ένα προς ένα αρχίζοντας από τη μικρότερη δύναμη του 2. Δηλ. το αλφάβητο εισόδου είναι {00,01,10,11} A/0 B/1 10 C/2 00,11 00,01,11 00,10,11 01 αρχική κατάσταση Κατάσταση Είσοδος 11 Έξοδος 00 01 10 Α A C B ΙΣΟΙ Β ΜΕΓΑΛ ΜΙΚΡΟΤ ΤΜΗΜΑ ΜΠΕΣ

19 Ισοδύναμες Μηχανές Δύο ΜΠΚ είναι ισοδύναμες όταν παράγουν την ίδια ακολουθία εξόδου κάθε φορά που ξεκινούν από την ίδια αρχική κατάσταση και τροφοδοτούνται με την ίδια ακολουθία εισόδου αρχική κατάσταση Κατάσταση Είσοδος Έξοδος 1 2 Α B C Β F D G E H Κατάσταση Είσοδος Έξοδος 1 2 Α B C Β D E Οι δύο μηχανές είναι ισοδύναμες ΤΜΗΜΑ ΜΠΕΣ

20 Ισοδύναμες Μηχανές Ποιος είναι ο γράφος για τον καθένα από τους παρακάτω πίνακες? αρχική κατάσταση Κατάσταση Είσοδος Έξοδος 1 2 Α B C Β F D G E H Κατάσταση Είσοδος Έξοδος 1 2 Α B C Β D E ΤΜΗΜΑ ΜΠΕΣ

21 Ισοδύναμες Μηχανές - Παράδειγμα
Είναι οι παρακάτω μηχανές ισοδύναμες? ΤΜΗΜΑ ΜΠΕΣ

22 Ισοδύναμες Καταστάσεις
Πως μπορούμε να προσδιορίσουμε αν δύο μηχανές είναι ισοδύναμες? μπορούμε να συγκρίνουμε τις ακολουθίες εξόδου που παράγουν για όλες τις πιθανές ακολουθίες εισόδου? Με δεδομένη κάποια ΜΠΚ μπορούμε να κατασκευάσουμε μια ισοδύναμη της με λιγότερες καταστάσεις (αν αυτό είναι δυνατό)? πολύ σημαντικό στην κατασκευή ΜΠΚ με υλικό! Δύο καταστάσεις si και sj μιας ΜΠΚ λέγονται ισοδύναμες αν για οποιαδήποτε ακολουθία εισόδου η μηχανή παράγει την ίδια ακολουθία εξόδου είτε ξεκινάει από την si είτε ξεκινάει από την sj ΤΜΗΜΑ ΜΠΕΣ

23 Ισοδύναμες Καταστάσεις
Δύο ισοδύναμες καταστάσεις si και sj μπορούν να συμπτυχθούν σε μία χωρίς να αλλάξει η συμπεριφορά της μηχανής αφαιρούμε την sj και κατευθύνουμε προς την si όλες τις μεταβάσεις που κατέληγαν στην sj Κατάσταση Είσοδος Έξοδος 1 2 Α B C Β D E Κατάσταση Είσοδος Έξοδος 1 2 Α B C Β F D G E H Οι C και F, D και G, E και H είναι ζεύγη ισοδύναμων καταστάσεων ΤΜΗΜΑ ΜΠΕΣ

24 Ισοδύναμες Καταστάσεις
Τι αντιπροσωπεύει η ισοδυναμία καταστάσεων σε ένα φυσικό σύστημα? καταστάσεις που αναπαριστούν ισοδύναμες περιλήψεις της ιστορίας της ΜΠΚ Η μηχανή δέχεται ακολουθίες από 1 και 2 και παράγει 1 αν το άθροισμα όλων των ψηφίων που έχει δεχθεί διαιρείται με το 4 Κατάσταση Είσοδος Έξοδος 1 2 Α B C Β F D G E H Οι C και F είναι καταστάσεις όπου το άθροισμα των ψηφίων είναι πολλαπλάσιο του 4 + 2 Οι D και G, είναι καταστάσεις όπου το άθροισμα των ψηφίων είναι πολλαπλάσιο του 4 + 3 Οι E και H είναι καταστάσεις όπου το άθροισμα των ψηφίων είναι πολλαπλάσιο του 4 ΤΜΗΜΑ ΜΠΕΣ

25 k-ισοδυναμία Δύο καταστάσεις είναι 0-ισοδύναμες αν έχουν την ίδια έξοδο Δύο καταστάσεις είναι 1-ισοδύναμες αν έχουν την ίδια έξοδο και για κάθε γράμμα εισόδου οι επόμενες καταστάσεις τους είναι 0-ισοδύναμες Δύο καταστάσεις είναι k-ισοδύναμες αν έχουν την ίδια έξοδο και για κάθε γράμμα εισόδου οι επόμενες καταστάσεις τους είναι (k-1)-ισοδύναμες αν δύο καταστάσεις si και sj είναι k-ισοδύναμες τότε για κάθε ακολουθία εισόδου μήκους k ή λιγότερο η μηχανή θα παράγει τις ίδιες ακριβώς ακολουθίες εξόδου, ασχέτως αν ξεκινάει από την si ή την sj ΤΜΗΜΑ ΜΠΕΣ

26 k-ισοδυναμία Για την δίπλα μηχανή, οι καταστάσεις A και C είναι 0-ισοδύναμες και οι καταστάσεις G και H είναι 1-ισοδύναμες Δύο καταστάσεις είναι ισοδύναμες αν είναι k-ισοδύναμες για όλα τα k Κατάσταση Είσοδος Έξοδος 1 Α B F Β A C G D H E ΤΜΗΜΑ ΜΠΕΣ

27 Σχέσεις Ισοδυναμίας Αν δύο καταστάσεις si και sj είναι k-ισοδύναμες και οι si και sh είναι k-ισοδύναμες τότε και οι sj και sh είναι k-ισοδύναμες Άρα μπορούμε να ορίσουμε μια σχέση ισοδυναμίας πάνω στο σύνολο όλων των καταστάσεων, ώστε δύο καταστάσεις να σχετίζονται αν είναι k-ισοδύναμες η σχέση αυτή δημιουργεί μια διαμέριση του συνόλου των καταστάσεων η οποία συμβολίζεται πk Κατάσταση Είσοδος Έξοδος 1 Α B F Β A C G D H E π0 = {ΑBCDE FGH} π1 = {ΑBE CD F GH} π2 = {ΑB CD E F GH} ΤΜΗΜΑ ΜΠΕΣ

28 Υπολογισμών Σχέσεων Ισοδυναμίας
Θεώρημα: Δύο καταστάσεις βρίσκονται στο ίδιο σύμπλοκο στην πk αν και μόνο αν είναι στο ίδιο σύμπλοκο στην πk-1 και για οποιοδήποτε γράμμα εισόδου, οι ακόλουθες καταστάσεις τους είναι στο ίδιο σύμπλοκο στην πk-1 Το παραπάνω θεώρημα μας δίνει μια διαδικασία για τον υπολογισμό των διαμερίσεων π0, π1,..., πk διαδοχικά ΤΜΗΜΑ ΜΠΕΣ

29 Υπολογισμών Σχέσεων Ισοδυναμίας
π0 = {ΑBCDE FGH} Α,Β,C,D,E έχουν την ίδια έξοδο F,G,H έχουν την ίδια έξοδο Οι Α και Β είναι στο ίδιο σύμπλοκο στην π1 Για είσοδο 0 έχουν ακόλουθες καταστάσεις Β και Α (που είναι στο ίδιο σύμπλοκο στην π0) Για είσοδο 0 έχουν ακόλουθη κατάσταση F Οι Α και Ε είναι στο ίδιο σύμπλοκο στην π1 Είναι στο ίδιο σύμπλοκο στην π0 Οι ακόλουθες καταστάσεις για είσοδο 0 είναι Β και Α και για είσοδο 1 είναι F και G Οι Α και C δεν είναι στο ίδιο σύμπλοκο στην π1 Γιατί? Κατάσταση Είσοδος Έξοδος 1 Α B F Β A C G D H E Τελικά παίρνουμε π1 = {ΑBE CD F GH} ΤΜΗΜΑ ΜΠΕΣ

30 Υπολογισμών Σχέσεων Ισοδυναμίας
Με παρόμοιο τρόπο παίρνουμε π2 = {ΑBE CD F GH} και π3 = {ΑBE CD F GH} Παρατηρήσεις: Αν η πk είναι ίση με την πk-1, τότε η πm είναι ίση με την πk-1 για όλα τα mk (επειδή η πk+1 κατασκευάζεται από την πk με τον ίδιο τρόπο που κατασκευάζεται η πk από την πk-1) η διαδικασία κατασκευής σταματάει όταν δύο συνεχόμενες διαμερίσεις είναι ακριβώς ίδιες Η είναι πk μια εκλέπτυνση της πk-1 (επειδή δύο καταστάσεις δεν μπορεί να είναι k-ισοδύναμες αν δεν είναι (k-1)-ισοδύναμες) η διαδικασία κατασκευής δεν προχωράει πέρα από την πn-2, όπου n ο αριθμός καταστάσεων ΤΜΗΜΑ ΜΠΕΣ

31 Απλοποίηση μέσω Υπολογισμού Σχέσεων Ισοδυναμίας
Αλγόριθμος Υπολογισμού Διαμέρισης π0 : Πάρε κάθε ζευγάρι καταστάσεων si και sj στη ΜΠΚ Αν η si δίνει διαφορετικές εξόδους από την sj, μάρκαρε τις ως μη-ισοδύναμες Για κάθε ζευγάρι (si , sj) που δεν έχει ακόμα μαρκαριστεί, για κάθε είσοδο a, βρες το ζευγάρι καταστάσεων (g(si,a), g(sj,a)) Αν οι καταστάσεις g(si,a) και g(sj,a) έχουν μαρκαριστεί ως μη-ισοδύναμες, μάρκαρε τις si και sj ως μη-ισοδύναμες Επανέλαβε μέχρι να μην είναι δυνατό περαιτέρω μαρκάρισμα Ζευγάρια καταστάσεων που δεν έχουν μαρκαριστεί είναι ισοδύναμα. Απλοποίησε τη μηχανή (δηλ. δημιούργησε τη διαμέριση) ανάλογα ΤΜΗΜΑ ΜΠΕΣ

32 Απλοποίηση μέσω Υπολογισμού Σχέσεων Ισοδυναμίας
Παράδειγμα Απλοποίησης: 1ο βήμα 2ο βήμα Προκύπτει η διαμέριση π0 = {s1 s2s3 s4} ΤΜΗΜΑ ΜΠΕΣ

33 Απλοποίηση μέσω Υπολογισμού Σχέσεων Ισοδυναμίας
Απλοποιημένη ΜΠΚ ΤΜΗΜΑ ΜΠΕΣ

34 Ντετερμινιστικές ΜΠΚ Μια ΜΠΚ η οποία για κάθε κατάσταση έχει το πολύ μια μετάβαση από την κατάσταση αυτή προς κάποια άλλη για κάθε γράμμα εισόδου ονομάζεται ντετερμινιστική Οποιαδήποτε άλλη ΜΠΚ ονομάζεται μη-ντετερμινιστική Κάθε μη-ντετερμινιστική ΜΠΚ μπορεί να μετατραπεί σε ντετερμινιστική 1 a 2 3 b a,b Μη-ντετερμινιστική ΜΠΚ ΤΜΗΜΑ ΜΠΕΣ


Κατέβασμα ppt "Διακριτά Μαθηματικά ΙI Μηχανές Πεπερασμένων Καταστάσεων"

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


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