ACPS: Automating CPS Design
In der "Automating CPS Design" Forschungsgruppe entwickeln wir Methoden, um den Entwicklungsprozess korrekter und effizienter cyber-physischer und eingebetteter Systeme in größtmöglichem Umfang zu automatisieren.
Wir betrachten dabei die folgenden Hauptfragestellungen:
- Wie können wir korrekte Implementierungen synthetisieren? - Ingenieure verbringen oft viel Zeit damit, Anforderungen an eingebettete Systeme zu schreiben und die Systeme selber zu entwickeln. Besser wäre es, wenn wir direkt aus den Anforderungen die Systemimplementierungen erzegen könnten, denn das würde eine Menge Entwicklungszeit sparen.
- Wie können wir Methoden des maschinellen Lernens so in eingebetteten Systemen nutzen, dass diese wichtige Korrektheitseigenschaften erfüllen? - Gerade Systeme, die sich an deren Umgebung anpassen, profitieren von der Nutzung maschinellen Lernens teilweise enorm. Aber ohne Sicherheitsgarantien sind sie oft nicht einsetzbar.
- Wie können wir, ganz allgemein, es einfacher für Ingenieure machen, korrekt arbeitende und effiziente Systeme zu bauen? - Viele heutige eingebettete Systeme sind mit wenig Rücksicht auf die Korrektheit entwickelt worden, weil dies ganz einfach bisher zu teuer war. Wie kriegen wir es billiger?
An der Schnittstelle zwischen Theorie und Praxis erarbeiten wir neue Methoden und Algorithmen um diese Probleme zu lösen. Dazu führen wir Forschungsarbeit in den folgenden Unterthemen der Informatik durch:
- Verifikation und Qualitätssicherung gelernter künstlicher neuronaler Netze
- Reaktive Synthese
- Runtime Verification
In unserer Arbeit importieren wir viele Konzepte aus verwandten Gebieten der Informatik, wie z.B. des maschinellen Lernens, des Satisfiability Solving, der Automatentheorie, allgemeiner der formalen Methoden, und auch der mathematischen Optimierung. Ein Fokus liegt dabei auf der Nutzung solcher Konzepte um die im Rahmen unserer Arbeit auftauchenden schwierigen Berechnungsprobleme zu lösen.
Wir führen unsere Forschung dabei auuch im Bereich von Drittmittelprojekten und -unternehmungen durch, wie:
- GUISynth - Reaktive Synthese von Programmcode für grafische Benutzeroberflächen (DFG)
- SafeWahr - Absicherung im Kontext des autonomen Fahrens (BMWI)
- Formal Engineering Support for Field-Programmable Gate Arrays (Volkswagenstiftung)
Unsere Forschung mündet häufig in der Implementierung der erarbeiteten Konzepte in Software, wie z.B.:
- Slugs: GR(1) Reactive Synthesis Tool
- Planet: Neural Network Verification
- GUISynth: Framework for synthesizing graphical user interface code for Android Cell Phone Apps
Zu den oben genannten Themen bieten wir auch Regelmäßig Bachelor- und Masterarbeiten sowie Projektarbeiten an.