Das arXiv-Papier „Tackling Real-World Autonomous Driving using Deep Reinforcement Learning“ wurde am 5. Juli 2022 hochgeladen. Die Autoren stammen von Vislab der Universität Parma in Italien und Ambarella (Übernahme von Vislab).
In einer typischen Montagelinie für autonomes Fahren stellt das Regelungs- und Steuerungssystem die beiden kritischsten Komponenten dar, in denen die vom Sensor abgerufenen Daten und die vom Wahrnehmungsalgorithmus verarbeiteten Daten verwendet werden, um sicheres und komfortables autonomes Fahren zu erreichen Verhalten. Insbesondere sagt das Planungsmodul den Weg voraus, dem das selbstfahrende Auto folgen sollte, um die richtigen Aktionen auf hoher Ebene auszuführen, während das Steuerungssystem eine Reihe von Aktionen auf niedriger Ebene ausführt und dabei Lenkung, Gas und Bremsen steuert.
Diese Arbeit schlägt einen modellfreien Deep Reinforcement Learning (DRL)Planer vor, um ein neuronales Netzwerk zu trainieren, um Beschleunigung und Lenkwinkel vorherzusagen und so die Ausgabe eines Lokalisierungs- und Wahrnehmungsalgorithmus für autonome Fahrzeuge zu erhalten. Die Daten steuern ein einzelnes Modul von das Fahrzeug. Insbesondere kann das System, das vollständig simuliert und trainiert wurde, in simulierten und realen (Stadtgebiet von Palma) barrierefreien Umgebungen reibungslos und sicher fahren, was beweist, dass das System über gute Generalisierungsfähigkeiten verfügt und auch in anderen Umgebungen als Trainingsszenarien fahren kann. Um das System außerdem in realen autonomen Fahrzeugen einzusetzen und die Lücke zwischen simulierter und realer Leistung zu verringern, entwickelten die Autoren außerdem ein Modul, das durch ein Miniatur-Neuronales Netzwerk dargestellt wird, das in der Lage ist, das Verhalten der realen Umgebung während des Simulationstrainings zu reproduzieren . Dynamisches Verhalten des Autos.
In den letzten Jahrzehnten wurden enorme Fortschritte bei der Verbesserung des Automatisierungsgrads von Fahrzeugen erzielt, von einfachen, regelbasierten Ansätzen bis hin zur Implementierung KI-basierter intelligenter Systeme. Diese Systeme zielen insbesondere darauf ab, die Haupteinschränkungen regelbasierter Ansätze zu beseitigen, nämlich die fehlende Verhandlung und Interaktion mit anderen Verkehrsteilnehmern und das schlechte Verständnis der Szenendynamik.
Reinforcement Learning (RL) wird häufig verwendet, um Aufgaben zu lösen, die diskrete Kontrollraumausgänge nutzen, wie z. B. Go, Atari-Spiele oder Schach, sowie autonomes Fahren im kontinuierlichen Kontrollraum. Insbesondere im Bereich des autonomen Fahrens werden RL-Algorithmen häufig zur Entwicklung von Entscheidungs- und Manöverausführungssystemen eingesetzt, beispielsweise für aktive Spurwechsel, Spurhaltung, Überholmanöver, Kreuzungs- und Kreisverkehrsverarbeitung usw.
Dieser Artikel verwendet eine verzögerte Version von D-A3C, die zur sogenannten Actor-Critics-Algorithmusfamilie gehört. Konkret bestehend aus zwei verschiedenen Einheiten: Schauspielern und Kritikern. Der Zweck des Akteurs besteht darin, die Aktionen auszuwählen, die der Agent ausführen muss, während der Kritiker die Zustandswertfunktion schätzt, also wie gut der spezifische Zustand des Agenten ist. Mit anderen Worten: Akteure sind Wahrscheinlichkeitsverteilungen π(a|s; θπ) über Aktionen (wobei θ Netzwerkparameter sind) und Kritiker sind geschätzte Zustandswertfunktionen v(st; θv) = E(Rt|st), wobei R ist Erwartete Rendite.
Die intern entwickelte hochauflösende Karte implementiert den Simulationssimulator. Ein Beispiel für die Szene ist in Abbildung a dargestellt. Dabei handelt es sich um einen Teilkartenbereich des realen autonomen Fahrzeugtestsystems, während Abbildung b die Umgebungsansicht zeigt intelligente Körperwahrnehmung, entsprechend 50× Der 50-Meter-Bereich ist in vier Kanäle unterteilt: Hindernisse (Abbildung c), befahrbarer Raum (Abbildung d), der Weg, dem der Agent folgen sollte (Abbildung e) und die Stopplinie (Abbildung). F). Die hochauflösende Karte im Simulator ermöglicht den Abruf mehrerer Informationen über die äußere Umgebung, wie z. B. Lage oder Anzahl der Fahrspuren, Geschwindigkeitsbegrenzungen usw.
Konzentrieren Sie sich auf einen reibungslosen und sicheren Fahrstil, sodass der Agent in statischen Szenen geschult wird, Hindernisse oder andere Verkehrsteilnehmer ausschließt und lernt, Routen zu befolgen und Geschwindigkeitsbegrenzungen einzuhalten.
Verwenden Sie das in der Abbildung gezeigte neuronale Netzwerk, um den Agenten zu trainieren und alle 100 Millisekunden den Lenkwinkel und die Beschleunigung vorherzusagen. Es gliedert sich in zwei Untermodule: Das erste Untermodul kann den Lenkwinkel sa definieren, das zweite Untermodul dient der Definition der Beschleunigung gem. Die Eingaben in diese beiden Submodule werden durch 4 Kanäle (fahrbarer Raum, Weg, Hindernis und Stopplinie) dargestellt, die der Umgebungsansicht des Agenten entsprechen. Jeder visuelle Eingabekanal enthält vier 84×84 Pixel große Bilder, um dem Agenten einen Verlauf vergangener Zustände zu liefern. Zusammen mit dieser visuellen Eingabe empfängt das Netzwerk fünf skalare Parameter, darunter die Zielgeschwindigkeit (Geschwindigkeitsbegrenzung auf der Straße), die aktuelle Geschwindigkeit des Agenten, das Verhältnis von aktueller Geschwindigkeit zu Zielgeschwindigkeit und die endgültige Aktion in Bezug auf Lenkwinkel und Beschleunigung.
Um die Erkundung sicherzustellen, werden zwei Gaußsche Verteilungen verwendet, um die Ausgabe der beiden Untermodule abzutasten und die relative Beschleunigung (acc=N (μacc, σacc)) und den Lenkwinkel (sa=N (μsa) zu erhalten , σsa) ). Die Standardabweichungen σacc und σsa werden vom neuronalen Netzwerk während der Trainingsphase vorhergesagt und moduliert, um die Unsicherheit des Modells abzuschätzen. Darüber hinaus verwendet das Netzwerk zwei verschiedene Belohnungsfunktionen R-acc-t und R-sa-t, die sich auf Beschleunigung bzw. Lenkwinkel beziehen, um entsprechende Zustandswertschätzungen (vacc und vsa) zu generieren.
Das neuronale Netzwerk wird an vier Szenen in der Stadt Palma trainiert. Für jedes Szenario werden mehrere Instanzen erstellt und die Agenten sind auf diesen Instanzen unabhängig voneinander. Jeder Agent folgt dem kinematischen Fahrradmodell mit einem Lenkwinkel von [-0,2, +0,2] und einer Beschleunigung von [-2,0 m, +2,0 m]. Zu Beginn des Segments beginnt jeder Agent mit einer zufälligen Geschwindigkeit ([0,0, 8,0]) zu fahren und folgt seinem beabsichtigten Weg unter Einhaltung der Geschwindigkeitsbegrenzungen auf der Straße. Die Geschwindigkeitsbegrenzungen auf der Straße in diesem Stadtgebiet liegen zwischen 4 ms und 8,3 ms.
Da es schließlich keine Hindernisse in der Trainingsszene gibt, kann der Clip in einem der folgenden Endzustände enden:
Um eine Strategie zu erhalten, mit der ein Auto in simulierten und realen Umgebungen erfolgreich gefahren werden kann, ist die Gestaltung der Belohnungen entscheidend, um das gewünschte Verhalten zu erreichen. Insbesondere werden zwei verschiedene Belohnungsfunktionen definiert, um die beiden Aktionen jeweils zu bewerten: R-acc-t und R-sa-t beziehen sich auf die Beschleunigung bzw. den Lenkwinkel und sind wie folgt definiert:
wobei
R-sa-t und R-acc-t haben beide ein Element in der Formel, um zwei aufeinanderfolgende Aktionen zu bestrafen, deren Beschleunigungs- und Lenkwinkelunterschied größer als ein bestimmter Schwellenwert δacc bzw. δsa ist. Insbesondere wird die Differenz zwischen zwei aufeinanderfolgenden Beschleunigungen wie folgt berechnet: Δacc=|acc(t)−acc(t−1)|, während rac_indecision wie folgt definiert ist:
Im Gegensatz dazu sind die beiden Lenkwinkel The Die Differenz zwischen aufeinanderfolgenden Vorhersagen wird als Δsa=|sa(t)−sa(t−1)| berechnet, während rsa_indecision wie folgt definiert ist:
Schließlich hängen R-acc-t und R-sa-t vom Terminal ab Vom Agenten erreichte Zustände:
Darüber hinaus hängt ein weiteres damit zusammenhängendes Problem bei der Verwendung von Simulatoren mit dem Unterschied zwischen den beiden Arten zusammen, wie ein simulierter Agent eine Zielaktion ausführt und ein selbstfahrendes Auto diesen Befehl ausführt. Tatsächlich kann die zum Zeitpunkt t berechnete Zielaktion im Idealfall sofort und genau zum gleichen Zeitpunkt in der Simulation wirksam werden. Der Unterschied besteht darin, dass dies bei einem realen Fahrzeug nicht der Fall ist, da solche Zielaktionen in der Realität mit einer gewissen Dynamik ausgeführt werden, was zu einer Ausführungsverzögerung (t+δ) führt. Daher ist es notwendig, solche Reaktionszeiten in Simulationen einzuführen, um Agenten in echten selbstfahrenden Autos zu schulen, mit solchen Verzögerungen umzugehen.
Um ein realistischeres Verhalten zu erreichen, wird der Agent zunächst darauf trainiert, dem neuronalen Netzwerk einen Tiefpassfilter hinzuzufügen, den der Agent ausführen muss, um die Zielaktion vorherzusagen. Wie in der Abbildung dargestellt, stellt die blaue Kurve die idealen und sofortigen Reaktionszeiten dar, die in der Simulation unter Verwendung der Zielaktion (dem Lenkwinkel ihres Beispiels) auftreten. Nach der Einführung eines Tiefpassfilters identifiziert die grüne Kurve dann die simulierte Reaktionszeit des Agenten. Im Gegensatz dazu zeigt die orangefarbene Kurve das Verhalten eines autonomen Fahrzeugs, das das gleiche Lenkmanöver durchführt. Aus der Abbildung ist jedoch ersichtlich, dass der Unterschied in der Reaktionszeit zwischen simulierten und realen Fahrzeugen immer noch relevant ist.
Tatsächlich sind die vom neuronalen Netzwerk voreingestellten Beschleunigungs- und Lenkwinkelpunkte keine realisierbaren Befehle und berücksichtigen einige Faktoren nicht, wie z. B. die Trägheit des Systems, die Verzögerung des Aktuators und andere nicht ideale Faktoren. Um die Dynamik eines realen Fahrzeugs möglichst realistisch abzubilden, wurde daher ein Modell bestehend aus einem kleinen neuronalen Netzwerk bestehend aus 3 vollständig verbundenen Schichten (Deep Response) entwickelt. Das Diagramm des Tiefenreaktionsverhaltens ist in der Abbildung oben als rote gestrichelte Linie dargestellt. Es ist zu erkennen, dass es der orangefarbenen Kurve, die ein echtes selbstfahrendes Auto darstellt, sehr ähnlich ist. Da es in der Trainingsszene keine Hindernisse und Verkehrsfahrzeuge gibt, ist das beschriebene Problem bei der Lenkwinkelaktivität ausgeprägter, die gleiche Idee wurde jedoch auf die Beschleunigungsleistung angewendet.
Trainieren Sie ein Deep-Response-Modell mithilfe eines Datensatzes, der an einem selbstfahrenden Auto gesammelt wurde, wobei die Eingaben den Befehlen entsprechen, die der menschliche Fahrer dem Fahrzeug erteilt (Gaspedaldruck und Lenkraddrehungen), und die Ausgaben der Drosselklappe des Fahrzeugs entsprechen , Bremsen und Biegen, was mithilfe von GPS, Kilometerzähler oder anderen technischen Messungen erfolgen kann. Auf diese Weise führt die Einbettung solcher Modelle in einen Simulator zu einem besser skalierbaren System, das das Verhalten autonomer Fahrzeuge nachbildet. Das Tiefenreaktionsmodul ist daher für die Korrektur des Lenkwinkels unerlässlich, aber auch in weniger offensichtlicher Weise ist es für die Beschleunigung notwendig, und dies wird bei der Einführung von Hindernissen deutlich sichtbar.
Zwei verschiedene Strategien wurden anhand realer Daten getestet, um die Auswirkungen des Deep-Response-Modells auf das System zu überprüfen. Überprüfen Sie anschließend, ob das Fahrzeug dem Weg korrekt folgt und die aus der HD-Karte abgeleiteten Geschwindigkeitsbegrenzungen einhält. Schließlich ist erwiesen, dass das Vortraining des neuronalen Netzwerks durch „Imitation Learning“ die Gesamttrainingszeit erheblich verkürzen kann. Die Strategie lautet wie folgt:
Strategie 1: Verwenden Sie für das Training nicht das Deep-Response-Modell, sondern verwenden Sie einen Tiefpassfilter, um die Reaktion des realen Fahrzeugs auf die Zielaktion zu simulieren.Durch das Testen der Strategie in realen Szenarien wurden unterschiedliche Ergebnisse erzielt. Strategie 1 kann die Fahrzeugdynamik nicht verarbeiten und führt die vorhergesagten Aktionen anders aus als der Agent in der Simulation. Auf diese Weise beobachtet Strategie 1 unerwartete Zustände seiner Vorhersagen, was zu lautem Verhalten am autonomen Fahrzeug und unangenehmen Verhaltensweisen führt.
Dieses Verhalten wirkt sich auch auf die Zuverlässigkeit des Systems aus. Tatsächlich ist manchmal menschliche Hilfe erforderlich, um zu verhindern, dass selbstfahrende Autos von der Straße abkommen.
Im Gegensatz dazu erfordert Strategie 2 bei allen realen Tests selbstfahrender Autos nie, dass ein Mensch das Kommando übernimmt, da er die Fahrzeugdynamik und die Entwicklung des Systems kennt, um Aktionen vorherzusagen. Die einzigen Situationen, in denen ein menschliches Eingreifen erforderlich ist, bestehen darin, anderen Verkehrsteilnehmern auszuweichen. Diese Situationen gelten jedoch nicht als Fehlschläge, da beide Strategien 1 und 2 in barrierefreien Szenarien trainiert werden.
Um den Unterschied zwischen Strategie 1 und Strategie 2 besser zu verstehen, finden Sie hier den vom neuronalen Netzwerk vorhergesagten Lenkwinkel und den Abstand zur Mittelspur innerhalb eines kurzen Zeitfensters realer Tests. Es ist zu erkennen, dass sich die beiden Strategien im Vergleich zu Strategie 2 (rote Kurve) völlig unterschiedlich verhalten, was beweist, dass das Deep-Response-Modul für den Einsatz in wirklich autonomen Fahrzeugen von entscheidender Bedeutung ist .
Um die Einschränkungen von RL zu überwinden, die Millionen von Segmenten erfordern, um die optimale Lösung zu erreichen, wird ein Vortraining durch Imitation Learning (IL) durchgeführt. Darüber hinaus wird, auch wenn der Trend in IL dahin geht, große Modelle zu trainieren, dasselbe kleine neuronale Netzwerk (~1 Million Parameter) verwendet, da die Idee darin besteht, das System weiterhin mit dem RL-Framework zu trainieren, um mehr Robustheit und Generalisierungsfähigkeiten sicherzustellen. Auf diese Weise wird die Nutzung von Hardware-Ressourcen nicht erhöht, was im Hinblick auf ein mögliches zukünftiges Multi-Agent-Training von entscheidender Bedeutung ist.
Der in der IL-Trainingsphase verwendete Datensatz wird von simulierten Agenten generiert, die einem regelbasierten Bewegungsansatz folgen. Insbesondere beim Biegen wird ein reiner Verfolgungsverfolgungsalgorithmus verwendet, bei dem der Agent darauf abzielt, sich entlang eines bestimmten Wegpunkts zu bewegen. Verwenden Sie stattdessen das IDM-Modell, um die Längsbeschleunigung des Agenten zu steuern.
Um den Datensatz zu erstellen, wurde ein regelbasierter Agent über vier Trainingsszenen bewegt, wobei alle 100 Millisekunden skalare Parameter und vier visuelle Eingaben gespeichert wurden. Stattdessen wird die Ausgabe durch den reinen Verfolgungsalgorithmus und das IDM-Modell bereitgestellt.
Die beiden horizontalen und vertikalen Steuerelemente, die der Ausgabe entsprechen, stellen einfach Tupel (μacc, μsa) dar. Daher werden während der IL-Trainingsphase weder die Werte der Standardabweichung (σacc, σsa) noch die Wertfunktionen (vacc, vsa) geschätzt. Diese Funktionen und das Tiefenreaktionsmodul werden in der IL+RL-Trainingsphase erlernt.
Wie in der Abbildung gezeigt, zeigt es das Training desselben neuronalen Netzwerks ab der Vortrainingsphase (blaue Kurve, IL+RL) und vergleicht es mit den RL-Ergebnissen (rote Kurve, reines RL) in vier Fällen . Auch wenn das IL+RL-Training weniger Zeiten erfordert als reines RL und der Trend stabiler ist, erzielen beide Methoden gute Erfolgsquoten (Abbildung a).
Darüber hinaus beweist die in Abbildung b dargestellte Belohnungskurve, dass die mit dem reinen RL-Ansatz (rote Kurve) erhaltene Richtlinie nicht einmal die akzeptable Lösung für mehr Trainingszeit erreicht, während die IL+RL-Richtlinie dies innerhalb weniger Minuten erreicht Fragmente Optimale Lösung (blaue Kurve in Abbildung b). In diesem Fall wird die optimale Lösung durch die orange gestrichelte Linie dargestellt. Diese Basislinie stellt die durchschnittliche Belohnung dar, die ein simulierter Agent erhält, der 50.000 Segmente in 4 Szenarien ausführt. Der simulierte Agent folgt den deterministischen Regeln, die mit denen zur Erfassung des IL-Vortrainingsdatensatzes identisch sind, d. h. die reine Verfolgungsregel wird für die Biegung und die IDM-Regel für die Längsbeschleunigung verwendet. Die Kluft zwischen den beiden Ansätzen könnte sogar noch größer sein, wenn es darum geht, Systeme für die Durchführung komplexerer Manöver zu trainieren, bei denen möglicherweise eine Interaktion zwischen Intelligenz und Körper erforderlich ist.
Das obige ist der detaillierte Inhalt vonDeep Reinforcement Learning befasst sich mit dem realen autonomen Fahren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!