Hacker News new | ask | show | jobs
by charliepark 2378 days ago
> "The trouble with pure neural net controllers is that they sometimes do something totally bogus for some data point within the normal input space."

A friend's theory on Google Maps is that it sometimes intentionally sends you down a non-optimal path in order to gather data on alternate routes. This friend isn't in the ML space, so this is just their anecdotal observation. Are they right, then?

3 comments

That is my theory as well.

It sometimes suggests a route I don't normally take, then when I continue on the route I normally take, the ETA updates to say I will now arrive sooner.

Google Maps intentionally suggests to take longer routes.

It could be that Google Maps is saving everyone time by doing this. The Braess Paradox is really interesting, and this could be an attempt to prevent it: http://vcp.med.harvard.edu/braess-paradox.html
I would imagine introducing cars to a road itself causes a braess paradox.
Introducing cars does cause more traffic.

However the interesting thing about braess paradox is that even if you keep the number of cars constant, introducing a new road can make travel times worse.

It usually suggests three routes to me, each with a time estimate, and the highlighted one doesn't always have the least expected time. I figured it might be respecting my other preferences, but it could equally be trying to balance traffic across the whole network. Though this also happens when cycling, which has a minimal impact on congestion.
Unlikely. Usually a suboptimal route is chosen when there's traffic somewhere else. Sometimes traffic might clear up after the path is chosen. Its an appropriate theory though, given that this is Google we're talking about.
There is a class of routes I take, which involve going through a cross street between two east-west roads. Google Maps sometimes directs me to take one that does not end in a traffic light, which would leave me at a stop sign trying to make a left onto a major road across traffic. The last time I was stuck in that position, I basically made a right and then a U-turn.
"Alternate routes" are still normal roads people travel on. Since the travel time of a path is just the sum of the travel time of all path segments you only need people traveling every road to estimate the total time of any path. Path finding is well understood with many algorithmic solutions, so there is no reason to use machine learning.

Google's implementation is impressive, but I see no reason why it would benefit from people traveling suboptimal paths.

It doesn't have to be doing gradient descent on a neural network to be machine learning. You could easily generate small perturbations to generated routes if they didn't add much time and took the driver down an under-monitored road.
Some path times are destination-dependent in ways Google doesn't seem to handle well, like certain turns or freeway onramps vs the regular lanes next to them. You would need people "testing" those parts, not just the regular path parts.
Google Maps is not just path finding; it also takes real-time traffic info into account.
Which is still just path finding: estimate travel time for each segment, use travel time instead of distance as edge cost.

Don't take that as a dismissal of Google maps: it's the most impressive path finder I know, working with high performance over long distances, taking into account real time information, and calculating meaningful alternative routes to choose from. It's an impressive piece of technology that actually makes the world a better place by saving humanity a lot of travel time that can now be spent on better activities.

Google Maps would certainly be high on my list of best inventions of the last few decades. At the same time the routing is just a good path finder with a good travel time estimator informed by real time data.

Compared to distance, travel time is a more complex and nuanced variable. There are more things that a route planner could do, and I suspect that Google maps (and others) are doing some of them. They include taking into account the variance in the time to transit each route segment (which might be, for example, weather-dependent), preferring simpler routes (including taking account of statistics on missed turns), and taking into account the effect of its -- and others' -- recommendations on the flow of traffic (or even on public safety.)
Gathering data is required to do travel estimates. If Google was using handset data to update congestion information, it would want to send a percentage of users down sub optimal routes to verify they are sub optimal.
I would be very upset if they did this, though. I'm not Google's test subject and it would be pretty f%$#@! dehumanizing if they treated me that way.

I'm not a bloody ant or part of their hyper-organism.