← Zurück zum Text

DTV-Interpolation: von einem Messjahr auf zehn

Wie aus einer flächigen Verkehrsmengenkarte für ein Jahr ein Nenner für zehn wird — die Schritte, die Messungen, mit denen jeder Schritt geprüft wurde, und die Stellen, an denen das Ergebnis weniger trägt, als es aussieht. Jeder Abschnitt nennt erst die Fakten und dann, getrennt davon, was sie für die Umsetzung bedeuten.


1. Das Problem

Eine Unfallrate braucht einen Nenner. Für Straßenabschnitte ist das die Fahrleistung:

Fz-km = DTV × Länge × 365 × Jahre

Die Unfalldaten liegen für 2016 bis 2025 vor. Die einzige flächige Verkehrsmengenmessung Hamburgs ist die Karte von 2019. Jede andere Quelle ist entweder punktuell (Zählstellen), veraltet (2013/14) oder zeitlich zu kurz (SensorThings, rollierendes Fenster).

Es fehlt also nicht die Fläche und nicht die Zeit, sondern die Kombination: ein dichtes Netz, das sich über die Jahre bewegt. Die Interpolation stellt genau das her — sie nimmt die räumliche Struktur aus 2019 und die zeitliche Struktur aus den Dauerzählstellen und multipliziert beide.

Für die Umsetzung: Das ist die entscheidende Annahme, und sie sollte ausgesprochen werden: Die relative Verteilung des Verkehrs über das Netz bleibt zwischen 2016 und 2025 stabil; was sich ändert, ist das Niveau. Alles, was die Interpolation leisten kann, hängt an diesem Satz. Alles, was sie nicht leisten kann — neue Straßen, verlagerte Ströme, eine gesperrte Achse — ist eine Verletzung genau dieser Annahme.

Dass das Niveau sich örtlich ungleich verändert hat, ist gemessen (Abschnitt 5) — und wird hier trotzdem nicht modelliert. Warum nicht, ist der einzige wirklich interessante Befund dieses Textes und steht in Abschnitt 6.


2. Die Zutaten

Datensatz Rolle Umfang
Verkehrsmengen HVS 2019 räumliche Basis 3.728 Linienabschnitte, Attribut dtv
Verkehrsmengen BAB 2019 räumliche Basis 575 Autobahnabschnitte
Dauerzählstellen Kfz zeitliche Basis 364 Punkte, Attribute dtv_2014 … dtv_2025
Temporäre Zählungen nicht verwendet 1.698 Stellen, Einzeljahre an wechselnden Orten
Verkehrsmengen 2013/14 nicht verwendet Werte als Bandbreiten-Strings („10.001 - 15.000")
SensorThings nicht verwendet Tageswerte erst ab 2020, kein Archiv davor

Beide WFS stammen von geodienste.hamburg.de, Lizenz dl-de/by-2-0.

Für die Umsetzung: Die drei nicht verwendeten Quellen sind nicht wertlos, sie passen nur nicht in dieses Verfahren. Die temporären Zählungen sind die einzige Messung abseits des Hauptnetzes und damit der einzige denkbare Testdatensatz für eine Interpolation ins Nebennetz — sie sind hier nicht Eingangs-, sondern potenzielle Prüfdaten. Wer sie als Eingang verwenden will, muss sie vorher selbst auf ein gemeinsames Jahr skalieren, also dasselbe Problem zuerst lösen.


3. Schritt 1 — das Basisnetz säubern

Aus beiden Layern werden Abschnitte mit dtv als positiver Zahl übernommen. Ein Autobahnabschnitt trägt 1.240.000 Kfz/24 h gegen 131.000 beim nächsthöchsten Wert und wird über eine Plausibilitätsgrenze von 200.000 verworfen — Abschnitt 11 geht dem nach. Die Länge wird aus der Geometrie gerechnet, nicht aus einem Attribut gelesen.

Ergebnis: 4.302 Abschnitte, 646,3 km — 3.728 HVS mit 556,6 km und 574 BAB mit 89,7 km. Der Median eines Abschnitts ist 83 m lang.

DTV-Verteilung: HVS min 3.000 · p25 14.000 · Median 23.000 · p75 32.000 · max 117.000. BAB Median 90.000.

Für die Umsetzung: Die 83 m sind der wichtigste Wert dieses Abschnitts. Das Netz ist in sehr kurze Stücke geschnitten, und das hat zwei Folgen, die später teuer werden: Ein zusammenhängender Straßenzug besteht aus Dutzenden Features, deren DTV man nicht addieren darf (es ist derselbe Verkehr), und eine Summe über alle Abschnitte muss einmal am Ende gerundet werden — wer nach jeder Addition auf 0,1 km rundet, verliert über tausend Abschnitte mehrere Kilometer. Das ist in diesem Projekt passiert: Das oberste Band der Unfallratenkarte wurde damals mit 84,3 statt 91,9 km ausgewiesen, ein Fehler von acht Prozent allein durch Rundung.


4. Schritt 2 — prüfen, ob beide Quellen dasselbe messen

Ein Faktor aus Quelle B, angewendet auf Quelle A, ist nur dann ein Jahresfaktor, wenn A und B dasselbe Niveau messen. Sonst trägt der Faktor eine Niveaudifferenz mit, die nichts mit dem Jahr zu tun hat.

Geprüft über den Abgleich jeder Dauerzählstelle mit dem nächstgelegenen Abschnitt von 2019 und den Vergleich des stationseigenen dtv_2019 mit dem dtv des Abschnitts:

Wert
Stationen mit dtv_2019 361 von 364
davon innerhalb von 120 m eines HVS-Abschnitts 276
Medianabstand 36 m
Verhältnis Station / Abschnitt p25 0,96 · Median 1,00 · p75 1,02
innerhalb von ±25 % 89 %

Die Karte von 2019 ist also aus diesen Zählungen gebaut. Das Skalieren der einen mit der anderen ist keine Notlösung, sondern die Rückführung auf dieselbe Messung.

Für die Umsetzung: Das Abstandsmaß muss mitgenannt werden, sonst ist die Zahl nicht reproduzierbar. Gemessen ist hier der Abstand zum Mittelpunkt des Abschnitts. Misst man stattdessen den senkrechten Abstand zur Linie, liegen 334 statt 276 Stationen innerhalb von 120 m und der Medianabstand ist 0 m, weil die Stationen auf den Linien liegen. Beide Zahlen sind richtig, sie beantworten nur verschiedene Fragen. Das Verhältnis von 1,00 ändert sich dabei nicht.


5. Schritt 3 — der Jahresfaktor

Für jede Station und jedes Jahr:

f(Station, Jahr) = dtv_Jahr / dtv_2019

Der verwendete Faktor ist der Median je Jahr über alle Stationen, die dieses Jahr und den Anker 2019 gemessen haben. Ein Median je Jahr verlangt von keiner Station eine durchgehende Reihe, und genau deshalb ist der Vorrat so groß: Hamburg zählt rotierend, nur 131 von 364 Stationen tragen das ganze Jahrzehnt — aber je einzelnes Jahr sind es 212 bis 361, und alle Werte darin sind gemessen, keiner geschätzt.

2016 2017 2018 2019 2020 2021 2022 2023 2024 2025
Faktor 1,00 1,00 1,00 1,00 0,86 0,85 0,87 0,88 0,87 0,86
p10 0,89 0,90 0,94 1,00 0,75 0,72 0,69 0,74 0,70 0,67
p90 1,11 1,08 1,06 1,00 1,00 1,00 1,07 1,09 1,09 1,06
n Stationen 358 359 360 361 305 260 269 212 297 287

Zwei Befunde stehen in dieser Tabelle. Der Verkehr hat sich von 2020 nie erholt — 2025 liegt bei 0,86 des Niveaus von 2019. Und die Spanne zwischen den Stationen weitet sich danach: vorher 0,89–1,11, danach 0,67–1,09.

Der zweite Befund ist eine Falle, und der nächste Abschnitt handelt von ihr.

Das Ankerjahr ist dabei ein Parameter, kein Naturgesetz: Der Faktor ist auf dtv_2019 normiert, also können Stationen ohne Wert für 2019 nicht beitragen. Hier sind das 3 von 364; in einem anderen Ankerjahr wären es deutlich mehr.

Für die Umsetzung: Die Verhältnisbildung je Station ist der Punkt, an dem Niveauunterschiede zwischen den Stationen herausfallen — eine Station an der Ost-West-Achse und eine in einem Wohngebiet sind in Kfz/24 h nicht vergleichbar, in dtv_Jahr / dtv_2019 schon. Wer stattdessen absolute Werte mittelt, baut einen Index, den die großen Stationen dominieren.


6. Warum kein örtlicher Faktor — die Kreuzvalidierung

Die Spanne von 0,67 bis 1,09 sieht nach einem Auftrag aus: Wenn sich der Verkehr örtlich so verschieden entwickelt hat, sollte doch jeder Abschnitt den Faktor seiner nächstgelegenen Zählstelle bekommen. Genau so war dieses Projekt gebaut, und genau das hält der Prüfung nicht stand.

Geprüft wird dort, wo die Wahrheit bekannt ist: an den 131 Stationen, die jedes Jahr wirklich gemessen haben. Jede wird herausgenommen, ihre Jahresfaktoren werden aus den übrigen geschätzt und mit ihren eigenen verglichen — 131 Stationen × 9 Jahre = 1.179 Vorhersagen je Verfahren. Die herausgenommene Station zählt auch im stadtweiten Median nicht mit.

Verfahren Median des absoluten Fehlers p90
gar nicht skalieren (Faktor 1) 10,67 % 33,7 %
nächste Station 7,59 % 28,7 %
IDW 1/d über die 5 nächsten 6,60 % 23,7 %
Median ähnlich belasteter Stationen (±50 % DTV) 6,64 % 22,5 %
stadtweiter Median je Jahr (umgesetzt) 6,54 % 22,4 %

Nach Jahr zu skalieren lohnt sich sehr, nach Ort überhaupt nicht. Der Unterschied zwischen „gar nicht" und „irgendwie nach Jahr" ist groß — 10,7 gegen 6,5 Prozent. Der Unterschied zwischen dem einfachsten und dem aufwendigsten Jahresverfahren ist es nicht, und das aufwendigste, die nächste Station, ist sogar das schlechteste.

Warum, steht ebenfalls in den Daten:

  • Die Nachbarschaftskorrelation des Faktors von 2025 zwischen je zwei nächstgelegenen Stationen beträgt nur r = 0,36.
  • Der Fehler hängt nicht vom Abstand ab: 6,9 % bei einem Donor unter 250 m, 5,7 % bei einem in 1 bis 2 km. Ein näherer Donor ist kein besserer.

Eine einzelne Station bringt ihr eigenes Messrauschen mit; ein Median über Hunderte ist geglättet. Wo kein Signal ist, gewinnt die Glättung.

Eine Mischung aus beidem — halb nächste Station, halb stadtweit — kommt im Median auf 6,34 % und ist damit marginal besser, bei schlechterem p90. Dafür die gesamte räumliche Maschinerie zu betreiben, lohnt nicht.

Für die Umsetzung: Die Streuung zwischen den Stationen beweist, dass die Veränderung räumlich ungleich ist — sie beweist nicht, dass der nächste Nachbar sie vorhersagt. Das sind zwei verschiedene Aussagen, und nur die zweite rechtfertigt eine örtliche Zuordnung. Ob die zweite gilt, kostet eine Kreuzvalidierung und eine halbe Stunde. Diese halbe Stunde hat hier eine ganze Verarbeitungsstufe eingespart.


7. Schritt 4 — Fahrleistung aufsummieren

Je Abschnitt über alle zehn Jahre, jedes Jahr mit seinem Faktor:

Fz-km = Σ(Jahre) DTV₂₀₁₉ × f(Jahr) × Länge × 365

Weil der Faktor für alle Abschnitte gleich ist, lässt sich die Summe auch als eine Zahl lesen: Das Jahrzehnt wird mit 9,19 statt 10 Jahren auf dem Niveau von 2019 bepreist. Stadtweit ergibt das 64,8 Mrd. Fz-km gegen 70,5 ohne jede Skalierung.

Diese Zahl steht als fy in der Ausgabe, und die Knotenpunktauswertung liest sie, damit beide Ebenen das Jahrzehnt gleich bepreisen.

Die Fahrleistung selbst wird mit neun Nachkommastellen ausgewiesen. Mit sechs verlor der kürzeste Abschnitt 0,9 Prozent, und 26 von 3.656 Abschnitten wechselten allein dadurch das Farbband. Ein systematischer Rundungsfehler würde sich im Verhältnis zum Median herauskürzen — dieser nicht, weil er die kurzen Abschnitte am stärksten trifft.

Für die Umsetzung: Zähler und Nenner müssen denselben Zeitraum abdecken. Die Unfälle sind über zehn Jahre gepoolt, weil ein einzelnes Jahr je Abschnitt im Median nur vier Unfälle liefert — also muss auch die Fahrleistung die zehn Jahre sein. Wer die Unfälle eines Jahrzehnts durch eine Fahrleistung teilt, die zehnmal 2019 unterstellt, rechnet die Rate um rund 9 % zu niedrig.


8. Was davon in der Karte ankommt

Hier gehört ein Satz hin, den man sich beim Bauen lieber vorher sagt.

Die Unfallratenkarte färbt jeden Abschnitt nach seinem Verhältnis zum Median-Abschnitt derselben Straßenklasse. In einem solchen Verhältnis kürzt sich jeder Faktor heraus, der für alle Abschnitte gleich ist — und der Faktor ist jetzt für alle Abschnitte gleich. Die Farben der Karte sind also exakt dieselben wie ohne jede Skalierung. Nicht ungefähr dieselben: nachgerechnet über alle 4.302 Abschnitte, kein einziger Unterschied.

Das ist kein Argument gegen die Skalierung, sondern eine Aussage darüber, wofür sie da ist. Was sie bewegt, ist das Niveau:

mit Skalierung ohne
Fahrleistung des Jahrzehnts 64,8 Mrd. Fz-km 70,5
Referenzrate Hauptverkehrsstraßen 6.929 je Mrd. Fz-km 6.350
Referenzrate Autobahnen 1.322 1.221

Rund 9 Prozent, und sie stecken in jeder Zahl, die den Nenner verlässt: in jeder Rate je Mrd. Fz-km, in jedem Vergleich mit einem anderen Jahr, einer anderen Stadt oder einem Grenzwert — und in der gesamten Knotenpunktauswertung, deren Raten je Million einfahrender Fahrzeuge unmittelbar daran hängen.

Für die Umsetzung: Vor jeder Investition in einen Nenner steht die Frage, ob das Ergebnis relativ oder absolut gelesen wird. Eine Karte, die jeden Abschnitt an seinesgleichen misst, ist gegen einen gemeinsamen Faktor immun; eine berichtete Rate ist es nicht. Beides aus derselben Rechnung zu bekommen kostet nichts — die Aussagen auseinanderzuhalten schon.

Zur Einordnung: Die Unfallzahlen selbst sind poissonverteilt, der relative Standardfehler ist 1/√n. Bei den zehn Unfällen, ab denen ein Abschnitt hier überhaupt berichtet wird, sind das 32 %, beim Median der berichteten Abschnitte (45 Unfälle) noch 15 %. Der Nenner ist nicht die bindende Unsicherheit — der Zähler ist es.


9. Ein gemessener Umweg: die Lücken

Dieser Abschnitt beschreibt etwas, das gebaut, gemessen und wieder entfernt wurde. Er steht hier, weil das Ergebnis nützlicher ist als der Code es war.

Solange jeder Abschnitt den Faktor seiner nächstgelegenen Station bekommen sollte, brauchte man Stationen mit durchgehender Reihe — und das sind nur 131 von 364. Die übrigen fehlen nicht wegen Defekten:

Lücken in 2016–2025 Stationen
keine 131
genau eine 97
zwei 50
drei 30
vier bis sechs 56

97 Stationen fehlt ein einziges Jahr, bei 86 davon eingerahmt von zwei gemessenen. Ein eingerahmtes Jahr lässt sich gut schätzen — geprüft durch Maskieren an den 131 lückenlosen Stationen:

Verfahren Median des absoluten Fehlers
linear zwischen den Nachbarjahren 3,6 %
stadtweite Kurve, beidseitig angesetzt 3,6 %
Vorjahr fortschreiben 5,3 %
Median der eigenen Reihe 6,4 %

Zum Vergleich: Die tatsächliche Veränderung von Jahr zu Jahr beträgt im Median 5,0 %. Und längere Lücken werden schnell teurer — ein Lauf von zwei Jahren füllt auf 5,3 %, einer von vier auf 6,8 %.

Mit einem Jahr am Stück wuchs der Vorrat von 131 auf 237 Stationen, die Abdeckung von 71 auf 87 Prozent der Abschnitte und der Medianabstand von 830 auf 538 Meter. Der Vorhersagefehler blieb, wo er war: 7,59 statt 7,5 Prozent.

Dann stellte sich heraus, dass die Stufe, die diese Donoren verbraucht, selbst nicht trägt (Abschnitt 6) — und mit ihr fiel die Füllung weg. Der stadtweite Median braucht sie nicht: Er ist ein Median je Jahr und nimmt jede Station, die dieses Jahr gemessen hat.

Für die Umsetzung: Zwei Lehren, beide allgemein.

Mehr Daten sind nicht bessere Daten. Die Füllung verdoppelte den Vorrat und verbesserte die Vorhersage um nichts. Ob zusätzliche Stützstellen etwas bringen, hängt daran, ob die gesuchte Größe überhaupt räumlich korreliert; das gehört gemessen, bevor Aufbereitung in sie investiert wird.

Die Aufbereitung vor dem Verfahren prüfen. Die Füllung wurde sorgfältig validiert — und war trotzdem umsonst, weil der Schritt dahinter nie validiert worden war. Die billigere Reihenfolge ist, erst zu prüfen, ob eine Stufe gebraucht wird, und dann ihre Eingangsdaten zu verbessern.


10. Grenzen

Das Netz endet am Hauptverkehrsstraßennetz. 4.302 Abschnitte, 646 km. Für alles andere gibt es keine Verkehrsmenge, und „nicht gemessen" ist nicht „wenig Verkehr". Rund 41 % der Unfälle liegen auf diesem Netz; die übrigen 59 % haben keinen Nenner.

Ein Faktor für die ganze Stadt ist eine grobe Annahme — sie ist nur die beste prüfbare. Dass die Veränderung örtlich ungleich war, ist gemessen (Abschnitt 5); dass sich diese Ungleichheit aus den vorhandenen 364 Stationen vorhersagen lässt, ist widerlegt (Abschnitt 6). Mit einem dichteren Netz an Dauerzählstellen könnte die Antwort anders ausfallen; mit diesem nicht.

Die Interpolation ist abseits des Hauptnetzes unfalsifizierbar. Es gibt keine Messung, gegen die man eine Schätzung für eine Wohnstraße prüfen könnte. Die einzige denkbare Prüfmenge sind die 640 temporären Zählstellen, die mehr als 25 m von jedem DTV-Abschnitt entfernt liegen — ihr Median-DTV von 4.900 gegen 9.700 auf dem Netz zeigt, dass sie eine andere Population messen. Diese Prüfung ist nicht durchgeführt.

Die Knotenpunktauswertung erbt den Faktor über die Zufahrten. Sie summiert die DTV der Zufahrten aus der Basiskarte von 2019 und gewichtet jede mit fy. Das senkt die Fahrzeugzahlen um rund 9 % und hebt die Medianrate von 0,86 auf 0,94 Unfälle je Million einfahrender Fahrzeuge; die Rangfolge bleibt unberührt, weil der Faktor für alle Zufahrten derselbe ist.

Richtungsangaben werden nicht aufgelöst. DTV ist ein Querschnittswert über beide Richtungen. Bei den Zählstellen mischt das Feld richtung Querschnittswerte mit Richtungswerten; naives Summieren erzeugt dort das Doppelte.

Das Ergebnis ist eine Schätzung und wird in jeder Ausgabe als solche geführt. Die Projektion ist eine äquidistante Näherung bei 53,55° Breite, was über die Ausdehnung Hamburgs für Längen genügt, aber keine exakte Geodäsie ist.


11. Der eine Ausreißer — und was er angerichtet hätte

Ein Autobahnabschnitt trägt in der Quelle 1.240.000 Kfz/24 h. Er ist erledigt (Abschnitt 3); interessant ist, woran er auffiel und was er gekostet hätte, weil beides sich auf andere Datensätze überträgt.

Erkannt an der Lücke zwischen Nachbarwerten, nicht an einem Schwellenwert. Sortiert man die Autobahnabschnitte absteigend, steht 1.240.000 vor 131.000 — Faktor 9,5. Jedes weitere benachbarte Paar an der Spitze unterscheidet sich um höchstens 3 Prozent, und im Hauptverkehrsstraßennetz liegen die obersten Werte dicht bei 117.000 beieinander. Ein einzelner Sprung dieser Größenordnung in einer sonst glatten Verteilung ist ein Datenfehler, keine Straße.

Die Wirkung ist nicht die, die man vermutet. Der Abschnitt ist 20 Meter lang. Seine Fahrleistung macht 0,4 Prozent der Autobahn-Fahrleistung aus, und auf den Median wirkt ein einzelner Wert unter 575 ohnehin nicht. Wer nur auf Summen und Mediane schaut, hätte ihn nie bemerkt.

Beschädigt wird alles, was die Spannweite liest:

  • Die Verkehrsmengenkarte kodiert die Linienbreite über den DTV. Ein 20 Meter langer Stummel wäre neunmal breiter gezeichnet worden als die breiteste echte Autobahn — und hätte als einziger Wert die Skala für alle anderen gestaucht.
  • Das veröffentlichte Maximum läse 1.240.000 statt 131.000. Dass in den Parametern der Figur heute 131.000 steht, ist bereits das Ergebnis der Bereinigung.
  • Jede Min-Max-Normierung hätte denselben Fehler weitergereicht.

Status: behoben und nachgeprüft. build-road-rates.mjs verwirft Werte über MAX_PLAUSIBLE_DTV = 200000, bevor die erste Statistik gerechnet wird. Genau ein Abschnitt fällt darunter — deshalb sind es 4.302 und nicht 4.303. Dieselbe Lückenprüfung über den heutigen Stand findet keinen weiteren Kandidaten.

Für die Umsetzung: Eine Plausibilitätsgrenze gehört vor die erste Statistik, nicht hinter den ersten überraschenden Befund — sonst prüft man irgendwann eine Karte, die seit Wochen falsch ist. Und das brauchbare Suchwerkzeug ist das Verhältnis benachbarter Ordnungsstatistiken, nicht ein fester z-Wert: Verkehrsmengen sind von Natur aus schief verteilt, ein Standardabweichungs-Kriterium würde entweder echte Autobahnen verwerfen oder den Ausreißer durchlassen.


12. Nachrechnen

Die Umsetzung steht in scripts/build-road-rates.mjs (npm run rates) und schreibt public/data/road-rates.geojson: je Abschnitt dtv (2019), km, cls, e — die Fahrleistung des Jahrzehnts in Mrd. Fz-km, also das Ergebnis dieser Interpolation — und fy, dasselbe Jahrzehnt in 2019-äquivalenten Jahren (derzeit 9,19 für jeden Abschnitt). Über fy erbt scripts/build-junction-rates.mjs (npm run junctions) dieselbe Skalierung.

Die Zahlen dieses Textes wurden am 15.10.2026 gegen die Live-Dienste nachgerechnet; die Kreuzvalidierung aus Abschnitt 6 und die Maskierungstests aus Abschnitt 9 sind nicht Teil des Build-Skripts und wurden separat ausgeführt.

Quellen:

  • WFS Verkehrsmengen — Layer verkehrsmengen_dtv_hvs_2019, verkehrsmengen_dtv_bab_2019
  • WFS Verkehrsstärken — Layer „Kfz – Durchschnittliche (werk-)tägliche Verkehrsstärken"
  • Beide: Datenlizenz Deutschland – Namensnennung 2.0