[Talk-de] Aktion 11 - Verbindungsprobleme in Afrika
Werner Hoch
werner.ho at gmx.de
So Jan 9 10:41:46 UTC 2011
Hallo Gary68,
nachdem die Aktion fast abgeschlossen ist habe ich noch ein paar
Anmerkungen/Verbesserungswünsche. Eventuell kannst du ja die ein oder
andere Idee umsetzen:
1. geographische Sortierung der Fehler
Die Sortierung der Fehler hat folgende Vorteile:
* naheliegene oder übereinanderliegende Fehler können gefixed werden
ohne das die Region neu über das Remote-Plugin neu geladen werden muss.
* naheliegend Fehler werden liegen in einem Bearbeitungsblock. Damit
wird die Wahrscheinlichkeit von Konflikten bei der Bearbeitung stark
reduziert.
* jede Fehlerposition (auch mit vielen Fehlern) wird nur von einem User
bearbeitet. Gegen Ende der Aktion waren fast 50% aller Fehler bereits
von anderen behoben worden
* die Korrekturen erzeugen kleinere Changeset-BBoxes
Ohne Sortierung ist auch bei nur wenigen Korrekturen pro Changeset ein
riesiges Gebiet betroffen.
Hier ein paar Fehler aus C53 die nahezu an derselben Stelle liegen:
--------
<wpt lat="-20.9805884" lon="55.2913068"><desc>ChkTouch -
90606799/76371634 one way nearly hits another</desc></wpt>
<wpt lat="-20.9805884" lon="55.2913068"><desc>ChkTouch -
90606799/76371634 one way nearly hits another</desc></wpt>
<wpt lat="-20.9806364" lon="55.2919088"><desc>ChkTouch -
90606810/76371634 one way nearly hits another</desc></wpt>
--------
--------
<wpt lat="-20.8906618" lon="55.4550955"><desc>ChkTouch -
30762155/23085585 one way nearly hits another</desc></wpt>
<wpt lat="-20.8906618" lon="55.4550955"><desc>ChkTouch -
30762155/31130705 one way nearly hits another</desc></wpt>
<wpt lat="-20.8906618" lon="55.4550956"><desc>ChkTouch -
23085585/31130705 one way nearly hits another</desc></wpt>
--------
Dieser Fehler ist sogar viermal identisch aufgeführt:
--------
<wpt lat="4.0289917" lon="14.0381916"><desc>ChkTouch - 44584139/44584147
one way nearly hits another</desc></wpt>
--------
denkbare Sortiermethoden:
* lat oder lon sortieren
* Sortieren in Streifen:
round(lat) als erstes Kriterium; lon als zweites
* Mäanderförmig:
wie zuvor nur dass jeder zweite Streifen in umgekehrter
Richtung sortiert wird. [1]
* Traveling Salesman ;-)
2. Description Attribut im GPX-File mit Fehlernummer
In C53 wird diese Beschriftung verwendet:
<desc>ChkTouch - 88274564/12335472 one way nearly hits another</desc>
Die Beschriftungsbestandteile "ChkTouch - " und " one way nearly hits
another" sind bei allen Fehlern gleich -- und damit überflüssig.
Mein Vorschlag wäre also:
<desc>[Fehlernummer] - 88274564/12335472</desc>
Damit wäre es auch einfacher den "richtigen" Fehler zu identifizieren
wenn in einem Gebiet mehrere Fehler sind.
In Kombination mit der geographischen Sortierung können die Fehler sehr
viel effizienter bearbeitet werden. (mindestens 30%)
[1] Vergleichsfunktion für Mäandersortierung (python)
Meine Streifen sind aufgrund des factor=5 nur 0,2 Grad breit.
-----------
def cmp_maeander(a,b):
"""
compare function for meander sort
when the nodes are fixed in this order, the changsets will be small
"""
ax, ay = a
bx, by = b
factor = 5
cmp_row = cmp(int(factor*float(ay)), int(factor*float(by)))
if cmp_row == 0:
direction = (int(factor*float(by)) % 2) * 2-1
return direction * cmp(float(ax), float(bx))
else:
return cmp_row
Grüße
Werner (werner2101)
Mehr Informationen über die Mailingliste Talk-de