Ask HN: How is routing done on maps?
Ask HN: How is routing done on maps?
I've seen Google and Yahoo doing routing on maps but now even a small startup in my locality have a routing API (so it sounds that its not expensive). How do they find out routes on maps?
Is there any method to do it? I'm trying to solve a problem that needs routing data and would like to know the route points of service roads etc, which Google or Yahoo Maps do not show (they mark only the shortest routes).
(
9 comments
| 6 points
| on HN
)
Here's a thread where they go through how to use Dijkstra's manually with the GMaps API:
http://groups.google.com/group/Google-Maps-API/browse_thread...
naive A* Can you explain?
And what's rana? All I need is route points between places even for service roads via programatic access (an API). I would like links to free resources (I'm a student)
A. Run a pre-existing routing program on it, such as http://wiki.openstreetmap.org/index.php/Rana, or
B. Write your own (which would require knowledge of algorithms such as http://en.wikipedia.org/wiki/A*_search_algorithm)
There are also services where people do these things for you, and for low volume, they might not mind if you programmatically scrape their results. A good example is http://www.batchgeocode.com/
Properly, Rana isn't intended as a package for programmatic access, but it does include code which does what you want:
* http://wiki.openstreetmap.org/wiki/PyrouteLib - Pyroute is probably exactly what you want.
* Rana's routing module: http://wiki.openstreetmap.org/wiki/Rana/Modules#route
Rana and Pyroute sound cool to me since they are in PYthon. And the software requirements to run rana or Pyroute match my system (linux). So I'll choose one of those after trying both.
Thanks for the tip
But even if they don't, you can probably buy the same data from their source or another provider. (See that little 'Tele Atlas' copyright at the bottom of Google Maps? Or 'NAVTEQ' at the bottom of Yahoo Maps?)