DE102021114077A1 - System zum Erweitern der Funktionalität einer durch Schlussfolgerungssysteme auf Symbolik/Logik-Basis erzeugten Hypothese - Google Patents

System zum Erweitern der Funktionalität einer durch Schlussfolgerungssysteme auf Symbolik/Logik-Basis erzeugten Hypothese Download PDF

Info

Publication number
DE102021114077A1
DE102021114077A1 DE102021114077.3A DE102021114077A DE102021114077A1 DE 102021114077 A1 DE102021114077 A1 DE 102021114077A1 DE 102021114077 A DE102021114077 A DE 102021114077A DE 102021114077 A1 DE102021114077 A1 DE 102021114077A1
Authority
DE
Germany
Prior art keywords
scenario
autonomous vehicle
historical
possible scenarios
vehicle
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
DE102021114077.3A
Other languages
English (en)
Inventor
Jaehoon Choe
Rajan Bhattacharyya
Kyungnam Kim
Kenji Yamada
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 DE102021114077A1 publication Critical patent/DE102021114077A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/043Distributed expert systems; Blackboards
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0011Planning or execution of driving tasks involving control alternatives for a single driving scenario, e.g. planning several paths to avoid obstacles
    • 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
    • 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
    • B60W60/00272Planning or execution of driving tasks using trajectory prediction for other traffic participants relying on extrapolation of current movement
    • 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
    • B60W60/00276Planning or execution of driving tasks using trajectory prediction for other traffic participants for two or more other traffic participants
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
    • 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
    • B60W2556/00Input parameters relating to data
    • B60W2556/10Historical data
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units, or advanced driver assistance systems for ensuring comfort, stability and safety or drive control systems for propelling or retarding the vehicle
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • B60W30/095Predicting travel path or likelihood of collision
    • B60W30/0956Predicting travel path or likelihood of collision the prediction being responsive to traffic or environmental parameters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/045Explanation of inference; Explainable artificial intelligence [XAI]; Interpretable artificial intelligence

Abstract

Ein Fahrzeug und ein System und ein Verfahren zum Betreiben des Fahrzeugs. Das System enthält eine Schlussfolgerungsmaschine, einen episodischen Speicher, einen Auflöser und einen Controller. Die Schlussfolgerungsmaschine folgert mehrere mögliche Szenarien basierend auf einem aktuellen Zustand einer Umgebung des Fahrzeugs. Der episodische Speicher bestimmt eine historische Wahrscheinlichkeit für jedes der mehreren möglichen Szenarien. Der Auflöser wählt unter Verwendung der historischen Wahrscheinlichkeiten ein Szenario aus den mehreren möglichen Szenarien aus. Der Controller betreibt das Fahrzeug basierend auf dem ausgewählten Szenario.

Description

  • EINLEITUNG
  • Der Gegenstand der Offenbarung bezieht sich auf ein System und ein Verfahren zum Betreiben eines autonomen Fahrzeugs und insbesondere auf ein System und ein Verfahren zum Auswählen einer Handlung für das autonome Fahrzeug, um mögliche Szenarien basierend auf den aktuellen Verkehrsbedingungen zu erzeugen und eine Wahrscheinlichkeit jedes Szenarios zu bewerten.
  • Ein kognitiver Prozessor kann mit einem autonomen Fahrzeug verwendet werden, um Verkehrsmuster und/oder -bedingungen vorherzusagen und dem autonomen Fahrzeug Trajektorien vorzuschlagen. Der kognitive Prozessor kann unter Verwendung verschiedener Entscheidungsprozesse, die z. B. physikbasierte oder kinematische Berechnungen, statistische Vorhersagen, Mustererkennung und Schlussfolgern auf Symbolik/Logik-Basis enthalten, zu einer Trajektorie gelangen. Aktuelle Techniken, die Schlussfolgerungssysteme auf Symbolik/Logik-Basis steuern, opfern die Vielseitigkeit, wenn sie Informationen verarbeiten. Das logisches Schlussfolgern erzeugt binäre Hypothesen, die nicht immer Echtzeit-Verkehrssituationen widerspiegeln und sowohl in Richtung neuer oder unerwarteter Bedingungen als auch gegenüber unvollständigen Informationen der Umgebung unflexibel sind. Die Existenz unabhängiger Agenten in der Umgebung des Fahrzeugs verursacht jedoch unerwartete Ereignisse und kann widersprüchliche Daten präsentieren, wobei dies alles das logikbasierte Schlussfolgerungssystem verlangsamt oder zum Stillstand bringt. Entsprechend ist es wünschenswert, ein Verfahren zum Verfeinern oder Erweitern der Ergebnisse eines logikbasierten Schlussfolgerns bereitzustellen, um mit unvollständigen Informationen der Umgebung zu arbeiten.
  • ZUSAMMENFASSUNG
  • In einer beispielhaften Ausführungsform wird ein Verfahren zum Betreiben eines autonomen Fahrzeugs offenbart. Mehrere mögliche Szenarien werden basierend auf einem aktuellen Zustand einer Umgebung des autonomen Fahrzeugs gefolgert. Eine historische Wahrscheinlichkeit wird für jedes der mehreren möglichen Szenarien bestimmt. Ein Szenario wird unter Verwendung der historischen Wahrscheinlichkeiten aus den mehreren möglichen Szenarien ausgewählt. Das autonome Fahrzeug wird basierend auf dem ausgewählten Szenario betrieben.
  • Zusätzlich zu einem oder mehreren der hier beschriebenen Merkmale wird eine logikbasierte Wahrscheinlichkeit für jedes der mehreren möglichen Szenarien bestimmt, wobei das Szenario aus den mehreren möglichen Szenarien basierend auf den historischen Wahrscheinlichkeiten und den logikbasierten Wahrscheinlichkeiten ausgewählt wird. Das Verfahren enthält ferner das Tokenisieren eines Szenarios und das Bestimmen der historischen Wahrscheinlichkeit für das Szenario unter Verwendung des tokenisierten Szenarios. Die historische Wahrscheinlichkeit für ein tokenisiertes Szenario wird durch das Bestimmen einer Ähnlichkeit des tokenisierten Szenarios mit einem oder mehreren historischen Ereignissen in einer Datenbank und das Bestimmen eines Vorherrschens des einen oder der mehreren historischen Ereignisse in der Datenbank bestimmt. Das Verfahren enthält ferner das Bestimmen eines Ähnlichkeitsprozentsatzes für das tokenisierte Szenario basierend auf einer Ähnlichkeitsmetrik zwischen dem tokenisierten Szenario und dem einen oder den mehreren historischen Ereignissen. Das Verfahren enthält ferner das Folgern der mehreren möglichen Szenarien basierend auf unvollständigen oder mehrdeutigen Messwerten. Das Folgern der mehreren möglichen Szenarien enthält ferner das Anwenden einer von Abduktion, Deduktion und einer Kombination aus Abduktion und Deduktion auf die Daten, die den aktuellen Zustand der Umgebung angeben.
  • In einer weiteren beispielhaften Ausführungsform wird ein System zum Betreiben eines autonomen Fahrzeugs offenbart. Das System enthält eine Schlussfolgerungsmaschine, einen episodischen Speicher, einen Auflöser und einen Controller. Die Schlussfolgerungsmaschine folgert mehrere mögliche Szenarien basierend auf einem aktuellen Zustand einer Umgebung des autonomen Fahrzeugs. Der episodische Speicher bestimmt eine historische Wahrscheinlichkeit für jedes der mehreren möglichen Szenarien. Der Auflöser wählt ein Szenario aus den mehreren möglichen Szenarien unter Verwendung der historischen Wahrscheinlichkeiten aus. Der Controller steuert das autonome Fahrzeug basierend auf dem ausgewählten Szenario.
  • Zusätzlich zu einem oder mehreren der hier beschriebenen Merkmale enthält das System ferner eine Folgerungsbewertungsmaschine, die konfiguriert ist, eine logikbasierte Wahrscheinlichkeit für jedes der mehreren möglichen Szenarien zu bestimmen, wobei die Folgerungsbewertungsmaschine das Szenario aus den mehreren möglichen Szenarien basierend auf den historischen Wahrscheinlichkeiten und den logikbasierten Wahrscheinlichkeiten auswählt. Die Folgerungsauswertungsmaschine tokenisiert ein Szenario, während der episodische Speicher die historische Wahrscheinlichkeit für das Szenario unter Verwendung des tokenisierten Szenarios bestimmt. Der episodische Speicher bestimmt die historische Wahrscheinlichkeit für ein tokenisiertes Szenario durch das Bestimmen einer Ähnlichkeit des tokenisierten Szenarios mit einem oder mehreren historischen Ereignissen in einer Datenbank und das Bestimmen eines Vorherrschens des einen oder der mehreren historischen Ereignisse in der Datenbank. Der episodische Speicher bestimmt einen Ähnlichkeitsprozentsatz für das tokenisierte Szenario basierend auf einer Ähnlichkeitsmetrik zwischen dem tokenisierten Szenario und dem einen oder den mehreren historischen Ereignissen. Die Schlussfolgerungsmaschine folgert basierend auf unvollständigen oder mehrdeutigen Messwerten die mehreren möglichen Szenarien. Die Schlussfolgerungsmaschine folgert die mehreren möglichen Szenarien durch das Anwenden einer von Abduktion, Deduktion und einer Kombination aus Abduktion und Deduktion auf die Daten, die den aktuellen Zustand der Umgebung angeben.
  • In einer nochmals weiteren beispielhaften Ausführungsform wird ein autonomes Fahrzeug offenbart. Das autonome Fahrzeug enthält eine Schlussfolgerungsmaschine, einen episodischen Speicher, einen Auflöser und einen Controller. Die Schlussfolgerungsmaschine folgert mehrere mögliche Szenarien basierend auf einem aktuellen Zustand einer Umgebung des autonomen Fahrzeugs. Der episodische Speicher bestimmt eine historische Wahrscheinlichkeit für jedes der mehreren möglichen Szenarien. Der Auflöser wählt ein Szenario aus den mehreren möglichen Szenarien unter Verwendung der historischen Wahrscheinlichkeiten aus. Der Controller betreibt das autonome Fahrzeug basierend auf dem ausgewählten Szenario.
  • Zusätzlich zu einem oder mehreren der hier beschriebenen Merkmale enthält das Fahrzeug ferner eine Folgerungsbewertungsmaschine, die konfiguriert ist, eine logikbasierte Wahrscheinlichkeit für jedes der mehreren möglichen Szenarien zu bestimmen, wobei die Folgerungsbewertungsmaschine das Szenario aus den mehreren möglichen Szenarien basierend auf den historischen Wahrscheinlichkeiten und den logikbasierten Wahrscheinlichkeiten auswählt. Die Folgerungsbewertungsmaschine tokenisiert ein Szenario, während der episodische Speicher die historische Wahrscheinlichkeit für das Szenario unter Verwendung des tokenisierten Szenarios bestimmt. Der episodische Speicher bestimmt die historische Wahrscheinlichkeit für ein tokenisiertes Szenario durch das Bestimmen einer Ähnlichkeit des tokenisierten Szenarios mit einem oder mehreren historischen Ereignissen in einer Datenbank und das Bestimmen eines Vorherrschens des einen oder der mehreren historischen Ereignisse in der Datenbank. Der episodische Speicher bestimmt einen Ähnlichkeitsprozentsatz für das tokenisierte Szenario basierend auf einer Ähnlichkeitsmetrik zwischen dem tokenisierten Szenario und dem einen oder den mehreren historischen Ereignissen. Die Schlussfolgerungsmaschine folgert ein mögliches Szenario durch das Anwenden einer von Abduktion, Deduktion und einer Kombination aus Abduktion und Deduktion auf die Daten, die den aktuellen Zustand der Umgebung angeben.
  • Die obigen Merkmale und Vorteile und andere Merkmale und Vorteile der Offenbarung sind aus der folgenden ausführlichen Beschreibung leicht offensichtlich, wenn sie in Verbindung mit den beigefügten Zeichnungen betrachtet wird.
  • Figurenliste
  • Andere Merkmale, Vorteile und Einzelheiten erscheinen lediglich beispielhaft in der folgenden ausführlichen Beschreibung, wobei sich die ausführliche Beschreibung auf die Zeichnungen bezieht; es zeigen:
    • 1 ein autonomes Fahrzeug mit einem zugeordneten Trajektorienplanungssystem gemäß verschiedenen Ausführungsformen;
    • 2 ein veranschaulichendes Steuersystem, das einen kognitiven Prozessor enthält, der in ein autonomes Fahrzeug integriert ist;
    • 3 eine schematische graphische Darstellung, die mehrere Hypothesenerzeugungsverfahren veranschaulicht, die geeignet sind, um zu einer Vorhersage zur Verwendung mit einem Navigationssystem des autonomen Fahrzeugs zu gelangen;
    • 4 eine schematische graphische Darstellung einer Architektur eines kognitiven Prozessors, der ein Schlussfolgerungsmodul verwendet;
    • 5 eine schematische graphische Darstellung, die den Betrieb des Folgerungsmoduls veranschaulicht;
    • 6 einen Blockschaltplan eines Systems zum Erzeugen von spekulativen Szenarien basierend auf Messungen, die durch die verschiedenen Sensoren des Fahrzeugs ausgeführt werden, und zum Bewerten der Wahrscheinlichkeit dieser Szenarien;
    • 7 eine veranschaulichende Verkehrsbedingung, in der das System nach 6 verwendet werden kann, um mögliche Handlungen oder Trajektorien für das Fahrzeug zu bewerten;
    • 8 mögliche Szenarien, die basierend auf der aktuellen Kenntnis der Verkehrsbedingung nach 7 abgeleitet werden können; und
    • 9 eine graphische Darstellung, die historisch basierte Wahrscheinlichkeiten für die verschiedenen in 8 veranschaulichten Szenarien veranschaulicht.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die folgende Beschreibung ist lediglich beispielhaft Art und ist nicht vorgesehen, um die vorliegende Offenbarung, ihre Anwendung oder Verwendungen einzuschränken. Es sollte erkannt werden, dass überall in den Zeichnungen entsprechende Bezugszeichen gleiche oder entsprechende Teile und Merkmale angeben. Der Begriff Modul, wie er hier verwendet, bezieht sich auf eine Verarbeitungsschaltungsanordnung, die eine anwendungsspezifische integrierte Schaltung (ASIC), eine elektronische Schaltung, einen Prozessor (gemeinsam benutzt, dediziert oder Gruppe) und einen Speicher, der ein oder mehrere Software- oder Firmware-Programme ausführt, eine kombinatorische Logikschaltung und/oder andere geeignete Komponenten, die die beschriebene Funktionalität bereitstellen, enthalten kann.
  • Gemäß einer beispielhaften Ausführungsform zeigt 1 ein autonomes Fahrzeug 10 mit einem zugeordneten Trajektorienplanungssystem, das bei 100 dargestellt ist, gemäß verschiedenen Ausführungsformen. Im Allgemeinen bestimmt das Trajektorienplanungssystem 100 einen Trajektorienplan für das automatisierte Fahren des autonomen Fahrzeugs 10. Das autonome Fahrzeug 10 enthält im Allgemeinen ein Chassis 12, eine Karosserie 14, die Vorderräder 16 und die Hinterräder 18. Die Karosserie 14 ist auf dem Chassis 12 angeordnet und umschließt im Wesentlichen die Komponenten des autonomen Fahrzeugs 10. Die Karosserie 14 und das Chassis 12 können gemeinsam einen Rahmen bilden. Die Räder 16 und 18 sind jeweils in der Nähe der jeweiligen Ecken der Karosserie 14 drehbar an das Chassis 12 gekoppelt.
  • In verschiedenen Ausführungsformen ist das Trajektorienplanungssystem 100 in das autonome Fahrzeug 10 aufgenommen. Das autonome Fahrzeug 10 ist z. B. ein Fahrzeug, das automatisch gesteuert ist, um Passagiere von einem Ort zu einem weiteren zu befördern. Das autonome Fahrzeug 10 ist in der veranschaulichten Ausführungsform als Personenkraftwagen dargestellt, wobei aber erkannt werden sollte, dass irgendein anderes Fahrzeug einschließlich Motorrädern, Lastkraftwagen, Geländelimousinen (SUVs), Wohnmobilen (RVs) usw. außerdem verwendet werden kann. Auf verschiedenen Ebenen kann ein autonomes Fahrzeug den Fahrer durch eine Anzahl von Verfahren unterstützen, wie z. B. Warnsignale, um bevorstehende riskante Situationen anzugeben, Indikatoren, um die Situationswahrnehmung des Fahrers durch das Vorhersagen der Bewegung anderer Agenten zu erweitern, um vor potentiellen Kollisionen zu warnen usw. Das autonome Fahrzeug weist verschiedene Stufen des Eingriffs oder der Steuerung des Fahrzeugs durch eine gekoppelte unterstützende Fahrzeugsteuerung bis zur vollständigen Steuerung aller Fahrzeugfunktionen auf. In einer beispielhaften Ausführungsform ist das autonome Fahrzeug 10 ein sogenanntes Automatisierungssystem der Stufe vier oder der Stufe fünf. Ein System der Stufe vier gibt eine „hohe Automatisierung“ an, die sich auf die für die Fahrbetriebsart spezifische Ausführung aller Aspekte der dynamischen Fahraufgabe durch ein automatisiertes Fahrsystem bezieht, selbst wenn ein menschlicher Fahrer nicht angemessen auf eine Aufforderung zum Eingreifen reagiert. Ein System der Stufe fünf gibt eine „vollständige Automatisierung“ an und bezieht sich auf die hauptamtliche Ausführung aller Aspekte der dynamischen Fahraufgabe durch ein automatisiertes Fahrsystem unter allen Straßen- und Umgebungsbedingungen, die durch einen menschlichen Fahrer gemanagt werden können.
  • Wie gezeigt ist, enthält 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 wenigstens einen Controller 34. Das Antriebssystem 20 kann in verschiedenen Ausführungsformen eine Brennkraftmaschine, eine elektrische Maschine, wie z. B. einen Fahrmotor, und/oder ein Brennstoffzellen-Antriebssystem enthalten. Das Getriebesystem 22 ist konfiguriert, die Leistung vom Antriebssystem 22 auf die Fahrzeugräder 16 und 18 des autonomen Fahrzeugs 10 gemäß wählbaren Übersetzungsverhältnissen zu übertragen. Gemäß verschiedenen Ausführungsformen kann das Getriebesystem 22 ein Stufenübersetzungs-Automatikgetriebe, ein stufenloses Getriebe oder ein anderes geeignetes Getriebe enthalten. Das Bremssystem 26 ist konfiguriert, ein Bremsmoment den Fahrzeugrädern 16 und 18 bereitzustellen. Das Bremssystem 26 kann in verschiedenen Ausführungsformen Reibungsbremsen, eine elektronische Bremse, ein Rückgewinnungsbremssystem, wie z. B. eine elektrische Arbeitsmaschine, und/oder andere geeignete Bremssysteme enthalten. Das Lenksystem 24 beeinflusst eine Position der Fahrzeugräder 16 und 18. Während für Veranschaulichungszwecke dargestellt ist, dass das Lenksystem 24 ein Lenkrad enthält, kann es in einigen Ausführungsformen, die als innerhalb des Schutzumfangs der vorliegenden Offenbarung betrachtet werden, kein Lenkrad enthalten.
  • Das Sensorsystem 28 enthält eine oder mehrere Abtastvorrichtungen 40a-40n, die beobachtbare Bedingungen der äußeren Umgebung und/oder der inneren Umgebung des Fahrzeugs 10 abtasten. Die Abtastvorrichtungen 40a-40n können Radare, Lidare, globale Positionierungssysteme, optische Kameras, Wärmekameras, Ultraschallsensoren und/oder andere Sensoren enthalten, sind aber nicht auf diese eingeschränkt. Die Abtastvorrichtungen 40a-40n erhalten Messwerte oder Daten bezüglich verschiedener Objekte oder Agenten 50 innerhalb der Umgebung des Fahrzeugs. Derartige Agenten 50 können sowohl andere Fahrzeuge, Fußgänger, Fahrräder, Motorräder usw. als auch sich nicht bewegende Objekte sein, sind aber nicht darauf eingeschränkt. Die Sensorvorrichtungen 40a-40n können außerdem Verkehrsdaten, wie z. B. Informationen hinsichtlich Lichtsignalen und Verkehrszeichen usw., erhalten.
  • Das Aktuatorsystem 30 enthält eine oder mehrere Aktuatorvorrichtungen 42a-42n, die ein oder mehrere Fahrzeugmerkmale steuern, wie z. B. das Antriebssystem 20, das Getriebesystem 22, das Lenksystem 24 und das Bremssystem 26, sind aber nicht auf diese eingeschränkt. In verschiedenen Ausführungsformen können die Fahrzeugmerkmale ferner innere und/oder äußere Fahrzeugmerkmale enthalten, wie z. B. Türen, einen Kofferraum, und Kabinenmerkmale, wie z. B. Lüftung, Musik, Beleuchtung usw., sind aber nicht auf diese eingeschränkt, (die nicht nummeriert sind).
  • Der Controller 34 enthält wenigstens einen Prozessor 44 und eine computerlesbare Speichervorrichtung oder computerlesbare Medien 46. Der Prozessor 44 kann irgendein kundenspezifisch gefertigter oder handelsüblicher Prozessor, eine Zentraleinheit (CPU), eine Graphikverarbeitungseinheit (GPU), ein Hilfsprozessor unter mehreren dem Controller 34 zugeordneten Prozessoren, ein halbleiterbasierter Mikroprozessor (in der Form eines Mikrochips oder eines Chipsatzes), ein Makroprozessor, irgendeine Kombination daraus oder im Allgemeinen irgendeine Vorrichtung zum Ausführen von Anweisungen sein. Die computerlesbare Speichervorrichtung oder die computerlesbaren Medien 46 können z. B. flüchtigen und nichtflüchtigen Speicher in Festwertspeicher (ROM), Schreib-LeseSpeicher (RAM) und Keep-Alive-Speicher (KAM) enthalten. KAM ist ein beständiger oder nichtflüchtiger Speicher, der verwendet werden kann, um verschiedene Betriebsvariable zu speichern, während der Prozessor 44 ausgeschaltet ist. Die computerlesbare Speichervorrichtung oder die computerlesbaren Medien 46 können unter Verwendung irgendeiner Anzahl bekannter Speichervorrichtungen, wie z. B. PROMs (programmierbare Festwertspeicher), EPROMs (elektrisch programmierbare PROMs), EEPROMs (elektrisch löschbare PROMs), Flash-Speicher oder irgendwelche anderen elektrischen, magnetischen, optische Speichervorrichtungen oder Kombinationen davon, die Daten speichern können, von denen einige ausführbare Anweisungen repräsentieren, die durch den Controller 34 beim Steuern, Navigieren und Betreiben des autonomen Fahrzeugs 10 verwendet werden, implementiert sein.
  • Die Anweisungen können ein oder mehrere separate Programme enthalten, von denen jedes eine geordnete Auflistung von ausführbaren Anweisungen zum Implementieren logischer Funktionen umfasst. Die Anweisungen, wenn sie durch den Prozessor 44 ausgeführt werden, empfangen und verarbeiten Signale von dem Sensorsystem 28, führen Logik, Berechnungen, Verfahren und/oder Algorithmen zum automatischen Steuern der Komponenten des Fahrzeugs 10 aus und erzeugen Steuersignale für das Aktuatorsystem 30, um die Komponenten des Fahrzeugs 10 basierend auf der Logik, den Berechnungen, den Verfahren und/oder den Algorithmen automatisch zu steuern.
  • Der Controller 34 steht ferner mit dem kognitiven Prozessor 32 in Verbindung. Der kognitive Prozessor 32 empfängt verschiedene Daten vom Controller 34 und von den Abtastvorrichtungen 40a-40n des Sensorsystems 28 und führt verschiedene Berechnungen aus, um dem Controller 34 eine Trajektorie bereitzustellen, damit sie der Controller 34 über die eine oder die mehreren Aktuatorvorrichtungen 42a-42n am autonomen Fahrzeug 10 implementiert. Eine ausführliche Erörterung des kognitiven Prozessors 32 ist bezüglich 2 bereitgestellt.
  • 2 zeigt ein veranschaulichendes Steuerungssystem 200, das einen kognitiven Prozessor 32 enthält, der in ein autonomes Fahrzeug 10 integriert ist. 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 enthält ein Datenerfassungssystem 204 (z. B. die Sensoren 40a-40n nach 1). Das Datenerfassungssystem 204 erhält verschiedene Daten zum Bestimmen eines Zustands des autonomen Fahrzeugs 10 und verschiedener Agenten in der Umgebung des autonomen Fahrzeugs 10. Solche Daten enthalten, sind aber nicht eingeschränkt auf, sowohl kinematische Daten, Positions- oder Stellungsdaten usw. des autonomen Fahrzeugs 10 als auch Daten über andere Agenten, einschließlich der Entfernung, der Relativgeschwindigkeit (Doppler), der Höhe, der Winkelposition usw. Das autonome Fahrzeug 10 enthält ferner ein Sendemodul 206, das die erfassten Daten gepackt und die gepackten Daten an die Kommunikationsschnittstelle 208 des kognitiven Prozessors 32 sendet, wie im Folgenden erörtert wird. Das autonome Fahrzeug 10 enthält ferner ein Empfangsmodul 202, das Betriebsbefehle von dem kognitiven Prozessor 32 empfängt und die Befehle an dem autonomen Fahrzeug 10 ausführt, um das autonome Fahrzeug 10 zu navigieren. Der kognitive Prozessor 32 empfängt die Daten von dem autonomen Fahrzeug 10, berechnet eine Trajektorie für das autonome Fahrzeug 10 basierend auf den bereitgestellten Zustandsinformationen und den hier offenbaren Verfahren und stellt die Trajektorie dem autonomen Fahrzeug 10 an dem Empfangsmodul 202 bereit. Das autonome Fahrzeug 10 implementiert dann die durch den kognitiven Prozessor 32 bereitgestellte Trajektorie.
  • Der kognitive Prozessor 32 enthält verschiedene Module zur Kommunikation mit dem autonomen Fahrzeug 10, einschließlich des Schnittstellenmoduls 208 zum Empfangen von Daten vom autonomen Fahrzeug 10 und eines Trajektoriensenders 222 zum Senden von Anweisungen, wie z. B. einer Trajektorie, an das autonome Fahrzeug 10. Der kognitive Prozessor 32 enthält ferner einen Arbeitsspeicher 210, der verschiedene sowohl vom autonomen Fahrzeug 10 empfangene Daten als auch verschiedene Zwischenberechnungen des kognitiven Prozessors 32 speichert. Ein Hypothetisierermodul(e) 212 des kognitiven Prozessors 32 wird (werden) verwendet, um verschiedene hypothetische Trajektorien und Bewegungen eines oder mehrerer Agenten in der Umgebung des autonomen Fahrzeugs 10 unter Verwendung mehrerer möglicher Vorhersageverfahren und der Zustandsdaten, die im Arbeitsspeicher 210 gespeichert sind, vorzuschlagen. Ein Hypothesenauflöser 214 des kognitiven Prozessors 32 empfängt die mehreren hypothetischen Trajektorien für jeden Agenten in der Umgebung und bestimmt eine wahrscheinlichste Trajektorie für jeden Agenten aus den mehreren hypothetischen Trajektorien.
  • Der kognitive Prozessor 32 enthält ferner ein oder mehrere Entscheidermodule 216 und einen Entscheidungsauflöser 218. Das (die) Entscheidermodul(e) 216 empfängt (empfangen) die wahrscheinlichste Trajektorie für jeden Agenten in der Umgebung vom Hypothesenauflöser 214 und berechnet (berechnen) mehrere Kandidatentrajektorien und -verhalten für das autonome Fahrzeug 10 basierend auf den wahrscheinlichsten Agententrajektorien. Jede bzw. jedes der mehreren Kandidatentrajektorien und -verhalten wird dem Entscheidungsauflöser 218 bereitgestellt. Der Entscheidungsauflöser 218 wählt oder bestimmt eine optimale oder gewünschte Trajektorie und ein optimales oder gewünschtes Verhalten für das autonome Fahrzeug 10 aus den Kandidatentrajektorien und -verhalten.
  • Der kognitive Prozessor 32 enthält ferner einen Trajektorienplaner 220, der eine Trajektorie des autonomen Fahrzeugs bestimmt, die dem autonomen Fahrzeug 10 bereitgestellt wird. Der Trajektorienplaner 220 empfängt das Fahrzeugverhalten und die Trajektorie vom Entscheidungsauflöser 218, eine optimale Hypothese für jeden Agenten 50 vom Hypothesenauflöser 214 und die neuesten Umgebungsinformationen in Form von „Zustandsdaten“, um den Trajektorienplan einzustellen. Dieser zusätzliche Schritt beim Trajektorienplaner 220 stellt sicher, dass irgendwelche anomalen Verarbeitungsverzögerungen bei der asynchronen Berechnung der Agentenhypothesen gegen die neuesten abgetasteten Daten von dem Datenerfassungssystem 204 geprüft werden. Dieser zusätzliche Schritt aktualisiert die optimale Hypothese bei der Berechnung der endgültigen Trajektorie im Trajektorienplaner 220 entsprechend.
  • Die bestimmte Fahrzeugtrajektorie wird vom Trajektorienplaner 220 dem Trajektoriensender 222 bereitgestellt, der dem autonomen Fahrzeug 10 (z. B. am Controller 34) eine Trajektoriennachricht zur Implementierung im autonomen Fahrzeug 10 bereitstellt.
  • Der kognitive Prozessor 32 enthält ferner einen Modulator 230, der verschiedene Grenzen und Schwellenwerte für das (die) Hypothesierermodul(e) 212 und das (die) Entscheidermodul(e) 216 steuert. Der Modulator 230 kann außerdem Änderungen an den Parametern für den Hypothesenauflöser 214 anwenden, um zu beeinflussen, wie er das optimale Hypothesenobjekt für einen gegebenen Agenten 50, die Entscheider und den Entscheidungsauflöser auswählt. Der Modulator 230 ist ein Diskriminator, der die Architektur adaptiv macht. Der Modulator 230 kann sowohl die Berechnungen, die ausgeführt werden, als auch das tatsächliche Ergebnis der deterministischen Berechnungen durch das Ändern der Parameter in den Algorithmen selbst verändern.
  • Ein Bewertermodul 232 des kognitiven Prozessors 32 berechnet kontextbezogene Informationen und stellt die dem kognitiven Prozessor bereit, die Fehlermaße, Hypothesenvertrauensmaße, Maße an der Komplexität der Umgebung und des Zustands des autonomen Fahrzeugs 10, eine Leistungsbewertung des autonomen Fahrzeugs 10 in Anbetracht der Umgebungsinformationen einschließlich der Agentenhypothesen und der Trajektorie des autonomen Fahrzeugs (entweder historisch oder zukünftig) enthalten. Der Modulator 230 empfängt Informationen vom Bewerter 232, um Änderungen an den Verarbeitungsparametern für die Hypothetisiererer 212, den Hypothesenauflöser 214, die Entscheider 216 und den Schwellenwert-Entscheidungsauflösungsparametern für den Entscheidungsauflöser 218 zu berechnen. Ein virtueller Controller 224 implementiert die Trajektoriennachricht und bestimmt eine Vorsteuerungstrajektorie verschiedener Agenten 50 in Reaktion auf die Trajektorie.
  • Die Modulation findet als eine Reaktion auf die Unsicherheit statt, wie sie durch das Bewertermodul 232 gemessen wird. In einer Ausführungsform empfängt der Modulator 230 die Vertrauensniveaus, die den Hypothesenobjekten zugeordnet sind. Diese Vertrauensniveaus können von den Hypothesenobjekten zu einem einzelnen Zeitpunkt oder über ein ausgewähltes Zeitfenster gesammelt werden. Das Zeitfenster kann variabel sein. Das Bewertermodul 232 bestimmt die Entropie der Verteilung dieser Vertrauensniveaus. Zusätzlich können im Bewertermodul 232 außerdem historische Fehlermaße an den Hypothesenobjekten gesammelt und bewertet werden.
  • Diese Typen von Bewertungen dienen als ein interner Kontext und ein internes Maß der Unsicherheit für den kognitiven Prozessor 32. Diese kontextbezogenen Signale vom Bewertermodul 232 werden für den Hypothesenauflöser 214, den Entscheidungsauflöser 218 und den Modulator 230 verwendet, die basierend auf den Ergebnissen der Berechnungen die Parameter für die Hypothetisierermodule 212 ändern können.
  • Die verschiedenen Module des kognitiven Prozessors 32 arbeiten unabhängig voneinander und werden mit individuellen Aktualisierungsraten aktualisiert (die z. B. in 2 durch z. B. LCM-Hz, h-Hz, d-Hz, e-Hz, m-Hz, t-Hz angegeben sind).
  • In Betrieb empfängt das Schnittstellenmodul 208 des kognitiven Prozessors 32 die gepackten Daten vom Sendemodul 206 des autonomen Fahrzeugs 10 an einem Datenempfänger 208a, wobei es die empfangenen Daten an einem Datenparser 208b parst. Der Datenparser 208b bringt die Daten in ein Datenformat, das hier als eine Eigenschaftstasche bezeichnet wird, die im Arbeitsspeicher 210 gespeichert und durch die verschiedenen Hypothetisierermodule 212, Entscheidermodule 216 usw. des kognitiven Prozessors 32 verwendet werden kann. Die spezielle Klassenstruktur dieser Datenformate sollte nicht als eine Einschränkung der Erfindung betrachtet werden.
  • Der Arbeitsspeicher 210 extrahiert die Informationen aus der Sammlung von Eigenschaftstaschen während eines konfigurierbaren Zeitfensters, um Momentaufnahmen des autonomen Fahrzeugs und verschiedener Agenten zu konstruieren. Diese Momentaufnahmen werden mit einer festen Frequenz veröffentlicht und zu den abonnierenden Modulen geschoben. Die durch den Arbeitsspeicher 210 aus den Eigenschaftstaschen erzeugte Datenstruktur ist eine „Zustands“-Datenstruktur, die gemäß einem Zeitstempel organisierte Informationen enthält. Eine Folge von erzeugten Momentaufnahmen umfasst deshalb dynamische Zustandsinformationen für ein weiteres Fahrzeug oder einen weiteren Agenten. Die Eigenschaftstaschen innerhalb einer ausgewählten Zustands-Datenstruktur enthalten Informationen über Objekte, wie z. B. andere Agenten, das autonome Fahrzeug, Routeninformationen usw. Die Eigenschaftstasche für ein Objekt enthält ausführliche Informationen über das Objekt, wie z. B. den Ort des Objekts, die Geschwindigkeit, den Steuerkurswinkel usw. Diese Zustandsdatenstruktur fließt überall im Rest des kognitiven Prozessors 32 für die Berechnungen. Die Zustandsdaten können sich sowohl auf Zustände des autonomen Fahrzeugs als auch auf Agentenzustände usw. beziehen.
  • Das (die) Hypothetisierermodul(e) 212 zieht (ziehen) die 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 die Zustandsdaten zu dem (den) Hypothetisierermodul(e) 212 schieben. Das (die) Hypothetisierermodul(e) 212 kann (können) mehrere Hypothetisierermodule enthalten, wobei jedes der mehreren Hypothetisierermodule ein anderes Verfahren oder eine andere Technik zum Bestimmen des möglichen Ergebnisses des (der) Agenten verwendet. Ein Hypothetisierermodul kann ein mögliches Ergebnis unter Verwendung eines kinematischen Modells bestimmen, das grundlegende Physik und Mechanik auf die Daten im Arbeitsspeicher 210 anwendet, um einen anschließenden Zustand jedes Agenten 50 vorherzusagen. Andere Hypothetisierermodule können einen anschließenden Zustand jedes Agenten 50 z. B. durch das Verwenden eines kinematischen Regressionsbaums auf die Daten, das Anwenden eines Gaußschen Mischungsmodells/Markov-Mischungsmodells (GMM-HMM) auf die Daten, das Anwenden eines rekursiven neuronalen Netzes (RNN) auf die Daten, anderer Prozesse des maschinellen Lernens, das Ausführen eines logikbasierten Schlussfolgerns an den Daten usw. vorhersagen. Die Hypothetisierermodule 212 sind modulare Komponenten des kognitiven Prozessors 32 und können auf Wunsch zu dem kognitiven Prozessor 32 hinzugefügt oder von ihm entfernt werden.
  • Jedes Hypothetisierermodul 212 enthält eine Hypothesenklasse zum Vorhersagen des Agentenverhaltens. Die Hypothesenklasse enthält Spezifikationen für die Hypothesenobjekte und einen Satz von Algorithmen. Sobald sie aufgerufen ist, wird ein Hypothesenobjekt für einen Agenten von der Hypothesenklasse erzeugt. Das Hypothesenobjekt haftet an den Spezifikationen der Hypothesenklasse und verwendet die Algorithmen der Hypothesenklasse. Es können mehrere Hypothesenobjekte parallel zueinander ausgeführt werden. Jedes Hypothetisierermodul 212 erzeugt basierend auf den aktuellen Arbeitsdaten seine eigene Vorhersage für jeden Agenten 50 und sendet die Vorhersage zurück an den Arbeitsspeicher 210 zur Speicherung und zur zukünftigen Verwendung. Wenn dem Arbeitsspeicher 210 neue Daten bereitgestellt werden, aktualisiert jedes Hypothetisierermodul 212 seine Hypothese und schiebt die aktualisierte Hypothese zurück in den Arbeitsspeicher 210. Jedes Hypothetisierermodul 212 kann wählen, seine Hypothese mit seiner eigenen Aktualisierungsrate (z. B. der Rate h-Hz) zu aktualisieren. Jedes Hypothetisierermodul 212 kann einzeln als ein Abonnementdienst wirken, von dem seine aktualisierte Hypothese zu den relevanten Module geschoben wird.
  • Jedes Hypothesenobjekt, das durch ein Hypothetisierermodul 212 erzeugt wird, ist eine Vorhersage in der Form einer Zustandsdatenstruktur für einen Zeitvektor, für definierte Entitäten, wie z. B. einen Ort, eine Geschwindigkeit, einen Steuerkurs usw. In einer Ausführungsform kann das (können die) Hypothetisierermodul(e) 212 ein Kollisionsdetektionsmodul enthalten, das den auf die Vorhersagen bezogenen Vorsteuerungsfluss von Informationen verändern kann. Falls ein Hypothetisierermodul 212 eine Kollision zweier Agenten 50 vorhersagt, kann spezifisch ein weiteres Hypothetisierermodul aufgerufen werden, um Einstellungen für das Hypothesenobjekt zu erzeugen, um die erwartete Kollision zu berücksichtigen oder um einen Warnmerker an andere Module zu senden, um zu versuchen, das gefährliche Szenario abzuschwächen oder das Verhalten zu ändern, um das gefährliche Szenario zu vermeiden.
  • Für jeden Agenten 50 empfängt der Hypothesenauflöser 214 die relevanten Hypothesenobjekte, wobei er ein einzelnes Hypothesenobjekt aus den Hypothesenobjekten auswählt. In einer Ausführungsform ruft der Hypothesenauflöser 214 einen einfachen Auswahlprozess auf. Alternativ kann der Hypothesenauflöser 214 einen Fusionsprozess an den verschiedenen Hypothesenobjekten aufrufen, um ein Hybrid-Hypothesenobjekt zu erzeugen.
  • Wenn ein als ein Hypothesenobjekt implementiertes Rechenverfahren länger dauert, um fertigzustellen, dann empfangen der Hypothesenauflöser 214 und die stromabwärts gelegenen Entscheidermodule 216 das Hypothesenobjekt von diesem spezifischen Hypothesemodul zu einem frühesten verfügbaren Zeitpunkt durch einen Abonnement-Schubprozess, weil die Architektur des kognitiven Prozessors asynchron ist. Die Zeitstempel, die einem Hypothesenobjekt zugeordnet sind, informieren die stromabwärts gelegenen Module über den relevanten Zeitrahmen für das Hypothesenobjekt und ermöglichen die Synchronisation mit den Hypothesenobjekten und/oder den Zustandsdaten von anderen Modulen. Die Zeitspanne, für die die Vorhersage des Hypothesenobjekts gilt, ist folglich zeitlich über die Module ausgerichtet.
  • Wenn z. B. ein Entscheidermodul 216 ein Hypothesenobjekt empfängt, vergleicht das Entscheidermodul 216 den Zeitstempel des Hypothesenobjekts mit einem Zeitstempel für die jüngsten Daten (d. h., die Geschwindigkeit, den Ort, den Steuerkurs usw.) des autonomen Fahrzeugs 10. Wenn der Zeitstempel des Hypothesenobjekts als zu alt betrachtet wird (z. B. die Daten des autonomen Fahrzeugs um ein ausgewähltes Zeitkriterium zurückdatiert), kann das Hypothesenobjekt ignoriert werden, bis ein aktualisiertes Hypothesenobjekt empfangen wird. Die Aktualisierungen, die auf den neuesten Informationen basieren, werden außerdem durch den Trajektorienplaner 220 ausgeführt.
  • Das (die) Entscheidermodul(e) 216 enthält (enthalten) Module, die verschiedene Kandidatenentscheidungen in der Form von Trajektorien und Verhalten für das autonome Fahrzeug 10 erzeugen. Das (die) Entscheidermodul(e) 216 empfängt (empfangen) eine Hypothese für jeden Agenten 50 vom Hypothesenauflöser 214 und verwendet (verwenden) diese Hypothesen und eine nominelle Zieltrajektorie für das autonome Fahrzeug 10 als Randbedingungen. Das (die) Entscheidermodul(e) 216 kann (können) mehrere Entscheidermodule enthalten, wobei jedes der mehreren Entscheidermodule ein anderes Verfahren oder eine andere Technik zum Bestimmen einer möglichen Trajektorie oder eines möglichen Verhaltens für das autonome Fahrzeug 10 verwendet. Jedes Entscheidermodul kann asynchron arbeiten und empfängt verschiedene Eingangszustände vom Arbeitsspeicher 212, wie z. B. die durch den Hypothesenauflöser 214 erzeugte Hypothese. Das (die) Entscheidermodul(e) 216 ist (sind) modulare Komponenten und kann (können) auf Wunsch zu dem kognitiven Prozessor 32 hinzugefügt werden oder von ihm entfernt werden. Jedes Entscheidermodul 216 kann seine Entscheidungen mit seiner eigenen Aktualisierungsrate (z. B. der Rate d-Hz) aktualisieren.
  • Ähnlich zu einem Hypothetisierermodul 212 enthält ein Entscheidermodul 216 eine Entscheiderklasse zum Vorhersagen einer Trajektorie und/oder eines Verhaltens eines autonomen Fahrzeugs. Die Entscheiderklasse enthält Spezifikationen für die Entscheiderobjekte und einen Satz von Algorithmen. Sobald sie aufgerufen ist, wird ein Entscheiderobjekt für einen Agenten 50 von der Entscheiderklasse erzeugt. Das Entscheiderobjekt haftet an den Spezifikationen der Entscheiderklasse und verwendet den Algorithmus der Entscheiderklasse. Es können mehrere Entscheiderobjekte parallel zueinander ausgeführt werden.
  • Der Entscheidungsauflöser 218 empfängt die verschiedenen Entscheidungen, die durch das eine oder die mehreren Entscheidermodule erzeugt worden sind, und erzeugt ein einziges Trajektorien- und Verhaltensobjekt für das autonome Fahrzeug 10. Der Entscheidungsauflöser kann außerdem verschiedene kontextbezogene Informationen von den Bewertermodulen 232 empfangen, wobei die kontextbezogenen Informationen verwendet werden, um das Trajektorien- und Verhaltensobjekt zu erzeugen.
  • Der Trajektorienplaner 220 empfängt die Trajektorien- und Verhaltensobjekte von dem Entscheidungsauflöser 218 zusammen mit dem Zustand des autonomen Fahrzeugs 10. Der Trajektorienplaner 220 erzeugt dann eine Trajektorienachricht, die dem Trajektoriensender 222 bereitgestellt wird. Der Trajektoriensender 222 stellt die Trajektoriennachricht unter Verwendung eines für die Kommunikation mit dem autonomen Fahrzeug 10 geeigneten Formats dem autonomen Fahrzeug 10 zur Implementierung im autonomen Fahrzeug 10 bereit.
  • Außerdem sendet der Trajektoriensender 222 die Trajektoriennachricht an den virtuellen Controller 224. Der virtuelle Controller 224 stellt die Daten in einer Vorsteuerungsschleife für den kognitiven Prozessor 32 bereit. Die in den anschließenden Berechnungen an das (die) Hypothetisierermodul(e) 212 gesendete Trajektorie wird durch den virtuellen Controller 224 verfeinert, um einen Satz zukünftiger Zustände des autonomen Fahrzeugs 10 zu simulieren, die sich aus dem Versuchen ergeben, der Trajektorie zu folgen. Diese zukünftigen Zustände werden durch das (die) Hypothetisierermodul(e) 212 verwendet, um Vorsteuerungsvorhersagen auszuführen.
  • Verschiedene Aspekte des kognitiven Prozessors 32 stellen Rückkopplungsschleifen bereit. Eine erste Rückkopplungsschleife wird durch den virtuellen Controller 224 bereitgestellt. Der virtuelle Controller 224 simuliert eine Operation des autonomen Fahrzeugs 10 basierend auf der bereitgestellten Trajektorie und bestimmt zukünftige Zustände oder sagt zukünftige Zustände vorher, die durch jeden Agenten 50 in Reaktion auf die durch das autonome Fahrzeug 10 genommene Trajektorie eingenommen werden. Diese zukünftigen Zustände der Agenten können als Teil der ersten Rückkopplungsschleife den Hypothetisierermodulen bereitgestellt werden.
  • Eine zweite Rückkopplungsschleife tritt auf, weil verschiedene Module historische Informationen in ihren Berechnungen verwenden, um Parameter zu lernen und zu aktualisieren. Das (die) Hypothetisierermodul(e) 212 kann (können) z. B. seine (ihre) eigenen Puffer implementieren, um historische Zustandsdaten zu speichern, sei es, dass die Zustandsdaten aus einer Beobachtung stammen oder aus einer Vorhersage (z. B. vom virtuellen Controller 224) stammen. In einem Hypothetisierermodul 212, das einen kinematischen Regressionsbaum verwendet, sind z. B. die historischen Beobachtungsdaten für jeden Agenten während mehrerer Sekunden gespeichert und werden bei der Berechnung für die Zustandsvorhersagen verwendet.
  • Der Hypothesenauflöser 214 weist in seinem Entwurf außerdem eine Rückkopplung auf, da er außerdem die historischen Informationen für die Berechnungen verwendet. In diesem Fall werden die historischen Informationen über die Beobachtungen verwendet, um die Vorhersagefehler in der Zeit zu berechnen und um die Hypothesenauflösungsparameter unter Verwendung der Vorhersagefehler anzupassen. Ein gleitendes Fenster kann verwendet werden, um die historischen Informationen auszuwählen, die zum Berechnen von Vorhersagefehlern und zum Lernen von Hypothesenauflösungsparametern verwendet werden. Für das kurzfristige Lernen steuert das gleitende Fenster die Aktualisierungsrate der Parameter des Hypothesenauflösers 214. Über größere Zeitskalen können die Vorhersagefehler während einer ausgewählten Episode (wie z. B. einer Linksabbiegeepisode) angesammelt und verwendet werden, um die Parameter nach der Episode zu aktualisieren.
  • Der Entscheidungsauflöser 218 verwendet außerdem die historischen Informationen für die Rückkopplungsberechnungen. Die historischen Informationen über die Leistung der Trajektorien des autonomen Fahrzeugs werden verwendet, um optimale Entscheidungen zu berechnen und um die Entscheidungsauflösungsparameter entsprechend anzupassen. Dieses Lernen kann beim Entscheidungsauflöser 218 auf mehreren Zeitskalen stattfinden. In einer kürzesten Zeitskala werden die Informationen über die Leistung unter Verwendung der Bewertermodule 232 kontinuierlich berechnet und zu dem Entscheidungsauflöser 218 rückgekoppelt. Ein Algorithmus kann z. B. verwendet werden, um Informationen über die Leistung einer Trajektorie bereitzustellen, die durch ein Entscheidermodul sowohl basierend auf mehreren Metriken als auch basierend auf anderen kontextbezogenen Informationen bereitgestellt werden. Diese kontextbezogenen Informationen können als ein Belohnungssignal in Verstärkungs-Lernprozessen zum Betreiben des Entscheidungsauflösers 218 über verschiedene Zeitskalen verwendet werden. Die Rückkopplung kann für den Entscheidungsauflöser 218 asynchron stattfinden, wobei sich der Entscheidungsauflöser 218 beim Empfangen der Rückkopplung anpassen kann.
  • 3 ist eine schematische graphische Darstellung 300, die mehrere Hypothesenerzeugungsverfahren veranschaulicht, die geeignet sind, um bei einer Vorhersage zur Verwendung mit einem Navigationssystem des autonomen Fahrzeugs 10 anzukommen. Jeder Pfeil repräsentiert ein Verfahren zum Erzeugen einer Hypothese. Der Pfeil 302 repräsentiert das Verwenden physikbasierter oder kinematischer Berechnungen, um eine Bewegung eines Agenten, wie z. B. des Agenten 50, vorherzusagen. Der Pfeil 304 repräsentiert das Verwenden eines datengesteuerten statistischen Prädiktors (HMM), um die Bewegung des Agenten 50 vorherzusagen. Der statistische Prädiktor kann verschiedene statistische Modelle, wie z. B. Markov-Modelle, anwenden, um die Agentenbewegung vorherzusagen. Der Pfeil 306 repräsentiert das Verwenden eines musterbasierten Prädiktors oder eines episodischen Vorhersageverfahrens, um die Bewegung des Agenten 50 vorherzusagen. Der Pfeil 308 repräsentiert ein Vorhersageverfahren unter Verwendung einer Schlussfolgerungsmaschine. Die durch den Pfeil 308 bereitgestellten Verfahren stellen ein wissensbasiertes Schlussfolgern bereit, um die durch die Pfeile 302, 304 und 306 dargestellten Verfahren zu ergänzen.
  • 4 zeigt eine schematische graphische Darstellung einer Architektur eines kognitiven Prozessors 400, der ein Schlussfolgerungsmodul verwendet. Der kognitive Prozessor 400 enthält ein Schnittstellenmodul 402, einen Arbeitsspeicher 404, einen oder mehrere Hypothetisiererer 406, ein Schlussfolgerungsmodul 408, einen oder mehrere Entscheider 410 und einen Entscheidungsauflöser und die Trajektorienplaner 412.
  • Das Schnittstellenmodul 402 empfängt die Daten, wie z. B. kinematische Daten usw., vom autonomen Fahrzeug 10. Der Arbeitsspeicher 404 speichert sowohl diese empfangenen Daten als auch verschiedene Zwischenberechnungen des einen oder der mehreren Hypothetisiererer 406. Der eine oder die mehreren Hypothetisiererer 406 können einen kinematischen Hypothetisiererer zum Vorhersagen der Agentenbewegung unter Verwendung physikalischer Gleichungen, einen statistischen Hypothetisiererer, der die Agentenbewegung basierend auf statistischen Regeln vorhersagt, die auf die empfangenen Daten angewendet werden, und einen episodischen Hypothetisiererer, der eine Hypothese basierend auf raumzeitlichen Daten und unter Verwendung eines episodischen Speichers (d. h., historischer diskretisierter Szenarien) erzeugt, enthalten, sind aber nicht auf diese eingeschränkt. Der eine oder mehrere Entscheider 410 empfangen die Hypothesen für die Agenten von dem einen oder den mehreren Hypothetisiererern 406 und bestimmen eine oder mehrere mögliche Trajektorien für das autonome Fahrzeug basierend auf den Hypothesen. Die eine oder mehreren möglichen Trajektorien für das autonome Fahrzeug werden dem Entscheidungsauflöser und dem Trajektorienplaner 412 bereitgestellt, der eine Trajektorie für das autonome Fahrzeug auswählt und die Trajektorie dem autonomen Fahrzeug zur Implementierung bereitstellt.
  • Der kognitive Prozessor 400 enthält ferner ein Schlussfolgerungsmodul 408 zum Anwenden verschiedener zusätzlicher Vorhersagefähigkeiten auf die Hypothesen. Der eine oder die mehreren Hypothetisiererer 406 und das Schlussfolgerungsmodul 408 lesen die Informationen, die im Arbeitsspeicher 404 gespeichert sind, um ihre Vorhersagen zu machen. Zusätzlich akzeptiert das Schlussfolgerungsmodul 408 die durch den einen oder die mehreren Hypothetisiererer 406 gemachten Vorhersagen, wobei es eine oder mehrere Vorhersagen an den einen oder die mehreren Entscheider 410 ausgibt.
  • 5 zeigt eine schematische graphische Darstellung, die den Betrieb des Schlussfolgerungsmoduls 408 veranschaulicht. Das Schlussfolgerungsmodul 408 enthält einen Schlussfolgerer 502 zum Erzeugen einer oder mehrerer Hypothesen aus den empfangenen Daten. Der Schlussfolgerer 502 enthält eine Datenbank 504 von Axiomen oder kontextbezogenen Regeln, wie z. B. Verkehrsgesetze, situationsbezogene Verkehrsverhaltenstendenzen und lokale Geschwindigkeiten. Das Schlussfolgerungsmodul 408 enthält ferner eine Schlussfolgerungsmaschine 506, die verschiedene Schlussfolgerungsoperationen ausführt, um eine oder mehrere Hypothesen zu erzeugen. Die Schlussfolgerungsmaschine 506 kann sowohl ein Schlussfolgern 508 einer abduktiven Folgerung als auch eine Schlussfolgerung 510 einer deduktiven Folgerung an den empfangenen Daten ausführen.
  • Das Schlussfolgern einer abduktiven Folgerung bezieht sich auf das Bestimmen einer Voraussetzung einer logischen Aussage basierend auf ihrer Folgerung. In Anbetracht einer logischen Voraussetzung-Folgerung-Aussage p(x)→q(x) und wobei die empfangenen Daten eine Tatsache q(a) angeben, könnte die abduktive Folgerung eine Bedingung oder Tatsache p(a) folgern. Die abduktive Folgerung kann eine Tatsache p(a) bestimmen, die zeitlich mit der Schlussfolgerung zusammenfällt oder die der Tatsache q(a) zeitlich vorausgeht. Das Schlussfolgern einer deduktiven Folgerung bezieht sich auf das Bestimmen der Folgerung einer logischen Aussage basierend auf ihrer Voraussetzung. In Anbetracht der logischen Voraussetzung-Folgerung-Aussage p(x)→q(x) und wobei die empfangenen Daten eine Tatsache q(a) angeben, kommt die deduktive Folgerung logisch bei der Folgerung der Tatsache q(a) basierend auf der Folgerung q(x) an. Die deduktive Folgerung kann eine Tatsache q(a) bestimmen, die zu der Tatsache p(a) zeitlich äquivalent ist oder für die vorhergesagt wird, dass sie nach der Tatsache p(a) auftritt.
  • Die konstruktive Verwendung des abduktiven und des deduktiven Schlussfolgerns kann in der Schlussfolgerungsmaschine 506 verwendet werden, um eine oder mehrere Hypothesen zu erzeugen. Insbesondere kann sowohl das abduktive als auch das deduktive Schlussfolgern auf einen Satz von Tatsachen angewendet werden. Das abduktive Schlussfolgern kann verwendet werden, um logische Regeln rückwärts anzuwenden, um basierend auf den empfangenen Tatsachen in der Gegenwart einen Satz von Bedingungen oder Tatsachen zu erhalten, die in der Vergangenheit aufgetreten sein müssen. Diese rückwärtsgerichteten Bedingungen oder Tatsachen, die aus dem abduktiven Schlussfolgern erhalten werden, können dann als die Voraussetzungen und/oder die Annahmen in einem Schritt des deduktiven Schlussfolgerns verwendet werden, um eine vorwärtsgerichtete Bedingung, wie z. B. eine Vorhersage einer Bewegung eines Agenten, zu erhalten. Das autonome Fahrzeug kann dann basierend auf der vorhergesagten Vorwärtsbedingung, die durch diesen Rückwärts-Vorwärts-Folgerungsprozess abgeleitet worden ist, betrieben werden. Der Rückwärts-Vorwärts-Folgerungsprozess nimmt historische Bedingungen in zukünftige Fahrvorhersagen auf und stellt dadurch Daten bereit, um das Fahrzeug auf zukünftige Fahranforderungen vorzubereiten.
  • In einer Ausführungsform werden die Hypothesen von der Schlussfolgerungsmaschine 506 einer Hypothesenauswahlmaschine 512 bereitgestellt. Die Hypothesenauswahlmaschine 512 entfernt oder überarbeitet redundante Hypothesen und jene Hypothesen, die nicht in ein gegebenes Verkehrsszenario passen. Ein Hypothesenfilter 514 verringert dann die Anzahl der Hypothesen auf jene, die für die aktuelle Situation des autonomen Fahrzeugs relevant sind. Ein Agent, der auf einem Seitenstreifen einer Fernverkehrsstraße angehalten hat, kann z. B. für das autonome Fahrzeug, das entlang der Fernverkehrsstraße fährt, nicht relevant sein. Die verbleibenden Hypothesen werden dem einen oder mehreren Entscheidern 410 als Vorhersagen bereitgestellt.
  • Das Schlussfolgerungsmodul 408 arbeitet durch das Empfangen von Daten in Form von logischen Termen und Tatsachen von einem symbolischen Transformationsmodul 516. Das symbolische Transformationsmodul 516 empfängt Zeitreihenbeobachtungen 518, die hier als Token bezeichnet werden, vom autonomen Fahrzeug und setzt diese Token in logische Terme und Tatsachen um, die im Schlussfolgerungsmodul 408 verwendet werden können. Zusätzlich werden die Hypothesen von dem einen oder den mehreren Hypothetisierern 406 dem symbolischen Transformationsmodul 516 bereitgestellt, das die Hypothesen ähnlich in logische Terme und Tatsachen umsetzt, die im Schlussfolgerungsmodul 408 verwendet werden können.
  • Wie in 5 gezeigt ist, ist das Schlussfolgerungsmodul 408 in einem einzigen Prozessor implementiert. In alternativen Ausführungsformen kann die Schlussfolgerungsmaschine über mehrere Prozessoren oder auf einem cloud-basierten Satz von Prozessoren implementiert sein.
  • 6 zeigt einen Blockschaltplan 600 eines Systems zum Erzeugen von spekulativen Szenarien basierend auf Messungen, die durch die verschiedenen Sensoren des Fahrzeugs ausgeführt werden, und zum Bewerten der Wahrscheinlichkeiten dieser Szenarien. Das System enthält ein Messsystem 602 zum Erhalten von Messwerten einer das Fahrzeug 10 umgebenden Umgebung und eine Schlussfolgerungsmaschine (einen symbolischen Schlussfolgerer 604), die eine oder mehrere Hypothesen oder mögliche Szenarien basierend auf diesen Messwerten erzeugt. Der symbolische Schlussfolgerer 604 enthält eine Datenbank 504 von Axiomen oder kontextbezogenen Regeln, wie z. B. Verkehrsgesetze, situationsbezogene Verkehrsverhaltenstendenzen und lokale Geschwindigkeiten. Der symbolische Schlussfolgerer 604 abduziert oder deduziert ein oder mehrere Szenarien durch das Anwenden dieser kontextbezogenen Regeln auf die Daten von dem Messsystem 602.
  • Das System enthält außerdem eine Folgerungsbewertungsmaschine (IEE) 606 und einen episodischen Speicher 608. Die IEE 606 bestimmt eine logikbasierte Wahrscheinlichkeit 610 für jedes des einen oder der mehreren möglichen Szenarien, die in dem symbolischen Schlussfolgerer 604 erzeugt oder gefolgert worden sind. Die IEE 606 bestimmt die logikbasierte Wahrscheinlichkeit 610 für das Szenario durch das Anwenden einer regelbasierten Logik auf ein Szenario. Die IEE 606 kommuniziert außerdem mit dem episodischen Speicher (EM) 608, um eine historisch basierte Wahrscheinlichkeit 612 für jedes des einen oder der mehreren möglichen Szenarien zuzuweisen. Die IEE 606 gibt sowohl die logikbasierte Wahrscheinlichkeit 610 als auch die historisch basierte Wahrscheinlichkeit 612 aus. Die IEE 606 kann alternativ eine endgültige Wahrscheinlichkeit 614 für jedes des einen oder der mehreren möglichen Szenarien ausgeben. Diese Wahrscheinlichkeiten können verwendet werden, um einen Handlungsablauf oder eine Trajektorie für das Fahrzeug auszuwählen, die für die Verkehrssituation oder -bedingung geeignet ist. In verschiedenen Ausführungsformen wählt ein Auflöser einen Kandidaten aus den möglichen Szenarien aus und sendet den Kandidaten an das Navigationssystem oder den Controller des Fahrzeugs 10. Das Navigationssystem oder der Controller erzeugt eine Trajektorie basierend auf dem Kandidaten und betreibt oder navigiert das Fahrzeug 10 unter Verwendung des Kandidaten.
  • Der EM 608 bestimmt die historisch basierte Wahrscheinlichkeit durch das Vergleichen des Szenarios mit den Ereignissen, die in einer Datenbank im EM 608 gespeichert sind. Die historisch basierte Wahrscheinlichkeit für ein Szenario wird durch das Quantifizieren einer Ähnlichkeit zwischen dem Szenario und den in der Datenbank gespeicherten Ereignissen bestimmt. Es wird eine Metrik verwendet, um einem Ereignis in der Datenbank, das dem Szenario ähnelt, eine Wahrscheinlichkeit zuzuweisen. Die Metrik gibt einen Grad an, in dem das Ereignis dem Szenario ähnelt. Die historisch basierte Wahrscheinlichkeit berücksichtigt außerdem, wie verbreitet das Ereignis, das als dem Szenario ähnlich bestimmt wird, in der Datenbank ist.
  • 7 zeigt eine veranschaulichende Verkehrsbedingung 700, in der das System verwendet werden kann, um mögliche Handlungen oder Trajektorien für das Fahrzeug 10 zu bewerten. Das Fahrzeug 10 befindet sich auf der äußeren Fahrspur 702 einer Straße 701, wobei sich ein Lastkraftwagen 706 oder eine andere visuelle Behinderung vor dem Fahrzeug 10 und auf einer benachbarten Fahrspur 704 befindet. Der Ort des Lastkraftwagens 706 verringert eine Sichtlinie 714 des Fahrzeugs 10 bezüglich des Bereichs 708. Unter dieser speziellen Verkehrsbedingung überquert ein weiteres Fahrzeug 710 die äußere Fahrspur 702 oder will ein weiteres Fahrzeug 710 die äußere Fahrspur 702 überqueren, um in die Einfahrt 712 zu fahren. Das andere Fahrzeug 710 ist deshalb der Grund dafür, dass der LKW 706 angehalten hat. Aufgrund der unvollständigen Kenntnis der Situation weiß das Fahrzeug 10 jedoch nicht, ob sich das andere Fahrzeug 710 im Bereich 708 befindet, wobei es deshalb nicht bestimmen kann, wie auf die Verkehrsbedingung zu reagieren ist.
  • 8 zeigt mögliche Szenarien 800, die basierend auf der aktuellen Kenntnis der Verkehrsbedingung 700 nach 7 gefolgert werden können. Ein erstes Szenario (Szenario A) sagt vorher, dass zu dem Zeitpunkt, zu dem das Fahrzeug 10 im Begriff ist, den Lastkraftwagen zu überholen, ein Fahrzeug 802 vor dem angehaltenen Lastkraftwagen 706 die benachbarte Fahrspur 704 überqueren wird, wodurch es erforderlich ist, dass das Fahrzeug 10 bereit sein muss, abzubremsen oder vollständig anzuhalten. Ein zweites Szenario (Szenario B) sagt vorher, dass zu dem Zeitpunkt, zu dem das Fahrzeug 10 im Begriff ist, den Lastkraftwagen zu überholen, ein oder mehrere Fußgänger 804 vor dem angehaltenen Lastkraftwagen 706 die benachbarte Fahrspur 704 überqueren werden, wodurch es außerdem erforderlich ist, dass das Fahrzeug 10 bereit sein muss, abzubremsen oder vollständig anzuhalten. Ein drittes Szenario (Szenario C) sagt in Anbetracht der aktuellen Geschwindigkeit des Fahrzeugs 10 einen ungehinderten Weg auf der äußeren Fahrspur 702 vorher, wenn das Fahrzeug 10 den angehaltenen Lastkraftwagen 706 auf der benachbarten Fahrspur 704 überholt. Diese Szenarien sind spekulative Szenarien, wobei jedes von ihnen wahr oder repräsentativ für das tatsächliche Szenario sein kann. Die Szenarien werden durch den symbolischen Schlussfolgerer 604 erzeugt und an die IEE 606 zum Bestimmen einer Wahrscheinlichkeit für die Szenarien gesendet.
  • Jedes Element in der Umgebung wird betrachtet, wenn einem Szenario unter Verwendung verschiedener Regeln oder Prinzipien eine logikbasierte Wahrscheinlichkeit oder eine Wahrscheinlichkeit verschiedener Regeln oder Prinzipien zugewiesen wird. Für die veranschaulichenden Verkehrsbedingungen nach 8 lauten einige Regeln wie folgt: 1) Fahrzeuge neigen dazu, sich in Bewegung zu befinden, es sei denn, ein Hindernis oder eine Verkehrsregel verlangt es, 2) Einfahrten neigen dazu, gelegentlich Fahrzeuge anzuziehen, und 3) Einfahrten weisen keine spezifische Tendenz auf, Fußgänger anzuziehen. Die Regeln werden auf die Elemente oder Wahrzeichen in der Umgebung angewendet, um die Szenarien zu erzeugen. Einige Wahrzeichen für die veranschaulichende Verkehrsbedingung enthalten das Vorhandensein der Einfahrt 712, das Vorhandensein von Fahrspurmarkierungen, das Fehlen von Fußgängerüberwegmarkierungen und das Vorhandensein von angehaltenen Fahrzeugen. Unter Verwendung dieser veranschaulichenden Regeln und der veranschaulichenden Wahrzeichen kann die IEE 606 dem Szenario A eine höhere logikbasierte Wahrscheinlichkeit als entweder dem Szenario B oder dem Szenario C zuweisen. Nur für Veranschaulichungszwecke beträgt die logikbasierte Wahrscheinlichkeit für das Szenario A 60 %, beträgt die logikbasierte Wahrscheinlichkeit für Szenario B 10 % und beträgt die logikbasierte Wahrscheinlichkeit für Szenario C 30 %.
  • 9 zeigt eine graphische Darstellung der historisch basierten Wahrscheinlichkeiten für die verschiedenen in 8 veranschaulichten Szenarien. Die historisch basierte Wahrscheinlichkeit wird im EM 608 bestimmt. Nach dem Bestimmen der logikbasierten Wahrscheinlichkeit tokenisiert die IEE 606 jedes der Szenarien und sendet die tokenisierten Szenarien an den EM 608. Ein tokenisiertes Szenario ist ein archetypisches Beispiel für das Szenario in einem Token-Format.
  • Der EM 606 vergleicht das tokenisierte Szenario mit einem oder mehreren Ereignissen, die in der Datenbank des EM 608 gespeichert sind, und bestimmt basierend auf dem Vergleich einen Ähnlichkeitsprozentsatz (S). Der Ähnlichkeitsprozentsatz gibt eine Ähnlichkeit zwischen dem in tokenisierten Szenario und einem Ereignis an. Der EM 608 bestimmt dann, wie häufig sich das ähnliche Ereignis in der Datenbank befindet oder wie oft das Ereignis in der Datenbank vorkommt, und bestimmt so eine Vorkommens-Punktzahl, die als ein repräsentativer Prozentsatz (R) gezeigt ist. Das Szenario A zeigt eine 60-%-Ähnlichkeit mit einem speziellen Ereignis in der Datenbank, wobei das Ereignis für 58 % der Ereignisse in der Datenbank repräsentativ ist. Das Szenario B zeigt eine 32-%-Ähnlichkeit mit einem Ereignis in der Datenbank, wobei das Ereignis für 14 % der Ereignisse in der Datenbank repräsentativ ist. Das Szenario C zeigt eine 90-%-Ähnlichkeit mit einem Ereignis, das für 1 % der Ereignisse in der Datenbank repräsentativ ist.
  • Die historisch basierte Wahrscheinlichkeit für ein Szenario wird vom EM 608 an die IEE 606 gesendet. Die IEE 606 gibt sowohl die logikbasierte Wahrscheinlichkeit als auch die historisch basierte Wahrscheinlichkeit aus. Die IEE 606 kann außerdem eine endgültige Wahrscheinlichkeit ausgeben, die sowohl auf der logikbasierten Wahrscheinlichkeit als auch auf der historisch basierten Wahrscheinlichkeit basiert. Basierend auf irgendeiner der durch die IEE 606 ausgegebenen Wahrscheinlichkeiten kann ein Handlungsablauf für das Fahrzeug gewählt werden.
  • Während die obige Offenbarung bezüglich beispielhafter Ausführungsformen beschrieben worden ist, wird durch die Fachleute auf dem Gebiet erkannt, dass verschiedene Änderungen vorgenommen und deren Elemente durch Äquivalente ersetzt werden können, ohne von ihrem Schutzumfang abzuweichen. Zusätzlich können viele Modifikationen vorgenommen werden, um eine spezielle Situation oder ein spezielles Material an die Lehren der Offenbarung anzupassen, ohne von ihrem wesentlichen Schutzumfang abzuweichen. Deshalb ist vorgesehen, dass die vorliegende Offenbarung nicht auf die offenbarten speziellen Ausführungsformen eingeschränkt ist, sondern alle Ausführungsformen enthält, die in ihren Schutzumfang fallen.

Claims (10)

  1. Verfahren zum Betreiben eines autonomen Fahrzeugs, wobei das Verfahren umfasst: Folgern mehrerer möglicher Szenarien basierend auf einem aktuellen Zustand einer Umgebung des autonomen Fahrzeugs; Bestimmen einer historischen Wahrscheinlichkeit für jedes der mehreren möglichen Szenarien; Auswählen eines Szenarios aus den mehreren möglichen Szenarien unter Verwendung der historischen Wahrscheinlichkeiten; und Betreiben des autonomen Fahrzeugs basierend auf dem ausgewählten Szenario.
  2. Verfahren nach Anspruch 1, das ferner das Bestimmen einer logikbasierten Wahrscheinlichkeit für jedes der mehreren möglichen Szenarien und das Auswählen des Szenarios aus den mehreren möglichen Szenarien basierend auf den historischen Wahrscheinlichkeiten und den logikbasierten Wahrscheinlichkeiten umfasst.
  3. Verfahren nach Anspruch 1, das ferner das Tokenisieren eines Szenarios und das Bestimmen der historischen Wahrscheinlichkeit für ein tokenisiertes Szenario durch das Bestimmen einer Ähnlichkeit des tokenisierten Szenarios mit einem oder mehreren historischen Ereignissen in einer Datenbank und das Bestimmen eines Vorherrschens des einen oder der mehreren historischen Ereignisse in der Datenbank umfasst.
  4. Verfahren nach Anspruch 3, das ferner das Bestimmen eines Ähnlichkeitsprozentsatzes für das tokenisierte Szenario basierend auf einer Ähnlichkeitsmetrik zwischen dem tokenisierten Szenario und dem einen oder den mehreren historischen Ereignissen umfasst.
  5. Verfahren nach Anspruch 1, wobei das Folgern der mehreren möglichen Szenarien ferner das Anwenden einer von Abduktion, Deduktion und einer Kombination aus Abduktion und Deduktion auf die Daten umfasst, die den aktuellen Zustand der Umgebung angeben.
  6. System zum Betreiben eines autonomen Fahrzeugs, wobei das System umfasst: eine Schlussfolgerungsmaschine, die konfiguriert ist, basierend auf einem aktuellen Zustand einer Umgebung des autonomen Fahrzeugs mehrere mögliche Szenarien zu folgern; einen episodischen Speicher zum Bestimmen einer historischen Wahrscheinlichkeit für jedes der mehreren möglichen Szenarien; einen Auflöser zum Auswählen eines Szenarios aus den mehreren möglichen Szenarien unter Verwendung der historischen Wahrscheinlichkeiten; und einen Controller zum Betreiben des autonomen Fahrzeugs basierend auf dem ausgewählten Szenario.
  7. System nach Anspruch 6, das ferner eine Folgerungsbewertungsmaschine umfasst, die konfiguriert ist, eine logikbasierte Wahrscheinlichkeit für jedes der mehreren möglichen Szenarien zu bestimmen, und wobei die Folgerungsbewertungsmaschine das Szenario aus den mehreren möglichen Szenarien basierend auf den historischen Wahrscheinlichkeiten und den logikbasierten Wahrscheinlichkeiten auswählt.
  8. System nach Anspruch 7, wobei die Folgerungsbewertungsmaschine ein Szenario tokenisiert und der episodische Speicher die historische Wahrscheinlichkeit für ein tokenisiertes Szenario durch das Bestimmen einer Ähnlichkeit des tokenisierten Szenarios mit einem oder mehreren historischen Ereignissen in einer Datenbank und das Bestimmen eines Vorherrschens des einen oder der mehreren historischen Ereignisse in der Datenbank bestimmt.
  9. System nach Anspruch 8, wobei der episodische Speicher einen Ähnlichkeitsprozentsatz für das tokenisierte Szenario basierend auf einer Ähnlichkeitsmetrik zwischen dem tokenisierten Szenario und dem einen oder den mehreren historischen Ereignissen bestimmt.
  10. System nach Anspruch 6, wobei die Schlussfolgerungsmaschine ein mögliches Szenario durch das Anwenden einer von einer Abduktion, einer Deduktion und einer Kombination aus Abduktion und Deduktion auf die Daten, die den aktuellen Zustand der Umgebung angeben, folgert.
DE102021114077.3A 2020-11-18 2021-06-01 System zum Erweitern der Funktionalität einer durch Schlussfolgerungssysteme auf Symbolik/Logik-Basis erzeugten Hypothese Pending DE102021114077A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/951,459 US11810006B2 (en) 2020-11-18 2020-11-18 System for extending functionality of hypotheses generated by symbolic/logic-based reasoning systems
US16/951,459 2020-11-18

Publications (1)

Publication Number Publication Date
DE102021114077A1 true DE102021114077A1 (de) 2022-05-19

Family

ID=81345868

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021114077.3A Pending DE102021114077A1 (de) 2020-11-18 2021-06-01 System zum Erweitern der Funktionalität einer durch Schlussfolgerungssysteme auf Symbolik/Logik-Basis erzeugten Hypothese

Country Status (3)

Country Link
US (1) US11810006B2 (de)
CN (1) CN114519428A (de)
DE (1) DE102021114077A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11912301B1 (en) * 2020-12-10 2024-02-27 Zoox, Inc. Top-down scenario exposure modeling
US20230382433A1 (en) * 2022-05-31 2023-11-30 Nissan North America, Inc. Online State Space Refinement for Competence-Aware Systems

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9262719B2 (en) * 2011-03-22 2016-02-16 Patrick Soon-Shiong Reasoning engines
US11760387B2 (en) * 2017-07-05 2023-09-19 AutoBrains Technologies Ltd. Driving policies determination
US10782138B2 (en) * 2017-10-06 2020-09-22 Here Global B.V. Method, apparatus, and computer program product for pedestrian behavior profile generation
WO2019089015A1 (en) * 2017-10-31 2019-05-09 Nissan North America, Inc. Autonomous vehicle operation with explicit occlusion reasoning
EP3680876A1 (de) * 2019-01-08 2020-07-15 Visteon Global Technologies, Inc. Verfahren zur planung der bahn eines fahrzeugs
US11377120B1 (en) * 2020-02-28 2022-07-05 Uatc, Llc Autonomous vehicle control based on risk-based interactions
US11873012B2 (en) * 2020-07-17 2024-01-16 Honda Motor Co., Ltd. System and method for providing social-stage spatio-temporal multi-modal future forecasting

Also Published As

Publication number Publication date
US11810006B2 (en) 2023-11-07
US20220156605A1 (en) 2022-05-19
CN114519428A (zh) 2022-05-20

Similar Documents

Publication Publication Date Title
DE102020103130A1 (de) System und verfahren zur radar-kreuzverkehrsverfolgung und manöver-risikoabschätzung
DE102019102173A1 (de) Verwaltung der automatisierten fahrkomplexität des vorausliegenden fahrweges unter verwendung des wahrnehmungssystems
DE102016113903A1 (de) Fahrzeugfahrstreckenbestimmung
DE102019104974A1 (de) Verfahren sowie System zum Bestimmen eines Fahrmanövers
DE102019122826A1 (de) Adaptives fahrzeuglernen
DE102016212751A1 (de) Abbiegevorhersagen
DE102018008624A1 (de) Steuerungssystem und Steuerungsverfahren zum samplingbasierten Planen möglicher Trajektorien für Kraftfahrzeuge
DE112018000541T5 (de) Informationsverarbeitungssystem, Informationsverarbeitungsverfahren, Aufzeichnungsmedium und Fahrzeug
DE102019209736A1 (de) Verfahren zur Bewertung möglicher Trajektorien
DE102021114077A1 (de) System zum Erweitern der Funktionalität einer durch Schlussfolgerungssysteme auf Symbolik/Logik-Basis erzeugten Hypothese
DE102021128041A1 (de) Verbesserung eines neuronalen fahrzeugnetzwerks
DE102020131949A1 (de) System und verfahren zum erlernen einer fahrerpräferenz und zum anpassen einer spurzentrierungssteuerung an ein fahrerverhalten
DE112021005708T5 (de) Verfahren und Systeme zur Verfolgung einer Fahrspur über die Zeit
DE102017200580A1 (de) Verfahren zur Optimierung einer Manöverplanung für autonom fahrende Fahrzeuge
DE102020200911B3 (de) Verfahren zum Erkennen von Objekten in einer Umgebung eines Fahrzeugs
DE102021111686A1 (de) Navigationstrajektorie mit verstärkendem lernen für ein ego-fahrzeug in einem navigationsnetzwerk
DE102018124161A1 (de) Verfahren zum zumindest teilautomatisierten Führen eines Kraftfahrzeugs auf einer Fahrbahn
DE102022108656A1 (de) Neuronales quantilnetz
DE102020103513A1 (de) Logiksystem für die sinneswahrnehmung beim autonomen fahren
DE112021006148T5 (de) Verfahren und System zur Bestimmung eines Bewegungsmodells zur Bewegungsvorhersage bei der Steuerung autonomer Fahrzeuge
DE102020103754A1 (de) Hyper-assoziation im episodenspeicher
DE102020129802A1 (de) Fahrzeugbetriebskennzeichnung
DE112020007538T5 (de) Fahrunterstützungsvorrichtung, Lernvorrichtung, Fahrunterstützungsverfahren, Fahrunterstützungsprogramm, Gelerntes-Modellerzeugungsverfahren und Datenträger mit Gelerntes-Modellerzeugungsprogramm
DE112022002869T5 (de) Verfahren und System zur Verhaltensprognose von Akteuren in einer Umgebung eines autonomen Fahrzeugs
WO2019211293A1 (de) Verfahren zum betreiben eines fahrerassistenzsystems eines egofahrzeugs mit wenigstens einem umfeldsensor zum erfassen eines umfelds des egofahrzeugs, computer-lesbares medium, system, und fahrzeug

Legal Events

Date Code Title Description
R012 Request for examination validly filed