Zuerst erschienen in der Ausgabe .public 03-2019
von Emre Ak und Alexander Daun
Innovation mit Spaß – ein Erlebnisbericht vom vierten BMVI Data-Run
Das Bundesministerium für Verkehr und digitale Infrastruktur (BMVI) hat am 22. und 23. März 2019 zum vierten Mal Softwareentwickler und Gründer zu einem Hackathon, dem „BMVI Data-Run“1, eingeladen.
Der BMVI Data-Run findet im Rahmen des Förderprogramms mFUND (Modernitätsfonds) statt, mit dem das BMVI bis Ende 2020 insgesamt 150 Millionen Euro für die Förderung digitaler Mobilitäts-Innovationen zur Verfügung stellt. Ziel der Veranstaltung 2019 war, binnen 24 Stunden mit kreativen Ideen einen ersten Prototyp für Fragen rund um Mobilität 4.0 (automatisiertes und vernetztes Fahren) zu entwickeln. Die Lösungen wurden anschließend von einer Fachjury bewertet und ausgezeichnet. Das Bundesministerium sowie weitere Behörden, Forschungseinrichtungen, Unternehmen und Hochschulen steuerten große Datensätze zur Implementierung bei. Während der Veranstaltung standen sogenannte „Datenpaten“ für Fragen rund um die bereitgestellten Datensätze zur Verfügung. Diese Datensätze lehnten sich an die drei Themengebiete an, mit denen sich die mehr als 70 Teilnehmer in 13 Teams auseinandersetzen konnten.
Das erste Thema, „mFUND-Vernetzung“, verfolgte einen breiter gefassten Ansatz mit der Zielsetzung, aus der Verknüpfung von Daten verschiedenster mFUND-Projekte einen echten Mehrwert zu schaffen. Das zweite Thema „Digitale Fahrrad-Hacks“ beschäftigte sich mit digitalen Ideen rund ums Radfahren, mit dem Bestreben, zukünftig das Radfahren mittels digitaler Unterstützung sicherer und attraktiver zu gestalten. Das dritte Thema fokussierte sich auf die Präzisierung der Flugzonen von Drohnen für mehr Sicherheit am deutschen Drohnenhimmel bei simultanem Schutz der Privatsphäre der Bürgerinnen und Bürger sowie des regulären Flugverkehrs. Dazu sollten Mechanismen entwickelt werden, die die Genauigkeit der Datenlage deutlich verbessern und gleichzeitig einen hohen Automatisierungsgrad bei der Datenveredlung aufweisen. Dieser Herausforderung stellte sich das achtköpfige msg-Team „Dronezone“.
Die Zielsetzung für alle Teammitglieder war anspruchsvoll: innerhalb 24 Stunden einen wirklichen Beitrag zur Verbesserung der Sicherheit am deutschen Drohnenhimmel leisten. Dazu wurde direkt nach dem Start des Hackathons vor Ort Kontakt mit Hardy L. Polevka, dem Vertreter der DFS – Deutsche Flugsicherung und „Kunden“ des Themengebiets „Mehr Sicherheit am Drohnenhimmel“, aufgenommen. Aus diesem Gespräch ergab sich folgende Ausgangssituation der DFS, die es mittels der verfügbaren Daten zu optimieren galt:
• Aktuell stellt die DFS die DFS-DrohnenApp2 für Smartphones bereit, die Drohnenpiloten die Flugverbotszonen von Drohnen deutschlandweit anzeigt.
• Qualitätsdefizite in den von der DFS-DrohnenApp genutzten Daten führen zu unpräzisen Darstellungen. Das Problem hierbei ist, dass die Flugverbotszonen in Abhängigkeit gesetzlicher Regelungen mit einem bestimmten Radius zwar gezeichnet werden, diese aber den Gebäudeumriss der Flugverbotszone nicht detailliert genug berücksichtigen.
Abbildung 1: Flugverbotszonen Istzustand vs. Zielbild
Dadurch kann folgendes exemplarisches Szenario auftreten: Drohnen dürfen nicht mit weniger als 100 Meter seitlichem oder vertikalem Abstand über Krankenhäuser fliegen. Nun ist das Krankenhaus als Punkt in der Datenbank gespeichert, um den ein Radius von 100 Metern zur Kennzeichnung der Flugverbotszone gezogen wird. Da dabei nicht die Größe und der Umriss des Krankenhauses berücksichtigt wird, gibt diese eingezeichnete Flugverbotszone sehr wahrscheinlich nicht die Abstandskriterien der Flugverbots-Richtlinien korrekt wieder (siehe Abbildung 1).
- Geo-Daten, die die Basis einer solche Anwendung sind, liegen in ganz unterschiedlichen Datenformaten vor. Daher bestand eine weitere Anforderung der DFS darin, Geo-Daten aus verschiedensten Datenquellen (teil-)automatisiert importieren und nutzen zu können.
- Als Vision für die DFS-DrohnenApp erarbeitete das msg-Team im Gespräch mit Hardy L. Polevka ein neues Feature, um dynamische Flugverbotszonen abbilden zu können. Dieses Feature käme beispielsweise an Orten mit zeitlich begrenzten Events zum Tragen, über die aufgrund der großen Menschenansammlung temporär keine Drohnen fliegen dürften.
Zielsetzung für das msg-Dronezone-Team war es nun, für alle diese Anforderungen sowohl mit softwaretechnischem Knowhow als auch mit kreativen Ideen und den zur Verfügung gestellten Daten eine innovative und mehrwertige Lösung für die DFS zu entwickeln. Den Schwerpunkt legte das Team hierbei auf die Präzisierung der Flugverbotszonen sowie auf Ansätze zur flexiblen und (teil-)automatisierten Datenanbindung verschiedenster Geo-Daten.
Nach Klärung der Ausgangssituation und Zielsetzung organisierte sich das Team in zwei operative Gruppen, wie es für ein Softwareentwicklungsprojekt typisch ist: ein Backend- und ein Frontend-Team. Die Optimierung vorhandener Flugverbotszonen und die automatische Erkennung von Flugverbotszonen sollte im Backend umgesetzt werden. Die Möglichkeit zur Anbindung beliebig vieler Datenquellen und der automatische Import der Daten betraf sowohl das Backend als auch das Frontend. Mit dem Abbilden von dynamischen Flugverbotszonen setzte sich das Frontend auseinander.
Abbildung 2: Begrüßungsrede durch Steffen Bilger
Bevor sich das Team der fachlichen Problemlösung widmete, galt es, die technische Infrastruktur bereitzustellen und ein Projektgerüst für das Backend und das Frontend zu erzeugen. Wohlwissend, dass diese rudimentären Arbeiten oft unterschätzt werden, hatte sich das Team bereits im Vorfeld für einen Technologie- Stack entschieden sowie die grundlegende Infrastruktur erstellt. Im Backend setzte das Team auf eine Java-Implementierung, während sich das Frontend-Team für das JavaScript - Framework Node.js entschieden hatte. Um den roten Faden nicht zu verlieren und in Richtung gemeinsames Ergebnis zu arbeiten, wurde das Projekt mithilfe von Meilensteinen strukturiert.
Abbildung 3: Manuelles Anlegen einer Flugverbotszone (blau) und Darstellung einerungenauen, importierten Flugverbotszone (rot)
Im Frontend konnte die Anwendung dank des Express-Frameworks sauber im Stil des MVC-Pattern gegliedert werden, so dass die ersten (noch leeren) Internetseiten schnell erstellt waren. Für die Integration geografischer Karten nutzte das Team „Open- Layers“3, da dieser Anbieter eine umfangreiche API zum Erstellen und Bearbeiten von Objekten auf einer Karte bereitstellt. Wenige Minuten später war die Karte eingebunden, und die Anwendung konnte die ersten prototypischen Flugverbotszonen anhand von Geokoordinaten auf die Karte zeichnen.
Abbildung 4: Das Team voll konzentriert
Das Backend-Team entwickelte derweilen ein Modul zum Import von Flugverbotszonen aus verschiedensten Datenquellen, die dann im Frontend über die Schnittstelle abgefragt werden sollten. Mit diesem Modul konnten Datenquellen dynamisch erweitert und über das Frontend gesteuert werden. Prototypisch konnte mit dem Modul eine Datenquelle mit den Geokoordinaten von Windkraftanlagen erfolgreich geladen und auf der Karte im Frontend dargestellt werden. Nun wurde die vom Vertreter der DFS angesprochene Ungenauigkeit deutlich sichtbar: Viele Windräder befanden sich gar nicht in der eingezeichneten Flugverbotszone auf der Karte, sondern viele Meter entfernt. Dies ließe sich sicherlich durch den Import von verschiedenen Datenquellen mit Windkraftanlagen lösen. Aber was wäre, wenn es zu einigen Flugverbotszonen nur eine einzige ungenaue Datenquelle gibt? An dieser Stelle wollte das msg-Team die Datenqualität mittels Machine Learning unabhängig von der Anzahl der Datenquellen optimieren und so die Genauigkeit von Flugverbotszonen verbessern. Machine Learning optimiert durch Gegenüberstellung und Validierung von Vektor- und Rasterdaten die Datenqualität: Anhand der Geometrie von Hindernissen für Drohnen, wie zum Beispiel Windkraftanlagen, werden auf Satellitenbildern automatisch ähnliche Hindernisse gefunden und anschließend neue Flugverbotszonen um diese Hindernisse herum erstellt.
Im ersten Schritt entwickelte Dronezone einen Algorithmus, der auf Basis von Machine Learning vorgegebene Muster auf Bildern erkennt. Auf einer Auswahl von Satellitenbildern sollte der Algorithmus die Bilder erkennen, die eine Windkraftanlage zeigen. Als Muster diente dabei ebenfalls ein Satellitenbild einer Windkraftanlage. Der Algorithmus lieferte gleich zu Beginn überzeugende Ergebnisse, sodass das Team schnell zu dem Schluss kam, dass dies die beste Lösung für das Qualitätsproblem sei. Mithilfe des Machine-Learning-Ansatzes können auf diese Weise viele weitere markante Hindernisse wie Flughäfen, Heliports, Stadien oder auch Bahnhöfe automatisch entdeckt und als Flugverbotszonen deklariert werden.
Gleichzeitig konnte auch das Frontend-Team einen Erfolg melden: Das manuelle Anlegen von Flugverbotszonen funktionierte! Zum Anlegen einer neuen Flugverbotszone kann der Nutzer das gewünschte Gebiet auf der integrierten Karte einzeichnen und anschließend Informationen zu der Flugverbotszone hinterlegen (siehe Abbildung 2). Aus jeder eingezeichneten Flugverbotszone wird ein Polygon aus Geokoordinaten erstellt. Das Einzeichnen kann entweder durch freies Zeichnen oder durch das Zeichnen von Polygonkanten geschehen. Mit der bis hierhin erarbeiteten Lösung und den weiteren Ideen in den Köpfen besaß Dronezone nun zu allen drei Herausforderungen – Qualitätsdefizite in den Quelldaten, (teil-)automatisierter Geo-Daten-Import aus verschiedensten Datenquellen und Abbildung von dynamischen Flugverbotszonen – praktikable Lösungen!
Um die Qualitätsdefizite in den Quelldaten zu minimieren und die Genauigkeit der Flugzonen zu maximieren, kommt der implementierte Maschine-Learning-Ansatz zum Tragen. Konzeptionell wird dieser Ansatz um die automatische Erkennung von Gebäudeumrissen oder anderen Hindernisgrenzen erweitert, sodass nicht nur an den richtigen Koordinaten Flugverbotszonen existieren, sondern auch die exakte Fläche des Hindernisses automatisch berechnet wird.
Der (teil-)automatisierte Geo-Daten-Import aus verschiedensten Datenquellen war mit dem teilimplementierten Importmodul, das beliebig viele und verschieden strukturierte Quelldaten teilautomatisiert einlesen, verarbeiten und speichern kann, prototypisch gelöst. Die Bedienung der Importfunktionen erfolgt über die Oberfläche und benötigt keine zusätzliche Implementierung. Bereits importierte Datenquellen können geändert, gelöscht oder der Import kann zeitweise ausgesetzt werden. Zudem ist es möglich, die Datenquellen zu priorisieren, um eine qualitativ hochwertigere Datenquelle anderen Datenquellen vorzuziehen. Durch freihändiges Einzeichnen von Flugverbotszonen und eine Anpassung bestehender Flugverbotszonen konnte eine Abbildung von dynamischen Flugverbotszonen erreicht werden. Mit dieser Möglichkeit können die Ergebnisse der automatisierten Prozesse, wie der Import der Daten und die Maschine-Learning- Aktivitäten, manuell unterstützt und optimiert werden. Damit hat immer der Benutzer die Hoheit über die Datenqualität.
Letztlich stand das msg-Team vor der Herausforderung, das Gesamtkonzept und die bereits implementierten Ergebnisse für die Abschlusspräsentation vor der Jury in einen dreiminütigen Vortrag zu verpacken. Bei all den vielen Ideen keine einfache Aufgabe! Schließlich entschied sich Dronezone für den Ansatz, den lauffähigen Prototyp in der Abschlusspräsentation für sich sprechen zu lassen und den Fokus primär auf die Vorführung der Lösungen zu legen.
Die Präsentation fand vor der Fachjury und den übrigen Teilnehmern des Data-Runs statt. Das Konzept und der Entwicklungsstand von Dronezone gefielen sowohl dem Publikum als auch der Jury, die dem Team nach 24 Stunden Kreativ- und Entwicklungsmarathon den Gewinn in der Kategorie „Kreativität“ zusprach! Vor allem die Ansätze zur Nutzung von Machine Learning hatten die Fachjury überzeugt. Angesichts der anderen Teilnehmergruppen, die ebenso innovative und intelligente Lösungen präsentierten, war es ein besonders stolzer Moment, diesen Preis in den Händen zu halten.
Abbildung 5: Gewonnen!
Die Teilnahme am BMVI Data-Run hat gezeigt, dass es möglich ist, mit einem kreativen, engagierten Team innerhalb von kürzester Zeit innovative Lösungen zu erarbeiten, diese prototypisch umzusetzen und zugleich einen Mehrwert für das BMVI zu schaffen. Für die Teilnehmer, durchweg junge Software- Ingenieure, war der BMVI Data-Run eine Chance, eigene kreative Ideen mit innovativen Technologien zu verknüpfen und in einem Softwareprojekt zu implementieren, ohne starre Spezifikationen oder Konventionen, die die Ideen des Teams einschränkten. Und das in einem „sportlichen“ Zeitraum und dem bisher unbekannten Themengebiet Geo-Informatik.
Für das Team Dronezone waren es spannende 24 Stunden, und und es empfiehlt jedem Querdenker und Softwareentwickler die Teilnahme am BMVI Data-Run – ebenso jeder Führungskraft, ihren Spitzenkräften eine solche Teilnahme zu ermöglichen.
Quellenangaben
1 https://www.bmvi.de/SharedDocs/DE/Artikel/DG/mfund-vierter-data-run.html (abgerufen am 08.08.2019, aktualisiert am 01.06.2022).
2 https://www.dfs.de/dfs_homepage/de/Drohnenflug/Regeln/Droniq%20App/ (abgerufen am 08.08.2019, aktualisiert am 30.06.2021).
3 https://openlayers.org/ (abgerufen am 08.08.2019).