Universität Duisburg-Essen Entwicklung selbstadaptiver Systeme mit KI automatisieren

Selbstadaptives System und die Automatisierung durch Künstliche Intelligenz (in blau).
Selbstadaptives System und die Automatisierung durch Künstliche Intelligenz (in blau).

Beim Online Reinforcement Learning lernt KI-Software selbstständig, welche Anpassung des Code zu besseren Ergebnissen führt. Die Universität Duisburg-Essen hat dieses Verfahren zum »Policy-based Reinforcement Learning« verfeinert und kommt so ohne Feinjustierung der Explorationsrate aus.

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.

Die zunehmend schnelllebige, vernetzte Welt erfordert neue Ansätze in der Entwicklung von Software. Der Bedarf an selbstadaptiver Software wächst, also Software, die in der Lage ist, sich selbstständig an wechselnde Umgebungssituationen anzupassen. Beispiele sind schwankende Übertragungsbandbreiten in der Kommunikation, eine wechselnde Anzahl von Nutzern oder sich ändernde Benutzerpräferenzen.

Eine wesentliche Aufgabe bei der Entwicklung selbstadaptiver Software ist es vorzugeben, wann und wie eine Anpassung erfolgen soll. Das ist jedoch schwierig, weil die Ingenieure zum Zeitpunkt der Entwicklung meist nicht alle möglichen Umgebungssituationen der Software vorhersehen können. Dieser Herausforderung begegnet das paluno-Team mit Online Reinforcement Learning, einem Verfahren der Künstlichen Intelligenz.

Neuartiger Lernalgorithmus: »Policy-based Reinforcement Learning«

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, schlechte Anpassungen zu einem negativen. So lernt die Software durch Ausprobieren, möglichst gute Rückmeldungen zu sammeln. Damit übernimmt die Künstliche Intelligenz die bisherige manuelle Tätigkeit der Software-Ingenieure: festlegen, wann und wie eine Anpassung erfolgen soll.

»Bisherige Methoden des Online Reinforcement Learning haben jedoch noch einen Haken«, erklärt Dr. Andreas Metzger, Leiter des Bereichs Adaptive Systeme bei paluno. »Die so genannte 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 für das Geschäftsprozessmanagement und für Web-Anwendungen waren erfolgreich. Ihre Erkenntnisse wollen die Wissenschaftler nun auch für die Entwicklung von selbstadaptiven Transportmanagement-Systemen und Smart-Home-Systemen anwenden.

Einsatz in den EU-Projekten »DataPorts« und »ENACT«

Gemeinsam mit europäischen Partnern wenden die Wissenschaftler des paluno-Teams ihre Forschungsergebnisse im Rahmen der EU-Projekte DataPorts und ENACT aus dem Programm Horizons 2020 an.

»DataPorts« entwickelt eine Datenplattform für europäische Seehäfen. Diese wird es den Seehäfen erlauben, ihre Prozesse zu verbessern und neue Dienste anzubieten, welche KI-basierte und datengetriebene Geschäftsmodelle realisieren.

Das EU-Projekt »ENACT« ermöglicht den Einsatz von DevOps für »trustworthy SIS« (Smart IoT Systems), deren Einsatz insbesondere in Anwendungsdomänen wie eHealth, Smart City und intelligenten Transportsystemen erforderlich ist.