Testing the autonomous car

Google does not seem to know how to test its autonomous car.  In two presentations on the autonomous car, the word “test” is never mentioned.  Multiple articles describing the autonomous car also omit testing.   The focus is on the “coolness” factor and the number of miles driven.   If more than 10,000 miles were driven, one could expect that the vehicle is beyond the drawing board and into the prototype phase.  But how does the autonomous car become a fully tested, robust and reliable product that the general public can depend on?

“Miles driven” not equivalent to reliability!

Certainly not by the miles driven.  Google now boasts that its autonomous car has driven 700,000 miles.  The implication is that this is a measure of quality or reliability.  It is not.  Lots of people, particularly elderly people, have driven more than 700,000 miles without an accident; this proves nothing.  Everything depends on systematic exposure to all the unusual and exception conditions that may occur in the course of driving.  This includes:

  • Adverse weather conditions — driving on ice and snow, extreme winds, flooded road conditions, etc.
  • Adverse weather conditions coupled with difficult terrain — driving on ice and snow on narrow and twisty mountain roads with major elevation changes
  • Unexpected hazards — a surprise deer or other animal leaps into the road, a tree falls on the road, another driver crosses the median and is aimed at oncoming traffic

What about software patches and version control?

Those are just the driving issues, what is the plan for:

  • Software updates and patches? What if your car is patched, but another one is not.
  • Version mismatches.  What if there are several autonomous cars on the road each running a different implementation and version of software?
  • What about malicious hackers who break into a car’s subsystem and make changes?

The list of unusual, exception conditions is substantial, and it’s time to get started addressing this issue.

Connected cars are autonomous cars

Finally, autonomous cars are also connected cars.  The “connected car” means that internally, newer vehicles are using TCP/IP as their communications infrastructure for internal components of the car (e.g.  entertainment system, climate control, nav system) and also for external comunication (e.g. satellite GPS, wireless hot spots, emergency communication).  How well has the TCP/IP implementation been tested?  What happens if a crash bug is encountered.  (Learn more about TCP/IP Testing.)

Let’s go Google! Start working on your quality assurance program!