How does Google car work?

We recently had our MD from New York and, a senior developer from Copenhagen, visit our Mumbai office. While our MD is quite used to traffic in Mumbai (And of course it was time when Dindoshi flyover was being repaired), the developer from Copenhagen was quite shocked at the chaos that is Mumbai. Then over lunch, we started talking about everybody’s favorite topic – ‘how paradigm shift in big data is going to change our lives’. After obligatory discussion around improvements that big data is bringing in cancer detection, city repairs, recruitment, mortgage approvals, etc. we finally landed on Google and their driverless car. And the first sentence I heard was ‘So we aren’t close to seeing a driverless car in Mumbai, huh?’ . I told him that ‘we aren’t close to seeing one in US either.

Now why is that?

Google first maps roads the car is supposed to travel. And these are not your usual Bing maps or Google maps or even Google earth maps (note that I am not even mentioning Apple maps) – these are maps with very minute level of detail built in of ALL physical aspects of every street, every crossing, every parking that the car will encounter. So this map will not just show the street, it will have height of every curb, exact position of every lamp-post, exact measurement of angle of every turn and so on. This data is then pre-loaded into the car – so when the car starts out it already has phenomenal level of detail about the road – if it was empty.

When I first heard about Google car, my first thought was ‘How and where they fit all that computing power in a car’ – I actually was imagining a mini-server farm! I assumed that Google car’s sensors read, process, and take decisions all in real time as they are driving on a road – and so my question on the data farm kind of power. But Google bought down the processing requirements significantly by pre-loading this ultra-precise map in the car. Because once all of this physical data is pre-loaded, what is left is akin to superimposing real time data like traffic lights, other cars, cyclists, maybe strays (if it is Mumbai), etc. on to the pre-loaded map. So real time processing is required only for variables on the road – not everything on the road.

Of course, processing information about variables on the road is not easy – but it is Google– they can predict flu outbreaks after all! Google then captures tons of data about typical speeds, pedestrian behavior, speed limits, typical behavior on curves, etc. and apply their algorithm magic to predict how others on that road will behave (you see how the big data discussion fits here?). The processing power required to only run models of predictive behavior are simple enough (for Google of course) that Google car only has a desktop level machine in the car (Anthony Levandowski at Nissan’s Q&A).

So back to my original point: ‘we aren’t close to seeing one in US either J’.

Do you see why now? While pre-loading maps has made it much easier at a car level, they will have to build Google-car level maps for EVERY street that Google car is supposed to travel on. Google has so far built such maps for only about 2,000 miles of roads – US has over 4,000,000 miles of roads! But if anyone can do it – it’s Google.

Of course, I don’t think we will see driverless cars in Mumbai any time soon – here, even these physical dimensions of the road change every day!!! New pot holes, new illegal construction, police barricades, et al!!

A more detailed article, if you are interested, is here.

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to Top