After successful completion of the course, students are able to master all the hardware and software knowledge required for building a fully autonomous racing car. This includes the control hardware (e.g. RBG depth camera, LIDAR, electronic speed controller, WIFI control, sensor and power board, single 5000mAH LiPo battery, sensor chassis, NVIDIA Jetson TX2 GPGPU computer platform) and the software stack (e.g. ROS, F1/10 simulator, AV mapping and localisation, AV planning, learning and vision).
The goal of this course is to give students an up-to-date foundation in the technologies being deployed and tested on self-driving cars, and more general mobile autonomous systems.
This hands-on, lab-centered course is for master students interested in the fields of artificial perception, motion planning, control theory, and applied machine learning. It is also for students interested in the burgeoning field of autonomous driving. This course introduces the students to the hardware, software and algorithms involved in building and racing an autonomous race car. Every week, (pre-recorded) lectures covering the relevant aspects are provided. Core of the lecture are the lab assignments. They are starting with the hard- and software that is needed to build and programme a 1/10th scale autonomous race car. Then fundamental principles in perception, planning and control and map-based approaches follow. At the end students develop and implement advanced racing strategies, computer vision and machine learning algorithms that will give their team the edge in the race that concludes the course.
The course has five learning modules that build on each other and include three races for evaluation:
Content details:
Please note that the content details might partially change due to current focus points and time constraints.
Depending on the current situation lab assignments will either be carried out in simulation and/or on the actual racing car hardware at the institute. Further information on this will follow as soon as possible.
ECTS Breakdown: 6 ECTS = 150 Hours
Please note that most of the lab assignments are to be solved by teams. This means you should distribute the total workload well among all team members.
Registration is done in TISS, all further communication in TUWEL. Register in time, s.t. you get access to the link for the lectures and all further material!
Course grading:
Course Evaluation:
A lab typically lasts two week, unless otherwise specified.
Registration is done in TISS, all further communication in TUWEL. Please register in time, s.t. you get access to the link for the lectures and all further material!
If the registration is already full, you may sign up for the waiting list. If other students drop out, you might get a spot. So you should also attend the introduction lecture, if you are registered on the waiting list.
The most important technical pre-requisite is good programming skills in C++ and Python. You will be coding or reading code in both languages. Python is easy to learn if you don’t already know it, but you will have to do that on your own time. You will also need knowledge of frequency transform concepts (e.g., Fourier or Laplace), basic matrix algebra and differential equations.