Course

Motion Planning for Self-Driving Cars

University of Toronto

Welcome to Motion Planning for Self-Driving Cars, an intermediate course offered by the University of Toronto. This course will introduce you to the main planning tasks in autonomous driving, including mission planning, behavior planning, and local planning. You will learn how to find the shortest path over a graph or road network using Dijkstra's and the A* algorithm, use finite state machines to select safe behaviors, and design optimal, smooth paths and velocity profiles to navigate safely around obstacles while obeying traffic laws.

Throughout the course, you will build occupancy grid maps of static elements in the environment, implement a hierarchical motion planner, and navigate through scenarios in the CARLA simulator. Real-world randomness will also be introduced to ensure that your solution is robust to changes in the environment. To succeed in this course, programming experience in Python 3.0, and familiarity with Linear Algebra and calculus are required.

Certificate Available ✔

Get Started / More Info
Motion Planning for Self-Driving Cars
Course Modules

Explore Motion Planning for Self-Driving Cars through modules covering driving missions, motion planning constraints, mapping for planning, mission planning, dynamic object interactions, principles of behavior planning, reactive planning in static environments, and smooth local planning.

Welcome to Course 4: Motion Planning for Self-Driving Cars

Welcome to Course 4: Motion Planning for Self-Driving Cars. In this module, you will be introduced to the course and its objectives. You will also get to know your instructor and classmates, learn how to use discussion forums, and explore supplementary readings.

Module 1: The Planning Problem

Module 1: The Planning Problem. This module delves into driving missions, scenarios, behavior, motion planning constraints, and objective functions for autonomous driving. You will also learn about hierarchical motion planning and take a graded quiz.

Module 2: Mapping for Planning

Module 2: Mapping for Planning. Explore occupancy grids, populating occupancy grids from LIDAR scan data, occupancy grid updates for self-driving cars, and high definition road maps. Gain extensive knowledge through supplementary readings and practical exercises.

Module 3: Mission Planning in Driving Environments

Module 3: Mission Planning in Driving Environments. Learn to create a road network graph, implement Dijkstra's and A* shortest path search algorithms, and complete a practical assignment on road network shortest path search. Test your knowledge with a graded quiz.

Module 4: Dynamic Object Interactions

Module 4: Dynamic Object Interactions. Dive into motion prediction, map-aware motion prediction, time to collision, and take a graded quiz. Explore supplementary readings to enhance your understanding of dynamic object interactions.

Module 5: Principles of Behaviour Planning

Module 5: Principles of Behaviour Planning. Understand behavior planning, handling intersection scenarios with and without dynamic objects, and advanced methods for behavior planning. Test your knowledge with a graded quiz and supplementary readings.

Module 6: Reactive Planning in Static Environments

Module 6: Reactive Planning in Static Environments. Explore trajectory propagation, collision checking, trajectory rollout algorithm, dynamic windowing, and take a graded quiz. Enhance your knowledge with supplementary readings.

Module 7: Putting it all together - Smooth Local Planning

Module 7: Putting it all together - Smooth Local Planning. Gain insights into parametric curves, path planning optimization, velocity profile generation, and get an overview of the final project. Additionally, explore supplementary readings and the CARLA installation guide.

More Software Development Courses

Game Design and Development with Unity 2020

Michigan State University

Break into the video game industry with theoretical, technical, and practical knowledge from Michigan State University's Game Design and Development with Unity 2020...

Browser-based Models with TensorFlow.js

DeepLearning.AI

Browser-based Models with TensorFlow.js is a Specialization that teaches you how to train and run machine learning models in any browser using TensorFlow.js. It...

Game Design and Development 3: 3D Shooter

Michigan State University

Embark on the journey of game design and development with this advanced course focusing on 3D shooter games.

软件工程

Peking University

软件工程是北京大学推出的免费MOOC课程,为学习软件开发和维护提供导论性知识,涵盖软件需求、项目管理、敏捷开发、面向对象方法等。...