Saturday, December 29, 2007

.

Do you know the way to San Jose?

Recently, a friend and I had a discussion about why an Internet map service chose a particular route. And, actually, I’ve been thinking quite a bit, lately, about our reliance on these services and on GPS-based navigation devices. It’s common for two devices (or two services) to choose different routes when you ask for directions, or for them to behave differently when they have to recompute a route because you went off course.

First, I’ll point out the obvious: at best, they’re only as good as their databases. But some of the ramifications of that fact aren’t so obvious. It used to be common for them to try to send you the wrong way down a one-way street. That’s less frequent now, as one-way-street information has been added, but it’s still common for them to suggest illegal turns, such as a left turn at a spot with a “no left turn” sign.

There are also many “paper roads” — roads that were approved and are on the maps, but which were never actually built, or don’t connect the way the maps say they do. Conversely, there are roads that have been built but aren’t on the maps at all. Sometimes that’ll be corrected when the map information is updated, and there’s a case where the Internet services have an advantage over a GPS-based device whose database might not be updated at all until the device is replaced.

Any of those situations can result in sub-optimal route selection, even to the point of getting you lost. But they’re not the only causes of a route choice that seems a little strange. Computer programs don’t consider navigation the same way that people do, and the algorithms the programs use will often optimize differently, and will lack some of the social knowledge that’s important in choosing which roads to drive.

There’s the question of speed limits and actual prevalent speeds. There’s the road quality — poorly maintained roads, or ones with particularly narrow lanes, for instance. As a driver, you’ll want to avoid streets with a lot of busy stores, ones that have frequent traffic jams, ones that are heavy bus routes, and ones where the timing of the traffic lights is especially bad. And around here, everyone knows that you just don’t take the Cross Bronx Expressway, which uses a meaning of “express” that you won’t find in any dictionary.

The algorithms don’t take any of that into account, at least not in general.

And once the route is chosen, just following the directions can be confusing. When a road changes names, the verbal directions will tell you that it’s a new road, even though it’s the same physical road that you’re driving on. Sometimes an “exit” actually means that you stay on the main road, depending upon the local designations. And roads often have multiple names. Sometimes the map programs use one name, but the road is universally known by a different name by the locals. And, of course, the programs don’t know about landmarks.

Take this segment of directions, for example, from one of the Internet services, Maps On Us:

Turn LEFT (East) onto Summit Ave   0.5 mi
Entering New York   < 0.1 mi
Road name changes to Old Pascack Rd   0.3 mi
Bear LEFT (East) onto W Washington Ave   0.8 mi
Turn RIGHT (South) onto Railroad Ave    
Note the artificial distance after “entering New York”, the subsequent name change (which actually happens at the NJ/NY border), and the “bear left” instruction.

Now here’s the version from MapQuest:

Turn LEFT onto SUMMIT AVE (Crossing into NEW YORK).   0.1 miles
SUMMIT AVE becomes OLD PASCACK RD.   0.2 miles
Stay STRAIGHT to go onto W WASHINGTON AVE.   0.8 miles
Turn RIGHT onto RAILROAD AVE.    
They attach the entry into New York to the turn onto Summit, when it actually belongs with the name-change to Old Pascack Rd. They tell you to “stay straight” for W Washington, rather than to “bear left”, a much more accurate view — in fact, it’s another name change, as far as anyone driving the road can tell. And they get the distances wrong, understating the total by almost half a mile.

This one is from Google Maps:

Turn left at Summit Ave
Entering New York
  0.5 mi
Continue on Old Pascack Rd   0.3 mi
Continue on W Washington Ave   0.8 mi
Turn right at Railroad Ave    
They do it best, getting the distances right and using "continue on" to make it clear that you’re just staying on the road, and the name is changing. Still, they, too, group the entry to New York in the wrong place.

And here’s the version I would give:

Turn left on Summit Ave — there’s a traffic light and a Lukoil station. In about a mile and a half you’ll cross route 304 and then the railroad tracks. Turn right as soon as you cross the tracks, onto Railroad Ave.
People like a landmark here and there, to assure us. And we prefer that extraneous information be omitted — it’s not really significant that the road’s name changes twice, and calling it out so explicitly just adds confusion to what’s only a mile and a half on a straight road. And you know you’re going to a place in New York; the directions don’t need to try to tell you exactly when that will happen.

The advantage, of course, with the active navigation systems that you take with you, that use the GPS satellites, is that it’s not so important for them to tell you how far to go nor what landmarks to look for. They tell you, on the spot, at the moment, what to do. You don’t have to know whether the left turn you want is at the light or at the gas station — “Turn left, now,” makes it clear. And if you make a mistake, miss a turn or take a wrong one, the system will recompute the route and tell you how to recover.

On the other hand, the recomputation isn’t always smooth. Probably the most surreal experience I’ve had with a GPS-based system happened in Florida, when my brother had plotted a route to northbound I-95, but decided to go his way instead of following the navigator’s directions. It recomputed three or four times before the two of them finally agreed on a turn. But what happened next was truly odd. I’ve drawn it on the map below (click to enlarge): the blue line shows the correct route; the red line is what the GPS system wanted us to do, complete with the odd u-turn in the middle of a major intersection.

annotated map

We're still better off getting directions from a human who knows where to go, and checking computer-generated directions against that.

1 comment:

Frisky070802 said...

Barry, your post really, really hit home.

I have a 5-yr-old Garmin GPS V, which is really crufty. It seemed neat at first and it saved my bacon here and there, but mostly it was really bad. In Tampa, as we took a major interstate south, it kept wanting us to exit and go onto an access road that would dead-end in a fishing pier. From then on "fishing pier" was our family joke if we didn't believe its directions.

It became the GPS that cried wolf. On Cape Cod, we followed a local road, route 28 I think, along the cape. It kept telling us to turn, but we knew our destination was on the same road. Eventually we broke down and looked at a map to see why it was insistent. Turns out we were following a peninsula, where if we listened and turned off, we'd have a good shortcut, hooking up with the same road again in a couple of miles.

The latest rage is live traffic info. I'd love to have it, but can I trust it?