Informatik · Klasse 3–10 · aktualisiert
Automat in der Informatik einfach erklärt
Du lernst, was Eingabe, Zustand, Übergang und Ausgabe sind, und wann ein Automat ein Wort akzeptiert.
0 von 9 Aufgaben gelöst
Kurz gesagt
Ein Automat ist ein einfaches Modell eines Rechners. Er liest Zeichen einer Eingabe und wechselt dabei seinen Zustand. Ein Akzeptor akzeptiert ein Wort, wenn er nach dem letzten Zeichen in einem Endzustand steht.
Ein Automat für Getränke reagiert auf deine Eingaben: Münze einwerfen, Getränk wählen, Getränk entnehmen. In der Informatik baut man solche Abläufe als einfache Modelle nach. So kannst du Schritt für Schritt verfolgen, was ein Automat tut und warum.
Deine Lernziele
Hake ab, was du schon kannst. Löst du alle Aufgaben eines Abschnitts, hakt Mela das Ziel für dich ab.
4 Abschnitte
Ein Automat ist in der Informatik ein Modell eines Rechners. Es ist zunächst egal, ob man ihn wirklich bauen könnte. Er ist stark vereinfacht, damit man sein Verhalten leichter versteht.
Dem Automaten wird von außen eine Eingabe gegeben. Das ist eine Folge von Zeichen. Der Automat befindet sich immer in einem bestimmten Zustand. Wenn ein Zeichen eintrifft, kann er in einen neuen Zustand wechseln. Der neue Zustand heißt Folgezustand. Der Wechsel heißt Übergang. Der Folgezustand hängt vom Zeichen und vom jetzigen Zustand ab.
Manche Automaten haben auch eine Ausgabe. Das ist eine Aktion, die in einer bestimmten Situation erfolgt, zum Beispiel ein Motor, der startet.
In Zeichnungen stehen Kreise für Zustände. Pfeile zwischen den Kreisen stehen für Übergänge.
Definition
Zustandsübergang
Der Wechsel von einem Zustand in den Folgezustand heißt Zustandsübergang oder Transition. Er kann eintreten, wenn ein Eingabezeichen eintrifft. Er hängt vom Zeichen und vom jetzigen Zustand ab.
Beispiel: Aufzugtür
- 1Eingaben: „aufmachen“ und „zumachen“. Ein Benutzer gibt sie ein.
- 2Zustände: „Auf“, „Zu“, „Aufgehend“ und „Zugehend“.
- 3Ausgabe im Zustand „Aufgehend“: Ein Motor startet und öffnet die Tür.
- 4Ausgabe im Zustand „Zugehend“: Der Motor startet in die entgegengesetzte Richtung.
- 5In den Zuständen „Auf“ und „Zu“ hält der Motor an.
Merke: Die Eingabe kommt von außen. Der Zustand ist die jetzige Lage. Der Übergang ist der Wechsel in den Folgezustand. Die Ausgabe ist eine Aktion des Automaten.
Teste dich
Eine Übergangstabelle ist eine Tabelle, die zu den Zuständen und den Eingaben die Folgezustände auflistet. Sie ist eine Alternative zu einer Zeichnung mit Kreisen und Pfeilen.
So gehst du vor: Du beginnst in einem Zustand. Du liest das erste Zeichen. Du suchst in der Tabelle die Zeile mit diesem Zustand und diesem Zeichen. Dort steht der Folgezustand. Dann liest du das nächste Zeichen und machst es genauso weiter.
Die Tabelle unten zeigt einen Getränkeautomaten. Sie zeigt nur diese vier Übergänge.
| Zustand jetzt | Eingabe | Folgezustand |
|---|---|---|
| wartet auf Münzeinwurf | Münze | wartet auf Getränkewahl |
| wartet auf Getränkewahl | Getränk | Getränk wird ausgeschenkt |
| Getränk wird ausgeschenkt | Entnahme | wartet auf Münzeinwurf |
| wartet auf Getränkewahl | Abbruch | wartet auf Münzeinwurf |
Beispiel: Münze, Getränk, Entnahme verfolgen
- 1Wir beginnen im Zustand „wartet auf Münzeinwurf“.
- 2Eingabe „Münze“: Folgezustand ist „wartet auf Getränkewahl“.
- 3Eingabe „Getränk“: Folgezustand ist „Getränk wird ausgeschenkt“.
- 4Eingabe „Entnahme“: Folgezustand ist „wartet auf Münzeinwurf“. Es kann von vorne losgehen.
Merke: Suche in der Tabelle die Zeile mit dem jetzigen Zustand und der Eingabe. Dort steht der Folgezustand.
Teste dich
Ein endlicher Automat kennt nur endlich viele Zustände. Ein Akzeptor ist ein endlicher Automat mit einem Startzustand und mit Endzuständen. Das Wort ist seine Eingabe.
Der Automat liest das Wort von links nach rechts, ein Zeichen nach dem anderen. Bei jedem Zeichen wechselt er den Zustand. Steht er nach dem letzten Zeichen in einem Endzustand, akzeptiert er das Wort. Steht er danach in einem Zustand, der kein Endzustand ist, gilt das Wort als verworfen.
Unterwegs darf der Automat einen Endzustand durchlaufen, ohne dort stoppen zu müssen. Das reicht nicht für das Akzeptieren. Es zählt der Zustand nach dem letzten Zeichen.
Definition
Akzeptieren
Ein Automat akzeptiert ein Wort, wenn das Wort ihn vom Startzustand in einen der Endzustände führt.
Beispiel: Cola-Automat mit Münzen (das zweite Wort ist ausgedacht)
- 1Annahmen: Eine Flasche kostet 50 cent. Es gibt Münzen zu 10, 20 und 50 cent. Es wird genau bezahlt und nichts abgebrochen.
- 2Der Zustand ist der schon eingezahlte Betrag. Startzustand: 0 cent. Endzustand: 50 cent.
- 3Wort 10 20 20: 0 → 10 → 30 → 50 cent. Der Endzustand ist erreicht, das Wort wird akzeptiert.
- 4Wort 20 20: 0 → 20 → 40 cent. 40 cent ist kein Endzustand, das Wort wird verworfen.
Merke: Nur der Zustand nach dem letzten Zeichen entscheidet: Endzustand heißt akzeptiert, sonst verworfen.
Teste dich
Bei einem deterministischen endlichen Automaten (DFA) gibt es für jeden Zustand genau einen Übergang für jede mögliche Eingabe. Der Folgezustand ist also eindeutig. Bei einem nichtdeterministischen endlichen Automaten (NFA) kann es für eine Eingabe keinen oder auch mehr als einen Übergang geben. Der NFA darf dann unter mehreren Möglichkeiten wählen. Ein DFA ist eine Sonderform des NFA.
Ein NFA akzeptiert ein Wort, wenn es für das Wort eine Folge von Zustandswechseln gibt, bei der er nicht vorzeitig stehen bleibt und der letzte Zustand ein Endzustand ist. Gibt es für ein Zeichen keinen Übergang, bleibt er vorzeitig stehen und verwirft die Eingabe.
Ein Akzeptor ist ein Automat mit Endzuständen. Er zeigt durch seinen Zustand, ob er das Wort akzeptiert. Daneben gibt es Automaten mit Ausgabe, die Transduktoren. Im Moore-Automaten hängt die Ausgabe nur vom Zustand ab. Im Mealy-Automaten hängt die Ausgabe vom Zustand und von der Eingabe ab. Die Aufzugtür von eben gibt es als Moore-Automat und als Mealy-Automat mit dem gleichen Verhalten.
Mealy-Automaten brauchen oft weniger Zustände. Ihre Funktion ist aber oft schwieriger zu verstehen. Wenn man das zeitliche Verhalten unberücksichtigt lassen kann, sind Moore- und Mealy-Automaten gleichwertig.
| Name | Merkmal |
|---|---|
| DFA | Für jeden Zustand genau ein Übergang je Eingabe |
| NFA | Für eine Eingabe keiner oder mehr als einer möglich |
| Akzeptor | Hat Endzustände, akzeptiert oder verwirft Wörter |
| Moore-Automat | Ausgabe hängt nur vom Zustand ab |
| Mealy-Automat | Ausgabe hängt von Zustand und Eingabe ab |
Beispiel: Ausgedachter NFA (erfundenes Beispiel)
- 1Zustände 1, 2 und 3. Startzustand 1, Endzustand 3.
- 2Übergänge: Aus 1 mit a nach 1 oder nach 2. Aus 2 mit b nach 3.
- 3Wort ab: 1 → 2 → 3. Es gibt einen Weg zum Endzustand, das Wort wird akzeptiert.
- 4Wort ba: Aus 1 gibt es mit b keinen Übergang. Der NFA bleibt vorzeitig stehen und verwirft das Wort.
Merke: Ein DFA hat immer eine eindeutige Wahl. Ein NFA akzeptiert ein Wort, wenn es mindestens einen Weg zum Endzustand gibt, ohne vorzeitiges Stehenbleiben.
Teste dich
Alles auf einen Blick
Automat
Eingabe
Eine Folge von Zeichen, die dem Automaten von außen vorgelegt wird
Übergang
Der Wechsel in den Folgezustand hängt vom Zeichen und vom jetzigen Zustand ab
Übergangstabelle
Sie listet zu Zustand und Eingabe den Folgezustand auf
Akzeptieren
Ein Wort wird akzeptiert, wenn der Automat nach dem letzten Zeichen in einem Endzustand steht
DFA und NFA
Beim DFA gibt es genau einen Übergang je Eingabe, beim NFA keinen oder mehrere
Moore und Mealy
Die Ausgabe hängt beim Moore-Automaten nur vom Zustand ab, beim Mealy-Automaten von Zustand und Eingabe
Musteraufgabe · Schritt für Schritt
Das Wort aba durch einen Automaten mit Ausgabe schicken (ausgedachte Eingabe)
- 1Zustände q1, q2, q3. Startzustand q1. Eingaben a und b. Ausgaben 0 und 1.
- 2Übergänge: q1 mit a → q3, q1 mit b → q2, q2 mit a → q1, q2 mit b → q2, q3 mit a → q1, q3 mit b → q2.
- 3Ausgaben: q1 mit a → 0, q1 mit b → 1, q2 mit a → 1, q2 mit b → 1, q3 mit a → 0, q3 mit b → 0.
- 4Schritt 1: Zustand q1, Eingabe a → neuer Zustand q3, Ausgabe 0.
- 5Schritt 2: Zustand q3, Eingabe b → neuer Zustand q2, Ausgabe 0.
- 6Schritt 3: Zustand q2, Eingabe a → neuer Zustand q1, Ausgabe 1.
- 7Ergebnis: Der Automat steht in q1, die Ausgaben ergeben 001. Die Ausgabe hängt hier von Zustand und Eingabe ab.
Fehler finden
Prüfe die Schritte beim Verkaufsautomaten (stark vereinfacht) In einer Zeile steckt ein Fehler. Tippe sie an.
Fehler in Zeile 5Falscher Folgezustand: Die Zeile mit r und t wurde nicht beachtet. Richtig: Aus r mit t geht es nach w, der Automat wartet wieder auf Bezahlung.
Lückentext
Wähl in jeder Lücke das passende Wort und prüf dann deine Antworten.
Ein DFA liest ein Wort von , Zeichen für Zeichen. Ein Automat mit Endzuständen heißt . Bei einem DFA gibt es für jeden Zustand und jedes Zeichen Übergang.
Karteikasten
Erst selbst überlegen, dann umdrehen.
Übung mit Feedback