1 / 34

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

Διακριτά Μαθηματικά Ι I Μηχανές Πεπερασμένων Καταστάσεων. Κώστας Στεργίου Λέκτορας Τμήμα Μηχανικών Πληροφοριακών & Επικοινωνιακών Συστημάτων Πανεπιστήμιο Αιγαίου e-mail: konsterg@aegean.gr. Μηχανές Επεξεργασίας Πληροφοριών.

Download Presentation

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

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

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

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

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

  5. Μηχανές Επεξεργασίας Πληροφοριών • Τα δύο προηγούμενα είναι παραδείγματα μηχανών χωρίς μνήμη • Το σήμα εξόδου κάθε χρονικής στιγμής εξαρτάται μόνο από το σήμα εισόδου εκείνης της στιγμής • κι όχι από τις προηγούμενες εισόδους Παράδειγμα: Για την παρακάτω ακολουθία σημάτων εισόδου ενός αθροιστή 3 5 0 3 3 9 2... 4 4 6 1 4 5 5 ... Παράγεται η εξής ακολουθία σημάτων εξόδου 7 9 6 4 7 14 7 ... ΤΜΗΜΑ ΜΠΕΣ

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

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

  8. Καταστάσεις • Καθώς έρχονται νέα σήματα εισόδου, η μηχανή μπορεί να αλλάζει κατάσταση (για να ανανεώνει την περίληψη της ιστορίας της) • Σε οποιαδήποτε στιγμή η κατάσταση εξαρτάται από τα σήματα εισόδου εκείνη τη στιγμή και από την προηγούμενη κατάσταση Παράδειγμα: Συμπεριφορά αυτόματου πωλητή καφέ ΤΜΗΜΑ ΜΠΕΣ

  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. Μηχανές Πεπερασμένων Καταστάσεων • Σε κάθε στιγμή μια μηχανή πεπερασμένων καταστάσεων βρίσκεται σε μια από τις καταστάσεις της • Όταν έλθει ένα γράμμα εισόδου, η μηχανή θα μεταβεί σε μια άλλη κατάσταση σύμφωνα με τη συνάρτηση μετάβασης • Σε κάθε κατάσταση, η μηχανή παράγει ένα γράμμα εξόδου σύμφωνα με τη συνάρτηση εξόδου Παράδειγμα: αυτόματος πωλητής καφέ ΤΜΗΜΑ ΜΠΕΣ

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

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

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

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

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

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

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

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

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

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

  24. Ισοδύναμες Καταστάσεις • Τι αντιπροσωπεύει η ισοδυναμία καταστάσεων σε ένα φυσικό σύστημα? • καταστάσεις που αναπαριστούν ισοδύναμες περιλήψεις της ιστορίας της ΜΠΚ Η μηχανή δέχεται ακολουθίες από 1 και 2 και παράγει 1 αν το άθροισμα όλων των ψηφίων που έχει δεχθεί διαιρείται με το 4 Οι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 ΤΜΗΜΑ ΜΠΕΣ

  27. Σχέσεις Ισοδυναμίας • Αν δύο καταστάσεις siκαι sjείναι k-ισοδύναμες και οι siκαι shείναι k-ισοδύναμες τότε και οι sjκαι shείναι k-ισοδύναμες • Άρα μπορούμε να ορίσουμε μια σχέση ισοδυναμίας πάνω στο σύνολο όλων των καταστάσεων, ώστε δύο καταστάσεις να σχετίζονται αν είναι k-ισοδύναμες • η σχέση αυτή δημιουργεί μια διαμέριση του συνόλου των καταστάσεων η οποία συμβολίζεται πk π0 = {ΑBCDEFGH} π1 = {ΑBECDFGH} π2 = {ΑBCDEFGH} ΤΜΗΜΑ ΜΠΕΣ

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

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

  30. Υπολογισμών Σχέσεων Ισοδυναμίας • Με παρόμοιο τρόπο παίρνουμε π2 = {ΑBECDFGH} και π3 = {ΑBECDFGH} • Παρατηρήσεις: • Αν η π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 = {s1s2s3s4} ΤΜΗΜΑ ΜΠΕΣ

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

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

More Related