Intelligente Systeme

Master Projekt - Intelligente Systeme

wb


Übung (infMPInS-01a)

4 SWS, ECTS Credits: 10
Unterrichtssprache: englisch
Zeit und Ort: Donnerstag 09:00 - 11:30 Uhr,  Ort nV.
Vorlesungszeit Wintersemester 2021-2022: 18.10.2021 - 22.2.2022
Für weitere  Informationen UnivIS oder Modulinformationssystem

5. Oktober 2021 um 14:15 Uhr: Kick off Meeting für das Master Projekt Intelligente Systeme über diesen Zoom Link. Meeting ID: 993 7924 7325 Passcode: 900778

 

Umfang

Dieses Projekt wird als Masterprojekt angeboten (bei Interesse an einer Bachelor-/Masterarbeit im Rahmen dieses Projekts wenden Sie sich bitte an Torben Schnuchel)


Gruppe

Dieses Projekt wird als Gruppenaufgabe angeboten; ein Team von 3 bis 6 Studenten ist erforderlich (die Ergebnisse werden an die Anzahl der Teilnehmer angepasst).

Motivation

Smartphones sind heutzutage mit einer Vielzahl von Sensoren ausgestattet, auf die Entwickler Zugriff haben (Beschleunigungssensor, GPS, Bluetooth, ...). Da sie diese Daten von Einzelpersonen sammeln, eignen sie sich besonders gut für Crowdsourcing-Szenarien, bei denen mehrere Teilnehmer Daten austauschen, um eine zentrale Wissensbasis aufzubauen. Ein spannendes Anwendungsszenario von Crowdsensing ist die Überwachung des Verkehrs, um verteilt Informationen über Verkehrsfluss, Straßenzustand, Unfälle etc. abzuleiten.


Aufgabe

Womit Sie arbeiten:
- Android-Framework
- Open-Source-IOT-Backend
 

Was ist Ihre Aufgabe als Gruppe?

In diesem Szenario ist Ihr imaginärer Kunde eine Stadtverwaltung, die eine Lösung erstellen möchte, um Informationen über das Straßennetz einer Stadt zu sammeln. Sie wollen eine automatische Erkennung von Straßenschäden ermöglichen und so die Straßenwartung koordinieren und optimieren können. Sie wollen einen Ansatz ausprobieren, der auf Crowdsourcing basiert; auf diese Weise können die Menschen während der Fahrt ihre Daten über eine App an die Stadt weitergeben. Die geteilten Daten bestehen aus den rohen Messwerten der Sensoren des Smartphones anstelle von aggregierten Statistiken, sodass Analysten präzise Muster aus den Daten extrahieren können.

1) Erstellen Sie einen Datensatz

Sie erhalten ein Client/Server-Setup zur Datenerfassung, bestehend aus einem Sensing-Framework für Android-Smartphones und einem Open-Source-IOT-Backend. Sie als Team planen dann eine Datenaufzeichnung, indem Sie eine Strecke mit unterschiedlichen Straßenzuständen (Asphalt, Sand, Schlaglöcher, ...) vorgeben und schließlich einen Datensatz auf dieser spezifischen Strecke erstellen. Um ein Modell zur Erkennung des Straßenzustandes zu trainieren, sollten ca. 30-60min Daten pro Schüler ausreichen.

2a) Implementierung/Evaluierung der Fahrbahnoberflächen-Vorhersage

- Studieren Sie die wissenschaftliche Literatur und identifizieren Sie 3 Modelle (z. B. verschiedene Architekturen von neuronalen Netzen), die Sie auf die Aufgabe der Fahrbahnoberflächenerkennung trainieren werden
- Trainieren Sie die Modelle auf die Aufgabe der Vorhersage der Fahrbahnoberfläche und passen Sie die Hyperparameter an die Aufgabe an

2b) Implementierung/Evaluierung des Datenschutzes

- Diese Art der gemeinsamen Nutzung von Daten ist mit erheblichen Datenschutzproblemen verbunden. Anstatt die Rohdaten zu teilen, werden Sie untersuchen, ob es möglich ist
    1) Vorhersage des Benutzers aus den Rohdaten
    2) Vorhersage des Benutzers aus Zwischendarstellungen des Modells (z. B. Aktivierung der versteckten Schichten)

2c) Optional: Auswertung Pruning (abhängig von der Anzahl der Teilnehmer)

Motivation: Einsatz von Straßenerkennungsmodellen auf Smartphones. Dazu müssen die Modelle in Bezug auf die Anzahl der Parameter schrumpfen, um den begrenzten Rechenressourcen von Smartphones Rechnung zu tragen.
- Ordnen Sie die Parameter der Netzwerke nach irgendeinem Maß (z. B. Größe, Aktivierung, ...)
- Bewerten Sie die Leistung von Netzwerken mit unterschiedlichem Grad der Beschneidung
 

Grundlagen des Moduls

Neben der eigentlichen Entwicklung der Software zielt das Modul auf praktische Erfahrungen in folgenden Bereichen ab
- Spezifikation und Definition des "Produkts" mit Standard-Software-Engineering-Werkzeugen
- Aufbau von wissenschaftlichen Experimenten unter Verwendung von Standard Data-Science Bibliotheken wie numpy/pandas/keras/tensorflow/...
- (Selbst-)Organisation im Team, Management des Prozesses, Terminüberwachung
- Gesamter Software-Entwicklungsprozess bis zur Auslieferung an den Kunden
- Dokumentation des Produkts
Ihre Betreuer überwachen den Prozess kontinuierlich in der Rolle des Kunden, d.h. es wird von Ihnen erwartet, dass Sie regelmäßig den Fortschritt demonstrieren
 

Anmeldung

Interessierte Studenten können die Gruppe (z.B. Torben Schnuchel) für weitere Details kontaktieren.