DE102017102605A1 - Betrieb autonomer Fahrzeuge auf der Basis interaktiver modellprädiktiver Steuerung - Google Patents

Betrieb autonomer Fahrzeuge auf der Basis interaktiver modellprädiktiver Steuerung Download PDF

Info

Publication number
DE102017102605A1
DE102017102605A1 DE102017102605.3A DE102017102605A DE102017102605A1 DE 102017102605 A1 DE102017102605 A1 DE 102017102605A1 DE 102017102605 A DE102017102605 A DE 102017102605A DE 102017102605 A1 DE102017102605 A1 DE 102017102605A1
Authority
DE
Germany
Prior art keywords
vehicle
control
driving
determining
control solution
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
DE102017102605.3A
Other languages
English (en)
Inventor
Dimitar Petrov Filev
Jianbo Lu
Davor D. Hrovat
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.)
Ford Global Technologies LLC
Original Assignee
Ford Global Technologies 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 Ford Global Technologies LLC filed Critical Ford Global Technologies LLC
Publication of DE102017102605A1 publication Critical patent/DE102017102605A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units, or advanced driver assistance systems for ensuring comfort, stability and safety or drive control systems for propelling or retarding the vehicle
    • B60W30/18Propelling the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/0088Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • 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
    • 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
    • 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
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/02Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
    • B60W40/04Traffic conditions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/0097Predicting future conditions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • 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/0098Details of control systems ensuring comfort, safety or stability not otherwise provided for
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0967Systems involving transmission of highway information, e.g. weather, speed limits
    • G08G1/096708Systems involving transmission of highway information, e.g. weather, speed limits where the received information might be used to generate an automatic action on the vehicle control
    • G08G1/096725Systems involving transmission of highway information, e.g. weather, speed limits where the received information might be used to generate an automatic action on the vehicle control where the received information generates an automatic action on the vehicle control
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0967Systems involving transmission of highway information, e.g. weather, speed limits
    • G08G1/096733Systems involving transmission of highway information, e.g. weather, speed limits where a selection of the information might take place
    • G08G1/096741Systems involving transmission of highway information, e.g. weather, speed limits where a selection of the information might take place where the source of the transmitted information selects which information to transmit to each vehicle
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0967Systems involving transmission of highway information, e.g. weather, speed limits
    • G08G1/096733Systems involving transmission of highway information, e.g. weather, speed limits where a selection of the information might take place
    • G08G1/09675Systems involving transmission of highway information, e.g. weather, speed limits where a selection of the information might take place where a selection from the received information takes place in the vehicle
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0967Systems involving transmission of highway information, e.g. weather, speed limits
    • G08G1/096766Systems involving transmission of highway information, e.g. weather, speed limits where the system is characterised by the origin of the information transmission
    • G08G1/096775Systems involving transmission of highway information, e.g. weather, speed limits where the system is characterised by the origin of the information transmission where the origin of the information is a central station
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0967Systems involving transmission of highway information, e.g. weather, speed limits
    • G08G1/096766Systems involving transmission of highway information, e.g. weather, speed limits where the system is characterised by the origin of the information transmission
    • G08G1/096791Systems involving transmission of highway information, e.g. weather, speed limits where the system is characterised by the origin of the information transmission where the origin of the information is another vehicle
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0002Automatic control, details of type of controller or control system architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0002Automatic control, details of type of controller or control system architecture
    • B60W2050/0004In digital systems, e.g. discrete-time systems involving sampling
    • B60W2050/0005Processor details or data handling, e.g. memory registers or chip architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2556/00Input parameters relating to data
    • B60W2556/45External transmission of data to or from the vehicle
    • 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/45External transmission of data to or from the vehicle
    • B60W2556/65Data transmitted between vehicles

Abstract

Ein System umfasst eine Datenverarbeitungsvorrichtung, die dafür programmiert ist, eine Menge von Zielen für ein Fahrzeug zu empfangen und einen Fahrbereich für das Fahrzeug für einen Zeitraum zu identifizieren. Die Datenverarbeitungsvorrichtung empfängt Daten, die Vorhersehbarkeit von Fahrbedingungen des Fahrbereichs angeben, und bestimmt, dass die Vorhersehbarkeit ausreicht, um das Fahrzeug gemäß modellprädiktiver Steuerung zu steuern. Steuern des Fahrzeugs umfasst Bestimmen von Anweisungen zur Steuerung von Aktoren in Bezug auf das Lenken, Antreiben und Bremsen des Fahrzeugs, um eine Kostenfunktion zu minimieren. Die Anweisungen werden für einen ersten Zeitschlitz implementiert. Der Zeitraum wird aktualisiert, um den ersten Zeitschlitz am Anfang zu entfernen und einen zusätzlichen Zeitschlitz am Ende des vorbestimmten Zeitraums vorzusehen. Die Datenverarbeitungsvorrichtung bestimmt eine aktualisierte Steuerlösung und implementiert die aktualisierte Steuerlösung für einen zweiten Zeitschlitz.

Description

  • STAND DER TECHNIK
  • Die interaktive modellprädiktive Steuerung (iMPC – interaktive Model Predictive Control) ist eine effektive Steuertechnologie, die den aktuellen und zukünftigen Zustand des Fahrzeugs und Systembetriebseinschränkungen systematisch berücksichtigen und eine optimale Steuerfunktion mit Bezug auf Kraftstoffverbrauch, Fahrbarkeit und Leistungsfähigkeit bereitstellen kann. iMPC optimiert alle Antriebs-, Lenk- und Bremsaktoren durch Berücksichtigung der Interaktionen zwischen Fahrzeugsubsystemen. Die Verwendung von iMPC setzt jedoch Vorhersehbarkeit der Fahrzeugumgebung voraus. In einer vorhersehbaren Umgebung betriebene autonome Fahrzeuge können aus der Anwendung von iMPC Nutzen ziehen.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist eine Darstellung eines Systems zur Implementierung von interaktiver modellprädiktiver Steuerung (iMPC) für ein erstes auf einer Straße betriebenes autonomes Fahrzeug.
  • 2 ist ein Blockdiagramm eines beispielhaften ersten autonomen Fahrzeugs, das dafür programmiert ist, iMPC für das System von 1 zu implementieren.
  • 3 ist ein Blockdiagramm eines beispielhaften zweiten Fahrzeugs in einem vorbestimmten Fahrtbereich des ersten autonomen Fahrzeugs.
  • 4 ist ein Blockdiagramm einer beispielhaften Regelschleife zur Implementierung von iMPC.
  • 5A ist ein erster Teil eines Diagramms eines beispielhaften Prozesses zur Implementierung von iMPC für das erste autonome Fahrzeug.
  • 5B ist ein zweiter Teil des Diagramms eines beispielhaften Prozesses zur Implementierung von iMPC für das erste autonome Fahrzeug.
  • BESCHREIBUNG
  • EINLEITUNG
  • Ein System 10 wie in 1 gezeigt umfasst ein erstes autonomes Fahrzeug 12, ein Netzwerk 14 und eine oder mehrere Datenquellen 16. Das System 10 kann ferner ein oder mehrere zweite Fahrzeuge 18 umfassen, die autonome Fahrzeuge, halbautonome Fahrzeuge oder herkömmliche Fahrzeuge sein können. Das erste autonome Fahrzeug 12 kann einen Computer 20 (2) umfassen, der dafür programmiert ist, eine Vorhersehbarkeit der Umgebung, in der das erste Fahrzeug 12 betrieben wird, zu bestimmen, und kann wählen, interaktive modellprädiktive Steuerung (iMPC) zu implementieren, falls die Vorhersehbarkeit ausreichend hoch ist. Im Folgenden wird eine Umgebung, deren Vorhersehbarkeit für Implementierung von iMPC ausreichend hoch ist, als eine ausreichend vorhersehbare Umgebung bezeichnet. Die Vorhersehbarkeit der Umgebung kann zum Beispiel ausreichend hoch sein, falls es keine Fußgänger, Tiere, Fahrräder oder zweite Fahrzeuge 18 in der Nähe des ersten autonomen Fahrzeugs 12 gibt. Als ein anderes Beispiel kann die Vorhersehbarkeit der Umgebung ausreichend hoch sein, falls die Umgebung zweite Fahrzeuge 18 umfasst und das Verhalten der zweiten Fahrzeuge 18 durch den Computer 20 in dem ersten Fahrzeug 12 vorhergesagt werden kann. Wie nachfolgend ausführlicher beschrieben wird, können zweite Fahrzeuge 18, deren Verhalten durch den Computer 20 in dem ersten Fahrzeug 12 vorhergesagt werden kann, autonome Fahrzeuge 18 umfassen und können ferner herkömmliche oder halbautonome Fahrzeuge 18 umfassen, deren Verhalten in einem vorbestimmten Verhaltensbereich liegt. Der vorbestimmte Verhaltensbereich kann zum Beispiel einen Geschwindigkeitsbereich, einen Lenkwinkelbereich, einen Positionsbereich und einen Beschleunigungsbereich umfassen. Der Computer 20 kann bestimmen, dass das Verhalten des zweiten Fahrzeugs 18 vorhersehbar ist, solange das zweite Fahrzeug 18 in dem vorbestimmten Bereich betrieben wird.
  • Der Computer 20 des ersten Fahrzeugs 12 kann bei Bestimmung, dass das erste Fahrzeug 12 in einer ausreichend vorhersehbaren Umgebung betrieben wird, wählen, den Betrieb des ersten Fahrzeugs 12 auf der Basis einer Methodologie der interaktiven modellprädiktiven Steuerung (iMPC) zu steuern.
  • SYSTEMELEMENTE
  • Unter ausführlicherer Bezugnahme auf 1 umfasst ein beispielhaftes System 10 zur Implementierung von modellprädiktiver Steuerung das erste Fahrzeug 12, null oder mehr zweite Fahrzeuge 18, ein Netzwerk 14 und null oder mehr Datenquellen 16. Das erste Fahrzeug 12 ist ein autonomes Fahrzeug, das eine von mehreren autonomen Betriebsarten umfasst. Die zweiten Fahrzeuge 18 können herkömmliche, halbautonome oder vollautonome Fahrzeuge 18 sein.
  • Das erste Fahrzeug 12 ist im Allgemeinen ein landgestütztes erstes Fahrzeug 12 mit drei oder mehr Rädern, z. B. ein Personenkraftwagen, leichter Lastwagen usw. Wie nachfolgend ausführlicher beschrieben wird und in 2 zu sehen ist, umfasst das erste Fahrzeug 12 einen Computer 20. Der Computer 20 kann dafür programmiert sein, Antrieb, Lenkung und Bremsen des ersten Fahrzeugs 12 autonom zu steuern. Der Computer 20 kann abhängig von dem wahrgenommenen Grad der Vorhersehbarkeit der Umgebung verschiedene Steuermethodologien implementieren. Beispiele für Steuermethodologien umfassen das Halten der Fahrzeuggeschwindigkeit mit Bezug auf ein vordefiniertes Geschwindigkeitsprofil mit der Möglichkeit der Anpassung an die bevorstehenden Verkehrsbedingungen, Lenken des Fahrzeugs, um ein gekrümmtes Straßensegment zu durchfahren, mit der Möglichkeit des Justierens der Lenkung, um mit plötzlicher Notwendigkeit der Hindernisvermeidung umzugehen usw. Falls der Computer 20 bestimmt, dass die Umgebung ausreichend vorhersehbar ist, kann der Computer 20 eine auf iMPC basierende Methodologie implementieren. Wie nachfolgend ausführlicher beschrieben wird, kann der Computer 20 gemäß der iMPC-Methodologie einen Betrieb des ersten Fahrzeugs 12 auf der Basis einer Menge von Zielen optimieren.
  • Das Netzwerk 14 repräsentiert einen oder mehrere Mechanismen, durch die die Fahrzeuge 12, die Fahrzeuge 18 und die Datenquellen 16 miteinander kommunizieren können, und kann einer oder mehrere von verschiedenen verdrahteten oder drahtlosen Kommunikationsmechanismen sein, darunter eine beliebige gewünschte Kombination von verdrahteten (z. B. Kabel- und Faser-) und/oder drahtlosen (z. B. Mobilfunk-, Drahtlos-, Satelliten-, Mikrowellen- und Hochfrequenz-)Kommunikationsmechanismen und eine beliebige gewünschte Netzwerktopologie (oder Topologien, wenn mehrere Kommunikationsmechanismen benutzt werden). Zu beispielhaften Kommunikationsnetzwerken gehören drahtlose Kommunikationsnetzwerke, lokale Netzwerke (LAN) und/oder großflächige Netzwerke (WAN), einschließlich des Internet, die Datenkommunikationsdienste, Kommunikationsmechanismen von Fahrzeug zu Fahrzeug wie diejenigen, die DSRC-Technologie (Dedicated Short Range Communication) verwenden oder diejenigen, die LTE-D-Technologie (Long Term Evolution Direct) verwenden. Ein LTE-D verwendendes Netzwerk kann zum Beispiel die Entdeckung tausender Vorrichtungen in einer gegebenen Reichweite, z. B. 500 Meter, gestatten, was somit einer Vielzahl von LTE-D-Vorrichtungen in einem Bereich des Fahrzeugs 12 Kommunikation innerhalb des Netzwerks 14 gestatten kann.
  • Die Datenquellen 16 können Systeme wie globale Positionsbestimmungssysteme, Verkehrsverfolgungssysteme, Wetterverfolgungssysteme usw. sein und können Daten in Bezug auf eine Betriebsbedingung des ersten Fahrzeugs 12 und der zweiten Fahrzeuge 18 bereitstellen. Die Datenquelle 16 kann zum Beispiel dafür programmiert werden, Kartendaten, Wetterdaten, Geokoordinaten (z. B. Breitengrad, Längengrad), Verkehrsdaten usw. auf bekannte Weise für das erste Fahrzeug 12 und die zweiten Fahrzeuge 18 zu erzeugen und bereitzustellen.
  • Wieder mit Bezug auf 2 umfasst das erste Fahrzeug 12 einen oder mehrere Sensoren 22, die vorgesehen sind, um Daten in Bezug auf das erste Fahrzeug 12 und die Umgebung, in der das erste Fahrzeug 12 betrieben wird, zu sammeln. Beispielsweise und nicht als Beschränkung können die Sensoren 22 z. B. Thermometer, Barometer, Feuchtigkeitssensoren, Höhenmesser, Kameras, LIDAR, Radar, Ultraschallsensoren, Infrarotsensoren, Drucksensoren, Beschleunigungsmesser, Kreisel, Temperatursensoren, Hallsensoren, optische Sensoren, Spannungssensoren, Stromsensoren, mechanische Sensoren wie Schalter, eine Antenne und Empfänger des GPS (Global Positioning System) usw. umfassen. Mit den Sensoren 22 kann man die Umgebung erfassen, in der das erste Fahrzeug 12 betrieben wird, wie etwa Wetterbedingungen, die Steigung einer Straße, eine Krümmung einer Straße, einen Haftzustand einer Straße, Verkehrszustand, zweite Fahrzeuge 18 usw. Ferner kann man mit den Sensoren 22 dynamische Daten in Bezug auf Operationen des ersten Fahrzeugs 12 sammeln, wie Geschwindigkeit, Gierrate, Beschleunigung, Verlangsamung, Lenkradwinkel, Motordrehzahl, Bremsendruck, Öldruck, die angelegte Leistung zum Antrieb des ersten Fahrzeugs 12 usw.
  • Die eine oder mehreren Steuerungen 26 für das erste Fahrzeug 12 können bekannte elektronische Steuereinheiten (ECU) oder dergleichen umfassen, darunter als nichteinschränkende Beispiele eine oder mehrere Motorsteuerungen, eine oder mehrere Getriebesteuerungen, eine oder mehrere Servolenksteuerungen, eine oder mehrere Bremsensteuerungen, eine oder mehrere Aufhängungssteuerungen usw. Jede der Steuerungen 26 kann jeweilige Prozessoren und Speicher, einen oder mehrere Aktoren umfassen und kann auf bekannte Weise Anweisungen zu einem oder mehreren Sensoren 22 senden und/oder Daten von diesen empfangen. Die Steuerungen 26 können programmiert und mit einem Kommunikationsbus des ersten Fahrzeugs 12 verbunden sein, um Anweisungen von dem Computer 20 zu empfangen und auf der Basis solcher Anweisungen einen Aktor zu steuern. Zum Beispiel kann eine Motorsteuerung einen oder mehrere Aktoren, die einem Motor Kraftstoff und Luft zuführen, elektronische Funkenerzeugung zur Zündung der Kraftstoffverbrennung in Motorzylindern usw. steuern. Ein oder mehrere Sensoren 22 können z. B. die Wirkung der Aktoren detektieren. Zum Beispiel kann ein Sensor 22 die Position eines Ventils detektieren, während es sich öffnet und schließt, um Luft oder Kraftstoff in einen Motorzylinder zu lassen.
  • Die Kommunikationsschaltkreise 24 können Hardware, Software, Firmware usw., sowie sie bekannt ist, umfassen und können für eine oder mehrere Arten drahtloser Kommunikation ausgelegt sein. Die Hardware kann z. B. einen oder mehrere Sendeempfänger, einen oder mehrere Empfänger, einen oder mehrere Sender, eine oder mehrere Antennen, einen oder mehrere Mikrocontroller, einen oder mehrere Speicher, eine oder mehrere elektronische Komponenten, eine oder mehrere interaktive Schaltungen, usw. umfassen. Die Software kann auf einem Speicher gespeichert werden, und kann z. B. einen oder mehrere Codierer, einen oder mehrere Decodierer usw. zum Umsetzen von Nachrichten aus einem Protokoll in ein anderes Protokoll umfassen. Einige Funktionen, z. B. Codierungsfunktionen, können über Firmware realisiert sein.
  • Die Arten drahtloser Kommunikation können zum Beispiel WiFi-Kommunikation, DSRC (Dedicated Short Range Communications), LTE-D (Long Term Evolution Direct), bidirektionale Satellitenkommunikation (z. B. Notdienste), unidirektionale Satellitenkommunikation (z. B. Empfangen digitaler Audio-Radioausstrahlungen), AM/FM-Radio, usw. umfassen. Außerdem können die Kommunikationsschaltkreise 26, z. B. über ein verdrahtetes Netzwerk, wie etwa ein CAN-Bus (Controller Area Network), Ethernet oder ein LIN-Bus (Local Interconnect Network), kommunikativ mit dem Computer 20 gekoppelt sein, so wie es bekannt ist.
  • Der Computer 20 umfasst einen Prozessor und einen Speicher. Der Speicher umfasst eine oder mehrere Arten von computerlesbaren Medien und speichert Anweisungen, die durch den Prozessor ausführbar sind, um verschiedene Operationen, darunter hier offenbarte, auszuführen. Ferner kann der Computer 20 einen oder mehrere andere Computer umfassen und/oder kommunikativ mit ihnen gekoppelt sein, darunter z. B. Fahrzeugkomponenten wie die Sensoren 22 und Steuerungen 26, die auch bekanntermaßen jeweilige Prozessoren und Speicher umfassen können. Kommunikation kann z. B. über einen CAN-Bus (Controller Area Network), Ethernet oder einen LIN-Bus (Local Interconnect Network) usw. durchgeführt werden, sowie es bekannt ist.
  • Wie nachfolgend in zusätzlichem Detail beschrieben wird, kann der Computer 20 für autonome Steuerung des Fahrzeugs 12 programmiert sein. Der Computer 20 kann ferner auf der Basis einer Bestimmung, dass eine Betriebsumgebung ausreichend vorhersehbar ist, eine Methodologie der interaktiven modellprädiktiven Steuerung für das Fahrzeug 12 implementieren, die mindestens den Antrieb, die Lenkung und die Bremsen des Fahrzeugs 12 autonom steuert.
  • Interaktive modellprädiktive Steuerung berücksichtigt den aktuellen und zukünftigen Zustand des Fahrzeugs und Systembetriebseinschränkungen, stellt eine optimale Steuerfunktion mit Bezug auf Kraftstoffverbrauch, Fahrbarkeit und Leistungsfähigkeit bereit und ist dadurch gekennzeichnet, dass mehrere Wirkkomponenten, die jeweils ihre eigene MPC-Strategie implementieren, Informationen über ihren Zustand, ihre Zielsetzung und Einschränkungen austauschen.
  • Ein eine interaktive modellprädiktive Steuerung für ein Fahrzeug 12 implementierender Computer 20 bestimmt eine Steuerlösung, die eine Kostenfunktion für das Fahrzeug 12 für einen Zeitraum optimiert. Die Steuerlösung umfasst Anweisungen zum Steuern des Antriebs und/oder der Lenkung und/oder der Bremsen des Fahrzeugs 12. Der Zeitraum umfasst mehrere Zeitschlitze. Die Steuerlösung wird für einen ersten Zeitschlitz in dem Zeitraum implementiert. Auf die Implementierung der Steuerlösung für den ersten Zeitschlitz hin iteriert der Prozess.
  • In einer nächsten Iteration bestimmt der Computer 20 einen aktualisierten Zeitraum. Zur Erzeugung des aktualisierten Zeitraums entfernt der Computer 20 den ersten Zeitschlitz vom Anfang des vorherigen Zeitraums und fügt dem Ende des vorherigen Zeitraums einen ersten zusätzlichen Zeitschlitz hinzu. Für den aktualisierten Zeitraum wird eine aktualisierte Steuerlösung bestimmt. Die aktualisierte Steuerlösung umfasst aktualisierte Anweisungen zum Steuern des Antriebs und/oder der Lenkung und/oder der Bremsen des Fahrzeugs 12. Die Steuerlösung wird für einen zweiten Zeitschlitz implementiert, der dem ersten Zeitschlitz unmittelbar folgt. Der Prozess kann weiter iterieren, den Zeitraum aktualisierend, eine aktualisierte Steuerlösung für den aktualisierten Zeitraum bestimmend und die aktualisierte Steuerlösung für einen nächsten Zeitschlitz implementierend.
  • Wie in 3 gezeigt, umfassen die zweiten Fahrzeuge 18 einen Computer 30, Sensoren 32, Kommunikationsschaltkreise 34 und Steuerungen 36. Die Steuerungen der Sensoren 32, Kommunikationsschaltkreise 34 und Steuerungen 36 können jeweils den Sensoren 22, Kommunikationsschaltkreisen 24 und Steuerungen 26, die mit Bezug auf das erste Fahrzeug 12 beschrieben werden, ähnlich sein. Der Computer 30 der zweiten Fahrzeuge 18 kann für autonomen, halbautonomen oder herkömmlichen Betrieb der zweiten Fahrzeuge 18 programmiert sein. Wie nachfolgend in zusätzlichem Detail beschrieben wird, kann der Computer 30 des zweiten Fahrzeugs 18 dafür programmiert werden, Modelle, Regeln, Steuermethodologien und/oder Daten in Bezug auf den Betrieb des zweiten Fahrzeugs 18 dem Computer 20 des ersten Fahrzeugs 12 bereitzustellen, so dass der Computer 20 des ersten Fahrzeugs 12 das Verhalten des zweiten Fahrzeugs 18 vorhersehen kann. Weiterhin kann im Fall von autonomem oder halbautonomem Betrieb des zweiten Fahrzeugs 18 der Computer 30 dafür programmiert werden, die Steuerung des zweiten Fahrzeugs 18 auf der Basis von Modellen, Regeln, Steuermethodologien und Daten in Bezug auf den Betrieb des ersten Fahrzeugs 12 zu justieren und den Steuerungen 36 des zweiten Fahrzeugs 18 auf der Basis der justierten Steuerung Anweisungen zuzuführen.
  • INTERAKTIVE MODELLPRÄDIKTIVE STEUERUNG
  • Interaktive modellprädiktive Steuerung (iMPC) ist eine Steuermethodologie, die zur Steuerung autonomer Fahrzeuge, wie etwa des ersten Fahrzeugs 12 des Systems 10, verwendet werden kann. Falls ein oder mehrere zweite Fahrzeuge 18 autonom sind, können die zweiten Fahrzeuge 18, die autonom sind, auch dafür programmiert sein, iMPC zu implementieren. In diesem Fall können das erste Fahrzeug 12 und die zweiten Fahrzeuge 18, die zur Implementierung von iMPC programmiert sind, wie nachfolgend beschrieben kollektiv ein iMPC-Mehrfahrzeugsystem mit interaktiver Steuerung herstellen. Das Mehrfahrzeugsystem könnte die Steuerziele des ersten Fahrzeugs 12 mittels jeder individuellen iMPC-Steuerung mit den Steuerzielen des zweiten Fahrzeugs 18 abstimmen. Wenn zum Beispiel das erste Fahrzeug 12 eine Straße verlassen muss, indem es an zweiten Fahrzeugen 18 vorbeifährt, müssen die zweiten Fahrzeuge 18 rechts des ersten Fahrzeugs 12 möglicherweise langsamer werden oder weiter in quasistationären Zuständen betrieben werden, um plötzliche Bewegungsänderungen zu vermeiden, die Störung des ersten Fahrzeugs 12 verursachen könnten, das beabsichtigt, eine Straße zu verlassen.
  • Ein iMPC implementierender Computer 20 kann den aktuellen und zukünftigen Zustand des ersten Fahrzeugs 12 und die Systembetriebseinschränkungen berücksichtigen und eine optimale Steuerfunktion bereitstellen. Die optimale Steuerfunktion kann als Eingaben z. B. ein Ziel für das erste Fahrzeug 12 und eine gewünschte Fahrtgeschwindigkeit usw. (zusammen Fahrzeugziele) empfangen. Das erste Fahrzeug 12 kann zusätzlich Systembetriebseinschränkungen empfangen. Systembetriebseinschränkungen können zum Beispiel verfügbare Straßen, Fahrregeln und -bestimmungen, Geschwindigkeitsbegrenzungen, Verkehr, Hindernisse usw. umfassen. Die iMPC erzeugt auf der Basis der Fahrzeugziele und Systembetriebseinschränkungen Anweisungen für Aktoren, die Antrieb, Lenkung und Bremsen des ersten Fahrzeugs 12 steuern. Die Anweisungen können so erzeugt werden, dass der Betrieb des ersten Fahrzeugs 12 optimiert wird, um die Fahrzeugziele zu erreichen, und ferner um z. B. optimalen Kraftstoffverbrauch und/oder optimale Fahrbarkeit (z. B. Fahrkomfort) und/oder optimale Leistungsfähigkeit (z. B. minimale Justierungen an Aktoren) zu erreichen.
  • Eine kritische Annahme beim Entwurf von iMPC für das autonome Fahrzeug 12 ist die Fähigkeit des Steuersystems, eine erste Fahrzeugleistungsfähigkeit auf einem nächsten Segment eines Fahrpfads vorherzusagen. Das nächste Segment des Fahrpfads wird hier als ein Vorschauhorizont bezeichnet. Der Vorschauhorizont kann zum Beispiel das Segment des Fahrpfads sein, auf dem das Fahrzeug 12 für einen nächsten vorbestimmten Zeitraum fahren wird. Der nächste vorbestimmte Zeitraum kann zum Beispiel eine absolute Zeit wie 10 Sekunden oder als anderes Beispiel eine vorbestimmte Anzahl von Zeitschlitzen, zum Beispiel 100, sein, wobei jeder Zeitschlitz einen Zyklus des Empfangens von Eingaben durch den Computer 20 und des Bereitstellens aktualisierter Anweisungen für die Steuerung 26 repräsentiert. Der vorbestimmte Zeitraum kann auf der Basis der Betriebsumgebung variieren. Zum Beispiel kann ein vorbestimmter Zeitraum in einer Stadt 1 Sekunde betragen, und ein vorbestimmter Zeitraum auf einer Schnellstraße kann 10 Sekunden sein.
  • 4 zeigt eine Blockdarstellung einer Regelschleife 40 zur Implementierung von iMPC. Die iMPC-Regelschleife 40 umfasst einen virtuellen Fahrer 42, eine prädiktive Steuerung 44, eine oder mehrere Steuerungen 26 und einen oder mehrere Datensammler 18, 22, 32.
  • Der virtuelle Fahrer 42 und die prädiktive Steuerung 44 können zum Beispiel Softwaremodule sein, die durch den Computer 20 des ersten Fahrzeugs 12 ausgeführt werden können.
  • Der virtuelle Fahrer 42 kann deterministische Pfadplanungs- und Pfadbefolgungsalgorithmen ausführen, die die Vorhersage der Fahrzeuggeschwindigkeit und -position über den Vorschauhorizont ermöglichen. Der virtuelle Fahrer 42 kann Daten empfangen, die z. B. ein Ziel, Kartendaten, Verkehrsdaten usw. umfassen. Auf der Basis der empfangenen Daten kann der virtuelle Fahrer 42 z. B. Fahrpedal-, Lenk- und Bremseingaben für die prädiktive Steuerung erzeugen. Die Fahrpedaleingabe kann eine Zielbeschleunigung für das erste Fahrzeug 12 angeben. Die Lenkeingabe kann einen Ziellenkwinkel angeben. Die Bremseingabe kann einen Zielwert des Bremsens angeben.
  • Die prädiktive Steuerung 44 kann zum Beispiel die Fahrpedal-, Lenk- und Bremseingaben von dem virtuellen Fahrer 42 empfangen. Auf der Basis dieser Eingaben kann die prädiktive Steuerung 44 Anweisungen für Steuerungen 26 des ersten Fahrzeugs 12 in Bezug auf Antrieb, Lenkung und Bremsen erzeugen. Zum Beispiel kann die prädiktive Steuerung 44 eine Anweisung zu einer Lenkungssteuerung 26 senden, einen Lenkwinkel um 0,25 Grad zu justieren, oder zu einer Bremssteuerung 26, einen Bremsflüssigkeitsdruck um 1 bar zu vergrößern.
  • In einem Zustand, bei dem eine Kollision zur Besorgnis wird, werden unabhängig von der Absicht des virtuellen Fahrers Unfallvermeidungs- oder -minderungsfunktionen aktiviert. Bei Aktivierung der Unfallvermeidungs- und -minderungssteueraktionen muss sich der virtuelle Fahrer 42 mit der Unfallvermeidungs-/-minderungssteueraktion koordinieren, damit die Effektivität der Sicherheitsfunktionen nicht verringert wird. Wie im Fall eines manuellen Fahrens eines Fahrzeugs 12 muss der virtuelle Fahrer 42 möglicherweise die Sicherheitsfunktionen des elektronischen Stabilitätsprogramms, des Rollstabilisierungssystems, der Traktionsregelung und des Antiblockiersystems nicht verwalten. Der virtuelle Fahrer 42 muss jedoch Maßnahmen treffen, um sich mit diesen Sicherheitsfunktionen zu koordinieren und keine Steueraktionen zu erzeugen, die diesen entgegenwirken.
  • Wie oben beschrieben, können die Steuerungen 26 jeweilige Prozessoren und Speicher, einen oder mehrere Aktoren umfassen und können auf bekannte Weise Anweisungen zu einem oder mehreren Sensoren 22 senden und/oder Daten von diesen empfangen. Die Steuerungen 26 können programmiert und mit einem Kommunikationsbus des ersten Fahrzeugs 12 verbunden sein, um Anweisungen von dem Computer 20 zu empfangen und auf der Basis solcher Anweisungen einen Aktor zu steuern. Zum Beispiel kann eine Motorsteuerung 26 einen oder mehrere Aktoren, die einem Motor Kraftstoff und Luft zuführen, elektronische Funkenerzeugung zur Zündung der Kraftstoffverbrennung in Motorzylindern usw. steuern, ebenfalls wie oben beschrieben. Ein oder mehrere Sensoren 22 können z. B. die Wirkung der Aktoren detektieren. Zum Beispiel kann ein Sensor 22 die Position eines Ventils detektieren, während es sich öffnet und schließt, um Luft oder Kraftstoff in einen Motorzylinder zu lassen.
  • Die Steuerungen 26 können eine oder mehrere Drosselsteuerungen 26, eine oder mehrere Zündsteuerungen 26, eine oder mehrere Bremsensteuerungen 26, eine oder mehrere Lenkungssteuerungen 26, eine Steuerung für Abgasrecycling (EGR) 26, eine Ladedruckbegrenzersteuerung 26 usw. umfassen.
  • Die Datensammler 46 können Sensoren 22 des ersten Fahrzeugs 12, Sensoren 32 des zweiten Fahrzeugs 18 und Datenquellen 16 umfassen. Die Datensammler 46 können Daten bezüglich der Umgebung, wie etwa Anwesenheit und Ort von Straßen, die Position des ersten Fahrzeugs 12 auf den Straßen, die Anwesenheit und Ort von Fahrzeugen 18 in einem Betriebsbereich, die Geschwindigkeit und Richtung der Fahrt der Fahrzeuge 18 in dem Betriebsbereich, die Art des Fahrzeugs 18, Fußgänger, Hindernisse auf der Straße usw. sammeln. Die Datensammler 46 können ferner Daten in Bezug auf den Betrieb des ersten Fahrzeugs 12 bereitstellen, wie etwa Geschwindigkeit, Fahrtrichtung, Motordrehzahl, Lenkwinkel, Bremsendruck usw. Weiterhin können die Datensammler 46 Daten in Bezug auf Wetterbedingungen in dem Betriebsbereich, Geokoordinaten (Breitengrad, Längengrad) des ersten Fahrzeugs 12, Verkehrsbedingungen im Betriebsbereich, Verkehrsbedingungen auf einem geplanten Fahrpfad jenseits des Betriebsbereichs usw. sammeln, mit denen z. B. der virtuelle Fahrer 42 aktualisierte Fahrpedal-, Lenkungs- und Bremseingaben für die prädiktive Steuerung erzeugen kann.
  • Wie oben besprochen, kann die iMPC das erste Fahrzeug 12 in Bezug auf Ziel, Fahrtgeschwindigkeit, Kraftstoffverbrauch, Fahrbarkeit, Leistungsfähigkeit usw. optimieren. Als ein Beispiel kann die iMPC Parameter justieren, um eine Kostenfunktion J zu minimieren. Die Kostenfunktion J kann mehrere Kosten quantifizieren und kann z. B. eine Gleichung sein, die eine Anzahl von Termen enthält, die jeweils der Computer 20 des ersten Fahrzeugs 12 zu minimieren versuchen kann und/oder im Aggregat zu minimieren versuchen kann. Die nachfolgende Gleichung 1 ist ein Beispiel für eine Kostenfunktion J.
    Figure DE102017102605A1_0002
  • Unter den Bedingungen:
    Figure DE102017102605A1_0003
  • In den Gleichungen ist J eine zu minimierende Kostenfunktion, Pi eine Zielposition für das erste Fahrzeug 12, die hier auch als Ziel bezeichnet wird, pi eine aktuelle Position des ersten Fahrzeugs 12, Vi eine Zielgeschwindigkeit für das erste Fahrzeug 12, vi eine aktuelle Geschwindigkeit des ersten Fahrzeugs 12,
    Figure DE102017102605A1_0004
    eine Kraftstoffverbrauchsrate des ersten Fahrzeugs 12, T das Drehmoment, eine Menge von Fahrzeugsteuervariablen, x ein Zustand des ersten Fahrzeugs 12, y eine Ausgabe des ersten Fahrzeugs 12 (Position, Geschwindigkeit, Kraftstoffverbrauch, Fahrkomfort usw.). i ist der Zeitschlitz für die Berechnung. Unter Bezugnahme auf Gleichung 5 kann der Computer 20 eine optimale Menge von Fahrzeugsteuervariablen uopt dergestalt berechnen, dass die Kostenfunktion J minimiert wird.
  • Wieder mit Bezug auf 4 kann der virtuelle Fahrer 42 Pfadplanungs- und Pfadbefolgungsalgorithmen umfassen. Wie oben beschrieben, kann der virtuelle Fahrer 42 ein in dem Computer 20 enthaltenes Softwaremodul sein.
  • Auf der Basis von Eingaben z. B. von einem Benutzer des ersten Fahrzeugs 12 kann der virtuelle Fahrer 42 einen Pfad von einem aktuellen Ort zu einem gewünschten Ziel (den Fahrpfad) und eine gewünschte Fahrtgeschwindigkeit bestimmen. Auf der Basis des Fahrpfads und der Position des ersten Fahrzeugs 12 relativ zum Pfad kann der virtuelle Fahrer 42 Beschleunigung, einen Lenkwinkel und ein Bremsen zur Anwendung durch das erste Fahrzeug 12 berechnen. Der virtuelle Fahrer 42 kann die Beschleunigungs-, Lenkwinkel- und Bremseingaben der prädiktiven Steuerung zuführen.
  • Die prädiktive Steuerung 44 kann einen oder mehrere Algorithmen zur Bestimmung der Steuervariablen u auf der Basis der von dem virtuellen Fahrer empfangenen Beschleunigungs-, Lenkwinkel- und Bremseingaben umfassen. Zum Beispiel kann die prädiktive Steuerung 44 eine Menge von Steuervariablen u dergestalt erzeugen, dass die Kostenfunktion J gemäß Gleichung 1 gemäß der Gleichung 2 minimiert wird.
  • Die prädiktive Steuerung 44 kann dann eine Menge von Anweisungen für die Steuerungen 26 erzeugen. Die Anweisungen können den Steuerungen 26 aktualisierte Werte der Steuervariablen u bereitstellen. Auf der Basis der aktualisierten Steuervariablen u können die Steuerungen den Betrieb eines oder mehrerer den Steuerungen 26 zugeordneter Aktoren justieren. Auf der Basis der Anweisungen für die Aktoren kann das erste Fahrzeug 12 seine Position, Geschwindigkeit und Fahrtrichtung ändern.
  • Die Datensammler 46, die Sensoren 22 des ersten Fahrzeugs 12, Sensoren 32 des Fahrzeugs 18 und Datenquellen 16 umfassen können, können auf der Basis der neuen Position, Geschwindigkeit und Fahrtrichtung des ersten Fahrzeugs 12 dem virtuellen Fahrer 42 aktualisierte Daten bereitstellen. Der virtuelle Fahrer 42 kann dann mit dem geplanten Pfad und der geplanten Geschwindigkeit vereinbare Justierungen vornehmen.
  • PROZESSE
  • Bestimmung eines Fahrpfads
  • Der Computer 20 des ersten Fahrzeugs 12 sammelt Daten, die Ziele des ersten Fahrzeugs zum Beispiel für eine Fahrt angeben. Die Daten können zum Beispiel ein Zielort (Ziel) für die Fahrt und eine Zielgeschwindigkeit für die Fahrt umfassen. Die Zielgeschwindigkeit kann zum Beispiel eine Ziel-Gesamtdurchschnittsgeschwindigkeit für die Fahrt sein und kann zum Beispiel mit Regeln assoziiert sein, wie etwa einem Ziel des Bleibens in einem Bereich vorgegebener Geschwindigkeitsgrenzen. Der Bereich kann zum Beispiel innerhalb von +/–10% vorgegebener Geschwindigkeiten, innerhalb eines Absolutbereichs von +/–5 Meilen/Stunde vorgegebener Geschwindigkeiten usw. sein.
  • Der Computer 20 kann ferner zum Beispiel Kartendaten aus mit dem Computer 20 assoziiertem Speicher oder aus einer Datenquelle 16 sammeln, die mögliche Routen von einem aktuellen Ort zum Ziel angeben. Der Computer 20 kann zum Beispiel gemäß bekannten Algorithmen einen Fahrpfad vom aktuellen Ort zum Ziel bestimmen.
  • Bestimmung eines Vorschauhorizonts
  • Auf der Basis des bestimmen Fahrpfads kann der Computer 20 des Fahrzeugs 12 einen Vorschauhorizont identifizieren. Der Vorschauhorizont kann wie oben beschrieben zum Beispiel ein Segment des Fahrpfads sein, auf dem das Fahrzeug 12 für einen nächsten vorbestimmten Zeitraum fahren wird. Der nächste vorbestimmte Zeitraum kann zum Beispiel eine absolute Zeit wie etwa 10 Sekunden sein, oder als ein anderes Beispiel eine vorbestimmte Anzahl von Zeitschlitzen, zum Beispiel 100, wobei jeder Zeitschlitz einen Zyklus des Empfangens von Eingaben durch den Computer 20 und des Bereitstellens aktualisierter Anweisungen für die Steuerung 26 repräsentiert. Der vorbestimmte Zeitraum kann auf der Basis der Betriebsumgebung variieren. Ein vorbestimmter Zeitraum in einer Stadt kann zum Beispiel 1 Sekunde sein, und ein vorbestimmter Zeitraum auf einer Schnellstraße kann 10 Sekunden sein.
  • Bestimmung eines Fahrbereichs
  • Ein Fahrbereich kann ein Bereich sein, der den Vorschauhorizont umgibt. Um interaktive modellprädiktive Steuerung (iMPC) zu implementieren, kann der Computer 20 des Fahrzeugs 12 Daten benötigen, die Umgebungsbedingungen, Verkehrsbedingungen, Straßenbedingungen usw. in dem vorbestimmten Fahrbereich angeben. Der vorbestimmte Fahrbereich kann z. B. als auf dem Vorschauhorizont, innerhalb einer vorbestimmten Distanz des ersten Fahrzeugs 12 an jedem Punkt, definiert sein. Der vorbestimmte Fahrbereich kann zum Beispiel auf der Basis der Umgebung und Art von Betrieb variieren. Wenn das erste Fahrzeug 12 zum Beispiel in einer Stadt betrieben wird und langsam auf Städtestraßen fährt, kann der vorbestimmte Fahrbereich 50 Meter vor und hinter dem ersten Fahrzeug 12 und 20 Meter links und rechts des ersten Fahrzeugs 12 sein. Wenn das erste Fahrzeug 12 dagegen auf einer Schnellstraße betrieben wird, kann der vorbestimmte Fahrbereich 500 Meter vor und hinter dem ersten Fahrzeug 12 sein und kann sich 50 Meter über die Seiten der Schnellstraße nach links und rechts erstrecken.
  • Sammeln von Daten in Bezug auf Objekte im Fahrbereich
  • Um einen Grad der Vorhersehbarkeit des vorbestimmten Fahrbereichs zu bestimmen, sammelt der Computer 20 Daten in Bezug auf Straßenbedingungen, Wetterbedingungen, Verkehrsbedingungen usw. in dem vorbestimmten Fahrbereich. Der Computer 20 kann zum Beispiel Daten von Datenquellen 16 wie etwa Wetterverfolgungssystemen, Verkehrsverfolgungssystemen, Kartenanbietern, globalen Positionsbestimmungssystemen usw. sammeln. Außerdem kann der Computer 20 Daten von Sensoren 22 sammeln, die in dem Computer 20 enthalten oder kommunikativ damit gekoppelt sind. Weiterhin kann der Computer 20 Daten zum Beispiel über Computer 30 der zweiten Fahrzeuge 18 von Sensoren 32 sammeln.
  • Zusätzlich zu Straßenbedingungen, Wetterbedingungen, Verkehrsbedingungen usw. kann der Computer 20 Daten in Bezug auf Objekte in dem vorbestimmten Fahrbereich sammeln. Die Objekte können belebte Objekte wie Personen und Tiere umfassen und können ferner unbelebte Objekte umfassen. Unbelebte Objekte können zum Beispiel stationäre Objekte wie Straßen, Schilder, Gebäude usw. sein und können ferner sich bewegende Objekte umfassen, wie etwa Fahrräder, zweite Fahrzeuge 18 usw.
  • Der Computer 20 kann ferner über Kommunikation mit jedem Computer 30 der zweiten Fahrzeuge 18 eine Art von Betrieb jedes der zweiten Fahrzeuge 18 bestimmen. Eine Art von Betrieb kann z. B. autonomer Betrieb auf der Basis interaktiver modellprädiktiver Steuerung, autonomer Betrieb auf der Basis eines anderen Steuermodells, halbautonomer Betrieb oder manueller (menschlicher) Betrieb sein. Falls das zweite Fahrzeug 18 autonom betrieben wird, kann der Computer 20 zusätzliche Informationen anfordern, wie etwa die aktuelle Menge von Zielen (Kostenfunktion) für das zweite Fahrzeug 18, die Art autonomer Steuerung, die Regeln, die für die autonome Steuerung gelten, usw.
  • Ähnlich kann, falls ein zweites Fahrzeug 18 halbautonom betrieben wird, der Computer 20 zusätzliche Informationen anfordern, wie etwa Arten von halbautonomer Steuerung (Antiblockiersystem (ABS), Traktionssteuerung, Kollisionsvermeidung usw.), die eine Angabe für das zukünftige Verhalten des zweiten Fahrzeugs 18 bereitstellen können.
  • Der Computer 20 kann ferner von den Sensoren 22, den Sensoren 32 und den Datenquellen 16 Daten sammeln, die ein Verhalten jedes der zweiten Fahrzeuge 18 in dem vorbestimmten Fahrbereich angeben. Die Daten können Position als Funktion der Zeit, Geschwindigkeit als Funktion der Zeit, Richtung als Funktion der Zeit usw. umfassen. Wie nachfolgend beschrieben wird, können die Daten insbesondere im Fall von zweiten Fahrzeugen 18, die halbautonom oder manuell betrieben werden, verwendet werden, um zu bestimmen, ob die Fahrzeuge 18 in einem vorbestimmten Verhaltensbereich betrieben werden.
  • Bestimmung eines Grads an Vorhersehbarkeit des vorbestimmten Fahrbereichs
  • Damit das erste Fahrzeug 12 iMPC implementieren kann, ist es notwendig, dass der vorbestimmte Fahrbereich ausreichend vorhersehbar ist. Der Computer 20 des ersten Fahrzeugs 12 kann dafür programmiert sein, auf der Basis gesammelter Daten die Vorhersehbarkeit des Fahrbereichs zu bestimmen. Zum Beispiel ist die Vorhersehbarkeit der Straßenbedingungen während des Fahrens im Winter geringer als die der Straßenbedingungen während des Fahrens im Sommer aufgrund der potentiellen Eis- und Schneebedingungen auf der Straße. Als ein anderes Beispiel ist die Vorhersehbarkeit eines Fahrbereichs mit weniger Verkehr höher als die eines Verkehrsfahrbereichs mit starkem Verkehr.
  • Durch die Anwesenheit einiger Objekte im Fahrbereich kann der Fahrbereich nicht ausreichend vorhersehbar zur Implementierung von iMPC werden. Zum Beispiel kann die Anwesenheit von Fußgängern, Tieren oder Personen, die Fahrräder, Dreiräder usw. fahren, angeben, dass der Fahrbereich nicht ausreichend vorhersehbar ist. Als ein anderes Beispiel kann bestimmt werden, dass ein Fahrbereich in einem Wohnungsgebiet aufgrund der Wahrscheinlichkeit, dass Personen, Haustiere usw. anwesend sein können, nicht ausreichend vorhersehbar ist.
  • In anderen Fällen können zusätzliche Informationen notwendig sein, um zu bestimmen, ob eine Umgebung ausreichend vorhersehbar ist. Zum Beispiel können auf einer Schnellstraße mit begrenztem Zugang die Objekte im Fahrbereich alle zweite Fahrzeuge 18 sein, die in einer selben Richtung fahren. In diesem Fall kann der Fahrbereich ausreichend vorhersehbar sein, falls das Verhalten jedes der anderen Fahrzeuge 18 ausreichend vorhersehbar ist. Das Verhalten der anderen Fahrzeuge 18 kann ausreichend vorhersehbar sein, wenn entweder die zweiten Fahrzeuge 18 autonom betrieben werden oder die zweiten Fahrzeuge 18 in einem vorbestimmten Verhaltensbereich betrieben werden.
  • Der Computer 20 kann dafür programmiert sein, ein numerisches Verfahren zur Bestimmung des Grads an Vorhersehbarkeit des Fahrbereichs zu benutzen. Zum Beispiel kann der Computer 20 eine Menge von Risikofaktoren identifizieren. Ein Probebeispiel für einen Risikofaktor wäre Regen, Schnee, Dunkelheit, ein Wohnungsgebiet, Anwesenheit von Haustieren, Anwesenheit von Kindern, Anwesenheit von Erwachsenen, Anwesenheit von Fahrrädern, Anwesenheit von zweiten nichtautonomen Fahrzeugen 18, Anwesenheit von autonomen Fahrzeugen 18 usw. Jedem Risikofaktor kann ein numerischer Wert zugewiesen werden, und es kann die Summe der Werte numerischer Risikofaktoren bestimmt werden. Eine Summe der Werte numerischer Risikofaktoren oberhalb eines Schwellenwerts kann angeben, dass der Fahrbereich nicht ausreichend vorhersehbar ist.
  • Bestimmung eines vorbestimmten Verhaltensbereichs
  • Es kann ein vorbestimmter Verhaltensbereich für jedes zweite Fahrzeug 18 bestimmt werden, zum Beispiel auf der Basis statistischer Daten in Bezug auf das Verhalten von Fahrzeugen 18 in einer bestimmten Fahrsituation. Der vorbestimmte Verhaltensbereich kann zum Beispiel auf der Basis aufgezeichneter Daten für in dem Fahrbereich fahrende Fahrzeuge bestimmt werden.
  • Als ein Beispiel kann der Fahrbereich eine Schnellstraße mit begrenztem Zugang mit einer Geschwindigkeitsbegrenzung von 70 Meilen/Stunde sein. Auf der Basis statistischer Daten kann der vorbestimmte Bereich von Geschwindigkeiten in dem vorbestimmten Fahrbereich z. B. 50 Meilen/Stunde bis 85 Meilen/Stunde sein. Der Bereich vorhersehbarer Positionen kann innerhalb von 10 Metern zu jeder Seite der Schnellstraße liegen und Verbringen von mehr als einem vorbestimmten Prozentsatz von Zeit, z. B. 80%, in den definierten Spuren.
  • Es kann zusätzliche Beschränkungen geben, in dem vorbestimmten Verhaltensbereich zu liegen. Zum Beispiel kann, um in dem vorbestimmten Verhaltensbereich zu liegen, von jedem zweiten Fahrzeug 18 gefordert werden, einen Mindestabstand (z. B. 20 Meter) zum ersten Fahrzeug 12 und anderen zweiten Fahrzeugen 18 für einen bestimmten Prozentsatz der Zeit (z. B. 80%) zu halten und gefordert werden, Spurwechselmanöver in einer Zeit auszuführen, die größer als eine Mindestzeit (z. B. 10 Sekunden) und kleiner als eine Maximalzeit (z. B. 1 Minute) ist.
  • Der Bereich vorhergesehener Verhaltensweisen kann von Wetterbedingungen, Helligkeitsbedingungen, dem Verkehrsvolumen, der Tageszeit usw. abhängen. Zum Beispiel kann der vorbestimmte Bereich von Geschwindigkeiten in Regen- oder Schneewetter verringert werden. Der Bereich vorbestimmter Abstände kann in hochvolumigen Verkehrsbedingungen, wie etwa in Spitzenzeiten am Morgen und Abend verringert werden.
  • Einrichten eines iMPC-Mehrfahrzeugsystems mit interaktiver Steuerung
  • Falls ein oder mehrere Computer 30 der zweiten Fahrzeuge 18 im Fahrbereich für autonome Steuerung auf der Basis interaktiver modellprädiktiver Steuerung programmiert sind, können der Computer 20 des ersten Fahrzeugs 12 und der eine oder die mehreren Computer 30 der zweiten Fahrzeuge 18 ein Mehrfahrzeugsystem bilden, das interaktive modellprädiktive Steuerung implementiert. Der Computer 20 des ersten Fahrzeugs 12 und der eine oder die mehreren Computer 30 der zweiten Fahrzeuge 18 können jeweilige Ziele (Kostenfunktionen), Modelle, Regeln, Steuermethodologien und/oder Daten austauschen. Der Computer 20 und der eine oder die mehreren Computer 30 können zusammenarbeiten, um das jeweilige erste Fahrzeug 12 und zweite Fahrzeuge 18 zu steuern, um ein optimales Ergebnis für das Mehrfahrzeugsystem zu erhalten, um so die optimierte kollaborative Steuerung der Fahrzeuge 12, 18 zu erreichen. Zum Beispiel könnte das Mehrfahrzeugsystem einen Verband bilden, um dem führenden autonomen Fahrzeug 12 zu folgen.
  • BEISPIELHAFTER PROZESSFLUSS
  • 5A ist ein erster Teil einer Darstellung eines beispielhaften Prozesses 500 zur Implementierung von iMPC durch das erste autonome Fahrzeug 12. Der Prozess 500 beginnt in einem Block 505.
  • 5B ist ein zweiter Teil der Darstellung des beispielhaften Prozesses 500 zur Implementierung von iMPC durch das erste autonome Fahrzeug 12. Der Prozess 500 beginnt in einem Block 505.
  • Im Block 505 bestimmt der Computer 20 des ersten Fahrzeugs 12, ob der Computer 20 eine Anforderung empfangen hat, interaktive modellprädiktive Steuerung zu implementieren. Die iMPC-Anforderung kann zum Beispiel vom Benutzer des ersten Fahrzeugs 12 eingegeben werden, die angibt, dass der Benutzer wünscht, dass das erste Fahrzeug 12 gemäß iMPC betrieben wird.
  • Die iMPC-Anforderung kann zum Beispiel erfolgen, während das erste Fahrzeug 12 bereits betrieben wird. Das Fahrzeug 12 kann zum Beispiel gerade gemäß einem anderen (Nicht-iMPC-)Steueralgorithmus gefahren oder autonom betrieben werden. Zum Beispiel kann der Benutzer, während er sich auf einer Schnellstraße befindet, während er Fahrer ist oder während eines autonomen Betriebs gemäß dem Nicht-iMPC-Steueralgorithmus zum Beispiel durch Betätigen einer Taste anfordern, dass das erste Fahrzeug 12 zum iMPC-Betrieb wechselt.
  • Es können andere Anforderungen für einen iMPC-Betrieb erkannt werden. Zum Beispiel kann der Computer 20 dafür programmiert werden, iMPC-Betrieb anzunehmen und ein Zündungsereignis als eine Anforderung zu erkennen, autonome Steuerung gemäß iMPC einzuleiten. Als ein anderes Beispiel kann der Computer 20 über die Kommunikationsschaltkreise 24 zum Beispiel von einem autorisierten Benutzer eine Anforderung empfangen, das erste Fahrzeug 12 autonom gemäß iMPC zu betreiben. Zum Beispiel kann ein Benutzer über WiFi-Kommunikation über das Netzwerk 14 das erste Fahrzeug 12 herbeibestellen, um den Benutzer an einem spezifizierten Ort abzuholen.
  • Falls der Computer 20 des ersten Fahrzeugs 12 eine Anforderung zum Betrieb gemäß iMPC erkennt, wird der Prozess 500 in einem Block 510 fortgesetzt. Andernfalls endet der Prozess 500.
  • In Block 510 empfängt der Computer 20 Ziele des ersten Fahrzeugs 12 oder ruft diese ab. Die Ziele können zum Beispiel als Eingabe vom Benutzer empfangen werden, die einen Zielort (Ziel) und eine Zielgeschwindigkeit für das erste Fahrzeug 12 angibt. In einigen Fällen, zum Beispiel wenn angefordert wird, dass das erste Fahrzeug 12 während des Fahrens auf einer Schnellstraße zu iMPC-Betrieb wechselt, kann der Computer 20 eine Vorgabemenge von Zielen bestimmen. Zum Beispiel kann der Computer 20 bestimmen, dass das Fahrzeug 12 mit einer Geschwindigkeit, die mit der Geschwindigkeit von umgebendem Verkehr kompatibel ist, auf der Schnellstraße weiterfahren soll. In anderen Fällen kann beim Übergang von einer ersten Art von autonomer Steuerung zu iMPC der Computer 20 die Fahrzeugziele von der ersten Art von autonomer Steuerung zur Verwendung mit iMPC abrufen. In weiteren Fällen kann der Computer 20 eine Anweisung empfangen, zum Beispiel „zur Schule von Sarah”, und der Computer 20 kann einen Ort für die Schule von Sarah und zum Beispiel ein Vorgabegeschwindigkeitsziel aus Speicherung abrufen, um mit vorgegebenen Geschwindigkeiten oder 5 Meilen/Stunde über vorgegebenen Geschwindigkeiten oder mit der Geschwindigkeit des Verkehrs usw. zu fahren. Wenn der Computer 20 Fahrtziele für das erste Fahrzeug 12 empfangen hat, wird der Prozess 500 in einem Block 515 fortgesetzt.
  • In Block 515 empfängt der Computer 20 Daten in Bezug auf die Umgebung, in der das erste Fahrzeug 12 betrieben wird. Zum Beispiel kann der Computer 20 auf der Basis der Ziele für das erste Fahrzeug 12 den Fahrpfad bestimmen. Der Computer 20 kann z. B. von Datenquellen 16 Informationen in Bezug auf die Umgebung auf dem Fahrpfad sammeln. Die Informationen können zum Beispiel Straßenbedingungen, Wetterbedingungen, Verkehrsbedingungen usw. auf dem Fahrpfad angeben.
  • Der Computer 20 kann ferner auf der Basis des Fahrpfads einen Vorschauhorizont bestimmen oder aktualisieren. Der Vorschauhorizont kann wie oben besprochen zum Beispiel das Segment des Fahrpfads sein, auf dem das erste Fahrzeug 12 für einen nächsten vorbestimmten Zeitraum fahren wird. Der nächste vorbestimmte Zeitraum kann zum Beispiel eine absolute Zeit wie 10 Sekunden sein oder als ein anderes Beispiel eine vorbestimmte Anzahl von Zeitschlitzen, zum Beispiel 100, wobei jeder Zeitschlitz einem Zyklus des Empfangens von Eingaben durch den Computer 20 und des Bereitstellens aktualisierter Anweisungen für die Steuerung 26 repräsentiert. Der vorbestimmte Zeitraum kann auf der Basis der Betriebsumgebung variieren. Zum Beispiel kann ein vorbestimmter Zeitraum in einer Stadt 1 Sekunde sein und ein vorbestimmter Zeitraum auf einer Schnellstraße 10 Sekunden.
  • Das erste Fahrzeug 12 kann z. B. von Sensoren 22, die in dem ersten Fahrzeug 12 enthalten oder mit diesen kommunikativ gekoppelt sind, Daten bezüglich eines den Vorschauhorizont umgebenden vorbestimmten Fahrbereichs empfangen. Der vorbestimmte Fahrbereich kann z. B. als entlang des Vorschauhorizonts innerhalb einer vorbestimmten Distanz des ersten Fahrzeugs 12 definiert sein. Der vorbestimmte Fahrbereich kann zum Beispiel auf der Basis der Umgebung und der Art des Betriebs variieren. Wenn das erste Fahrzeug 12 zum Beispiel in einer Stadt betrieben wird und langsam auf Städtestraßen fährt, kann der vorbestimmte Fahrbereich 50 Meter vor und hinter dem ersten Fahrzeug 12 und 20 Meter links und rechts des ersten Fahrzeugs 12 sein. Wenn das erste Fahrzeug 12 dagegen auf einer Schnellstraße betrieben wird, kann der vorbestimmte Fahrbereich 500 Meter vor und hinter dem ersten Fahrzeug 12 sein und kann sich 50 Meter über die Seiten der Schnellstraße nach links und rechts erstrecken. Die Daten können angeben, ob zweite Fahrzeuge 18 anwesend sind, Fußgänger anwesend sind, Haustiere oder andere freilaufende Tiere anwesend sind usw.
  • Falls ein oder mehrere zweite Fahrzeuge 18 in dem vorbestimmten Fahrbereich anwesend sind, kann der Computer 20 Kommunikation mit den zweiten Fahrzeugen 18 herstellen. Der Computer 20 kann von dem Computer 30 in jedem der zweiten Fahrzeuge 18 erfragen, ob jedes der zweiten Fahrzeuge 18 autonom betrieben wird oder durch einen Fahrer gesteuert wird.
  • Der Computer 20 kann ferner zum Beispiel von Sensoren 22 oder von Sensoren 32, die in den zweiten Fahrzeugen 18 enthalten oder kommunikativ mit ihnen gekoppelt sind, Informationen in Bezug auf das Fahrverhalten der zweiten Fahrzeuge 18 sammeln.
  • Auf das Sammeln von Daten in Bezug auf den vorbestimmten Fahrbereich durch den Computer 20 hin, wird der Prozess 500 in einem Block 520 fortgesetzt.
  • In Block 520 bestimmt der Computer 20, ob es Fußgänger, Fahrräder im Betrieb, Tiere in dem vorbestimmten Fahrbereich gibt.
  • Falls der Computer 20 bestimmt, dass sich keine unvorhersehbaren Objekte wie Fußgänger, Fahrräder in Betrieb und/oder Tiere in dem vorbestimmten Fahrbereich befinden, wird der Prozess 500 in einem Block 525 fortgesetzt. Falls der Computer 20 bestimmt, dass sich ein oder mehrere unvorhersehbare Objekte in dem vorbestimmten Fahrbereich befinden, endet der Prozess 500. Zum Beispiel kann das Fahrzeug 12 autonomen Betrieb auf der Basis eines Nicht-iMPC-Steueralgorithmus wiederaufnehmen oder fortsetzen oder kann manuelle Steuerung fortsetzen oder zu dieser zurückkehren.
  • In Block 525 bestimmt der Computer 20, ob sich zweite Fahrzeuge 18 in dem vorbestimmten Fahrbereich für das erste Fahrzeug 12 befinden. Falls der Computer 20 Fahrzeuge 18 in dem vorbestimmten Fahrbereich identifiziert, wird der Prozess 500 in einem Block 530 fortgesetzt. Falls der Computer 20 bestimmt, dass sich keine Fahrzeuge 18 in dem vorbestimmten Fahrbereich befinden, wird der Prozess 500 in einem Block 545 fortgesetzt. Falls der Computer 20 bestimmt, dass sich zweite Fahrzeuge 18 im Fahrbereich befinden, wird der Prozess 500 in einem Block 530 fortgesetzt.
  • In Block 530 bestimmt der Computer 20 auf der Basis der in Block 515 gesammelten Daten, ob eines oder mehrere der zweiten Fahrzeuge 18 in dem vorbestimmten Fahrbereich nichtautonom betrieben werden. Falls eines oder mehrere der zweiten Fahrzeuge 18 nichtautonom betrieben werden, wird der Prozess 500 in einem Block 535 fortgesetzt. Falls alle zweiten Fahrzeuge 12 autonom betrieben werden, wird der Prozess 500 in einem Block 540 fortgesetzt.
  • In Block 535 bestimmt der Computer 20 für jedes des einen oder der mehreren zweiten Fahrzeuge 18, die nichtautonom betrieben werden, ob das zweite Fahrzeug 18 vorhersehbar betrieben wird, d. h. in einem vorbestimmten Bereich von Verhaltensweisen.
  • Der Computer 20 kann anfänglich für die zweiten Fahrzeuge 18 einen vorbestimmten Bereich von Verhaltensweisen identifizieren, die ausreichend vorhersehbar sind. Der vorbestimmte Bereich von Verhaltensweisen kann z. B. von der Fahrumgebung abhängen. Zum Beispiel kann beim Fahren auf einer Schnellstraße mit begrenztem Zugang der vorbestimmte Bereich von Verhaltensweisen den Betrieb in einem Bereich von Geschwindigkeiten mit Bezug auf die Verkehrsbedingung oder die vordefinierte Geschwindigkeitsgrenze, Halten eines Mindestabstands von dem ersten Fahrzeug 12 und anderen zweiten Fahrzeugen 18, Bleiben innerhalb eines Mindestabstands von einer Mitte der Spur, außer wenn keine Spuren gewechselt werden, Reagieren auf Fahrbedingungsänderungen in einem vorbestimmten Bereich von Ansprechverhalten (z. B. Reaktion in weniger als einem vorbestimmten Zeitraum) und einen vorbestimmten Bereich des Komforts (z. B. seitliche und Längsbeschleunigung, Verlangsamung in vorbestimmten Bereichen), Betrieb des Fahrzeugs in Einhaltung der Sicherheitsregeln usw. umfassen. Beim Fahren in einer Vorstadtumgebung kann der vorbestimmte Bereich von Verhaltensweisen Fahren mit oder unter einer Maximalgeschwindigkeit, Beschleunigung unter einer Maximalbeschleunigung, Anhalten an Stoppschildern, Ratenänderung der Fahrzeugbewegung liegen in einem vorbestimmten Bereich usw. umfassen. Eine notwendige Bedingung für das erste Fahrzeug 12 zur Implementierung von iMPC ist, dass alle zweiten Fahrzeuge 18 in dem vorbestimmten Fahrbereich innerhalb des vorbestimmten Bereichs von Verhaltensweisen betrieben werden. Falls der Computer 20 bestimmt, dass jedes der nichtautonomen zweiten Fahrzeuge 18 innerhalb des vorbestimmten Bereichs von Verhaltensweisen betrieben wird, wird der Prozess 500 in einem Block 540 fortgesetzt.
  • Falls der Computer 20 bestimmt, dass ein oder mehrere der zweiten Fahrzeuge 18 außerhalb des vorbestimmten Bereichs betrieben werden, endet der Prozess 500. Der Computer 20 des Fahrzeugs 12 kann autonomen Betrieb auf der Basis eines Nicht-iMPC-Steueralgorithmus wiederaufnehmen oder fortsetzen, oder kann weiter oder wieder durch einen Fahrer (manuelle Steuerung) gesteuert werden.
  • In Block 540 sammelt der Computer 20 Modelle, Regeln, Ziele (Kostenfunktionen), Steuermethodologien, Daten usw. eines oder mehrerer zweiter Fahrzeuge 18, die autonom betrieben werden. Der Prozess 500 wird in einem Block 545 fortgesetzt.
  • In Block 545 sammelt der Computer 20 Betriebszustandsdaten für das erste Fahrzeug 12. Zum Beispiel kann der Computer 20 Daten in Bezug auf Fahrzeuggeschwindigkeit, Fahrzeugfahrtrichtung, Fahrzeugbeschleunigung und Fahrzeugposition sammeln. Ferner kann der Computer 20 Daten in Bezug auf den Betriebszustand von Komponenten des Fahrzeugs 12 sammeln, wie etwa Motordrehzahl, Getriebeverhältnis, Bremsflüssigkeitsdruck, Kühlmitteltemperatur usw. Die Daten können von kommunikativ mit dem Computer 20 gekoppelten Sensoren 22 gesammelt werden und können ferner von Datenquellen 16 gesammelt werden. Wenn der Computer 20 die Betriebszustandsdaten für das erste Fahrzeug 12 gesammelt hat, wird der Prozess 500 in einem Block 550 fortgesetzt.
  • In Block 550 leitet der Computer 20 iMPC für das erste Fahrzeug 12 ein oder setzt sie fort.
  • Falls sich keine Fußgänger oder zweite Fahrzeuge 18 in dem vorbestimmten Fahrbereich befinden, kann der Computer 20 iMPC implementieren, um Betriebsvariablen für das erste Fahrzeug 12 auf der Basis der in Block 510 empfangenen Ziele für das erste Fahrzeug 12 und in Block 515 empfangenen Daten in Bezug auf die Umgebung und in Block 545 gesammelten Daten in Bezug auf Betriebszustand des ersten Fahrzeugs zu erzeugen.
  • Falls sich zweite Fahrzeuge 18 in dem vorbestimmten Bereich befinden, berücksichtigt der Computer 20 auch den Betrieb der zweiten Fahrzeuge 18. Falls eines oder mehrere der zweiten Fahrzeuge 18 autonom betrieben werden, bestimmt der Computer 20 auf der Basis der von dem zweiten Fahrzeug 18 empfangenen Modelle, Regeln, Ziele usw. das vorhergesagte zukünftige Verhalten des zweiten Fahrzeugs 18. Für zweite Fahrzeuge 18, die nicht autonom betrieben werden, nimmt der Computer 20 an, dass jedes der zweiten Fahrzeuge 18, das nicht autonom betrieben wird, weiterhin innerhalb des vorbestimmten Bereichs von Verhaltensweisen betrieben wird, der für das bestimmte zweite Fahrzeug 18 identifiziert wurde. In diesem Fall bezieht der Computer 20 die in den Blöcken 535 und 540 gesammelten Daten des zweiten Fahrzeugs 18 beim Erzeugen der Betriebsvariablen des ersten Fahrzeugs 12 mit ein.
  • Auf das Erzeugen der Betriebsvariablen des ersten Fahrzeugs 12 hin kann der Computer 20 Anweisungen, darunter die Betriebsvariablen, zu der einen oder den mehreren Steuerungen 26 in dem ersten Fahrzeug 12 senden. Die Steuerungen 26 können auf der Basis der Betriebsvariablen Aktoren dergestalt steuern, dass z. B. Antrieb, ein Lenkwinkel, ein Bremsen, eine Aufhängung usw. des ersten Fahrzeugs 12 gesteuert werden.
  • Der Computer 20 implementiert wie oben beschrieben während einer ersten Iteration die Anweisungen für einen ersten Zeitschlitz des vorbestimmten Zeitraums. Für folgende Iterationen implementiert der Computer 20 aktualisierte Anweisungen für den Zeitschlitz, der dem vorherigen Zeitschlitz unmittelbar folgt, für den Anweisungen implementiert wurden. Der Prozess wird in einem Block 555 fortgesetzt.
  • In Block 555 bestimmt der Computer 20, ob die Fahrt vorüber ist. Zum Beispiel kann der Computer 20 Daten empfangen, die angeben, dass das Fahrzeug 20 am Ziel angekommen ist. Als ein anderes Beispiel kann der Computer 20 detektieren, dass das erste Fahrzeug 12 geparkt und ausgeschaltet wurde. Falls der Computer 20 bestimmt, dass die Fahrt vorüber ist, endet der Prozess 500.
  • SCHLUSSBEMERKUNGEN
  • Datenverarbeitungsvorrichtungen wie die hier besprochenen, die in verschiedenen Echtzeit- oder eingebetteten Umgebungen (RT-Linux, VxWorks, RTX, TI-RTOS, usw.) und verschiedenen Kommunikationsprotokollen (CAN, FelxRay, LCM UDP, usw.) betrieben werden können, umfassen jeweils allgemein Anweisungen, die durch eine oder mehrere Datenverarbeitungsvorrichtungen wie die oben identifizierten ausführbar sind, und zum Ausführen von Blöcken oder Schritten von Prozessen, die oben beschrieben werden. Zum Beispiel können oben besprochene Prozessblöcke als computerausführbare Anweisungen realisiert werden.
  • Computerausführbare Anweisungen können aus Computerprogrammen kompiliert oder interpretiert werden, die unter Verwendung vielfältiger Programmiersprachen und/oder – technologien erstellt werden, darunter, aber ohne Beschränkung und entweder alleine oder in Kombination, JavaTM, C, C++, Visual Basic, Java Script, Python, Perl, HTML usw. Im Allgemeinen empfängt ein Prozessor (z. B. ein Mikroprozessor) Anweisungen z. B. aus einem Speicher, einem computerlesbaren Medium usw. und führt diese Anweisungen aus, um dadurch einen oder mehrere Prozesse, einschließlich eines oder mehrerer der hier beschriebenen Prozesse, auszuführen. Solche Anweisungen und anderen Daten können unter Verwendung vielfältiger computerlesbarer Medien gespeichert und übertragen werden. Eine Datei in einer Datenverarbeitungsvorrichtung ist im Allgemeinen eine Ansammlung von auf einem computerlesbaren Medium, wie etwa einem Speicherungsmedium, einem Direktzugriffsspeicher usw., gespeicherten Daten.
  • Ein computerlesbares Medium weist ein beliebiges Medium, das an einer Bereitstellung von Daten (zum Beispiel Anweisungen) beteiligt ist, die von einem Computer gelesen werden können, auf. Ein derartiges Medium kann viele Formen annehmen, darunter unter anderem, aber ohne Beschränkung, nichtflüchtige Medien, flüchtige Medien usw.. Nichtflüchtige Medien können zum Beispiel optische oder magnetische Datenträger und andere persistente Speicher aufweisen. Flüchtige Medien können zum Beispiel dynamische Direktzugriffsspeicher (DRAM), die in der Regel einen Hauptspeicher bilden, aufweisen. Übliche Formen von computerlesbaren Medien beinhalten zum Beispiel eine Floppy-Disk, eine Diskette, eine Festplatte, ein Magnetband, ein beliebiges anderes magnetisches Medium, eine CD-ROM, eine DVD, ein beliebiges anderes optisches Medium, Lochkarten, Papierband, ein beliebiges anderes physisches Medium mit Lochmustern, einen RAM, einen PROM, einen EPROM, einen Flash-EEPROM, einen beliebigen anderen Speicherchip oder eine beliebige andere Speicherkassette oder ein beliebiges anderes Medium, woraus ein Computer lesen kann.
  • Alle in den Ansprüchen verwendeten Ausdrücke sollen ihre einfachen und gewöhnlichen Bedeutungen erhalten, sowie sie von Fachleuten verstanden werden, wenn nicht hier ausdrücklich Gegenteiliges erwähnt wird. Insbesondere sollte die Verwendung von Singularartikeln wie „ein”, „das”, „besagtes” usw. so aufgefasst werden, dass sie eines oder mehrere der angegebenen Elemente anführt, wenn nicht ein Anspruch eine explizite gegenteilige Beschränkung angibt.
  • Der Ausdruck „beispielhaft” wird hier im Sinne von ein Beispiel bedeutend verwendet, z. B. sollte eine Erwähnung eines „beispielhaften Widget” als sich einfach auf ein Beispiel für ein Widget beziehend gelesen werden.
  • Das Adverb „ungefähr”, das einen Wert oder ein Ergebnis modifiziert, bedeutet, dass eine Form, eine Struktur, eine Messung, ein Wert, eine Bestimmung, eine Berechnung usw. aufgrund von Unzulänglichkeiten in Materialien, Maschinenbearbeitung, Herstellung, Sensormessungen, Berechnungen, Verarbeitungszeit, Kommunikationszeit usw. von einer genauen beschriebenen Geometrie, einer genauen beschriebenen Distanz, einer genauen beschriebenen Messung, einem genauen beschriebenen Wert, einer genauen beschriebenen Bestimmung, einer genauen beschriebenen Berechnung usw. abweichen kann.
  • In den Zeichnungen geben dieselben Bezugszahlen dieselben Elemente an. Ferner könnten einige oder alle dieser Elemente geändert werden. In Bezug auf die hier beschriebenen Medien, Prozesse, Systeme, Verfahren usw. versteht sich, dass, obwohl die Schritte solcher Prozesse usw. als gemäß einer bestimmten geordneten Sequenz auftretend beschrieben wurden, solche Prozesse mit in einer anderen als der hier beschriebenen Reihenfolge ausgeführten beschriebenen Schritten ausgeübt werden könnten. Ferner versteht sich, dass bestimmte Schritte gleichzeitig ausgeführt werden könnten, dass andere Schritte hinzugefügt werden könnten oder dass bestimmte hier beschriebene Schritte weggelassen werden könnten. Anders ausgedrückt, werden die Beschreibungen von Prozessen hier zum Zwecke der Veranschaulichung bestimmter Ausführungsformen angegeben und sollten auf keinerlei Weise als Beschränkung der beanspruchten Erfindung aufgefasst werden.

Claims (22)

  1. System, das eine Datenverarbeitungsvorrichtung mit einem Prozessor und einem Speicher umfasst, wobei der Speicher Anweisungen speichert, die durch den Prozessor ausführbar sind, so dass der Prozessor programmiert ist zum Empfangen einer Menge von Zielen für ein erstes Fahrzeug, das in einem autonomen Modus betrieben wird; Identifizieren eines Fahrbereichs für das erste Fahrzeug für einen nächsten vorbestimmten Zeitraum auf der Basis der Menge von Zielen, wobei der vorbestimmte Zeitraum mehrere Zeitschlitze umfasst; Empfangen von Daten, die einen ersten Grad der Vorhersehbarkeit von Fahrbedingungen des identifizierten Fahrbereichs angeben; Bestimmen auf der Basis der empfangenen Daten, dass der erste Grad der Vorhersehbarkeit von Fahrbedingungen ausreichend ist, um das erste Fahrzeug gemäß modellprädiktiver Steuerung zu steuern; Steuern des ersten Fahrzeugs gemäß interaktiver modellprädiktiver Steuerung, umfassend: Bestimmen einer Steuerlösung für den vorbestimmten Zeitraum, wobei die Steuerlösung Anweisungen zum Steuern jedes der Aktoren in Bezug auf das Lenken, Antreiben und Bremsen des ersten Fahrzeugs umfasst, dergestalt, dass eine mit der Menge von Zielen assoziierte Kostenfunktion minimiert wird; Implementieren der Steuerlösung für einen ersten Zeitschlitz an einem Anfang des vorbestimmten Zeitraums; Aktualisieren des vorbestimmten Zeitraums, um den ersten Zeitschlitz zu entfernen und einen ersten zusätzlichen Zeitschlitz an einem Ende des vorbestimmten Zeitraums vorzusehen; Bestimmen einer aktualisierten Steuerlösung für den aktualisierten vorbestimmten Zeitraum, wobei die aktualisierte Steuerlösung Anweisungen zum Steuern jedes der Aktoren in Bezug auf Lenken, Antreiben und Bremsen des ersten Fahrzeugs umfasst, dergestalt, dass die mit der Menge von Zielen assoziierte Kostenfunktion minimiert wird; und Implementieren der aktualisierten Steuerlösung für einen zweiten Zeitschlitz unmittelbar nach dem ersten Zeitschlitz.
  2. System nach Anspruch 1, wobei das Modell interaktiver modellprädiktiver Steuerung einen aktuellen und einen zukünftigen Zustand des ersten Fahrzeugs und Betriebseinschränkungen des ersten Fahrzeugs berücksichtigt.
  3. System nach Anspruch 1, wobei das Bestimmen der Steuerlösung das Optimieren von Kraftstoffverbrauch und/oder Fahrbarkeit und/oder Leistungsfähigkeit umfasst.
  4. System nach Anspruch 1, wobei die Daten, die den ersten Grad der Vorhersehbarkeit von Fahrbedingungen angeben, Wetterdaten und/oder Straßenbedingungsdaten umfassen.
  5. System nach Anspruch 1, wobei die Daten, die den ersten Grad der Vorhersehbarkeit von Fahrbedingungen angeben, Daten umfassen, die ein Verhalten von Objekten in dem vorbestimmten Fahrbereich angeben, und der Prozessor ferner programmiert ist zum Bestimmen, bevor die Steuerlösung bestimmt wird, dass ein Grad der Vorhersehbarkeit jedes der Objekte in dem vorbestimmten Fahrbereich in einem vorbestimmten Bereich liegt.
  6. System nach Anspruch 5, wobei eines oder mehrere der Objekte ein zweites Fahrzeug ist/sind und das Bestimmen, dass der Grad der Vorhersehbarkeit jedes der Objekte in dem Fahrbereich in einem vorbestimmten Bereich liegt, umfasst zu bestimmen, dass jedes der zweiten Fahrzeuge autonom betrieben wird.
  7. System nach Anspruch 6, wobei der Prozessor ferner programmiert ist zum Empfangen von Daten von jedem der autonom betriebenen zweiten Fahrzeuge, die ein zukünftiges Fahrverhalten des jeweiligen zweiten Fahrzeugs angeben; und wobei die Bestimmung der Steuerlösung die zukünftiges Fahrverhalten des jeweiligen zweiten Fahrzeugs angebenden Daten berücksichtigt.
  8. System nach Anspruch 6, wobei der Prozessor ferner programmiert ist zum Empfangen, von mindestens einem der autonom betriebenen zweiten Fahrzeuge, einer Menge von Zielen für das zweite Fahrzeug, und wobei das Bestimmen der Steuerlösung für das erste Fahrzeug die Menge von Zielen des zweiten Fahrzeugs berücksichtigt.
  9. System nach Anspruch 8, wobei das Berücksichtigen der Menge von Zielen des zweiten Fahrzeugs das Bestimmen eines Ausgleichs der Ziele des ersten Fahrzeugs und der Ziele des zweiten Fahrzeugs umfasst.
  10. System nach Anspruch 5, wobei das Bestimmen, dass der Grad der Vorhersehbarkeit jedes der Objekte in dem vorbestimmten Fahrbereich in einem vorbestimmten Bereich liegt, umfasst zu bestimmen, dass keines der Objekte in dem vorbestimmten Fahrbereich ein Fahrzeug ist.
  11. System nach Anspruch 1, wobei der Prozessor ferner programmiert ist zum Empfangen von zusätzlichen Daten nach dem Bestimmen der ersten Steuerlösung, die einen zweiten Grad der Vorhersehbarkeit der Fahrbedingungen angeben; Bestimmen, dass der zweite Grad der Vorhersehbarkeit von Fahrbedingungen nicht ausreicht, um das erste Fahrzeug gemäß interaktiver modellprädiktiver Steuerung zu steuern; und Steuern des ersten Fahrzeugs gemäß einem alternativen Steueralgorithmus.
  12. System nach Anspruch 6, wobei mindestens ein zweites Fahrzeug eine zweite Datenverarbeitungsvorrichtung mit einem zweiten Prozessor und einem zweiten Speicher umfasst, wobei der zweite Speicher Anweisungen speichert, die durch den zweiten Prozessor ausführbar sind, so dass der zweite Prozessor programmiert ist zum Empfangen einer Menge von Zielen für das zweite Fahrzeug; Empfangen von Daten von dem ersten Fahrzeug, die die Menge von Zielen für das erste Fahrzeug angeben; und Steuern des zweiten Fahrzeugs gemäß interaktiver modellprädiktiver Steuerung, umfassend: Bestimmen einer Steuerlösung für das zweite Fahrzeug für den vorbestimmten Zeitraum, wobei die Steuerlösung Anweisungen zum Steuern jedes der Aktoren in Bezug auf das Lenken, Antreiben und Bremsen des zweiten Fahrzeugs umfasst, dergestalt, dass eine mit der Menge von Zielen für das erste Fahrzeug und der Menge von Zielen für das zweite Fahrzeug assoziierte Kostenfunktion minimiert wird; Implementieren der zweiten Steuerlösung für das zweite Fahrzeug für den ersten Zeitschlitz.
  13. Verfahren: Empfangen einer Menge von Zielen für ein in einem autonomen Modus betriebenes erstes Fahrzeug durch eine Datenverarbeitungsvorrichtung; Identifizieren eines Fahrbereichs für das erste Fahrzeug für einen nächsten vorbestimmten Zeitraum auf der Basis der Menge von Zielen, wobei der vorbestimmte Zeitraum mehrere Zeitschlitze umfasst; Empfangen von Daten, die einen ersten Grad der Vorhersehbarkeit von Fahrbedingungen des identifizierten Fahrbereichs angeben; Bestimmen auf der Basis der empfangenen Daten, dass der erste Grad der Vorhersehbarkeit von Fahrbedingungen ausreicht, um das erste Fahrzeug gemäß modellprädiktiver Steuerung zu steuern; und Steuern des ersten Fahrzeugs gemäß interaktiver modellprädiktiver Steuerung, umfassend: Bestimmen einer Steuerlösung für den vorbestimmten Zeitraum, wobei die Steuerlösung Anweisungen zum Steuern jedes der Aktoren in Bezug auf das Lenken, Antreiben und Bremsen des ersten Fahrzeugs umfasst, dergestalt, dass eine mit der Menge von Zielen assoziierte Kostenfunktion minimiert wird; Implementieren der Steuerlösung für einen ersten Zeitschlitz an einem Anfang des vorbestimmten Zeitraums; Aktualisieren des vorbestimmten Zeitraums, um den ersten Zeitschlitz zu entfernen und einen ersten zusätzlichen Zeitschlitz an einem Ende des vorbestimmten Zeitraums vorzusehen; Bestimmen einer aktualisierten Steuerlösung für den aktualisierten vorbestimmten Zeitraum, wobei die aktualisierte Steuerlösung Anweisungen zum Steuern jedes der Aktoren in Bezug auf das Lenken, Antreiben und Bremsen des ersten Fahrzeugs umfasst, dergestalt, dass die mit der Menge von Zielen assoziierte Kostenfunktion minimiert wird; und Implementieren der aktualisierten Steuerlösung für einen zweiten Zeitschlitz unmittelbar nach dem ersten Zeitschlitz.
  14. Verfahren nach Anspruch 13, wobei die Daten, die den ersten Grad der Vorhersehbarkeit von Fahrbedingungen angeben, Wetterdaten und/oder Straßenbedingungsdaten umfassen.
  15. Verfahren nach Anspruch 13, wobei die Daten, die den ersten Grad der Vorhersehbarkeit von Fahrbedingungen angeben, Daten umfassen, die ein Verhalten von Objekten in dem vorbestimmten Fahrbereich angeben, wobei das Verfahren ferner umfasst: Bestimmen, bevor die Steuerlösung bestimmt wird, dass ein Grad der Vorhersehbarkeit jedes der Objekte in dem vorbestimmten Fahrbereich in einem vorbestimmten Bereich liegt.
  16. Verfahren nach Anspruch 15, wobei eines oder mehrere der Objekte ein zweites Fahrzeug ist/sind und das Bestimmen, dass der Grad der Vorhersehbarkeit jedes der Objekte in dem Fahrbereich in einem vorbestimmten Bereich liegt, umfasst zu bestimmen, dass jedes der zweiten Fahrzeuge autonom betrieben wird.
  17. Verfahren nach Anspruch 16, ferner umfassend: Empfangen von Daten von jedem der autonom betriebenen zweiten Fahrzeuge, die ein zukünftiges Fahrverhalten des jeweiligen zweiten Fahrzeugs angeben; und wobei die Bestimmung der Steuerlösung die zukünftiges Fahrverhalten des jeweiligen zweiten Fahrzeugs angebenden Daten berücksichtigt.
  18. Verfahren nach Anspruch 16, ferner umfassend: Empfangen, von mindestens einem der autonom betriebenen zweiten Fahrzeuge, einer Menge von Zielen für das zweite Fahrzeug, und wobei das Bestimmen der Steuerlösung für das erste Fahrzeug die Menge von Zielen des zweiten Fahrzeugs berücksichtigt.
  19. Verfahren nach Anspruch 8, wobei das Berücksichtigen der Menge von Zielen des zweiten Fahrzeugs das Bestimmen eines Ausgleichs der Ziele des ersten Fahrzeugs und der Ziele des zweiten Fahrzeugs umfasst.
  20. Verfahren nach Anspruch 15, wobei das Bestimmen, dass der Grad der Vorhersehbarkeit jedes der Objekte in dem vorbestimmten Fahrbereich in einem vorbestimmten Bereich liegt, umfasst zu bestimmen, dass keines der Objekte in dem vorbestimmten Fahrbereich ein Fahrzeug ist.
  21. Verfahren nach Anspruch 13, wobei der Prozessor ferner programmiert ist zum Empfangen von zusätzlichen Daten nach dem Bestimmen der ersten Steuerlösung, die einen zweiten Grad der Vorhersehbarkeit der Fahrbedingungen angeben; Bestimmen, dass der zweite Grad der Vorhersehbarkeit von Fahrbedingungen nicht ausreicht, um das erste Fahrzeug gemäß interaktiver modellprädiktiver Steuerung zu steuern; und Steuern des ersten Fahrzeugs gemäß einem alternativen Steueralgorithmus.
  22. Verfahren nach Anspruch 16, ferner umfassend: Empfangen einer Menge von Zielen für ein zweites Fahrzeug durch eine zweite Datenverarbeitungsvorrichtung; Empfangen von Daten von dem ersten Fahrzeug durch die zweite Datenverarbeitungsvorrichtung, die die Menge von Zielen für das erste Fahrzeug angeben; und Steuern des zweiten Fahrzeugs durch die zweite Datenverarbeitungsvorrichtung gemäß interaktiver modellprädiktiver Steuerung, umfassend: Bestimmen einer Steuerlösung für das zweite Fahrzeug für den vorbestimmten Zeitraum, wobei die Steuerlösung Anweisungen zum Steuern jedes der Aktoren in Bezug auf das Lenken, Antreiben und Bremsen des zweiten Fahrzeugs umfasst, dergestalt, dass eine mit der Menge von Zielen für das erste Fahrzeug und der Menge von Zielen für das zweite Fahrzeug assoziierte Kostenfunktion minimiert wird; Implementieren der zweiten Steuerlösung für das zweite Fahrzeug für den ersten Zeitschlitz.
DE102017102605.3A 2016-03-01 2017-02-09 Betrieb autonomer Fahrzeuge auf der Basis interaktiver modellprädiktiver Steuerung Pending DE102017102605A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/057,233 US10239529B2 (en) 2016-03-01 2016-03-01 Autonomous vehicle operation based on interactive model predictive control
US15/057,233 2016-03-01

Publications (1)

Publication Number Publication Date
DE102017102605A1 true DE102017102605A1 (de) 2017-09-07

Family

ID=58544282

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017102605.3A Pending DE102017102605A1 (de) 2016-03-01 2017-02-09 Betrieb autonomer Fahrzeuge auf der Basis interaktiver modellprädiktiver Steuerung

Country Status (6)

Country Link
US (1) US10239529B2 (de)
CN (1) CN107139931B (de)
DE (1) DE102017102605A1 (de)
GB (1) GB2548977A (de)
MX (1) MX2017002722A (de)
RU (1) RU2017106092A (de)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108973998A (zh) * 2018-07-11 2018-12-11 清华大学 一种基于mpc的异质车辆队列分布式节能控制方法
DE102019215680B3 (de) * 2019-10-11 2021-01-07 Audi Ag Verfahren zum Vorhersagen eines Verhaltens eines Zielfahrzeugs
DE102021202301A1 (de) 2021-03-10 2022-09-15 Thyssenkrupp Ag System

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015068193A1 (ja) * 2013-11-05 2015-05-14 株式会社日立製作所 自律移動システム
DE102015225157A1 (de) * 2015-12-14 2017-06-14 Robert Bosch Gmbh Verfahren zum Übertragen, Empfangen und Verarbeiten von Datenwerten, sowie eine Übertragungs- und Empfangsvorrichtung
US10124828B2 (en) * 2016-06-15 2018-11-13 GM Global Technology Operations LLC Autonomous vehicle steering control methods and systems
US10133273B2 (en) * 2016-09-20 2018-11-20 2236008 Ontario Inc. Location specific assistance for autonomous vehicle control system
US11584372B2 (en) * 2016-12-28 2023-02-21 Baidu Usa Llc Method to dynamically adjusting speed control rates of autonomous vehicles
US10585440B1 (en) 2017-01-23 2020-03-10 Clearpath Robotics Inc. Systems and methods for using human-operated material-transport vehicles with fleet-management systems
US11097736B2 (en) * 2017-02-28 2021-08-24 Clearpath Robotics Inc. Systems and methods for traction detection and control in a self-driving vehicle
US10457289B2 (en) * 2017-03-02 2019-10-29 Toyota Motor Engineering & Manufacturing North America, Inc. Acceleration learning/prediction from learned deceleration area
JP6930152B2 (ja) * 2017-03-14 2021-09-01 トヨタ自動車株式会社 自動運転システム
US10168705B2 (en) * 2017-04-06 2019-01-01 Uber Technologies, Inc. Automatic tuning of autonomous vehicle cost functions based on human driving data
US10452073B2 (en) * 2017-05-19 2019-10-22 Toyota Research Institute, Inc. Vehicle control systems and methods of controlling vehicles using behavior profiles
WO2018218506A1 (en) * 2017-05-31 2018-12-06 Bayerische Motoren Werke Aktiengesellschaft Method and apparatus for constructing an environment model
US10816973B2 (en) * 2017-06-02 2020-10-27 Baidu Usa Llc Utilizing rule-based and model-based decision systems for autonomous driving control
FR3068944B1 (fr) * 2017-07-12 2019-07-19 Psa Automobiles Sa Procede et systeme d’assistance a la conduite d’un vehicule autonome sur une voie de circulation ayant des zones de passage oblige
KR101992416B1 (ko) * 2017-09-15 2019-06-24 엘지전자 주식회사 차량에 구비된 차량 제어 장치 및 차량의 제어방법
US10739774B2 (en) * 2017-10-06 2020-08-11 Honda Motor Co., Ltd. Keyframe based autonomous vehicle operation
DE102017125729A1 (de) 2017-11-03 2019-05-23 Audi Ag Fahrerassistenzsystem für ein zumindest teilweise automatisch fahrendes Kraftfahrzeug, Kraftfahrzeug und Verfahren zum Regeln einer Fahrdynamik
US10719705B2 (en) * 2018-01-03 2020-07-21 Qualcomm Incorporated Adjustable object avoidance proximity threshold based on predictability of the environment
US10705224B2 (en) 2018-01-29 2020-07-07 Aerovironment Methods and systems for utilizing dual global positioning system (GPS) antennas in vertical take-off and landing (VTOL) aerial vehicles
WO2019150454A1 (ja) * 2018-01-31 2019-08-08 住友電気工業株式会社 車線変更の支援装置、決定方法、およびコンピュータプログラム
US10619586B2 (en) * 2018-03-27 2020-04-14 GM Global Technology Operations LLC Consolidation of constraints in model predictive control
US10860023B2 (en) * 2018-06-25 2020-12-08 Mitsubishi Electric Research Laboratories, Inc. Systems and methods for safe decision making of autonomous vehicles
JP2020087206A (ja) * 2018-11-29 2020-06-04 株式会社日立製作所 自律体システム及びその制御方法
US11390277B2 (en) 2018-11-30 2022-07-19 Clearpath Robotics Inc. Systems and methods for self-driving vehicle collision prevention
US11325606B2 (en) * 2019-01-02 2022-05-10 Qualcomm Incorporated Methods and systems for establishing cooperative driving engagements with vehicles having varying levels of autonomy
CN111497800B (zh) * 2019-01-31 2022-01-21 北京骑胜科技有限公司 车辆制动方法、装置、电子设备和存储介质
RU2767833C1 (ru) * 2019-03-28 2022-03-22 Ниссан Мотор Ко., Лтд. Способ прогнозирования поведения, аппаратура прогнозирования поведения и аппаратура управления транспортным средством
DE102019205405A1 (de) * 2019-04-15 2020-10-15 Zf Friedrichshafen Ag Ermittlung einer Eingangsgröße eines Fahrzeug-Aktuators mittels modellgestützter prädiktiver Regelung
CN110365535B (zh) * 2019-07-15 2022-03-04 创新先进技术有限公司 一种基于安全多方计算的模型上线方法及装置
JP7431525B2 (ja) * 2019-07-31 2024-02-15 株式会社Subaru 車両システムおよび車両
CN110450168B (zh) * 2019-08-28 2022-08-12 佛山市兴颂机器人科技有限公司 一种机器人及其自主导航方法、装置、存储介质
US11649147B2 (en) 2019-09-20 2023-05-16 Clearpath Robotics Inc. Autonomous material transport vehicles, and systems and methods of operating thereof
CN111413979B (zh) * 2020-04-07 2021-02-19 吉林大学 一种基于快速模型预测的汽车轨迹跟踪控制方法
WO2021211322A1 (en) * 2020-04-17 2021-10-21 Zoox, Inc. Teleoperations for collaborative vehicle guidance
US11584389B2 (en) 2020-04-17 2023-02-21 Zoox, Inc. Teleoperations for collaborative vehicle guidance
CN113734182B (zh) * 2020-05-29 2023-11-14 比亚迪股份有限公司 一种车辆自适应控制方法及其装置
CN111932924B (zh) * 2020-08-11 2021-06-15 联通智网科技有限公司 一种环境模型的确定方法、装置、计算机设备和存储介质
US11827217B2 (en) * 2020-08-28 2023-11-28 Ford Global Technologies, Llc Vehicle detection and response
US20220245385A1 (en) * 2021-01-29 2022-08-04 Toyota Motor Engineering & Manufacturing North America, Inc. Systems and methods for determining operating criteria for performing vehicular tasks
WO2023119290A1 (en) * 2021-12-23 2023-06-29 Elta Systems Ltd. Automatic speed control in a vehicle
EP4223616A1 (de) * 2022-02-02 2023-08-09 Aptiv Technologies Limited Verfahren und systeme zur seitlichen steuerung eines fahrzeugs

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7813870B2 (en) * 2006-03-03 2010-10-12 Inrix, Inc. Dynamic time series prediction of future traffic conditions
US7548805B2 (en) * 2006-03-27 2009-06-16 Fujitsu Ten Limited Vehicle control apparatus, vehicle control method and vehicle slip suppressing apparatus
JP4371137B2 (ja) * 2006-11-10 2009-11-25 トヨタ自動車株式会社 自動運転制御装置
US8489317B2 (en) * 2008-08-29 2013-07-16 Toyota Motor Engineering & Manufacturing North America, Inc. System and method for stochastically predicting the future states of a vehicle
US8190330B2 (en) 2009-03-06 2012-05-29 GM Global Technology Operations LLC Model based predictive control for automated lane centering/changing control systems
US8457827B1 (en) * 2012-03-15 2013-06-04 Google Inc. Modifying behavior of autonomous vehicle based on predicted behavior of other vehicles
US9499172B2 (en) * 2012-09-20 2016-11-22 Google Inc. Detecting road weather conditions
US9797318B2 (en) 2013-08-02 2017-10-24 GM Global Technology Operations LLC Calibration systems and methods for model predictive controllers
CN103085816B (zh) * 2013-01-30 2015-10-28 同济大学 一种用于无人驾驶车辆的轨迹跟踪控制方法及控制装置
WO2014145018A2 (en) 2013-03-15 2014-09-18 Levant Power Corporation Active vehicle suspension improvements
GB201305067D0 (en) 2013-03-19 2013-05-01 Massive Analytic Ltd Apparatus for controlling a land vehicle which is self-driving or partially self-driving
US9254846B2 (en) * 2013-05-03 2016-02-09 Google Inc. Predictive reasoning for controlling speed of a vehicle
US9421979B2 (en) * 2013-10-17 2016-08-23 Ford Global Technologies, Llc Road characteristic prediction
US9278713B2 (en) 2013-12-11 2016-03-08 GM Global Technology Operations LLC Collision avoidance control integrated with EPS controller
US9079587B1 (en) * 2014-02-14 2015-07-14 Ford Global Technologies, Llc Autonomous control in a dense vehicle environment
CN103921786B (zh) * 2014-04-11 2016-08-17 北京工业大学 一种电动车辆再生制动过程的非线性模型预测控制方法
DE102014215259B4 (de) * 2014-08-04 2017-03-02 Bayerische Motoren Werke Aktiengesellschaft Verfahren und Vorrichtung zum automatischen Wählen eines Fahrmodus an einem Kraftfahrzeug
WO2016090282A1 (en) * 2014-12-05 2016-06-09 Cowbyt Technologies Llc Autonomous navigation system
CN104859647B (zh) * 2015-06-01 2017-06-09 河南理工大学 插电式混合动力汽车节能控制方法
US9511767B1 (en) * 2015-07-01 2016-12-06 Toyota Motor Engineering & Manufacturing North America, Inc. Autonomous vehicle action planning using behavior prediction
US9754490B2 (en) * 2015-11-04 2017-09-05 Zoox, Inc. Software application to request and control an autonomous vehicle service

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108973998A (zh) * 2018-07-11 2018-12-11 清华大学 一种基于mpc的异质车辆队列分布式节能控制方法
DE102019215680B3 (de) * 2019-10-11 2021-01-07 Audi Ag Verfahren zum Vorhersagen eines Verhaltens eines Zielfahrzeugs
DE102021202301A1 (de) 2021-03-10 2022-09-15 Thyssenkrupp Ag System
WO2022189209A1 (de) 2021-03-10 2022-09-15 Thyssenkrupp Presta Ag System

Also Published As

Publication number Publication date
US20170253241A1 (en) 2017-09-07
US10239529B2 (en) 2019-03-26
CN107139931B (zh) 2022-01-11
GB201703195D0 (en) 2017-04-12
GB2548977A (en) 2017-10-04
RU2017106092A (ru) 2018-08-29
MX2017002722A (es) 2018-08-15
CN107139931A (zh) 2017-09-08

Similar Documents

Publication Publication Date Title
DE102017102605A1 (de) Betrieb autonomer Fahrzeuge auf der Basis interaktiver modellprädiktiver Steuerung
DE102016200759B4 (de) Verfahren, Vorrichtung und Verarbeitungseinrichtung zum Steuern von Funktionen in einem Fahrzeug
DE102020111682A1 (de) Systeme und verfahren zum implementieren einer autonomen fahrzeugreaktion auf ein sensorversagen
DE102017124683A1 (de) Energiereduktion für ein fahrzeug
DE102018113926A1 (de) Autonome Fahrzeugantriebssysteme und Verfahren für kritische Zustände
DE102019117657A1 (de) Fahrsteuersystem für ein Fahrzeug
DE102014223242A1 (de) Autonome fahrzeugbetriebsweisen
DE102015100292A1 (de) Niederschlagsdetektion in autonomen Fahrzeugen
EP3160813A2 (de) Verfahren zur erstellung eines umfeldmodells eines fahrzeugs
DE102015107668A1 (de) Fahrassistenzvorrichtung
DE102020210499A1 (de) Datengesteuerte regelwerke
DE102013113573A1 (de) Gefahrenreaktionsentscheidung auf Kontextbasis
DE102021105001A1 (de) Steuerungsarchitekturen für autonome fahrzeuge
DE112014003982T5 (de) Steuerungseinheit und Verfahren zum Steuern eines Fahrzeugs in einem Fahrzeug
DE102018117916A1 (de) Wegplanung für das autonome Fahren
DE102020103522A1 (de) Fahrzeugsteuerung durch fahrbahnreibung
DE102018118220A1 (de) Verfahren zur Schätzung der Lokalisierungsgüte bei der Eigenlokalisierung eines Fahrzeuges, Vorrichtung für die Durchführung von Verfahrensschritten des Verfahrens, Fahrzeug sowie Computerprogramm
DE102019134050A1 (de) Fahrzeugpfadverarbeitung
DE102018107508A1 (de) Echtzeitfahrstreifenwechselanzeige
DE102021132850A1 (de) Homotopiebasierter planer für autonome fahrzeuge
DE102020131949A1 (de) System und verfahren zum erlernen einer fahrerpräferenz und zum anpassen einer spurzentrierungssteuerung an ein fahrerverhalten
DE102020114306A1 (de) Schätzen von geschwindigkeitsprofilen
DE102020128433A1 (de) Simulation eines autonomen Fahrzeugs zur Verbesserung der Sicherheit und Zuverlässigkeit eines autonomen Fahrzeugs
DE102020135094A1 (de) System und verfahren zum aktualisieren von kartendaten
DE102022101233A1 (de) Verkehrssimulation und strassennetzmodellierung für autonome fahrzeuge

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: ETL IP PATENTANWALTSGESELLSCHAFT MBH, DE

Representative=s name: ETL IP PATENT- UND RECHTSANWALTSGESELLSCHAFT M, DE

Representative=s name: ETL WABLAT & KOLLEGEN PATENT- UND RECHTSANWALT, DE

R082 Change of representative

Representative=s name: ETL IP PATENTANWALTSGESELLSCHAFT MBH, DE

Representative=s name: ETL IP PATENT- UND RECHTSANWALTSGESELLSCHAFT M, DE

R012 Request for examination validly filed