-
Die Erfindung betrifft ein Verfahren zum Bestimmen eines hinsichtlich eines Zeit- und Energieverbrauchs optimalen Bewegungszustandes eines Objekts entlang einer Trajektorie. Eine hervorgehobene Anwendung der Erfindung betrifft ein Verfahren zum Bestimmen eines hinsichtlich eines Zeit- und Energieverbrauchs optimalen Geschwindigkeitsverlaufs und vorzugsweise Gangschaltverlaufs eines Kraftfahrzeugs entlang einer Fahrtroute.
-
Aus dem Stand der Technik sind bereits Verfahren zum Bestimmen eines hinsichtlich eines Zeit- und Energieverbrauchs optimalen Bewegungszustandes eines Objekts (z. B. eines Kraftfahrzeugs) entlang einer Trajektorie (z. B. einer Fahrtroute) bekannt. Bei den aus der Praxis bekannten Ansätzen wird die Fahrtroute in mehrere Routensegmente unterteilt, und für die mehreren Routensegmente werden jeweils mehrere Segmentlösungen, die den Bewegungszustand, z. B. den Verlauf der Fahrgeschwindigkeit und den Gangschaltverlauf, entlang des Routensegments beschreiben, ermittelt.
-
Basierend auf den mehreren möglichen Segmentlösungen für die Segmente muss anschließend eine hinsichtlich der gegeneinander wirkenden Zielgrößen Zeitverbrauch und Energieverbrauch optimale Gesamtlösung für die Bewegung des Objekts entlang der Trajektorie gefunden werden.
-
Ein aus der Praxis bekannter Ansatz ist, die optimale Gesamtlösung anhand einer Berechnung und Bewertung der möglichen Kombinationen aller möglichen Segmentlösungen mit jeweils allen anderen Segmentlösungen zu ermitteln. Nachteilig an diesem Ansatz ist der damit verbundene hohe Rechen- und Speicheraufwand (Stichwort „kombinatorische Explosion“). Derartige Ansätze sind daher aufgrund der hohen Rechenaufwände nachteilig im Hinblick auf eine Echtzeit-Anwendung mit Echtzeitberechnung, insbesondere auf längeren Fahrtrouten. Ferner sind im laufenden Betrieb aufgrund der hohen Rechenaufwände in der Regel keine Anpassungen der Vorgaben für die Zielkriterien Zeitverbrauch und Energieverbrauch möglich.
-
Der Erfindung liegt daher die Aufgabe zugrunde, eine verbesserte Technik zum Bestimmen einer hinsichtlich eines Zeit- und Energieverbrauchs optimalen Bewegung eines Objekts entlang einer Trajektorie bereitzustellen, mit der Nachteile herkömmlicher Ansätze vermieden werden können. Insbesondere soll eine solche Technik bereitgestellt werden, die ressourcenschonender als herkömmliche Ansätze ist und/oder die es ermöglicht, im Echtzeitbetrieb individuelle Wünsche des jeweiligen Benutzers zu berücksichtigen.
-
Die Aufgabe wird durch die Merkmale der unabhängigen Ansprüche gelöst. Vorteilhafte Weiterbildungen sind in den abhängigen Ansprüchen und der Beschreibung angegeben.
-
Die vorliegende Offenbarung betrifft ein Verfahren zum Bestimmen eines hinsichtlich eines Zeit- und Energieverbrauchs optimalen Bewegungszustandes eines Objekts entlang einer Trajektorie.
-
Ein hervorgehobenes Ausführungsbeispiel betrifft ein Verfahren zum Bestimmen eines hinsichtlich eines Zeit- und Energieverbrauchs optimalen Geschwindigkeitsverlaufs und vorzugsweise Gangschaltverlaufs eines Kraftfahrzeugs entlang einer Fahrtroute. Es wird jedoch betont, dass das Verfahren auch auf andere Objekte, z. B. Roboterarme, die entlang einer Trajektorie bewegt werden, anwendbar ist.
-
Das Verfahren umfasst in an sich bekannter Weise das Unterteilen der Trajektorie in mehrere Segmente, d. h. die Trajektorie wird in mehrere Teilabschnitte unterteilt, und das Ermitteln von mehreren möglichen Segmentlösungen pro Segment. Die Segmentlösungen legen jeweils eine mögliche Bewegung des Objekts (einen Ablauf von Bewegungszuständen des Objekts) entlang des jeweiligen Segments fest. Jeder Segmentlösung ist jeweils ein Zeitverbrauch und ein Energieverbrauch für die Bewegung des Objekts durch das Segment zugeordnet. Für jedes Segment werden somit mehrere unterschiedliche Segmentlösungen ermittelt, die jeweils mit einem bestimmten Zeit- und Energieverbrauch einhergehen. Bei einem Kraftfahrzeug können für ein Segment beispielsweise unterschiedliche Lösungen ermittelt werden, die sich hinsichtlich des Geschwindigkeitsverlaufs und vorzugsweise des Gangschaltverlaufs beim Durchfahren des Segments unterscheiden. Segmentlösungen mit höherer Fahrgeschwindigkeit sind in der Regel mit einem höheren Energieverbrauch, dafür geringeren Zeitverbrauch verbunden. Aus der Praxis sind hierzu unterschiedliche Ansätze bekannt, um für die einzelnen Segmente mögliche Segmentlösungen zu ermitteln, sodass hierauf nicht näher eingegangen wird.
-
Das Verfahren umfasst ferner das Ermitteln einer hinsichtlich des Zeit- und Energieverbrauchs optimalen Gesamtlösung für die Bewegung des Objekts entlang der Trajektorie basierend auf den Segmentlösungen für die Segmente.
-
Ein bevorzugter erster Aspekt der vorliegenden Offenbarung betrifft einen besonders ressourcenschonenden Ansatz, insbesondere betreffend die Rechenaufwände und den Speicherbedarf, um basierend auf den mehreren Segmentlösungen für die Segmente eine hinsichtlich des Zeit- und Energieverbrauchs optimale Gesamtlösung für die Bewegung des Objekts entlang der Trajektorie zu ermitteln.
-
Gemäß diesem bevorzugten ersten Aspekt werden zum Ermitteln der Gesamtlösung aus den ermittelten Segmentlösungen iterativ aktuelle Segmentlösungen festgelegt, aus denen sich die Gesamtlösung zusammensetzt. Der Begriff „aktuelle Segmentlösung“ bezeichnet somit eine Segmentlösung, die aus den mehreren Segmentlösung eines Segments ausgewählt wurde und die für dieses Segment diejenige Segmentlösung darstellt, die Teil der (aktuellen) Gesamtlösung über alle Segmente ist.
-
Hierbei umfasst das iterative Festlegen von aktuellen Segmentlösungen die folgenden Schritte:
- Für zumindest einen Teil der mehreren Segmente wird eine Segmentlösung aus den mehreren Segmentlösungen eines Segments bestimmt, welche die höchste Sensitivität innerhalb eines Segments hinsichtlich des Zeitverbrauchs und/oder des Energieverbrauchs aufweist. Diese Segmentlösung wird nachfolgend als erste Segmentlösung bezeichnet, zur besseren Unterscheidung von den anderen Segmentlösungen des Segments. Der Begriff der „ersten Segmentlösung“ dient dabei lediglich der begrifflichen Unterscheidbarkeit von den anderen Segmentlösungen und bezieht sich nicht auf irgendeine sonstige Reihenfolge der gefundenen Lösungen. Für jedes der betrachteten Segmente wird auf diese Weise eine eigene erste Segmentlösung ermittelt, somit die Segmentlösung ermittelt, welche hinsichtlich des Zeitverbrauchs und/oder des Energieverbrauchs die höchste Sensitivität innerhalb des Segments aufweist. Der Begriff der „Sensitivität wird nachfolgend näher erläutert.
-
Anschließend wird diejenige erste Segmentlösung, die von allen ermittelten ersten Segmentlösungen die höchste Sensitivität aufweist, als aktuelle Segmentlösung für das dieser Segmentlösung zugeordnete Segment festgelegt. Mit anderen Worten wird zunächst diejenige erste Segmentlösung, die von allen ermittelten ersten Segmentlösungen die höchste Sensitivität aufweist, bestimmt und anschließend wird die hierbei bestimmte erste Segmentlösung mit der insgesamt höchsten Sensitivität, d. h. die hierbei bestimmte erste Segmentlösung mit der höchsten Sensitivität über alle Segmente, als aktuelle Segmentlösung für das dieser Segmentlösung zugeordnete Segment festgelegt.
-
In einem Iterationsschritt des Verfahrens wird somit nur von einem Segment die aktuelle Lösung neu festgelegt, nämlich für dasjenige Segment, das von allen Segmenten, für die jeweils eine Segmentlösung mit der höchsten Sensitivität bzw. eine erste Segmentlösung bestimmt wurde, die Segmentlösung mit der höchsten Sensitivität hinsichtlich des Zeitverbrauchs und/oder des Energieverbrauchs aufweist. Vor diesem iterativen Bestimmen jeweils einer neuen aktuellen Segmentlösung für eines der Segmente kann für alle Segmente eine der Segmentlösungen als Startlösung ausgewählt werden, die dann durch die Iterationsschritte sukzessive durch die festgelegten aktuellen Lösungen ersetzt werden können, was nachfolgend noch näher beschrieben wird.
-
Vorteilhaft ergibt sich bei diesem Ansatz ein deutlich verringerter Rechenaufwand gegenüber den im Stand der Technik bekannten Optimierungsverfahren, bei denen zum Ermitteln einer optimalen Gesamtlösung jeweils alle Segmentlösungen aller Segmente miteinander verglichen bzw. kombiniert werden müssen. Eine derartige kombinatorische Explosion kann vorliegend vermieden werden.
-
Durch die Ermittlung der jeweils sensitivsten ersten Segmentlösungen der jeweils betrachteten Segmente müssen zur iterativen Ermittlung der Gesamtlösung in jedem Iterationsschritt jeweils nur diese ersten Segmentlösungen miteinander verglichen werden. Außerdem muss ab dem zweiten Iterationsschritt jeweils nur eine erste Segmentlösung neu bestimmt werden, da die ersten Segmentlösungen der Segmente, in denen keine Änderung der aktuellen Segmentlösung vorgenommen wurde, nicht verändert werden. Das Verfahren eignet sich somit für die Ausführung auf einer lokalen Recheneinheit des Objekts, z. B. des Fahrzeugs und für Echtzeitanwendungen. Das iterative Verfahren endet, wenn eine Gesamtlösung basierend auf den iterativ ermittelten aktuellen Segmentlösungen für alle Segmente ermittelt wurde, mit der die gewünschte Trajektorie in der gewünschten Zeit und/oder mit dem gewünschten Energieverbrauch abgefahren werden kann.
-
Unter einer Sensitivität einer Segmentlösung eines Segments hinsichtlich des Zeitverbrauchs und/oder Energieverbrauchs wird im Kontext der vorliegenden Offenbarung bevorzugt eine Energieersparnis pro Zeit und/oder ein Gradient einer Energieersparnis dieser Segmentlösung relativ zu der aktuellen Segmentlösung des Segments verstanden oder, falls für das Segment (noch) keine aktuelle Segmentlösung vorliegt, relativ zu einer Segmentlösung, welche den geringsten Zeitverbrauch im Vergleich zu den anderen Segmentlösungen des Segments aufweist.
-
Als besonders sensitiv kann eine Segmentlösung somit angesehen werden, wenn sie z. B. eine große Energieersparnis bei geringem zusätzlichen Zeitverbrauch oder eine große Zeitersparnis bei geringem zusätzlichen Energieverbrauch im Vergleich zu anderen Segmentlösungen dieses Segments aufweist. Entsprechend kann als Segmentlösung mit der höchsten Sensitivität eines Segments diejenige Segmentlösung angesehen werden, die die größte Energieersparnis bei geringem zusätzlichen Zeitverbrauch oder die die größte Zeitersparnis bei geringem zusätzlichen Energieverbrauch im Vergleich zu anderen Segmentlösungen dieses Segments aufweist. Das Bestimmen einer ersten Segmentlösung aus den mehreren Segmentlösungen eines Segments, welche die höchste Sensitivität innerhalb eines Segments hinsichtlich des Zeitverbrauchs und/oder Energieverbrauchs aufweist, erfolgt vorzugsweise anhand einer Sensitivitätsanalyse.
-
In einer bevorzugten Ausführungsvariante wird die erste Segmentlösung eines Segments, d.h. die Segmentlösung mit der höchsten Sensitivität im Vergleich zu den anderen Segmentlösungen des Segments, als diejenige Segmentlösung bestimmt, die einen größten Gradienten einer Energieersparnis relativ zu der aktuellen Segmentlösung oder, falls für das Segment keine aktuelle Segmentlösung vorliegt, relativ zu einer Segmentlösung, welche den geringsten Zeitverbrauch im Vergleich zu den anderen Segmentlösungen des Segments aufweist, ermöglicht. Zusätzlich oder alternativ kann die erste Segmentlösung eines Segments, d.h. die Segmentlösung mit der höchsten Sensitivität im Vergleich zu den anderen Segmentlösungen des Segments, als diejenige Segmentlösung bestimmt werden, die eine größte Energieersparnis pro Zeit relativ zu der aktuellen Segmentlösung oder, falls für das Segment keine aktuelle Segmentlösung vorliegt, relativ zu einer Segmentlösung, welche den geringsten Zeitverbrauch im Vergleich zu den anderen Segmentlösungen aufweist, ermöglicht.
-
Die Energieersparnis kann eine Kraftstoffersparnis bei einem mit Kraftstoff angetriebenen Kraftfahrzeug und/oder eine elektrische Energieeinsparung bei einem elektrisch angetriebenen Kraftfahrzeug sein. Diese Ausführungsvariante bietet den Vorzug, dass Segmentlösungen eines Segments, die die größte relative Energieeinsparung ermöglichen, beim iterativen Verfahren zuerst ermittelt werden.
-
Beispielsweise kann der Gradient der Energieersparnis und/oder die Energieersparnis (24) pro Zeit der Segmentlösungen relativ zu der aktuellen Segmentlösung oder, falls für das Segment keine aktuelle Segmentlösung vorliegt, relativ zu einer Segmentlösung, welche den geringsten Zeitverbrauch aufweist, jeweils bestimmt werden als Quotient aus ΔE und Δt: ΔE/Δt.
-
Dabei gibt ΔE eine Energieeinsparung und Δt einen Zeitmehrverbrauch der Segmentlösung relativ zur aktuellen Segmentlösung oder, falls für das Segment keine aktuelle Segmentlösung vorliegt, zur Segmentlösung mit dem geringsten Zeitverbrauch an.
-
Vorteilhaft hieran ist die einfache numerische Quantifizierbarkeit der Ergebnisse sowie die gute analytische Berechenbarkeit. Da zu jeder möglichen Segmentlösung jeweils der zugehörige Zeit- und Energieverbrauch bekannt ist, kann die Berechnung auf Grundrechenoperationen beschränkt werden, was zusätzlich zur Ressourcenschonung des Verfahrens beiträgt.
-
Es versteht sich, dass alternativ die erste Segmentlösung als diejenige Segmentlösung bestimmt werden kann, die eine größte Zeitersparnis aufweist relativ zur aktuellen Segmentlösung, oder falls für das Segment keine aktuelle Segmentlösung einer Segmentlösung, welche den geringsten Energieverbrauch aufweist. In diesem umgekehrten Fall kann die Zeitersparnis der Segmentlösung relativ zu der aktuellen Segmentlösung oder, falls für das Segment keine aktuelle Segmentlösung vorliegt, relativ zu einer Segmentlösung, welche den geringsten Energieverbrauch aufweist, jeweils bestimmt werden als Quotient aus Δt und ΔE: Δt/ΔE, wobei Δt eine Zeiteinsparung und ΔE einen Energiemehrverbrauch der Segmentlösung relativ zur aktuellen Segmentlösung oder, falls für das Segment keine aktuelle Segmentlösung vorliegt, relativ zur Segmentlösung mit dem geringsten Energieverbrauch angibt.
-
In diesem Fall ist unter einer Sensitivität einer Segmentlösung eines Segments im Kontext der vorliegenden Offenbarung bevorzugt eine Zeitersparnis pro Energieeinheit und/oder ein Gradient einer Zeitersparnis dieser Segmentlösung relativ zu der aktuellen Segmentlösung des Segments zu verstehen oder, falls für das Segment (noch) keine aktuelle Segmentlösung vorliegt, relativ zu einer Segmentlösung, welche den geringsten Energieverbrauch im Vergleich zu den anderen Segmentlösungen des Segments aufweist.
-
In beiden Varianten wird iterativ in den Segmenten jeweils diejenige Segmentlösung als erste Segmentlösung ermittelt, die die relativ beste Verbesserung im Hinblick auf eine Energie-Zeit-Priorisierung ermöglicht.
-
Gemäß einem weiteren Aspekt der vorliegenden Offenbarung kann das Unterteilen der Trajektorie in mehrere Segmente und das Ermitteln von mehreren möglichen Segmentlösungen pro Segment eine Festlegung der Bewegungszustände des Objekts an einem Anfangspunkt und einem Endpunkt der Segmente umfassen, derart, dass ein Bewegungszustand des Objekts an einem Endpunkt eines Segments einem Bewegungszustand des Objekts an einem Anfangspunkt des hierauf folgenden Segments entspricht. Die Endzustände eines Segments sind identisch mit den Startzuständen des folgenden Segments. Vorteilhaft ergibt sich beim Zusammensetzen der Segmentlösungen zu einer Gesamtlösung eine stetige Funktion. Mit Anfangspunkt ist dabei derjenige Punkt eines Segments gemeint, den das Objekt bei der Bewegung entlang des jeweiligen Segments als erstes passiert. Mit Endpunkt ist entsprechend der Punkt eines Segments gemeint, der als letztes passiert wird.
-
Gemäß einem weiteren Aspekt der vorliegenden Offenbarung kann das Unterteilen der Trajektorie in mehrere Segmente und das Ermitteln von mehreren möglichen Segmentlösungen pro Segment eine Festlegung der Bewegungszustände des Objekts an einem Anfangspunkt und einem Endpunkt der Segmente umfassen, derart, dass der Bewegungszustand für den Startpunkt eines Segments in jeder Iteration gleich bleibt und der Bewegungszustand für den Endpunkt eines Segments in jeder Iteration gleich bleibt. Die Segmente können z. B. die Trajektorie so unterteilen, dass für den Startpunkt und den Endpunkt eines Segments in jeder Iteration die gleichen Bewegungszustände angenommen werden, in der Fahrzeuganwendung z. B. Geschwindigkeit und Gang. Dieses Vorgehen ermöglicht es, mögliche Segmentlösungen für mehrere Segmente parallel berechnen zu können, da die Segmentlösungen der einzelnen Segmente nicht voneinander abhängen.
-
Die Start- und Endzustände können sich beispielhaft ergeben aus der Kenntnis der optimalen Bewegungszustände an bestimmten Punkten der Trajektorie, aus erzwungenen Bewegungszuständen für eine Trajektorie durch äußere Vorgaben (gesetzliche Beschränkungen, Geschwindigkeitsbegrenzen o. Ä.) oder aus heuristischen Überlegungen. Der erste Startpunkt und der letzte Endpunkt werden vorzugsweise vorgegeben, z. B. durch eine Heuristik oder das Wissen um diese Punkte aus einer Anwendung, z. B. steht das Fahrzeug am Startpunkt des ersten Segments mit Gang 1 und endet am Ziel (Endpunkt des letzten Segments) mit Geschwindigkeit 0 km/h und Gang 0 (neutral).
-
In einer weiteren Ausführungsform umfasst das Verfahren ferner ein Aussortieren von Segmentlösungen des Segments vor dem Bestimmen der ersten Segmentlösung eines Segments, insbesondere können hierbei offensichtlich nicht sinnvolle oder nachteilige Segmentlösungen des Segments in Bezug auf den zugeordneten Energie- und Zeitverbrauch aussortiert werden. Beispielsweise kann hierbei von mehreren Segmentlösungen, die den gleichen Energieverbrauch aufweisen, nur diejenige Segmentlösung beibehalten werden, die den geringsten Zeitverbrauch aufweist (während die mit höherem Zeitverbrauch aussortiert werden). Eine Segmentlösung, die zwar den gleichen Energieverbrauch, aber einen größeren Zeitverbrauch aufweist, kann zu keiner Verbesserung der Gesamtlösung führen, wenn beide Zielkriterien minimiert werden sollen. Zudem oder alternativ kann entsprechend von mehreren Segmentlösungen, die den gleichen Zeitverbrauch aufweisen, nur diejenige Segmentlösung beibehalten werden, die den geringsten Energieverbrauch aufweist (während die mit höherem Energieverbrauch aussortiert werden). Zudem oder alternativ können Segmentlösungen aussortiert werden, wenn diese einen höheren Energieverbrauch und einen höheren Zeitverbrauch als zumindest eine andere Segmentlösung des Segments aufweisen.
-
Die Menge der für die Optimierung betrachteten Segmentlösungen kann vorteilhaft durch dieses Aussortieren weiter reduziert werden, sodass sich der Speicherbedarf und der Rechenaufwand weiter reduzieren. Außerdem stellt dieses Aussortieren sicher, dass es sich bei der Zeitverbrauch-Energieverbrauch-Funktion um eine monoton steigende bzw. monoton fallende Funktion handelt. Ein Zeitmehrverbrauch führt damit automatisch zu einer Energieersparnis und umgekehrt. Auf diese Weise wird eine optimale Gesamtlösung sichergestellt, ohne dass zusätzlicher Rechenaufwand betrieben werden muss.
-
In einer weiteren Ausführungsform werden, nachdem eine erste Segmentlösung eines Segments als neue aktuelle Segmentlösung eines Segments festgelegt wurde, alle Segmentlösungen dieses Segments, die einen kleineren Zeitverbrauch als die neue aktuelle Segmentlösung aufweisen, aussortiert (entfernt). Auf diese Weise können Segmentlösungen, die zur Durchführung des Iterationsverfahrens nicht mehr benötigt werden, unberücksichtigt bleiben, was die Verfahrenseffizienz weiter erhöht.
-
Falls die möglichen Segmentlösungen eines Segments nach ihrem jeweiligen Zeitverbrauch sortiert im Speicher abgelegt wurden, kann das Ermitteln der jeweils ersten Segmentlösung immer relativ zu derjenigen Segmentlösung durchgeführt werden, die den ersten Speicherblock des zugehörigen Speicherabschnitts belegt, was bei hardwarenaher Programmierung zu weiteren Laufzeitverbesserungen des Optimierungsverfahrens führen kann. Wird das Verfahren alternativ derart ausgeführt, dass man von einer Gesamtlösung mit geringerem Energieverbrauch iterativ zu einer Gesamtlösung mit geringerem Zeitverbrauch gelangt, können, nachdem eine erste Segmentlösung eines Segments als neue aktuelle Segmentlösung eines Segments festgelegt wurde, alle Segmentlösungen dieses Segments, die einen kleineren Energieverbrauch als die neue aktuelle Segmentlösung aufweisen, aussortiert werden.
-
Vorstehend wurde bereits festgestellt, dass vor dem iterativen Bestimmen jeweils einer neuen aktuellen Segmentlösung für eines der Segmente für alle Segmente eine der Segmentlösungen als Startlösung ausgewählt werden kann. Diese Startlösungen können dann durch die Iterationsschritte sukzessive durch die festgelegten aktuellen Lösungen ersetzt werden. Nachfolgend werden mögliche vorteilhafte Ausführungsvarianten beschrieben, um jeweils eine solche Startlösung für die Segmente zu bestimmen, somit für den Fall, dass iterativ noch keine andere Segmentlösung als aktuelle Segmentlösung für ein Segment festgelegt wurde.
-
Beispielsweise kann als Startlösung (als anfängliche aktuelle Lösung) für ein Segment die Segmentlösung festgelegt werden, welche den geringsten Zeitverbrauch im Vergleich zu anderen Segmentlösungen des Segments aufweist.
-
Alternativ kann die Segmentlösung, welche die geringsten Kosten für den Zeitverbrauch und Energieverbrauch im Vergleich zu anderen Segmentlösungen des Segments aufweist, als Startlösung (als anfängliche aktuelle Lösung) für dieses Segment festgelegt werden. Zum Ermitteln der Segmentlösung mit den geringsten Kosten werden die beiden Größen Energieverbrauch und Zeitverbrauch z. B. mit einer Kostenfunktion bewertet und z. B. durch eine gemeinsame numerische Einheit, beispielsweise als Geldeinheit, angegeben. Für einen Spediteur sind sowohl der Energieverbrauch als auch der Zeitverbrauch für eine Fahrt wichtige Kostenfaktoren. Eine Gesamtlösung, die aus denjenigen Segmentlösungen zusammengesetzt wird, die jeweils die geringsten Kosten verursachen, stellt dem Benutzer eine Gesamtlösung mit den insgesamt niedrigsten Kosten bereit und eignet sich daher besonders als Ausgangspunkt (Startlösung).
-
Gemäß einer weiteren Variante kann alternativ die Segmentlösung, welche im Vergleich zu anderen Segmentlösungen des Segments die höchste Wahrscheinlichkeit aufweist, Teil der zu ermittelnden optimalen Gesamtlösung zu sein, als Startlösung (als anfängliche aktuelle Lösung) für dieses Segment ausgewählt werden. Nachfolgend wird diese Segmentlösung auch als Segmentlösung mit der wahrscheinlichsten Zeit-Energie-Priorisierung bezeichnet. Diese Variante ermöglicht vorteilhaft eine Reduzierung der benötigten Iterationsschritte. Die Verfahrenseffizienz kann weiter verbessert werden.
-
Hierbei kann die Segmentlösung des Segments mit der wahrscheinlichsten Zeit-Energie-Priorisierung anhand eines vorbestimmten Auswahlkriteriums ermittelt werden, das diese Wahrscheinlichkeit basierend auf Erfahrungswerten und/oder einer Berechnungsvorschrift bestimmt.
-
Beispielsweise kann die Segmentlösung mit der wahrscheinlichsten Zeit-Energie-Priorisierung als diejenige Segmentlösung ermittelt werden, bei der ein berechneter Differenzwert
den kleinsten Wert, vorzugsweise den kleinsten positiven Wert, im Vergleich zu anderen Segmentlösungen des Segments aufweist.
-
Hierbei gibt ΔE eine Energieeinsparung und Δt einen Zeitmehrverbrauch der Segmentlösung relativ zur Segmentlösung mit dem geringsten Zeitverbrauch an. Hierbei gibt mα eine, vorzugsweise experimentell oder heuristisch, bestimmte Energieeinsparung pro Zeitmehrverbrauch des Objekts an, die für alle Segmente zur Bestimmung der ersten aktuellen Segmentlösung gleich vorgegeben wird.
-
Die Größe mα kann z. B. für eine zu durchfahrende Trajektorie eines Kraftfahrzeugs anhand der Topographie, der Verkehrsdynamik, der geltenden Verkehrsregeln und/oder anhand von experimentellen Erfahrungswerten zum Fahrzeug betreffend den Zusammenhang der gegeneinander wirkenden Zielgrößen Energieverbrauch und Zeitverbrauch bestimmt werden.
-
Die Beschreibung zu 6 erläutert ein Beispiel, bei der die Größe mα, z. B. in Form einer Geraden mit Steigung mα, verwendet wird, um die Segmentlösung mit der wahrscheinlichsten Zeit-Energie-Priorisierung anhand eines Schnittpunktes der Gerade mit einer Kurve, die die einzelnen Segmentlösungen eines Segments miteinander verbindet, zu ermitteln.
-
Vorstehend wurde festgestellt, dass die ersten Segmentlösungen für zumindest einen Teil der mehreren Segmente bestimmt werden. Es ist möglich, für alle Segmente jeweils erste Segmentlösungen zu bestimmen. Vorteilhafter ist es, dies nur für einen Teil der Segmente zu tun, um Rechenaufwände zu reduzieren. Diese Ausführungsform ist besonders vorteilhaft, wenn von einigen Segmenten von vorneherein zu erwarten ist, dass sie kein nennenswertes Einsparpotenzial liefern. Beispielweise kann der Teil der mehreren Segmente, für den die ersten Segmentlösungen bestimmt werden, unter Verwendung von heuristischen Verfahren bestimmt werden. Soll z. B. der Zeitverbrauch einer Fahrtroute eines Kraftfahrzeugs reduziert werden, ist zu erwarten, dass im Bereich einer Baustelle keine Geschwindigkeitserhöhung möglich sein wird. Dieses Segment kann daher von den iterativen Optimierungsschritten ausgeschlossen werden, um die zur Optimierung benötigten Rechenressourcen zu verbessern, was z. B. von einem heuristischen Verfahren entsprechend berücksichtigt werden kann.
-
In einer weiteren Ausführungsform erfolgt das iterative Festlegen von aktuellen Segmentlösungen solange, bis ein für die Gesamtlösung vorgegebener maximaler Zeitverbrauch oder maximaler Energieverbrauch kleiner ist als die Summe der Zeitverbräuche oder Energieverbräuche, die mit den aktuellen Segmentlösungen einhergeht. Optional wird nach dieser Überschreitung des maximalen Zeitverbrauchs oder maximalen Energieverbrauchs die letzte Iteration zur Festlegung der Gesamtlösung nicht berücksichtigt. Der maximale Zeitverbrauch oder der maximale Energieverbrauch können beispielsweise das Abbruchkriterium für das iterative Optimierungsverfahren bilden. Z. B. könnte der Benutzer einen maximalen Zeitverbrauch vorgegeben haben, der größer ist als die Gesamtlösung mit dem insgesamt geringsten Zeitverbrauch. Wird jeweils die Segmentlösung mit dem kleinsten Zeitverbrauch als Startlösung für das jeweilige Segment verwendet und der Zeitverbrauch mit jedem Iterationsschritt vergrößert, nähert sich der Zeitverbrauch der Gesamtlösung immer weiter an den vorgegebenen maximalen Zeitverbrauch an. Sobald der Zeitverbrauch der Gesamtlösung den vorgegebenen maximalen Zeitverbrauch überschreitet, ist der maximale Zeitverbrauch kleiner als der Zeitverbrauch der Gesamtlösung, und die Iteration wird abgebrochen.
-
Ein bevorzugter zweiter Aspekt der vorliegenden Offenbarung betrifft eine Benutzerschnittstelle, über die ein Benutzer im Rahmen des Verfahrens Vorgaben für die Zielkriterien Zeitverbrauch und Energieverbrauch machen kann, hinsichtlich derer die Gesamtlösung optimiert wird. Gemäß diesem zweiten bevorzugten Aspekt umfasst das Verfahren das Bereitstellen einer solchen Benutzerschnittstelle. Vorteilhaft kann der Benutzer Einfluss auf die ermittelte Gesamtlösung nehmen, indem der Benutzer Vorgaben für die Zielkriterien Zeitverbrauch und Energieverbrauch macht, sodass diese unter Berücksichtigung der Benutzerpräferenzen ermittelt werden.
-
In einer bevorzugten Ausführungsform des zweiten Aspekts kann die Benutzerschnittstelle ausgebildet sein, eine Eingabe zu einem maximal möglichen Energieverbrauch und/oder einem maximal möglichen Zeitverbrauch und/oder einer maximal möglichen Ankunftszeit zu erfassen.
-
Zudem oder alternativ kann die Benutzerschnittstelle ausgebildet sein, eine Eingabe zu einer Priorisierung der gegeneinander wirkenden Zielgrößen Energieverbrauch und/oder Zeitverbrauch zu erfassen. Beispielsweise kann eine solche Eingabe eine Priorisierung, z. B. eine Gewichtung eines Energieverbrauchs gegenüber einem Zeitverbrauch verändern.
-
Bei der Vorgabe einer Priorisierung wird anstelle eines festen Grenzwerts für den Zeit- oder Energieverbrauch vorgegeben, wie stark die beiden Größen Energieverbrauch und Zeitverbrauch jeweils bei der Optimierung gewichtet werden.
-
Zudem oder alternativ kann die Benutzerschnittstelle ausgebildet sein, einen Schieberegler, vorzugsweise einen auf einer berührungsempfindlichen Anzeigefläche angezeigten Schieberegler, zur Erfassung von Benutzereingaben bereitzustellen. Beispielsweise kann mittels des Schiebereglers eine Priorisierung, z. B. eine Gewichtung eines Energieverbrauchs gegenüber einem Zeitverbrauch verändert werden.
-
Wird der Schieberegler z. B. auf eine Position ganz außen geschoben, die der Zeit-Priorisierung entspricht, ermittelt das Verfahren die Gesamtlösung mit dem minimalen Zeitverbrauch. Wird der Schieberegler auf die äußere Position auf der anderen Seite geschoben, d. h. der Seite, die der Energie-Priorisierung entspricht, ermittelt das Verfahren die Gesamtlösung mit dem minimalen Energieverbrauch. Positionen des Schiebereglers zwischen diesen beiden Punkten beschreiben entsprechend eine Gewichtung zwischen diesen beiden Zielgrößen. Dem Nutzer bietet die Ausführungsvariante eine komfortable und intuitive Möglichkeit, Zielvorgaben an das Optimierungsverfahren zu übergeben.
-
Die Benutzerschnittstelle umfasst mindestens ein Eingabeelement, mittels derer der Benutzer seine Zielvorgaben eingeben kann, sowie eine Anzeigeeinrichtung, die dem Benutzer die eingegebenen Vorgaben sowie optional zusätzliche Informationen zur Trajektorie und/oder zum Ergebnis der Optimierung darstellt. Das Eingabeelement kann auf einer berührungsempfindlichen Anzeigeeinrichtung dargestellt werden.
-
Wie bereits erwähnt, betrifft eine hervorgehobene Anwendung des Verfahrens die Anwendung auf Kraftfahrzeuge. Entsprechend kann das Verfahren zum Bestimmen einer hinsichtlich eines Zeit- und Energieverbrauchs optimalen Bewegung eines Objekts entlang einer Trajektorie ein Verfahren zum Bestimmen eines hinsichtlich eines Zeit- und Energieverbrauchs optimalen Geschwindigkeits- und vorzugsweise zugehörigen Gangschaltverlaufs eines Kraftfahrzeugs entlang einer Fahrtroute sein. Hierbei gibt eine Segmentlösung vorzugsweise die Geschwindigkeit des Kraftfahrzeugs und optional den jeweils eingelegten Gang zu jedem Zeitpunkt während der Fahrt durch das zugeordnete Fahrtroutensegment an. Die Optimierung der Bewegung von Kraftfahrzeugen entlang ihrer Fahrstrecken ist von besonderer Bedeutung, da durch optimale Trajektorien Energie und die damit verbundenen Kosten eingespart werden können. Gleichzeitig gibt es aber häufig enge Zeitvorgaben, an die sich die Fahrer der Kraftfahrzeuge halten wollen oder müssen. Das zuvor beschriebene Verfahren eignet sich besonders gut, diese beiden gegenläufigen Zielkriterien in einer gemeinsamen Optimierung zu behandeln, insbesondere, da es dem Benutzer die notwendige Flexibilität bietet, um auf veränderte Bedingungen entlang der Fahrstrecke oder auf geänderte Zielvorgaben reagieren zu können.
-
In einer bevorzugten Ausführungsvariante kann ein Fahrer des Kraftfahrzeugs über die Benutzerschnittstelle Vorgaben für die Zielkriterien Zeitverbrauch und Energieverbrauch vor der Fahrt und/oder während der Fahrt machen. Der optimale Geschwindigkeits- und vorzugsweise zugehörige Gangschaltverlauf des Kraftfahrzeugs wird nach einer Vorgabe ermittelt, vorzugsweise nach einer geänderten Vorgabe erneut ermittelt. Der Benutzer kann über die Benutzerschnittstelle somit auch während der Fahrt, ggf. auch mehrfach, die Vorgabe für den Zeitverbrauch und Energieverbrauch ändern. Die geänderten Vorgaben triggern dann eine Neuberechnung der Gesamtlösung für die Fahrt entlang der Fahrtroute.
-
Die Eingabemöglichkeit über die Benutzerschnittstelle stellt für den Benutzer eine bequeme Möglichkeit dar, Zielvorgaben an das Optimierungsverfahren zu übergeben. Der ressourcenschonende Ansatz des Verfahrens ermöglicht es, Änderungen der Vorgaben auch während der Fahrt machen zu können, da die Optimierung der Trajektorie in Echtzeit erneut durchgeführt werden kann. Die erneute Optimierung der Gesamtlösung kann entweder automatisch oder aufgrund einer Bestätigung durch den Benutzer erfolgen.
-
In einer weiteren Ausführungsvariante erfolgt das Ermitteln von mehreren möglichen Segmentlösungen pro Segment unter Berücksichtigung von Verkehrsregeln, von einer Verkehrsdynamik und/oder von Topographiedaten der Fahrtroute. Damit kann beispielsweise darauf reagiert werden, dass dichter Verkehr eine höhere Geschwindigkeit in einzelnen Segmenten verhindern könnte. Das Einbeziehen der Verkehrsdynamik kann vor dem Start der Fahrt in die Optimierung der Trajektorie einbezogen werden. Insbesondere kann das Verfahren aber auch auf sich ändernde Verkehrsdynamik reagieren. Wird durch einen plötzlich auftretenden Stau, etwa durch einen Verkehrsunfall, die Fahrgeschwindigkeit in einem Teilbereich der Fahrtroute verringert, könnte es passieren, dass eine zuvor vorgegebene späteste Ankunftszeit mit dem ursprünglich geplanten weiteren Geschwindigkeitsverlauf entlang der weiteren Fahrtroute nicht eingehalten werden kann. Das Verfahren kann auf die veränderten Rahmenbedingungen reagieren und die verlorene Zeit im weiteren Verlauf der Fahrtroute einsparen, soweit die Randbedingungen, beispielsweise geltende Höchstgeschwindigkeiten oder die weitere Verkehrsdynamik, dies zulassen. Das Einbeziehen von Topographiedaten kann insbesondere die mögliche Energieersparnis verbessern, da positive und negativen Steigungen einen erheblichen Einfluss auf den Energieverbrauch des Kraftfahrzeugs ausüben.
-
Gemäß einem weiteren allgemeinen Gesichtspunkt der Erfindung wird eine Vorrichtung bereitgestellt, vorzugsweise eine Computervorrichtung oder ein Fahrerassistenzsystem, die/das ausgebildet ist, das zuvor beschriebene Verfahren durchzuführen. Die Vorrichtung kann z. B. programmtechnisch eingerichtet sein, die iterative Berechnung der Gesamtlösung, wie hierin beschrieben, durchzuführen. Zudem oder alternativ dann die Vorrichtung ausgebildet sein, die Benutzerschnittstelle bereitzustellen, anzusteuern und/oder Eingabe hiervon erfassen und bei der Durchführung des Verfahrens zu berücksichtigten.
-
Weiterhin wird ein Kraftfahrzeug bereitgestellt, das eine entsprechende Vorrichtung umfasst. Die Vorrichtung kann ein Steuergerät und/oder ein Fahrerassistenzsystem des Kraftfahrzeugs sein und/oder umfassen.
-
Bevorzugt ist das Kraftfahrzeug ein Nutzfahrzeug (z. B. ein Lastkraftwagen oder Omnibus). Hierbei kann unter einem Nutzfahrzeug im Allgemeinen ein Fahrzeug verstanden werden, das durch seine Bauart und Einrichtung speziell zur Beförderung von Personen, zum Transport von Gütern oder zum Ziehen von Anhängerfahrzeugen ausgelegt ist.
-
Die zuvor beschriebenen bevorzugten Ausführungsformen und Merkmale der Erfindung sind beliebig miteinander kombinierbar. Es wird betont, dass der erste Aspekt der vorliegenden Offenbarung betreffend die iterative, sensitivitätsbasierte Berechnung der aktuellen Segmentlösungen und der zweite Aspekt betreffend die Benutzerschnittstelle inklusive der diesbezüglichen Ausführungsvarianten sowohl in Kombination als auch unabhängig voneinander im Rahmen des Verfahrens offenbart und beanspruchbar sein sollen. Beispielsweise soll somit auch ein Verfahren zum Bestimmen eines hinsichtlich eines Zeit- und Energieverbrauchs optimalen Bewegungszustandes eines Objekts entlang einer Trajektorie offenbart sein, bei dem eine Benutzerschnittstelle, über die ein Benutzer Vorgaben für die Zielkriterien Zeitverbrauch und Energieverbrauch machen kann, bereitgestellt wird und bei dem die Gesamtlösung in herkömmlicher Weise aus den Segmentlösungen bestimmt wird, z. B. in einem kombinatorischen Ansatz und ohne die iterative, sensitivitätsbasierte Berechnung der aktuellen Segmentlösungen.
-
Jedoch ist eine Kombination einer solchen Benutzerschnittstelle mit dem ersten Aspekt der vorliegenden Offenbarung besonders vorteilhaft, weil die besonders ressourcenschone Berechnung gemäß dem ersten Aspekt eine Änderung der Vorgaben für die Zielkriterien Zeitverbrauch und Energieverbrauch im laufenden Echtzeitbetrieb erst praktikabel macht.
-
Zur Vermeidung von Wiederholungen sollen rein verfahrensgemäß offenbarte Merkmale auch als vorrichtungsgemäß offenbart gelten und beanspruchbar sein, z. B. als funktionale Merkmale der Vorrichtung. Die vorgenannten Aspekte und erfindungsgemäßen Merkmale, insbesondere im Hinblick auf die Ausbildung der iterativen Berechnung von aktuellen Segmentlösungen und der Bereitstellung der Benutzerschnittstelle gelten somit auch für die Vorrichtung.
-
Weitere Einzelheiten und Vorteile der Erfindung werden im Folgenden unter Bezug auf die beigefügten Zeichnungen beschrieben. Es zeigen:
- 1 ein schematisches Ablaufdiagramm zur Illustration eines Verfahrens gemäß einem Ausführungsbeispiel der Erfindung;
- 2 ein schematisches Ablaufdiagramm zur Illustration eines Verfahrens gemäß einem weiteren Ausführungsbeispiel der Erfindung;
- 3 eine schematische Darstellung einer segmentierten Trajektorie eines Kraftfahrzeugs gemäß einem weiteren Ausführungsbeispiel der Erfindung;
- 4 eine schematische Darstellung einer Benutzerschnittstelle gemäß eines weiteren Ausführungsbeispiels der Erfindung;
- 5 eine schematische Darstellung eines Verfahrensschritts des iterativen Optimierungsverfahrens gemäß einem weiteren Ausführungsbeispiel der Erfindung; und
- 6 eine schematische Darstellung eines Verfahrensschritts des iterativen Optimierungsverfahren gemäß einem anderen Ausführungsbeispiel der Erfindung.
-
Die in den Figuren gezeigten Ausführungsformen stimmen zumindest teilweise überein, sodass ähnliche oder identische Teile mit den gleichen Bezugszeichen versehen sind und zu deren Erläuterung auch auf die Beschreibung der anderen Ausführungsformen bzw. Figuren verwiesen wird, um Wiederholungen zu vermeiden.
-
1 zeigt ein schematisches Ablaufdiagramm zur Illustration eines Verfahrens zum Bestimmen 1 einer hinsichtlich eines Zeit- und Energieverbrauchs 3 optimalen Bewegung eines Objekts 4 entlang einer Trajektorie 5 gemäß einem Ausführungsbeispiel der Erfindung. In der nachfolgenden Beschreibung der Verfahrensschritte der 1 (und der 2) wird auch wiederholt Bezug genommen auf die 3 bis 5, um einzelne Aspekte des Verfahrens zu erläutern.
-
So illustriert z. B. 3 einen bevorzugten Anwendungsfall des Verfahrens, bei dem das Objekt 4, dessen Bewegung optimiert werden soll, beispielsweise ein Kraftfahrzeug 6 ist, dessen Fahrt entlang einer Fahrtroute 7 hinsichtlich des Zeitverbrauchs 2 und des Energieverbrauchs 3 optimiert werden soll. In diesem Fall könnten beispielsweise der Verlauf der Geschwindigkeit und vorzugsweise der Verlauf des eingelegten Gangs entlang der Fahrtroute 7 optimiert werden. Die Figuren werden zur Illustration anhand dieses Beispiels beschrieben. Das Verfahren ist jedoch grundsätzlich auch auf andere Objekte 4 anwendbar, beispielsweise auf einen Roboterarm, dessen Bewegungszustände entlang einer Bewegungstrajektorie optimiert werden sollen.
-
Das Verfahren gemäß 1 umfasst zunächst den Schritt S20, die Unterteilung der Trajektorie 5 in (Trajektorien-)Segmente 8, aus denen sich die Gesamttrajektorie zusammensetzt. Die Unterteilung kann prinzipiell nach beliebigen Kriterien erfolgen. Eine Möglichkeit wäre es, die Trajektorie 5 in gleichgroße Segmente 8 zu unterteilen. Alternativ können die Segmentgrenzen 21 an Punkten erstellt werden, an denen sich Randbedingungen für die Bewegung des Objekts 4 ändern. Im Beispiel der Fahrtroute 7 eines Kraftfahrzeugs 6 könnten dies der Beginn einer Bergfahrt, die Auffahrt einer Autobahn oder das Ende eines Baustellenbereichs sein.
-
Im anschließenden Schritt S40 werden für alle Segmente 8 mehrere mögliche Segmentlösungen 9 ermittelt. Hierbei legen die Segmentlösungen 9 jeweils eine mögliche Bewegung des Objekts 4 entlang des jeweiligen Segments 8 fest, z. B. den Geschwindigkeitsverlauf und vorzugsweise den Gangschaltlauf. Ferner ist jeder Segmentlösung 9 jeweils ein Zeitverbrauch 2 und ein Energieverbrauch 3 für die Bewegung des Objekts 4 durch das Segment 8 zugeordnet.
-
3 illustriert die Schritte S20 und S40 an einem stark vereinfachten schematischen Beispiel, bei dem die Bewegung eines Kraftfahrzeugs 6 entlang einer Fahrtroute 7 vom Anfangspunkt A bis zum Endpunkt E optimiert werden soll. Das Kraftfahrzeug 7 ist mit einer ComputerVorrichtung 20 zur Ausführung des beschriebenen Verfahrens ausgestattet. Die Fahrtroute 7 wurde entsprechend Schritt S20 in Segmente 8 unterteilt. Lediglich beispielhaft ist eine Unterteilung in vier Segmente gezeigt (die Segmente zwischen den Punkt AB, BC, CD und DE). Die Segmentgrenzen 21 können z. B. jeweils an Punkten liegen, an denen sich die Topographie der Fahrtroute 7 ändert. Die einzelnen Segmente 8 sind daher optional unterschiedlich groß. Die in Schritt S40 für jedes der Segmente 8 ermittelten Zeit- und Energieverbräuche 2, 3 für jede der ermittelten Segmentlösungen 9 sind in 3 jeweils unterhalb der Segmente illustriert. Beispielhaft sind hier für das erste Segment AB sechs mögliche Segmentlösungen A1 bis A6 dargestellt, für das zweite Segment BC fünf mögliche Segmentlösungen B1 bis B5 usw. Jeder Segmentlösung 9 ist jeweils ein Energieverbrauch 3 (Spalte E) und ein Zeitverbrauch 2 (Spalte t) zugeordnet. In den Tabellen sind die Lösungen jeweils nach aufsteigendem Energieverbrauch 3 sortiert angeordnet.
-
Die Schritte S20 und S40 sind an sich aus dem Stand der Technik bekannt. Hierfür können entsprechend die an sich bekannten Techniken bzw. Berechnungsverfahren verwendet werden, auf die vorliegend daher nicht näher eingegangen wird.
-
Basierend auf den mehreren möglichen Segmentlösungen 9 für die Segmente wird anschließend in Schritt S60 eine hinsichtlich der gegeneinander wirkenden Zielgrößen Zeitverbrauch und Energieverbrauch optimale Gesamtlösung 10 für die Bewegung des Objekts entlang der Trajektorie ermittelt. Da für jedes Segment mehrere Segmentlösungen in Frage kommen, stellt sich die Frage, welches hinsichtlich Zeit- und Energieverbrauch die optimale Kombination der Segmentlösungen für die gesamte Fahrstrecke (Trajektorie 5) ist.
-
Ein möglicher und aus der Praxis bereits bekannter Ansatz für den Schritt S60 ist, die optimale Gesamtlösung anhand einer Berechnung und Bewertung der möglichen Kombinationen aller möglichen Segmentlösungen mit jeweils allen anderen Segmentlösungen zu ermitteln. Nachteilig hieran ist jedoch der damit verbundene hohe Rechen- und Speicheraufwand (Stichwort „kombinatorische Explosion“), da in der Praxis die Anzahl an Segmenten 8 und die Anzahl an möglichen Segmentlösungen 9 pro Segment 8 wesentlich höher ist als in dem stark vereinfachten Beispiel der 3. Bevorzugt wird daher zur Ermittlung der Gesamtlösung in Schritt S60 ein anderer Ansatz verwendet, für den wesentlich weniger Rechen- und Speicherressourcen vonnöten sind. Dieser bevorzugte Ansatz wird nachfolgend in Zusammenhang mit 2 detailliert erläutert.
-
Nachdem eine optimale Gesamtlösung 10 ermittelt wurde, hier der auf der Fahrstrecke von A nach E automatisiert einzustellende Geschwindigkeits- und vorzugsweise Gangschaltverlauf des Kraftfahrzeugs 6, können die Geschwindigkeit und die Gangstufen während der Fahrt entlang der Fahrstrecke entsprechend automatisiert eingestellt werden.
-
Während der Fahrt wird vorlaufend überwacht, ob eine Neuberechnung der Gesamtlösung 10 erforderlich ist, was anhand der Schritte S82 bis S100 illustriert ist.
-
Im Schritt S82, der optional sein kann, wird geprüft, ob sich die Straßenverhältnisse (Verkehrsregeln, Verkehrsdynamik, Topographie, Witterungsverhältnisse, ...) nach dem Ermitteln der zuvor gefundenen Gesamtlösung 10 geändert haben, bzw. ob eine oder mehrere der zugrundeliegenden Daten nachträglich angepasst wurden. Beispielsweise könnte eine zuvor verhängte temporäre Geschwindigkeitsbegrenzung aufgehoben worden sein, ein Stau die Reduzierung der Geschwindigkeit erfordern oder eine durch Regen nasse Fahrbahn einen anderen Gangschaltverlauf sinnvoll werden lassen. Ein anderes Beispiel für geänderte Straßenverhältnisse, insbesondere für die Anpassung der Topographie, wäre, eine Veränderung von Bauwerken, veränderte erlaubte Durchfahrtshöhen oder eine Veränderung des Bewuchses entlang der Straße, was insbesondere für Nutzfahrzeuge relevant sein kann. In diesem Fall werden die Segmentlösungen 9 der einzelnen Segmente 8 erneut ermittelt. Das Verfahren springt somit zurück zum Schritt S40, und es wird eine neue optimale Gesamtlösung 10 aus den möglichen Segmentlösungen 9 ermittelt.
-
Ergibt die Überprüfung des Schritts S82, dass keine Anpassungen an den Straßenverhältnissen aufgetreten sind, wird im Schritt S84 als Nächstes geprüft, ob Vorgaben für die Zielkriterien Energieverbrauch und Zeitverbrauch, nachfolgend kurz als Zeit-Energie-Priorisierung bezeichnet, durch einen Benutzer, z. B. den Fahrer des Kraftfahrzeugs, angepasst wurden.
-
Die Besonderheit des in 1 gezeigten Ausführungsbeispiels liegt u. a. darin, dass die Vorgaben für die Zielkriterien Energieverbrauch und Zeitverbrauch, nachfolgend kurz als Zeit-Energie-Priorisierung bezeichnet, jederzeit, auch während der Fahrt, von einem Benutzer, z. B. dem Fahrer des Kraftfahrzeugs, über eine Benutzerschnittstelle angepasst werden kann. Ändert der Benutzer die Zeit-Energie-Priorisierung, indem er z. B. Vorgaben für die maximal zulässige Fahrzeit, den maximal zulässigen Energieverbrauch für die Fahrtroute und/oder eine Gewichtung der gegeneinander wirkenden Zielgrößen Energieverbrauch und/oder Zeitverbrauch relativ zueinander ändert, muss die optimale Gesamtlösung in Hinblick auf diese neuen Vorgaben neu berechnet werden.
-
Ergibt daher die Überprüfung in Schritt S84, dass die Zielvorgaben durch den Benutzer angepasst wurden, wird erneut mit dem Ermitteln einer optimalen Gesamtlösung S60 begonnen. Da sich an den Rahmenbedingungen für die Bewegung nichts geändert hat, ändert sich auch an der Menge der möglichen Segmentlösungen 9 der einzelnen Segmente 8 nichts, sodass der Schritt S40 nicht erneut durchgeführt werden muss.
-
In Schritt S86 wird schließlich geprüft, ob die aktuelle Fahrtroute 7 beendet wurde. Ist dies nicht der Fall, werden die Schritte S82 bis S86 erneut durchlaufen, sodass die Optimierung der Trajektorie 5 erneut durchgeführt werden kann, sobald eine Anpassung der Straßenverhältnisse oder der Zeit-Energie-Priorisierung vorgenommen wurde. Nach dem Beenden der Fahrtroute 7 endet das Verfahren in Schritt S100.
-
4 zeigt ein Beispiel einer solchen Benutzerschnittstelle 16, über die der Benutzer vor oder während der Fahrt die Vorgaben für die Zeit-Energie-Priorisierung ändern kann.
-
Die Benutzerschnittstelle 16 umfasst dazu eine Anzeigevorrichtung 23 und eine Vorrichtung zur Eingabe von Benutzereingaben. Im in der Figur dargestellten Beispiel ist die Anzeigevorrichtung 23 als berührungsempfindlicher Bildschirm ausgeführt, sodass Benutzereingaben direkt auf dem Bildschirm vorgenommen werden können.
-
Die Benutzerschnittstelle 16 kann einen Schieberegler 19 zur Änderung der Gewichtung der gegeneinander wirkenden Zielgrößen Energie(-verbrauch) und/oder Zeit(-verbrauch) relativ zueinander umfassen.
-
Wird der Schieberegler z. B. auf eine Position ganz außen geschoben, die der Zeit-Priorisierung entspricht, ermittelt das Verfahren die Gesamtlösung mit dem minimalen Zeitverbrauch. Wird der Schieberegler auf die äußere Position auf der anderen Seite geschoben, d. h. der Seite, die der Energie-Priorisierung entspricht, ermittelt das Verfahren die Gesamtlösung mit dem minimalen Energieverbrauch. Positionen zwischen diesen beiden Punkten beschreiben entsprechend eine Gewichtung zwischen diesen beiden Zielgrößen. Dem Nutzer bietet die Ausführungsvariante eine komfortable und intuitive Möglichkeit, die Zielvorgaben für die Optimierung der Gesamtlösung festzulegen und/oder zu anzupassen.
-
Zudem oder alternativ kann die Benutzerschnittstelle 16 ausgebildet sein, eine Eingabemöglichkeit bereitzustellen, um einen maximalen Zeitverbrauch 14 und/oder einen maximalen Energieverbrauch 15, z. B. als maximalen Kraftstoffverbrauch, einzugeben, die die Gesamtlösungen einzuhalten hat. Anstelle oder zusätzlich zur Eingabe eines maximalen Zeitverbrauchs kann die Benutzerschnittstelle 16 auch ausgebildet sein, eine Eingabemöglich bereitzustellen, um eine späteste Ankunftszeit eingeben zu können.
-
Mittels der Benutzerschnittstelle 16 kann ein Benutzer, insbesondere der Fahrer, jederzeit und auf einfache Weise Einfluss auf die ermittelte Gesamtlösung nehmen, indem der Benutzer Vorgaben für die Zielkriterien Zeitverbrauch und Energieverbrauch macht, sodass diese unter Berücksichtigung der Benutzerpräferenzen ermittelt werden.
-
Über die Benutzerschnittstelle 16 geänderte Vorgaben für die Zielkriterien Zeitverbrauch und Energieverbrauch machen bei jeder Änderung eine Neuberechnung der Gesamtlösung 10 erforderlich und benötigen entsprechend Rechenressourcen. Daher ist es besonders vorteilhaft, wenn die Berechnung der Gesamtlösung in Schritt S60 nicht anhand eines herkömmlichen rein kombinatorischen Ansatzes erfolgt, sondern stattdessen mit einem anderen Ansatz verwendet wird, für den wesentlich weniger Rechen- und Speicherressourcen vonnöten sind. Dieser bevorzugte Ansatz wird nachfolgend in Zusammenhang mit 2 detailliert erläutert.
-
2 zeigt ein Ausführungsbeispiel betreffend die Durchführung des Schritts S60: dem Ermitteln der optimalen Gesamtlösung 10 gemäß dem vorstehend ersten allgemeinen Aspekt der Offenbarung. Hierbei wird die Gesamtlösung ausgehend von anfänglich festgelegten Startlösungen für die einzelnen Segmente iterativ durch einen sog. sensitivitätsgesteuerten Austausch von einzelnen Segmentlösungen ermittelt.
-
In Schritt S61 erfolgt zunächst ein Aussortieren von Segmentlösungen, um offensichtlich nichtsinnvolle oder nachteilige Segmentlösungen für jedes Segment in Bezug auf den zugeordneten Energie- und Zeitverbrauch auszusortieren. Beispielsweise kann hierbei von mehreren Segmentlösungen, die den gleichen Energieverbrauch aufweisen, nur diejenige Segmentlösung beibehalten werden, die den geringsten Zeitverbrauch aufweist (während die mit höherem Zeitverbrauch aussortiert werden). Eine Segmentlösung, die zwar den gleichen Energieverbrauch, aber einen größeren Zeitverbrauch aufweist, kann zu keiner Verbesserung der Gesamtlösung führen, wenn beide Zielkriterien minimiert werden sollen. Zudem oder alternativ kann entsprechend von mehreren Segmentlösungen, die den gleichen Zeitverbrauch aufweisen, nur diejenige Segmentlösung beibehalten werden, die den geringsten Energieverbrauch aufweist (während die mit höherem Energieverbrauch aussortiert werden). Zudem oder alternativ können Segmentlösungen aussortiert werden, wenn diese einen höheren Energieverbrauch und einen höheren Zeitverbrauch als zumindest eine andere Segmentlösung des Segments aufweisen.
-
Dieses Aussortieren stellt sicher, dass es sich bei der Zeitverbrauch-Energieverbrauch-Funktion um eine monoton steigende bzw. monoton fallende Funktion handelt, was für die nachfolgenden Schritte vorteilhaft hat. Ein Zeitmehrverbrauch führt damit automatisch zu einer Energieersparnis und umgekehrt. Auf diese Weise wird eine optimale Gesamtlösung sichergestellt, ohne dass zusätzlicher Rechenaufwand betrieben werden muss.
-
Dieses Aussortieren ist beispielhaft in 3 illustriert. Beispielsweise werden für die Segmentlösung A2 insgesamt sechs Energieeinheiten und sechs Zeiteinheiten zum Durchfahren des Segments A-B benötigt. Die Segmentlösung A3 benötigt ebenfalls sechs Zeiteinheiten, aber sieben Energieeinheiten, und wird aussortiert, da sie zu einer Verschlechterung des Energieverbrauchs 3 führt, ohne eine Verbesserung des Zeitverbrauchs 2 zu bewirken, und damit nicht zu einer optimalen Gesamtlösung 10 führen kann. Entsprechend werden analog Segmentlösungen aus den anderen Segmenten aussortiert.
-
Aus den übrigbleibenden Segmentlösungen 9 muss anschließend jeweils eine Segmentlösung 9 je Segment 8 ausgewählt werden, aus denen sich schließlich die Gesamtlösung 10 ergibt.
-
Hierfür wird zunächst eine Startlösung ausgewählt.
-
Im in 2 dargestellten Beispiel wird als Startlösung von einer Gesamtlösung 10 ausgegangen, die den insgesamt niedrigsten Zeitverbrauch 2 aufweist. Der Benutzer hat z. B. einen maximalen Zeitverbrauch 14 für die Fahrtstrecke vorgegeben, z. B. durch Vorgabe einer einzuhaltenden Ankunftszeit. Das iterative Verfahren ist in der Lage, diejenige Gesamtlösung 10 zu ermitteln, deren Zeitverbrauch 2 möglichst genau mit dem vorgegebenen maximalen Zeitverbrauch 14 übereinstimmt und die dazu den geringsten Energieverbrauch 3 benötigt.
-
Im Schritt S62 wird dazu zuerst die Energieersparnis 24 für jede Segmentlösung 9 beispielhaft relativ zur Segmentlösung 9 mit dem geringsten Zeitverbrauch 2 des jeweils zugehörigen Segments 8 ermittelt. Dies wird für alle Segmente durchgeführt.
-
Schaut man in das bereits beschriebene Beispiel der 3, weist die Lösung A6 den geringsten Zeitverbrauch 2 des Segments A-B auf. Die Lösung A2 hat gegenüber der Lösung A6 eine Energieersparnis 24 von 13 - 6 = 7 Energieeinheiten.
-
Zurück in 2 wird im nächsten Schritt S63 im gezeigten Beispiel diejenige Gesamtlösung 10 zunächst als Start-Gesamtlösung ermittelt, die den insgesamt geringsten Zeitverbrauch 2 aufweist. Es würden daher die Segmentlösungen 9 mit den Bezeichnungen A6, B5, C3 und D4, deren zugehöriger Zeit- und Energieverbrauch 2, 3 in den Spalten der 3 gezeigt ist, miteinander zu einer Gesamtlösung 10 kombiniert werden. Diese Gesamtlösung 10 weist einen gesamten Zeitverbrauch 2 und einen gesamten Energieverbrauch 3 auf, der sich aus der Summe der Zeitverbräuche und Energieverbräuche.
-
Da der Benutzer beispielhaft eine Vorgabe für den maximalen Zeitverbrauch 14 vorgegeben hat, wird im Schritt S64 geprüft, ob der maximale Zeitverbrauch 14 bereits kleiner ist als der Zeitverbrauch 2 der Gesamtlösung 10. Anders ausgedrückt überprüft der Schritt S64, ob der gesamte Zeitverbrauch 2 der Gesamtlösung 10 den maximalen Zeitverbrauch 14 bereits überschritten hat. Ist dies nicht der Fall, kann das Optimierungsverfahren iterativ eine neue Gesamtlösung 10 ermitteln, die einen größeren Zeitverbrauch 2, aber einen geringeren Energieverbrauch 3 aufweist. Dazu wird beispielsweise eine Sensitivitätsanalyse 13 gemäß der Schritte S65 bis S67 durchgeführt, wie sie schematisch in 5 am Beispiel des Segments 8 von A nach B illustriert ist.
-
In 5 sieht man drei Koordinatensysteme, in denen mögliche Zeit- und Energieeigenschaften der Segmentlösungen 9 dargestellt sind.
-
Das oberste Diagramm zeigt den Zeitverbrauch 2 der jeweiligen Segmentlösung 9 auf der x-Achse und den Energieverbrauch 3 der jeweiligen Segmentlösung 9 auf der y-Achse. Zur übersichtlichen Darstellung wurden die Segmentlösungen 9 mit den Bezeichnungen A6 bis A1 nach ihrem jeweiligen Zeitverbrauch 2 sortiert eingetragen. Jede Segmentlösung 9 beschreibt einen möglichen Verlauf der Bewegung des Objekts entlang des zugeordneten Segments der Trajektorie 5, z. B. als den möglichen Geschwindigkeitsverlauf und Gangschaltverlauf eines Fahrzeugs entlang des Segments.
-
Nicht sinnvolle Segmentlösungen 9, d. h. Segmentlösungen 9, die bei gegebenem Energieverbrauch 3 zu keiner Zeitersparnis, sowie Segmentlösungen 9, die bei gegebenem Zeitverbrauch 2 nicht zu einer Energieersparnis 24 führen, wurden in Schritt S61, wie im Beispiel der 3 beschrieben, aussortiert. Im konkret dargestellten Beispiel des Segments 8 A-B fehlt daher die Segmentlösung 9 mit der Bezeichnung A3 in der Darstellung.
-
Die hinsichtlich des Zeit- und Energieverbrauchs nicht sinnvollen, d. h. offensichtlich nachteiligen, Segmentlösungen 9 auszusortieren, bietet den zusätzlichen Vorteil, dass zwischen den Größen Zeitverbrauch 2 und Energieverbrauch 3 eine monoton fallende Zuordnung entsteht. Ein größerer Zeitverbrauch 2 bedeutet immer einen geringeren Energieverbrauch 3 und umgekehrt. Somit stellt jede Segmentlösung 9 eine optimale Segmentlösung 9 für eine bestimmte Zeitverbrauchs-Energieverbrauchs-Priorisierung dar.
-
Die Segmentlösung mit dem geringsten Zeitverbrauch 2 (im Diagramm der Punkt A6), ist im vorliegenden Beispiel die Startlösung und wird als aktuelle Segmentlösung 11 des Segments 8 festgelegt. Um eine bezüglich Zeit- und Energieverbrauch 2,3 optimale Gesamtlösung 10 zu finden, die den Zielvorgaben 17 des Benutzers entspricht, d. h., die den vorgegebenen maximalen Zeitverbrauch 14 optimal ausnutzt, muss im nächsten Schritt diejenige Segmentlösung 9 gefunden werden, die relativ zur aktuellen Segmentlösung 11 das beste Verhältnis zwischen Zeitmehrverbrauch und Energieersparnis 24 bietet.
-
Daher ist im mittleren Diagramm erneut der Zeitverbrauch 2 auf der x-Achse, aber die Energieersparnis 24 relativ zur aktuellen Segmentlösung 11 auf der y-Achse aufgetragen. Für jede Segmentlösung 9 wird die Energieersparnis 24 relativ zur aktuellen Segmentlösung 11 ermittelt. Zur übersichtlichen Darstellung des Verfahrensschritts sind die so entstandenen Punkte in das mittlere Diagramm eingetragen.
-
Die aktuelle Segmentlösung 11 weist keine Energieersparnis 24 gegenüber sich selbst auf und liegt daher auf der Nulllinie.
-
An der so entstandenen monoton steigenden Zuordnung kann im nächsten Schritt entsprechend Schritt S65 ermittelt werden, welche der Segmentlösungen 9 die größte Sensitivität bezüglich Energieersparnis 24 und Zeitmehrverbrauch aufweist.
-
Dazu wird im unteren Diagramm (die Achsen entsprechen den Achsen des mittleren Diagramms) für jede Segmentlösung 9 die Steigung (ΔE/Δt) der Verbindungslinie zwischen der aktuellen Segmentlösung 11, hier der Segmentlösung mit der Bezeichnung A6, und den jeweils anderen Segmentlösungen 9 bestimmt. Die Segmentlösung 9 mit der größten Steigung weist die größte Sensitivität gegenüber der aktuellen Segmentlösung 11 auf und wird ausgewählt. Die derart ausgewählte Segmentlösung 9 wird zur ersten Segmentlösung 12 des Segments 8. Die größte Steigung bedeutet, dass diese erste Segmentlösung 12 eine größere Energieersparnis 24 pro zusätzlich benötigter Zeiteinheit erreichen kann als alle anderen Segmentlösungen 9 dieses Segments, was sie besonders sensitiv hinsichtlich des Energie- und Zeitverbrauchs macht.
-
Im vorliegenden Beispiel weist die Verbindungslinie zwischen den Punkten der Segmentlösungen A6 und A4 die größte Steigung auf. Für eine Optimierung ausgehend von einer Segmentlösung 9 mit einem geringem Zeitverbrauch 2 zu einer Segmentlösung mit größerem Zeitverbrauch 2, aber geringerem Energieverbrauch 3 ist die Lösung A4 besonders gut geeignet, da sie das beste Verhältnis zwischen Energieersparnis 24 und Zeitmehrverbrauch darstellt. Die auf diese Weise ermittelte Segmentlösung mit der besten Sensitivität hinsichtlich des Energie- und Zeitverbrauchs (hier aktuell die Segmentlösung A4) wird als erste Segmentlösung 12 (des Segments A-B) bezeichnet.
-
Segmentlösungen 9, die links von der ersten Segmentlösung 9 liegen, können nun aussortiert werden, da sie im weiteren Verlauf des Iterationsverfahrens in keinem Fall weiter berücksichtigt werden. Segmentlösungen 9 links von der ersten Segmentlösung sind weniger sensitiv als die erste Segmentlösung 12, und sie weisen gleichzeitig einen größeren Energieverbrauch 3 auf. Soll in einem nächsten Iterationsschritt zusätzliche Energie eingespart werden, führen Segmentlösungen 9 links von der ersten Segmentlösung 12 daher nie zu einer optimalen Gesamtlösung 10 und können somit ignoriert werden.
-
Im konkreten Beispiel der 5 weist die Segmentlösung A5 eine geringere Sensitivität auf als die Segmentlösung A4 und kann daher nicht zu einer optimalen Gesamtlösung 10 führen. Daher wird die Segmentlösung A5 nun aussortiert.
-
Für die übrigen Segmente 8 wird analog eine jeweilige erste Segmentlösung 12 ermittelt, d. h. eine Segmentlösung, die die größte Sensitivität gegenüber der aktuellen Segmentlösung 11 des jeweiligen Segments 8 aufweist.
-
Im gerade beschriebenen Schritt S65 wurde ermittelt, welche der möglichen Segmentlösungen 9 die jeweils sensitivste Segmentlösung 9 des jeweiligen Segments 8 bezüglich der vom Benutzer vorgegebenen Zielkriterien ist. Aus dieser Menge der ersten Segmentlösungen 12 muss als Nächstes diejenige ermittelt werden, die die insgesamt sensitivste ist. Diese wird dann in die Gesamtlösung 10 aufgenommen.
-
Zurück in 2 wird daher in Schritt S66 ermittelt, welche der zuvor bestimmten ersten Segmentlösungen die insgesamt größte relative Energieersparnis (Sensitivität) aufweist. Im Schritt S67 wird dann diese erste Segmentlösung 12 zur aktuellen Segmentlösung 11 des zugehörigen Segments 8 und ersetzt die bisherige Segmentlösung 9 dieses Segments 8 in der Gesamtlösung 10. Der Rest der Gesamtlösung 10 bleibt unverändert. Im vorliegenden Beispiel bedeutet das, dass die Gesamtlösung 10 im nächsten Iterationsschritt aus den Segmentlösungen A4, B5, C3 und D4 zusammengesetzt ist. Die Segmentlösung 9 mit der Bezeichnung A1 wird zur ersten Segmentlösung 12 des Segments 8 A-B.
-
Die Iteration wird solange durchgeführt, bis der Schritt S64 ergibt, dass der vorgegebene maximale Zeitverbrauch 14 kleiner als der Zeitverbrauch 2 der Gesamtlösung 10 ist. Sobald dies der Fall ist, wird die Iteration beendet S68. Wurde der maximale Zeitverbrauch 14 vom Benutzer als strikte obere Grenze vorgegeben, wird das Ergebnis des zuletzt durchgeführten Iterationsschritts nicht berücksichtigt und stattdessen die Gesamtlösung 10 des vorletzten Iterationsschritts verwendet.
-
Im zuvor beschriebenen Beispiel wurde von einer Gesamtlösung 10 ausgegangen, die den insgesamt niedrigsten Zeitverbrauch 2 aufweist, wobei der Benutzer einen maximalen Zeitverbrauch 14 vorgegeben hat.
-
Alternativ kann auch eine beliebige andere Gesamtlösung 10 als Ausgangspunkt (Startlösung) für das weitere Verfahren verwendet werden. Eine Möglichkeit wäre es beispielsweise, für jedes Segment 8 diejenige Segmentlösung 9 als Startlösung zu verwenden, die die insgesamt geringsten Kosten für den Zeitverbrauch 2 und den Energieverbrauch 3 aufweist. In diesem Fall würden die Gesamtlösung 10 sowie der Energieverbrauch 3 und der Zeitverbrauch 2 dieser Gesamtlösung 10 im Schritt S63 bestimmt. Eine andere Möglichkeit wäre es, für jedes Segment 8 diejenige Segmentlösung 9 zu ermitteln, die die höchste Wahrscheinlichkeit aufweist, Teil der zu ermittelnden optimalen Gesamtlösung 10 zu sein. Ein Beispiel eines solchen Verfahrens wird nachfolgend noch in 6 näher beschrieben.
-
Zum Ermitteln der jeweils ersten Segmentlösungen 12 (Schritt S65) wurde davon ausgegangen, die Energieersparnis 24 der Segmentlösungen 9 relativ zu der Segmentlösung 9 mit dem geringsten Zeitverbrauch 2 zu ermitteln. Alternativ wäre eine Bestimmung der Zeitersparnis relativ zur Segmentlösung 9 mit dem geringsten Energieverbrauch 3 ebenso möglich. Im weiteren Verlauf des Verfahrens müssten dann die Achsen Zeitverbrauch 2 und Energieersparnis 24 im Vergleich zur gezeigten Darstellung getauscht und Berechnungen entsprechend angepasst werden.
-
Im gezeigten Beispiel sind der Zeitverbrauch 2 auf der x-Achse und der Energieverbrauch 3 bzw. die Energieersparnis 24 auf der y-Achse dargestellt, sodass die Optimierung von Segmentlösungen 9 und einer Gesamtlösung mit jeweils minimalem Zeitverbrauch 2 ausgeht und eine Gesamtlösung mit größerem Zeitverbrauch 2, aber geringerem Energieverbrauch 3 gefunden werden soll. Das Verfahren kann analog durchgeführt werden, wenn die beiden Achsen vertauscht werden, indem der Energieverbrauch 3 auf der x-Achse und der Zeitverbrauch 2 bzw. die Zeitersparnis auf der y-Achse aufgetragen wird. In diesem Fall geht man von Segmentlösungen mit kleinem Energieverbrauch 3 aus und gelangt zu Segmentlösungen mit geringerem Zeitverbrauch 2. Dieses umgekehrte Vorgehen ist z. B. dann sinnvoll, wenn man das Iterationsverfahren bei einer Gesamtlösung 10 startet, die die insgesamt geringsten Kosten für den Zeitverbrauch 2 und den Energieverbrauch 3 aufweist und eine geringeren maximalen Zeitverbrauch 14 vorgibt, als diese Ausgangslösung benötigen würde.
-
Entsprechendes gilt, wenn man von einer Gesamtlösung 10 bestehend aus Segmentlösungen 9 ausgeht, die jeweils die höchste Wahrscheinlichkeit aufweisen, Teil der zu ermittelnden optimalen Gesamtlösung 10 zu sein, und der Zeitverbrauch 2 verringert werden soll.
-
6 zeigt ein alternatives Ausführungsbeispiel zur Bestimmung der ersten Segmentlösung 12 einzelner Segmente 8 sowie zur Bestimmung der Startlösungen für das Iterationsverfahren. Dargestellt sind wiederum lediglich beispielhaft drei Diagramme, in denen mögliche Segmentlösungen 9 für drei Segmente (Segmente E, F, und G) eingetragen sind. Auf der x-Achse ist jeweils der Zeitverbrauch 2 und auf der y-Achse die Energieersparnis 24 aufgetragen. Nicht sinnvolle Segmentlösungen 9, d. h. Segmentlösungen 9, die bei gegebenem Energieverbrauch 3 zu keiner Zeitersparnis, sowie Segmentlösungen 9, die bei gegebenem Zeitverbrauch 2 nicht zu einer Energieersparnis 24 führen, werden aussortiert (vgl. Schritt S61). Dadurch entsteht für jedes Segment 8 eine monoton steigende Zuordnung zwischen den beiden Größen Energieersparnis 24 und Zeitmehrverbrauch. Jede Segmentlösung 9 könnte daher Teil einer optimalen Gesamtlösung 10 sein.
-
Als Ausgangspunkt für das iterative Optimierungsverfahren soll in diesem Fall jeweils diejenige Segmentlösung 9 verwendet werden, die die höchste Wahrscheinlichkeit aufweist, Teil der zu ermittelnden optimalen Gesamtlösung 10 zu sein. Eine Möglichkeit, diese Segmentlösung 9 zu ermitteln, liegt darin, einen Differenzwert d = (ΔE/Δt - mα) zu ermitteln und die möglichen Segmentlösungen 9 mit diesem Differenzwert zu vergleichen. Der Wert mα entspricht einem wahrscheinlichen mittleren Energieverbrauch 3 pro Zeitverbrauch 2 für die gegebene Trajektorie 5. Dieser Wert könnte experimentell oder durch heuristische Überlegungen bestimmt werden. Beispielsweise könnten der durchschnittliche Energieverbrauch 3 und der durchschnittliche Zeitverbrauch 2 eines bestimmten Kraftfahrzeugs 6 entlang eines ähnlichen Streckentyps bekannt sein. Sollte dies nicht der Fall sein, könnte auf allgemeinere typische Durchschnittswerte zurückgegriffen werden.
-
Im obersten Diagramm ist daher zusätzlich zu den Bewegungszuständen der möglichen Segmentlösungen 9 diejenige Gerade eingezeichnet, deren Steigung dem Wert von mα, und damit einer wahrscheinlichen Energieersparnis 27 entspricht. Der Winkel α kann aus dem Arkustangens der Steigung der Geraden (Energieersparnis/Zeitmehrverbrauch) berechnet werden.
-
Zur Bestimmung der Startlösung für das Optimierungsverfahren wird diejenige Segmentlösung ermittelt, deren Differenzwert d den kleinsten, vorzugsweise positiven, Wert aufweist. Das bedeutet, dass der Quotient zwischen Energieersparnis 24 und Zeitmehrverbrauch relativ zur Segmentlösung 9 mit dem geringsten Zeitverbrauch 2 möglichst genau mit dem Wert mα übereinstimmt, deren Energieersparnis 24 pro Zeitmehrverbrauch aber größer ist als der der wahrscheinlichen Energieersparnis 27. Eine solche wahrscheinliche Startlösung als Ausgangspunkt für das Iterationsverfahren kann die Anzahl benötigter Iterationsschritte vorteilhaft verringern, insbesondere wenn der Wert mα für die Trajektorie 5 gut bekannt ist.
-
Um die Segmentlösung mit dem kleinsten positiven Differenzwert d zu ermitteln, werden in 6 die möglichen Segmentlösungen 9 der Segmente 8 miteinander verbunden und der Schnittpunkt mit der Geraden der wahrscheinlichen Energieersparnis 27 bestimmt. Die Segmentlösung 9 links von diesem Schnittpunkt entspricht der Segmentlösung 9, deren Steigung der Verbindungslinie zwischen der Segmentlösung 9 mit dem geringsten Zeitverbrauch 2 und der jeweiligen Segmentlösung 9 die geringste positive Abweichung zur Steigung der wahrscheinlichen Energieersparnis 27 aufweist. Diese Segmentlösung 9 wird als aktuelle Segmentlösung 11 des jeweiligen Segments 8 festgelegt.
-
Analog zum Wert mα, der durch den Winkel α dargestellt werden kann, können auch die Steigungen der möglichen Segmentlösungen 9 relativ zur aktuellen Segmentlösung 11 in Form eines Winkels dargestellt werden. Im weiteren Verlauf des Iterationsverfahrens können entsprechend Winkel anstelle von Steigungen miteinander verglichen werden.
-
Im mittleren Diagramm der 6 wurde beispielhaft der Winkel θF1 dargestellt, der aus der aktuellen Segmentlösung F2 und der möglichen Segmentlösung F1 des Segments F bestimmt wird. Die übrigen Winkel θx# werden analog bestimmt. Zur besseren Übersichtlichkeit wurde auf die Darstellung in der Figur jeweils verzichtet. Die alternative Verwendung von Winkeln anstelle von Quotienten kann Laufzeitvorteile des iterativen Optimierungsverfahrens zur Folge haben, da eine geringere Anzahl an Werten im Speicher abgelegt und für die Berechnung aufgerufen werden muss. Alternativ kann auch direkt der Tangens des Winkels verwendet werden, sodass die Berechnung des Arkustangens eingespart werden kann.
-
Das mittlere Diagramm zeigt einen beispielhaften Iterationsschritt S65 des iterativen Optimierungsverfahrens, bei dem der Benutzer eine größere Energieersparnis 24 fordert oder einen größeren maximaler Zeitverbrauch 15 erlaubt, als die aus den Startlösungen zusammengesetzte Gesamtlösung 10 ergeben würde. Daher wird für alle Segmentlösungen 9, die rechts von der aktuellen Segmentlösung 11 liegen, der Tangens des Winkels θ bestimmt. Diejenige Segmentlösung 9 mit dem jeweils größten tan(θ) wird zur ersten Segmentlösung 12 des jeweiligen Segments. Segmentlösungen 9 links von der aktuellen Segmentlösung 11 sind in diesem Fall nicht relevant, da sie die Zielvorgabe des Benutzers nicht erfüllen können. Die Bestimmung der optimalen Gesamtlösung 10 erfolgt, wie bereits zuvor beschrieben, entsprechend der Schritte S66 und S67.
-
Das untere Diagramm zeigt schließlich den Schritt S65 für den umgekehrten Fall, in dem der Benutzer einen geringeren Maximalen Zeitverbrauch 14 als Zielvorgabe gemacht hat oder ein größerer maximaler Energieverbrauch 16 erlaubt wurde, als die aus den Startlösungen zusammengesetzte Gesamtlösung 10 ergeben würde. Entsprechend werden in diesem Fall Segmentlösungen 9 betrachtet, die links von der aktuellen Segmentlösung 11 liegen. Die Segmentlösung 9 mit dem kleinsten tan(θ) benötigt die geringste negative Energieersparnis (entspricht dem geringsten Energiemehrverbrauch), um eine bestimmte Menge Zeit einzusparen. Daher ist diese Segmentlösung 9 die jeweils sensitivste und wird zur ersten Segmentlösung 12 des Segments.
-
Obwohl die Erfindung unter Bezugnahme auf bestimmte Ausführungsbeispiele beschrieben worden ist, ist es für einen Fachmann ersichtlich, dass verschiedene Änderungen ausgeführt werden können und Äquivalente als Ersatz verwendet werden können, ohne den Bereich der Erfindung zu verlassen. Auch wenn das Verfahren insbesondere für den hervorgehobenen Fall eines Kraftfahrzeugs beschrieben wurde, ist das Verfahren auch allgemein zur Bestimmung optimierter Trajektorien bewegter Objekte anwendbar und soll diesbezüglich auch als offenbart gelten. Insofern Beispiele beschrieben sind, in denen von Gesamtlösungen mit minimalem Zeitverbrauch ausgegangen wird und die durch eine Sensitivitätsanalyse hinsichtlich des Energieverbrauchs bis zum Erreichen eines vorgegebenen maximalen Zeitverbrauchs optimiert wird, sollen analoge Bespiele auch für die Optimierung anderer Zielvorgaben sowie anderer Ausgangslösungen gelten. Folglich soll die Erfindung nicht auf die offenbarten Ausführungsbeispiele begrenzt sein, sondern soll alle Ausführungsbeispiele umfassen, die in den Bereich der beigefügten Patentansprüche fallen. Insbesondere beansprucht die Erfindung auch Schutz für den Gegenstand und die Merkmale der Unteransprüche unabhängig von den in Bezug genommenen Ansprüchen.
-
Bezugszeichenliste
-
- 1
- Bestimmungsverfahren
- 2
- Zeitverbrauch
- 3
- Energieverbrauch
- 4
- Objekt
- 5
- Trajektorie
- 6
- Kraftfahrzeug
- 7
- Fahrtroute
- 8
- Segment
- 9
- Segmentlösung
- 10
- Gesamtlösung
- 11
- Aktuelle Segmentlösung
- 12
- Erste Segmentlösung
- 13
- Sensitivitätsanalyse
- 14
- Maximaler Zeitverbrauch/späteste Ankunftszeit
- 15
- Maximaler Energieverbrauch
- 16
- Benutzerschnittstelle
- 17
- Zielkriterien/Zielgrößen
- 18
- Priorisierung
- 19
- Schieberegler
- 20
- Vorrichtung zur Verfahrensausführung
- 21
- Segmentgrenze
- 22
- Aussortierte Segmentlösung
- 23
- Anzeigevorrichtung
- 24
- Energieersparnis
- 25
- Anfangssegment
- 26
- Endsegment
- 27
- Wahrscheinliche Energieersparnis