Routing of bicycles on forestry tracks

There’s been a discussion in the past about routing of bicycles on forestry tracks: Bicycle allowed on vehicle=delivery or vehicle=forestry
I think right now there’s no routing at all across tracks with vehicle=forestry? Wouldn’t it be better to allow routing - but just with walking speed, like it would be tagged by bicycle=dismount? I think this is already the method used for ways tagged with bicycle=no

I think right now there’s no routing at all across tracks with vehicle=forestry ?

Yes, this is true for the bicycle profiles and if you don’t use a custom profile.

Wouldn’t it be better to allow routing - but just with walking speed, like it would be tagged by
bicycle=dismount ?

I don’t think that this would be better for a couple of reasons:

  1. If you do that you at least need to inform your user that for every segment about the get_off_the bike section, similar as komoot does this. The graphhopper web GUI features currently doesn’t support such sophisticated interpretation of the get_off_the_bike encoded value.

  2. Graphhopper is one of the integrated routing engines on the openstreetmap website. The means for showing a get_off_the_bike situation there is very limited. One would need to include the information into the routing instructions. But I doubt that any user ever would read this list in detail and search for the string get off the bike. This list may become huge when the route is long.

  3. If the segment is in such a condition that cycling is possible only a small percentage of the users will really get off the bike and push it. We decided rather early that our bicycle routing should help people to respect the law and not lead them on segments where there could be conflicts with the police or a forest official

  4. The way komoot does it has lead to controversial discussions in preserved areas, which I think we should better avoid for graphhopper.

I think this is already the method used for ways tagged with bicycle=no

No, this is not the case. Segments tagged with bicycle=no don’t get even into the routing graph the same way as segments tagged as vehicle=forestry.

Good that you mention komoot. I thought they are using graphhopper for their routing, cause they mention it at Komoot | Imprint ? I’ve been confused because Komoot’s and Graphhopppers routing differ in the case of bicycle routing across ways which are prohibited for bicycles.

So is Komoot using some own routing code above the code of Graphhopper?

So is Komoot using some own routing code above the code of Graphhopper?

Yes, from my testing I’m sure they made some modifications.

As the GH Maps 2.0 will be used now (and /maps will be changed soonish) we could support this via the hints now relative easy: Graphhopper Maps

1 Like

Thanks for pointing out the new possibilities with the new web front end.

From my perspective the new hints are a step into the right direction but still only partially helpful. In particular they are lacking the information where the hint occurs on the route and which distance is affected. And if this occurs on multiple locations I would expect multiple hints, I don’t think this is the case currently. Komoot is additionally showing the distance from the start where the hint applies, and it is possible to click on the hint and then the map jumps to the respective segment. I believe that this would be possible with some typescript magic in the new front end.
My question is if we would allow routing in bicycle=no situations if such extension would be available. I don’t think that this feature will ever make it on to the very basic routing on openstreetmap.org. It is not the right place. Therefore maybe the best option would be to be able to turn the feature on and off with a custom rule. The configured default rule would apply to the routing on openstreetmap.org and block these segments. And a custom rule could allow it.

1 Like

IMO the new GH Maps is a nice start and everyone is invited to improve it :slight_smile:

In general creating the best bike routing per default is not possible. There isn’t one. But you can already tweak everything via the custom models.

You can also allow bikes to use forestry roads via using the roads profile and the following custom model that basically says use the bike speed and access everywhere except when road_access == FORESTRY:

{
 "priority": [
  {
   "if": "road_access == FORESTRY",
   "multiply_by": "1"
  },{
    "else_if": "bike_access == false",
    "multiply_by": "0"
  }
 ],
 "speed": [
  {
   "if": "road_access == FORESTRY",
   "limit_to": "10"
  },
  {
   "else": "",
   "limit_to": "bike_average_speed"
  }
 ]
}

Example over a forestry road.

Powered by Discourse