turing-maschine als akzeptor. gliederung 1. alan turing 2. nachteil keller-automat 3. turing...

Post on 06-Apr-2015

156 Views

Category:

Documents

9 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Turing-Maschine

als Akzeptor

Gliederung• 1. Alan Turing• 2. Nachteil Keller-Automat• 3. Turing Maschine• 4. Aufbau Turing-Maschine• 5. Arbeitsweise Turing-Maschine• 6. Wann akzeptiert Turing-Maschine Eingaben?• 7. Definition• 8. Beispiel• 9. Aufgaben• 10. Vergleich zu anderen Automaten• 11. Quellen

Alan Turing• * 23. Juni 1912 in London• † 7. Juni 1954 in Wilmslow, Cheshire• britischer Logiker, Mathematiker,

Kryptoanalytiker und Informatiker• einer der einflussreichsten Theoretiker der frühen

Computerentwicklung und Informatik• erfand die Turing-Maschine

-> Nachweis der künstliches Intelligenz

Nachteil Kellerautomat

• Kellerautomat entscheidenden Nachteil-> erkennt nicht Sprache L = {anbncn | n > 0}

• nach Auskellern-> keine Information über Anzahl der Zeichen

Turing-Maschine

• Alan Turing (1912–1954) -> entwickelte abstrakte Maschine

• nicht Nachteil Kellerautomaten • kann sich beliebige Eingaben merken

Aufbau Turing-Maschine

• ein unendlich langes Eingabeband mit Zellen für jedes Zeichen,

• eine endliche Menge von Zuständen• Lese-Schreib-Kopf auf dem Band

Arbeitsweise Turing-Maschine

• Lesen des Eingabezeichens• Schreiboperation auf das Band

-> Bewegung Lese-Schreibkopfes (links/rechts/keine)-> Zustandsübergang in Abhängigkeit vom aktuellen Zustand und dem Eingabezeichen

• ggf. Wiederholung der Schritte 1 und 2 • Turing-Maschine können sowohl deterministisch

wie auch nichtdeterministisch arbeiten

Wann akzeptiert Turing-Maschine

Eingabe?

• Turing-Maschine akzeptiert Eingabe, wenn sie im Endzustand stoppt.

• Aber auch möglich, dass die Maschine nicht stoppt.-> in diesem Fall kann nicht gesagt werden, ob das Wort zur Sprache gehört oder nicht.

• 1. Leistungsgrenze von Computern

Definition• Eine TM w = (X, Z, Γ, δ, z0, $, E) wird durch

folgende Angaben definiert:• X – Eingabealphabet• Z – endliche Zustandsmenge• Γ – Bandalphabet• δ – partielle Überführungsfunktion• z0 – Anfangszustand• $ – Bandvorbelegungszeichen• ZE – Menge der Endzustände

Bsp.: Wortüberprüfer

• Implementieren sie eine TM in AutoEdit, welche überprüft, ob das Eingabewort mit 1 beginnt oder nicht!

• Es sollen nach Möglichkeit maximal 2 Zustände hierfür notwendig sein!

• X = {0,1,$}

Lösung Wortüberprüfer

M = (X, Z, Γ, δ, q0, $, ZE) mitX = Γ = {0, 1, $}Z = {q0, q1}ZE = {q1}δ:

Aufgaben

Überprüfungsautomat

• Implementieren sie einen Automaten in AutoEdit, welcher überprüft, ob das Eingabewort mit 2 beginnt und ob dann sich 2 und 3 abwechseln!

• Es sollen nach Möglichkeit maximal 3 Zustände dafür verwendet werden!

• X = {2,3,$}

Lösung Überprüfungsautomat

M = (X, Z, Γ, δ, q0, $, ZE) mitX = Γ = {2,3, $}Z = {q0, q1,q2}ZE = {q2}δ:

Überprüfungsautomat• Implementieren sie einen Automaten in AutoEdit,

welcher überprüft, ob das Eingabewort mindestens einmal a und einmal b enthält!

• Es sollen nach Möglichkeit maximal 5 Zustände dafür verwendet werden!

• X = {a,b,$}• Beispielwort: abaaa, baab, ab,…..

Lösung ÜberprüfungsautomatM = (X, Z, Γ, δ, q0, $, ZE) mitX = Γ = {2,3, $}Z = {q0, q1,q2,q3,q4}ZE = {q4}δ:

Überprüfungsautomat• Implementieren sie einen Automaten in AutoEdit,

welcher überprüft, ob in dem Eingabewort der Anfangsbuchstabe mindestens 2 mal vor kommt!

• Es sollen nach Möglichkeit maximal 6 Zustände dafür verwendet werden!

• X = {a,b,c,$}• Beispielwort: abbbccbaabb, abca, baab, cc,…

Lösung ÜberprüfungsautomatM = (X, Z, Γ, δ, q0, $, ZE) mitX = Γ = {2,3, $}Z = {q0, q1,q2,q3,q4,q5}ZE = {q5}δ:

Überprüfungsautomat

• Implementieren sie einen Automaten in AutoEdit, welcher überprüft, ob das Eingabewort mit ba beginnt!

• Es sollen nach Möglichkeit maximal 3 Zustände dafür verwendet werden!

• X = {a,b,$}

Lösung ÜberprüfungsautomatM = (X, Z, Γ, δ, q0, $, ZE) mitX = Γ = {a,b, $}Z = {q0, q1,q2,q3}ZE = {q3}δ:

anbn Turing-Maschine

• Implementieren sie einen Automaten in AutoEdit, welcher überprüft, ob das Eingabewort dem folgenden Schema entspricht: anbn

• Es sollen nach Möglichkeit maximal 6 Zustände dafür verwendet werden!

• X = {a,b,$}

Lösung Turing-Maschine anbn

M = (X, Z, Γ, δ, q0, $, ZE) mitX = Γ = {a,b, $}Z = {q0, q1,q2,q3,q4,q5}ZE = {q5}δ:

anbncn Turing-Maschine

• Implementieren sie einen Automaten in AutoEdit, welcher überprüft, ob das Eingabewort dem folgenden Schema entspricht: anbncn

• Es sollen nach Möglichkeit maximal 8 Zustände dafür verwendet werden!

• X = {a,b,%,$}

Lösung Turing-Maschine anbncn

M = (X, Z, Γ, δ, q0, $, ZE) mitX = Γ = {a,b,c,%,$}Z = {q0, q1,q2,q3,q4,q5,q6,q7}ZE = {q7}δ:

Palindrome

• Implementieren sie einen Automaten in AutoEdit, welcher überprüft, ob das Eingabewort ein Palindrome ist oder nicht!

• Es sollen nach Möglichkeit maximal 9 Zustände dafür verwendet werden!

• X = {a,b,$}

Lösung PalindromeM = (X, Z, Γ, δ, q0, $, ZE) mitX = Γ = {a,b,$}Z = {q0, q1,q2,q3,q4,q5,q6,q7,q8}ZE = {q4,q8}

Vergleich der Automaten

Automaten Mealy Akzeptor Kellerautomat

TM

Unendliches Eingabeband

Ja Ja Ja Ja

Verarbeitungseinheit

Ja Ja Ja Ja

Unendliches Ausgabeband

Ja Nein Nein Ist auch Eingabeband

Zustände Ja Ja Ja Ja

Eingabealphabet

Ja Ja Ja Ja

Ausgabealphabet

Ja Nein Nein Nein

Anfangszusta-nd/ Endzustand

Ja/Nein Ja/Ja Ja/Ja Ja/Ja

Vergleich• Akzeptor kann sich nichts merken, außer Zustand• Kellerautomat hat Kellerspeicher

-> Fortschritt -> aber mangelbehaftet-> löscht beim lesen

• Kellerautomat beherrscht anbn

• Turing-Maschine ist in der Lage alle diese Mängel zu beseitigen-> ist in der Lage auf dem Eingabeband Veränderungen vor zunehmen-> bei Lesevorgängen wird der Gelesenes nicht gelöscht

Vergleich• Akzeptor:

- akzeptieren, ob eine Bedingung erfüllt worden ist• Kellerautomat:

- kann auch anbn

- aber nicht anbncn

- Kellerautomat ist durch Kellerspeicher begrenzt• Turing-Maschine:

- ist in der Lage dies zu erfüllen- könnte auch Berechnungen durchführen

• Alle akzeptieren Wörter über das Eingabealphabet X

Quellen• http://

www.worldofcomputing.net/wp-content/uploads/2013/01/turingMachine.gif

• http://www.tinohempel.de/info/info/ti/tm.htm• http://de.wikipedia.org/wiki/Alan_Turing#Arbeit_a

n_fr.C3.BChen_Computern_.E2.80.93_Der_Turing-Test

• http://upload.wikimedia.org/wikipedia/en/c/c8/Alan_Turing_photo.jpg

• http://images.zeit.de/wissen/2012-07/s34-turing-maschine/s34-turing-maschine-540x304.jpg

• Lehrbuch Technische und theoretische InformatikBayrischer Schulbuch-Verlag München

top related