
viadee//BPMN.AI
Prozessdaten per Machine Learning für Optimierungen nutzen
KI in der Praxis – Machine Learning auf Prozessdaten
Die Themen BPMN und KI sind derzeit in aller Munde. Da liegt die Frage nahe, welche Potenziale sich durch die Verbindung der beiden Themen ergeben können. Und genau hier setzt BPMN.ai an. Es geht dabei zum einen darum, mit dem Einsatz von Machine-Learning-Algorithmen nützliche Informationen aus solchen Daten zu gewinnen, die durch die Ausführung von Geschäftsprozessen entstehen. Zum anderen wird betrachtet, wie diese gewonnenen Informationen zur Modellierung, Optimierung und Automatisierung der Geschäftsprozesse genutzt werden können.
bpmn.ai umfasst die gesamte Pipeline von der Datenextraktion, über die Transformation und Aufarbeitung der Daten, bis hin zum Anlernen eines geeigneten Machine-Learning-Algorithmus und der Bereitstellung der daraus gewonnen Erkenntnisse. Diese können unter anderem zur Optimierung und Automatisierung von Prozessen verwendet werden, sind aber generell für verschiedenste Anwendungen interessant (z. B. Engpassanalysen, Prozessdauervorhersagen).
Beispielanwendung
In dem vereinfachten Beispielprozess ist die Entscheidung, ob eine externe Prüfung notwendig ist, eine manuelle Aktivität, die aufgrund von Daten getroffen wird, die im vorigen Verlauf des Prozesses gesammelt wurden. Ein:e Mitarbeiter:in entscheidet anhand der vorliegenden Daten (Prozessvariablen), ob die externe Prüfung notwendig ist. Diese Entscheidung ist durch die XOR-Verzweigung modelliert. Als letzten Schritt wird, je nach Prüfungsentscheidung, der Leistungsantrag automatisiert freigegeben oder abgelehnt. Diese Konstellation ist in Unternehmensprozessen sehr häufig zu finden.
Dies ist eine Chance für den Einsatz von KI
Die gesammelten Daten von vergangenen Prozessläufen enthalten sowohl die Informationen, welche der manuellen Entscheidung zur Notwendigkeit einer externen Prüfung zugrunde lagen, als auch die Entscheidung selber, da diese jeweils als Prozessvariablen vorliegen und gespeichert werden. Durch die Aufbereitung dieser Daten und das Anlernen eines ML-Modells kann ein Entscheidungsmodell für eine KI-gestützte Prozessoptimierung erstellt werden. Eine manuelle Entscheidungsaktivität kann so durch eine automatisierte Aktivität unterstützt werden.
Integration von Künstlicher Intelligenz
KI-Services stehen selten allein da. BPMN-Prozesse bieten sich an, um ihren Einsatz zu orchestrieren. Bspw. kann die Integration der Künstlichen Intelligenz in den Prozess in verschiedenen Stufen gestaltet werden:
Beispiele aus der Praxis
Für Duni wird eine Prognose der Laufzeit des überarbeiteten Profile-Print-Prozesses daraus abgeleitet, indem beispielsweise individualisierte Servietten für Restaurants gestaltet und hergestellt werden – mit dieser Arbeit waren wir auf der CamundaCon 2018 dabei.
Die Idee hat sich als gut übertragbar erwiesen. Zusammen mit der Westfälischen Provinzial Versicherung AG verfolgen wir mit gleicher Technik die Idee, um die Notwendigkeit von Rechnungsprüfungen bei der Abwicklung von KFZ-Glasbruchfällen vorherzusagen. Das Ergebnis konnten wir auf den Versicherungsforen in Leipzig 2018 vorstellen.
Eine andere Perspektive auf bpmn.ai ist das Process Mining. Hierzu gab es einen schönen Erfolg, der in einer gemeinsamen Publikation mit der TIMOCOM Frachtenbörse sowie dem ERCIS auf der BPM 2020 im Industry-Forum geführt hat. Dort haben wir Nutzungsmuster aus einem Event-Stream einer Web-Anwendung herausgelesen und diese klassifiziert.
Die Pipeline
Unsere vorbereitete Pipeline konsolidiert Events einer Process Engine in auswertbare Form. Das kann gern eine Camunda-Engine sein, oder auch eine andere Steuerungsplattform. Prozess- oder Aktivitätsniveau sind wählbar. Der „Wissensstand“ der Prozessvariablen zum jeweiligen Aktivitätsstand wird eingesammelt und steht für ein Machine Learning zur Verfügung. Auch mit großen Datenmengen. Die R-Umgebung ist in der Analyse-Phase maximal flexibel. Das Machine Learning erfolgt dann per H2O auf Basis von Java-Technologien. Das entstehende Entscheidungsmodell bettet sich daher abschließend auch sehr gut in Java-basierte Anwendungslandschaften ein.
Was ist mit meinem Data Warehouse?
Die oben dargestellten Technologien beschreiben den „Grüne Wiese“-Ansatz. Sollten Sie bereits ein Data Warehouse im Einsatz haben, sollte es natürlich ebenfalls als Datenquelle im Machine Learning verwendet werden. Ein separate Infrastruktur für KI-Zwecke ist dabei dennoch sinnvoll:
- Viele Business-Prozesse verwalten JSON-Dokumente, bspw. Kund:innen oder Verträge. Um deren Inhalte effizient nutzen zu können, ist ein relationales DWH ungeeignet.
- Viele Business-Prozesse nutzen hierzu auch direkt Java-Objekte von Fachsystemen – diese sind nur aus einer Java-basierten Pipeline sinnvoll zugreifbar, um deren Inhalte für Analysen zugänglich zu machen.
- Wenn eine Analyse nicht nur pro Prozessinstanz, sondern auch pro Aktivitätsinstanz möglich werden soll, sind schnell Datenmengen erreicht, für die sich Big-Data-Technologien lohnen können, weil wir weniger lang auf Ergebnisse warten müssen. Besonders gut greifen hier Kafka, Spark und H2O ineinander: Die Daten können von Cluster-Knoten zu Cluster-Knoten parallel fließen. Bei einer traditionellen Datenbank wäre diese immer ein „Nadelör“ für diesen Anwendungsfall.
- Eine relationale Behandlung von Prozess-Events erscheint für die Analyse unpassend: Oft interessieren uns nicht das einzelne Event oder seine Eigenschaften, sondern der gesamte aufgelaufene Wissensstand (Prozessvariablen) zum Zeitpunkt des Events. Dieses Zusammentragen über Zeilen hinweg ist mit Standard-SQL schlicht nicht ausdrückbar. Workarounds wie eine statische Vorverarbeitung im ETL oder Oracle’s OVER-Statement kommen durch die sich immer wieder ändernden Datenstrukturen ebenfalls nicht zum gewünschten Ziel: Alles unverändert speichern – alle Türen für Analysen offen halten.
- Und was ist mit meinem Archiv im ElasticSearch? Hier Prozessdaten zu sammeln ist so lange es nur um Suche und Aggregation geht eine gute Idee. Die Datenvorverarbeitung im Machine Learning macht aber auch viele weitere oft kreative (Schreib-) Operationen notwendig, insbesondere das Zusammenführen mit weiteren (DWH-) Datenbanken – das ist im Elastic-Konzept nicht vorgesehen.
- Die Prozessdatenpipeline ist, anders als das DWH, ein operatives System: Entscheidungen fließen zurück und beeinflussen den laufenden Geschäftsprozess ggf. unmittelbar als Stream oder Service-Call. Es lohnt sich daher aus Architektursicht die beiden (sich ergänzenden) Welten DWH und bpmn.ai separat zu betreiben, denn die Lehren der letzten Jahre rund um Domain-Driven-Design und Microservices gelten auch für die Anwendung von KI in Geschäftsprozessen.
Der Fluch der Datensammlung und -vorverarbeitung
Data preparation accounts for about 80% of the work of data scientists. Forbes
Der größte Aufwand bei der Analyse von Daten wird immer für Datensammlung und Vorverarbeitung betrieben. Im Umfeld der Process Engines lässt sich ein Großteil dieses Aufwands generalisieren, da die Verarbeitung nicht vom konkreten fachlichen Anwendungsfall abhängt. In der viadee haben wir diese Schritte so weit wie möglich generalisiert und skalierbar gestaltet. Weiterhin können wir individuelle fachliche Anforderungen einfach in unseren Ansatz integrieren und umsetzen (bspw. Java- oder JSON-Objekte). Weitere Informationen zum Thema Business Process Management und wie Sie die Daten aus einer Prozess Engine analysieren und nutzen können finden Sie auf unseren Seiten zum Thema Business Process Management und unserem viadee Process Warehouse. Bei weiterem Interesse im Bereich Business Intelligence finden Sie hier weitere Informationen. Ebenfalls relevant ist der Vortrag auf der CamundaCon 2018, wo wir über unsere Erfahrungen mit der Duni berichtet und die bpmn.ai-Idee mit Leben gefüllt haben. bpmn.ai ist seit November 2018 ein Open Source Projekt auf GitHub! Auf der Open-Source-Konferenz FrosCon 2019 hat unser Berater Mario Micudaj einen Vortrag zum Thema bpmn.ai gehalten, der online verfügbar ist.