DE102021132194A1 - Fahrzeugpfadplanung - Google Patents

Fahrzeugpfadplanung Download PDF

Info

Publication number
DE102021132194A1
DE102021132194A1 DE102021132194.8A DE102021132194A DE102021132194A1 DE 102021132194 A1 DE102021132194 A1 DE 102021132194A1 DE 102021132194 A DE102021132194 A DE 102021132194A DE 102021132194 A1 DE102021132194 A1 DE 102021132194A1
Authority
DE
Germany
Prior art keywords
path
vehicle
processor
instructions
identifying
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
DE102021132194.8A
Other languages
English (en)
Inventor
Juraj Kabzan
Boaz Cornelis Floor
Sirish Srinivasan
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 DE102021132194A1 publication Critical patent/DE102021132194A1/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
    • 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
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3407Route searching; Route guidance specially adapted for specific applications
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3407Route searching; Route guidance specially adapted for specific applications
    • G01C21/343Calculating itineraries, i.e. routes leading from a starting point to a series of categorical destinations using a global route restraint, round trips, touristic trips
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • 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
    • 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/09Taking automatic action to avoid collision, e.g. braking and steering
    • 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
    • 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
    • B60W50/08Interaction between the driver and the control system
    • B60W50/14Means for informing the driver, warning the driver or prompting a driver intervention
    • 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
    • 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
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • 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
    • B60W2050/0004In digital systems, e.g. discrete-time systems involving sampling
    • B60W2050/0005Processor details or data handling, e.g. memory registers or chip 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
    • 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
    • B60W50/08Interaction between the driver and the control system
    • B60W50/14Means for informing the driver, warning the driver or prompting a driver intervention
    • B60W2050/146Display means
    • 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
    • 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
    • B60W2552/00Input parameters relating to infrastructure
    • B60W2552/50Barriers
    • 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
    • B60W2554/00Input parameters relating to objects
    • B60W2554/40Dynamic objects, e.g. animals, windblown objects
    • B60W2554/404Characteristics
    • 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
    • B60W2555/00Input parameters relating to exterior conditions, not covered by groups B60W2552/00, B60W2554/00
    • B60W2555/60Traffic rules, e.g. speed limits or right of way
    • 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
    • B60W2720/00Output or target parameters relating to overall vehicle dynamics
    • B60W2720/10Longitudinal speed
    • 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
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/16Anti-collision systems
    • G08G1/166Anti-collision systems for active traffic, e.g. moving vehicles, pedestrians, bikes

Abstract

Unter anderem sind Techniken beschrieben zum Identifizieren, durch mindestens einen Prozessor eines Fahrzeugs, basierend auf einem Graphen, der mehrere Kanten und mehrere Knoten beinhaltet, eines Referenzpfades durch eine Umgebung, der einen Teilsatz der mehreren Kanten beinhaltet. Die Technik beinhaltet ferner Identifizieren eines ersten Pfades basierend auf einer Optimierung eines räumlichen Modells bezüglich des Graphen und des Referenzpfades und eines zweiten Pfades basierend auf einer Anwendung mindestens einer Beschränkung auf den Referenzpfad. Die Technik beinhaltet ferner Auswählen, durch den mindestens einen Prozessor, des ersten Pfades oder des zweiten Pfades als einen Pfad, entlang dessen das Fahrzeug fahren wird, basierend auf einem voridentifizierten Regelbuch. Andere Ausführungsformen können beschrieben oder beansprucht sein.

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Beschreibung betrifft Fahrzeugpfadplanung.
  • HINTERGRUND
  • Ein Fahrzeug wie etwa ein autonomes Fahrzeug wird ein Pfadplanungssystem nutzen, um einen Pfad zu identifizieren, den das Fahrzeug durch eine Umgebung navigieren kann. In Legacy-Systemen verwendet dieses Pfadplanungssystem einen Sampling-basierten Ansatz, um den Pfad zu identifizieren. Dieser Sampling-basierte Ansatz kann jedoch ineffizient sein oder in Situationen, in denen die Geschwindigkeit sehr niedrig ist oder sich Null nähert, auf Ineffizienzen stoßen. Insbesondere wird, während die Geschwindigkeit des Fahrzeugs sehr niedrig ist oder sich Null nähert, dann der Zeithorizont im Raum schrumpfen und das Pfadplanungssystem wird nicht in der Lage sein, einen vorgeschlagenen Pfad über diesen Zeithorizont hinaus zu erzeugen. Zusätzlich kann dieser Sampling-basierte Ansatz auf Schwierigkeiten stoßen, wenn die Pfade beschränkt sind (z. B. durch das Vorhandensein eines anderen Fahrzeugs).
  • Figurenliste
    • 1 zeigt ein Beispiel für ein autonomes Fahrzeug mit autonomer Fähigkeit.
    • 2 zeigt ein Computersystem.
    • 3 zeigt eine beispielhafte Architektur für ein autonomes Fahrzeug.
    • 4 zeigt ein Blockdiagramm der Beziehungen zwischen Eingaben und Ausgaben eines Planungssystems.
    • 5 zeigt einen gerichteten Graphen, der bei der Pfadplanung verwendet wird.
    • 6 zeigt ein beispielhaftes Pfadplanungssystem gemäß verschiedenen Ausführungsformen.
    • 7 zeigt ein anderes Beispiel für einen gerichteten Graphen, der bei der Pfadplanung zu verwenden ist, gemäß verschiedenen Ausführungsformen.
    • 8 zeigt eine beispielhafte Technik zur Pfadplanung gemäß verschiedenen Ausführungsformen.
  • AUSFÜHRLICHE BESCHREIBUNG
  • In der folgenden Beschreibung werden für Erläuterungszwecke zahlreiche spezifische Einzelheiten dargelegt, um ein umfassendes Verständnis der vorliegenden Offenbarung bereitzustellen. Es versteht sich jedoch, dass die vorliegende Offenbarung ohne diese spezifischen Einzelheiten umgesetzt werden kann. In anderen Fällen sind wohlbekannte Strukturen und Vorrichtungen in Blockdiagrammform gezeigt, um zu verhindern, die vorliegende Offenbarung unnötig unklar zu machen.
  • In den Zeichnungen sind spezifische Anordnungen oder Ordnungen schematischer Elemente, wie etwa jenen, die Vorrichtungen, Systeme, Anweisungsblöcke und Datenelemente repräsentieren, zur Vereinfachung der Beschreibung gezeigt. Fachleute auf dem Gebiet sollten jedoch verstehen, dass die spezifische Ordnung oder Anordnung der schematischen Elemente in den Zeichnungen nicht andeuten soll, dass eine spezielle Verarbeitungsreihenfolge oder -abfolge oder Trennung von Prozessen erforderlich ist. Ferner soll der Einschluss eines schematischen Elements in einer Zeichnung nicht andeuten, dass ein solches Element in allen Ausführungsformen erforderlich ist oder dass die durch ein solches Element repräsentierten Merkmale möglicherweise bei manchen Ausführungsformen nicht in anderen Elementen enthalten sind oder mit diesen kombiniert werden.
  • Ferner soll in den Zeichnungen, in denen Verbindungselemente wie etwa durchgezogene oder gestrichelte Linien oder Pfeile verwendet werden, um eine Verbindung, Beziehung oder Zuordnung zwischen oder unter zwei oder mehr anderen schematischen Elementen zu veranschaulichen, das Nichtvorhandensein jeglicher solcher Verbindungselemente nicht andeuten, dass keine Verbindung, Beziehung oder Zuordnung bestehen kann. Mit anderen Worten sind manche Verbindungen, Beziehungen oder Zuordnungen zwischen Elementen in den Zeichnungen nicht gezeigt, um die Offenbarung nicht unklar zu machen. Zusätzlich wird zur Vereinfachung der Veranschaulichung ein einzelnes Verbindungselement verwendet, um mehrere Verbindungen, Beziehungen oder Zuordnungen zwischen Elementen zu repräsentieren. Wenn ein Verbindungselement eine Kommunikation von Signalen, Daten oder Anweisungen repräsentiert, sollten Fachleute auf dem Gebiet beispielsweise verstehen, dass ein solches Element einen oder mehrere Signalpfade (z. B. einen Bus) repräsentiert, wie erforderlich, um die Kommunikation zu bewirken.
  • Nun wird ausführlicher Bezug auf Ausführungsformen genommen, von denen Beispiele in den begleitenden Zeichnungen veranschaulicht sind. In der folgenden ausführlichen Beschreibung werden zahlreiche spezifische Einzelheiten dargelegt, um ein umfassendes Verständnis der verschiedenen beschriebenen Ausführungsformen bereitzustellen. Ein Durchschnittsfachmann auf dem Gebiet wird jedoch verstehen, dass die verschiedenen beschriebenen Ausführungsformen ohne diese spezifischen Einzelheiten umgesetzt werden können. In anderen Fällen sind wohlbekannte Verfahren, Prozeduren, Komponenten, Schaltungen und Netzwerke nicht ausführlich beschrieben, damit Aspekte der Ausführungsformen nicht unnötig unklar gemacht werden.
  • Nachfolgend sind mehrere Merkmale beschrieben, die jeweils unabhängig voneinander oder mit einer beliebigen Kombination anderer Merkmale verwendet werden können. Ein jegliches individuelles Merkmal spricht jedoch möglicherweise keine der oben besprochenen Probleme an oder könnte nur eines der oben besprochenen Probleme ansprechen. Einige der oben besprochenen Probleme können 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 jedoch nicht in dem Abschnitt mit dieser Überschrift gefunden werden, auch anderweitig in dieser Beschreibung gefunden 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. Planung eines autonomen Fahrzeugs
    5. 5. Pfadplanung
  • Allgemeiner Überblick
  • Ein Fahrzeug (z. B. ein autonomes Fahrzeug) verwendet ein Pfadnavigationssystem zum Navigieren durch eine Umgebung. Insbesondere identifiziert ein Pfadplanungssystem einen Referenzpfad durch die Umgebung. Ein Beschränkungsberechnungssystem wendet dann mindestens eine Beschränkung auf dem Referenzpfad an, um einen potenziellen Pfad durch die Umgebung zu identifizieren. Zusätzlich identifiziert ein räumliches MPC-System (MPC: Model Predictive Control - modellprädiktive Regelung) einen anderen potenziellen Pfad basierend auf einer räumlichen Optimierung des Referenzpfades. Die beiden potenziellen Pfade werden dann verglichen, um zu identifizieren, welcher Pfad durch das Fahrzeug zur Navigation verwendet werden sollte. In einer Ausführungsform wird das Ergebnis von der räumlichen MPC ferner in ein Pfadplanungssystem zur Verwendung bei der Identifizierung eines anschließenden Referenzpfades zurückgekoppelt.
  • Einige der Vorteile dieser Techniken beinhalten eine erhöhte Fähigkeit für das Fahrzeug, durch räumlich beschränkte Umgebungen zu navigieren. Zusätzlich kann durch das Ermöglichen einer Identifizierung und eines Vergleichs von zwei potenziellen Pfaden ein optimaler Pfad durch die Umgebung schneller identifiziert werden, wodurch Rechenressourcen eingespart werden, die ansonsten zum Identifizieren des optimalen Pfades durch die Umgebung verwendet werden würden. Schließlich, da sowohl ein geschwindigkeitsbasierter als auch ein räumlich beschränkter Ansatz verwendet werden, ist das Navigationssystem in der Lage, effizient durch die Umgebung zu navigieren, selbst wenn die Geschwindigkeit des Fahrzeugs gering wird oder sich 0 nähert.
  • 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 ein Hilfsmittel, die/das einem Fahrzeug ermöglicht, teilweise oder vollständig ohne menschliche Echtzeit-Eingriffe betrieben zu werden, einschließlich ohne Beschränkung vollautonome Fahrzeuge, hochautonome Fahrzeuge und bedingt autonome Fahrzeuge.
  • Wie hierin verwendet, ist ein autonomes Fahrzeug (AV: Autonomous Vehicle) 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, Lastwagen, Boote, Schiffe, Unterwasserfahrzeuge, Luftschiffe usw. Ein fahrerloses Auto ist ein Beispiel für ein Fahrzeug.
  • Wie hierin verwendet, bezieht sich „Trajektorie“ auf einen Pfad oder eine Route zum Navigieren eines AV von einem ersten raumzeitlichen Ort 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, Endort, Ziel, Zielposition oder Zielort bezeichnet. In manchen Beispielen besteht eine Trajektorie aus einem oder mehreren Segmenten (z. B. Straßenabschnitten), und jedes Segment besteht aus einem oder mehreren Blöcken (z. B. Teilen einer Fahrspur oder Kreuzung). In einer Ausführungsform entsprechen die raumzeitlichen Orte realen Orten. Beispielsweise sind die raumzeitlichen Orte Abhol- oder Absetzorte zum Abholen oder Absetzen 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. Einige der Hardwarekomponenten können Erfassungskomponenten (z. B. Bildsensoren, biometrische Sensoren), Sende- und/oder Empfangskomponenten (z. B. Laser- oder Hochfrequenzwellensender und -empfänger), elektronische Komponenten wie etwa Analog-Digital-Umsetzer, eine Datenspeicherungsvorrichtung (wie etwa Direktzugriffsspeicher (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 detektiert oder durch eine Quelle extern zu dem AV bereitgestellt werden.
  • Wie hierin verwendet, ist eine „Straße“ ein physisches Gebiet, auf dem sich ein Fahrzeug fortbewegen kann, und kann einer benannten Durchgangsstraße (z. B. Stadtstraße, Autobahn usw.) entsprechen oder kann einer unbenannten Durchgangsstraße (z. B. eine Zufahrt eines Hauses oder Bürogebäudes, ein Abschnitt eines Parkplatzes, ein Abschnitt eines unbebauten Grundstücks, ein Feldweg in einem ländlichen Gebiet usw.) entsprechen. Da manche Fahrzeuge (z. B. Allradantrieb-Pickups, Geländewagen usw.) in der Lage sind, sich in einer Vielfalt physischer Gebiete fortzubewegen, die nicht spezifisch für die Fahrt eines Fahrzeugs angepasst sind, kann eine „Straße“ ein physisches Gebiet sein, das nicht formell durch eine Gemeinde oder andere Regierungsstelle oder Verwaltungsbehörde als eine Durchgangsstraße definiert ist.
  • Wie hierin verwendet, ist eine „Fahrspur“ ein Teil einer Straße, auf dem sich ein Fahrzeug fortbewegen kann. Eine Fahrspur wird manchmal basierend auf Fahrspurmarkierungen identifiziert. Beispielsweise kann eine Fahrspur dem Großteil oder der Gesamtheit des Raums zwischen Fahrspurmarkierungen entsprechen oder kann nur einem Teil (z. B. weniger als 50 %) des Raums zwischen Fahrspurmarkierungen entsprechen. Beispielsweise könnte eine Landstraße, die weit beabstandete Fahrspurmarkierungen aufweist, zwei oder mehr Fahrzeuge zwischen den Markierungen unterbringen, sodass ein Fahrzeug das andere überholen kann, ohne die Fahrspurmarkierungen zu überqueren, und könnte somit als eine Fahrspur schmaler als der Raum zwischen den Fahrspurmarkierungen aufweisend oder zwei Fahrspuren zwischen den Fahrspurmarkierungen aufweisend interpretiert werden. Eine Fahrspur könnte auch bei Nichtvorhandensein von Fahrspurmarkierungen interpretiert werden. Beispielsweise kann eine Fahrspur basierend auf physischen Merkmalen einer Umgebung definiert werden, z. B. Gestein und Bäume entlang einer Durchgangsstraße in einem ländlichen Gebiet oder z. B. natürliche zu vermeidende Hindernisse in einem unbebauten Gebiet. Eine Fahrspur könnte auch unabhängig von Fahrspurmarkierungen oder physischen Merkmalen interpretiert werden. Beispielsweise könnte eine Fahrspur basierend auf einem beliebigen Pfad interpretiert werden, der frei von Hindernissen ist in einem Gebiet, dem ansonsten Merkmale fehlen, die als Fahrspurgrenzen interpretiert werden würden. In einem beispielhaften Szenario könnte ein AV eine Fahrspur durch einen hindernisfreien Teil eines Feldes oder eine leere Parzelle interpretieren. In einem anderen beispielhaften Szenario könnte ein AV eine Fahrspur durch eine breite (z. B. breit genug für zwei oder mehr Fahrspuren) Landstraße interpretieren, die keine Fahrspuren aufweist. In diesem Szenario könnte das AV Informationen über die Fahrspur zu anderen AVs kommunizieren, sodass die anderen AVs dieselben Fahrspurinformationen verwenden können, um Pfadplanung untereinander zu koordinieren.
  • Der Begriff „Over-the-Air(OTA)-Client“ beinhaltet ein jegliches AV oder eine jegliche elektronische Vorrichtung (z. B. Computer, Steuerung, IoT-Vorrichtung, elektronische Steuereinheit (ECU)), die in einem AV eingebettet ist, mit diesem gekoppelt ist oder in Kommunikation mit diesem steht.
  • Der Begriff „OTA-Aktualisierung“ bedeutet eine jegliche Aktualisierung, Änderung, Löschung oder Hinzufügung an/bei/zu Software, Firmware, Daten oder Konfigurationseinstellungen oder eine beliebige Kombination davon, die zu 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-Drahtlosbereichsnetzen (z. B. WiFi) und/oder Satelliten-Internet.
  • Der Begriff „Edge-Knoten“ bedeutet eine oder mehrere Edge-Vorrichtungen (Edge - Rand), die mit einem Netzwerk gekoppelt sind und ein Portal zur Kommunikation mit AVs bereitstellen und mit anderen Edge-Knoten und einer Cloud-basierten Rechenplattform zur Planung und Lieferung von OTA-Aktualisierungen an OTA-Clients kommunizieren können.
  • Der Begriff „Edge-Vorrichtung“ bedeutet eine Vorrichtung, die einen Edge-Knoten implementiert und einen physischen Drahtloszugangspunkt (Drahtlos-AP) in Unternehmens- oder Dienstanbieter(z. B. VERIZON, AT&T)-Kernnetzwerke 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: Metropolitan Area Network) und Weitbereichsnetzwerke (WAN: Wide Area Network).
  • „Ein oder mehr“ beinhaltet, dass eine Funktion durch ein Element durchgeführt wird, dass eine Funktion durch mehr als ein Element durchgeführt wird, z. B. auf verteilte Weise, dass mehrere Funktionen durch ein Element durchgeführt werden, dass mehrere Funktionen durch mehrere Elemente durchgeführt werden, oder eine beliebige Kombination des Obenstehenden.
  • Es versteht sich auch, dass, obwohl die Begriffe erster, zweiter usw. in manchen Fällen hierin verwendet werden, um verschiedene Elemente zu beschreiben, diese Elemente nicht durch diese Begriffe beschränkt werden sollten. Diese Begriffe werden nur zur Unterscheidung eines Elements von einem anderen verwendet. 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. Sowohl der erste Kontakt als auch der zweite Kontakt sind Kontakte, sie sind aber nicht derselbe Kontakt.
  • Die in der Beschreibung der verschiedenen beschriebenen Ausführungsformen hierin verwendete Terminologie liegt nur zum Zweck der Beschreibung spezieller Ausführungsformen vor und soll nicht beschränkend sein. Wie in der Beschreibung der verschiedenen beschriebenen Ausführungsformen und den angehängten Ansprüchen verwendet, sollen die Singularformen „ein“, „eine“ und „der/die/das“ auch die Pluralformen beinhalten, insofern der Kontext nicht deutlich anderes angibt. Es versteht sich auch, dass sich der Begriff „und/oder“, wie hierin verwendet, auf jegliche und alle möglichen Kombinationen eines oder mehrerer der assoziierten aufgelisteten Punkte bezieht und 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, Ganzzahlen, Schritte, Operationen, Elemente und/oder Komponenten spezifiziert, aber nicht das Vorhandensein oder den Zusatz eines/einer oder mehrerer anderer Merkmale, Ganzzahlen, Schritte, Operationen, Elemente, Komponenten und/oder Gruppen davon ausschließt.
  • Wie hierin verwendet, wird der Begriff „falls“ optional als „wenn“ oder „bei“ oder „als Reaktion auf das Bestimmen“ oder „als Reaktion auf das Detektieren“ bedeutend, in Abhängigkeit vom Kontext, ausgelegt. Gleichermaßen wird der Ausdruck „falls bestimmt wird“ oder „falls [eine angegebene Bedingung oder ein angegebenes Ereignis] detektiert wird“ optional als „beim Bestimmen“ oder „als Reaktion auf das Bestimmen“ oder „beim Detektieren [der angegebenen Bedingung oder des angegebenen Ereignisses]“ oder „als Reaktion auf das Detektieren [der angegebenen Bedingung oder des angegebenen Ereignisses]“ bedeutend, in Abhängigkeit vom Kontext, ausgelegt.
  • 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 innerhalb des AV integriert. In einer Ausführungsform ist das AV-System über mehrere Orte verteilt. Beispielsweise wird ein Teil der Software des AV-Systems in einer Cloud-Rechenumgebung ähnlich einer Cloud-Rechenumgebung implementiert.
  • Allgemein beschreibt dieses Dokument Technologien, die bei beliebigen Fahrzeugen anwendbar sind, die eine oder mehrere autonome Fähigkeiten aufweisen, einschließlich vollautonomer Fahrzeuge, hochautonomer Fahrzeuge und bedingt autonomer Fahrzeuge, wie etwa sogenannte Stufe-5-, Stufe-4- bzw. Stufe-3-Fahrzeuge (siehe den Standard J3016 von der SAE International: Taxonomy and Definitions for Terms Related to On-Road Motor Vehicle Automated Driving Systems (Klassifizierung und Definitionen für Begriffe bezüglich automatisierter Fahrsysteme für Straßenkraftfahrzeuge), der unter Bezugnahme in seiner Gesamtheit aufgenommen wird, für Einzelheiten zu der Klassifizierung von Autonomiestufen bei 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 den Standard J3016 von der SAE International: Taxonomy and Definitions for Terms Related to On-Road Motor Vehicle Automated Driving Systems). In einer Ausführungsform können ein oder mehrere der Stufe-1-, Stufe-2-, Stufe-3-, Stufe-4- und Stufe-5-Fahrzeugsysteme gewisse Fahrzeugoperationen (z. B. Lenkung, Bremsung und Verwendung von Karten) unter gewissen Betriebsbedingungen basierend auf der Verarbeitung von Sensoreingaben automatisieren. Die in diesem Dokument beschriebenen Technologien können für Fahrzeuge in allen Stufen von Vorteil sein, von vollautonomen Fahrzeugen bis hin zu menschlich betriebenen Fahrzeugen.
  • Autonome Fahrzeuge können Vorteile gegenüber Fahrzeugen aufweisen, die einen menschlichen Fahrer erfordern. Ein Vorteil liegt in der Sicherheit. Beispielsweise traten im Jahr 2016 in den Vereinigten Staaten 6 Millionen Kraftfahrzeugunfälle, 2,4 Millionen Verletzungen, 40.000 Todesopfer und 13 Millionen Fahrzeugzusammenstöße auf, mit geschätzten gesellschaftlichen Kosten von mehr als $910 Milliarden. Verkehrstodesopfer in den USA pro 100 Millionen gefahrener Meilen wurden zwischen 1965 und 2015 von etwa sechs auf etwa eins reduziert, teilweise aufgrund zusätzlicher in Fahrzeugen eingesetzter Sicherheitsmaßnahmen. Beispielsweise wird angenommen, dass eine zusätzliche halbe Sekunde Warnung vor einem unmittelbar bevorstehenden Zusammenstoß 60 % von Auffahrunfällen mitigieren. Passive Sicherheitsmerkmale (z. B. Sicherheitsgurte, Airbags) haben jedoch wahrscheinlich ihre Grenze für die Verbesserung dieser Anzahl erreicht. Somit sind aktive Sicherheitsmaßnahmen, wie etwa die automatisierte Steuerung eines Fahrzeugs, der wahrscheinlichste nächste Schritt für die Verbesserung dieser Statistiken. Da angenommen wird, dass menschliche Fahrer für ein kritisches Ereignis vor dem Zusammenstoß in 95 % der Zusammenstöße verantwortlich sind, werden automatisierte Fahrsysteme wahrscheinlich bessere Sicherheitsergebnisse 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ässiges Steuern eines Fahrzeugs besser als ein Mensch.
  • Mit Bezug auf 1 betreibt ein AV-System 120 das Fahrzeug 100 entlang einer Trajektorie 198 durch eine Umgebung 190 zu einem Bestimmungsort 199 (manchmal als ein Endort bezeichnet), während es Objekte (z. B. natürliche Objekte 191, Fahrzeuge 193, Fußgänger 192, Fahrradfahrer und andere Hindernisse) vermeidet und Straßenregeln (z. B. Betriebsregeln oder Fahrpräferenzen) einhält.
  • In einer Ausführungsform beinhaltet das AV-System 120 Vorrichtungen 101, die dahingehend instrumentiert sind, Betriebsbefehle von den Computerprozessoren 146 zu empfangen und darauf zu reagieren. Der Begriff „Betriebsbefehl“ wird verwendet, um eine ausführbare Anweisung (oder Satz von Anweisungen) zu bedeuten, die bewirken, dass ein Fahrzeug eine Handlung (z. B. ein Fahrmanöver) durchführt. Betriebsbefehle können unter anderem Anweisungen beinhalten, damit ein Fahrzeug beginnt, vorwärts zu fahren, aufhört, vorwärts zu fahren, beginnt, rückwärts zu fahren, aufhört, rückwärts zu fahren, beschleunigt, abbremst, nach links abbiegt und nach rechts abbiegt. In einer Ausführungsform sind die Rechenprozessoren 146 dem unten mit Bezug auf 2 beschriebenen Prozessor 204 ähnlich. Beispiele für die Vorrichtungen 101 beinhalten Lenksteuerung 102, Bremsen 103, Gänge, Gaspedal oder andere Beschleunigungssteuermechanismen, Scheibenwischer, Türverriegelungen, Fenstersteuerungen und Blinker.
  • In einer Ausführungsform beinhaltet das AV-System 120 Sensoren 121 zum Messen oder Ableiten von Eigenschaften des Status oder Zustands des Fahrzeugs 100, wie etwa die Position, die Linear- und Winkelgeschwindigkeit und -beschleunigung und den Steuerkurs (z. B. eine Orientierung des vorderen Endes des Fahrzeugs 100) des AV. Beispiele für die Sensoren 121 sind globaler Positionierungssatellit (GPS), inertiale Messeinheiten (IMU), die sowohl lineare Beschleunigungen als auch Winkelraten des Fahrzeugs messen, Radgeschwindigkeitssensoren zum Messen oder Schätzen von Radschlupfverhältnissen, Radbremsdruck- oder Bremsmomentsensoren, Motormoment- oder Radmomentsensoren 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 Lichtspektrum, im Infrarotspektrum oder im thermischen Spektrum (oder beides), LiDAR 123, RADAR, Ultraschallsensoren, TOF-Tiefensensoren (TOF: time-of-flight - Laufzeit), Geschwindigkeitssensoren, Temperatursensoren, Feuchtigkeitssensoren und Niederschlagssensor.
  • 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 208 oder der Speicherungsvorrichtung 210, die unten in Beziehung mit 2 beschrieben sind. In einer Ausführungsform ähnelt der Speicher 144 dem unten beschriebenen Hauptspeicher 206. 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 mittels eines Kommunikationskanals von einer entfernt lokalisierten Datenbank 134 zu dem Fahrzeug 100 übertragen.
  • In einer Ausführungsform beinhaltet das AV-System 120 Kommunikationsvorrichtungen 140 zum Kommunizieren gemessener oder abgeleiteter Eigenschaften der Status und Zustände anderer Fahrzeuge, wie etwa Positionen, Linear- und Winkelgeschwindigkeiten, Linear- und Winkelbeschleunigungen und Linear- und Winkelsteuerkurse, zu dem Fahrzeug 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 beides. In einer Ausführungsform kommunizieren die Kommunikationsvorrichtungen 140 über das elektromagnetische Spektrum (einschließlich Funk- und optischer Kommunikationen) oder anderen Medien (z. B. Luft und akustische Medien). Eine Kombination aus Fahrzeug-zu-Fahrzeug(V2V)- und Fahrzeug-zu-Infrastruktur(V2I)-Kommunikation (und in manchen Ausführungsformen eine oder mehrere andere Arten von Kommunikation) wird manchmal als Fahrzeug-zu-Allem(V2X)-Kommunikation bezeichnet. Eine V2X-Kommunikation entspricht typischerweise einem oder mehreren Kommunikationsstandards zur Kommunikation mit, zwischen oder unter autonomen Fahrzeugen.
  • In einer Ausführungsform beinhalten die Kommunikationsvorrichtungen 140 Kommunikationsschnittstellen. Beispielsweise drahtgebundene, drahtlose, WiMAX-, WiFi-, Bluetooth-, Satelliten-, zellulare, optische, Nahfeld-, Infrarot- oder Funkschnittstellen. Die Kommunikationsschnittstellen übertragen Daten von einer entfernt lokalisierten Datenbank 134 zu dem AV-System 120. In einer Ausführungsform ist die entfernt lokalisierte Datenbank 134 in einer Cloud-Rechenumgebung eingebettet. Die Kommunikationsvorrichtungen 140 übertragen Daten, die von den Sensoren 121 gesammelt werden, oder andere Daten bezüglich des Betriebs des Fahrzeugs 100 zu der entfernt lokalisierten Datenbank 134. In einer Ausführungsform übertragen die Kommunikationsvorrichtungen 140 Informationen, die sich auf Teleoperationen beziehen, zu dem Fahrzeug 100. In manchen Ausführungsformen kommuniziert das Fahrzeug 100 mit anderen entfernten (z. B. „Cloud“-) Servern 136.
  • In einer Ausführungsform speichert und überträgt die entfernt lokalisierte Datenbank 134 auch digitale Daten (z. B. speichert Daten wie etwa Landstraßen- und Straßenorte). Solche Daten werden im Speicher 144 am Fahrzeug 100 gespeichert oder mittels eines Kommunikationskanals von der entfernt lokalisierten Datenbank 134 zu dem Fahrzeug 100 übertragen.
  • In einer Ausführungsform speichert und überträgt die entfernt lokalisierte Datenbank 134 historische Informationen über Fahreigenschaften (z. B. Geschwindigkeits- und Beschleunigungsprofile) von Fahrzeugen, die zuvor zu ähnlichen Tageszeiten entlang der Trajektorie 198 gefahren sind. In einer Implementierung können solche Daten im Speicher 144 am Fahrzeug 100 gespeichert oder mittels eines Kommunikationskanals von der entfernt lokalisierten Datenbank 134 zu dem Fahrzeug 100 übertragen werden.
  • Die Computerprozessoren 146, die sich am Fahrzeug 100 befinden, erzeugen algorithmisch Steuerhandlungen basierend auf sowohl Echtzeit-Sensordaten als auch vorherigen Informationen, was es dem AV-System 120 ermöglicht, seine autonomen Fahrfähigkeiten auszuführen.
  • In einer Ausführungsform beinhaltet das AV-System 120 Computerperipheriegeräte 132, die mit den Computerprozessoren 146 gekoppelt sind, zum Bereitstellen von Informationen und Warnungen an einen und Empfangen einer Eingabe von einem Benutzer (z. B. einem Insassen oder einem Fernbenutzer) des Fahrzeugs 100. In einer Ausführungsform ähneln die Peripheriegeräte 132 der Anzeige 212, der Eingabevorrichtung 214 und der Cursorsteuerung 216, die unten mit Bezug auf 2 besprochen sind. Die Kopplung ist drahtlos oder drahtgebunden. Zwei oder mehr beliebige der Schnittstellenvorrichtungen können in eine einzige Vorrichtung integriert sein.
  • In einer Ausführungsform empfängt und erzwingt das AV-System 120 eine Datenschutzstufe eines Passagiers, die z. B. durch den Passagier spezifiziert wird oder in einem mit dem Passagier assoziierten Profil gespeichert ist. Die Datenschutzstufe des Passagiers bestimmt, wie bestimmte mit dem Passagier assoziierte Informationen (z. B. Passagierkomfortdaten, biometrische Daten usw.) verwendet werden dürfen, im Passagierprofil gespeichert sind und/oder auf dem Cloud-Server 136 gespeichert und mit dem Passagierprofil assoziiert sind. In einer Ausführungsform spezifiziert die Datenschutzstufe spezielle Informationen, die mit einem Passagier assoziiert sind und nach dem Abschluss der Fahrt gelöscht werden. In einer Ausführungsform spezifiziert die Datenschutzstufe bestimmte mit einem Passagier assoziierte Informationen und identifiziert eine oder mehrere Entitäten, die für den Zugriff auf die Informationen autorisiert sind. Beispiele für spezifizierte Entitäten, die für den Zugriff auf die Informationen autorisiert sind, können andere AVs, Drittpartei-AV-Systeme oder eine beliebige Entität, die potenziell auf die Informationen zugreifen könnte, beinhalten.
  • Eine Datenschutzstufe eines Passagiers kann mit einer oder mehreren Granularitätsstufen spezifiziert werden. In einer Ausführungsform identifiziert eine Datenschutzstufe spezifische zu speichernde oder zu teilende Informationen. In einer Ausführungsform gilt die Datenschutzstufe für alle mit dem Passagier assoziierten Informationen, sodass der Passagier spezifizieren kann, dass keine seiner persönlichen Informationen gespeichert oder geteilt werden. Die Spezifikation der Entitäten, denen der Zugriff auf bestimmte Informationen gestattet ist, kann auch mit verschiedenen Granularitätsstufen spezifiziert werden. Verschiedene Sätze von Entitäten, denen der Zugriff auf bestimmte 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 können. Beispielsweise muss ein Drittpartei-AV-System, das versucht, auf eine Passagiereingabe bezüglich eines bestimmten raumzeitlichen Orts 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 die spezifizierte Datenschutzstufe des Passagiers, um zu bestimmen, ob die Passagiereingabe bezüglich des raumzeitlichen Orts dem Drittpartei-AV-System, dem AV 100 oder einem anderen AV unterbreitet werden kann. Dies ermöglicht es der Datenschutzstufe des Passagiers zu spezifizieren, welchen anderen Entitäten es gestattet ist, Daten über die Handlungen des Passagiers oder andere mit dem Passagier assoziierte Daten zu empfangen.
  • 2 zeigt ein Computersystem 200. In einer Implementierung ist das Computersystem 200 eine Spezialrechenvorrichtung. Die Spezialrechenvorrichtung ist festverdrahtet, um die Techniken durchzuführen, oder beinhaltet digitale elektronische Vorrichtungen wie etwa eine oder mehrere ASICs oder ein oder mehrere feldprogrammierbare Gate-Arrays (FPGAs), die persistent dazu programmiert sind, die Techniken durchzuführen, oder kann einen oder mehrere Allzweck-Hardwareprozessoren beinhalten, die dazu programmiert sind, die Techniken entsprechend Programmanweisungen in Firmware, Speicher, anderer Speicherung oder einer Kombination durchzuführen. Solche Spezialrechenvorrichtungen können auch maßgeschneiderte festverdrahtete Logik, ASICs oder FPGAs mit maßgeschneideter Programmierung kombinieren, um die Techniken zu vollziehen. In verschiedenen Ausführungsformen sind die Spezialrechenvorrichtungen Desktop-Computersysteme, portable Computersysteme, handgehaltene Vorrichtungen, Netzwerkvorrichtungen oder eine beliebige andere Vorrichtung, die festverdrahtete Logik und/oder Programmlogik zum Implementieren der Techniken integriert.
  • In einer Ausführungsform beinhaltet das Computersystem 200 einen Bus 202 oder einen anderen Kommunikationsmechanismus zum Kommunizieren von Informationen und einen Prozessor 204, der mit einem Bus 202 gekoppelt ist, zum Verarbeiten von Informationen. Der Prozessor 204 ist beispielsweise ein Allzweck-Mikroprozessor. Das Computersystem 200 beinhaltet auch einen Hauptspeicher 206, wie etwa einen RAM oder eine andere dynamische Speicherungsvorrichtung, die mit dem Bus 202 gekoppelt ist, zum Speichern von Informationen und durch den Prozessor 204 auszuführenden Anweisungen. In einer Implementierung wird der Hauptspeicher 206 zum Speichern temporärer Variablen oder anderer Zwischeninformationen während der Ausführung von durch den Prozessor 204 auszuführenden Anweisungen verwendet. Solche Anweisungen, wenn sie in nicht vorübergehenden Speicherungsmedien gespeichert sind, auf die der Prozessor 204 zugreifen kann, verwandeln das Computersystem 200 in eine Spezialmaschine, die dafür angepasst ist, die in den Anweisungen spezifizierten Operationen durchzuführen.
  • In einer Ausführungsform beinhaltet das Computersystem 200 ferner einen Nurlesespeicher (ROM) 208 oder eine andere statische Speicherungsvorrichtung, die mit dem Bus 202 gekoppelt ist, zum Speichern statischer Informationen und Anweisungen für den Prozessor 204. Eine Speicherungsvorrichtung 210, wie etwa eine Magnetplatte, eine optische Platte, ein Solid-State-Laufwerk oder dreidimensionaler Crosspoint-Speicher, ist bereitgestellt und mit dem Bus 202 gekoppelt, um Informationen und Anweisungen zu speichern.
  • In einer Ausführungsform ist das Computersystem 200 über den Bus 202 mit einer Anzeige 212 gekoppelt, wie etwa einer Kathodenstrahlröhre (CRT), einem Flüssigkristalldisplay (LCD), einer Plasma-Anzeige, einer Leuchtdioden(LED)-Anzeige oder einer organischen Leuchtdioden(OLED)-Anzeige zum Anzeigen von Informationen für einen Computerbenutzer. Eine Eingabevorrichtung 214, die alphanumerische und andere Tasten beinhaltet, ist mit dem Bus 202 gekoppelt, zum Kommunizieren von Informationen und Befehlsauswahlen zu dem Prozessor 204. Eine andere Art von Benutzereingabevorrichtung ist eine Cursorsteuerung 216 wie etwa eine Maus, ein Trackball, eine berührungsgestützte Anzeige oder Cursorrichtungstasten zum Kommunizieren von Richtungsinformationen und Befehlsauswahlen zu dem Prozessor 204 und zum Steuern der Cursorbewegung auf der Anzeige 212. 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), die der Vorrichtung ermöglicht, Positionen in einer Ebene zu spezifizieren.
  • Gemäß einer Ausführungsform werden die Techniken hierin durch das Computersystem 200 als Reaktion darauf durchgeführt, dass der Prozessor 204 eine oder mehrere Sequenzen einer oder mehrerer im Hauptspeicher 206 enthaltener Anweisungen ausführt. Solche Anweisungen werden in den Hauptspeicher 206 von einem anderen Speicherungsmedium wie etwa der Speicherungsvorrichtung 210 eingelesen. Die Ausführung der Sequenzen von im Hauptspeicher 206 enthaltenen Anweisungen bewirkt, dass der Prozessor 204 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 vorübergehende Medien, die Daten und/oder Anweisungen speichern, die bewirken, dass eine Maschine auf eine spezifische Weise arbeitet. Solche Speicherungsmedien beinhalten nichtflüchtige Medien und/oder flüchtige Medien. Nichtflüchtige Medien beinhalten zum Beispiel optische Platten, Magnetplatten, Solid-State-Laufwerke oder dreidimensionalen Crosspoint-Speicher, wie etwa die Speicherungsvorrichtung 210. Flüchtige Medien beinhalten dynamischen Speicher, wie etwa den Hauptspeicher 206. Übliche Formen von Speicherungsmedien beinhalten beispielsweise eine Diskette, eine flexible Disk, eine Festplatte, ein Solid-State-Laufwerk, ein Magnetband oder ein beliebiges anderes magnetische Datenspeicherungsmedium, eine CD-ROM, ein beliebiges anderes optisches Datenspeicherungsmedium, ein beliebiges physisches Medium mit Lochmustern, einen RAM, einen PROM und einen EPROM, einen FLASH-EPROM, einen NV-RAM oder einen beliebigen anderen Speicherchip oder eine beliebige andere Speicherkassette.
  • Speicherungsmedien sind von Übertragungsmedien verschieden, können aber in Verbindung mit diesen verwendet werden. Übertragungsmedien nehmen am Transfer von Informationen zwischen Speicherungsmedien teil. Beispielsweise beinhalten Übertragungsmedien Koaxialkabel, Kupferdraht und Faseroptik, einschließlich der Drähte, die den Bus 202 umfassen. Übertragungsmedien können auch die Form von Akustik- oder Lichtwellen annehmen, wie etwa jene, die während Funkwellen- und 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 204 zur Ausführung beteiligt. Beispielsweise werden die Anweisungen anfänglich auf einer Magnetplatte 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 200 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 202. Der Bus 202 führt die Daten zu dem Hauptspeicher 206, aus dem der Prozessor 204 die Anweisungen abruft und ausführt. Die durch den Hauptspeicher 206 empfangenen Anweisungen können optional in der Speicherungsvorrichtung 210 entweder bevor oder nach der Ausführung durch den Prozessor 204 gespeichert werden.
  • Das Computersystem 200 beinhaltet außerdem eine Kommunikationsschnittstelle 218, die mit dem Bus 202 gekoppelt ist. Die Kommunikationsschnittstelle 218 liefert eine Zweiwege-Datenkommunikation, die mit einem Netzwerklink 220 koppelt, der mit einem lokalen Netzwerk 222 verbunden ist. Beispielsweise ist die Kommunikationsschnittstelle 218 eine ISDN-Karte (ISDN: Integrated Services Digital Network - dienstintegrierendes Digitalnetz), ein Kabelmodem, ein Satellitenmodem oder ein Modem zum Bereitstellen einer Datenkommunikationsverbindung mit einer entsprechenden Art von Telefonleitung. Als ein anderes Beispiel ist die Kommunikationsschnittstelle 218 eine LAN-Karte (LAN: Local Area Network - Lokalnetz) zum Bereitstellen einer Datenkommunikationsverbindung mit einem kompatiblen LAN. In manchen Implementierungen werden auch drahtlose Links implementiert. In einer beliebigen solchen Implementierung sendet und empfängt die Kommunikationsschnittstelle 218 elektrische, elektromagnetische oder optische Signale, die digitale Datenströme führen, die verschiedene Arten von Informationen repräsentieren.
  • Der Netzwerklink 220 stellt typischerweise eine Datenkommunikation über ein oder mehrere Netzwerke zu anderen Datenvorrichtungen bereit. Beispielsweise stellt der Netzwerklink 220 eine Verbindung über das lokale Netzwerk 222 zu einem Hostcomputer 224 oder zu einem Cloud-Datenzentrum oder ein Gerät bereit, das durch einen Internetdienstanbieter (ISP: Internet Service Provider) 226 betrieben wird. Der ISP 226 stellt im Gegenzug Datenkommunikationsdienste durch das weltweite Paketdatenkommunikationsnetzwerk, jetzt gewöhnlich als das „Internet“ 228 bezeichnet, bereit. Sowohl das lokale Netzwerk 222 als auch das Internet 228 verwenden elektrische, elektromagnetische oder optische Signale, die digitale Datenströme führen. Die Signale durch die verschiedenen Netzwerke und die Signale auf dem Netzwerklink 220 und durch die Kommunikationsschnittstelle 218, die die digitalen Daten zu und von dem Computersystem 200 führen, sind beispielhafte Formen von Übertragungsmedien. In einer Ausführungsform enthält das Netzwerk 220 die Cloud oder einen Teil der Cloud.
  • Das Computersystem 200 sendet Nachrichten und empfängt Daten, einschließlich Programmcode, durch das eine oder die mehreren Netzwerke, den Netzwerklink 220 und die Kommunikationsschnittstelle 218. In einer Ausführungsform empfängt das Computersystem 200 Code zur Verarbeitung. Der empfangene Code wird durch den Prozessor 204 wie empfangen ausgeführt und/oder in der Speicherungsvorrichtung 210 oder einer anderen nichtflüchtigen Speicherung zur späteren Ausführung gespeichert.
  • Architektur eines autonomen Fahrzeugs
  • 3 zeigt eine beispielhafte Architektur 300 für ein autonomes Fahrzeug (z. B. das in 1 gezeigte Fahrzeug 100). Die Architektur 300 beinhaltet ein Wahrnehmungssystem 302 (manchmal als eine Wahrnehmungsschaltung bezeichnet), ein Planungssystem 304 (manchmal als eine Planungsschaltung bezeichnet), ein Steuersystem 306 (manchmal als eine Steuerschaltung bezeichnet), ein Lokalisierungssystem 308 (manchmal als eine Lokalisierungsschaltung bezeichnet) und ein Datenbanksystem 310 (manchmal als eine Datenbankschaltung bezeichnet). Jedes System spielt beim Betrieb des Fahrzeugs 100 eine Rolle. Zusammen können die Systeme 302, 304, 306, 308 und 310 Teil des in 1 gezeigten AV-Systems 120 sein. In manchen Ausführungsformen ist ein beliebiges der Systeme 302, 304, 306, 308 und 310 eine Kombination aus 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, anderen Arten von integrierten Schaltungen, anderen Arten von Computerhardware oder einer Kombination beliebiger oder aller dieser Dinge. Jedes der Systeme 302, 304, 306, 308 und 310 wird manchmal als eine Verarbeitungsschaltung (z. B. Computerhardware, Computersoftware oder eine Kombination der beiden) bezeichnet. Eine Kombination beliebiger oder aller der Systeme 302, 304, 306, 308 und 310 ist auch ein Beispiel für eine Verarbeitungsschaltung.
  • Im Gebrauch empfängt das Planungssystem 304 Daten, die einen Bestimmungsort 312 repräsentieren, und bestimmt Daten, die eine Trajektorie 314 (manchmal als eine Route bezeichnet) repräsentieren, die von dem Fahrzeug 100 gefahren werden kann, um den Bestimmungsort 312 zu erreichen (z. B. dort anzukommen). Damit das Planungssystem 304 die Daten bestimmt, die die Trajektorie 314 repräsentieren, empfängt das Planungssystem 304 Daten von dem Wahrnehmungssystem 302, dem Lokalisierungssystem 308 und dem Datenbanksystem 310.
  • Das Wahrnehmungssystem 302 identifiziert naheliegende physische Objekte unter Verwendung eines oder mehrerer Sensoren 121, z. B. wie auch in 1 gezeigt. Die Objekte werden klassifiziert (z. B. in Arten wie etwa Fußgänger, Fahrrad, Kraftfahrzeug, Verkehrszeichen usw. gruppiert) und dem Planungssystem 304 wird eine Szenenbeschreibung einschließlich der klassifizierten Objekte 316 bereitgestellt.
  • Das Planungssystem 304 empfängt auch Daten, die die AV-Position 318 repräsentieren, vom Lokalisierungssystem 308. Das Lokalisierungssystem 308 bestimmt die AV-Position unter Verwendung von Daten von den Sensoren 121 und Daten vom Datenbanksystem 310 (z. B. geografische Daten), um eine Position zu berechnen. Beispielsweise verwendet das Lokalisierungssystem 308 Daten von einem GNSS-Sensor (GNSS: Global Navigation Satellite System - globales Satellitennavigationssystem) und geografische Daten, um einen Längengrad und Breitengrad des AV zu berechnen. In einer Ausführungsform beinhalten durch das Lokalisierungssystem 308 verwendete Daten Hochpräzisionskarten der geometrischen Eigenschaften der Straße, Karten, die Konnektivitätseigenschaften des Straßennetzes beschreiben, Karten, die physische Eigenschaften der Straße beschreiben (wie etwa Verkehrsgeschwindigkeit, Verkehrsvolumen, die Anzahl von Fahrzeug- und Fahrradfahrer-Verkehrsspuren, Fahrspurbreite, Fahrspurverkehrsrichtungen oder Fahrspurmarkierungsarten und -orte oder Kombinationen von diesen), und Karten, die die räumlichen Orte von Straßenmerkmalen wie etwa Fußgängerüberwege, Verkehrszeichen oder andere Verkehrssignale verschiedener Arten beschreiben. In einer Ausführungsform werden die Hochpräzisionskarten erstellt, indem Daten durch automatische oder manuelle Annotation zu Karten mit niedriger Präzision hinzugefügt werden.
  • Das Steuersystem 306 empfängt die Daten, die die Trajektorie 314 repräsentieren, und die Daten, die die AV-Position 318 repräsentieren, und betreibt die Steuerfunktionen 320a-c (z. B. Lenkung, Gasgeben, Bremsung, Zündung) des AV auf eine Weise, die bewirken wird, dass das Fahrzeug 100 auf der Trajektorie 314 zu dem Bestimmungsort 312 fährt. Falls beispielsweise die Trajektorie 314 eine Linksabbiegung beinhaltet, wird das Steuersystem 306 die Steuerfunktionen 320a-c auf eine solche Weise betreiben, dass der Lenkwinkel der Lenkfunktion bewirken wird, dass das Fahrzeug 100 nach links abbiegt, und die Bremsung bewirken wird, dass das Fahrzeug 100 pausiert und auf passierende Fußgänger oder Fahrzeuge wartet, bevor die Abbiegung vorgenommen wird.
  • Planung eines autonomen Fahrzeugs
  • 4 zeigt ein Blockdiagramm 400 der Beziehungen zwischen Eingaben und Ausgaben eines Planungssystem 304 (z. B. wie in 3 gezeigt). Im Allgemeinen ist die Ausgabe eines Planungssystems 304 eine Route 402 von einem Startpunkt 404 (z. B. einen Ursprungsort oder Anfangsort) zu einem Endpunkt 406 (z. B. Bestimmungsort oder Endort). Die Route 402 wird typischerweise durch ein oder mehrere Segmente definiert. Beispielsweise ist ein Segment eine zu fahrende Distanz über zumindest einen Teil einer Straße, Landstraße, Autobahn, Einfahrt oder anderen physischen Bereich, der für eine Kraftfahrzeugfahrt geeignet ist. In manchen Beispielen, z. B. falls das Fahrzeug 100 ein geländegängiges Fahrzeug ist, wie etwa ein Auto mit Vierradantrieb (4WD) oder Allradantrieb (AWD), ein Geländewagen, ein Pick-Up-Truck oder dergleichen, beinhaltet die Route 402 „Gelände“-Segmente wie etwa unbefestigte Wege oder offene Felder.
  • Zusätzlich zu der Route 402 gibt ein Planungssystem auch Planungsdaten 408 auf Spurebene aus. Die Planungsdaten 408 auf Spurebene werden verwendet, um Segmente der Route 402 basierend auf Bedingungen des Segments zu einer bestimmten Zeit zu durchfahren. Falls die Route 402 beispielsweise eine mehrspurige Autobahn beinhaltet, beinhalten die Planungsdaten 408 auf Spurebene Trajektorieplanungsdaten 410, die das Fahrzeug 100 verwenden kann, um eine Spur unter den mehreren Spuren zu wählen, z. B. basierend darauf, ob sich einer Ausfahrt genähert wird, ob eine oder mehrere der Spuren andere Fahrzeuge aufweisen, oder anderen Faktoren, die über den Verlauf einiger weniger Minuten oder weniger variieren. In manchen Implementierungen beinhalten die Planungsdaten 408 auf Spurebene gleichermaßen Geschwindigkeitsbeschränkungen 412, die für ein Segment der Route 402 spezifisch sind. Falls beispielsweise das Segment Fußgänger oder unerwarteten Verkehr beinhaltet, können die Geschwindigkeitsbeschränkungen 412 das Fahrzeug 100 auf eine Fahrgeschwindigkeit langsamer als eine erwartete Geschwindigkeit beschränken, z. B. eine Geschwindigkeit basierend auf Geschwindigkeitsbegrenzungsdaten für das Segment.
  • In einer Ausführungsform beinhalten die Eingaben in das Planungssystem 304 Datenbankdaten 414 (z. B. von dem in 3 gezeigten Datenbanksystem 310), aktuelle Standortdaten 416 (z. B. die in 3 gezeigte AV-Position 318), Bestimmungsortdaten 418 (z. B. für den in 3 gezeigten Bestimmungsort 312) und Objektdaten 420 (z. B. die klassifizierten Objekte 316, wie durch das Wahrnehmungssystem 302 wahrgenommen, wie in 3 gezeigt). In manchen Ausführungsformen beinhalten die Datenbankdaten 414 bei der Planung verwendete Regeln. Regeln werden unter Verwendung einer formellen Sprache spezifiziert, z. B. unter Verwendung boolescher Logik. In einer beliebigen durch das Fahrzeug 100 angetroffenen gegebenen Situation werden zumindest manche der Regeln auf die Situation zutreffen. Eine Regel trifft auf eine gegebene Situation zu, falls die Regel Bedingungen aufweist, die basierend auf Informationen erfüllt sind, die dem Fahrzeug 100 zur Verfügung stehen, z. B. Informationen über die umliegende Umgebung. Regeln können Priorität haben. Zum Beispiel kann eine Regel, die besagt „falls die Straße eine Schnellstraße ist, zu der Spur am weitesten links bewegen“, eine geringere Priorität aufweisen als „falls die Ausfahrt innerhalb einer Meile ist, zu der Spur am weitesten rechts bewegen“.
  • 5 zeigt einen gerichteten Graphen 500, der bei der Pfadplanung verwendet wird, z. B. durch das Planungssystem 304 (3). Im Allgemeinen wird ein gerichteter Graph 500, wie der in 5 gezeigte, zum Bestimmen eines Pfades zwischen einem beliebigen Startpunkt 502 und einem Endpunkt 504 verwendet. In der realen Welt kann die den Startpunkt 502 und den Endpunkt 504 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 Fahrspuren einer mehrspurigen Straße).
  • In einer Ausführungsform weist der gerichtete Graph 500 Knoten 506a-d auf, die unterschiedliche Standorte zwischen dem Startpunkt 502 und dem Endpunkt 504 repräsentieren, die durch ein Fahrzeug 100 belegt werden könnten. In manchen Beispielen, z. B. wenn der Startpunkt 502 und der Endpunkt 504 unterschiedliche Großstadtgebiete repräsentieren, repräsentieren die Knoten 506a-d Segmente von Straßen. In manchen Beispielen, z. B. wenn der Startpunkt 502 und der Endpunkt 504 unterschiedliche Orte auf derselben Straße repräsentieren, repräsentieren die Knoten 506a-d unterschiedliche Positionen auf dieser Straße. Auf diese Weise beinhaltet der gerichteten Graph 500 Informationen bei unterschiedlichen Granularitätsstufen. In einer Ausführungsform ist ein gerichteter Graph mit hoher Granularität auch ein Teilgraph eines anderen gerichteten Graphen mit einem größeren Maßstab. Beispielsweise weist ein gerichteter Graph, in dem der Startpunkt 502 und der Endpunkt 504 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 Fahrzeugs 100 repräsentiert.
  • Die Knoten 506a-d unterscheiden sich von Objekten 508a-b, die einen Knoten nicht überlappen können. In einer Ausführungsform, wenn die Granularität niedrig ist, repräsentieren die Objekte 508ab Gebiete, die nicht durch ein Kraftfahrzeug durchfahren werden können, z. B. Bereiche, die keine Straßen oder Landstraßen aufweisen. Wenn die Granularität hoch ist, repräsentieren die Objekte 508a-b physische Objekte im Sichtfeld des Fahrzeugs 100, z. B. andere Kraftfahrzeuge, Fußgänger oder andere Entitäten, mit denen das Fahrzeug 100 keinen physischen Raum teilen kann. In einer Ausführungsform sind manche oder alle der Objekte 508a-b statische Objekte (z. B. ein Objekt, das seine Position nicht ändert, wie etwa eine Straßenlampe oder 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 506a-d sind durch Kanten 510a-c verbunden. Falls zwei Knoten 506a-b durch eine Kante 510a verbunden sind, ist es für ein Fahrzeug 100 möglich, zwischen einem Knoten 506a und dem anderen Knoten 506b zu fahren, ohne z. B. zu einem Zwischenknoten fahren zu müssen, bevor es an dem anderen Knoten 506b ankommt. (Wenn Bezug auf ein Fahrzeug 100 genommen wird, das zwischen Knoten fährt, bedeutet dies, dass das Fahrzeug 100 zwischen den beiden physischen Positionen fährt, die durch die jeweiligen Knoten repräsentiert werden.) Die Kanten 510a-c sind häufig in dem Sinne bidirektional, dass ein Fahrzeug 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 510a-c in dem Sinne unidirektional, dass ein Fahrzeug 100 von einem ersten Knoten zu einem zweiten Knoten fahren kann, das Fahrzeug 100 jedoch nicht vom zweiten Knoten zum ersten Knoten fahren kann. Die Kanten 510a-c sind unidirektional, wenn sie beispielsweise Einbahnstraßen, individuelle Fahrspuren einer Straße, Landstraße oder Autobahn oder andere Merkmale, auf denen aufgrund rechtlicher oder physischer Beschränkungen nur in einer Richtung gefahren sind, repräsentieren.
  • In einer Ausführungsform verwendet das Planungssystem 304 den gerichteten Graphen 500, um einen Pfad 512 zu identifizieren, der aus Knoten und Kanten zwischen dem Startpunkt 502 und dem Endpunkt 504 besteht.
  • Eine Kante 510a-c weist assoziierte Kosten 514a-b auf. Die Kosten 514a-b sind ein Wert, der die Ressourcen repräsentiert, die verbraucht werden, falls das Fahrzeug 100 diese Kante wählt. Eine typische Ressource ist Zeit. Falls beispielsweise eine Kante 510a eine physische Distanz repräsentiert, die zweimal so hoch ist wie eine andere Kante 510b, dann können die assoziierten Kosten 514a der ersten Kante 510a zweimal so hoch sein wie die assoziierten Kosten 514b der zweiten Kante 510b. Andere Faktoren, die Zeit beeinflussen, beinhalten erwarteter Verkehr, Anzahl von Kreuzungen, Geschwindigkeitsbegrenzung usw. Eine andere typische Ressource ist Kraftstoffeffizienz. Zwei Kanten 510a-b können die gleiche physische Distanz repräsentieren, aber eine Kante 510a kann mehr Kraftstoff erfordern als eine andere Kante 510b, z. B. aufgrund von Straßenbedingungen, erwartetem Wetter usw.
  • Wenn das Planungssystem 304 einen Pfad 512 zwischen dem Startpunkt 502 und dem Endpunkt 504 identifiziert, wählt das Planungssystem 304 typischerweise einen Pfad, der für Kosten optimiert ist, z. B. den Pfad, der die geringsten Gesamtkosten aufweist, wenn die individuellen Kosten der Kanten addiert werden.
  • Trai ektorieplanung
  • Wie zuvor angemerkt, kann ein rein Sampling-basierter Ansatz, und insbesondere ein zeitparametrisierter Ansatz, für die Pfadplanung ineffizient sein oder kann in Situationen, bei denen die Geschwindigkeit des Fahrzeugs sehr niedrig ist oder sich Null nähert oder bei denen die Pfade beschränkt sind, auf Schwierigkeiten stoßen. Ausführungsformen hierin stellen eine Technik zum Mindern dieser Bedenken mit einem Beschränkungsberechnungssystem und einem MPC-System bereit. Das Beschränkungsberechnungssystem wendet mindestens eine Beschränkung auf einen Referenzpfad an, um einen potenziellen Pfad durch die Umgebung zu identifizieren. Das MPC-System identifiziert einen anderen potenziellen Pfad basierend auf einer räumlichen Optimierung des Referenzpfades. Die beiden potenziellen Pfade werden dann verglichen, um zu identifizieren, welcher Pfad durch das Fahrzeug zur Navigation verwendet werden sollte.
  • 6 zeigt ein beispielhaftes Pfadplanungssystem gemäß verschiedenen Ausführungsformen. Insbesondere stellt 6 ein detailliertes Beispiel des Planungssystems 304 von 3 dar. Das Planungssystem 304 beinhaltet eine Anzahl von Teilsystemen, wie in 6 dargestellt. Die verschiedenen Teilsysteme können durch Hardware, Software, Firmware oder eine Kombination davon implementiert werden. In einer Ausführungsform wird jedes Teilsystem des Planungssystems 304 in einer einzelnen Schaltung, einem einzelnen Prozessor, einem einzelnen Prozessorkern usw. implementiert. In einer anderen Ausführungsform werden ein oder mehrere der Teilsysteme des Planungssystems 304 auf einer anderen Schaltung/einem anderen Prozessor/einem anderen Prozessorkern als ein anderes der Teilsysteme implementiert. Es wird auch angemerkt, dass diese Darstellung eines Planungssystems 304 zum Zweck der Besprechung hierin als eine beispielhafte Ausführungsform hoher Ebene beabsichtigt ist. Andere Ausführungsformen können eine andere Anzahl von Elementen oder Elemente, die in einer anderen Konfiguration als in 6 dargestellt angeordnet sind, aufweisen.
  • Das Planungssystem 304 beinhaltet ein Sampling-basiertes Pfadplanungssystem 605. Das Sampling-basierte Pfadplanungssystem 605 ist dazu ausgelegt, einen gerichteten Graphen zu erzeugen, der eine Reihe von Knoten und Kanten beinhaltet. 7 zeigt ein Beispiel für einen derartigen gerichteten Graphen 700, der bei der Pfadplanung zu verwenden ist, gemäß verschiedenen Ausführungsformen. Der Graph 700 wird zum Identifizieren eines Pfades zur Fahrt eines Fahrzeugs vom Startpunkt 705 (an dem das Fahrzeug in 7 abgebildet ist) zu einem Endpunkt 730 verwendet. Wie in 7 jedoch gesehen werden kann, ist die Fahrt des Fahrzeugs von seinem Startpunkt 705 zum Endpunkt 730 durch Faktoren wie etwa eine Spurmarkierung 715 der Straße oder ein Hindernis 710 beschränkt. Es versteht sich, dass dieser Graph 700 als ein stark vereinfachtes Beispiel beabsichtigt ist und andere Ausführungsformen zusätzliche Beschränkungen oder eine andere Art von Beschränkung (z. B. einen Fahrradfahrer, einen Fußgänger, eine verkehrsbasierte Beschränkung wie etwa ein Stoppschild usw.) oder Objekte 508a oder 508b beinhalten können.
  • Der Graph 700 ähnelt dem Graphen 500 von 5 und teilt eine oder mehrere Charakteristiken mit diesem. Insbesondere beinhaltet der Graph 700 eine Anzahl von Kanten 720 und Knoten 725, die den Kanten 510a-c bzw. den Knoten 506a-d ähnlich sind und eine oder mehrere Charakteristiken mit diesen teilen. Insbesondere repräsentieren die Kanten 720 unterschiedliche Fahrtrajektorien zwischen den Knoten 725, die physische Standorte repräsentieren.
  • Das Sampling-basierte Pfadplanungssystem 605 wird ferner einen Referenzpfad 735 durch den Graphen 700 identifizieren. Der Referenzpfad 735 basiert zum Beispiel auf einem Sampling-basierten Ansatz. Wie hierin verwendet, bezieht sich ein „Sampling-basierter Ansatz“ auf einen Ansatz, bei dem das Sampling-basierte Pfadplanungssystem 605 verschiedene Punkte des Graphen 700 samplet, bis ein Pfad zwischen dem Startpunkt 705 des Fahrzeugs und dem Endpunkt 730 gefunden wird. In manchen Ausführungsformen kann das Sampling zufällig oder quasizufällig stattfinden, wohingegen in anderen Ausführungsformen das Sampling mit Heuristiken geleitet wird oder aus einem Satz spezieller Bewegungsprioren durchgeführt wird.
    Das Sampling-basierte Pfadplanungssystem 605 gibt den Graphen 700 sowie den Referenzpfad 735 (oder eine Indikation davon) zu einem Beschränkungsberechnungssystem 615 und einem räumlichen Trajektorieoptimierungssystem 610 (das auch als ein räumliches MPC-System bezeichnet werden kann) aus.
  • Das Beschränkungsberechnungssystem 615 ist dazu ausgelegt, eine oder mehrere Beschränkungen zu berechnen, die auf den Referenzpfad 735 anzuwenden sind. Beispielsweise beinhalten die Beschränkungen Beschränkungen wie etwa geschwindigkeitsbasierte Beschränkungen wie etwa eine Höchstgeschwindigkeit des Fahrzeugs basierend auf verschiedenen Bedingungen (Verkehr, Wetter, ob das Fahrzeug geradeaus oder um eine Kurve fährt, usw.). Ein anderes Beispiel für Beschränkungen beinhaltet Beschränkungen basierend auf verschiedenen Objekten wie etwa ein Hindernis 710. Beispielsweise können sich die Beschränkungen auf raumbasierte Beschränkungen beziehen, bei denen der Standort des Fahrzeugs beschränkt ist, damit Kollisionen vermieden werden. Ein anderes Beispiel für Beschränkungen beinhaltet Beschränkungen wie etwa Spurbeschränkungen, zum Beispiel wie durch die Spurmarkierung 715 auferlegt. Um diese Beschränkungen aufzuerlegen, kann das Beschränkungsberechnungssystem 615 Daten von verschiedenen Quellen aggregieren, wie etwa dem Graphen 700 oder dem Referenzpfad 735, die durch das Sampling-basierte Pfadplanungssystem 605 bereitgestellt werden, Informationen, die durch einen oder mehrere der oben beschriebenen Sensoren 121 bereitgestellt werden (z. B. Informationen von einem LiDAR-System, einem Radar-System, einer Kamera usw.), Informationen basierend auf einem Beschleunigungsmesser oder Gyroskop des Fahrzeugs, GPS-Informationen usw.
  • Das räumliche Trajektorieoptimierungssystem 610 ist dazu ausgelegt, als Eingaben den Referenzpfad 735 und/oder den Graphen 700 zu verwenden, die durch das Pfadplanungssystem 605 ausgegeben werden. Wie nachstehend ausführlicher beschrieben, wird das räumliche Trajektorieoptimierungssystem 610 als „gradientenbasiert“ bezeichnet. Das räumliche Trajektorieoptimierungssystem 610 ist dann dazu ausgelegt, einen alternativen Pfad zwischen dem Startpunkt 705 und dem Endpunkt 730 zu identifizieren. Um diesen alternativen Pfad zu identifizieren, ist das räumliche Trajektorieoptimierungssystem 610 insbesondere dazu ausgelegt, die Daten bezüglich des Referenzpfades 735 und des Graphen 700 in einer räumlichen Domäne zu verbrauchen, anstelle der klassischen Zeitparametrisierung, die typischerweise für MPC verwendet wird.
  • Insbesondere wird die Bewegung des Fahrzeugs in der räumlichen Domäne basierend auf einem Modell wie etwa einem räumlichen kinematischen Fahrradmodell modelliert. Das räumliche kinematische Fahrradmodell ist ein Fahrzeugmodell, das stationsbasierte Zustandsvariablen wie etwa Lateralfehler, lokalen Steuerkurs, vektorielle Geschwindigkeit, Beschleunigung oder Lenkwinkel des Fahrzeugs verwendet. In einer Ausführungsform verwendet das Modell außerdem Eingangsvariablen wie etwa Beschleunigungsänderung oder Lenkänderung. Zusätzlich verwendet das Modell in einer Ausführungsform auch Variablen, die sich auf Spielraum im System beziehen, wie etwa Spielraum im Lateralfehler, Spielraum in der vektoriellen Geschwindigkeit oder Spielraum in der Beschleunigung.
  • Wie hierin verwendet, bezeichnet der Begriff „Spielraum“ ein akzeptables Niveau der Beschränkungserfüllung. Insbesondere sind Spielraumvariablen andere Entscheidungsvariablen, die der Optimierer abändern kann und die einen Spielraum an Beschränkungen des Optimierungsproblems ermöglichen. Der Spielraum repräsentiert, dass bei bestimmten Kosten manchen Beschränkungen verletzt werden können. Diese Fähigkeit der Verletzung bestimmter Beschränkungen ermöglicht zum Beispiel eine Implementierung einer Verkehrsregel -/Sicherheitspriorisierung.
  • Die Fahrzeugzustände sind in einem lokalen Koordinatenrahmen beschrieben, in dem Variablen bezüglich eines Referenzpfades beschrieben sind (dies zeichnet unsere Implementierung aus). Der „Lateralfehler“-Zustand repräsentiert die Position des Fahrzeugs lateral vom Referenzpfad.
  • Es versteht sich, dass diese Variablen als beispielhafte Variablen beschrieben sind und andere Ausführungsformen mehr oder weniger Variablen, unterschiedliche Variablen usw. verwenden können, um ein räumliches Domänenmodell des Verhaltens des Fahrzeugs vom Startpunkt 705 zum Endpunkt 730 bereitzustellen.
  • Das räumliche Trajektorieoptimierungssystem 610 ist dazu ausgelegt, die Fahrzeugzustände über einen Vorhersagehorizont zu optimieren, um einen zweiten Pfad zu identifizieren, der hierin als der „raumbasierte Pfad“ bezeichnet wird. Beispielsweise basiert die Optimierung des Modells auf einer oder mehreren der folgenden Komponenten:
  • Bei einer ersten Komponente handelt es sich um freie Variablen, für die die Optimierung versucht, optimale Werte zu finden. Diese freien Variablen sind typischerweise die Fahrzeugzustände über einen gegebenen Vorhersagehorizont.
  • Bei einer zweiten Komponente handelt es sich um die Verwendung des Fahrzeugmodells als eine Gleichheitsbeschränkung. Anders ausgedrückt wird erfordert, dass die Entwicklung der Fahrzeugzustände über den Vorhersagehorizont das Fahrzeugmodell erfüllt. Eine optimale Sequenz von Fahrzeugzuständen, die aus der Optimierung resultiert, wird daher das Fahrzeugmodell einhalten.
  • Bei einer dritten Komponente handelt es sich um eine Zielfunktion, die die mit bestimmten Kombinationen von Optimierungsvariablen assoziierten Kosten codiert. Die Zielfunktion wird allgemein basierend auf dem gewünschten Verhalten des Fahrzeugs voridentifiziert. Typischerweise steht die Zielfunktion mit einem oder mehreren Faktoren in Beziehung, wie etwa Passagierkomfort, Referenzverfolgung oder Abstand von Hindernissen.
  • Bei der vierten Komponente handelt es sich um Beschränkungen, die die freien Variablen (wie oben mit Bezug auf die erste Komponente besprochen) an einen bestimmten praktikablen Satz binden. Diese Beschränkungen beschreiben Parameter, innerhalb derer die optimale Lösung gefunden werden muss. Beschränkungen modellieren zum Beispiel Spurbegrenzungen, Kollisionsbeschränkungen, Geschwindigkeitsbeschränkungen, Betätigungsbeschränkungen (Gaspedal, Bremsung oder Lenkung) usw.
  • Die Einzelheiten der Umgebung und der aktuelle Fahrzeugzustand werden dann in das Optimierungsproblem für jede Iteration verarbeitet, das durch das räumliche Trajektorieoptimierungssystem 610 zu lösen ist. Die Lösung des Optimierungsproblems ist eine Sequenz von Fahrzeugzuständen, die bezüglich der Zielfunktion (z. B. der oben beschriebenen dritten Komponente) in Abhängigkeit von den Beschränkungen (z. B. der oben beschriebenen vierten Komponente) optimal ist. Typischerweise wird diese Optimierungstechnik als „gradientenbasiert“ bezeichnet, da die Zielfunktion (z. B. die oben beschriebene dritte Komponente) eine gleichmäßige funktionelle Repräsentation ist, die dem Modell ermöglicht, sich über die Oberfläche der Funktion zu bewegen und den Gradienten der Funktion zu folgen, um eine optimale Lösung zu identifizieren.
  • In einer Ausführungsform wird erkannt werden, dass das Planungssystem 304 gemäß einem gegebenen Zeitintervall iteriert. Das heißt, das Planungssystem 304 aktualisiert den Graphen 700 und/oder den Referenzpfad 735 usw. mit einer gegebenen Frequenz, die zum Beispiel 1 Hertz betragen kann. In anderen Ausführungsformen kann die Frequenz in Abhängigkeit von Faktoren wie etwa der im Fahrzeug verwendete Hardware, der aktuellen Bedingung des Verkehrs oder Wetters oder anderen Latenzanforderungen höher oder niedriger sein. Für diese Iteration kann der raumbasierte Pfad dem Sampling-basierten Pfadplanungssystem 605 zur Verwendung bei der nächsten Iteration zum Identifizieren des Referenzpfades (oder eines Teils davon) bereitgestellt werden. In einer Ausführungsform nimmt das Sampling-basierte Pfadplanungssystem 605 den raumbasierten Pfad als den Referenzpfad an. In einer anderen Ausführungsform nimmt das Sampling-basierte Pfadplanungssystem 605 nur einen Abschnitt des raumbasierten Pfades als den Referenzpfad an oder verwendet den raumbasierten Pfad als einen Startpunkt für das Sampling. Andere Variationen können in anderen Ausführungsformen vorhanden sein.
  • Der raumbasierte Pfad wird vom räumlichen Trajektorieoptimierungssystem 610 zu einem Vorschlagsvergleichssystem 620 bereitgestellt. Basierend auf der Anwendung des Beschränkungsberechnungssystems 615 auf den Sampling-basierten Referenzpfad 735 gibt das Beschränkungsberechnungssystem gleichermaßen einen beschränkten Referenzpfad zu einem Vorschlagsvergleichssystem 620 aus. Das Vorschlagsvergleichssystem 620 empfängt die Pfade von dem Beschränkungsberechnungssystem 615 und dem räumlichen Trajektorieoptimierungssystem 610 und vergleicht die Pfade. Insbesondere vergleicht das Beschränkungsvergleichssystem 615 den beschränkten Referenzpfad und den raumbasierten Pfad unter Verwendung eines oder mehrerer Regelbücher. Die Regelbücher beziehen sich auf verschiedene Faktoren, wie etwa Kollisionsvermeidung, Straßenregeln usw. Insbesondere werden die Regeln auf jeden der Pfade angewendet, und dann wird eine Metrik oder ein Wert basierend auf dieser Anwendung erzeugt. In einem Beispiel kann eine Regel bezüglich der Kollisionsvermeidung auf jeden der Pfade angewendet werden, und (a) für jeden Pfad, bei dem eine Kollision als vorhanden bestimmt wird, kann die erzeugte Metrik oder der erzeugte Wert null sein (z. B. keine Einhaltung der Regel repräsentieren), und (b) für jeden Pfad, bei dem keine Kollision als vorhanden bestimmt wird, kann die erzeugte Metrik oder der erzeugte Wert ungleich null sein (z. B. ein Wert von 1, der angibt, dass keine Kollision auftreten würde, ein Wert größer als null und kleiner als eins, der einen Grad repräsentiert, mit dem eine Kollision wahrscheinlich auftreten wird, und/oder dergleichen). In einem anderen Beispiel kann eine Regel bezüglich einer Straßenregel (z. B. Überqueren einer Linie, die zwei Spuren mit entgegengesetztem Verkehr trennt) auf jeden Pfad angewendet werden, und (a) für jeden Pfad, bei dem die Straßenregel eingehalten wird, kann die erzeugte Metrik oder der erzeugte Wert ungleich null sein (z. B. eine Einhaltung der Regel, einen Grad der Einhaltung der Regel und/oder dergleichen repräsentieren), und (b) für jeden Pfad, bei dem die Straßenregel nicht eingehalten wird, kann die erzeugte Metrik oder der erzeugte Wert null sein (z. B. repräsentieren, dass die Einhaltung der Regel für einen gegebenen Pfad nicht möglich ist). Die Metriken oder Werte werden dann analysiert, um zu identifizieren, welcher der beiden gelieferten Pfade den Regeln der Regelbücher am nächsten entspricht. In einer Ausführungsform werden die Regelbücher voridentifiziert oder beinhalten voridentifizierte Regeln, wie oben beschrieben. In einer anderen Ausführungsform werden ein oder mehrere Regelbücher verwendet, die dynamische Regeln beinhalten, z. B. Regeln, die basierend auf Verkehrsbedingungen, Wetterbedingungen usw. erzeugt werden. Wie hierin verwendet, betrifft eine „voridentifizierte“ Regel eine Regel, die vor der Analyse gemäß der Regel identifiziert wird. Eine derartige Regel kann zum Beispiel bekannte Straßenregeln, Regeln bezüglich Kollisionsvermeidungsstrategien usw. beinhalten. Im Gegensatz dazu kann eine „dynamische“ Regel eine Regel betreffen, die auf einer aktuellen Situation bezüglich des Fahrzeugs oder der Umgebung basiert. Eine solche dynamische Regel kann, wie oben beschrieben, aktuelle Verkehrsbedingungen, aktuelle Wetterbedingungen usw. betreffen.
  • Basierend auf der Anwendung der Regeln aus den Regelbüchern auf die Pfade, und den entsprechenden Metriken oder Werten wird einer der beiden Pfade, die dem Vorschlagsvergleichssystem 620 bereitgestellt werden, zur Verwendung durch das Fahrzeug ausgewählt. In einer Ausführungsform basiert die Auswahl der Pfade darauf, welcher der beiden Pfade die „beste“ Bewertung basierend auf dem Vergleich der Regeln mit dem Pfaden erhält. In Abhängigkeit davon, wie die Metriken oder Werte erzeugt werden, kann die beste Bewertung auf einer höchsten oder niedrigsten Bewertung basieren, wobei die höchste oder niedrigste Bewertung den Pfad repräsentiert, der die im Regelbuch enthaltenen Regeln am meisten einhält. In einer Ausführungsform kann die Auswahl der Pfade auf einem Vergleich der Metriken oder Werte mit einem Schwellenwert (der voridentifiziert oder dynamisch sein kann) basieren. Beispielsweise können in einer Ausführungsform die Metriken oder Bewertungen jedes Pfades analysiert werden, um festzustellen, ob die Metriken oder Bewertungen jedes Pfades größer als der (oder größer als oder gleich dem) Schwellenwert sind. In einer anderen Ausführungsform kann die Analyse feststellen, ob die Metriken oder Bewertungen jedes Pfades kleiner als der (oder kleiner als oder gleich dem) Schwellenwert sind, in Abhängigkeit davon, wie die Metriken berechnet werden. Zum Zweck dieser Besprechung wird angenommen, dass die Metrik „besteht“, wenn ihr Wert größer als der Schwellenwert ist. Falls die Metriken oder Werte für nur einen der Pfade größer als der Schwellenwert sind, dann wird dieser Pfad als der durch das Fahrzeug zu verwendende Pfad ausgewählt. Falls die Metriken oder Werte für beide Pfade größer als der Schwellenwert sind, dann werden beide Pfade ausgewählt. Falls die Metriken oder Werte für keinen Pfad größer als der Schwellenwert sind, kann eine Abhilfemaßnahme getroffen werden, wie etwa ein Nothalt, eine Neuberechnung des Pfades oder eine andere Abhilfemaßnahme. Es versteht sich, dass dieses Beispiel nur zum Beschreiben einer beispielhaften Ausführungsform des Betriebs beabsichtigt ist, und andere Ausführungsformen variieren können.
  • Das Vorschlagsvergleichssystem 620 gibt dann den gesamten oder einen Teil des ausgewählten Pfades oder eine Indikation davon zu einem zeitbasierten Trajektorieoptimierungssystem 625 aus. Das zeitbasierte Trajektorieoptimierungssystem 625 ist dazu ausgelegt, eine Trajektorie basierend auf dem ausgewählten Pfad (z. B. den beschränkten Referenzpfad oder den raumbasierten Pfad, der durch das Vorschlagsvergleichssystem 620 ausgewählt wird) zu berechnen. Wie hierin verwendet, bezieht sich die Trajektorie auf Informationen wie etwa den Pfad, die Geschwindigkeits- oder Beschleunigungsinformationen usw. Informationen bezüglich der Trajektorie werden dann dem Steuersystem 306 bereitgestellt, das dazu ausgelegt ist, das Fahrzeug gemäß dem Pfad zu betreiben.
  • 8 zeigt eine beispielhafte Technik zur Pfadplanung gemäß verschiedenen Ausführungsformen. Die Technik von 8 wird zum Beispiel durch das Planungssystem 304 und insbesondere die verschiedenen Teilsysteme des Planungssystems 304 durchgeführt, wie oben mit Bezug auf 6 beschrieben.
  • Es versteht sich, dass diese dargestellte Technik als ein Beispiel einer derartigen Technik zur Pfadplanung beabsichtigt ist und andere Ausführungsformen mehr oder weniger Elemente als die in 8 dargestellten aufweisen können. In anderen Ausführungsformen können bestimmte der Elemente in einer anderen Reihenfolge als dargestellt oder gleichzeitig miteinander auftreten. Andere Variationen können in anderen Ausführungsformen vorhanden sein.
  • Die Technik beinhaltet Identifizieren, bei 805, basierend auf einem Graphen, der mehrere Kanten und mehrere Knoten beinhaltet, eines Referenzpfades durch eine Umgebung, der einen Teilsatz der mehreren Kanten beinhaltet. Der Graph kann beispielsweise einen Graphen beinhalten, der der gleiche oder ähnlich ist wie der Graph 700. Die Kanten und Knoten können zum Beispiel Kanten und Knoten beinhalten, die die gleichen oder ähnlich sind wie die Kanten 720 und die Knoten 725. Der Referenzpfad kann beispielsweise einen Referenzpfad beinhalten, der der gleiche oder ähnlich ist wie der Referenzpfad 735.
  • Die Technik beinhaltet ferner Identifizieren, bei 810, eines ersten Pfades basierend auf einer Optimierung eines räumlichen Modells bezüglich des Graphen und des Referenzpfades. Der erste Pfad kann zum Beispiel einen raumbasierten Pfad beinhalten, der der gleiche oder ähnlich ist wie der oben beschriebene raumbasierte Pfad, der durch das räumliche Trajektorieoptimierungssystem 610 erzeugt wird.
  • Die Technik beinhaltet ferner Identifizieren, bei 815, eines zweiten Pfades basierend auf einer Anwendung mindestens einer Beschränkung auf den Referenzpfad. Der zweite Pfad kann beispielsweise einen zweiten Pfad beinhalten, der der gleiche oder ähnlich ist wie der beschränkte Referenzpfad, der durch das Beschränkungsberechnungssystem 615 erzeugt wird.
  • Die Technik beinhaltet ferner Auswählen, bei 820, basierend auf einem voridentifizierten Regelbuch, des ersten Pfades oder des zweiten Pfades als einen Pfad, entlang dessen ein autonomes Fahrzeug fahren wird. Die Auswahl kann die gleiche oder ähnlich sein wie zum Beispiel die Auswahl, die oben mit Bezug auf das Vorschlagsvergleichssystem 620 bei 6 beschrieben ist. Insbesondere kann die Auswahl auf einem Vergleich der Pfade mit einem vordefinierten Regelbuch basieren, um einen Vergleichswert oder eine Vergleichsmetrik zu erzeugen. In anderen Ausführungsformen kann der Vergleich auf einer anderen Technik oder einen anderen Algorithmus basieren.
  • In der vorstehenden Beschreibung wurden Ausführungsformen der Offenbarung mit Bezugnahme auf zahlreiche spezifische Einzelheiten beschrieben, die von Implementierung zu Implementierung variieren können. Die Beschreibung und die Zeichnungen sind dementsprechend als veranschaulichend anstatt beschränkend aufzufassen. Der alleinige und exklusive Indikator des Schutzumfangs der Offenbarung, und was durch die Anmelder als der Schutzumfang der Offenbarung beabsichtigt wird, ist der wörtliche und äquivalente Schutzumfang des Satzes von Ansprüchen, der sich aus dieser Anmeldung ergibt, in der spezifischen Form, in der solche Ansprüche sich ergeben, einschließlich jeglicher anschließender Korrektur. Jegliche Definitionen, die hierin für in solchen Ansprüchen enthaltenen Begriffe dargelegt sind, sollen die Bedeutung solcher Begriffe, wie in den Ansprüchen verwendet, bestimmen. Zusätzlich, wenn der Begriff „ferner umfassend“ in der vorstehenden Beschreibung oder den folgenden Ansprüchen verwendet wird, kann, 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 (20)

  1. System zur Verwendung in einem Fahrzeug, wobei das System Folgendes umfasst: mindestens einen Prozessor; und mindestens ein nichtflüchtiges computerbezogenes Medium, das Anweisungen umfasst, die bei Ausführung der Anweisungen durch den mindestens einen Prozessor bewirken sollen, dass der mindestens eine Prozessor Folgendes durchführt: Identifizieren, basierend auf einem Graphen, der mehrere Kanten und mehrere Knoten beinhaltet, eines Referenzpfades durch eine Umgebung, der einen Teilsatz der mehreren Kanten beinhaltet; Identifizieren, basierend auf einer Optimierung eines räumlichen Modells bezüglich des Graphen und des Referenzpfades, eines ersten Pfades; Identifizieren, basierend auf einer Anwendung mindestens einer Beschränkung auf den Referenzpfad, eines zweiten Pfades; und Auswählen, basierend auf einem voridentifizierten Regelbuch, des ersten Pfades oder des zweiten Pfades als einen Pfad, entlang dessen das Fahrzeug fahren wird.
  2. System nach Anspruch 1, wobei die Anweisungen ferner bewirken, dass der mindestens eine Prozessor Folgendes durchführt: Bereitstellen einer Indikation des ersten Pfades zu einem Pfadplanungssystem; und Identifizieren, durch das Pfadplanungssystem, eines anschließenden Referenzpfades basierend auf zumindest einem Abschnitt des ersten Pfades.
  3. System nach Anspruch 1, wobei die Anweisungen ferner bewirken, dass der mindestens eine Prozessor den ersten Pfad basierend auf Geschwindigkeitsbeschränkungen, Spurbeschränkungen oder Hindernissen in der Umgebung identifiziert.
  4. System nach Anspruch 1, wobei die Anweisungen ferner bewirken, dass der mindestens eine Prozessor den zweiten Pfad basierend auf Geschwindigkeitsbeschränkungen, Spurbeschränkungen oder Hindernissen in der Umgebung identifiziert.
  5. System nach Anspruch 1, wobei das voridentifizierte Regelbuch Regeln bezüglich Kollisionsvermeidung oder Verkehrsrecht beinhaltet.
  6. System nach Anspruch 1, wobei die Anweisungen ferner bewirken, dass der mindestens eine Prozessor eine Trajektorie basierend auf dem ausgewählten ersten oder zweiten Pfad identifiziert.
  7. System nach Anspruch 6, wobei die Anweisungen ferner bewirken, dass der mindestens eine Prozessor mindestens eine Indikation einer Steuerung ausgibt, die durch ein Steuersystem des Fahrzeugs zu verwenden ist.
  8. Verfahren, umfassend: Identifizieren, durch mindestens einen Prozessor eines Fahrzeugs, basierend auf einem Graphen, der mehrere Kanten und mehrere Knoten beinhaltet, eines Referenzpfades durch eine Umgebung, der einen Teilsatz der mehreren Kanten beinhaltet; Identifizieren, durch den mindestens einen Prozessor, eines ersten Pfades basierend auf einer Optimierung eines räumlichen Modells bezüglich des Graphen und des Referenzpfades; Identifizieren, durch den mindestens einen Prozessor, eines zweiten Pfades basierend auf einer Anwendung mindestens einer Beschränkung auf den Referenzpfad; und Auswählen, durch den mindestens einen Prozessor, des ersten Pfades oder des zweiten Pfades als einen Pfad, entlang dessen das Fahrzeug fahren wird, basierend auf einem voridentifizierten Regelbuch.
  9. Verfahren nach Anspruch 8, ferner umfassend Identifizieren, durch den mindestens einen Prozessor, eines anschließenden Referenzpfades basierend auf dem ersten Pfad.
  10. Verfahren nach Anspruch 8, ferner umfassend Identifizieren, durch den mindestens einen Prozessor, des ersten Pfades oder des zweiten Pfades basierend auf Geschwindigkeitsbeschränkungen, Spurbeschränkungen oder Hindernissen in der Umgebung.
  11. Verfahren nach Anspruch 8, wobei das voridentifizierte Regelbuch Regeln bezüglich Kollisionsvermeidung oder Verkehrsrecht beinhaltet.
  12. Verfahren nach Anspruch 8, wobei das Verfahren ferner Identifizieren, durch den mindestens einen Prozessor, einer Trajektorie, die eine Geschwindigkeit basierend auf dem ausgewählten ersten oder zweiten Pfad beinhaltet, umfasst.
  13. Verfahren nach Anspruch 12, ferner umfassend Steuern, durch den mindestens einen Prozessor, des Fahrzeugs basierend auf der Trajektorie.
  14. Nichtflüchtiges computerlesbares Medium bzw. nichtflüchtige computerlesbare Medien, die Anweisungen umfassen, die bei Ausführung der Anweisungen durch mindestens einen Prozessor eines Fahrzeugs das Fahrzeug zu Folgendem veranlassen sollen: Identifizieren, basierend auf einem Graphen, der mehrere Kanten und mehrere Knoten beinhaltet, eines Referenzpfades durch eine Umgebung, der einen Teilsatz der mehreren Kanten beinhaltet; Identifizieren eines ersten Pfades basierend auf einer Optimierung eines räumlichen Modells bezüglich des Graphen und des Referenzpfades; Identifizieren eines zweiten Pfades basierend auf einer Anwendung mindestens einer Beschränkung auf den Referenzpfad; und Auswählen, basierend auf einem voridentifizierten Regelbuch, des ersten Pfades oder des zweiten Pfades als einen Pfad, entlang dessen ein autonomes Fahrzeug fahren wird.
  15. Nichtflüchtiges computerlesbares Medium bzw. nichtflüchtige computerlesbare Medien nach Anspruch 14, wobei die Anweisungen ferner einen anschließenden Referenzpfad basierend auf dem ersten Pfad identifizieren sollen.
  16. Nichtflüchtiges computerlesbares Medium bzw. nichtflüchtige computerlesbare Medien nach Anspruch 14, wobei die Anweisungen ferner den ersten Pfad basierend auf Geschwindigkeitsbeschränkungen, Spurbeschränkungen oder Hindernissen in der Umgebung identifizieren sollen.
  17. Nichtflüchtiges computerlesbares Medium bzw. nichtflüchtige computerlesbare Medien nach Anspruch 14, wobei die Anweisungen ferner den zweiten Pfad basierend auf Geschwindigkeitsbeschränkungen, Spurbeschränkungen oder Hindernissen in der Umgebung identifizieren sollen.
  18. Nichtflüchtiges computerlesbares Medium bzw. nichtflüchtige computerlesbare Medien nach Anspruch 14, wobei das voridentifizierte Regelbuch Regeln bezüglich Kollisionsvermeidung oder Verkehrsrecht beinhaltet.
  19. Nichtflüchtiges computerlesbares Medium bzw. nichtflüchtige computerlesbare Medien nach Anspruch 14, wobei die Anweisungen ferner eine Trajektorie identifizieren sollen, die eine Geschwindigkeit basierend auf dem ausgewählten ersten oder zweiten Pfad beinhaltet.
  20. Nichtflüchtiges computerlesbares Medium bzw. nichtflüchtige computerlesbare Medien nach Anspruch 19, wobei die Anweisungen ferner bewirken sollen, dass das Fahrzeug den ausgewählten ersten oder zweiten Pfad gemäß der identifizierten Trajektorie befährt.
DE102021132194.8A 2021-01-12 2021-12-07 Fahrzeugpfadplanung Pending DE102021132194A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/147,426 2021-01-12
US17/147,426 US20220219727A1 (en) 2021-01-12 2021-01-12 Vehicle path planning

Publications (1)

Publication Number Publication Date
DE102021132194A1 true DE102021132194A1 (de) 2022-07-14

Family

ID=74879071

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021132194.8A Pending DE102021132194A1 (de) 2021-01-12 2021-12-07 Fahrzeugpfadplanung

Country Status (5)

Country Link
US (1) US20220219727A1 (de)
KR (1) KR102550039B1 (de)
CN (1) CN114764002A (de)
DE (1) DE102021132194A1 (de)
GB (1) GB2602677A (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11628858B2 (en) * 2020-09-15 2023-04-18 Baidu Usa Llc Hybrid planning system for autonomous vehicles
US20220355822A1 (en) * 2021-05-10 2022-11-10 Toyota Research Institute, Inc. Method for enumerating homotopies for maneuvers using a hierarchy of tolerance relations
CN115752491A (zh) * 2022-10-21 2023-03-07 盈合(深圳)机器人与自动化科技有限公司 一种路径规划方法、终端及计算机存储介质

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999020981A1 (de) * 1997-10-21 1999-04-29 Siemens Aktiengesellschaft Verfahren und anordnung zur ermittlung einer route von einem startpunkt zu einem zielpunkt
KR100806497B1 (ko) 2006-10-17 2008-02-21 백종성 경로 정보 제공 시스템 및 방법
KR101703144B1 (ko) * 2012-02-09 2017-02-06 한국전자통신연구원 차량의 자율주행 장치 및 그 방법
US9821801B2 (en) 2015-06-29 2017-11-21 Mitsubishi Electric Research Laboratories, Inc. System and method for controlling semi-autonomous vehicles
KR102151811B1 (ko) * 2018-01-26 2020-09-03 충북대학교 산학협력단 회피경로 생성방법 및 그를 위한 장치
US10884422B2 (en) * 2018-04-16 2021-01-05 Baidu Usa Llc Method for generating trajectories for autonomous driving vehicles (ADVS)
EP4152116B1 (de) * 2018-08-02 2024-03-13 Motional AD LLC Teleoperation von autonomen fahrzeugen
US20200341474A1 (en) * 2019-04-23 2020-10-29 WeRide Corp. Method and device for generating an autonomous driving trajectory of a vehicle
US11273837B2 (en) * 2019-09-24 2022-03-15 Baidu Usa Llc Variable boundary estimation for path planning for autonomous driving vehicles
US11815891B2 (en) * 2019-10-22 2023-11-14 Baidu Usa Llc End dynamics and constraints relaxation algorithm on optimizing an open space trajectory
US11586209B2 (en) * 2020-04-08 2023-02-21 Baidu Usa Llc Differential dynamic programming (DDP) based planning architecture for autonomous driving vehicles
US11663291B2 (en) * 2020-06-12 2023-05-30 Accenture Global Solutions Limited Quantum computation for cost optimization problems
US11628858B2 (en) * 2020-09-15 2023-04-18 Baidu Usa Llc Hybrid planning system for autonomous vehicles
CN112677995B (zh) * 2021-01-07 2021-12-21 腾讯科技(深圳)有限公司 一种车辆轨迹规划方法、装置、存储介质及设备

Also Published As

Publication number Publication date
KR102550039B1 (ko) 2023-06-30
US20220219727A1 (en) 2022-07-14
GB2602677A (en) 2022-07-13
GB202101821D0 (en) 2021-03-24
CN114764002A (zh) 2022-07-19
KR20220102530A (ko) 2022-07-20

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
DE112019006548T5 (de) Lenkwinkelkalibrierung
DE112019004832T5 (de) Betrieb eines Fahrzeugs unter Verwendung von Bewegungsplanung mit maschinellem Lernen
DE102020133744A1 (de) Vordergrundextraktion unter verwendung von flächenanpassung
DE112019006119T5 (de) Erstellung von bewegungsgraphen und routenplanung auf fahrspurebene
DE102020210499A1 (de) Datengesteuerte regelwerke
DE102021105001A1 (de) Steuerungsarchitekturen für autonome fahrzeuge
DE102021132194A1 (de) Fahrzeugpfadplanung
DE112020002695T5 (de) Autonomer fahrzeugbetrieb mittels linearer temporaler logik
DE102021133742A1 (de) Planung einer trajektorie eines autonomen fahrzeugs mit dynamischem zustand
DE102020126217A1 (de) Navigieren von Mehrwege-Stopp-Kreuzungen mit einem autonomen Fahrzeug
DE102020128154A1 (de) Trajektorieplanung für fahrzeuge unter verwendung von routeninformationen
DE102020128155A1 (de) Bedingte bewegungsvorhersagen
DE102021132850A1 (de) Homotopiebasierter planer für autonome fahrzeuge
DE102021132722A1 (de) Auswählen von testszenarien zum bewerten der leistung autonomer fahrzeuge
DE102021211781A1 (de) Fahrzeugbetrieb unter verwendung von verhaltensregelprüfungen
DE102021127118A1 (de) Identifizieren von Objekten mit LiDAR
DE102020114306A1 (de) Schätzen von geschwindigkeitsprofilen
DE102021133340A1 (de) Modalitätsübergreifendes aktives lernen zur objekterkennung
DE102021124913A1 (de) Metrik-backpropagation für die beurteilung der leistung von untersystemen
DE102021114032A1 (de) Identifizieren von hintergrundmerkmalen mittels lidar
DE102021133739A1 (de) Steuern eines autonomen fahrzeugs unter verwendung einer näheregel