DE102020128153A1 - Sampling von fahrszenarien zum trainieren/abstimmen maschineller lernmodelle für fahrzeuge - Google Patents

Sampling von fahrszenarien zum trainieren/abstimmen maschineller lernmodelle für fahrzeuge Download PDF

Info

Publication number
DE102020128153A1
DE102020128153A1 DE102020128153.6A DE102020128153A DE102020128153A1 DE 102020128153 A1 DE102020128153 A1 DE 102020128153A1 DE 102020128153 A DE102020128153 A DE 102020128153A DE 102020128153 A1 DE102020128153 A1 DE 102020128153A1
Authority
DE
Germany
Prior art keywords
objects
procedure
processor
driving
machine learning
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
DE102020128153.6A
Other languages
English (en)
Inventor
Eric Wolff
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 DE102020128153A1 publication Critical patent/DE102020128153A1/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
    • 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/085Changing the parameters of the control units, e.g. changing limit values, working points by control input
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • 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
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/10Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to vehicle motion
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2134Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on separation criteria, e.g. independent component analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/096Transfer learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/10Interfaces, programming languages or software development kits, e.g. for simulating neural networks
    • 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
    • B60W2050/0001Details of the control system
    • B60W2050/0002Automatic control, details of type of controller or control system architecture
    • B60W2050/0018Method for the design of a control system
    • 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/0062Adapting control system settings
    • B60W2050/0075Automatic parameter input, automatic initialising or calibrating means
    • B60W2050/0082Automatic parameter input, automatic initialising or calibrating means for initialising the control system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Automation & Control Theory (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Mechanical Engineering (AREA)
  • Transportation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Game Theory and Decision Science (AREA)
  • Business, Economics & Management (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Traffic Control Systems (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)

Abstract

Es sind Ausführungsformen zum Samplen von Fahrszenarien zum Trainieren maschineller Lernmodelle eingeschlossen. In einer Ausführungsform umfasst ein Verfahren: Zuweisen, unter Verwendung mindestens eines Prozessors, eines Satzes physischer Anfangszustände zu einem Satz von Objekten in einer Karte für einen Satz simulierter Fahrszenarien, wobei der Satz physischer Anfangszustände gemäß einer oder mehreren Ausgaben eines Zufallszahlgenerators zugewiesen wird; Erzeugen, unter Verwendung des mindestens einen Prozessors, des Satzes simulierter Fahrszenarien in der Karte unter Verwendung der physischen Anfangszustände der Objekte in dem Satz von Objekten; Auswählen, unter Verwendung des mindestens einen Prozessors, von Samples der simulierten Fahrszenarien; Trainieren, unter Verwendung des mindestens einen Prozessors, eines maschinellen Lernmodells unter Verwendung der ausgewählten Samples; und Betreiben, unter Verwendung einer Steuerschaltung, eines Fahrzeugs in einer Umgebung unter Verwendung des trainierten maschinellen Lernmodells.

Description

  • GEBIET DER ERFINDUNG
  • Die folgende Beschreibung betrifft allgemein das Erzeugen von Trainings- und/oder Abstimmungsdaten für maschinelle Lernmodelle.
  • HINTERGRUND
  • Autonome Fahrzeuge (AVs) beinhalten typischerweise maschinelle Lernmodelle, die unter Verwendung von Trainingsdaten trainiert und abgestimmt werden müssen. Die Genauigkeit eines maschinellen Lernmodells hängt stark von der Qualität der Trainings- und/oder Abstimmungsdaten ab. Beispielsweise falls das maschinelle Lernmodell zum Vorhersagen des Verhaltens eines AV in einer Betriebsumgebung mit vielen statischen und dynamischen Objekten, wie etwa anderen Fahrzeugen, verwendet wird. Um die Genauigkeit des maschinellen Lernmodells zu gewährleisten, ist es wichtig, dass die Trainings- und/oder Abstimmungsdaten einen großen Datensatz unterschiedlicher Fahrszenarien beinhalten, die das normale Verhalten der Objekte qualitativ erfassen.
  • KURZDARSTELLUNG
  • Es sind Techniken zum Samplen von Fahrszenarien bereitgestellt, um Trainings- und/oder Abstimmungsdaten für maschinelle Lernmodelle zu liefern.
  • In einer Ausführungsform umfasst ein Verfahren: Zuweisen, unter Verwendung mindestens eines Prozessors, eines Satzes physischer Anfangszustände zu einem Satz von Objekten (z. B. virtuellen Fahrzeugen, Fußgängern, Fahrradfahrern) in einer Karte für einen Satz simulierter Fahrszenarien (z. B. Durchfahren einer Kreuzung, Spurwechsel), wobei der Satz physischer Anfangszustände gemäß einer oder mehreren Ausgaben eines Zufallszahlgenerators zugewiesen wird; Erzeugen, unter Verwendung des mindestens einen Prozessors, des Satzes simulierter Fahrszenarien in der Karte unter Verwendung der physischen Anfangszustände der Objekte; Auswählen, unter Verwendung des mindestens einen Prozessors, von Samples der simulierten Fahrszenarien; Trainieren, unter Verwendung des mindestens einen Prozessors, eines maschinellen Lernmodells (z. B. eines tiefen neuronalen Netzwerks) unter Verwendung der ausgewählten Samples; und Betreiben, unter Verwendung einer Steuerschaltung, eines Fahrzeugs in einer Umgebung unter Verwendung des trainierten maschinellen Lernmodells.
  • In einer Ausführungsform ist mindestens ein Objekt in dem Satz von Objekten ein virtuelles Fahrzeug, und das Verfahren umfasst ferner Zuweisen eines mentalen Zustands eines virtuellen Fahrers des virtuellen Fahrzeugs (z. B. tendiert dazu, von einer Stillstandposition schnell zu beschleunigen, tendiert dazu, zu dicht aufzufahren), und Simulieren des Fahrszenarios unter Verwendung der Karte, der physischen Anfangszustände jedes Objekts in dem Satz von Objekten und des mentalen Zustands des virtuellen Fahrers des virtuellen Fahrzeugs.
  • In einer Ausführungsform beinhaltet der mentale Zustand des virtuellen Fahrers eine Beschleunigungspräferenz des Fahrers (z. B. Präferenz zum schnellen Beschleunigen von der Stillstandposition).
  • In einer Ausführungsform beinhaltet der mentale Zustand des virtuellen Fahrers eine Präferenz, einen Abstand zwischen dem anderen virtuellen Fahrzeug und anderen Objekten beizubehalten (z. B. eine Präferenz, zu dicht aufzufahren).
  • In einer Ausführungsform beinhaltet der mentale Zustand des virtuellen Fahrers eine Präferenz für eine spezielle Route.
  • In einer Ausführungsform beinhaltet der mentale Zustand des virtuellen Fahrers ein Ziel des Fahrers (z. B. schnell an einem Bestimmungsort anzukommen).
  • In einer Ausführungsform beinhaltet der mentale Zustand des virtuellen Fahrers einen Höflichkeitsfaktor (z. B. einen Gewichtungsfaktor), der bestimmt, wie sehr der Fahrer willens ist, anderen virtuellen Fahrern in dem Fahrszenario Unannehmlichkeiten zu bereiten.
  • In einer Ausführungsform umfasst das Verfahren ferner: Bestimmen eines oder mehrerer fehlgeschlagener Fahrszenarien (z. B. Kollision zwischen zwei oder mehr Objekten) in dem Satz von Fahrszenarien; und Ausschließen des einen oder der mehreren fehlgeschlagenen Fahrszenarien von dem Training des maschinellen Lernmodells (z. B. nicht in den Trainingsdaten eingeschlossen).
  • In einer Ausführungsform beinhaltet ein fehlgeschlagenes Fahrszenario ein Fahrszenario, bei dem eine Kollision zwischen zwei oder mehr Objekten vorhergesagt wird.
  • In einer Ausführungsform beinhaltet ein fehlgeschlagenes Fahrszenario ein Fahrszenario, bei dem Beschleunigungs- und Abbremsungswerte des einen oder der mehreren Objekte höher oder niedriger sind als ein oder mehrere spezifizierte Schwellenwerte (z. B. würde Beschleunigung bewirken, dass die Kontrolle über das Fahrzeug verloren geht).
  • In einer Ausführungsform beinhalten die physischen Anfangszustände der Objekte in dem Satz von Objekten Anfangspositionen und Anfangsbeschleunigungen, und die Anfangspositionen und die Anfangsbeschleunigungen werden gemäß unterschiedlichen Zufallszahlen zugewiesen, die durch den Zufallszahlgenerator ausgegeben werden.
  • In einer Ausführungsform umfasst das Erzeugen der simulierten Fahrszenarien ferner Vorhersagen jedes Fahrszenarios zeitlich nach vorne für einen spezifizierten Zeitraum, bevor das Sample ausgewählt wird (um z. B. den verschiedenen Objekten zu ermöglichen, ihre jeweiligen Trajektorien ohne Fehlschlag zu durchfahren).
  • In einer Ausführungsform beinhalten die Fahrszenarien Ampeln oder Verkehrszeichen, die das eine oder die mehreren Objekte einhalten.
  • In einer Ausführungsform ist das maschinelle Lernmodell ein neuronales Deep-Learning-Netzwerk zur Bewegungsvorhersage.
  • In einer Ausführungsform beinhalten das eine oder die mehreren Objekte mindestens einen Fußgänger.
  • In einer Ausführungsform beinhaltet jedes gesampelte Fahrszenario mehrere Zeitstempel und eine assoziierte Position, eine assoziierte Bahngeschwindigkeit und ein assoziiertes Label für jedes Objekt.
  • In einer Ausführungsform umfasst das Verfahren ferner: Einbetten des gesampelte Szenarios in ein Pseudobild (z. B. ein BEV-Bild); und Trainieren des maschinellen Lernmodells (z. B. Trainieren eines bildsemantischen neuronalen Netzwerks) unter Verwendung des Pseudobildes.
  • In einer Ausführungsform umfasst das Verfahren ferner: Auswählen eines eindeutigen Seeds aus einer statistischen Verteilung (z. B. einer Normalverteilung) und Initialisieren des Zufallszahlgenerators mit dem Seed.
  • In einer Ausführungsform ist die statistische Verteilung eine Verbindungsverteilung über das Fahrszenario.
  • In einer Ausführungsform wird das Fahrszenario basierend auf einer spezifizierten Dichte von Objekten (z. B. Stadt gegenüber Landgebiet) und/oder einem spezifizierten Tag oder einer spezifizierten Tageszeit (z. B. Simulieren von Stoßzeitverkehr) erzeugt.
  • Eine oder mehrere der offenbarten Ausführungsformen liefern einen oder mehrere der folgenden Vorteile. Das offenbarte System und Verfahren ermöglichen einem Benutzer, physische und mentale Zustände von Objekten für mehrere unterschiedliche Fahrszenarien über eine Benutzeroberfläche auszuwählen, zufällig zu initialisieren, zu simulieren und zu samplen. Die gesampelte Fahrszenarien können als Trainings- und/oder Abstimmungsdaten für maschinelle Lernmodelle entweder alleine oder zum Erweitern tatsächlicher Fahrprotokolldaten verwendet werden. Die simulierten Fahrszenarien können umfangreichere Trainings- und/oder Abstimmungsdaten bereitstellen, die dann realistischerweise durch Fahrzeuge in der realen Welt gesammelt werden könnten. Zusätzliche Verbesserungen an den Trainings- und/oder Abstimmungsdaten beinhalten die Fähigkeit, Objekten mentale Zustände zuzuweisen, um Fahrszenarien der realen Welt besser zu modellieren, wobei Fahrerpräferenzen das Fahrszenario wesentlich beeinflussen können.
  • Diese und andere Aspekte, Merkmale und Implementierungen können als Verfahren, Vorrichtungen, Systeme, Komponenten, Programmprodukte, Mittel oder Schritte zum Durchführen einer Funktion und auf andere Weisen ausgedrückt werden. Diese und andere Aspekte, Merkmale und Implementierungen werden aus den folgenden Beschreibungen einschließlich der Ansprüche ersichtlich werden.
  • Figurenliste
    • 1 zeigt ein Beispiel eines autonomen Fahrzeugs (AV) mit autonomer Fähigkeit gemäß einer oder mehreren Ausführungsformen.
    • 2 veranschaulicht eine beispielhafte „Cloud“-Rechenumgebung gemäß einer oder mehreren Ausführungsformen.
    • 3 veranschaulicht ein Computersystem gemäß einer oder mehreren Ausführungsformen.
    • 4 zeigt eine beispielhafte Architektur für ein AV gemäß einer oder mehreren Ausführungsformen.
    • 5 zeigt ein beispielhaftes System zum Samplen von Fahrszenarien gemäß einer oder mehreren Ausführungsformen.
    • 6 zeigt ein beispielhaftes System zum Trainieren und/oder Abstimmen eines maschinellen Lernmodells unter Verwendung gesampelte Fahrszenarien gemäß einer oder mehreren Ausführungsformen.
    • 7 ist ein Flussdiagramm eines beispielhaften Prozesses zum Samplen von Fahrszenarien gemäß einer oder mehreren Ausführungsformen.
  • AUSFÜHRLICHE BESCHREIBUNG
  • In der folgenden Beschreibung werden für Erläuterungszwecke zahlreiche spezifische Einzelheiten dargelegt, um ein durchgehendes Verständnis der vorliegenden Erfindung bereitzustellen. Es wird jedoch ersichtlich, dass die vorliegende Erfindung ohne diese spezifischen Einzelheiten umgesetzt werden kann. In anderen Fällen sind wohl bekannte Strukturen und Einrichtungen in Blockdiagrammform gezeigt, um ein unnötiges Verundeutlichen der vorliegenden Erfindung zu vermeiden.
  • In den Zeichnungen sind spezifische Anordnungen oder Ordnungen schematischer Elemente, wie etwa jener, die Vorrichtungen, Module, Anweisungsblöcke und Datenelemente repräsentieren, zur Einfachheit der Beschreibung gezeigt. Fachleute sollten jedoch verstehen, dass die spezifische Ordnung oder Anordnung der schematischen Elemente in den Zeichnungen nicht andeuten soll, dass eine spezielle Verarbeitungsreihenfolge oder -sequenz oder Trennung von Prozessen erforderlich ist. Ferner soll der Einschluss eines schematischen Elements in einer Zeichnung nicht andeuten, dass ein derartiges Element bei allen Ausführungsformen erforderlich ist oder dass die durch ein derartiges Element repräsentierten Merkmale bei manchen Ausführungsformen möglicherweise nicht in anderen Elementen enthalten sind oder mit diesen kombiniert werden.
  • Ferner soll in den Zeichnungen, wenn Verbindungselemente, wie etwa durchgezogene oder gestrichelte Linien oder Pfeile, zum Veranschaulichen einer Verbindung, Beziehung oder Assoziation zwischen oder unter zwei oder mehr anderen schematischen Elementen verwendet werden, das Nichtvorhandensein derartiger Verbindungselemente nicht andeuten, dass keine Verbindung, Beziehung oder Assoziation bestehen kann. Mit anderen Worten sind manche Verbindungen, Beziehungen oder Assoziationen zwischen Elementen in den Zeichnungen nicht gezeigt, um die Offenbarung nicht zu verundeutlichen. Zusätzlich dazu wird zur Vereinfachung der Veranschaulichung ein einziges Verbindungselement verwendet, um mehrere Verbindungen, Beziehungen oder Assoziationen zwischen Elementen zu repräsentieren. Wenn beispielsweise ein Verbindungselement eine Kommunikation von Signalen, Daten oder Anweisungen repräsentiert, sollten Fachleute verstehen, dass ein derartiges Element einen oder mehrere Signalpfade (z. B. einen Bus) repräsentiert, wie zum Bewirken der Kommunikation benötigt wird.
  • Es wird nun ausführlich auf Ausführungsformen Bezug genommen, wobei Beispiele von diesen in den begleitenden Zeichnungen veranschaulicht sind. In der folgenden ausführlichen Beschreibung werden zahlreiche spezifische Einzelheiten dargelegt, um ein durchgehendes Verständnis der verschiedenen beschriebenen Ausführungsformen bereitzustellen. Einem Durchschnittsfachmann wird jedoch ersichtlich werden, dass die verschiedenen beschriebenen Ausführungsformen ohne diese spezifischen Einzelheiten umgesetzt werden können. In anderen Fällen sind wohl bekannte Verfahren, Prozeduren, Komponenten, Schaltungen und Netzwerke nicht ausführlich beschrieben worden, um Aspekte der Ausführungsformen nicht unnötig zu verundeutlichen.
  • Mehrere Merkmale sind nachfolgend beschrieben, die jeweils unabhängig voneinander oder mit einer beliebigen Kombination anderer Merkmale verwendet werden können. Ein beliebiges individuelles Merkmal spricht jedoch möglicherweise keines der oben besprochenen Probleme an oder könnte nur eines der oben besprochenen Probleme ansprechen. Manche der oben besprochenen Probleme könnten 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 aufzufinden sind, auch anderweitig in dieser Beschreibung aufgefunden werden. Ausführungsformen sind hierin gemäß der folgenden Übersicht beschrieben:
    1. 1. Allgemeiner Überblick
    2. 2. Systemüberblick
    3. 3. Architektur eines autonomen Fahrzeugs
    4. 4. Sampling von Fahrszenarien
  • Allgemeiner Überblick
  • Es sind Techniken zum Sampling von Fahrszenarien zur Verwendung beim Trainieren und/oder Abstimmen maschineller Lernmodelle bereitgestellt. In einer Ausführungsform wählt ein Szenarieninitialiserer zufällig einen oder mehrere zu initialisierende Parameter aus, die sich auf einen physischen und/oder mentalen Zustand eines oder mehrerer Objekte in einem simulierten Fahrszenario beziehen. Der Szenarieninitialisierer initialisiert einen Fahrszenariensimulator mit dem einen oder den mehreren zufällig ausgewählten Parametern. Der Fahrszenariensimulator erzeugt einen Objektweg für jedes des einen oder der mehreren Objekte in dem Fahrszenario. Ein Szenarien-Sampling-Modul samplet den einen oder die mehreren Objektwege und speichert die Samples in einer Datenbank. Die Samples werden dann zum Trainieren und/oder Abstimmen eines oder mehrerer maschineller Lernmodelle verwendet.
  • Systemüberblick
  • 1 zeigt ein Beispiel für ein autonomes Fahrzeug 100 mit autonomer Fähigkeit.
  • Wie hierin verwendet, bezieht sich der Begriff „autonome Fähigkeit“ auf eine Funktion, ein Merkmal oder eine Fertigkeit, die/das einem Fahrzeug ermöglicht, teilweise oder vollständig ohne menschlichen Echtzeit-Eingriff betrieben zu werden, einschließlich ohne Beschränkung vollständig autonomen Fahrzeugen, hochgradig autonomen Fahrzeugen und konditionell autonomen Fahrzeugen.
  • Wie hierin verwendet, ist ein autonomes Fahrzeug (AV) ein Fahrzeug, das autonome Fähigkeit besitzt.
  • Wie hierin verwendet, beinhaltet „Fahrzeug“ Mittel für den Transport von Gütern oder Personen. Beispielsweise Autos, Busse, Züge, Flugzeuge, Drohnen, Lastkraftwagen, Boote, Schiffe, Unterwasserfahrzeuge, Luftfahrzeuge, Motorräder, Fahrräder usw. Ein fahrerloses Auto ist ein Beispiel eines Fahrzeugs.
  • Wie hierin verwendet, bezieht sich „Trajektorie“ auf einen Pfad oder eine Route zum Betreiben eines AV von einem ersten raumzeitlichen Ort zu einem zweiten raumzeitlichen Ort. Bei einer Ausführungsform wird der erste raumzeitliche Ort als der Anfangs- oder Startort bezeichnet, und der zweite raumzeitliche Ort wird als der Bestimmungsort, der Endort, das Ziel, die Zielposition oder der 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 Fahrbahn oder Kreuzung). Bei einer Ausführungsform entsprechen die raumzeitlichen Orte Orten in der realen Welt. 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 den Sensor umgebende Umgebung detektieren. Manche der Hardwarekomponenten können Erfassungskomponenten (z. B. Bildsensoren, biometrische Sensoren), Übertragungs- und/oder Empfangskomponenten (z. B. Laser- oder Hochfrequenzwellen-Sender und -Empfänger), elektronische Komponenten wie etwa Analog-Digital-Wandler, eine Datenspeicherungsvorrichtung (wie etwa einen RAM und/oder eine nichtflüchtige Speicherung), Software- oder Firmwarekomponenten und Datenverarbeitungskomponenten wie etwa eine ASIC (anwendungsspezifische integrierte Schaltung), einen Mikroprozessor und/oder einen Mikrocontroller beinhalten.
  • Wie hierin verwendet, ist eine „Szenenbeschreibung“ eine Datenstruktur (z. B. Liste) oder ein Datenstrom, die/der ein oder mehrere klassifizierte oder gelabelte Objekte beinhaltet, die durch einen oder mehrere Sensoren am AV-Fahrzeug detektiert oder durch eine Quelle extern zu dem AV bereitgestellt werden.
  • Wie hierin verwendet, ist „Straße“ ein physischer Bereich, der von einem Fahrzeug durchfahren werden kann, und kann einer mit einem Namen versehenen Verkehrsstraße entsprechen (z. B. Stadtstraße, Bundesautobahn usw.) oder kann einer unbenannten Verkehrsstraße entsprechen (z. B. einer Einfahrt in einem Haus oder Bürogebäude, einem Abschnitt eines Parkplatzes, einem Abschnitt eines unbebauten Grundstücks, einem Feldweg in einem ländlichen Gebiet usw.). Da manche Fahrzeuge (z. B. Vierradantrieb-Pick-Ups, Geländewagen usw.) in der Lage sind, eine Vielfalt physischer Gebiete zu durchfahren, die nicht spezifisch für Fahrzeugfahrten eingerichtet sind, kann eine „Straße“ ein physisches Gebiet sein, das nicht formell durch irgendeine Gemeinde oder andere Regierungs- oder Verwaltungsbehörde als eine Verkehrsstraße definiert ist.
  • Wie hierin verwendet, ist eine „Fahrbahn“ ein Teil einer Straße, auf der ein Fahrzeug fahren kann, und kann dem Großteil oder der Gesamtheit des Raums zwischen Fahrbahnmarkierungen entsprechen, oder kann nur einem Teil (z. B. weniger als 50 %) des Raums zwischen Fahrbahnmarkierungen entsprechen. Beispielsweise könnte eine Straße mit Fahrbahnmarkierungen zwei oder mehr Fahrzeuge zwischen den Markierungen unterbringen, sodass ein Fahrzeug an dem anderen vorbeifahren kann, ohne die Fahrbahnmarkierungen zu überfahren, und könnte somit als eine Fahrbahn aufweisend, die schmaler als der Raum zwischen den Fahrbahnmarkierungen ist, oder als zwei Fahrbahnen zwischen den Fahrbahnmarkierungen aufweisend interpretiert werden. Eine Fahrbahn könnte auch bei Nichtvorhandensein von Fahrbahnmarkierungen interpretiert werden. Beispielsweise kann eine Fahrbahn basierend auf physischen Merkmalen einer Umgebung definiert werden, z. B. Steinen und Bäumen entlang einer Verkehrsstraße in einem ländlichen Gebiet.
  • „Ein oder mehrere“ beinhaltet eine Funktion, die durch ein Element durchgeführt wird, eine Funktion, die durch mehr als ein Element durchgeführt wird, z. B. in verteilter Weise, mehrere Funktionen, die durch ein Element durchgeführt werden, mehrere Funktionen, die durch mehrere Elemente durchgeführt werden, oder eine beliebige Kombination des Obigen.
  • Es versteht sich außerdem, dass obwohl hierin in manchen Fällen die Begriffe erster, zweiter usw. zum Beschreiben verschiedener Elemente verwendet werden, diese Elemente nicht durch diese Begriffe eingeschrä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. Der erste Kontakt und der zweite Kontakt sind beide Kontakte, aber sie sind nicht derselbe Kontakt.
  • Die hierin in der Beschreibung der verschiedenen beschriebenen Ausführungsformen verwendete Terminologie soll nur spezielle Ausführungsformen beschreiben 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 einschließen, insofern der Zusammenhang nicht deutlich etwas anderes angibt. Es versteht sich außerdem, dass sich der Begriff „und/oder“, wie hierin verwendet, auf beliebige und alle möglichen Kombinationen eines oder mehrerer der assoziierten aufgelisteten Artikel bezieht und diese einschließt. Es versteht sich ferner, dass die Begriffe „beinhaltet“, „einschließlich“, „beinhaltet“ und/oder „einschließlich“, wenn in dieser Beschreibung verwendet, das Vorhandensein genannter Merkmale, ganzer Zahlen, Schritte, Operationen, Elemente und/oder Komponenten spezifizieren, aber nicht das Vorhandensein oder den Zusatz einer/eines oder mehrerer anderer Elemente, ganzer Zahlen, Schritte, Operationen, Elemente, Komponenten und/oder Gruppen davon ausschließen.
  • Wie hierin verwendet, soll der Begriff „falls“ optional so ausgelegt werden, dass er in Abhängigkeit vom Kontext „wenn“ oder „bei“ oder „als Reaktion auf das Bestimmen“ oder „als Reaktion auf das Detektieren“ bedeutet. Gleichermaßen soll der Ausdruck „falls bestimmt wird“ oder „falls [eine angegebene Bedingung oder ein angegebenes Ereignis] detektiert wird“ optional so ausgelegt werden, dass er in Abhängigkeit vom Kontext „nach dem Bestimmen“ oder „als Reaktion auf das Bestimmen“ oder „nach dem Detektieren [der angegebenen Bedingung oder des angegebenen Ereignisses]“ oder „als Reaktion auf das Detektieren [der angegebenen Bedingung oder des angegebenen Ereignisses]“ bedeutet.
  • Wie hierin verwendet, bezieht sich ein AV-System auf das AV zusammen mit der Anordnung von Hardware, Software, gespeicherten Daten und in Echtzeit erzeugten Daten, die den Betrieb des AV unterstützen. Bei einer Ausführungsform ist das AV-System in das AV integriert. Bei einer Ausführungsform ist das AV-System über mehrere Orte verteilt. Beispielsweise ist ein Teil der Software des AV-Systems in einer Cloud-Rechenumgebung implementiert, ähnlich der unten mit Bezug auf 3 beschriebenen Cloud-Rechenumgebung 300.
  • Im Allgemeinen beschreibt dieses Dokument Technologien, die bei beliebigen Fahrzeugen anwendbar sind, die eine oder mehrere autonome Fähigkeiten aufweisen, einschließlich vollautonomen Fahrzeugen, hochautonomen Fahrzeugen und bedingt autonomen Fahrzeugen, wie etwa sogenannten Stufe-5-, Stufe-4- bzw. Stufe-3-Fahrzeugen (siehe Standard von SAE International J3016: Taxonomy and Definitions for Terms Related to On-Road Motor Vehicle Automated Driving Systems, der durch Bezugnahme in seiner Gesamtheit aufgenommen wird, für weitere Einzelheiten über die Klassifikation von Autonomiestufen in Fahrzeugen). Die in diesem Dokument beschriebenen Technologien sind auch bei teilautonomen Fahrzeugen und fahrergestützten Fahrzeugen anwendbar, wie etwa sogenannten Stufe-2- und Stufe-1-Fahrzeugen (siehe Standard von SAE International J3016: Taxonomy and Definitions for Terms Related to On-Road Motor Vehicle Automated Driving Systems). Bei einer Ausführungsform können ein oder mehrere Fahrzeugsysteme der Stufe 1, 2, 3, 4 und 5 gewisse Fahrzeugoperationen (z. B. Lenken, Bremsen und Verwenden von Karten) unter gewissen Betriebsbedingungen basierend auf der Verarbeitung von Sensoreingaben automatisieren. Die in diesem Dokument beschriebenen Technologien können Fahrzeugen in allen Stufen nützen, von vollständig autonomen Fahrzeugen bis hin zu menschlich betriebenen Fahrzeugen.
  • Unter Bezugnahme auf 1 betreibt ein AV-System 120 das AV 100 entlang einer Trajektorie 198 durch eine Umgebung 190 zu einem Bestimmungsort 199 (manchmal als ein Endort bezeichnet), während es Objekte (z. B. natürliche Hindernisse 191, Fahrzeuge 193, Fußgänger 192, Fahrradfahrer und andere Hindernisse) vermeidet und Verkehrsvorschriften (z. B. Vorschriften zur Fahrweise oder Fahrpräferenzen) beachtet.
  • In einer Ausführungsform beinhaltet das AV-System 120 Vorrichtungen 101, die so instrumentiert sind, dass sie Betriebsbefehle von den Computerprozessoren 146 empfangen und auf diese reagieren. In einer Ausführungsform ähneln die Rechenprozessoren 146 dem unten mit Bezug auf 3 beschriebenen Prozessor 304. Beispiele für die Vorrichtungen 101 beinhalten eine Lenksteuerung 102, Bremsen 103, Gänge, Gaspedal oder andere Beschleunigungssteuermechanismen, Scheibenwischer, Seitentürschlösser, Fenstersteuerungen und Blinker.
  • In einer Ausführungsform beinhaltet das AV-System 120 Sensoren 121 zum Messen oder Inferieren von Eigenschaften des Status oder Zustands des AV 100, wie etwa die Position des AV, Lineargeschwindigkeit und -beschleunigung, Winkelgeschwindigkeit und -beschleunigung und Kurs (z. B. eine Orientierung des führenden Endes des AV 100). Beispiele für die Sensoren 121 sind ein GNSS-Empfänger (globales Satellitennavigationssystem), inertiale Messeinheiten (IMU), die sowohl Fahrzeuglinearbeschleunigungen als auch Winkelraten messen, Radgeschwindigkeitssensoren zum Messen oder Schätzen von Radschlupfverhältnissen, Radbremsdruck- oder Bremsmomentsensoren, Motordrehmoment- oder Raddrehmomentsensoren und Lenkwinkel- und Winkelratensensoren.
  • In einer Ausführungsform beinhalten die Sensoren 121 außerdem Sensoren zum Erfassen oder Messen von Eigenschaften der Umgebung des AV. Beispielsweise Monokular- oder Stereo-Videokameras 122 im Spektrum von sichtbarem Licht, Infrarot oder thermischem Spektrum (oder beiden), ein LiDAR 123, RADAR, Ultraschallsensoren, Laufzeit(TOF - Time of Flight)-Tiefensensoren, Geschwindigkeitssensoren, Temperatursensoren, Luftfeuchtigkeitssensoren und Niederschlagssensoren.
  • In einer Ausführungsform beinhaltet das AV-System 120 eine Datenspeicherungseinheit 142 und einen Speicher 144 zum Speichern von Maschinenanweisungen, die mit den Computerprozessoren 146 assoziiert sind, oder von Daten, die durch die Sensoren 121 gesammelt werden. In einer Ausführungsform ähnelt die Datenspeicherungseinheit 142 dem/der unten in Beziehung mit 3 beschriebenen ROM 308 oder Speicherungsvorrichtung 310. Bei einer Ausführungsform ähnelt der Speicher 144 dem unten beschriebenen Hauptspeicher 306. In einer Ausführungsform speichern die Datenspeicherungseinheit 142 und der Speicher 144 historische, Echtzeit- und/oder prädiktive Informationen über die Umgebung 190. In einer Ausführungsform beinhalten die gespeicherten Informationen Karten, Fahrverhalten, Verkehrsüberlastungsaktualisierungen oder Wetterbedingungen. In einer Ausführungsform werden Daten bezüglich der Umgebung 190 über einen Kommunikationskanal von einer entfernt angeordneten Datenbank 134 zu dem AV 100 übertragen.
  • In einer Ausführungsform beinhaltet das AV-System 120 Kommunikationsvorrichtungen 140 zum Kommunizieren von gemessenen oder inferierten Eigenschaften der Status oder Zustände anderer Fahrzeuge, wie etwa Positionen, Linear- und Winkelgeschwindigkeiten, Linear- und Winkelbeschleunigungen und Linear- und Winkelkurse, zu dem AV 100. Diese Einrichtungen beinhalten Fahrzeug-zu-Fahrzeug(V2V)- und Fahrzeug-zu-Infrastruktur(V2I)-Kommunikationseinrichtungen und Einrichtungen für drahtlose Kommunikationen über Punkt-zu-Punkt- oder Ad-Hoc-Netzwerke oder beides. Bei einer Ausführungsform kommunizieren die Kommunikationseinrichtungen 140 über das elektromagnetische Spektrum (einschließlich Funk- und optischen Kommunikationen) oder andere Medien (z. B. Luft und akustische Medien). Eine Kombination von Fahrzeug-zu-Fahrzeug- (V2V) und Fahrzeug-zu-Infrastruktur(V2I)-Kommunikation (und bei manchen Ausführungsformen ein oder mehrere andere Kommunikationsarten) wird manchmal als Fahrzeug-zu-Allem(V2X)-Kommunikation bezeichnet. 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 angeordneten Datenbank 134 zu dem AV-System 120. In einer Ausführungsform ist die entfernt angeordnete Datenbank 134 in einer Cloud-Rechenumgebung 200 eingebettet, wie in 2 beschrieben. Die Kommunikationsschnittstellen 140 übertragen von den Sensoren 121 gesammelte Daten oder andere Daten bezüglich des Betriebs des AV 100 zu der entfernt angeordneten Datenbank 134. In einer Ausführungsform übertragen die Kommunikationsschnittstellen 140 Informationen, die sich auf Teleoperationen beziehen, zu dem AV 100. In manchen Ausführungsformen kommuniziert das AV 100 mit anderen entfernten (z. B. „Cloud“) Servern 136.
  • In einer Ausführungsform speichert und überträgt die entfernt angeordnete Datenbank 134 auch digitale Daten (z. B. speichert Daten, wie etwa Straßen- und Stadtstraßenorte). Derartige Daten werden im Speicher 144 im AV 100 gespeichert oder über einen Kommunikationskanal von der entfernt angeordneten Datenbank 134 zu dem AV 100 übertragen.
  • In einer Ausführungsform speichert und überträgt die entfernt angeordnete Datenbank 134 historische Informationen über Fahreigenschaften (z. B. Geschwindigkeits- und Beschleunigungsprofile) von Fahrzeugen, die zuvor entlang der Trajektorie 198 zu ähnlichen Tageszeiten fuhren. In einer Implementierung können derartige Daten im Speicher 144 im AV 100 gespeichert oder über einen Kommunikationskanal von der entfernt angeordneten Datenbank 134 zu dem AV 100 übertragen werden.
  • Die sich im AV 100 befindlichen Rechenvorrichtungen 146 erzeugen algorithmisch Steuerhandlungen basierend auf sowohl Echtzeit-Sensordaten als auch vorherigen Informationen, was dem AV-System 120 ermöglicht, seine autonomen Fahrfähigkeiten auszuführen.
  • In einer Ausführungsform beinhaltet das AV-System 120 Computerperipheriegeräte 132, die mit den Rechenvorrichtungen 146 gekoppelt sind, um Informationen und Warnungen für einen Benutzer (z. B. einen Insassen oder einen entfernten Benutzer) des AV 100 bereitzustellen und eine Eingabe von diesem zu empfangen. In einer Ausführungsform ähneln die Peripheriegeräte 132 der Anzeige 312, der Eingabevorrichtung 314 und der Cursor-Steuerung 316, die unten mit Bezug auf 3 besprochen sind. Die Kopplung ist drahtlos oder drahtgebunden. Zwei oder mehr beliebige der Schnittstellenvorrichtungen können in eine einzelne Vorrichtung integriert sein.
  • Beispielhafte Cloud-Rechenumgebung
  • 2 veranschaulicht eine beispielhafte „Cloud“-Rechenumgebung. Cloud-Computing ist ein Dienstlieferungsmodell zum Ermöglichen eines zweckdienlichen On-Demand-Netzwerkzugangs zu einem gemeinsam genutzten Pool konfigurierbarer Rechenressourcen (z. B. Netzwerken, Netzwerkbandbreite, Servern, Verarbeitung, Speicher, Speicherung, Anwendungen, virtuellen Maschinen und Diensten). In typischen Cloud-Rechensystemen sind die Maschinen, die zum Liefern der durch die Cloud bereitgestellten Dienste verwendet werden, in einem oder mehreren großen Cloud-Datenzentren untergebracht. Jetzt mit Bezug auf 2 beinhaltet die Cloud-Rechenumgebung 200 Cloud-Datenzentren 204a, 204b und 204c, die über die Cloud 202 miteinander verbunden sind. Die Datenzentren 204a, 204b und 204c stellen Cloud-Rechendienste zu mit der Cloud 202 verbundenen Computersystemen 206a, 206b, 206c, 206d, 206e und 206f bereit.
  • Die Cloud-Rechenumgebung 200 beinhaltet ein oder mehrere Cloud-Datenzentren. Im Allgemeinen bezieht sich ein Cloud-Datenzentrum, zum Beispiel das in 2 gezeigte Cloud-Datenzentrum 204a, auf die physische Anordnung von Servern, die eine Cloud, zum Beispiel die in 2 gezeigte Cloud 202, oder einen speziellen Teil einer Cloud ausmachen. Beispielsweise sind Server physisch im Cloud-Datenzentrum in Räume, Gruppen, Reihen und Racks angeordnet. Ein Cloud-Datenzentrum weist eine oder mehrere Zonen auf, die einen oder mehrere Räume von Servern beinhalten. Jeder Raum weist eine oder mehrere Reihen von Servern auf, und jede Reihe beinhaltet ein oder mehrere Racks. Jedes Rack beinhaltet einen oder mehrere einzelne Serverknoten. In manchen Implementierungen sind Server in Zonen, Räumen, Racks und/oder Reihen basierend auf physischen Infrastrukturvoraussetzungen der Datenzentrumanlage, die Strom-, Energie-, thermische, Wärme- und/oder andere Voraussetzungen beinhalten, in Gruppen angeordnet. In einer Ausführungsform ähneln die Serverknoten dem in 3 beschriebenen Computersystem. Das Datenzentrum 204a weist viele Rechensysteme auf, die über viele Racks verteilt sind.
  • Die Cloud 202 beinhaltet die Cloud-Datenzentren 204a, 204b und 204c zusammen mit dem Netzwerk und Netzwerkressourcen (zum Beispiel Networking-Geräte, Knoten, Router, Switches und Networking-Kabel), die die Cloud-Datenzentren 204a, 204b und 204c miteinander verbinden und dazu beitragen, den Zugang der Rechensysteme 206a-f zu Cloud-Rechendiensten zu ermöglichen. In einer Ausführungsform repräsentiert das Netzwerk eine beliebige Kombination eines oder mehrerer lokaler Netzwerke, großflächiger Netzwerke oder Inter-Netzwerke, die unter Verwendung drahtgebundener oder drahtloser Links, die unter Verwendung terrestrischer oder Satellitenverbindungen eingesetzt werden, gekoppelt sind. Über das Netzwerk ausgetauschte Daten werden unter Verwendung einer beliebigen Anzahl von Netzwerkschichtprotokollen transferiert, wie etwa Internetprotokoll (IP), Multiprotocol Label Switching (MPLS), Asynchronous Transfer Mode (ATM), Frame Relay usw. Ferner werden in Ausführungsformen, in denen das Netzwerk eine Kombination mehrerer Teilnetzwerke repräsentiert, unterschiedliche Netzwerkschichtprotokolle an jedem der zugrundeliegenden Teilnetzwerke verwendet. In manchen Ausführungsformen repräsentiert das Netzwerk ein oder mehrere miteinander verbundene Inter-Netzwerke, wie etwa das öffentliche Internet.
  • Die Verbraucher der Rechensysteme 206a-f oder Cloud-Rechendienste sind über Netzwerklinks und Netzwerkadapter mit der Cloud 202 verbunden. In einer Ausführungsform werden die Rechensysteme 206a-f als verschiedene Rechenvorrichtungen, zum Beispiel Server, Desktops, Laptops, Tablets, Smartphones, Internet-der-Dinge(IdD)-Vorrichtungen, autonome Fahrzeuge (einschließlich Autos, Drohnen, Shuttles, Zügen, Bussen usw.) und Verbraucherelektronik implementiert. In einer Ausführungsform werden die Rechensysteme 206a-f in oder als ein Teil anderer Systeme implementiert.
  • Computersystem
  • 3 veranschaulicht ein Computersystem 300. In einer Implementierung ist das Computersystem 300 eine Spezialzweck-Rechenvorrichtung. Die Spezialzweck-Rechenvorrichtung ist festverdrahtet, um die Techniken durchzuführen, oder beinhaltet digitale elektronische Vorrichtungen wie etwa eine oder mehrere anwendungsspezifische integrierte Schaltungen (ASICs) oder feldprogrammierbare Gate-Arrays (FPGAs), die persistent programmiert sind, um die Techniken durchzuführen, oder können einen oder mehrere Allgemeinzweck-Hardwareprozessoren beinhalten, die programmiert sind, die Techniken gemäß Programmanweisungen in Firmware, Speicher, anderer Speicherung oder einer Kombination durchzuführen. Derartige Spezialzweck-Rechenvorrichtungen können auch benutzerspezifische festverdrahtete Logik, ASICs oder FPGAs mit kundenspezifischer Programmierung kombinieren, um die Techniken zu realisieren. Bei verschiedenen Ausführungsformen sind die Spezialzweck-Recheneinrichtungen Desktop-Computersysteme, portable Computersysteme, tragbare Einrichtungen, Netzwerkeinrichtungen oder eine beliebige andere Einrichtung, die festverdrahtete und/oder Programmlogik zum Implementieren der Techniken integriert.
  • Bei einer Ausführungsform beinhaltet das Computersystem 300 einen Bus 302 oder einen anderen Kommunikationsmechanismus zum Kommunizieren von Informationen und einen Hardwareprozessor 304, der mit einem Bus 302 gekoppelt ist, zum Verarbeiten von Informationen. Der Hardwareprozessor 304 ist zum Beispiel ein Allzweck-Mikroprozessor. Das Computersystem 300 beinhaltet außerdem einen Hauptspeicher 306, wie etwa einen Direktzugriffspeicher (RAM) oder eine andere dynamische Speicherungsvorrichtung, der/die mit dem Bus 302 gekoppelt ist, zum Speichern von Informationen und von durch den Prozessor 304 auszuführenden Anweisungen. In einer Implementierung wird der Hauptspeicher 306 zum Speichern temporärer Variablen oder anderer Zwischeninformationen während der Ausführung von durch den Prozessor 304 auszuführenden Anweisungen verwendet. Derartige Anweisungen, wenn sie in für den Prozessor 304 zugreifbaren, nichtflüchtigen Speicherungsmedien gespeichert sind, bilden das Computersystem 300 in eine Spezialzweck-Maschine aus, die zum Durchführen der in den Anweisungen spezifizierten Operationen angepasst ist.
  • In einer Ausführungsform beinhaltet das Computersystem 300 ferner einen Nurlesespeicher (ROM) 308 oder eine andere statische Speicherungsvorrichtung, der/die mit dem Bus 302 gekoppelt ist, zum Speichern statischer Informationen und Anweisungen für den Prozessor 304. Eine Speicherungsvorrichtung 310, wie etwa eine magnetische Platte, eine optische Platte, ein Solid-State-Laufwerk oder ein dreidimensionaler Cross-Point-Speicher, ist bereitgestellt und mit dem Bus 302 gekoppelt, um Informationen und Anweisungen zu speichern.
  • In einer Ausführungsform ist das Computersystem 300 über den Bus 302 mit einer Anzeige 312 gekoppelt, wie etwa einer Kathodenstrahlröhre (CRT), Flüssigkristallanzeige (LCD), Plasmaanzeige, Leuchtdioden(LED)-Anzeige oder einer organischen Leuchtdioden(LED)-Anzeige zum Anzeigen von Informationen für einen Computerbenutzer. Eine Eingabeeinrichtung 314, die alphanumerische und andere Tasten beinhaltet, ist mit dem Bus 302 gekoppelt, um Informationen und Befehlsauswahlen zu dem Prozessor 304 zu kommunizieren. Eine andere Art von Benutzereingabeeinrichtung ist eine Cursor-Steuerung 316, wie etwa eine Maus, ein Trackball, eine berührungsgestützte Anzeige oder Cursorrichtungstasten zum Kommunizieren von Richtungsinformationen und Befehlsauswahlen zu dem Prozessor 304 und zum Steuern der Cursorbewegung auf der Anzeige 312. Diese Eingabeeinrichtung weist typischerweise zwei Freiheitsgrade in zwei Achsen auf, eine erste Achse (z. B. x-Achse) und eine zweite Achse (z. B. y-Achse), die der Einrichtung ermöglichen, Positionen in einer Ebene zu spezifizieren.
  • Gemäß einer Ausführungsform werden die Techniken hierin durch das Computersystem 300 als Reaktion darauf durchgeführt, dass der Prozessor 304 eine oder mehrere Sequenzen einer oder mehrerer im Hauptspeicher 306 enthaltener Anweisungen ausführt. Derartige Anweisungen werden in den Hauptspeicher 306 von einem anderen Speicherungsmedium, wie etwa der Speicherungsvorrichtung 310, gelesen. Die Ausführung der im Hauptspeicher 306 enthaltenen Anweisungssequenzen veranlasst, dass der Prozessor 304 die hierin beschriebenen Prozessschritte durchführt. In alternativen Ausführungsformen wird eine festverdrahtete Schaltungsanordnung anstelle von oder in Kombination mit Softwareanweisungen verwendet.
  • Der Begriff „Speicherungsmedien“, wie hierin verwendet, bezieht sich auf beliebige nichtflüchtige Medien, die Daten und/oder Anweisungen speichern, die veranlassen, dass eine Maschine auf eine spezifische Weise arbeitet. Derartige Speicherungsmedien beinhalten beständige und/oder unbeständige Medien. Beständige Medien beinhalten zum Beispiel optische Platten, magnetische Platten, Solid-State-Laufwerke oder einen dreidimensionalen Cross-Point-Speicher, wie etwa die Speicherungsvorrichtung 310. Unbeständige Medien beinhalten dynamischen Speicher, wie etwa den Hauptspeicher 306. Übliche Formen von Speicherungsmedien beinhalten zum Beispiel eine Floppy-Disk, eine flexible Platte, eine Festplatte, ein Solid-State-Laufwerk, ein Magnetband oder ein beliebiges anderes magnetisches Datenspeicherungsmedium, eine CD-ROM, ein beliebiges anderes optisches Datenspeicherungsmedium, ein beliebiges physisches Medium mit Lochmustern, einen RAM, einen PROM und EPROM, einen FLASH-EPROM, NV-RAM oder einen beliebigen anderen Speicherchip oder eine beliebige andere Speicherkassette.
  • Speicherungsmedien sind von Übertragungsmedien verschieden, können aber in Verbindung mit diesen verwendet werden. Übertragungsmedien nehmen beim Transferieren von Informationen zwischen Speicherungsmedien teil. Beispielsweise beinhalten Übertragungsmedien Koaxialkabel, Kupferdraht und Faseroptik, einschließlich der Drähte, die den Bus 302 beinhalten. Übertragungsmedien können auch die Form von akustischen Wellen oder Lichtwellen annehmen, wie etwa jenen, 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 304 zur Ausführung beteiligt. Beispielsweise werden die Anweisungen anfänglich auf einer magnetischen Platte oder einem Solid-State-Laufwerk eines entfernten Computers geführt. Der entfernte Computer lädt die Anweisungen in seinen dynamischen Speicher und sendet die Anweisungen über eine Telefonleitung unter Verwendung eines Modems. Ein lokal zu dem Computersystem 300 befindliches Modem empfängt die Daten auf der Telefonleitung und verwendet einen Infrarotsender, um die Daten in ein Infrarotsignal umzuwandeln. Ein Infrarotdetektor empfängt die im Infrarotsignal geführten Daten und eine geeignete Schaltungsanordnung legt die Daten auf den Bus 302. Der Bus 302 führt die Daten zum Hauptspeicher 306, von dem der Prozessor 304 die Anweisungen abruft und ausführt. Die durch den Hauptspeicher 306 empfangenen Anweisungen können optional in der Speicherungsvorrichtung 310 entweder vor oder nach der Ausführung durch den Prozessor 304 gespeichert werden.
  • Das Computersystem 300 beinhaltet auch eine Kommunikationsschnittstelle 318, die mit dem Bus 302 gekoppelt ist. Die Kommunikationsschnittstelle 318 stellt eine Zweiwege-Datenkommunikation bereit, die mit einem Netzwerklink 320 gekoppelt ist, der mit einem lokalen Netzwerk 322 verbunden ist. Beispielsweise ist die Kommunikationsschnittstelle 318 eine ISDN-Karte (Integrated Service Digital Network), ein Kabelmodem, ein Satellitenmodem oder ein Modem zum Bereitstellen einer Datenkommunikationsverbindung zu einer entsprechenden Art von Telefonleitung. Als ein anderes Beispiel ist die Kommunikationsschnittstelle 318 eine LAN-Karte (LAN - Lokalnetzwerk) zum Bereitstellen einer Datenkommunikationsverbindung zu einem kompatiblen LAN. In manchen Implementierungen sind auch drahtlose Links implementiert. In jeglichen derartigen Implementierungen sendet und empfängt die Kommunikationsschnittstelle 318 elektrische, elektromagnetische oder optische Signale, die digitale Datenströme führen, die verschiedene Informationsarten repräsentieren.
  • Der Netzwerklink 320 stellt typischerweise eine Datenkommunikation über ein oder mehrere Netzwerke zu anderen Datenvorrichtungen bereit. Beispielsweise stellt der Netzwerklink 320 eine Verbindung über das lokale Netzwerk 322 zu einem Host-Computer 324 oder zu einem Cloud-Datenzentrum oder einem Gerät, das durch einen Internetdienstanbieter (ISP: Internet Service Provider) 326 betrieben wird, bereit. Der ISP 326 stellt im Gegenzug Datenkommunikationsdienste über das weltweite Paketdatenkommunikationsnetzwerk bereit, das jetzt allgemein als das „Internet“ 328 bezeichnet wird. Sowohl das Lokalnetzwerk 322 als auch das Internet 328 verwenden elektrische, elektromagnetische oder optische Signale, die digitale Datenströme führen. Die Signale durch die verschiedenen Netzwerke und die Signale auf dem Netzwerklink 320 und über die Kommunikationsschnittstelle 318, die die digitalen Daten zu und von dem Computersystem 300 führen, sind beispielhafte Formen von Übertragungsmedien. In einer Ausführungsform enthält das Netzwerk 320 die Cloud 202 oder einen Teil der oben beschriebenen Cloud 202.
  • Das Computersystem 300 sendet Nachrichten und empfängt Daten, einschließlich Programmcode, über das (die) Netzwerk(e), den Netzwerklink 320 und die Kommunikationsschnittstelle 318. In einer Ausführungsform empfängt das Computersystem 300 Code zur Verarbeitung. Der empfangene Code wird bei seinem Empfang durch den Prozessor 304 ausgeführt und/oder in der Speicherungseinrichtung 310 oder einer anderen beständigen Speicherung zur späteren Ausführung gespeichert.
  • Architektur eines autonomen Fahrzeugs
  • 4 zeigt eine beispielhafte Architektur 400 für ein autonomes Fahrzeug (z. B. das in 1 gezeigte AV 100). Die Architektur 400 beinhaltet ein Wahrnehmungsmodul 402 (manchmal als eine Wahrnehmungsschaltung bezeichnet), ein Planungsmodul 404 (manchmal als eine Planungsschaltung bezeichnet), ein Steuermodul 406 (manchmal als eine Steuerschaltung bezeichnet), ein Lokalisierungsmodul 408 (manchmal als eine Lokalisierungsschaltung bezeichnet) und ein Datenbankmodul 410 (manchmal als eine Datenbankschaltung bezeichnet). Jedes Modul spielt eine Rolle beim Betrieb des AV 100. Zusammen können die Module 402, 404, 406, 408 und 410 Teil des in 1 gezeigten AV-Systems 120 sein. In manchen Ausführungsformen ist ein beliebiges der Module 402, 404, 406, 408 und 410 eine Kombination von Computersoftware (z. B. ausführbarer Code, der in einem computerlesbaren Medium gespeichert ist) und Computerhardware (z. B. ein/e oder mehrere Mikroprozessoren, Mikrocontroller, anwendungsspezifische integrierte Schaltungen [ASICs], Hardware-Speichervorrichtungen, andere Arten integrierter Schaltungen, andere Arten von Computerhardware oder eine Kombination beliebiger oder aller dieser Dinge).
  • Im Gebrauch empfängt das Planungsmodul 404 Daten, die einen Bestimmungsort 412 repräsentieren, und bestimmt Daten, die eine Trajektorie 414 (manchmal als eine Route bezeichnet) repräsentieren, die durch das AV 100 gefahren werden kann, um den Bestimmungsort 412 zu erreichen (z. B. an diesem anzukommen). Damit das Planungsmodul 404 die Daten bestimmt, die die Trajektorie 414 repräsentieren, empfängt das Planungsmodul 404 Daten von dem Wahrnehmungsmodul 402, dem Lokalisierungsmodul 408 und dem Datenbankmodul 410.
  • Das Wahrnehmungsmodul 402 identifiziert nahegelegene physische Objekte unter Verwendung eines oder mehrerer Sensoren 121, z. B. wie auch in 1 gezeigt. Die Objekte werden klassifiziert (z. B. in Arten wie etwa Fußgänger, Fahrrad, Kraftfahrzeug, Verkehrszeichen usw. gruppiert) und eine Szenenbeschreibung einschließlich der klassifizierten Objekte 416 wird dem Planungsmodul 404 bereitgestellt.
  • Das Planungsmodul 404 empfängt auch Daten, die die AV-Position 418 repräsentieren, vom Lokalisierungsmodul 408. Das Lokalisierungsmodul 408 bestimmt die AV-Position unter Verwendung von Daten von den Sensoren 121 und Daten vom Datenbankmodul 410 (z. B. ein geografisches Datum), um eine Position zu berechnen. Beispielsweise verwendet das Lokalisierungsmodul 408 Daten von einem GNSS-Empfänger und geografische Daten, um einen Längengrad und Breitengrad des AV zu berechnen. Bei einer Ausführungsform beinhalten Daten, die durch das Lokalisierungsmodul 408 verwendet werden, hochpräzise Karten der geometrischen Eigenschaften der Straße, Karten, die Straßennetzwerkkonnektivitätseigenschaften beschreiben, Karten, die physische Eigenschaften der Straße beschreiben (wie etwa Verkehrsgeschwindigkeit, Verkehrsvolumen, die Anzahl von Fahrzeug- und Fahrradverkehrsspuren, Fahrbahnbreite, Fahrbahnverkehrsrichtung oder Fahrbahnmarkierungsarten 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.
  • Das Steuermodul 406 empfängt die Daten, die die Trajektorie 414 repräsentieren, und die Daten, die die AV-Position 418 repräsentieren, und betreibt die Steuerfunktionen 420a-c (z. B. Lenken, Gasgeben, Bremsen, Zündung) des AV auf eine Weise, die bewirkt, dass das AV 100 die Trajektorie 414 zu dem Bestimmungsort 412 fährt. Falls die Trajektorie 414 beispielsweise ein Linksabbiegen beinhaltet, wird das Steuermodul 406 die Steuerfunktionen 420a-c auf eine derartige Weise betreiben, dass der Lenkwinkel der Lenkfunktion veranlasst, dass das AV 100 nach links abbiegt, und das Gasgeben und das Bremsen werden veranlassen, dass das AV 100 anhält und auf passierende Fußgänger und Fahrzeuge wartet, bevor das Abbiegen vorgenommen wird.
  • Sampling von Fahrszenarien
  • 5 ist ein beispielhaftes System 500 zum Sampling von Fahrszenarien gemäß einer oder mehreren Ausführungsformen. Das System 500 beinhaltet einen Seed-Generator 501, einen Pseudozufallszahlgenerator (PRNG) 502, eine Szenarien-Datenbank 503, einen Szenarieninitialisierer 504, einen Simulator 505, eine Benutzeroberfläche (UI) 506 und eine Szenarien-Sample-Datenbank 507.
  • In einer Ausführungsform kann die UI 506 eine grafische Benutzeroberfläche (GUI), Text- oder Sprachschnittstelle sein, die dem Benutzer ermöglicht, ein Fahrszenario aus mehreren in der Szenarien-Datenbank 503 gespeicherten Fahrszenarien auszuwählen. Der Benutzer kann auch die UI 506, einen oder mehrere Parameter aus der Szenarien-Datenbank 503 auszuwählen, um physische und mentale Zustände eines oder mehrerer Objekte in dem ausgewählten Fahrszenario zufällig zu initialisieren. Die Benutzereingabe wird durch den Szenarieninitialisierer 504 empfangen, der die physischen und mentalen Zustände des einen oder der mehreren durch den Simulator 505 zu simulierenden Objekte initialisiert. In einer Ausführungsform ermöglicht die UI 506 einem Benutzer, ein Szenario durch Spezifizieren von physischen und mentalen Zuständen eines oder mehrerer Objekte und eines Straßennetzwerks (Karte) zu erzeugen, selbst wenn die exakten Parameter nicht in der Datenbank 503 gespeichert sind.
  • Wie hierin verwendet, beinhaltet der „physische Zustand“ eines Objekts zum Beispiel die Position, die Bahngeschwindigkeit, die Beschleunigung, die Richtung oder Orientierung und den Objekttyp (z. B. Fahrzeug, Fußgänger, Fahrradfahrer) des Objekts. Der „mentale Zustand“ eines Objekts bezieht sich auf den mentalen Zustand eines virtuellen Fahrers eines Fahrzeugs, Motorrads, Fahrrads oder eines beliebigen anderen Fahrzeugs, oder eines Fußgängers. Einige Beispiele für mentale Parameter beinhalten unter anderem: eine Beschleunigungspräferenz des Fahrers (z. B. Präferenz zum schnellen Beschleunigen aus einer Stillstandposition), eine Präferenz zum Beibehalten eines speziellen Abstands von anderen Objekten (z. B. Präferenz, zu dicht aufzufahren), Präferenz für eine spezielle Route, ein Ziel des Fahrers (z. B. schnell an einem Bestimmungsort ankommen), eine Tendenz, Blink- oder Griffsignale zu verwenden, und einen Höflichkeitsfaktor (z. B. einen Gewichtungsfaktor), der bestimmt, wie sehr der virtuelle Fahrer willens ist, anderen Fahrern durch beispielsweise Annehmen eines äußerst aggressiven oder äußerst passiven Fahrstils in dem Fahrszenario Unannehmlichkeiten zu bereiten.
  • In einer Ausführungsform kann der Benutzer unter Verwendung der UI 506 eine statistische Verteilung (z. B. eine Normalverteilung) auswählen, die durch den PRNG 502 zum Erzeugen von Pseudozufallszahlen gemäß der ausgewählten Verteilung zu verwenden ist. In einer Ausführungsform kann die statistische Verteilung eine Verbindungswahrscheinlichkeitsverteilung über zwei oder mehr Szenarienparameter sein. Die Zufallszahlen werden verwendet, um in der Szenarien-Datenbank 503 gespeicherte Szenarienparameter zufällig zu erzeugen oder zuzuweisen. Beispielsweise kann eine Zufallszahl eine reale Zahl in einem spezifizierten Bereich sein, und der Parameter kann die Beschleunigung eines Objekts (z. B. eines Fahrzeugs) sein. In diesem Beispiel wird die Zufallszahl verwendet, um eine Anfangsbeschleunigung aus einem Satz von Anfangsbeschleunigungen, die in der Szenarien-Datenbank 504 gespeichert sind, zufällig auszuwählen. In einer Ausführungsform kann ein echter Zufallszahlgenerator (z. B. Hardware-RNG) verwendet werden, dem durch ein echt zufälliges Seed, das zum Beispiel durch Hardware oder physische Phänomene bereitgestellt wird, ein Startwert zugeteilt wird. Die gleichen oder unterschiedliche Zufallszahlen können zum Initialisieren von physischen und mentalen Zuständen verwendet werden.
  • Nach der Initialisierung simuliert der Simulator 505 die Bewegung der Objekte in einer Karte basierend auf den initialisierten physischen Zuständen und mentalen Zuständen, um Objektwege zu erzeugen. Beispielsweise kann der Simulator 505 dynamische Modelle und Bewegungsgleichungen implementieren, um die Objektwege für einen durch den Benutzer über beispielsweise die UI 506 spezifizierten Simulationszeitraum zu erzeugen. Der Benutzer kann auch eine Sample-Datenrate über die UI 506 auswählen. Beispielsweise kann der Benutzer wünschen, die Objektwege mit 1 Hz zu samplen. Die Objektwege werden durch den Simulator 505 ausgegeben und in der Szenarien-Sample-Datenbank 507 gespeichert. In einer Ausführungsform beinhaltet jedes gespeicherte Sample zumindest einen Zeitstempel und einen physischen Zustand (z. B. Position, Bahngeschwindigkeit und Beschleunigung) für jedes Objekt in dem Fahrszenario. Falls das Objekt einen mentalen Zustand aufweist, wird dieser auch mit dem Sample gespeichert. Der Benutzer kann Samples unter Verwendung der UI 506 ansehen und aus der Szenarien-Sample-Datenbank 507 auswählen.
  • In einer Ausführungsform bestimmt der Simulator 505, ob ein spezielles Fahrszenario ein „fehlgeschlagenes“ Fahrszenario ist. Beispiele für „fehlgeschlagene“ Szenarien beinhalten unter anderem: Szenarien, bei denen zwei oder mehr Objekte kollidieren, oder bei denen Beschleunigungs- oder Abbremsungswerte eines oder mehrerer der Objekte höher oder niedriger sind als ein oder mehrere spezifizierte Schwellenwerte (z. B. würde eine zu hohe Beschleunigung bewirken, dass die Kontrolle über das Fahrzeug verloren geht).
  • In einer Ausführungsform wird jedes Fahrszenario zeitlich nach vorne für eine spezifizierte Anzahl von Zeiteinheiten simuliert, bevor ein Sample zu der Szenarien-Sample-Datenbank 507 ausgegeben wird, um dem einen oder den mehreren Objekten zu ermöglichen, ihre jeweiligen Trajektorien ohne Fehlschlag zu durchfahren. In Abhängigkeit von ihren randomisierten Anfangszuständen können beispielsweise zwei oder mehr Objekte in den ersten paar Sekunden der Simulation kollidieren, wodurch ein fehlgeschlagenes Fahrszenario erzeugt wird. Indem zugelassen wird, dass die Simulation vor dem Sampling für einen spezifizierten Zeitraum (z. B. 2-3 Sekunden) abläuft, können diese fehlgeschlagenen Szenarien vermieden oder in der Anzahl reduziert werden.
  • In einer Ausführungsform halten die Objekte Regelwerke und/oder Verkehrsregeln ein (z. B. Anhalten an Stoppschildern und Ampeln, Fahren innerhalb der ausgeschriebenen Geschwindigkeitsbegrenzung).
  • In einer Ausführungsform simuliert der Simulator 505 beliebige gewünschte Fahrszenarien, einschließlich unter anderem Sensorausfallszenarien, ungünstige Witterungsbedingungen, ungünstige Straßenbedingungen, geringe oder hohe Objekt- oder Verkehrsdichte, Kommunikationsausfallszenarien. Die simulierten Fahrszenarien können für eine beliebige gewünschte Straßencharakteristik oder -bedingung gelten, einschließlich unter anderem: Kreuzungsszenarien, Spurwechselszenarien, Kollisionsvermeidungsszenarien usw. In einer Ausführungsform wird das Fahrszenario basierend auf einer spezifizierten Dichte von Objekten (z. B. Stadt gegenüber Land) und/oder einem spezifizierten Tag oder einer spezifizierten Tageszeit (z. B. zum Simulieren von Stoßzeitverkehr oder Vergleichen von Stadt- und Landstraßenverhalten) erzeugt.
  • In einer Ausführungsform sind für ein gegebenes Szenario die „physischen Zustände“ eines oder mehrerer Objekte festgelegt und werden die „mentalen Zustände“ virtueller Fahrer variiert, wie etwa beispielsweise Variieren der beabsichtigten Route, Höflichkeit, zeitlicher Abstand zu einem vorausfahrenden Fahrzeug usw.
  • 6 ist ein beispielhaftes System 600 zum Trainieren und Abstimmen eines maschinellen Lernmodells unter Verwendung gesampele Fahrszenarien, die durch das System 500 erzeugt werden, gemäß einer oder mehreren Ausführungsformen. Das System 600 beinhaltet die Szenarien-Sample-Datenbank 507, einen Datenteiler 601, eine Training-Datenbank 602a, eine Abstimmung-Datenbank 602b, ein maschinelles Lernmodell 603 (z. B. Bewegungsvorhersagemodell), ein Abstimmungsmodul 604 und eine AV-Protokoll-Datenbank 605.
  • In einer Ausführungsform werden die Szenarien-Samples in der Szenarien-Sample-Datenbank 507 in die Trainingsdaten 602a und die Abstimmungsdaten 602b geteilt. Im Trainingsmodus wird das maschinelle Lernmodell 603 mit den Trainingsdaten 602a trainiert. Das maschinelle Lernmodell 603 kann unter Verwendung überwachter, unüberwachter oder bestärkender Ansätze trainiert und/oder abgestimmt werden. Das maschinelle Lernmodell 603 beinhaltet unter anderem: künstliche neuronale Netzwerke, Entscheidungsbäume, Support-Vektor-Maschinen, Regressionsanalyse, Bayessche Netzwerke und genetische Algorithmen. In einer Ausführungsform wird das gesampelte Fahrszenario in ein Pseudobild eingebettet, wie etwa eine Vogelperspektive (BEV: Bird's Eye View), das zum Trainieren des maschinellen Lernmodells (z. B. Trainieren eines bildbasierten tiefen neuronalen Netzwerks) verwendet wird.
  • Im Abstimmungsmodus wird das maschinelle Lernmodell 603 unter Verwendung der Abstimmungsdaten 602b und/oder AV-Protokolldaten aus der Datenbank 605 abgestimmt. Das Abstimmungsmodul 604 stimmt das maschinelle Lernmodell 603 mittels iterativer Optimierung einer Verlustfunktion von durch das maschinelle Lernmodell 603 ausgegebenen Vorhersagen und Ground-Truth-Daten ab. Mittels iterativer Optimierung der Verlustfunktion erlernt das maschinelle Lernmodell 603 beispielsweise eine optimale Funktion, die zum Vorhersagen der mit neuen Eingaben assoziierten Ausgaben verwendet werden kann. Die optimale Funktion ermöglicht dem maschinellen Lernmodell, die Ausgabe für die Abstimmungsdaten 602b und/oder die AV-Protokolldaten korrekt zu bestimmen. In einer Ausführungsform ist das maschinelle Lernmodell 603 ein tiefes neuronales Netzwerk, und das Abstimmungsmodul 604 optimiert iterativ eine MSE(Mean Squared Error)-Verlustfunktion unter Verwendung eines stochastischen Gradientenabstiegs oder eines Adam-Optimierers, das/der aktualisierte Gewichte für das tiefe neuronale Netzwerk berechnet. Das trainierte maschinelle Lernmodell 603 wird gespeichert und später zur Inferenz für autonomes Fahren in der realen Welt verwendet, wie etwa Bewegungsvorhersage für Lokalisierungs- und/oder Planungs- und/oder Wahrnehmungs- und/oder Steueraufgaben.
  • Beispielhafte Prozesse
  • 7 ist ein Flussdiagramm eines Prozesses 700 zum Samplen von Fahrszenarien gemäß einer oder mehreren Ausführungsformen. Der Prozess 700 kann zum Beispiel unter Verwendung des mit Bezug auf 3 beschriebenen Computersystems implementiert werden.
  • Der Prozess 700 beginnt mit dem Zuweisen eines Satzes physischer Anfangszustände zu einem Satz von Objekten in einer Karte für einen Satz simulierter Fahrszenarien, wobei der Satz physischer Anfangszustände gemäß einer oder mehreren Ausgaben eines Zufallszahlgenerators zugewiesen wird (701). Beispielsweise kann ein Zufalls- oder Pseudozufallszahlgenerator mit einem Seed initialisiert werden und dazu ausgelegt sein, Zufalls- oder Pseudozufallszahlen zu erzeugen, die zum Erzeugen oder Zuweisen von Initialisierungsparametern für die physischen und mentalen Zustände des einen oder der mehreren Objekte verwendet werden können. In einer Ausführungsform sind für ein gegebenes Szenario die „physischen Zustände“ eines oder mehrerer Objekte festgelegt und werden die „mentalen Zustände“ virtueller Fahrer variiert, wie etwa beispielsweise Variieren der beabsichtigten Route, Höflichkeit, zeitlicher Abstand zu einem vorausfahrenden Fahrzeug usw.
  • Der Prozess 700 fährt mit dem Erzeugen der simulierten Fahrszenarien unter Verwendung der initialisierten physischen und mentalen Zustände des einen oder der mehreren Objekte fort (702). Beispielsweise können dynamische Modelle und Bewegungsgleichungen zum Bewegen des einen oder der mehreren Objekte in einer Karte, angefangen von ihren zufällig initialisierten physischen Zuständen, verwendet werden.
  • Der Prozess 700 fährt mit dem Auswählen von Samples des simulierten Fahrszenarios fort (703). Beispielsweise kann der Benutzer Fahrszenarien-Samples in der Szenarien-Sample-Datenbank 507 auswählen, wie mit Bezug auf 6 beschrieben, und auch eine Datenrate für die simulierte Datenausgabe spezifizieren.
  • Der Prozess 700 fährt mit dem Trainieren und/oder Abstimmen eines maschinellen Lernmodells unter Verwendung der ausgewählten Samples fort (704). Beispielsweise kann ein tiefes neuronales Netzwerk unter Verwendung der durch den Benutzer über eine Benutzeroberfläche ausgewählten Fahrszenarien-Samples trainiert werden, wie mit Bezug auf 6 beschrieben.
  • Der Prozess 700 fährt mit dem Betreiben eines Fahrzeugs in einer Umgebung unter Verwendung des trainierten und/oder abgestimmten maschinellen Lernmodells fort (705). Beispielsweise kann das trainierte tiefe neuronale Netzwerk durch ein Wahrnehmungsmodul eines AV zum Inferieren der Bewegung eines oder mehrerer Objekte verwendet werden.
  • In der vorstehenden Beschreibung wurden Ausführungsformen der Erfindung mit Bezug auf zahlreiche spezifische Einzelheiten beschrieben, die von Implementierung zu Implementierung variieren können. Die Beschreibung und die Zeichnungen sind dementsprechend veranschaulichend anstatt beschränkend anzusehen. Das alleinige und ausschließliche Kennzeichen des Schutzumfangs der Erfindung, und was die Anmelder als den Schutzumfang der Erfindung beabsichtigen, ist der wörtliche und äquivalente Umfang des Satzes von Ansprüchen, die aus dieser Anmeldung hervorgehen, in der spezifischen Form, in der derartige Ansprüche hervorgehen, einschließlich einer jeglichen anschließenden Korrektur. Jegliche hierin ausdrücklich dargelegten Definitionen für Begriffe, die in derartigen Ansprüchen enthalten sind, sollen die Bedeutung derartiger Begriffe bestimmen, wie in den Ansprüchen verwendet. Zusätzlich kann, wenn der Begriff „ferner beinhaltend“ in der vorstehenden Beschreibung oder in den folgenden Ansprüchen verwendet wird, das, was diesem Ausdruck folgt, ein zusätzlicher Schritt oder eine zusätzliche Entität oder ein Teilschritt/eine Teilentität eines zuvor vorgetragenen Schritts oder einer zuvor vorgetragenen Entität sein.

Claims (20)

  1. Verfahren, umfassend: Zuweisen, unter Verwendung mindestens eines Prozessors, eines Satzes physischer Anfangszustände zu einem Satz von Objekten in einer Karte für einen Satz simulierter Fahrszenarien, wobei der Satz physischer Anfangszustände gemäß einer oder mehreren Ausgaben eines Zufallszahlgenerators zugewiesen wird; Erzeugen, unter Verwendung des mindestens einen Prozessors, des Satzes simulierter Fahrszenarien in der Karte unter Verwendung der physischen Anfangszustände der Objekte in dem Satz von Objekten; Auswählen, unter Verwendung des mindestens einen Prozessors, von Samples der simulierten Fahrszenarien; Trainieren, unter Verwendung des mindestens einen Prozessors, eines maschinellen Lernmodells unter Verwendung der ausgewählten Samples; und Betreiben, unter Verwendung einer Steuerschaltung, eines Fahrzeugs in einer Umgebung unter Verwendung des trainierten maschinellen Lernmodells.
  2. Verfahren nach Anspruch 1, wobei mindestens ein Objekt in dem Satz von Objekten ein virtuelles Fahrzeug ist, wobei das Verfahren ferner Folgendes umfasst: Zuweisen, unter Verwendung des mindestens einen Prozessors, eines mentalen Zustands eines virtuellen Fahrers des virtuellen Fahrzeugs; und Simulieren des Fahrszenarios unter Verwendung der Karte, des physischen Anfangszustands jedes Objekts und des mentalen Zustands des virtuellen Fahrers des virtuellen Fahrzeugs.
  3. Verfahren nach Anspruch 2, wobei der mentale Zustand des virtuellen Fahrers eine Beschleunigungspräferenz des virtuellen Fahrers beinhaltet.
  4. Verfahren nach Anspruch 2, wobei der mentale Zustand des virtuellen Fahrers eine Präferenz zum Beibehalten eines Abstands zwischen dem anderen virtuellen Fahrzeug und mindestens einem anderen Objekt in dem Satz von Objekten beinhaltet.
  5. Verfahren nach Anspruch 2, wobei der mentale Zustand des virtuellen Fahrers eine Präferenz für eine spezielle Route beinhaltet.
  6. Verfahren nach Anspruch 2, wobei der mentale Zustand des virtuellen Fahrers ein Ziel des virtuellen Fahrers beinhaltet.
  7. Verfahren nach Anspruch 1, wobei der mentale Zustand des virtuellen Fahrers einen Höflichkeitsfaktor beinhaltet, der bestimmt, wie sehr der virtuelle Fahrer willens ist, anderen virtuellen Fahrern anderer virtueller Fahrzeuge in dem Fahrszenario Unannehmlichkeiten zu bereiten.
  8. Verfahren nach Anspruch 1, wobei die physischen Anfangszustände der Objekte in dem Satz von Objekten Anfangspositionen und Anfangsbeschleunigungen beinhalten, und die Anfangspositionen und die Anfangsbeschleunigungen gemäß unterschiedlichen Zufallszahlen zugewiesen werden, die durch den Zufallszahlgenerator ausgegeben werden.
  9. Verfahren nach Anspruch 1, ferner umfassend: Bestimmen, unter Verwendung des mindestens einen Prozessors, eines oder mehrerer fehlgeschlagener Szenarien in dem Satz von Fahrszenarien; und Ausschließen, unter Verwendung des mindestens einen Prozessors, des einen oder der mehreren fehlgeschlagenen Fahrszenarien vom Training des maschinellen Lernmodells.
  10. Verfahren nach Anspruch 8, wobei ein fehlgeschlagenes Fahrszenario ein Fahrszenario beinhaltet, bei dem eine Kollision zwischen zwei oder mehr Objekten in dem Satz von Objekten auftritt.
  11. Verfahren nach Anspruch 8, wobei ein fehlgeschlagenes Fahrszenario ein Fahrszenario beinhaltet, bei dem Beschleunigungs- oder Abbremsungswerte des einen oder der mehreren Objekte in dem Satz von Objekten höher oder niedriger sind als ein oder mehrere spezifizierte Schwellenwerte.
  12. Verfahren nach Anspruch 1, wobei das Erzeugen der simulierten Fahrszenarien ferner Folgendes umfasst: Vorhersagen, unter Verwendung des mindestens einen Prozessors, jedes simulierten Fahrszenarios zeitlich nach vorne für einen spezifizierten Zeitraum, bevor das Fahrszenarien-Sample ausgewählt wird.
  13. Verfahren nach Anspruch 1, wobei die Fahrszenarien Ampeln oder Verkehrszeichen beinhalten, die das eine oder die mehreren Objekte in dem Satz von Objekten einhalten.
  14. Verfahren nach Anspruch 1, wobei das maschinelle Lernmodell ein tiefes neuronales Netzwerk zur Objektbewegungsvorhersage ist.
  15. Verfahren nach Anspruch 1, wobei das eine oder die mehreren Objekte in dem Satz von Objekten mindestens einen Fußgänger beinhalten.
  16. Verfahren nach Anspruch 1, wobei jedes gesampelt Fahrszenario mehrere Zeitstempel und eine assoziierte Position, Bahngeschwindigkeit oder Beschleunigung jedes Objekts in dem Satz von Objekten beinhaltet.
  17. Verfahren nach Anspruch 1, ferner umfassend: Einbetten, unter Verwendung des mindestens einen Prozessors, des gesampelten Szenarios in ein Pseudobild; und Trainieren, unter Verwendung des mindestens einen Prozessors, des maschinellen Lernmodells unter Verwendung des Pseudobildes.
  18. Verfahren nach Anspruch 1, ferner umfassend: Auswählen, unter Verwendung des mindestens einen Prozessors, eines eindeutigen Seeds aus einer statistischen Verteilung; Initialisieren, unter Verwendung des mindestens einen Prozessors, des Zufallszahlgenerators mit dem eindeutigen Seed.
  19. Verfahren nach Anspruch 18, wobei die statistische Verteilung eine Verbindungsverteilung über das Fahrszenario ist.
  20. Verfahren nach Anspruch 1, wobei das Fahrszenario basierend auf einer spezifizierten Dichte von Objekten in dem Satz von Objekten erzeugt wird.
DE102020128153.6A 2020-08-24 2020-10-27 Sampling von fahrszenarien zum trainieren/abstimmen maschineller lernmodelle für fahrzeuge Pending DE102020128153A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/001,616 US11938957B2 (en) 2020-08-24 2020-08-24 Driving scenario sampling for training/tuning machine learning models for vehicles
US17/001,616 2020-08-24

Publications (1)

Publication Number Publication Date
DE102020128153A1 true DE102020128153A1 (de) 2022-02-24

Family

ID=73223842

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020128153.6A Pending DE102020128153A1 (de) 2020-08-24 2020-10-27 Sampling von fahrszenarien zum trainieren/abstimmen maschineller lernmodelle für fahrzeuge

Country Status (5)

Country Link
US (2) US11938957B2 (de)
KR (2) KR102523313B1 (de)
CN (1) CN114091680A (de)
DE (1) DE102020128153A1 (de)
GB (2) GB202308899D0 (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11938957B2 (en) 2020-08-24 2024-03-26 Motional Ad Llc Driving scenario sampling for training/tuning machine learning models for vehicles
US11731652B2 (en) * 2020-12-15 2023-08-22 Woven Planet North America, Inc. Systems and methods for reactive agent simulation
US20220289217A1 (en) * 2021-03-10 2022-09-15 Ohio State Innovation Foundation Vehicle-in-virtual-environment (vve) methods and systems for autonomous driving system
US11810225B2 (en) * 2021-03-30 2023-11-07 Zoox, Inc. Top-down scene generation
US11858514B2 (en) 2021-03-30 2024-01-02 Zoox, Inc. Top-down scene discrimination
US11960292B2 (en) 2021-07-28 2024-04-16 Argo AI, LLC Method and system for developing autonomous vehicle training simulations
US20230070734A1 (en) * 2021-09-07 2023-03-09 Argo AI, LLC Method and system for configuring variations in autonomous vehicle training simulations
US20230046149A1 (en) * 2021-08-10 2023-02-16 Baidu Usa Llc Open space planner profiling tool for autonomous vehicle
US11760368B2 (en) * 2021-10-19 2023-09-19 Cyngn, Inc. System and method of same-loop adaptive simulation for autonomous driving

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102006044086A1 (de) 2006-09-20 2008-04-10 Audi Ag System und Verfahren zur Simulation von Verkehrssituationen, insbesondere unfallkritischen Gefahrensituationen, sowie ein Fahrsimulator
US20190205667A1 (en) 2017-12-29 2019-07-04 Here Global B.V. Method, apparatus, and system for generating synthetic image data for machine learning

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060274659A1 (en) * 2005-05-06 2006-12-07 Battelle Memorial Institute Method and system for generating synthetic digital network traffic
JP2014174447A (ja) 2013-03-12 2014-09-22 Japan Automobile Research Institute 車両用危険場面再現装置、およびその使用方法
US9434389B2 (en) 2013-11-18 2016-09-06 Mitsubishi Electric Research Laboratories, Inc. Actions prediction for hypothetical driving conditions
WO2018002910A1 (en) * 2016-06-28 2018-01-04 Cognata Ltd. Realistic 3d virtual world creation and simulation for training automated driving systems
US11328219B2 (en) 2018-04-12 2022-05-10 Baidu Usa Llc System and method for training a machine learning model deployed on a simulation platform
US11572099B2 (en) 2018-04-27 2023-02-07 Honda Motor Co., Ltd. Merge behavior systems and methods for merging vehicles
US20200033869A1 (en) * 2018-07-27 2020-01-30 GM Global Technology Operations LLC Systems, methods and controllers that implement autonomous driver agents and a policy server for serving policies to autonomous driver agents for controlling an autonomous vehicle
EP3620880A1 (de) 2018-09-04 2020-03-11 Autonomous Intelligent Driving GmbH Verfahren und vorrichtung zum ableiten einer fahrstrategie für ein selbstfahrendes fahrzeug und eine elektronische steuereinheit zum ausführen der fahrstrategie und ein selbstfahrendes fahrzeug mit der elektronischen steuereinheit
US11521009B2 (en) 2018-09-04 2022-12-06 Luminar, Llc Automatically generating training data for a lidar using simulated vehicles in virtual space
CN113168176A (zh) * 2018-10-17 2021-07-23 柯尼亚塔有限公司 产生用于训练自动驾驶的实际模拟数据的系统及方法
US11656620B2 (en) 2018-12-31 2023-05-23 Luminar, Llc Generating environmental parameters based on sensor data using machine learning
US10915109B2 (en) 2019-01-15 2021-02-09 GM Global Technology Operations LLC Control of autonomous vehicle based on pre-learned passenger and environment aware driving style profile
JP7213704B2 (ja) 2019-01-31 2023-01-27 株式会社日立ソリューションズ 自動運転プログラム評価システム、及び自動運転プログラム評価方法
US11554785B2 (en) * 2019-05-07 2023-01-17 Foresight Ai Inc. Driving scenario machine learning network and driving environment simulation
US20200406894A1 (en) * 2019-06-28 2020-12-31 Zoox, Inc. System and method for determining a target vehicle speed
US20210056432A1 (en) 2019-08-21 2021-02-25 Dspace Digital Signal Processing And Control Engineering Gmbh Method for training an artificial neural generator network, method for training an artificial neural discriminator network, and test unit
US11708093B2 (en) * 2020-05-08 2023-07-25 Zoox, Inc. Trajectories with intent
WO2021240528A1 (en) 2020-05-27 2021-12-02 Cognata Ltd. Generating simulated edge-case driving scenarios
US11938957B2 (en) 2020-08-24 2024-03-26 Motional Ad Llc Driving scenario sampling for training/tuning machine learning models for vehicles

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102006044086A1 (de) 2006-09-20 2008-04-10 Audi Ag System und Verfahren zur Simulation von Verkehrssituationen, insbesondere unfallkritischen Gefahrensituationen, sowie ein Fahrsimulator
US20190205667A1 (en) 2017-12-29 2019-07-04 Here Global B.V. Method, apparatus, and system for generating synthetic image data for machine learning

Also Published As

Publication number Publication date
GB202015579D0 (en) 2020-11-18
GB2598802B (en) 2023-08-02
CN114091680A (zh) 2022-02-25
GB2598802A (en) 2022-03-16
KR102523313B1 (ko) 2023-04-18
US20220055641A1 (en) 2022-02-24
US11938957B2 (en) 2024-03-26
KR20220025626A (ko) 2022-03-03
US11364927B2 (en) 2022-06-21
KR20230054802A (ko) 2023-04-25
GB202308899D0 (en) 2023-07-26
US20220055640A1 (en) 2022-02-24

Similar Documents

Publication Publication Date Title
DE102020128153A1 (de) Sampling von fahrszenarien zum trainieren/abstimmen maschineller lernmodelle für fahrzeuge
DE102020111682A1 (de) Systeme und verfahren zum implementieren einer autonomen fahrzeugreaktion auf ein sensorversagen
DE102020111938A1 (de) Systeme und verfahren zum planen und aktualisieren einer fahrzeugtrajektorie
DE102020133744A1 (de) Vordergrundextraktion unter verwendung von flächenanpassung
DE102020129456A1 (de) Trajektorienvorhersage aus einer vorberechneten oder dynamisch generierten bank von trajektorien
DE102021108068A1 (de) Schätzung von bodenebenen unter verwendung eines semantischen lidar-netzes
DE102020128156A1 (de) Bewerten von trajektorien autonomer fahrzeuge unter verwendung angemessener mengendaten
DE112019006128T5 (de) Systeme und verfahren zum validieren von sensorkalibrierung
DE102020101140A1 (de) Verfahren und system zum bestimmen einer aktion eines autonomen fahrzeugs (av) basierend auf fahrzeug- und edge-sensordaten
DE112020002695T5 (de) Autonomer fahrzeugbetrieb mittels linearer temporaler logik
DE102021133742A1 (de) Planung einer trajektorie eines autonomen fahrzeugs mit dynamischem zustand
DE102021211781A1 (de) Fahrzeugbetrieb unter verwendung von verhaltensregelprüfungen
DE102022100213A1 (de) Auf Maschinenlernen basierendes Framework für die Annotation befahrbarer Oberflächen
DE102020120873A1 (de) Lokalisierung basierend auf vordefinierten merkmalen der umgebung
DE102020128155A1 (de) Bedingte bewegungsvorhersagen
DE102021132722A1 (de) Auswählen von testszenarien zum bewerten der leistung autonomer fahrzeuge
DE102020128154A1 (de) Trajektorieplanung für fahrzeuge unter verwendung von routeninformationen
DE102021132850A1 (de) Homotopiebasierter planer für autonome fahrzeuge
DE102021110157A1 (de) Av-wegplanung mit kalibrierungsinformationen
DE102021109466A1 (de) Trajektorieerzeugung unter verwendung eines strassennetzmodells
DE102021132851A1 (de) Fahrzeugbetrieb unter verwendung von manövererzeugung
DE102021118316A1 (de) Monokulare 3d-objekterkennung aus bildsemantiknetzwerk
DE102021132194A1 (de) Fahrzeugpfadplanung
DE102021132737A1 (de) Manöverrealisator auf abtastbasis
DE102021133739A1 (de) Steuern eines autonomen fahrzeugs unter verwendung einer näheregel

Legal Events

Date Code Title Description
R163 Identified publications notified