Generierung von Prozesslogs Seminar Prozessmodellierungsplattform Sommersemester 2010 Prof. Dr. Mathias Weske, Matthias Kunze Thomas Milde Betreuer: Matthias Weidlich 19.07.2010
Motivation 2 Process Mining: Automatisches Ableiten von Prozessen aus Logs Testen von Process Mining Tools Logs bekannter Prozesse benötigt Echte Logs schwer zugänglich
Kriterien der Log-Generierung 3 Vollständigkeit Ordering-Completeness Trace-Completeness Rauschen (Noise) Abweichungen vom Prozessmodell Variabler Anteil Beispiele: Anfang/Ende fehlt Vertauschungen Dopplungen Berücksichtung von Pfadwahrscheinlichkeiten
Implementation Konzept (1/2) 4 Serverseitiges Plugin Erweiterung der Petrinetzdarstellung (Zeiten, Wahrscheinlichkeiten) Spezialisierung des RDFImporters Ableitungen von LabeledTransition und SilentTransition Datenstrukturen für Log Algorithmen zur Generierung Unterschiedlich je nach gewünschter Vollständigkeit Nutzung des vorhandenen PTNetInterpreter Erst Generierung eines korrekten Logs, dann fertigen Log verrauschen
Implementation Konzept (2/2) 5 Erweiterung des Petrinetz-Stencilsets Ausführungswahrscheinlichkeiten für Transitionen Zeitverbrauch für nicht-stille Transitionen Clientseitiges Plugin Konfigurationsdialog Vollständigkeit Rauschanteil Anzahl der Traces
6 Demo
Generierungs-Algorithmen 7 Trace-vollständige Logs Unvollständige Logs Anordnungsvollständige Logs
Erzeugung des Rauschens (1/3) 8 Verschiedene Arten in jeweils einzelnen Schritten Fehlender Anfang Fehlendes Ende Beliebige fehlende Schritte Duplikate Vertauschungen Unabhängig voneinander mit gewählter Wahrscheinlichkeit ausgeführt
Erzeugung des Rauschens (2/3) 9 Fehlender Anfang / Fehlendes Ende Anzahl zu löschender Elemente mit exponentiell verteiltem Zufall bestimmt Weniger Elemente wesentlich wahrscheinlicher Bei 10% Rauschen maximal 10% der Schritte gelöscht Kann zu leerem Trace führen Fehlende Zwischenschritte Auswahl der Anzahl ebenso Index der zu löschenden Elemente gleichverteilt bestimmt
Erzeugung des Rauschens (3/3) 10 Duplikate analog zu beliebigen fehlenden Elementen Vertauschungen Immer zwei Schritte vertauscht Mehrmalige Vertauschung eines Schrittes möglich Für jede Vertauschung: Zufällig (gleichverteilt) ein erstes Element auswählen Zweites Element wahrscheinlicher in der Nähe des ersten als weit entfernt Wurzelfunktion Keine Vertauschung mit sich selbst
Erfahrungen und Probleme 11 Einarbeitung in vorhandenen Code aufwendig Client-Server-Kommunikation ExtJS Richtige Stellen für den Code Ausgabeformat unproblematisch
Zusammenfassung 12 Generierung von Logs zum Test von Mining-Tools Logs aus Petrinetzen Verschiedene Arten von Vollständigkeit Mehrere Formen des Rauschens
Literatur 13 [1]W.M.P. van der Aalst, B.F. Van Dongen, J. Herbst, L. Maruster, G. Schimm, A.J.M.M. Weijters. Workflow Mining: A Survey of Issues and Approaches. Data & Knowledge Engineering 47/2003 [2]L. Maruster A.J.M.M. Weijters, W.M.P. van der Aalst, A. van den Bosch. Process Mining: Discovering Direct Successors in Process Logs. LNCS 2534/2002 [3]W.M.P. van der Aalst, A.J.M.M. Weijters, L. Maruster. Workflow Mining: Discovering process models from event logs. IEEE Transactions on Knowledge and Data Engineering 16/2004