"Turn restrictions" zijn leuk!

Je verwart alleen expliciet beborde “turn restrictions” aangeven’ met alle expliciet beborde “turn restrictions” aangeven’. In het tweede geval zou dat afgaande op jouw percentage nog altijd zo’n 50% opleveren en niet niets… In het eerste geval levert het in principe 100% op. Dat eerste geval is wat de Wiki aangeeft en wat de reageerders hier aangeven.

Jij komt echter aandragen dat er situaties zijn zonder expliciete bebording waar toch “turn restrictions” gewenst zijn (en er dus zo bezien geen 100% score is).
Daar zie ik verwarring ontstaan omtrent “ongewenste routing instructies”.
Want wat wil je?

A. Wil je niet-verboden maar volgens jouw inschatting ongewenste of gevaarlijke verkeersbewegingen voorkomen?
B. Wil je verboden maar niet expliciet met bebording aangegeven verkeersbewegingen voorkomen?
C. Wil je technische tekortkomingen van routers oplossen via de OSM-database?
D. Wil je technische beperkingen van routers oplossen via de OSM-database?

Ik lees in reacties vrees voor A. In jouw schrijven zie ik geen bevestiging noch ontkenning.
Ik lees ook vrees voor C, een vorm van ‘taggen voor de router’: als mapper onjuiste routering willen voorkomen waar de router dat zou moeten oplossen.

Graag lees ik het van je maar ik zou denken dat je meer zoiets als B en D bedoelt.
Wat betreft B: zie de reacties van Allroads. Dit is van toepassing op het voorbeeld in je openingspost.
Die verkeersregels kan de router niet kennen. In theorie zou de router het kunnen afleiden indien de turn:lanes-tags allemaal correct zijn toegevoegd.

En dan kom ik bij D: er kunnen situaties zijn waarbij de data in de OSM-database in principe correct en compleet is, waarbij er onjuiste routering optreedt en waarbij het vanwege technische beperkingen niet realistisch is om van routers een oplossing te verwachten.
Hierbij zou ik niet te snel conclusies willen trekken voor of tegen, en bij voorkeur de mening vragen van mensen die ervaring hebben met het schrijven van routeringssoftware.

Nee, het is niet de taak van de OSM-gemeenschap om de output van rendering en routing op orde te brengen.
Ja, het is wel de taak van de OSM-gemeenschap om de OSM-data bruikbaar te maken en te houden.

Ik denk niet dat dit onder “taggen voor de router” valt. Bij “taggen voor de rendering” worden er bewust foutieve of op zijn minst discutabele tags gebruikt, daar is bij het toevoegen van turn restrictions zo als ik doe op deze kruispunten in Haarlem geen sprake van.

Het zou pas “taggen voor de router” worden als ik turn restrictions zou gebruiken om een 800 km lange route naar mijn vakantieadres in Frankrijk geheel van “Alleen rechtdoor” beperkingen te voorzien voor alle honderden kruispunten waar ik overheen moest in een poging om voor de router mijn favoriete touristische route te forceren… :wink:

Volledig met je eens dat de weggebruiker geen robot is, maar misschien vindt ik juist *daarom * het verstandig dat er wel in deze situatie turn restrictions worden toegevoegd. De veiligheid van het verkeer staat of valt met het vermogen van ons als mensen om tijdig op verkeerssituaties te kunnen anticiperen. Alles dat je - al is het maar een fractie van een seconde - afleidt, kan potentieel tot een ongeluk leiden. Een router die een onverwachte instructie geeft om op een groot druk kruispunt “om te keren” waar het redelijkerwijs niet kan, kan precies zo’n aan een ongeluk bijdragende factor zijn, doordat de bestuurder even heel kortstondig in de war raakt en afgeleid is.

Hier in Haarlem heb ik, vlak na een ingrijpende wijziging bij het station waar een weg voor automobilisten werd afgesloten en alleen fietsers nog door mochten, maandenlang automobilisten in verwarring gezien, waarbij er één zelfs doodleuk de fietstunnel inreedt. Als we dat soort toestanden en een potentieel dodelijk ongeluk kunnen voorkomen met wat turn restrictions, dan is dat voor mij persoonlijk een uitgemaakte zaak (overigens: in dit specifieke geval van die fietstunnel in Haarlem spelen turn restrictions juist geen enkele rol, de juist highway=x tags regelen het al af, en ik heb hier dan ook zeer zeker géén turn restrictions aangebracht).

Dank voor de heldere analyse Andries! Maar ik reken mijn werk toch vooral onder D, en niet onder A.

Wat “in principe correct en compleet is”, valt voor een wegenbestand als OSM nauwelijks te bepalen en is grotendeels subjectief, want het hangt van je gebruiksdoel af. Als je alleen maar een kaartje wilt met lijnen waar wegen zijn, hebben we zelf niet eens de volledige highway=x tag nodig met al zijn onderliggende wegtypes, classificeer alles maar als highway=road en voilà we hebben een kaart!

Over techische beperkingen: Ik heb zelf jarenlang professioneel in de GIS (Geografische Informatie Systemen) branche als ontwikkelaar rondgelopen, en weet hoe complex het werken met sommige (wegen)bestanden is. Ik ben zelf altijd een groot voorstander van het in de IT wereld welbekende KISS (Keep It Simple Stupid) principe geweest. Verwachten, zoals in de onderstaande OSM Wiki quote staat, dat alle routing engines maar even de wegen- en verkeerswetten van alle 190+ landen op deze aardbol op een of andere magische wijze via b.v. AI “uit hun hoofd leren”, en daarmee volautomatisch in al die landen de juiste beslissingen zullen nemen, is in mijn ogen een volstrekte utopie…

“Turn restrictions” zijn een KISS oplossing voor de problemen met routing. Ze zijn eenvoudig te implementeren in software, niet moeilijk voor gebruikers om mee te leren werken, en lossen potentiële problemen met routing eenduidig en niet ambigue op. Waarom zouden we ze dan niet willen gebruiken in deze situaties?

Het feit dat een inmiddels groot bedrijf als Mapbox, met zijn honderden van over de hele wereld geplukte talentvolle ontwikkelaars, ook voor turn restrictions hebben gekozen als de enige logische KISS oplossing voor deze problemen (zie b.v. deze blog https://labs.mapbox.com/mapping/adding-turn-restrictions/)), zegt genoeg… Als zij als grote organisatie al geen andere redelijke oplossing zien of realisterischerwijs denken te kunnen implementeren, wie dan wel op deze aardbol???

Quote van de Wiki pagina van turn restrictions:
“Don’t map turn restrictions that are the default for a given jurisdiction and are not signed. It is much better to ensure that routing engines embody the regional rule rather than mapping every occurrence as a turn restriction. This applies particularly to unsigned U-turns in Brazil, where using turn restrictions will require hundreds or thousands of restrictions and micro-segmentation of all roads which in turn make editing data hard.”

Andries: wij hebben überhaupt geen taak als OSM-gemeenschap… OSM is een *vrijwilligersproject * wat voor het grootste deel draait op het principe van “vrijheid/blijheid” waarbij het iedereen is toegestaan om zijn eigen weg te volgen. Hooguit is het prettig / gewenst dat we ons aan bepaalde wel of niet geschreven regels houden. Het maakt je leven als OSMer in ieder geval een stuk makkelijker als je dat doet, want ik denk dat niemand het prettig vindt om continue al zijn wijzigingen gerevert te zien worden. OSM functioneert bij de gratie van kuddegedrag (en ik heb geen mening of dat goed of slecht is, het is wat het is wat mij betreft).

Tot slot: het aantal (technisch) benodigde turn restricties is echt relatief beperkt. Voor zover ik het nu kan zien, heb ik in een middelgrote stad als Haarlem, slechts enkele tientallen turn restricties nodig om de boel af te dekken. Dat is volstrekt te overzien, en staat in geen verhouding tot alle andere enorme efforts van onze NL OSM leden om b.v. alle Nederlandse wandel-, fiets-, bus- en treinroutes in te voeren en bij te houden in OSM. Ik zie dan ook persoonlijk geen enkel bezwaar om deze toe te voegen. Het staat verder natuurlijk iedereen vrij om zijn eigen beslissingen te nemen op dit vlak.

Denk je niet dat wanneer je OSM aanpast om de technische beperkingen van de routers op te lossen (D), aan het taggen bent voor de router?

Nee, zie mijn reacties in de vorige post. Het staat je vrij om een andere mening te hebben, maar ik denk dat ik mijn persoonlijke zienswijze duidelijk genoeg heb gemaakt, ik weet er in ieder geval niets aan toe te voegen.

Je bedoelt dit?

(Met een smiley, maar wat je daarmee bedoelt?)

Nee, dat is niet taggen voor de router, dat is vandalisme.

Taggen voor de router/renderer is het aanbrengen van aanpassingen in OSM die er in werkelijkheid niet zijn, om de beperkingen van de renderer/router te verhelpen.
Taggen voor de router is b.v. een weg die nieuw asfalt krijgt op construction zetten i.p.v. er een conditional access=no op te zetten.

Ik vind het prima dat jij op onoverzichtelijke kruisingen gebruik gaat maken van turn-restricties, maar dat is gewoon taggen voor de router.

Wat is werkelijkheid? Dat is iets hoogst subjectiefs als het gaat om de vertaling van wat wij in de buitenlucht zien liggen naar een data-model. Ik zie het meer als het aanvullen van ontbrekende stukken in het data-model en het geven van hints aan de router.

Dat laatste, geven van hints, doen we eigenlijk al continue. Als jij een tracktype=x or surface=x zet op een wegelement, of een mbt:scale=x, ben je feitelijk ook subjectieve hints aan de router aan het geven, omdat je daarmee vaak wilt zeggen “hier niet komen met dit of dat type vervoersmiddel”. Ook in die gevallen is er vaak in de buitenlucht geen bord te zien die deze “werkelijkheid” wettelijk zou moeten bestendigen. Wijs mij de borden met tracktype of mbt:scale maar aan… ze zijn er niet!

Ik hoor werkelijkheid niemand daarover klagen, terwijl turn restrictions er nauwelijks van te onderscheiden zijn als het gaat om het effect. Iedereen vindt het vanzelfsprekend dat we aangeven dat je een four-wheel drive nodig hebt om een bepaald pad te volgen, maar een onmogelijke u-turn mag niet gezet?..

Weet niet of ik dat zou doen, speelt hier in ieder geval geen rol. En wanneer iets nu als “construction” moet worden beschouwd, is ook best vaag, maar tot zover…

Dat staat je vrij om te vinden, iedereen mag zijn mening hebben over dit.

Ik vind dit persoonlijk een drogargument: een afslagrestrictie is een wettig door borden aangegeven verbod en zo objectief als het maar zijn kan.

Een tracktype is inderdaad min of meer subjectief (zelfs het weer speelt een rol) en zegt dus ook niets over een (wettig) verbod. Als ik met mijn racefiets over een tracktype=5 wil, dan mag dat; of het slim is, is een andere vraag. Maar als ik dat als masochist wil, dan mag dat.

Het aanbrengen van een afslagrestrictie impliceert een verbod dat er in jouw voorbeeld niet is. Onhandig, ongewenst of gevaarlijk mag je niet middels een expliciet verbod afdwingen. Dat is aan de wegbeheerder.

De te volgen stappen zijn: jij meldt aan de wegbeheerder dat naar jouw mening een afslagverbod ontbreekt en vraagt dat de wegbeheerder aan te brengen. Nadat de wegbeheerder dat gedaan heeft (onder de voorwaarde dat die het met jou eens is) kun je de turnrestrictie aanbrengen in OSM.

Ik ben van mening dat als het over duidelijk is dat een bepaalde afslag niet genomen dient te worden, ook als is het misschien niet aangegeven met borden of belijning, dat een turn_restriction geen taggen voor de router is. Je geeft immers de bedoeling van de situatie weer?

Dan kun je ook stellen dat het taggen van de maxspeeds op snelwegen taggen voor de router is, aangezien daar een maximum snelheid van 130 km/uur geldt, met overdag de uitzondering van 100 km/uur (zo is het bebord). Maar we hebben er voor gekozen om het andersom te taggen, omdat er routers zijn die de conditional tags niet goed overnemen.

Kun jij mij een voorbeeld geven waar het wettelijk is toegestaan om af te slaan, maar toch overduidelijk is dat dit niet de bedoeling is (en even in het achterhoofd houden wat Martin gezegd heeft in de laatste alinea van zijn laatste bijdrage).

Hier is wettelijk gezien een U-bocht toegestaan, maar door de krappe draaicirkel onmogelijk: https://www.google.nl/maps/@52.7177724,6.517823,3a,75y,205.04h,73.61t/data=!3m7!1e1!3m5!1svwrvfERXgC9JN6yiQBqS6w!2e0!6s%2F%2Fgeo1.ggpht.com%2Fcbk%3Fpanoid%3DvwrvfERXgC9JN6yiQBqS6w%26output%3Dthumbnail%26cb_client%3Dmaps_sv.tactile.gps%26thumb%3D2%26w%3D203%26h%3D100%26yaw%3D53.255486%26pitch%3D0%26thumbfov%3D100!7i13312!8i6656
Los van het feit dat je dan ook nog verkeer kunt treffen waarbij het verkeerslicht ook op groen staat.
Natuurlijk, men moet zelf inschatten of je ergens in kunt rijden, maar het is toch niet verkeerd door extra info mee te geven dat iets niet de bedoeling is?

Mijn autootje kan die u-bocht echt wel halen hoor.
Overigens is de u-bocht daar wettelijk verboden door de voorsorteervakken met pijlen op het wegdek.
De bestuurder is verplicht die pijlen te volgen en dus links af te slaan.

Maar veel belangrijker is, dat er geen één navigatie is die daar een route neerlegt die de u-bocht in zich heeft.

Zo een u-bocht is voor de bestuurder alleen wenselijk als hij van de oorspronkelijke route afwijkt.
En dan wordt die u-bocht ook nog eens niet opgedragen.
Een zachte vrouwenstem vraagt dan vriendelijk “keer om alstublieft” (daar waar dat mogelijk is).
En dat kan ook door 2x te steken als je de bocht niet haalt.

Ergo, ook op deze locatie is een turn-restriction volkomen overbodig.

Een pad bij mij in de buurt was duidelijk ‘bedoeld’ als wandelpad. Totdat de kruising met de weg werd aangepast waarbij het pad voorrang kreeg en er haaietanden werden geplaatst met aan weerszijden een bord dat waarschuwt voor overstekende … fietsers.

Staat dat niet gelijk aan een turn restriction?

Een pad mag gewoon gebruikt worden door fietsers.

Ging om situaties die wettelijk juist niet verboden waren.

Dus zou ik hier ook niet terug mogen rijden? https://www.openstreetmap.org/way/521535858#map=19/52.72625/6.49136&layers=N
Geen mens die zich daaraan houd…

Artikel 78 lid 1:
“Bestuurders die de rijbaan volgen zijn verplicht op een kruispunt de richting te volgen die de voorsorteerstrook waarop zij zich bevinden aangeeft.”

Naar de letter van de wet is omkeren hier dus verboden.
Dat geen mens zich daar aan houdt, verandert daar niets aan.

En wij behoeven daar dus ook niet 4 turnrestrictions toe te voegen.

Ik was ook niet van plan om daar een turn restrictie toe te voegen, maar ik kan me wel vinden om het in sommige situaties wel te doen. Dat het wellicht taggen voor de router is, het zij zo, dat doen we nu ook al op de snelweg…

Ik neem aan dat je er gedoeld wordt op de twee pijlen op het kruisingsvlak? Is dat een voorsorteerstrook zoals bedoeld wordt bij artikel 78?
Ik zou het iig niet in de geest van de wet vinden.

Dat geldt in het geval dat de voorsorteerstroken op OSM staan aangegeven.

Maar een kruising in OSM bestaat uit twee kruisende ways, als er nu 2 banen paralel lopen, zou je met 2 keer links kunnen keren, terwijl dat in het geval van de voorsorteerstroken niet is toegestaan. Hoe moet een router dit dan weten?
Volgens sommigen zou hier geen turn-restrictie hoeven te staan omdat een router hier niet zou keren: https://www.openstreetmap.org/directions?engine=fossgis_osrm_car&route=52.71822%2C6.51861%3B52.71817%2C6.51871#map=19/52.71792/6.51800&layers=N Maar hij plant keurig een u-bocht…

Dat is het gevolg van een foute invoer. Dan volgt ook onverbiddelijk een foute uitvoer, in dit geval een route met een u-turn.

De foute invoer wordt in een goed ontwikkeld systeem afgevangen met een foutmelding.
Bijvoorbeeld “bestemming bevindt zich te dicht bij vertrekpunt, kan geen route berekenen.”
of “bestemming bevindt zich op dezelfde weg als vertrekpunt, kan geen route berekenen”

De routers die we vaak tegenkomen zijn niet zo ver ontwikkeld dat ze die invoer controleren en afvangen.
Wat we ook zien is dat de ene router wel kan omgaan met de turn-restrictions en dat een andere router dat niet kan en dus een onjuiste route berekent.

Maar dat heeft niets meer te maken met het onderwerp.
Ergo: turn-restrictions toepassen waar dat noodzakelijk is of opgedragen wordt door verkeersborden en elders niet.