OpenStreetMap

Wall·E: Die ersten 3000 Fehler

Posted by Wall·E on 25 January 2013 in German (Deutsch)

Laut hdyc - hat Wall-E gestern die Marke von 3000 angefaßten Objekten durchbrochen (damit wird er freilich noch als "Casual Mapper" geführt, und der verwendete Editor fristet ein unwürdiges Dasein als "unknown"). Anläßlich dieses kleinen Jubiläums möchte ich mal ein Zwischenfazit ziehen und einen Überblick über das bisher geschehene geben.

Zunächst vielen Dank für den Zuspruch und die freundlichen Worte, die in diesem und den anderen Fäden geäußert wurden und auf die ich nicht jedes Mal einzeln antworten wollte, die ich aber in jedem Fall zu schätzen weiß. Ferner auch danke für die Geduld angesichts der diversen Fäden mit zum Teil langatmigen Erklärungen, mit denen ich das Forum geflutet habe. Und besonderen Dank noch einmal an Henning (aighes) für die technische Unterstützung in der Anfangsphase.

Mittlerweile gibt es zwei Korrekturprozesse: einer korrigiert die Namen von Straßen (Wege mit diversen Werten von highway), der andere kümmert sich um Adresstags. Ersterer ist hinreichend getestet und kann ohne allzu enge Überwachung laufen (im Prinzip als cronjob, wenn ich eine entsprechende Heimat für das Programm hätte); letzterer befindet sich noch in der Erprobung und wird sukzessive um weitere Teilaufgaben ergänzt. Diese Erprobung wird sicher noch einige Wochen dauern, u.a. weil der Bot bei der Korrektur mancher Fehler mit Nutzern des housenumbervalidator "konkurriert" (den ich an dieser Stelle übrigens ausdrücklich empfehlen möchte; insbesondere die Duplikatprüfung von Adressen bietet kein anderes mir bekanntes Werkzeug).

Wall-E hat nun also (alle Zahlen laut hdyc) 3049 Objekte angefaßt und ist in 2812 Fällen (gut 92%) noch letzter Bearbeiter. Die meisten Korrekturen bezogen sich auf Adresstags (76 %), eine Minderheit (24 %) auf die Namen von Straßen selbst (Zahlen etwas verzerrt: nur Objekte als letzter Bearbeiter). 8% der Objekte wurden anschließend wieder bearbeitet, davon aber nur ein eher kleiner Anteil im Zuge normalen Mappings. In den meisten Fällen habe ich selbst, gelegentlich auch andere, noch weitere Fehler korrigiert, die der Bot nicht erkannt und demzufolge nicht behoben hat (typischer Fall: addr:street="Karl Ranseier Strasse 28" wird zu "Karl Ranseier Straße 28" korrigiert; es fehlen aber immer noch die Bindestriche und die 28 gehört natürlich in addr:housenumber - auf die Zahl im geänderten addr:street-Tag reagiert der Bot mit einer Warnung im Protokoll). Ferner wurde (abgesehen von einem versehentlichen Revert, der inzwischen geklärt wurde) lediglich genau ein Straßenname auf die vorige Schreibweise zurückgesetzt (die mittlerweile hinlänglich bekannte Matthias-Joseph-Mehs-Strasse aus der rheinland-pfälzischen Straßenliste).

Bisher ist mir bei der Durchsicht der Protokolle und Änderungssätze nur ein einziger Fall untergekommen, wo eine falsche Korrektur vorgenommen wurde: ein versehentlich eingefügtes Leerzeichen führte zur Korrektur von "Str aße" zu "Straße aße" (dieser in der Planung nicht bedachte Sonderfall wird inzwischen erkannt und unterbunden). Dies ist im Grunde die positive Erkenntnis des bisherigen Betriebs: das Programm hat noch etliche Macken, insbesondere was den Umgang mit Fehlern angeht (Verbindungsabbruch, Erzeugung eines Änderungssatzes fehlgeschlagen usw.), aber mit der eigentlichen Korrektur hat es bislang keine nennenswerten Probleme gegeben.

Beim Ergebnis der Adresskorrektur bin ich hin- und hergerissen. Einerseits werden in gut 90% der Fälle sämtliche vorhandenen Fehler (oder zumindest alle, die aus der Ferne erkannt und behoben werden können), korrigiert, sodaß die Objekte anschließend zumindest in Bezug auf Adresstags fehlerfrei sind; außerdem wurden auch bereits hunderte Fehler behoben, die nicht einmal vom housenumbervalidator angezeigt werden. Andererseits finde ich es unbefriedigend, daß doch bei einem nicht unerheblichen Anteil noch weitere Arbeit erforderlich ist. Ich hatte zwar nie den Anspruch, mit dem Bot alle nur denkbaren Fehler zu beseitigen, und es war natürlich damit zu rechnen, daß auch an bearbeiteten Objekten noch Fehler verbleiben - auch wenn mir eine Quote von 5 bis 10 Prozent nicht gefällt. Leider muß man aber wohl sagen: die Qualität unseres Datenbestandes ist einfach so. Und auch daß Fehler häufig korreliert auftreten, ist keine grundsätzlich neue Erkenntnis - von daher ist bei einem Objekt mit einem falschen, aber (durch den Bot) korrigierbaren Adresstag unweigerlich auch eine gegenüber dem Durchschnitt erhöhte Wahrscheinlichkeit für weitere, nicht korrigierbare Fehler gegeben.

Comment from aseerel4c26 on 25 January 2013 at 15:44

Danke für die nette Zusammenfassung der Fortschritte.

Zu "es fehlen aber immer noch die Bindestriche": sicher, dass es nicht auch Straßennamen in Deutschland gibt, bei denen keine Bindestriche dazwischen sind?

Hide this comment

Comment from dbusse on 25 January 2013 at 21:51

Erstklassige Arbeit.

Andere Länder leiden unter exakt den gleichen Problemen wie DE. Schon mal daran gedacht deinen Code inkl. der Vorgehensweise zu generalisieren/dokumentieren damit vielleicht auch in anderen Ländern Korrekturen durchgeführt werden können?

Wäre irgendwie schade wenn das auf DE beschränkt bliebe...

Hide this comment

Comment from Wall·E on 28 January 2013 at 10:34

@aseerel4c26: Ich bin ganz im Gegenteil sogar sicher, daß es solche Namen gibt. Mein Standardbeispiel dazu: Adenauerstraße, Adenauer-Straße und Adenauer Straße können alle korrekt sein. Aus dem Grund läßt der Bot auch von Leerzeichen und Bindestrichen die Finger und ich nehme Änderungen, wenn überhaupt, nur im Nachhinein manuell (über meinen normalen Account) vor, nachdem ich mich überzeugt habe, daß die mutmaßlich korrekte Schreibweise auch tatsächlich als Straßenname in der Nähe existiert.

@dbusse: Erste Fragmente einer Dokumentation existieren bereits auf der Wikiseite. Diese werde ich noch erweitern, aber im Moment hat das eher niedrige Priorität. Ob ich den eigentlichen Code vollständig offenlege, da bin ich mir noch unschlüssig: zum jetzigen Zeitpunkt sicher nicht, dafür sind viele Funktionen noch zu unausgereift. Später wäre es denkbar, aber andererseits habe ich Bedenken, die sich mit dem Begriff "dual use" zusammenfassen lassen. Dazu kommt, daß der Code in einer obskuren Sprache geschrieben ist, welche gerade im OSM-Umfeld vermutlich nicht allzu viele beherrschen und ich nicht möchte, daß jemand Änderungen daran vornimmt, ohne diese wirklich zu verstehen (und mit dem geänderten Programm womöglich größeren Schaden anrichtet). Falls in einzelnen anderen Ländern Interesse besteht, analoge/ähnliche Korrekturen auch dort laufen zu lassen, bin ich aber aufgeschlossen dafür, mein Programm entsprechend zu erweitern, wenn eine Diskussion im jeweiligen Forum bzw. der jeweiligen Mailingliste auf hinreichend breite Unterstützung eines solchen Vorhabens schließen läßt.

Hide this comment

Comment from derandi on 30 January 2013 at 17:21

Eine Idee dir mir gefallen würde. Man kann sich mit seinem OSM-Namen und einer Area in eine Liste eintragen und wenn der Bot Probleme findet dann bekommt man eine Nachricht. So könntes du dir ein bisschen arbeit arbeit ersparen. :)

vg

Hide this comment

Comment from Walter Schlögl on 30 January 2013 at 20:26

Falls in Österreich die gleichen Regeln angewendet werden können, vielleicht könnte man dann den Code auch über AT drüber laufen lassen.

Hide this comment

Comment from aseerel4c26 on 30 January 2013 at 22:03

@Wall·E: alles klar, dass du es nicht automatisch korrigierst, dachte ich mir schon. Aber trotzdem hörte sich "es fehlen aber immer noch die Bindestriche" so definitiv/wissend an. :-)

Hide this comment

Comment from Wall·E on 4 February 2013 at 09:55

@Walter Schlögl: Von mir aus gern. Soweit ich es derzeit überblicke, sind die notwendigen Anpassungen (etwa Österreich -> AT statt Deutschland -> DE; PLZ 4-stellig) überschaubar. Wenn Du magst, kläre doch einmal auf eurer Mailingliste, Forum oder was auch immer ihr in AT habt, ob das Vorhaben dort auf Unterstützung träfe.

Hide this comment

Leave a comment

Parsed with Markdown

  • Headings

    # Heading
    ## Subheading

  • Unordered list

    * First item
    * Second item

  • Ordered list

    1. First item
    2. Second item

  • Link

    [Text](URL)
  • Image

    ![Alt text](URL)

Login to leave a comment