Skip to content

Lesson Plans for the AI Racing League

Here is a set of suggested lesson plans to teach a 14-week college-level course built around the AI Racing League.

This course is designed as a multi-disciplinary course that will draw on subjects in computer science, electrical engineering and social science.

Background and Motivation

The AI Racing League project aims to provide students with hands-on experience in the fields of machine learning, computer vision, and robotic control. The project will involve developing autonomous vehicles (Donkey Cars) capable of competing in a racing environment. This initiative is motivated by the increasing relevance of AI in various aspects of technology and the need for practical, real-world application skills in our graduates.

Learning Objectives

After taking this course, students will be able to design, build, and test autonomous racing vehicles using Donkey Cars. Students will learn to apply machine learning algorithms, computer vision techniques, and hardware control to enable these vehicles to navigate a racetrack autonomously. The objective is to prepare students for careers in AI and robotics by providing a comprehensive learning experience that includes both theory and practice.

Student Deliverables

Students will work in small teams of 3 to 6 students. Ideally, each team will have their own car. Students will be graded on their teamwork.

Each team will produce a GitHub repository of their team's work. The GitHub repositories will include their configuration parameters, Jupyter notebooks and documentation on any modifications they have made to the cars.

Equipment Required

  1. At least two Donkey Cars ($300 each car)
  2. PCs with NVIDIA GeForce GTX series GPU ($1,200)
  3. A 24'x36' racetrack ($200)
  4. Various tools such as screwdrivers to assemble the cars

Optional Equipment

  1. A 3D printer to print the car chassis
  2. Access to cloud-based GPUs
  3. Additional sensors such as LIDAR (up to $1,000 each)

High-Level Overview of Course

Module 1: Terminal, Python and GitHub

The first module is a baseline to get all students up to speed using our development tools.

Hands-On Lab: Get familiar with car hardware. Assemble a new car if needed.

Module 2: Calibration

Calibration

Module 3: Gathering Data

Gathering Data

Module 4: Building a Model

  1. Transferring data to the GPU
  2. Command to build a model file
  3. Transferring model back to the Donkey Car

Building a Model

Module 5: Using a Model for Automatic Drive

Driving with a Model

Module 6: Analyzing Data

  1. Data metrics
  2. Viewing sample images
  3. Viewing throttle and angle predictions for an image

Analyzing Data

Module 7: Tuning Performance

Tuning Performance

Module 8: Managing the GPU

GPU Configuration

Module 9: Purchasing a GPU

Using on-line tools to configure a low-cost GPU PC tuned for machine learning training workloads.

Module 10: Advanced Topics

3D Printing a chassis

Adding a LIDAR

Lowering the Cost of the Donkey Car

Differential drives