DE102020127216A1 - Verfahren zum Ermitteln einer Trajektorie für ein Fahrzeug, Computerprogrammprodukt, Parkassistenzsystem und Fahrzeug - Google Patents

Verfahren zum Ermitteln einer Trajektorie für ein Fahrzeug, Computerprogrammprodukt, Parkassistenzsystem und Fahrzeug Download PDF

Info

Publication number
DE102020127216A1
DE102020127216A1 DE102020127216.2A DE102020127216A DE102020127216A1 DE 102020127216 A1 DE102020127216 A1 DE 102020127216A1 DE 102020127216 A DE102020127216 A DE 102020127216A DE 102020127216 A1 DE102020127216 A1 DE 102020127216A1
Authority
DE
Germany
Prior art keywords
vehicle
neural network
trajectory
training
anchor point
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
DE102020127216.2A
Other languages
English (en)
Inventor
Mathieu Bulliot
Frank Blinkle
Mohamed Elsamadony
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.)
Valeo Schalter und Sensoren GmbH
Original Assignee
Valeo Schalter und Sensoren GmbH
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 Valeo Schalter und Sensoren GmbH filed Critical Valeo Schalter und Sensoren GmbH
Priority to DE102020127216.2A priority Critical patent/DE102020127216A1/de
Publication of DE102020127216A1 publication Critical patent/DE102020127216A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62DMOTOR VEHICLES; TRAILERS
    • B62D15/00Steering not otherwise provided for
    • B62D15/02Steering position indicators ; Steering position determination; Steering aids
    • B62D15/027Parking aids, e.g. instruction means
    • B62D15/0285Parking performed automatically

Landscapes

  • Engineering & Computer Science (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
  • Traffic Control Systems (AREA)

Abstract

Es wird ein Verfahren zum Ermitteln einer Trajektorie (TR) für ein Fahrzeug (100) vorgeschlagen. Ein neuronales Netzwerk ist zum Ermitteln (S2) wenigstens eines Ankerpunktes (230) für eine Trajektorie (TR) für das Fahrzeug (100), die eine Startposition (210) des Fahrzeugs (100) mit einer Zielposition (220) für das Fahrzeug (100) verbindet, unter Verwendung einer digitalen Umgebungskarte (200), der Startposition (210) und der Zielposition (220) eingerichtet. Die Trainingsphase des neuronalen Netzwerks (113) umfasst ein automatisches Erzeugen (S31) einer Mehrzahl unterschiedlicher Trainingsszenarien (300, 301, 302) in Abhängigkeit einer Anzahl vorgegebener Parameter, wobei ein jeweiliges Trainingsszenario (300, 301, 302) eine digitale Umgebungskarte (200) mit einer Startposition (210) und einer Zielposition (220) umfasst, und wobei für jedes Trainingsszenario (300, 301, 302) der Mehrzahl die folgenden Schritte durchgeführt werden:Eingeben (S32) des Trainingsszenarios (300, 301, 302) als Eingangsvektor (EV) in das neuronale Netzwerk (113),Ermitteln (S33) eines Ausgabevektors (AV) des neuronalen Netzwerks (113) in Abhängigkeit des Eingangsvektors (EV), wobei der Ausgabevektor (AV) eine Repräsentation des wenigstens einen Ankerpunktes (230) umfasst,Berechnen (S34) eines Werts einer Kostenfunktion in Abhängigkeit des Ausgabevektors (AV), undOptimieren (S35) des neuronalen Netzwerks (113) in Abhängigkeit des berechneten Werts.

Description

  • Die vorliegende Erfindung betrifft ein Verfahren zum Ermitteln einer Trajektorie für ein Fahrzeug, ein Computerprogrammprodukt, ein Parkassistenzsystem sowie ein Fahrzeug.
  • Parkassistenzsysteme werden dazu verwendet, in einer bestimmten Umgebung ein Fahrzeug autonom oder teilautonom von einer aktuellen Position in eine Parkposition zu manövrieren. Hierbei wird beispielsweise mittels Umgebungssensoren, wie Kameras oder Ultraschallsensoren, die Umgebung des Fahrzeugs erfasst. Das Parkassistenzsystem hat dann die Aufgabe, auf Basis der Umgebungsdaten eine Trajektorie zu ermitteln, die die aktuelle Position mit der Parkposition verbindet, ohne dass es dabei zu einer Kollision kommt.
  • Bekannte Parkassistenzsysteme umfassen Algorithmen, die unter den jeweils gegebenen Randbedingungen anhand fest vorgegebener Regeln eine möglichst optimale Trajektorie ermitteln. Die vorgegebenen Regeln umfassen beispielsweise einzuhaltende Mindestabstände zu Hindernissen und dergleichen. Bei solchen Systemen kann eine Situation auftreten, in der der Algorithmus keine Trajektorie findet, obwohl es mögliche Trajektorien gibt.
  • CN 109131317 A beschreibt ein Parkassistenzsystem mit einem Maschinen-Lern-Modul, das effizienter und flexibler in der Erzeugung von Trajektorien sein soll.
  • Es ist eine Aufgabe der vorliegenden Erfindung, den Betrieb eines Fahrzeugs mit einem Parkassistenzsystem zu verbessern.
  • Gemäß einem ersten Aspekt wird ein Verfahren zum Ermitteln einer Trajektorie für ein Fahrzeug vorgeschlagen. In einem ersten Schritt wird eine Umgebung des Fahrzeugs repräsentierende digitale Umgebungskarte empfangen. In einem zweiten Schritt wird wenigstens ein Ankerpunkt für eine Trajektorie für das Fahrzeug, die eine Startposition des Fahrzeugs mit einer Zielposition für das Fahrzeug verbindet, mittels eines in einer Trainingsphase trainierten neuronalen Netzwerks unter Verwendung der digitalen Umgebungskarte, der Startposition und der Zielposition ermittelt. In einem dritten Schritt wird die Trajektorie umfassend die Startposition, den wenigstens einen Ankerpunkt und die Zielposition ermittelt. In einem vierten Schritt wird die ermittelte Trajektorie ausgegeben. Die Trainingsphase des neuronalen Netzwerks umfasst in einem ersten Schritt ein automatisches Erzeugen einer Mehrzahl unterschiedlicher Trainingsszenarien in Abhängigkeit einer Anzahl vorgegebener Parameter, wobei ein jeweiliges Trainingsszenario eine digitale Umgebungskarte mit einer Startposition und einer Zielposition umfasst. Für jedes Trainingsszenario der Mehrzahl werden die folgenden Schritte durchgeführt. Eingeben des Trainingsszenarios als Eingangsvektor in das neuronale Netzwerk, Ermitteln eines Ausgabevektors des neuronalen Netzwerks in Abhängigkeit des Eingangsvektors, wobei der Ausgabevektor eine Repräsentation des wenigstens einen Ankerpunktes umfasst, Berechnen eines Werts einer Kostenfunktion in Abhängigkeit des Ausgabevektors, und Optimieren des neuronalen Netzwerks in Abhängigkeit des berechneten Werts.
  • Dieses Verfahren weist den Vorteil auf, dass das Parkassistenzsystem auch mit neuen oder unbekannten Situationen umgehen kann, weil das in dem trainierten neuronalen Netzwerk gespeicherte „Wissen“ in beliebigen Situationen anwendbar ist, nicht nur in denen, die in der Trainingsphase trainiert wurden. Im Unterschied hierzu kann es bei einem herkömmlichen Parkassistenzsystem, bei dem ein programmierter Algorithmus zum Ermitteln des Ankerpunkts verwendet wird, auftreten, dass der Algorithmus keine Lösung findet. Dies kann beispielsweise dann der Fall sein, wenn eine Situation auftritt, die bei der Entwicklung des Algorithmus nicht vorhergesehen und daher bei der Programmierung nicht berücksichtigt wurde.
  • Das Fahrzeug ist beispielsweise ein Personenkraftwagen oder auch ein Lastkraftwagen. Das Fahrzeug umfasst vorzugsweise eine Anzahl an Sensoreinheiten, die zum Erfassen des Fahrzustands des Fahrzeugs und zum Erfassen einer Umgebung des Fahrzeugs eingerichtet sind. Beispiele für derartige Sensoreinheiten des Fahrzeugs sind Bildaufnahmeeinrichtungen, wie eine Kamera, ein Radar (engl. radio detection and ranging) oder auch ein Lidar (engl. light detection and ranging), Ultraschallsensoren, Ortungssensoren, Radwinkelsensoren und/oder Raddrehzahlsensoren. Die Sensoreinheiten sind jeweils zum Ausgeben eines Sensorsignals eingerichtet, beispielsweise an eine Steuereinheit, beispielsweise das Parkassistenzsystem oder ein Fahrassistenzsystem, welche das Fahrzeug teilautonom oder vollautonom in Abhängigkeit der erfassten Sensorsignale steuern kann.
  • Das Parkassistenzsystem kann zum teilautonomen oder vollautonomen Fahren des Fahrzeugs eingerichtet sein. Unter teilautonomem Fahren wird beispielsweise verstanden, dass das Parkassistenzsystem eine Lenkvorrichtung und/oder eine Fahrstufenautomatik steuert. Unter vollautonomem Fahren wird beispielsweise verstanden, dass das Parkassistenzsystem zusätzlich auch eine Antriebseinrichtung und eine Bremseinrichtung steuert.
  • Das Fahrzeug mit dem Parkassistenzsystem kann auch als automatisiertes Fahrzeug bezeichnet werden. Der Automatisierungsgrad des Fahrzeugs weist beispielsweise eine Automatisierungsstufe gemäß dem SAE-Klassifikationssystem auf. Das SAE-Klassifikationssystem wurde 2014 von SAE International, einer Standardisierungsorganisation für Kraftfahrzeuge, als J3016, „Taxonomy and Definitions for Terms Related to On-Road Motor Vehicle Automated Driving Systems“ veröffentlicht. Es basiert auf sechs verschiedenen Automatisierungsgraden und berücksichtigt das Maß des erforderlichen Eingreifens des Systems und der erforderlichen Aufmerksamkeit des Fahrers. Die SAE-Automatisierungsgrade reichen von Stufe 0, die einem vollständig manuellen System entspricht, über Fahrerassistenzsysteme in Stufe 1 bis 2 bis hin zu teil-autonomen (Stufe 3 und 4) und vollautonomen (Stufe 5) Systemen, bei der kein Fahrer mehr erforderlich ist.
  • Das Parkassistenzsystem ermittelt auf Basis der empfangenen digitalen Umgebungskarte, die beispielsweise die direkte Umgebung des Fahrzeugs zweidimensional darstellt, eine Trajektorie für das Fahrzeug. Wie weit die Umgebungskarte reicht, hängt insbesondere von der Reichweite der jeweiligen Sensoren ab. In einem einfachen Beispiel umfasst die Umgebungskarte eine geometrische Unterteilung der Umgebung in zwei Bereiche: solche, die frei sind und befahren werden können, und solche, die durch ein Hindernis, wie beispielsweise ein Gebäude, eine Mauer, andere Verkehrsteilnehmer oder dergleichen, blockiert sind. Eine solche Umgebungskarte kann beispielsweise durch die Angabe von Koordinaten von Eckpunkten der Hindernisse und einer Angabe, welche Eckpunkte miteinander verbunden sind, dargestellt werden. Beispielsweise bildet das Fahrzeug in der digitalen Umgebungskarte einen Ursprung eines Koordinatensystems, auf das sich die Koordinaten der Objekte beziehen. Das Fahrzeug weist zusätzlich eine Ausrichtung auf. Diese kann ebenfalls fest vorgegeben sein, z.B. weist die Front des Fahrzeugs in x-Richtung. Ein Ankerpunkt oder die Zielposition weisen entsprechend ebenfalls eine Soll-Ausrichtung auf. Diese gibt an, wie das Fahrzeug an dem entsprechenden Punkt ausgerichtet sein soll.
  • Die Aufgabe des Parkassistenzsystems bei einem unterstützten Parkvorgang kann beispielsweise das Auffinden einer Trajektorie für das Fahrzeug sein, die das Fahrzeug von einer Startposition, beispielsweise die aktuelle Fahrzeugposition, in eine Zielposition, die der gewünschten Parkposition entspricht, führt. Die Zielposition kann hierbei manuell von einem Nutzer des Fahrzeugs eingegeben werden und/oder das Parkassistenzsystem ermittelt selbsttätig die Zielposition. Je nach den Randbedingungen, insbesondere der Anordnung von Hindernissen in der Umgebung, der Startposition und der Zielposition, kann eine Trajektorie gefunden werden, die die Startposition direkt mit der Zielposition verbindet oder es sind mehrere Züge nötig, wobei zwischen zwei aufeinanderfolgenden Zügen ein Fahrtrichtungswechsel liegt.
  • Die Trajektorie kann unter Verwendung von Ankerpunkten ermittelt werden. Ein Ankerpunkt kennzeichnet dabei einen Ort in der digitalen Umgebungskarte, durch den die Trajektorie verlaufen muss. Ankerpunkte eignen sich einerseits zum Kennzeichnen von Fahrtrichtungswechsel-Punkten, andererseits auch, um die Trajektorie um ein Hindernis herum zu führen. Die Startposition, die Zielposition und die Ankerpunkte umfassen außer zwei jeweiligen Ortskoordinaten auch eine jeweilige Ausrichtung oder Orientierung. Die jeweilige Position bezieht sich beispielsweise auf einen bestimmten Punkt des Fahrzeugs, wie einem Mittelpunkt der Vorderachse oder der Hinterachse. Ob bei einem bestimmten Abstand eines Ankerpunkts von einem Hindernis eine Kollision auftritt, hängt daher von den Fahrzeugmaßen ab, die für unterschiedliche Fahrzeuge verschieden sein können. Die Orientierung eines jeweiligen Punkts gibt die Orientierung des Fahrzeugs an, die dieses beim Erreichen des Ankerpunkts aufweisen soll. Die Orientierung kann beispielsweise als ein Winkel angegeben werden, beispielsweise ein Winkel zwischen einer Längsachse des Fahrzeugs in der Startposition zu der Längsachse in der Sollposition.
  • Eine Trajektorie mit zwei Zügen kann basierend auf drei Punkten, der Startposition, einem Ankerpunkt und der Zielposition, ermittelt werden. Teilabschnitte der Trajektorie, die zwei aufeinanderfolgende Positionen verbinden, können auf unterschiedliche Weise ermittelt werden. Vorzugsweise werden die Teilabschnitte mittels einer mathematischen Funktion, wie beispielsweise einer Spline-Funktion, gebildet. Eine Spline-Funktion eignet sich insbesondere, um einen möglichst gleichmäßigen Verlauf, ohne zu starke Krümmung, zu ermöglichen.
  • Das neuronale Netzwerk ist dazu trainiert, wenigstens einen Ankerpunkt für die Trajektorie auf Basis der digitalen Umgebungskarte, der Startposition und der Zielposition zu ermitteln. Der Aufbau des neuronalen Netzwerks stellt sich beispielsweise wie folgt dar. Das neuronale Netzwerk kann in drei Schichten oder Abschnitte unterteilt werden, eine Eingabeschicht, eine oder mehrere verborgene Schichten und eine Ausgabeschicht. Jede der Schichten umfasst eine Mehrzahl von einzelnen Neuronen, wobei unterschiedliche Schichten auch eine unterschiedliche Zahl an Neuronen aufweisen können. Die Menge an Neuronen in der Eingabeschicht hängt beispielsweise von der Menge und dem Format der durch das neuronale Network zu verarbeitenden Daten, was man auch als die Dimensionalität der Daten bezeichnen kann, ab. Die Menge an Neuronen in der Ausgabeschicht hängt beispielsweise von der Dimensionalität des Ausgangsvektors ab.
  • Die Eingabeschicht bildet den Eingang des neuronalen Netzwerks, dem der Eingangsvektor zugeführt wird. Die Neuronen der Eingabeschicht nehmen die in dem Eingangsvektor enthaltenen Informationen auf und geben diese gewichtet an die Neuronen der ersten verborgenen Schicht weiter. Die Neuronen der ersten verborgenen Schicht nehmen die gewichteten Signale von der Eingangsschicht auf und geben diese ihrerseits gewichtet an die folgende verborgene Schicht weiter. Die Signale werden auf diese Weise von Schicht zu Schicht durch das neuronale Netzwerk geleitet, bis die Ausgabeschicht erreicht ist. An den Neuronen der Ausgabeschicht wird der Ausgabevektor abgegriffen. Die Menge an verborgenen Schichten ist grundsätzlich unbegrenzt, jedoch skaliert die Rechenleistung, die zum Betreiben des neuronalen Netzwerks benötigt wird, mit der Menge verborgener Schichten. Je mehr Schichten ein neuronales Netzwerk umfasst, umso komplexere Aufgaben kann das neuronale Netzwerk lösen, allerdings steigt auch der Trainingsaufwand, das heißt die Größe des Trainingsdatensatzes entsprechend an. Daher ist es vorteilhaft, nur so viele verborgene Schichten wie für die jeweilige Aufgabe nötig zu verwenden.
  • Die Topologie des neuronalen Netzwerks wird beispielsweise durch den Entwickler des neuronalen Netzwerks festgelegt. Die Topologie des neuronalen Netzwerks enthält die Informationen wie viele Schichten das neuronale Netzwerk aufweist, wie viele Neuronen in einer jeweiligen Schicht vorhanden sind, und wie die Neuronen der unterschiedlichen Schichten miteinander verknüpft sind. Je nach Aufgabenstellung eignen sich unterschiedliche Topologien unterschiedlich gut.
  • Das „Wissen“ des neuronalen Netzwerks steckt insbesondere in den Gewichten, mit denen ein jeweiliges Neuron eingehende Signale an verbundene Neuronen weiterleitet. Bei einem untrainierten neuronalen Netzwerk sind beispielsweise alle Gewichte gleich, das neuronale Netzwerk hat daher noch kein Wissen aufgebaut. Durch das Trainieren des neuronalen Netzwerks werden die Gewichte Schritt für Schritt verändert oder angepasst. Man kann auch sagen, das neuronale Netzwerk baut „Erfahrung“ auf.
  • Um das neuronale Netzwerk zu trainieren, müssen dem neuronalen Netzwerk Trainingsdaten eingegeben werden. Vorliegend handelt es sich dabei um Trainingsszenarien, die beispielsweise ein Parksituation darstellen oder simulieren, die im Betrieb tatsächlich auftreten kann. Ein einzelnes Trainingsszenario umfasst daher eine digitale Umgebungskarte, eine Startposition und eine Zielposition. Eine Mehrzahl an Trainingsszenarien wird nachfolgend auch als Trainingsdatensatz bezeichnet. Die Trainingsszenarien werden vorliegend automatisch erzeugt. Um ein Trainingsszenario zu erzeugen, ist beispielsweise ein Satz von Parameterwerten notwendig. Die Parameterwerte legen beispielsweise eine Anzahl von Hindernissen und eine Position der Hindernisse fest. Das Erzeugen erfolgt beispielsweise anhand eines Generators, der zum Erzeugen unterschiedlicher Trainingsszenarien einzelne Parameterwerte variiert.
  • Jedes Trainingsszenario wird in einen Eingangsvektor überführt und dem neuronalen Netzwerk eingegeben. In Abhängigkeit des Eingangsvektors und der Gewichte zwischen den verbundenen Neuronen ermittelt das neuronale Netzwerk einen Ausgangsvektor. Der Ausgangsvektor repräsentiert insbesondere einen Ankerpunkt, das heißt, der Ausgangsvektor kann in eindeutiger Weise in einen Ankerpunkt überführt werden.
  • Um das neuronale Netzwerk zu einer Anpassung seiner Gewichte zu veranlassen, muss diesem mitgeteilt werden, wie gut der ermittelte Ausgabevektor (Ankerpunkt) in dem jeweiligen Trainingsszenario geeignet ist. Hierzu wird eine Kostenfunktion in Abhängigkeit des Ausgabevektors berechnet oder ausgewertet. Die Kostenfunktion ist derart gestaltet, dass diese beispielsweise bei einem gut geeigneten Ankerpunkt einen niedrigen Wert und bei einem schlecht geeigneten Ankerpunkt einen hohen Wert ausgibt. Der Wert der Kostenfunktion wird dem neuronalen Netzwerk rückgekoppelt. Daraufhin wird das neuronale Netzwerk optimiert. Das Optimieren des neuronalen Netzwerks erfolgt insbesondere durch Anpassen der Gewichte des neuronalen Netzwerks. Dies kann vorzugsweise durch einen Backpropagation-Algorithmus erfolgen. Die Optimierung erfolgt vorzugsweise iterativ, wobei auf Basis eines Trainingsszenarios so oft ein Ausgabevektor erzeugt, die Kostenfunktion berechnet und das neuronale Netzwerk optimiert wird, bis die Kostenfunktion einen vorgegebenen Wert erreicht oder unterschreitet.
  • Die Kostenfunktion kann anhand eines vorgegebenen Ankerpunkts, der beispielsweise eine optimale „Lösung“ darstellt, für ein jeweiliges Trainingsszenario berechnet werden, beispielsweise als ein MSE-Wert (MSE: engl. mean squared error, mittlere quadratische Abweichung). Alternativ kann die Kostenfunktion aber auch auf Basis von bestimmten Bewertungskriterien, wie beispielsweise einem Abstand des ermittelten Ankerpunkts von der Zielposition oder von einem Hindernis und dergleichen mehr ermittelt werden.
  • Es sei angemerkt, dass die Gewichte des neuronalen Netzwerks im Realbetrieb vorzugsweise fest bleiben. Das heißt, dass das neuronale Netzwerk nicht mehr weiter lernt.
  • Gemäß einer Ausführungsform des Verfahrens umfasst die Anzahl von vorgegebenen Parametern zum Erzeugen der Trainingsszenarien einen Abstand von der Startposition zu der Zielposition, eine relative Orientierung der Startposition zu der Zielposition, eine Orientierung der Zielposition relativ zu einem Verkehrsmerkmal, eine Anzahl von Hindernissen, eine Grö-ße eines jeweiligen Hindernisses, eine Orientierung eines jeweiligen Hindernisses, einen Abstand eines jeweiligen Hindernisses von der Startposition und/oder einen Abstand eines jeweiligen Hindernisses von der Zielposition. Jedem Parameter ist eine Wertebereich zugeordnet. Zum Erzeugen eines Trainingsszenarios wird jedem der vorgegebenen Parameter ein Parameterwert aus dem zugeordneten Wertebereich zugeordnet.
  • Auf diese Weise lassen sich eine Vielzahl unterschiedlicher Trainingsszenarien in einfacher Weise erzeugen. Die Menge vorgegebener Parameter kann variieren. So kann beispielsweise ein Parameter die Anzahl an Hindernissen bestimmen, wobei für jedes Hindernis die Koordinaten der Eckpunkte festzulegen sind. Ein Verkehrsmerkmal ist beispielsweise eine Fahrbahn mit zugehöriger Fahrtrichtung. Die Orientierung der Zielposition relativ zu dem Verkehrsmerkmal umfasst beispielsweise eine Längsaufstellung, eine Queraufstellung oder auch eine Schrägaufstellung.
  • In Ausführungsformen umfasst ein Trainingsdatensatz eine Vielzahl an Trainingsszenarien mit unterschiedlicher Komplexität. Vorzugsweise ist der Trainingsdatensatz derart geordnet, dass bei dem Training des neuronalen Netzwerks mittels des Trainingsdatensatzes die Komplexität der Trainingsszenarien schrittweise zunimmt.
  • Durch gezieltes Einstellen oder Begrenzen des Wertebereichs für einen jeweiligen Parameter kann beispielsweise die Komplexität der erzeugten Trainingsszenarien gezielt gesteuert werden. Ein komplexes Trainingsszenario weist gegenüber einem weniger komplexen Trainingsszenario beispielsweise eine höhere Anzahl an Hindernissen und/oder einen größeren Abstand von Startposition zu Zielposition und/oder einen geringeren Abstand zwischen zwei Hindernissen, zwischen denen das Fahrzeug hindurchfahren muss und dergleichen mehr auf. Auf diese Weise kann ein Trainingsdatensatz mit zunehmend komplexeren Trainingsszenarien erzeugt werden, was bei dem Training des neuronalen Netzwerks hilfreich sein kann.
  • Gemäß einer weiteren Ausführungsform des Verfahrens ist der Parameterwert wenigstens eines vorgegebenen Parameters fest vorgegeben.
  • Mit dieser Ausführungsform lässt sich ein neuronales Netzwerk speziell für bestimmte Situationen trainieren. Beispielsweise kann vorgegeben sein, dass die Zielposition einem BoxParkplatz (Queraufstellung) entspricht, der seitlich durch Hindernisse begrenzt ist, und in den das Fahrzeug vorwärts einparken soll.
  • Gemäß einer weiteren Ausführungsform des Verfahrens umfasst das automatische Erzeugen der Mehrzahl von unterschiedlichen Trainingsszenarien die Schritte:
    • Ermitteln eines ersten Satzes von Parameterwerten, wobei jedem vorgegebenen Parameter ein Parameterwert aus dem zugeordneten Wertebereich zugeordnet wird,
    • Erzeugen eines ersten Trainingsszenarios auf Basis des ermittelten ersten Satzes,
    • Ermitteln eines zweiten Satzes von Parameterwerten, wobei wenigstens ein Parameterwert des zweiten Satzes im Vergleich zu dem ersten Satz variiert ist, und
    • Erzeugen eines zweiten Trainingsszenarios auf Basis des ermittelten zweiten Satzes.
  • Auf diese Weise kann sichergestellt werden, dass unterschiedliche Trainingsszenarien erzeugt werden. In Ausführungsformen kann vorgesehen sein, dass die Änderung des Parameterwerts in einem vorbestimmten Intervall liegt, so dass diese nicht zu klein und/oder nicht zu groß ausfällt. Damit kann sichergestellt werden, dass die Trainingsdaten dicht beieinander liegende Trainingsszenarien umfassen.
  • Gemäß einer weiteren Ausführungsform des Verfahrens wird der Parameterwert eines jeweiligen vorgegebenen Parameters in Abhängigkeit einer für den jeweiligen vorgegebenen Parameter vorgegebenen Häufigkeitsverteilung auf dem zugeordneten Wertebereich ausgewählt.
  • Mit dieser Ausführungsform kann das Auftreten von bestimmten Konstellationen gesteuert werden. Beispielsweise kann vorgesehen sein, dass 50% der Hindernisse Fahrzeuge anderer Verkehrsteilnehmer repräsentieren sollen, was sich beispielsweise über die Größe der Hindernisse und deren Anordnung in der digitalen Umgebungskarte darstellen lässt.
  • Mittels der Häufigkeitsverteilungen können die Trainingsszenarien ferner auch auf regional unterschiedliche Verkehrsordnungen und/oder behördlichen Vorgaben einstellen oder beschränken.
  • Gemäß einer weiteren Ausführungsform des Verfahrens sind die Parameterwerte von wenigstens zwei vorgegebenen Parametern mittels einer vorgegebenen Funktion gekoppelt.
  • Mit dieser Ausführungsform lassen sich vorteilhaft unzulässige Zustände ausschließen, wie beispielsweise, dass sich zwei einzelne Hindernisse überlappen.
  • Gemäß einer weiteren Ausführungsform des Verfahrens umfasst das Berechnen der Kostenfunktion ein Ermitteln einer Trajektorie auf Basis des durch den Ausgangsvektor des neuronalen Netzwerks repräsentierten wenigstens einen Ankerpunktes.
  • In dieser Ausführungsform kann der Wert der Kostenfunktion anhand der Trajektorie ermittelt werden. Dies ist vorteilhaft, wenn das neuronale Netzwerk mittels einem bestärkenden Lernverfahren trainiert wird, bei dem eine optimale Lösung für ein Trainingsszenario nicht vorgegeben ist oder nicht bekannt ist.
  • Gemäß einer weiteren Ausführungsform des Verfahrens umfasst die Kostenfunktion eine Anzahl vorgegebener Kostenparameter. Die Kostenparameter umfassen eine Länge der ermittelten Trajektorie, einen maximalen Lenkwinkel entlang der Trajektorie, einen minimalen Abstand zu einem Hindernis, einen mittlerer Abstand zu einem Hindernis entlang eines Teilstücks der Trajektorie, einen Abstand des wenigstens einen Ankerpunkts von der Startposition und/oder von der Zielposition, eine Menge von Ankerpunkten, einen Abstand des Fahrzeugs von einem Hindernis in der Zielposition und/oder eine Orientierung des Fahrzeugs relativ zu einem Hindernis in der Zielposition umfasst.
  • Beispielsweise wird eine kürzere Trajektorie gegenüber einer langen Trajektorie bevorzugt, es wird eine Trajektorie mit einer geringen Krümmung, was einem geringen Lenkwinkel entspricht, gegenüber einer Trajektorie mit einer hohen Krümmung, was einem hohen Lenkwinkel entspricht, bevorzugt und es wird einer Trajektorie, die einen größeren Abstand zu einem Hindernis einhält, gegenüber einer Trajektorie mit einem geringeren Abstand zu dem Hindernis bevorzugt.
  • Unter der Menge von Ankerpunkten wird vorliegend die zahlenmäßige Menge an Ankerpunkten verstanden.
  • Es sei angemerkt, dass das neuronale Netzwerk aufgrund des Trainings mit der Kostenfunktion implizit bestimmte Regeln lernt, wie beispielswiese, dass es schlecht ist, den Ankerpunkt zu nahe an ein Hindernis zu platzieren. Vorgaben, wie beispielsweise die Außenmaße des Fahrzeugs, ein Wendekreis des Fahrzeugs oder ein maximaler Lenkeinschlag, kennt das neuronale Netzwerk nicht.
  • Gemäß einer weiteren Ausführungsform des Verfahrens umfasst das neuronale Netzwerk ein Mehr-Schicht-Perzeptron mit mindestens zwei verborgenen Schichten und höchstens 20 verborgenen Schichten.
  • Bei einem Mehr-Schicht-Pezeptron (engl. „multi-layer-perceptron“) sind alle Neuronen der einen Schicht mit allen Neuronen der folgenden Schicht verbunden.
  • Jedes der Neuronen wird gemäß einer vorgegebenen Aktivierungsfunktion aktiviert, die beispielsweise in Form einer Rektifier-Aktivierungsfunktion gegeben ist. Bei einer Rektifier-Aktivierungsfunktion werden negative Eingangswerte auf Null abgebildet und positive Eingangswerte auf eine lineare Funktion mit positiver Steigung abgebildet. Es sind aber auch andere Aktivierungsfunktionen möglich, wie beispielsweise sigmoidal oder hyperbolisch.
  • Gemäß einer weiteren Ausführungsform des Verfahrens wird für jedes Trainingsszenario der Mehrzahl mittels eines Brute-Force-Verfahrens ein optimaler Ankerpunkt ermittelt, der in einem überwachten Lernverfahren zum Berechnen des Werts der Kostenfunktion verwendet wird, wobei das Brute-Force-Verfahren die Schritte umfasst:
    • Stochastisches Ermitteln einer Mehrzahl von Ankerpunkten für das Trainingsszenario, und
    • Ermitteln des optimalen Ankerpunkts der Mehrzahl in Abhängigkeit einer Bewertungsfunktion.
  • Dieses Verfahren weist den Vorteil auf, dass das Trainieren des neuronalen Netzwerks sehr zielführend durchgeführt werden kann, da für jedes Trainingsszenario der optimale Ankerpunkt vorgegeben ist. Andererseits erfordert das Ermitteln des optimalen Ankerpunkts zusätzlichen Aufwand.
  • Das Anwenden eines Brute-Force-Verfahrens eignet sich, da keinerlei Beschränkungen und/oder Verzerrungen beim Auffinden des optimalen Ankerpunkts erfolgen. Es kann aber auch vorgesehen sein, dass der mögliche Lösungsraum für das Brute-Force-Verfahren, also der zugängliche Parameterbereich für den stochastisch zu ermittelnden Ankerpunkt, in einer bestimmten Weise begrenzt wird. Beispielsweise kann um jedes Hindernis herum ein „verbotener Bereich“ definiert werden, wobei der Ankerpunkt in diesem Bereich nicht liegen darf. Damit können Ankerpunkte, die zu einer Kollision des Fahrzeugs mit einem Hindernis führen, ausgeschlossen werden und das Verfahren wird effizienter. Es kann vorgesehen sein, dass für ein Trainingsszenario eine bestimmte Menge an Ankerpunkten ermittelt wird, beispielsweise 100000 Ankerpunkte pro Trainingsszenario.
  • Die Bewertungsfunktion zum Ermitteln des optimalen Ankerpunkts kann beispielsweise wie zuvor beschriebene Kostenfunktion ausgebildet sein, mit der eine Trajektorie bewertet wird. Hierbei wird für jeden Ankerpunkt eine Trajektorie ermittelt, die dann bewertet wird. Insbesondere wird ein Ankerpunkt, der zu einer Trajektorie führt, die eine Kollision mit einem Hindernis verursacht, mit der schlechtesten Bewertung bewertet.
  • Alle stochastisch ermittelten Ankerpunkte werden anhand der Bewertungsfunktion bewertet und der Ankerpunkt mit der besten Bewertung wird als der optimale Ankerpunkt für das korrespondierende Trainingsszenario festgelegt. Es sei angemerkt, dass auf diese Weise nicht zwingend der objektiv beste Ankerpunkt für ein gegebenes Trainingsszenario ermittelt wird, aber dies ist aufgrund der Vielzahl an Trainingsszenarien und der Funktionsweise eines neuronalen Netzwerks auch nicht nötig, um das neuronale Netzwerk zielführend zu trainieren.
  • Bei dieser Ausführungsform kann die Kostenfunktion, deren Wert zum Optimieren des neuronalen Netzwerks ermittelt wird, einfacher ausfallen, beispielsweise sie als MSE-Wert repräsentiert sein, wobei der optimale Ankerpunkt den Referenzwert darstellt.
  • Gemäß einer weiteren Ausführungsform des Verfahrens erfolgt das Optimieren des neuronalen Netzwerks auf Basis eines Adam-Optimierungsalgorithmus.
  • Der Adam-Optimierungsalgorithmus weist insbesondere die zwei Parameter „Lernrate“ und „Impuls“ auf, anhand derer das Training des neuronalen Netzwerks eingestellt werden kann.
  • Die Lernrate entspricht in etwa einer Schrittweite oder Stärke der Anpassung, mit der das neuronale Netzwerk in einer Iteration versucht, die Kostenfunktion zu Minimieren. Der Impuls entspricht einem Anteil des Schritts oder der Änderung, die das neuronale in der vorhergehenden Iteration oder in den vorhegenden Iterationen vorgenommen hat. Weitere Parameter können vorgesehen sein.
  • Gemäß einer weiteren Ausführungsform des Verfahrens ist das neuronale Netzwerk zum rekursiven Ermitteln einer Abfolge von Ankerpunkten eingerichtet, wobei der durch den Ausgangsvektor des aktuellen Schritts repräsentierte Ankerpunkt als die Startposition in dem nächsten Schritt zugeführt wird.
  • In dieser Ausführungsform können mit dem neuronalen Netzwerk vorteilhaft Trajektorien mit mehr als einem Ankerpunkt geplant werden. Beispielsweise kann vorgesehen sein, dass das neuronale Netzwerk, wenn es nicht mit ausreichend hoher Konfidenz einen Ankerpunkt ermittelt, zunächst einen Ankerpunkt ermittelt, von dem aus der Zielposition leichter erreichbar ist. Zum Beispiel kann vorgesehen sein, einen Abstand zwischen Startposition und Zielposition zu reduzieren und/oder eine Orientierung des Fahrzeugs anzupassen.
  • Der ermittelte Ankerpunkt wird gespeichert und dient als neue Startposition in dem nächsten Schritt. Die Ausgabe des neuronalen Netzwerks umfasst in diesem Ausführungsbeispiel insbesondere eine Liste von Ankerpunkten.
  • In Ausführungsformen kann vorgesehen sein, dass das neuronale Netzwerk einen bestimmten maximalen Abstand zwischen der Startposition und dem ermittelten Ankerpunkt nicht überschreitet, beispielsweise 10 cm oder 50 cm. Auf diese Weise kann eine Liste von Ankerpunkten ermittelt werden, die schrittweise von der Startposition zu der Zielposition führen.
  • Bei sehr kurzer Schrittweite, beispielsweise unter 20 cm, vorzugsweise etwa 1 cm, kann man sagen, dass das neuronale Netzwerk die komplette Trajektorie selbst ermittelt.
  • Wenn das neuronale Netzwerk zum Ermitteln mehrerer Ankerpunkte trainiert wird, werden vorzugsweise Trainingsszenarien verwendet, die zwingend mehrere Ankerpunkte benötigen. Während des Trainings kann vorgesehen sein, dass das neuronale Netzwerk nach dem Ermitteln eines jeden Ankerpunkts optimiert wird, oder aber erst nachdem mehrere Ankerpunkte ermittelt wurden.
  • Gemäß einem zweiten Aspekt wird ein Computerprogrammprodukt vorgeschlagen. Das Computerprogrammprodukt umfasst Befehle, die bei der Ausführung des Programms durch einen Computer diesen veranlassen, das Verfahren gemäß dem ersten Aspekt auszuführen.
  • Ein Computerprogrammprodukt, wie z.B. ein Computerprogramm-Mittel, kann beispielsweise als Speichermedium, wie z.B. Speicherkarte, USB-Stick, CD-ROM, DVD, oder auch in Form einer herunterladbaren Datei von einem Server in einem Netzwerk bereitgestellt oder geliefert werden. Dies kann zum Beispiel in einem drahtlosen Kommunikationsnetzwerk durch die Übertragung einer entsprechenden Datei mit dem Computerprogrammprodukt oder dem Computerprogramm-Mittel erfolgen.
  • Gemäß einem dritten Aspekt wird ein Parkassistenzsystem für ein Fahrzeug vorgeschlagen, welches zum Ermitteln einer Trajektorie für das Fahrzeug eingerichtet ist. Das Parkassistenzsystem umfasst eine Empfangseinheit zum Empfangen einer eine Umgebung des Fahrzeugs repräsentierende digitale Umgebungskarte, ein in einer Trainingsphase trainiertes neuronales Netzwerk zum Ermitteln wenigstens eines Ankerpunktes für die Trajektorie für das Fahrzeug, die eine Startposition des Fahrzeugs mit einer Zielposition für das Fahrzeug verbindet, unter Verwendung der digitalen Umgebungskarte, der Startposition und der Zielposition, eine Ermittlungseinheit zum Ermitteln der Trajektorie umfassend die Startposition, den wenigstens einen Ankerpunkt und die Zielposition, und eine Ausgabeeinheit zum Ausgeben der ermittelten Trajektorie. Die Trainingsphase des neuronalen Netzwerks umfasst die folgenden Schritte:
    • automatisches Erzeugen einer Mehrzahl unterschiedlicher Trainingsszenarien in Abhängigkeit einer Anzahl vorgegebener Parameter, wobei ein jeweiliges Trainingsszenario eine digitale Umgebungskarte mit einer Startposition und einer Zielposition umfasst, und wobei für jedes Trainingsszenario der Mehrzahl die folgenden Schritte durchgeführt werden:
    • Eingeben des Trainingsszenarios als Eingangsvektor in das neuronale Netzwerk,
    • Ermitteln eines Ausgabevektors des neuronalen Netzwerks, wobei der Ausgabevektor eine Repräsentation des wenigstens einen Ankerpunktes umfasst,
    • Berechnen eines Werts einer Kostenfunktion in Abhängigkeit des Ausgabevektors, und
    • Optimieren des neuronalen Netzwerks in Abhängigkeit des berechneten Werts.
  • Die für das vorgeschlagene Verfahren beschriebenen Ausführungsformen und Merkmale gelten für das vorgeschlagene Parkassistenzsystem entsprechend. Das Parkassistenzsystem weist die gleichen Vorteile auf, wie anhand des Verfahrens beschrieben.
  • Die jeweilige Einheit des Parkassistenzsystems kann hardwaretechnisch und/oder softwaretechnisch implementiert sein. Bei einer hardwaretechnischen Implementierung kann die jeweilige Einheit zum Beispiel als Computer oder als Mikroprozessor ausgebildet sein. Bei einer softwaretechnischen Implementierung kann die jeweilige Einheit als Computerprogrammprodukt, als eine Funktion, als eine Routine, als ein Algorithmus, als Teil eines Programmcodes oder als ausführbares Objekt ausgebildet sein. Ferner kann jede der vorliegend genannten Einheiten auch als Teil eines übergeordneten Steuerungssystems des Fahrzeugs, wie beispielsweise einer zentralen elektronischen Steuereinrichtung und/oder einem Motorsteuergerät (ECU: Engine Control Unit), ausgebildet sein.
  • Gemäß einem vierten Aspekt wird ein Fahrzeug mit wenigstens einem Umgebungssensor zum Erfassen einer Umgebung des Fahrzeugs und zum Ausgeben eines für eine Umgebung des Fahrzeugs indikativen Umgebungssensorsignals, mit einer Verarbeitungseinheit zum Ermitteln einer digitalen Umgebungskarte in Abhängigkeit des Umgebungssensorsignals und mit einem Parkassistenzsystem gemäß dem dritten Aspekt vorgeschlagen.
  • Weitere mögliche Implementierungen der Erfindung umfassen auch nicht explizit genannte Kombinationen von zuvor oder im Folgenden bezüglich der Ausführungsbeispiele beschriebenen Merkmale oder Ausführungsformen. Dabei wird der Fachmann auch Einzelaspekte als Verbesserungen oder Ergänzungen zu der jeweiligen Grundform der Erfindung hinzufügen.
  • Weitere vorteilhafte Ausgestaltungen und Aspekte der Erfindung sind Gegenstand der Unteransprüche sowie der im Folgenden beschriebenen Ausführungsbeispiele der Erfindung. Im Weiteren wird die Erfindung anhand von bevorzugten Ausführungsformen unter Bezugnahme auf die beigelegten Figuren näher erläutert.
    • 1 zeigt eine schematische Ansicht eines Fahrzeugs aus einer Vogelperspektive;
    • 2 zeigt schematisch ein erstes Beispiel für das Ermitteln eines Ankerpunkts und einer Trajektorie in einer digitalen Umgebungskarte;
    • 3 zeigt schematisch ein zweites Beispiel für das Ermitteln eines Ankerpunkts und einer Trajektorie in einer digitalen Umgebungskarte;
    • 4 zeigt schematisch drei automatisch erzeugte unterschiedliche Trainingsszenarien;
    • 5 zeigt schematisch das Erzeugen von zufälligen Ankerpunkten in einer Umgebung;
    • 6 zeigt ein schematisches Blockschaltbild eines beispielhaften Verfahrens zum Betreiben eines Fahrzeugs mit einem Parkassistenzsystem und eines Trainingsverfahrens;
    • 7 zeigt ein schematisches Blockschaltbild eines Ausführungsbeispiels eines Parkassistenzsystems, und
    • 8 zeigt ein schematisches Blockschaltbild eines Ermittelns eines Ankerpunkts durch ein neuronales Netzwerk.
  • In den Figuren sind gleiche oder funktionsgleiche Elemente mit denselben Bezugszeichen versehen worden, sofern nichts anderes angegeben ist.
  • 1 zeigt eine schematische Ansicht eines Fahrzeugs 100 aus einer Vogelperspektive. Das Fahrzeug 100 ist beispielsweise ein Auto, das in einer Umgebung 200 angeordnet ist. Das Auto 100 weist eine Verarbeitungseinheit 105 und ein Parkassistenzsystem 110 auf. Die Verarbeitungseinheit 105 ist beispielsweise als ein Steuergerät für das Fahrzeug 100 ausgebildet. Obwohl in der 1 getrennt dargestellt, kann das Parkassistenzsystem 110 ein Bestandteil der Verarbeitungseinheit 105 sein und/oder das Parkassistenzsystem 110 und die Verarbeitungseinheit 105 sind gemeinsam in einem integrierten Schaltkreis integriert und/oder Teilen sich eine oder mehrere Ressourcen, wie eine CPU, ein Arbeitsspeicher und dergleichen mehr. Zudem sind an dem Auto 100 eine Mehrzahl an Umgebungssensoreinrichtungen 120, 130 angeordnet, wobei es sich beispielhaft um optische Sensoren 120 und Ultraschallsensoren 130 handelt. Die optischen Sensoren 120 umfassen beispielsweise visuelle Kameras, ein Radar und/oder ein Lidar. Die optischen Sensoren 120 können jeweils ein Bild eines jeweiligen Bereichs aus der Umgebung des Autos 100 erfassen und als optisches Sensorsignal ausgeben. Die Ultraschallsensoren 130 sind zum Erfassen eines Abstands zu in der Umgebung 200 angeordneten Objekten und zum Ausgeben eines entsprechenden Sensorsignals eingerichtet. Mittels den von den Sensoren 120, 130 ausgegebenen Umgebungssensorsignalen ist die Verarbeitungseinheit 105 in der Lage, eine digitale Umgebungskarte 200 (siehe 2, 3 oder 5) für das Auto 100 zu ermitteln. Außer den in der 1 dargestellten optischen Sensoren 120 und Ultraschallsensoren 130 kann vorgesehen sein, dass das Fahrzeug 100 verschiedene weitere Sensoreinrichtungen 120, 130 aufweist. Beispiele hierfür sind ein Mikrofon, ein Beschleunigungssensor, eine Antenne mit gekoppeltem Empfänger zum Empfangen von elektromagnetisch übertragbarer Datensignale, und dergleichen mehr.
  • Das Parkassistenzsystem 110 ist beispielsweise wie anhand der 7 beschrieben ausgebildet. Insbesondere ist das Parkassistenzsystem 110 zum Durchführen des anhand der 6 beschriebenen Verfahrens eingerichtet.
  • 2 zeigt schematisch ein erstes Beispiel für das Ermitteln eines Ankerpunkts 230 und einer Trajektorie TR in einer digitalen Umgebungskarte 200 durch ein Parkassistenzsystem 110 (siehe 1). Die digitale Umgebungskarte 200 kann als eine digitale Repräsentation einer wirklichen Umgebung verstanden werden, die auf Basis eines erfassten Umgebungssensorsignals, wie anhand der 1 erläutert, ermittelt wurde. Die digitale Umgebungskarte wird beispielsweise durch die Verarbeitungseinheit 105 (siehe 1) mittels Sensorfusion ermittelt. Die digitale Umgebungskarte 200 weist eine Anzahl von Hindernissen 201 auf, beispielsweise handelt es sich hierbei um andere Autos. Die digitale Umgebungskarte 200 umfasst zudem eine Startposition 210 des Fahrzeugs 100, die der aktuellen Position des Fahrzeugs 100 entspricht, sowie eine Zielposition 220 für das Fahrzeug 100, die der gewünschten Parkposition entspricht. Es sei angemerkt, dass die Zielposition 220 nicht unbedingt Bestandteil der digitalen Umgebungskarte 200 ist, sondern beispielsweise von dem Parkassistenzsystem 110 selbsttätig ausgewählt und/oder ermittelt wird, oder es kann eine Benutzerauswahl oder Vorgabe der Zielposition 220 erfolgen.
  • Die linke Seite der 2 stellt die digitale Umgebungskarte 200 dar, wie sie dem trainierten neuronalen Netzwerk 113 (siehe 7) zur Ermittlung eines Ankerpunkts 230 zugeführt oder bereitgestellt wird. Das trainierte neuronale Netzwerk 113 ermittelt den Ankerpunkt 230, der zwei Ortskoordinaten, beispielsweise eine Abzisse und eine Ordinate, sowie eine Orientierungskoordinate, beispielsweise einen Winkel, umfasst. Die Koordinaten beziehen sich hierbei auf ein vorbestimmtes Bezugssystem, beispielsweise ein mit dem Fahrzeug 100 gekoppeltes Koordinatensystem.
  • Der ermittelte Ankerpunkt 230 wird zum Ermitteln einer Trajektorie TR verwendet, wie in der rechten Abbildung der 2 dargestellt. Die Trajektorie TR beginnt an der Startposition 210 des Fahrzeugs 100, verläuft zu dem Ankerpunkt 230 und dann von dem Ankerpunkt 230 zu der Zielposition 220. Bei dem Ankerpunkt 230 ändert sich in diesem Beispiel die Fahrtrichtung, was jedoch nicht immer der Fall sein muss.
  • Das Parkassistenzsystem 110 kann beispielsweise die ermittelte Trajektorie TR an die Verarbeitungseinheit 105 ausgeben, welche zum Veranlassen des Fahrens des Fahrzeugs 100 entlang der Trajektorie TR eingerichtet sein kann. Damit kann das Fahrzeug voll- oder teilautonom zwischen die beiden Hindernisse 201 eingeparkt werden.
  • 3 zeigt schematisch ein zweites Beispiel für das Ermitteln eines Ankerpunkts 230 und einer Trajektorie TR in einer digitalen Umgebungskarte 200. In der 3 ist nur das Ergebnis des Ermittelns dargestellt. In dem Beispiel der 3 sind die Hindernisse 201 so angeordnet, dass ein Einparken mit nur einem Fahrtrichtungswechsel, wie anhand der 2 dargestellt, nicht möglich ist. In diesem Beispiel wurden drei Ankerpunkte 230, 231, 232 ermittelt, wobei jeder Ankerpunkt 230, 231, 232 einen Fahrtrichtungswechsel markiert. Insbesondere wegen des geringen Abstands des gegenüber der Zielposition 220 angeordneten länglichen Hindernisses 201 ist ein ausreichend weites Ausholen vor dem Einparken unmöglich. Die ermittelte Trajektorie TR umfasst in diesem Beispiel daher insgesamt vier Züge.
  • 4 zeigt schematisch drei automatisch erzeugte unterschiedliche Trainingsszenarien 300, 301, 302. Ein jeweiliges Trainingsszenario 300, 301, 302 umfasst eine Anzahl von Hindernissen 201, wobei unterschiedliche Hindernisse 201 an unterschiedlichen Positionen und mit unterschiedlichen Maßen (Länge und Breite) angeordnet sind, sowie eine Startposition 210 und eine Zielposition 220. In dem Beispiel der 4 weisen alle Hindernisse eine rechteckige Form auf, dies ist jedoch nicht beschränkend zu verstehen. Weitere Trainingsszenarien 300, 301, 302 können Hindernisse 201 mit beliebigen Formen aufweisen, beispielsweise kreisrund, elliptisch, dreieckig, fünfeckig, geschwungen, wellenförmig und so weiter. Weitere Parameter, die in unterschiedlichen Trainingsszenarien 300, 301, 302 unterschiedliche Parameterwerte aufweisen können, umfassen einen Abstand von der Startposition 210 zu der Zielposition 220, eine relative Orientierung der Startposition 210 zu der Zielposition 220, eine Orientierung der Zielposition 220 relativ zu einem Verkehrsmerkmal, eine Anzahl von Hindernissen 201, eine Größe eines jeweiligen Hindernisses 201, eine Orientierung eines jeweiligen Hindernisses 201, einen Abstand eines jeweiligen Hindernisses 201 von der Startposition 210 und/oder einen Abstand eines jeweiligen Hindernisses 201 von der Zielposition 220
  • Das erste Trainingsszenario 300 umfasst fünf Hindernisse 201, die in diesem Beispiel alle gleich groß sind und beispielsweise die Maße eines durchschnittlichen Autos aufweisen. Die Zielposition 220 entspricht einem Boxparkplatz (Queraufstellung des Fahrzeugs) zwischen zwei Autos 201. Das Szenario entspricht beispielsweise einer Situation, bei der auf einer Straßenseite Parkplätze für Längsaufstellung angeordnet sind und auf der anderen Straßenseite Parkplätze für Queraufstellung angeordnet sind.
  • Das zweite Trainingsszenario 301 weist nur vier Hindernisse 201 auf, wobei eines davon aber deutlich länger ist als die anderen. Im Vergleich zu dem ersten Szenario 300 wurden daher mindestens zwei Parameterwert geändert: die Anzahl an Hindernissen 201 sowie die Maße des einen Hindernisses 201.
  • Das dritte Trainingsszenario 302 stellt eine komplett unterschiedliche Situation dar, wobei nur drei Hindernisse 201 vorhanden sind. Aber auch die Parksituation ist verändert, anstelle von Parkplätzen mit Queraufstellung liegen nun Parkplätze mit Längsaufstellung vor, in die eingeparkt werden soll. Zudem sind auf der gegenüberliegenden Straßenseite keine Parkplätze, sondern ein längliches Hindernis 201, wie beispielsweise eine Mauer, angeordnet.
  • Die beschriebenen Trainingsszenarien 300, 301, 302 wurden automatisch erzeugt, indem den vorgegebenen Parametern jeweils ein Parameterwert zugeordnet wurde. Man kann auch sagen, dass ein jeweiliges Trainingsszenario 300, 301, 302 durch einen Satz an Parameterwerten festgelegt oder charakterisiert ist. Bevorzugt weist jeder der Parameter einen zugeordneten Wertebereich auf, aus dem der Parameterwert ausgewählt wird. Durch gezieltes Einstellen oder Begrenzen des Wertebereichs für einen jeweiligen Parameter kann beispielsweise die Komplexität der erzeugten Trainingsszenarien 300, 301, 302 gezielt gesteuert werden. Auf diese Weise kann ein Trainingsdatensatz mit zunehmend komplexeren Trainingsszenarien 300, 301, 302 erzeugt werden, was bei dem Training des neuronalen Netzwerks 113 (siehe 7 oder 8) hilfreich sein kann. Unterschiedliche Trainingsszenarien 300, 301, 302 werden erzeugt, indem wenigsten einem vorgegebenen Parameter ein unterschiedlicher Parameterwert zugeordnet wird. Ein Trainingsdatensatz zum vollständigen Trainieren des neuronalen Netzwerks 113 umfasst vorzugsweise wenigstens 10.000 unterschiedliche Trainingsszenarien, bevorzugt wenigstens 100.000 unterschiedliche Trainingsszenarien, weiter bevorzugt über 1.000.000 unterschiedliche Trainingsszenarien.
  • 5 zeigt schematisch das Erzeugen von Zufalls-Ankerpunkten R - R8 in einem Trainingsszenario 300. Die zufällig erzeugten Zufalls-Ankerpunkte R1 - R8 weisen jeweils eine bestimmte Position sowie eine Orientierung auf, die jeweils durch einen Pfeil dargestellt ist. Auf Basis der Zufalls-Ankerpunkte R1 - R8 kann beispielsweise jeweils eine Trajektorie TR (siehe 2 und 3) ermittelt werden, die die Startposition 210 mit der Zielposition 220 verbindet und über den jeweiligen Zufalls-Ankerpunkt R1 - R8 verläuft. Die resultierende Trajektorie TR kann anhand einer Bewertungsfunktion bewertet werden. Die Trajektorie TR mit der besten Bewertung wird beispielsweise als optimale Trajektorie bezeichnet, und der entsprechende Ankerpunkt wird als optimaler Ankerpunkt für das Trainingsszenario gespeichert. Auf Basis derart ermittelter optimaler Ankerpunkte für eine Vielzahl von Trainingsszenarien kann das neuronale Netzwerk 113 (siehe 7 oder 8) in einem überwachten Lernverfahren trainiert werden.
  • 6 zeigt ein schematisches Blockschaltbild eines beispielhaften Verfahrens zum Betreiben eines Fahrzeugs 100 (siehe 1 - 3) mit einem Parkassistenzsystem 110 (siehe 1 oder 7). In einem ersten Schritt S1 wird eine eine Umgebung des Fahrzeugs 100 repräsentierende digitale Umgebungskarte 200 (siehe 2 oder 3) empfangen. In einem zweiten Schritt S2 wird wenigstens ein Ankerpunkt 230 (siehe 2 - 4) für eine Trajektorie TR (siehe 2 oder 3) für das Fahrzeug 100 ermittelt. Die Trajektorie TR verbindet eine Startposition 210 des Fahrzeugs 100 mit einer Zielposition 220 für das Fahrzeug 100. Das Ermitteln erfolgt mittels eines in einer vorausgehenden Trainingsphase (Schritte S30 - S36) trainierten neuronalen Netzwerks 113 (siehe 7 oder 8) unter Verwendung der digitalen Umgebungskarte 200, der Startposition 210 und der Zielposition 220. In einem dritten Schritt S3 wird die Trajektorie TR umfassend die Startposition 210, den wenigstens einen Ankerpunkt 230 und die Zielposition 220 ermittelt. In einem vierten Schritt S4 wird die ermittelte Trajektorie TR ausgegeben. Alternativ kann der vierte Schritt S4 das Veranlassen des Fahrens des Fahrzeugs 100 entlang der Trajektorie TR umfassen.
  • Bevor das neuronale Netzwerk 113 zum Ermitteln von Ankerpunkten 230 eingerichtet ist, muss es anhand von geeigneten Trainingsdaten in einer Trainingsphase trainiert werden. Die Trainingsphase des neuronalen Netzwerks 113 beginnt mit Schritt S30. Schritt S30 kann als Startpunkt des Trainings verstanden werden, wobei beispielsweise eine Topologie des neuronalen Netzwerks 113 festgelegt wird. Ein erster Schritt S31 umfasst das automatische Erzeugen einer Mehrzahl unterschiedlicher Trainingsszenarien 300, 301, 302 (siehe 4 oder 5) in Abhängigkeit einer Anzahl vorgegebener Parameter, wobei ein jeweiliges Trainingsszenario 300, 301, 302 eine digitale Umgebungskarte 200 mit einer Startposition 210 und einer Zielposition 220 umfasst. Für ein erfolgreiches Trainieren des neuronalen Netzwerks 113 wird bevorzugt eine große Anzahl an geeigneten und unterschiedlichen Trainingsszenarien 300, 301, 302 bereitgestellt.
  • Für jedes Trainingsszenario 300, 301, 302 der Mehrzahl werden die folgenden Schritte durchgeführt: Das Trainingsszenario 300, 301, 302 wird als Eingangsvektor EV (siehe 8) in das neuronale Netzwerk 113 eingegeben S32. Es wird ein Ausgabevektor AV (siehe 8) des neuronalen Netzwerks 113 in Abhängigkeit des Eingangsvektors EV ermittelt S33, wobei der Ausgabevektor AV eine Repräsentation des wenigstens einen Ankerpunktes 230 umfasst. Anschließend wird ein Wert einer Kostenfunktion in Abhängigkeit des Ausgabevektors AV berechnet S34. Zuletzt wird das neuronale Netzwerk 113 in Abhängigkeit des berechneten Werts optimiert S35. Die Schritte S32 - S35 können dabei für ein bestimmtes Trainingsszenario 300, 301, 302 mehrfach wiederholt werden, beispielsweise bis der Wert der Kostenfunktion einen bestimmten Schwellwert unterschreitet. Anschließend kann das neuronale Netzwerk 113 in das Parkassistenzsystem 110 integriert oder implementiert werden.
  • Optional kann das neuronale Netzwerk 113, bevor es in das Parkassistenzsystem 110 integriert wird, anhand von Testszenarien getestet werden (nicht dargestellt). Ein Testszenario entspricht dabei beispielsweise einem Trainingsszenario, wobei jedoch kein Optimieren des neuronalen Netzwerks 113 stattfindet. Auf diese Weise lässt sich testen, ob das neuronale Netzwerk 113 einen ausreichenden Wissensstand erreicht hat. Falls dies nicht der Fall ist, kann das Training mit weiteren generierten Trainingsszenarien fortgesetzt werden.
  • 7 zeigt ein schematisches Blockschaltbild eines Ausführungsbeispiels eines Parkassistenzsystems 110. Das Parkassistenzsystem 110 umfasst eine Empfangseinheit 111 zum Empfangen einer eine Umgebung des Fahrzeugs 100 (siehe 1 - 3) repräsentierende digitale Umgebungskarte 200 (siehe 2, 3 oder 5), ein in einer Trainingsphase S30 - S36 (siehe 6) trainiertes neuronales Netzwerk 113 zum Ermitteln wenigstens eines Ankerpunktes 230 (siehe 2, 3 oder 5) für eine Trajektorie TR (siehe 2 oder 3) für das Fahrzeug 100, die eine Startposition 210 (siehe 2 - 5) des Fahrzeugs 100 mit einer Zielposition 220 (siehe 2 - 5) für das Fahrzeug 100 verbindet, unter Verwendung der digitalen Umgebungskarte 200, der Startposition 210 und der Zielposition 220, eine Ermittlungseinheit 114 zum Ermitteln der Trajektorie TR umfassend die Startposition 210, den wenigstens einen Ankerpunkt 230 und die Zielposition 220, und eine Ausgabeeinheit 115 zum Ausgeben der ermittelten Trajektorie TR.
  • 8 zeigt ein schematisches Blockschaltbild eines Ermittelns eines Ankerpunkts 230 (siehe 2, 3 oder 5) durch ein neuronales Netzwerk 113. Dem neuronalen Netzwerk 113 wird ein Eingangsvektor EV eingegeben, der eine Repräsentation einer digitalen Umgebungskarte 200 (siehe 2 oder 3) mit einer Startposition 210 (siehe 2 - 5) und einer Zielposition 220 (siehe 2 - 5) umfasst. In der Trainingsphase des neuronalen Netzwerks 113 umfasst der Eingangsvektor EV eine Repräsentation eines Trainingsszenario 300, 301, 302 (siehe 4 oder 5).
  • Die Neuronen der Eingabeschicht nehmen die in dem Eingangsvektor EV enthaltenen Informationen auf und geben diese gewichtet an die Neuronen der ersten verborgenen Schicht weiter. Die Neuronen der ersten verborgenen Schicht nehmen die gewichteten Signale von der Eingangsschicht auf und geben diese ihrerseits gewichtet an die folgende verborgene Schicht weiter. Die Signale werden auf diese Weise von Schicht zu Schicht durch das neuronale Netzwerk geleitet, bis die Ausgabeschicht erreicht ist. An den Neuronen der Ausgabeschicht wird der Ausgabevektor AV abgegriffen. Der Ausgabevektor AV umfasst insbesondere eine Repräsentation eines Ankerpunkts 230, mit dem eine Trajektorie TR (siehe 2 oder 3) ermittelt werden kann.
  • Obwohl die vorliegende Erfindung anhand von Ausführungsbeispielen beschrieben wurde, ist sie vielfältig modifizierbar.
  • Bezugszeichenliste
  • 100
    Fahrzeug
    105
    Verarbeitungseinheit
    110
    Parkassistenzsystem
    111
    Empfangseinheit
    113
    neuronales Netzwerk
    114
    Ermittlungseinheit
    115
    Ausgabeeinheit
    120
    Sensor
    130
    Sensor
    200
    digitale Umgebungskarte
    201
    Hindernis
    210
    Startpunkt
    220
    Zielpunkt
    230
    Ankerpunkt
    231
    Ankerpunkt
    232
    Ankerpunkt
    300
    Trainingsszenario
    301
    Trainingsszenario
    302
    Trainingsszenario
    AV
    Ausgabevektor
    EV
    Eingangsvektor
    R1
    Zufalls-Ankerpunkt
    R2
    Zufalls-Ankerpunkt
    R3
    Zufalls-Ankerpunkt
    R4
    Zufalls-Ankerpunkt
    R5
    Zufalls-Ankerpunkt
    R6
    Zufalls-Ankerpunkt
    R7
    Zufalls-Ankerpunkt
    R8
    Zufalls-Ankerpunkt
    S1
    Verfahrensschritt
    S2
    Verfahrensschritt
    S3
    Verfahrensschritt
    S4
    Verfahrensschritt
    S5
    Verfahrensschritt
    S30
    Verfahrensschritt
    S31
    Verfahrensschritt
    S32
    Verfahrensschritt
    S33
    Verfahrensschritt
    S34
    Verfahrensschritt
    S35
    Verfahrensschritt
    S36
    Verfahrensschritt
    TR
    Trajektorie
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • CN 109131317 A [0004]

Claims (15)

  1. Verfahren zum Ermitteln einer Trajektorie (TR) für ein Fahrzeug (100), mit: Empfangen (S1) einer eine Umgebung des Fahrzeugs (100) repräsentierende digitale Umgebungskarte (200), Ermitteln (S2) wenigstens eines Ankerpunktes (230) für die Trajektorie (TR) für das Fahrzeug (100), die eine Startposition (210) des Fahrzeugs (100) mit einer Zielposition (220) für das Fahrzeug (100) verbindet, mittels eines in einer Trainingsphase (S30 - S36) trainierten neuronalen Netzwerks (113) unter Verwendung der digitalen Umgebungskarte (200), der Startposition (210) und der Zielposition (220), Ermitteln (S3) der Trajektorie (TR) umfassend die Startposition (210), den wenigstens einen Ankerpunkt (230) und die Zielposition (220), und Ausgeben (S4) der ermittelten Trajektorie (TR), wobei die Trainingsphase (S30 - S36) des neuronalen Netzwerks (113) umfasst: automatisches Erzeugen (S31) einer Mehrzahl unterschiedlicher Trainingsszenarien (300, 301, 302) in Abhängigkeit einer Anzahl vorgegebener Parameter, wobei ein jeweiliges Trainingsszenario (300, 301, 302) eine digitale Umgebungskarte (200) mit einer Startposition (210) und einer Zielposition (220) umfasst, und wobei für jedes Trainingsszenario (300, 301, 302) der Mehrzahl die folgenden Schritte durchgeführt werden: Eingeben (S32) des Trainingsszenarios (300, 301, 302) als Eingangsvektor (EV) in das neuronale Netzwerk (113), Ermitteln (S33) eines Ausgabevektors (AV) des neuronalen Netzwerks (113) in Abhängigkeit des Eingangsvektors (EV), wobei der Ausgabevektor (AV) eine Repräsentation des wenigstens einen Ankerpunktes (230) umfasst, Berechnen (S34) eines Werts einer Kostenfunktion in Abhängigkeit des Ausgabevektors (AV), und Optimieren (S35) des neuronalen Netzwerks (113) in Abhängigkeit des berechneten Werts.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Anzahl von vorgegebenen Parametern zum Erzeugen der Trainingsszenarien (300, 301, 302) einen Abstand von der Startposition (210) zu der Zielposition (220), eine relative Orientierung der Startposition (210) zu der Zielposition (220), eine Orientierung der Zielposition (220) relativ zu einem Verkehrsmerkmal, eine Anzahl von Hindernissen (201), eine Größe eines jeweiligen Hindernisses (201), eine Orientierung eines jeweiligen Hindernisses (201), einen Abstand eines jeweiligen Hindernisses (201) von der Startposition (210) und/oder einen Abstand eines jeweiligen Hindernisses (201) von der Zielposition (220) umfasst, wobei ein Parameterwert eines jeweiligen vorgegebenen Parameters bei dem Erzeugen eines Trainingsszenarios (300, 301, 302) aus einem dem vorgegebenen Parameter zugeordneten Wertebereich ausgewählt wird.
  3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass der Parameterwert wenigstens eines vorgegebenen Parameters fest vorgegeben ist.
  4. Verfahren nach Anspruch 2 oder 3, dadurch gekennzeichnet, dass das automatische Erzeugen der Mehrzahl von unterschiedlichen Trainingsszenarien (300, 301, 302) umfasst: Ermitteln eines ersten Satzes von Parameterwerten, wobei jedem vorgegebenen Parameter ein Parameterwert aus dem zugeordneten Wertebereich zugeordnet wird, Erzeugen eines ersten Trainingsszenarios (300, 301, 302) auf Basis des ermittelten ersten Satzes, Ermitteln eines zweiten Satzes von Parameterwerten, wobei wenigstens ein Parameterwert des zweiten Satzes im Vergleich zu dem ersten Satz variiert ist, und Erzeugen eines zweiten Trainingsszenarios (300, 301, 302) auf Basis des ermittelten zweiten Satzes.
  5. Verfahren nach einem der Ansprüche 2-4, dadurch gekennzeichnet, dass der Parameterwert eines jeweiligen vorgegebenen Parameters in Abhängigkeit einer für den jeweiligen vorgegebenen Parameter vorgegebenen Häufigkeitsverteilung auf dem zugeordneten Wertebereich ausgewählt wird.
  6. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Parameterwerte von wenigstens zwei vorgegebenen Parametern mittels einer vorgegebenen Funktion gekoppelt sind.
  7. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Berechnen der Kostenfunktion ein Ermitteln einer Trajektorie (TR) auf Basis des durch den Ausgangsvektor (AV) des neuronalen Netzwerks repräsentierten wenigstens einen Ankerpunktes (230) umfasst.
  8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, dass die Kostenfunktion eine Anzahl vorgegebener Kostenparameter umfassend eine Länge der ermittelten Trajektorie (TR), einen maximalen Lenkwinkel entlang der Trajektorie (TR), einen minimalen Abstand zu einem Hindernis (201), einen mittlerer Abstand zu einem Hindernis (201) entlang eines Teilstücks der Trajektorie (TR), einen Abstand des wenigstens einen Ankerpunkts (230) von der Startposition (210) und/oder von der Zielposition (220), eine Menge von Ankerpunkten (230), einen Abstand des Fahrzeugs (100) von einem Hindernis (201) in der Zielposition (220) und/oder eine Orientierung des Fahrzeugs (100) relativ zu einem Hindernis (201) in der Zielposition (220) umfasst.
  9. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das neuronale Netzwerk (113) ein Mehr-Schicht-Perzeptron mit mindestens zwei verborgenen Schichten und höchstens 20 verborgenen Schichten umfasst.
  10. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass für jedes Trainingsszenario (300, 301, 302) der Mehrzahl mittels eines Brute-Force-Verfahrens ein optimaler Ankerpunkt (230) ermittelt wird, der in einem überwachten Lernverfahren zum Berechnen des Werts der Kostenfunktion verwendet wird, wobei das Brute-Force-Verfahren umfasst: Stochastisches Ermitteln einer Mehrzahl von Zufalls-Ankerpunkten (R1 - R8) für das Trainingsszenario (300, 301, 302), und Ermitteln des optimalen Ankerpunkts (230) der Mehrzahl in Abhängigkeit einer Bewertungsfunktion.
  11. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Optimieren des neuronalen Netzwerks (113) auf Basis eines Adam-Optimierungsalgorithmus erfolgt.
  12. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das neuronale Netzwerk (113) zum rekursiven Ermitteln einer Abfolge von Ankerpunkten (230, 231, 232) eingerichtet ist, wobei der durch den Ausgangsvektor (AV) des aktuellen Schritts repräsentierte Ankerpunkt (230, 231, 232) als die Startposition (210) in dem nächsten Schritt zugeführt wird.
  13. Computerprogrammprodukt, umfassend Befehle, die bei der Ausführung des Programms durch einen Computer diesen veranlassen, das Verfahren nach einem der Ansprüche 1-12 auszuführen.
  14. Parkassistenzsystem (110) für ein Fahrzeug (100), welches zum Ermitteln einer Trajektorie (TR) für das Fahrzeug (100) eingerichtet ist, mit: einer Empfangseinheit (111) zum Empfangen einer eine Umgebung des Fahrzeugs (100) repräsentierende digitale Umgebungskarte (200), einem in einer Trainingsphase (S30 - S36) trainierten neuronalen Netzwerk (113) zum Ermitteln wenigstens eines Ankerpunktes (230) für die Trajektorie (TR) für das Fahrzeug (100), die eine Startposition (210) des Fahrzeugs (100) mit einer Zielposition (220) für das Fahrzeug (100) verbindet, unter Verwendung der digitalen Umgebungskarte (200), der Startposition (210) und der Zielposition (220), einer Ermittlungseinheit (114) zum Ermitteln der Trajektorie (TR) umfassend die Startposition (210), den wenigstens einen Ankerpunkt (230) und die Zielposition (220), und einer Ausgabeeinheit (115) zum Ausgeben der ermittelten Trajektorie (TR), wobei die Trainingsphase (S30 - S36) des neuronalen Netzwerks (113) umfasst: automatisches Erzeugen (S31) einer Mehrzahl unterschiedlicher Trainingsszenarien (300, 301, 302) in Abhängigkeit einer Anzahl vorgegebener Parameter, wobei ein jeweiliges Trainingsszenario (300, 301, 302) eine digitale Umgebungskarte (200) mit einer Startposition (210) und einer Zielposition (220) umfasst, und wobei für jedes Trainingsszenario (300, 301, 302) der Mehrzahl die folgenden Schritte durchgeführt werden: Eingeben (S32) des Trainingsszenarios (300, 301, 302) als Eingangsvektor (EV) in das neuronale Netzwerk (113), Ermitteln (S33) eines Ausgabevektors (AV) des neuronalen Netzwerks (113) in Abhängigkeit des Eingangsvektors (EV), wobei der Ausgabevektor (AV) eine Repräsentation des wenigstens einen Ankerpunktes (230) umfasst, Berechnen (S34) eines Werts einer Kostenfunktion in Abhängigkeit des Ausgabevektors (AV), und Optimieren (S35) des neuronalen Netzwerks (113) in Abhängigkeit des berechneten Werts.
  15. Fahrzeug (100) mit wenigstens einem Umgebungssensor (120, 130) zum Erfassen einer Umgebung des Fahrzeugs (100) und zum Ausgeben eines für eine Umgebung des Fahrzeugs (100) indikativen Umgebungssensorsignals, mit einer Verarbeitungseinheit (105) zum Ermitteln einer digitalen Umgebungskarte (200) in Abhängigkeit des Umgebungssensorsignals und mit einem Parkassistenzsystem (110) nach Anspruch 14.
DE102020127216.2A 2020-10-15 2020-10-15 Verfahren zum Ermitteln einer Trajektorie für ein Fahrzeug, Computerprogrammprodukt, Parkassistenzsystem und Fahrzeug Pending DE102020127216A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102020127216.2A DE102020127216A1 (de) 2020-10-15 2020-10-15 Verfahren zum Ermitteln einer Trajektorie für ein Fahrzeug, Computerprogrammprodukt, Parkassistenzsystem und Fahrzeug

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102020127216.2A DE102020127216A1 (de) 2020-10-15 2020-10-15 Verfahren zum Ermitteln einer Trajektorie für ein Fahrzeug, Computerprogrammprodukt, Parkassistenzsystem und Fahrzeug

Publications (1)

Publication Number Publication Date
DE102020127216A1 true DE102020127216A1 (de) 2022-04-21

Family

ID=80929397

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020127216.2A Pending DE102020127216A1 (de) 2020-10-15 2020-10-15 Verfahren zum Ermitteln einer Trajektorie für ein Fahrzeug, Computerprogrammprodukt, Parkassistenzsystem und Fahrzeug

Country Status (1)

Country Link
DE (1) DE102020127216A1 (de)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180120843A1 (en) 2016-11-03 2018-05-03 Mitsubishi Electric Research Laboratories, Inc. System and Method for Controlling Vehicle Using Neural Network
CN109131317A (zh) 2018-07-23 2019-01-04 同济大学 基于多段式规划与机器学习的自动垂直泊车系统及方法
US20190384303A1 (en) 2018-06-19 2019-12-19 Nvidia Corporation Behavior-guided path planning in autonomous machine applications
EP3605385A1 (de) 2018-08-03 2020-02-05 Continental Automotive GmbH Automatisiertes parksystem

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180120843A1 (en) 2016-11-03 2018-05-03 Mitsubishi Electric Research Laboratories, Inc. System and Method for Controlling Vehicle Using Neural Network
US20190384303A1 (en) 2018-06-19 2019-12-19 Nvidia Corporation Behavior-guided path planning in autonomous machine applications
CN109131317A (zh) 2018-07-23 2019-01-04 同济大学 基于多段式规划与机器学习的自动垂直泊车系统及方法
EP3605385A1 (de) 2018-08-03 2020-02-05 Continental Automotive GmbH Automatisiertes parksystem

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CN 109 131 317 A (Maschinenübersetzung), EPO, Espacenet [online] [abgerufen am 11.11.2020]
Norm SAE J3016 2018-06-15. Taxonomy and definitions for terms related to driving automation systems for on-road motor vehicles. S. 1-35.

Similar Documents

Publication Publication Date Title
DE102019104974A1 (de) Verfahren sowie System zum Bestimmen eines Fahrmanövers
EP3695244B1 (de) Verfahren und vorrichtung zum erzeugen eines inversen sensormodells und verfahren zum erkennen von hindernissen
DE102016212326A1 (de) Verfahren zur Verarbeitung von Sensordaten für eine Position und/oder Orientierung eines Fahrzeugs
DE102017118801A1 (de) Kopilot zur Hindernisvermeidung in autonomen Fahrzeugen
DE102016215314A1 (de) Fahrerassistenzsystem, Fortbewegungsmittel und Verfahren zur Prädiktion einer Verkehrssituation
DE102021128041A1 (de) Verbesserung eines neuronalen fahrzeugnetzwerks
DE102017118702A1 (de) Co-Pilot für Trajektorieintegrität für autonome Fahrzeuge
DE102020131949A1 (de) System und verfahren zum erlernen einer fahrerpräferenz und zum anpassen einer spurzentrierungssteuerung an ein fahrerverhalten
DE102020128978A1 (de) Trainieren von tiefen neuronalen netzwerken mit synthetischen bildern
DE102018203058A1 (de) Kollisionsrisiko-Vorhersageeinheit
DE102021104178A1 (de) Dynamisch gerouteter felddiskriminator
DE102020124920A1 (de) Verfahren zum betreiben eines fahrassistenzsystems für ein fahrzeug, computerprogrammprodukt, fahrassistenzsystem und fahrzeug
DE102020117773A1 (de) Verfahren zum ermitteln einer ersatztrajektorie, computerprogrammprodukt, parkassistenzsystem und fahrzeug
DE102020129802A1 (de) Fahrzeugbetriebskennzeichnung
DE102023101951A1 (de) Fahrzeugsteuerung für optimierten betrieb
DE102020127216A1 (de) Verfahren zum Ermitteln einer Trajektorie für ein Fahrzeug, Computerprogrammprodukt, Parkassistenzsystem und Fahrzeug
DE102017217986A1 (de) Verfahren und vorrichtung zum vorhersagen potenzieller kollisionen, fahrerassistenzsystem und fahrzeug
DE102020128763A1 (de) Verfahren zum betreiben eines parkassistenzsystems, computerprogrammprodukt, parkassistenzsystem und fahrzeug
DE102020127253A1 (de) Quantifizieren von fotorealismus in simulierten daten mit gan
DE102020127051A1 (de) Verfahren zur Bestimmung von sicherheitskritischen Ausgabewerten mittels einer Datenanalyseeinrichtung für eine technische Entität
DE102019217586A1 (de) Bestimmung einer diskreten Repräsentation eines Fahrbahnabschnitts vor einem Fahrzeug
WO2021093955A1 (de) Bestimmung einer diskreten repräsentation eines fahrbahnabschnitts vor einem fahrzeug
DE102022203122B4 (de) Verfahren zum Ermitteln einer Bewegungstrajektorie für eine Steuerung einer Bewegung einer Maschine
WO2023046809A1 (de) Verfahren, computerprogrammprodukt, parkassistenzsystem und fahrzeug
DE102021129931A1 (de) Verfahren, computerprogrammprodukt, parkassistenzsystem und fahrzeug

Legal Events

Date Code Title Description
R163 Identified publications notified