Dienstag, 22. Juni 2010

Der Post-Box Guesstimator: Wo fehlen Briefkästen bei Openstreetmap?

Die Qualität von Openstreetmap-Daten wird immer besser und erreicht in manchen Ballungsräumen ein geradezu atemberaubendes Niveau. Dazu trägt nicht nur ein seit Jahren anhaltendes rasantes Userwachstum bei sondern auch eine Vielzahl neuer und neuartiger Werkzeuge, die dem User beim Kartographieren helfen. Eine Herausforderung stellt das Auffinden von Lücken in den Daten dar - gerade in gut erfaßten Ballungsgebieten und wenn keine entsprechenden Datenspenden zur Verfügung stehen. Hier können spielerische Ansätze weiterhelfen, und einen solchen möchte ich bei der Suche nach Briefkästen vorstellen. Letztere werden zwar seit Jahren bei Openstreetmap erfasst, aber dennoch fehlen selbst in gut kartographierten Gebieten immer noch vereinzelt Briefkästen. Daneben wurden Briefkastenpositionen bisher nicht von der Deutschen Post gespendet.

Der Gesetzgeber hilft.

Bei der Suche kommt Hilfe von unerwarteter Seite: In §2 Absatz 2 der Post-Universaldienstleistungsverordnung (PUDLV) schreibt der Gesetzgeber vor:

"Briefkästen müssen so ausreichend vorhanden sein, dass die Kunden in zusammenhängend bebauten Wohngebieten in der Regel nicht mehr als 1.000 Meter zurückzulegen haben, um zu einem Briefkasten zu gelangen."

Das können wir uns zu Nutze machen: Um jeden Briefkasten, der bisher bei Openstreetmap eingetragen ist, zeichnen wir einen Kreis mit Radius 1000 Meter. Wohngebiete, die nicht innerhalb eines solchen Kreises liegen, werden wohl von einem Briefkasten "bedient", der noch nicht bei Openstreetmap eingetragen ist. Dort kann man dann gezielt nach dem Briefkasten suchen und diesen für OSM erfassen.

Natürlich liefert dieser Ansatz nur einen Hinweis auf Gebiete, wo noch Briefkästen in den OSM-Daten fehlen. Strenggenommen wird z.B. das Gebiet, das ein Briefkasten "versorgt", kleiner sein als ein Kreis mit 1000 Meter Radius, da die Bürgerinnen und Bürger selten in Luftlinie von ihrer Wohnungstür zu ihrem Briefkasten gelangen können. Eigentlich müssten wir also eine Erreichbarkeitsanalyse in der Metrik der Straßen und Wege durchführen, doch gute Hinweise liefert schon der zwar etwas zu großzügige aber deutlich einfachere Ansatz mit den Kreisen. Letzterer lässt sich auch sehr einfach mit wenig Programmierarbeit umsetzen und kann im Prinzip von jedem mit seinem eigenen Privat-PC genutzt werden. Für diejenigen, die es nicht erwarten können, gibt es am Ende diese Beitrags die Dateien zum Download. :-)

Fehlende Briefkästen - Beispiel Bonn.

In Bonn und Umgebung zählt die OSM-Datenbank (Stand: 21 Juni 2010) 199 Objekte, die Briefkästen und Postämtern entsprechen. Wir gehen davon aus, dass Postämter öffentlich zugängliche Briefkästen besitzen. Daneben sind 9 Objekte eingetragen, die das Tag "vending=parcel_pickup;parcel_mail_in" tragen, welches typischerweise für Packstationen verwendet wird. In der unteren Abbildung sind die Versorgungsgebiete (Kreise mit Radius 1000 Meter) von Briefkästen und Postämter in orange und die von Packstationen in gelb dargestellt. Wer Lust hat, kann sich auch selbst auf dieser Webseite (nicht für Internet Explorer geeignet) für Bonn einen Überblick verschaffen. Auf den ersten Blick lässt sich sehr gut erkennen, dass die meisten Wohngebiete gut mit Briefkästen versorgt sind. Manche, aber nicht alle Lücken in den Kreisüberdeckungen im Bonner Stadtgebiet beruhen auf der Tatsache, dass es Waldgebiete innerhalb der Stadtgrenzen gibt (z.B. den Kottenforst), die natürlich nicht mit Briefkästen versorgt werden müssen.



Interessanter Weise sind auch in bebauten Wohngebieten deutliche Lücken erkennbar: Im Bonner Nordosten, in Geislar, Villich-Mülldorf, Neu-Villich, im Bonner Südosten in Ramersdorf und Oberkassel werden noch Briefkästen existieren, die bisher nicht bei Openstreetmap erfaßt worden sind.



Lücken tun sich aber auch auf in Röttgen, Ückesdorf und sogar im ansonsten sehr gut kartographierten Tannenbusch.





Das Packstation-Dilemma.

Während das Tagging-Schema für Briefkästen bei Openstreetmap gut etabliert ist, sieht die Situation bei Packstationen anders aus. Manche Packstationstypen (sog. 24/7 Stationen) weisen Briefkästen auf, manche jedoch nicht, und bisher existiert noch kein einheitliches Tagging-Schema, mit dem wir diese Typen unterscheiden könnten. Insbesondere tragen die entsprechenden Knoten, die Packstationen mit Briefkästen repräsentieren sollen, typischerweise kein post_box Tag. Wir behelfen uns hier, indem wir alle Packstationen des Gebiets, das uns interessiert, visualisieren (gelbe Kreise), und müssen dann bei der Suche nach noch nicht erfaßten Briefkästen im Einzelfall prüfen, ob die Packstation auch einen Briefkasten besitzt oder nicht.

Fehlende Briefkästen finden: Der "Post-Box Guesstimator".

Die hier vorgeschlagene Visualisierung lässt sich im Prinzip auf verschiedene Arten und Weisen realisieren. Eine elegante Lösung würde sicherlich den Aufbau und Betrieb einer Serverinfrastruktur und entsprechender OSM-Datenbank beinhalten, mithilfe derer eine Webseite realisiert werden kann, die zentral für ganz Deutschland alle in OSM vorhandenen Briefkästen mit Kreisen visualisiert. Leider verfüge ich weder über Zeit noch Resourcen, um so ein Projekt zu anzuschieben, aber vielleicht gibt es ja andere engagierte User? :-)

Stattdessen möchte ich hier einen sehr einfachen Weg vorstellen, mit dem jeder interessierte User, der die Skriptsprache Python installiert hat, sich selbst diese Visualisierung für sein Gebiet erzeugen kann. Die Grundidee: Über ein Python-Skript werden vom User die aktuell in OSM vorhandenen Briefkästenpositionen einer Region herunterladen und gespeichert. Die Visualisierung erfolgt dann über eine HTML-Datei, die sich lokal auf dem Rechner des Users befindet und dort im Webbrowser aufgerufen werden kann. Das war's schon. Die "Software", die ich auf den nicht ganz ernstzunehmenden Namen "Post-Box Guesstimator" getauft habe, kann hier (Download) heruntergeladen werden. Nach dem Entpacken befindet sich im Hauptverzeichnis neben dem eigentlichen Skript die Datei LIESMICH, die eine Kurzanleitung enthält. Eine Anmerkung: Die Visualisierung funktioniert bisher nicht mit dem Internet Explorer. Firefox und Opera habe ich erfolgreich getestet. Ein Online-Beispiel für Bonn gibt es hier.

Support

Ich werde leider keinen Support leisten können. Da ich wenig Erfahrung in Javascript-Programmierung habe, können noch Fehler im Code vorhanden sein. Insbesondere funktioniert die Visualisierung im Internet Explorer bisher nicht. Verbesserungen des Source-Codes sind daher herzlich willkommen (hier kannst Du mit mir Kontakt aufnehmen)! Daneben freue ich mich auch darüber, wenn User sich vom Code zu eigenen Lösungen anregen lassen, oder wenn engagierte User eine weiter oben vorgeschlagene Lösung in Form einer zentralen Webseite realisieren.

Updates

An dieser Stelle möchte ich über Hinweise oder Anmerkungen berichten, die mich nach dem Verfassen dieses Beitrags erreichen.

Update 1: Da nicht alle den Link im Text gefunden haben: Hier gibt es ein Online Beispiel für den Post-Box Guesstimator für Bonn.

Update 2: Peter Körner hat inzwischen den Code adaptiert und auf der Mailingliste talk-de von der weltweiten Online-Version des Post-Box Guesstimator berichtet. Vielen Dank! :-) Einfach aufrufen, Ausschnitt wählen, auf Permalink klicken und das Laden der Daten abwarten.

Update 3: (21.05.2014) Nach bald vier Jahren erfreut sich dieser Post immer noch großer Beliebtheit. :-) Nachdem die oben genannten Versionen des Post-Box Guesstimators nicht mehr abrufbar sind, gibt es unter folgendem Link eine funktionstüchtige Fassung von Thomas (User T-i).

Kommentare:

  1. Hi,
    bei Openroute-Service gibt es doch die Erreichbarkeitsanalyse. Hiermit sollte es doch besser gehen als mit den Kreisen. Bis jetzt geht allerdings nur minimal eine Minute mit dem Auto, was in zu großen Gebieten resultiert und Probleme bei Einbahnstraßen macht. Aber mit kleinen Anpassungen sollte es doch gehen.
    viele Grüße
    Thomas

    AntwortenLöschen
  2. Ich kenne den Openroute-Service, und natürlich kann man das irgendwie hinbekommen. :-) Nur kann ich das aufgrund meines begrenzten Zeitkontigents nicht leisten.

    AntwortenLöschen
  3. Etwas ähnliches hatte Jan schon mal gebaut:
    http://www.tappenbeck.net/osm/poi_maps/index.php?id=6

    Auch wenn deins für diesen Zweck natürlich deutlich besser ist :)

    AntwortenLöschen
  4. hi !

    die karte wird von mir derzeit nicht weitergeführt da es die post- und telefonkarte gibt und ich noch am "renovieren" bin.

    darüberhinaus wäre die idee, ob man die kreise nicht auch gleich auf einem gesonderten layer in der p&t-karte einbauen kann. die daten sind doch vorhanden.

    gruß Jan :-)

    AntwortenLöschen
  5. Gibt es so ein Gesetz nicht auch mit Bezug auf öffentliche Telefone?
    Könnte man hier auch ansetzen?

    AntwortenLöschen
  6. @BBO: So ein Gesetz ist mir zumindest nicht bekannt. Es würde mich aber wundern, wenn es sowas gäbe, denn Mobilfunktelefone sind inzwischen sehr verbreitet. Vielleicht wissen andere hier mehr? :-)

    AntwortenLöschen
  7. Der letzte Kommentar ist zwar schon über ein Jahr her, aber vielleicht guck ja hier doch noch jemand...

    Ich habe den Eindruck, dass das ganze sehr ungenau ist, wenn ich z.B. Röttgen in GoogleMaps nach messe komme ich auf 1.3km statt auf 1000m.
    Ist das ein Google Maps Fehler oder liegts an OpenLayers?

    AntwortenLöschen
  8. Ich bekomme leider auf http://toolserver.org/~mazder/pboxguesstimator/?zoom=13&lat=50.93912&lon=6.95936&layers=BTT keine tiles angezeigt. Folgender Fehler steht im Log:

    Uncaught TypeError: undefined is not a function toolserver.org:85
    init toolserver.org:85
    onload toolserver.org:141

    AntwortenLöschen
  9. funktioniert nicht mehr

    AntwortenLöschen
    Antworten
    1. Stimmt. :-o Allerdings gibt es unter folgendem Link eine bis heute funktionierende Variante:

      https://toolserver.org/~ti/distance-o-meter/#

      Löschen