# [OSM-dev] Spatial road network data sets and implementation using API

Andrew Byrd andrew at fastmail.net
Tue Mar 28 06:32:28 UTC 2017

```Hi Debajyoti,

I think you’ll need to provide more detailed information on your goals and the problems you are encountering for people to help you. Below I’ll list some of the questions that came to my mind in hopes that it will help clarify things, as well as some suggestions.

> On 28 Mar 2017, at 13:35, Debajyoti Ghosh <4u.debajyoti at gmail.com> wrote:
> Dear all:
> Please suggest how to implement my algorithm on real ASYMMETRIC road network datasets to get results.

When you say “my algorithm” are you referring to existing published algorithms, or new algorithms that you have devised? Can you point to articles detailing those algorithms?

When you say the network data set is “real”, do you just mean it’s the road network of a real city rather than a synthetic network?

What is “asymmetric” about that network - traffic flow speeds, direction of travel?

> I'm very much confused that I can't interpret data sets as it is given in various uncommon/unknown file format.

Which file formats are you referring to, and where did you get these data in the unfamiliar formats? Are you referring to OSM data in XML or PBF formats?

> I believe that I need data sets in the form <longitude, latitude> pair for n POI on real road network(spatial data)

When you say POI on the road network, do you mean the nodes making up the road network itself, or places that happen to be near the road? The latter I suppose.

> In addition we also need directed graph data sets for asymmetric road network where d(a,b) != d(b,a).

I suppose this is what you mean by “asymmetric” above, just that network distances between any two nodes are dependent on which is the origin and which is the destination node. OSM data does allow different characteristics for the opposite lanes/direction of a single way, but you’d need to build a routable graph from OSM data that preserves those differences.

> a) data sets collection and interpret/Extracting Spatial Data(say from OpenStreetMap)

“Spatial data” is a very general term - are you specifically talking about a routable graph / network, location of points of interest near such a network, or both? Do you need to collect data “in the field” or are you just using data from OSM?

> b) implement/simulate a prototype library/framework of LBS queries

I am assuming that by LBS you mean “location-based-services” and by “LBS queries” you mean, essentially, finding places or objects near a given location. There are two main ways to do that: either using straight-line distance or network distance.

For short distances you could do a lot just placing all your points in a spatial index and calculating straight line distances for all objects found in a spatial index query. This would also be a suitable placeholder technique if you’re concentrating on applications or algorithms higher up the stack and just need a dummy data source that provides nearby points and distances.

On the other hand, if you want to find nearby objects over longer distances (driving or public transport) or in places with fragmented or irregular networks (mountains, water, sparse public transit), or if you need accurate distances because this is a real service rather than a dummy layer in a prototype, you’ll need a network model.

Many pieces of software exist for building routable networks from OSM data. For example:
https://github.com/graphhopper/graphhopper <https://github.com/graphhopper/graphhopper>
http://project-osrm.org/ <http://project-osrm.org/>
https://github.com/valhalla
https://github.com/opentripplanner/OpenTripPlanner <https://github.com/opentripplanner/OpenTripPlanner>

http://wiki.openstreetmap.org/wiki/Routing <http://wiki.openstreetmap.org/wiki/Routing>
http://wiki.openstreetmap.org/wiki/Routing/online_routers <http://wiki.openstreetmap.org/wiki/Routing/online_routers>

Regards,
Andrew

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstreetmap.org/pipermail/dev/attachments/20170328/a0c16045/attachment-0001.html>
```