faecher:informatik:oberstufe:automaten:mealy:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Letzte ÜberarbeitungBeide Seiten der Revision
faecher:informatik:oberstufe:automaten:mealy:start [31.05.2022 09:01] – [Mealy-Automaten] sbelfaecher:informatik:oberstufe:automaten:mealy:start [21.06.2022 14:23] – [Grundlagen und Übergangsgraph] sbel
Zeile 4: Zeile 4:
  
 ====== Mealy-Automaten ====== ====== Mealy-Automaten ======
 +((Diese Wiki-Seite basiert auf Material der ZPG INformatik/BW und steht unter einer [[https://creativecommons.org/licenses/by-nc-sa/3.0/de/|CC-BY-NC-SA Lizenz]]. Als Autoren sind angegeben "Dietrich, Lautebach (2020)".))
  
-Die sogenannten **Mealy-Automaten** können in jedem Schritt außer der Änderung des internen Zustands auch eine **Ausgabe** erzeugen und erlauben damit die Modellierung z.B. von Getränke-, Fahrkarten- oder ähnlichen Automaten, die wir aus unserer Umwelt kennen. +===== Grundlagen und Übergangsgraph =====
  
  
 +Die sogenannten **Mealy-Automaten** können in jedem Schritt außer der Änderung des internen Zustands auch eine **Ausgabe** erzeugen und erlauben damit die Modellierung z.B. von Getränke-, Fahrkarten- oder ähnlichen Automaten, die wir aus unserer Umwelt kennen.
  
 Als Beispiel soll ein Getränkeautomat dienen, der... Als Beispiel soll ein Getränkeautomat dienen, der...
Zeile 31: Zeile 32:
 </WRAP> </WRAP>
  
-Die Überführungsfunktion δ und die Ausgabefunktion λ können wie beim DEA auch, in einem **Übergangsgrgraphen** dargestellt werden. Ein passender **Übergangs-** oder **Transitionsgraph** sieht folgendermaßen aus:+Die Überführungsfunktion δ und die Ausgabefunktion λ können wie beim DEA auch, in einem **Übergangsgraphen** dargestellt werden. Ein passender **Übergangs-** oder **Transitionsgraph** sieht folgendermaßen aus:
  
-{{ :faecher:informatik:oberstufe:automaten:mealy:mealy-transistion.png?500 |}}+{{ :faecher:informatik:oberstufe:automaten:mealy:mealy-transistion.png?600 |}}
  
 +
 +Anders als beim DEA muss zu jedem Übergang außer der Eingabe auch die Ausgabe notiert werden, dies geschieht für gewöhnlich durch ein Trennzeichen wie '';'' oder ''/''.
  
 Der Automat befindet sich immer in genau einem der Zustände  und beginnt dabei immer im so genannten **Startzustand**, der mit einem zusätzlichen Pfeil gekennzeichnet wird (hier q0).  Der Automat befindet sich immer in genau einem der Zustände  und beginnt dabei immer im so genannten **Startzustand**, der mit einem zusätzlichen Pfeil gekennzeichnet wird (hier q0). 
Zeile 46: Zeile 49:
  
 Vom Startzustand ''q0'' aus wird durch Einwurf von ''1€'' der Zustand ''q2'' erreicht und die Ausgabe ''Guthaben: 1,00'' erzeugt. Vom Startzustand ''q0'' aus wird durch Einwurf von ''1€'' der Zustand ''q2'' erreicht und die Ausgabe ''Guthaben: 1,00'' erzeugt.
 +
 +----
 +{{:aufgabe.png?nolink  |}}
 +=== (A1) ===
 +
 +Baue den Getränkeautomaten in [[https://flaci.com/autoedit|FLACI]] auf und teste ihn in der Simulation.
 +
 +  * Erzeuge einen neuen Mealy-Automaten
 +  * Schalte im Reiter ''Definition'' die Option für ''δ und λ als partielle Funktionen'' an
 +  * Definiere im Reiter ''Alphabet'' das Eigabe- und das Ausgabealphabet
 +  * Überführe den Übergangsgraphen von oben nach FLACI
 +  * Simuliere Eingaben
 +
 +Welche Funktion hat die Option ''δ und λ als partielle Funktionen'', was verändert sich wenn man diese Option deaktiviert.
 +
 +----
 +
 +===== Übergangstabelle =====
 +
  
 Und wie bei [[..:dea:start|DEAs]] kann man die Übergangsfunktion ''δ'' und die Ausgabefunktion ''λ'' auch hier als **Übergangsmatrix/Übergangstabelle** darstellen, anstelle des Übergangsgraphen. Wie bei den DEAs gilt: Im Graph kann man den Fehlerzustand der Übersichtlichkeit wegen weglassen, in der Übergangsmatrix wird dieser stets angegeben. Und wie bei [[..:dea:start|DEAs]] kann man die Übergangsfunktion ''δ'' und die Ausgabefunktion ''λ'' auch hier als **Übergangsmatrix/Übergangstabelle** darstellen, anstelle des Übergangsgraphen. Wie bei den DEAs gilt: Im Graph kann man den Fehlerzustand der Übersichtlichkeit wegen weglassen, in der Übergangsmatrix wird dieser stets angegeben.
 +
 +|                   | Eingaben → (Folgezustand / Ausgabe)                       |||||
 +^  Ausgangszustand  ^  1€                                  ^  2€  ^  c  ^  a  ^  s  ^
 +|  q0                q2/"Guthaben 1€"                              |      |             |
 +|  q1                                                    |      |             |
 +|  q2                                                    |      |             |
 +|  qF                                                    |      |   qF  |         |
 +
 +
 +----
 +{{:aufgabe.png?nolink  |}}
 +=== (A2) ===
 +
 +Vervollständige anhand des Übergangsgraphen die Übergangsmatrix
 +
 +
 +----
 +{{:aufgabe.png?nolink  |}}
 +=== (A3) ===
 +
 +Schalte  die Option ''δ und λ als partielle Funktionen'' in FLACI aus und ergänze den Automaten in FLACI um den Fehlerzustand. Überprüfe so deine Tabelle aus der vorigen Aufgabe. 
 +
 +
 +===== Übungen =====
 +
 +{{:aufgabe.png?nolink  |}}
 +=== (A4) ===
 +
 +Gib eine Eingabe an, die zur Ausgabe ''Apfelsaftflasche'' führt.
 +
 +---- 
 +{{:aufgabe.png?nolink  |}}
 +=== (A5) ===
 +
 +Gib die Ausgabe an, die zur Eingabe ''1€,s'' gehört. In welchem Zustand befindet sich der Automat anschließend?
 +
 +---- 
 +{{:aufgabe.png?nolink  |}}
 +=== (A6) ===
 +
 +Modelliere einen Mealy-Automaten für einen Automaten aus der Schule. Gib die folgenden Informationen an:
 +  * Eingabealphabet, Zustandsmenge, Startzustände und Ausgabealphabet
 +  * Zustandsübergangs- und Ausgabefunktionen als Tabelle
 +  * Zustandsübergangsgraph
 +
 +
 +---- 
 +{{:aufgabe.png?nolink  |}}
 +=== (A7) ===
 +
 +Ein Mealy-Automat A ist durch den folgenden Übergangsgraphen gegeben:
 +
 +{{ :faecher:informatik:oberstufe:automaten:mealy:mealy-aufgabe.png |}}
 +
 +  * Gib die Ausgabe zur Eingabe ''uhuhuhuuhhuhu'' an
 +  * Beschreibe A als 6-Tupel. Lege die Übergangsfunktion δ sowie die Ausgabefunktion γ durch eine Tabelle fest.
 +  * Beschreibe die "Übersetzungsfunktion" - wann gibt der Automat einen 1 aus?