Diplomarbeit. Entwurf eines TI-Coaching Systems. von. Christof Kuhn

Ähnliche Dokumente
Technische Universität Darmstadt. Fachbereich Informatik. Fachgebiet Knowledge Engineering. Diplomarbeit

Theoretische Informatik I

Algorithmen mit konstantem Platzbedarf: Die Klasse REG

5.2 Endliche Automaten

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Formale Sprachen und endliche Automaten

Lexikalische Programmanalyse der Scanner

DisMod-Repetitorium Tag 4

Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit. Zugangsnummer: 3288

2. Gegeben sei folgender nichtdeterministischer endlicher Automat mit ɛ-übergängen:

Grundlagen der Theoretischen Informatik

2 2 Reguläre Sprachen. 2.2 Endliche Automaten. Übersicht

Algorithmen und Datenstrukturen I - Exkurs Formale Sprachen -

Übungsaufgaben zu Formalen Sprachen und Automaten

Endliche Automaten. Im Hauptseminar Neuronale Netze LMU München, WS 2016/17

Algorithmen und Datenstrukturen I - Exkurs Formale Sprachen -

Sei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden kann.

2. Gegeben sei folgender nichtdeterministischer endlicher Automat mit ɛ-übergängen:

Formale Sprachen. Inhaltsverzeichnis. M. Jakob. 10. Dezember Allgemeine Einführung. Aufbau formaler Sprachen

Theoretische Informatik I

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Formale Sprachen und endliche Automaten - Schülerband

Theorie der Informatik

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,

Automaten und Formale Sprachen ε-automaten und Minimierung

Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit. Zugangsnummer: 9201

Informatik III. Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung

Abiturprüfung Informatik, Grundkurs

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2013

Einführung in die Theoretische Informatik

Formale Methoden 1. Gerhard Jäger 9. Januar Uni Bielefeld, WS 2007/2008 1/23

Informatik 3 Theoretische Informatik WS 2015/16

FORMALE SYSTEME. Wiederholung. Beispiel: NFA. Wiederholung: NFA. 4. Vorlesung: Nichtdeterministische Endliche Automaten. TU Dresden, 20.

Informatik III. Christian Schindelhauer Wintersemester 2006/07 3. Vorlesung

Diskrete Mathematik. Anna-Lena Rädler Christina Kohl Georg Moser Christian Sternagel Vincent van Oostrom

Informatik IV. Pingo Sommersemester Dozent: Prof. Dr. J. Rothe. J. Rothe (HHU Düsseldorf) Informatik IV 1 / 13

Lösung zur Klausur. Grundlagen der Theoretischen Informatik im WiSe 2003/2004

Diskrete Ereignissysteme

Einführung in die Theoretische Informatik

Automaten und Formale Sprachen SoSe 2013 in Trier

Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen

Klausur zur Vorlesung Informatik III Wintersemester 2007/2008

Endliche Automaten, reguläre Ausdrücke, rechtslineare Grammatiken

Kontextfreie Sprachen. Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester Kontextfreie Sprachen

Mehrdeutige Grammatiken

FORMALE SYSTEME. 3. Vorlesung: Endliche Automaten. TU Dresden, 17. Oktober Markus Krötzsch

Maike Buchin 18. Februar 2016 Stef Sijben. Probeklausur. Theoretische Informatik. Bearbeitungszeit: 3 Stunden

FORMALE SYSTEME. Wiederholung. Beispiel: NFA. Wiederholung: NFA. 4. Vorlesung: Nichtdeterministische Endliche Automaten. TU Dresden, 19.

Einführung in die Theoretische Informatik

2.2 Nichtdeterministische endliche Automaten

Rekursiv aufzählbare Sprachen

Formale Methoden 1. Gerhard Jäger 23. Januar Uni Bielefeld, WS 2007/2008 1/18

Kapitel 3: Grundlegende Ergebnisse aus der Komplexitätstheorie Gliederung

Theoretische Grundlagen der Informatik

Informatik III. Christian Schindelhauer Wintersemester 2006/07 7. Vorlesung

Formale Sprachen. Inhalte. Lehrplan. Hinweis

Ministerium für Schule und Weiterbildung NRW IF GK HT 3 Seite 1 von 8. Unterlagen für die Lehrkraft. Abiturprüfung Informatik, Grundkurs

Berechenbarkeitstheorie 1. Vorlesung

Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2011/2012

Theoretische Informatik I

Vorlesungsmitschrift zur Vorlesung Theoretische Informatik I vom 23. Juni Christian Franz

Beispiel Produktautomat

Seien M 1,M 2 NFAs f. die Sprachen L 1 und L 2. Konstruktion eines NFAs für L 1 L 2 : Erzeuge Kopien von M 1 und M 2. p 1

Grammatik Prüfung möglich, ob eine Zeichenfolge zur Sprache gehört oder nicht

3. Vorlesung: Endliche Automaten Markus Kr otzsch Lehrstuhl Wissensbasierte Systeme

Seminarvortrag zum Thema ω-automaten. Simon Kostede & Markku Lammerz

Algorithmen und Datenstrukturen (EI)

Einführung in die Computerlinguistik

Operationen auf endlichen Automaten und Transduktoren

2. Klausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2016/2017

Einführung in die Theoretische Informatik

Algorithmen II Vorlesung am

Sprachanalyse. Fachseminar WS 08/09 Dozent: Prof. Dr. Helmut Weber Referentin: Nadia Douiri

7. Syntax: Grammatiken, EBNF

Theorie der Informatik

2. Klausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2017/2018

Theoretische Informatik: Berechenbarkeit und Formale Sprachen

Formale Grundlagen der Informatik 1 Kapitel 5 Abschlusseigenschaften

Formale Grundlagen der Wirtschaftsinformatik

Operationen auf endlichen Akzeptoren und Transduktoren

Theoretische Informatik Mitschrift

4.2.4 Reguläre Grammatiken

Theorie der Informatik

Beweisidee: 1 Verwende den Keller zur Simulation der Grammatik. Leite ein Wort. 2 Problem: der Keller darf nicht beliebig verwendet werden, man kann

Kapitel: Die Chomsky Hierarchie. Die Chomsky Hierarchie 1 / 14

Deterministische und nichtdeterministische Turing-Maschinen, Typ1- und Typ0-Sprachen

Grundlagen der Informatik II

Formale Sprachen. Reguläre Sprachen. Rudolf FREUND, Marian KOGLER

Äquivalenzrelation R A zu DFA A. Rechtsinvarianz. Relation R L zur Sprache L

Nachklausur zur Vorlesung Informatik 3 mit einigen Anmerkungen zu Lösungen

FORMALE SYSTEME. Der Satz von Myhill und Nerode. Automaten verkleinern mit Quotientenbildung. Verschiedene Äquivalenzrelationen

Umformung NTM DTM. Charakterisierung rek. aufz. Spr. Chomsky-3-Grammatiken (T5.3) Chomsky-0-Grammatik Rek. Aufz.

FORMALE SYSTEME. 8. Vorlesung: Minimale Automaten. TU Dresden, 6. November Markus Krötzsch Lehrstuhl Wissensbasierte Systeme

Formale Sprachen und Automaten

Reguläre Sprachen. R. Stiebe: Theoretische Informatik für ING-IF und Lehrer,

8. Turingmaschinen und kontextsensitive Sprachen

Theoretische Informatik II

Fragenkatalog 2. Abgabegespräch Formale Modellierung 3 Reguläre Sprachen

Formale Systeme. Endliche Automaten. Prof. Dr. Bernhard Beckert WS 2009/2010 KIT INSTITUT FÜR THEORETISCHE INFORMATIK

Transkript:

Diplomarbeit Entwurf eines TI-Coaching Systems von Christof Kuhn

Warum TI-Coaching System? Theoretische Informatik fällt vielen schwer Sie ist aber sehr wichtig für die Informatik Sie ist nicht wirklich kompliziert Sie zu vermitteln ist nicht immer leicht Individuelle Betreuung kostet viel Zeit Ein automatisches System hat viel Zeit

Was soll das System können? Einem Studenten Aufgaben präsentieren Lösungen des Studenten verstehen Die Aufgaben selbst lösen Fehler in der Lösung des Studenten erkennen Die Lösung bewerten

Aufbau des Systems Web-basiertes Frontend Kern des Systems

Das Frontend Web-basiert für bequemen Zugriff von überall Web-basiert für ständige Aktualität Abstraktion vom eigentlichen Kern Unabhängigkeit in der Präsentation

Systemkern Verwaltung verschiedener Übungsaufgaben Verarbeitung eigener Lösungen Analyse studentischer Lösungen Speicherung verarbeiteter Lösungen

Zweiteilung und Kommunikation Implementierung lässt sich leichter aufteilen Verteilung der Last im Betrieb Isolierung bei Programmfehlern Kern sendet Ausgaben an das Frontend Kern steuert in Teilen das Frontend Frontend gibt relevante Eingaben an Kern weiter

Ansätze zum Entwurf des Kerns Auswahl geeigneter Aufgabentypen Analyse gewählter Aufgabenstellungen Automatische Verarbeitung von Aufgaben Vergleich von Lösungen und Fehlererkennung Bewertung von Lösungen Grundlagen der Kommunikation mit Frontend Verbindung der einzelnen Komponenten

Geeignete Aufgabenstellungen Typische Bereiche der Theoretischen Informatik Automatentheorie und Formale Sprachen Berechenbarkeitstheorie Komplexitätstheorie AFS hat in der Regel den größten Umfang Aufgaben der AFS sind sehr mechanisch Der Teilbereich der Regulären Sprachen bietet schon einfache aber vielfältige Aufgaben

Aufgabenanalyse Verschiedene Aufgabentypen sind: Synthese (Erzeugen Sie...) Transformation (Wandeln Sie...) Qualifikation (Zeigen Sie, dass...) Aufgaben lassen sich vielfältig kombinieren Transformationen sind leicht automatisierbar

Automatisierung Es gibt viele Ansätze: Aufgaben als Planungsprobleme Lösungen als PROLOG-Programme Aufgabenstellung als Beweis Beliebige andere Implementierungen

Automatisierung Beweiser Eine sehr einfache Aufgabenstellung, ist die Umwandlung einer regulären Grammatik in einen nichtdeterministischen endlichen Automaten. Diese soll nun als Beispiel für eine logische Beschreibung einer Umwandlung dienen.

Automatisierung - Beweiser vars G G,V : V ist die Menge der Variablen der Grammatik G term G G, : Σ ist die Menge der Terminale der Grammatik G pro 1 G G, x, y, z : x yz ist eine Produktion für G pro 0 G G, x, y : x y ist eine Produktion für G start G G,S : S ist das Startsymbol von G

Automatisierung - Beweiser stat N M, Z : Z ist die Menge der Zustände des NFA M alph N M, : Σ ist das Eingabealphabet von M trans N M, x, y, z : x, y z ist ein Übergang für M start N M, S : S ist die Menge der Startzustände von M end N M, E : E ist die Menge der Endzustände von M

Automatisierung - Beweiser vars G G,V stat N M G,V {E G } term G G, alph N M G, pro 1 G G, x, y, z trans N M G, x, y, z pro 0 G G, x, y trans N M G, x, y, E G start G G, S start N M G, {S } end N M G, {E G }

Fehleranalyse und Erkennung Es gibt Allgemeine Fehler, die immer auftreten Spezifische Fehler für bestimmte Aufgaben Fehler sind einmalig oder systematisch Sie lassen sich nicht immer eindeutig erkennen Ein Ansatz ist Vergleich mit korrekter Lösung Lösungen können sich stark unterscheiden Nicht jeder Fehler lässt sich erkennen

Fehleranalyse - Transformationen Aufgabentyp Reg. Grammatik in NFA DFA (NFA) in Grammatik NFA in DFA Reg. Ausdruck in NFA NFA in Reg. Ausdruck Minimierung DFA Gemeinsame Kategorien Falsche Umwandlung Fehlerkategorien Falsche Umwandlung, Endzustände (nur NFA), Fehlende Fälle (NFA) Falsche Umwandlung, Endzustände, Fehlerzustand Rekursion, Sequenzautomat, Schleifenautomat Rekursion, Falsche Umwandlung, Falscher Einstieg Fehlende Wiederholung, Falsche Folgepaare, Identische Folgepaare Nachlässigkeit, Unvollständigkeit, Verwechslung

Aufgabenabwicklung/Bewertung Betrachtung einer Lösung als Ganzes Unterscheiden korrekter und falscher Lösungen Bewertung von aufgetretenen Fehlern Hinweise für bessere Lösungen Spielt entscheidende Rolle für Lerneffekt

Kommunikation Kommunikation zwischen Student und System Kommunikation zwischen Frontend und Kern System sollte wissen was ein Student macht System sollte wissen wozu er es macht Es sollte wissen wie er es macht Kern muss nicht jede Eingabe kennen Frontend dient als Filter

Kommunikation - LBS Kerneingabe des Studenten ist eine Lösung Lösungsbeschreibungssprache ist sinnvoll Sprache beschreibt das Was, Wozu und Wie Aufgabenstellungen sind primitive Lösungen LBS funktioniert somit in beide Richtungen

Verarbeitungsstruktur Aufgabenauswahl Interne Verarbeitung Lösungsverarbeitung Aufgabenabwicklung Zeitlicher Ablauf

Struktur Aufgabenauswahl Auswahl nach verschiedenen Kriterien Aufgabentyp ist ein einfaches Kriterium Aufgabenlänge ist ein weiteres Schwierigkeitsgrad ist stark subjektiv Bestimmte Aufgaben zufällig generierbar Berücksichtigung von Studentenwünschen Unterschiedliche Aufgaben für gleichen Student

Struktur Interne Verarbeitung Wichtiger Aspekt für "Intelligenz" des Systems Möglichst flexibel und selbstständig Effektiver Abgleich mit studentischer Lösung

Struktur - Lösungsverarbeitung Analyse der Eingaben des Studenten Erzeugen interner Repräsentation Allgemeine Fehlerüberprüfung Ständiger Abgleich mit interner Lösung Unterschiedlicher Grad der Interaktion Rückgriff auf interne Lösung bei Anfragen

Struktur - Aufgabenabwicklung Vergleich des Ergebnisses mit interner Lösung Feststellung der Korrektheit, falls möglich Bewertung nach geeigneten Kriterien Zusammenfassung aufgetretener Fehler Bei Bedarf Vorstellung eigener Lösung Hinweise für bessere Lösungen

Weitere Aspekte Aktive oder passive Fehlerbehandlung Konfiguration/Studentenprofile Speicherung von Informationen über Studenten Lernmotivation/Spielerisches