DE102020128155A1 - Bedingte bewegungsvorhersagen - Google Patents

Bedingte bewegungsvorhersagen Download PDF

Info

Publication number
DE102020128155A1
DE102020128155A1 DE102020128155.2A DE102020128155A DE102020128155A1 DE 102020128155 A1 DE102020128155 A1 DE 102020128155A1 DE 102020128155 A DE102020128155 A DE 102020128155A DE 102020128155 A1 DE102020128155 A1 DE 102020128155A1
Authority
DE
Germany
Prior art keywords
vehicle
trajectory
target vehicle
response
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102020128155.2A
Other languages
English (en)
Inventor
Eric Wolff
Sammie Katt
Bence Cserna
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Motional AD LLC
Original Assignee
Motional AD LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Motional AD LLC filed Critical Motional AD LLC
Publication of DE102020128155A1 publication Critical patent/DE102020128155A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units, or advanced driver assistance systems for ensuring comfort, stability and safety or drive control systems for propelling or retarding the vehicle
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • B60W30/095Predicting travel path or likelihood of collision
    • B60W30/0956Predicting travel path or likelihood of collision the prediction being responsive to traffic or environmental parameters
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0967Systems involving transmission of highway information, e.g. weather, speed limits
    • G08G1/096708Systems involving transmission of highway information, e.g. weather, speed limits where the received information might be used to generate an automatic action on the vehicle control
    • G08G1/096725Systems involving transmission of highway information, e.g. weather, speed limits where the received information might be used to generate an automatic action on the vehicle control where the received information generates an automatic action on the vehicle control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0011Planning or execution of driving tasks involving control alternatives for a single driving scenario, e.g. planning several paths to avoid obstacles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units, or advanced driver assistance systems for ensuring comfort, stability and safety or drive control systems for propelling or retarding the vehicle
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • B60W30/095Predicting travel path or likelihood of collision
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units, or advanced driver assistance systems for ensuring comfort, stability and safety or drive control systems for propelling or retarding the vehicle
    • B60W30/10Path keeping
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units, or advanced driver assistance systems for ensuring comfort, stability and safety or drive control systems for propelling or retarding the vehicle
    • B60W30/10Path keeping
    • B60W30/12Lane keeping
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units, or advanced driver assistance systems for ensuring comfort, stability and safety or drive control systems for propelling or retarding the vehicle
    • B60W30/18Propelling the vehicle
    • B60W30/18009Propelling the vehicle related to particular drive situations
    • B60W30/18163Lane change; Overtaking manoeuvres
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/02Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/10Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to vehicle motion
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/10Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to vehicle motion
    • B60W40/107Longitudinal acceleration
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0027Planning or execution of driving tasks using trajectory prediction for other traffic participants
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0967Systems involving transmission of highway information, e.g. weather, speed limits
    • G08G1/096766Systems involving transmission of highway information, e.g. weather, speed limits where the system is characterised by the origin of the information transmission
    • G08G1/096775Systems involving transmission of highway information, e.g. weather, speed limits where the system is characterised by the origin of the information transmission where the origin of the information is a central station
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • H04W4/44Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for communication between vehicles and infrastructures, e.g. vehicle-to-cloud [V2C] or vehicle-to-home [V2H]
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0002Automatic control, details of type of controller or control system architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/40Photo or light sensitive means, e.g. infrared sensors
    • B60W2420/403Image sensing, e.g. optical camera
    • B60W2420/408
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2520/00Input parameters relating to overall vehicle dynamics
    • B60W2520/10Longitudinal speed
    • B60W2520/105Longitudinal acceleration
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60YINDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
    • B60Y2300/00Purposes or special features of road vehicle drive control systems
    • B60Y2300/10Path keeping
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60YINDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
    • B60Y2300/00Purposes or special features of road vehicle drive control systems
    • B60Y2300/18Propelling the vehicle
    • B60Y2300/18008Propelling the vehicle related to particular drive situations
    • B60Y2300/18166Overtaking, changing lanes
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60YINDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
    • B60Y2400/00Special features of vehicle units
    • B60Y2400/30Sensors
    • B60Y2400/301Sensors for position or displacement
    • B60Y2400/3015Optical cameras
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60YINDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
    • B60Y2400/00Special features of vehicle units
    • B60Y2400/30Sensors
    • B60Y2400/301Sensors for position or displacement
    • B60Y2400/3017Radars

Abstract

Unter anderem sind Techniken für bedingte Bewegungsvorhersagen beschrieben. Die Techniken beinhalten Erzeugen, durch eine Planungsschaltung, eines Satzes von Kandidatentrajektorien für ein Fahrzeug basierend auf möglichen Makrohandlungen durch das Fahrzeug, Vorhersagen, durch die Planungsschaltung und für zumindest manche Trajektorien in dem Satz von Kandidatentrajektorien, einer Reaktion eines Zielfahrzeugs auf die jeweilige Trajektorie und einer Wahrscheinlichkeit der Reaktion des Zielfahrzeugs, Auswählen, durch die Planungsschaltung, einer Trajektorie aus dem Satz von Kandidatentrajektorien zumindest teilweise basierend auf der Reaktion des Zielfahrzeugs auf die Trajektorie, der Wahrscheinlichkeit der Reaktion des Zielfahrzeugs und Charakteristiken der Trajektorie, und Betreiben, durch eine Steuerschaltung, des Fahrzeugs basierend auf der ausgewählten Trajektorie.

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Beschreibung betrifft bedingte Bewegungsvorhersagen für Fahrzeuge.
  • HINTERGRUND
  • Ein Fahrzeug, wie etwa ein autonomes Fahrzeug, kann Sensoren beinhalten, die Daten bezüglich Objekten oder Personen in einem das Fahrzeug umgebenden Bereich erzeugen.
  • Figurenliste
    • 1 zeigt ein Beispiel für ein autonomes Fahrzeug mit autonomer Fähigkeit.
    • 2 veranschaulicht eine beispielhafte „Cloud“-Rechenumgebung.
    • 3 veranschaulicht ein Computersystem.
    • 4 zeigt eine beispielhafte Architektur für ein autonomes Fahrzeug.
    • 5 zeigt ein Beispiel für Eingaben und Ausgaben, die durch ein Wahrnehmungsmodul verwendet werden können.
    • 6 zeigt ein Beispiel für ein LiDAR-System.
    • 7 zeigt das LiDAR-System im Betrieb.
    • 8 zeigt den Betrieb des LiDAR-Systems mit zusätzlichen Einzelheiten.
    • 9 zeigt ein Blockdiagramm der Beziehungen zwischen Eingaben und Ausgaben eines Planungsmoduls.
    • 10 zeigt einen gerichteten Graphen, der bei der Pfadplanung verwendet wird.
    • 11 zeigt ein Blockdiagramm der Eingaben und Ausgaben eines Steuermoduls.
    • 12 zeigt ein Blockdiagramm der Eingaben, Ausgaben und Komponenten einer Steuerung.
    • 13-16 zeigen Blockdiagramme der Eingaben, Ausgaben und Komponenten eines bedingten Bewegungsmoduls.
    • 17 zeigt ein Flussdiagramm eines beispielhaften Prozesses zur bedingten Bewegungsvorhersage.
  • AUSFÜHRLICHE BESCHREIBUNG
  • In der folgenden Beschreibung sind für Erläuterungszwecke zahlreiche spezifische Einzelheiten dargelegt, um ein vollständiges Verständnis der vorliegenden Erfindung bereitzustellen. Es wird jedoch ersichtlich werden, dass die vorliegende Erfindung ohne diese spezifischen Einzelheiten umgesetzt werden kann. In anderen Fällen sind wohlbekannte Strukturen und Vorrichtungen in Blockdiagrammform gezeigt, um eine unnötige Verundeutlichung der vorliegenden Erfindung zu vermeiden.
  • In den Zeichnungen sind zur Vereinfachung der Beschreibung spezifische Anordnungen oder Reihenfolgen schematischer Elemente, wie etwa jener, die Vorrichtungen, Module, Anweisungsblöcke und Datenelemente repräsentieren, gezeigt. Fachleute sollten jedoch verstehen, dass die spezifische Reihenfolge oder Anordnung der schematischen Elemente in den Zeichnungen nicht andeuten soll, dass eine spezielle Verarbeitungsreihenfolge oder -sequenz oder eine Trennung von Prozessen notwendig ist. Ferner soll der Einschluss eines schematischen Elements in einer Zeichnung nicht andeuten, dass ein solches Element in allen Ausführungsformen notwendig ist oder die durch ein solches Element repräsentierten Merkmale in manchen Ausführungsformen möglicherweise nicht in anderen Elementen enthalten sind oder möglicherweise nicht mit diesen kombiniert werden.
  • In den Zeichnungen, in denen verbindende Elemente, wie etwa durchgezogene oder gestrichelte Linien oder Pfeile, zum Veranschaulichen einer Verbindung, einer Beziehung oder einer Assoziation zwischen oder unter zwei oder mehr anderen schematischen Elementen verwendet werden, soll das Nichtvorhandensein irgendwelcher solcher verbindender Elemente ferner nicht andeuten, dass keine Verbindung, Beziehung oder Assoziation vorhanden sein kann. Mit anderen Worten sind manche Verbindungen, Beziehungen oder Assoziationen zwischen Elementen nicht in den Zeichnungen gezeigt, sodass die Offenbarung nicht verundeutlicht wird. Zusätzlich wird zur Vereinfachung der Veranschaulichung ein einzelnes verbindendes Element verwendet, um mehrere Verbindungen, Beziehungen oder Assoziationen zwischen Elementen zu repräsentieren. Wenn ein verbindendes Element beispielsweise eine Kommunikation von Signalen, Daten oder Anweisungen repräsentiert, sollten Fachleute verstehen, dass ein solches Element einen oder mehrere Signalpfade (z. B. einen Bus), wie möglicherweise benötigt, repräsentiert, um die Kommunikation zu bewirken.
  • Nun wird ein ausführlicher Bezug auf Ausführungsformen genommen, deren Beispiele in den begleitenden Zeichnungen veranschaulicht sind. In der folgenden ausführlichen Beschreibung sind zahlreiche spezifische Einzelheiten dargelegt, um ein vollständiges Verständnis der verschiedenen beschriebenen Ausführungsformen bereitzustellen. Einem Durchschnittsfachmann wird jedoch ersichtlich werden, dass die verschiedenen beschriebenen Ausführungsformen ohne diese spezifischen Einzelheiten umgesetzt werden können. In anderen Fällen wurden wohlbekannte Verfahren, Prozeduren, Komponenten, Schaltungen und Netzwerke nicht ausführlich beschrieben, sodass Aspekte der Ausführungsformen nicht unnötig verundeutlicht werden.
  • Nachfolgend sind mehrere Merkmale beschrieben, die jeweils unabhängig voneinander oder mit einer beliebigen Kombination anderer Merkmale verwendet werden können. Ein beliebiges individuelles Merkmal wird jedoch möglicherweise nicht irgendwelche der oben besprochenen Probleme ansprechen oder könnte nur eines der oben besprochenen Probleme ansprechen. Manche der oben besprochenen Probleme könnten möglicherweise nicht vollständig durch irgendwelche der hierin beschriebenen Merkmale angesprochen werden. Obwohl Überschriften bereitgestellt sind, können Informationen bezüglich einer speziellen Überschrift, die aber nicht in dem Abschnitt mit dieser Überschrift aufgefunden werden, auch andernorts in dieser Beschreibung aufgefunden werden. Ausführungsformen sind hierin gemäß der folgenden Gliederung beschrieben:
    1. 1. Allgemeiner Überblick
    2. 2. Systemüberblick
    3. 3. Architektur eines autonomen Fahrzeugs
    4. 4. Eingaben in das autonome Fahrzeug
    5. 5. Planung des autonomen Fahrzeugs
    6. 6. Steuerung des autonomen Fahrzeugs
    7. 7. Bedingte Bewegungsvorhersagen
  • Allgemeiner Überblick
  • Ein Fahrzeug (wie etwa ein autonomes Fahrzeug) kann einen Satz von Kandidatentrajektorien für ein Manöver basierend auf für das Manöver charakteristischen Handlungen erzeugen. Beispielsweise erzeugt das Fahrzeug zum Durchführen eines Spurwechsel- oder Fahrbahneinfädelungsmanövers einen Satz von Kandidatentrajektorien basierend auf Handlungen wie etwa Folgen der Fahrbahn, Wechseln der Spur, oder einer Kombination davon. Jede Trajektorie in dem Satz von Kandidatentrajektorien kann an einem Modell angewendet werden, um vorherzusagen, wie andere Fahrzeuge reagieren werden (einschließlich der Wahrscheinlichkeit einer solchen Reaktion), falls das Fahrzeug entlang der Trajektorie fahren sollte. Die vorhergesagten Reaktionen für eine Trajektorie, sowie Charakteristiken der Trajektorie selbst, können verwendet werden, um jeder Trajektorie in dem Satz von Kandidatentrajektorien eine Bewertung zuzuweisen. Das Fahrzeug kann dann eine optimale Trajektorie (z. B. die am höchsten bewertete Trajektorie) auswählen und kann das Fahrzeug basierend auf der ausgewählten Trajektorie betreiben, um das Manöver durchzuführen.
  • Manche der Vorteile dieser Techniken beinhalten verbesserte Sicherheit und Effizienz bei Fahrzeugmanövern. Beispielsweise kann durch das Berücksichtigen des Effekts einer Trajektorie an sowohl dem Fahrzeug als auch anderen Fahrzeugen eine Trajektorie ausgewählt werden, die die Effizienz maximiert und Kollisionen oder andere unsichere Ereignisse für jeden Beteiligten vermeidet. Zusätzlich werden durch das Beschränken des Satzes von Kandidatentrajektorien auf jene, die für ein gegebenes Manöver realistisch sind, die Rechenkosten zum Vorhersagen von Reaktionen und Auswählen einer optimalen Trajektorie verringert, während hochqualitative Ergebnisse beibehalten werden.
  • Systemüberblick
  • 1 zeigt ein Beispiel für ein autonomes Fahrzeug 100 mit autonomer Fähigkeit.
  • Wie hierin verwendet, bezieht sich der Begriff „autonome Fähigkeit“ auf eine Funktion, ein Merkmal oder eine Einrichtung, die/das ermöglicht, dass ein Fahrzeug teilweise oder vollständig ohne einen menschlichen Eingriff in Echtzeit betrieben wird, einschließlich unter anderem vollautonome Fahrzeuge, hochautonome Fahrzeuge und bedingt autonome Fahrzeuge.
  • Wie hierin verwendet, ist ein autonomes Fahrzeug (AV) ein Fahrzeug, das autonome Fähigkeit besitzt.
  • Wie hierin verwendet, beinhaltet „Fahrzeug“ Mittel für den Transport von Gütern oder Menschen. Beispielsweise Autos, Busse, Züge, Flugzeuge, Drohnen, Lastkraftwagen, Boote, Schiffe, Unterwasserfahrzeuge, Luftfahrzeuge usw. Ein fahrerloses Auto ist ein Beispiel eines Fahrzeugs.
  • Wie hierin verwendet, bezieht sich „Trajektorie“ auf einen Pfad oder eine Route zum Navigieren eines AV von einem ersten raumzeitlichen Orts zu einem zweiten raumzeitlichen Ort. In einer Ausführungsform wird der erste raumzeitliche Ort als Anfangs- oder Startort bezeichnet und wird der zweite raumzeitliche Ort als Bestimmungsort, endgültiger Ort, Ziel, Zielposition oder Zielort bezeichnet. In manchen Beispielen besteht die Trajektorie aus einem oder mehreren Segmenten (z. B. Straßenabschnitten), und jedes Segment besteht aus einem oder mehreren Blöcken (z. B. Teilen einer Fahrbahn oder Kreuzung). In einer Ausführungsform entsprechen die raumzeitlichen Orte Orten der realen Welt. Beispielsweise sind die raumzeitlichen Orte Abhol- oder Abladeorte zum Abholen oder Abladen von Personen oder Gütern.
  • Wie hierin verwendet, beinhaltet „Sensor(en)“ eine oder mehrere Hardwarekomponenten, die Informationen über die Umgebung im Umfeld des Sensors detektieren. Manche der Hardwarekomponenten können Erfassungskomponenten (z. B. Bildsensoren, biometrische Sensoren), Übertragungs- und/oder Empfangskomponenten (z. B. Laser- oder Hochfrequenzwellen-Sender und -Empfänger), elektronische Komponenten wie etwa Analog-Digital-Wandler, eine Datenspeicherungsvorrichtung (wie etwa einen RAM und/oder eine nichtflüchtige Speicherung), Software- oder Firmwarekomponenten und Datenverarbeitungskomponenten wie etwa eine ASIC (anwendungsspezifische integrierte Schaltung), einen Mikroprozessor und/oder einen Mikrocontroller beinhalten.
  • Wie hierin verwendet, ist eine „Szenenbeschreibung“ eine Datenstruktur (z. B. Liste) oder ein Datenstrom, die/der ein oder mehrere klassifizierte oder gelabelte Objekte beinhaltet, die durch einen oder mehrere Sensoren am AV-Fahrzeug detektiert oder durch eine Quelle extern zu dem AV bereitgestellt werden.
  • Wie hierin verwendet, ist eine „Straße“ ein physischer Bereich, der von einem Fahrzeug durchfahren werden kann, und kann einer benannten Verkehrsstraße entsprechen (z. B. Stadtstraße, Autobahn usw.) oder kann einer unbenannten Verkehrsstraße entsprechen (z. B. einer Einfahrt in einem Haus oder Bürogebäude, einem Abschnitt eines Parkplatzes, einem Abschnitt eines leeren Grundstücks, einem Feldweg in einem ländlichen Gebiet usw.). Da manche Fahrzeuge (z. B. Allrad-Pickup-Trucks, Geländewagen usw.) in der Lage sind, eine Vielfalt physischer Bereiche zu durchfahren, die nicht spezifisch für den Fahrzeugverkehr konzipiert sind, kann eine „Straße“ ein physischer Bereich sein, der nicht formell durch irgendeine Gemeinde oder andere Regierungsstelle oder Behörde als eine Verkehrsstraße definiert ist.
  • Wie hierin verwendet, ist eine „Fahrbahn“ ein Teil einer Straße, auf dem ein Fahrzeug fahren kann. Eine Fahrbahn wird manchmal basierend auf Fahrbahnmarkierungen identifiziert. Beispielsweise kann eine Fahrbahn dem Großteil oder dem gesamten Raum zwischen Fahrbahnmarkierungen entsprechen, oder kann nur einem Teil (z. B. weniger als 50 %) des Raums zwischen Fahrbahnmarkierungen entsprechen. Beispielsweise könnte eine Straße mit Fahrbahnmarkierungen zwei oder mehr Fahrzeuge zwischen den Markierungen unterbringen, sodass ein Fahrzeug an dem anderen vorbeifahren kann, ohne die Fahrbahnmarkierungen zu überfahren, und könnte somit als eine Fahrbahn aufweisend, die schmaler als der Raum zwischen den Fahrbahnmarkierungen ist, oder als zwei Fahrbahnen zwischen den Fahrbahnmarkierungen aufweisend interpretiert werden. Eine Fahrbahn könnte auch bei Nichtvorhandensein von Fahrbahnmarkierungen interpretiert werden. Beispielsweise kann eine Fahrbahn basierend auf physischen Merkmalen einer Umgebung definiert werden, z. B. Gestein und Bäume entlang einer Verkehrsstraße in einem ländlichen Gebiet oder z. B. natürliche Hindernisse, die in einem unbebauten Gebiet vermieden werden sollen. Eine Fahrbahn könnte auch unabhängig von Fahrbahnmarkierungen oder physischen Merkmalen interpretiert werden. Beispielsweise könnte eine Fahrbahn basierend auf eine beliebigen hindernisfreien Pfad in einem Gebiet interpretiert werden, dem anderweitig Merkmale fehlen, die als Fahrbahnabgrenzungen interpretiert werden würden. In einem beispielhaften Szenario könnte ein AV eine Fahrbahn durch einen hindernisfreien Teil eines Feldes oder unbebauten Grundstücks interpretieren. In einem anderen beispielhaften Szenario könnte ein AV eine Fahrbahn durch eine breite (z. B. breit genug für zwei oder mehr Fahrbahnen) Straße interpretieren, die keine Fahrbahnmarkierungen aufweist. In diesem Szenario könnte das AV Informationen über die Fahrbahn zu anderen AVs kommunizieren, sodass die anderen AVs die gleichen Fahrbahninformationen verwenden können, um die Pfadplanung untereinander zu koordinieren.
  • Der Begriff „Over-the Air(OTA)-Client“ beinhaltet ein beliebiges AV oder eine beliebige elektronische Vorrichtung (z. B. Computer, Steuerung, IdD-Vorrichtung, elektronische Steuereinheit (ECU)), die in ein AV eingebettet ist, mit diesem gekoppelt ist oder mit diesem in Kommunikation steht.
  • Der Begriff „Over-the-Air(OTA)-Aktualisierung“ bedeutet eine beliebige Aktualisierung, Änderung, Löschung oder Hinzufügung bei Software, Firmware, Daten oder Konfigurationseinstellungen, oder eine beliebige Kombination davon, die einem OTA-Client unter Verwendung proprietärer und/oder standardisierter Drahtloskommunikationstechnologie geliefert wird, einschließlich unter anderem: zellularer Mobilkommunikationen (z. B. 2G, 3G, 4G, 5G), Funk-Drahtlosnetzwerken (z. B. WiFi) und/oder Satelliten-Internet.
  • Der Begriff „Edge-Knoten“ bedeutet eine oder mehrere Edge-Vorrichtungen, die mit einem Netzwerk gekoppelt sind und ein Portal zur Kommunikation mit AVs bereitstellen und mit anderen Edge-Knoten und einer Cloud-basierten Rechenplattform kommunizieren können, um OTA-Aktualisierungen zu planen und zu OTA-Clients zu liefern.
  • Der Begriff „Edge-Vorrichtung“ bedeutet eine Vorrichtung, die einen Edge-Knoten implementiert und einen physischen drahtlosen Zugangspunkt (AP) in Unternehmens- oder Dienstanbieter(z. B. VERIZON, AT&T)-Kernnetzen bereitstellt. Beispiele für Edge-Vorrichtungen beinhalten unter anderem: Computer, Steuerungen, Sender, Router, Routing-Switches, integrierte Zugangsvorrichtungen (IADs: Integrated Access Devices), Multiplexer, Zugangsvorrichtungen für städtische Netzwerke (MAN) und großflächige Netzwerke (WAN).
  • „Ein oder mehr“ beinhaltet eine Funktion, die durch ein Element durchgeführt wird, eine Funktion, die durch mehr als ein Element durchgeführt wird, z. B. auf eine verteilte Weise, mehrere Funktionen, die durch ein Element durchgeführt werden, mehrere Funktionen, die durch mehrere Elemente durchgeführt werden, oder eine beliebige Kombination des Obenstehenden.
  • Es versteht sich außerdem, dass, obwohl die Begriffe erster, zweiter usw. in manchen Fällen hierin zum Beschreiben verschiedener Elemente verwendet werden, diese Elemente nicht durch diese Begriffe beschränkt werden sollten. Diese Begriffe werden nur verwendet, um ein Element von einem anderen zu unterscheiden. Beispielsweise könnte ein erster Kontakt als ein zweiter Kontakt bezeichnet werden, und gleichermaßen könnte ein zweiter Kontakt als ein erster Kontakt bezeichnet werden, ohne vom Schutzumfang der verschiedenen beschriebenen Ausführungsformen abzuweichen. Der erste Kontakt und der zweite Kontakt sind beide Kontakte, aber sie sind nicht derselbe Kontakt.
  • Die in der Beschreibung der verschiedenen hierin beschriebenen Ausführungsformen verwendete Terminologie soll nur spezielle Ausführungsformen beschreiben und nicht beschränkend sein. Wie in der Beschreibung der verschiedenen beschriebenen Ausführungsformen und in den angehängten Ansprüchen verwendet, sollen die Singularformen „ein“, „eine“ und „der/die/das“ auch die Pluralformen einschließen, insofern der Zusammenhang deutlich nicht etwas anderes angibt. Es versteht sich auch, dass sich der Begriff „und/oder“, wie hierin verwendet, auf beliebige und alle möglichen Kombinationen eines oder mehrerer der assoziierten aufgelisteten Elemente bezieht und diese einschließt. Es versteht sich ferner, dass die Begriffe „beinhaltet“, „einschließlich“, „umfasst“ und/oder „umfassend“, wenn in dieser Beschreibung verwendet, das Vorhandensein genannter Merkmale, ganzer Zahlen, Schritte, Operationen, Elemente und/oder Komponenten spezifizieren, aber nicht das Vorhandensein oder den Zusatz einer/eines oder mehrerer anderer Elemente, ganzer Zahlen, Schritte, Operationen, Elemente, Komponenten und/oder Gruppen davon ausschließt.
  • Wie hierin verwendet, soll der Begriff „falls“ optional so ausgelegt werden, dass er in Abhängigkeit vom Zusammenhang „wenn“ oder „bei“ oder „als Reaktion auf das Bestimmen“ oder „als Reaktion auf das Detektieren“ bedeutet. Gleichermaßen soll der Ausdruck „falls bestimmt wird“ oder „falls [eine genannte Bedingung oder ein genanntes Ereignis] detektiert wird“ optional so ausgelegt werden, dass er in Abhängigkeit vom Zusammenhang „bei der Bestimmung“ oder „als Reaktion auf das Bestimmen“ oder „bei der Detektion [der genannten Bedingung oder des genannten Ereignisses]“ oder „als Reaktion auf das Detektieren [der genannten Bedingung oder des genannten Ereignisses]“ bedeutet.
  • Wie hierin verwendet, bezieht sich ein AV-System auf das AV zusammen mit dem Array von Hardware, Software, gespeicherten Daten und in Echtzeit erzeugten Daten, die den Betrieb des AV unterstützen. In einer Ausführungsform ist das AV-System in dem AV integriert. In einer Ausführungsform ist das AV-System über mehrere Orte verteilt. Beispielsweise wird ein Teil der Software des AV-Systems auf einer Cloud-Rechenumgebung implementiert, die der unten mit Bezug auf 3 beschriebenen Cloud-Rechenumgebung 300 ähnelt.
  • Im Allgemeinen beschreibt dieses Dokument Technologien, die bei beliebigen Fahrzeugen anwendbar sind, die eine oder mehrere autonome Fähigkeiten aufweisen, einschließlich vollautonomen Fahrzeugen, hochautonomen Fahrzeugen und bedingt autonomen Fahrzeugen, wie etwa sogenannten Stufe-5-, Stufe-4- bzw. Stufe-3-Fahrzeugen (siehe Standard von SAE International J3016: Taxonomy and Definitions for Terms Related to On-Road Motor Vehicle Automated Driving Systems, der durch Bezugnahme in seiner Gesamtheit aufgenommen wird, für weitere Einzelheiten über die Klassifikation von Autonomiestufen in Fahrzeugen). Die in diesem Dokument beschriebenen Technologien sind auch bei teilautonomen Fahrzeugen und fahrergestützten Fahrzeugen anwendbar, wie etwa sogenannten Stufe-2- und Stufe-1-Fahrzeugen (siehe Standard von SAE International J3016: Taxonomy and Definitions for Terms Related to On-Road Motor Vehicle Automated Driving Systems). In einer Ausführungsform können ein oder mehrere der Fahrzeugsysteme der Stufe 1, 2, 3, 4 und 5 gewisse Fahrzeugoperationen (z. B. Lenkung, Bremsung und Kartenverwendung) unter gewissen Betriebsbedingungen basierend auf der Verarbeitung von Sensoreingaben automatisieren. Die in diesem Dokument beschriebenen Technologien können für Fahrzeuge in beliebigen Stufen vorteilhaft sein, angefangen von vollautonomen Fahrzeug bis zu menschlich betriebenen Fahrzeugen.
  • Autonome Fahrzeuge sind gegenüber einen menschlichen Fahrer erfordernde Fahrzeuge vorteilhaft. Bei einem Vorteil handelt es sich um Sicherheit. Beispielsweise traten in 2016 in den Vereinigten Staaten 6 Millionen Kraftfahrzeugunfälle, 2,4 Millionen Verletzungen, 40.000 Todesopfer und 13 Millionen Fahrzeuge in Autounfällen auf, mit geschätzten gesellschaftlichen Kosten von $910+ Milliarden. Verkehrstote in den USA pro 100 Millionen gefahrenen Meilen wurden von 1965 bis 2015 von etwa sechs auf etwa eins reduziert, teilweise aufgrund zusätzlicher in den Fahrzeugen eingesetzter Sicherheitsmaßnahmen. Beispielsweise wird angenommen, dass eine zusätzliche halbe Sekunde an Warnungszeit für einen in Kürze stattfindenden Unfall 60 % von Auffahrunfällen mindert. Passive Sicherheitsmaßnahmen (z. B. Sicherheitsgurte, Airbags) haben jedoch wahrscheinlich ihre Grenze für die Verbesserung dieser Anzahl erreicht. Somit sind aktive Sicherheitsmaßnahmen, wie etwa automatisierte Steuerung eines Fahrzeugs, wahrscheinlich der nächste Schritt bei der Verbesserung dieser Statistiken. Da menschliche Fahrer wahrscheinlich in 95 % der Unfälle für ein kritisches Vorunfallereignis verantwortlich sind, werden automatisierte Fahrsysteme wahrscheinlich bessere Sicherheitsauswirkungen erreichen, z. B. durch zuverlässiges Erkennen und Vermeiden kritischer Situationen besser als Menschen; bessere Entscheidungsfindung, Einhalten von Verkehrsregeln und Vorhersagen zukünftiger Ereignisse besser als Menschen; und zuverlässige Steuerung eines Fahrzeugs besser als ein Mensch.
  • Mit Bezug auf 1 betreibt ein AV-System 120 das AV 100 entlang einer Trajektorie 198 durch eine Umgebung 190 zu einem Bestimmungsort 199 (manchmal als ein endgültiger Ort bezeichnet), während Objekte (z. B. natürliche Behinderungen 191, Fahrzeuge 193, Fußgänger 192, Fahrräder und andere Hindernisse) vermieden und Straßenregeln (z. B. Betriebsregeln oder Fahrpräferenzen) eingehalten werden.
  • In einer Ausführungsform beinhaltet das AV-System 120 Vorrichtungen 101, die instrumentiert sind, Betriebsbefehle von den Computerprozessoren 146 zu empfangen und darauf zu reagieren. Hierin wird der Ausdruck „Betriebsbefehl“ verwendet, um eine ausführbare Anweisung (oder Satz von Anweisungen) zu bezeichnen, die bewirkt, dass ein Fahrzeug eine Handlung (z. B. ein Fahrmanöver) durchführt. Betriebsbefehle können unter anderem Anweisungen einschließen, damit ein Fahrzeug anfängt, sich vorwärts zu bewegen, aufhört, sich vorwärts zu bewegen, anfängt, sich rückwärts zu bewegen, aufhört, sich rückwärts zu bewegen, beschleunigt, abbremst, nach links abbiegt und nach rechts abbiegt. In einer Ausführungsform ähneln die Rechenprozessoren 146 dem unten mit Bezug auf 3 beschriebenen Prozessor 304. Beispiele für die Vorrichtungen 101 beinhalten eine Lenkungssteuerung 102, Bremsen 103, Gänge, Gaspedal oder andere Beschleunigungssteuermechanismen, Scheibenwischer, Seitentürverriegelungen, Fenstersteuerungen und Blinker.
  • In einer Ausführungsform beinhaltet das AV-System 120 Sensoren 121 zum Messen oder Inferieren von Eigenschaften des Status oder Zustands des AV 100, wie etwa die Position des AV, Linear- und Winkelgeschwindigkeit und -beschleunigung und Kurs (z. B. eine Orientierung des führenden Endes des AV 100). Beispiele für die Sensoren 121 sind GPS, inertiale Messeinheiten (IMU), die sowohl Fahrzeuglinearbeschleunigungen als auch Winkelraten messen, Radgeschwindigkeitssensoren zum Messen oder Schätzen von Radschlupfverhältnissen, Radbremsdruck- oder Bremsmomentsensoren, Motordrehmoment- oder Raddrehmomentsensoren und Lenkwinkel- und Winkelratensensoren.
  • In einer Ausführungsform beinhalten die Sensoren 121 auch Sensoren zum Erfassen oder Messen von Eigenschaften der Umgebung des AV. Beispielsweise Monokular- oder Stereo-Videokameras 122 im sichtbaren Licht, Infrarotspektrum oder thermischen Spektrum (oder beiden), LiDAR 123, RADAR, Ultraschallsensoren, Laufzeit(ToF)-Tiefensensoren, Geschwindigkeitssensoren, Temperatursensoren, Luftfeuchtigkeitssensoren und Niederschlagssensoren.
  • In einer Ausführungsform beinhaltet das AV-System 120 eine Datenspeicherungseinheit 142 und einen Speicher 144 zum Speichern von Maschinenanweisungen, die mit den Computerprozessoren 146 assoziiert sind, oder von Daten, die durch die Sensoren 121 gesammelt werden. In einer Ausführungsform ähnelt die Datenspeicherungseinheit 142 dem ROM 308 oder der Speicherungsvorrichtung 310, die nachstehend in Bezug auf 3 beschrieben sind. In einer Ausführungsform ähnelt der Speicher 144 dem nachstehend beschriebenen Hauptspeicher 306. In einer Ausführungsform speichern die Datenspeicherungseinheit 142 und der Speicher 144 historische, Echtzeit- und/oder prädiktive Informationen über die Umgebung 190. In einer Ausführungsform beinhalten die gespeicherten Informationen Karten, Fahrleistung, Verkehrsüberlastungsaktualisierungen oder Wetterbedingungen. In einer Ausführungsform werden Daten bezüglich der Umgebung 190 von einer entfernten Datenbank 134 über einen Kommunikationskanal zu dem AV 100 übertragen.
  • In einer Ausführungsform beinhaltet das AV-System 120 Kommunikationsvorrichtungen 140 zum Kommunizieren von gemessenen oder inferierten Eigenschaften der Status oder Zustände anderer Fahrzeuge, wie etwa Positionen, Linear- und Winkelgeschwindigkeiten, Linear- und Winkelbeschleunigungen und Linear- und Winkelkurse, zu dem AV 100. Diese Vorrichtungen beinhalten Fahrzeug-zu-Fahrzeug- (V2V) und Fahrzeug-zu-Infrastruktur(V2I)-Kommunikationsvorrichtungen und Vorrichtungen für Drahtloskommunikationen über Punkt-zu-Punkt oder Ad-Hoc-Netzwerke oder beide. In einer Ausführungsform kommunizieren die Kommunikationsvorrichtungen 140 über das elektromagnetische Spektrum (einschließlich Funkkommunikationen und optischer Kommunikationen) oder andere Medien (z. B. Luft und akustische Medien). Eine Kombination von Fahrzeug-zu-Fahrzeug- (V2V) und Fahrzeug-zu-Infrastruktur(V2I)-Kommunikation (und in manchen Ausführungsformen einer oder mehrerer anderer Kommunikationsarten) wird manchmal als eine Fahrzeug-zu-Allem(V2X)-Kommunikation bezeichnet. Eine V2X-Kommunikation entspricht typischerweise einem oder mehreren Kommunikationsstandards zur Kommunikation mit, zwischen und unter autonomen Fahrzeugen.
  • In einer Ausführungsform beinhalten die Kommunikationsvorrichtungen 140 Kommunikationsschnittstellen. Beispielsweise drahtgebundene, drahtlose, WiMAX-, WiFi-, Bluetooth-, Satelliten-, zellulare, optische, Nahfeld-, Infrarot- oder Funk-Schnittstellen. Die Kommunikationsschnittstellen übertragen Daten von einer entfernten Datenbank 134 zu dem AV-System 120. In einer Ausführungsform ist die entfernte Datenbank 134 in einer Cloud-Rechenumgebung 200 eingebettet, wie in 2 beschrieben. Die Kommunikationsschnittstellen 140 übertragen von den Sensoren 121 gesammelte Daten oder andere Daten bezüglich des Betriebs des AV 100 zu der entfernten Datenbank 134. In einer Ausführungsform übertragen die Kommunikationsschnittstellen 140 Informationen, die sich auf Teleoperationen beziehen, zu dem AV 100. In manchen Ausführungsformen kommuniziert das AV 100 mit anderen Fern(z. B. „Cloud“)-Servern 136.
  • In einer Ausführungsform speichert und überträgt die entfernte Datenbank 134 auch digitale Daten (z. B. Speichern von Daten wie etwa Landstraßen- und Stadtstraßenorten). Solche Daten werden auf dem Speicher 144 im AV 100 gespeichert oder von der entfernten Datenbank 134 über einen Kommunikationskanal zu dem AV 100 übertragen.
  • In einer Ausführungsform speichert und überträgt die entfernte Datenbank 134 historische Informationen über Fahreigenschaften (z. B. Geschwindigkeits- und Beschleunigungsprofile) von Fahrzeugen, die zuvor zu ähnlichen Tageszeiten entlang der Trajektorie 198 führen. In einer Implementierung können solche Daten auf dem Speicher 144 im AV 100 gespeichert oder von der entfernten Datenbank 134 über einen Kommunikationskanal zu dem AV 100 übertragen werden.
  • Die sich am AV 100 befindlichen Rechenvorrichtungen 146 erzeugen algorithmisch Steuerhandlungen basierend auf sowohl Echtzeit-Sensordaten als auch vorherigen Informationen, was dem AV-System 120 ermöglicht, seine autonomen Fahrfähigkeiten auszuführen.
  • In einer Ausführungsform beinhaltet das AV-System 120 mit den Rechenvorrichtungen 146 gekoppelte Computerperipheriegeräte 132 zum Bereitstellen von Informationen und Warnungen an einen Benutzer (z. B. einen Insassen oder einen Fernbenutzer) des AV 100 und Empfangen einer Eingabe von diesem. In einer Ausführungsform ähneln die Peripheriegeräte 132 der Anzeige 312, der Eingabevorrichtung 314 und der Cursor-Steuerung 316, die nachstehend mit Bezug auf 3 besprochen sind. Die Kopplung ist drahtlos oder drahtgebunden. Zwei oder mehr beliebige der Schnittstellenvorrichtungen können in eine einzelne Vorrichtung integriert sein.
  • In einer Ausführungsform empfängt und erzwingt das AV-System 120 ein Datenschutzniveau eines Passagiers, das z. B. durch den Passagier spezifiziert wird oder in einem mit dem Passagier assoziierten Profil gespeichert ist. Das Datenschutzniveau des Passagiers bestimmt, wie spezielle mit dem Passagier assoziierte Informationen (z. B. Passagierkomfortdaten, biometrische Daten usw.) verwendet, in dem Passagierprofil gespeichert und/oder auf dem Cloud-Server 136 gespeichert und mit dem Passagierprofil assoziiert werden dürfen. In einer Ausführungsform spezifiziert das Datenschutzniveau spezielle mit einem Passagier assoziierte Informationen, die gelöscht werden, sobald die Fahrt beendet ist. In einer Ausführungsform spezifiziert das Datenschutzniveau spezielle mit einem Passagier assoziierte Informationen und identifiziert eine oder mehrere Entitäten, die für das Zugreifen auf die Informationen autorisiert sind. Beispiele für spezifizierte Entitäten, die für das Zugreifen auf Informationen autorisiert sind, können andere AVs, Drittpartei-AV-Systeme oder eine beliebige Entität, die potenziell auf die Informationen zugreifen könnte, beinhalten.
  • Ein Datenschutzniveau eines Passagiers kann mit einer oder mehreren Granularitätsstufen spezifiziert werden. In einer Ausführungsform identifiziert ein Datenschutzniveau spezifische zu speichernde oder gemeinsam zu nutzende Informationen. In einer Ausführungsform gilt das Datenschutzniveau für alle mit dem Passagier assoziierten Informationen, sodass der Passagier spezifizieren kann, dass keine seiner persönlichen Informationen gespeichert oder gemeinsam genutzt werden. Die Spezifikation der Entitäten, denen ein Zugriff auf spezielle Informationen gestattet ist, kann auch mit verschiedenen Granularitätsstufen spezifiziert werden. Verschiedene Sätze von Entitäten, denen ein Zugriff auf spezielle Informationen gestattet ist, können beispielsweise andere AVs, die Cloud-Server 136, spezifische Drittpartei-AV-Systeme usw. beinhalten.
  • In einer Ausführungsform bestimmt das AV-System 120 oder der Cloud-Server 136, ob das AV 100 oder eine andere Entität auf gewisse mit einem Passagier assoziierte Informationen zugreifen kann. Beispielsweise muss ein Drittpartei-AV-System, das versucht, auf eine Passagiereingabe in Bezug auf einen speziellen raumzeitlichen Ort zuzugreifen, eine Autorisierung z. B. von dem AV-System 120 oder dem Cloud-Server 136 erhalten, um auf die mit dem Passagier assoziierten Informationen zuzugreifen. Beispielsweise verwendet das AV-System 120 das spezifizierte Datenschutzniveau des Passagiers, um zu bestimmen, ob die Passagiereingabe in Bezug auf den raumzeitlichen Ort dem Drittpartei-AV-System, dem AV 100 oder einem anderen AV präsentiert werden kann. Dies ermöglicht dem Datenschutzniveau des Passagiers zu spezifizieren, welchen anderen Entitäten gestattet ist, Daten über Handlungen des Passagiers oder andere mit dem Passagier assoziierte Daten zu empfangen.
  • 2 veranschaulicht eine beispielhafte „Cloud“-Rechenumgebung. Cloud-Computing ist ein Dienstlieferungsmodell zum Ermöglichen eines zweckmäßigen On-Demand-Netzwerkzugangs für einen gemeinsam genutzten Pool konfigurierbarer Rechenressourcen (z. B. Netzwerke, Netzwerkbandbreite, Server, Verarbeitung, Speicher, Speicherung, Anwendungen, virtuelle Maschinen und Dienste). In typischen Cloud-Rechensystemen sind die zum Liefern der durch die Cloud bereitgestellten Dienste verwendeten Maschinen in einem oder mehreren großen Cloud-Datenzentren untergebracht. Jetzt mit Bezug auf 2 beinhaltet die Cloud-Rechenumgebung 200 Cloud-Datenzentren 204a, 204b und 204c, die über die Cloud 202 miteinander verbunden sind. Die Datenzentren 204a 204b und 204c stellen Computersystemen 206a, 206b, 206c, 206d, 206e und 206f, die mit der Cloud 202 verbunden sind, Cloud-Rechendienste bereit.
  • Die Cloud-Rechenumgebung 200 beinhaltet ein oder mehrere Cloud-Datenzentren. Im Allgemeinen bezieht sich ein Cloud-Datenzentrum, zum Beispiel das in 2 gezeigte Cloud-Datenzentrum 204a, auf die physische Anordnung von Servern, die eine Cloud bilden, zum Beispiel die in 2 gezeigte Cloud 202, oder einen speziellen Teil einer Cloud. Beispielsweise sind Server in dem Cloud-Datenzentrum physisch in Räume, Gruppen, Reihen und Racks angeordnet. Ein Cloud-Datenzentrum weist eine oder mehrere Zonen auf, die einen oder mehrere Serverräume beinhalten. Jeder Raum weist eine oder mehrere Serverreihen auf, und jede Reihe beinhaltet ein oder mehrere Racks. Jedes Rack beinhaltet einen oder mehrere individuelle Serverknoten. In manchen Implementierungen sind Server in Zonen, Räume, Racks und/oder Reihen basierend auf physischen Infrastrukturanforderungen der Datenzentrumeinrichtung, einschließlich Leistungs-, Energie-, thermalen, Wärme- und/oder anderer Anforderungen, in Gruppen angeordnet. In einer Ausführungsform ähneln die Serverknoten dem in 3 beschriebenen Computersystem. Das Datenzentrum 204a weist viele Rechensysteme auf, die über viele Racks verteilt sind.
  • Die Cloud 202 beinhaltet Cloud-Datenzentren 204a, 204b und 204c zusammen mit dem Netzwerk und Networking-Ressourcen (zum Beispiel Networking-Geräten, Knoten, Routern, Switches und Vernetzungskabeln), die die Cloud-Datenzentren 204a, 204b und 204c miteinander verbinden und dabei helfen, den Zugang der Rechensysteme 206a-f auf Cloud-Rechensysteme zu ermöglichen. In einer Ausführungsform repräsentiert das Netzwerk eine beliebige Kombination eines oder mehrerer Lokalnetzwerke, großflächiger Netzwerke oder Inter-Netzwerke, die unter Verwendung drahtgebundener oder drahtloser Links gekoppelt sind, die unter Verwendung terrestrischer Verbindungen oder Satellitenverbindungen eingesetzt werden. Über das Netzwerk ausgetauschte Daten werden unter Verwendung einer beliebigen Anzahl von Netzwerkschichtprotokollen transferiert, wie etwa Internetprotokoll (IP), Multiprotocol Label Switching (MPLS), Asynchronous Transfer Mode (ATM), Frame Relay usw. Ferner werden in Ausführungsformen, in denen das Netzwerk eine Kombination mehrerer Teilnetzwerke repräsentiert, unterschiedliche Netzwerkschichtprotokolle an jedem der zugrundeliegenden Teilnetzwerke verwendet. In manchen Ausführungsformen repräsentiert das Netzwerk ein oder mehrerer miteinander verbundene Inter-Netzwerke, wie etwa das öffentliche Internet.
  • Die Rechensysteme 206a-f oder Verbraucher der Cloud-Rechensysteme sind über Netzwerklinks und Netzwerkadapter mit der Cloud 202 verbunden. In einer Ausführungsform werden die Rechensysteme 206a-f als verschiedene Rechenvorrichtungen implementiert, zum Beispiel Server, Desktops, Laptops, Tablets, Smartphones, Internet-der-Dinge(IdD)-Vorrichtungen, autonome Fahrzeuge (einschließlich Autos, Drohnen, Shuttles, Zügen, Bussen usw.) und Verbraucherelektronik. In einer Ausführungsform werden die Rechensysteme 206a-f in anderen Systemen oder als ein Teil von diesen implementiert.
  • 3 veranschaulicht ein Computersystem 300. In einer Implementierung ist das Computersystem 300 eine Spezialzweck-Rechenvorrichtung. Die Spezialzweck-Rechenvorrichtung ist festverdrahtet, um die Techniken durchzuführen, oder beinhaltet digitale elektronische Vorrichtungen wie etwa eine oder mehrere anwendungsspezifische integrierte Schaltungen (ASICs) oder feldprogrammierbare Gate-Arrays (FPGAs), die persistent programmiert sind, um die Techniken durchzuführen, oder können einen oder mehrere Allgemeinzweck-Hardwareprozessoren beinhalten, die programmiert sind, die Techniken gemäß Programmanweisungen in Firmware, Speicher, anderer Speicherung oder einer Kombination durchzuführen. Solche Spezialzweck-Rechenvorrichtungen können auch benutzerdefinierte festverdrahtete Logik, ASICs oder FPGAs mit benutzerdefinierter Programmierung kombinieren, um die Techniken zu verwirklichen. In verschiedenen Ausführungsformen sind die Spezialzweck-Rechenvorrichtungen Desktop-Computersysteme, tragbare Computersysteme, Handheld-Vorrichtungen, Netzwerkvorrichtungen oder eine beliebige andere Vorrichtung, die festverdrahtete Logik und/oder Programmlogik einbezieht, um die Techniken zu implementieren.
  • In einer Ausführungsform beinhaltet das Computersystem 300 einen Bus 302 oder einen anderen Kommunikationsmechanismus zum Kommunizieren von Informationen und einen mit dem Bus 302 gekoppelten Hardwareprozessor 304 zum Verarbeiten von Informationen. Der Hardwareprozessor 304 ist beispielsweise ein Allgemeinzweck-Mikroprozessor. Das Computersystem 300 beinhaltet außerdem einen Hauptspeicher 306, wie etwa einen Direktzugriffsspeicher (RAM) oder eine andere dynamische Speicherungsvorrichtung, der/die mit dem Bus 302 gekoppelt ist, zum Speichern von Informationen und Anweisungen, die durch den Prozessor 304 auszuführen sind. In einer Implementierung wird der Hauptspeicher 306 zum Speichern temporärer Variablen oder anderen Zwischeninformationen während der Ausführung von durch den Prozessor 304 auszuführenden Anweisungen verwendet. Solche Anweisungen machen, wenn sie in für den Prozessor 304 zugreifbaren nicht transitorischen Speicherungsmedien gespeichert sind, das Computersystem 300 zu einer Spezialzweckmaschine, die dafür zugeschnitten ist, die in den Anweisungen spezifizierten Operationen durchzuführen.
  • In einer Ausführungsform beinhaltet das Computersystem 300 ferner einen Nur-LeseSpeicher (ROM) 308 oder eine andere statische Speicherungsvorrichtung, die mit dem Bus 302 gekoppelt ist, zum Speichern statischer Informationen und Anweisungen für den Prozessor 304. Eine Speicherungsvorrichtung 310, wie etwa eine magnetische Platte, eine optische Platte, ein Solid-State-Laufwerk oder ein dreidimensionaler Cross-Point-Speicher, ist bereitgestellt und mit dem Bus 302 gekoppelt, um Informationen und Anweisungen zu speichern.
  • In einer Ausführungsform ist das Computersystem 300 über den Bus 302 mit einer Anzeige 312 gekoppelt, wie etwa einer Kathodenstrahlröhre (CRT)-, einer Flüssigkristallanzeige (LCD), einer Plasmaanzeige, einer Leuchtdioden(LED)-Anzeige oder einer Organisch-Leuchtdioden(OLED)-Anzeige, um Informationen für einen Computerbenutzer anzuzeigen. Eine Eingabevorrichtung 314, die alphanumerische und andere Tasten beinhaltet, ist mit dem Bus 302 zum Kommunizieren von Informationen und Befehlsauswahlen zu dem Prozessor 304 gekoppelt. Eine andere Art von Benutzereingabevorrichtung ist eine Cursor-Steuerung 316, wie etwa eine Maus, ein Trackball, eine berührungsgestützte Anzeige oder Cursorrichtungstasten zum Kommunizieren von Richtungsinformationen und Befehlsauswahlen zu dem Prozessor 304 und zum Steuern der Cursorbewegung auf der Anzeige 312. Diese Eingabevorrichtung weist typischerweise zwei Freiheitsgrade in zwei Achsen auf, einer ersten Achse (z. B. x-Achse) und einer zweiten Achse (z. B. y-Achse), was der Vorrichtung ermöglicht, Positionen in einer Ebene zu spezifizieren.
  • Gemäß einer Ausführungsform werden die Techniken hierin durch das Computersystem 300 als Reaktion darauf durchgeführt, dass der Prozessor 304 eine oder mehrere Sequenzen einer oder mehrerer in dem Hauptspeicher 306 enthaltenen Anweisungen ausführt. Solche Anweisungen werden von einem anderen Speicherungsmedium, wie etwa der Speicherungsvorrichtung 310, in den Hauptspeicher 306 gelesen. Die Ausführung der im Hauptspeicher 306 enthaltenen Anweisungssequenzen veranlasst, dass der Prozessor 304 die hierin beschriebenen Prozessschritte durchführt. In alternativen Ausführungsformen wird eine festverdrahtete Schaltungsanordnung anstelle von oder in Kombination mit Softwareanweisungen verwendet.
  • Der Begriff „Speicherungsmedien“, wie hierin verwendet, bezieht sich auf beliebige nicht transitorische Medien, die Daten und/oder Anweisungen speichern, die veranlassen, dass eine Maschine auf eine spezifische Weise arbeitet. Solche Speicherungsmedien beinhalten nichtflüchtige Medien und/oder flüchtige Medien. Nichtflüchtige Medien beinhalten beispielsweise optische Platten, Magnetplatten, Solid-State-Laufwerke oder dreidimensionalen Cross-Point-Speicher, wie etwa die Speicherungsvorrichtung 310. Flüchtige Medien beinhalten dynamischen Speicher, wie etwa den Hauptspeicher 306. Übliche Formen von Speicherungsmedien beinhalten beispielsweise eine Diskette, eine flexible Platte, eine Festplatte, ein Solid-State-Laufwerk, Magnetband oder ein beliebiges anderes magnetisches Datenspeicherungsmedium, eine CD-ROM, ein beliebiges anderes optisches Datenspeicherungsmedium, ein beliebiges physisches Medium mit Lochmustern, einen RAM, einen PROM und EPROM, einen FLASH-EPROM, NV-RAM oder einen beliebigen anderen Speicherchip oder eine beliebige andere Speicherkassette.
  • Speicherungsmedien unterscheiden sich von Übertragungsmedien, können jedoch in Verbindung mit diesen verwendet werden. Übertragungsmedien nehmen bei dem Transfer von Informationen zwischen Speicherungsmedien teil. Beispielsweise beinhalten Übertragungsmedien Koaxialkabel, Kupferdraht und Faseroptik, einschließlich der Drähte, die den Bus 302 umfassen. Übertragungsmedien können auch die Form akustischer Wellen oder Lichtwellen annehmen, wie etwa jene, die während Funkwellen- oder Infrarot-Datenkommunikationen erzeugt werden.
  • In einer Ausführungsform sind verschiedene Formen von Medien beim Führen einer oder mehrerer Sequenzen einer oder mehrerer Anweisungen zu dem Prozessor 304 für die Ausführung beteiligt. Beispielsweise werden die Anweisungen anfänglich auf einer magnetischen Platte oder einem Solid-State-Laufwerk eines Ferncomputers geführt. Der Ferncomputer lädt die Anweisungen in seinen dynamischen Speicher und sendet die Anweisungen über eine Telefonleitung unter Verwendung eines Modems. Ein Modem lokal zu dem Computersystem 300 empfängt die Daten auf der Telefonleitung und verwendet einen Infrarotsender, um die Daten in ein Infrarotsignal umzuwandeln. Ein Infrarotdetektor empfängt die in dem Infrarotsignal geführten Daten und eine geeignete Schaltungsanordnung platziert die Daten auf den Bus 302. Der Bus 302 führt die Daten zum Hauptspeicher 306, aus dem der Prozessor 304 die Anweisungen abruft und ausführt. Die durch den Hauptspeicher 306 empfangenen Anweisungen können optional in der Speicherungsvorrichtung 310 entweder vor oder nach der Ausführung durch den Prozessor 304 gespeichert werden.
  • Das Computersystem 300 beinhaltet auch eine Kommunikationsschnittstelle 318, die mit dem Bus 302 gekoppelt ist. Die Kommunikationsschnittstelle 318 stellt eine Zweiwege-Datenkommunikationskopplung mit einem Netzwerklink 320 bereit, der mit einem Lokalnetzwerk 322 verbunden ist. Beispielsweise ist die Kommunikationsschnittstelle 318 eine ISDN(Integrated Service Digital Network)-Karte, ein Kabelmodem, ein Satellitenmodem oder ein Modem zum Bereitstellen einer Datenkommunikationsverbindung mit einer entsprechenden Art von Telefonleitung. Als ein anderes Beispiel ist die Kommunikationsschnittstelle 318 eine Lokalnetzwerk(LAN)-Karte zum Bereitstellen einer Datenkommunikationsverbindung mit einem kompatiblen LAN. In manchen Implementierungen werden auch Drahtlos-Links implementiert. In einer beliebigen derartigen Implementierung sendet und empfängt die Kommunikationsschnittstelle 318 elektrische, elektromagnetische oder optische Signale, die digitale Datenströme führen, die verschiedene Informationsarten repräsentieren.
  • Der Netzwerklink 320 stellt typischerweise eine Datenkommunikation über ein oder mehrere Netzwerke zu anderen Datenvorrichtungen bereit. Beispielsweise stellt der Netzwerklink 320 eine Verbindung über das Lokalnetzwerk 322 zu einem Host-Computer 324 oder zu einem Cloud-Datenzentrum oder -Gerät bereit, der/das durch einen Internetdienstanbieter (ISP) 326 betrieben wird. Der ISP 326 stellt im Gegenzug Datenkommunikationsdienste über das weltweite Paketdatenkommunikationsnetzwerk bereit, heutzutage gewöhnlich bezeichnet als das „Internet“ 328. Sowohl das Lokalnetzwerk 322 als auch das Internet 328 verwenden elektrische, elektromagnetische oder optische Signale, die digitale Datenströme führen. Die Signale über die verschiedenen Netzwerke und die Signale auf dem Netzwerklink 320 und über die Kommunikationsschnittstelle 318, die die digitalen Daten zu und von dem Computersystem 300 führen, sind beispielhafte Formen von Übertragungsmedien. In einer Ausführungsform enthält das Netzwerk 320 die Cloud 202 oder einen Teil der oben beschriebenen Cloud 202.
  • Das Computersystem 300 sendet Nachrichten und empfängt Daten, einschließlich Programmcode, über das (die) Netzwerk(e), den Netzwerklink 320 und die Kommunikationsschnittstelle 318. In einer Ausführungsform empfängt das Computersystem 300 Code zur Verarbeitung. Der empfangene Code wird durch den Prozessor 304 wie empfangen ausgeführt und/oder in der Speicherungsvorrichtung 310 oder einer anderen nichtflüchtigen Speicherung zur späteren Ausführung gespeichert.
  • Architektur eines autonomen Fahrzeugs
  • 4 zeigt eine beispielhafte Architektur 400 für ein autonomes Fahrzeug (z. B. das in 1 gezeigte AV 100). Die Architektur 400 beinhaltet ein Wahrnehmungsmodul 402 (manchmal als eine Wahrnehmungsschaltung bezeichnet), ein Planungsmodul 404 (manchmal als eine Planungsschaltung bezeichnet), ein Steuermodul 406 (manchmal als eine Steuerschaltung bezeichnet), ein Lokalisierungsmodul 408 (manchmal als eine Lokalisierungsschaltung bezeichnet) und ein Datenbankmodul 410 (manchmal als eine Datenbankschaltung bezeichnet). Jedes Modul spielt beim Betrieb des AV 100 eine Rolle. Zusammen können die Module 402, 404, 406, 408 und 410 Teil des in 1 gezeigten AV-Systems 120 sein. In manchen Ausführungsformen sind beliebige der Module 402, 404, 406, 408 und 410 eine Kombination von Computersoftware (z. B. ausführbarer Code, der auf einem computerlesbaren Medium gespeichert ist) und Computerhardware (z. B. ein/e oder mehrere Mikroprozessoren, Mikrocontroller, anwendungsspezifische integrierte Schaltungen [ASICs], Hardwarespeichervorrichtungen, andere Arten von integrierten Schaltungen, andere Arten von Computerhardware oder eine Kombination beliebiger oder aller dieser Dinge). Jedes der Module 402, 404, 406, 408 und 410 wird manchmal als eine Verarbeitungsschaltung (z. B. Computerhardware, Computersoftware oder eine Kombination beider) bezeichnet. Eine Kombination beliebiger oder aller der Module 402, 404, 406, 408 und 410 ist auch ein Beispiel für eine Verarbeitungsschaltung.
  • Im Gebrauch empfängt das Planungsmodul 404 Daten, die einen Bestimmungsort 412 repräsentieren, und bestimmt Daten, die eine Trajektorie 414 (manchmal als eine Route bezeichnet) repräsentieren, auf der das AV 100 fahren kann, um den Bestimmungsort 412 zu erreichen (z. B. dort anzukommen). Damit das Planungsmodul 404 die die Trajektorie 414 repräsentierenden Daten bestimmt, empfängt das Planungsmodul 404 Daten vom Wahrnehmungsmodul 402, vom Lokalisierungsmodul 408 und vom Datenbankmodul 410.
  • Das Wahrnehmungsmodul 402 identifiziert nahegelegene physische Objekte unter Verwendung eines oder mehrerer Sensoren 121, z. B. wie auch in 1 gezeigt. Die Objekte werden klassifiziert (z. B. in Typen wie etwa Fußgänger, Fahrrad, Kraftfahrzeug, Verkehrsschild usw. gruppiert) und dem Planungsmodul 404 wird eine Szenenbeschreibung einschließlich der klassifizierten Objekte 416 bereitgestellt.
  • Das Planungsmodul 404 empfängt auch Daten, die die AV-Position 418 repräsentieren, vom Lokalisierungsmodul 408. Das Lokalisierungsmodul 408 bestimmt die AV-Position unter Verwendung von Daten von den Sensoren 121 und Daten vom Datenbankmodul 410 (z. B. geografische Daten), um eine Position zu berechnen. Beispielsweise verwendet das Lokalisierungsmodul 408 Daten von einem GNSS(globales Satellitennavigationssystem)-Sensor und geografische Daten, um einen Längengrad und Breitengrad des AV zu berechnen. In einer Ausführungsform beinhalten die durch das Lokalisierungsmodul 408 verwendeten Daten hochpräzise Karten der geometrischen Eigenschaften der Verkehrsstraße, Karten, die Straßennetzkonnektivitätseigenschaften beschreiben, Karten, die physische Eigenschaften der Verkehrsstraße beschreiben (wie etwa Verkehrsgeschwindigkeit, Verkehrsvolumen, die Anzahl von Fahrzeug- und Fahrrad-Verkehrsfahrbahnen, Fahrbahnbreite, Fahrbahnverkehrsrichtung oder Fahrbahnmarkierungsarten und -orte oder Kombinationen davon), und Karten, die die räumlichen Orte von Straßenmerkmalen beschreiben, wie etwa Fußgängerüberwege, Verkehrsschilder oder andere Verkehrssignale verschiedener Arten. In einer Ausführungsform werden die hochpräzisen Karten erstellt, indem zu Karten mit niedriger Präzision durch automatische oder manuelle Annotation Daten hinzugefügt werden.
  • Das Steuermodul 406 empfängt die die Trajektorie 414 repräsentierenden Daten und die die AV-Position 418 repräsentierenden Daten und betreibt die Steuerfunktionen 420a-c (z. B. Lenkung, Gasgeben, Bremsen, Zündung) des AV auf eine Weise, die bewirken wird, dass das AV 100 entlang der Trajektorie 414 zu dem Bestimmungsort 412 fährt. Falls beispielsweise die Trajektorie 414 eine Linksabbiegung beinhaltet, wird das Steuermodul 406 die Steuerfunktionen 420a-c auf eine Weise betreiben, dass der Lenkwinkel der Lenkfunktion bewirken wird, dass das AV 100 nach links abbiegt, und das Gasgeben und Bremsen bewirken werden, dass das AV 100 anhält und darauf wartet, dass Fußgänger und Fahrzeuge passieren, bevor das Abbiegen vorgenommen wird.
  • Eingaben in das autonome Fahrzeug
  • 5 zeigt ein Beispiel für Eingaben 502a-d (z. B. die in 1 gezeigten Sensoren 121) und Ausgaben 504a-d (z. B. Sensordaten), die durch das Wahrnehmungsmodul 402 (4) verwendet werden. Eine Eingabe 502a ist ein LiDAR(Lichtdetektion und -entfernungsmessung)-System (z. B. das in 1 gezeigte LiDAR 123). LiDAR ist eine Technologie, die Licht (z. B. Impulse von Licht wie etwa Infrarotlicht) verwendet, um Daten über physische Objekte in ihrer Sichtlinie zu erhalten. Ein LiDAR-System erzeugt LiDAR-Daten als die Ausgabe 504a. Beispielsweise sind LiDAR-Daten Sammlungen von 3D- oder 2D-Punkten (auch als Punktwolken bekannt), die zum Erstellen einer Repräsentation der Umgebung 190 verwendet werden.
  • Eine andere Eingabe 502b ist ein RADAR-System. RADAR ist eine Technologie, die Funkwellen verwendet, um Daten über nahegelegene physische Objekte zu erhalten. RADARs können Daten über Objekte erhalten, die sich nicht innerhalb der Sichtlinie eines LiDAR-Systems befinden. Ein RADAR-System 502b erzeugt RADAR-Daten als die Ausgabe 504b. Beispielsweise sind RADAR-Daten ein oder mehrere elektromagnetische Hochfrequenz-Signale, die zum Erstellen einer Repräsentation der Umgebung 190 verwendet werden.
  • Eine andere Eingabe 502c ist ein Kamerasystem. Ein Kamerasystem verwendet eine oder mehrere Kameras (z. B. Digitalkameras, die einen Lichtsensor wie etwa eine CCD [Charge-Coupled Device] verwenden), um Informationen über nahegelegene physische Objekte zu erhalten. Ein Kamerasystem erzeugt Kameradaten als die Ausgabe 504c. Kameradaten nehmen häufig die Form von Bilddaten an (z. B. Daten in einem Bilddatenformat wie etwa RAW, JPEG, PNG usw.). In manchen Beispielen weist das Kamerasystem mehrere unabhängige Kameras auf, z. B. für Stereopsis (Stereovision), was dem Kamerasystem ermöglicht, Tiefe wahrzunehmen. Obwohl die durch das Kamerasystem wahrgenommenen Objekte hier als „nahegelegen“ beschrieben sind, ist dies relativ zu dem AV. Im Gebrauch kann das Kamerasystem dazu ausgelegt sein, Objekte zu „sehen“, die sich entfernt, z. B. bis zu einem Kilometer oder mehr, vor dem AV befinden. Dementsprechend kann das Kamerasystem Merkmale wie etwa Sensoren und Objekte aufweisen, die zum Wahrnehmen von weit entfernten Objekten optimiert sind.
  • Eine andere Eingabe 502d ist ein Ampeldetektionssystem (TLD-System; TLD: Traffic Light Detection). Ein TLD-System verwendet eine oder mehrere Kameras, um Informationen über Ampeln, Verkehrsschilder und andere physische Objekte zu erhalten, die visuelle Navigationsinformationen bereitstellen. Ein TLD-System erzeugt TLD-Daten als die Ausgabe 504d. TLD-Daten nehmen häufig die Form von Bilddaten an (z. B. Daten in einem Bilddatenformat wie etwa RAW, JPEG, PNG usw.). Ein TLD-System unterscheidet sich von einem eine Kamera einbeziehenden System darin, dass ein TLD-System eine Kamera mit einem weiten Sichtfeld verwendet (z. B. unter Verwendung eines Weitwinkelobjektivs oder eines Fischaugenobjekivs), um Informationen über so viele physische Objekte, die visuelle Navigationsinformationen bereitstellen, wie möglich zu erhalten, sodass das AV 100 einen Zugang zu allen relevanten Navigationsinformationen aufweist, die durch diese Objekte bereitgestellt werden. Beispielsweise kann der Sichtwinkel des TLD-Systems etwa 120 Grad oder mehr betragen.
  • In manchen Ausführungsformen werden die Ausgaben 504a-d unter Verwendung einer Sensorfusionstechnik kombiniert. Somit werden entweder die individuellen Ausgaben 504a-d anderen Systemen des AV 100 bereitgestellt (z. B. einem Planungsmodul 404 bereitgestellt, wie in 4 gezeigt), oder die kombinierte Ausgabe kann den anderen Systemen bereitgestellt werden, entweder in der Form einer einzelnen kombinierten Ausgabe oder mehrerer kombinierter Ausgaben des gleichen Typs (z. B. unter Verwendung der gleichen Kombinationstechnik oder Kombinieren der gleichen Ausgaben oder beides) oder unterschiedlicher Typen (z. B. unter Verwendung verschiedener jeweiliger Kombinationstechniken oder Kombinieren verschiedener jeweiliger Ausgaben oder beides). In manchen Ausführungsformen wird eine Frühfusionstechnik verwendet. Eine Frühfusionstechnik ist gekennzeichnet durch das Kombinieren von Ausgaben, bevor ein oder mehrere Datenverarbeitungsschritte an der kombinierten Ausgabe angewendet werden. In manchen Ausführungsformen wird eine Spätfusionstechnik verwendet. Eine Spätfusionstechnik ist gekennzeichnet durch das Kombinieren von Ausgaben, nachdem ein oder mehrere Datenverarbeitungsschritte an den individuellen Ausgaben angewendet werden.
  • 6 zeigt ein Beispiel für ein LiDAR-System 602 (z. B. die in 5 gezeigte Eingabe 502a). Das LiDAR-System 602 emittiert Licht 604a-c von einem Lichtemitter 606 (z. B. einem Laser-Sender). Durch ein LiDAR-System emittiertes Licht liegt typischerweise nicht im sichtbaren Spektrum; beispielsweise wird häufig Infrarotlicht verwendet. Ein Teil des emittierten Lichts 604b trifft auf ein physisches Objekt 608 (z. B. ein Fahrzeug) und wird zurück zu dem LiDAR-System 602 reflektiert. (Von einem LiDAR-System emittiertes Licht dringt typischerweise nicht in physische Objekte, z. B. physische Objekte in fester Form, ein.) Das LiDAR-System 602 weist auch einen oder mehrere Lichtdetektoren 610 auf, die das reflektierte Licht detektieren. In einer Ausführungsform erzeugen ein oder mehrere mit dem LiDAR-System assoziierte Datenverarbeitungssysteme ein Bild 612, das das Sichtfeld 614 des LiDAR-Systems repräsentiert. Das Bild 612 beinhaltet Informationen, die die Abgrenzungen 616 eines physischen Objekts 608 repräsentieren. Auf diese Weise wird das Bild 612 zum Bestimmen der Abgrenzungen 616 eines oder mehrerer physischer Objekte in der Nähe eines AV verwendet.
  • 7 zeigt das LiDAR-System 602 im Betrieb. In dem in dieser Figur gezeigten Szenario empfängt das AV 100 sowohl die Kamerasystemausgabe 504c in der Form eines Bildes 702 als auch die LiDAR-Systemausgabe 504a in der Form von LiDAR-Datenpunkten 704. Im Gebrauch vergleichen die Datenverarbeitungssysteme des AV 100 das Bild 702 mit den Datenpunkten 704. Insbesondere wird ein im Bild 702 identifiziertes physisches Objekt 706 auch unter den Datenpunkten 704 identifiziert. Auf diese Weise nimmt das AV 100 die Abgrenzungen des physischen Objekts basierend auf der Kontur und der Dichte der Datenpunkte 704 wahr.
  • 8 zeigt den Betrieb des LiDAR-Systems 602 mit zusätzlichen Einzelheiten. Wie oben beschrieben, detektiert das AV 100 die Abgrenzungen eines physischen Objekts basierend auf Charakteristiken der durch das LiDAR-System 602 detektierten Datenpunkte. Wie in 8 gezeigt, wird ein flaches Objekt, wie etwa der Boden 802, von einem LiDAR-System 602 emittiertes Licht 804a-d konsistent reflektieren. Anders ausgedrückt, da das LiDAR-System 602 Licht unter Verwendung eines konstanten Abstands emittiert, wird der Boden 802 Licht zurück zu dem LiDAR-System 602 mit dem gleichen konsistenten Abstand reflektieren. Während das AV 100 über den Boden 802 fährt, wird das LiDAR-System 602 fortfahren, durch den nächsten gültigen Bodenpunkt 806 reflektiertes Licht zu detektieren, falls nichts die Straße versperrt. Falls jedoch ein Objekt 808 die Straße versperrt, wird durch das LiDAR-System 602 emittiertes Licht 804e-f von Punkten 810a-b inkonsistent zu der voraussichtlichen konsistenten Weise reflektiert. Aus diesen Informationen kann das AV 100 bestimmen, dass das Objekt 808 vorhanden ist.
  • Pfadplanung
  • 9 zeigt ein Blockdiagramm 900 der Beziehungen zwischen Eingaben und Ausgaben eines Planungsmoduls 404 (z. B. wie in 4 gezeigt). Im Allgemeinen ist die Ausgabe eines Planungsmoduls 404 eine Route 902 von einem Startpunkt 904 (z. B. Quellstandort oder Anfangsstandort) zu einem Endpunkt 906 (z. B. Bestimmungsort oder endgültigen Ort). Die Route 902 wird typischerweise durch ein oder mehrere Segmente definiert. Beispielsweise ist ein Segment eine zu fahrende Distanz über zumindest einen Abschnitt einer Straße, Landstraße, Autobahn, Einfahrt oder ein anderer physischer Bereich, der sich zur Fahrt eines Kraftfahrzeugs eignet. In manchen Beispielen, falls z. B. das AV 100 ein geländefähiges Fahrzeug ist, wie etwa ein Vierrad(4WD)- oder Allrad(AWD)-Auto, SUV, Pickup-Truck oder dergleichen, beinhaltet die Route 902 „Off-Road“-Segmente, wie etwa unbefestigte Pfade oder offene Felder.
  • Zusätzlich zu der Route 902 gibt ein Planungsmodul auch Routenplanungsdaten 908 auf Fahrbahnebene aus. Die Routenplanungsdaten 908 auf Fahrbahnebene werden verwendet, um Segmente der Route 902 basierend auf Zuständen des Segments zu einer speziellen Zeit zu durchfahren. Falls die Route 902 eine mehrspurige Autobahn beinhaltet, beinhalten die Routenplanungsdaten 908 auf Fahrbahnebene Trajektorieplanungsdaten 910, die das AV 100 verwendet kann, um eine Fahrbahn unter den mehreren Fahrbahnen zu wählen, z. B. basierend darauf, ob sich einer Ausfahrt genähert wird, ob eine oder mehrere der Fahrbahnen andere Fahrzeuge aufweisen, oder andere Faktoren, die im Verlauf weniger Minuten oder weniger variieren. Gleichermaßen beinhalten die Routenplanungsdaten 908 auf Fahrbahnebene in manchen Implementierungen für ein Segment der Route 902 spezifische Geschwindigkeitsbeschränkungen 912. Falls das Segment beispielsweise Fußgänger oder unerwarteten Verkehr beinhaltet, können die Geschwindigkeitsbeschränkungen 912 das AV 100 auf eine Fahrgeschwindigkeit einschränken, die langsamer als eine voraussichtliche Geschwindigkeit ist, z. B. eine Geschwindigkeit basierend auf Geschwindigkeitsbegrenzungsdaten für das Segment.
  • In einer Ausführungsform beinhalten die Eingaben in das Planungsmodul 404 Datenbankdaten 914 (z. B. von dem in 4 gezeigten Datenbankmodul 410), aktuelle Standortdaten 916 (z. B. die in 4 gezeigte AV-Position 418), Bestimmungsortdaten 918 (z. B. für den in 4 gezeigten Bestimmungsort 412) und Objektdaten 920 (z. B. die klassifizierten Objekte 416, wie durch das in 4 gezeigte Wahrnehmungsmodul 402 wahrgenommen). In manchen Ausführungsformen beinhalten die Datenbankdaten 914 bei der Planung verwendete Regeln. Regeln werden unter Verwendung einer formellen Sprache spezifiziert, z. B. unter Verwendung von boolescher Logik. In einer beliebigen gegebenen Situation, auf die das AV 100 trifft, werden zumindest manche der Regeln für die Situation gelten. Eine Regel gilt für eine gegebene Situation, falls die Regel Bedingungen aufweist, die basierend auf dem AV 100 zur Verfügung stehenden Informationen erfüllt werden, z. B. Informationen über die umliegende Umgebung. Regeln können eine Priorität aufweisen. Beispielsweise kann eine Regel, die besagt „falls die Straße eine Schnellstraße ist, soll sich zu der am weitesten links gelegenen Spur bewegt werden“, eine niedrigere Priorität aufweisen als „falls sich der Ausfahrt innerhalb einer Meile genähert wird, soll sich zu der am weitesten rechts gelegenen Spur bewegt werden“.
  • 10 zeigt einen gerichteten Graphen 1000, der bei der Pfadplanung z. B. durch das Planungsmodul 404 (4) verwendet wird. Im Allgemeinen wird ein gerichteter Graph 1000, wie der in 10 gezeigte, zum Bestimmen eines Pfads zwischen einem beliebigen Startpunkt 1002 und einem Endpunkt 1004 verwendet. In der realen Welt kann die den Startpunkt 1002 und den Endpunkt 1004 trennende Distanz relativ groß sein (z. B. in zwei unterschiedlichen Großstadtgebieten) oder kann relativ klein sein (z. B. zwei Kreuzungen, die an einen Häuserblock angrenzen, oder zwei Fahrbahnen einer mehrspurigen Straße).
  • In einer Ausführungsform weist der gerichtete Graph 1000 Knoten 1006a-d auf, die unterschiedliche Orte zwischen dem Startpunkt 1002 und dem Endpunkt 1004 repräsentieren, die durch ein AV 100 belegt sein könnten. In manchen Beispielen, z. B. wenn der Startpunkt 1002 und der Endpunkt 1004 unterschiedliche Großstadtgebiete repräsentieren, repräsentieren die Knoten 1006a-d Segmente von Straßen. In manchen Beispielen, z. B. wenn der Startpunkt 1002 und der Endpunkt 1004 unterschiedliche Orte auf derselben Straße repräsentieren, repräsentieren die Knoten 1006a-d unterschiedliche Positionen auf dieser Straße. Auf diese Weise beinhaltet der gerichtete Graph 1000 Informationen bei unterschiedlichen Granularitätsstufen. In einer Ausführungsform ist der eine hohe Granularität aufweisende gerichtete Graph auch ein Teilgraph eines anderen gerichteten Graphen mit einem größeren Maßstab. Beispielsweise weist ein gerichteter Graph, in dem der Startpunkt 1002 und der Endpunkt 1004 weit voneinander entfernt sind (z. B. mehrere Meilen getrennt), den Großteil seiner Informationen mit niedriger Granularität auf und basiert auf gespeicherten Daten, beinhaltet aber auch einige hochgranulare Informationen für den Abschnitt des Graphen, der physische Orte im Sichtfeld des AV 100 repräsentiert.
  • Die Knoten 1006a-d unterscheiden sich von den Objekten 1008a-b, die sich nicht mit einem Knoten überlappen können. In einer Ausführungsform, wenn die Granularität niedrig ist, repräsentieren die Objekte 1008a-b Gebiete, die das Kraftfahrzeug nicht durchfahren kann, z. B. Bereiche, die keine Straßen oder Landstraßen aufweisen. Wenn die Granularität hoch ist, repräsentieren die Objekte 1008a-b physische Objekte im Sichtfeld des AV 100, z. B. andere Kraftfahrzeuge, Fußgänger oder andere Entitäten, mit denen das AV 100 keinen physischen Raum teilen kann. In einer Ausführungsform sind manche oder alle der Objekte 1008a-b statische Objekte (z. B. ein Objekt, das seine Position nicht ändert, wie etwa eine Straßenlampe oder ein Strommast) oder dynamische Objekte (z. B. ein Objekt, das in der Lage ist, seine Position zu ändern, wie etwa ein Fußgänger oder ein anderes Auto).
  • Die Knoten 1006a-d sind durch Kanten 1010a-c verbunden. Falls zwei Knoten 1006ab durch eine Kante 1010a verbunden sind, ist es für das AV 100 möglich, zwischen einem Knoten 1006a und dem anderen Knoten 1006b zu fahren, z. B. ohne zu einem Zwischenknoten fahren zu müssen, bevor es an dem anderen Knoten 1006b ankommt. (Wenn sich auf ein zwischen Knoten fahrendes AV 100 bezogen wird, bedeutet dies, dass das AV 100 zwischen den beiden physischen Positionen fährt, die durch die jeweiligen Knoten repräsentiert werden.) Die Kanten 1010a-c sind häufig bidirektional in dem Sinne, dass ein AV 100 von einem ersten Knoten zu einem zweiten Knoten oder vom zweiten Knoten zum ersten Knoten fährt. In einer Ausführungsform sind die Kanten 101Oa-c unidirektional in dem Sinne, dass ein AV 100 von einem ersten Knoten zu einem zweiten Knoten fahren kann, das AV 100 jedoch nicht oder vom zweiten Knoten zum ersten Knoten fahren kann. Die Kanten 1010a-c sind unidirektional, wenn sie beispielsweise Einbahnstraßen, individuelle Fahrbahnen einer Straße, Landstraße oder Autobahn oder andere Merkmale, auf denen aufgrund rechtlicher oder physischer Beschränkungen nur in einer Richtung gefahren werden kann, repräsentieren.
  • In einer Ausführungsform verwendet das Planungsmodul 404 den gerichteten Graphen 1000, um einen Pfad 1012 zu identifizieren, der aus Knoten und Kanten zwischen dem Startpunkt 1002 und dem Endpunkt 1004 besteht.
  • Eine Kante 1010a-c weist assoziierte Kosten 1014a-b auf. Die Kosten 1014a-b sind ein Wert, der die Ressourcen repräsentiert, die verbraucht werden, falls das AV 100 diese Kante wählt. Eine typische Ressource ist Zeit. Falls beispielsweise eine Kante 1010a eine physische Distanz repräsentiert, die zweimal die einer anderen Kante 1010b ist, dann können die assoziierten Kosten 1014a der ersten Kante 1010a zweimal so groß sein wie die assoziierten Kosten 1014b der zweiten Kante 1010b. Andere Faktoren, die die Zeit beeinflussen, beinhalten erwarteter Verkehr, Anzahl von Kreuzungen, Geschwindigkeitsbegrenzung usw. Eine andere typische Ressource ist Kraftstoffeffizienz. Zwei Kanten 1010a-b können die gleiche physische Distanz repräsentieren, aber eine Kante 1010a kann mehr Kraftstoff erfordern als die andere Kante 1010b, z. B. infolge von Straßenbedingungen, erwartetem Wetter usw.
  • Wenn das Planungsmodul 404 einen Pfad 1012 zwischen dem Startpunkt 1002 und dem Endpunkt 1004 identifiziert, wählt das Planungsmodul 404 typischerweise einen für die Kosten optimierten Pfad, z. B. den Pfad, der die geringsten Gesamtkosten aufweist, wenn die individuellen Kosten der Kanten zusammenaddiert werden.
  • Steuerung des autonomen Fahrzeugs
  • 11 zeigt ein Blockdiagramm 1100 der Eingaben und Ausgaben eines Steuermoduls 406 (z. B. wie in 4 gezeigt). Ein Steuermodul arbeitet gemäß einer Steuerung 1102, die beispielsweise einen oder mehrere Prozessoren (z. B. einen oder mehrere Computerprozessoren wie etwa Mikroprozessoren oder Mikrocontroller oder beides) ähnlich dem Prozessor 304, Kurzzeit- und/oder Langzeit-Datenspeicherung (z. B. Speicher-Direktzugriffsspeicher oder Flash-Speicher oder beides) ähnlich dem Hauptspeicher 306, dem ROM 308 und der Speicherungsvorrichtung 310 und im Speicher gespeicherte Anweisungen, die Operationen der Steuerung 1102 ausführen, wenn die Anweisungen (z. B. durch den einen oder die mehreren Prozessoren) ausgeführt werden, beinhaltet.
  • In einer Ausführungsform empfängt die Steuerung 1102 Daten, die eine gewünschte Ausgabe 1104 repräsentieren. Die gewünschte Ausgabe 1104 beinhaltet typischerweise eine Bahngeschwindigkeit, z. B. eine Geschwindigkeit und einen Kurs. Die gewünschte Ausgabe 1104 kann beispielsweise auf Daten basieren, die von einem Planungsmodul 404 (z. B. wie in 4 gezeigt) empfangen werden. Gemäß der gewünschten Ausgabe 1104 erzeugt die Steuerung 1102 Daten, die als eine Gaspedaleingabe 1106 und eine Lenkeingabe 1108 verwendbar sind. Die Gaspedaleingabe 1106 repräsentiert den Betrag, mit dem das Gaspedal (z. B. Beschleunigungssteuerung) eines AV 100 zu betätigen ist, z. B. durch Einwirken auf das Lenkpedal oder Einwirken auf eine andere Gaspedalsteuerung, um die gewünschte Ausgabe 1104 zu erreichen. In manchen Beispielen beinhaltet die Gaspedaleingabe 1106 auch Daten, die zum Betätigen der Bremse (z. B. Verlangsamungssteuerung) des AV 100 verwendbar sind. Die Lenkeingabe 1108 repräsentiert einen Lenkwinkel, z. B. den Winkel, mit dem die Lenksteuerung (z. B. Lenkrad, Lenkwinkelaktor oder eine andere Funktionalität zum Steuern des Lenkwinkels) des AV positioniert werden sollte, um die gewünschte Ausgabe 1104 zu erreichen.
  • In einer Ausführungsform empfängt die Steuerung 1102 eine Rückmeldung, die zum Anpassen der Eingaben verwendet wird, die dem Gaspedal und der Lenkung bereitgestellt werden. Falls das AV 100 beispielsweise auf eine Beeinträchtigung 1110 trifft, wie etwa einen Hügel, wird die gemessene Geschwindigkeit 1112 des AV 100 unter die gewünschte Ausgabegeschwindigkeit gesenkt. In einer Ausführungsform wird eine jegliche gemessene Ausgabe 1114 der Steuerung 1102 bereitgestellt, sodass die notwendigen Anpassungen durchgeführt werden, z. B. basierend auf dem Unterschied 1113 zwischen der gemessenen Geschwindigkeit und der gewünschten Ausgabe. Die gemessene Ausgabe 1114 beinhaltet eine gemessene Position 1116, eine gemessene Bahngeschwindigkeit 1118 (einschließlich Geschwindigkeit und Kurs), eine gemessene Beschleunigung 1120 und andere Ausgaben, die durch Sensoren des AV 100 messbar sind.
  • In einer Ausführungsform werden Informationen über die Beeinträchtigung 1110 im Voraus detektiert, z. B. durch einen Sensor wie etwa eine Kamera oder ein LiDAR-Sensor, und einem prädiktiven Rückmeldemodul 1122 bereitgestellt. Das prädiktive Rückmeldemodul 1122 stellt dann der Steuerung 1102 Informationen bereit, die die Steuerung 1102 verwenden kann, um eine entsprechende Anpassung vorzunehmen. Falls die Sensoren des AV 100 beispielsweise einen Hügel detektieren („sehen“), können diese Informationen durch die Steuerung 1102 verwendet werden, um sich darauf vorzubereiten, das Gaspedal zu der geeigneten Zeit zu betätigen, um eine erhebliche Verlangsamung zu vermeiden.
  • 12 zeigt ein Blockdiagramm 1200 der Eingaben, Ausgaben und Komponenten der Steuerung 1102. Die Steuerung 1102 weist einen Geschwindigkeitsprofilersteller 1202 auf, der den Betrieb einer Gaspedal-/Bremssteuerung 1204 beeinflusst. Beispielsweise weist der Geschwindigkeitsprofilersteller 1202 die Gaspedal-/Bremssteuerung 1204 an, Beschleunigung zu bewirken und Verlangsamung zu bewirken, unter Verwendung des Gaspedals/der Bremse 1206, in Abhängigkeit von z. B. der Rückmeldung, die durch die Steuerung 1102 empfangen und durch den Geschwindigkeitsprofilersteller 1202 verarbeitet wird.
  • Die Steuerung 1102 weist auch eine Lateralverfolgungssteuerung 1208 auf, die den Betrieb einer Lenksteuerung 1210 beeinflusst. Beispielsweise weist die Lateralverfolgungssteuerung 1208 die Lenksteuerung 1210 an, die Position des Lenkwinkelaktors 1212 in Abhängigkeit von z. B. einer Rückmeldung, die durch die Steuerung 1102 empfangen und durch die Lateralverfolgungssteuerung 1208 verarbeitet wird, anzupassen.
  • Die Steuerung 1102 empfängt mehrere Eingaben, die zum Bestimmen verwendet werden, wie das Gaspedal/die Bremse 1206 und der Lenkwinkelaktor 1212 zu steuern sind. Ein Planungsmodul 404 stellt Informationen bereit, die durch die Steuerung 1102 verwendet werden, um z. B. einen Kurs zu wählen, wenn das AV 100 den Betrieb beginnt, und um zu bestimmen, welches Straßensegment zu durchfahren ist, wenn das AV 100 eine Kreuzung erreicht. Ein Lokalisierungsmodul 408 stellt der Steuerung 1102 Informationen bereit, die den aktuellen Standort des AV 100 beschreiben, sodass die Steuerung 1102 beispielsweise basierend auf der Weise, mit der das Gaspedal/die Bremse 1206 und der Lenkwinkelaktor 1212 gesteuert wird, bestimmen kann, ob sich das AV 100 an einem erwarteten Standort befindet. In einer Ausführungsform empfängt die Steuerung 1102 Informationen von anderen Eingaben 1214, z. B. Informationen, die von Datenbanken, Computernetzwerken usw. empfangen werden.
  • Bedingte Bewegungsvorhersagen
  • 13 zeigt ein Blockdiagramm 1300 der Eingaben, Ausgaben und Komponenten eines bedingten Bewegungsmoduls 1302. Im Allgemeinen simuliert das bedingte Bewegungsmodul 1302 einen Satz von Kandidatenbewegungstrajektorien für ein Fahrzeug (z. B. das in 1 gezeigte AV 100), um eine Reaktion auf jede Trajektorie eines oder mehrerer anderer Fahrzeuge in der Umgebung (z. B. der Umgebung 190) vorherzusagen. Beispielsweise simuliert das bedingte Bewegungsmodul 1302 einen Satz von Kandidatentrajektorien für das Fahrzeug als Reaktion auf eine Indikation (z. B. vom Planungsmodul 404), dass das Fahrzeug unter anderem ein Manöver (z. B. einen Spurwechsel, eine Einfädelung, eine Abbiegung usw.) durchführen soll, mit vordefinierten Intervallen (z. B. Zeitschritten), oder beiden. Das bedingte Bewegungsmodul 1302 wählt dann eine Trajektorie für das Fahrzeug basierend auf Merkmalen der Trajektorie und der (den) vorhergesagten Reaktion(en) auf die Trajektorie aus. Auf diese Weise plant das bedingte Bewegungsmodul 1302 die Bewegung des Fahrzeugs auf eine Weise, die für sowohl das Fahrzeug als auch andere Fahrzeuge in der Umgebung optimal ist.
  • Wie in 13 gezeigt, beinhaltet das bedingte Bewegungsmodul 1302 einen Kandidatentrajektoriegenerator 1304 zum Erzeugen eines Satzes von Kandidatenbewegungstrajektorien für ein Fahrzeug, einen bedingten Prädiktor 1306 zum Vorhersagen einer voraussichtlichen Reaktion eines anderen Fahrzeugs (manchmal als ein „Zielfahrzeug“ bezeichnet) auf eine jeweilige Kandidatentrajektorie, und einen Trajektorieselektor 1308 zum Auswählen einer Trajektorie aus dem Satz von Kandidatentrajektorien für das Fahrzeug basierend beispielsweise auf der vorhergesagten Reaktion des Zielfahrzeugs auf die Kandidatentrajektorie und Charakteristiken der Kandidatentrajektorie, unter anderen Informationen. Das bedingte Bewegungsmodul 1304 und seine Komponenten (z. B. der Kandidatentrajektoriegenerator 1304, der bedingte Prädiktor 1306 und der Trajektorieselektor 1308) können Teil eines Fahrzeugsystems (z. B. des AV-Systems 120) sein, wie etwa Teil eines Planungsmoduls (z. B. des Planungsmoduls 404) des Fahrzeugsystems. In einer Ausführungsform werden das bedingte Bewegungsmodul 1304 und seine Komponenten durch einen oder mehrere Prozessoren (z. B. einen oder mehrere Computerprozessoren wie etwa Mikroprozessoren oder Mikrocontroller oder beides) ähnlich dem Prozessor 304, Kurzzeit- und/oder Langzeit-Datenspeicherung (z. B. Speicher-Direktzugriffsspeicher oder Flash-Speicher oder beides) ähnlich dem Hauptspeicher 306, dem ROM 308 und der Speicherungsvorrichtung 310 und im Speicher gespeicherte Anweisungen, die Operationen der jeweiligen Komponente ausführen, wenn die Anweisungen (z. B. durch den einen oder die mehreren Prozessoren) ausgeführt werden, implementiert. In einer Ausführungsform erzeugt der Trajektoriegenerator 1304 einen Satz von Kandidatentrajektorien für das Fahrzeug mit vordefinierten Intervallen (z. B. Zeitschritten), als Reaktion auf eine Bestimmung, dass das Fahrzeug unter anderem ein Manöver (z. B. einen Spurwechsel, eine Einfädelung, eine Abbiegung usw.) durchführen soll, oder beides.
  • Im Allgemeinen erzeugt der Trajektoriegenerator 1304 einen Satz von Kandidatentrajektorien für das Fahrzeug. Jede Kandidatentrajektorie repräsentiert einen Pfad oder eine Route, auf dem bzw. der das Fahrzeug von einem Anfangsort (z. B. einem Startort oder aktuellen Ort) in Richtung eines Bestimmungsorts (z. B. eines End- oder Zielorts) fahren kann. In einer Ausführungsform beinhaltet jede Kandidatentrajektorie mindestens ein Merkmal oder mindestens einen Parameter, das bzw. der sie von den anderen Kandidatentrajektorien in dem Satz von Kandidatentrajektorien unterscheidet. Beispielsweise weist eine Kandidatentrajektorie einen anderen Anfangsort oder Bestimmungsort oder beide auf als manche oder alle der anderen Kandidatentrajektorien. Als ein anderes Beispiel weist eine Kandidatentrajektorie den gleichen Anfangsort oder Bestimmungsort oder beide auf wie manche oder alle der anderen Kandidatentrajektorien, aber weist ein anderes Geschwindigkeitsprofil, Lateralbewegungsprofil (z. B. laterale Bewegung innerhalb oder zwischen Fahrbahnen) oder einen anderen Bewegungsparameter als manche oder alle der anderen Kandidatentrajektorien auf. In einer Ausführungsform bildet der Satz von Kandidatentrajektorien ein Segment einer Gesamttrajektorie oder Route (z. B. Route 902) zwischen einem Startort (z. B. Startpunkt 904) und einem Bestimmungsort (z. B. Endpunkt 906) für das Fahrzeug.
  • Um den Satz von Kandidatentrajektorien zu erzeugen, empfängt der Kandidatentrajektoriegenerator 1304 Fahrzeugdaten 1310 und Umgebungsdaten 1312. Die Fahrzeugdaten 1310 repräsentieren Informationen über das Fahrzeug, einschließlich unter anderem des aktuellen Standorts des Fahrzeugs (z. B. die vom Lokalisierungsmodul 408 empfangene Fahrzeugposition 418), den Bestimmungsort des Fahrzeugs (z. B. den Bestimmungsort 412), Informationen über einen Status oder einen Zustand des Fahrzeugs (z. B. die Bahngeschwindigkeit, die Beschleunigung, den Kurs usw. des Fahrzeugs) und Informationen über Eigenschaften oder Fähigkeiten des Fahrzeugs (z. B. Geschwindigkeits- oder Beschleunigungsprofile für das Fahrzeug). Die Umgebungsdaten 1312 repräsentieren Informationen über die Umgebung des Fahrzeugs, einschließlich unter anderem Informationen über Fahrzeuge oder andere Objekte in der Umgebung (z. B. die klassifizierten Objekte 416, wie durch das Wahrnehmungsmodul 402 wahrgenommen), Kartendaten für die Umgebung (z. B. vom Datenbankmodul 410 empfangene hochauflösende Kartendaten) und Regeln für Planung und Betrieb in der Umgebung (z. B. vom Datenbankmodul 410 empfangen). Sowohl die Fahrzeugdaten 1310 als auch die Umgebungsdaten 1312 werden von einem oder mehreren Sensoren im Fahrzeug (z. B. Sensoren 121), einem oder mehreren Modulen des Fahrzeugs (z. B. Modulen 402, 404, 406, 408), einer oder mehreren Datenbanken, die kommunikativ mit dem Fahrzeug gekoppelt sind (z. B. der Datenbank 134), oder anderen Quellen in Kommunikation mit dem Fahrzeug (z. B. über V2X-Kommunikationen mit anderen Fahrzeugen oder Infrastruktur) oder Kombinationen von diesen empfangen.
  • Mit Bezug auf 14 verwendet der Kandidatentrajektoriegenerator 1304 die Fahrzeugdaten 1310 und die Umgebungsdaten 1312, um einen Satz von Kandidatentrajektorien 1400 für das Fahrzeug zu erzeugen. In Anbetracht von Informationen über das Fahrzeug (z. B. aktuelle Position, aktueller Bestimmungsort, aktuelle Bahngeschwindigkeit usw.) und der Umgebung des Fahrzeugs (z. B. Kartendaten und Objektdaten) erzeugt der Kandidatentrajektoriegenerator 1304 beispielsweise einen Satz von Kandidatentrajektorien 1400, auf denen das Fahrzeug in Richtung seines Bestimmungsortes fahren kann.
  • In einer Ausführungsform erzeugt der Trajektoriegenerator 1304 den Satz von Kandidatentrajektorien 1400 unter Verwendung eines oder mehrerer vordefinierter Verhalten oder einer oder mehrerer vordefinierter Makrohandlungen 1402 für das Fahrzeug. Hierin wird der Ausdruck „Makrohandlung“ weitgehend verwendet, um sich auf eine vordefinierte Handlung oder Abfolge von Handlungen zu beziehen, die durch das Fahrzeug durchgeführt werden können. Beispielsweise beinhalten die Makrohandlungen 1402 unter anderem eine erste Makrohandlung, die durch eine Handlung zum Folgen der Fahrbahn definiert ist, eine zweite Makrohandlung, die durch eine Abfolge von Handlungen einschließlich (1) Wechseln der Spur und (2) Folgen der Fahrbahn definiert ist, und eine dritte Makrohandlung, die durch eine Abfolge von Handlungen einschließlich (1) Folgen der Fahrbahn , (2) Wechseln der Spur und (3) Folgen der Fahrbahn definiert ist. Die Makrohandlungen 1402 können einem durch das Fahrzeug durchzuführenden Manöver entsprechen oder können bei mehreren Manövern anwendbar sein.
  • In einer Ausführungsform sind die Makrohandlungen 1402 unter Verwendung eines oder mehrerer Parameter 1404 parametrisiert. Beispielsweise wird eine Makrohandlung 1402, die durch eine Abfolge von Handlungen einschließlich (1) Folgen der Fahrbahn, (2) Wechseln der Spur und (3) Folgen der Fahrbahn definiert ist, so parametrisiert, dass die Handlung des Folgens der Fahrbahn durch einen Bahngeschwindigkeitsparameter 1404 parametrisiert wird und die Handlung des Wechselns der Spur durch einen Zeitparameter 1404 zum zeitlichen Planen des Spurwechsels parametrisiert wird. In einer Ausführungsform beinhaltet jeder Parameter 1404 einen Satz möglicher Werte, die basierend auf Eigenschaften des Fahrzeugs oder seiner Umgebung oder beiden ausgewählt werden. Beispielsweise beinhaltet der Bahngeschwindigkeitsparameter 1404 einen Satz möglicher Bahngeschwindigkeitswerte, die so ausgewählt werden, dass das Fahrzeug in der Lage ist, mit der Bahngeschwindigkeit zu fahren (z. B. basierend auf der aktuellen Bahngeschwindigkeit und Beschleunigungs-/Abbremsungsfähigkeiten des Fahrzeugs), oder die Bahngeschwindigkeit für die Umgebung des Fahrzeugs geeignet ist (z. B. innerhalb der Geschwindigkeitsbegrenzung), oder beides.
  • Um den Satz von Kandidatentrajektorien 1400 zu erzeugen, wendet der Kandidatentrajektoriegenerator 1304 die Fahrzeugdaten 1310 und die Umgebungsdaten 1312 an den Makrohandlungen 1402 und den Parametern 1404 an. Beispielsweise initialisiert der Kandidatentrajektoriegenerator 1304 die Parameter 1404, sodass diese einen Satz möglicher Werte basierend auf den Fahrzeugdaten 1310 oder den Umgebungsdaten 1312 oder beiden beinhalten. Der Kandidatentrajektoriegenerator 1304 iteriert dann manche oder alle der Makrohandlungen 1402 für den Satz von Parameterwerten 1404, um den Satz von Kandidatentrajektorien 1400 von dem aktuellen Standort des Fahrzeugs in Richtung seines Bestimmungsortes zu erzeugen. Beispielsweise erzeugt der Kandidatentrajektoriegenerator 1304 für eine Makrohandlung 1402, die durch eine Handlung zum Folgen der Fahrbahn definiert ist und durch einen Bahngeschwindigkeitsparameter 1404 parametrisiert wird, einen Satz von Kandidatentrajektorien 1400, auf denen das Fahrzeug fahren kann, um der Fahrbahn von seiner aktuellen Position mit verschiedenen Bahngeschwindigkeiten zu folgen. Durch das Erzeugen eines beschränkten Satzes von Kandidatentrajektorien 1400 basierend auf den Makrohandlungen 1402 und den Parametern 1404, die für das Fahrzeug möglich sind, wird die Anzahl von Kandidatentrajektorien relativ zu Implementierungen reduziert, die Trajektorien ohne solche Beschränkungen erzeugen. Dies reduziert im Gegenzug die Menge an Ressourcen, die zum Erzeugen von Trajektorien und Vorhersagen von Reaktionen verbraucht werden, während weiterhin die meisten Fahrverhalten abgedeckt werden.
  • Mit Bezug auf 15 wird der durch den Trajektoriegenerator 1304 erzeugte Satz von Kandidatentrajektorien 1400 dem bedingten Bewegungsprädiktor 1306 bereitgestellt. Im Allgemeinen sagt der bedingte Bewegungsprädiktor 1306 Reaktionen 1500 (einschließlich einer Wahrscheinlichkeit jeder Reaktion) von Zielfahrzeugen auf jede Kandidatentrajektorie 1400 vorher. Um dies durchzuführen, empfängt der bedingte Bewegungsprädiktor 1306 Szenendaten 1502 und Zielfahrzeugdaten 1504 zusätzlich zu den vom Trajektoriegenerator 1304 empfangenen Kandidatentrajektorien 1400. Die Szenendaten 1502 beinhalten hochauflösende Kartendaten und Kontextdaten (z. B. Umfeld, Bewegungsverlauf usw.) für jedes Zielfahrzeug (z. B. die Zielfahrzeuge, wie durch das Wahrnehmungsmodul 402 wahrgenommen und in den Umgebungsdaten 1312 enthalten). In einer Ausführungsform sind die Szenendaten 1502 für jedes Zielfahrzeug als ein Vogelperspektivenbild (z. B. ein RGB-Bild) rasterisiert. Die Zielfahrzeugdaten 1504 beinhalten Status- oder Zustandsinformationen für jedes Zielfahrzeug, wie etwa unter anderem Position, Bahngeschwindigkeit, Beschleunigung, Kurs oder Gierrate oder Kombinationen davon.
  • Um die Reaktionen 1500 eines Zielfahrzeugs auf eine spezielle Kandidatentrajektorie 1400 vorherzusagen, werden sowohl die Szenendaten 1502, die Zielfahrzeugdaten 1504 als auch Daten, die die Kandidatentrajektorie 1400 repräsentieren (z. B. ein rasterisiertes Vogelperspektivenbild der Kandidatentrajektorie), in ein Modell 1506 eingegeben. In einer Ausführungsform ist das Modell 1506 ein Deep-Learning-Modell (z. B. ein neuronales Netzwerkmodell, wie etwa ein faltendes neuronales Netzwerk [CNN]), das trainiert ist, eine multimodale probabilistische Trajektorievorhersage für das Zielfahrzeug basierend auf den Daten 1502, 1504 für das Zielfahrzeug, konditioniert an der Kandidatentrajektorie 1400, auszugeben. In einer Ausführungsform gibt das Modell 1506 die vorhergesagten Reaktionen 1500 in Form von Daten aus, die vorhergesagte Trajektorien durch das Zielfahrzeug (einschließlich der Wahrscheinlichkeit jeder Trajektorie) repräsentieren. Eingabedaten für mehrere Zielfahrzeuge oder Kandidatentrajektorien oder beides können dem Modell 1506 parallel bereitgestellt werden, um vorhergesagte Reaktionen 1500 mehrerer Fahrzeuge auf jede Kandidatentrajektorie 1400 in dem Satz von Kandidatentrajektorien zu erhalten. Zusätzliche Einzelheiten bezüglich des Modells 1506 und seiner Eingaben und Ausgaben sind in Phan-Minh, Tung, et al. „CoverNet: Multimodal Behavior Prediction Using Trajectory Sets.“ ArXiv: 1911.10298 beschrieben, dessen gesamter Inhalt hiermit durch Bezugnahme aufgenommen wird.
  • In einer Ausführungsform filtert der bedingte Bewegungsprädiktor 1306 die Zielfahrzeuge, für die Reaktionen 1500 vorhergesagt werden. Beispielsweise filtert der bedingte Bewegungsprädiktor 1306 die Zielfahrzeuge, um nur jene Zielfahrzeuge innerhalb einer Schwellendistanz (z. B. 10 Metern) vom Fahrzeug zu allen Zeiten während der Kandidatentrajektorie einzuschließen, oder nur jene Zielfahrzeuge innerhalb einer Schwellendistanz (z. B. 20 Metern) vom Fahrzeug zu manchen Zeitpunkten während der Kandidatentrajektorie einzuschließen, oder beides. In einer Ausführungsform filtert der bedingte Bewegungsprädiktor 1306 die Zielfahrzeuge, um nur jene Zielfahrzeuge innerhalb einer Schwellendistanz und Richtung des Fahrzeugs (z. B. 20 Meter vor dem Fahrzeug) zu manchen oder allen Zeiten während der Kandidatentrajektorie einzuschließen. Durch das Herausfiltern von Zielfahrzeugen, die nicht wesentlich die Trajektorie des Fahrzeugs beeinflussen, reduziert der bedingte Bewegungsprädiktor 1306 den Verbrauch von Rechenressourcen während der Vorhersage ohne erheblichen Qualitätsverlust.
  • Mit Bezug auf 16 werden die vorhergesagten Reaktionen 1500 und deren entsprechenden Wahrscheinlichkeiten dem Trajektorieselektor 1308 bereitgestellt. Im Allgemeinen weist der Trajektorieselektor 1308 jeder Kandidatentrajektorie 1400 eine Bewertung unter anderem basierend auf den vorhergesagten Reaktionen 1500, den Wahrscheinlichkeiten der vorhergesagten Reaktionen und Charakteristiken der Trajektorie zu. Der Trajektorieselektor 1308 wählt dann eine Kandidatentrajektorie 1600 aus dem Satz von Kandidatentrajektorien 1400 für das Fahrzeug basierend auf der Bewertung aus (z. B. die Kandidatentrajektorie mit der höchsten oder niedrigsten Bewertung) und stellt einem Steuermodul 1314 (z. B. dem Steuermodul 406) Daten, die die ausgewählte Trajektorie 1604 repräsentieren, bereit, um zu bewirken, dass das Fahrzeug entlang der Trajektorie fährt. In einer Ausführungsform wählt der Trajektorieselektor 1308 eine Kandidatentrajektorie 1600 aus dem Satz von Kandidatentrajektorien 1400 gemäß einem Satz von Regeln (z. B. einem Regelwerk) aus, wie in der US-Patentanmeldung mit der Nr. 16/996,785 und dem Titel „Data Driven Rule Books“ beschrieben, die hiermit in ihrer Gesamtheit durch Bezugnahme aufgenommen wird.
  • In einer Ausführungsform berechnet der Trajektorieselektor 1308 eine Bewertung für die Kandidatentrajektorie basierend auf einer Sicherheitsbewertung 1602 und einer oder mehreren Heuristiken 1604 für die vorhergesagten Reaktionen oder die Kandidatentrajektorie oder beides. Beispielsweise berechnet der Trajektorieselektor 1308 eine Sicherheitsbewertung 1602 für die Kandidatentrajektorie oder die vorhergesagte Reaktion oder beide unter anderem basierend darauf, ob die Kandidatentrajektorie oder die vorhergesagte Reaktion bewirken würde, dass das Zielfahrzeug einen Unfall baut, einen Beinahe-Unfall erfährt, stark abbremst oder beschleunigt, sich mit einer hohen oder niedrigen Geschwindigkeit bewegt oder Kombinationen davon. In einer Ausführungsform beinhaltet ein Beinahe-Unfall eine Situation, bei der die Kandidatentrajektorie oder die vorhergesagte Reaktion bewirken würde, dass das Fahrzeug oder das Zielfahrzeug innerhalb einer Schwellendistanz (z. B. etwa 0,5 Metern, etwa 1 Meter usw.) zueinander oder zu einem anderen Objekt kommen wird, diese bei Nichtvornahme eines Ausweichmanövers des Fahrzeugs oder des Zielfahrzeugs (oder eines Fahrers des Fahrzeugs oder des Zielfahrzeugs) in einen Unfall resultieren würde, oder einen anderen unsicheren Zustand am Fahrzeug oder Zielfahrzeug bewirken würde, wie etwa das Abkommen von der Straße eines oder beider der Fahrzeuge. In einer Ausführungsform beinhaltet das Bestimmen, ob die Kandidatentrajektorie oder die vorhergesagte Reaktion bewirken würde, dass das Fahrzeug oder das Zielfahrzeug stark abbremst oder beschleunigt oder sich mit hoher oder niedriger Geschwindigkeit bewegt, Bestimmen, ob ein Betrag der Beschleunigung (oder Abbremsung) oder der Geschwindigkeit am Fahrzeug oder Zielfahrzeug eine Schwelle überschreitet (oder unter diese fällt). In einer Ausführungsform berücksichtigt die Schwelle Charakteristiken des Fahrzeugs (z. B. einen Typ des Fahrzeugs, wie etwa einen Lastkraftwagen oder einen Sportwagen) oder die Umgebung (z. B. Wetter, Geschwindigkeitsbegrenzung) oder beides. In einer Ausführungsform zieht der Trajektorieselektor 1308 die Zukunft des Fahrzeugs oder des Zielfahrzeugs in Betracht, wenn er die Sicherheitsbewertung 1602 berechnet, wie etwa eine Zeit bis zur Kollision oder eine Distanz bis zur Kollision am Ende (oder einem anderen Punkt) der Trajektorie oder vorhergesagten Reaktion. Beispielsweise weist der Trajektorieselektor 1308 einer Trajektorie oder vorhergesagten Reaktion, die dem Fahrzeug oder dem Zielfahrzeug weniger Zeit oder Distanz bevor einer Kollision am Ende der Trajektorie oder vorhergesagten Reaktion lässt, eine schlechtere Bewertung zu.
  • Der Trajektorieselektor 1308 berechnet auch eine oder mehrere Heuristiken 1604 für die Kandidatentrajektorie oder die vorhergesagte Reaktion oder beide, wie etwa eine Menge an gefahrener Distanz über die Trajektorie oder vorhergesagte Reaktion (z. B. vorhergesagte Trajektorie). In einer Ausführungsform weist der Trajektorieselektor 1308 einer Kandidatentrajektorie, die eine größere gefahrene Distanz aufweist oder eine Reaktion mit einer größeren gefahrenen Distanz hervorruft, eine bessere (z. B. höhere oder niedrigere) Bewertung zu. In einer Ausführungsform werden an der Sicherheitsbewertung 1602 und den Heuristiken 1604 Gewichtungen angewendet, wenn eine Gesamtbewertung für die Kandidatentrajektorie bestimmt wird. Beispielsweise weist der Trajektorieselektor 1308 der Sicherheitsbewertung 1602 ein größeres Gewicht zu, um zu gewährleisten, dass die sicherste Kandidatentrajektorie ausgewählt wird. Als ein anderes Beispiel weist der Trajektorieselektor 1308 den Heuristiken 1604 ein größeres Gewicht zu, um Trajektorien zu bevorzugen, die die gefahrene Distanz maximieren.
  • 17 zeigt ein Flussdiagramm eines beispielhaften Prozesses 1700 zur bedingten Bewegungsvorhersage. In einer Ausführungsform ist das Fahrzeug das in 1 gezeigte AV 100, und der Prozess 1700 wird durch einen Prozessor, wie etwa den in 3 gezeigten Prozessor 304, ausgeführt.
  • Der Prozessor erzeugt 1702 einen Satz von Kandidatentrajektorien für das Fahrzeug basierend auf möglichen Makrohandlungen durch das Fahrzeug. In einer Ausführungsform beinhaltet der Satz von Kandidatentrajektorien die in 14 gezeigten Kandidatentrajektorien 1400. In einer Ausführungsform beinhalten die möglichen Makrohandlungen die Makrohandlungen 1402, die mit den in 14 gezeigten Parametern 1404 parametrisiert sind. In einer Ausführungsform beinhalten die möglichen Makrohandlungen eine Handlung zum Folgen einer Fahrbahn mit einer parametrisierten Bahngeschwindigkeit oder eine Handlung zum Wechseln der Spur mit einer parametrisierten Spurwechselzeit, oder beide. In einer Ausführungsform identifiziert der Prozessor ein durch das Fahrzeug auf einem Straßennetz durchzuführendes Manöver (z. B. Einfädeln, Spurwechsel, Abbiegen) und erzeugt den Satz von Kandidatentrajektorien zum Durchführen des Manövers auf dem Straßennetz.
  • Für zumindest manche Trajektorien in dem Satz von Kandidatentrajektorien sagt der Prozessor eine Reaktion eines Zielfahrzeugs auf die jeweilige Trajektorie und eine Wahrscheinlichkeit der Reaktion des Zielfahrzeugs vorher 1704. In einer Ausführungsform ist die vorhergesagte Reaktion eine der in 15 gezeigten vorhergesagten Reaktionen 1500. In einer Ausführungsform beinhaltet das Vorhersagen der Reaktion des Zielfahrzeugs auf die Trajektorie Vorhersagen einer Trajektorie des Zielfahrzeugs, die gegenüber der Trajektorie des Fahrzeugs konditioniert ist (z. B. durch Anwendung eines Deep-Learning-Modells, wie etwa des in 15 gezeigten Modells 1506).
  • Der Prozessor wählt eine Trajektorie aus dem Satz von Kandidatentrajektorien zumindest teilweise basierend auf der vorhergesagten Reaktion des Zielfahrzeugs auf die Trajektorie, der Wahrscheinlichkeit der Reaktion durch das Zielfahrzeug und Charakteristiken der Trajektorie aus 1706. In einer Ausführungsform ist die ausgewählte Trajektorie die in 16 gezeigte ausgewählte Trajektorie 1600. In einer Ausführungsform beinhaltet das Auswählen der Trajektorie aus dem Satz von Kandidatentrajektorien Bestimmen einer Bewertung für jede Trajektorie in dem Satz von Kandidatentrajektorien zumindest teilweise basierend auf der Reaktion des Zielfahrzeugs auf die Trajektorie, der Wahrscheinlichkeit der Reaktion des Zielfahrzeugs und den Charakteristiken der Trajektorie, und Auswählen der Trajektorie aus dem Satz von Kandidatentrajektorien basierend auf der Bewertung. In einer Ausführungsform beinhaltet das Bestimmen der Bewertung beispielsweise unter anderem Identifizieren eines Betrags der Beschleunigung des Fahrzeugs für die Trajektorie oder des Zielfahrzeugs als Reaktion auf die Trajektorie, Identifizieren einer Kollision oder Beinahe-Kollision durch das Fahrzeug für die Trajektorie oder durch das Zielfahrzeug als Reaktion auf die Trajektorie, Bestimmen einer Zeit bis zu der Kollision oder einer Distanz bis zu der Kollision für das Fahrzeug für die Trajektorie oder für das Zielfahrzeug als Reaktion auf die Trajektorie, oder Bestimmen einer durch das Fahrzeug für die Trajektorie oder durch das Zielfahrzeug als Reaktion auf die Trajektorie gefahrenen Distanz, oder Kombinationen davon. In einer Ausführungsform wird die Bewertung basierend auf der Sicherheitsbewertung 1602 oder einer oder mehreren Heuristiken 1604 oder beiden für die Kandidatentrajektorie oder die vorhergesagte Reaktion oder beide bestimmt.
  • In einer Ausführungsform ist das Zielfahrzeug ein erstes Zielfahrzeug, und für jede Trajektorie in dem Satz von Kandidatentrajektorien sagt der Prozessor eine Reaktion durch ein zweites, anderes Zielfahrzeug (z. B. ein anderes Zielfahrzeug in der Nähe/Trajektorie des Fahrzeugs) auf die Trajektorie und eine Wahrscheinlichkeit der Reaktion durch das zweite Zielfahrzeug vorher. Der Prozessor wählt die Trajektorie aus dem Satz von Kandidatentrajektorien zumindest teilweise basierend auf der Reaktion des ersten Zielfahrzeugs auf die Trajektorie, der Wahrscheinlichkeit der Reaktion des ersten Zielfahrzeugs, der Reaktion des zweiten Zielfahrzeugs auf die Trajektorie, der Wahrscheinlichkeit der Reaktion des zweiten Zielfahrzeugs und den Charakteristiken der Trajektorie aus.
  • Nach dem Auswählen der Trajektorie aus dem Satz von Kandidatentrajektorien betreibt 1708 der Prozessor das Fahrzeug (oder bewirkt den Betrieb des Fahrzeugs) basierend auf der ausgewählten Trajektorie.
  • In der vorstehenden Beschreibung wurden Ausführungsformen der Erfindung mit Bezug auf zahlreiche spezifische Einzelheiten beschrieben, die von Implementierung zu Implementierung variieren können. Die Beschreibung und Zeichnungen sind dementsprechend als veranschaulichend anstatt beschränkend anzusehen. Der alleinige und ausschließliche Indikator des Schutzumfangs der Erfindung, und was durch die Anmelder als der Schutzumfang der Erfindung beabsichtigt ist, ist der wörtliche und äquivalente Schutzumfang des Satzes von Ansprüchen, die aus dieser Anmeldung hervorgehen, in der spezifischen Form, in der derartige Ansprüche hervorgehen, einschließlich einer beliebigen anschließenden Korrektur. Jegliche hierin ausdrücklich dargelegte Definitionen für in derartigen Ansprüchen enthaltenen Begriffe sollen die Bedeutung solcher Begriffe regulieren, wie in den Ansprüchen verwendet. Zusätzlich kann, wenn der Begriff „ferner umfassend“ in der vorstehenden Beschreibung oder in den folgenden Ansprüchen verwendet wird, das, was diesem Ausdruck folgt, ein zusätzlicher Schritt oder eine zusätzliche Entität oder ein Teilschritt/eine Teilentität eines zuvor vorgetragenen Schritts oder einer zuvor vorgetragenen Entität sein.

Claims (15)

  1. Fahrzeug, umfassend: ein computerlesbares Medium, das computerausführbare Anweisungen speichert; und einen Prozessor, der kommunikativ mit dem computerlesbaren Medium gekoppelt ist, wobei der Prozessor ausgelegt ist zum Ausführen der computerausführbaren Anweisungen, um Operationen durchzuführen, die Folgendes beinhalten: Erzeugen eines Satzes von Kandidatentrajektorien für das Fahrzeug basierend auf möglichen Makrohandlungen durch das Fahrzeug; für zumindest manche Trajektorien in dem Satz von Kandidatentrajektorien, Vorhersagen einer Reaktion eines Zielfahrzeugs auf die jeweilige Trajektorie und einer Wahrscheinlichkeit der Reaktion des Zielfahrzeugs; Auswählen einer Trajektorie aus dem Satz von Kandidatentrajektorien zumindest teilweise basierend auf der vorhergesagten Reaktion des Zielfahrzeugs auf die Trajektorie, der Wahrscheinlichkeit der Reaktion des Zielfahrzeugs und Charakteristiken der Trajektorie; und Betreiben des Fahrzeugs basierend auf der ausgewählten Trajektorie.
  2. Fahrzeug nach Anspruch 1, umfassend: Identifizieren eines durch das Fahrzeug auf einem Straßennetz durchzuführenden Manövers; und Erzeugen des Satzes von Kandidatentrajektorien zum Durchführen des Manövers auf dem Straßennetz.
  3. Fahrzeug nach Anspruch 2, wobei das Manöver ein Einfädeln und/oder einen Spurwechsel und/oder ein Abbiegen umfasst.
  4. Fahrzeug nach einem der Ansprüche 1 bis 3, wobei die möglichen Makrohandlungen eine Handlung zum Folgen der Fahrbahn mit einer parametrisierten Bahngeschwindigkeit beinhalten.
  5. Fahrzeug nach einem der Ansprüche 1 bis 4, wobei die möglichen Makrohandlungen eine Handlung zum Wechseln der Spur mit einer parametrisierten Spurwechselzeit beinhalten.
  6. Fahrzeug nach einem der Ansprüche 1 bis 5, wobei das Vorhersagen der Reaktion des Zielfahrzeugs auf die Trajektorie Vorhersagen einer Trajektorie des Zielfahrzeugs, die gegenüber der Trajektorie des Fahrzeugs konditioniert ist, umfasst.
  7. Fahrzeug nach einem der Ansprüche 1 bis 6, wobei das Auswählen der Trajektorie aus dem Satz von Kandidatentrajektorien Folgendes umfasst: Bestimmen einer Bewertung für jede Trajektorie in dem Satz von Kandidatentrajektorien, wobei die Bewertung zumindest teilweise basierend auf der Reaktion des Zielfahrzeugs auf die Trajektorie, der Wahrscheinlichkeit der Reaktion des Zielfahrzeugs und den Charakteristiken der Trajektorie bestimmt wird; und Auswählen der Trajektorie aus dem Satz von Kandidatentrajektorien basierend auf der Bewertung.
  8. Fahrzeug nach Anspruch 7, wobei das Bestimmen der Bewertung Identifizieren eines Betrags der Beschleunigung des Fahrzeugs für die Trajektorie oder des Zielfahrzeugs als Reaktion auf die Trajektorie umfasst.
  9. Fahrzeug nach Anspruch 7, wobei das Bestimmen der Bewertung Identifizieren einer Kollision oder Beinahe-Kollision des Fahrzeugs für die Trajektorie oder des Zielfahrzeugs als Reaktion auf die Trajektorie umfasst.
  10. Fahrzeug nach Anspruch 7, wobei das Bestimmen der Bewertung Bestimmen einer Zeit bis zur Kollision oder einer Distanz bis zur Kollision für das Fahrzeug für die Trajektorie oder für das Zielfahrzeug als Reaktion auf die Trajektorie umfasst.
  11. Fahrzeug nach Anspruch 7, wobei das Bestimmen der Bewertung Bestimmen einer durch das Fahrzeug für die Trajektorie oder durch das Zielfahrzeug als Reaktion auf die Trajektorie gefahrenen Distanz umfasst.
  12. Fahrzeug nach einem der Ansprüche 1 bis 11, wobei das Zielfahrzeug ein erstes Zielfahrzeug umfasst, und der Prozessor ausgelegt ist zum Ausführen der computerausführbaren Anweisungen, um Operationen durchzuführen, die Folgendes beinhalten: für jede Trajektorie in dem Satz von Kandidatentrajektorien, Vorhersagen einer Reaktion eines zweiten Zielfahrzeugs auf die Trajektorie und einer Wahrscheinlichkeit der Reaktion des zweiten Zielfahrzeugs, wobei sich das zweite Zielfahrzeug von dem ersten Zielfahrzeug unterscheidet.
  13. Fahrzeug nach Anspruch 12, umfassend Auswählen der Trajektorie aus dem Satz von Kandidatentrajektorien zumindest teilweise basierend auf der Reaktion des ersten Zielfahrzeugs auf die Trajektorie, der Wahrscheinlichkeit der Reaktion des ersten Zielfahrzeugs, der Reaktion des zweiten Zielfahrzeugs auf die Trajektorie, der Wahrscheinlichkeit der Reaktion des zweiten Zielfahrzeugs und den Charakteristiken der Trajektorie.
  14. Verfahren, umfassend: Erzeugen, durch eine Planungsschaltung, eines Satzes von Kandidatentrajektorien für ein Fahrzeug basierend auf möglichen Makrohandlungen durch das Fahrzeug; für zumindest manche Trajektorien in dem Satz von Kandidatentrajektorien, Vorhersagen, durch die Planungsschaltung, einer Reaktion eines Zielfahrzeugs auf die jeweilige Trajektorie und einer Wahrscheinlichkeit der Reaktion des Zielfahrzeugs; Auswählen, durch die Planungsschaltung, einer Trajektorie aus dem Satz von Kandidatentrajektorien zumindest teilweise basierend auf der Reaktion des Zielfahrzeugs auf die Trajektorie, der Wahrscheinlichkeit der Reaktion des Zielfahrzeugs und Charakteristiken der Trajektorie; und Betreiben, durch eine Steuerschaltung, des Fahrzeugs basierend auf der ausgewählten Trajektorie.
  15. Nichtflüchtiges computerlesbares Speicherungsmedium, das ein oder mehrere Programme zur Ausführung durch einen oder mehrere Prozessoren einer Vorrichtung umfasst, wobei das eine oder die mehreren Programme Anweisungen beinhalten, die bei ihrer Ausführung durch den einen oder die mehreren Prozessoren bewirken, dass die Vorrichtung das Verfahren nach Anspruch 14 durchführt.
DE102020128155.2A 2020-08-26 2020-10-27 Bedingte bewegungsvorhersagen Pending DE102020128155A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/003,965 2020-08-26
US17/003,965 US11814075B2 (en) 2020-08-26 2020-08-26 Conditional motion predictions

Publications (1)

Publication Number Publication Date
DE102020128155A1 true DE102020128155A1 (de) 2022-03-03

Family

ID=73223753

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020128155.2A Pending DE102020128155A1 (de) 2020-08-26 2020-10-27 Bedingte bewegungsvorhersagen

Country Status (5)

Country Link
US (2) US11814075B2 (de)
KR (2) KR102555318B1 (de)
CN (1) CN114120687A (de)
DE (1) DE102020128155A1 (de)
GB (2) GB2615192B (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11814075B2 (en) 2020-08-26 2023-11-14 Motional Ad Llc Conditional motion predictions
US11858536B1 (en) * 2020-10-31 2024-01-02 Uatc, Llc Systems and methods for interactive prediction and planning
US11810225B2 (en) * 2021-03-30 2023-11-07 Zoox, Inc. Top-down scene generation
US11858514B2 (en) 2021-03-30 2024-01-02 Zoox, Inc. Top-down scene discrimination
DE102021206854A1 (de) * 2021-06-30 2023-01-05 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zur Steuerung einer Annäherung eines Fahrzeugs, Abstandsregler, Computerprogramm und Speichereinheit

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018204185A1 (de) 2018-03-19 2019-09-19 Bayerische Motoren Werke Aktiengesellschaft Fahrerassistenz mit einer variabel veränderbaren Kooperationsgröße
DE102019215657A1 (de) 2018-11-14 2020-05-14 Jaguar Land Rover Limited Fahrzeugsteuerungsstystem und -verfahren
DE102018132520A1 (de) 2018-12-17 2020-06-18 Trw Automotive Gmbh Verfahren sowie System zum Steuern eines Kraftfahrzeugs

Family Cites Families (112)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6263277B1 (en) * 2000-08-07 2001-07-17 Alpine Electronics, Inc. Route searching method
JP4936288B2 (ja) * 2007-12-10 2012-05-23 本田技研工業株式会社 目標経路生成システム
CN102257545A (zh) 2008-12-30 2011-11-23 电子地图北美公司 用于发射及/或接收增强了聚焦因子的位置参考的方法及系统
US9140570B1 (en) 2011-09-08 2015-09-22 Amazon Technologies, Inc. Time-inclusive route and trip planning
US8850543B2 (en) 2012-12-23 2014-09-30 Mcafee, Inc. Hardware-based device authentication
US20140214319A1 (en) 2013-01-25 2014-07-31 Parkwayz, Inc. Computer System and Method for Search of a Parking Spot
US10599155B1 (en) 2014-05-20 2020-03-24 State Farm Mutual Automobile Insurance Company Autonomous vehicle operation feature monitoring and evaluation of effectiveness
EP2950294B1 (de) 2014-05-30 2019-05-08 Honda Research Institute Europe GmbH Verfahren und Fahrzeug mit fortschrittlichem Fahrerassistenzsystem zur risikobasierten Verkehrsszenenanalyse
US10810504B1 (en) 2015-03-11 2020-10-20 State Farm Mutual Automobile Insurance Company Route scoring for assessing or predicting driving performance
US9934688B2 (en) * 2015-07-31 2018-04-03 Ford Global Technologies, Llc Vehicle trajectory determination
US10202144B2 (en) * 2015-12-08 2019-02-12 Ford Global Technologies, Llc Vehicle curvature determination
US9645577B1 (en) 2016-03-23 2017-05-09 nuTonomy Inc. Facilitating vehicle driving and self-driving
US9896096B2 (en) * 2016-04-11 2018-02-20 David E. Newman Systems and methods for hazard mitigation
US10093311B2 (en) * 2016-07-06 2018-10-09 Waymo Llc Testing predictions for autonomous vehicles
US10274331B2 (en) 2016-09-16 2019-04-30 Polaris Industries Inc. Device and method for improving route planning computing devices
US10769525B2 (en) * 2016-09-23 2020-09-08 Apple Inc. Decision making for autonomous vehicle motion control
CN110291477B (zh) * 2016-12-02 2022-08-16 嘉蒂克人工智能公司 车辆控制系统及使用方法
JP6754448B2 (ja) 2016-12-21 2020-09-09 本田技研工業株式会社 車両制御システム、車両制御方法、および車両制御プログラム
JP6708793B2 (ja) * 2016-12-23 2020-06-10 モービルアイ ビジョン テクノロジーズ リミテッド 課せられる責任の制約を伴うナビゲーションシステム
WO2018122973A1 (ja) * 2016-12-27 2018-07-05 本田技研工業株式会社 車両制御システム、車両制御方法、および車両制御プログラム
WO2018142561A1 (ja) 2017-02-03 2018-08-09 本田技研工業株式会社 車両制御システム、車両制御方法、および車両制御プログラム
CN110603497B (zh) 2017-02-10 2021-11-16 日产北美公司 自主车辆操作管理控制的自主车辆和方法
US10796204B2 (en) 2017-02-27 2020-10-06 Huawei Technologies Co., Ltd. Planning system and method for controlling operation of an autonomous vehicle to navigate a planned path
DE112018000174T5 (de) * 2017-03-07 2019-08-08 Robert Bosch Gmbh Aktionsplanungssystem und -verfahren für autonome Fahrzeuge
US10393533B2 (en) * 2017-05-26 2019-08-27 Ford Global Technologies, Llc Systems and methods for particulate filter regeneration
WO2018235159A1 (ja) 2017-06-20 2018-12-27 三菱電機株式会社 経路予測装置および経路予測方法
WO2019023324A1 (en) 2017-07-26 2019-01-31 Via Transportation, Inc. SYSTEMS AND METHODS FOR MANAGING AND ROUTING COOPERATING VEHICLES
KR20190014871A (ko) 2017-08-04 2019-02-13 삼성전자주식회사 차량의 후방에 위치한 응급 차량에 기초하여 상기 차량의 주행 경로를 변경하는 장치 및 방법
US10656657B2 (en) * 2017-08-08 2020-05-19 Uatc, Llc Object motion prediction and autonomous vehicle control
US11210744B2 (en) * 2017-08-16 2021-12-28 Mobileye Vision Technologies Ltd. Navigation based on liability constraints
KR102007249B1 (ko) 2017-12-08 2019-08-06 현대모비스 주식회사 자율 주행 장치, 방법 및 시스템
US11243532B1 (en) * 2017-09-27 2022-02-08 Apple Inc. Evaluating varying-sized action spaces using reinforcement learning
US10705531B2 (en) * 2017-09-28 2020-07-07 Nec Corporation Generative adversarial inverse trajectory optimization for probabilistic vehicle forecasting
US10019011B1 (en) 2017-10-09 2018-07-10 Uber Technologies, Inc. Autonomous vehicles featuring machine-learned yield model
US10836405B2 (en) * 2017-10-30 2020-11-17 Nissan North America, Inc. Continual planning and metareasoning for controlling an autonomous vehicle
WO2019088989A1 (en) * 2017-10-31 2019-05-09 Nissan North America, Inc. Reinforcement and model learning for vehicle operation
US10562538B2 (en) * 2017-11-22 2020-02-18 Uatc, Llc Object interaction prediction systems and methods for autonomous vehicles
BR112020010209B1 (pt) * 2017-11-30 2023-12-05 Nissan North America, Inc. Métodos para uso na travessia de uma rede de transporte de veículos e veículo autônomo
GB201720266D0 (en) * 2017-12-05 2018-01-17 Trw Ltd Controlling the operation of a vehicle
US11360475B2 (en) * 2017-12-05 2022-06-14 Waymo Llc Real-time lane change selection for autonomous vehicles
US20190185010A1 (en) * 2017-12-18 2019-06-20 PlusAI Corp Method and system for self capability aware route planning in autonomous driving vehicles
US20190220016A1 (en) * 2018-01-15 2019-07-18 Uber Technologies, Inc. Discrete Decision Architecture for Motion Planning System of an Autonomous Vehicle
US11919531B2 (en) * 2018-01-31 2024-03-05 Direct Current Capital LLC Method for customizing motion characteristics of an autonomous vehicle for a user
JP6897597B2 (ja) * 2018-02-16 2021-06-30 トヨタ自動車株式会社 駐車支援装置
JP6963158B2 (ja) * 2018-02-26 2021-11-05 ニッサン ノース アメリカ,インク 集中型共有自律走行車動作管理
JP6927090B2 (ja) 2018-03-05 2021-08-25 トヨタ自動車株式会社 経路生成装置
KR102553730B1 (ko) 2018-03-08 2023-07-11 주식회사 에이치엘클레무브 차량의 충돌 회피 제어 장치 및 방법
EP3636507A1 (de) * 2018-03-20 2020-04-15 Mobileye Vision Technologies Ltd. Komfortables verantwortlichkeitssensitives sicherheitsmodell
US11238745B2 (en) 2018-05-07 2022-02-01 Joby Aero, Inc. Dynamic aircraft routing
US10593215B2 (en) * 2018-05-07 2020-03-17 Uber Technologies, Inc. Dynamic aircraft routing
US10745011B2 (en) * 2018-05-31 2020-08-18 Nissan North America, Inc. Predicting yield behaviors
EP3579211B1 (de) 2018-06-06 2023-08-16 Honda Research Institute Europe GmbH Verfahren und fahrzeug zur unterstützung eines betreibers eines ego-fahrzeugs bei der steuerung des ego-fahrzeugs durch bestimmung eines zukünftigen verhaltens und einer damit verbundenen bahn für das ego-fahrzeug
US10691130B2 (en) * 2018-06-06 2020-06-23 Uatc, Llc Gridlock solver for motion planning system of an autonomous vehicle
US11370423B2 (en) * 2018-06-15 2022-06-28 Uatc, Llc Multi-task machine-learned models for object intention determination in autonomous driving
EP3842304A3 (de) * 2018-08-14 2021-09-15 Mobileye Vision Technologies Ltd. Systeme und verfahren zur navigation mit sicheren abständen
US11181921B2 (en) 2018-09-14 2021-11-23 Huawei Technologies Co., Ltd. System and method for hierarchical planning in autonomous vehicles
US11001256B2 (en) 2018-09-19 2021-05-11 Zoox, Inc. Collision prediction and avoidance for vehicles
US11631151B2 (en) * 2018-09-30 2023-04-18 Strong Force Tp Portfolio 2022, Llc Intelligent transportation systems
US11195418B1 (en) * 2018-10-04 2021-12-07 Zoox, Inc. Trajectory prediction on top-down scenes and associated model
KR20200040559A (ko) * 2018-10-10 2020-04-20 현대자동차주식회사 동시 차로 변경 차량 예측 장치 및 그의 예측 방법과 그를 이용하는 차량
KR20210061461A (ko) * 2018-10-16 2021-05-27 파이브 에이아이 리미티드 자율 차량 계획
DE102018008624A1 (de) * 2018-10-31 2020-04-30 Trw Automotive Gmbh Steuerungssystem und Steuerungsverfahren zum samplingbasierten Planen möglicher Trajektorien für Kraftfahrzeuge
US11110922B2 (en) * 2018-11-05 2021-09-07 Zoox, Inc. Vehicle trajectory modification for following
TWI674984B (zh) * 2018-11-15 2019-10-21 財團法人車輛研究測試中心 自動駕駛車輛之行駛軌跡規劃系統及方法
KR102138979B1 (ko) * 2018-11-29 2020-07-29 한국과학기술원 차선 기반의 확률론적 주변 차량 거동 예측 및 이를 이용한 종방향 제어 방법
US10906549B2 (en) * 2018-12-07 2021-02-02 Nio Usa, Inc. Systems and methods of autonomously controlling vehicle lane change maneuver
DE102018009927A1 (de) * 2018-12-17 2020-06-18 Trw Automotive Gmbh Steuerungssystem und Steuerungsverfahren für einen hybriden Ansatz zum Ermitteln einer möglichen Trajektorie für ein Kraftfahrzeug
US10962380B2 (en) 2018-12-20 2021-03-30 Gm Cruise Holdings Llc Analysis of network effects of avoidance areas on routing
KR20200092444A (ko) 2018-12-31 2020-08-04 현대자동차주식회사 자율 발렛 주차를 지원하는 시스템 및 방법, 그리고 이를 위한 인프라 및 차량
EP3683782B1 (de) * 2019-01-18 2023-06-28 Honda Research Institute Europe GmbH Verfahren zum assistieren eines fahrers, fahrerassistenzsystem und fahrzeug mit solch einem fahrerassistenzsystem
US20200238952A1 (en) * 2019-01-28 2020-07-30 Jeffrey Dean Lindsay Facial recognition systems for enhanced security in vehicles and other devices
CN109583151B (zh) * 2019-02-20 2023-07-21 阿波罗智能技术(北京)有限公司 车辆的行驶轨迹预测方法及装置
US11221229B1 (en) 2019-03-20 2022-01-11 Gm Cruise Holdings Llc Autonomous vehicle routing based on predicted location of a disruptive third-party vehicle
US11305765B2 (en) 2019-04-23 2022-04-19 Baidu Usa Llc Method for predicting movement of moving objects relative to an autonomous driving vehicle
JP7194640B2 (ja) 2019-05-16 2022-12-22 本田技研工業株式会社 車両制御装置、車両制御方法、およびプログラム
KR20200136104A (ko) 2019-05-27 2020-12-07 현대자동차주식회사 차량 및 그 제어방법
US11531346B2 (en) * 2019-07-05 2022-12-20 Uatc, Llc Goal-directed occupancy prediction for autonomous driving
US11023749B2 (en) 2019-07-05 2021-06-01 Zoox, Inc. Prediction on top-down scenes based on action data
DE102019118366A1 (de) 2019-07-08 2021-01-14 Zf Friedrichshafen Ag Verfahren sowie Steuergerät für ein System zum Steuern eines Kraftfahrzeugs
JP7339796B2 (ja) 2019-07-16 2023-09-06 フォルシアクラリオン・エレクトロニクス株式会社 車載処理装置
US11161502B2 (en) * 2019-08-13 2021-11-02 Zoox, Inc. Cost-based path determination
US11548512B2 (en) * 2019-08-23 2023-01-10 Zoox, Inc. Yield behavior modeling and prediction
CN110789528B (zh) * 2019-08-29 2022-03-25 腾讯科技(深圳)有限公司 一种车辆行驶轨迹预测方法、装置、设备及存储介质
US11565715B2 (en) * 2019-09-13 2023-01-31 Waymo Llc Neural networks with attention al bottlenecks for trajectory planning
CN110674723B (zh) * 2019-09-19 2022-07-15 北京三快在线科技有限公司 一种确定无人驾驶车辆行驶轨迹的方法及装置
US11500385B2 (en) 2019-09-30 2022-11-15 Zoox, Inc. Collision avoidance perception system
US11754408B2 (en) 2019-10-09 2023-09-12 Argo AI, LLC Methods and systems for topological planning in autonomous driving
KR20210044963A (ko) 2019-10-15 2021-04-26 현대자동차주식회사 자율주행차량의 차선변경 경로 결정 장치 및 그 방법
US11420630B2 (en) 2019-10-24 2022-08-23 Zoox, Inc. Trajectory modifications based on a collision zone
RU2745804C1 (ru) 2019-11-06 2021-04-01 Общество с ограниченной ответственностью "Яндекс Беспилотные Технологии" Способ и процессор для управления перемещением в полосе движения автономного транспортного средства
US20210149404A1 (en) * 2019-11-16 2021-05-20 Uatc, Llc Systems and Methods for Jointly Performing Perception, Perception, and Motion Planning for an Autonomous System
CN111079590B (zh) * 2019-12-04 2023-05-26 东北大学 一种无人驾驶车辆的周边车辆行为预判方法
US20210173402A1 (en) * 2019-12-06 2021-06-10 Lyft, Inc. Systems and methods for determining vehicle trajectories directly from data indicative of human-driving behavior
US11891087B2 (en) * 2019-12-20 2024-02-06 Uatc, Llc Systems and methods for generating behavioral predictions in reaction to autonomous vehicle movement
CN114829225A (zh) * 2019-12-27 2022-07-29 伟摩有限责任公司 自主载具的条件行为预测
US11884294B2 (en) 2019-12-30 2024-01-30 Nvidia Corporation Lane change planning and control in autonomous machine applications
GB2592066A (en) 2020-02-17 2021-08-18 Ford Global Tech Llc Delivery optimisation
EP3885226A1 (de) 2020-03-25 2021-09-29 Aptiv Technologies Limited Verfahren und system zur planung der bewegung eines fahrzeugs
US11500372B2 (en) 2020-05-18 2022-11-15 Gm Cruise Holdings Llc Joint optimization of robotic vehicle routing for ride quality, safety, and operator demand
US11745760B2 (en) 2020-05-19 2023-09-05 Baidu Usa Llc Parallel obstacle buffer system for path planning
US11338825B2 (en) * 2020-06-01 2022-05-24 Zoox, Inc. Agent behavior model for simulation control
US11878682B2 (en) 2020-06-08 2024-01-23 Nvidia Corporation Path planning and control to account for position uncertainty for autonomous machine applications
US20220048535A1 (en) * 2020-08-12 2022-02-17 Woven Planet North America, Inc. Generating Goal States for Prioritizing Path Planning
US11814075B2 (en) * 2020-08-26 2023-11-14 Motional Ad Llc Conditional motion predictions
US11927967B2 (en) * 2020-08-31 2024-03-12 Woven By Toyota, U.S., Inc. Using machine learning models for generating human-like trajectories
US11873011B2 (en) * 2020-10-29 2024-01-16 Waymo Llc Labeling lane segments for behavior prediction for agents in an environment
US11829939B2 (en) 2020-11-03 2023-11-28 Kpn Innovations, Llc. System and methods for transfer path optimization
US11753044B2 (en) 2020-11-18 2023-09-12 Argo AI, LLC Method and system for forecasting reactions of other road users in autonomous driving
US11317247B1 (en) * 2020-12-22 2022-04-26 Here Global B.V. Method, apparatus, and system for data-driven evaluation of heuristics for trajectory cropping
CN112763995B (zh) * 2020-12-24 2023-09-01 阿波罗智联(北京)科技有限公司 雷达标定方法、装置、电子设备和路侧设备
US11834077B2 (en) * 2021-09-14 2023-12-05 Barry Gilhuly Systems, methods, and media for occlusion-aware motion planning
CN115195706A (zh) * 2022-07-14 2022-10-18 清华大学 一种泊车路径规划方法、装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018204185A1 (de) 2018-03-19 2019-09-19 Bayerische Motoren Werke Aktiengesellschaft Fahrerassistenz mit einer variabel veränderbaren Kooperationsgröße
DE102019215657A1 (de) 2018-11-14 2020-05-14 Jaguar Land Rover Limited Fahrzeugsteuerungsstystem und -verfahren
DE102018132520A1 (de) 2018-12-17 2020-06-18 Trw Automotive Gmbh Verfahren sowie System zum Steuern eines Kraftfahrzeugs

Also Published As

Publication number Publication date
US11731653B2 (en) 2023-08-22
KR20230110460A (ko) 2023-07-24
GB2615192B (en) 2024-01-31
GB2598410A (en) 2022-03-02
KR102555318B1 (ko) 2023-07-13
GB202219011D0 (en) 2023-02-01
GB2615192A (en) 2023-08-02
KR20220027702A (ko) 2022-03-08
GB202015762D0 (en) 2020-11-18
US20220063667A1 (en) 2022-03-03
CN114120687A (zh) 2022-03-01
US20220063663A1 (en) 2022-03-03
US11814075B2 (en) 2023-11-14
GB2598410B (en) 2023-02-08

Similar Documents

Publication Publication Date Title
DE102020111938A1 (de) Systeme und verfahren zum planen und aktualisieren einer fahrzeugtrajektorie
DE102020111682A1 (de) Systeme und verfahren zum implementieren einer autonomen fahrzeugreaktion auf ein sensorversagen
DE102020129456A1 (de) Trajektorienvorhersage aus einer vorberechneten oder dynamisch generierten bank von trajektorien
DE112020000487T5 (de) Automatisches wählen von datenproben zur annotation
DE102021101758A1 (de) Ampeldetektionssystem für ein fahrzeug
DE112019004832T5 (de) Betrieb eines Fahrzeugs unter Verwendung von Bewegungsplanung mit maschinellem Lernen
DE112019006282T5 (de) Betrieb eines Fahrzeugs unter Verwendung mehrerer Bewegungsbeschränkungen
DE102020128155A1 (de) Bedingte bewegungsvorhersagen
DE102020210499A1 (de) Datengesteuerte regelwerke
DE102020126217A1 (de) Navigieren von Mehrwege-Stopp-Kreuzungen mit einem autonomen Fahrzeug
DE102020111250A1 (de) Grafische benutzerschnittstelle zur anzeige des verhaltens autonomer fahrzeuge
DE112020002695T5 (de) Autonomer fahrzeugbetrieb mittels linearer temporaler logik
DE102021133742A1 (de) Planung einer trajektorie eines autonomen fahrzeugs mit dynamischem zustand
DE102021132850A1 (de) Homotopiebasierter planer für autonome fahrzeuge
DE102021127118A1 (de) Identifizieren von Objekten mit LiDAR
DE102021132722A1 (de) Auswählen von testszenarien zum bewerten der leistung autonomer fahrzeuge
DE102020114306A1 (de) Schätzen von geschwindigkeitsprofilen
DE102021211781A1 (de) Fahrzeugbetrieb unter verwendung von verhaltensregelprüfungen
DE102020128154A1 (de) Trajektorieplanung für fahrzeuge unter verwendung von routeninformationen
DE102021132221A1 (de) Entscheidungsfindung und vorhersage mit steuerung auf basis von strassenoberflächenbedingungen
DE102021133739A1 (de) Steuern eines autonomen fahrzeugs unter verwendung einer näheregel
DE102021131844A1 (de) Systeme und verfahren zum implementieren von verdeckungspräsentationen über strassenmerkmale
DE102020128433A1 (de) Simulation eines autonomen Fahrzeugs zur Verbesserung der Sicherheit und Zuverlässigkeit eines autonomen Fahrzeugs
DE102021133340A1 (de) Modalitätsübergreifendes aktives lernen zur objekterkennung
DE102021132851A1 (de) Fahrzeugbetrieb unter verwendung von manövererzeugung

Legal Events

Date Code Title Description
R163 Identified publications notified