-
TECHNISCHES GEBIET
-
Die vorliegende Offenbarung bezieht sich im Allgemeinen auf autonom fahrende Fahrzeuge und insbesondere auf Systeme und Verfahren für die Wegplanung in einem autonomen Fahrzeug.
-
HINTERGRUND
-
Ein autonomes Fahrzeug ist ein Fahrzeug, das in der Lage ist, seine Umgebung zu erfassen und mit geringfügiger oder gar keiner Benutzereingabe zu navigieren. Dies geschieht durch den Einsatz von Sensoren, wie beispielsweise Radar, Lidar, Bildsensoren und dergleichen. Autonome Fahrzeuge nutzen weiterhin Informationen von globalen Positioniersystemen (GPS), Navigationssystemen, Fahrzeug-Fahrzeug-Kommunikationen, Fahrzeug-Infrastruktur-Technologien und/oder drahtgesteuerten Systemen, um das Fahrzeug zu navigieren.
-
Während in den letzten Jahren signifikante Fortschritte bei autonomen Fahrzeugen erzielt wurden, könnten diese Fahrzeuge in einer Reihe von Aspekten noch verbessert werden. So ist es beispielsweise für ein autonomes Fahrzeug oft schwierig, schnell einen geeigneten Weg (zusammen mit Sollbeschleunigungen und -geschwindigkeiten) zu bestimmen, um durch einen Bereich von Interesse zu manövrieren, während Hindernisse vermieden werden, deren Wege sich innerhalb eines vorbestimmten Planungshorizonts mit dem Bereich von Interesse schneiden könnten. Derartige Szenarien entstehen beispielsweise bei einer ungeschützten Linkskurve, beim Manövrieren um ein in zweiter Reihe geparktes Auto, beim Einfädeln in den Gegenverkehr und dergleichen.
-
Dementsprechend ist es wünschenswert, Systeme und Verfahren zur Wegplanung in autonomen Fahrzeugen bereitzustellen. Ferner werden andere wünschenswerte Funktionen und Merkmale der vorliegenden Erfindung aus der nachfolgenden ausführlichen Beschreibung und den beigefügten Ansprüchen, in Verbindung mit den beigefügten Zeichnungen, sowie mit dem vorangehenden technischen Gebiet und Hintergrund ersichtlich offensichtlich.
-
KURZDARSTELLUNG
-
Es sind Systeme und Verfahren zur Steuerung eines ersten Fahrzeugs vorgesehen. In einer Ausführungsform beinhaltet ein Verfahren zur Wegplanung das Empfangen von Sensordaten in Bezug auf eine mit einem Fahrzeug assoziierte Umgebung, das Definieren eines Bereich von Interesse und eines beabsichtigten Wegs des Fahrzeugs basierend auf den Sensordaten und das Bestimmen eines Satzes von vorhergesagten Wegen eines oder mehrerer Objekte, die wahrscheinlich den Bereich von Interesse innerhalb eines Planungshorizonts schneiden. Das Verfahren beinhaltet ferner das Definieren eines Satzes von Hindernisbereichen, die dem Satz von vorhergesagten Wegen entsprechen, innerhalb eines raumzeitlichen Wegraums, der dem Bereich von Interesse und dem Planungshorizont zugeordnet ist, und das Definieren einer Vielzahl von Entscheidungspunkten für jeden der Hindernisbereiche. Das Verfahren beinhaltet ferner das Definieren eines gerichteten Graphen basierend auf der Vielzahl von Entscheidungspunkten und einer Kostenfunktion, die auf einen Satz von Wegsegmenten angewendet wird, die die Entscheidungspunkte miteinander verbinden, und das Durchführen einer Suche des gerichteten Graphen mit einem Prozessor, um einen ausgewählten Weg zu bestimmen.
-
In einer Ausführungsform beinhaltet das Definieren des gerichteten Graphen das Bereitstellen einer gerichteten Kante zwischen einem ersten Entscheidungspunkt zu einem zweiten Entscheidungspunkt, wenn: der zweite Entscheidungspunkt zeitlich dem ersten Scheitelpunkt folgt; der zweite Entscheidungspunkt einem größeren Abstand entspricht als der erste Entscheidungspunkt; die gerichtete Kante nicht durch einen der Hindernisbereiche verläuft; und die gerichtete Kante eine dem Fahrzeug zugeordnete kinematische Beschränkung nicht überschreiten.
-
In einer Ausführungsform basiert die Kostenfunktion auf mindestens einem von Insassenkomfort, Energieverbrauch und einem Abstand zwischen dem Fahrzeug und den Objekten.
-
In einer Ausführungsform ist jeder Hindernisbereich des Satzes von Hindernisbereichen ein Polygon und die Entscheidungspunkte sind an Scheitelpunkten des Polygons angeordnet.
-
In einer Ausführungsform ist jeder Hindernisbereich des Satzes von Hindernisbereichen ein Rechteck.
-
In einer Ausführungsform befinden sich die mit jedem Hindernisbereich verbundenen Entscheidungspunkte an gegenüberliegenden Ecken des Rechtecks, und eine der Ecken entspricht einem Punkt auf dem Hindernisbereich, der einer minimalen Zeit entlang des beabsichtigten Wegs und einem Mindestabstand entlang des beabsichtigten Wegs entspricht.
-
In einer Ausführungsform ist der Bereich von Interesse einem ungeschützten Linksabbiegen durch das Fahrzeug, dem Eintritt in einen Verkehrsflusses durch das Fahrzeug oder dem Manövrieren um ein in der zweiten Spur geparktes Fahrzeug durch das Fahrzeug zugeordnet.
-
Ein System zum Steuern eines Fahrzeugs gemäß einer Ausführungsform beinhaltet ein Bestimmungsmodul für einen Bereich von Interesse, ein Bestimmungsmodul für einen Objektweg, ein Bestimmungsmodul für einen Wegraum und Graphdefinitions- und Analysemodul. Das Bestimmungsmodul für einen Bereich von Interesse ist konfiguriert, um Sensordaten zu empfangen, die sich auf eine mit einem Fahrzeug verbundene Umgebung beziehen und einen Bereich von Interesse und einen beabsichtigten Weg des Fahrzeugs basierend auf den Sensordaten zu definieren. Das Bestimmungsmodul für einen Objektweg ist konfiguriert, um einen Satz vorhergesagter Wege eines oder mehrerer Objekte zu bestimmen, die wahrscheinlich den Bereich von Interesse innerhalb des Planungshorizonts schneiden. Das Bestimmungsmodul für den Wegraum ist konfiguriert, um innerhalb eines raumzeitlichen Wegraums, der dem Bereich von Interesse und dem Planungshorizont zugeordnet ist, einen Satz von Hindernisbereichen zu definieren, die dem Satz vorhergesagter Wege entsprechen, und eine Vielzahl von Entscheidungspunkten für jeden der Hindernisbereiche zu definieren. Das Graphdefinitions- und Analysemodul ist konfiguriert, um einen gerichteten Graphen basierend auf der Vielzahl von Entscheidungspunkten und einer Kostenfunktion zu definieren, die auf einen Satz von Wegsegmenten angewendet wird, die die Entscheidungspunkte miteinander verbinden, und mit einem Prozessor eine Suche des gerichteten Graphen ausführen, um einen ausgewählten Weg zu bestimmen.
-
In einer Ausführungsform definiert das Graphdefinitions- und Analysemodul den gerichteten Graphen, indem es eine gerichtete Kante zwischen einem ersten Entscheidungspunkt zu einem zweiten Entscheidungspunkt bereitstellt, wenn: der zweite Entscheidungspunkt zeitlich dem ersten Scheitelpunkt folgt; der zweite Entscheidungspunkt einem größeren Abstand entspricht als der erste Entscheidungspunkt; die gerichtete Kante nicht durch einen der Hindernisbereiche verläuft; und die gerichtete Kante eine dem Fahrzeug zugeordnete kinematische Beschränkung nicht überschreiten.
-
In einer Ausführungsform basiert die Kostenfunktion auf mindestens einem von Insassenkomfort, Energieverbrauch und einem Abstand zwischen dem Fahrzeug und den Objekten.
-
In einer Ausführungsform ist jeder Hindernisbereich des Satzes von Hindernisbereichen ein Polygon und die Entscheidungspunkte sind an Scheitelpunkten des Polygons angeordnet.
-
In einer Ausführungsform ist jeder Hindernisbereich des Satzes von Hindernisbereichen ein Rechteck.
-
In einer Ausführungsform befinden sich die mit jedem Hindernisbereich verbundenen Entscheidungspunkte an gegenüberliegenden Ecken des Rechtecks, und eine der Ecken entspricht einem Punkt auf dem Hindernisbereich, der einer minimalen Zeit entlang des beabsichtigten Wegs und einem Mindestabstand entlang des beabsichtigten Wegs entspricht.
-
In einer Ausführungsform ist der Bereich von Interesse einem ungeschützten Linksabbiegen durch das Fahrzeug, dem Eintritt in einen Verkehrsflusses durch das Fahrzeug oder dem Manövrieren um ein in der zweiten Spur geparktes Fahrzeug durch das Fahrzeug zugeordnet.
-
Ein autonomes Fahrzeug gemäß einer Ausführungsform beinhaltet mindestens einen Sensor, der Sensordaten bereitstellt, und eine Steuerung, die durch einen Prozessor einen Bereich von Interesse und einen beabsichtigten Weg des autonomen Fahrzeugs basierend auf den Sensordaten definiert und einen Satz von vorhergesagten Wegen eines oder mehrerer Objekte bestimmt, die wahrscheinlich den Bereich von Interesse innerhalb eines Planungshorizonts schneiden. Der Prozessor definiert ferner, innerhalb eines raumzeitlichen Wegraums, der dem Bereich von Interesse und dem Planungshorizont zugeordnet ist, einen Satz von Hindernisbereichen entsprechend dem Satz von vorhergesagten Wegen; definiert eine Vielzahl von Entscheidungspunkten für jeden der Hindernisbereiche; definiert einen gerichteten Graphen basierend auf der Vielzahl von Entscheidungspunkten und einer Kostenfunktion, die auf einen Satz von Wegsegmenten angewendet wird, die die Entscheidungspunkte verbinden; und führt mit einem Prozessor eine Suche des gerichteten Graphen aus, um einen ausgewählten Weg zu bestimmen.
-
In einer Ausführungsform definiert die Steuerung den gerichteten Graphen durch Bereitstellen einer gerichteten Kante zwischen einem ersten Entscheidungspunkt zu einem zweiten Entscheidungspunkt, wenn: der zweite Entscheidungspunkt zeitlich dem ersten Scheitelpunkt folgt; der zweite Entscheidungspunkt einem größeren Abstand entspricht als der erste Entscheidungspunkt; die gerichtete Kante nicht durch einen der Hindernisbereiche verläuft; und die gerichtete Kante eine dem Fahrzeug zugeordnete kinematische Beschränkung nicht überschreiten.
-
In einer Ausführungsform basiert die Kostenfunktion auf mindestens einem von Insassenkomfort, Energieverbrauch und einem Abstand zwischen dem Fahrzeug und den Objekten.
-
In einer Ausführungsform ist jeder Hindernisbereich des Satzes von Hindernisbereichen ein Rechteck und die Entscheidungspunkte sind an Scheitelpunkten des Rechtecks angeordnet.
-
In einer Ausführungsform befinden sich die mit jedem Hindernisbereich verbundenen Entscheidungspunkte an gegenüberliegenden Ecken des Rechtecks, und eine der Ecken entspricht einem Punkt auf dem Hindernisbereich, der einer minimalen Zeit entlang des beabsichtigten Wegs und einem Mindestabstand entlang des beabsichtigten Wegs entspricht.
-
In einer Ausführungsform ist der Bereich von Interesse einem ungeschützten Linksabbiegen durch das Fahrzeug, dem Eintritt in einen Verkehrsflusses durch das Fahrzeug oder dem Manövrieren um ein in der zweiten Spur geparktes Fahrzeug durch das Fahrzeug zugeordnet.
-
Figurenliste
-
Die exemplarischen Ausführungsformen werden nachfolgend in Verbindung mit den folgenden Zeichnungen beschrieben, worin gleiche Bezugszeichen gleiche Elemente bezeichnen, und worin gilt:
- 1 ist ein Funktionsblockdiagramm, das ein autonomes Fahrzeug mit einem Wegplanungssystem gemäß verschiedenen Ausführungsformen veranschaulicht;
- 2 ist ein Funktionsblockdiagramm, das ein Transportsystem mit einem oder mehreren autonomen Fahrzeugen aus 1 gemäß verschiedenen Ausführungsformen veranschaulicht;
- 3 ist ein Funktionsblockdiagramm, das ein autonomes Antriebssystem (ADS) in Verbindung mit einem autonomen Fahrzeug gemäß verschiedenen Ausführungsformen veranschaulicht;
- 4 ist ein Datenflussdiagramm, das ein Wegplanungssystem eines autonomen Fahrzeugs gemäß verschiedenen Ausführungsformen veranschaulicht;
- 5 ist ein Ablaufdiagramm, das ein Steuerverfahren zum Steuern des autonomen Fahrzeugs gemäß verschiedenen Ausführungen veranschaulicht;
- 6 ist eine Draufsicht auf eine Kreuzung, die für das Verständnis von Systemen und Verfahren gemäß verschiedener Ausführungsformen nützlich ist;
- 7 veranschaulicht einen Bereich von Interesse, der der in 6 dargestellten Kreuzung entspricht, gemäß verschiedenen Ausführungsformen;
- 8 zeigt eine Wegplanungsvisualisierung entsprechend dem Bereich von Interesse von 7 gemäß verschiedenen Ausführungsformen;
- 9 zeigt die Wegplanungsvisualisierung von 8 einschließlich Hindernisbereichen gemäß verschiedenen Ausführungsformen;
- 10 zeigt die Wegplanungsvisualisierung von 9 einschließlich der Entscheidungspunkte gemäß verschiedenen Ausführungsformen;
- 11 veranschaulicht einen gerichteten Graphen, der den Entscheidungspunkten von 10 gemäß verschiedenen Ausführungsformen entspricht;
- 12 zeigt eine weitere exemplarische Wegplanungsvisualisierung gemäß verschiedenen Ausführungsformen;
- 13 veranschaulicht einen gerichteten Graphen, der den Entscheidungspunkten von 12 gemäß verschiedenen Ausführungsformen entspricht; und
- Die 14 und 15 stellen zusätzliche Szenarien und Bereiche von Interesse gemäß verschiedenen Ausführungsformen dar.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Die folgende ausführliche Beschreibung dient lediglich als Beispiel und soll die Anwendung und Verwendung in keiner Weise einschränken. Weiterhin besteht keine Absicht, im vorstehenden technischen Bereich, Hintergrund, der Kurzzusammenfassung oder der folgenden detaillierten Beschreibung, an eine ausdrücklich oder implizit vorgestellte Theorie gebunden zu sein. Der hierin verwendete Begriff „Modul“ bezieht sich auf alle Hardware-, Software-, Firmwareprodukte, elektronische Steuerkomponenten, Verarbeitungslogik und/oder Prozessorgeräte, einzeln oder in allen Kombinationen, unter anderem beinhaltend, eine anwendungsspezifische integrierte Schaltung (ASIC), ein feldprogrammierbares Gate-Array (FPGA), eine elektronische Schaltung, einen Prozessor (gemeinsam genutzt, dediziert oder Gruppenprozessor) und einen Speicher, der ein oder mehrere Software- oder Firmwareprogramme, eine kombinatorische Logikschaltung und/oder andere geeignete Komponenten ausführt, welche die beschriebene Funktionalität bieten.
-
Ausführungen der vorliegenden Offenbarung können hierin als funktionale und/oder logische Blockkomponenten und verschiedene Verarbeitungsschritte beschrieben sein. Es ist zu beachten, dass derartige Blockkomponenten aus einer beliebigen Anzahl an Hardware-, Software- und/oder Firmware-Komponenten aufgebaut sein können, die zur Ausführung der erforderlichen Funktionen konfiguriert sind. Zum Beispiel kann eine Ausführungsform der vorliegenden Offenbarung eines Systems oder einer Komponente verschiedene integrierte Schaltungskomponenten, beispielsweise Speicherelemente, digitale Signalverarbeitungselemente, Logikelemente, Wertetabellen oder dergleichen, einsetzen, die mehrere Funktionen unter der Steuerung eines oder mehrerer Mikroprozessoren oder anderer Steuervorrichtungen durchführen können. Zudem werden Fachleute auf dem Gebiet erkennen, dass die exemplarischen Ausführungsformen der vorliegenden Offenbarung in Verbindung mit einer beliebigen Anzahl an Systemen eingesetzt werden können, und dass das hierin beschriebene System lediglich eine exemplarische Ausführungsform der vorliegenden Offenbarung darstellt.
-
Der Kürze halber können konventionelle Techniken in Verbindung mit der Signalverarbeitung, Datenübertragung, Signalgebung, Steuerung, Maschinenlernmodelle, Radar, Lidar, Bildanalyse und weiteren funktionalen Aspekten der Systeme (und den einzelnen Bedienkomponenten der Systeme) hierin nicht im Detail beschrieben werden. Weiterhin sollen die in den verschiedenen Figuren dargestellten Verbindungslinien exemplarische Funktionsbeziehungen und/oder physikalische Verbindungen zwischen den verschiedenen Elementen darstellen. Es sollte beachtet werden, dass viele alternative oder zusätzliche funktionale Beziehungen oder physikalische Verbindungen in einer Ausführungsform der vorliegenden Offenbarung vorhanden sein können.
-
Wie unter Bezugnahme auf 1 ersichtlich, ist ein bei 100 allgemein dargestelltes Wegplanungssystem mit einem Fahrzeug (oder „AF“) 10 gemäß verschiedenen Ausführungsformen assoziiert. Im Allgemeinen ermöglicht das Wegplanungssystem (oder einfach „System“) 100 das Auswählen eines Weges für das AF 10, indem die vorhergesagten Wege von Objekten bestimmt werden, die wahrscheinlich einen Bereich von Interesse schneiden, und dann das Erzeugen und Suchen innerhalb eines gerichteten Graphen, der den Entscheidungspunkten entspricht, die mit Hindernisbereichen verbunden sind, die innerhalb eines raumzeitlichen Wegraums definiert sind.
-
Wie in 1 dargestellt, beinhaltet das Fahrzeug 10 im Allgemeinen ein Fahrgestell 12, eine Karosserie 14, Vorderräder 16 und Hinterräder 18. Die Karosserie 14 ist auf dem Fahrgestell 12 angeordnet und umhüllt im Wesentlichen die anderen Komponenten des Fahrzeugs 10. Die Karosserie 14 und das Fahrgestell 12 können gemeinsam einen Rahmen bilden. Die Räder 16-18 sind jeweils mit dem Fahrgestell 12 in der Nähe einer jeweiligen Ecke der Karosserie 14 drehbar verbunden.
-
In verschiedenen Ausführungsformen ist das Fahrzeug 10 ein autonomes Fahrzeug und das Wegplanungssystem 100 ist in das autonome Fahrzeug 10 (nachfolgend als das autonomes Fahrzeug 10 bezeichnet) integriert. Das autonome Fahrzeug 10 ist beispielsweise ein Fahrzeug, das automatisch gesteuert wird, um Passagiere von einem Ort zum anderen zu befördern. Das Fahrzeug 10 ist in der veranschaulichten Ausführungsform als Pkw dargestellt, es sollte jedoch beachtet werden, dass auch jedes andere Fahrzeug einschließlich Motorräder, Lastwagen, Sportfahrzeuge (SUVs), Freizeitfahrzeuge (RVs), Schiffe, Flugzeuge usw. verwendet werden können.
-
In einer exemplarischen Ausführungsform entspricht das autonome Fahrzeug 10 einem Automatisierungssystem des Levels vier oder Levels fünf gemäß der Standardtaxonomie automatisierter Fahrlevels der Society of Automotive Engineers (SAE) „J3016“. Mit dieser Terminologie bezeichnet ein Level-Vier-System eine „hohe Automatisierung“ unter Bezugnahme auf einen Fahrmodus, bei dem das automatisierte Fahrsystem alle Aspekte der dynamischen Fahraufgabe übernimmt, selbst wenn ein menschlicher Fahrer nicht angemessen auf eine Aufforderung zum Eingreifen reagiert. Ein Level-Fünf-System hingegen zeigt eine „Vollautomatisierung“ und bezeichnet einen Fahrmodus, bei dem das automatisierte Fahrsystem alle Aspekte der dynamischen Fahraufgabe unter allen Fahrbahn- und Umweltbedingungen erfüllt, die ein menschlicher Fahrer bewältigen kann. Es versteht sich jedoch, dass die Ausführungsformen gemäß der vorliegenden Thematik nicht auf eine bestimmte Taxonomie oder Rubrik der Automatisierungskategorien beschränkt sind. Darüber hinaus können Systeme gemäß der vorliegenden Ausführungsform in Verbindung mit jedem Fahrzeug verwendet werden, in dem der vorliegende Gegenstand umgesetzt werden kann, unabhängig von seiner Autonomie.
-
Wie dargestellt, beinhaltet das autonome Fahrzeug 10 im Allgemeinen ein Antriebssystem 20, ein Getriebesystem 22, ein Lenksystem 24, ein Bremssystem 26, ein Sensorsystem 28, ein Stellantriebsystem 30, mindestens einen Datenspeicher 32, mindestens eine Steuerung 34 und ein Kommunikationssystem 36. Das Antriebssystem 20 kann in verschiedenen Ausführungsformen einen Verbrennungsmotor, eine elektrische Maschine, wie beispielsweise einen Traktionsmotor und/oder ein Brennstoffzellenantriebssystem, beinhalten. Das Getriebesystem 22 ist dazu konfiguriert, Leistung vom Antriebssystem 20 auf die Fahrzeugräder 16 und 18 gemäß den wählbaren Übersetzungsverhältnissen zu übertragen. Gemäß verschiedenen Ausführungsformen kann das Getriebesystem 22 ein Stufenverhältnis-Automatikgetriebe, ein stufenlos verstellbares Getriebe oder ein anderes geeignetes Getriebe beinhalten.
-
Das Bremssystem 26 ist dazu konfiguriert, den Fahrzeugrädern 16 und 18 ein Bremsmoment bereitzustellen. Das Bremssystem 26 kann in verschiedenen Ausführungsformen Reibungsbremsen, Bake-by-Wire, ein regeneratives Bremssystem, wie beispielsweise eine elektrische Maschine und/oder andere geeignete Bremssysteme, beinhalten.
-
Das Lenksystem 24 beeinflusst eine Position der Fahrzeugräder 16 und/oder 18. Während in einigen Ausführungsformen innerhalb des Umfangs der vorliegenden Offenbarung zur Veranschaulichung als ein Lenkrad 25 dargestellt, kann das Lenksystem 24 kein Lenkrad beinhalten.
-
Das Sensorsystem 28 beinhaltet eine oder mehrere Sensorvorrichtungen 40a-40n, die beobachtbare Zustände der äußeren Umgebung und/oder der inneren Umgebung des autonomen Fahrzeugs 10 (zum Beispiel den Zustand eines oder mehrerer Insassen) erfassen können. Sensorvorrichtungen 40a-40n können, sind jedoch nicht beschränkt auf, Radare (z. B. Langstrecken-, Mittelstrecken-Kurzbereich), Lidare, globale Positionierungssysteme, optische Kameras (z. B. nach vorne gerichtet, 360-Grad, nach hinten gerichtet, seitlich gerichtet, Stereo, usw.), beinhalten, Wärmebildkameras (z. B. Infrarot), Ultraschallsensoren, Geschwindigkeitsmesssensoren (z. B. Encoder) und/oder andere Sensoren, die in Verbindung mit Systemen und Verfahren gemäß dem vorliegenden Gegenstand verwendet werden können.
-
Das Stellantriebssystem 30 beinhaltet ein oder mehrere Stellantriebsvorrichtungen 42a-42n, die ein oder mehrere Fahrzeugeigenschaften, wie zum Beispiel das Antriebssystem 20, das Getriebesystem 22, das Lenksystem 24 und das Bremssystem 26, steuern, sind aber nicht darauf beschränkt. In verschiedenen Ausführungsformen kann das autonome Fahrzeug 10 auch Fahrzeug-Innen- und/oder Außenausstattungen beinhalten, die nicht in 1 dargestellt sind, wie beispielsweise verschiedene Türen, Kofferraum- und Kabinenausstattungen, wie Luft, Musik, Beleuchtung, Touchscreen-Display-Komponenten (wie sie in Verbindung mit Navigationssystemen verwendet werden) und dergleichen.
-
Die Datenspeichervorrichtung 32 speichert Daten zur Verwendung beim automatischen Steuern des autonomen Fahrzeugs 10. In verschiedenen Ausführungsformen speichert die Datenspeichervorrichtung 32 definierte Karten der navigierbaren Umgebung. In verschiedenen Ausführungsformen werden die definierten Karten vordefiniert und von einem entfernten System (in weiteren Einzelheiten in Bezug auf 2 beschrieben) erhalten. So können beispielsweise die definierten Karten durch das entfernte System zusammengesetzt und dem autonomen Fahrzeug 10 (drahtlos und/oder drahtgebunden) mitgeteilt und in der Datenspeichervorrichtung 32 gespeichert werden. Streckeninformationen können auch in der Datenspeichervorrichtung 32 gespeichert werden - d. h. in einer Reihe von Straßenabschnitten (die geografisch mit einer oder mehreren der definierten Karten verknüpft sind), die zusammen eine Strecke definieren, die der Benutzer von einem Startort (z. B. dem aktuellen Standort des Benutzers) zu einem Zielort zurücklegen kann. Wie ersichtlich ist, kann die Datenspeichervorrichtung 32 ein Teil der Steuerung 34, von der Steuerung 34 getrennt, oder ein Teil der Steuerung 34 und Teil eines separaten Systems sein.
-
Die Steuerung 34 beinhaltet mindestens einen Prozessor 44 und eine computerlesbare Speichervorrichtung oder Medien 46. Der Prozessor 44 kann eine Spezialanfertigung oder ein handelsüblicher Prozessor sein, eine Zentraleinheit (CPU), eine Grafikprozessoreinheit (GPU), eine anwendungsspezifische integrierte Schaltung (ASIC) (z.B. eine benutzerdefinierte ASIC, die ein neuronales Netzwerk implementiert), ein feldprogrammierbares Gate-Array (FPGA), ein Hilfsprozessor unter mehreren Prozessoren, verbunden mit der Steuerung 34, ein Mikroprozessor auf Halbleiterbasis (in Form eines Mikrochips oder Chip-Satzes) eine Kombination derselben oder allgemein jede beliebige Vorrichtung zur Ausführung von Anweisungen. Die computerlesbare Speichervorrichtung oder Medien 46 können flüchtige und nicht-flüchtige Speicher in einem Nur-Lese-Speicher (ROM), einem Speicher mit direktem Zugriff (RAM) und einem Keep-Alive-Memory (KAM) beinhalten. KAM ist ein persistenter oder nicht-flüchtiger Speicher, der verwendet werden kann, um verschiedene Betriebsvariablen zu speichern, während der Prozessor 44 ausgeschaltet ist. Die computerlesbare Speichervorrichtung oder Medien 46 können unter Verwendung einer beliebigen einer Anzahl an bekannten Speichervorrichtungen, wie beispielsweise PROMs (programmierbarer Nur-Lese-Speicher), EPROMs (elektrische PROM), EEPROMs (elektrisch löschbarer PROM), Flash-Speicher oder beliebige andere elektrischen, magnetischen, optischen oder kombinierten Speichervorrichtungen implementiert werden, die Daten speichern können, von denen einige ausführbare Anweisungen darstellen, die von der Steuerung 34 beim Steuern des autonomen Fahrzeugs 10 verwendet werden. In verschiedenen Ausführungsformen ist die Steuerung 34 konfiguriert, um das im Folgenden ausführlich erläuterte Wegplanungssystem zu implementieren.
-
Die Anweisungen können ein oder mehrere separate Programme beinhalten, von denen jede eine geordnete Auflistung von ausführbaren Anweisungen zum Implementieren von logischen Funktionen beinhaltet. Die Anweisungen empfangen und verarbeiten, wenn diese vom Prozessor 44 ausgeführt werden, Signale vom Sensorsystem 28, führen Logik, Berechnungen, Verfahren und/oder Algorithmen zur automatischen Steuerung der Komponenten des autonomen Fahrzeugs 10 durch und erzeugen Steuersignale, die an das Stellgliedsystem 30 übertragen werden, um die Komponenten des autonomen Fahrzeugs 10 basierend auf der Logik, den Berechnungen, den Verfahren und/oder Algorithmen automatisch zu steuern. Obwohl in 1 nur eine Steuerung 34 dargestellt ist, können Ausführungsformen des autonomen Fahrzeugs 10 eine beliebige Anzahl an Steuerungen 34 beinhalten, die über ein geeignetes Kommunikationsmedium oder eine Kombination von Kommunikationsmedien kommunizieren und zusammenwirken, um die Sensorsignale zu verarbeiten, Logiken, Berechnungen, Verfahren und/oder Algorithmen durchzuführen, und Steuersignale zu erzeugen, um die Funktionen des autonomen Fahrzeugs 10 automatisch zu steuern.
-
Das Kommunikationssystem 36 ist konfiguriert, um Informationen drahtlos an und von anderen Einheiten 48, wie beispielsweise, jedoch nicht beschränkt auf andere Fahrzeuge („V2V“-Kommunikation,) Infrastruktur („V2I“-Kommunikation), Netzwerke („V2N“-Kommunikation), Fußgänger („V2P“-Kommunikation), entfernte Transportsysteme und/oder Benutzervorrichtungen zu übermitteln (näher beschrieben in Bezug auf 2). In einer exemplarischen Ausführungsform ist das drahtlose Kommunikationssystem 36 dazu konfiguriert, über ein drahtloses lokales Netzwerk (WLAN) unter Verwendung des IEEE 802.11-Standards, über Bluetooth oder mittels einer mobilen Datenkommunikation zu kommunizieren. Im Geltungsbereich der vorliegenden Offenbarung werden jedoch auch zusätzliche oder alternative Kommunikationsverfahren, wie beispielsweise ein dedizierter Nahbereichskommunikations-(DSRC)-Kanal, berücksichtigt. DSRC-Kanäle beziehen sich auf Einweg- oder Zweiwege-Kurzstrecken- bis Mittelklasse-Funkkommunikationskanäle, die speziell für den Automobilbau und einen entsprechenden Satz von Protokollen und Standards entwickelt wurden.
-
Mit weiterem Bezug auf 2 in verschiedenen Ausführungsformen kann das autonome Fahrzeug 10, das mit Bezug auf 1 beschrieben ist, für den Einsatz im Rahmen eines Taxi- oder Shuttle-Unternehmens in einem bestimmten geografischen Gebiet (z. B. einer Stadt, einer Schule oder einem Geschäftscampus, einem Einkaufszentrum, einem Vergnügungspark, einem Veranstaltungszentrum oder dergleichen) geeignet sein. So kann beispielsweise das autonome Fahrzeug 10 einem autonomen fahrzeugbasierten Transportsystem zugeordnet sein. 2 veranschaulicht eine exemplarische Ausführungsform einer Betriebsumgebung, die im Allgemeinen bei 50 dargestellt ist und ein autonomes fahrzeugbasiertes entferntes Transportsystem (oder einfach „entferntes Transportsystem“) 52 beinhaltet, das, wie mit Bezug auf 1 beschrieben, einem oder mehreren autonomen Fahrzeugen 10a-10n zugeordnet ist. In verschiedenen Ausführungsformen beinhaltet die Betriebsumgebung 50 (die ganz oder teilweise den in 1 dargestellten Einheiten 48 entsprechen können) ferner eine oder mehrere Benutzervorrichtungen 54, die mit dem autonomen Fahrzeug 10 und/oder dem entfernten Transportsystem 52 über ein Kommunikationsnetzwerk 56 kommunizieren.
-
Das Kommunikationsnetzwerk 56 unterstützt die Kommunikation zwischen Geräten, Systemen und Komponenten, die von der Betriebsumgebung 50 unterstützt werden (z. B. über physische Kommunikationsverbindungen und/oder drahtlose Kommunikationsverbindungen). So kann beispielsweise das Kommunikationsnetzwerk 56 ein drahtloses Trägersystem 60 beinhalten, wie beispielsweise ein Mobiltelefonsystem, das eine Vielzahl von Mobilfunktürmen (nicht dargestellt), eine oder mehrere Mobilvermittlungsstellen (MSCs) (nicht dargestellt) sowie alle anderen Netzwerkkomponenten beinhalten, die zum Verbinden des drahtlosen Trägersystems 60 mit dem Festnetz erforderlich sind. Jeder Mobilfunkturm beinhaltet Sende- und Empfangsantennen und eine Basisstation, wobei die Basisstationen verschiedener Mobilfunktürme mit den MSC verbunden sind, entweder direkt oder über Zwischenvorrichtungen, wie beispielsweise eine Basisstationssteuerung. Das Drahtlosträgersystem 60 kann jede geeignete Kommunikationstechnologie implementieren, beispielsweise digitale Technologien, wie CDMA (z. B. CDMA2000), LTE (z. B. 4G LTE oder 5G LTE), GSM/GPRS oder andere aktuelle oder neu entstehende drahtlose Technologien. Andere Mobilfunkturm/Basisstation/MSC-Anordnungen sind möglich und könnten mit dem Drahtlosträgersystem 60 verwendet werden. So könnten sich beispielsweise die Basisstation und der Mobilfunkturm an derselben Stelle oder entfernt voneinander befinden, jede Basisstation könnte für einen einzelnen Mobilfunkturm zuständig sein oder eine einzelne Basisstation könnte verschiedene Mobilfunktürme bedienen, oder verschiedene Basisstationen könnten mit einer einzigen MSC gekoppelt werden, um nur einige der möglichen Anordnungen zu nennen.
-
Abgesehen vom Verwenden des drahtlosen Trägersystems 60 kann ein zweites drahtloses Trägersystem in Form eines Satellitenkommunikationssystems 64 verwendet werden, um unidirektionale oder bidirektionale Kommunikation mit dem autonomen Fahrzeug 10a-10n bereitzustellen. Dies kann unter Verwendung von einem oder mehreren Kommunikationssatelliten (nicht dargestellt) und einer aufwärts gerichteten Sendestation (nicht dargestellt) erfolgen. Die unidirektionale Kommunikation kann beispielsweise Satellitenradiodienste beinhalten, worin programmierte Inhaltsdaten (Nachrichten, Musik usw.) von der Sendestation empfangen werden, für das Hochladen gepackt und anschließend zum Satelliten gesendet werden, der die Programmierung an die Teilnehmer ausstrahlt. Die bidirektionale Kommunikation kann beispielsweise Satellitentelefondienste beinhalten, die den Satelliten verwenden, um Telefonkommunikationen zwischen dem Fahrzeug 10 und der Station weiterzugeben. Die Satellitentelefonie kann entweder zusätzlich oder anstelle des Drahtlosträgersystems 60 verwendet werden.
-
Ein Festnetz-Kommunikationssystem 62 kann ein konventionelles Festnetz-Telekommunikationsnetzwerk beinhalten, das mit einem oder mehreren Festnetztelefonen verbunden ist und das Drahtlosträgersystem 60 mit dem entfernten Transportsystem 52 verbindet. So kann beispielsweise das Festnetz-Kommunikationssystem 62 ein Fernsprechnetz (PSTN) wie jenes sein, das verwendet wird, um festverdrahtetes Fernsprechen, paketvermittelte Datenkommunikationen und die Internetinfrastruktur bereitzustellen. Ein oder mehrere Segmente des Festnetz-Kommunikationssystems 62 könnten durch Verwenden eines normalen drahtgebundenen Netzwerks, eines Lichtleiter- oder eines anderen optischen Netzwerks, eines Kabelnetzes, von Stromleitungen, anderen drahtlosen Netzwerken, wie drahtlose lokale Netzwerke (WLANs) oder Netzwerke, die drahtlosen Breitbandzugang (BWA) bereitstellen oder jeder Kombination davon implementiert sein. Weiterhin muss das entfernte Transportsystem 52 nicht über das Festnetz-Kommunikationssystem 62 verbunden sein, sondern könnte Funktelefonausrüstung beinhalten, sodass sie direkt mit einem drahtlosen Netzwerk, wie z. B. dem Drahtlosträgersystem 60, kommunizieren kann.
-
Obwohl in 2 nur eine Benutzervorrichtung 54 dargestellt ist, können Ausführungsformen der Betriebsumgebung 50 eine beliebige Anzahl an Benutzervorrichtungen 54, einschließlich mehrerer Benutzervorrichtungen 54 unterstützen, die das Eigentum einer Person sind, von dieser bedient oder anderweitig verwendet werden. Jede Benutzervorrichtung 54, die von der Betriebsumgebung 50 unterstützt wird, kann unter Verwendung einer geeigneten Hardwareplattform implementiert werden. In dieser Hinsicht kann die Benutzervorrichtung 54 in einem gemeinsamen Formfaktor realisiert werden, darunter auch in: einen Desktop-Computer; einem mobilen Computer (z. B. einem Tablet-Computer, einem Laptop-Computer oder einem Netbook-Computer); einem Smartphone; einem Videospielgerät; einem digitalen Media-Player; eine Komponente eines Heimunterhaltungsgeräts; einer Digitalkamera oder Videokamera; einem tragbaren Computergerät (z. B. einer Smart-Uhr, Smart-Brille, Smart-Kleidung); oder dergleichen. Jede von der Betriebsumgebung 50 unterstützte Benutzervorrichtung 54 ist als computerimplementiertes oder computergestütztes Gerät mit der Hardware-, Software-, Firmware- und/oder Verarbeitungslogik realisiert, die für die Durchführung der hier beschriebenen verschiedenen Techniken und Verfahren erforderlich ist. So beinhaltet beispielsweise die Benutzervorrichtung 54 einen Mikroprozessor in Form einer programmierbaren Vorrichtung, die eine oder mehrere in einer internen Speicherstruktur gespeicherte Anweisungen beinhaltet und angewendet wird, um binäre Eingaben zu empfangen und binäre Ausgaben zu erzeugen. In einigen Ausführungsformen beinhaltet die Benutzervorrichtung 54 ein GPS-Modul, das GPS-Satellitensignale empfangen und GPS-Koordinaten basierend auf diesen Signalen erzeugen kann. In weiteren Ausführungsformen beinhaltet die Benutzervorrichtung 54 eine Mobilfunk-Kommunikationsfunktionalität, sodass die Vorrichtung Sprach- und/oder Datenkommunikationen über das Kommunikationsnetzwerk 56 unter Verwendung eines oder mehrerer Mobilfunk-Kommunikationsprotokolle durchführt, wie hierin erläutert. In verschiedenen Ausführungsformen beinhaltet die Benutzervorrichtung 54 eine visuelle Anzeige, wie zum Beispiel ein grafisches Touchscreen-Display oder eine andere Anzeige.
-
Das entfernte Transportsystem 52 beinhaltet ein oder mehrere Backend-Serversysteme, nicht dargestellt), die an dem speziellen Campus oder dem geografischen Standort, der vom Transportsystem 52 bedient wird, Cloud-basiert, netzwerkbasiert oder resident sein können. Das entfernte Transportsystem 52 kann mit einem Live-Berater, einem automatisierten Berater, einem System der künstlichen Intelligenz oder einer Kombination davon besetzt sein. Das entfernte Transportsystem 52 kann mit den Benutzervorrichtungen 54 und den autonomen Fahrzeugen 10a-10n kommunizieren, um Fahrten zu planen, autonome Fahrzeuge 10a-10n zu versetzen und dergleichen. In verschiedenen Ausführungsformen speichert das entfernte Transportsystem 52 Kontoinformationen, wie zum Beispiel Teilnehmer-Authentisierungsdaten, Fahrzeugkennzeichen, Profilaufzeichnungen, biometrische Daten, Verhaltensmuster und andere entsprechende Teilnehmerinformationen.
-
Gemäß einem typischen Anwendungsfall-Arbeitsablauf kann ein registrierter Benutzer des Ferntransportsystems 52 über die Benutzervorrichtung 54 eine Fahrtanforderung erstellen. Die Fahrtanforderung gibt typischerweise den gewünschten Abholort des Fahrgastes (oder den aktuellen GPS-Standort), den gewünschten Zielort (der einen vordefinierten Fahrzeugstopp und/oder ein benutzerdefiniertes Passagierziel identifizieren kann) und eine Abholzeit an. Das entfernte Transportsystem 52 empfängt die Fahrtanforderung, verarbeitet die Anforderung und sendet ein ausgewähltes der autonomen Fahrzeuge 10a-10n (wenn und sofern verfügbar), um den Passagier an dem vorgesehenen Abholort und zu gegebener Zeit abzuholen. Das Transportsystem 52 kann zudem eine entsprechend konfigurierte Bestätigungsnachricht oder Benachrichtigung an die Benutzervorrichtung 54 erzeugen und senden, um den Passagier zu benachrichtigen, dass ein Fahrzeug unterwegs ist.
-
Wie ersichtlich, bietet der hierin offenbarte Gegenstand bestimmte verbesserte Eigenschaften und Funktionen für das, was als ein standardmäßiges oder Basislinien autonomes Fahrzeug 10 und/oder ein autonomes fahrzeugbasiertes Transportsystem 52 betrachtet werden kann. Zu diesem Zweck kann ein autonomes fahrzeugbasiertes Transportsystem modifiziert, erweitert oder anderweitig ergänzt werden, um die nachfolgend näher beschriebenen zusätzlichen Funktionen bereitzustellen.
-
Gemäß verschiedener Ausführungsformen realisiert die Steuerung 34 ein autonomes Antriebssystem (ADS) 70, wie in 3 dargestellt. Das heißt, dass geeignete Soft- und/oder Hardwarekomponenten der Steuerung 34 (z. B. der Prozessor 44 und das computerlesbare Speichermedium 46) verwendet werden, um ein autonomes Antriebssystem 70 bereitzustellen, das in Verbindung mit dem Fahrzeug 10 verwendet wird.
-
In verschiedenen Ausführungsformen können die Anweisungen des autonomen Antriebssystems 70 je nach Funktion oder System gegliedert sein. Das autonome Antriebssystem 70 kann beispielsweise, wie in 3 dargestellt, ein Computer-Sichtsystem 74, ein Positionierungssystem 76, ein Leitsystem 78 und ein Fahrzeugsteuersystem 80 beinhalten. Wie ersichtlich ist, können die Anweisungen in verschiedenen Ausführungsformen in beliebig viele Systeme (z. B. kombiniert, weiter unterteilt usw.) gegliedert werden, da die Offenbarung nicht auf die vorliegenden Beispiele beschränkt ist.
-
In verschiedenen Ausführungsformen synthetisiert und verarbeitet das Computer-Sichtsystem 74 Sensordaten und prognostiziert Anwesenheit, Standort, Klassifizierung und/oder Verlauf von Objekten und Merkmalen der Umgebung des Fahrzeugs 10. In verschiedenen Ausführungsformen kann das Computer-Vision-System 74 Informationen von mehreren Sensoren (z. B. dem Sensorsystem 28) beinhalten, einschließlich, aber nicht beschränkt auf Kameras, Lidars, Radars und/oder eine beliebige Anzahl anderer Arten von Sensoren.
-
Das Positionierungssystem 76 verarbeitet Sensordaten zusammen mit anderen Daten, um eine Position (z. B. eine lokale Position in Bezug auf eine Karte, eine exakte Position in Bezug auf die Fahrspur einer Straße, Fahrzeugrichtung, usw.) des Fahrzeugs 10 in Bezug auf die Umgebung zu bestimmen. Wie zu erkennen ist, können verschiedene Techniken eingesetzt werden, um diese Lokalisierung durchzuführen, beispielsweise simultane Lokalisierung und Kartierung (SLAM), Partikelfilter, Kalman-Filter, Bayes'sche Filter und dergleichen.
-
Das Leitsystem 78 verarbeitet Sensordaten zusammen mit anderen Daten, um eine Strecke zu bestimmen, dem das Fahrzeug 10 folgen soll. Das Fahrzeugsteuerungssystem 80 erzeugt Steuersignale zum Steuern des Fahrzeugs 10 entsprechend der ermittelten Strecke.
-
In verschiedenen Ausführungsformen implementiert die Steuerung 34 maschinelle Lerntechniken, um die Funktionalität der Steuerung 34 zu unterstützen, wie z. B. Merkmalerkennung/Klassifizierung, Hindernisminderung, Routenüberquerung, Kartierung, Sensorintegration, Boden-Wahrheitsbestimmung und dergleichen.
-
Es ist zu verstehen, dass verschiedene Ausführungsformen des Wegplanungssystems 100 gemäß der vorliegenden Offenbarung eine beliebige Anzahl von in die Steuerung 34 eingebetteten Teilmodule beinhalten, die mit den hierin beschriebenen Systemen und Verfahren kombiniert und/oder weiter untergliedert werden können. Weiterhin können Eingaben in das Wegplanungssystem 100 vom Sensorsystem 28 empfangen werden, die von anderen Steuermodulen (nicht dargestellt) empfangen werden, die dem autonomen Fahrzeug 10 zugeordnet sind, die vom Kommunikationssystem 36 empfangen werden und/oder von anderen Untermodulen (nicht dargestellt), die innerhalb der Steuerung 34 von 1 ermittelt/modelliert werden. Weiterhin können die Eingaben auch einer Vorverarbeitung unterzogen werden, wie beispielsweise Teilabtastung, Rauschunterdrückung, Normalisierung, Merkmalsextraktion, fehlende Datenreduktion und dergleichen.
-
In verschiedenen Ausführungsformen kann das Wegplanungssystem 100 ganz oder teilweise in das Computer-Sichtsystem 74, das Positioniersystem 76, das Leitsystem 78 und/oder das Fahrzeugsteuerungssystem 80 eingebunden werden. Wie vorstehend kurz erwähnt, ist das Wegplanungssystem 100 von 1 konfiguriert, um einen Weg für das AF 10 auszuwählen, indem es die vorhergesagten Wege der Objekte, die wahrscheinlich einen Bereich von Interesse schneiden, bestimmt (z. B. eine Fahrspur, die das AF 10 überqueren muss, um sich in den Verkehr einzufädeln), dann das Erzeugen und Suchen innerhalb eines gerichteten Graphen, der den Entscheidungspunkten entspricht, die mit Hindernisbereichen verbunden sind, die innerhalb eines raumzeitlichen Wegraums definiert sind.
-
Unter Bezugnahme auf 4 beinhaltet ein exemplarisches Wegplanungssystem im Allgemeinen ein räumliches Entscheidungspunkt-Auflösermodul (oder einfach „Auflösermodul“) 420, das als Eingabe Sensordaten 401 (z. B. optische Kameradaten, Lidardaten, Radardaten usw.) benötigt und eine Ausgabe 461 erzeugt, die einen ausgewählten Weg angibt, der das AF 10 durch einen Bereich von Interesse führt, während sich bewegende Objekte (z. B. andere Fahrzeuge) vermieden werden, deren Wege den Bereich von Interesse während eines vorbestimmten Zeitintervalls kreuzen könnten, z. B. einen „Planungshorizont“.
-
Gemäß verschiedenen Ausführungsformen beinhaltet das Auflösermodul 420 ein Bestimmungsmodul für einen Bereich von Interesse 430, ein Bestimmungsmodul für einen Objektweg 440, ein Bestimmungsmodul für den Wegraum 450 und ein Graphdefinitions- und Analysemodul 460.
-
Das Modul 430 ist im Allgemeinen konfiguriert, um einen Bereich von Interesse und einen beabsichtigten Weg des Fahrzeugs basierend auf den Sensordaten 401 zu definieren oder bei der Definition zu unterstützen. Das Modul 440 ist im Allgemeinen zum Bestimmen eines Satzes von vorhergesagten Wegen von einem oder mehreren Objekten konfiguriert, welche den Bereich von Interesse innerhalb eines Planungshorizonts (z. B. eine vorbestimmte Zeitspanne) schneiden können. Modul 450 ist im Allgemeinen konfiguriert, um innerhalb eines raumzeitlichen Wegraums, der dem Bereich von Interesse und dem Planungshorizont zugeordnet ist, einen Satz von Hindernisbereichen zu definieren, die dem Satz vorhergesagter Wege entsprechen, und eine Vielzahl von Entscheidungspunkten für jeden der Hindernisbereiche zu definieren. Modul 460 ist im Allgemeinen konfiguriert, um einen gerichteten Graphen basierend auf der Vielzahl von Entscheidungspunkten und einer Kostenfunktion zu erstellen, die auf einen Satz von Wegsegmenten angewendet wird, die die Entscheidungspunkte miteinander verbinden, und dann den gerichteten Graphen zu durchsuchen, um einen ausgewählten Weg 461 zu bestimmen, der die Kostenfunktion wesentlich verringert.
-
Die Ausgabe 421 kann verschiedene Formen annehmen, spezifiziert jedoch im Allgemeinen, als Funktion der Zeit, einen Weg in Form von Positionen, Geschwindigkeiten und Beschleunigungen des Typs, der typischerweise durch das Leitsystem 78 von 3 erzeugt werden kann. Das heißt, der Begriff „Weg“, wie er in Verbindung mit den Maßnahmen des AF 10 verwendet wird, beinhaltet im Allgemeinen neben den Positionsinformationen in Abhängigkeit von der Zeit auch eine Reihe von geplanten Beschleunigungen, Bremsereignissen und dergleichen, die das beabsichtigte Manöver durchführen. Aus Gründen, die nachstehend erörtert werden, kann auf das raumzeitliche Entscheidungspunkt-Auflösermodul 420 hier auch durch die Kurzbezeichnung „Trompetenauflösermodul“ Bezug genommen werden.
-
Eines oder mehrere der vorstehend beschriebenen Module (z. B. die Module 420, 430, 440, 450 und 460) als ein oder mehrere maschinelle Lernmodelle implementiert werden, die einem überwachten, unbeaufsichtigten, teilüberwachten oder verstärkten Lernen unterzogen werden und Klassifizierungen (z. B. binäre oder mehrstufige Klassifizierungen), Regression, Clustering, Dimensionalitätsreduktion und/oder solche Aufgaben durchführen. Beispiele für diese Modelle sind künstliche neuronale Netze (ANN) (z. B. rekurrierende neuronale Netze (RNN) und faltungsneuronale Netze (CNN)), Entscheidungsbaummodelle (z. B. Klassifikations- und Regressionsbäume (CART)), Ensemble-Lernmodelle (z. B. Boosting, Bootstrapped Aggregation, Gradienten-Boost-Maschinen und Random Forest), Bayes'sche Netzwerkmodelle (z. B. naive Bayes), Hauptkomponentenanalyse (PCA), Unterstützungsvektormaschinen (SVM), Clustering-Modelle (wie K-Neighbor, K-Mittel, Erwartungsmaximierung, hierarchisches Clustering usw.), lineare Diskriminanzanalysemodelle. In einigen Ausführungsformen kann das Lernen aller im Modul 420 integrierten Modelle in einem vom Fahrzeug 10 entfernten Systems (z. B. das System 52 in 2) und anschließend in das Fahrzeug 10 heruntergeladen werden, um es während des normalen Betriebs des Fahrzeugs 10 zu verwenden. In weiteren Ausführungsformen erfolgt das Lernen zumindest teilweise innerhalb der Steuerung 34 des Fahrzeugs 10 selbst, und das Modell wird anschließend mit externen Systemen und/oder anderen Fahrzeugen einer Flotte geteilt (wie in 2 dargestellt).
-
Unter jetziger Bezugnahme auf 5 und fortgesetzter Bezugnahme auf die 1-4, veranschaulicht ein Ablaufdiagramm ein Steuerverfahren 500, das von dem Wegplanungssystem 100 (z. B. Modul 420) gemäß der vorliegenden Offenbarung ausgeführt werden kann. Wie angesichts der Offenbarung zu erkennen ist, ist die Abfolge der Vorgänge innerhalb der Verfahrens nicht auf die sequenzielle Ausführung beschränkt, wie in der Figur dargestellt, sondern kann in einer oder mehreren variierenden anwendbaren Reihenfolgen gemäß der vorliegenden Offenbarung durchgeführt werden. In verschiedenen Ausführungsformen kann das Verfahren basierend auf einem oder mehreren vordefinierten Ereignissen zur Ausführung geplant werden und/oder kontinuierlich während des Betriebs des autonomen Fahrzeugs 10 ausgeführt werden.
-
In verschiedenen Ausführungsformen beginnt das Verfahren bei 501, in welchem ein „Bereich von Interesse“ und ein beabsichtigter Weg des AF 10 bestimmt werden. Im Allgemeinen bezieht sich der Ausdruck „Bereich von Interesse“ auf jeden geschlossene räumliche Bereich (z. B. eine Fahrbahn, Kreuzung oder dergleichen), die das AF 10 kurzfristig (z.°B. innerhalb eines vorbestimmten Zeitintervalls oder „Planungshorizonts“) durchqueren möchte. Dieser Bereich kann beispielsweise durch das Leitsystem 78 von 3 in Verbindung mit Modul 430 bestimmt und auf verschiedene Arten spezifiziert werden. So kann beispielsweise der Bereich von Interesse als Polygon, kurvenförmige geschlossene Kurve oder eine andere geschlossene Form definiert werden. In einigen Ausführungsformen ist die „Breite“ des Bereichs von Interesse (d. h. in einer Richtung senkrecht zur beabsichtigten Bewegung des AF 10 innerhalb des Bereichs von Interesse) gleich der Breite des AV plus einem vorbestimmten Grenzabstand oder Pufferabstand (z. B. den Puffer 11 in 7). Es versteht sich, dass die Art des Bereichs von Interesse und der beabsichtigte Weg je nach Kontext und dem für das AV 10 geplanten Manöver variieren (z. B. ungeschütztes Linksabbiegen, einfädeln in den Verkehr, Einfahren in den Gegenverkehr, Umfahren eines in zweiter Reihe geparkten Fahrzeugs, Überholen eines langsamen Autos auf der linken Seite usw.).
-
6 verdeutlicht ein exemplarisches Szenario, das zum Verständnis der vorliegenden Thematik beiträgt. Wie dargestellt, weist das AF 10 einen beabsichtigten Weg 610 auf, der einem ungeschützten Linksabbiegen in eine Spur 621 an einer Kreuzung 600 entspricht. Wie ebenfalls in 6 dargestellt, sind eine Reihe von Fahrzeugen (oder „Hindernisse“), die bei der Entscheidung, ob und/oder wie das AF 10 seine Richtungsänderung vollziehen soll, sowie sein Ziel und seine Beschleunigung und Geschwindigkeit während dieser Richtungsänderung relevant sein könnten. So kann beispielsweise das AF 10 ein entgegenkommendes Fahrzeug 601 beobachten, dessen Trajektorie anzeigt, dass es beabsichtigt, die Kreuzung 600 zu überqueren und auf der Spur 622 weiterzufahren, und ein weiteres Fahrzeug 602, dessen Trajektorie anzeigt, dass es beabsichtigt, nach rechts in die gleiche Spur 621 abzubiegen, die auch das AF 10 anvisiert. Der Bereich von Interesse in diesem Szenario ist der Bereich (oder die Fahrspur), den das AF 10 voraussichtlich im folgenden Wegverlauf 610 durchqueren wird. In diesem Zusammenhang stellt 7 eine vereinfachte Version von 6 dar, die bestimmte Merkmale des veranschaulichten Szenarios isoliert, nämlich einen Bereich von Interesse 702, der dem beabsichtigten Weg 703 des AF 10 entspricht, während es nach links abbiegt, sowie die Wege 611 und 612 der Fahrzeuge 601 bzw. 602. Wie bereits erwähnt, ist der Bereich von Interesse 702 in 7 zwar als Polygon dargestellt, wobei die vorliegenden Ausführungsformen nicht auf diese Darstellungen beschränkt sind.
-
Darüber hinaus ist zu beachten, dass die vorliegenden Systeme und Verfahren nicht auf ungeschützte Linksabbiegeszenarien, wie in 6 dargestellt, beschränkt sind und in jedem Kontext eingesetzt werden können, in dem das AF 10 einen beabsichtigten Weg innerhalb eines Bereichs von Interesse aufweist, der die Berücksichtigung von sich bewegenden Objekten (z. B. andere Fahrzeuge) in der Umgebung erfordert. Unter kurzzeitiger Bezugnahme auf 14 können beispielsweise Systeme gemäß verschiedenen Ausführungsformen in den Fällen verwendet werden, in denen das AF 10 beim Versuch, von einer Fahrspur 1401 aus in die Fahrspur 1402 einzufahren, unter Berücksichtigung der entgegenkommenden Fahrzeuge 1421 und 1422 einen beabsichtigten Weg 1451 durch den Bereich von Interesse 1461 aufweist. 15 zeigt ein weiteres Beispiel, in dem das AF 10 einen beabsichtigten Weg 1452 aufweist, der es durch einen Bereich von Interesse 1462 um ein in zweiter Reihe geparktes Fahrzeug 1423 unter Berücksichtigung des entgegenkommenden Fahrzeugs 1424 führt. Wie dargestellt, führt der Weg 1452 das AF 10 von der Spur 1403 zur Spur 1404 und zurück zur Spur 1403.
-
Unter erneuter Bezugnahme auf 5 werden vorhergesagten Wege von Objekten (oder „Hindernissen“), welche den Bereich von Interesse wahrscheinlich schneiden (und vom AF 10 unter Verwendung des Sensorsystems 28 verfolgt werden), innerhalb eines vorbestimmten Zeitintervalls oder „Planungshorizonts“(502) bestimmt (z. B. über das Modul 440). Diese Bestimmung kann beispielsweise die Position, Geschwindigkeit, Beschleunigung, Stellung, Größe und alle anderen relevanten Attribute von Objekten in der Nähe sowie die Position, Größe und Geometrie des Bereichs von Interesse und des Planungshorizonts berücksichtigen.
-
Das Computer-Sichtsystem 74 von 3 kann verwendet werden, um zu bestimmen, welche Objekte, falls vorhanden, wahrscheinlich den Bereich von Interesse innerhalb des Planungshorizonts schneiden werden. In diesem Zusammenhang kann das Zeitintervall des Planungshorizonts abhängig von einer Reihe von Faktoren variieren, wobei die Ausführungszeit in einer Ausführungsform zwischen ca. 10-20 Sekunden, z. B. 15 Sekunden, liegt. Der Umfang der möglichen Ausführungsformen ist jedoch nicht so begrenzt. Unter erneuter Bezugnahme auf das in 7 abgebildete Beispiel ist zu erkennen, dass sich die Wege 611 und 612 (bei 661 bzw. 662) mit dem Bereich von Interesse 702 schneiden.
-
Sobald der Bereich von Interesse und mögliche Hindernisse bestimmt sind, wird dann ein raumzeitlicher Wegraum durch das Modul 450 (bei 503) basierend auf dem Planungshorizont und dem Bereich von Interesse definiert. Gemäß einer Ausführungsform ist der raumzeitliche Wegraum ein planarer kartesischer Raum (ℝ2), in dem eine Achse der zukünftigen Fahrtstrecke (d) entlang des beabsichtigten Weges von AF entspricht, und eine andere Achse entspricht der Zeit (t).
-
8 zeigt eine Wegplanungsvisualisierung (oder einfach „Visualisierung“) 801, die einen raumzeitlichen Wegraum (oder einfach „Raum“) 850 veranschaulicht, der einen Bereich darstellt, in dem mögliche Wegsegmente (für das AF 10 von 7) definiert werden können, wie im Folgenden näher beschrieben wird. Es versteht sich, dass die Visualisierung 801 (sowie die nachfolgenden Visualisierungen) im Allgemeinen nicht durch das System 100 angezeigt oder grafisch dargestellt werden. Das heißt, diese Visualisierungen werden bereitgestellt, um ein intuitives Verständnis darüber bereitzustellen, wie System 100 gemäß verschiedenen Ausführungsformen arbeiten kann.
-
Mit weiterem Bezug auf 8 ist der Raum 850 der Visualisierung 801 auf der rechten Seite durch den Planungshorizont 860 (z. B. ein vorbestimmtes Zeitintervall, in dem das AF 10 versucht, ein Manöver abzuschließen) und nahe der Spitze durch eine Linie 710, die dem Ende des Bereichs von Interesse 702 entspricht (z. B. Fahrspurende 710 von 7), begrenzt. Der Anfangszustand von AF 10 (der beispielsweise der Zeit und Position unmittelbar vor Eintritt des AF 10 in den Bereich von Interesse entspricht) entspricht Punkt 801 (z. B. d, t = [0,0]), und der Vektor 811 gibt die Anfangsgeschwindigkeit des AF 10 an, wenn es in den Bereich von Interesse 702 eintritt.
-
Daher ist das Ziel des AF 10 im Allgemeinen das Erreichen des Spurendes 710 innerhalb des Planungshorizonts (oberste horizontale Linie in 8). Es kann jedoch der Fall sein, dass das AF 10 dies nicht tun kann (z. B. aufgrund des Vorhandenseins vieler großer Hindernisse, die seinen Weg schneiden), und stattdessen eine andere Zwischenposition am Ende des Planungshorizonts 860 erreichen wird (was eine nachfolgende Wegsuche erfordert, um den beabsichtigten Weg zu vervollständigen).
-
Es versteht sich, dass das AF 10 einem Satz kinematischer Beschränkungen unterliegen kann, die im Allgemeinen in Abhängigkeit von der Art des AF 10 variieren. Solche kinematischen Beschränkungen (die als durch einen Bediener konfigurierbare Einstellungen ausgeführt werden können) können beispielsweise maximale Beschleunigung, minimale Beschleunigung, maximale Geschwindigkeit, minimale Geschwindigkeit und maximalen Ruck (d. h. Änderungsrate der Beschleunigung) beinhalten.
-
In dieser Hinsicht ist es offensichtlich, dass die Steigung einer Kurve an einem beliebigen Punkt innerhalb der Visualisierung 801 der momentanen Geschwindigkeit eines Objekts (z. B. AF 10) entspricht und die Änderungsrate der Steigung der momentanen Beschleunigung dieses Objekts entspricht. Somit veranschaulicht 8 zwei von der Anfangsposition 801 ausgehende Grenzen: eine Grenze 810, die einem maximalen Beschleunigungssegment 811 entspricht, gefolgt von einem maximalen Geschwindigkeitssegment 812, und einer Grenze 820, die ein minimales Beschleunigungssegment (oder maximale Verzögerungssegment) 821, ein minimales Geschwindigkeitssegment 822 und ein „Stopp“-Segment 823 beinhaltet. Es ist ersichtlich, dass die Grenzen 810 und 820, wenn sie gemeinsam von der Ausgangsposition 801 nach außen ausweichen, eine Form definieren, die an eine Trompetenschalltrichter erinnert, daher der Abkürzungsname „Trompetenauflöser“, wie er hier verwendet wird.
-
Unter erneuter Bezugnahme auf 5 werden ein oder mehrere Hindernisbereiche innerhalb des raumzeitlichen Wegraums (bei 504) durch das Modul 450 definiert. Diese Hindernisbereiche sind konfiguriert, um die geschätzten zukünftigen Positionen von jedem der bei 502 identifizierten Objekte in Bezug auf das AF 10 sowohl bezüglich Zeit als auch Position anzugeben. Somit können Hindernisbereiche sowohl dem stationären als auch sich bewegenden Hindernis entsprechen. Bezugnehmend auf 9 sind beispielsweise zwei Hindernisbereiche in der Visualisierung 802 definiert: Hindernisbereich 910 (entsprechend der Wegkreuzung 661 des Fahrzeugs 601 in 7) und Hindernisbereich 920 (entsprechend der Wegkreuzung 662 des Fahrzeugs 602 in 7).
-
Während die Bereiche 910 und 920 als Rechtecke dargestellt sind, ist der Bereich der Ausführungsformen nicht darauf beschränkt. Die gestrichelten Linien innerhalb der Bereiche 910 und 920 stellen die tatsächlichen Wege dar, die wahrscheinlich von den Fahrzeugen 601 und 602 genommen werden. Somit kann jede geeignete Polygon- oder krummlinige Form verwendet werden, die diese wahrscheinlichen Wege umfasst. Rechtecke sind jedoch insofern vorteilhaft, da sie leicht modelliert und dargestellt werden und zum Erzeugen von Entscheidungspunkten verwendet werden können, wie im Folgenden näher beschrieben wird.
-
Sobald die Hindernisbereiche (z. B. Bereiche 910 und 920) definiert wurden, definiert das System 100 dann (bei 505) Entscheidungspunkte (innerhalb des raumzeitlichen Wegraums) für einen oder mehrere der Hindernisbereiche. Wie hierin verwendet, bedeutet der Begriff „Entscheidungspunkt“ einen Punkt auf dem Umfang von (oder innerhalb eines vorbestimmten Abstands von) einem Hindernisbereich, wie zuvor bei 504 definiert. In verschiedenen Ausführungsformen -- zum Beispiel, in denen die Hindernisbereiche Polygone sind -- sind die Entscheidungspunkte an einem oder mehreren Scheitelpunkten definiert. In verschiedenen Ausführungsformen werden die Entscheidungspunkte bei (oder nahe) einem Punkt in dem Hindernisbereich definiert, der ein Minimum bezüglich der Zeit ist (z. B. der äußerst linke Punkt in einem raumzeitlichen Raum wie oben beschrieben), ein Maximum in Bezug auf die Zeit, ein Minimum in Bezug auf den Abstand (d. h. der oberste Punkt in einem räumzeitlichen Raum wie oben beschrieben) und/oder ein Maximum in Bezug auf den Abstand. Das heißt, die linke und rechte Begrenzung entspricht im Wesentlichen dem Ende der Punkte, an denen die Fahrzeuge 601 und 602 wahrscheinlich das AF 10 stören würden.
-
Unter Bezugnahme auf 10 wurden beispielsweise zwei Entscheidungspunkte in Bezug auf jeden Objektbereich definiert. Insbesondere wurden die Entscheidungspunkte 911 und 912 an gegenüberliegenden Ecken des Objektbereichs 910 definiert, und die Entscheidungspunkte 921 und 922 wurden an gegenüberliegenden Ecken des Objektbereichs 920 definiert. Wie dargestellt, ist der Entscheidungspunkt 911 bei dem minimalen Abstand (vertikale Achse) und der maximalen Zeit (horizontale Achse) des Hindernisbereichs 910 definiert, während der Entscheidungspunkt 912 bei maximalem Abstand und minimaler Zeit des Hindernisbereichs 910 definiert ist.
-
Es versteht sich, dass die Entscheidungspunkte, wie sie in der Visualisierung 803 von 10 dargestellt sind, intuitiv zu „Wegpunkten“ (in Bezug auf Position und Zeit) entsprechen, die das AF 10 erreichen müsste, um entweder auf das Passieren eines Objekts zu warten (untere rechte Entscheidungspunkte) oder vor diesem Objekt (oberen linken Entscheidungspunkten) einzufahren. Somit entspricht der Entscheidungspunkt 912 dem AF 10, das vor dem Fahrzeug 601 einfährt, und der Entscheidungspunkt 911 entspricht dem AF 10, das auf das Passieren des Fahrzeugs 601 wartet (z. B. durch Reduzieren seiner Geschwindigkeit). Es versteht sich, dass der die Erreichung von Entscheidungspunkt 922 unwahrscheinlich ist, da er links von der Grenze 810 liegt und AF 10 zwingen würde, seine kinematischen Beschränkungen bezüglich maximaler Beschleunigung und/oder maximaler Geschwindigkeit zu überschreiten.
-
Dementsprechend definiert das Modul 460 bei 506 einen Graphen (z. B. einen gerichteten azyklischen Graphen), worin die Scheitelpunkte des Graphen den Entscheidungspunkten (oder einer Teilmenge der Entscheidungspunkte) entsprechen, die bei 505 definiert sind, und die Kanten der Grafik einem bestimmten Wegsegment zwischen den Entscheidungspunkten entsprechen. Das System 100 definiert ferner einen Kostenwert, der jeder der Kanten zugeordnet ist, welche die relative Erwünschtheit des AF, das diesem Wegsegment folgt, basierend auf einer vorbestimmten Kostenfunktion quantifiziert.
-
Unter Bezugnahme auf 10 ist beispielsweise ein Satz von Wegsegmenten 931-934 dargestellt. Das Wegsegment 932 führt von der Anfangsposition 801 zu dem Entscheidungspunkt 912, das Wegsegment 934 führt vom Entscheidungspunkt 912 zum Entscheidungspunkt 921, das Wegsegment 931 führt von der Anfangsposition 801 zu dem Entscheidungspunkt 911 und das Wegsegment 933 führt vom Entscheidungspunkt 911 zum Entscheidungspunkt 921.
-
11 veranschaulicht einen gerichteten, azyklischen Graphen, der der Visualisierung 803 von 10 entspricht. Wie dargestellt, beinhaltet die Grafik 1100 einen Satz von Scheitelpunkten (oder „Knoten“) 911, 912, 801, 921 und 922 (entsprechend den äquivalenten Entscheidungspunkten in 10) und einen Satz von Kanten 1001, 1002, 1003 und 1004 mit der in 11 dargestellten Topologie. Zu beachten ist, dass der Scheitelpunkt 922 nicht mit dem Rest des Graphen 1100 verbunden ist. Das heißt, in einigen Ausführungsformen werden im Interesse der rechnerischen Komplexität Kanten nicht zu oder von nicht erreichbar Scheitelpunkten gezogen.
-
Unter Bezugnahme auf das Diagramm von 11 in Verbindung mit der Visualisierung von 10 ist ersichtlich, dass das AF 10 zwei Wegauswahlmöglichkeiten aufweist: einen ersten Weg, der Wegsegmente 932 und 934 beinhaltet, und einen zweiten Weg, der die Wegsegmente 931 und 933 beinhaltet. Intuitiv entspricht der erste Weg dem AF 10, das etwas beschleunigt, um sich vor das Fahrzeug 601 zu bewegen und dann verlangsamt, um das Fahrzeug 602 passieren zu lassen (Scheitelpunkte 801 -> 912 -> 921 in 11). Der zweite Weg entspricht dem AF 10, das etwa dieselbe Geschwindigkeit beibehält, was es dem Fahrzeug 601 ermöglicht, zu passieren, dann leicht beschleunigt wird und das Fahrzeug 602 passieren kann (Scheitelpunkte 801 -> 911 -> 921).
-
Gemäß verschiedenen Ausführungsformen wird jeder der Kanten des Graphen ein Kostenfunktionswert (oder einfach „Kosten“) zugeordnet, und ein endgültiger Weg wird ausgewählt, um die Summe dieser Kosten zu reduzieren. Unter Bezugnahme auf 11 weist beispielsweise jede der Kanten 1001-1004 ihre eigenen zugeordneten Kosten auf, die eine Ganzzahl, eine reelle Zahl oder ein beliebiges anderes quantitatives Maß sein können, das den Vergleich der Wege ermöglicht. In verschiedenen Ausführungsformen erstellt die Kostenfunktion eine Zahl basierend auf verschiedenen Faktoren. Diese Faktoren können ohne Einschränkung beinhalten: Insassenkomfort (z. B. geringere Beschleunigung und/oder Ruck), Energieverbrauch, Abstand zwischen AF 10 und Hindernissen während des Manövers (z. B. hohe Kosten für das Fahren in der Nähe eines anderen Fahrzeugs), unabhängig davon, ob und inwieweit das Ende des Bereichs von Interesse erreicht wurde (d. h., Linie 710 in 10) und dergleichen.
-
In einigen Ausführungsformen ist die Kostenfunktion für eine Bestrafung konfiguriert, wenn die Kreuzung nicht überquert wird. In anderen Ausführungsformen bestraft die Kostenfunktion, wenn in einer Kreuzung stillgestanden wird. In einigen Ausführungsformen endet die Graphensuche, wenn sie einen gültigen Weg gefunden hat oder wenn sie den besten Weg gefunden hat oder nachdem sie ein festes Budget für die Suchzeit erschöpft hat.
-
Um die Art und Weise, in der Graphen basierend auf Entscheidungspunkten erstellt werden, vollständiger zu beschreiben, zeigen 12 und 13 eine exemplarische Visualisierung 805 und einen zugehörigen Graphen 1300 gemäß einem komplexeren Szenario, in dem das AF 10 einen Weg durch sieben Hindernisse verschiedener Größen und Geschwindigkeiten finden muss. In diesem Beispiel wurden sieben rechteckige Hindernisbereiche (930, 940, 950, 960, 970, 980 und 990) definiert, die jeweils einem anderen Fahrzeug oder einem anderen Hindernis entsprechen. Wie bei dem vorherigen Beispiel wurde jedem Hindernis an den oberen linken und unteren rechten Ecken dieses Hindernisses ein Paar Entscheidungspunkte zugeordnet. Somit sind die Entscheidungspunkte 931 und 932 dem Hindernisbereich 930 zugeordnet, Entscheidungspunkte 941 und 942 sind dem Hindernisbereich 930 zugeordnet, Entscheidungspunkte 951 und 952 sind dem Hindernisbereich 950 zugeordnet, Entscheidungspunkte 961 und 962 sind dem Hindernisbereich 960 zugeordnet, Entscheidungspunkte 971 und 972 sind dem Hindernisbereich 970 zugeordnet, Entscheidungspunkte 981 und 982 sind dem Hindernisbereich 980 zugeordnet, und die Entscheidungspunkte 991 und 992 sind dem Hindernisbereich 990 zugeordnet.
-
Im Interesse der Klarheit wurden die einzelnen Wegsegmente nicht separat in 12 nummeriert, sondern können durch Spezifizieren eines Ordnungssatzes aufeinanderfolgender Entscheidungspunkte, z. B. Weg {801, 932, 962, 982, 991, 1203} bezeichnet werden. Es ist zu beachten, dass die Entscheidungspunkte 941, 971 und 981 nicht mit dem Rest des Graphen 1300 verbunden sind, da diese Punkte nicht erreichbar sind, da die kinematischen Beschränkungen wie vorstehend beschrieben nicht erreichbar sind.
-
Um den Graphen 1300 zu konstruieren, wird eine Kante zwischen einem ersten Scheitelpunkt und einem zweiten Scheitelpunkt gezeichnet, nur wenn (a) der zweite Scheitelpunkt zeitlich auf den ersten Scheitelpunkt folgt, (b) der zweite Scheitelpunkt einen größeren Abstand d aufweist als der erste Scheitelpunkt, (c) die resultierende Kante nicht durch einen Hindernisbereich verläuft und (d) die resultierende Kante eine kinematische Beschränkung (wie etwa die maximale Geschwindigkeit) nicht überschreitet. Somit ist beispielsweise der Entscheidungspunkt 962 mit beiden Entscheidungspunkten 982 und 991 verbunden, jedoch nicht mit Entscheidungspunkt 972 (der das Erreichen einer nicht erreichbaren Geschwindigkeit erfordern würde) oder Entscheidungspunkt 1203 (der das Durchlaufen des Hindernisbereichs 990 erfordern würde).
-
Es ist zu beachten, dass in 12 drei „Endpunkte“ dargestellt sind -Entscheidungspunkte 1201, 1202 und 1203. Die Entscheidungspunkte 1201 und 1202 entsprechen dem Erreichen des Endes der Fahrspur 710 (d. h. das Beenden des Manövers durch den Bereich von Interesse) und der Entscheidungspunkt 1203 entspricht dem Fall des Erreichens des Endes des Planungshorizonts 860, bevor das Ende der Fahrspur 710 erreicht wird. Das heißt, alle diese Entscheidungspunkte 1201, 1202 und 1203 sind mögliche Endpunkte, die das gewünschte Ziel erreichen. Diese Endpunkte können auf verschiedene Weise aus allen auf den Linien 710 und 860 liegenden Kandidatenendpunkten ausgewählt werden. In einer Ausführungsform wird für Entscheidungspunkte, die den Linien 710 und 860 am nächsten liegen, die Endgeschwindigkeit jedes Wegsegments, das zu diesem Entscheidungspunkt führt, berücksichtigt und projiziert, bis sie entweder die Linie 710 oder 860 schneidet. Diese Kreuzungen werden dann als Scheitelpunkte zu dem Graphen 1300 hinzugefügt. So ist beispielsweise ersichtlich, dass ein entlang des Wegsegments {962, 982} fahrendes AF 10 den Scheitelpunkt 1201 erreichen würde, wenn es die gleiche Geschwindigkeit beibehält. Auf ähnliche Weise würde das Wegsegment {962, 991} zu dem Scheitelpunkt 1202 führen, und das Wegsegment {982, 991} würde zu Scheitelpunkt 1203 führen.
-
Wieder unter Bezugnahme auf 5, nachdem auf diese Weise ein Graph erstellt und seinen Kanten Kosten zugewiesen wurden, wird (bei 507) eine geeignete Graphensuche durchgeführt, um einen Im besten Fall-Weg (niedrigste Gesamtkosten) auszuwählen. Das heißt, es wird eine Sequenz von Wegsegmenten ausgewählt, die das gewünschte Ziel des AF 10 erreicht (z. B. Fahren entlang des beabsichtigten Weges und Abschließen der Durchquerung des Bereichs von Interesse oder Erreichen des Endes des Planungshorizonts), während die Summe der Kosten der ausgewählten Wegsegmente minimiert wird. Zur Durchführung dieser Suche können verschiedene Verfahren verwendet werden. In einer Ausführungsform wird ein Djikstra-Diagramm-Suchalgorithmus verwendet. In einer weiteren Ausführungsform wird ein A*-Diagramm-Suchalgorithmus verwendet. Unabhängig von dem jeweiligen Verfahren, das zur Auswahl eines optimalen oder nahezu optimalen Weges verwendet wird, ergibt sich ein ausgewählter Weg, welcher der Ausgabe 421 des Trompetenauflösermoduls 420 in 4 entspricht.
-
Unter erneuter Bezugnahme auf das in den 12 und 13 dargestellte Szenario kann das System 100 beispielsweise bestimmen, dass der niedrigste Kostenweg durch den geordneten Satz von Scheitelpunkten {801, 923, 991, 1202} beschrieben wird. Intuitiv ist zu erkennen, dass dies eine angemessene Wahl ist, da der resultierende Weg sehr wenige Änderungen der Geschwindigkeit erfordert und einen Endpunkt 1202 am Ende des Bereichs von Interesse aufweist (d. h. das beabsichtigte Manöver wurde abgeschlossen). Die Ausgabe 421 des Moduls 420 würde dann einen Satz kinematische Werte beinhalten, die in einer beliebigen geeigneten Datenstruktur gespeichert sind und die Sequenz von Beschleunigungs-, Geschwindigkeits- und Positionswerten angeben, die von AF 10 benötigt werden, um den ausgewählten Weg auszuführen.
-
Während mindestens eine exemplarische Ausführungsform in der vorstehenden ausführlichen Beschreibung dargestellt wurde, versteht es sich, dass es eine große Anzahl an Varianten gibt. Es versteht sich weiterhin, dass die exemplarische Ausführungsform oder die exemplarischen Ausführungsformen lediglich Beispiele sind und den Umfang, die Anwendbarkeit oder die Konfiguration dieser Offenbarung in keiner Weise einschränken sollen. Die vorstehende ausführliche Beschreibung stellt Fachleuten auf dem Gebiet vielmehr einen zweckmäßigen Plan zur Implementierung der exemplarischen Ausführungsform bzw. der exemplarischen Ausführungsformen zur Verfügung. Es versteht sich, dass verschiedene Veränderungen an der Funktion und der Anordnung von Elementen vorgenommen werden können, ohne vom Umfang der Offenbarung, wie er in den beigefügten Ansprüchen und deren rechtlichen Entsprechungen aufgeführt ist, abzuweichen.