Christian A. Kopf Institut für Informatik FU Berlin 18.05.2006 Episode Recognizer Framework - Rahmenwerk zur Episodenerkennung.

Slides:



Advertisements
Ähnliche Präsentationen
Vorgehensmodell - Wasserfallmodell
Advertisements

Christian Schindelhauer
Datenmodellierung Externe Phase Informationsstruktur
Eingebettete Systeme Qualität und Produktivität
Das „Vorgehensmodell“
Lineare Suche Divide-and-Conquer-Suche Kombinationssuche
Kapitel 4 Datenstrukturen
Grammatiken, Definitionen
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
Wissensmanagement mit semantischen Netzen – Analyse und Vergleich verschiedener Softwarelösungen Autor: Holger Wilhelm Referentin: Prof. Dr. Uta Störl.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Was ist Refactoring? Bevor man die Integration angeht, mag es angebracht sein, den.
Java: Objektorientierte Programmierung
Java: Dynamische Datentypen
Indirekte Adressierung
Java: Referenzen und Zeichenketten
DOM (Document Object Model)
Komponentenbasierter Taschenrechner mit CORBA
SciAgents - Eine agentenbasierte Umgebung für verteilte wissenschaftliche Berechnungen Alexander StarkeSeminar Software Agenten
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (05 – Reguläre Ausdrücke) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (12 – Kellerautomaten, PDA) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (11-1 –Selbstanordnende lineare Listen) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27-Selbstanordnende lineare Listen) Prof. Th. Ottmann.
Erweiterte Datenmodelle Referentin: Lena Becker HS: Datenbanken vs. Markup Datum:
Einsatz von XML zur Kontextspeicherung in einem agentenbasierten ubiquitären System Faruk Bagci, Jan Petzold, Wolfgang Trumler und Theo Ungerer Lehrstuhl.
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Kapitel 7 Claudio Moraga, Gisbert Dittrich FBI Unido
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
XDoclet ETIS SS05.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik I Vorlesung Listen-
PRJ 2007/1 Stefan Dissmann Motivation Problem: gleiche Datenstrukturen werden für verschiedene Objekte gebraucht: z.B. Listen von Studierenden, Kunden,
PKJ 2005/1 Stefan Dissmann Ausblick Es fehlen noch: Möglichkeiten zum Strukturieren größerer Programme Umgang mit variabler Zahl von Elementen Umgang mit.
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
Rigi und Web2Rsf vorgestellt von Tobias Weigand. Inhalt Ziel von Web2Rsf und Rigi Vorstellung des Parsers Web2Rsf Vorstellung des Werkzeugs Rigi Analyse.
High Performance = Innovative Computer Systems + Efficient Algorithms Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen.
Christian Schindelhauer
Access 2000 Datenbanken.
Datenbanken Einführung Merkmale dateiorientierte Datenverwaltung
-LABORPRAKTIKUM- SOMMERSEMESTER 2005
DVG Klassen und Objekte
Hänchen & Partner GmbH 1 Web-Anwendungen mit dem Jakarta Struts Framework 3.Juli 2003 Martin Burkhardt.
Marcus Haller & René Schulze
Systeme 1 Kapitel 4 Prozesse WS 2009/10.
Grenzen der Regularität
IT2 – WS 2005/20061Oct 10, 2005 Externes Verhalten – Quelltext (source code) Durch Aufrufe der Konstruktoren und Methoden kann das externe Verhalten (=die.
Flexible Datenstrukturen
Entstehung & Einflüsse Ideen, Wünsche, eigene Überlegungen bisheriges Dateisystem Einschrän- kungen: - technisch - zeitlich - fachlich Literatur, ältere.
Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung
Telecooperation/RBG Technische Universität Darmstadt Copyrighted material; for TUD student use only Grundlagen der Informatik I Thema 16: Ausnahmebehandlung.
Paradigmenwechsel in der Unternehmensmodellierung Prof. Dr. Wolfgang Voigt Dipl.-Ing. Päd. Alexander Huwaldt UML Extrakt UML Seminar, Chemnitz
Tutorium PG Verbesserung Blatt 5 Beim instanziieren eines Fahrrades muss es möglich sein, alle benötigten Attribute dem Konstruktor zu übergeben.
Zustandsübergangsdiagramme (1)
Objectives Verstehen was unterDelegate verstanden wird
Bericht der Gruppe Avatare Universität zu Köln BA Medienkulturwissenschaft/Medieninformatik Historisch-Kulturwissenschaftliche Informationsverarbeitung.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Christian Schindelhauer Wintersemester 2006/07 3. Vorlesung
Christian Schindelhauer Wintersemester 2006/07 2. Vorlesung
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.
Inhalt Einordnung und Funktion der lexikalische Analyse Grundlagen
2 Datenabstraktion Geheimnisprinzip:
HG13_ Herzgen, Jung & Lorkowski1 Java Programmierung BlueJ Workshop.
Diskrete Mathe Diskrete Mathematik I Listen Vorlesung 4.
Mönchengladbach Tchibo Filial-Manager Erste Ideen.
 Am Ende der letzten Stunde hatten wir über die Grenzen unserer Automaten-Modell gesprochen. Dr. Lars Ettelt2  Tipp: Parkhaus.  Einfahrt erst wenn.
Vortrag Einführung in AspectJ. Gliederung 1 Einleitung 2 Querschnittsfunktionalitäten in AspectJ 2.1 Sprachelemente 3 Beispiel 4 Join Point Modell 5 Weaving.
13.Dezember 2006–1Elektronisches Publizieren: Schemasprachen — Relax NG Schemasprachen für XML — Relax NG — Anne Brüggemann-Klein TU München.
Dr. Wolfram Amme, Automatische Speicherverwaltung, Informatik II, FSU Jena, SS Automatische Speicherverwaltung.
Gliederung 0. Motivation und Einordnung 1. Endliche Automaten
Coden mit Python Was sind deine Erfahrungen mit Programmieren?
 Präsentation transkript:

Christian A. Kopf Institut für Informatik FU Berlin Episode Recognizer Framework - Rahmenwerk zur Episodenerkennung

Episode Recognizer Framework - Christian Andreas Kopf Übersicht Motivation Wozu werden unterschiedliche Episodenerkenner benötigt Warum ist ein Rahmenwerk dafür von Vorteil Ideen und Ansätze Reguläre Ausdrücke und ihre Grenzen (Keller-)Automaten und Typ2-Sprachen Aufbau und Struktur Kleines Klassenmodell Abbildung des Automatenmodells Anwendungsablauf Offene Probleme Die Map- und MatchMap-Strukturen Komplexere Episoden?!

Episode Recognizer Framework - Christian Andreas Kopf Motivation - Episodenerkenner Episodenerkennung ist ein zentraler Aspekt der Untersuchung des Mikroprozesses der Softwareentwicklung Grundidee: Aus einem Strom von Basisereignissen typische Aktivitätsmuster (Episoden) ausfindig machen. Wird eine solche Episode erkannt kann sie ebenfalls in den Ereignisstrom einfließen. Mehrere Episodenerkenner werden sequentiell abgearbeitet. Episodenerkenner können sehr unterschiedliche Komplexitäten annehmen: simpel: Zeitintervall (z.B.: Wie lange war Datei x geöffnet?) komplex: Verfolgen von Codekopien (letzte Woche) Trial-and-Error-Episoden (heute)

Episode Recognizer Framework - Christian Andreas Kopf Motivation – Rahmenwerk Situation bisher: Episodenerkenner als ECG-Modul Einbindung in ECG (also an den Datenstrom des ECG) recht komfortabel: Implementierung Komplett eigenständig Gesamte Java-Komplexität gegeben Viele, teilweise komplexe If-Kaskaden Unübersichtlich Schwer zu Implementieren Fehleranfällig Schwer zu Optimieren Zielsetzung: Verbesserung der Abstraktion Schnelle, fehlerfreie und effektive Implementierung durch einfache Handhabung und Erweiterung von Objekten und Klassen bei gleicher möglicher Komplexität

Episode Recognizer Framework - Christian Andreas Kopf Ideen und Ansätze – reg. Ausdrücke Reguläre Ausdrücke bieten eine einfache und relativ mächtige Möglichkeit um Sequenzen miteinander zu vergleichen, bzw. um eine (Teil-)Sequenz auf ein bestimmtes Schema (Episode) hin zu untersuchen. Abstrakter: Alle möglichen Auftretenden Basisereignisse stellen zusammen ein Alphabet E dar. Regulärer Ausdruck für eine bestimmte Episode definiert eine Sprache L über dem Alphabet E. Regelmäßige Überprüfung unseres Ereignisstroms X Falls X Element aus L dann liegt die gesuchte Episode vor.

Episode Recognizer Framework - Christian Andreas Kopf Ideen und Ansätze – reg. Ausdrücke Nachteile: Problem der sequentiellen Abarbeitung mehrerer Episodenerkenner: Ereignisse die ein Erkenner in den Strom einfügt müssen dem Alphabet hinzugefügt werden. Problem während der Analyse: Im Endeffekt muss nach jedem neuen Ereigniss der gesamte bisherige Ereignisstrom erneut überprüft werden. Reg. Ausdrücke eher zum nachträglichen Untersuchen bereits beendeter Datenströme geeignet. Problem der Mächtigkeit: Reg. Ausdrücke können lediglich Typ 3-Sprachen erkennen, d.h.: Typ2-Sprachen, wie zum Beispiel: L = A^n B^n, können nicht erkannt werden, da eine Variable n innerhalb eines regulären Ausdruckes nicht gespeichert werden kann.

Episode Recognizer Framework - Christian Andreas Kopf Ideen und Ansätze - Automaten Automaten sind ein einfaches Werkzeug um Sprachen zu beschreiben und abstrakt darzustellen. Automaten bestehen aus Zuständen und Übergängen (mit Ereignissen, Bedingungen und Aktionen). Mit endlichen Automaten lassen sich alle regulären Sprachen (Typ-3) darstellen. Dies ist nicht ausreichend, da genauso mächtig wie reguläre Ausdrücke.

Episode Recognizer Framework - Christian Andreas Kopf Ideen und Ansätze - Automaten Lösung: Keller-Automaten Kellerautomaten besitzen zusätzlich einen Kellerspeicher (Stack), der nun sowohl für die Bedingungen als auch für die Aktionen mit genutzt werden kann. Mit Kellerautomaten lassen sich alle kontextfreien Sprachen (Typ-2) darstellen. Ferner auch A^n B^n.

Episode Recognizer Framework - Christian Andreas Kopf Aufbau und Struktur - Klassenmodell

Episode Recognizer Framework - Christian Andreas Kopf Aufbau und Struktur - Abbildung Übergänge und Zustände -> Klassen Übergang verweist auf Start- und Zielzustand. Die Ereigniss-Bedingung des Übergangs ist Attribut (Typ MatchMap) -> Vergleich mit Ereignissen (Typ Map) Sonstige Bedingungen: MatchMap-Struktur Controller (Java-Mächtigkeit) Aktionen -> Controller-intern Keller: Variablen innerhalb des Controllers

Episode Recognizer Framework - Christian Andreas Kopf Aufbau und Struktur - Anwendung Der Controller ist mit dem Datenstrom des ECG verbunden und wird vom Nutzer erweitert. Klassen Übergang und Zustand stehen zur Verfügung Der Controller reicht jedes Ereignis als Map an die zum aktuellen Zustand assoziierten Übergänge Bei Übereinstimmung mit internem MatchMap-Schema wird im Controller die zugehörige Aktion ausgeführt (aktuellen Zustand setzt, Episode als erkannt melden, neues Ereignis,...)

Episode Recognizer Framework - Christian Andreas Kopf Offene Probleme – Map & MatchMap welche Datenstrukturen existieren, die diese Aufgaben übernehmen können: Anforderungen an Map: benötigt lediglich die Möglichkeiten eines assoziatives Feldes Anforderungen an MatchMap: möglichst vielfältige Möglichkeiten zum Vergleichen mit Map möglichst viele Bedingungen umsetzen können; Z.B.: Zugriff auf Variablen Verwendbarkeit von regulären (bzw. boolschen) Ausdrücken Beispiele: event = new map{(typ, xyz),(datei, abc.txt)} ereigniss = new MatchMap{(typ, event.typ),(datei, regExp)} Habt Sie IDEEN ????

Episode Recognizer Framework - Christian Andreas Kopf Offene Probleme - Komplexität Gibt es Episoden die sich durch das Modell nicht verwirklichen lassen? Anforderung: alle möglichen Episodenerkenner Haben Sie... Ideen zu solchen kritischen Episoden? Sonstige Mängel am Konzept entdeckt?

Episode Recognizer Framework - Christian Andreas Kopf Vielen Dank!