organicmaps / organicmaps

🍃 Organic Maps is a free Android & iOS offline maps app for travelers, tourists, hikers, and cyclists. It uses crowd-sourced OpenStreetMap data and is developed with love by MapsWithMe (MapsMe) founders and our community. No ads, no tracking, no data collection, no crapware. Please donate to support the development!
https://organicmaps.app
Apache License 2.0
9.58k stars 918 forks source link

Ability to find routes that avoid single lane two-way roads as much as possible #8358

Open simonw opened 3 months ago

simonw commented 3 months ago

Parts of rural England such as Devon frequently have roads that are single lanes - such that two vehicles cannot pass each other - but allow traffic in both directions.

If you are driving down one of these and meet a vehicle traveling in the opposite direction one of you has to reverse until you reach a passing point.

This is very stressful! I would very much appreciate the option to avoid this kind of road where possible - I would rather add 10-15 minutes to my journey if it avoids this kind of road.

simonw commented 3 months ago

Here's a photo illustrating why these roads can be so stressful!

image

biodranik commented 3 months ago

Thanks! How are these roads mapped in OpenStreetMap.org ? How many of these roads are at taginfo?

1ec5 commented 3 months ago

Taginfo reports about 8,600 instances of oneway=alternating, though more roads may just be tagged as lanes=1.5 or lanes=1 oneway=no. In particular, I suspect many alleys and driveways would have the same obstructions implicitly.

simonw commented 3 months ago

From https://wiki.openstreetmap.org/wiki/Key:lanes

Narrow roads

There exist roads with no marked lanes, which are two-way roads but without marked lanes and so narrow, that vehicles must slow down to pass each other. This can be tagged with narrow=yes.

matkoniecz commented 3 months ago

Note that oneway=alternating is for where one becomes oneway on and off.

lanes=1 roads are where it is not guided and what exactly happens is effectively negotiated between drivers.

matkoniecz commented 3 months ago

https://taginfo.openstreetmap.org/tags/lanes=1#combinations

3 970 835 lanes=1 on highway=

2 336 981 lanes=1 with oneway=yes

That leaves about 3 970 835-2 336 981=1 633 854 cases. Though we have that silly annoying idea of implied oneway roads...

So we may need to remove 351 578 highway=motorway_link 14 667 highway=motorway (how you get single lane motorway?) 148 363 junction=roundabout

1633854-351578-14667-148363=1119246

Note that say highway=motorway_link junction=roundabout lanes=1 oneway=yes would be removed multiple times, this value should be an underestimate.


with over one million cases getting them at least some noticeable routing cost makes sense

1ec5 commented 3 months ago

how you get single lane motorway?

Rarely, a dual carriageway can be one lane in either direction:

A divided freeway with one lane in either direction

Possibly more commonly, a motorway may have one carriageway given over to HOVs as an express lane.

matkoniecz commented 3 months ago

Rarely, a dual carriageway can be one lane in either direction:

Oh definitely - though I was not aware that these could get classified as highway=motorway (this one has not got for example a proper median)