[OSM-talk] Proximity

Frederik Ramm frederik at remote.org
Fri Sep 28 22:46:47 UTC 2018


Hi,

On 28.09.2018 23:21, john whelan wrote:
> Many cities have had their bus stops imported.  

And even more cities have their bus stops mapped in the traditional
fashion, like, riding a bus and recording where it stops. It's amazing
how much you can do with one day pass :)

> what else is needed to work it out?

Many standard routing tools (Graphhopper, OSRM, Valhalla) can do
"isochrones", that is essentially what you are looking for for one
single bus stop. You would simply run that for every bus stop and join
the results together.

Since you don't need instant results and you don't want to run this for
a whole country, the algorithm to use is really simple - build a routing
graph, annotate each bus stop node with a travel time of "0", and travel
outwards along all reachable nodes, increasing your travel time by the
time it takes to walk the edge you are using, until you reach a node
that already has a smaller time annotation than you have accumulated.

There's a simple Perl implementation in
svn.openstreetmap.org/applications/utils/distance_maps that could be
used as a basis if Perl is your thing but you could use pg_routing just
as well.

Having said that:

1. In the concrete example of a hospital, I would expect the local bus
operator to create a new bus stop or even change a bus route to
accommodate the hospital. Of course this would not work if you wanted to
set up a bakery.

2. The existence of a bus stop in OSM does not mean it is actually
served by a route; and the existence of a route in OSM that serves the
bus stop does not necessarily say what frequency - it could be the
school bus that only goes three times a day, or the night bus, or the
bus extension to the pool that only goes in summer.

Bye
Frederik

-- 
Frederik Ramm  ##  eMail frederik at remote.org  ##  N49°00'09" E008°23'33"



More information about the talk mailing list