-
HINTERGRUND
-
Ein autonomes Fahrzeug muss Konsequenzen möglicher Aktionen durch Vorwegnehmen ungewisser Absichten anderer Verkehrsteilnehmer, beispielsweise Fahrzeuge, bewerten. Künftige Aktionen der anderen Verkehrsteilnehmer hängen von ihr Verhalten beherrschenden geplanten Fahrstrecken ab, die im Allgemeinen unbekannt sind, und sie hängen zusätzlich von Interaktionen zwischen den Teilnehmern ab. Ein einfaches Extrapolieren von Wegen anderer Fahrzeuge kann möglicherweise keinen Hinweis auf ihre Absichten für künftige Aktionen geben.
-
ZEICHNUNG
-
1 ist ein Diagramm einer als Beispiel dienenden Verkehrsumgebung.
-
2 ist ein Blockdiagramm eines autonomen Fahrsystems, einschließlich einer Mehrrichtlinien-Entscheidungsfällung.
-
3 ist ein Diagramm, das eine Segmentation der Fahrgeschichte eines Teilnehmers in einer Verkehrsumgebung zeigt.
-
4 ist ein Diagramm eines als Beispiel dienenden Prozesses zum Steuern eines Fahrzeugs unter Verwendung einer Mehrrichtlinien-Entscheidungsfällung.
-
DETAILLIERTE BESCHREIBUNG
-
SYSTEMÜBERBLICK
-
Ein Mehrrichtlinien-Entscheidungsfällungssystem verwendet vorteilhafterweise Informationen über die Fahrstrecke anderer Nicht-Host-Fahrzeuge zur Bestimmung einer geplanten Fahrstrecke für ein Host-Fahrzeug. Das System empfängt Daten, welche die kurz zurückliegende Fahrstrecke von jedem der Nicht-Host-Fahrzeuge beschreiben, und identifiziert Segmente innerhalb der jeweiligen Fahrstrecken, die durch eine Richtlinie aus einem diskreten Satz vordefinierter Richtlinien erklärt werden können. Hier bedeutet der Begriff ”Richtlinie” einen Satz einer oder mehrerer Regeln zur Bestimmung einer Fahrstrecke eines Fahrzeugs. Insbesondere repräsentiert ”Richtlinie” eine Absicht in Bezug auf die Fahrzeugfahrstrecke zu einem Zeitpunkt. Beispiele von Richtlinien werden nachstehend detailliert bereitgestellt und umfassen das Beibehalten oder Wechseln von Fahrspuren, Nothalts, das Überholen eines Nicht-Host-Fahrzeugs usw.
-
Auf der Grundlage der Segmentierung der jeweiligen Fahrstrecken identifiziert das Mehrrichtlinien-Entscheidungsfällungssystem Verteilungen wahrscheinlicher Richtlinien, die künftige Fahrstrecken von jedem der Nicht-Host-Fahrzeuge bestimmen. Auf der Grundlage dieser Verteilungen identifiziert das Mehrrichtlinien-Entscheidungsfällungssystem ferner eine oder mehrere Kandidatenrichtlinien zur Bestimmung der Fahrstrecke des Host-Fahrzeugs.
-
Das Mehrrichtlinien-Entscheidungsfällungssystem wählt dann Musterrichtlinien für jedes der Fahrzeuge aus, führt eine Vorwärtssimulation der Verkehrsumgebung über einen Zeithorizont aus und vergleicht die Ergebnisse mit einem festgelegten Satz von Belohnungen. Der Prozess wird iterativ wiederholt, um die Richtlinie zur Bestimmung der Fahrstrecke des Host-Fahrzeugs zu identifizieren und einzustellen. Die Verwendung eines diskreten Satzes vordefinierter Richtlinien zum Kategorisieren des Betriebs eines Fahrzeugs verringert vorteilhafterweise die Komplexität der Simulation der Interaktion von Fahrzeugen innerhalb der Verkehrsumgebung.
-
Die Mehrrichtlinien-Entscheidungsfällung für Fahrzeuge beruht auf einem verallgemeinerten Prozess zur Entscheidungsfällung, der auf dynamische, unbestimmte Umgebungen anwendbar ist, die durch eine stark interaktive Kopplung zwischen Teilnehmern gekennzeichnet sind, wie hier offenbart.
-
Allgemeiner Entscheidungsprozess
-
Es sei V ein Satz von Fahrzeugen, die in einer lokalen Umgebung interagieren, beispielsweise innerhalb eines vorgegebenen Abstands in der Art von 250 Metern eines Host-Fahrzeugs, einschließlich des Host-Fahrzeugs selbst. Zur Zeit t kann ein Fahrzeug v ∊ V eine Aktion α ν / t ∊ Av ausführen, um von einem Zustand x ν / t ∊ xν zu x ν / t+1 überzugehen. In dem System ist ein Zustand x ν / t ein Tupel aus der Pose, der Geschwindigkeit und der Beschleunigung und ist eine Aktion α ν / t ein Tupel aus Steuerungen für die Lenkung, Drossel, Bremse, das Schaltwerk und Richtungsangaben. Die Pose kann die Position eines Fahrzeugs und die Orientierung (Roll, Nick, Gier) einschließen. Die Pose kann ferner eine oder mehrere von der Geschwindigkeit, der Beschleunigung und der Drehrate einschließen. Das Schaltwerk kann ein Getriebe einschließen und einen oder mehrere Zustände, beispielsweise Fahren, Parken und Rückwärtsgang, einschließen. Richtungsangaben können Signale einschließen, welche künftige Absichten angeben, beispielsweise Abbiegsignale. Aus Gründen einer zweckmäßigen Notation soll xt alle Zustandsvariablen x ν / t für alle Fahrzeuge zur Zeit t einschließen und soll ähnlich αt ∊ A die Aktionen aller Fahrzeuge sein.
-
Die Fahrzeugdynamik wird mit einer bedingten Wahrscheinlichkeitsfunktion T(xt, αt, xt+1) = p(xt+1|xtαt) modelliert. Ähnlich wird die Beobachtungsungewissheit als Z(xt, z ν / t) = p(z ν / t|xt) modelliert, wobei z ν / t ∊ zν die durch das Fahrzeug v zur Zeit t gemachte Beobachtung ist und zt ∊ Z der Vektor aller von allen Fahrzeugen gemachten Sensorbeobachtungen ist. Bei unserem System ist eine Beobachtung z ν / t ein Tupel, das die geschätzten Posen und Geschwindigkeiten nahe gelegener Fahrzeuge und den Ort statischer Hindernisse aufweist. Ferner modellieren wir die Ungewissheit des Verhaltens anderer Agenten mit dem folgenden Fahrermodell: D(xt, z ν / t, α ν / t) = p(α ν / tx|z ν / t), wobei α ν / t ∊ A eine latente Variable ist, die von Sensorbeobachtungen abgeleitet werden muss.
-
Das Ziel unseres Fahrzeugs besteht darin, eine optimale Richtlinie π* zu finden, welche die erwartete Belohnung über einen gegebenen Entscheidungshorizont H maximiert (welcher hier manchmal auch als Zeithorizont H bezeichnet wird), wobei eine Richtlinie einer Abbildung π: X × Z
ν – A
ν ist, welche eine Aktion anhand der aktuellen maximalen a-posteriori-(MAP)-Schätzung des Zustands und einer Beobachtung ergibt:
wobei R(x
t) eine realwertige Belohnungsfunktion R: X → R ist. Die Entwicklung von p(x
t) über die Zeit wird durch
bestimmt. Der Entscheidungshorizont H kann beispielsweise eine vorgegebene Zeit in der Art von 30 Sekunden sein. Alternativ kann der Entscheidungshorizont H beispielsweise auf der Grundlage eines Typs einer Verkehrssituation in der Art einer Annäherung an eine Kreuzung, eines Fahrens auf einer Schnellstraße usw. bestimmt werden. Andere Faktoren in der Art von Umgebungsfaktoren können auch bei der Bestimmung des Entscheidungshorizonts H berücksichtigt werden.
-
Das Fahrermodell
D(xt, z ν / t, α ν / t) nimmt implizit an, dass momentane Aktionen jedes Fahrzeugs unabhängig voneinander sind, weil
α ν / t nur von x
t und
z ν / t abhängt. Momentane Aktionen können als Aktionen definiert werden, die von jedem der Fahrzeuge an einem gegebenen Zeitschritt gewählt werden und welche von der Kenntnis anderer Fahrzeugaktionen unabhängig sind. Modellierte Agenten können jedoch noch über
z ν / t auf beobachtete Zustände nahe gelegener Fahrzeuge reagieren. Das heißt, dass Fahrzeuge nicht miteinander zusammenarbeiten, wie es durch eine von a
t abhängige Aktion
α ν / t impliziert werden würde. Demgemäß kann die multivariate Dichte für ein einziges Fahrzeug v geschrieben werden als
pν(x ν / t, x ν / t+1, z ν / t, α ν / t) = p(x ν / t+1|x ν / t, α ν / t)p(z ν / t|x ν / t)p(α ν / t|x ν / t, z ν / t)p(x ν / t), (3) und die Unabhängigkeitsannahme führt schließlich zu
-
Trotz der Annahme unabhängiger Fahrzeugaktionen ist eine Marginalisierung über die großen Zustands-, Beobachtungs- und Aktionsräume in Gleichung 4 rechnerisch zu aufwändig, um eine optimale Richtlinie zeitnah zu finden. Eine mögliche Näherung zur Beschleunigung des Prozesses besteht darin, Gleichung 1 durch Ziehen von Proben aus p(xt) zu lösen. Die Probenbildung über den gesamten Wahrscheinlichkeitsraum mit Random Walks ergibt jedoch eine große Anzahl von Proben geringer Wahrscheinlichkeit. Ein Ansatz, der dafür ausgelegt ist, anhand Szenarios hoher Wahrscheinlichkeit Proben zu nehmen, verbessert die Verwendbarkeit des Entscheidungsfällungsprozesses.
-
Mehrrichtlinienansatz
-
Die folgenden beiden Schlüsselnäherungen werden vorgenommen, um anhand wahrscheinlicher Interaktionen von Verkehrsagenten Proben zu nehmen:
- 1. Zu einer gegebenen Zeit führen sowohl das Host-Fahrzeug als auch die Nicht-Host-Fahrzeuge eine aus einem diskreten Satz von Richtlinien ausgewählte Richtlinie aus.
- 2. Die Fahrzeugdynamik- und Beobachtungsmodelle werden durch deterministische, in einer geschlossenen Regelschleife erfolgende Vorwärtssimulation aller Fahrzeuge mit zugewiesenen Richtlinien genähert. In einer geschlossenen Regelschleife erfolgende Simulationen berücksichtigen mögliche Interaktionen zwischen Agenten auf der Grundlage der zugewiesenen Richtlinien.
-
Mit diesen Näherungen können die Konsequenzen von Entscheidungen über einen begrenzten Satz von Verhaltensweisen hoher Ebene, die durch die verfügbaren Richtlinien bestimmt werden (sowohl für das Host-Fahrzeug als auch für andere Agenten), bewertet werden, statt die Bewertung für jede mögliche Steuereingabe jedes Fahrzeugs auszuführen.
-
Es sei Π ein diskreter Satz von Richtlinien, wobei jede Richtlinie ein spezifisches Fahrverhalten hoher Ebene, einschließlich einer geplanten Fahrstrecke, erfasst. Jede Richtlinie π ∊ Π sei durch einen Parametervektor θ parametrisiert, der Variationen der gegebenen Richtlinie erfasst. Beispielsweise kann für eine Fahrspurfolgerichtlinie θ den ”Fahrstil” der Richtlinie erfassen, indem ihr Beschleunigungsprofil zu aggressiver oder weniger aggressiv reguliert wird. Demgemäß kann die Suche in Gleichung 1 auf einen begrenzten Satz von Richtlinien reduziert werden. Unter der Annahme, dass jedes Fahrzeug v ∊ V eine Richtlinie π ν / t ∊ Π zur Zeit t ausführt, kann das Fahrermodell für andere Agenten nun folgendermaßen ausgedrückt werden: D(xt, z ν / t, α ν / t, π ν / t) = p(α ν / t|x ν / t, z ν / t, π ν / t)p(π ν / t|xt, z0:t), (5) wobei p(π ν / t|xt, z0:t) die Wahrscheinlichkeit ist, dass das Fahrzeug v die Richtlinie π ν / t ausführt (wir beschreiben nachstehend, wie wir diese Wahrscheinlichkeit ableiten). Demgemäß kann die multivariate Pro-Fahrzeug-Dichte aus Gleichung 3 nun in Bezug auf π ν / t genähert werden: pv(x ν / t, x ν / t+1, z ν / t, α ν / t, π ν / t) = p(x ν / t+1|x ν / t, α ν / t)p(z ν / t|x ν / t)p(α ν / t|x ν / t, z ν / t, π ν / t)p(π ν / t|xt, z0:t)p(x ν / t). (6)
-
Weil schließlich die vom Host-Fahrzeug q ∊ V ausgeführte Richtlinie vollständig gesteuert werden kann, können wir das Host-Fahrzeug folgendermaßen von den anderen Agenten in p(x
t+1) trennen:
-
Bisher wurde der Aktionsraum von p(xt+1) unter der Annahme ausfaktoriert, dass Aktionen durch die verfügbaren Richtlinien gegeben sind. Gleichung 7 erfordert jedoch noch die Integration über den Zustands- und den Beobachtungsraum. Eine zweite Näherung adressiert dieses Problem. Wenn Proben von p(π ν / t|xt, z0:t) gegeben wird, die jedem Fahrzeug eine Richtlinie zuweisen, können die Interaktionen sowohl des Fahrzeugs als auch der Nicht-Host-Fahrzeuge unter ihren zugewiesenen Richtlinien in der Zeit vorwärts simuliert werden, wodurch die entsprechenden Sequenzen künftiger Zustände und Beobachtungen erhalten werden. Auf diese Weise kann die Belohnungsfunktion über einen gesamten Entscheidungshorizont bewertet werden.
-
Als Beispiel dienende Verkehrsumgebung
-
Eine als Beispiel dienende Verkehrsumgebung 10 ist in 1 dargestellt. Die Verkehrsumgebung 10 umfasst eine Schnellstraße 12, ein Host-Fahrzeug 14, ein erstes Nicht-Host-Fahrzeug 16a und ein zweites Nicht-Host-Fahrzeug 16b. In der als Beispiel dienenden Verkehrsumgebung 10 ist das Host-Fahrzeug 14 ein Fahrzeug, das programmiert ist, eine Mehrrichtlinien-Entscheidungsfällung für zumindest einige Fahrentscheidungen zu verwenden. Nicht-Host-Fahrzeuge 16 sind andere Fahrzeuge als das Host-Fahrzeug 14. Es ist zu verstehen, dass die hier vorgenommene Aussage, dass ”ein Fahrzeug programmiert wird”, bedeutet, dass ein Fahrzeug einen Computer aufweist, der wie beschrieben programmiert wird, beispielsweise einen Computer 20, wie nachstehend erörtert wird.
-
Das Host-Fahrzeug 14 wird programmiert, um eine Verkehrsumgebung 10 zu definieren, welche das Host-Fahrzeug 14 und ein oder mehrere Nicht-Host-Fahrzeuge 16 innerhalb eines vordefinierten Abstands zum Host-Fahrzeug 14 aufweist. Der vordefinierte Abstand zum Host-Fahrzeug 14 kann beispielsweise als sich innerhalb eines ersten festen Abstands in einer ersten spezifizierten Richtung, beispielsweise 20 Meter zur linken oder zur rechten Seite des Host-Fahrzeugs 14, und als sich innerhalb eines zweiten festen Abstands in einer zweiten spezifizierten Richtung, beispielsweise 100 Meter vor oder hinter dem Host-Fahrzeug 14, definiert werden. Die Bestimmung des ”vordefinierten Abstands” kann zusätzlich oder alternativ von einer bestimmten Verkehrssituation abhängen. Beispielsweise kann in einer Parksituation ein kleinerer Bereich als innerhalb des vordefinierten Abstands vom Host-Fahrzeug 14 angesehen werden und kann auf einer Schnellstraße ein größerer Bereich als innerhalb des vordefinierten Abstands vom Host-Fahrzeug 14 angesehen werden. Ferner kann der vordefinierte Abstand vom Host-Fahrzeug 14 als von anderen Bedingungen abhängend definiert werden, beispielsweise von der Geschwindigkeit des Host-Fahrzeugs 14, von Wetterbedingungen, von Lichtbedingungen (Tag oder Nacht) usw.
-
Das Host-Fahrzeug 14 wird ferner programmiert, Daten in Bezug auf die neuere Fahrgeschichte von jedem von dem einen oder den mehreren Nicht-Host-Fahrzeugen 16 zu sammeln und eine Änderungspunktanalyse an jeder der Fahrgeschichten der Nicht-Host-Fahrzeuge 16 auszuführen. Das Host-Fahrzeug 14 unterteilt die neuere Fahrgeschichte von jedem der Nicht-Host-Fahrzeuge 16 in Segmente und identifiziert eine Verteilung wahrscheinlicher Richtlinien 46 (2), beispielsweise das Fahren entlang einer Fahrspur, das Abbiegen an einer Kreuzung usw., welche das Nicht-Host-Fahrzeug 16 während jedes der Segmente beherrscht haben.
-
Auf der Grundlage der Verteilung wahrscheinlicher Richtlinien 46 für jedes der anderen Fahrzeuge 16 in der Verkehrsumgebung 10 wird das Host-Fahrzeug 14 ferner programmiert, eine oder mehrere Richtlinien 46 für das Beherrschen seines Verhaltens zu bestimmen. Eine oder mehrere in einer geschlossenen Regelschleife erfolgende Simulationen der Verkehrsumgebung 10 werden auf der Grundlage von Proben aus den Verteilungen der Richtlinie 46 für die anderen Fahrzeuge 16 und das Host-Fahrzeug 14 ausgeführt. Beispielsweise kann ein einfahrendes Nicht-Host-Fahrzeug 16 beschleunigen, und das Host-Fahrzeug 14 kann verlangsamen, um ihm Platz zu machen. Die Ergebnisse der Simulationen werden mit einer Belohnungsfunktion, d. h. einem Satz gewünschter Ergebnisse für die Verkehrsumgebung 10, verglichen. Auf der Grundlage der Ergebnisse der einen oder der mehreren Simulationen wird das Host-Fahrzeug 14 ferner programmiert, über eine Richtlinie 46 für das Beherrschen des Fahrverhaltens an einem aktuellen Zeitschritt zu entscheiden. Ein Zeitschritt kann als ein Zeitraum zwischen aufeinander folgenden Aktualisierungen einer Richtlinie für das Beherrschen des Host-Fahrzeugs definiert werden. Der Zeitschritt für das Mehrrichtlinien-Entscheidungsfällungssystem kann periodisch sein, beispielsweise in einem Bereich von einem bis vier Hertz liegen. Auf diese Weise kann das Host-Fahrzeug 14 auf der Grundlage gekoppelter Interaktionen mit den Nicht-Host-Fahrzeugen 16 iterative Fahrentscheidungen fällen.
-
In manchen Fällen kann das Fahrzeug 14 ein ungewöhnliches Verhalten eines oder mehrerer anderer Fahrzeuge 16 feststellen, das nicht durch den für die Umgebung 10 verfügbaren Satz von Richtlinien 46 erklärt werden kann, beispielsweise das Fahren in der falschen Richtung auf einer Schnellstraße, ein erratisches Fahren usw. In diesem Fall kann eine einzige Richtlinie, die nur dem aktuellen Zustand und der aktuellen Karte der Umgebung Rechnung trägt, ausgewählt werden, um das Nicht-Host-Fahrzeug 16 zu modellieren, das das ungewöhnliche Verhalten zeigt.
-
Richtlinien können Vorkehrungen aufweisen, um der Interaktion mit Fahrzeugen, die ein ungewöhnliches Verhalten zeigen, Rechnung zu tragen. Beispielsweise kann eine Fahrspur-Nominal-Richtlinie, die das Host-Fahrzeug 14 beherrscht, vorsehen, in einem größeren Abstand zu folgen, falls ein Nicht-Host-Fahrzeug 16 vor dem Host-Fahrzeug 14 als ungewöhnlich gekennzeichnet wird.
-
Ferner kann in manchen Fällen eine Mehrrichtlinien-Entscheidungsfällung ausgesetzt werden, wenn ein Nicht-Host-Fahrzeug 16, das ein ungewöhnliches Verhalten zeigt, festgestellt wird, und es kann eine alternative Form der Fahrentscheidungsfällung verwendet werden.
-
ALS BEISPIEL DIENENDE SYSTEMELEMENTE
-
Ein als Beispiel dienendes Host-Fahrzeug 14, das programmiert ist, um eine Mehrrichtlinien-Entscheidungsfällung für das Treffen von Fahrentscheidungen zu verwenden, ist in 2 dargestellt. Das Host-Fahrzeug umfasst einen Computer 20, eine Benutzerschnittstelle 22, einen oder mehrere Datensammler 24, eine Straßennetzdefinitionsdatei (RNFD) 25 und eine oder mehrere Steuereinrichtungen 26. Das Host-Fahrzeug 14 ist im Allgemeinen ein Landfahrzeug mit drei oder mehr Rädern, beispielsweise ein Personenfahrzeug, ein leichter Lastwagen usw. Das Host-Fahrzeug 14 hat einen Vorderteil, einen Hinterteil, eine linke Seite und eine rechte Seite, wobei die Begriffe Vorderteil, Hinterteil, links und rechts aus der Perspektive eines Bedieners des Host-Fahrzeugs 14 zu verstehen sind, der in einer Standardbetriebsposition, d. h. dem Lenkrad gegenüberstehend, auf dem Fahrersitz sitzt.
-
Der Computer 20 weist im Allgemeinen einen Prozessor und einen Speicher auf, wobei der Speicher eine oder mehrere Formen computerlesbarer Medien aufweist und Befehle speichert, die durch den Prozessor ausführbar sind, um verschiedene Operationen auszuführen, einschließlich jener, die hier offenbart sind. Ferner kann der Computer 20 eine oder mehrere andere Rechenvorrichtungen aufweisen und/oder kommunikativ damit gekoppelt sein, die im Host-Fahrzeug 14 enthalten sind, um verschiedene Fahrzeugkomponenten zu überwachen und/oder zu steuern. Der Computer 20 ist im Allgemeinen für Kommunikationen auf einem Steuereinrichtungsbereichsnetz-(CAN)-Bus oder dergleichen programmiert und eingerichtet.
-
Der Computer 20 kann auch eine Verbindung zu einem Bord-Diagnostikverbinder (OBD-II), einem CAN-(Steuereinrichtungsbereichsnetz – ”Controller Area Network”)-Bus und/oder anderen verdrahteten oder drahtlosen Mechanismen aufweisen. Über einen oder mehrere solche Kommunikationsmechanismen kann der Computer 20 Nachrichten zu verschiedenen Vorrichtungen in einem Fahrzeug senden und/oder Nachrichten von den verschiedenen Vorrichtungen empfangen, beispielsweise Steuereinrichtungen, Betätigungselementen, Sensoren usw., unter Einschluss von Datensammlern 24 und Steuereinrichtungen 26. Alternativ oder zusätzlich kann in Fällen, in denen der Computer 20 tatsächlich mehrere Vorrichtungen umfasst, der CAN-Bus oder dergleichen für Kommunikationen zwischen Vorrichtungen verwendet werden, die in dieser Offenbarung als der Computer 20 repräsentiert sind. Zusätzlich kann der Computer 20 für eine Kommunikation mit anderen Vorrichtungen über verschiedene verdrahtete und/oder drahtlose Netztechnologien, beispielsweise Mobilfunk, Bluetooth, einen universellen seriellen Bus (USB), verdrahtete und/oder drahtlose Paketnetze usw. ausgelegt sein.
-
Ein Speicher des Computers 20 speichert im Allgemeinen gesammelte Daten. Gesammelte Daten können eine Vielzahl durch Datensammler 24 in einem Host-Fahrzeug 14 gesammelter Daten und/oder davon abgeleitete Daten umfassen. Beispiele gesammelter Daten 24 können beispielsweise Daten über die Fahrgeschichte eines oder mehrerer Nicht-Host-Fahrzeuge 16 umfassen, beispielsweise die Position (beispielsweise Geokoordinaten, Abstand vom Host-Fahrzeug 14 usw.) des Nicht-Host-Fahrzeugs 16 als Funktion der Zeit, die Geschwindigkeit des Nicht-Host-Fahrzeugs 16 als Funktion der Zeit, die Fahrtrichtung, die Anzahl und die Größe der Richtungsänderungen und der Geschwindigkeit zu verschiedenen Zeitpunkten usw. Die gesammelten Daten können ferner beispielsweise Informationen in der Art eines Typs (beispielsweise leichter Lastwagen, Personenfahrzeug, Minivan usw.), Abmessungen, der Bauart, des Modells usw. des einen oder der mehreren Nicht-Host-Fahrzeuge 16 umfassen. Die gesammelten Daten können zusätzlich Daten umfassen, die anhand von Datensammlern 24 empfangenen Daten im Computer 20 berechnet wurden. Im Allgemeinen können die gesammelten Daten beliebige Daten umfassen, die von den Datensammlern 24 zusammengestellt, durch Fahrzeug-zu-Fahrzeug-(V2V)- oder durch Fahrzeug-zu-Infrastruktur-(V2I)-Kommunikationen empfangen, von anderen Quellen gesammelt oder empfangen und/oder anhand dieser Daten berechnet werden können.
-
Der Computer 20 kann programmiert werden, Daten von den Datensammlern 24 und sich auf die Ziele, beispielsweise Bestimmungsort, Route, Ankunftszeit usw. des Host-Fahrzeugs 14, beziehende Daten zu empfangen. Auf der Grundlage der gesammelten Daten kann der Computer 20, wie nachstehend beschrieben wird, eine Verkehrsumgebung 10 definieren, Nicht-Host-Fahrzeuge 16 identifizieren, die an der Verkehrsumgebung 10 teilnehmen, und eine Richtlinie 46 für das Host-Fahrzeug 14 bestimmen.
-
Der Computer 20 kann ferner programmiert werden, Daten in Bezug auf die Ziele des Host-Fahrzeugs 14 und andere Daten, die sich auf das Host-Fahrzeug 14 beziehen, beispielsweise Karten eines Gebiets, in dem das Fahrzeug 14 betrieben wird, zu sammeln. Beispielsweise kann der Computer 20 vom Benutzer eine Eingabe über die Benutzerschnittstelle 22 empfangen, welche den Bestimmungsort des Benutzers, die Route, die der Benutzer gerne nehmen möchte, den Fahrstil (konservativ, sportlich) usw. angibt. Der Computer 20 kann ferner beispielsweise Karten des Gebiets aufweisen oder beispielsweise von einem GPS-System oder aus einem Speicher empfangen. Auf der Grundlage der empfangenen Daten kann der Computer 20 etwas ausführen, was als ”Missionsplanung” bezeichnet wird, d. h. die Planung eines Wegs zu einem gewünschten Bestimmungsort in Bezug auf Fahrtrichtungen auf einer Straßennetzkarte. Der Computer 20 kann ferner programmiert werden, diese Daten zur Weiterverwendung in einem Speicher zu speichern, beispielsweise zur Verwendung bei der Bestimmung einer Fahrtrichtlinie 46 und/oder beim Fahren des Host-Fahrzeugs 14.
-
Auf der Grundlage einer Richtlinie 46 und von Missionsplanungsdaten kann der Computer 20 Befehle für das Steuern des Fahrzeugs 14 entsprechend der Richtlinie 46 und der geplanten Mission bestimmen und zu Fahrzeugsteuereinrichtungen 26 senden.
-
Im Allgemeinen kann jede Steuereinrichtung 26 einen Prozessor aufweisen, der programmiert ist, um Befehle vom Computer 20 zu empfangen, die Befehle auszuführen und Nachrichten zum Computer 20 zu senden. Eine elektronische Steuereinheit (ECU), wie sie bekannt ist, welche überdies eine Programmierung für den Betrieb aufweist, wie hier beschrieben, ist ein Beispiel einer Steuereinrichtung 26. Ferner kann jede der Steuereinrichtungen 26 ein Betätigungselement oder dergleichen aufweisen oder kommunikativ damit gekoppelt sein, welches bereitgestellt ist, um eine Fahrzeugkomponente zu betätigen, beispielsweise Bremsen, Lenkung, Drossel usw. Beispielsweise kann eine Bremsensteuereinrichtung 26 einen Prozessor und eine Pumpe zum Einstellen des Drucks der Bremsflüssigkeit aufweisen. Bei diesem Beispiel kann der Prozessor nach dem Empfang eines Befehls vom Computer 20 die Pumpe aktivieren, um eine Kraftunterstützung bereitzustellen oder einen Bremsvorgang einzuleiten.
-
Ferner können die Steuereinrichtungen 26 jeweils Sensoren aufweisen oder auf andere Weise als Datensammler 24 wirken, um dem Computer 20 Daten in Bezug auf die Fahrzeuggeschwindigkeit, den Fahrzeuglenkwinkel, die Höhe einer Aufhängung usw. bereitzustellen. Beispielsweise kann die Bremssteuereinheit 26 dem durch die Bremssteuereinrichtung 26 ausgeübten Bremsdruck entsprechende Daten zum Computer 20 senden.
-
Die Datensammler 24 können eine Vielzahl von Vorrichtungen einschließen. Beispielsweise können die Datensammler 24 Lidar, Radar, Videokameras, Ultraschallsensoren, Infrarotsensoren zum Messen der Umgebung und beispielsweise zum Verfolgen von Nicht-Host-Fahrzeugen 16 aufweisen. Datensammler 24 können ferner Komponenten aufweisen, welche dynamische Daten des Host-Fahrzeugs 14 sammeln, wie Geschwindigkeit, Gierrate, Lenkwinkel usw. Ferner sind die vorstehenden Beispiele nicht als einschränkend vorgesehen. Andere Typen von Datensammlern 24, beispielsweise Beschleunigungsmesser, Gyroskope, Drucksensoren, Thermometer, Barometer, Höhenmesser usw., könnten verwendet werden, um dem Computer 20 Daten bereitzustellen.
-
Eine Straßennetzdefinitionsdatei (RNDF) 25 kann codierte topologische metrische Karten der Straßennetze, wo das Host-Fahrzeug 14 arbeiten kann, aufweisen. Die topologischen metrischen Karten weisen Breiten- und Längenkoordinaten für Straßenmerkmale und andere Objekte in der Umgebung auf und sind auf der Grundlage einer Ableitung des RNDF-Dateiformats codiert. Die RNDF 25 kann Kartendaten, beispielsweise dem Computer 20, zuführen.
-
Das Host-Fahrzeug 14 kann ferner eine Benutzerschnittstelle 22 aufweisen, die in den Computer 20 aufgenommen sein kann oder kommunikativ damit gekoppelt werden kann. Die Benutzerschnittstelle 22 kann verwendet werden, um es einem Benutzer zu ermöglichen, eine Richtlinie-46-Auswahlprozedur zu überwachen und/oder auszuführende Richtlinien 46 manuell auszuwählen. Die Schnittstelle 22 kann eine oder mehrere Ausgabevorrichtungen in der Art einer Anzeige, von Lautsprechern usw. zur Übermittlung von Informationen zu einem Benutzer aufweisen. Die Schnittstelle 22 kann ferner eine oder mehrere Eingabevorrichtungen in der Art einer Berührungsbildschirmanzeige, einer Tastatur, einer Gestenerkennungsvorrichtung, von Schaltern usw. zum Empfangen einer Eingabe vom Benutzer aufweisen.
-
Der Computer 20 kann programmiert werden, sich auf die Nicht-Host-Fahrzeuge 16 beziehende Daten zu speichern. Wie vorstehend beschrieben wurde, können diese Daten Daten einschließen, welche die Geschichte von Datenpunkten, beispielsweise die Pose des Nicht-Host-Fahrzeugs 16 als Funktion der Zeit, die Geschwindigkeit des Nicht-Host-Fahrzeugs 16 als Funktion der Zeit, die Fahrtrichtung, die Anzahl und den Betrag von Änderungen der Richtung und der Geschwindigkeit zu verschiedenen Zeitpunkten usw. repräsentieren. Die Geschichte kann periodisch, beispielsweise alle 0,3 s, mit einer maximal zulässigen Anzahl von Geschichtspunkten abgetastet werden. Die maximal zulässige Anzahl von Geschichtspunkten kann beispielsweise 400 sein, was die vorhergehenden zwei Minuten des Fahrverhaltens für jedes Nicht-Host-Fahrzeug 16 zeigen kann. Die maximal zulässige Anzahl von Geschichtspunkten kann vom gegenwärtig betrachteten Typ der Fahrsituation abhängen. Beispielsweise können für ein Parkmanöver weniger Geschichtspunkte erforderlich sein als für das Fahren auf einer Schnellstraße.
-
Gesammelte Daten, die sich auf die Nicht-Host-Fahrzeuge beziehen, können ferner beispielsweise Informationen über jedes der Nicht-Host-Fahrzeuge 16, wie den Typ, die Abmessungen, die Bauart, das Modell usw., umfassen. Die gesammelten Daten können zusätzlich anhand dieser im Computer 20 berechnete Daten umfassen.
-
Der Computer 20 enthält und veröffentlicht Kostenkarten, welche Hindernisse in der Umgebung angeben, die das Host-Fahrzeug 14 vermeiden sollte. Die Kostenkarten geben ferner ”virtuelle” Hindernisse an, d. h. Gebiete, in denen das Host-Fahrzeug 14 nicht fahren sollte, wie Fahrspuren entgegenkommenden Verkehrs. Der Computer 20 erzeugt Kostenkarten dieser Hindernisse und virtueller Hindernisse und speichert die Kostenkarten. Die Kostenkarten können beispielsweise zur Auswahl einer Richtlinie 46 zum Beherrschen des Host-Fahrzeugs 14 verwendet werden. Die Kostenkarten können verwendet werden, um Aktionen zu bestimmen, die vom Host-Fahrzeug 14 zu unternehmen sind, um eine Richtlinie 46 zu implementieren. Die Kostenkarten können ferner verwendet werden, um Aktionen zu bestimmen, die vom Host-Fahrzeug 14 unabhängig von einer Richtlinie 46 auszuführen sind, beispielsweise um Hindernisvermeidungsmanöver zu implementieren.
-
Der Speicher des Computers 20 speichert ferner im Allgemeinen Richtlinien 46. Jede Richtlinie 46 soll ein anderes Verhalten hoher Ebene und eine andere Absicht erfassen und kann eine geplante Fahrstrecke aufweisen. Als Beispiel dienende Richtlinien können das Folgen einer Fahrspur, das Wechseln einer Fahrspur oder das Abbiegen an einer Kreuzung aufweisen. Die Richtlinien 46 können eine oder mehrere Aktionen angeben, die ein Fahrzeug 14, 16 bei der Unterstützung der Richtlinie ausführen kann. Beispielsweise kann das Fahrzeug 14, 16 für eine Fahrspur-Nominal-Richtlinie (siehe unten) Aktionen für das Lenken des Fahrzeugs zu einer Mittellinie einer aktuellen Fahrspur, auf der das Fahrzeug 14 fährt, ausführen. Die Richtlinien 46 können ferner eine oder mehrere Reaktionen angeben, die ein Fahrzeug 14, 16 auf ein anderes Fahrzeug 14, 16 haben kann. Beispielsweise kann das Fahrzeug 14, 16 die Geschwindigkeit des Fahrzeugs 14, 16 einstellen, um gewünschte Abstände zwischen anderen Fahrzeugen 14, 16 vor und/oder hinter dem Fahrzeug 14, 16 auf derselben Fahrspur einzuhalten. Eine nicht einschränkende Liste von Richtlinien 46 umfasst folgende:
- • Fahrspur-Nominal: Standard-Richtlinie 46, welche auf einer gegebenen Fahrspur bleibt und einfache Richtungsänderungen vornehmen kann (in der Art des Nehmens von Ausfahrten). Ein großer Teil des Fahrens besteht aus diesem Verhalten. Das Verhalten folgt der Mittellinie der Fahrspuren. Diese Richtlinie 46 ist anwendbar, falls sich das Host-Fahrzeug 14 bereits verhältnismäßig nahe der Fahrspurmittellinie befindet.
- • Fahrspurwechsel: Das Fahrzeug 14 nimmt einen Standard-Schnellstraßenfahrspurwechsel in einer Richtung vor, so dass es von einer Fahrspurmittellinie zu einer anderen übergeht. Die Richtlinie 46 schaltet zu Fahrspur-Nominal zurück, sobald der Fahrspurwechsel abgeschlossen wurde. Die Richtlinie 46 ist anwendbar, falls Verkehrsregeln einen Fahrspurwechsel ermöglichen und es keine störenden Nicht-Host-Fahrzeuge 16 gibt. Sie kann auch in einem Abbrechverhalten enden, bei dem wir nach Einleiten des Fahrspurwechsels zur ursprünglichen Fahrspur zurückkehren – dieser Abbruch geschieht, wenn sich ein zuvor nicht beobachtetes Nicht-Host-Fahrzeug 16 dem Gebiet nähert, in das das Host-Fahrzeug 14 überzugehen versucht.
- • Rückkehr zur Fahrspur: Diese Richtlinie 46 ist dafür ausgelegt, das Host-Fahrzeug 14 von einer Position, die sich nicht in der Mitte der Fahrspur befindet, vorzunehmen und einen sicheren Weg zurück zur Fahrspurmitte zu erzeugen, so dass Fahrspur-Nominal übernehmen kann.
- • Parken: Diese Richtlinie 46 führt ein Parkmanöver innerhalb eines Parkplatzes aus (in unserer Darstellung als ”Zonen” bezeichnet). Diese Richtlinie 46 kann verwendet werden, um Vorwärts- und Rückwärtsparkmanöver auszuführen.
- • Durchfahrzane: Diese Richtlinie 46 durchquert eine Zone zu einem ihrer Ausgänge und wechselt dann zu Fahrspur-Nominal, sobald eine Fahrspur erreicht wurde. Dies ist die Richtlinie 46, die verwendet werden würde, um eine Parkstelle zu verlassen.
- • Nothalt: Diese Richtlinie 46 behandelt das Zwingen des Host-Fahrzeugs 14 zu einem sicheren Halt, insbesondere falls andere Richtlinien 46 zu schlechten Ergebnissen führen.
- • Fahrspurwechsel-Einfädelung: Diese Richtlinie 46 ähnelt der Standard-Fahrspurwechselrichtlinie 46, führt jedoch eine Einfädelung aus, wobei sich zwischen zwei Nicht-Host-Fahrzeugen 16 eine Lücke befindet.
- • Kreuzung: Diese Richtlinie 46 behandelt das Verhalten an Kreuzungen, wie das Verhalten bei Stopp- und Vorfahrtszeichen oder Ampeln. Diese Richtlinie 46 kann verschiedene Variationen für verschiedene Aggressivitätsniveaus aufweisen, um es dem Entscheidungsprozess zu erlauben, zu wählen, wann in eine Kreuzung einzufahren ist.
- • Überholen: Diese Richtlinie 46 ermöglicht das Überholen eines einzigen Nicht-Host-Fahrzeugs 16, möglicherweise einschließlich des Fahrens in die Fahrspur des entgegenkommenden Verkehrs, wie es Fahrspurmarkierungen ermöglichen. In diesem Fall zieht das Host-Fahrzeug 14 in die Überholspur, beschleunigt gegenüber dem Nicht-Host-Fahrzeug 16 und zieht dann in die ursprüngliche Fahrspur zurück und kehrt zu Fahrspur-Nominal zurück.
- • Präzisionsfahrt: Diese Richtlinie 46 ist eine Variation von Fahrspur-Nominal zur Verwendung, wenn es den Weg blockierende Hindernisse gibt, wie es bei Bauarbeiten oder größeren Straßenhindernissen geschehen würde. In diesem Fall verwendet das Verhalten mit dem Ziel, die Referenzspur in der Zukunft zu erreichen, einen lokalen Wegplaner, um eine Route um die Hindernisse herum zu finden. Bei diesem Verhalten wird langsamer und genauer gefahren als bei Fahrspur-Nominal, und es sollte nur aktiv werden, wenn Fahrspur-Nominal stecken bleibt.
-
Die vorstehende Liste von Beispielrichtlinien 46 ist nicht einschränkend. Andere Richtlinien 46 können abhängig von einer bestimmten Fahrsituation, von anwendbaren Verkehrsregelungen, von kulturellen Normen im Land, in dem das Host-Fahrzeug 14 gefahren wird, von Wetterbedingungen usw. verwendet werden.
-
PROZESSE
-
Identifizieren der Nicht-Host-Fahrzeuge
-
Wie vorstehend erörtert wurde, kann der Computer 20 programmiert werden, um eine Verkehrsumgebung 10 zu identifizieren, welche ein Host-Fahrzeug 14 und ein oder mehrere Nicht-Host-Fahrzeuge 16 innerhalb eines vordefinierten Abstands vom Host-Fahrzeug 14 aufweist. Wie vorstehend erörtert wurde, kann ”innerhalb eines vordefinierten Abstands” beispielsweise als innerhalb eines ersten festen Abstands auf der linken und der rechten Seite, beispielsweise 20 Meter, und eines zweiten festen Abstands auf der Vorder- und der Rückseite, beispielsweise 100 Meter, definiert werden. Zusätzlich oder alternativ kann der vordefinierte Abstand als eine Funktion einer Fahrsituation definiert werden. Beispielsweise kann innerhalb eines vordefinierten Abstands als innerhalb eines verhältnismäßig kleinen Gebiets definiert werden, falls das Host-Fahrzeug 14 parkt, und als innerhalb eines verhältnismäßig großen Gebiets definiert werden, falls das Host-Fahrzeug 14 auf einer Schnellstraße fährt. Ferner kann der vordefinierte Abstand beispielsweise auf der Grundlage der Geschwindigkeit, mit der das Host-Fahrzeug 14 fährt, der Richtlinie 46, welche das Fahrzeug 14 gegenwärtig ausführt, usw. definiert werden.
-
Der Computer 20 kann ferner Kartendaten empfangen, welche das Gebiet beschreiben, in dem das Host-Fahrzeug 14 gegenwärtig fährt. Der Computer 20 kann die Verkehrsumgebung 10 als die Kartendaten, das Host-Fahrzeug 14 und das eine oder die mehreren Nicht-Host-Fahrzeuge 16 enthaltend identifizieren. Die Verkehrsumgebung 10 kann ferner beispielsweise Objekte, die sich innerhalb des Fahrgebiets des Host-Fahrzeugs 14 befinden, Wetterbedingungen, Ampeln usw., welche das Verhalten des Host-Fahrzeugs 14 und der Nicht-Host-Fahrzeuge 16 beeinflussen, enthalten.
-
Nach der Identifikation der Teilnehmer (Host-Fahrzeug 14 und Nicht-Host-Fahrzeuge 16) in der Verkehrsumgebung 10 kann der Computer 20 das Verhalten von jedem der Nicht-Host-Fahrzeuge 16 in der Verkehrsumgebung 10 analysieren und das künftige Verhalten vorhersagen, wie nachstehend beschrieben wird.
-
Verhaltensanalyse und Vorhersage durch Wechselpunktdetektion
-
Nach der Identifikation des einen oder der mehreren Nicht-Host-Fahrzeuge 16 in der Verkehrsumgebung 10 kann der Computer 20 programmiert werden, Daten in Bezug auf das Fahrverhalten der Nicht-Host-Fahrzeuge 16 während eines vorhergehenden Zeitraums zu sammeln. Der vorhergehende Zeitraum kann beispielsweise ein vorgegebener Zeitraum von beispielsweise zwei Minuten vor der aktuellen Zeit sein. Die für jedes der Nicht-Host-Fahrzeuge 16 gesammelten Daten können beispielsweise die Pose als Funktion der Zeit, die Geschwindigkeit als Funktion der Zeit usw. umfassen, wie vorstehend beschrieben wurde. Die Daten können auch Informationen über das Nicht-Host-Fahrzeug 16 in der Art des Typs, des Modells, der Größe usw. umfassen. Überdies können die Daten Informationen in der Art der Anzahl, Identität usw. der Insassen des Nicht-Host-Fahrzeugs 16 umfassen.
-
Der Computer 20 kann auf der Grundlage der gesammelten Daten programmiert werden, das Fahrverhalten des einen oder der mehreren Nicht-Host-Fahrzeuge 16 während des vorhergehenden Zeitraums zu analysieren. Wie in 3 dargestellt ist, kann ein Nicht-Host-Fahrzeug 16 entlang eines Weges 50 auf einer Schnellstraße 12 fahren, welche eine erste, eine zweite und eine dritte Spur 60a, 60b, 60c aufweist. Der Computer 20 kann ein oder mehrere Segmente 52 entlang des Weges 50 identifizieren. Wechselpunkte 54, welche einen Übergang von einem Segment 52 zu einem anderen Segment 52 markieren, können durch den Computer 20 identifiziert werden.
-
Jedem Segment 52 kann eine Richtlinie 46 zugeordnet werden, die eine gute Anpassung für das während des Segments 52 beobachtete Verhalten ist. Gemäß dem in 3 dargestellten als Beispiel dienenden Weg 50 kann einem ersten Segment 52a, einem dritten Segment 52c und einem fünften Segment 52e die Richtlinie 46 Fahrspur_Nominal zugeordnet werden. Einem zweiten Segment 52b kann die Richtlinie 46 Fahrspur_Wechsel_nach_rechts zugeordnet werden, und einem vierten Segment 52d kann die Richtlinie 46 Fahrspur_Wechsel_nach_links zugeordnet werden. Es können Wechselpunkte 54 identifiziert werden, welche die Zeit (und die Position entlang dem Weg 50) markieren, zu der es wahrscheinlich ist, dass ein Wechsel der zugrunde liegenden Richtlinie 46, welche das Verhalten des Nicht-Host-Fahrzeugs 16 beherrscht, aufgetreten ist.
-
Auf der Grundlage der Wechselpunkte 54, der identifizierten Segmente 52 und der wahrscheinlichen Richtlinien 46 in Zusammenhang mit jedem der Segmente 52 kann der Computer 20 programmiert werden, die Wahrscheinlichkeit aller verfügbaren Richtlinien 46 für das Zielfahrzeug anhand der Beobachtungen im neuesten Segment zu berechnen, wobei die Verteilung p(π ν / t|xt, z0:t) über die möglichen Richtlinien 46 des Fahrzeugs beim aktuellen Zeitschritt erfasst wird. Ferner kann der Computer 20 auf der Grundlage der Gesamtgeschichtssegmentation programmiert werden, ein ungewöhnliches Verhalten zu erkennen, das nicht durch den verfügbaren Satz von Richtlinien 46 erklärt wird.
-
Wechselpunkterkennung
-
En als Wechselpunkterkennung unter Verwendung genäherter Parameter (”Change-Point Detection using Approximate Parameters” – CHAMP) bezeichneter bekannter Algorithmus, der nachstehend erörtert wird, kann für das Segmentieren einer Geschichte beobachteter Zustände eines Ziel-Nicht-Host-Fahrzeugs 16 verwendet werden.
-
Anhand eines gegebenen Satzes verfügbarer Richtlinien
46 Π und einer Zeitreihe der beobachteten Zustände eines gegebenen Fahrzeugs z
1:n = (z
1, z
2, ..., z
n) leitet CHAMP den Maximum-a-posteriori-(MAP)-Satz der Zeiten τ
1, τ
2, ..., τ
m ab, zu denen Wechselpunkte
54 zwischen Richtlinien aufgetreten sind, woraus sich m + 1 Segmente
52 ergeben. Demgemäß besteht das i-te Segment
52 aus Beobachtungen
und hat eine zugeordnete Richtlinie
46 π
i ∊ Π mit Parametern θ
1.
-
Die Wechselpunkte 54 werden als eine Markov-Kette modelliert, bei der die Übergangswahrscheinlichkeiten eine Funktion der Zeit seit dem letzten Wechselpunkt 52 sind: p(τi+1 =t|τi = s) = g(t – s), (8) wobei g(·) eine Wahrscheinlichkeitsdichteverteilung (pdf) über die Zeit ist und G(·) die kumulative Verteilungsfunktion (cdf) bezeichnet.
-
Anhand eines gegebenen Segments
52 von einer Zeit s bis t und einer Richtlinie
46 π nähert CHAMP den Logarithmus der Richtlinienevidenz für dieses Segment
52 durch ein Bayesches Informationskriterium (BIC) nach:
wobei k
π die Anzahl der Parameter der Richtlinie
46 π ist und θ geschätzte Parameter für die Richtlinie
46 π sind. Das BIC ist eine bekannte Näherung, welche eine Marginalisierung über die Richtlinienparameter vermeidet und eine prinzipielle Sanktion gegen komplexe Richtlinien
46 durch die Annahme einer späteren Gaußverteilung um die geschätzten Parameter bereitstellt. Demgemäß ist nur die Fähigkeit, Richtlinien
46 an die beobachteten Daten anzupassen, erforderlich, was durch ein Maximum-Likelihood-Schätzverfahren (MLE-Verfahren) der Wahl erreicht werden kann.
-
Die Verteilung Ct über die Position des ersten Wechselpunkts 54 vor der Zeit t kann wirksam unter Verwendung einer standardmäßigen Bayes-Filterung und eines Online-Viterbi-Algorithmus geschätzt werden: Pt(j, q) = p(Ct = j, q, εj, Z1:t) (10) P MAP / t = p(Wechselpunkt bei t, εt, Z1:t), (11) wobei εj das Ereignis ist, dass die MAP-Auswahl von Wechselpunkten 54 vor einem gegebenen Wechselpunkt 54 zur Zeit j aufgetreten ist, was zu Folgendem führt: Pt(j, q) = (1 – G(t – j – 1))L(j, t, q)p(q)P MAP / j (12) P MAP / t = max / j, q[ g(t – j) / 1 G(t – j – 1)]Pt(j, q) (13)
-
Zu jeder gegebenen Zeit kann die wahrscheinlichste Sequenz latenter Richtlinien 46 (als Viterbi-Weg bezeichnet), welche zu der Sequenz von Beobachtungen führt, durch Finden von (j, q), wodurch P MAP / t maximiert wird, und dann durch fortlaufendes Wiederholen der Maximierung von P MAP / j , bis die Zeit null erreicht wird, erhalten werden.
-
Verhaltensvorhersage
-
Wie nachstehend beschrieben wird, kann der Computer 20 ferner programmiert werden, die Wahrscheinlichkeit jeder latenten Richtlinie 46 durch Anwenden der Wechselpunkterkennung auf die Geschichte der beobachteten Fahrzeugzustände zu berechnen.
-
Es sei das (m + 1)-te Segment (das neueste) betrachtet, das durch eine Änderungs-Punkt-
52-Erkennung erhalten wird und aus Beobachtungen
besteht. Die Wahrscheinlichkeit und die Parameter jeder latenten Richtlinie
46 π ∊ H für das Nicht-Host-Fahrzeug
16 mit dem gegebenen vorliegenden Segment
52 können durch Lösen des folgenden Maximum-Likelihood-Schätzproblems (MLE-Problems) berechnet werden:
-
Insbesondere nehmen wir an, dass
eine multivariate Gaußverteilung mit dem Mittelwert an der Fahrstrecke ψ
πθ ist, welche durch zeitliches Vorwärtssimulieren der Ausführung der Richtlinie
46 π unter Parametern θ anhand des Zeitschritts T
m + 1 erhalten wird:
wobei σ ein Störungsparameter ist, der einen Modellierungsfehler erfasst, und/eine geeignete Identität ist. Das heißt, dass Gleichung 15 im Wesentlichen die Abweichung der beobachteten Zustände von jenen misst, die durch die gegebene Richtlinie
46 vorgeschrieben werden. Die durch Gleichung 14 erhaltenen Richtlinienwahrscheinlichkeiten erfassen die Wahrscheinlichkeitsverteilung über die möglichen Richtlinien
46, welche das beobachtete Nicht-Host-Fahrzeug
16 beim aktuellen Zeitschritt ausführen könnte, welche unter Verwendung von Deltafunktionen als eine Mischverteilung repräsentiert werden kann:
wobei α
i die Hypothese über die Richtlinie
46 π
i ist und η eine Normierungskonstante ist. Daher kann eine nachfolgende Entwicklung von Gleichung 7 durch Probenbildung anhand dieser Verteilung für jedes Nicht-Host-Fahrzeug
16 berechnet werden, wodurch Proben hoher Wahrscheinlichkeit anhand der gekoppelten Interaktionen erhalten werden.
-
Ungewöhnlichkeitserkennung
-
Ein ungewöhnliches Verhalten eines Nicht-Host-Fahrzeugs 16, das nicht durch verfügbare Richtlinien 46 modelliert wird, kann auf der Grundlage der Zeitreihensegmentation, die durch Wechselpunkterkennung erhalten wird, erkannt werden. Die Eigenschaften des ungewöhnlichen Verhaltens können in Bezug auf die Richtlinienwahrscheinlichkeiten definiert werden. Die beobachteten Daten können dann mit markierten normalen Mustern in den zuvor aufgezeichneten Fahrzeugfahrstrecken verglichen werden. Die folgenden beiden Kriterien können für das ungewöhnliche Verhalten definiert werden:
- 1. Unwahrscheinlichkeit gegenüber verfügbaren Richtlinien 46. Es ist nicht wahrscheinlich, dass ein ungewöhnliches Verhalten durch irgendwelche der verfügbaren Richtlinien 46 erklärt wird, weil sie dafür ausgelegt sind, Verkehrsregeln zu genügen und eine problemlose Fahrerfahrung bereitzustellen. Daher werden Verhaltensweisen wie das Fahren in der falschen Richtung oder das Kreuzen einer durchgezogenen Linie auf der Schnellstraße nicht durch die verfügbaren Richtlinien 46 erfasst. Wir messen demgemäß die durchschnittliche Wahrscheinlichkeit unter allen Segmenten 52 in der Fahrzeuggeschichte als die globale Ähnlichkeit der beobachteten Geschichte für alle verfügbaren Richtlinien 46: wobei πi, die Richtlinie 46 in Zusammenhang mit dem i-ten Segment 52 ist.
- 2. Zweideutigkeit zwischen Richtlinien 46. Eine Geschichtssegmentation, die zwischen verschiedenen Richtlinien 46 häufig schwankt, könnte ein Zeichen einer Zweideutigkeit bei der Segmentation sein. Um dieses Kriterium formal auszudrücken, konstruieren wir zuerst ein Histogramm, welches die Vorkommnisse jeder Richtlinie 46 in der segmentierten Geschichte des Fahrzeugs erfasst. Ein Histogramm mit einer großen Breite gibt häufige Fluktuationen an, während es wahrscheinlicher ist, dass eines mit einem einzigen Modus einem normalen Verhalten entspricht. Wir messen diese Eigenschaft als die Excess-Kurtosis des Histogrammswobei μ4 das vierte Moment des Mittelwerts ist und σ die Standardabweichung ist. Die Excess-Kurtosis erfüllt –2 < k < ∞. Falls κ = 0 ist, ähnelt das Histogramm einer Normalverteilung, während, falls κ < 0 ist, das Histogramm eine größere Breite zeigt. Das heißt, dass wir versuchen, Wechselpunktsequenzen zu identifizieren, bei denen es keine dominante Richtlinie 46 gibt.
-
Unter Verwendung dieser Kriterien definieren wir das folgende Normalitätsmaß bei einer gegebenen Fahrzeug-MAP-Auswahl von Wechselpunkten 54: N = 1 / 2[(κ + 2)S]. (18)
-
Dieses Normalitätsmaß bei der Ziel-Fahrzeuggeschichte kann dann mit jenem eines Satzes zuvor aufgezeichneter Fahrstrecken anderer Nicht-Host-Fahrzeuge 16 verglichen werden. Wir definieren demgemäß den Normalitätstest für die aktuelle Fahrzeuggeschichte als N < 0,5γ, wobei γ das an der vorhergehenden Zeitreihe bewertete minimale Normalitätsmaß ist.
-
Mehrrichtlinien-Entscheidungsfällung
-
Auf der Grundlage des allgemeinen Entscheidungsprozesses, der Näherungen in Bezug auf den Mehrprozessansatz und des vorstehend erörterten Verhaltensvorhersageprozesses kann ein Prozess zur Auswahl einer Richtlinie 46 für das Beherrschen des Verhaltens des Host-Fahrzeugs 14 am aktuellen Zeitschritt entwickelt und implementiert werden.
-
Der Prozess beginnt mit dem Ziehen eines Satzes von Proben s ∊ S aus der Verteilung über Richtlinien 46 der Nicht-Host-Fahrzeuge 16 nach Gleichung 16, wobei jede Probe jedem nahe gelegenen Nicht-Host-Fahrzeug 16 v eine Richtlinie 46 πv ∊ Π zuweist. Für jede Richtlinie 46 π, die für das Host-Fahrzeug 14 verfügbar ist, und für jede Probe s führt der Computer 20 eine zeitliche Vorwärtsentwicklung bis zu einem Zeithorizont H für die Host- und Nicht-Host-Fahrzeuge 14, 16 unter den Richtlinienzuweisungen (π, s) mit einer in einer geschlossenen Regelschleife arbeitenden Simulation aus, um einen Satz Ψ simulierter Fahrstrecken ψ zu erhalten. Eine Belohnung rπ,s wird für jede Entwicklung Ψ berechnet, und schließlich wird eine Richtlinie 46 π* ausgewählt, um die erwartete Belohnung zu maximieren. Der Prozess wird kontinuierlich in der Art eines zurückweichenden Horizonts wiederholt. Es sei bemerkt, dass die Richtlinien 46, die angesichts des aktuellen Zustands x0 nicht anwendbar sind, wie eine Kreuzungsbehandlungsrichtlinie 46, wenn auf der Schnellstraße gefahren wird, für die Auswahl nicht berücksichtigt werden. Ein als Beispiel dienender Prozess zur Auswahl einer Richtlinie 46 zur Beherrschung des Host-Fahrzeugs 14 wird nachstehend in weiteren Einzelheiten im Abschnitt ”Als Beispiel dienender Prozessablauf” vorgestellt.
-
Richtlinien
-
Wie vorstehend beschrieben wurde, soll jede Richtlinie 46 ein anderes Verhalten und eine andere Absicht hoher Ebene erfassen und kann eine geplante Fahrstrecke umfassen. Richtlinien 46 können beispielsweise das Folgen einer Fahrspur, das Wechseln einer Fahrspur oder das Abbiegen an einer Kreuzung einschließen. Richtlinien 46, die für ein bestimmtes Host-Fahrzeug 14 und/oder ein bestimmtes Nicht-Host-Fahrzeug 16 verfügbar sind, können von der Einstellung für die Verkehrsumgebung 10, d. h. auf einer Schnellstraße, an einer Kreuzung, auf einem Parkplatz usw., abhängen.
-
Probenentwicklung durch Vorwärtssimulation
-
Wenngleich es möglich ist, sehr getreue Simulationen für das Entwickeln mit Proben versehener Richtlinie-46-Zuweisungen auszuführen, kann eine Simulation mit einem geringeren Treuegrad die notwendigen Interaktionen zwischen Fahrzeugen 14, 16 erfassen, um vernünftige Auswahlen für das Verhalten von Host-Fahrzeugen 14 zu machen, während ein schnellerer Ablauf bereitgestellt wird. In der Praxis wird ein vereinfachtes Simulationsmodell für jedes Fahrzeug 14, 16 verwendet, das eine idealisierte Lenksteuereinrichtung annimmt. Nichtsdestoweniger beschreibt diese Vereinfachung noch getreu das Verhalten hoher Ebene der Interaktionen zwischen Fahrzeugen 14, 16.
-
Als ungewöhnlich klassifizierte Fahrzeuge 14, 16 können unter Verwendung einer einzigen Richtlinie 46 simuliert werden, die nur ihrem aktuellen Zustand und ihrer aktuellen Umgebungskarte Rechnung trägt, weil es nicht wahrscheinlich ist, dass sie durch den Satz von Verhaltensweisen in unserem System modelliert werden.
-
Belohnungsfunktion
-
Die Belohnungsfunktion für das Bewerten des Ergebnisses einer Entwicklung Ψ, wodurch alle Nicht-Host- und Host-Fahrzeuge
14,
16 berücksichtigt werden, ist eine gewichtete Kombination von Metriken m
q(·) ∊ M mit Gewichten w
q, welche die Benutzerwichtigkeit ausdrücken. Typische Metriken umfassen den (verbleibenden) Abstand vom Ziel am Ende des Bewertungshorizonts, um den zum Bestimmungsort hin gemachten Fortschritt zu bewerten, den minimalen Abstand von Hindernissen, um die Sicherheit zu bewerten, eine Fahrspurauswahlvorliebe, um eine Präferenz für die rechte Fahrspur hinzuzufügen, und die maximale Gierrate und das maximale Längsrucken, um den Komfort für einen Fahrgast zu messen. Für eine Vollständige-Richtlinie-
46-Zuweisung (π, s) mit einer Entwicklung Ψ berechnen wir die Entwicklungsbelohnung r
π,s als gewichtete Summe
Jede m
q(Ψ
π,s) wird über alle Entwicklungen normiert, um die Vergleichbarkeit zwischen Metriken zu gewährleisten. Um eine Beeinflussung von Entscheidungen zu vermeiden, kann ein Gewicht w
q auf null gesetzt werden, wenn der Bereich von m
q(·) über alle Proben zu klein ist, um informativ zu sein.
-
Jede Richtlinie-
46-Belohnung r
π für das Host-Fahrzeug
14 wird als die erwartete Belohnung über alle als
berechneten Entwicklungsbelohnungen r
π,s bewertet, wobei p(s
k) die als Produkt der Pro-Fahrzeug-Zuweisungswahrscheinlichkeiten (Gleichung 16) berechnete multivariate Verteilung der Richtlinie-
46-Zuweisungen in der Probe s
k ist. Die erwartete Belohnung wird verwendet, um ein besseres Durchschnittsfallverhalten anzustreben, weil es leicht ist, bei der Behandlung des Verkehrs zu konservativ zu werden, falls nur das Verhalten im schlimmsten Fall berücksichtigt wird. Durch Gewichten jeder Probe mit der Wahrscheinlichkeit können wir ein Überkorrigieren für Ereignisse niedriger Wahrscheinlichkeit vermeiden.
-
Eine nicht einschränkende Liste von Metriken, die für eine bestimmte Probenentwicklung (Vorwärtssimulation) berücksichtigt werden können, umfasst folgende:
- • Kostenkartenintegral: Bei einer gegebenen Kostenkarte von Hindernissen in der Umgebung (wobei sowohl direkt beobachtete als auch ”virtuelle Hindernisse” Gebiete bezeichnen, welche das Host-Fahrzeug 14 vermeiden sollte, wie entgegenkommenden Verkehr), sind die Kosten für diese Metrik das Linienintegral durch die Kostenkarte. Diese Kosten werden höher, wenn sich das Host-Fahrzeug 14 Hindernissen nähert, und durch ihr Minimieren sollte die Sicherheit verbessert werden. Beispielsweise kann das Kostenkartenintegral für ein simuliertes Ergebnis für eine Situation höher sein, bei der sich das Fahrzeug näher zum Gegenverkehr bewegt, beispielsweise zu weit nach links auf der linken Fahrspur, und niedriger sein, wenn sich das Fahrzeug weiter weg vom Gegenverkehr befindet, beispielsweise zentrierter in der Fahrspur.
- • Abstand näher zum Ziel: Diese Metrik berechnet den Abstand vom Ziel sowohl am Anfang als auch am Ende der simulierten Entwicklung des Host-Fahrzeugs (d_Anfang bzw. d_Ende), wobei die Endmetrik d_Ende – d_Anfang ist. Dies misst den Fortschritt zum Bestimmungsort hin, wobei eine Richtlinie, die diese Metrik maximiert, das Host-Fahrzeug 14 dem Ziel näher bringt. Der Abstand, der dem Ziel näher ist, kann beispielsweise in Kilometern gemessen werden. Die Simulationsergebnisse können anhand mehrerer Simulationen eines Szenarios über den Ergebnisbereich normiert werden.
- • Quer-zur-Spur-Fehler: Diese Metrik ist eine Fehlerfunktion für die Fahrspurverfolgung, und sie ist der laterale Abstand zur Fahrspurmittellinie. Die Kosten für die gesamte Entwicklung können unter Verwendung des maximalen oder durchschnittlichen Fehlers während des Simulationshorizonts ausgedrückt werden, um die Empfindlichkeit für momentan große Abweichungen anzupassen (beispielsweise wenn ein Fahrspurwechsel ausgeführt wird). Der Quer-zur-Spur-Fehler kann beispielsweise in Metern gemessen werden und anhand mehrerer Simulationen eines Szenarios über den Ergebnisbereich normiert werden.
- • Gierrate: Diese Metrik ist einfach die Gierrate des Host-Fahrzeugs 14, welche entweder als Maximum oder Durchschnitt über das Simulationsintervall formuliert wird, wobei das Minimieren dieser Kosten zu glatteren, geraderen Fahrspuren führt, die wahrscheinlich komfortabler sind. Die Gierrate kann in Einheiten von Radiant pro Sekunde gemessen werden und anhand mehrerer Simulationen eines Szenarios über einen Ergebnisbereich normiert werden.
- • Längsrucken: Diese Metrik misst das Rucken in der Längssteuerung (Bremsen, Drossel) und kann entweder ein Mittelwert oder ein Maximum über die Simulationsperiode sein. Sie ist in erster Linie eine Fahrerkomfortmetrik. Das Längsrucken kann in Einheiten von Metern/(Sekunde)2 gemessen werden und über einen Bereich von Ergebnissen anhand mehrerer Simulationen eines Szenarios normiert werden.
- • Zielbasierte Fahrspurvorliebe: Sie schreibt dem Host-Fahrzeug 14 Kosten dafür zu, dass es sich in einer bestimmten Fahrspur befindet, wobei die Kosten zunehmen, falls sich das Host-Fahrzeug 14 in einer Fahrspur befindet, die auf einem weniger direkten Weg zum Ziel ist (beispielsweise sehr weit links liegende Fahrspuren auf einer Schnellstraße, bevor abgebogen wird). Diese Kostenfunktion akkumuliert Kosten für jeden in einer Fahrspur verbrachten Zeitschritt, so dass der Aufenthalt in einer schlechten Fahrspur und das Wählen der Vornahme eines Fahrspurwechsels weniger kostet, als einfach in der Fahrspur zu bleiben. Zielbasierte Fahrspurvorlieben können in Einheiten von Fahrspur/Sekunden gemessen werden und widerspiegeln, wie viele Fahrspuren sich das Host-Fahrzeug 14 von einer Fahrspur entfernt befindet, die direkt auf einem Weg zum Ziel liegt, und wie lange sich das Host-Fahrzeug 14 auf einer Fahrspur befindet, die von der Fahrspur verschieden ist, die direkt auf dem Weg zum Ziel liegt. Die Ergebnisse zielbasierter Fahrspurvorliebesimulationen können anhand mehrerer Simulationen eines Szenarios über einen Bereich von Ergebnissen normiert werden.
- • Standardfahrspurvorliebe: Ähnlich wie vorstehend erwähnt, sie gilt jedoch für eine Vorliebe, eine bestimmte Fahrspur für ein normales Fahren zu wählen, wenn keine Nähe zu Navigationsentscheidungspunkten gegeben ist (beispielsweise wenn auf einer Schnellstraße eine große Entfernung bis zu einer Ausfahrt zurückzulegen ist). Diese Fahrspurvorliebe besteht typischerweise darin, auf der am weitesten rechts gelegenen Fahrspur zu bleiben. Standardfahrspurvorlieben können in Einheiten von Fahrspur/Sekunden gemessen werden und widerspiegeln, wie viele Fahrspuren sich das Host-Fahrzeug 14 von einer gewählten Fahrspur für eine normale Fahrt entfernt befindet und wie lange sich das Host-Fahrzeug 14 auf einer Fahrspur befindet, die von der gewählten Fahrspur für die normale Fahrt verschieden ist. Die Ergebnisse der Standardfahrspurvorliebesimulationen können anhand mehrerer Simulationen eines Szenarios über einen Bereich von Ergebnissen normiert werden.
- • Andere Fahrzeugreaktionen: Diese Kostenfunktion ist eine Sanktion für das Verhalten des Host-Fahrzeugs auf scharfe Reaktionen, die Nicht-Host-Fahrzeuge 16 haben, falls die Host-Fahrzeug-Richtlinie 46 vor ein Nicht-Host-Fahrzeug 16 zieht und das Nicht-Host-Fahrzeug 16 dazu zwingt, scharf abzubremsen, um eine Kollision zu vermeiden, sind diese Kosten beispielsweise hoch. Durch Minimieren dieser Kosten wird die Sicherheit verbessert, indem verhindert wird, dass sich auf die Reflexe anderer Fahrer verlassen wird. Es sei bemerkt, dass, weil das Wählen einer Richtlinie 46 auf der Variation zwischen Host-Fahrzeug-Richtlinien 46 statt auf absoluten Metrikbewertungswerten beruht, diese Kostenfunktion ausnormiert werden kann, falls alle Richtlinien 46 zu scharfen Reaktionen führen oder falls Nicht-Host-Fahrzeuge 16 auf etwas anderes als die Aktionen des Host-Fahrzeugs 14 reagieren.
-
Zum Kombinieren des Satzes für jede Entwicklung berechneter Metriken, um einen Bewertungswert für jede Richtlinienauswahl zu finden, können die Metrikergebnisse in normierte Werte kleiner als eins konvertiert werden, können Gewichte für jede Metrik bestimmt werden und kann eine gewichtete Summe von Metriken für jedes Probenergebnis berechnet werden. Die Metrikbewertungswerte selbst haben zwischeneinander stark variierende Einheiten, so dass sie, um sie vergleichbar zu machen, unter Verwendung eines Bereichs von Metrikergebnissen normiert werden können (beispielsweise können bei drei Richtlinien 46, die das Host-Fahrzeug 14 10, 20 bzw. 30 Meter näher zum Ziel bringen, die Ergebnisse über den Bereich, der 20 Meter ist, auf Werte, die von 0 bis 1 reichen, normiert werden, so dass sich normierte Metrikbewertungswerte von 0,0, 0,5 bzw. 1,0 ergeben).
-
Zur Vermeidung einer Überreaktion auf kleine Variationen (beispielsweise bringen zwei Richtlinien 46 das Host-Fahrzeug 14 10,0 und 10,1 Meter näher zum Ziel, weil sie fast das Gleiche tun) können Gewichte berechnet werden, die auf Null gesetzt werden, wenn der Bereich über eine einzige Metrik zu niedrig ist, um informativ zu sein. Die endgültigen Gewichte für jede Metrik sind entweder null für nicht informative Metriken oder ein vorgegebenes vom Entwickler gewähltes Gewicht. Die endgültige Belohnung für jede Probenentwicklung ist eine gewichtete Summe aller Metriken.
-
Zur Berechnung eines Bewertungswerts für jede verfügbare Richtlinienoption (wenn es mehrere Probenentwicklungen für jede Auswahl gibt) kann eine gewichtete Summe der Belohnungen für jede Probe berechnet werden, die mit einer bestimmten Richtlinienauswahl verknüpft ist, wobei die Gewichte durch die Wahrscheinlichkeit jeder Probe gegeben sind. Die Richtlinie 46 kann dann mit der höchsten erwarteten Belohnung ausgewählt werden.
-
ALS BEISPIEL DIENENDER PROZESSABLAUF
-
4 ist ein Diagramm eines als Beispiel dienenden Prozesses 400 zum Steuern eines Fahrzeugs unter Verwendung einer Mehrrichtlinien-Entscheidungsfällung. Der Prozess 400 beginnt in Block 405.
-
In Block 405 empfängt der Computer 20 eines Host-Fahrzeugs 14 Daten, die eine aktuelle Umgebung repräsentieren, in der das Host-Fahrzeug 14 gegenwärtig in Betrieb ist. Beispielsweise kann der Computer 20 Kartendaten empfangen (oder abrufen), die das aktuelle Straßennetz beschreiben, in dem das Host-Fahrzeug 14 in Betrieb ist. Der Computer 20 kann ferner Daten in Bezug auf ein oder mehrere Nicht-Host-Fahrzeuge 16 empfangen, die sich innerhalb eines vordefinierten Abstands vom Host-Fahrzeug 14 bewegen. Die Daten können die aktuelle Position jedes Nicht-Host-Fahrzeugs 16 und andere Daten in der Art der Geschwindigkeit, der Fahrtrichtung usw. umfassen, wie vorstehend beschrieben wurde. Ferner kann der Computer 20 Daten über andere Objekte innerhalb des vordefinierten Abstands vom Host-Fahrzeug 14, über Verkehrssignale, Ober Wetterbedingungen usw. empfangen. Nach dem Empfang der die aktuelle Umgebung beschreibenden Daten wird der Prozess 400 in Block 410 fortgesetzt.
-
In Block 410 identifiziert der Computer 20 eine Verkehrsumgebung 10, welche das Host-Fahrzeug 14 und ein oder mehrere Nicht-Host-Fahrzeuge 16 innerhalb des vordefinierten Abstands vom Host-Fahrzeug 14 aufweist, wie vorstehend beschrieben wurde. Die Verkehrsumgebung 10 kann so definiert werden, dass sie andere Elemente in der Umgebung aufweist, d. h. eine Straßenkarte, Objekte usw., wodurch die Auswahl einer Richtlinie für das Fahren des Host-Fahrzeugs 14 beeinflusst werden kann. Der Prozess 400 wird in Block 415 fortgesetzt.
-
In Block 415 sammelt der Computer 20 Verhaltensdaten, welche Verhaltensweisen jedes der Nicht-Host-Fahrzeuge 16 in der neueren Vergangenheit repräsentieren. Wie vorstehend beschrieben wurde, können die Verhaltensdaten die Pose des Nicht-Host-Fahrzeugs 16 als Funktion der Zeit, die Geschwindigkeit des Nicht-Host-Fahrzeugs 16 als Funktion der Zeit, die Fahrtrichtung, die Anzahl und die Größe von Richtungswechseln und die Geschwindigkeit zu verschiedenen Zeitpunkten usw. umfassen.
-
Ferner kann die Geschichte des Fahrverhaltens, wie vorstehend beschrieben wurde, beispielsweise alle 0,3 s abgetastet werden, wobei es eine maximal zulässige Anzahl von Geschichtspunkten gibt. Die maximal zulässige Anzahl von Geschichtspunkten kann beispielsweise 400 sein, was die vorhergehenden zwei Minuten des Fahrverhaltens für jedes Nicht-Host-Fahrzeug 16 zeigen kann. Die maximal zulässige Anzahl von Geschichtspunkten kann vom Typ der gegenwärtig betrachteten Fahrsituation abhängen. Beispielsweise können für ein Parkmanöver weniger Geschichtspunkte erforderlich sein als für das Fahren auf einer Schnellstraße. Nachdem der Computer 20 die Verhaltensdaten gesammelt hat, wird der Prozess 400 in Block 420 fortgesetzt.
-
In Block 420 analysiert der Computer 20, wie vorstehend detailliert beschrieben wurde, das frühere Verhalten der Nicht-Host-Fahrzeuge 16 unter Verwendung einer Bayesschen Wechselpunktanalyse. Auf der Grundlage der Wechselpunktanalyse identifiziert der Computer 20 eine Verteilung wahrscheinlicher Richtlinien 46 für jedes der Nicht-Host-Fahrzeuge 16 beim aktuellen Zeitschritt. Dann identifiziert der Computer 20 eine oder mehrere Richtlinien 46, die für das Beherrschen des Host-Fahrzeugs 14 verwendet werden können. Der Prozess 400 wird in Block 425 fortgesetzt.
-
In Block 425 führt der Computer 20 eine oder mehrere Vorwärtssimulationen der Verkehrsumgebung 10 aus. Der Computer 20 wählt Proben hoher Wahrscheinlichkeit aus der Verteilung wahrscheinlicher Richtlinien 46 für jedes der Nicht-Host-Fahrzeuge 16 und auch aus der einen oder den mehreren Richtlinien 46 für das Host-Fahrzeug 14 aus. Mehrere Simulationen werden auf der Grundlage verschiedener Sätze ausgewählter Richtlinien 46 für die Nicht-Host-Fahrzeuge 16 und die Host-Fahrzeuge 14 ausgeführt. Der Prozess 400 wird dann in Block 430 fortgesetzt.
-
In Block 430 bewertet der Computer 20 die Ergebnisse der mehreren Simulationen auf der Grundlage eines Satzes für die Verkehrsumgebung 10 festgelegter Belohnungen. Der Computer 20 wählt eine Richtlinie 46 zum Beherrschen des Host-Fahrzeugs 46 aus, um die Belohnungen für die Verkehrsumgebung 10 zu maximieren, wie vorstehend beschrieben wurde. Der Prozess 400 wird in Block 435 fortgesetzt.
-
In Block 435 sendet der Computer 20 die ausgewählte Richtlinie 46 zur Fahrzeugsteuereinheit 34. Die Fahrzeugsteuereinheit 34 gibt zumindest teilweise auf der Grundlage der Richtlinie 46 Befehle zum Steuern des Fahrverhaltens des Fahrzeugs 14 an eine oder mehrere Steuereinrichtungen 26 aus. Der Prozess wird in Block 440 fortgesetzt.
-
In Block 440 stellt der Computer 20 fest, ob der Prozess 400 fortgesetzt werden sollte. Falls sich das Host-Fahrzeug 14 beispielsweise weiter bewegt, kann der Prozess 400 zu Block 405 zurückkehren und die Definition der Verkehrsumgebung 10 erneut bewerten. Falls andererseits die Zündung des Host-Fahrzeugs 14 ausgeschaltet wird, das Fahrzeug 14 angehalten ist (geparkt ist) oder falls es ein Verkehrsereignis in der Art einer Kollision gegeben hat, kann der Computer 20 feststellen, dass der Prozess 400 enden soll.
-
SCHLUSSFOLGERUNG
-
Hier bedeutet das Adverb ”in Wesentlichen”, dass eine Form, Struktur, Messung, Menge, Zeit usw. infolge von Unvollkommenheiten in Materialien, der maschinellen Bearbeitung, der Herstellung usw. von einer genau beschriebenen Geometrie, einem genau beschriebenen Abstand, einer genau beschriebenen Messung, einer genau beschriebenen Menge, einer genau beschriebenen Zeit usw. abweichen kann.
-
Der Begriff ”als Beispiel dienend” wird hier als ein Beispiel angebend verwendet, wobei beispielsweise ein Bezug auf ein ”als Beispiel dienendes Widget” einfach als sich auf ein Beispiel eines Widgets beziehend verstanden werden sollte.
-
Rechenvorrichtungen in der Art der hier erörterten weisen allgemein jeweils Befehle auf, die von einer oder mehreren Rechenvorrichtungen in der Art der vorstehend identifizierten ausführbar sind, und dienen der Ausführung von Blöcken oder Schritten vorstehend beschriebener Prozesse. Beispielsweise können vorstehend erörterte Prozessblöcke als computerausführbare Befehle verwirklicht werden.
-
Computerausführbare Befehle können durch Computerprogramme kompiliert oder interpretiert werden, die unter Verwendung einer Vielzahl von Programmiersprachen und/oder -technologien erzeugt wurden, einschließlich ohne Einschränkung entweder allein oder in Kombination JavaTM, C, C++, Visual Basic, Java Script, Perl, HTML usw. Ein Prozessor (beispielsweise ein Mikroprozessor) empfängt im Allgemeinen Befehle beispielsweise von einem Speicher, einem computerlesbaren Medium usw. und führt diese Befehle aus, wodurch ein oder mehrere Prozesse einschließlich eines oder mehrerer der hier beschriebenen Prozesse, ausgeführt werden. Diese Befehle und andere Daten können unter Verwendung einer Vielzahl computerlesbarer Medien gespeichert und übertragen werden. Eine Datei in einer Rechenvorrichtung ist allgemein eine Sammlung auf einem computerlesbaren Medium in der Art einer Speichervorrichtung, eines Direktzugriffsspeichers usw. gespeicherter Daten.
-
Ein computerlesbares Medium umfasst ein beliebiges Medium, das an der Bereitstellung von Daten (beispielsweise Befehlen), die von einem Computer gelesen werden können, teilnimmt. Ein solches Medium kann viele Formen annehmen, einschließlich nicht flüchtiger Medien, flüchtiger Medien usw., ist jedoch nicht darauf beschränkt. Nicht flüchtige Medien umfassen beispielsweise optische oder magnetische Platten oder einen anderen dauerhaften Speicher. Flüchtige Medien umfassen einen dynamischen Direktzugriffsspeicher (DRAM), der typischerweise einen Hauptspeicher bildet. Übliche Formen computerlesbarer Medien umfassen beispielsweise eine Diskette, eine flexible Scheibe, eine Festplatte, ein Magnetband, ein anderes magnetisches Medium, einen CD-ROM, eine DVD, ein anderes optisches Medium, Lochkarten, ein Papierband, ein anderes physikalisches Medium mit Lochmustern, einen RAM, einen PROM, einen EPROM, einen FLASH-EEPROM, einen anderen Speicherchip oder eine andere Speicherkassette oder ein anderes Medium, aus dem ein Computer lesen kann.
-
In der Zeichnung geben die gleichen Bezugszahlen die gleichen Elemente an. Ferner könnten einige oder alle dieser Elemente geändert werden. In Bezug auf die Medien, Prozesse, Systeme, Verfahren usw., die hier beschrieben wurden, ist zu verstehen, dass, wenngleich die Schritte dieser Prozesse usw. als gemäß einer bestimmten geordneten Sequenz auftretend beschrieben wurden, diese Prozesse auch mit den in einer anderen Reihenfolge als der hier beschriebenen Reihenfolge ausgeführten Schritten verwirklicht werden könnten. Ferner ist zu verstehen, dass bestimmte Schritte gleichzeitig ausgeführt werden könnten, dass andere Schritte hinzugefügt werden könnten oder dass bestimmte hier beschriebene Schritte fortgelassen werden könnten. Mit anderen Worten dienen die hier bereitgestellten Beschreibungen von Prozessen der Erläuterung bestimmter Ausführungsformen und sollten in keiner Weise als die beanspruchte Erfindung einschränkend ausgelegt werden.
-
Demgemäß ist zu verstehen, dass die vorstehende Beschreibung erläuternd und nicht einschränkend sein soll. Viele Ausführungsformen und Anwendungen, die von den bereitgestellten Beispielen abweichen, werden Fachleuten beim Lesen der vorstehenden Beschreibung einfallen. Der Schutzumfang der Erfindung sollte nicht mit Bezug auf die vorstehende Beschreibung, sondern vielmehr mit Bezug auf die anliegenden Ansprüche zusammen mit dem gesamten Schutzumfang gleichwertiger Formen, auf die sich diese Ansprüche beziehen, bestimmt werden. Es ist vorgesehen und beabsichtigt, dass künftige Entwicklungen auf dem hier erörterten Fachgebiet geschehen werden und dass die offenbarten Systeme und Verfahren in diese künftigen Ausführungsformen aufgenommen werden. Zusammenfassend ist zu verstehen, dass die Erfindung modifiziert und geändert werden kann und nur durch die folgenden Ansprüche eingeschränkt ist.
-
Allen in den Ansprüchen verwendeten Begriffen sollen ihre einfachen und gewöhnlichen Bedeutungen gegeben werden, wie Fachleute auf dem Gebiet verstehen werden, es sei denn, dass hier eine explizite Angabe des Gegenteils gemacht wird. Insbesondere sollte die Verwendung der Singularartikel, wie ”ein/eine/eines”, ”der/die/das”, ”derjenige/diejenige/dasjenige” usw. so verstanden werden, dass dadurch eines oder mehrere der angegebenen Elemente bezeichnet werden, es sei denn, dass ein Anspruch eine explizite Beschränkung auf das Gegenteil angibt.