Self-Driving Cars: Perception

Being able to “see” obstacles, people, and other vehicles, is in many ways the single biggest problem that self-driving cars face. As a result, we begin the Self-Driving Car Engineer Nanodegree program by facing this perception problem head-on. Students start right away by processing real-world data to identify lane markings, and go through a progression of ideas in perception to end up with substantial practical experience in the state of the art, which currently is perception through “deep networks.” Perceiving and avoiding dynamic obstacles while following a well-understood road network is in many ways the key problem for self-driving cars.

Flying Cars: Planning and Autonomy

In contrast, flying cars have it both easier and harder. We think the key problem to enable safe flying cars is to make them much more intelligent about themselves and their surroundings. Flying cars don’t necessarily have the luxury of following an established road network, and they need to be able to reason at a much more complex level about what they are doing, and what to do next. As a result, we begin the Flying Car Nanodegree program facing the planning and autonomy problem head-on. Students start right away by developing a flight planning system that is tied to real vehicles. The program takes students through a progression of ideas in planning and autonomy to end up with practical experience in the state of the art, which currently is hierarchical task and motion planning. Deciding what to do next, and how to respond to the unexpected, is in many ways the key problem for intelligent flight vehicles. Perception and estimation are absolutely part of the material we will cover, but the balance is much more on the autonomy and decision-making.

Challenges in Estimation and Control

In contrast to the Self-Driving Car Engineer Nanodegree program, the Flying Car Nanodegree program additionally provides more detailed exposure to crucial issues of reasoning about three-dimensional systems, control, and estimation. Flying cars have inherently faster and more complex dynamics, which leads to different challenges in estimation and control to ensure stable flight. In the second part of the course, we specifically focus on what it means for an autonomous vehicle to participate in a bigger, regulated system. Unlike self-driving cars, which really only have to follow the rules of the road and the instructions of the passengers, flight vehicles have to make their decisions in the context of the national air space, interacting with the air traffic control system. This is brand new territory for autonomous vehicles, and students will receive practical experience in emerging technologies for making intelligent decisions in an autonomous air system.

The Bottom Line

The idea of flying cars presents us with a vast array of issues to consider, problems to solve, and challenges to overcome. While we may use technologies similar to those being used in other fields such as self-driving cars, many factors make the pursuit of safe and efficient autonomous air transportation a truly unique endeavor, and it is these factors that define the program, and distinguish it from our Self-Driving Car Engineer Nanodegree program.

The Future, Today

We’ve discussed some of the key differences between our Flying Car and Self-Driving Car Engineer Nanodegree programs, but it’s also important to remember the similarities, and not just the technical ones. Both of these programs will empower aspiring engineers to succeed today, even as they’re shaping tomorrow. The safe and effective future of smart transportation will emerge through the pioneering work of our students, and we couldn’t be more excited to watch these remarkable developments unfold.

Nicholas Roy

Nick Roy is the Bisplinghoff Professor in the Department of Aeronautics & Astronautics at the Massachusetts Institute of Technology, and a member of the Computer Science and Artificial Intelligence Laboratory (CSAIL) at MIT. He received his Ph. D. in Robotics from Carnegie Mellon University in 2003. His research includes unmanned aerial vehicles, autonomous systems, human-computer interaction, and machine learning. He spent two years at Google [x] as the founder of Project Wing.