When looking at new technologies, it’s typical for the focus of development to move from functionality to performance to reliability—and self-driving cars are no exception. Thanks to advances in machine learning, computer vision, and accelerated computing, self-driving cars are now a reality.
However, there are a few miles to go before we have the reliability levels that these machines are expected to ensure. The Automotive Safety Integrity Level D (ASIL-D), a risk classification scheme defined by the ISO 26262, rightly places a stringent reliability standard on self-driving cars. For these vehicles to be ASIL-D compliant, they can only make ten errors in 1 billion hours of operation, while an average U.S. driver makes 10,000 mistakes in the same duration.
|Manish Gupta is working on making self-driving cars, machine learning, and artificial intelligence safer and more reliable. (Image source: Manish Gupta)|
The strict reliability standards are critical for human safety and to help drive social acceptance of the nascent self-driving technology. According to a recent AAA survey, 54 percent of Americans feel unsafe on roads occupied by self-driving cars. Careful hardware and software design practices need to be employed to achieve high-reliability standards and establish the trust of American people in self-driving technology.
Wheels are the only significant part that has remained true to form in a modern automobile. Today, a car is a mini-supercomputer on wheels. A typical car these days has a mind-boggling 40 processors. Additionally, a self-driving vehicle requires an accelerator to support computer vision and machine learning tasks. Because self-driving cars run software with more than 100 million lines of code, careful hardware and software design is an absolute necessity because a blue screen of death at 60 MPH could mean actual death.
Failures in computer systems are broadly categorized into permanent and transient faults. Permanent faults are repeatable and occur the same way every time. On the contrary, transient faults are temporary and they are a function of the environment. While permanent faults sound nasty, they are easier to handle. A diligent testing framework can expose permanent faults. But transient faults are often harder to prevent, as they are a function of the environment.
In 2016, a self-driving car crashed because the camera failed to register a truck against the brightly lit sky. In theory, such crashes can be avoided using a better camera that could adapt to sudden changes in brightness. But a more practical and fail-proof solution is redundancy. The industry is moving in the right direction by integrating multiple sensor technologies, such as radar, LiDAR, ultrasonic, and camera, to increase redundancy. In practice, two or more sensor systems should always be used to detect obstacles while the self-driving is engaged.
Advancements in other sectors of technology are also helping to increase the reliability and precision of self-driving cars. For example, the rise of the Internet of Things (IoT) enables camera sensors not only on self-driving cars, but also at intersections and other potentially high-risk regions on the road. The additional sensing provides another point of redundancy. Self-driving vehicles rely heavily on the Global Positioning System (GPS). Today, GPS does not have the required precision to detect lanes, leaving self-driving cars to rely on the camera and proper lane markings on the road. However, with 5th Generation (5G) wireless systems, high-precision positioning could potentially enable lane-detection and is another way to increase reliability via redundancy.
When humans moved from riding horses to driving cars, we faced new issues with increased risk on our roads. It did not stop us from moving forward and building a better, faster, and safer means of transportation. With increased safety-features and regulations, we were able to make it possible. Air travel—another example—has now evolved to be the safest means of transport.
While we are still in acceleration mode, I am confident that with careful hardware and software design, we will soon have self-driving cars that are far more reliable than an average human driver. The next on-ramp we will face is cultural acceptance and adoption. As we’ve seen in our past, though, people will embrace technologies that improve their lives.
Manish Gupta has a Ph.D. in Computer Science from the University of California San Diego. His research focuses on the reliability of computing and the memory subsystem. He has published in top-tier computer science conferences and holds multiple U.S. patents. His research in the field of computer system reliability has had significant impact on projects at the National Science Foundation and U.S. Department of Energy. Specifically, his research help creates reliable next-generation supercomputers. He is now working on making self-driving cars, machine learning, and artificial intelligence safer and more reliable.