Softwareentwicklung für Autonomes Fahren (Modul MW2472, online)

Kontakt

Kontaktadresse:  vl.adse.ftm@ed.tum.de

Online verfügbar

Die Vorlesung wird im Sommersemester in Präsenz abgehalten und zusätzlich per Video aufgezeichnet. Im Wintersemester wird die Vorlesung vollständig online abgehalten und neben der aufgezeichneten Vorlesung zu jedem Termin eine Online-Sprechstunde angeboten.

Der Moodle-Kurs ist online verfügbar über: Softwareentwicklung für Autonomes Fahren

Vortragende/r (Mitwirkende/r)
Nummer0000001362
ArtVorlesung
Umfang2 SWS
SemesterSommersemester 2024
UnterrichtsspracheEnglisch
Stellung in StudienplänenSiehe TUMonline
TermineSiehe TUMonline

Teilnahmekriterien

Lernziele

Nach der Teilnahme am Modul haben die Studierenden einen umfassenden Überblick über die Softwaremodule und weiterführende essentielle Bestandteile des autonomen Fahrens. Die Studierenden sind in der Lage für jedes Softwaremodul das passende Verfahren aus dem Stand der Technik auszuwählen und anzuwenden. Darüber hinaus verfügen sie über ein tiefgehendes Verständnis der Funktionsweise. Durch aktive Programmieraufgaben erhalten die Studierenden die Fähigkeit die zugehörigen Methoden zu implementieren, deren Funktionalität zu interpretieren und entsprechend aktueller Herausforderungen weiterzuentwickeln. Weiterführende essentielle Bestandteile der Softwareentwicklung können die Studierenden beschreiben und sie zweckbestimmt auf die jeweilige Problemstellung anwenden.

Beschreibung

In der Vorlesung werden alle relevanten Aspekte rund um die Softwareentwicklung für das autonome Fahren behandelt und die zugehörige praktische Anwendung aufgezeigt. 1. Introduction - Autonomous Driving Historischer Rückblick, Automatisierungsgrade, Modularer Software-Stack, Aktuatoren und Sensoren 2. Software Tools Git, ROS2, Docker 3. Perception I: Mapping SLAM, HD-Maps 4. Perception II: Localization GPS, Filter, Visuelle Lokalisierung 5. Perception III: Object Detection Datensätze, Objekttypen, Detektionsalgorithmen (Lidar, Kamera, etc.), Sensorfusion 6. Prediction Ebenen der Prädiktion, Wissens- und Lern-basierte Methoden (Graphen, Transformer, etc.) 7. Planning I Navigationsaufgabe, Suchmethoden 8. Planning II Kostenfunktionen, Entscheidungsfunktion, Trajektoriengenerierung 9. Control Regelgrößen, klassische Regler, MPC 10. Safety Assessment Szenarientests, Virtuelle Absicherung, Supervisor Prinzip 11. Teleoperated Driving Konzepte, Verbindungsmethoden, Nutzeranforderungen 12. Simulation Grundlagen und Notwendigkeit, Simulationsumgebungen, Zusammenführung Software-Stack

Inhaltliche Voraussetzungen

Das Belegen der Vorlesungen Grundlagen der Fahrzeugtechnik, Künstliche Intelligenz in der Fahrzeugtechnik, Fahrerassistenzsysteme im Kraftfahrzeug oder jeweils ähnlicher Veranstaltungen wird empfohlen, stellt jedoch keine Voraussetzung zur Teilnahme an der Lehrveranstaltung dar. Grundlegende Kenntnisse im Umgang mit der Programmiersprache Python sind jedoch notwendig und Voraussetzung zum Verständnis der in der Übung durchgeführten Coding-Sessions. Falls dies nicht der Fall ist empfehlen wir die Teilnahme an einem Online Kurs zu Python, beispielsweise learnpython.org (https://www.learnpython.org/).

Lehr- und Lernmethoden

In der Vorlesung werden die theoretischen Grundlagen mittels Vortrag und Präsentation vermittelt. Während der Vorlesung werden explizit Fragen gestellt, die eine Transferleistung von den Studierenden erwarten und bei denen die Studierenden die Möglichkeit bekommen, sich zu Wort zu melden. Damit soll der Überblick über die Methoden der einzelnen Softwaremodule für autonomes Fahren vertieft und der Transfer zum Anwenden auf weitere Problemstellungen erreicht werden. Zusätzlich werden in der Vorlesung Codebeispiele erläutert, die von den Studierenden im Rahmen der Übung aktiv mit programmiert werden können. Diese Codebeispiele stellen die praktische Umsetzung der zuvor eingeführten Methoden dar und verknüpfen Theorie und Praxis. Somit wird den Studierenden der ganzheitliche Softwareentwicklungsprozess näher gebracht. Nach jeder Vorlesungseinheit werden entsprechende Lern- und Programmieraufgaben in Form einer Hausaufgabe zur Verfügung gestellt, die die Thematik der Lerneinheit behandeln und das erlernte Wissen vertieft. Hierbei können Studierende ihre Kenntnisse im Umgang mit der Programmiersprache Python stärken.

Studien-, Prüfungsleistung

In einer schriftlichen Klausur (Bearbeitungsdauer 90 min) sind die vermittelten Kompetenzen auf die Problemstellungen der funktionalen Module für autonomes Fahren anzuwenden und auf weiterführende Aufgabenstellungen zu übertragen. Die Studierenden sollen in der Klausur beispielsweise aus dem Gebiet der Pfadplanung entsprechende Methoden und Algorithmen auswählen und anschließend deren Funktionalität erklären können. Des Weiteren soll der Übertrag auf neue weiteführende komplexere Problemstellungen erfolgen. Erlaubtes Hilfsmittel ist hierbei der Taschenrechner (nicht-programmierbar). Durch die nach der Vorlesung gestellten Hausaufgaben kann bei Erreichen von 50% richtiger Ergebnisse (berechnet aus dem Durchschnittswert der erzielten Prozentpunkte über alle Hausaufgaben) ein Notenbonus gemäß APSO §5, Absatz 5 für die Klausur erzielt werden.

Empfohlene Literatur

S. Pendleton et al., “Perception, Planning, Control, and Coordination for Autonomous Vehicles”, Machines, vol. 5, no. 1, p. 6, 2017, doi: 10.3390/machines5010006. M. Maurer, B. Lenz, H. Winner, and J. C. Gerdes, "Autonomous Driving: Technical, Legal and Social Aspects". s.l.: Springer, 2016. D. Watzenig, M. Horn, "Automated Driving: Safer and More Efficient Future Driving", Springer International Publishing, 2017. A. Faisal, T. Yigitcanlar, M. Kamruzzaman, and G. Currie, “Understanding autonomous vehicles: A systematic literature review on capability, impact, planning and policy,” JTLU, vol. 12, no. 1, 2019, doi: 10.5198/jtlu.2019.1405.

Links