GIScience / openrouteservice

🌍 The open source route planner api with plenty of features.
https://openrouteservice.org
GNU General Public License v3.0
1.43k stars 392 forks source link

Router fails to route over a mountain on a hiking path #600

Open Philipp-M opened 4 years ago

Philipp-M commented 4 years ago

I'm not sure if this is the right place, but this seems to be some kind of bug.

Here's what I did

Tried to create a hiking route, but the router doesn't do what I wan't to do (doesn't route me over the mountain, no matter how hard I try).


Here's what I got

Here is a link, where I think it is obvious what I tried to do:

https://maps.openrouteservice.org/directions?n1=47.40625&n2=11.466336&n3=14&a=47.439917,11.265728,47.452353,11.351624,47.421061,11.428699,47.411187,11.437669,47.410469,11.434568,47.409684,11.434429,47.40959,11.434128,47.376093,11.424408,47.286049,11.4&b=2b&c=0&k1=en-US&k2=km


Here's what I was expecting

As I said, i'd like to get over the mountain, and don't want to walk an extra tour.


Here's what I think could be improved

Maybe the tour is too hard for the router, in this case, probably an extra option to enable via ferrata hiking might be helpful.

TahiraU commented 4 years ago

The reason why you can't route over the mountain is that the specific path carries the sac_scale:demanding_alpine_hiking tag, as you can see here:

sac_scale_demanding_alpine_hiking

The OpenRouteService considers this tag as a dangerous route, which is why (even hikers) can't create a route over this segment.

nilsnolde commented 4 years ago

We used to have a max_difficulty option for hiking I think, but it wasn't used much and didn't survive the latest cleanup of features to prepare for more sophisticated algorithms.

I'll keep this open as I personally think it'd be a good addition for the hiking profile to have 3-4 difficulty levels, though some thought has be given which heuristic(s) to use for that. Or maybe just some flags like you're suggesting (e.g. suicidal_hike=true/false;)

aoles commented 4 years ago

This topic came up on our ask forum as well:

1papaya commented 4 years ago

Hey folks! Big +1 for some more functionality around sac_scale to make ORS more flexible for hiking routing. Not just for a "hardcore hiking" mode (which sounds very cool :wink: ) but also sac_scale is arguably the most subjective (though useful!) of the hiking way tags and so the current logic to filter out demanding_alpine_hiking and difficult_alpine_hiking is a bit too stiff of a routing choice IMO.

Ideally for hikers, ORS would incorporate all sac_scale values in the weighting for cases where we want to incorporate the subjectivity into the "ideal" route, while also having the option to enable/disable filtering by sac_scale as a whole.

If I'm not mistaken, that would mean removing the restriction to filter foot-hiking ways by sac_scale, adding steep weights for demanding_alpine_hiking and difficult_alpine_hiking, and then adding a filter to only route over sac_scale < demanding_alpine_hiking which is enabled by default. Then, a user could route a "standard" hiking path on default (same as is now) or disable the filter to return a "hardcore" path that includes all sac_scale but weighs heavily against the most difficult.

From what is discussed in the ask forum post, these changes being some added weights and a filter option it would not be as costly as adding a new a routing profile.

sac_scale has a ton of value in hiking routing and us hikers would love to see it used to the max! Thanks so much for ORS it's amazing.

TheGreatRefrigerator commented 2 years ago

How to ignore sac_scale for local instances: https://ask.openrouteservice.org/t/t5-t6-ferrata-ignored/2622/7