DE102023100499A1 - System zur einstellung einer trajektorieverfolgungssteuerung für ein kraftfahrzeug - Google Patents

System zur einstellung einer trajektorieverfolgungssteuerung für ein kraftfahrzeug Download PDF

Info

Publication number
DE102023100499A1
DE102023100499A1 DE102023100499.9A DE102023100499A DE102023100499A1 DE 102023100499 A1 DE102023100499 A1 DE 102023100499A1 DE 102023100499 A DE102023100499 A DE 102023100499A DE 102023100499 A1 DE102023100499 A1 DE 102023100499A1
Authority
DE
Germany
Prior art keywords
trajectory
planned
motor vehicle
weights
predicted
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
DE102023100499.9A
Other languages
English (en)
Inventor
Avshalom Suissa
Vladimir Suplin
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 DE102023100499A1 publication Critical patent/DE102023100499A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/042Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
    • 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
    • B60W10/00Conjoint control of vehicle sub-units of different type or different function
    • B60W10/04Conjoint control of vehicle sub-units of different type or different function including control of propulsion units
    • 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
    • B60W10/00Conjoint control of vehicle sub-units of different type or different function
    • B60W10/18Conjoint control of vehicle sub-units of different type or different function including control of braking systems
    • B60W10/184Conjoint control of vehicle sub-units of different type or different function including control of braking systems with wheel brakes
    • 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
    • B60W10/00Conjoint control of vehicle sub-units of different type or different function
    • B60W10/20Conjoint control of vehicle sub-units of different type or different function including control of steering systems
    • 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/14Adaptive cruise control
    • B60W30/143Speed control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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/0019Control system elements or transfer functions
    • B60W2050/0022Gains, weighting coefficients or weighting functions
    • 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/0019Control system elements or transfer functions
    • B60W2050/0028Mathematical models, e.g. for simulation
    • 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/0019Control system elements or transfer functions
    • B60W2050/0028Mathematical models, e.g. for simulation
    • B60W2050/0031Mathematical model of the vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Combustion & Propulsion (AREA)
  • Chemical & Material Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Feedback Control In General (AREA)

Abstract

Ein System zum Einstellen einer Trajektorieverfolgungssteuerung für ein Fahrzeug umfasst einen Trajektorieplaner, der so konfiguriert ist, dass er die geplante Trajektorie erzeugt und eine oder mehrere geplante Trajektoriekomponenten ausgibt, die für die geplante Trajektorie repräsentativ sind, eine modellprädiktive Steuerung, die ein internes Modell und einen Optimierer enthält, und ein neuronales Einstellungsnetzwerk, das so konfiguriert ist, dass es die eine oder die mehreren geplanten Trajektoriekomponenten und eine oder mehrere gemessene Trajektoriekomponenten empfängt und Gewichtungen für eine Kostenfunktion erzeugt. Das interne Modell ist so konfiguriert, dass es eine vorhergesagte Steuereingabe vom Optimierer und die eine oder mehreren gemessenen Trajektoriekomponenten empfängt und eine vorhergesagte Ausgabe erzeugt. Der Optimierer verwendet eine Kostenfunktion und ist so konfiguriert, dass er die Gewichtungen für die Kostenfunktion und einen vorhergesagten Fehler empfängt und die vorhergesagte Steuereingabe erzeugt, wobei der vorhergesagte Fehler eine ausgewählte der geplanten Trajektoriekomponenten minus der vorhergesagten Ausgabe ist.

Description

  • EINLEITUNG
  • Diese Offenbarung bezieht sich allgemein auf Systeme zur Einstellung einer Trajektorieverfolgungssteuerung für ein Kraftfahrzeug und insbesondere auf solche Systeme, die eine modellprädiktive Steuerung verwenden.
  • Im Bereich selbstfahrender oder assistiert fahrender Fahrzeuge kann eine modellprädiktive Steuerung (MPC) oder ein anderes Steuerungssystem verwendet werden, um eine vorgeschlagene Route für das Fahrzeug zu verfolgen. Mit Hilfe verschiedener Sensoren an Bord des Fahrzeugs kann das Steuersystem versuchen, das Fahrzeug zu veranlassen, der vorgeschlagenen Route zu folgen, indem es eine Reihe von Befehlen an die Drosselklappe, die Bremsen und das Lenksystem ausführt, die auf Faktoren wie dem ermittelten Zielort, der festgestellten Anwesenheit, Geschwindigkeit und Trajektorie anderer Fahrzeuge usw. basieren. Das System kann laufend Rückmeldungen über die Position, die Geschwindigkeit und den Kurs des Fahrzeugs sowie über die Position, die Geschwindigkeit und den Kurs benachbarter und entgegenkommender Fahrzeuge erhalten, um Anpassungen und Aktualisierungen der vorgeschlagenen Route und der an das Drossel-, Brems- und Lenksystem gesendeten Befehle vorzunehmen.
  • BESCHREIBUNG
  • Gemäß einer Ausführungsform umfasst ein System zur Einstellung einer Trajektorieverfolgungssteuerung für ein Kraftfahrzeug einen Trajektorieplaner, eine MPC und ein neuronales Einstellungsnetzwerk. Der Trajektorieplaner ist so konfiguriert, dass er eine geplante Trajektorie erzeugt und eine oder mehrere geplante Trajektoriekomponenten ausgibt, die die geplante Trajektorie darstellen. Die MPC umfasst ein internes Modell des Kraftfahrzeugs und einen Optimierer. Das interne Modell ist so konfiguriert, dass es eine vorhergesagte Steuereingabe vom Optimierer und eine oder mehrere gemessene Trajektoriekomponenten vom Kraftfahrzeug empfängt und auch so konfiguriert ist, dass es eine vorhergesagte Ausgabe erzeugt. Der Optimierer verwendet eine Kostenfunktion und ist so konfiguriert, dass er eine Vielzahl von Gewichtungen für die Kostenfunktion und einen vorhergesagten Fehler empfängt und die vorhergesagte Steuereingabe erzeugt, wobei der vorhergesagte Fehler eine Summe aus einer ausgewählten der geplanten Trajektoriekomponenten minus der vorhergesagten Ausgabe ist. Das neuronale Einstellungsnetzwerk ist so konfiguriert, dass es die eine oder mehreren geplanten Trajektoriekomponenten und die eine oder mehreren gemessenen Trajektoriekomponenten empfängt und die Gewichtungen für die Kostenfunktion erzeugt.
  • In dieser Ausführungsform kann die vom Optimierer erzeugte vorausgesagte Steuereingabe eines oder mehrere von einem Lenkbefehl, einem Drosselklappenbefehl und einem Bremsbefehl für das Kraftfahrzeug sein, und die Gewichtungen für die Kostenfunktion können durch eine von dem neuronalen Einstellungsnetzwerk erzeugte Gewichtungsmatrix dargestellt werden. Das Kraftfahrzeug kann eine aktuelle Position und eine aktuelle Geschwindigkeit zu einem aktuellen Zeitpunkt haben, und der Trajektorieplaner kann eine geplante nächste Position und eine geplante nächste Geschwindigkeit für das Kraftfahrzeug für einen nächsten Zeitpunkt erzeugen, der ein vorbestimmter Zeitschritt nach dem aktuellen Zeitpunkt ist. In dieser Anordnung umfassen die eine oder die mehreren geplanten Trajektoriekomponenten eines oder mehrere von: einer Vorwärtskomponente der geplanten nächsten Position, einer Seitenkomponente der geplanten nächsten Position und einer Größe der geplanten nächsten Geschwindigkeit.
  • Das System kann ferner ein kritisches neuronales Netzwerk enthalten, das so konfiguriert ist, dass es die eine oder die mehreren geplanten Trajektoriekomponenten und die eine oder die mehreren gemessenen Trajektoriekomponenten empfängt, wobei das neuronale Einstellungsnetzwerk und das kritische neuronale Netzwerk miteinander zusammenarbeiten, um die Gewichtungen unter Verwendung eines Optimierungsalgorithmus mit verstärkendem Lernen einzustellen, der versucht, die Kostenfunktion zu minimieren.
  • Bei dem Optimierungsalgorithmus mit verstärkendem Lernen kann es sich um eines handeln von: einem Proximal-Policy-Optimierungsalgorithmus, einem Soft-Actor-Critic-Algorithmus, einem Deep-Deterministic-Policy-Gradient-Algorithmus und einem Twin-Delayed-Deep-Deterministic-Policy-Gradient-Algorithmus. Das neuronale Einstellungsnetzwerk und das kritische neuronale Netzwerk können miteinander zusammenarbeiten, um die Gewichtungen während einer Trainingsphase abzustimmen. Das System kann ferner eine mehrdimensionale Nachschlagetabelle mit gespeicherten Gewichtungen enthalten, die mit dem Optimierer verbunden ist. Die MPC kann die gespeicherten Gewichtungen aus der mehrdimensionalen Nachschlagetabelle während einer Einsatzphase des normalen Betriebs des Kraftfahrzeugs abrufen.
  • Gemäß einer anderen Ausführungsform umfasst ein System zum Einstellen einer Trajektorieverfolgungssteuerung für ein Kraftfahrzeug: (i) einen Trajektorieplaner, der so konfiguriert ist, dass er eine geplante Trajektorie erzeugt und eine oder mehrere geplante Trajektoriekomponenten ausgibt, die die geplante Trajektorie darstellen; (ii) eine MPC, die ein internes Modell des Kraftfahrzeugs und einen Optimierer enthält, wobei das interne Modell so konfiguriert ist, dass es eine vorhergesagte Steuereingabe von dem Optimierer und eine oder mehrere gemessene Trajektoriekomponenten von dem Kraftfahrzeug empfängt und eine vorhergesagte Ausgabe erzeugt, und wobei der Optimierer eine Kostenfunktion verwendet und so konfiguriert ist, dass er eine Vielzahl von Gewichtungen für die Kostenfunktion und einen vorhergesagten Fehler empfängt und die vorhergesagte Steuereingabe erzeugt, wobei der vorhergesagte Fehler eine Summe aus einer ausgewählten der geplanten Trajektoriekomponenten minus der vorhergesagten Ausgabe ist; (iii) ein neuronales Einstellungsnetzwerk, das so konfiguriert ist, dass es die eine oder mehrere geplante Trajektoriekomponenten und die eine oder die mehreren gemessene Trajektoriekomponenten empfängt und die Gewichtungen für die Kostenfunktion erzeugt; und (iv) ein kritisches neuronales Netzwerk, das so konfiguriert ist, dass es die eine oder die mehreren geplanten Trajektoriekomponenten und die eine oder die mehreren gemessenen Trajektoriekomponenten empfängt. Das neuronale Einstellungsnetzwerk und das kritische neuronale Netzwerk arbeiten miteinander zusammen, um die Gewichtungen unter Verwendung eines Optimierungsalgorithmus mit verstärkendem Lernen einzustellen, der versucht, die Kostenfunktion zu minimieren.
  • In dieser Ausführungsform kann die vom Optimierer erzeugte vorausgesagte Steuereingabe eine oder mehrere von einem Lenkbefehl, einem Drosselklappenbefehl und einem Bremsbefehl für das Kraftfahrzeug sein, und die Gewichtungen für die Kostenfunktion können durch eine von dem neuronalen Einstellungsnetzwerk erzeugte Gewichtungsmatrix dargestellt werden. Das Kraftfahrzeug kann eine aktuelle Position und eine aktuelle Geschwindigkeit zu einem aktuellen Zeitpunkt haben, und der Trajektorieplaner kann eine geplante nächste Position und eine geplante nächste Geschwindigkeit für das Kraftfahrzeug für einen nächsten Zeitpunkt erzeugen, der ein vorbestimmter Zeitschritt nach dem aktuellen Zeitpunkt ist. In dieser Anordnung umfassen die eine oder die mehreren geplanten Trajektoriekomponenten eines oder mehrere von: einer Vorwärtskomponente der geplanten nächsten Position, einer Seitenkomponente der geplanten nächsten Position und einer Größe der geplanten nächsten Geschwindigkeit.
  • Der Optimierungsalgorithmus mit verstärkendem Lernen kann eines sein von: einem Proximal-Policy-Optimierungsalgorithmus, einem Soft-Actor-Critic-Algorithmus, einem Deep-Deterministic-Policy-Gradient-Algorithmus und einem Twin-Delayed-Deep-Deterministic-Policy-Gradient-Algorithmus. Das neuronale Einstellungsnetzwerk und das kritische neuronale Netzwerk können miteinander zusammenarbeiten, um die Gewichtungen während einer Trainingsphase einzustellen. Das System kann ferner eine mehrdimensionale Nachschlagetabelle mit gespeicherten Gewichtungen enthalten, die mit dem Optimierer verbunden ist. Die MPC kann die gespeicherten Gewichtungen aus der mehrdimensionalen Nachschlagetabelle während einer Einsatzphase des normalen Betriebs des Kraftfahrzeugs abrufen.
  • Gemäß einer weiteren Ausführungsform umfasst ein Trajektorieverfolgungs- und Einstellungssystem für ein Kraftfahrzeug einen Trajektorieplaner, eine MPC, ein neuronales Einstellungsnetzwerk und ein kritisches neuronales Netzwerk. Der Trajektorieplaner ist so konfiguriert, dass er eine geplante Trajektorie für das Kraftfahrzeug erzeugt und eine oder mehrere geplante Trajektoriekomponenten ausgibt, die die geplante Trajektorie darstellen. Die MPC umfasst ein internes Modell des Kraftfahrzeugs und einen Optimierer. Das interne Modell ist so konfiguriert, dass es eine vorhergesagte Steuereingabe vom Optimierer und eine oder mehrere gemessene Trajektoriekomponenten vom Kraftfahrzeug empfängt und eine vorhergesagte Ausgabe erzeugt. Der Optimierer verwendet eine Kostenfunktion und ist so konfiguriert, dass er eine Vielzahl von Gewichtungen für die Kostenfunktion und einen vorhergesagten Fehler empfängt und die vorhergesagte Steuereingabe erzeugt. Der vorhergesagte Fehler ist eine Summe aus einer ausgewählten der geplanten Trajektoriekomponenten minus der vorhergesagten Ausgabe, und die vorhergesagte Steuereingabe, die durch den Optimierer erzeugt wird, ist eine oder mehrere von einem Lenkbefehl, einem Drosselklappenbefehl und einem Bremsbefehl für das Kraftfahrzeug.
  • Das neuronale Einstellungsnetzwerk ist so konfiguriert, dass es die eine oder die mehreren geplanten Trajektoriekomponenten und die eine oder die mehreren gemessenen Trajektoriekomponenten empfängt und die Gewichtungen für die Kostenfunktion erzeugt. Das kritische neuronale Netzwerk ist so konfiguriert, dass es die eine oder die mehreren geplanten Trajektoriekomponenten und die eine oder die mehreren gemessenen Trajektoriekomponenten empfängt. Das neuronale Einstellungsnetzwerk und das kritische neuronale Netzwerk arbeiten miteinander zusammen, um die Gewichtungen unter Verwendung eines Optimierungsalgorithmus mit verstärkendem Lernen einzustellen, der versucht, die Kostenfunktion zu minimieren.
  • In dieser Ausführungsform kann das Kraftfahrzeug eine aktuelle Position und eine aktuelle Geschwindigkeit zu einem aktuellen Zeitpunkt haben, und der Trajektorieplaner kann eine geplante nächste Position und eine geplante nächste Geschwindigkeit für das Kraftfahrzeug für einen nächsten Zeitpunkt generieren, der einen vorbestimmten Zeitschritt nach dem aktuellen Zeitpunkt liegt. In dieser Anordnung umfassen die eine oder die mehreren geplanten Trajektoriekomponenten eines oder mehrere von: einer Vorwärtskomponente der geplanten nächsten Position, einer Seitenkomponente der geplanten nächsten Position und einer Größe der geplanten nächsten Geschwindigkeit. Das Trajektorieverfolgungs- und Einstellungssystem kann ferner eine mehrdimensionale Nachschlagetabelle gespeicherter Gewichtungen enthalten, die mit dem Optimierer operativ verbunden sind, wobei die MPC die gespeicherten Gewichtungen aus der mehrdimensionalen Nachschlagetabelle während einer Einsatzphase des Normalbetriebs des Kraftfahrzeugs abruft.
  • Die obigen Merkmale und Vorteile sowie andere Merkmale und Vorteile der vorliegenden Lehren sind aus der folgenden detaillierten Beschreibung einiger der besten Modi und anderer Ausführungsformen zur Durchführung der vorliegenden Lehren, wie sie in den beigefügten Ansprüchen definiert sind, in Verbindung mit den beigefügten Zeichnungen einfach ersichtlich.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
    • 1 ist eine schematische Ansicht eines MPC-basierten Systems zur Einstellung einer Verfolgungssteuerung einer geplanten Trajektorie eines Kraftfahrzeugs nach einem üblichen Ansatz.
    • 2 ist eine schematische Ansicht eines MPC-basierten Systems zur Einstellung einer Verfolgungssteuerung einer geplanten Trajektorie für ein Kraftfahrzeug gemäß der vorliegenden Offenbarung.
    • 3 ist eine schematische Ansicht des in 2 dargestellten Systems in einer Trainingsphase.
    • 4 ist eine graphische Darstellung einer diagonalen Gewichtungsmatrix, die aus verschiedenen Nachschlagetabellen zur Verwendung in dem in 1 dargestellten üblichen System und Ansatz abgeleitet ist, im Vergleich zu einer Gewichtungsmatrix gemäß der vorliegenden Offenbarung.
    • 5 ist ein Blockdiagramm, das verschiedene Optimierungsalgorithmen des verstärkenden Lernens zeigt.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Unter Bezugnahme auf die Zeichnungen, in denen gleiche Ziffern gleiche Teile in den verschiedenen Ansichten bezeichnen, wird hier ein System 20 zur Einstellung einer Trajektorieverfolgungssteuerung 32 für ein Kraftfahrzeug 24 gezeigt und beschrieben.
  • Die Position, die Geschwindigkeit und der Kurs des Fahrzeugs 24 können in Form eines räumlichen Koordinatensystems beschrieben werden. Das räumliche Koordinatensystem kann wiederum in Bezug auf einen festen Punkt im Raum definiert werden, oder es kann dynamisch in Bezug auf die aktuelle Richtung des Fahrzeugs 24 definiert werden, wobei die aktuelle Vorwärtsrichtung des Fahrzeugs als positive x-Richtung definiert werden kann, und jede Links- oder Rechtslenkung des Fahrzeugs kann als positive bzw. negative y-Richtung definiert werden.
  • 1 zeigt eine schematische Ansicht eines MPC-basierten Systems zur Einstellung einer Verfolgungssteuerung 32 eine geplante Trajektorie für ein Kraftfahrzeug 24 gemäß einem üblichen Ansatz. Dieses System kann verschiedene Hardware (z. B. Chipsätze, Sensoren usw.) und Software (z. B. Code, Befehlssätze, Steuerlogik usw.) innerhalb des Fahrzeugs 24 umfassen. Das System umfasst einen Trajektorieplaner 26, der so konfiguriert ist, dass er verschiedene Daten 28 von den Sensoren/Schätzern des Fahrzeugs empfängt. Die Daten 28 können die aktuelle Fahrzeuggeschwindigkeit in der x-Richtung vx, die aktuelle Fahrzeuggeschwindigkeit in der y-Richtung vy, die aktuelle Fahrzeugbeschleunigung in der x-Richtung ax, die aktuelle Fahrzeugbeschleunigung in der y-Richtung ay, den aktuellen Gierwinkel des Fahrzeugs ψ, die aktuelle Änderungsrate des Fahrzeuggierwinkels ψ̇ sowie weitere Daten umfassen. Der Trajektorieplaner 26 verwendet diese Fahrzeugdaten 28 zusammen mit verschiedenen Regeln, Einschränkungen und Zielen, um eine geplante Trajektorie 22 in Echtzeit zu generieren, und gibt dann eine oder mehrere geplante Trajektoriekomponenten 30 aus, die die geplante Trajektorie 22 zumindest für den nächsten Zeitschritt und optional für mehrere nächste Zeitschritte charakterisieren. Beispielsweise können die geplanten Trajektoriekomponenten 30 eine geplante nächste Position (xtraj, ytraj) und eine geplante nächste Geschwindigkeit (ytraj) für das Kraftfahrzeug 24 für einen nächsten Zeitpunkt enthalten, der einen vorbestimmten Zeitschritt (z.B. 20 Millisekunden) nach dem aktuellen Zeitpunkt liegt. Alternativ können die geplanten Trajektoriekomponenten 30 mehrere geplante nächste Positionen und mehrere geplante nächste Geschwindigkeiten enthalten.
  • Die eine oder die mehreren geplanten Trajektoriekomponenten 30, die die geplante Trajektorie 22 charakterisieren, werden in einen Summierer 38 eingespeist, der Teil einer MPC 32 sein kann, wie in den Zeichnungen dargestellt, oder der getrennt von der MPC 32 in einer Flussposition zwischen dem Trajektorieplaner 26 und der MPC 32 liegen kann. Die MPC 32 umfasst ein internes Modell 34 des Fahrzeugs 24 und einen Optimierer 36. Bei dem internen Modell 34 kann es sich um eine Reihe von Gleichungen, Parametern, Beschränkungen, Beziehungen und dergleichen handeln, die das Verhalten und die Bewegung des Fahrzeugs 24 charakterisieren und beschreiben. Das interne Modell 34 ist so konfiguriert, dass es eine vorhergesagte Steuereingabe 40 vom Optimierer 36 und eine oder mehrere gemessene Trajektoriekomponenten 42 vom Kraftfahrzeug 24 empfängt und eine vorhergesagte Ausgabe 44 erzeugt. Die gemessenen Trajektoriekomponenten 42 sind eine oder mehrere räumliche Komponenten (d.h. die x- und y-Komponenten) der aktuellen Position des Fahrzeugs 24 und können optional auch eine oder mehrere räumliche Komponenten der Geschwindigkeit und Beschleunigung des Fahrzeugs enthalten (d.h. vx, vy, ax, ay). Es sei verstanden, dass die gemessenen Trajektoriekomponenten 42 auch als Daten 28 von den verschiedenen Sensoren/Schätzern des Fahrzeugs dargestellt werden können. In 1 kann beispielsweise der Zweig, der von der unteren Seite des Blocks 24 (der das Fahrzeug 24 darstellt) ausgeht und in das interne Modell 34 einfließt, eine x-Komponente der gemessenen aktuellen Fahrzeugposition sein, während der Zweig, der von der rechten Seite des Blocks 24 ausgeht, die y-Komponente der gemessenen aktuellen Fahrzeugposition sein kann. In diesem Beispiel können die gemessenen Trajektoriekomponenten 42 oder Daten 28 jedes dieser beiden Zweige als aktueller Wert oder als Funktion der Zeit ausgedrückt werden, wobei der von der rechten Seite des Blocks 24 kommende Zweig einen Fahrzeugbefehl 46 oder eine Reihe von Befehlen darstellt, bei denen es sich um einen oder mehrere Lenkbefehle, einen Drosselklappenbefehl und einen Bremsbefehl handeln kann.
  • Der Optimierer 36 verwendet eine geeignete Kostenfunktion 48 und kann optional auch verschiedene physikalische oder Leistungseinschränkungen 50 verwenden, die dem Fahrzeug 24 und seinem Verhalten/Bewegung auferlegt werden. Die Kostenfunktion 48 und die Einschränkungen 50 können Teil des Optimierers 36 und seiner Hardware/Software sein, oder der Optimierer 36 kann darauf zugreifen, z. B. von einem Modul, Speicher oder ähnlichem, das vom Optimierer 36 getrennt ist. Der Optimierer 36 ist so konfiguriert, dass er eine Vielzahl von Gewichtungen (z. B. q1, q2, q3, q4) für die Kostenfunktion 48 empfängt, die durch die diagonale Gewichtungsmatrix Q dargestellt werden kann, und dass er auch einen vorhergesagten Fehler 52 empfängt, um den vorhergesagten Steuereingang 40 zu erzeugen. (Es sei verstanden, dass „Q“ hier sowohl für die Gewichtungsmatrix als auch für die Sammlung der einzelnen Gewichtungen verwendet werden kann). Wie im Summierer 38 angegeben, ist der vorhergesagte Fehler 52 eine Summe aus einer ausgewählten der geplanten Trajektoriekomponenten 30 (z. B. ytraj) aus dem Trajektorieplaner 26 abzüglich der vorhergesagten Ausgabe 44 aus dem internen Modell 34.
  • Gemäß dem üblichen Ansatz können die Gewichtungen (z. B. q1, q2, q3, q4) für die Kostenfunktion 48, wie sie durch die diagonale Gewichtungsmatrix Q dargestellt werden, aus einer Nachschlagetabelle (LUT) 54 entnommen werden, die einen Satz von Werten umfassen kann, die in einem Modul, einem Satz von Speicherregistern oder dergleichen gespeichert sind. (Es sei verstanden, dass die Diagonalgewichtungsmatrix Q, wie sie hier im üblichen Ansatz verwendet wird, nur entlang der Hauptdiagonale Werte ungleich Null hat, wobei alle anderen Werte in der Matrix Null sind. Während dies im üblichen Ansatz der Einfachheit halber der Fall ist, sollte beachtet werden, dass die Werte außerhalb der Diagonalen ungleich Null sein können.) Wie in 4 dargestellt, können die einzelnen Gewichtungen oder Werte q1, q2, q3, q4 aus anderen Gleichungen, Schätzungen oder LUTs abgeleitet werden, z. B. aus den jeweiligen ersten, zweiten, dritten und vierten LUTs 56, 58, 60, 62. Jede dieser LUTs 56, 58, 60, 62 kann ein Satz von Werten sein, die die Reaktion einer bestimmten Gleichung oder Funktion auf eine gegebene Eingabe darstellen, wie die gemessene Vorwärtsgeschwindigkeit vx des Fahrzeugs 24. Alternativ kann der übliche Ansatz statt der Verwendung eines Satzes von LUTs 56, 58, 60, 62, wie in 4 gezeigt, stattdessen eine einzige Haupt-LUT 54 verwenden, die den Satz der erforderlichen Gewichtungen q1, q2, q3, q4 als Reaktion auf eine erwartete Eingabe (z.B. die gemessene Vorwärtsgeschwindigkeit vx) bereitstellt. Oder die einzelne Haupt-LUT 54 kann vorgegebene Werte für die Gewichtungen q1, q2, q3, q4 enthalten, die manuell eingegeben wurden.
  • Mit der gemessenen Vorwärtsgeschwindigkeit vx, die in die Haupt-LUT 54 oder in den Satz individueller LUTs 56, 58, 60, 62 eingegeben wird, können die Gewichtungen q1, q2, q3, q4 für die diagonale Gewichtungsmatrix Q bestimmt und in einer Arbeits-LUT oder in einem Satz von bezeichneten Speicherregistern 53 gespeichert werden. Auf diese Gewichtungen q1, q2, q3, q4 kann dann der Optimierer 36 zugreifen oder sie ihm zur Verwendung in der Kostenfunktion 48 zur Verfügung stellen. (Es sei darauf hingewiesen, dass hier zwar vier Gewichtungen q1, q2, q3, q4 und entsprechende LUTs 56, 58, 60, 62 vorgestellt wurden, dies aber nur ein Beispiel ist, da jede andere geeignete Anzahl von Gewichtungen und LUTs in dem üblichen Ansatz verwendet werden kann.) Unter Verwendung dieser Gewichtungen Q, der einen oder mehreren geplanten Trajektoriekomponenten 30 und der einen oder mehreren gemessenen Trajektoriekomponenten 42 kann das MPC-basierte System 20 des üblichen Ansatzes die Fahrzeugsteuerung 46 (z. B. Lenkung, Drosselung und/oder Bremsen) kontinuierlich anpassen, um zu bewirken, dass die tatsächliche Trajektorie des Fahrzeugs mit einer gewünschten Trajektorie übereinstimmt.
  • Im Gegensatz dazu verwendet das System 20 zur Einstellung einer Trajektorienverfolgungssteuerung 32 für ein Kraftfahrzeug 24 gemäß der vorliegenden Offenbarung keine vorgegebenen Werte und LUTs für die Gewichtungen der Kostenfunktion 48. Stattdessen verwendet das vorliegende System 20 ein neuronales Einstellungsnetzwerk 64, um die Gewichtungen der Kostenfunktion 48 zu bestimmen, die durch eine Gewichtungsmatrix Q dargestellt werden kann, die nicht darauf beschränkt ist, nur entlang der Hauptdiagonale der Matrix Werte ungleich Null zu haben.
  • 2 zeigt eine schematische Ansicht einer Ausführungsform des MPC-basierten Systems 20 der vorliegenden Offenbarung. Das System 20 umfasst einen Trajektorieplaner 26, eine MPC 32 und ein neuronales Einstellungsnetzwerk 64. Der Trajektorieplaner 26 ist so konfiguriert, dass er die geplante Trajektorie 22 erzeugt und eine oder mehrere geplante Trajektoriekomponenten 30 (z. B. ytraj, xtraj, vtraj) ausgibt, die für die geplante Trajektorie 22 repräsentativ sind. Die MPC 32 umfasst ein internes Modell 34 des Kraftfahrzeugs 24 und einen Optimierer 36, wobei das interne Modell 34 so konfiguriert ist, dass es eine vorhergesagte Steuereingabe 40 von dem Optimierer 36 und eine oder mehrere gemessene Trajektoriekomponenten 42 von dem Kraftfahrzeug 24 empfängt und eine vorhergesagte Ausgabe 44 erzeugt. Der Optimierer 36 verwendet eine Kostenfunktion 48 (und optional eine oder mehrere Beschränkungen 50) und ist so konfiguriert, dass er eine Vielzahl von Gewichtungen Q für die Kostenfunktion 48 und einen vorhergesagten Fehler 52 empfängt und die vorhergesagte Steuereingabe 40 erzeugt. Wie im Summierer 38 angegeben, ist der vorhergesagte Fehler 52 die Summe einer ausgewählten der geplanten Trajektoriekomponenten 30 (z. B. ytraj) minus der vorhergesagten Ausgabe 44.
  • Das neuronale Einstellungsnetzwerk 64 ist so konfiguriert, dass es die eine oder mehreren geplanten Trajektoriekomponenten (z. B. ytraj, xtraj, vtraj) und die eine oder mehreren gemessenen Trajektoriekomponenten 42 (z. B. vx, ax, ay, ψ, ψ̇) empfängt, und um die Gewichtungen Q für die Kostenfunktion 48 zu erzeugen. Das neuronale Einstellungsnetzwerk 64 kann ein beliebiger geeigneter Typ eines neuronalen Netzwerks mit einer Eingabeschicht, einer Ausgabeschicht und einer oder mehreren versteckten Schichten zwischen den Eingabe- und Ausgabeschichten sein. Die Gewichtungsmatrix Q in 3 hat vier Zeilen und vier Spalten, wobei jede einzelne Gewichtung zwei tiefgestellte Indizes aufweist. Dabei steht der erste Index für die Zeilennummer der einzelnen Gewichtung und der zweite Index für die Spaltennummer der Gewichtung. Man beachte, dass im Gegensatz zur Gewichtungsmatrix Q des üblichen Ansatzes, bei dem alle Werte außerhalb der Hauptdiagonalen normalerweise Null sind, die Gewichtungsmatrix Q der vorliegenden Offenlegung als eine 4x4-Matrix dargestellt ist, bei der die Werte außerhalb der Diagonalen nicht unbedingt Null sind.
  • In dieser Ausführungsform kann die vom Optimierer 36 erzeugte vorausberechnete Steuereingabe 40 ein Fahrzeugbefehl 46 oder ein Satz von Befehlen für das Kraftfahrzeug 24 sein (z. B. ein Lenkbefehl, ein Drosselklappenbefehl und/oder ein Bremsbefehl), und die Gewichtungen für die Kostenfunktion können durch eine vom neuronalen Einstellungsnetzwerk 64 erzeugte Gewichtungsmatrix Q dargestellt werden. Das Kraftfahrzeug 24 kann eine aktuelle Position (x0, y0) und eine aktuelle Geschwindigkeit v0 zu einem aktuellen Zeitpunkt t0 haben, und der Trajektorieplaner 26 kann eine geplante nächste Position (x1, y1) und eine geplante nächste Geschwindigkeit v1 für das Kraftfahrzeug 24 für einen nächsten Zeitpunkt t1 erzeugen, der ein vorbestimmter Zeitschritt Δt nach dem aktuellen Zeitpunkt t0 ist. In dieser Anordnung umfassen die eine oder die mehreren geplanten Trajektoriekomponenten 30 eine oder mehrere von einer Vorwärtskomponente der geplanten nächsten Position (d.h. x1 oder xtraj), eine Seitenkomponente der geplanten nächsten Position (d. h. y1 oder ytraj) und eine Größe der geplanten nächsten Geschwindigkeit (d. h. v1 oder vtraj).
  • 2 zeigt das System 20 in einer normalen Einsatzphase 68, in der das System 20 in ein Fahrzeug 24 eingebaut ist und das Fahrzeug 24 bereit ist, in Betrieb genommen und für die vorgesehene Verwendung als Personenfahrzeug, Fracht-/Lieferfahrzeug, Stromerzeuger/Stromquelle usw. genutzt zu werden. Das System 20 kann sich auch in einer Trainingsphase 66 befinden, wie in 3 dargestellt. Diese Trainingsphase 66 kann eingeleitet werden, wenn eine Einstellung der MPC 32 gewünscht wird. In der Trainingsphase 68 kann das System 20 ein anderes neuronales Netzwerk, ein so genanntes kritisches neuronales Netzwerk (CNN) 70, enthalten und/oder mit diesem operativ verbunden sein.
  • Wie in 3 gezeigt, kann das CNN 70 so konfiguriert sein, dass es die eine oder mehrere geplante Trajektoriekomponenten 30 und die eine oder die mehreren gemessenen Trajektoriekomponenten 42 empfängt. Eine Funktion des CNN 70 besteht darin, eine Schätzung der Leistung des neuronalen Einstellungsnetzwerks 64 bereitzustellen, indem es vorhersagt (d. h. schätzt), wie gut das neuronale Einstellungsnetzwerk 64 in einem bestimmten Zustand funktionieren wird, wenn das aktuelle neuronale Einstellungsnetzwerk 64 weiterhin verwendet wird. Der Trainingsalgorithmus verwendet diese Schätzung, um das neuronale Einstellungsnetzwerk 64 so zu trainieren, dass es bessere Gewichtungen Q ausgibt, um die Kostenfunktion 48 zu minimieren. Das neuronale Einstellungsnetzwerk 64 und das CNN 70 kooperieren miteinander, um die Gewichtungen Q abzustimmen und zu iterieren, indem sie einen Optimierungsalgorithmus 76 mit verstärkendem Lernen in einer Weise verwenden, die darauf abzielt, die Kostenfunktion 48 zu minimieren. Diese Zusammenarbeit zwischen dem neuronalen Einstellungsnetzwerk 64 und dem CNN 70 wird in 3 durch die beiden Pfeile, die zwischen diesen beiden neuronalen Netzwerken 64, 70 hin und her zeigen, grafisch dargestellt. Genauer gesagt wird dieses Zusammenarbeiten durch den oben erwähnten Optimierungsalgorithmus 76 für das verstärkende Lernen erleichtert, der verwendet wird, um die Kostenfunktion 48 bis zu einem gewissen akzeptablen Grad oder Ausmaß zu minimieren. Es sei verstanden, dass die Referenznummer 76 in 3 verwendet wird, um diesen Optimierungsalgorithmus mit verstärkendem Lernen 76 darzustellen, der verwendet wird, um die hin- und hergehende/iterative Zusammenarbeit zwischen dem neuronalen Einstellungsnetzwerk 64 und dem CNN 70 zu erleichtern.
  • 5 zeigt ein Blockdiagramm verschiedener Optimierungsalgorithmen mit verstärkendem Lernen 76, die in dem vorliegenden System 20 verwendet werden können. Der Optimierungsalgorithmus mit verstärkendem Lernen 76 kann beispielsweise ein Proximal-Policy-Optimization (PPO)-Algorithmus 78, ein Soft-Actor-Critic (SAC)-Algorithmus 80, ein Deep-Deterministic-Policy-Gradient (DDPG)-Algorithmus 82, ein Twin-Delayed-Deep-Deterministic-Policy-Gradient (TD3)-Algorithmus 84 oder ein anderer Typ 86 von Optimierungsalgorithmen mit verstärkendem Lernen 76 sein.
  • Das neuronale Einstellungsnetzwerk 64 und das CNN 70 können miteinander zusammenarbeiten, um die Gewichtungen Q während einer Trainingsphase 66 einzustellen. Das System 20 kann ferner eine mehrdimensionale Nachschlagetabelle 55 mit gespeicherten Gewichtungen enthalten, die mit dem Optimierer 36 in Wirkverbindung steht. Die MPC 32 kann die gespeicherten Gewichtungen aus der mehrdimensionalen Nachschlagetabelle 55 während einer Einsatzphase 68 des normalen Betriebs des Kraftfahrzeugs 24 abrufen. Diese gespeicherten Gewichtungen können Startwerte darstellen, die für die Gewichtungen Q zu verwenden sind, um den Einstellungsprozess zu starten. (Es sei aber verstanden, dass die Verwendung einer mehrdimensionalen Nachschlagetabelle 55 optional ist).
  • Gemäß einer anderen Ausführungsform umfasst ein System 20 zum Einstellen einer Trajektorieverfolgungssteuerung 32 für ein Kraftfahrzeug 24: (i) einen Trajektorieplaner 26, der so konfiguriert ist, dass er eine geplante Trajektorie 22 erzeugt und eine oder mehrere geplante Trajektoriekomponenten 30 ausgibt, die die geplante Trajektorie 22 darstellen; (ii) eine MPC 32 mit einem internen Modell 34 des Kraftfahrzeugs 24 und einem Optimierer 36, wobei das interne Modell 34 so konfiguriert ist, dass es eine vorhergesagte Steuereingabe 40 vom Optimierer 36 und eine oder mehrere gemessene Trajektoriekomponenten 42 vom Kraftfahrzeug 24 empfängt und eine vorhergesagte Ausgabe 44 erzeugt, und wobei der Optimierer 36 eine Kostenfunktion 48 verwendet und so konfiguriert ist, dass er eine Vielzahl von Gewichtungen Q für die Kostenfunktion 48 und einen vorhergesagten Fehler 52 empfängt und die vorhergesagte Steuereingabe 40 erzeugt, wobei der vorhergesagte Fehler 52 eine Summe aus einer ausgewählten der geplanten Trajektoriekomponenten 30 minus der vorhergesagten Ausgabe 44 ist; (iii) ein neuronales Einstellungsnetzwerk 64, das so konfiguriert ist, dass es die eine oder die mehreren geplanten Trajektoriekomponenten 30 und die eine oder die mehreren gemessenen Trajektoriekomponenten 42 empfängt und die Gewichtungen Q für die Kostenfunktion 48 erzeugt; und (iv) ein CNN 70, das so konfiguriert ist, dass es die eine oder die mehreren geplanten Trajektoriekomponenten 30 und die eine oder die mehreren gemessenen Trajektoriekomponenten 42 empfängt. Das neuronale Einstellungsnetzwerk 64 und das CNN 70 arbeiten miteinander zusammen, um die Gewichtungen Q unter Verwendung eines Optimierungsalgorithmus 76 mit verstärkendem Lernen einzustellen, der versucht, die Kostenfunktion 48 zu minimieren.
  • In dieser Ausführungsform kann die vom Optimierer 36 erzeugte vorausberechnete Steuereingabe 40 ein Lenk-, Drossel- und/oder Bremsbefehl 46 (oder ein Satz solcher Befehle) für das Kraftfahrzeug 24 sein, und die Gewichtungen Q für die Kostenfunktion 48 können durch eine vom neuronalen Einstellungsnetzwerk 64 erzeugte Gewichtungsmatrix Q dargestellt werden. Das Kraftfahrzeug 24 kann eine aktuelle Position (x0, y0) und eine aktuelle Geschwindigkeit v0 zu einem aktuellen Zeitpunkt t0 haben, und der Trajektorieplaner 26 kann eine geplante nächste Position (x1, y1) oder (xtraj, ytraj) und eine geplante nächste Geschwindigkeit v1 oder vtraj für das Kraftfahrzeug 24 für einen nächsten Zeitpunkt t1 erzeugen, der ein vorgegebener Zeitschritt Δt nach dem aktuellen Zeitpunkt t0 ist. In dieser Anordnung umfassen die eine oder die mehreren geplanten Trajektoriekomponenten 30 eine oder mehrere von einer Vorwärtskomponente der geplanten nächsten Position (d.h. x1 oder xtraj), eine seitliche Komponente der geplanten nächsten Position (d. h. y1 oder ytraj) und eine Größe der geplanten nächsten Geschwindigkeit (d. h. v1 oder vtraj).
  • Der Optimierungsalgorithmus 76 mit verstärkendem Lernen kann ein PPO-Algorithmus 78, ein SAC-Algorithmus 80, ein DDPG-Algorithmus 82 oder ein TD3-Algorithmus 84 sein. Das neuronale Einstellungsnetzwerk 64 und das CNN 70 können miteinander zusammenarbeiten, um die Gewichtungen Q während einer Trainingsphase 66 abzustimmen. Das System 20 kann ferner eine mehrdimensionale Nachschlagetabelle 55 mit gespeicherten Gewichtungen enthalten, die mit dem Optimierer 36 verbunden ist. Die MPC 32 kann die gespeicherten Gewichtungen aus der mehrdimensionalen Nachschlagetabelle 55 während einer Einsatzphase 68 des normalen Betriebs des Kraftfahrzeugs 24 abrufen.
  • Gemäß einer weiteren Ausführungsform umfasst ein Trajektorienverfolgungs- und Einstellungssystem 20 für ein Kraftfahrzeug 24 einen Trajektorieplaner 26, eine MPC 32, ein neuronales Einstellungsnetzwerk 64 und ein CNN 70. Der Trajektorieplaner 26 ist so konfiguriert, dass er eine geplante Trajektorie 22 für das Kraftfahrzeug 24 erzeugt und eine oder mehrere geplante Trajektoriekomponenten 30 ausgibt, die die geplante Trajektorie 22 darstellen. Die MPC 32 umfasst ein internes Modell 34 des Kraftfahrzeugs 24 und einen Optimierer 36. Das interne Modell 34 ist so konfiguriert, dass es eine vorhergesagte Steuereingabe 40 von der Optimierungsvorrichtung 36 und eine oder mehrere gemessene Trajektoriekomponenten 42 vom Kraftfahrzeug 24 empfängt und eine vorhergesagte Ausgabe 44 erzeugt. Der Optimierer 36 verwendet eine Kostenfunktion 48 und ist so konfiguriert, dass er eine Vielzahl von Gewichtungen Q für die Kostenfunktion 48 und einen vorhergesagten Fehler 52 empfängt und die vorhergesagte Steuereingabe 40 erzeugt. Der vorhergesagte Fehler 52 ist eine Summe einer ausgewählten der geplanten Trajektoriekomponenten 30 abzüglich der vorhergesagten Ausgabe 44, und die vorhergesagte Steuereingabe 40, die von dem Optimierer 36 erzeugt wird, ist ein Fahrzeugbefehl 46 für das Kraftfahrzeug 24, der eines oder mehrere aus einem Lenkbefehl, einem Drosselklappenbefehl und einem Bremsbefehl sein kann.
  • Das neuronale Einstellungsnetzwerk 64 ist so konfiguriert, dass es die eine oder die mehreren geplanten Trajektoriekomponenten 30 und die eine oder die mehreren gemessenen Trajektoriekomponenten 42 empfängt und die Gewichtungen Q für die Kostenfunktion 48 erzeugt. Das CNN 70 ist so konfiguriert, dass es die eine oder die mehreren geplanten Trajektoriekomponenten 30 und die eine oder die mehreren gemessenen Trajektoriekomponenten 42 empfängt. Das neuronale Einstellungsnetzwerk 64 und das CNN 70 arbeiten zusammen, um die Gewichtungen Q unter Verwendung eines Optimierungsalgorithmus 76 mit verstärkendem Lernen einzustellen, der versucht, die Kostenfunktion 48 zu minimieren.
  • In dieser Ausführungsform kann das Kraftfahrzeug 24 eine aktuelle Position (x0, y0) und eine aktuelle Geschwindigkeit v0 zu einem aktuellen Zeitpunkt t0 haben, und der Trajektorieplaner 26 kann eine geplante nächste Position (x1, y1) oder (xtraj, ytraj) und eine geplante nächste Geschwindigkeit v1 oder vtraj für das Kraftfahrzeug 24 für einen nächsten Zeitpunkt t1 erzeugen, der ein vorbestimmter Zeitschritt Δt nach dem aktuellen Zeitpunkt t0 ist. In dieser Anordnung umfassen die eine oder die mehreren geplanten Trajektoriekomponenten 30 eine oder mehrere von einer Vorwärtskomponente der geplanten nächsten Position (d.h. x1 oder xtraj), eine seitliche Komponente der geplanten nächsten Position (d. h. y1 oder ytraj) und eine Größe der geplanten nächsten Geschwindigkeit (d. h. v1 oder vtraj). Das Trajektorieverfolgungs- und Einstellungssystem 20 kann ferner eine mehrdimensionale Nachschlagetabelle 55 umfassen, die mit dem Optimierer 36 operativ verbunden ist, wobei die MPC 32 die gespeicherten Gewichtungen aus der mehrdimensionalen Nachschlagetabelle 55 während einer Einsatzphase 68 des normalen Betriebs des Kraftfahrzeugs 24 abruft.
  • Obwohl verschiedene Funktionen des Systems 20 als separate Module oder Elemente beschrieben und dargestellt wurden, können zwei oder mehr Funktionen in weniger Modulen oder Elementen kombiniert werden. Ebenso können einige Funktionen, die als ein einziges Modul oder Element beschrieben sind, in zwei oder mehr Module oder Elemente aufgeteilt werden. Darüber hinaus kann die Anordnung der Funktionen, Module und Elemente in eine oder mehrere andere Anordnungen umgewandelt werden.
  • Wie hierin verwendet, kann ein „Modul“ Hardware und/oder Software, einschließlich ausführbarer Anweisungen, umfassen, um eine oder mehrere Eingaben zu empfangen, die eine oder mehrere Eingaben zu verarbeiten und eine oder mehrere entsprechende Ausgaben zu liefern. Beispiele für solche Module sind der Trajektorieplaner 26, die MPC 32, das interne Modell 34, der Optimierer 36, das neuronale Einstellungsnetzwerk 64, das CNN 70, die Gewichtungsmatrix Q und das Fahrzeug 24. Zu beachten ist auch, dass an einigen Stellen in der vorliegenden Offenbarung auf einen einzelnen Eingang, Ausgang, ein Element usw. Bezug genommen werden kann, während an anderen Stellen auf mehrere/mehrere Eingänge, Ausgänge, Elemente usw. Bezug genommen wird. Daher sollte nicht darauf geachtet werden, ob der/die Eingang(e), der/die Ausgang(e), das/die Element(e) usw. an einer bestimmten Stelle in der vorliegenden Offenbarung in der Einzahl oder Mehrzahl verwendet wird/werden, da die Einzahl- und Mehrzahlverwendung solcher Wörter als austauschbar angesehen werden sollte, sofern der spezifische Kontext nichts anderes vorschreibt.
  • Die obige Beschreibung dient der Veranschaulichung und ist nicht einschränkend. Die hier beschriebenen Abmessungen und Materialtypen sind zwar illustrativ, aber keineswegs einschränkend und stellen beispielhafte Ausführungsformen dar. In den folgenden Ansprüchen werden die Begriffe „erster“, „zweiter“, „oberer“, „unterer“ usw. lediglich zur Kennzeichnung verwendet und sollen keine numerischen oder positionellen Anforderungen an ihre Objekte stellen. Ein Element oder ein Schritt, der in der Einzahl genannt wird und dem das Wort „ein“ oder „eine“ vorangestellt ist, schließt die Mehrzahl solcher Elemente oder Schritte nicht aus, es sei denn, ein solcher Ausschluss wird ausdrücklich erwähnt. Darüber hinaus sollten die Formulierung „mindestens eines von A und B“ und die Formulierung „A und/oder B“ jeweils so verstanden werden, dass sie „nur A, nur B oder sowohl A als auch B“ bedeuten. Darüber hinaus können Ausführungsformen, die ein Element oder eine Vielzahl von Elementen mit einer bestimmten Eigenschaft „umfassen“ oder „haben“, sofern nicht ausdrücklich etwas anderes angegeben ist, zusätzliche Elemente umfassen, die diese Eigenschaft nicht haben. Und wenn hier allgemein beschreibende Adverbien wie „im Wesentlichen“ und „im Allgemeinen“ verwendet werden, um ein Adjektiv zu modifizieren, so bedeuten diese Adverbien „größtenteils“, „hauptsächlich“, „zum größten Teil“, „in erheblichem Maße“, „in hohem Maße“ und/oder „mindestens 51 bis 99 % von einem möglichen Umfang von 100 %“ und bedeuten nicht notwendigerweise „perfekt“, „vollständig“, „strikt“, „gänzlich“ oder „100 %“. Darüber hinaus kann das Wort „nahe“ hier verwendet werden, um die Lage eines Objekts oder eines Teils davon in Bezug auf ein anderes Objekt oder einen anderen Teil davon zu beschreiben und/oder um die Positionsbeziehung zweier Objekte oder ihrer jeweiligen Teile zueinander zu beschreiben, und kann „nah“, „benachbart“, „nahe bei“, „in der Nähe“, „bei“ oder ähnliches bedeuten. In dieser schriftlichen Beschreibung werden Beispiele, einschließlich der besten Ausführungsform, verwendet, um den Fachleuten die Herstellung und Verwendung von Vorrichtungen, Systemen und Stoffzusammensetzungen sowie die Durchführung von Verfahren gemäß der vorliegenden Offenbarung zu ermöglichen. Die folgenden Ansprüche, einschließlich der Äquivalente, definieren den Umfang der vorliegenden Offenbarung.

Claims (10)

  1. System zum Einstellen einer Trajektorieverfolgungssteuerung für ein Kraftfahrzeug, umfassend: einen Trajektorieplaner, der so konfiguriert ist, dass er eine geplante Trajektorie erzeugt und eine oder mehrere geplante Trajektoriekomponenten ausgibt, die die geplante Trajektorie darstellen; eine modellprädiktive Steuerung (MPC), die ein internes Modell des Kraftfahrzeugs und einen Optimierer umfasst, wobei das interne Modell so konfiguriert ist, dass es eine vorhergesagte Steuereingabe von dem Optimierer und eine oder mehrere gemessene Trajektoriekomponenten von dem Kraftfahrzeug empfängt und eine vorhergesagte Ausgabe erzeugt, und wobei der Optimierer eine Kostenfunktion verwendet und so konfiguriert ist, dass er eine Vielzahl von Gewichtungen für die Kostenfunktion und einen vorhergesagten Fehler empfängt und die vorhergesagte Steuereingabe erzeugt, wobei der vorhergesagte Fehler eine Summe aus einer ausgewählten der geplanten Trajektoriekomponenten minus der vorhergesagten Ausgabe ist; und ein neuronales Einstellungsnetzwerk, das so konfiguriert ist, dass es die eine oder die mehreren geplanten Trajektoriekomponenten und die eine oder die mehreren gemessenen Trajektoriekomponenten empfängt und die Gewichtungen für die Kostenfunktion erzeugt.
  2. System nach Anspruch 1, wobei die vom Optimierer erzeugte vorhergesagte Steuereingabe eines oder mehrere von einem Lenkbefehl, einem Drosselklappenbefehl und einem Bremsbefehl für das Kraftfahrzeug ist.
  3. System nach Anspruch 1, wobei die Gewichtungen für die Kostenfunktion durch eine vom neuronalen Einstellungsnetzwerk erzeugte Gewichtungsmatrix dargestellt werden.
  4. System nach Anspruch 1, wobei das Kraftfahrzeug zu einem aktuellen Zeitpunkt eine aktuelle Position und eine aktuelle Geschwindigkeit hat und der Trajektorieplaner eine geplante nächste Position und eine geplante nächste Geschwindigkeit für das Kraftfahrzeug für einen nächsten Zeitpunkt erzeugt, der ein vorbestimmter Zeitschritt nach dem aktuellen Zeitpunkt ist, und wobei die eine oder die mehreren geplanten Trajektoriekomponenten eines oder mehrere der umfassen von: einer Vorwärtskomponente der geplanten nächsten Position; einer seitlichen Komponente der geplanten nächsten Position; und einer Größe der geplanten nächsten Geschwindigkeit.
  5. System nach Anspruch 1, ferner umfassend: ein kritisches neuronales Netzwerk, das so konfiguriert ist, dass es die eine oder die mehreren geplanten Trajektoriekomponenten und die eine oder die mehreren gemessenen Trajektoriekomponenten empfängt; wobei das neuronale Einstellungsnetzwerk und das kritische neuronale Netzwerk miteinander zusammenarbeiten, um die Gewichtungen unter Verwendung eines Optimierungsalgorithmus mit verstärkendem Lernen einzustellen, der versucht, die Kostenfunktion zu minimieren.
  6. System nach Anspruch 5, wobei der Optimierungsalgorithmus des verstärkenden Lernens eines ist von: einem Proximal-Policy-Optimierungsalgorithmus; einem Soft-Actor-Critic-Algorithmus; einem-Deep-Deterministic-Policy-Gradient-Algorithmus; und einem Twin-Delayed-Deep-Deterministic-Policy-Gradient-Algorithmus.
  7. System nach Anspruch 5, wobei das neuronale Einstellungsnetzwerk und das kritische neuronale Netzwerk miteinander zusammenarbeiten, um die Gewichtungen während einer Trainingsphase einzustellen.
  8. System nach Anspruch 1, ferner umfassend: eine mehrdimensionale Nachschlagetabelle mit gespeicherten Gewichtungen, die operativ mit dem Optimierer verbunden ist.
  9. System nach Anspruch 8, wobei die modellprädiktive Steuerung die gespeicherten Gewichtungen aus der mehrdimensionalen Nachschlagetabelle während einer Einsatzphase des Normalbetriebs des Kraftfahrzeugs abruft.
  10. Trajektorieverfolgungs- und Einstellungssystem für ein Kraftfahrzeug, umfassend: einen Trajektorieplaner, der so konfiguriert ist, dass er eine geplante Trajektorie für das Kraftfahrzeug erzeugt und eine oder mehrere geplante Trajektoriekomponenten ausgibt, die die geplante Trajektorie darstellen; eine modellprädiktive Steuerung (MPC), die ein internes Modell des Kraftfahrzeugs und einen Optimierer umfasst, wobei das interne Modell so konfiguriert ist, dass es eine vorhergesagte Steuereingabe von dem Optimierer und eine oder mehrere gemessene Trajektoriekomponenten von dem Kraftfahrzeug empfängt und eine vorhergesagte Ausgabe erzeugt, und wobei der Optimierer eine Kostenfunktion verwendet und so konfiguriert ist, dass er eine Vielzahl von Gewichtungen für die Kostenfunktion und einen vorhergesagten Fehler empfängt und die vorhergesagte Steuereingabe erzeugt, wobei der vorhergesagte Fehler eine Summe einer ausgewählten der geplanten Trajektoriekomponenten minus der vorhergesagten Ausgabe ist, und wobei die vorhergesagte Steuereingabe, die durch den Optimierer erzeugt wird, eines oder mehrere von einem Lenkbefehl, einem Drosselklappenbefehl und einem Bremsbefehl für das Kraftfahrzeug ist; ein neuronales Einstellungsnetzwerk, das so konfiguriert ist, dass es die eine oder die mehreren geplanten Trajektoriekomponenten und die eine oder die mehreren gemessenen Trajektoriekomponenten empfängt und die Gewichtungen für die Kostenfunktion erzeugt; und ein kritisches neuronales Netzwerk, das so konfiguriert ist, dass es die eine oder die mehreren geplanten Trajektoriekomponenten und die eine oder die mehreren gemessenen Trajektoriekomponenten empfängt, wobei das neuronale Einstellungsnetzwerk und das kritische neuronale Netzwerk miteinander zusammenarbeiten, um die Gewichtungen unter Verwendung eines Optimierungsalgorithmus mit verstärkendem Lernen einzustellen, der versucht, die Kostenfunktion zu minimieren.
DE102023100499.9A 2022-07-27 2023-01-11 System zur einstellung einer trajektorieverfolgungssteuerung für ein kraftfahrzeug Pending DE102023100499A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/874,451 2022-07-27
US17/874,451 US20240034349A1 (en) 2022-07-27 2022-07-27 System for tuning a trajectory tracking controller for an automotive vehicle

Publications (1)

Publication Number Publication Date
DE102023100499A1 true DE102023100499A1 (de) 2024-02-01

Family

ID=89508097

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102023100499.9A Pending DE102023100499A1 (de) 2022-07-27 2023-01-11 System zur einstellung einer trajektorieverfolgungssteuerung für ein kraftfahrzeug

Country Status (3)

Country Link
US (1) US20240034349A1 (de)
CN (1) CN117539146A (de)
DE (1) DE102023100499A1 (de)

Also Published As

Publication number Publication date
CN117539146A (zh) 2024-02-09
US20240034349A1 (en) 2024-02-01

Similar Documents

Publication Publication Date Title
DE102017122300A1 (de) Arbeitsmaschine
EP1438692B1 (de) Vorbereiten einer auswahl von steuergroessen fuer eine einzustellende dosisverteilung eines technischen geraets
EP1777135B1 (de) Verfahren und Vorrichtung zur Anpassung von Fahrparametern von Fahrzeugen
DE102011088700A1 (de) Verfahren zur Planung einer Prozesskette für einen landwirtschaftlichen Arbeitseinsatz
WO2018197083A1 (de) Verfahren, computerprogrammprodukt, computer-lesbares medium, steuergerät und fahrzeug umfassen das steuergerät zum bestimmen eines kollektiven manövers von wenigstens zwei fahrzeugen
DE102020103527A1 (de) Lernsysteme und -verfahren
DE60308628T2 (de) Verfahren zur Steuerung der Steuerreflektoren eines aerodynamischen Beförderungsmittels
EP1122517B1 (de) Navigationssystem und Verfahren zur nutzerspezifischen Anpassung eines Navigationssystems
DE102023100499A1 (de) System zur einstellung einer trajektorieverfolgungssteuerung für ein kraftfahrzeug
DE102016120660A1 (de) Bestimmung einer Trajektorie mit multi-resolution grid
EP0791192B1 (de) Verfahren zum entwurf eines fuzzy-reglers
DE102019208264A1 (de) Verfahren und Vorrichtung zum Ermitteln einer Regelungsstrategie für ein technisches System
EP4053650B1 (de) Computerimplementiertes verfahren, vorrichtung zur datenverarbeitung und computersystem zum ansteuern einer regelungseinrichtung eines fördersystems
DE102021114768A1 (de) Fahrzeugsteuerung unter Verwendung eines Controllers eines neuronalen Netzes in Kombination mit einem modellbasierten Controller
EP0813986A2 (de) Verfahren zur Abstandsregelung für ein Fahrzeug
WO2004093971A2 (de) Festlegen von steuergroessen, einstellungen oder technischen parametern (planungshilfe)
EP3918528A1 (de) Verfahren zum trainieren und zum betrieb eines multitaskingfähigen künstlichen neuronalen netz, multitaskingfähiges künstliches neuronales netz und vorrichtung
EP3869380A1 (de) Verfahren, computerbasiertes system und computerprogramm-produkt zum floorplanning für eine programmierbare gatteranordnung mit nicht-rechteckigen blockgrenzen
DE102017104369A1 (de) Verfahren, vorrichtung und computerlesbares speichermedium mit instruktionen zur bewegungsplanung für ein kraftfahrzeug
EP0814402A2 (de) Verfahren zum Entwurf oder zur Adaption eines Fuzzy-Reglers oder eines Systems von verknüpften Fuzzy-Reglern
DE102016110435B4 (de) Einachsiges Fahrzeug, Steuereinrichtung und Verfahren zur Steuerung eines derartigen Fahrzeugs
WO2023011694A1 (de) Computerimplementiertes verfahren zum trainieren eines machine-learning-modells für ein fahrzeug oder einen roboter
DE102020127407A1 (de) Verfahren und Steuervorrichtung zur Erzeugung wenigstens eines Fahrauftrags für wenigstens ein fahrerloses Transportfahrzeug, FTF, eines modularen Montagesystems
DE102020105821A1 (de) Verfahren und System zum Führen eines Fahrzeugs
Güttel et al. Exploitation und Ambidexterity

Legal Events

Date Code Title Description
R012 Request for examination validly filed