Zum Inhalt springen

Informatik · Klasse 7–10 · aktualisiert

Endlicher Automat: Aufbau, Ablauf und Entwurf

Du lernst, wie ein endlicher Automat Zustände wechselt, Wörter akzeptiert oder verwirft und wie du einen Cola-Automaten an neue Regeln anpasst.

0 von 12 Aufgaben gelöst

Endlicher Automat: Aufbau, Ablauf und Entwurf

Kurz gesagt

Ein endlicher Automat ist ein Modell mit Zuständen, Eingaben und Übergängen. Er startet im Startzustand und liest ein Wort Zeichen für Zeichen. Er akzeptiert es, wenn er nach dem letzten Zeichen in einem Endzustand steht. Alle akzeptierten Wörter bilden seine Sprache.

Ein Getränkeautomat wartet erst auf eine Münze. Nach der Münze wartet er auf deine Wahl. Er „weiß“ also, in welcher Lage er gerade ist. Genau das beschreibt ein endlicher Automat. Hier lernst du, wie er arbeitet und wie du ihn ändern kannst.

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 endlicher Automat ist ein Modell eines Verhaltens. Er besteht aus Zuständen, Zustandsübergängen und Aktionen (Aktionen brauchst du hier nicht weiter). „Endlich“ heißt: Die Menge der Zustände, die er annehmen kann, ist endlich. Wechselt er bei einer Eingabe immer in einen eindeutig bestimmten Folgezustand, heißt er deterministisch.

Die Bausteine: Ein Zustand sagt, in welcher Lage der Automat gerade ist. Er kann Information über die Vergangenheit enthalten, weil der Automat ihn auf seinem bisherigen Weg erreicht hat. Eine Eingabe ist ein erlaubtes Zeichen. Ein Übergang bringt den Automaten vom aktuellen Zustand in einen neuen. Dazu kommt es, wenn die angegebene Eingabe vorliegt. Der Startzustand ist der Zustand, in dem der Automat steht, bevor er etwas gelesen hat. Die Endzustände sind die akzeptierenden Zustände. Der nächste Zustand hängt vom aktuellen Zustand und von der Eingabe ab.

Ein Beispiel ist der Cola-Automat. Eine Flasche kostet 50 cent. Er nimmt Münzen zu 10, 20 und 50 cent an. Zur Vereinfachung gilt: Es muss genau bezahlt werden, es wird nur der Geldeinwurf für einen Bezahlvorgang betrachtet, und es gibt keinen Abbruch. Die Zustände sind die schon bezahlten Beträge: 0, 10, 20, 30, 40 und 50 cent. Die Eingaben sind die Münzen. Ein Übergang ist zum Beispiel: Zustand 30 cent, Einwurf 10 cent, neuer Zustand 40 cent. Der Startzustand ist 0 cent. Hier gibt es nur einen Endzustand, 50 cent. Es können aber auch mehrere Endzustände sein.

Ein zweites Beispiel ist ein einfacher Getränkeautomat mit drei Zuständen: q0 (wartet auf Münzeinwurf), q1 (wartet auf Getränkewahl) und q2 (Getränk wird ausgeschenkt). Seine Eingaben sind Münze, Getränk, Abbruch und Entnahme. Die Übergänge: Mit „Münze“ geht es von q0 nach q1. Mit „Getränk“ geht es von q1 nach q2. Mit „Entnahme“ geht es von q2 nach q0. Mit „Abbruch“ geht es von q1 nach q0. Hat man die Münze eingeworfen, aber noch kein Getränk gewählt, kann man also noch abbrechen.

Im Zustandsübergangsdiagramm stellen Kreise die Zustände dar, mit dem Namen im Kreis. Pfeile zwischen den Kreisen stellen die Übergänge dar. Auf jedem Pfeil steht, welche Bedingung den Übergang ermöglicht.

Definition

Endlicher Automat

Ein endlicher Automat ist ein Modell eines Verhaltens aus Zuständen, Zustandsübergängen und Aktionen. Die Menge seiner möglichen Zustände ist endlich.

Beispiel: Verkaufsautomat, stark vereinfacht

  1. 1Zustände: w = warten auf Bezahlung, a = Bezahlung ausgeführt (warten auf Warenauswahl), r = Ware ausgegeben (warten auf Warenentnahme)
  2. 2Eingaben: p = bezahlen, s = Ware auswählen, t = Ware entnehmen, c = Kauf abbrechen
  3. 3w + p → a · a + s → r
  4. 4a + c → w · r + t → w

Merke: Ein Automat hat Zustände, Eingaben und Übergänge. Er beginnt im Startzustand. Akzeptierend sind nur die Endzustände.

Teste dich

LeichtWas bedeutet beim Cola-Automaten (Preis 50 cent) der Zustand „30 cent“?
MittelWelcher Zustand ist beim Cola-Automaten (Preis 50 cent) der Startzustand?

Alles auf einen Blick

Endlicher Automat

  • Bausteine

    Zustände, Eingaben und Übergänge, dazu ein Startzustand und Endzustände

  • Ablauf

    Der Automat liest ein Wort von links nach rechts und wechselt bei jedem Zeichen den Zustand

  • Akzeptieren

    Es zählt der Zustand nach dem letzten Zeichen; im Endzustand wird akzeptiert, sonst verworfen

  • Sprache

    die Menge aller Wörter, die der Automat akzeptiert

  • Anpassen

    Beim Cola-Automaten mit genauer Zahlung und ohne Abbruch bestimmt der Preis den Endzustand

Musteraufgabe · Schritt für Schritt

Ausgedachtes Beispiel: Preis 60 cent statt 50 cent

  1. 1Annahmen: Münzen 10, 20 und 50 cent, genau bezahlen, kein Abbruch
  2. 2Zustände: 0, 10, 20, 30, 40, 50 und 60 cent (sieben Zustände)
  3. 3Startzustand: 0 cent. Endzustand: 60 cent
  4. 4Pfeile für 10: 0 → 10, 10 → 20, 20 → 30, 30 → 40, 40 → 50, 50 → 60
  5. 5Pfeile für 20: 0 → 20, 10 → 30, 20 → 40, 30 → 50, 40 → 60
  6. 6Pfeile für 50: 0 → 50, 10 → 60. Von 50 mit 20 gäbe es 70 cent: Diesen Pfeil gibt es nicht
  7. 7Probe: Wort 20 20 20 führt 0 → 20 → 40 → 60 und wird akzeptiert

Fehler finden

Prüfe die Aussagen zum Getränkeautomaten mit q0, q1 und q2 In einer Zeile steckt ein Fehler. Tippe sie an.

Lückentext

Wähl in jeder Lücke das passende Wort und prüf dann deine Antworten.

Ein Automat liest ein Wort von . Er akzeptiert das Wort, wenn er nach dem Zeichen in einem Endzustand steht. Beim Cola-Automaten mit Preis 50 cent ist der Startzustand .

Karteikasten

Erst selbst überlegen, dann umdrehen.

Übung mit Feedback

Abschluss-Check: Endlicher Automat

LeichtWas stellen in einem Zustandsübergangsdiagramm die Pfeile dar?
MittelAusgedachtes Beispiel: Ein Lichtschalter hat die Zustände „aus“ und „an“. Er startet bei „aus“, Endzustand ist „an“. Jede Eingabe „Taste“ wechselt in den anderen Zustand. Er liest „Taste Taste Taste“. Was gilt?
SchwerAusgedachtes Beispiel: Ein Automat verkauft Wasser für 30 cent und nimmt 10- und 20-cent-Münzen an. Es gilt genaue Zahlung ohne Abbruch. Welche Pfeile gibt es für die 20-cent-Münze?

Weiterlesen in Informatik