Routing website using Gosmore routing engine

Hi All,

I am using YOURS in my web application.Its working fine.
I am showing the total distance for the calculated route, I want to show time for the same. Is this possible?

The time (or route penalty) is not provided by the two routing engines (Gosmore and OSRM/KIT) unfortunately. So I don’t know how to calculate a reasonable accurate time.

Is there any source you know where I can get the idea how to get route penalty for the calculated route.

Well, the route machines know the penalty ofcourse, but they also need to output it so I’d recommend contacting Nic Roets (Gosmore) or Dennis Luxen (OSRM) and ask them to add the information to the output. You can also send them a patch that adds the penalty to the output. Starting point for Gosmore is here and OSRM is here.

Hi All,

I am using Gosmore engine for route calculation.Gosmore uses a .pak file as a database what I want is to use my map database instead of this .pak file.
Is there any way to do this?

Hi All,

As I posted query about “How to calculate Route Penalty(Time) for the trip”, I found Gosmore calculates Route Penalty.

Gosmore
As mention in above link following is the output of Gosmore and it returns 6 fields out of which the 5th one is estimated time, so I just want to confirm whether its Route Penalty(Time)?

Output:
shell> QUERY_STRING=“flat=52.616870&flon=13.228430&tlat=52.601130&tlon=13.245730&fast=0&v=motorcar”
shell> export QUERY_STRING
shell> export LC_NUMERIC en_US
shell> gosmore

Content-Type: text/plain

52.617242,13.227067,J,(unknown-style),84,Zeisgendorfer Weg
52.616851,13.228609,J,(unknown-style),81,Zeisgendorfer Weg
.
.
52.601570,13.243311,J,(unknown-style),5,Heiligenseestraße
52.601548,13.243454,J,(unknown-style),5,Heiligenseestraße

Afaik you can’t do this with Gosmore. I guess you’ll need something like Mapnik/postgresql and pgrouting, but I don’t know if you’re still storing data twice that way. I think you will, and in that case there is no big advantage using Mapnik/postgresql and pgrouting over Mapnik/postgresql and gosmore…

I didn’t now the output contained the time, but if it is then yes: time equals penalty.

Hi Lambertus,

I am still confused whether its Time or not, because if I given the input e.g. Amsterdam to Almere and if i choose a “car” as a vehicle then it will generates 1039 seconds and for same input if I choose “foot” then it will generates 64 seconds and I think its not correct.

Heh, I guess it isn’t actually time, but time related perhaps. In the gosmore stylesheet (that also contains the routing parameters) the routing parameters are something that can be described as ‘speed’. If you choose pedestrian routing you can give a footway a ‘speed’ of 20 and a primary road a ‘speed’ of 1 so that footways are preferred over primary roads. But this example makes it clear that the parameter is not actually ‘speed’ and times cannot accurately be calculated based on these parameters.

It would probably be best to contact Nic Roets about this.

I’ve two questions about the YOURS backend:

  1. The help page says “The route data is updated approximately once a week”, but that doesn’t seem to happen. Is there a problem or is the help page incorrect? I don’t care about really fast updates, but a data set that’s over two months old is not very good.
  2. IMO, walking should be allowed by default if cycling is allowed. Take this example. Here, the shortest route is to walk over the cycleway, but the planner doesn’t allow that. Since it’s allowed to walk on any cycleway if not stated otherwise, I would like to allow routing over any way which allows bicycles and has no foot=* tag. Of course, I could tag this way with foot=yes, but IMHO that should not be necessary.

You’re right, but I am currently unable to start an update myself since the (new) server that hosts the routing database isn’t under my command. I’ll ping Nic Roets about it.

Indeed, looking at the default definition file for Gosmore I note that pedestrians aren’t allowed on cycleways but cyclists are allowed on footways (albeit at walking speed).

Personally I would agree that pedestrians should be allowed on cycleways but in Germany this seems not allowed unless explicitly specified. I think, internationally, in osm, pedestrians aren’t allowed to use a cycleway unless specified, and because of that I add foot=yes to the cycleways I map.

See e.g. http://wiki.openstreetmap.org/wiki/Tag:access%3Ddesignated
And since you’re Dutch: http://forum.openstreetmap.org/viewtopic.php?id=4143

Thanks for the fast reaction. I see your point, but about the bicycle tag, the wiki says: “Usage of bicycle=dismount and bicycle=no will vary in different countries. If according to local traffic rules a bicycle is no longer seen as a bicycle when there’s no one driving it, then there’s no need for using bicycle=dismount.” So the usage about the tag bicycle depends on local regulations, therefore I think the usage of the foot tag can depend on local regulations too, which means that it is correct to omit foot=yes inside the Netherlands.

I think this is subject to personal preferences. One can add extra tags to be more explicit (some might say ‘more complete’) or one might assume a lot of things and do not tag explititly. Both have pro’s and con’s.

Regarding Gosmore (and OSRM too): they can’t handle differences between countries except when you do a heck of a lot of preprocessing (i.e. add the foot=yes tags on all the cycleways in the Netherlands before feeding the data into Gosmore). Such preprocessing is computationally heavy and prone to errors (e.g. incomplete borders). So don’t expect ‘assumed foot routing over cycleways’ in yournavigation.org anytime soon.

You could, for example, expand this ‘assumptional localized tagging’ to maxspeeds in municipallies. In the Netherlands some have a 60km/h speedlimit on the local roads and others have an 80 km/h limit. Why not assume that any router will know that the municipally Voorst allows 80km/h and the municipally Apeldoorn allows 60km/h and not tag the maxspeed explicitly? Expanding assumptions in tagging gets darn complex very quickly.

The mantra in OSM is ‘don’t tag for the renderer’. I agree, but tagging something as something else because it looks better on the map is different from the assumptional v.s. explicit tagging methods. Explicit tagging makes things much easier on the dataconsumers while assumptional tagging is easier for the mapper.

I’m in favor, as a data consumer and mapper, of defining a strict set of implicit tags that is the same globally for all tags (e.g. highway=trunk implies bicycle=no which means that in the UK all trunk highways should have an explicitly tag bicycle=yes but saves the rest of the world the need to add bicycle=no).

It looks like there’s a bug in the distance calculation somewhere. For example, take the following route: http://yournavigation.org/api/dev/route.php?flat=52.300322610759&flon=6.9410813421612&tlat=52.305302706492&tlon=6.935482870303&v=bicycle&fast=0&layer=mapnik. It is a very simple route, but the distance is NaN.

pls help me, approximately, when will be the next map update?

pls help me, approximately, when will be the next map update??

10x

An update is running as we speak. It will take about a week before it’s ready (this is what I’m told).

The update was finished on the 28th. I’ve updated the information on the website accordingly.

I do notice that there are some strange routing decisions taken after this update, which I can’t relate to OSM data errors. I’ll relay this to the Gosmore author.

What happens here with YOURS?
from 48.90929 8.64634 to 49.27942 7.23073 using fastest “circles” aorund the target.

Yes, the latest update produced weird results. I’ve moved back to to the update from March 18th. I’ve sent an email to the Gosmore author to inform him of the problem with the update.