Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

R. Der Algorithmen und Datenstrukturen 1 Vorlesung Algorithmen und Datenstrukturen (Magister) Kapitel 1 Automaten Prof. Dr. Ralf Der Institut für Informatik.

Ähnliche Präsentationen


Präsentation zum Thema: "R. Der Algorithmen und Datenstrukturen 1 Vorlesung Algorithmen und Datenstrukturen (Magister) Kapitel 1 Automaten Prof. Dr. Ralf Der Institut für Informatik."—  Präsentation transkript:

1 R. Der Algorithmen und Datenstrukturen 1 Vorlesung Algorithmen und Datenstrukturen (Magister) Kapitel 1 Automaten Prof. Dr. Ralf Der Institut für Informatik Abt. Intelligente Systeme Vorlesung basierend u.a. auf: A.V. Aho, J. D. Ullmann, Informatik, Thomson Publ. (1996); Rembold/Levi, Einführung in die Informatik, Hanser (1999); Ottmann/Wiedmayer, Algorithmen und Datenstrukturen, Spektrum Akademischer Verlag, Heidelberg (1996) Foliensammlung Prof. Rahm, Prof. Brewka und Prof. Heyer.

2 R. Der Algorithmen und Datenstrukturen 2 Automaten Im Alltag: Automat ist ein Gerät, das aus einer bestimmten Eingabe eine definierte Ausgabe erzeugt. Beispiele: Fahrkarten-Automat, Kaffee-Automat. In der Informatik: Neben Grammatiken und Syntaxdiagrammen definieren Automaten formale Sprachen und deren Verarbeitung. Deterministische endliche Automaten Beispiel: Einfacher Getränkeautomat. Funktion: Einwurf eines Geldstückes vom Betrag x. Auswahl eines Getränkes k bzw. l durch Drücken der Tasten K bzw. L. Rückgabe des Geldes bei Drücken von R. Signalton falls Auswahltaste ohne vorherigen Geldeinwurf gedrückt.

3 R. Der Algorithmen und Datenstrukturen 3 Definition eines Automaten Ein Automat ist ein Sechstupel A= (I, O, Q,, q 0, F). Dabei sind: I bzw. O das Ein- bzw. Ausgabealphabet, Q eine endliche Menge von Zuständen, in denen sich der Automat befinden kann, die Zustandsübergangsfunktion, : Q x I Q x O q 0 Q ist der Anfangszustand und F Q die (evtl. leere) Menge der Endzustände. Ein Automat heißt endlich, wenn die Mengen I,O,Q endlich sind und es nur einen Anfangszustand gibt.

4 R. Der Algorithmen und Datenstrukturen 4 Definitionen Getränkeautomat Eingabealphabet I={X,K,L,R} mit X= Geldbetrag einwerfen K=Taste K drücken L=Taste L Drücken R=Rückgabeknopf drücken Ausgabealphabet O={k,l,x,s} mit k= Ausgabe Getränk K l= Ausgabe Getränk L x=Ausgabe Geldbetrag x s=Signalton ertönt - = Keine Ausgabe Der Automat befindet sich stets in einem bestimmten inneren Zustand definiert durch seine Zustandsmenge Q={a,b} mit a=Geldbetrag ausreichend b=Automat bereit Die Übergangsfunktion legt die Arbeitsweise des Automaten fest. Angabe in Tabellenform oder als Übergangsnetzwerk bzw. Graph.

5 R. Der Algorithmen und Datenstrukturen 5 Tabelle des Getränkeautomaten Spalten: Aktueller Zustand. Zeilen: Aktuelle Eingabe. Einträge: Folgezustand/Ausgabe

6 R. Der Algorithmen und Datenstrukturen 6 Übergangsnetzwerke Darstellung von Automaten durch Graphen (Übergangsnetzwerke): 1. Zustände werden als Kreise dargestellt; 2. Übergänge zwischen den Zuständen durch Pfeile (Kanten, Bögen) dargestellt. Vom Zustand q wird ein Pfeil zum Zustand v mit der Markierung x/y gezeichnet, wenn v unter der Eingabe x Folgezustand von q ist und beim Übergang die Ausgabe y erfolgt, d.h. wenn (v, y) (q, x) ist; 3. Der Startzustand wird durch einen Pfeil (aus dem Nichts kommend) und die Endzustände durch doppelte Kreise markiert.

7 R. Der Algorithmen und Datenstrukturen 7 Graph des Getränkeautomaten Beschriftung der Kanten : Eingabe/Ausgabe. Beispiel: L/s heißt Taste L gedrückt und Signal ertönt oder R/- heißt Taste R gedrückt und keine Ausgabe.

8 R. Der Algorithmen und Datenstrukturen 8 Erkennende und übersetzende Automaten Automaten können zum Erkennen und Umsetzen von Mustern dienen. Beispiel: Erkennen von Worten, die eine bestimmte Buchstabenkombination enthalten. Begriffe: Erkennen: Gewisse Endzustände dienen als akzeptierende Zustände. Muster gilt als erkannt, falls der zugehörige Endzustand erreicht ist. 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, q 0, ) * (, q, v) } mit q F

9 R. Der Algorithmen und Datenstrukturen 9 Ein erkennender Automat Der Automat erkennt die Wörter, die die Buchstabenfolge aeiou enthalten Start 5 O - a O - e O - i O - o O - u eaiou O ist die Menge aller Buchstaben. Das Wort ist erkannt, wenn der akzeptierende Zustand 5 erreicht wurde. Abbruch der Bearbeitung, falls aus einem bel. Zustand kein Übergang möglich. Beispiel Einlesen eines Satzzeichens.

10 R. Der Algorithmen und Datenstrukturen 10 Erkennende und übersetzende Automaten Der Automat eliminiert singuläre Nullen und Einsen. Ausgabe ist 0 in Zustd. a,b und 1 in Zuständen c,d. Ausgabetext um eine Position verschoben, die erste Null erscheint als redundanter Präfix. Simulation für die Eingabesequenz : Eingabe: Zustand: aababcdc Ausgabe:

11 R. Der Algorithmen und Datenstrukturen 11 Formale Realisierung eines endlichen Automaten e 5 e 2 e 3 e 1 e 4 e 2 Steuereinheit o 1 o 2 o 3 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).

12 R. Der Algorithmen und Datenstrukturen 12 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 )


Herunterladen ppt "R. Der Algorithmen und Datenstrukturen 1 Vorlesung Algorithmen und Datenstrukturen (Magister) Kapitel 1 Automaten Prof. Dr. Ralf Der Institut für Informatik."

Ähnliche Präsentationen


Google-Anzeigen