Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Institut für Informatik Abt. Intelligente Systeme

Ähnliche Präsentationen


Präsentation zum Thema: "Institut für Informatik Abt. Intelligente Systeme"—  Präsentation transkript:

1 Institut für Informatik Abt. Intelligente Systeme
Vorlesung Algorithmen und Datenstrukturen (Magister) Kapitel 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 Automaten Deterministische endliche 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 Definition eines 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,  die Zustandsübergangsfunktion, : Q x I  Q x O q0  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 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 Tabelle des Getränkeautomaten
Spalten: Aktueller Zustand Zeilen: Aktuelle Eingabe. Einträge: Folgezustand/Ausgabe

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 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 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, q0, )  * (, q‘, v) } mit q  F

9 Ein erkennender Automat
Der Automat erkennt die Wörter, die die Buchstabenfolge aeiou enthalten. O - a O - e O - i O - o O - u a e i o u 1 2 4 5 3 Start 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 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: a a b a b c d c Ausgabe:

11 Formale Realisierung eines endlichen Automaten
 e5 e2 e3 e1 e4 e2 Steuereinheit  o1 o2 o3 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 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 "Institut für Informatik Abt. Intelligente Systeme"

Ähnliche Präsentationen


Google-Anzeigen