1 / 12

Vorlesung Algorithmen und Datenstrukturen (Magister) Kapitel 1 Automaten

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);

waneta
Download Presentation

Vorlesung Algorithmen und Datenstrukturen (Magister) Kapitel 1 Automaten

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  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. 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 • 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“ • 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“ • 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. 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. Übergangsnetzwerke

  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 0 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 101101: Eingabe: 0 1 0 1 1 0 1 Zustand: a a b a b c d c Ausgabe: 0 0 0 0 0 1 1 1

  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 )

More Related