-
GEBIET DER TECHNIK
-
Die Offenbarung betrifft im Allgemeinen die Fahrzeugnavigation und den Fahrzeugbetrieb.
-
ALLGEMEINER STAND DER TECHNIK
-
Fahrzeuge können mit Rechenvorrichtungen, Netzwerken, Sensoren und Steuerungen ausgestattet sein, um Daten bezüglich der Umgebung des Fahrzeugs zu sammeln und das Fahrzeug auf Grundlage der Daten zu betreiben. Fahrzeugsensoren können Daten, die zu fahrende Routen und zu vermeidende Objekte in der Umgebung des Fahrzeugs betreffen, bereitstellen. Der Betrieb des Fahrzeugs kann vom Sammeln genauer und aktueller Daten zu Objekten in der Umgebung eines Fahrzeugs während des Betriebs des Fahrzeugs auf einer Fahrbahn abhängen.
-
KURZDARSTELLUNG
-
Fahrzeuge können dazu ausgestattet sein, sowohl in einem autonomen als auch in einem insassengesteuerten Modus betrieben zu werden. Unter einem halb- oder vollautonomen Modus verstehen die Erfinder einen Betriebsmodus, in dem ein Fahrzeug teilweise oder vollständig von einer Rechenvorrichtung als Teil eines Systems gesteuert werden kann, das Sensoren und Steuerungen aufweist. Das Fahrzeug kann besetzt oder unbesetzt sein, wobei das Fahrzeug in beiden Fällen teilweise oder vollständig ohne Unterstützung eines Insassen gesteuert werden kann. Für die Zwecke dieser Offenbarung ist ein autonomer Modus als ein Modus definiert, bei dem jedes von Antrieb (z. B. über einen Antriebsstrang, der eine Brennkraftmaschine und/oder einen Elektromotor beinhaltet), Bremsung und Lenkung des Fahrzeugs durch einen oder mehrere Fahrzeugcomputer gesteuert wird; in einem halbautonomen Modus steuert/steuern der/die Fahrzeugcomputer eines oder mehrere von Antrieb, Bremsung und Lenkung des Fahrzeugs. In einem nichtautonomen Modus wird keines von diesen durch einen Computer gesteuert.
-
Eine Rechenvorrichtung in einem Verkehrsinfrastruktursystem kann dazu programmiert sein, Daten zu der Außenumgebung eines Fahrzeugs zu sammeln und die Daten dazu zu verwenden, einen Fahrzeugweg zu bestimmen, auf dem ein Fahrzeug in einem autonomen oder halbautonomen Modus betrieben werden soll. Ein Fahrzeug kann auf Grundlage eines Fahrzeugwegs auf einer Fahrbahn fahren, indem Befehle bestimmt werden, die Antriebsstrang-, Brems- und Lenkungskomponenten zum Betreiben des Fahrzeugs zu steuern, sodass das Fahrzeug den Weg entlang fährt. Die Daten hinsichtlich der Außenumgebung können den Standort eines oder mehrerer sich bewegender Objekte, wie etwa Fahrzeuge und Fußgänger usw., in einer Umgebung um ein Fahrzeug beinhalten und können durch eine Rechenvorrichtung in dem Fahrzeug dazu verwendet werden, das Fahrzeug zu betreiben.
-
Die Rechenvorrichtung in einem Verkehrsinfrastruktursystem kann einen Fahrzeugweg bestimmen, auf dem ein Fahrzeug betrieben werden soll, auf Grundlage einer modifizierten Version einer Nash-Gleichgewichtslösung für ein Multiagentenspiel, wobei die Nash-Gleichgewichtslösung durch Durchführen einer adaptiven Rastersuchenoptimierungstechnik modifiziert wird, die auf Belohnungen und Strafen für die Agenten beruht, um optimale Fahrzeugaktionen in Echtzeit und bei einer Sekundenbruchteilsfrequenz, d. h. mindestens 5 Hz zu bestimmen. Die mehreren Agenten können eines oder mehrere von autonomen Fahrzeugen, nicht autonomen Fahrzeugen, stationären Objekten und nicht stationären Objekten, einschließlich Fußgängern, beinhalten. Die Belohnungen und die Strafen für die Agenten können durch Simulieren des Verhaltens der Agenten bestimmt werden, um mögliche zukünftige Zustände für die Agenten zum Bestimmen des Fahrzeugwegs zu bestimmen.
-
Hierin ist ein Verfahren offenbart, das Folgendes beinhaltet: Bestimmen von optimalen Fahrzeugaktionen auf Grundlage einer modifizierten Version einer Nash-Gleichgewichtslösung für ein Multiagentenspiel, wobei die Nash-Gleichgewichtslösung durch Durchführen einer adaptiven Rastersuchenoptimierungstechnik modifiziert wird, die auf Belohnungen und Strafen für die Agenten beruht, um optimale Fahrzeugaktionen zu bestimmen, wobei die Agenten eines oder mehrere von autonomen Fahrzeugen, nicht autonomen Fahrzeugen, stationären Objekten und nicht stationären Objekten einschließlich Fußgängern beinhalten und wobei die Belohnungen und die Strafen für die Agenten durch Simulieren des Verhaltens der Agenten bestimmt sind, um mögliche zukünftige Zustände für die Agenten zu bestimmen, um die optimalen Fahrzeugaktionen zu bestimmen. Ein Fahrzeugweg kann auf Grundlage der optimalen Fahrzeugaktionen und des Fahrzeugwegs bestimmt sein, der auf ein Fahrzeug heruntergeladen ist. Ein oder mehrere zukünftige Zustände können für die Agenten bestimmt werden, um die optimalen Fahrzeugaktionen unter Verwendung einer Rechenvorrichtung in dem Fahrzeug zu bestimmen. Der Fahrzeugweg kann für das Fahrzeug auf Grundlage der optimalen Fahrzeugaktionen und Herunterladen des Fahrzeugwegs auf das autonome Fahrzeug bestimmt werden. Das Verhalten der Agenten kann simuliert werden, um einen oder mehrere Zustände für die Agenten zu bestimmen, auf Grundlage von Bestimmen von einer oder mehreren von Stellen der Agenten, Geschwindigkeiten der Agenten, Fahrtrichtungen der Agenten und einer Vielzahl von möglichen Wegen für jeden Agenten. Die optimalen Fahrzeugaktionen können durch Bewerten einer Dienstprogrammfunktion bestimmt werden, die die Belohnungen und die Strafen für jeden der Agenten beinhaltet.
-
Die Dienstprogrammfunktion für Aktionen der mehreren Agenten kann auf Grundlage von Bestimmen von geschätzten Zuständen der stationären und nicht stationären Objekte bestimmt werden, die bei Zeitschritten t bestimmt sind, die innerhalb eines Zeithorizonts h beinhaltet sind, und ist auf Grundlage einer gewichteten Summe von Komponentendienstprogrammfunktionen berechnet. Die Dienstprogrammfunktion kann Bestimmen der Belohnungen und Strafen für jede der Aktionen der Agenten auf Grundlage von geschätzten Zuständen der stationären und nicht stationären Objekte an zukünftigen Zeitschritten t beinhalten, die innerhalb des Zeithorizonts h beinhaltet sind. Die Belohnungen können auf einem oder mehreren von Vorwärtsbewegen bei gewünschten Geschwindigkeiten beruhen und die Strafen beruhen auf Abweichen von reibungslosem Fahrzeugbetrieb, wobei der reibungslose Fahrzeugbetrieb ebenfalls Einschränkungen von Agentenbeschleunigung, Agentensteuerung und Agentenbremsen beinhaltet. Die Strafen können auf einer oder mehreren Fahrbahnabweichungen, Abweichungen von der Straße, Kollisionen mit den stationären Objekten und Kollisionen mit den nicht stationären Objekten beruhen. Die Belohnungen und Strafen können auf Grundlage von Sensordaten berechnet werden, die von Sensoren gesammelt sind, die dazu angeordnet sind, die mehreren Agenten zu beobachten. Die Sensoren können dazu angeordnet sein, die mehreren Agenten zu beobachten, die in einem Verkehrsinfrastruktursystem beinhaltet sind. Der Fahrzeugweg, der auf den optimalen Fahrzeugaktionen beruht, kann auf Grundlage von Polynomfunktionen bestimmt sein. Das Fahrzeug kann entlang des Fahrzeugwegs durch Steuern von Fahrzeugantriebsstrang, Fahrzeuglenkung und Fahrzeugbremsen bei einer Frequenz von mindestens 5 Hz betrieben werden. Das Betreiben des Fahrzeugs kann auf Lokalisieren eines oder mehrerer Objekte in Sensordaten beruhen.
-
Ferner ist ein computerlesbares Medium offenbart, das Programmanweisungen zum Ausführen einiger oder aller der vorstehenden Verfahrensschritte speichert. Ferner ist ein Computer offenbart, der dazu programmiert ist, einige oder alle der vorstehenden Verfahrensschritte auszuführen, einschließlich eines Computergeräts, das zu Folgendem programmiert ist: Bestimmen von optimalen Fahrzeugaktionen auf Grundlage einer modifizierten Version einer Nash-Gleichgewichtslösung für ein Multiagentenspiel, wobei die Nash-Gleichgewichtslösung durch Durchführen einer adaptiven Rastersuchenoptimierungstechnik modifiziert wird, die auf Belohnungen und Strafen für die Agenten beruht, um optimale Fahrzeugaktionen zu bestimmen, wobei die Agenten eines oder mehrere von autonomen Fahrzeugen, nicht autonomen Fahrzeugen, stationären Objekten und nicht stationären Objekten einschließlich Fußgängern beinhalten und wobei die Belohnungen und die Strafen für die Agenten durch Simulieren des Verhaltens der Agenten bestimmt sind, um mögliche zukünftige Zustände für die Agenten zu bestimmen, um die optimalen Fahrzeugaktionen zu bestimmen, Bestimmen eines Fahrzeugwegs auf Grundlage der optimalen Fahrzeugaktionen und Herunterladen des Fahrzeugwegs auf ein Fahrzeug. Ein oder mehrere zukünftige Zustände können für die Agenten bestimmt werden, um die optimalen Fahrzeugaktionen unter Verwendung einer Rechenvorrichtung in dem Fahrzeug zu bestimmen. Der Fahrzeugweg kann für das Fahrzeug auf Grundlage der optimalen Fahrzeugaktionen und Herunterladen des Fahrzeugwegs auf das autonome Fahrzeug bestimmt werden. Das Verhalten der Agenten kann simuliert werden, um einen oder mehrere Zustände für die Agenten zu bestimmen, auf Grundlage von Bestimmen von einer oder mehreren von Stellen der Agenten, Geschwindigkeiten der Agenten, Fahrtrichtungen der Agenten und einer Vielzahl von möglichen Wegen für jeden Agenten. Die optimalen Fahrzeugaktionen können durch Bewerten einer Dienstprogrammfunktion bestimmt werden, die die Belohnungen und die Strafen für jeden der Agenten beinhaltet.
-
Der Computer kann ferner dazu programmiert sein, die Dienstprogrammfunktion für Aktionen der mehreren Agenten auf Grundlage von Bestimmen von geschätzten Zuständen der stationären und nicht stationären Objekte zu bestimmen, die bei Zeitschritten t bestimmt sind, die innerhalb eines Zeithorizonts h beinhaltet sind, und auf Grundlage einer gewichteten Summe von Komponentendienstprogrammfunktionen berechnet ist. Die Dienstprogrammfunktion kann Bestimmen der Belohnungen und Strafen für jede der Aktionen der Agenten auf Grundlage von geschätzten Zuständen der stationären und nicht stationären Objekte an zukünftigen Zeitschritten t beinhalten, die innerhalb des Zeithorizonts h beinhaltet sind. Die Belohnungen können auf einem oder mehreren von Vorwärtsbewegen bei gewünschten Geschwindigkeiten beruhen und die Strafen beruhen auf Abweichen von reibungslosem Fahrzeugbetrieb, wobei der reibungslose Fahrzeugbetrieb ebenfalls Einschränkungen von Agentenbeschleunigung, Agentensteuerung und Agentenbremsen beinhaltet. Die Strafen können auf einer oder mehreren Fahrbahnabweichungen, Abweichungen von der Straße, Kollisionen mit den stationären Objekten und Kollisionen mit den nicht stationären Objekten beruhen. Die Belohnungen und Strafen können auf Grundlage von Sensordaten berechnet werden, die von Sensoren gesammelt sind, die dazu angeordnet sind, die mehreren Agenten zu beobachten. Die Sensoren können dazu angeordnet sein, die mehreren Agenten zu beobachten, die in einem Verkehrsinfrastruktursystem beinhaltet sind. Der Fahrzeugweg, der auf den optimalen Fahrzeugaktionen beruht, kann auf Grundlage von Polynomfunktionen bestimmt sein. Das Fahrzeug kann entlang des Fahrzeugwegs durch Steuern von Fahrzeugantriebsstrang, Fahrzeuglenkung und Fahrzeugbremsen bei einer Frequenz von mindestens 5 Hz betrieben werden. Das Betreiben des Fahrzeugs kann auf Lokalisieren eines oder mehrerer Objekte in Sensordaten beruhen.
-
Figurenliste
-
- 1 ist eine Darstellung eines beispielhaften Verkehrsinfrastruktursystems.
- 2 ist eine Darstellung einer beispielhaften Verkehrsszene.
- 3 ist eine Darstellung einer beispielhaften Ansicht von oben einer Verkehrsszene.
- 4 ist eine Darstellung einer weiteren beispielhaften Ansicht von oben einer Verkehrsszene.
- 5 ist ein Ablaufdiagramm eines beispielhaften Prozesses zum Bestimmen einer adaptiveSeek-Lösung.
- 6 ist ein Ablaufdiagramm eines beispielhaften Prozesses zum Betreiben eines Fahrzeugs unter Verwendung einer adaptiveSeek-Lösung.
-
DETAILLIERTE BESCHREIBUNG
-
1 ist ein Diagramm eines Verkehrsinfrastruktursystems 100, das ein Fahrzeug 110 beinhaltet, das in einem autonomen („autonom“ für sich bedeutet in dieser Offenbarung „vollautonom“), einem halbautonomen und einem insassengesteuerten (auch als nichtautonom bezeichneten) Modus betrieben werden kann. Eine oder mehrere Rechenvorrichtungen 115 des Fahrzeugs 110 können von Sensoren 116 Daten bezüglich des Betriebs des Fahrzeugs 110 empfangen. Die Rechenvorrichtung 115 kann das Fahrzeug 110 in einem autonomen Modus, einem halbautonomen Modus oder einem nichtautonomen Modus betreiben.
-
Die Rechenvorrichtung 115 beinhaltet einen Prozessor und einen Speicher, wie sie bekannt sind. Zudem beinhaltet der Speicher eine oder mehrere Arten computerlesbarer Medien und speichert Anweisungen, die durch den Prozessor ausführbar sind, um verschiedene Vorgänge durchzuführen, einschließlich der hierin offenbarten. Zum Beispiel kann die Rechenvorrichtung 115 eine Programmierung beinhalten, um eines oder mehrere von Bremsen, Antrieb (z. B. Beschleunigungssteuerung in dem Fahrzeug 110 durch Steuern von einem oder mehreren von einer Brennkraftmaschine, einem Elektromotor, Hybridmotor usw.), Lenkung, Klimaregelung, Innen- und/oder Außenleuchten usw. des Fahrzeugs zu betreiben sowie um zu bestimmen, ob und wann die Rechenvorrichtung 115 im Gegensatz zu einem menschlichen Fahrer derartige Vorgänge steuern soll.
-
Die Rechenvorrichtung 115 kann mehr als eine Rechenvorrichtung, z. B. Steuerungen oder dergleichen, die in dem Fahrzeug 110 zum Überwachen und/oder Steuern verschiedener Fahrzeugkomponenten beinhaltet sind, z.B. eine Antriebsstrangsteuerung 112, eine Bremssteuerung 113, eine Lenksteuerung 114 usw., beinhalten oder z. B. über einen Fahrzeugkommunikationsbus, wie ferner nachstehend beschrieben, kommunikativ mit dieser (diesen) gekoppelt sein. Die Rechenvorrichtung 115 ist im Allgemeinen zur Kommunikation in einem Fahrzeugkommunikationsnetzwerk angeordnet, das z. B. einen Bus in dem Fahrzeug 110, wie etwa ein Controller Area Network (CAN) oder dergleichen, beinhaltet; das Netzwerk des Fahrzeugs 110 kann zusätzlich oder alternativ drahtgebundene oder drahtlose Kommunikationsmechanismen, wie sie bekannt sind, beinhalten, z. B. Ethernet oder andere Kommunikati onsprotokolle.
-
Über das Fahrzeugnetzwerk kann die Rechenvorrichtung 115 Nachrichten an verschiedene Vorrichtungen in dem Fahrzeug übertragen und/oder Nachrichten von den verschiedenen Vorrichtungen empfangen, z. B. Steuerungen, Betätigungselemente, Sensoren usw. einschließlich der Sensoren 116. Alternativ oder zusätzlich kann in Fällen, bei denen die Rechenvorrichtung 115 tatsächlich mehrere Vorrichtungen umfasst, das Fahrzeugkommunikationsnetzwerk für Kommunikationen zwischen Vorrichtungen verwendet werden, die in dieser Offenbarung als die Rechenvorrichtung 115 dargestellt sind. Ferner können, wie nachstehend erwähnt, verschiedene Steuerungen oder Erfassungselemente, wie etwa die Sensoren 116, der Rechenvorrichtung 115 Daten über das Fahrzeugkommunikationsnetzwerk bereitstellen.
-
Zusätzlich kann die Rechenvorrichtung 115 dazu konfiguriert sein, über ein Netzwerk 130, das, wie nachstehend beschrieben, Hardware, Firmware und Software beinhaltet, die es der Rechenvorrichtung 115 ermöglichen, über ein Netzwerk 130, wie etwa drahtloses Internet (WI-FI®) oder Mobilfunknetze, mit einem Remote-Servercomputer 120 zu kommunizieren, durch eine Fahrzeug-Infrastruktur-Schnittstelle (V-to-I-Schnittstelle) 111 mit einem Remote-Servercomputer 120, z. B. einem Cloud-Server, zu kommunizieren. Die F-I-Schnittstelle 111 kann dementsprechend Prozessoren, Speicher, Sendeempfänger usw. beinhalten, die dazu konfiguriert sind, verschiedene drahtgebundene und/oder drahtlose Netzwerktechnologien zu nutzen, z. B. Mobilfunk, BLUETOOTH® und drahtgebundene und/oder drahtlose Paketnetzwerke. Die Rechenvorrichtung 115 kann zum Kommunizieren mit anderen Fahrzeugen 110 über die F-I-Schnittstelle 111 unter Verwendung von Fahrzeug-Fahrzeug-(V-to-V-)Netzwerken z. B. gemäß dedizierter Nahbereichskommunikation (dedicated short range communications - DSRC) und/oder dergleichen, konfiguriert sein, die z.B. ad hoc zwischen Fahrzeugen 110 in der Nähe gebildet werden oder über infrastrukturbasierte Netzwerke gebildet werden. Die Rechenvorrichtung 115 beinhaltet zudem einen nichtflüchtigen Speicher, wie er bekannt ist. Die Rechenvorrichtung 115 kann Informationen protokollieren, indem sie die Informationen zum späteren Abrufen und Übertragen über das Fahrzeugkommunikationsnetzwerk und eine Fahrzeug-Infrastruktur(F-I)-Schnittstelle 111 an einen Servercomputer 120 oder eine mobile Vorrichtung 160 eines Benutzers in nichtflüchtigem Speicher speichert.
-
Wie bereits erwähnt, ist in Anweisungen, die in dem Speicher gespeichert und durch den Prozessor der Rechenvorrichtung 115 ausführbar sind, im Allgemeinen eine Programmierung zum Betreiben einer oder mehrerer Komponenten des Fahrzeugs 110, z. B. Bremsen, Lenkung, Antrieb usw., ohne Eingreifen eines menschlichen Bedieners beinhaltet. Unter Verwendung von in der Rechenvorrichtung 115 empfangenen Daten, z. B. der Sensordaten von den Sensoren 116, dem Servercomputer 120 usw., kann die Rechenvorrichtung 115 ohne einen Fahrer zum Betreiben des Fahrzeugs 110 verschiedene Bestimmungen vornehmen und/oder verschiedene Komponenten und/oder Vorgänge des Fahrzeugs 110 steuern. Zum Beispiel kann die Rechenvorrichtung 115 eine Programmierung zum Regeln des Betriebsverhaltens des Fahrzeugs 110 (d. h. physischer Manifestationen des Betriebs des Fahrzeugs 110), wie etwa Geschwindigkeit, Beschleunigung, Abbremsung, Lenken usw., und des taktischen Verhaltens (d. h. Steuerung des Betriebsverhaltens auf eine Weise, die in der Regel ein sicheres und effizientes Abfahren einer Route erreichen soll), wie etwa einer Entfernung zwischen Fahrzeugen und/oder einer Zeit zwischen Fahrzeugen, Spurwechseln, des Mindestabstands zwischen Fahrzeugen, der Mindestzeit zur Wegquerung bei Linksabbiegung, der Zeit bis zur Ankunft an einem bestimmten Standort und der Mindestzeit bis zum Überqueren der Kreuzung an einer Kreuzung (ohne Ampel) beinhalten.
-
Im hierin verwendeten Sinne beinhaltet der Ausdruck Steuerungen Rechenvorrichtungen, die in der Regel dazu programmiert sind, ein konkretes Fahrzeugteilsystem zu überwachen und/oder zu steuern. Zu Beispielen gehören eine Antriebsstrangsteuerung 112, eine Bremssteuerung 113 und eine Lenksteuerung 114. Eine Steuerung kann eine elektronische Steuereinheit (electronic control unit - ECU) sein, wie sie bekannt ist, und möglicherweise eine zusätzliche Programmierung wie in dieser Schrift beschrieben beinhalten. Die Steuerungen können kommunikativ mit der Rechenvorrichtung 115 verbunden sein und Anweisungen von dieser empfangen, um das Teilsystem gemäß den Anweisungen zu betätigen. Zum Beispiel kann die Bremssteuerung 113 Anweisungen zum Betreiben der Bremsen des Fahrzeugs 110 von der Rechenvorrichtung 115 empfangen.
-
Die eine oder die mehreren Steuerungen 112, 113, 114 für das Fahrzeug 110 können bekannte elektronische Steuereinheiten (ECUs) oder dergleichen beinhalten, die als nicht einschränkende Beispiele eine oder mehrere Antriebsstrangsteuerungen 112, eine oder mehrere Bremssteuerungen 113 und eine oder mehrere Lenksteuerungen 114 beinhalten. Jede der Steuerungen 112, 113, 114 kann jeweilige Prozessoren und Speicher und ein oder mehrere Betätigungselemente beinhalten. Die Steuerungen 112, 113, 114 können mit einem Kommunikationsbus des Fahrzeugs 110 programmiert und verbunden sein, wie zum Beispiel einem Controller-Area-Network-(CAN-)Bus oder einem Local-Interconnect-Network-(LIN-)Bus, um Anweisungen von der Rechenvorrichtung 115 zu empfangen und Betätigungselemente auf Grundlage der Anweisungen zu steuern.
-
Die Sensoren 116 können vielfältige Vorrichtungen beinhalten, die für die Bereitstellung von Daten über den Fahrzeugkommunikationsbus bekannt sind. Zum Beispiel kann ein Radar, das an einem vorderen Stoßfänger (nicht gezeigt) des Fahrzeugs 110 befestigt ist, eine Entfernung von dem Fahrzeug 110 zu einem nächsten Fahrzeug vor dem Fahrzeug 110 bereitstellen oder kann ein Sensor für ein globales Positionsbestimmungssystem (global positioning system - GPS), der in dem Fahrzeug 110 angeordnet ist, geografische Koordinaten des Fahrzeugs 110 bereitstellen. Die durch das RADAR und/oder die anderen Sensoren 116 bereitgestellte(n) Entfernung(en) und/oder die durch den GPS-Sensor bereitgestellten geografischen Koordinaten können durch die Rechenvorrichtung 115 verwendet werden, um das Fahrzeug 110 zum Beispiel autonom oder teilautonom zu betreiben.
-
Das Fahrzeug 110 ist im Allgemeinen ein Landfahrzeug 110, das zu autonomem und/oder teilautonomem Betrieb fähig ist und das drei oder mehr Räder aufweist, z. B. ein PKW, ein Kleinlaster usw. Das Fahrzeug 110 beinhaltet einen oder mehrere Sensoren 116, die F-I-Schnittstelle 111, die Rechenvorrichtung 115 und eine oder mehrere Steuerungen 112, 113, 114. Die Sensoren 116 können Daten in Bezug auf das Fahrzeug 110 und die Umgebung, in der das Fahrzeug 110 betrieben wird, sammeln. Beispielhaft und nicht einschränkend können die Sensoren 116 z. B. Höhenmesser, Kameras, LIDAR, Radar, Ultraschallsensoren, Infrarotsensoren, Drucksensoren, Beschleunigungsmesser, Gyroskope, Temperatursensoren, Drucksensoren, Hallsensoren, optische Sensoren, Spannungssensoren, Stromsensoren, mechanische Sensoren wie etwa Schalter usw. beinhalten. Die Sensoren 116 können verwendet werden, um die Umgebung zu erfassen, in der das Fahrzeug 110 betrieben wird, z. B. können die Sensoren 116 Phänomene wie etwa Wetterbedingungen (Niederschlag, äußere Umgebungstemperatur usw.), die Neigung einer Straße, den Standort einer Straße (z. B. unter Verwendung von Straßenrändern, Spurmarkierungen usw.) oder Standorte von Zielobjekten wie etwa Nachbarfahrzeugen 110 erfassen. Die Sensoren 116 können ferner verwendet werden, um Daten, einschließlich dynamischer Daten des Fahrzeugs 110, die sich auf Vorgänge des Fahrzeugs 110 beziehen, wie etwa Geschwindigkeitsvektor, Gierrate, Lenkwinkel, Motordrehzahl, Bremsdruck, Öldruck, des auf die Steuerungen 112, 113, 114 in dem Fahrzeug 110 angewandten Leistungspegels, Konnektivität zwischen Komponenten und einer genauen und rechtzeitigen Leistung von Komponenten des Fahrzeugs 110, zu erheben.
-
2 ist eine Darstellung einer Verkehrsszene 200. Die Verkehrsszene 200 beinhaltet eine Fahrbahn 202 und mehrere Agenten, einschließlich Fahrzeuge 204. Die mehreren Agenten können eines oder mehrere von autonomen Fahrzeugen 204, nicht autonomen Fahrzeugen 204, stationären Objekten und nicht stationären Objekten, einschließlich Fußgängern, beinhalten. Die Fahrzeuge 204 können autonome und nichtautonome Fahrzeuge 204 beinhalten, wie vorstehend in Bezug auf 1 beschrieben. Die Verkehrsszene 200 kann auch einen Videosensor 206 beinhalten, der an einem Pfosten 208 montiert ist, der ein Sichtfeld 210 aufweist. Das Montieren des Videosensors 206 an dem Pfosten 208 oder einer anderen Befestigungsstruktur, wie etwa einem Turm oder einem Gebäude, kann dem Videosensor 206 ein Sichtfeld 210 bereitstellen, das einen oder mehrere Agenten beinhaltet, einschließlich Fahrzeugen 204, die auf der Fahrbahn 202 fahren. Der Videosensor 206 kann mit einem Verkehrsinfrastruktursystem 100 in Kommunikation stehen, das Videodaten von dem Videosensor 206 bezüglich Agenten, die auf einer Fahrbahn fahren, erlangt. Sensoren, die in einem Verkehrsinfrastruktursystem 100 beinhaltet sind, sind nicht auf Videosensoren 206 beschränkt. Sensoren, die in einem Verkehrsinfrastruktursystem 100 beinhaltet sind, können auch Radar, Lidar usw. beinhalten, die die gleiche Art von Informationen bereitstellen können wie die Videosensoren 206.
-
Ein Verkehrsinfrastruktursystem 100 kann eine Vielzahl von Rechenvorrichtungen beinhalten, einschließlich eines Servercomputers 120. Das Verkehrsinfrastruktursystem 100 kann eine oder mehrere Rechenvorrichtungen in Kommunikation mit einem oder mehreren Videosensoren 206 beinhalten, die Sichtfelder 210 aufweisen, die Daten bezüglich Abschnitten einer Fahrbahn 202 sammeln. Rechenvorrichtungen, die in einer Verkehrsinfrastruktur beinhaltet sind, um Daten von Abschnitten einer Fahrbahn 202 zu sammeln und zu verarbeiten, können als Kantenrechenknoten bezeichnet werden. Kantenrechenknoten können eine Rechenvorrichtung 115 beinhalten. Kantenrechenknoten können vernetzt und in Gruppen zusammengefügt sein, die Daten bezüglich zusammenhängender Abschnitte von Fahrbahnen 202, zum Beispiel Kreuzungen, verarbeiten. Gruppen von Kantenrechenknoten können mit anderen Rechenvorrichtungen in einem Verkehrsinfrastruktursystem, zum Beispiel Servercomputern 120, in Kommunikation stehen, die Daten von einer Vielzahl von Kantenknoten verarbeiten und Entscheidungen bezüglich Agentenverkehr in Abschnitten einer Fahrbahn 202 treffen.
-
3 ist eine Darstellung von oben einer Verkehrsszene 300. Die Verkehrsszene 300 beinhaltet Fahrbahnen 302. Die Fahrbahnen 302 bilden eine Kreuzung 304. Verkehr, der sich der Kreuzung 304 nähert und sich innerhalb dieser bewegt, wird durch die Verkehrssignale 308, 310, 312, 314 gesteuert. Die Verkehrsszene 300, die die Kreuzung 304 und Abschnitte der Fahrbahnen 302 nahe der Kreuzung 304 beinhaltet, wird durch die Videosensoren 326, 328, 330, 332, 334, zusammen Sensoren 336, beobachtet. Die Verkehrsszene 300 kann auch durch andere Sensoren beobachtet werden, einschließlich zum Beispiel Lidar- und Radarsensoren. Die Sensoren 336 stehen in Kommunikation mit einem oder mehreren Kantencomputerknoten, die in einem Verkehrsinfrastruktursystem 100 beinhaltet sind und Videodaten von den Sensoren 336 sammeln und verarbeiten. Objekte auf Fahrbahnen 302 werden als Agenten bezeichnet. Agenten können in zwei Gruppen unterteilt werden: Agenten für autonome Fahrzeuge (AV), einschließlich der Fahrzeuge 110, 318, 320, die hierin als AV-Agenten Ia bezeichnet werden, und Agenten für nicht autonome Fahrzeuge (nicht-AV), einschließlich der nichtautonomen Fahrzeuge 322, 234, hierin als Nicht-AV-Agenten In bezeichnet, lebende Objekte, einschließlich Fußgänger 340 und Tiere usw., und statische Objekte, einschließlich Schmutz, Barrieren usw. AV-Agenten Ia beinhalten Rechenvorrichtungen 115, die mit dem Verkehrsinfrastruktursystem 100 kommunizieren. Rechenvorrichtungen 115, die in den AV-Agenten beinhaltet sind, können als Thin Clients bezeichnet werden, da die meisten der beim Bestimmen von Fahrzeugwegen enthaltenen Rechenaufgaben durch das Verkehrsinfrastruktursystem 100 durchgeführt und auf die AV-Agenten heruntergeladen werden. In einigen Beispielen kann die Berechnung auch vollständig an Bord eines Fahrzeugs 110 erfolgen, indem die Ausführung des adaptiveSeek-Algorithmus an jeden Fahrzeugagenten verteilt wird. Der Satz aller Agenten I = {Ia, In} beinhaltet sowohl AV- als auch Nicht-AV-Agenten.
-
Auf Grundlage der Kommunikation mit AV-Agenten kann das Verkehrsinfrastruktursystem 100 Ziel- und Wegdaten für jeden AV-Agenten bestimmen. Das Verkehrsinfrastruktursystem 100 kann zudem Fahrspurmarkierungen, Fahrbahnränder und Verkehrszeichen auf Grundlage von Kartendaten bestimmen, die zum Beispiel von Servercomputern 120 über das Internet empfangen werden. Das Verkehrsinfrastruktursystem 100 kann auch mit den Verkehrssignalen 308, 310, 312, 314 kommunizieren, um den Zustand der Verkehrssignale 308, 310, 312, 314 zu bestimmen, das heißt, welches Farblicht aktuell eingeschaltet ist und wann sich die Farben ändern. Ein Verkehrssteuerungssystem 100 kann Zustände aller Agenten mit den Sichtfeldern der Sensoren 336 unter Verwendung von Kantencomputerknoten bestimmen, wobei ein Agentenzustand einen Standort, eine Geschwindigkeit und eine Fahrtrichtung beinhaltet. Statische Objektzustände beinhalten Standorte und Nullgeschwindigkeit, wobei Geschwindigkeitsvektor Geschwindigkeit und Fahrtrichtung beinhaltet. Auf Grundlage von Kartendaten bezüglich der Fahrbahn 302, Daten bezüglich der Zustände des Verkehrssignals 308, 310, 312, 314, Daten bezüglich Zielen des AV-Agenten Ia und Kurzzeitschätzungen von Nicht-AV-Agenten In auf Grundlage eines vorgeschriebenen Wegszenarios oder einer Aktionsabfolge kann eine Entscheidungsfindungsfunktion, die in einem Kantenrechenknoten beinhaltet ist, der in einem Verkehrsinfrastruktursystem 100 beinhaltet ist, optimale Fahrzeugwege zum Herunterladen auf AV-Agenten Ia bestimmen, die es den AV-Agenten Ia ermöglichen, mit einer vorgeschriebenen Geschwindigkeit zu ihren jeweiligen Zielen zu fahren, während Kontakt mit anderen Agenten I vermieden wird. Vorgegebene Wegszenarien oder Aktionsabfolgen können, unter Berücksichtigung der abgeleiteten Aktionen, unter Verwendung eines generischen kinematischen Modells (nachstehend näher erläutert) bestimmt werden, das zukünftige Standorte, eine Geschwindigkeit und Richtungen für Nicht-AV-Agenten In auf Grundlage von beobachteter Stelle, Geschwindigkeit und Richtung für jeden Nicht-AV-Agenten In bestimmt.
-
Das Bestimmen eines Fahrzeugwegs kann das Bestimmen eines Fahrzeugweg-Splines beinhalten, auf dem ein AV-Agent Ia, einschließlich eines Fahrzeugs 110, betrieben werden soll. Ein Fahrzeugweg-Spline ist durch stückweise Polynome definiert, die eine Reihe von n verbundenen Punkten in der X-Y-Ebene beinhalten, die vorhergesagte Bewegungsbahnen des Fahrzeugs 110 in n zukünftigen Zeitschritten beinhaltet. Ein Fahrzeugweg kann eine vorhergesagte Fahrzeuggeschwindigkeit und Beschleunigungen an Punkten entlang des Wegpolynoms beinhalten. Einschränkungen bei einem Fahrzeugwegpolynom können die Längs- und Querbeschleunigungen begrenzt werden, die auf das Fahrzeug 110, 314, 318, 320 angewendet werden sollen, wobei Bremsmoment und Antriebsstrangdrehmoment als positive und negative Längsbeschleunigung angewendet werden und Lenkdrehmoment im Uhrzeigersinn und gegen den Uhrzeigersinn als linke und rechte Querbeschleunigung angewendet werden. Eine Rechenvorrichtung 115 in einem Fahrzeug 110 kann durch Steuern des Antriebsstrangs, der Lenkung und der Bremsen des Fahrzeugs über die Steuerungen 112, 113, 114 das Fahrzeug 110 betreiben, um das Fahrzeug 110 dazu zu veranlassen, mit vorhergesagten Geschwindigkeiten und Beschleunigungen entlang eines Fahrzeugwegs zu fahren, wie vorstehend in Bezug auf 1 erörtert.
-
Häufig verwendete Techniken zur Fahrzeugwegplanung für Fahrzeuge 110 kombinieren Suchalgorithmen mit regelbasierten Heuristiken. Markov-Entscheidungsprozesse, tiefe neuronale Netzwerke mit Reinforcement Learning und tiefe neuronale Netzwerke mit Inverse Reinforcement Learning sind Beispiele für maschinelles Lernen und Optimierungstechniken, die für die Fahrzeugwegplanung verwendet werden können. Die hier erörterten Techniken verbessern die Fahrzeugwegplanung durch die Verwendung von auf Spieltheorie beruhenden Techniken, die einen alternativen Ansatz zur Wegplanung einführen, der eine menschenähnliche Lösung für die Wegplanung ermöglicht. Ein Hauptvorteil der vorliegenden Techniken besteht darin, dass sie Beschränkungen von vordefinierten regelbasierten Entscheidungen, einer festen Eingabe-/Zustands-/ Ausgabestruktur des neuronalen Netzwerks und die Notwendigkeit einer umfassenden Simulation der Maschinenlernverfahren vermeiden.
-
Die hier erörterten Techniken erörtern ein rechnerisch effizientes Verfahren zur Wegplanung, das als modifizierte Version der Nash-Gleichgewichtslösung eines Multiagentspiels abgeleitet ist. Nash-Gleichgewichtslösungen sind Lösungen für nicht kooperative Spiele, bei denen angenommen wird, dass jeder Spieler die Strategien der anderen Spieler kennt und kein Spieler einen Vorteil erlangen kann, indem er Strategien einseitig ändert, während die anderen Spieler ihre optimalen Strategien unverändert lassen. In den hierin beschriebenen Techniken werden Nash-Gleichgewichtslösungen unter Verwendung einer auf einer Rastersuche beruhenden adaptiven Optimierungstechnik modifiziert, die zu einem flexiblen Algorithmus führt, der alternative Formulierungen des Wegplanungsproblems ermöglicht, die auf unterschiedliche Selbstfahreinstellungen und eine sich ändernde Umgebung anwendbar sind. Die auf einer Rastersuche beruhende adaptive Optimierung bezieht sich auf eine Rechentechnik, die Ergebniswerte auf Grundlage eines Rasters berechnet, das mit Bewertungen gefüllt ist, die für mehrere Belohnungen und Strafen für mehrere Agenten berechnet werden, einschließlich Berechnen von paarweisen Belohnungen und Strafen für Paare von Agenten. Diese Technik wird als „adaptiveSeek“ -Lösung bezeichnet, da sie optimale Lösungen auf Grundlage des Durchsuchens des mit Bewertungen für alle Agenten befüllten Gitters über einen endlichen Zeithorizont h bestimmt, um eine beste (optimale) Bewertung für alle Agenten gleichzeitig zu bestimmen.
-
Eine adaptiveSeek-Lösung kann als eine verkehrsinfrastrukturzentrierte Lösung durchgeführt werden, bei der Fahrzeugwege durch einen oder mehrere Kantenrechenknoten für mehrere AV-Agenten Ia bestimmt werden, wobei die AV-Agenten Ia mit Kantencomputerknoten kommunizieren, die in einem Verkehrsinfrastruktursystem 100 beinhaltet sind, das den Verkehr für eine gegebene Verkehrsszene 300 koordiniert. Andere Beispiele können als verteilte Fahrzeugwegplanung bezeichnet werden, wobei die gesamte Erfassung, Datensammlung und Fahrzeugwegplanung durch Rechenvorrichtungen 115 durchgeführt wird, die in jedem der AV-Agenten Ia beinhaltet sind, mit minimaler Eingabe von Kantencomputerknoten, die in einem Verkehrsinfrastruktursystem 100 beinhaltet sind. In verteilten Fahrzeugwegplanungssystemen können die Kantencomputerknoten Sensordaten von den Sensoren 336 an jeden der AV-Agenten Ia kommunizieren, um zum Beispiel Sensordaten zu erweitern, die von jedem der AV-Agenten Ia erlangt wurden.
-
Kantenrechenknoten können Daten bezüglich Nicht-AV-Agenten In erlangen, die keine Fahrzeugwege an die Kantenrechenknoten kommunizieren, einschließlich nichtautonomer Fahrzeuge 322, 324 und eines oder mehrerer Fußgänger 340. Andere Agenten, die bestimmte Fahrzeugwege oder -orte nicht an Kantenrechenknoten kommunizieren, können zum Beispiel Fahrräder, Tiere und statische Objekte beinhalten. Kantenrechenvorrichtungen können Zeitreihendaten verwenden, die von Sensoren 336 in Bezug auf Nicht-AV-Agenten In, die keine Fahrzeugwege kommunizieren, gesammelt werden, um vorhergesagte Wege für Nicht-AV-Agenten In auf Grundlage des Standorts und der beobachteten Bewegung der Agenten zu bestimmen. Zum Beispiel kann angenommen werden, dass sich ein Fußgänger 340, der sich auf einem Fußgängerüberweg 338 bewegt, weiter mit der beobachteten Geschwindigkeit innerhalb des Fußgängerüberwegs 338 bewegt. Ein Nicht-AV-Agent In kann in Beispielen, in denen unterschiedliche Bewegungsrichtungen möglich sind, mehrere bestimmte Wege aufweisen. Zum Beispiel kann das Fahrzeug 324 in der Verkehrsszene 300 geradeaus weiterfahren oder nach rechts abbiegen. Kantenrechenknoten können außerdem Standortinformationen bezüglich stationärer Objekte erlangen, die den Verkehr auf den Fahrbahnen 302 beeinflussen, wie etwa Verkehrsbarrieren, Bauschilder und Schmutz.
-
4 ist ein Diagramm der Verkehrsszene 300 mit Wegen 402, 404, 406 von Nicht-AV- Agenten In (gestrichelte Linien mit Pfeilen). Die Wege 402, 404, 406 von Nicht-AV-Agenten In können durch einen Kantenrechenknoten in einem Verkehrsinfrastruktursystem 100 auf Grundlage von durch Sensoren 336 gesammelten Daten bestimmt werden. Ein Kantenrechenknoten in Kommunikation mit einem oder mehreren Sensoren 336 kann eine Zeitsequenz von Videobildern der Verkehrsszene 300 erlangen und unter Verwendung von Bildverarbeitungstechniken, die tiefe neuronale Faltungsnetzwerke beinhalten, Objekte in den Sichtfeldern der Sensoren 336 identifizieren und verfolgen. Durch Bestimmen der Stelle, Ausrichtung und Vergrößerung von Linsen, die in jedem Sensor 336 beinhaltet sind, und dadurch Bestimmen von Sichtfeldern 210, die jedem Sensor 336 entsprechen, können die Stelle, Geschwindigkeit und Richtung jedes Nicht-AV-Agenten In geschätzt werden. Auf Grundlage des Standorts jedes Nicht-AV-Agenten In innerhalb der Verkehrsszene 300 und Verkehrsregeln, die den Standorten entsprechen, können ein oder mehrere Wege 402, 404, 406 für jeden Nicht-AV-Agenten In vorhergesagt werden. Zum Beispiel ist es gemäß den Verkehrsregeln, die der Kreuzung 304 entsprechen, gestattet, dass das Fahrzeug 322 nach links abbiegt oder geradeaus fährt, das Fahrzeug 320 nach rechts abbiegt oder geradeaus fährt und es dem Fußgänger 340 ermöglicht wird, die Fahrbahn 302 innerhalb des Fußgängerüberwegs 338 weiter zu überqueren. Durch Erlangen von Sensordaten von Sensoren 336 mit Kantenrechenknoten, die in einem Verkehrsinfrastruktursystem 100 beinhaltet sind, Verarbeiten der Daten, um Objektzustände zu bestimmen, einschließlich Stellen, Geschwindigkeiten und Richtungen für Objekte, die in den Sensordaten beinhaltet sind, und Kombinieren der bestimmten Stellen, Geschwindigkeiten und Richtungen, wobei Verkehrsregeln auf Grundlage von Kartendaten bestimmt werden, können ein oder mehrere Wege 402, 404, 406 für jeden Nicht-AV-Agenten In, der in einer Verkehrsszene 300 beinhaltet ist, bestimmt werden.
-
Ein in einem Verkehrsinfrastruktursystem 100 beinhalteter Kantenrechenknoten kann zu einem Zeitpunkt t Sensordaten von den Sensoren 336 empfangen, die Sensordaten verarbeiten, um Objektzustände für jeden Nicht-AV-Agenten In, der in einer Verkehrsszene 300 beinhaltet ist, zu bestimmen, Fahrzeugwege für jeden AV-Agenten Ia und jeden Nicht-AV-Agenten In über einen Zeithorizont der Länge h zu bestimmen, optimale Aktionen für jeden der AV-Agenten Ia zu bestimmen und die optimalen Aktionen an die AV-Agenten Ia zu kommunizieren. Der Kantenrechenknoten kann die Zustände mit allen verbundenen Objekten in seinem Bereich teilen. Die AV-Agenten können wählen, den bestimmten optimalen Aktionen, die durch den Kantenrechenknoten vorhergesagt werden, zu folgen oder die Zustandsdaten mit Daten von ihren bordeigenen Sensoren zu kombinieren, um ihre eigenen optimalen Aktionen durch Umsetzen des adaptiveSeek-Algorithmus zu bestimmen. Der Kantenrechenknoten kann diese fünf Aktivitäten mit einer Rate von fünf Hz oder mehr durchführen, wobei die Zeithorizontlänge h zum Beispiel größer als fünf Sekunden sein kann. Die optimalen Aktionen sind durch Fahrzeugwege 408, 410, 412 für die Fahrzeuge 324, 318, 110 veranschaulicht und können Längsbeschleunigungen und Lenkrichtungen beinhalten. Die optimalen Aktionen werden auf Grundlage des Berechnens einer adaptiveSeek-Lösung bestimmt, wie nachstehend in Bezug auf 5 erörtert.
-
Hier erörterte Techniken können den Betrieb von AV-Agenten Ia, einschließlich eines Fahrzeugs 110, verbessern, indem Fahrzeugwege bestimmt werden, die es den AV-Agenten Ia ermöglichen, ein gewünschtes Ziel mit maximal zulässiger Geschwindigkeit zu erreichen, während Kontakt mit allen Agenten im Hinblick auf die darin beinhalteten Sensoren 336 vermieden wird, die in einer Verkehrsszene 300 beinhaltet sind, und zwar durch Vornehmen von Kurzzeitschätzungen bezüglich zukünftiger Zustände von Nicht-AV-Agenten In über einen endlichen Zeithorizont h auf Grundlage eines generischen kinematischen Modells. Ein generisches kinematisches Modell ist eine Technik zum Berechnen von zukünftiger Objektstelle, -geschwindigkeit und -richtung auf Grundlage eines Fahrradmodells der Fahrzeugbewegung, wobei angenommen wird, dass ein Fahrzeug zwei Räder aufweist, wobei eines der Räder die Antriebskraft (Fahren) liefert und eines der Räder die Richtung (Lenkung) liefert. Das Fahrradmodell vereinfacht Berechnungen des Fahrzeugzustands, während genaue Ergebnisse erzeugt werden. Eine adaptiveSeek-Lösung kann für ein fahrzeugzentriertes System berechnet werden, bei dem angenommen wird, dass AV-Agenten Ia mit Fahrzeugsensoren ausgestattet sind, einschließlich einem oder mehreren von Videokameras, Lidarsensoren und Radarsensoren und einer Rechenvorrichtung 115, die Daten von dem/den Fahrzeugsensoren und/oder Kantensensoren erlangt, und können einen Fahrzeugweg auf Grundlage von Berechnungen bestimmen, die durch eine in einem Fahrzeug 110 beinhaltete Rechenvorrichtung 115 durchgeführt werden. Die Berechnungen sind mit der infrastrukturzentrierten Lösung identisch, außer dass nur ein AV-Agent Ia (zum Beispiel ein Fahrzeug 110) berücksichtigt wird.
-
5 ist ein Ablaufdiagramm eines Prozesses 500, der in Bezug auf 1-4 eines Prozesses 500 zum Bestimmen von Fahrzeugaktionen auf Grundlage des Berechnens einer adaptiveSeek-Lösung zum Bestimmen optimaler Aktionen, einschließlich Fahrzeugwegen, für einen oder mehrere AV-Agenten Ia beschrieben ist. Der Prozess 500 kann durch einen Prozessor der Rechenvorrichtung umgesetzt werden, der zum Beispiel Informationen von Sensoren als Eingabe heranzieht und Befehle ausführt und Objektinformationen ausgibt. Der Prozess 500 kann an der Kantenrechenvorrichtung oder der fahrzeuginternen Rechenvorrichtung 115 umgesetzt werden. Bei der Umsetzung in der Kantenvorrichtung können Daten von den Sensoren an der Kante gesammelt werden. Bei der Umsetzung in dem Fahrzeug können Daten zum Beispiel sowohl von Kanten- als auch von fahrzeuginternen Sensoren stammen. Der Prozess 500 beinhaltet mehrere Blöcke, die in der veranschaulichten Reihenfolge ausgeführt werden können. Der Prozess 500 könnte alternativ oder zusätzlich weniger Blöcke beinhalten oder kann die Blöcke in anderer Reihenfolge ausgeführt beinhalten.
-
Wie vorstehend erläutert, ist eine adaptiveSeek-Lösung eine modifizierte Version einer Nash-Gleichgewichtslösung für ein Multiagentspiel, wobei die Nash-Gleichgewichtslösung unter Verwendung einer adaptiven Rastersuchoptimierungstechnik modifiziert wird. Das Bestimmen der adaptiveSeek-Lösung für das Multiagentspiel beinhaltet das Berechnen von Belohnungen und Strafen für die mehreren Agenten auf Grundlage von Straf- und Belohnungsfunktionen
Das Berechnen der Belohnungs- und Straffunktionen beinhaltet das Simulieren des Verhaltens der mehreren Agenten, um mögliche zukünftige Zustände für die mehreren Agenten zu bestimmen, um die optimalen Fahrzeugaktionen zu bestimmen. Der Fahrzeugzustand wird durch die Stelle, die Geschwindigkeit und die Richtung eines Fahrzeugs definiert. Der optimale Fahrzeugzustand ist ein Fahrzeugweg, der an der aktuellen Fahrzeugposition beginnt und zu einem Fahrzeugziel fährt, während Belohnungen maximiert und Strafen minimiert werden. Ein infrastrukturzentriertes System geht davon aus, dass die adaptiveSeek-Lösung durch einen Kantenrechenknoten bestimmt wird, wobei dreidimensionale (3D-) Objekte, die keine AV-Agenten Ia sind, durch den Kantenrechenknoten als Nicht-AV-Agenten In identifiziert werden und durch Menschen gefahrene Fahrzeuge, statische Objekte (Straßenschmutz, Barrieren usw.) und lebendige Objekte, (einschließlich Fußgänger, Polizisten, Tiere usw.) beinhalten.
-
Der Prozess 500 beginnt bei Block 502, wo eine Rechenvorrichtung 115, die in einem Kantenrechenknoten beinhaltet ist, Anfangszustände für alle Agenten I = {Ia, In} bestimmt. Objektzustände, einschließlich Stellen, Geschwindigkeiten und Richtungen, werden auf Grundlage von erlangten Sensordaten gemessen. Objektzustände von statischen Objekten werden durch die Stelle und die Nullgeschwindigkeit identifiziert. Die Stellengeschwindigkeit und -richtung für AV-Agenten Ia kann auf Kommunikation mit jedem der AV-Agenten Ia beruhen, zum Beispiel unter Verwendung des Netzwerks 110. Fahrbahnmerkmale, einschließlich Fahrbahnmarkierungen, Verkehrssignale usw., können auf Grundlage des Kombinierens von erlangten Sensordaten und heruntergeladenen Kartendaten bestimmt werden.
-
Bei Block 504 werden alle Agenten I mit einem aktuellen Zustand initialisiert, der Stelle, Geschwindigkeit und Richtung beinhaltet, die entweder durch Verarbeiten von erlangten Sensordaten für Nicht-AV-Agenten In oder durch Kommunikation mit einem AV-Agenten Ia über ein Netzwerk 110 bestimmt werden. Jeder Zustand s = [ x y v (φ]T, der ein umgesetzter Vektor ist, wobei x und y die Koordinaten des Massenmittelpunkts des Objekts sind, v die Geschwindigkeit ist und φ die Trägheitsrichtung oder -richtung ist.
-
Bei Block 506 bestimmt eine Rechenvorrichtung 115, die in einem Kantenrechenknoten beinhaltet ist, für jeden Agenten I, ob der Agent I einen möglichen zukünftigen Weg oder mehr als einen zukünftigen Weg aufweist, wie vorstehend in Bezug auf 4 beschrieben. Für Agenten I mit einem zukünftigen Weg, geht der Prozess 500 zu Block 508 über. Für Agenten I mit mehr als einem zukünftigen Weg geht der Prozess 500 zu Block 510 über.
-
Bei Block
508 bestimmt eine Rechenvorrichtung
115, die in einem Kantenrechenknoten beinhaltet ist, die Änderung des Zustands eines Agenten mit einem möglichen zukünftigen Weg bei Zeitschritt t gemäß einer Eingabe α = [α δ]
T, der ein umgesetzter Vektor ist, wobei α die Längsbeschleunigung ist und δ der Lenkwinkel ist, der auf ein kinematisches Fahrradmodell des Agenten i angewendet wird. Die Eingabe α wird auf den Zustand s eines Agenten i bei Zeitschritt t durch die folgenden Gleichungen angewendet:
-
Wobei die Modellparameter L und b dem Fahrzeugradstand und dem Abstand vom Massenschwerpunkt der Hinterachse entsprechen und β der Schlupfwinkel ist. Der Schlupfwinkel ist die Differenz zwischen dem Lenkwinkel (Richtung, in die ein Rad zeigt) und der Richtung, in die sich das Rad in Bezug auf die Fahrbahn tatsächlich bewegt. Andere Modelle, zum Beispiel dynamische Fahrzeugmodelle, die lineare, diskrete Punktmassenbeschreibungen beinhalten, oder kinematische Modelle, die eine Doppelintegration beinhalten, um sowohl Längs- als auch Breitenbeschleunigungen zu berücksichtigen, können zusätzlich zu den Gleichungen 1-5 verwendet werden.
-
Bei Block 510 kann eine Rechenvorrichtung 115, die in einem Randknoten beinhaltet ist, alle möglichen Wege, die einem Agenten i entsprechen, in den Beispielen iterieren, wo bestimmt ist, dass mehr als ein einziger Weg für einen Agenten i möglich ist. In diesem Beispiel werden die Gleichungen 1-5 für jeden möglichen Weg berechnet, um die nächsten Zustände für jeden möglichen Weg vorherzusagen.
-
Bei Block
512 berechnet eine Rechenvorrichtung
115, die in einem Kantenrechenknoten beinhaltet ist, die vorhergesagten Dienstprogrammfunktionen für jeden Agenten i über einen Zeithorizont h durch Bestimmen von Belohnungs- und Strafkomponentenfunktionen. Belohnungs- und Straffunktionen beinhalten Belohnungen zum Beibehalten der gewünschten Geschwindigkeit
gleichmäßiger Beschleunigung
, gleichmäßiger Lenkung
gleichmäßiger Bremsung und Lenkwinkel
und Strafen für Spurabweichung
Fahrt abseits der Straße
und Strafe für einen Unfall mit einem stationären Objekt
auf Grundlage von Steuervariablen für Beschleunigung α und Lenkwinkel δ gemäß den folgenden Gleichungen:
-
Wobei die Parameter W und w eine Fahrbahn kennzeichnen und die Parameter κ
x, κ
y, l
x und l
y Dynamik und einen Sicherheitsbereich zwischen einem stationären Objekt und einem AV-Agenten i definieren, wobei der Sicherheitsbereich eine Risikoprämie beinhaltet. Eine Kollisionsstrafe
zwischen einem Agenten i und einem anderen sich bewegenden Agenten j , unter Annahme einer rechteckigen Formen für die Agenten i, j, kann durch die folgende Gleichung bestimmt werden:
-
Wobei die Parameter κx, κy, lx und ly den Dynamik- und Sicherheitsrahmen (Risikoprämie) zwischen dem AV-Agenten i und dem anderen gleitenden Agenten j definieren.
-
Bei Block
514 bestimmt eine Rechenvorrichtung
115, die in einem Kantenrechenknoten beinhaltet ist, die vorhergesagten Dienstprogrammkomponenten für jeden AV-Agenten i über einen Zeithorizont h auf Grundlage der Formel:
-
Die Dienstprogrammkomponenten werden unter Verwendung von Funktionen g
k definiert, die die Art und Weise bestimmen, in der die Dienstprogrammkomponenten
über einen Zeitraum h aggregiert werden. Für sicherheitskritische Komponenten, nämlich Strafen für Fahren abseits von Straßen, für Unfälle oder Kollisionen
, (P
i,
t('), ist g
k() als das Maximum der Strafen definiert. Für Bewegungsbelohnungen
und Fahrspurabweichungsstrafe
ist g
k() als der Durchschnitt der Komponenten definiert. Für die Rauheitsstrafe
und
ist g
k() durch seinen ersten Zeitraum definiert.
-
Bei Block
516 bestimmt eine Rechenvorrichtung
115, die in einem Kantenrechenknoten beinhaltet ist, Dienstprogrammkomponenten auf Grundlage der vorstehenden Gleichung (13), um Dienstprogrammfunktionen paarweise zwischen einem AV-Agenten i und sich nicht bewegenden Objekten und sich bewegenden Agenten j gemäß Unfall- oder Kollisionskomponenten
und
zu bestimmen, die verwendet werden können, um Strafen für Unfälle oder Kollisionen zwischen AV-Agenten i und sich nicht bewegenden Objekten und sich bewegenden Agenten j zu bestimmen. In diesem Beispiel ist die Funktion g
k() als das Maximum der Strafen
und
definiert.
-
Bei Block
518 bestimmt eine Rechenvorrichtung
115, die in einem Kantenrechenknoten beinhaltet ist, die vorhergesagte Dienstprogrammfunktion
h) auf Grundlage der Formel:
-
Die Dienstprogrammfunktion
wird bei jedem Zeitschritt t aktualisiert und bewertet die möglichen Alternativen, um die optimale Aktion für einen AV-Agenten i zu erlangen. Die Dienstprogrammfunktion ist als eine gewichtete Summe definiert, die Gewichtungen W
i,k verwendet, um Funktionen g
k zu summieren, die die Weise bestimmen, in der die Dienstprogrammkomponenten
über einen Zeitraum h auf eine vorstehend erwähnte Weise aggregiert werden. Die Gewichtungen W
i,k können unter Verwendung von Optimierungsverfahren und realen Daten, die von Fahrzeugen
110 durch Beobachten von Fahrverhalten gesammelt werden, feingestimmt werden.
-
Bei Block
518 bewertet eine Rechenvorrichtung
115, die in einem Kantenrechenknoten beinhaltet ist, die geschätzte Dienstprogrammfunktion
h) für einen AV-Agenten i über alle der möglichen Paarungen mit allen möglichen Nicht-AV-Agenten in einem gegebenen lokalen Bereich, um die beste Aktion für den AV-Agenten i zu bestimmen. Das Bewerten der geschätzten Dienstprogrammfunktion auf diese Weise vermeidet Kollisionen, an denen Nicht-AV-Agenten beteiligt sind, und stellt den geeigneten Geschwindigkeitsweg bereit, um ein Ziel zu erreichen, das mit gleichmäßiger Beschleunigung, Lenkung und Bremsung übereinstimmt.
-
Bei Block 520 kann eine Rechenvorrichtung 115, die in einem Kantenrechenknoten beinhaltet ist, die bestimmte Aktion (Fahrzeugweg) über ein Netzwerk 110 an den AV-Agenten i kommunizieren.
-
Bei Block 522 kann eine Rechenvorrichtung 115, die in einem Kantenrechenknoten beinhaltet ist, den Wert von i erhöhen und prüfen, ob noch weitere AV-Agenten i zu verarbeiten sind. Wenn ein oder mehrere AV-Agenten i noch zu verarbeiten sind, um Fahrzeugaktionen zu bestimmen, kehrt der Prozess 500 zu Block 502 zurück, um mit der Verarbeitung des nächsten AV-Agenten i zu beginnen. Wenn keine AV-Agenten i noch zu verarbeiten sind, endet der Prozess 500.
-
6 ist ein im Hinblick auf die 1-5 beschriebenes Ablaufdiagramm eines Prozesses 600 zum Betreiben eines Fahrzeugs auf Grundlage einer adaptiveSeek-Lösung. Der Prozess 600 kann durch einen Prozessor der Rechenvorrichtung umgesetzt werden, der zum Beispiel Informationen von Sensoren als Eingabe heranzieht und Befehle ausführt und Objektinformationen ausgibt. Der Prozess 600 beinhaltet mehrere Blöcke, die in der veranschaulichten Reihenfolge ausgeführt werden können. Der Prozess 600 könnte alternativ oder zusätzlich weniger Blöcke beinhalten oder kann die Blöcke in anderer Reihenfolge ausgeführt beinhalten.
-
Der Prozess 600 beginnt bei Block 602, wo ein optimaler Fahrzeugweg für ein Fahrzeug 110 durch einen Kantenrechenknoten eines Verkehrsinfrastruktursystems 100 auf Grundlage eines adaptiven Suchalgorithmus bestimmt wird, wie vorstehend in Bezug auf 5 beschrieben. Wie vorstehend in Bezug auf die 4 und 5 erörtert, ist der adaptiveSeek-Algorithmus ein Rastersuchalgorithmus, der Dienstprogrammfunktionen für alle AV- und Nicht-AV-Agenten I, die in einer Verkehrsszene beinhaltet sind, auswertet. Jeder AV-Agent i wird bewertet, um eine optimale Aktion unter Berücksichtigung aller wahrscheinlichen Aktionen für AV- und Nicht-AV-Agenten und stationäre Objekte zu bestimmen. Infolgedessen werden alle Aktionen für alle AV-Agenten i, einschließlich eines Fahrzeugs 110, gleichzeitig über einen begrenzten Zeitraum h optimiert.
-
Bei Block 604 wird eine optimale Aktion für ein Fahrzeug 110 von dem Kantenrechenknoten des Verkehrsinfrastruktursystems 100 an ein Fahrzeug 110 kommuniziert. Das Fahrzeug 110 kann einen Fahrzeugweg auf Grundlage der optimalen Aktion bestimmen, wie vorstehend in Bezug auf 2 erörtert, indem die optimale Aktion mit Daten kombiniert wird, die durch Fahrzeugsensoren gesammelt sind, um ein Wegpolynom zu bestimmen, mit dem gearbeitet werden soll. Die Blöcke 602 und 604 können auch in einem Fahrzeug 110 ohne die Hilfe von dem Kantenrechenknoten durchgeführt werden, indem Daten von bordeigenen Sensoren verwendet werden und indem der adaptiveSeek-Algorithmus des Prozesses 500 umgesetzt wird, wie in 5 veranschaulicht.
-
Bei Block 606 kann das Fahrzeug 110 durch Verwenden einer Rechenvorrichtung 115 betrieben werden, um den Antriebsstrang, die Lenkung und die Bremsen des Fahrzeugs über die Steuerungen 112, 113, 114 zu steuern, um den Fahrzeugantriebsstrang, die Fahrzeuglenkung und Fahrzeugbremsen zu betreiben. Im Anschluss an Block 606 endet der Prozess 600.
-
Rechenvorrichtungen, wie etwa die hierin erörterten, beinhalten im Allgemeinen jeweils Befehle, die durch eine oder mehrere Rechenvorrichtungen, wie etwa die vorstehend genannten, und zum Ausführen von Blöcken oder Schritten von vorstehend beschriebenen Prozessen ausführbar sind. Die vorstehend erörterten Prozessblöcke können zum Beispiel als computerausführbare Befehle ausgeführt sein.
-
Computerausführbare Befehle können von Computerprogrammen zusammengestellt oder interpretiert werden, die unter Verwendung einer Vielzahl von Programmiersprachen und/oder -technologien erstellt wurden, einschließlich unter anderem, entweder allein oder in Kombination Java™, C, C++, Python, Julia, SCALA, Visual Basic, Java Script, Perl, HTML usw. Im Allgemeinen empfängt ein Prozessor (z. B. ein Mikroprozessor) Befehle, z. B. von einem Speicher, einem computerlesbaren Medium usw., und führt diese Befehle aus, wodurch er ein oder mehrere Prozesse durchführt, einschließlich eines oder mehrerer der hier beschriebenen Prozesse. Derartige Befehle und andere Daten können in Dateien gespeichert und unter Verwendung vielfältiger computerlesbarer Medien übertragen werden. Eine Datei in einer Rechenvorrichtung ist im Allgemeinen eine Sammlung von Daten, die auf einem computerlesbaren Medium, wie etwa einem Speichermedium, einem Direktzugriffsspeicher usw., gespeichert ist.
-
Ein computerlesbares Medium beinhaltet jedes beliebige Medium, das am Bereitstellen von Daten (z. B. Befehlen) beteiligt ist, die durch einen Computer gelesen werden können. Ein derartiges Medium kann viele Formen annehmen, einschließlich unter anderem nichtflüchtiger Medien, flüchtiger Medien usw. Nichtflüchtige Medien beinhalten zum Beispiel optische oder magnetische Platten und andere Dauerspeicher. Flüchtige Medien beinhalten einen dynamischen Direktzugriffsspeicher (dynamic random access memory - DRAM), der in der Regel einen Hauptspeicher darstellt. Gängige Formen computerlesbarer Medien beinhalten zum Beispiel eine Diskette, eine Folienspeicherplatte, eine Festplatte, ein Magnetband, ein beliebiges anderes magnetisches Medium, eine CD-ROM, eine DVD, ein beliebiges anderes optisches Medium, Lochkarten, Lochstreifen, ein beliebiges anderes physisches Medium mit Lochmustern, einen RAM, einen PROM, einen EPROM, einen FLASH-EEPROM, einen beliebigen anderen Speicherchip oder eine beliebige andere Speicherkassette oder ein beliebiges anderes Medium, das von einem Computer ausgelesen werden kann.
-
Alle in den Patentansprüchen verwendeten Ausdrücke sollen ihre klare und gewöhnliche Bedeutung aufweisen, wie sie von einem Fachmann verstanden wird, sofern hierin nicht ausdrücklich das Gegenteil angegeben wird. Insbesondere ist die Verwendung der Singularartikel, wie etwa „ein“, „eine“, „der“, „die“, „das“ usw., dahingehend auszulegen, dass ein oder mehrere der aufgeführten Elemente genannt werden, sofern ein Anspruch nicht eine ausdrückliche gegenteilige Einschränkung enthält.
-
Der Ausdruck „beispielhaft“ wird in dieser Schrift in dem Sinne verwendet, dass er ein Beispiel angibt, z. B. sollte eine Bezugnahme auf ein „beispielhaftes Gerät“ einfach als Bezugnahme auf ein Beispiel für ein Gerät gelesen werden.
-
Das einen Wert oder ein Ergebnis modifizierende Adverb „ungefähr“ bedeutet, dass eine Form, eine Struktur, ein Messwert, ein Wert, eine Bestimmung, eine Berechnung usw. von einer bzw. einem genau beschriebenen Geometrie, Abstand, Messwert, Wert, Bestimmung, Berechnung usw. aufgrund von Mängeln hinsichtlich Materialien, Bearbeitung, Herstellung, Sensormessungen, Berechnungen, Verarbeitungszeit, Kommunikationszeit usw. abweichen kann.
-
In den Zeichnungen geben die gleichen Bezugszeichen die gleichen Elemente an. Ferner könnten einige oder alle dieser Elemente geändert werden. Hinsichtlich der in dieser Schrift beschriebenen Medien, Prozesse, Systeme, Verfahren usw. versteht es sich, dass, obwohl die Schritte oder Blöcke derartiger Prozesse usw. zwar als gemäß einer bestimmten Abfolge erfolgend beschrieben worden sind, derartige Prozesse jedoch so umgesetzt werden könnten, dass die beschriebenen Schritte in einer anderen Reihenfolge als der in dieser Schrift beschriebenen Reihenfolge durchgeführt werden. Es versteht sich ferner, dass bestimmte Schritte gleichzeitig durchgeführt, andere Schritte hinzugefügt oder bestimmte in dieser Schrift beschriebene Schritte weggelassen werden könnten. Anders ausgedrückt werden die vorliegenden Beschreibungen von Prozessen zur Veranschaulichung bestimmter Ausführungsformen bereitgestellt und sollten keinesfalls dahingehend ausgelegt werden, dass sie die beanspruchte Erfindung einschränken.
-
Gemäß der vorliegenden Erfindung ist ein Computer bereitgestellt, der einen Prozessor und einen Speicher aufweist, wobei der Speicher Anweisungen beinhaltet, die durch den Prozessor zu Folgendem ausführbar sind: Bestimmen von optimalen Fahrzeugaktionen auf Grundlage einer modifizierten Version einer Nash-Gleichgewichtslösung für ein Multiagentenspiel, wobei die Nash-Gleichgewichtslösung durch Durchführen einer adaptiven Rastersuchenoptimierungstechnik modifiziert wird, die auf Berechnen von Belohnungen und Strafen für die Agenten beruht, um optimale Fahrzeugaktionen zu bestimmen, wobei die Agenten eines oder mehrere von autonomen Fahrzeugen, nicht autonomen Fahrzeugen, stationären Objekten und nicht stationären Objekten einschließlich Fußgängern beinhalten und wobei die Belohnungen und die Strafen für die Agenten durch Simulieren des Verhaltens der Agenten bestimmt sind, um mögliche zukünftige Zustände für die Agenten zu bestimmen, um die optimalen Fahrzeugaktionen zu bestimmen; Bestimmen eines Fahrzeugwegs für ein Fahrzeug auf Grundlage der optimalen Fahrzeugaktionen; und Herunterladen des Fahrzeugwegs auf das Fahrzeug.
-
Gemäß einer Ausführungsform ist die Erfindung ferner gekennzeichnet durch Anweisungen zum Bestimmen eines oder mehrerer zukünftiger Zustände für die Agenten, um die optimalen Fahrzeugaktionen unter Verwendung einer Rechenvorrichtung in dem Fahrzeug zu bestimmen.
-
Gemäß der Ausführungsform ist die Erfindung ferner gekennzeichnet durch Bestimmen des Fahrzeugwegs für das Fahrzeug auf Grundlage der optimalen Fahrzeugaktionen und Herunterladen des Fahrzeugwegs auf das Fahrzeug.
-
Gemäß einer Ausführungsform beruht das Simulieren des Verhaltens der mehreren Agenten, um einen oder mehrere Zustände für die Agenten zu bestimmen, auf Bestimmen von einem oder mehreren von Stellen der Agenten, Geschwindigkeiten der Agenten, Fahrtrichtungen der Agenten und einer Vielzahl von möglichen Wegen für jeden Agenten.
-
Gemäß einer Ausführungsform ist die Erfindung ferner gekennzeichnet durch Anweisungen zum Bestimmen der optimalen Fahrzeugaktionen durch Bewerten einer Dienstprogrammfunktion, die die Belohnungen und die Strafen für jeden der Agenten beinhaltet.
-
Gemäß einer Ausführungsform beruht die Dienstprogrammfunktion für Aktionen der mehreren Agenten auf Bestimmen von geschätzten Zuständen der stationären und nicht stationären Objekte, die bei Zeitschritten t bestimmt sind, die innerhalb eines Zeithorizonts h beinhaltet sind, und ist auf Grundlage einer gewichteten Summe von Komponentendienstprogrammfunktionen berechnet.
-
Gemäß einer Ausführungsform beinhaltet die Dienstprogrammfunktion Bestimmen der Belohnungen und Strafen für jede der Aktionen der Agenten auf Grundlage von geschätzten Zuständen der stationären und nicht stationären Objekte an zukünftigen Zeitschritten t, die innerhalb des Zeithorizonts h beinhaltet sind.
-
Gemäß einer Ausführungsform beruhen die Belohnungen auf einem oder mehreren von Vorwärtsbewegen bei gewünschten Geschwindigkeiten und beruhen die Strafen auf Abweichen von reibungslosem Fahrzeugbetrieb, wobei der reibungslose Fahrzeugbetrieb ebenfalls Einschränkungen von Agentenbeschleunigung, Agentensteuerung und Agentenbremsen beinhaltet.
-
Gemäß einer Ausführungsform beruhen die Strafen auf einer oder mehreren Fahrbahnabweichungen, Abweichungen von der Straße, Kollisionen mit den stationären Objekten und Kollisionen mit den nicht stationären Objekten.
-
Gemäß der Ausführungsform ist die Erfindung ferner gekennzeichnet durch Anweisungen zum Berechnen der Belohnungen und der Strafen auf Grundlage von Sensordaten, die von Sensoren erlangt sind, die dazu angeordnet sind, die mehreren Agenten zu beobachten.
-
Gemäß einer Ausführungsform sind die Sensoren, die dazu angeordnet sind, die mehreren Agenten zu beobachten, in einem Verkehrsinfrastruktursystem beinhaltet.
-
Gemäß einer Ausführungsform ist der Fahrzeugweg, der auf den optimalen Fahrzeugaktionen beruht, auf Grundlage von Polynomfunktionen bestimmt.
-
Gemäß der Ausführungsform ist die Erfindung ferner gekennzeichnet durch Anweisungen zum Betreiben des Fahrzeugs entlang des Fahrzeugwegs durch Steuern von Fahrzeugantriebsstrang, Fahrzeuglenkung und Fahrzeugbremsen bei einer Frequenz von mindestens 5 Hz.
-
Gemäß der vorliegenden Erfindung beinhaltet ein Verfahren Folgendes: Bestimmen von optimalen Fahrzeugaktionen auf Grundlage einer modifizierten Version einer Nash-Gleichgewichtslösung für ein Multiagentenspiel, wobei die Nash-Gleichgewichtslösung durch Durchführen einer adaptiven Rastersuchenoptimierungstechnik modifiziert wird, die auf Belohnungen und Strafen für die Agenten beruht, um optimale Fahrzeugaktionen zu bestimmen, wobei die Agenten eines oder mehrere von autonomen Fahrzeugen, nicht autonomen Fahrzeugen, stationären Objekten und nicht stationären Objekten einschließlich Fußgängern beinhalten und wobei die Belohnungen und die Strafen für die Agenten durch Simulieren des Verhaltens der Agenten bestimmt sind, um mögliche zukünftige Zustände für die Agenten zu bestimmen, um die optimalen Fahrzeugaktionen zu bestimmen; Bestimmen eines Fahrzeugwegs auf Grundlage der optimalen Fahrzeugaktionen; und Herunterladen des Fahrzeugwegs auf ein Fahrzeug.
-
In einem Aspekt der Erfindung beinhaltet das Verfahren Bestimmen von einem oder mehreren zukünftigen Zuständen für die Agenten, um die optimalen Fahrzeugaktionen unter Verwendung einer Rechenvorrichtung in dem Fahrzeug zu bestimmen.
-
In einem Aspekt der Erfindung beinhaltet das Verfahren Bestimmen des Fahrzeugwegs für das Fahrzeug auf Grundlage der optimalen Fahrzeugaktionen und Herunterladen des Fahrzeugwegs auf das autonome Fahrzeug.
-
In einem Aspekt der Erfindung beruht Simulieren des Verhaltens der Agenten, um einen oder mehrere Zustände für die Agenten zu bestimmen, auf Bestimmen von einem oder mehreren von Stellen der Agenten, Geschwindigkeiten der Agenten, Fahrtrichtungen der Agenten und einer Vielzahl von möglichen Wegen für jeden Agenten.
-
In einem Aspekt der Erfindung beinhaltet das Verfahren Bestimmen der optimalen Fahrzeugaktionen durch Bewerten einer Dienstprogrammfunktion, die die Belohnungen und die Strafen für jeden der Agenten beinhaltet.
-
In einem Aspekt der Erfindung beruht die Dienstprogrammfunktion für Aktionen der mehreren Agenten auf Bestimmen von geschätzten Zuständen der stationären und nicht stationären Objekte, die bei Zeitschritten t bestimmt sind, die innerhalb eines Zeithorizonts h beinhaltet sind, und ist auf Grundlage einer gewichteten Summe von Komponentendienstprogrammfunktionen berechnet.
-
In einem Aspekt der Erfindung beinhaltet die Dienstprogrammfunktion Bestimmen der Belohnungen und Strafen für jede der Aktionen der Agenten auf Grundlage von geschätzten Zuständen der stationären und nicht stationären Objekte an zukünftigen Zeitschritten t, die innerhalb des Zeithorizonts h beinhaltet sind.