Relationen überwachen / Bus Routen / Wanderrouten

Hi,
kennt jemand ein QA tool was route relations überwacht?

Nur mal ins Brainstorming:

  • Rundwanderweg (Dann muss start und ziel identisch sein)
  • Dürfen abzweigungen mit in der relation sein (alternates)
  • Müssen abzweigungen auf die original route zurück gehen, also
    partielle alternates, oder dürfen das Stiche sein
  • Was ist die typische modalität (Fuß, Rad, Auto, Bus)
    • Darf diese modalität auf allen wegen durch?
      • Treppen auf Radwanderwegen
      • Pömpel auf Bus/Auto routen
      • access=no/private/destination auf bus routen (Ohne bus=yes)
      • Gegenläufige oneway?

Eine der fragen ist ja - Wo hinterlegt man für die Relationen welchen qualitätsansprüchen die genügen müssen? Ist ja ziemlich viel manueller aufwand das für jede Relation zu definieren.

Flo

1 Like

Hei,

meiner Meinung nach dürfte https://www.knooppuntnet.nl/en/analysis darunter fallen. Hier werden die Knotenpunktnetze in Gänze überwacht: also die Knotenpunkt-Routen selbst: z.B. auf Durchgängigkeit und Routingfähigkeit, als auch die Integrirtät des Gesamtnetzes… Änderungen, Ergänzungen oder Korrekturen sind nach wenigen Minuten sichtbar.

Sven

Ich habe angefangen eins zu schreiben, ist allerdings noch nicht ganz fertig. Momentan überwacht es routen auf diese Kriterien:

  • Reihenfolge muss 100%ig korrekt sein
  • Abzweigungen müssen korrekt gehandhabt sein: beide Wege müssen am selben Abzweigunspunkt anfangen und aufhören

Was ich noch hinzufügen werde:

  • Prüfen, ob ein Rundweg wirklich in sich geschlossen ist
  • Darf die Zielgruppe der Route alle Wege benutzen (also kein Radweg über bicycle=use_sidepath, usw.)
  • Stündlich prüfe, ob noch alle Routen i.O. sind und wenn nicht das Changeset finden, welches die Route kaputtgemacht hat und dann eine Rundmail an eine zu definierende Gruppe schicken.
  • Support für Super-super-relationen

Das ganze war eigentlich nur schnell hingefrickelt, deswegen will ich den Quellcode momentan ungern öffentlich machen. Das ist grottenhässliches 15-Minuten-PHP :laughing:
Für Hannover habe ich die Routen hardcoded, das kann man sich unter http://relana.xyz ansehen. Da ging es im ersten Schritt nur darum, alle Routen von der Reihenfolge korrekt zu haben.

2 Likes

Es ist vermutlich auch so, dass man unterschiedlich streng sein müßte mit den Kriterien.
Entscheidend bleibt, dass eine offizielle Radroute auch gemappt werden kann, wenn sie ausgeschildert ist, selbst wenn der Betreiber etwas ungünstige Vorstellungen von einer idealen Radroute hat. Es ist nicht hilfreich, wenn eine korrekt gemappte Route in einem Überprüfungstool dauerhaft als fehlerhaft markiert ist, weil man dann auftretende Mappinginkonsistenzen nicht mehr erkennen kann.
Treppen:
https://knooppuntnet.nl/de/analysis/route/12111270 (Auch die offizielle Route Pillepoppen 11211137 führt über die Treppe). (u.a.: Way: ‪Senner Hellweg‬ (‪345258297‬) | OpenStreetMap)

Radfahrverbote (“Radfahrer absteigen”+Fußwegschild): knooppuntnet (auch die offizielle Route 11138885 führt darüber). (Way: 717496256 | OpenStreetMap)
genauso: knooppuntnet mit zahlreichen ebenfalls darüber laufenden Routen. (Way: 40225448 | OpenStreetMap)

Das Mapping von Routen über den Hauptweg, auch wenn dort “use_sidepath” steht, finde ich aus praktischen Gründen nicht völlig verwerflich. Die Pflege von Routenrelationen ist sehr umständlich, wenn irgendwo neue Routen entstehen oder Straßenbaumaßnahmen durchgeführt werden, wenn man bei z.B. 6 Routen jeweils noch die ganzen Rollen mit übertragen muß, was ja entfallen kann, wenn man für beide Richtungen einen Weg verwenden kann. Natürlich könnte man ein Tool entwickeln, dass die Aufräumarbeiten z.B. in josm durchführt (oder gibt es das bereits? her damit). Ich schaffe es zeitlich gar nicht, meine Radtour-Surveys alle in osm einzuarbeiten, habe noch Aktualisierungen, die bis zu 1/2 Jahr schon auf Einarbeitung warten, da ist das Splitten von Routen auf die jeweiligen Radwege ziemlicher Luxus (zumal zusätzlich geprüft werden muß, ob das Tagging use_sidepath vollständig ist: Wo wird auf dem Einzelabschnitt gefahren? Beide Seiten? Nur eine Seite? Sind die oneway-Tags korrekt?).

Also Plädoyer: Verschiedene Stufen sollten es sein, im Sinne einer Ampel: Rot: Definitiv unvollständiges oder fehlerhaftes Tagging, Gelb: Verbesserungsfähiges Tagging, aber in sich konsistent, ggf. auch, wenn es um die Reihenfolge der Wege geht. Grün: Alles ok. (Oder Zwischenstufen).

Was knooppuntnet angeht, bin ich mir nicht ganz sicher. Die Treppen und bicycle=dismount lösen keinen Alarm aus (das ist Absicht so), das Fehlen von Bicycle und nur Vorhandensein von foot=yes oder bicycle=no lösen aber einen Fehler aus. (Damit kann man bicycle=dismount dafür nutzen, mitzuteilen, dass man zwar absteigen muß, aber durchaus eine Fahrradroute hier plausibel ist.)
Knooppuntnet hat soweit ich mich erinnere, früher mal die Reihenfolge überprüft, sortiert die Wege aber nun Selbständig, da die Reihenfolge eine Zeitlang (oder ist es immer noch so), regelmäßig zerstört wurde, sobald jemand mit Id irgendetwas in der Gegend editiert hat. Die Nachlese ist äußerst mühsam gewesen. Ich habe aber den Eindruck, das ist Vergangenheit.

Was das Knotenpunktnetzwerk angeht, habe ich @vmarc, der die Seite knooppuntnet betreibt (s.a. GitHub - vmarc/knooppuntnet: Route planner and quality assurance for walking and cycling networks in OpenStreetMap.) und z.B. @Peter_Elderson habe ich in den letzten Jahren immer wieder gute Hinweise zu den Themen bekommen.

Ich träume ja weiterhin davon, eine zum Knooppuntnet.nl analoges Tool für das reguläre Radnetzwerk in NRW, bzw. Deutschland, da es sich zunehmend alles angleicht, zu haben. Aber leider ist “das Radnetzwerk” noch eine ziemlich diffuse Entität, sowohl in der rechtlichen Umsetzung der einzelnen Länder, Praxis der Behörden als auch in der Wahrnehmung der User.

Grüße,
Sebastian

1 Like

Die Idee ist glaube ich dass man solche Ausnahmen dann explizit Mappen kann.

Es geht ja nicht darum, dass solch eine Route nicht gemappt werden kann/darf. Nur oft ist es halt ein Fehler wenn nachträglich Radwege separat eingezeichnet werden und die Straße mit use sidepath versehen, das dann der Routenverlauf noch über die Straße eingezeichnet ist und nicht über die separaten Radwege.

In meinem anfänglichen Leichtsinn hatte ich mal gehofft - und ich sehe auch, wie schwer das eigentlich umzusetzen wäre - dass “use_sidepath” aus Perspektive eines Routers bedeutet: Ok, schicke den Radfahrer hier auf den extra gemappten Radweg. Da ja use_sidepath nur verwendet werden darf, wenn der sidepath auch als extra Weg gemappt ist. Muß man das wirklich streng als Fehler sehen?

Es ist ja auch nur mein Wunsch aus Bequemlichkeit, eine Strecke nur einmal in eine Relation aufnehmen zu müssen anstatt zweimal… Wenn beide Richtungen auf einem Weg sind, ist die Sache also für mich klar: Die Route gehört natürlich auf den Radweg, aber um überhaupt schonmal eine Route zu mappen mach ich es oft erst einmal auf den Hauptweg, wenn ich es nicht genauer weiß oder es doppelt gemappt werden müßte. Zum Teil gibt es ja auch mehrere rechtlich erlaubte Möglichkeiten, die Wegweisung präzisiert dann das gemeinte. Oft weist die Wegweisung über einen expliziten Fußweg mit “Radfahrer frei”, wo man aber auch auf der Straße fahren dürfte. Streng genommen müßte man das dann auch so mappen, ist aber furchtbar umständlich.
Meine Priorität liegt dann darin, komplett fehlende Routen überhaupt erst einmal zu mappen.

Insgesamt stimme ich ja auch zu, das wäre für mich vor allem aber ein Punkt, dass das Routing über “use_sidepath” eher eine “warning” als einen kompletten Fehler abgeben könnte. Ich glaube, knooppuntnet ignoriert es.

Grüße,
Sebastian

Darüber kann man sicher streiten, denn der Auswerter weiß nicht, warum die Route über einen Weg geht, über den er nicht gehen sollte. Aber grundsätzlich ist für mich ein solcher Fehler weitaus weniger gravierend als ein Loch in der Relation, weswegen ich diese Implementierung auch erstmal vertagt habe. Anders sieht es natürlich mit bicycle=no, oder Pollern auf Bus-Routen aus :wink:

2 Likes