Heim >Technologie-Peripheriegeräte >KI >Überblick über das Technologie-Framework für autonomes Fahren
Der Kern des unbemannten Fahrsystems lässt sich in drei Teile zusammenfassen: Wahrnehmung, Planung und Steuerung. Die Interaktion dieser Teile und ihre Interaktion mit Fahrzeughardware und anderen Fahrzeugen kann durch die folgende Abbildung dargestellt werden:
Wahrnehmung bezeichnet die Fähigkeit eines unbemannten Fahrsystems, Informationen aus der Umgebung zu sammeln und daraus relevantes Wissen zu extrahieren. Unter ihnen bezieht sich die Umweltwahrnehmung insbesondere auf die Fähigkeit, die Szene in der Umgebung zu verstehen, z. B. die Position von Hindernissen, die Erkennung von Verkehrszeichen/Markierungen, die Erkennung von Fußgängern und Fahrzeugen sowie die semantische Klassifizierung von Daten. Im Allgemeinen ist Lokalisierung auch ein Teil der Wahrnehmung. Unter Lokalisierung versteht man die Fähigkeit eines unbemannten Fahrzeugs, seine Position relativ zur Umgebung zu bestimmen.
Planung ist der Prozess, bei dem autonome Fahrzeuge gezielte Entscheidungen für ein bestimmtes Ziel treffen. Bei autonomen Fahrzeugen bezieht sich dieses Ziel normalerweise auf das Erreichen des Ziels vom Startpunkt aus unter Vermeidung von Hindernissen und die kontinuierliche Optimierung von Fahrwegen und Verhaltensweisen, um dies sicherzustellen Sicherheit und Komfort der Passagiere. Die Planungsebene ist üblicherweise in drei Ebenen unterteilt: Missionsplanung, Verhaltensplanung und Bewegungsplanung.
Kontrolle ist schließlich die Fähigkeit des autonomen Fahrzeugs, geplante Aktionen, die von höheren Schichten ausgehen, genau auszuführen.
Um sicherzustellen, dass unbemannte Fahrzeuge die Umgebung verstehen und erfassen, muss der Umgebungswahrnehmungsteil des unbemannten Fahrsystems normalerweise eine große Menge an Informationen erhalten Informationen zur Umgebung umfassen insbesondere: Standort von Hindernissen, Geschwindigkeit und mögliches Verhalten, befahrbares Gebiet, Verkehrsregeln usw. Unbemannte Fahrzeuge erhalten diese Informationen normalerweise durch die Zusammenführung von Daten von mehreren Sensoren wie Lidar, Kamera und Millimeterwellenradar. In diesem Abschnitt werfen wir einen kurzen Blick auf die Rolle von Lidar und Kameras bei Anwendungen für das autonome Fahren.
Lidar ist eine Art Gerät, das Laser zur Erkennung und Entfernungsmessung verwendet. Es kann jede Sekunde Millionen von Lichtimpulsen an die Umgebung senden. Sein Inneres ist eine rotierende Struktur, die es Lidar ermöglicht, Objekte in Echtzeit zu erkennen und zu erkennen. Erstellen Sie eine 3D-Karte der Umgebung.
Im Allgemeinen rotiert und scannt Lidar die Umgebung mit einer Geschwindigkeit von etwa 10 Hz. Das Ergebnis eines Scans ist eine dreidimensionale Karte, die aus dichten Punkten besteht Das Diagramm wird als Punktwolkendiagramm bezeichnet. Wie in der folgenden Abbildung dargestellt, handelt es sich um eine Punktwolkenkarte, die mit Velodyne VLP-32c Lidar erstellt wurde:
Lidar wird aufgrund seiner Zuverlässigkeit immer noch am häufigsten verwendet Wichtiger Sensor im unbemannten Fahrsystem. Bei der tatsächlichen Verwendung besteht jedoch häufig das Problem, dass die Punktwolke zu spärlich ist oder sogar einige Punkte verloren gehen. Bei unregelmäßigen Objektoberflächen ist die Verwendung von Lidar sehr schwierig Es ist schwierig, Muster zu erkennen, und Lidar kann in Situationen wie starkem Regen nicht verwendet werden.
Um Punktwolkeninformationen zu verstehen, führen wir im Allgemeinen zweistufige Operationen an Punktwolkendaten durch: Segmentierung (Segmentierung) und Klassifizierung (Klassifizierung). Unter anderem besteht die Segmentierung darin, einzelne Punkte im Punktwolkenbild zu mehreren Ganzen zu gruppieren, während die Klassifizierung darin besteht, zu unterscheiden, zu welcher Kategorie diese Ganzen gehören (z. B. Fußgänger, Fahrzeuge und Hindernisse). Segmentierungsalgorithmen können in die folgenden Kategorien eingeteilt werden:
Ob es sich jedoch um die Merkmalsextraktionsmethode (SVM) oder die ursprüngliche Punktwolke (CNN-Methode) handelt, basiert aufgrund der geringen Auflösung der Lidar-Punktwolke selbst auf Zielen mit spärlichen Reflexionspunkten (z. B. Fußgängern). Die Punktwolkenklassifizierung ist nicht zuverlässig, daher kombinieren wir in der Praxis häufig Lidar- und Kamerasensoren, nutzen die hohe Auflösung der Kamera zur Klassifizierung von Zielen und die Zuverlässigkeit von Lidar zur Hinderniserkennung und -entfernung und integrieren die Vorteile beider Umweltbewusstsein.
In fahrerlosen Systemen verwenden wir normalerweise Bildsehen, um die Straßenerkennung und Zielerkennung auf der Straße abzuschließen. Die Straßenerkennung umfasst die Erkennung von Straßenlinien (Fahrspurerkennung), die Erkennung befahrbarer Bereiche (Fahrbare Bereichserkennung); die Erkennung von Verkehrszeichen umfasst die Erkennung anderer Fahrzeuge (Fahrzeugerkennung), die Erkennung von Fußgängern (Fußgängererkennung), Verkehrszeichen sowie die Erkennung und Klassifizierung aller Verkehrsteilnehmer wie Ampelerkennung.
Die Erkennung von Fahrspurlinien umfasst zwei Aspekte: Der erste besteht darin, die Fahrspurlinien zu identifizieren, und bei gekrümmten Fahrspurlinien kann deren Krümmung berechnet werden. Der zweite Aspekt besteht darin, den Versatz des Fahrzeugs selbst relativ zu den Fahrspurlinien zu bestimmen (d. h. niemand fährt) Wo sich das Auto auf der Fahrspurlinie befindet). Eine Methode besteht darin, einige Fahrspurmerkmale zu extrahieren, einschließlich Kantenmerkmale (normalerweise Farbverläufe wie der Sobel-Operator), Fahrspurlinienfarbmerkmale usw., Polynome zu verwenden, um Pixel anzupassen, von denen wir glauben, dass sie Fahrspurlinien sind, und dann auf dem Polynom zu basieren und Die aktuelle Position der am Fahrzeug montierten Kamera bestimmt die Krümmung der vorausliegenden Fahrspur und die Abweichung des Fahrzeugs relativ zur Fahrspur.
Ein aktueller Ansatz zur Erkennung befahrbarer Bereiche besteht darin, ein tiefes neuronales Netzwerk zu verwenden, um die Szene direkt zu segmentieren, d. h. durch das Training eines tiefen neuronalen Netzwerks, das Pixel für Pixel klassifiziert, um das Ausschneiden befahrbarer Bereiche im Bild abzuschließen.
Die Erkennung und Klassifizierung von Verkehrsteilnehmern basiert derzeit hauptsächlich auf Deep-Learning-Modellen. Zu den häufig verwendeten Modellen gehören zwei Kategorien:
Regionalvorschlagsbasierte Deep-Learning-Zielerkennungsalgorithmen, dargestellt durch RCNN (RCNN, SPP-NET, Fast-RCNN, Faster-RCNN usw.);
Die derzeit am weitesten verbreitete Positionierungsmethode für unbemannte Fahrzeuge ist zweifellos die Positionierungsmethode, die das Global Positioning System (GPS) und das Trägheitsnavigationssystem (Trägheitsnavigationssystem) integriert. Unter ihnen liegt die Positionierungsgenauigkeit von GPS im Bereich von zehn Dabei sind hochpräzise GPS-Sensoren relativ teuer. Die Positionierungsmethode mit GPS/IMU kann keine hochpräzise Positionierung erreichen, wenn das GPS-Signal fehlt oder schwach ist, beispielsweise in Tiefgaragen und städtischen Gebieten, die von Hochhäusern umgeben sind. Daher kann sie nur für unbemannte Fahraufgaben in verwendet werden einige Szenarien.
Der kartengestützte Positionierungsalgorithmus ist ein weiterer weit verbreiteter unbemannter Fahrzeugpositionierungsalgorithmus (Simultaneous Localization And Mapping, SLAM). Er ist der Vertreter dieser Art von Algorithmus. Das Ziel von SLAM besteht darin, gleichzeitig eine Karte zu erstellen Zur Lokalisierung bestimmt SLAM den Standort des aktuellen Fahrzeugs und den Standort der aktuell beobachteten Merkmale, indem es bereits beobachtete Umgebungsmerkmale nutzt.
Dies ist ein Prozess zur Schätzung der aktuellen Position anhand vergangener Priors und aktueller Beobachtungen. In der Praxis verwenden wir normalerweise Bayes'sche Filter, insbesondere den erweiterten Kalman-Filter (Extended Kalman Filter). (Partikelfilter).
Obwohl SLAM ein Forschungsschwerpunkt im Bereich der Roboterpositionierung ist, gibt es Probleme bei der Verwendung von SLAM-Positionierung im eigentlichen Entwicklungsprozess unbemannter Fahrzeuge. Im Gegensatz zu Robotern bewegen sich unbemannte Fahrzeuge über große Entfernungen und in großen offenen Umgebungen. Bei Langstreckenbewegungen nimmt die Abweichung der SLAM-Positionierung mit zunehmender Distanz allmählich zu, was zu Positionierungsfehlern führt.
In der Praxis besteht eine effektive Methode zur unbemannten Fahrzeugpositionierung darin, den Scan-Matching-Algorithmus im ursprünglichen SLAM zu ändern. Konkret kartieren wir nicht mehr, sondern verwenden vorab Sensoren wie Lidar, um die regionale Punktwolke abzubilden Die Karte wird erstellt und ein Teil der „Semantik“ wird der Karte durch Programm- und manuelle Verarbeitung hinzugefügt (z. B. spezifische Anmerkungen zu Fahrspurlinien, Straßennetzen, Positionen von Ampeln, Verkehrsregeln des aktuellen Straßenabschnitts usw.). . Dazu gehört auch die Semantik. Die Karte ist die hochpräzise Karte (HD-Karte) unseres fahrerlosen Autos.
Bei der tatsächlichen Positionierung verwenden wir den aktuellen LIDAR-Scan und die vorgefertigte hochpräzise Karte, um einen Punktwolkenabgleich durchzuführen und die spezifische Position unseres unbemannten Fahrzeugs in der Karte zu bestimmen. Diese Methode wird zusammenfassend als Scan-Abgleichsmethode bezeichnet (Scan Matching), die gebräuchlichste Scan-Matching-Methode ist die Iterative Closest Point-Methode (ICP), die die Punktwolkenregistrierung basierend auf der Abstandsmessung zwischen dem aktuellen Scan und dem Zielscan abschließt.
Darüber hinaus ist die Normalverteilungstransformation (NDT) auch eine gängige Methode zur Punktwolkenregistrierung. Sie erreicht die Registrierung auf der Grundlage von Punktwolken-Feature-Histogrammen. Positionierungsmethoden, die auf der Punktwolkenregistrierung basieren, können ebenfalls eine Positionierungsgenauigkeit von 10 Zentimetern erreichen.
Obwohl die Punktwolkenregistrierung die globale Positionierung unbemannter Fahrzeuge relativ zur Karte liefern kann, ist diese Methode zu sehr auf vorgefertigte hochpräzise Karten angewiesen und muss dennoch mit GPS-Positionierung in offenen Straßenabschnitten verwendet werden Die Szene Für relativ einzelne Straßenabschnitte (z. B. Autobahnen) sind die Kosten für die Verwendung von GPS plus Punktwolkenabgleich relativ hoch.
Der hierarchische Strukturentwurf des unbemannten Fahrplanungssystems stammt aus der DAPRA Urban Challenge aus dem Jahr 2007. Im Wettbewerb haben die meisten teilnehmenden Teams niemanden Das Planungsmodul des Autos ist in drei Ebenen unterteilt: Aufgabenplanung, Verhaltensplanung und Aktionsplanung. Unter diesen wird die Aufgabenplanung normalerweise auch als Pfadplanung oder Routenplanung (Routenplanung) bezeichnet, die für den relativ übergeordneten Pfad verantwortlich ist Planung, wie z. B. die Auswahl des Start- und Endpunkts.
Wir können unser aktuelles Straßensystem in einen gerichteten Netzwerkgraphen (Directed Graph Network) verarbeiten. Dieser gerichtete Netzwerkgraph kann die Verbindungen zwischen Straßen, Verkehrsregeln, Straßenbreite usw. darstellen. Informationen sind im Wesentlichen der „semantische“ Teil von Die hochpräzise Karte, die wir im vorherigen Abschnitt zur Positionierung erwähnt haben, wird als Routennetzwerkdiagramm bezeichnet, wie in der folgenden Abbildung dargestellt:
Jede gerichtete Kante in einem solchen Straßennetzdiagramm wird gewichtet. Dann wird das Pfadplanungsproblem unbemannter Fahrzeuge zu dem im Straßennetzdiagramm, damit das Fahrzeug ein bestimmtes Ziel erreichen kann (normalerweise von Punkt A nach Punkt B). , der Prozess der Auswahl des optimalen (d. h. minimalen Verlusts) Pfads basierend auf einer bestimmten Methode, dann wird das Problem zu einem gerichteten Graphsuchproblem. Traditionelle Algorithmen wie der Dijkstra-Algorithmus (Algorithmus) und der A*-Algorithmus (A*-Algorithmus) werden hauptsächlich verwendet zur Berechnung der optimalen Pfadsuche diskreter Diagramme und zur Suche nach dem Pfad mit dem geringsten Verlust im Straßennetzdiagramm.
Verhaltensplanung wird manchmal auch Entscheidungsfindung (Decision Maker) genannt. Die Hauptaufgabe besteht darin, die Ziele der Missionsplanung und die aktuelle Situation vor Ort (Standort und Verhalten anderer Fahrzeuge und Fußgänger) zu verfolgen Aktuelle Verkehrsregeln usw.), um die nächste Entscheidung zu treffen, die das unbemannte Fahrzeug ausführen soll. Er kann als Co-Pilot des Fahrzeugs verstanden werden. Er weist den Fahrer entsprechend dem Ziel und der aktuellen Verkehrssituation an, ob er folgen soll Überholen oder ob man anhalten und auf Fußgänger warten soll, um Fußgänger zu überholen usw.
Eine Methode zur Verhaltensplanung besteht darin, eine komplexe Finite-State-Maschine (FSM) zu verwenden, die eine große Anzahl von Aktionsphrasen enthält. Die Finite-State-Maschine beginnt bei einem Grundzustand und springt je nach Fahrszenario in verschiedene Zustände Der Aktionszustand übergibt die Aktionsphrase an die untere Aktionsplanungsebene. Die folgende Abbildung zeigt eine einfache endliche Zustandsmaschine: Es gibt bestimmte Sprungbedingungen zwischen Zuständen, und einige Zustände können sich selbst wiederholen (z. B. der Verfolgungszustand und der Wartezustand in der Abbildung oben). Obwohl es sich derzeit um die gängige Verhaltensentscheidungsmethode in unbemannten Fahrzeugen handelt, weisen Finite-State-Maschinen immer noch große Einschränkungen auf: Erstens müssen viele Zustände manuell entworfen werden, um das Fahrzeug in den Zustand zu versetzen, um komplexe Verhaltensentscheidungen zu treffen des Finite-State-Automaten; wenn der Finite-State-Automat nicht mit Deadlock-Schutz ausgelegt ist, kann das Fahrzeug sogar in eine Art Deadlock geraten.
Aktionsplanung
Der Prozess der Planung einer Reihe von Aktionen zur Erreichung eines bestimmten Zwecks (z. B. Vermeidung von Hindernissen) wird als Aktionsplanung bezeichnet. Im Allgemeinen werden zwei Indikatoren verwendet, um die Leistung von Aktionsplanungsalgorithmen zu berücksichtigen: Recheneffizienz (Recheneffizienz) und Vollständigkeit (Vollständigkeit). Aktionsplanungsalgorithmen variieren stark. Dies hängt weitgehend vom Konfigurationsraum ab. Wenn ein Aktionsplanungsalgorithmus eine Lösung in einer begrenzten Zeit zurückgeben kann, wenn es keine Lösung gibt, rufen wir auf Die Aktion Der Planungsalgorithmus ist abgeschlossen.
Nach der Einführung des Konzepts des Konfigurationsraums wird die Aktionsplanung unbemannter Fahrzeuge wie folgt durchgeführt: Gegeben eine Anfangskonfiguration (Startkonfiguration), eine Zielkonfiguration (Zielkonfiguration) und mehrere Einschränkungen (Einschränkung), finden Sie eine Reihe von Aktionen im Das Ergebnis dieser Aktionen ist die Überführung des unbemannten Fahrzeugs von der Ausgangskonfiguration in die Zielkonfiguration unter Einhaltung der Einschränkungen.
Im Anwendungsszenario autonomer Fahrzeuge ist die Anfangskonfiguration normalerweise der aktuelle Zustand des autonomen Fahrzeugs (aktuelle Position, Geschwindigkeit und Winkelgeschwindigkeit usw.), und die Zielkonfiguration stammt aus der oberen Ebene der Aktionsplanung – Die Verhaltensplanungsschicht und die Einschränkungen sind die Bewegungsgrenzen des Fahrzeugs (maximale Winkelamplitude, maximale Beschleunigung usw.).
Offensichtlich ist der Rechenaufwand für die Aktionsplanung in einem hochdimensionalen Konfigurationsraum sehr groß. Um die Integrität des Planungsalgorithmus sicherzustellen, müssen wir fast alle möglichen Pfade durchsuchen, was kontinuierlich ein Problem darstellt Aktionsplanung. Das Problem des „Fluchs der Dimensionalität“. Das Kernkonzept zur Lösung dieses Problems in der aktuellen Aktionsplanung besteht darin, das kontinuierliche Raummodell in ein diskretes Modell umzuwandeln. Die spezifischen Methoden können in zwei Kategorien zusammengefasst werden: kombinatorische Planung und stichprobenbasierte Planung.
Kombinatorische Methoden der Bewegungsplanung finden Wege durch einen kontinuierlichen Konfigurationsraum, ohne auf Näherungen zurückzugreifen. Aufgrund dieser Eigenschaft können sie als exakte Algorithmen bezeichnet werden. Kombinationsmethoden finden eine vollständige Lösung, indem sie eine diskrete Darstellung des Planungsproblems erstellen, wie zum Beispiel der Aktionsplanungsalgorithmus, der vom selbstfahrenden Auto BOSS der CMU in der Darpa Urban Challenge verwendet wird. Sie verwenden zunächst einen Pfadplaner, um alternative Pfad- und Zielpunkte zu generieren. Diese Pfade und Zielpunkte sind durch die Fusionsdynamik erreichbar) und wählen dann den optimalen Pfad durch den Optimierungsalgorithmus aus.
Eine weitere Diskretisierungsmethode sind Grid-Decomposition-Ansätze. Nach der Rasterung des Konfigurationsraums können wir normalerweise einen Optimierungspfad mithilfe eines Suchalgorithmus für diskrete Graphen (z. B. A*) finden.
Sampling-basierte Methoden werden aufgrund ihrer probabilistischen Vollständigkeit häufig verwendet. Die häufigsten Algorithmen sind PRM (Probabilistic Roadmaps), RRT (Rapidly-Exploring Random Tree) und FMT (Fast-Marching Trees) in unbemannten Fahrzeugen Die Zustandsstichprobenmethode muss die Kontrollbeschränkungen der beiden Zustände berücksichtigen und außerdem eine Methode benötigen, die effektiv abfragen kann, ob der Stichprobenzustand und der übergeordnete Zustand erreichbar sind. Später werden wir State-Lattice Planners, einen auf Stichproben basierenden Bewegungsplanungsalgorithmus, im Detail vorstellen.
Als unterste Schicht des unbemannten Fahrzeugsystems besteht die Aufgabe der Steuerungsschicht darin, unsere geplanten Aktionen umzusetzen. Daher ist der Bewertungsindex des Steuerungsmoduls die Genauigkeit der Steuerung. Es finden Messungen innerhalb des Steuerungssystems statt, und der Controller gibt Steuerungsmaßnahmen aus, indem er die Messungen des Fahrzeugs mit unserem erwarteten Zustand vergleicht. Dieser Vorgang wird als Feedback-Steuerung bezeichnet.
Rückkopplungsregelung wird häufig im Bereich der Automatisierungssteuerung eingesetzt. Der typischste Rückkopplungsregler ist der PID-Regler (Proportional-Integral-Derivative-Regler). Das Fehlersignal besteht aus drei Elementen: dem Anteil des Fehlers (Proportion), dem Integral des Fehlers (Integral) und der Ableitung des Fehlers (Derivative).
Die PID-Steuerung ist aufgrund ihrer einfachen Implementierung und stabilen Leistung immer noch die am weitesten verbreitete Steuerung in der Branche. Als reine Rückkopplungssteuerung weist die PID-Steuerung jedoch gewisse Probleme bei der Steuerung unbemannter Fahrzeuge auf: Die PID-Steuerung ist eine rein basierte Steuerung Aufgrund der Verzögerung des Bremsmechanismus führt dies zu einer Verzögerung unserer Steuerung. Da PID kein internes Systemmodell hat, kann PID keine Verzögerung einführen Methode basierend auf Modellvorhersage.
05 Fazit
Bei der tatsächlichen Wahrnehmung unbemannter Fahrzeuge müssen wir normalerweise mehrere Messungen wie Lidar, Kamera und Millimeterwellenradar fusionieren. Dazu gehören Fusionsalgorithmen wie Kalman-Filterung, erweiterte Kalman-Filterung und Lidar.
Es gibt viele Positionierungsmethoden für unbemannte Fahrzeuge und Roboter. Die aktuelle Mainstream-Methode ist die Verwendung der GPS + Trägheitsnavigationssystem-Fusionsmethode, und die zweite ist die Verwendung von Lidar-Punktwolken-Scan- und Matching-Methoden. Wir werden uns auf ICP und NDT konzentrieren und andere punktwolkenbasierte Algorithmen.
Das Planungsmodul ist außerdem in drei Ebenen unterteilt: Aufgabenplanung (auch Pfadplanung genannt), Verhaltensplanung und Aktionsplanung. Die auf dem Straßennetz und dem diskreten Pfadsuchalgorithmus basierende Aufgabenplanung wird später vorgestellt In diesem Kapitel konzentrieren wir uns auf die Anwendung endlicher Zustandsautomaten bei der Verhaltensentscheidung. Auf der Ebene des Aktionsplanungsalgorithmus konzentrieren wir uns auf stichprobenbasierte Planungsmethoden.
Wir verwenden häufig auf Modellvorhersage basierende Steuerungsmethoden für das Steuerungsmodul unbemannter Fahrzeuge. Bevor wir jedoch den modellprädiktiven Steuerungsalgorithmus als Verständnis der grundlegenden Rückkopplungssteuerung verstehen, haben wir uns zuvor mit dem PID-Regler befasst. Anschließend untersuchen wir die beiden einfachsten Arten von Fahrzeugmodellen – kinematische Fahrradmodelle und dynamische Fahrradmodelle – und führen schließlich die modellprädiktive Steuerung ein.
Obwohl es in der Branche aktueller Konsens ist, unbemannte Fahrzeuge als Roboter zu verstehen und das von Robotern entwickelte Denken zur Verarbeitung unbemannter Fahrzeugsysteme zu nutzen, gibt es auch einige Fälle, in denen künstliche Intelligenz oder Agenten einfach verwendet werden, um unbemanntes Fahren durchzuführen. Darunter sind das durchgängige fahrerlose Fahren auf Basis von Deep Learning und Fahragenten auf Basis von Reinforcement Learning aktuelle Forschungsschwerpunkte.
Das obige ist der detaillierte Inhalt vonÜberblick über das Technologie-Framework für autonomes Fahren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!