This programme will help you improve your Python skills, learn C++, use matrices and calculus in code, and learn about computer vision and machine learning. These ideas will be used to solve problems with self-driving cars. You'll be ready for our Self-Driving Car Engineer Nanodegree programme by the end!
Course 1: Bayesian Thinking
Project: Joy Ride
- Begin by writing code to control a simulated vehicle. Send throttle and steering commands to the car in an attempt to get it to navigate a test track.
Project: 2D Histogram Filter in Python
- In this first project, you will write the sense and move functions in Python for a 2-dimensional histogram filter.
Course 2: Working with Matrices
Project: Implement a Matrix Class
- In this project, you will put your object-oriented programming and matrix math skills to the test by filling out the methods in a partially completed Matrix class.
Course 3: C++ Basics
Project: Translate Python to C++
- In this project, you will put your C++ syntax knowledge to use by translating the Histogram Filter code from the first course into C++.
Course 4: Performance Programming in C++
Project: Performant C++
- A self-driving car cannot afford to waste any cycles or memory. In this project, you will optimise some working (but inefficient) C++ code.
Course 5: Navigating Complex Data Structures
Project: Planning an Optimal Path
- You start your self-driving car, strap yourself in, and enter a destination.
- Getting from point A to point B is not an easy task. In this project, you will apply your knowledge of data structures (particularly graph data structures) and search algorithms to create an algorithm that finds the shortest route between two points using a map and traffic information.
Course 6: Visualizing Calculus and Controls
Project: Trajectory Visualizer
- As a self-driving car engineer, you'll be writing a lot of code that involves simulation, visualization, testing, and debugging. In this project, you will create a visualization tool that will allow you to see the continuous trajectories generated by various search and control algorithms.
Course 7: Machine Learning and Computer Vision
Project: Image Classifier from Scratch
- In this project, you will create an image classifier from the ground up. When you're finished, you'll have an algorithm that can correctly classify an image as "pedestrian" or "car."