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, students take two lectures and complete an extensive hands-on lab. By Week 6, the students will have built, programmed and driven a 1/10th scale autonomous race car. By Week 10, the students will have learned fundamental principles in perception, planning and control and will race using map-based approaches. In the last 6 weeks, they 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:
Weekly/Session Schedule:
Weekly lecture with continually accompanying lab assignments, deepening the understanding of the module content and increasing the individual problem-solving competence in autonomous racing cars. Lecture and lab: 2 x 3 hours/week. Tuesday and Thursday 9-12am, CPS Library
Plsease also have a look here and here.
Course grading: The final grade will be computed as follows
Course Evaluation:
A lab typically lasts one week, unless otherwise specified. It is assigned on the first lecture of the week, and due before the first lecture of the following week. We will download all submitted solutions before the lecture. We will also release the solution code at the same time that we download your submissions, so there is really no room for late submissions. You will use the released solutions, hereafter referred to as the reference implementation, in the following labs. This way, everybody starts every lab from the same baseline code that we know functions well..
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.