Can You Build A Self-Driving Car In Six Months?
Written by Mike James   
Wednesday, 07 November 2018

Building a self-driving car is difficult. It has to be or they would be all around us driving us to places at our command. So can you build one in just six months? It seems you can.

The whole self-driving car idea started with a competition - the DARPA Grand Challenge - and the trend goes on. The SAE AutoDrive Challenge is a three-year competition to develop a Level 4 autonomous vehicle by 2020.

The first event, held in April of 2018 in Yuma, Arizona, consisted of three individual challenges: lane-keeping through a series of tight turns, stopping at stop signs, and avoiding static objects with lane change maneuvers.

The winning team, aUToronto/Zeus, has now written a technical account of how they did the job - in just six months. Most approaches to self-driving make use of high accuracy maps, but in this case maps were prohibited - making lane detection the only real way to tackle the problem. In other words, the task was to implement computer vision good enough to allow the car to navigate. The overall architecture can be seen below:

selfdrive1
M: Monocular camera, L: 3D LiDAR, G: GPS/IMU, S: Stereo camera. The Finite State Machine (FSM) determines current state (lane-keeping | stopping | lane changing)
 

Of course this hides a lot of the detail and complexity. For example, Lane detection is:selfdrive2

To add to the problem the rules insisted that everything worked on CPUs rather than the more customary GPUs. Even so the CPUs were more powerful than the average - Intel Xeon CPUs with 44 physical cores running at 2.2GHz. The software was written in C++ and used ROS (Robot Operating System). 

Notice that while there is a neural network in the system (CNN) there are two other ways of finding the lane marking and these three estimates are fed into a Kalman filter to produce a single best estimate.

There are lots of details that are covered in the paper, which if you are interested in building a self-driving car you really need to read. The conclusion is:

By focusing on simple approaches with added redundancy, we were able to build a system sufficiently reliable to win the competition in six months. In fact, very few tuning parameter or code changes were required once at the competition and the system operated largely as expected.

The team is already looking to next year:

"Map-less solutions result in high reliability and are less susceptible to GPS failures. Nevertheless, our future work will include developing a mapping suite to encode the location of lanes, signs, and intersections. In addition, a more comprehensive planning system will be required to handle intersections and traffic lights."

Yes it does seem it is possible to build a self driving car in just six months. When you compare what can be done now with the performance of the cars entered into the early Darpa Challenges it is very impressive. At first cars simply didn't complete more than a few 100 meters of the circuit. We clearly have built up the knowledge to do this particular job. 
 
The big problem is that it might well only take this short time to implement a system, but it will take much longer to prove that it is actually safe to operate.
 

selfdrive2018 The winning car - Zeus

More Information

Building a Winning Self-Driving Car in Six Months

Keenan Burnett, Andreas Schimpe, Sepehr Samavi, Mona Gridseth, Chengzhi Winston Liu, Qiyang Li, Zachary Kroeze and Angela P. Schoellig - University of Toronto

 

Related Articles

Enrol Now For Udacity Intro to Self-Driving Cars Nanodegree

Udacity's Self-Driving Car Engineer Nanodegree 

Google's Self Driving Cars - Not So Smart?

Google Makes A Driverless Car       

Google's Self-Driving Cars Tackle Urban Traffic Hazards       

Google Self-Driving Car For Daily Commute

Sebastian Thrun on Google's driverless car

Driverless Cars - More Than Just Google

Driverless Cars Become Legal - The Implications

Robot cars - provably uncrashable?


 

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on, Twitter, FacebookGoogle+ or Linkedin.

 

Banner


Visual Studio Java Gets IntelliCode
15/11/2018

Developers using Visual Studio Code to write in Java can now make use of Microsoft's AI-assisted IntelliSense extension. The extension has until now been limited to use with Python and C#.



Redis Adds Streams Support
30/10/2018

Redis 5 has been released with a new data structure, Streams. This is the first entirely new data structure in Redis for four years,and is a log-like data structure that allows you to store multiple f [ ... ]


More News

 
 
Last Updated ( Wednesday, 07 November 2018 )