Wie schreckliche Software-Design-Entscheidungen zu Ubers tödlichem Crash 2018 führten

November 2019 Aus Von Lorenz

NTSB sagt, dass das System „keine Rücksicht auf jaywalking Fußgänger genommen hat“.

Radar in Ubers selbstfahrendem Fahrzeug entdeckte die Fußgängerin Elaine Herzberg mehr als fünf Sekunden vor dem Aufprall des SUV auf sie, so ein neuer Bericht der National Safety Transportation Board. Leider verhinderten eine Reihe von schlechten Software-Design-Entscheidungen, dass die Software bis 0,2 Sekunden vor dem tödlichen Absturz in Tempe, Arizona, irgendwelche Maßnahmen ergriff.

Der Tod von Herzberg ereignete sich im März 2018, und die NTSB veröffentlichte ihren ersten Bericht über den Fall im Mai dieses Jahres

Dieser Bericht machte deutlich, dass schlecht geschriebene Software, nicht ausfallende Hardware, für den Absturz verantwortlich war, der Herzberg tötete. Aber der neue Bericht auf Onlinebetrug, der am Dienstag veröffentlicht wurde, markiert das Ende der 20-monatigen Untersuchung der NTSB. Es liefert viel mehr Details darüber, wie Ubers Software funktionierte und wie alles in den letzten Sekunden vor dem Crash, der Herzberg tötete, schief gelaufen ist.

Eine Zeitleiste der Fehlklassifizierung

Wie die meisten selbstfahrenden Programme versucht Ubers Software, jedes Objekt, das sie erkennt, in eine von mehreren Kategorien zu klassifizieren – wie Auto, Fahrrad oder „andere“. Dann, basierend auf dieser Klassifizierung, berechnet die Software eine Geschwindigkeit und eine wahrscheinliche Trajektorie für das Objekt. Dieses System ist in Tempe katastrophal ausgefallen.

Der NTSB-Bericht enthält eine zweite Zeitachse, die zeigt, was die Software „dachte“, als sie sich Herzberg näherte, der ein Fahrrad über eine mehrspurige Straße weit weg von jedem Zebrastreifen schob:

5,2 Sekunden vor dem Aufprall klassifiziert das System sie als „anderes“ Objekt.
4,2 Sekunden vor dem Aufprall wurde sie als Fahrzeug reklassifiziert.
Zwischen 3,8 und 2,7 Sekunden vor dem Aufprall wechselte die Klassifizierung mehrmals zwischen „Fahrzeug“ und „Sonstige“.
2,6 Sekunden vor dem Aufprall klassifizierte das System Herzberg und sein Fahrrad als Fahrrad.
1,5 Sekunden vor dem Aufprall wurde sie „unbekannt“.
1,2 Sekunden vor dem Aufprall wurde sie wieder zum „Fahrrad“.

Zwei Dinge sind an dieser Abfolge von Ereignissen bemerkenswert. Erstens hat das System sie zu keinem Zeitpunkt als Fußgängerin eingestuft. Laut NTSB liegt das daran, dass „das Systemdesign keine Berücksichtigung von jaywalkenden Fußgängern vorsah“.

Zweitens verhinderten die ständig wechselnden Klassifizierungen, dass Ubers Software ihre Trajektorie genau berechnete und erkannte, dass sie sich auf einem Kollisionskurs mit dem Fahrzeug befand. Man könnte denken, dass, wenn ein selbstfahrendes System sieht, dass sich ein Objekt in den Weg des Fahrzeugs bewegt, es seine Bremsen betätigen würde, auch wenn es nicht sicher war, um welche Art von Objekt es sich handelt. Aber so funktionierte Ubers Software nicht.

NTSB: Ubers Sensoren funktionierten; seine Software versagte völlig bei einem tödlichen Unfall.
Das System verwendete die zuvor beobachteten Positionen eines Objekts, um seine Geschwindigkeit zu berechnen und seinen zukünftigen Weg vorherzusagen. Wenn das Wahrnehmungssystem jedoch die Klassifizierung eines erfassten Objekts ändert, wird die Tracking-Geschichte dieses Objekts bei der Generierung neuer Trajektorien nicht mehr berücksichtigt“, berichtet die NTSB.

Software

Das bedeutete in der Praxis, dass das System, da das System nicht sagen konnte, welche Art von Objekt Herzberg und ihr Fahrrad waren, so tat, als würde es sich nicht bewegen.

Von 5,2 bis 4,2 Sekunden vor dem Crash klassifizierte das System Herzberg als Fahrzeug und entschied, dass sie „statisch“ war – d.h. sich nicht bewegte – und daher wahrscheinlich nicht in den Weg des Autos kam. Etwas später erkannte das System, dass sie sich bewegte, sagte aber voraus, dass sie in ihrer aktuellen Spur bleiben würde.

Als das System sie 2,6 Sekunden vor dem Aufprall als Fahrrad umklassifizierte, sagte das System erneut voraus, dass sie in ihrer Spur bleiben würde – ein Fehler, der viel einfacher zu begehen ist, wenn Sie frühere Standortdaten weggeworfen haben. Mit 1,5 Sekunden vor dem Aufprall wurde sie zu einem „unbekannten“ Objekt und war einmal gegen die Einstufung als „statisch“.

Erst 1,2 Sekunden vor dem Unfall, als sie anfing, die Fahrspur des SUV zu betreten, erkannte das System, dass ein Unfall bevorsteht.

Aktionsunterdrückung

An dieser Stelle war es wahrscheinlich zu spät, um eine Kollision zu vermeiden, aber das Aufprallen auf die Bremsen hätte das Fahrzeug vielleicht so weit verlangsamt, dass Herzberg das Leben gerettet werden konnte. Das ist nicht das, was passiert ist. Die NTSB erklärt, warum:

„Wenn das System eine Notsituation erkennt, leitet es die Unterdrückung von Aktionen ein. Dies ist eine Zeitspanne von einer Sekunde, in der das[automatisierte Antriebssystem] geplante Bremsvorgänge unterdrückt, während das System die Art der erfassten Gefahr überprüft und einen alternativen Weg berechnet, oder der Fahrzeugführer die Kontrolle über das Fahrzeug übernimmt“.