Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

routing in Germany refuses to use highway=track, grade=1 as the last mile #1219

Closed
hlinden opened this issue Oct 13, 2014 · 9 comments
Closed

Comments

@hlinden
Copy link

hlinden commented Oct 13, 2014

Hi,

see this route for example:

http://osrm.at/9L4

This should be an easy route, but apparently OSRM doesn't use highway=track, tracktype=grade1. They should be used as the "last mile" to a location though.

@TheMarex
Copy link
Member

The problem is actually this way, which is tagged with "access=no"

https://www.openstreetmap.org/way/24752706#map=17/51.52408/8.52170

So the routing seems actually to be correct.

@hlinden
Copy link
Author

hlinden commented Oct 14, 2014

That way wouldn't be involved in the route. Can you see the two markers? The route would actually be west from the start, following Sternlied and then one left turn south on Aschentalweg.

Here, I've marked it quickly:

http://i.imgur.com/w7AScWX.png

That route wouldn't be obstructed by access restrictions. Secondary issue is, that OSRM doesn't show any error for me, it just displays what you can see there (apart from my drawing, of course).

@DennisOSRM
Copy link
Collaborator

Is the street open to the general public or is this access=destination only?

@hlinden
Copy link
Author

hlinden commented Oct 14, 2014

The ways I've marked red are not restricted. Generally, highway=track, tracktype=grade1 in Germany means a paved one lane wide road that is open to the public but shouldn't be used to route traffic through because it is narrow, winter service is bad and they're not made for large volumes of traffic. It should be used however to reach targets that aren't reachable otherwise like the farmhouse I've selected as a target. Access restrictions if they apply are usually mapped, like here:

http://www.openstreetmap.org/way/25118084#map=18/51.53122/8.49273 or access=forestry, access=agricultural etc.

@DennisOSRM
Copy link
Collaborator

The following has been the rationale in the past: we deliberately chose not to route car traffic onto any highway=track unless it is explicitly marked as accessible by motor vehicles. This comes up every now and then and there are two schools of thought on this. As driving school teaches, highway=track is not open to the general traffic in Germany. The wiki also captures this.

Would it make sense to consider access tags, or highway=unclassified? Either would make the way routable with the next data update.

@hlinden
Copy link
Author

hlinden commented Oct 14, 2014

" As driving school teaches, highway=track is not open to the general traffic in Germany. "

That is not correct. According to the StVO, any public road is available for traffic, unless restricted. Here comes the second attributed I've mentioned in: anything <=grade2 is almost never a public road, anything ==grade1 is almost always a public road. I've dug through my survey-material-archive (quickly) and I've found this transition from grade2 to grade1 which shows the most common actual physical version of a tracktype=grade1. This is a totally normal road which any car may drive on (and does, see the Tiguan). Also note the explicit access restriction on the grade2 which I'm coming from:

https://www.youtube.com/watch?v=dNRDGVZU64E

location in OSM is here: http://www.openstreetmap.org/#map=18/51.57076/8.56158

I guess what you're thinking of, is that at driving school you learn, you're not supposed to drive into the woods. That is actually regulated in the Landesforstgesetz. It basically says, if you have no business in the forest, don't drive a motor vehicle there. This works, because the tracks in the forests aren't public roads and therefore can be regulated outside of the StVO.

"Would it make sense to consider access tags, or highway=unclassified?"

Hm. It would probably work here and there, but, because, as I've pointed out, many legally accessible roads are just tagged as highway=track, tracktype=1 and do not have a positive access tag, because the kind of road they are in the physical world already implies that kind of access.

I see it's not easy. But in my many years of geocaching and mapping, every time a paved road went into the forest or wasn't supposed to be driven on for other reasons, it was always marked with a sign "forestry only" or "agricultural only" and most times there was even a movable barrier. So, if you look at the StVO (public roads always accessable unless resctricted) and at this real world experience, it would be reasonable to allow tracktype=grade1 at least as the last mile if necessary.

@TheMarex
Copy link
Member

TheMarex commented Nov 1, 2014

To conclude: Special handling of certain specific road types for "last mile" is really not feasible in the current architecture. The road network model OSRM uses is a lot simpler, than what OSM provides. Things that can't be expressed by static penalties or accessibility information can not be reflected directly.

The profile does not consider highway=track per default as a safety measure. Even if it is technically accessible by default, most highway=track are not. A missing accessibility tag will mostly just reflect incomplete data. This is of course a heuristic, but it works in practice.
Tagging explicitly makes it clearer and you also don't need to take local laws governing this into account while routing.

@hlinden
Copy link
Author

hlinden commented Nov 1, 2014

Hm. Ok. Close this as "wontfix" then?

@TheMarex
Copy link
Member

TheMarex commented Nov 1, 2014

Yes, this is not actionable. We can re-open if we might gain more flexibility concerning the internal data model. Thanks for flagging this though!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants