KI übernimmt Arbeit von Software-Ingenieuren

Für selbstadaptive Software gibt es heute unzählige Anwendungsmöglichkeiten. Doch die Entwicklung der Systeme stellt Software-Ingenieure vor neue Herausforderungen. Wissenschaftler vom Softwaretechnik-Institut paluno an der Universität Duisburg-Essen (UDE) haben jetzt vielversprechende Ergebnisse mit neuartigen Verfahren der Künstlichen Intelligenz (KI) erzielt, die den Entwicklungsprozess selbstadaptiver Systeme automatisieren.

Wir leben heute in einer schnelllebigen, vernetzten Welt. In dieser Welt wächst der Bedarf an selbstadaptiver Software, also Software, die in der Lage ist, sich selbstständig an wechselnde Umgebungssituationen anzupassen. Beispiele sind schwankende Übertragungsbandbreiten, eine wechselnde Anzahl von Nutzern oder sich ändernde Benutzerpräferenzen.

Eine wesentliche Aufgabe bei der Entwicklung selbstadaptiver Software ist vorzugeben, wann und wie eine Anpassung erfolgen soll. Für Software-Ingenieure ist das schwierig, weil sie zum Zeitpunkt der Entwicklung meist nicht alle möglichen Umgebungssituationen der Software vorhersehen können. Dieser Herausforderung begegnen die Wissenschaftler aus der paluno-Arbeitsgruppe von Prof. Klaus Pohl mit dem Einsatz von Online Reinforcement Learning, einem Verfahren der Künstlichen Intelligenz. Die Idee dahinter: Die Software lernt selbst, welche Anpassung in welcher Situation die beste ist, indem sie Feedback zur Laufzeit sammelt und auswertet. Gute Anpassungen führen zu positivem Feedback, umgekehrt bedeuten schlechte Anpassungen ein negatives Feedback. So lernt die Software durch Ausprobieren, möglichst gutes Feedback zu sammeln. Damit wird die bisherige manuelle Tätigkeit der Software-Ingenieure, festzulegen wann und wie eine Anpassung erfolgen soll, von der Künstlichen Intelligenz übernommen.

„Bisherige Methoden des Online Reinforcement Learning haben jedoch noch einen Haken“, sagt Dr. Andreas Metzger, Leiter des Bereichs Adaptive Systeme bei paluno. „Die sogenannte Explorationsrate muss manuell feinjustiert werden. Das ist die Wahrscheinlichkeit, dass die Software eine neue Anpassung ausprobiert, anstatt sich auf bekannte, sichere Anpassungen zu beschränken.“ Weil das auf Kosten der Automatisierbarkeit geht, setzt das paluno-Team einen neuartigen Lernalgorithmus ein: Dieser wird Policy-based Reinforcement Learning genannt und kommt ohne eine Feinjustierung der Explorationsrate aus. Erste Tests bei selbstadaptiven Systemen aus den Bereichen des Geschäftsprozessmanagements und der Web-Anwendungen zeigten, dass die Software mit Hilfe dieses Algorithmus in der Lage ist, für unterschiedliche Umgebungssituationen jeweils geeignete Anpassungen zu lernen. Ihre Erkenntnisse wollen die Wissenschaftler nun auch für die Entwicklung von selbstadaptiven Transportmanagement-Systemen und Smart-Home-Systemen anwenden. Gemeinsam mit europäischen Partnern adressieren sie diese Bereiche in den EU-Projekten DataPorts und ENACT.

Präsentation auf der CAiSE 2020 und BPM 2020

Der Lernansatz und die Anwendung auf selbstadaptive Web-Anwendungen wurden von Alexander Palm im Juni 2020 auf der 32nd International Conference on Advanced Information Systems Engineering (CAiSE 2020) präsentiert. Der erweiterte Lernansatz und die Anwendung auf selbstadaptives Geschäftsprozessmanagement werden von Andreas Metzger im September 2020 auf der 18th International Conference on Business Process Management (BPM 2020) vorgestellt.

Alexander Palm, Andreas Metzger and Klaus Pohl: Online Reinforcement Learning for Self-Adaptive Information Systems. In: Schahram Dustdar, Eric Yu, Camille Salinesi, Dominique Rieu and Vik Pant (eds.): 32nd Int'l Conference on Advanced Information Systems Engineering (CAiSE 2020), Grenoble, France, June 8-12, 2020, Volume 12127 of LNCS, Springer, 2020, 169-184.

Andreas Metzger, Tristan Kley and Alexander Palm: Triggering Proactive Business Process Adaptations via Online Reinforcement Learning. In: Dirk Fahland, Chiara Ghidini, Jörg Becker and Marlon Dumas (eds.): 18th Int'l Conference on Business Process Management (BPM 2020), Sevilla, Spain, September 13-18, 2020, Volume 12168 of Lecture Notes in Computer Science, Springer, 2020.

Ansprechpartner:

Dr. Andreas Metzger, E-Mail: andreas.metzger(at)paluno.uni-due.de, Tel. +49 201 18-34650

Alexander Palm, E-Mail: alexander.palm(at)paluno.uni-due.de, Tel. +49 201 18-34659

Schematische Darstellung eines Selbstadaptiven Systems und die Automatisierung durch Künstliche Intelligenz (in blau)

Lernverhalten für selbstadaptive Web-Anwendung (rot = Verlauf der Höhe des Feedbacks; blau und schwarz = Änderung der Umgebungssituationen; grün = Adaptionen)

This project has received funding from the European Union's Horizon 2020 research and innovation programme under grant agreement no. 871493

This project has received funding from the European Union's Horizon 2020 research and innovation programme under grant agreement no. 780351.