abrensch / brouter

configurable OSM offline router with elevation awareness, Java + Android
MIT License
490 stars 118 forks source link

brouter can't traverse a bridge #44

Closed edrex closed 9 years ago

edrex commented 9 years ago

I've run into a way that brouter should traverse, but won't, with the fast-bike profile while trying to find a cycling route from Portland, Oregon to a trailhead in Washington State (just trying out brouter). It's causing an epic reroute through different counties.

I'm assuming it's either

Here is a simple test case with the start and end on either side of the problem way (OSM), with car-test profile:

screen shot 2015-08-26 at 2 58 41 pm

and with bike-fast profile:

screen shot 2015-08-26 at 2 59 03 pm

The bridge is one-way for car traffic and has a bike lane going the other way. Bikes going with the direction of car traffic are supposed to ride in the lane.

edrex commented 9 years ago

I tried this with @osmandapp routing and it too is unwilling to route over the bridge.

abrensch commented 9 years ago

It is highway=motorway_link, and standard "fastbike" does avoid motorways in any case.

We already noticed that this is not appropriate for all countries, and created a profile "fastbike-asia-pacific" that evaluates the access-rules in a more formal way, so if you use that, this bridge tagged as motoway_link, bicycle=yes, oneway:bicylce=no is accessible in both directions with no problem.

edrex commented 9 years ago

Thanks for explaining what's going on @abrensch, makes sense. Is fastbike-asia-pacific much slower to evaluate, or does it give undesirable results in some cases? Just wondering if it would make sense long term to try to create a single profile which works well in all countries.

abrensch commented 9 years ago

Is fastbike-asia-pacific much slower to evaluate, or does it give undesirable results in some cases?

No speed issue.

The motorway access-rule is "standard" fastbike is just a precaution.

I did not evaluate whether you have more false positiives or false negatives on motorways if you use the correct access logic from fastbike-asia-pacific e.g. in germany. However, a false-positive here is a security issue, while a false-negative is just an annoyance.

This correct access logic does not only enable bike access on motorways for bicycle=yes, but also for access=yes or vehicle=yes - this is where I think the falso positives could originate from. Should do some quality assurance before enabling that as the default.

Another difference between fastbike and fastbikle-asia-pacific is teh handling of highway=trunk. In germany, there are trunks without any formal bike access restriction that you never would consider for biking. This is why trunks are strongly avoided in "fastbike". But this is something that does not work e.g. in Japan or Australia.