Eignet sich Machine Learning als Hilfsmittel für Software-Ingenieure? Master-Studierende haben dies bei der Entwicklung einer selbstadaptiven Gebäudesteuerung experimentell untersucht.

Learning4Adaption: Machine Learning für Selbstadaptive Systeme

Darum ging's

Aufbau einer selbstlernenden, adaptiven Gebäudesteuerung mit Reinforcement-Learning-Algorithmen

Das wurde gelernt

  • Projektarbeit im Team
  • Funktionsweise sebstadaptiver Systeme und des Machine Learnings
  • Wissenschaftliches Arbeiten

Manuelles Software-Engineering kann langwierig sein; oft zu langsam für die dynamischen Umgebungen, in denen Software heute eingesetzt wird. Zunehmend wichtiger werden daher selbstadaptive Softwaresysteme, die sich automatisch an ihre Umgebung anpassen. Doch die Entwicklung der Adaptionslogik ist nicht trivial. Ein Lösungsansatz ist der Einsatz maschineller Lernverfahren, wodurch die Entwicklung der Adaptionslogik automatisiert werden kann. Damit lernt die Software während des Betriebs durch Interaktion mit ihrer Umgebung, welche Adaption als Reaktion auf welche Umgebungssituation sinnvoll ist.

Experimente mit verschiedenen KI-Algorithmen

Vier Studierende der Masterprojektgruppe Learning4Adaption haben im Sommersemester 2020 maschinelle Lernverfahren für die Realisierung einer selbstadaptiven Gebäudesteuerung untersucht. Hierzu haben sie sich zunächst intensiv mit dem Maschinellen Lernen und verschiedenen Lernalgorithmen auseinandergesetzt. Für die Entwicklung der selbstadaptiven Gebäudesteuerung wählten sie schließlich zwei moderne Reinforcement-Learning-Algorithmen aus: Soft Actor-Critic (SAC) und Proximal Policy Optimization (PPO).

Diese beiden Reinforcement-Learning-Algorithmen brachten sehr gute Ergebnisse. Auf Basis einer Raumsimulation konnten die Studierenden zeigen, dass ihre entwickelte Steuerung die Raumtemperatur mit wenigen Ausnahmen innerhalb eines Toleranzbereichs halten kann und gleichzeitig der Energieverbrauch optimiert werden konnte. Die Studierenden wiesen ebenfalls nach, dass sich der Lernprozess zur Laufzeit der Systeme beschleunigen lässt, indem man zur Design-Zeit bereits ein Vorab-Training mit vereinfachten Annahmen über die Umgebung durchführt.

Gute Teamarbeit führte zum Erfolg

Aufgrund der Corona-Pandemie musste die Gruppe auf physische Treffen verzichten und hat die gesamte Zusammenarbeit durch Videokonferenzen und andere Online-Tools organisiert – eine besondere Herausforderung, die das Team hervorragend gemeistert hat.

 

Diese Projektgruppe hat mir wirklich Spaß gemacht. Vor der Projektgruppe hatte ich nur recht wenig Ahnung von Reinforcement Learning und habe in dem Bereich jetzt wirklich viel gelernt. (Jana Schmitz)

Insgesamt schließe ich diese Projektgruppe sehr positiv ab. Mein Wissen hat sich im Bereich des Reinforcement Learnings stark erweitert. Zudem fällt mir das Schreiben von Texten nun deutlich leichter, als vor der Projektgruppe. Sehr beeindruckt hat mich vor allem die Zusammenarbeit mit den anderen Teammitgliedern. Das hat gut funktioniert und mir viel Freude bereitet. (Carina Chrosch)