DE102020103505A1 - Kognitive prozessor vorsteuerung- und rückkopplung integration in autonome systeme - Google Patents

Kognitive prozessor vorsteuerung- und rückkopplung integration in autonome systeme Download PDF

Info

Publication number
DE102020103505A1
DE102020103505A1 DE102020103505.5A DE102020103505A DE102020103505A1 DE 102020103505 A1 DE102020103505 A1 DE 102020103505A1 DE 102020103505 A DE102020103505 A DE 102020103505A DE 102020103505 A1 DE102020103505 A1 DE 102020103505A1
Authority
DE
Germany
Prior art keywords
hypothesis
trajectory
autonomous vehicle
decision
resolver
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.)
Withdrawn
Application number
DE102020103505.5A
Other languages
English (en)
Inventor
Rajan Bhattacharyya
Chong Ding
Vincent De Sapio
Michael J. Daily
Kyungnam Kim
Gavin D. Holland
Alexander S. Graber-Tilton
Kevin R. Martin
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.)
GM Global Technology Operations LLC
Original Assignee
GM Global Technology Operations 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 GM Global Technology Operations LLC filed Critical GM Global Technology Operations LLC
Publication of DE102020103505A1 publication Critical patent/DE102020103505A1/de
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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/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
    • G05D1/0217Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with energy consumption, time reduction or distance reduction criteria
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • B60W30/095Predicting travel path or likelihood of collision
    • B60W30/0956Predicting travel path or likelihood of collision the prediction being responsive to traffic or environmental parameters
    • 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/0097Predicting future conditions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0027Planning or execution of driving tasks using trajectory prediction for other traffic participants
    • GPHYSICS
    • 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/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
    • 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/0008Feedback, closed loop systems or details of feedback error signal
    • 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/0012Feedforward or open loop systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Human Computer Interaction (AREA)
  • Medical Informatics (AREA)
  • Game Theory and Decision Science (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • Traffic Control Systems (AREA)

Abstract

Ein autonomes Fahrzeug, ein kognitives System zum Betreiben eines autonomen Fahrzeugs und ein Verfahren zum Betreiben eines autonomen Fahrzeugs. Das kognitive System umfasst ein oder mehrere Hypothesengeber-Module, einen Hypothesen-Resolver, ein oder mehrere Entscheidungs-Module und einen Entscheidungs-Resolver. Daten, die mit einem Agenten in Verbindung stehen, werden am kognitiven System empfangen. Das mindestens eine Hypothesengeber-Modul erstellt eine Vielzahl von Hypothesen für eine Trajektorie des Agenten auf der Basis der empfangenen Daten. Der Hypothesen-Resolver wählt aus der Vielzahl der Hypothesen anhand eines Auswahlkriteriums eine einzige Hypothese für die Trajektorie des Agenten aus. Das mindestens eine Entscheidungs-Module erzeugen eine Vielzahl von Entscheidungen für eine Trajektorie des autonomen Fahrzeugs basierend auf der gewählten Hypothese für den Agenten. Der Entscheidungs-Resolver wählt aus der Vielzahl der Entscheidungen eine Trajektorie für das autonome Fahrzeug aus. Das autonome Fahrzeug wird basierend auf der gewählten Trajektorie betrieben.

Description

  • EINLEITUNG
  • Der Gegenstand der Offenbarung bezieht sich auf autonome Fahrzeuge und insbesondere auf einen kognitiven Prozessor und ein Verfahren zur Nutzung eines kognitiven Prozessors zur Berechnung von Trajektorieninformationen für die Navigation autonomer Fahrzeuge.
  • Autonome Fahrzeuge sind dazu bestimmt, einen Fahrgast von einem Ort zum anderen zu befördern, ohne oder mit minimaler Beteiligung des Fahrgastes. Solche Fahrzeuge erfordern die Fähigkeit, Kenntnisse über Agenten in ihrer Umgebung und deren mögliche Bewegungen zu erhalten und daraus eine Trajektorie für das autonome Fahrzeug zu berechnen. Bei ausreichendem Datenangebot kann das Fahrzeug mit verschiedenen Berechnungsmethoden navigiert werden. Dementsprechend ist es wünschenswert, ein System bereitzustellen, das eine intelligente Auswahl der Trajektorie für das autonome Fahrzeug basierend auf der Anzahl der möglichen Flugbahnen der Agenten in der Umgebung treffen kann.
  • BESCHREIBUNG
  • In einer beispielhaften Ausführungsform wird ein Verfahren zum Betreiben eines autonomen Fahrzeugs offengelegt.
  • Daten, die sich auf einen Agenten beziehen, werden bei einem Prozessor eines kognitiven Systems empfangen. Ein oder mehrere Hypothesen-Aufsteller-Module des kognitiven Systems erstellen eine Vielzahl von Hypothesen für eine Trajektorie des Agenten basierend auf den empfangenen Daten. Ein Hypothesen-Resolver des kognitiven Systems wählt eine einzelne Hypothese für die Trajektorie des Agenten aus der Vielzahl der Hypothesen basierend auf einem Auswahlkriterium aus. Ein oder mehrere Entscheidungs-Module des kognitiven Systems erzeugen eine Vielzahl von Entscheidungen für eine Trajektorie des autonomen Fahrzeugs basierend auf der gewählten Hypothese für den Agenten. Ein Entscheidungs-Resolver des kognitiven Systems wählt aus der Vielzahl der Entscheidungen für die Trajektorie des autonomen Fahrzeugs eine Trajektorie für das autonome Fahrzeug aus. Das autonome Fahrzeug wird auf Basis der gewählten Trajektorie für das autonome Fahrzeug betrieben.
  • Zusätzlich zu einem oder mehreren der hierin beschriebenen Merkmale umfasst das Verfahren ferner die Prognose eines zukünftigen Zustands des autonomen Fahrzeugs an einer virtuellen Steuerung, der sich aus der Verfolgung der ausgewählten Trajektorie für das autonome Fahrzeug ergibt, wobei der zukünftige Zustand als Vorsteuerungs-Vorhersage an dem einen oder den mehreren Hypothesengeber-Modulen verwendet wird. Mindestens eines der ein oder mehreren Hypothesengeber-Modul(e), Hypothesen-Resolver, ein oder mehrere Entscheidungs-Module und Entscheidungs-Resolver sind modulare Komponenten des kognitiven Systems. Die Auswahl der einzelnen Hypothesen für die Trajektorie des Agenten beinhaltet weiterhin die Verschmelzung von mindestens zwei der Vielzahl von Hypothesen.
  • Die Auswahl der einzelnen Trajektorie für das autonome Fahrzeug umfasst ferner die Verschmelzung von mindestens zwei der mehreren Entscheidungen. Das Verfahren beinhaltet weiterhin die Verwendung einer Rückkopplungsschleife zur kontinuierlichen Aktualisierung mindestens eines der Hypothesenauflösungs-Parameter des Hypothesen-Resolvers und der Entscheidungsauflösungs-Parameter des Entscheidungs-Resolvers. Das Verfahren umfasst ferner die Modulation einer zugrundeliegenden Berechnung für die Vielzahl von Hypothesen und die Vielzahl von Entscheidungen, die auf Bewertung und Rückkopplung beruhen, an einem Modulator.
  • In einer weiteren beispielhaften Ausführungsform wird ein kognitives System zum Betreiben eines autonomen Fahrzeugs offenbart. Das kognitive System umfasst ein oder mehrere Hypothesengeber-Module, einen Hypothesen-Resolver, ein oder mehrere Entscheidungs-Module und einen Entscheidungs-Resolver. Das oder die Hypothesengeber-Modul(e) sind so eingerichtet, dass sie eine Vielzahl von Hypothesen für die Trajektorie eines Agenten basierend auf den empfangenen Daten erstellen. Der Hypothesen-Resolver ist so eingerichtet, dass er eine einzelne Hypothese für die Trajektorie des Agenten aus der Vielzahl der Hypothesen basierend auf einem Auswahlkriteriums auswählt. Das eine oder mehrere Entscheidungs-Module sind so eingerichtet, dass sie eine Vielzahl von Entscheidungen für eine Trajektorie des autonomen Fahrzeugs basierend auf der gewählten Hypothese für den Agenten treffen. Der Entscheidungs-Resolver ist so eingerichtet, dass er aus der Vielzahl der Entscheidungen für die Trajektorie des autonomen Fahrzeugs eine Trajektorie für das autonome Fahrzeug auswählt, wobei das autonome Fahrzeug basierend auf der ausgewählten Trajektorie betrieben wird.
  • Zusätzlich zu einem oder mehreren der hierin beschriebenen Merkmale enthält das System ferner eine virtuelle Steuerung, die so eingerichtet ist, dass sie einen zukünftigen Zustand des autonomen Fahrzeugs basierend auf der ausgewählten Trajektorie für das autonome Fahrzeug projiziert, wobei das eine oder die mehreren Hypothesengeber-Modul(e) den projizierten zukünftigen Zustand als Vorsteuerungs-Vorhersage verwendet (verwenden). Mindestens eines der ein oder mehreren Hypothesengeber-Modul(e), Hypothesen-Resolver, ein oder mehrere Entscheidungs-Module und Entscheidungs-Resolver sind modulare Komponenten des kognitiven Systems. Der Hypothesen-Resolver ist ferner so eingerichtet, dass er die einzelne Hypothese für die Trajektorie des Agenten auswählt, indem er mindestens zwei der mehreren Hypothesen miteinander verbindet. Der Entscheidungs-Resolver ist außerdem so eingerichtet, dass er die einzelne Trajektorie für das autonome Fahrzeug auswählt, indem er mindestens zwei der mehreren Entscheidungen zusammenführt. Der Hypothesen-Resolver aktualisiert die Hypothesenauflösungs-Parameter über eine Rückkopplungsschleife und/oder der Entscheidungs-Resolver aktualisiert die Entscheidungsauflösungs-Parameter über eine Rückkopplungsschleife. Das System enthält außerdem einen Modulator, der so eingerichtet ist, dass er eine zugrunde liegende Berechnung für die Vielzahl der Hypothesen und die Vielzahl der Entscheidungen, die auf der Bewertung und dem Feedback basieren, moduliert. Das System enthält außerdem ein Auswertemodul, das so eingerichtet ist, dass es Kontextinformationen für den Modulator generiert, um Änderungen der Prozessorparameter zu berechnen.
  • In einer weiteren beispielhaften Ausführungsform wird ein autonomes Fahrzeug enthüllt. Das autonome Vehikel enthält einen kognitiven Prozessor mit mindestens einem Hypothesen-Aufsteller, einem Hypothesen-Resolver, mindestens einem Entscheidungs-Modul und einem Entscheidungs-Resolver. Das mindestens eine Hypothesengeber-Modul ist so eingerichtet, dass eine Vielzahl von Hypothesen für die Trajektorie eines Agenten basierend auf der empfangenen Daten erstellt wird. Der Hypothesen-Resolver ist so eingerichtet, dass er eine einzelne Hypothese für die Trajektorie des Agenten aus der Vielzahl der Hypothesen basierend auf eines Auswahlkriteriums auswählt. Das mindestens eine Entscheidungs-Modul ist so eingerichtet, dass es eine Vielzahl von Entscheidungen für eine Trajektorie des autonomen Fahrzeugs basierend auf der gewählten Hypothese für den Agenten trifft. Der Entscheidungs-Resolver ist so eingerichtet, dass er aus der Vielzahl der Entscheidungen für die Trajektorie des autonomen Fahrzeugs eine Trajektorie für das autonome Fahrzeug auswählt, wobei das autonome Fahrzeug auf der Basis der ausgewählten Trajektorie betrieben wird.
  • Zusätzlich zu einem oder mehreren der hierin beschriebenen Merkmale enthält der kognitive Prozessor ferner eine virtuelle Steuerung, die so eingerichtet ist, dass sie einen zukünftigen Zustand des autonomen Fahrzeugs basierend auf der ausgewählten Trajektorie für das autonome Fahrzeug projiziert, wobei das eine oder die mehreren Hypothesengeber-Modul(e) den projizierten zukünftigen Zustand als Vorsteuerungs-Vorhersage verwendet (verwenden). Mindestens eines der ein oder mehreren Hypothesengeber-Modul(e), Hypothesen-Resolver, ein oder mehrere Entscheidungs-Module und Entscheidungs-Resolver sind modulare Komponenten des kognitiven Systems. Der Hypothesen-Resolver ist ferner so eingerichtet, dass er die einzelne Hypothese für die Trajektorie des Agenten auswählt, indem er mindestens zwei der mehreren Hypothesen miteinander verbindet. Der Entscheidungs-Resolver ist außerdem so eingerichtet, dass er die einzelne Trajektorie für das autonome Fahrzeug auswählt, indem er mindestens zwei der mehreren Entscheidungen zusammenführt.
  • Die oben genannten Merkmale und Vorteile sowie weitere Merkmale und Vorteile der Offenbarung ergeben sich aus der folgenden detaillierten Beschreibung in Verbindung mit den beigefügten Figuren.
  • Figurenliste
  • Weitere Merkmale, Vorteile und Details erscheinen nur beispielhaft in der folgenden Detailbeschreibung, wobei sich die Detailbeschreibung auf die Figuren bezieht, in denen:
    • 1 zeigt ein autonomes Fahrzeug mit einem zugehörigen Trajektorien-Planungssystem, das nach verschiedenen Ausführungsformen dargestellt ist;
    • 2 zeigt ein illustratives Steuerungssystem mit einem kognitiven Prozessor, der in ein autonomes Fahrzeug oder einen Fahrzeugsimulator integriert ist, und
    • 3 zeigt ein Flussdiagramm, das die Funktionsweise eines kognitiven Prozessors zur Bedienung eines autonomen Fahrzeugs veranschaulicht.
  • AUSFÜHRLICHE DARSTELLUNG
  • Die folgende Beschreibung hat lediglich beispielhaften Charakter und soll die vorliegende Offenbarung, ihre Anwendung oder ihren Gebrauch nicht einschränken. Es ist zu verstehen, dass in den Zeichnungen durchgehend entsprechende Bezugszeichen auf gleiche oder entsprechende Teile und Merkmale hinweisen. Der hier verwendete Begriff Modul bezieht sich auf Verarbeitungsschaltkreise, die einen anwendungsspezifischen integrierten Schaltkreis (ASIC), einen elektronischen Schaltkreis, einen Prozessor (gemeinsam genutzt, dediziert oder gruppiert) und einen Speicher, der ein oder mehrere Software- oder Firmwareprogramme ausführt, eine kombinierte Logikschaltung und/oder andere geeignete Komponenten, die die beschriebene Funktionalität bereitstellen, umfassen können.
  • Entsprechend einer beispielhaften Ausführungsform zeigt 1 ein autonomes Fahrzeug 10 mit einem zugehörigen Trajektorien-Planungssystem, das nach verschiedenen Ausführungsformen bei 100 dargestellt ist. In der Regel ermittelt das Trajektorien-Planungssystem 100 einen Trajektorienplan für das automatisierte Fahren des autonomen Fahrzeugs 10. Das autonome Fahrzeug 10 besteht in der Regel aus einem Fahrgestell 12, einer Karosserie 14, den Vorderrädern 16 und den Hinterrädern 18. Die Karosserie 14 ist auf dem Fahrgestell 12 angeordnet und umschließt im Wesentlichen Komponenten des autonomen Fahrzeugs 10. Die Karosserie 14 und das Fahrgestell 12 können gemeinsam einen Rahmen bilden. Die Räder 16 und 18 sind jeweils in der Nähe der jeweiligen Karosserieecke 14 mit dem Fahrgestell 12 drehgekoppelt.
  • In verschiedenen Ausprägungen ist das Trajektorien-Planungssystem 100 in das autonome Fahrzeug 10 integriert. Das autonome Fahrzeug 10 ist z.B. ein automatisch gesteuertes Fahrzeug zur Beförderung von Fahrgästen von einem Ort zum anderen. Das autonome Fahrzeug 10 ist in der abgebildeten Ausführungsform als PKW dargestellt, aber es sollte geschätzt werden, dass auch jedes andere Fahrzeug, einschließlich Motorräder, LKWs, Sport Utility Vehicles (SUVs), Freizeitfahrzeuge (RVs), etc. verwendet werden kann. Auf verschiedenen Ebenen kann ein autonomes Fahrzeug den Fahrer durch eine Reihe von Methoden unterstützen, wie z.B. durch Warnsignale, die auf bevorstehende Risikosituationen hinweisen, durch Indikatoren, die das Situationsbewusstsein des Fahrers durch die Vorhersage der Bewegung anderer Agenten, die vor möglichen Kollisionen warnen, erhöhen, usw. Das autonome Fahrzeug verfügt über verschiedene Ebenen des Eingriffs oder der Steuerung des Fahrzeugs durch die gekoppelte assistive Fahrzeugsteuerung bis hin zur vollen Kontrolle aller Fahrzeugfunktionen. Das autonome Fahrzeug 10 ist in einer beispielhaften Ausführungsform ein sogenanntes Level-Vier- oder Level-Fünf-Automatisierungssystem. Ein Level-Vier-Automatisierungssystem weist auf eine „hohe Automatisierung“ hin, d. h. auf die fahrmodusabhängige Ausführung aller Aspekte der dynamischen Fahraufgabe durch ein automatisiertes Fahrsystem, selbst wenn ein menschlicher Fahrer nicht angemessen auf eine Aufforderung zum Eingreifen reagiert. Ein Level-Fünf-Automatisierungssystem bedeutet „Vollautomatisierung“ und bezieht sich auf die Vollzeitleistung eines automatisierten Fahrsystems in allen Aspekten der dynamischen Fahraufgabe unter allen Fahrbahn- und Umgebungsbedingungen, die von einem menschlichen Fahrer bewältigt werden können.
  • Wie gezeigt, umfasst das autonome Fahrzeug 10 im Allgemeinen ein Antriebssystem 20, ein Getriebesystem 22, ein Lenksystem 24, ein Bremssystem 26, ein Sensorsystem 28, ein Aktuatorsystem 30, einen kognitiven Prozessor 32 und mindestens eine Steuerung 34. Das Antriebssystem 20 kann in verschiedenen Ausführungsformen einen Verbrennungsmotor, eine elektrische Maschine wie z.B. einen Fahrmotor und/oder einen Brennstoffzellenantrieb umfassen. Das Getriebesystem 22 ist so eingerichtet, dass es die Leistung vom Antriebssystem 20 auf die Fahrzeugräder 16 und 18 entsprechend wählbarer Geschwindigkeitsverhältnisse überträgt. Je nach Ausführung kann das Getriebesystem 22 ein Stufenautomatikgetriebe, ein stufenloses Getriebe oder ein anderes geeignetes Getriebe umfassen. Das Bremssystem 26 ist so eingerichtet, dass es die Fahrzeugräder 16 und 18 mit Bremsmoment versorgt. Das Bremssystem 26 kann in verschiedenen Ausführungsformen Reibungsbremsen, Seilzugbremsen, ein regeneratives Bremssystem, wie z. B. eine elektrische Maschine, und/oder andere geeignete Bremssysteme umfassen. Das Lenksystem 24 beeinflusst eine Stellung der Fahrzeugräder 16 und 18. Obwohl zur Veranschaulichung ein Lenkrad dargestellt wird, kann es sein, dass das Lenksystem 24 in einigen Ausführungsformen, die im Rahmen dieser Mitteilung in Betracht gezogen werden, kein Lenkrad enthält.
  • Das Sensorsystem 28 umfasst eine oder mehrere Sensoreinrichtungen 40a-40n, die die beobachtbaren Bedingungen der Außenumgebung und/oder der Innenumgebung des autonomen Fahrzeugs erfassen 10. Die Sensoren 40a-40n können unter anderem Radare, Lidare, globale Positionierungssysteme, optische Kameras, Wärmebildkameras, Ultraschallsensoren und/oder andere Sensoren umfassen. Die Sensoren 40a-40n erhalten Messungen oder Daten zu verschiedenen Objekten oder Agenten 50 in der Fahrzeugumgebung. Solche Agenten 50 können, sind aber nicht beschränkt auf andere Fahrzeuge, Fußgänger, Fahrräder, Motorräder, etc. sein. und auch nicht bewegte Objekte. Die Sensoren 40a-40n können auch Verkehrsdaten, wie z.B. Informationen über Ampeln und Schilder, etc. erfassen.
  • Das Aktuatorsystem 30 umfasst eine oder mehrere Aktuatorvorrichtungen 42a-42n, die ein oder mehrere Fahrzeugmerkmale wie z. B. das Antriebssystem 20, das Getriebesystem 22, das Lenksystem 24 und das Bremssystem 26 steuern, aber nicht darauf beschränkt sind. In verschiedenen Ausführungsformen können die Fahrzeugmerkmale darüber hinaus Innen- und/oder Außenmerkmale des Fahrzeugs umfassen, wie z. B. Türen, Kofferraum und Kabinenmerkmale wie Belüftung, Musik, Beleuchtung usw. (nicht gekennzeichnet).
  • Die Steuerung 34 enthält mindestens einen Prozessor 44 und ein computerlesbares Speichergerät oder Medium 46. Der Prozessor 44 kann ein beliebiger kundenspezifischer oder handelsüblicher Prozessor, eine Zentraleinheit (CPU), eine Graphikverarbeitungseinheit (GPU), ein Hilfsprozessor unter mehreren der Steuerung 34 zugeordneten Prozessoren, ein Mikroprozessor auf Halbleiterbasis (in Form eines Mikrochips oder Chipsatzes), ein Makroprozessor, eine beliebige Kombination davon oder allgemein eine beliebige Vorrichtung zur Ausführung von Befehlen sein. Das computerlesbare Speichergerät oder der Datenträger 46 kann z. B. flüchtige und nichtflüchtige Speicherung in einem Nur-Lese-Speicher (ROM), einem Direktzugriffsspeicher (RAM) und einem Keep-Alive-Speicher (KAM) umfassen. KAM ist ein persistenter oder nichtflüchtiger Speicher, der zur Speicherung verschiedener Betriebsvariablen bei ausgeschaltetem Prozessor 44 verwendet werden kann. Das computerlesbare Speichermedium oder die computerlesbaren Speichermedien 46 können unter Verwendung einer beliebigen Anzahl bekannter Speichervorrichtungen wie PROMs (programmierbarer Festwertspeicher), EPROMs (elektrisches PROM), EEPROMs (elektrisch löschbares PROM), Flash-Speicher oder anderer elektrischer, magnetischer, optischer oder kombinierter Speichervorrichtungen zur Speicherung von Daten, von denen einige ausführbare Befehle darstellen, die von der Steuerung 34 zur Steuerung des autonomen Fahrzeugs 10 verwendet werden, implementiert werden.
  • Die Anweisungen können ein oder mehrere separate Programme enthalten, von denen jedes eine geordnete Auflistung ausführbarer Anweisungen zur Implementierung logischer Funktionen enthält. Die Befehle, wenn sie vom Prozessor 44 ausgeführt werden, empfangen und verarbeiten Signale vom Sensorsystem 28, führen Logik, Berechnungen, Methoden und/oder Algorithmen zur automatischen Steuerung der Komponenten des autonomen Fahrzeugs 10 aus und erzeugen Steuersignale an das Aktuatorsystem 30, um die Komponenten des autonomen Fahrzeugs 10 basierend auf der Logik, Berechnungen, Methoden und/oder Algorithmen automatisch zu steuern.
  • Die Steuerung 34 steht weiterhin in Kommunikation mit dem kognitiven Prozessor 32. Der kognitive Prozessor 32 empfängt verschiedene Daten von der Steuerung 34 und von den Sensoreinrichtungen 40a-40n des Sensorsystems 28 und führt verschiedene Berechnungen durch, um der Steuerung 34 eine Trajektorie zu liefern, die die Steuerung 34 am autonomen Fahrzeug 10 über die eine oder mehrere Aktuatoreinrichtungen 42a-42n umsetzen kann. Eine detaillierte Diskussion des kognitiven Prozessors 32 wird in Bezug auf 2 gegeben.
  • 2 zeigt ein anschauliches Steuerungssystem 200 mit einem kognitiven Prozessor 32 integriert in ein autonomes Fahrzeug 10. In verschiedenen Ausführungsformen kann das autonome Fahrzeug 10 ein Fahrzeugsimulator sein, der verschiedene Fahrszenarien für das autonome Fahrzeug 10 simuliert und verschiedene Reaktionen des autonomen Fahrzeugs 10 auf die Szenarien simuliert.
  • Das autonome Fahrzeug 10 beinhaltet ein Datenerfassungssystem 204 (z.B. Sensoren 40a-40n aus 1). Das Datenerfassungssystem 204 erhält verschiedene Daten zur Bestimmung eines Zustandes des autonomen Fahrzeuges 10 und verschiedener Agenten in der Umgebung des autonomen Fahrzeuges 10. Zu diesen Daten gehören unter anderem kinematische Daten, Positions- oder Poseangaben usw. des autonomen Fahrzeugs 10 sowie Daten über andere Agenten, wie z. B. Reichweite, Relativgeschwindigkeit (Doppler), Höhe, Winkelposition usw. Das autonome Fahrzeug 10 enthält außerdem ein Sendemodul 206, das die erfassten Daten verpackt und die verpackten Daten an die Kommunikationsschnittstelle 208 des kognitiven Prozessors 32 sendet, wie unten beschrieben. Das autonome Fahrzeug 10 enthält weiterhin ein Empfangsmodul 202, das die Fahrbefehle vom kognitiven Prozessor 32 empfängt und die Befehle am autonomen Fahrzeug 10 ausführt, um das autonome Fahrzeug 10 zu navigieren. Der kognitive Prozessor 32 empfängt die Daten des autonomen Fahrzeugs 10, berechnet basierend auf den bereitgestellten Zustandsinformationen und der hierin offengelegten Methoden eine Trajektorie für das autonome Fahrzeug 10 und stellt die Trajektorie dem autonomen Fahrzeug 10 am Empfangsmodul 202 zur Verfügung. Das autonome Fahrzeug 10 setzt dann die vom kognitiven Prozessor 32 bereitgestellte Trajektorie um.
  • Der kognitive Prozessor 32 enthält verschiedene Module zur Kommunikation mit dem autonomen Fahrzeug 10, darunter ein Schnittstellenmodul 208 zum Empfang von Daten vom autonomen Fahrzeug 10 und einen Trajektorien-Sender 222 zum Senden von Anweisungen, wie z.B. einer Trajektorie zum autonomen Fahrzeug 10. Der kognitive Prozessor 32 enthält weiterhin einen Arbeitsspeicher 210, der verschiedene vom autonomen Fahrzeug 10 empfangene Daten sowie verschiedene Zwischenberechnungen des kognitiven Prozessors 32 speichert. Ein Hypothesen-Aufsteller 212 des kognitiven Prozessors 32 wird verwendet, um verschiedene hypothetische Trajektorien und Bewegungen eines oder mehrerer Agenten in der Umgebung des autonomen Fahrzeugs 10 unter Verwendung einer Vielzahl möglicher Vorhersagemethoden und Zustandsdaten, die im Arbeitsspeicher 210 gespeichert sind, vorzuschlagen. Ein Hypothesen-Resolver 214 des kognitiven Prozessors 32 empfängt die Vielzahl der hypothetischen Trajektorien für jeden Agenten in der Umgebung und bestimmt aus der Vielzahl der hypothetischen Trajektorien eine höchstwahrscheinliche Trajektorie für jeden Agenten.
  • Der kognitive Prozessor 32 enthält außerdem ein oder mehrere Entscheidungs-Module 216 und einen Entscheidungs-Resolver 218. Das/die Entscheidungs-Modul(e) 216 erhält/erhalten vom Hypothesen-Resolver 214 die wahrscheinlichste Trajektorie für jeden Agenten in der Umgebung und berechnet eine Vielzahl von Kandidaten-Trajektorien und Verhaltensweisen für das autonome Fahrzeug 10 basierend auf den wahrscheinlichsten Agenten-Trajektorien. Jede der Vielzahl von Trajektorien- und Verhaltensweisen- Kandidaten wird dem Entscheidungs-Resolver 218 zur Verfügung gestellt. Der Entscheidungs-Resolver 218 wählt bzw. bestimmt aus den möglichen Trajektorien und Verhaltensweisen eine optimale bzw. gewünschte Trajektorie und ein gewünschtes Verhalten für das autonome Fahrzeug 10.
  • Der kognitive Prozessor 32 enthält außerdem einen Trajektorienplaner 220, der eine autonome Fahrzeugtrajektorie bestimmt, die dem autonomen Fahrzeug 10 zur Verfügung gestellt wird. Der Trajektorienplaner 220 erhält das Fahrzeugverhalten und die Trajektorie vom Entscheidungs-Resolver 218, eine optimale Hypothese für jeden Agenten 50 vom Hypothesen-Resolver 214 und die aktuellsten Umweltinformationen in Form von „Zustandsdaten“ zur Anpassung des Trajektorienplans. Dieser zusätzliche Schritt am Trajektorienplaner 220 stellt sicher, dass anomale Verarbeitungsverzögerungen bei der asynchronen Berechnung von Agentenhypothesen gegen die zuletzt gemessenen Daten des Datenerfassungssystems 204 geprüft werden. Dieser zusätzliche Schritt aktualisiert die optimale Hypothese entsprechend in der endgültigen Trajektorienberechnung im Trajektorienplaner 220.
  • Die ermittelte Fahrzeugtrajektorie wird vom Trajektorienplaner 220 dem Trajektorien-Sender 222 zur Verfügung gestellt, der eine Trajektoriennachricht an das autonome Fahrzeug 10 (z.B. an die Steuerung 34) zur Implementierung am autonomen Fahrzeug 10 bereitstellt.
  • Der kognitive Prozessor 32 enthält außerdem einen Modulator 230, der verschiedene Grenzwerte und Schwellenwerte für die Hypothesen-Aufsteller 212 und das/die Entscheidungs-Modul(e) 216 steuert. Der Modulator 230 kann auch Änderungen an Parametern für den Hypothesen-Resolver 214 vornehmen, um zu beeinflussen, wie er das optimale Hypothesenobjekt für einen gegebenen Agenten 50, die Entscheider und den Entscheidungs-Resolver auswählt. Der Modulator 230 ist ein Diskriminator, der die Architektur anpassungsfähig macht. Der Modulator 230 kann sowohl die durchgeführten Berechnungen als auch das tatsächliche Ergebnis der deterministischen Berechnungen verändern, indem er die Parameter in den Algorithmen selbst verändert.
  • Ein Auswertemodul 232 des kognitiven Prozessors 32 berechnet und stellt dem kognitiven Prozessor Kontextinformationen zur Verfügung, einschließlich Fehlermaße, Hypothesen-Vertrauensmaße, Maße über die Komplexität der Umgebung und den Zustand des autonomen Fahrzeugs 10, Leistungsbewertung des autonomen Fahrzeugs 10 gegebene Umweltinformationen einschließlich Agentenhypothesen und autonome Fahrzeugbahn (entweder historisch oder zukünftig). Der Modulator 230 erhält Informationen vom Auswerter 232, um Änderungen der Verarbeitungsparameter für die Hypothesen-Aufsteller212, den Hypothesen-Resolver 214, die Entscheider 216 und die Schwellenwert-Entscheidungsauflösungs-Parameter für den Entscheidungs-Resolver 218 zu berechnen. Eine virtuelle Steuerung 224 implementiert die Trajektoriennachricht und bestimmt eine Vorsteuerungs-Trajektorie verschiedener Agenten 50 in Erwiderung auf die Trajektorie.
  • Die Modulation erfolgt in Erwiderung auf die vom Auswertemodul 232 gemessene Unsicherheit. In einer Ausführungsform erhält der Modulator 230 Konfidenzniveaus, die mit Hypothesenobjekten verbunden sind. Diese Konfidenzniveaus können von den Hypothesenobjekten zu einem einzigen Zeitpunkt oder über ein ausgewähltes Zeitfenster gesammelt werden. Das Zeitfenster kann variabel sein. Das Auswertemodul 232 bestimmt die Entropie der Verteilung dieser Vertrauensbereiche. Zusätzlich können im Auswertemodul 232 auch historische Fehlermaße an Hypothesenobjekten gesammelt und ausgewertet werden.
  • Diese Arten von Bewertungen dienen als interner Kontext und als Maß für die Unsicherheit des kognitiven Prozessors 32. Diese kontextuellen Signale des Auswertemoduls 232 werden für den Hypothesen-Resolver 214, den Entscheidungs-Resolver 218 und den Modulator 230 verwendet, die basierend auf den Berechnungsergebnissen Parameter für die Hypothesen-Aufsteller212 ändern können.
  • Die verschiedenen Module des kognitiven Prozessors 32 arbeiten unabhängig voneinander und werden mit individuellen Aktualisierungsraten aktualisiert (in 2 z.B. durch LCM-Hz, h-Hz, d-Hz, e-Hz, m-Hz, t-Hz gekennzeichnet).
  • Im Betrieb empfängt die Schnittstellenbaugruppe 208 des kognitiven Prozessors 32 die gepackten Daten von der Sendebaugruppe 206 des autonomen Fahrzeugs 10 an einem Datenempfänger 208a und parst die empfangenen Daten an einem Datenparser 208b. Der Datenparser 208b platziert die Daten in ein Datenformat, hier als Eigenschaftstasche bezeichnet, das im Arbeitsspeicher 210 gespeichert und von den verschiedenen Hypothesen-Aufsteller212, Entscheidungs-Modulen 216 usw. des kognitiven Prozessors 32 verwendet werden kann. Die besondere Klassenstruktur dieser Datenformate sollte nicht als Einschränkung der Erfindung angesehen werden.
  • Der Arbeitsspeicher 210 extrahiert während eines konfigurierbaren Zeitfensters die Informationen aus der Sammlung von Eigenschaftstaschen, um Momentaufnahmen des autonomen Fahrzeugs und verschiedener Agenten zu erstellen. Diese Momentaufnahmen werden mit einer festen Frequenz veröffentlicht und an abonnierende Module weitergegeben. Die vom Arbeitsspeicher 210 aus den Eigenschaftstaschen erzeugte Datenstruktur ist eine „State“-Datenstruktur, die nach Zeitstempel geordnete Informationen enthält. Eine Sequenz von generierten Momentaufnahmen umfasst daher dynamische Zustandsinformationen für ein anderes Fahrzeug oder einen anderen Agenten. Eigenschaftstaschen innerhalb einer ausgewählten Zustandsdatenstruktur enthalten Informationen über Objekte, wie z.B. andere Agenten, das autonome Fahrzeug, Routeninformationen, etc. Die Eigenschaftentasche für ein Objekt enthält detaillierte Informationen über das Objekt, wie z.B. die Position des Objekts, die Geschwindigkeit, den Kurswinkel usw. Diese Zustandsdatenstruktur fließt durch den Rest des kognitiven Prozessors 32 für Berechnungen. Zustandsdaten können sich sowohl auf autonome Fahrzeugzustände als auch auf Agentenzustände etc. beziehen.
  • Die Hypothesen-Aufsteller212 holen Zustandsdaten aus dem Arbeitsspeicher 210, um mögliche Ergebnisse der Agenten in der lokalen Umgebung über einen ausgewählten Zeitrahmen oder Zeitschritt zu berechnen. Alternativ kann der Arbeitsspeicher 210 Zustandsdaten an die Hypothesen-Aufsteller212 übergeben. Die Hypothesen-Aufsteller212 können mehrere Hypothesengeber-Module enthalten, wobei jedes der mehreren Hypothesengeber-Module eine andere Methode oder Technik zur Bestimmung des möglichen Ergebnisses des (der) Agenten verwendet. Ein Hypothesen-Aufsteller kann ein mögliches Ergebnis mit Hilfe eines kinematischen Modells bestimmen, das die grundlegenden physikalischen und mechanischen Eigenschaften der Daten im Arbeitsspeicher 210 anwendet, um einen späteren Zustand jedes Agenten 50 vorherzusagen. Andere Hypothesen-Aufsteller können einen nachfolgenden Zustand jedes Agenten 50 vorhersagen, indem sie z.B. einen kinematischen Regressionsbaum auf die Daten anwenden, ein Gaussian Mixture Model/Markovian mixture model (GMM-HMM) auf die Daten anwenden, ein rekursives neuronales Netz (RNN) auf die Daten anwenden, andere maschinelle Lernprozesse durchführen, logikbasiertes Schließen auf die Daten anwenden, etc. Die Hypothesen-Aufsteller 212 sind modulare Komponenten des kognitiven Prozessors 32 und können dem kognitiven Prozessor 32 beliebig hinzugefügt oder entfernt werden.
  • Jeder Hypothesen-Aufsteller212 enthält eine Hypothesenklasse zur Vorhersage des Agentenverhaltens. Die Hypothesenklasse umfasst Spezifikationen für Hypothesenobjekte und eine Reihe von Algorithmen. Nach dem Aufruf wird ein Hypothesenobjekt für einen Agenten aus der Hypothesenklasse erstellt. Das Hypothesenobjekt hält sich an die Vorgaben der Hypothesenklasse und verwendet die Algorithmen der Hypothesenklasse. Eine Vielzahl von Hypothesenobjekten kann parallel zueinander betrieben werden. Jeder Hypothesen-Aufsteller212 erstellt für jeden Agenten 50 eine eigene Vorhersage auf der Basis der aktuellen Arbeitsdaten und sendet die Vorhersage zur Speicherung und zur zukünftigen Verwendung an den Arbeitsspeicher 210 zurück. Wenn dem Arbeitsspeicher 210 neue Daten zur Verfügung gestellt werden, aktualisiert jeder Hypothesen-Aufsteller212 seine Hypothese und schiebt die aktualisierte Hypothese zurück in den Arbeitsspeicher 210. Jeder Hypothesen-Aufsteller212 kann seine Hypothese mit einer eigenen Aktualisierungsrate (z.B. Rate h-Hz) aktualisieren. Jeder Hypothesen-Aufsteller212 kann individuell als Abonnementdienst fungieren, von dem aus seine aktualisierte Hypothese in die entsprechenden Module geschoben wird.
  • Jedes von einem Hypothesen-Aufsteller212 erzeugte Hypothesenobjekt ist eine Vorhersage in Form einer Zustandsdatenstruktur für einen Zeitvektor, für definierte Entitäten wie Ort, Geschwindigkeit, Richtung etc. In einer Ausführungsform können die Hypothesen-Aufsteller 212 ein Kollisionserkennungsmodul enthalten, das den vorausschauenden Informationsfluss in Bezug auf Vorhersagen verändern kann. Insbesondere, wenn ein Hypothesen-Aufsteller212 eine Kollision von zwei Agenten 50 vorhersagt, kann ein weiteres Hypothesen-Aufsteller aufgerufen werden, um Anpassungen am Hypothesenobj ekt zu erzeugen, um die erwartete Kollision zu berücksichtigen oder um eine Warnmeldung an andere Module zu senden, um zu versuchen, das gefährliche Szenario zu mildern oder das Verhalten zu ändern, um das gefährliche Szenario zu vermeiden.
  • Für jeden Agenten 50 erhält der Hypothesen-Resolver 118 die relevanten Hypothesenobjekte und wählt aus den Hypothesenobjekten ein einzelnes Hypothesenobjekt aus. In einer Ausführungsform ruft der Hypothesen-Resolver 118 einen einfachen Auswahlprozess hervor. Alternativ kann der Hypothesen-Resolver 118 einen Verschmelzungsprozess der verschiedenen Hypothesenobjekte aufrufen, um ein hybrides Hypothesenobjekt zu erzeugen.
    Da die Architektur des kognitiven Prozessors asynchron ist, erhalten der Hypothesen-Resolver 118 und die nachgeschalteten Entscheidungs-Module 216 das Hypothesenobjekt von diesem spezifischen Hypothesengeber-Modul zu einem frühestmöglichen Zeitpunkt durch einen Subskriptionspush-Prozess, wenn eine als Hypothesenobjekt implementierte Rechenmethode länger dauert. Zeitstempel, die mit einem Hypothesenobjekt verbunden sind, informieren die nachgeschalteten Module über den relevanten Zeitrahmen für das Hypothesenobjekt und ermöglichen die Synchronisation mit Hypothesenobjekten und/oder Zustandsdaten aus anderen Modulen. Die Zeitspanne, für die die Vorhersage des Hypothesenobjektes gilt, ist also modulübergreifend zeitlich ausgerichtet.
  • Wenn z.B. ein Entscheidungs-Modul 216 ein Hypothesenobjekt erhält, vergleicht das Entscheidungs-Modul 216 den Zeitstempel des Hypothesenobjekts mit einem Zeitstempel für die neuesten Daten (d.h. Geschwindigkeit, Position, Kurs usw.) des autonomen Fahrzeugs 10. Wird der Zeitstempel des Hypothesenobjektes als zu alt angesehen (z.B. Vordatierung der autonomen Fahrzeugdaten durch ein ausgewähltes Zeitkriterium), kann das Hypothesenobjekt solange vernachlässigt werden, bis ein aktualisiertes Hypothesenobjekt empfangen wird. Aktualisierungen auf Basis der neuesten Informationen werden ebenfalls vom Trajektorienplaner 220 durchgeführt.
  • Das/die Entscheidungs-Modul(e) 216 umfasst/umfassen Module, die verschiedene Entscheidungskandidaten in Form von Trajektorien und Verhaltensweisen für das autonome Fahrzeug erzeugen 10. Das/die Entscheidungs-Modul(e) 216 erhält/erhalten vom Hypothesen-Resolver 214 für jeden Agenten 50 eine Hypothese und verwendet diese Hypothesen und eine nominale Zieltrajektorie für das autonome Fahrzeug 10 als Nebenbedingungen. Das (die) Entscheidungs-Modul(e) 216 kann (können) mehrere Entscheidungs-Module umfassen, wobei jedes der mehreren Entscheidungs-Module eine andere Methode oder Technik zur Bestimmung einer möglichen Trajektorie oder eines möglichen Verhaltens für das autonome Fahrzeug verwendet 10. Jedes Entscheidungs-Modul kann asynchron arbeiten und erhält verschiedene Eingangszustände aus dem Arbeitsspeicher 212, wie z.B. die vom Hypothesen-Resolver 214 erzeugte Hypothese. Das/die Entscheidungs-Modul Entscheidungs-(e) 216 sind modulare Komponenten und können dem kognitiven Prozessor 32 beliebig hinzugefügt oder entfernt werden. Jedes Entscheidungs-Modul 216 kann seine Entscheidungen mit seiner eigenen Aktualisierungsrate (z.B. Rate d-Hz) aktualisieren.
  • Ähnlich wie ein Hypothesen-Aufsteller 212 enthält ein Entscheidungs-ModulEntscheidungs-216 eine Entscheidungs-Klasse zur Vorhersage einer autonomen Fahrzeugbahn und/oder eines autonomen Verhaltens. Die Entscheidungs-Klasse umfasst Spezifikationen für Entscheidungs-Objekte und eine Reihe von Algorithmen. Nach dem Aufruf wird ein Entscheidungs-Objekt für einen Agenten 50 aus der Entscheidungs-Klasse erzeugt. Das Entscheidungs-Objekt hält sich an die Spezifikationen der Entscheidungs-Klasse und verwendet den Algorithmus der Entscheidungs-Klasse. Es können mehrere Entscheidungs-Objekte parallel zueinander betrieben werden.
  • Der Entscheidungs-Resolver 218 empfängt die verschiedenen Entscheidungen, die von einem oder mehreren Entscheidungs-Modulen generiert werden, und erzeugt ein einziges Trajekt und Verhaltensobjekt für das autonome Fahrzeug 10. Der Entscheidungs-Resolver kann auch verschiedene Kontextinformationen von den Auswertemodulen 232 erhalten, wobei die Kontextinformationen zur Erzeugung des Trajektorien- und Verhaltensobjekts verwendet werden.
  • Der Trajektorienplaner 220 erhält vom Entscheidungs-Resolver 218 die Trajektorien- und Verhaltensobjekte zusammen mit dem Zustand des autonomen Fahrzeugs 10. Der Trajektorienplaner 220 erzeugt dann eine Trajektorien-Meldung, die dem Trajektorien-Sender 222 zur Verfügung gestellt wird. Der Trajektorien-Sender 222 stellt die Trajektorien-Nachricht dem autonomen Fahrzeug 10 zur Implementierung am autonomen Fahrzeug 10 zur Verfügung, wobei ein für die Kommunikation mit dem autonomen Fahrzeug 10 geeignetes Format verwendet wird.
  • Der Trajektorien-Sender 222 sendet die Trajektorien-Meldung auch an die virtuelle Steuerung 224. Die virtuelle Steuerung 224 stellt Daten in einer Vorsteuerungs-Schleife für den kognitiven Prozessor 32 bereit. Die an das/die Hypothesen-Aufsteller 212 gesendete Trajektorie wird in den nachfolgenden Berechnungen durch die virtuelle Steuerung 224 verfeinert, um eine Reihe zukünftiger Zustände des autonomen Fahrzeugs 10 zu simulieren, die sich aus dem Versuch, der Trajektorie zu folgen, ergeben. Diese zukünftigen Zustände werden von dem/den Hypothesen-Aufsteller 212 verwendet, um Vorsteuerungs-Vorhersagen durchzuführen.
  • Verschiedene Aspekte des kognitiven Prozessors 32 liefern Rückkopplungsschleifen. Eine erste Rückkopplungsschleife wird von der virtuellen Steuerung 224 bereitgestellt. Die virtuelle Steuerung 224 simuliert eine Operation des autonomen Fahrzeugs 10 basierend auf der vorgegebenen Trajektorie und bestimmt oder prognostiziert zukünftige Zustände, die jeder Agent 50 als Reaktion auf die vom autonomen Fahrzeug 10 genommene Trajektorie einnimmt. Diese zukünftigen Zustände der Agenten können als Teil der ersten Rückkopplungsschleife den Hypothesen-Aufsteller-Modulen zur Verfügung gestellt werden.
  • Eine zweite Rückkopplungsschleife entsteht, weil verschiedene Module historische Informationen in ihren Berechnungen verwenden, um Parameter zu lernen und zu aktualisieren. Die Hypothesen-Aufsteller 212 kann/können z. B. eigene Puffer implementieren, um historische Zustandsdaten zu speichern, unabhängig davon, ob die Zustandsdaten aus einer Beobachtung oder aus einer Vorhersage stammen (z. B. von der virtuellen Steuerung 224). In einem Hypothesen-Aufsteller-Modul 212, das einen kinematischen Regressionsbaum verwendet, werden zum Beispiel historische Beobachtungsdaten für jeden Agenten für mehrere Sekunden gespeichert und in der Berechnung für Zustandsvorhersagen verwendet.
  • Der Hypothesen-Resolver 214 hat auch Rückkopplungen in seinem Design, da er auch historische Informationen für Berechnungen nutzt. In diesem Fall werden historische Informationen über die Beobachtungen verwendet, um Prädiktionsfehler in der Zeit zu berechnen und um die Parameter der Hypothesenauflösung mit Hilfe der Prädiktionsfehler anzupassen. Ein Schiebefenster kann zur Auswahl der historischen Informationen verwendet werden, die zur Berechnung von Vorhersagefehlern und zum Lernen von Hypothesenauflösungs-Parametern verwendet werden. Für kurzfristiges Lernen regelt das Schiebefenster die Aktualisierungsrate der Parameter des Hypothesen-Resolvers 214. Über größere Zeitskalen können die Vorhersagefehler während einer ausgewählten Episode (z.B. einer Linksdreh-Episode) aggregiert und zur Aktualisierung der Parameter nach der Episode verwendet werden.
  • Der Entscheidungs-Resolver 218 nutzt auch historische Informationen für Rückführungsberechnungen. Historische Informationen über das Verhalten der autonomen Fahrzeugtrajektorien werden verwendet, um optimale Entscheidungen zu berechnen und die Entscheidungsauflösungs-Parameter entsprechend anzupassen. Dieses Lernen kann am Entscheidungs-Resolver 218 auf mehreren Zeitskalen erfolgen. In kürzester Zeit werden mit den Auswertemodulen 232 kontinuierlich Informationen über die Leistung berechnet und an den Entscheidungs-Resolver 218 zurückgegeben. So kann ein Algorithmus verwendet werden, um Informationen über die Leistung einer Trajektorie zu liefern, die von einem Entscheidungs-Modul basierend auf mehreren Metriken sowie anderer Kontextinformationen bereitgestellt werden. Diese Kontextinformationen können als Belohnungssignal in Reinforcement Learning Prozessen für den Betrieb des Entscheidungs-Resolver 218 über verschiedene Zeitskalen hinweg genutzt werden. Die Rückkopplung kann asynchron zum Entscheidungs-Resolver 218 erfolgen, und der Entscheidungs-Resolver 218 kann sich bei Erhalt der Rückkopplung anpassen.
  • 3 zeigt ein Flussdiagramm 300, das die Funktionsweise eines kognitiven Prozessors zur Bedienung eines autonomen Fahrzeugs zeigt. In Feld 302 erhält der kognitive Prozessor Daten zu jedem Agenten 50 sowie zu dem autonomen oder autonomen Fahrzeug 10. In Feld 304 erstellen ein oder mehrere Hypothesengeber-Modul(e) des kognitiven Prozessors eine oder mehrere Hypothesen für eine Trajektorie jedes Agenten basierend auf der empfangenen Daten. In Kasten 306 wählt ein Hypothesen-Resolver des kognitiven Prozessors basierend auf einem Auswahlkriterium aus der Vielzahl der Hypothesen eine einzige Hypothese für die Trajektorie jedes Agenten aus. In Feld 308 erzeugen ein oder mehrere Entscheidungs-Module des kognitiven Prozessors eine oder mehrere Entscheidungen für eine Trajektorie des autonomen Fahrzeugs basierend auf der gewählten Hypothese für jeden Agenten. In Feld 310 wählt ein Entscheidungs-Resolver des kognitiven Prozessors aus der einen oder mehreren Entscheidungen für die Trajektorie des autonomen Fahrzeugs eine Trajektorie oder ein Verhalten für das autonome Fahrzeug aus. Die Trajektorien-Daten werden dann in Feld 312 für den Betrieb des Fahrzeugs und in Feld 314 als Vorlaufdaten für die Flugbahnvorhersage verwendet. In Feld 312 wird das autonome Fahrzeug basierend auf der für das autonome Fahrzeug gewählten Trajektorie betrieben. Außerdem wird in Feld 314 die ausgewählte Trajektorie als Vorsteuerungs-Daten an einer virtuellen Steuerung des kognitiven Prozessors bereitgestellt. Von Feld 314 geht das Verfahren zurück zu Feld 302.
  • Während die vorstehende Offenbarung unter Bezugnahme auf beispielhafte Ausführungsformen beschrieben wurde, wird es von den Fachleuten verstanden, dass verschiedene Änderungen vorgenommen werden können und Elemente davon durch Äquivalente ersetzt werden können, ohne dass der Geltungsbereich verlassen wird. Darüber hinaus können viele Änderungen vorgenommen werden, um eine bestimmte Situation oder ein bestimmtes Material an die Lehren der Offenbarung anzupassen, ohne von deren wesentlichem Umfang abzuweichen. Es ist daher beabsichtigt, dass sich die vorliegende Offenbarung nicht auf die einzelnen offengelegten Ausführungsformen beschränkt, sondern alle Ausführungsformen umfasst, die in den Geltungsbereich dieser Ausführungsform fallen.

Claims (10)

  1. Ein Verfahren zum Betreiben eines autonomen Fahrzeugs, umfassend Empfangen von Daten, an einem Prozessor eines kognitiven Systems, die sich auf einen Agenten beziehen; Erstellen, an einem oder mehreren Hypothesengeber-Modulen des kognitiven Systems, einer Vielzahl von Hypothesen für eine Trajektorie des Agenten basierend auf den empfangenen Daten; Auswählen, an einem Hypothesen-Resolver des kognitiven Systems, einer einzigen Hypothese für die Trajektorie des Agenten aus der Vielzahl der Hypothesen, basierend auf einem Auswahlkriterium; Erstellen, an einem oder mehreren Entscheidungs-Modulen des kognitiven Systems, einer Vielzahl von Entscheidungen für eine Trajektorie des autonomen Fahrzeugs basierend auf der gewählten Hypothese für den Agenten. Auswählen, an einem Entscheidungs-Resolver des kognitiven Systems, einer Trajektorie für das autonome Fahrzeug aus der Vielzahl von Entscheidungen für die Trajektorie des autonomen Fahrzeugs; Betreiben des autonomen Fahrzeugs basierend auf der ausgewählten Trajektorie für das autonome Fahrzeug.
  2. Das Verfahren nach Anspruch 1, ferner umfassend das Prognostizieren, an einer virtuellen Steuerung, eines zukünftigen Zustands des autonomen Fahrzeugs, der sich aus dem Verfolgen der ausgewählten Trajektorie für das autonome Fahrzeug ergibt, wobei der zukünftige Zustand als Vorsteuerungs-Vorhersage an das mindestens eine Hypothesengeber-Modul verwendet wird.
  3. Das Verfahren nach Anspruch 1, wobei mindestens eine der folgenden Voraussetzungen erfüllt ist: (i) Auswählen der einzelnen Hypothese für die Trajektorie des Agenten ferner umfassend das Verschmelzen von mindestens zwei der Vielzahl von Hypothesen; und (ii) Auswählen der einzelnen Trajektorie für das autonome Fahrzeug ferner umfassend das Verschmelzen von mindestens zwei der Vielzahl von Entscheidungen.
  4. Das Verfahren nach Anspruch 1, ferner umfassend das Verwenden einer Rückkopplungsschleife zur kontinuierlichen Aktualisierung von: (i) Hypothesenauflösungs-Parameter des Hypothesen-Resolvers; und/oder (ii) Entscheidungsauflösungs-Parameter des Entschei dungs-Resolvers.
  5. Das Verfahren nach Anspruch 1, ferner umfassend das Modulieren, an einem Modulator, einer zugrundeliegenden Berechnung für die Vielzahl von Hypothesen und die Vielzahl von Entscheidungen, die auf Bewertung und Rückkopplung basieren.
  6. Ein kognitives System zum Betreiben eines autonomen Fahrzeugs, umfassend: ein oder mehrere Hypothesengeber-Module, die eingerichtet sind, eine Vielzahl von Hypothesen für die Trajektorie eines Agenten basierend auf den empfangenen Daten zu erstellen; einen Hypothesen-Resolver, der eingerichtet ist eine einzelne Hypothese für die Trajektorie des Agenten aus der Vielzahl der Hypothesen basierend auf einem Auswahlkriterium auszuwählen; ein oder mehrere Entscheidungs-Module, die eingerichtet sind, eine Vielzahl von Entscheidungen für eine Trajektorie des autonomen Fahrzeugs basierend auf der ausgewählten Hypothese für den Agenten zu treffen; und einen Entscheidungs-Resolver, der eingerichtet ist, eine Trajektorie für das autonome Fahrzeug aus der Vielzahl von Entscheidungen für die Trajektorie des autonomen Fahrzeugs auszuwählen, wobei das autonome Fahrzeug basierend auf der ausgewählten Trajektorie betrieben wird.
  7. Das System nach Anspruch 6, ferner umfassend eine virtuelle Steuerung, die eingerichtet ist einen zukünftigen Zustand des autonomen Fahrzeugs basierend auf der ausgewählten Trajektorie für das autonome Fahrzeug zu prognostizieren, wobei das mindestens eine Hypothesengeber-Modul den prognostizierten zukünftigen Zustand als Vorsteuerungs-Vorhersage verwendet.
  8. Das System nach Anspruch 6, wobei der Hypothesen-Resolver ferner eingerichtet ist, die einzelne Hypothese für die Trajektorie des Agenten durch Verschmelzen von mindestens zwei der mehreren Hypothesen auszuwählen und der Entscheidungs-Resolver ferner eingerichtet ist, die einzelne Trajektorie für das autonome Fahrzeug durch Verschmelzen von mindestens zwei der mehreren Entscheidungen auszuwählen.
  9. Das System des Anspruchs 6, wobei die folgenden Voraussetzungen erfüllt sein müssen: (i) der Hypothesen-Resolver aktualisiert die Parameter zur Hypothesenauflösung unter Verwendung einer Rückkopplungsschleife; und/oder (ii) der Entscheidungs-Resolver aktualisiert die Parameter zur Entscheidungsauflösung unter Verwendung einer Rückkopplungsschleife.
  10. Das System nach Anspruch 6, ferner umfassend einen Modulator, der eingerichtet ist, eine zugrundeliegende Berechnung für die Vielzahl von Hypothesen und die Vielzahl von Entscheidungen basierend auf Bewertung und Rückkopplung zu modulieren, und ein Bewertungsmodul umfasst, das eingerichtet ist Kontextinformationen für den Modulator zum Berechnen von Änderungen von Prozessorparametern zu erzeugen.
DE102020103505.5A 2019-03-26 2020-02-11 Kognitive prozessor vorsteuerung- und rückkopplung integration in autonome systeme Withdrawn DE102020103505A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/365,501 2019-03-26
US16/365,501 US20200310422A1 (en) 2019-03-26 2019-03-26 Cognitive processor feedforward and feedback integration in autonomous systems

Publications (1)

Publication Number Publication Date
DE102020103505A1 true DE102020103505A1 (de) 2020-10-01

Family

ID=72605777

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020103505.5A Withdrawn DE102020103505A1 (de) 2019-03-26 2020-02-11 Kognitive prozessor vorsteuerung- und rückkopplung integration in autonome systeme

Country Status (3)

Country Link
US (1) US20200310422A1 (de)
CN (1) CN111746554A (de)
DE (1) DE102020103505A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114244880B (zh) * 2021-12-16 2023-12-26 云控智行科技有限公司 智能网联驾驶云控功能的运行方法、装置、设备和介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10268200B2 (en) * 2016-12-21 2019-04-23 Baidu Usa Llc Method and system to predict one or more trajectories of a vehicle based on context surrounding the vehicle
CN106774291B (zh) * 2016-12-26 2020-07-31 清华大学苏州汽车研究院(吴江) 一种自动驾驶电动汽车的电控系统
US10518770B2 (en) * 2017-03-14 2019-12-31 Uatc, Llc Hierarchical motion planning for autonomous vehicles
US10324469B2 (en) * 2017-03-28 2019-06-18 Mitsubishi Electric Research Laboratories, Inc. System and method for controlling motion of vehicle in shared environment
US10019011B1 (en) * 2017-10-09 2018-07-10 Uber Technologies, Inc. Autonomous vehicles featuring machine-learned yield model

Also Published As

Publication number Publication date
US20200310422A1 (en) 2020-10-01
CN111746554A (zh) 2020-10-09

Similar Documents

Publication Publication Date Title
DE102018120845B4 (de) Verfahren und Vorrichtung zum Überwachen eines autonomen Fahrzeugs
DE102018121595B4 (de) Unbeaufsichtigtes anlernen von agenten für autonome fahranwendungen
DE102019104974A1 (de) Verfahren sowie System zum Bestimmen eines Fahrmanövers
DE102019102173A1 (de) Verwaltung der automatisierten fahrkomplexität des vorausliegenden fahrweges unter verwendung des wahrnehmungssystems
DE112018001596T5 (de) Elektronische fahrzeugsteuerung
DE102018120785B4 (de) Verfahren zum Überwachen eines autonomen Fahrzeugs
DE102019122826A1 (de) Adaptives fahrzeuglernen
DE102016200513A1 (de) Verfahren und Vorrichtung zum Betreiben eines Kraftfahrzeuges
DE102020103509A1 (de) Erkennung und vermeidung von kollisionsverhalten
DE102009006336A1 (de) Verfahren zur Überwachung eine Einparkvorgangs
DE112017007596T5 (de) Strategieerzeugungsvorrichtung und Fahrzeug
DE102020103030A1 (de) Adaptives sensorsystem für fahrzeuge und verfahren zum betreiben desselben
DE102020131949A1 (de) System und verfahren zum erlernen einer fahrerpräferenz und zum anpassen einer spurzentrierungssteuerung an ein fahrerverhalten
DE102018133457B4 (de) Verfahren und System zum Bereitstellen von Umgebungsdaten
WO2019215222A1 (de) Verfahren zum betreiben eines kraftfahrzeugs zur verbesserung von arbeitsbedingungen von auswerteeinheiten des kraftfahrzeugs, steuersystem zum durchführen eines derartigen verfahrens sowie kraftfahrzeug mit einem derartigen steuersystem
DE102015209974A1 (de) Quer-Längs-kombinierte Trajektorienplanung für ein Fahrzeug
DE102017200580A1 (de) Verfahren zur Optimierung einer Manöverplanung für autonom fahrende Fahrzeuge
DE102017214531A1 (de) Verfahren und Vorrichtung zum Betreiben eines Kraftfahrzeugs in einem automatisierten Fahrbetrieb sowie Kraftfahrzeug
DE102018124161A1 (de) Verfahren zum zumindest teilautomatisierten Führen eines Kraftfahrzeugs auf einer Fahrbahn
DE102021111686A1 (de) Navigationstrajektorie mit verstärkendem lernen für ein ego-fahrzeug in einem navigationsnetzwerk
DE102021114077A1 (de) System zum Erweitern der Funktionalität einer durch Schlussfolgerungssysteme auf Symbolik/Logik-Basis erzeugten Hypothese
DE102020103513A1 (de) Logiksystem für die sinneswahrnehmung beim autonomen fahren
DE102020103754A1 (de) Hyper-assoziation im episodenspeicher
DE112021006148T5 (de) Verfahren und System zur Bestimmung eines Bewegungsmodells zur Bewegungsvorhersage bei der Steuerung autonomer Fahrzeuge
DE102020103505A1 (de) Kognitive prozessor vorsteuerung- und rückkopplung integration in autonome systeme

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee