Openrouteservice erlaubt abbiegen, obwohl in OSM verboten

Wie kommst Du da drauf?

Hallo,

Es gibt keine offizielle Routingengine von OpenStreetMap, es gibt nur mehrere verschiedene Produkte von Drittanbietern für verschiedene Plattformen (Linux-Server, Android-Geräte, iOS, Windows, …). Das ist bei Software für das Kartenrendering und Kartenstilen genauso. OSRM ist die Abkürzung von Open Source Routing Machine. Der FOSSGIS e.V., dem openstreetmap.de gehört, betreibt jedoch Server, auf denen OSRM läuft, weil es sonst niemand mehr gibt, der einen solchen Demo-Server betreibt.

OSRM kennt nur Betriebsmodi, in denen Abbiegebeschränkungen unterstützt werden (wobei ich mir nicht 100%ig sicher bin, ob man das bei einem Routingprofil abschalten kann). GraphHopper kennt Modi mit und ohne Unterstützung von Abbiegebeschränkungen. Bis ca. Version 0.11 konnte man zwischen einem schnellen Modus ohne Abbiegebeschränkungen und einem langsamen mit Abbiegebeschränkungen wählen. Letzeres ist ressourcenhungrig, weshalb es sich nicht für das kostenlose Schnupperangebot, das die GraphHopper GmbH der OSM Foundation für ihre Website openstreetmap.org bereitstellt, eignet.

Openrouteservice basiert auf einer älteren GraphHopper-Version, für die die oben angegebene eingeschränkte Modiwahl noch gelten dürfte.

Die Unterstützung von Abbiegebeschränkungen bringt einen höheren Rechenaufwand mit sich. Entweder am Anfang beim Erzeugen des Graphen aus den OSM-Rohdaten oder später zur Laufzeit bei jeder einzelnen Abfrage. Die Unterstützung von Abbiegebeschränkungen mit Wegen als via-Mitglieder (der seltenere Fall) ist aufwendiger zu implementieren als die Unterstützung von Abbiegebeschränkungen, die nur einen via-Node haben. OSRM kann seit einiger Zeit beides. Die anderen unterstützen u.U. nur Nodes. Mir fällt auf Anhieb kaum ein Beispiel ein, wo man wirklich einen via-Node braucht.

Radfahrer haben im Alltag seltener Abbiegeverbote oder ignorieren sie einfach. Es ist daher nicht verwunderlich, wenn die Fahrradprofile sich daher diesen Aufwand der Verarbeitung sparen.

Viele Grüße

Michael

Vielen Dank für die Erklärung.
Dass OSRM beim Fahrradprofil die Einschränkungen ignoriert, kann ich aus deiner Erklärung zwar verstehen, aber in der Realität kenne ich kaum eine Straße, wo das Abbiegen für Autos verboten, aber für Fahrräder erlaubt ist (außer bei Einbahnstraßen, die von Fahrrädern in beiden Richtungen befahren werden dürfen). Und dafür gibt es die Ausnahmen. An der von mir angegebenen Stelle wäre es lebensgefährlich.
Bringt es etwas, das an die OSRM-Liste zu schicken? OSRM-talk Info Page

Ganz aktuelle Diskussion zu so einem Fall: https://www.openstreetmap.org/changeset/86188722. Man beachte das dort verlinkte Foto.

Abbiegeverbote, die sich daraus ergeben, dass der Abbiegevorgang entgegen der Fahrtrichtung in eine Einbahnstraße führt, werden in OSM im Regelfall nicht als Abbiegeverbote modelliert. Da tut das oneway=* bzw. oneway:bicycle=* an der Straße seinen Zweck.

Nein, es bringt höchstens was, wenn du einen Pull-Request einreichst, da OSRM nur noch mit minimalem Aufwand gepflegt wird.

:frowning:
Danke für die Antwort. Da auch OsmAnd noch nicht in allen Fällen korrekt routet werde ich es zumindest dort versuchen.
Gibt es denn im Browser eine andere funktionierende und gewartete Navigation auf Basis der OSM-Daten?

Gibt es eine Möglichkeit zu mappen, dass Fußgängern das Überqueren der Straße verboten ist? Ich weiß nur, dass ich taggen kann, dass Fußgänger eine Straße nicht benutzen dürfen, aber überqueren? Auch Google Maps schickt die Fußgänger korrekt durch den Tunnel. Laut StVO ist es bei viel befahrenen Straßen nur an Fußgängerüberwegen etc. erlaubt, eine Straße zu überqueren. Da der zumutbare Umweg von den örtlichen Verhältnissen abhängt, ist es einem Router wohl unmöglich, das zu entscheiden. Wie machen das Mapfaktor und Google Maps an dieser Stelle?.