7. Automaten Ein Automat ist ein Sechstupel A= (I, O, Q, , q0, F).

Slides:



Advertisements
Ähnliche Präsentationen
Seminar über Algorithmen
Advertisements

Leistung.
Statistische Aspekte der PSG
Theoretische Grundlagen der Informatik Prof. Dr. Michael Löwe
Modellbasierte Software-Entwicklung eingebetteter Systeme
Wiederholung Was ist Informatik?
Suche in Texten (Stringsuche )
Institut für Informatik Abt. Intelligente Systeme
8. Formale Sprachen und Grammatiken
3. Berechenbarkeit Wann ist eine Funktion (über den natürlichen Zahlen) berechenbar? Intuitiv: Wenn es einen Algorithmus gibt, der sie berechnet! Was heißt,
Kapitel 7 State-Machines/Zustandsautomaten
Lösung Turing-Maschine
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Notationen A = ist eine endliche, nichtleere menge,
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Universelle Turingmaschinen Eine universelle Turingmaschine.
Christian Schindelhauer
Parser generieren Yet Another Compiler – Compiler YACC.
Parser für CH3-Sprachen
FH-Hof Formale Sprachen - Maschinenmodelle Richard Göbel.
Das Halteproblem. Gibt es einen Algorithmus, mit dem man für jedes beliebig vorgegebene Programm R und für jede beliebig vorgegebene Eingabe E entscheiden.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (02 – Endliche Automaten) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (12 – Kellerautomaten, PDA) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (04 – Automaten mit ε-Transitionen) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (03 – Nichtdeterminierte endliche Automaten) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (17 –Turingmaschinen) Prof. Dr. Th. Ottmann.
Technische Informatik I
Christian Schindelhauer
Christian Schindelhauer
Christian Schindelhauer
Christian Schindelhauer
Christian Schindelhauer
Situationen Verteilte Anwendungen Wintersemester 06/07 © Wolfgang Schönfeld.
Berechenbarkeit. Fragestellungen Können Computer alles ausrechnen? Kann man alles ausrechnen? Was kann man berechnen? Was nicht? Was heißt Berechenbarkeit?
32. Hessische Landestagung des MNU
Eine Bewerbung schreiben
Was ist ein Computer? Was ist ein Programm? Können Computer Alles?
Kapitel 1 – Erste Schritte
Endliche Automaten Informatik JgSt. 13, Abitur 2009
Turingmaschine als Akzeptor
Basisinformationstechnologie HK-Medien
Wie sicher ist mein Geld ... ?
1936: On Computable Numbers, with an application to the
Eine Präsentation von Lena Sauter & Corinna Nawatzky
Grundlagen der Informatik - Prof. Slany 1 Grundlagen der Informatik Prof. Wolfgang SLANY.
Akzeptor & Sprache.
Formale Sprachen Reguläre Sprachen Rudolf FREUND, Marian KOGLER.
Städtisches Gymnasium Beverungen Friedel Berlage
Petrinetze 1. Einführung Informatik : wesentlich Modellierung von
Vorlesung Automatisierungsprojekte Seite 4/1
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Arne Vater Wintersemester 2006/07 28.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Informatik III Christian Schindelhauer Wintersemester 2006/07
Informatik III Christian Schindelhauer Wintersemester 2006/07
Arne Vater Wintersemester 2006/ Vorlesung
Christian Schindelhauer Wintersemester 2006/07 2. Vorlesung
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Arne Vater Wintersemester 2006/07 26.
Arne Vater Wintersemester 2006/ Vorlesung
Turing-Maschine als Akzeptor.
Informatik: Theoretische Informatik; Weilburg XII/11
Wintersemester 2005 / Vorlesung
Inhalt Einordnung und Funktion der lexikalische Analyse Grundlagen
Aufgabe 4 Betrachten Sie das unten dargestellte Klassendiagramm, das für eine Bibliothek zur Verwaltung ihrer Buchbestände modelliert wurde. Modellieren.
Wann ist eine Funktion (über den natürlichen Zahlen) berechenbar?
 Am Ende der letzten Stunde hatten wir über die Grenzen unserer Automaten-Modell gesprochen. Dr. Lars Ettelt2  Tipp: Parkhaus.  Einfahrt erst wenn.
Automatentheorie Jendrik und Jeyhannes. Allgemeines Modelle mit Zuständen, die Eingaben annehmen und Ausgaben erstellen Endliche Automaten Auch Zustandsmaschine.
1 DigInf 05/06 Beispiele für berechenbare Funktionen Diagonalisierung Alles gemäß handschriftlicher Folien.
Turingmaschinen Referat am Jakob Haller Bernadette Längle Sebastian Steuer Folien basieren auf Referat von David Lanius,
 Präsentation transkript:

7. Automaten Ein Automat ist ein Sechstupel A= (I, O, Q, , q0, F). Dabei sind: I bzw. O das Ein- bzw. Ausgabealphabet, Q eine endliche Menge von Zuständen, in denen sich der Automat befinden kann,  eine Zustandsübergangsfunktion, q0  Q der Anfangszustand und F  Q eine Menge von Endzuständen.

Turing-Maschinen: ein abstrakes Maschinenmodell Eine Turing-Maschine M = <Z, , ,, z0, •, E> besteht aus Z: endliche Zustandsmenge : Eingabealphabet :Arbeitsalphabet, enthält  Überführungsfunktion Z  ---> Z   {L, R, N} z0: Startzustand  •: Blanksymbol  E: Menge der Endzustände in Z  • • A B C 1 1 A B • • Schreib-Lesekopf endliche Kontrolleinheit

Berechnungen einer TM in beide Richtungen bewegliches Band, Lesen und Schreiben Eingabe steht auf Band, pro Feld ein Symbol SL-Kopf auf dem am weitesten links stehenden Eingabesymbol S Zustand ist Anfangszustand In Abhängigkeit von Zustand und gelesenem Symbol gibt  an • Nachfolgezustand, • auf Band geschriebenes neues Symbol, • Bewegungsrichtung (Links, Rechts, Nicht bewegen) Maschine führt so lange Aktionen aus, bis Zustand aus E erreicht wird  Ausgabe steht nun auf Band Computer sind universelle Turingmaschinen, die jeden Algorithmus durch ein zugehöriges Programm realisieren können. Übergangsfunktion: Maschinenprogramm

Endliche Automaten Ein endlicher Automat ist ein Sechstupel A= (I, O, Q, , q0, F) für das gilt: I bzw. O sind das Ein- bzw. Ausgabealphabet, Q ist eine endliche nichtleere Menge von Zuständen,  ist eine Zustandsübergangsfunktion :Q x I  Q x O q0  Q ist der Anfangszustand und F  Q ist eine Menge von Endzuständen.

Arbeitsweise  e5 e2 e3 e1 e4 e2  o1 o2 o3 Steuereinheit Der Schreibkopf schreibt Zeichen für Zeichen ein Wort O auf das Ausgabe-band, das bei jedem Zeichen um eine Position nach links weiterbewegt wird; das Eingabeband wird um eine Position nach links verschoben; die Steuereinheit bewirkt eine Zustandsänderung (abhängig vom Eingabezeichen und dem alten Zustand).

Unterschiede zu einer TM zwei Bänder (aber: auch TM mit zwei Bändern denkbar) nur in eine Richtung beweglich endliche Menge von Zuständen keine Möglichkeit der Zwischenspeicherung von Teilergebnissen Bereits gelesene Eingaben werden zusammengefasst und zur Festlegung des Verhaltens auf nachfolgende Eingabezeichen verwendet. Bechreibung mit Übergangsnetzwerken oder Tabellen. Hinter alltäglichen Geräten verbirgt sich oft ein endlicher Automat!

Übergangsnetzwerke 1. Zustände werden als Kreise dargestellt; 2. Vom Zustand q wird ein Pfeil zum Zustand q‘ mit der Markierung x/y gezeichnet, wenn (q‘, y)  (q, x) ist; 3. Der Startzustand wird angegeben und die Endzustände durch doppelte Kreise markiert. Konfiguration: Tripel (w, q, v) mit w  I*, q  Q und v  O* Folgerelation: (xw, q, v)  (w, q‘, vy) mit x  I und y  O wenn (q‘, y)  (q, x) Übersetzung: T(A)={(w, v)| (w, q0, ) * (, q‘, v) } mit q  F

Zustandsautomaten / Beispiel: Digitaluhr Beim Stellen der Digitaluhr ergeben sich folgende Zustände: - Zustand Normalzeit: In diesem Zustand befindet sich die Uhr nach Einlegen der Batterie (Startsignal) - Zustand Stunden stellen - Zustand Minuten stellen - Zustand Sekunden stellen Folgende Ereignisse können eintreten: - Startsignal (Tritt auf, wenn die Batterie eingelegt wird) - Knopf 1 gedrückt - Knopf 2 gedrückt 13:56:42

Zustandsautomaten / Digitaluhr 2 Es wird davon ausgegangen, dass nicht beide Knöpfe gleichzeitig gedrückt werden können. Folgende Ausgaben können auftreten: - Stunden blinken Um anzuzeigen, daß die Uhr jetzt in dem Zustand ist, in dem der Bediener die Stunden verstellen kann. - Minuten blinken - Sekunden blinken - Stunden erhöhen Um 1 erhöhte Anzeige der Stunde - Minuten erhöhen - Sekunden stellen Anzeige von 00 als Sekundenanzeige - Initialisierung Anzeige von 00:00:00

Im nächsten Schritt muss festgelegt werden, wie die Übergänge zwischen den Zuständen in Abhängigkeit von Eingaben oder Ereignissen aussehen sollen und welche Ausgaben erzeugt oder welche Aktionen ausgelöst werden sollen. - Wenn das Startsignal auftritt, dann soll das System in den Zustand Normalzeit übergehen und die Aktion Initialisierung durchführen. - Wenn der Knopf 1 gedrückt wird und das System im Zustand Normalzeit ist dann soll als Aktion Stunden blinken ausgeführt und der Zustand Stunden stellen eingenommen werden.

Zustandstabelle von „Uhr stellen“ Aktueller Zustand Ereignis Aktion Folgezustand Start Initialisierung Normalzeit Normalzeit Stunden stellen Minuten stellen Sekunden stellen

Zustandsmatrix von „Uhr stellen“ Zustand  Ereignis Start Knopf 1 gedrückt Knopf 2 gedrückt Initialisierung Normalzeit Stunden stellen Minuten stellen Sekunden stellen Aktion / Folgezustand

Alternative Zustandsmatrix von „Uhr stellen“ Zu Zustand Normalzeit Stunden Minuten Sekunden von Zustand stellen stellen stellen (Start) Start Initialisierung Normalzeit Stunden stellen Minuten Sekunden Ereignis / Aktion

Verallgemeinerungen von endlichen Automaten (1) 2 Bänder, in beide Richtungen bewegliches Hilfsband (Kellerautomat) (2) in beide Richtungen bewegliches Band, Lesen und Schreiben, für jedes Eingabewort x der Länge n steht k*n Band zur Verfügung (linear beschränkter Automat) (3) in beide Richtungen bewegliches Band, Lesen und Schreiben (Turing Maschine )