Flying Cars vs. Self-Driving Cars
There are many similarities in the technical challenges that need to be addressed when building any autonomous vehicle, whether it’s designed to travel in the air, on the ground, or underwater.
But there are key differences as well—different technologies that represent the “big rocks” that need to be overcome—and it is these differences that inform the content and structures of our two advanced smart transportation programs: the Flying Car Nanodegree program, and the Self-Driving Car Engineer Nanodegree program.
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.