- Maschinenmodell
-
Ein Automat oder eine abstrakte Maschine ist in der Informatik das Modell eines digitalen, zeitdiskreten Rechners. Ob es möglich oder sinnvoll ist, eine solche Maschine tatsächlich zu bauen, ist dabei zunächst unerheblich. Die Vereinfachung der Fähigkeiten erlaubt es, das Verhalten eines Automaten leichter zu verstehen und zu vergleichen – darauf kommt es an.
Der Automatenbegriff spielt eine zentrale Rolle in der Theoretischen Informatik. In der Berechenbarkeitstheorie und in der Komplexitätstheorie etwa stellen die Automaten den zugrunde liegenden Berechnungsbegriff. Automaten spielen auch in der Praktischen Informatik eine entscheidende Rolle, zum Beispiel im Compilerbau. In der Digitaltechnik werden Automaten zur Steuerung in digitalen und hybriden Systemen eingesetzt. Solche Steuerungsautomaten haben Anwendungen unter anderem in der Rechnerarchitektur, in Rechnernetzen und in Reaktiven Systemen.
Inhaltsverzeichnis
Verhalten eines Automaten
Das grundsätzliche Verhalten eines Automaten ist immer gleich: Dem Automaten wird von außen eine Eingabe als Folge von Zeichen vorgelegt. Der Automat hat einen Zustand. Jedes Mal, wenn ein Eingabezeichen eintrifft, kann sich abhängig vom Eingabezeichen und dem gegenwärtigen Zustand ein neuer Zustand, der Folgezustand, einstellen (Zustandsübergang oder Transition). Man kann die Menge der möglichen Zustandsübergänge, die das Verhalten des Automaten definiert, als das Programm des Automaten verstehen.
Deterministische und nichtdeterministische Automaten
Wenn der Folgezustand durch den gegenwärtigen Zustand und das Eingabezeichen immer eindeutig gegeben ist, dann spricht man von einem deterministischen Automaten. Allgemein aber kann man auch einen Spielraum (Freiheitsgrade) für die Zustandsübergänge zulassen. Der Automat darf dann auf dasselbe Paar von Zustand und Eingabezeichen unter mehreren möglichen Kandidaten einen Folgezustand willkürlich wählen. Dann spricht man von einem nichtdeterministischen Automaten. Der Nichtdeterminismus ist dann willkommen, wenn man das Verhalten der Umgebung modellieren möchte, das man nicht völlig genau kennt (don't know), oder wenn man Möglichkeiten für verschiedene Implementierungen offenlassen möchte (don't care).
Meist lässt man zusätzlich zu nichtdeterministischen Zustandsübergängen noch spontane Zustandsübergänge zu, das sind solche, die ohne Eingabezeichen stattfinden (ε-Übergänge).
Automaten mit und ohne Ausgabe
Automaten, die nur ihre Zustandsübergänge abwickeln, nennt man auch Transitionssysteme.
Daneben gibt es auch Automaten, die eine gewisse Teilmenge ihrer Zustände als Endzustände auszeichnen. Wenn ein Eingabewort den Automaten von einem ausgezeichneten Zustand, dem Startzustand, in einen der Endzustände führt, dann sagt man, der Automat akzeptiert das Eingabewort. Einen solchen Automaten nennt man deswegen einen Akzeptor. Ein Akzeptor eignet sich dazu, eine Formale Sprache zu definieren, nämlich die Menge aller endlichen Wörter, die der Automat akzeptiert.
Schließlich gibt es noch Automaten mit Ausgabe oder Transduktoren. Sie ordnen entweder jedem Zustand (Moore-Automaten) oder jedem Paar aus Zustand und Eingabezeichen (Mealy-Automaten) ein Ausgabezeichen zu. Auf diese Weise bildet ein Automat eine Verarbeitungseinheit.
Klassen von Automaten
Schlagen Sie auch in anderen Wörterbüchern nach:
Maschinenmodell — Ma|schi|nen|mo|dell, das: Vorstellung vom maschinenartigen psychophysischen Funktionieren des Menschen … Universal-Lexikon
Maschinenmodell — Ma|schi|nen|mo|dell das; s, e: Vorstellung vom maschinenartigen psychophysischen Funktionieren des Menschen … Das große Fremdwörterbuch
Komplexitätstheorie — Die Komplexitätstheorie als Teilgebiet der Theoretischen Informatik befasst sich mit der Komplexität von algorithmisch behandelbaren Problemen auf verschiedenen mathematisch definierten formalen Rechnermodellen. Die Komplexität von Algorithmen… … Deutsch Wikipedia
Asymptotische Laufzeit — Unter der Zeitkomplexität eines Problems versteht man die Anzahl der Rechenschritte, die ein optimaler Algorithmus zur Lösung dieses Problems benötigt, in Abhängigkeit von der Länge der Eingabe. Man spricht hier auch von der asymptotischen… … Deutsch Wikipedia
Aufwandsmaß — Landau Symbole werden in der Mathematik und in der Informatik verwendet, um das asymptotische Verhalten von Funktionen und Folgen zu beschreiben. In der Informatik werden sie insbesondere in der Komplexitätstheorie verwendet, um verschiedene… … Deutsch Wikipedia
Groß-O-Notation — Landau Symbole werden in der Mathematik und in der Informatik verwendet, um das asymptotische Verhalten von Funktionen und Folgen zu beschreiben. In der Informatik werden sie insbesondere in der Komplexitätstheorie verwendet, um verschiedene… … Deutsch Wikipedia
Kostenmaß — Landau Symbole werden in der Mathematik und in der Informatik verwendet, um das asymptotische Verhalten von Funktionen und Folgen zu beschreiben. In der Informatik werden sie insbesondere in der Komplexitätstheorie verwendet, um verschiedene… … Deutsch Wikipedia
Landau-Notation — Landau Symbole werden in der Mathematik und in der Informatik verwendet, um das asymptotische Verhalten von Funktionen und Folgen zu beschreiben. In der Informatik werden sie insbesondere in der Komplexitätstheorie verwendet, um verschiedene… … Deutsch Wikipedia
Landau-Symbol — Landau Symbole werden in der Mathematik und in der Informatik verwendet, um das asymptotische Verhalten von Funktionen und Folgen zu beschreiben. In der Informatik werden sie insbesondere in der Komplexitätstheorie verwendet, um verschiedene… … Deutsch Wikipedia
Landaunotation — Landau Symbole werden in der Mathematik und in der Informatik verwendet, um das asymptotische Verhalten von Funktionen und Folgen zu beschreiben. In der Informatik werden sie insbesondere in der Komplexitätstheorie verwendet, um verschiedene… … Deutsch Wikipedia