DE102019211009B4 - Verfahren und Computerprogramm zum Simulieren eines autonomen Fahrzeugs in einer Mehrzahl von Testfällen - Google Patents

Verfahren und Computerprogramm zum Simulieren eines autonomen Fahrzeugs in einer Mehrzahl von Testfällen Download PDF

Info

Publication number
DE102019211009B4
DE102019211009B4 DE102019211009.6A DE102019211009A DE102019211009B4 DE 102019211009 B4 DE102019211009 B4 DE 102019211009B4 DE 102019211009 A DE102019211009 A DE 102019211009A DE 102019211009 B4 DE102019211009 B4 DE 102019211009B4
Authority
DE
Germany
Prior art keywords
autonomous vehicle
driving
test cases
vehicle
expected behavior
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102019211009.6A
Other languages
English (en)
Other versions
DE102019211009A1 (de
Inventor
Julia Fischer
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZF Friedrichshafen AG
Original Assignee
ZF Friedrichshafen AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZF Friedrichshafen AG filed Critical ZF Friedrichshafen AG
Priority to DE102019211009.6A priority Critical patent/DE102019211009B4/de
Publication of DE102019211009A1 publication Critical patent/DE102019211009A1/de
Application granted granted Critical
Publication of DE102019211009B4 publication Critical patent/DE102019211009B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01MTESTING STATIC OR DYNAMIC BALANCE OF MACHINES OR STRUCTURES; TESTING OF STRUCTURES OR APPARATUS, NOT OTHERWISE PROVIDED FOR
    • G01M17/00Testing of vehicles
    • G01M17/007Wheeled or endless-tracked vehicles

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Traffic Control Systems (AREA)

Abstract

Verfahren zum Simulieren eines autonomen Fahrzeugs in einer Mehrzahl von Testfällen, das Verfahren umfassend:Erfassen (110) einer Mehrzahl von Fahrumgebungen (10), einer Mehrzahl von Fahrvorhaben (20) des autonomen Fahrzeugs für die Mehrzahl von Fahrumgebungen (10), und einer Mehrzahl von Szenarien (30) für die Mehrzahl von Fahrvorhaben (20), wobei die Mehrzahl von Szenarien (30) jeweils einen Einfluss von ein oder mehreren veränderbaren Objekten auf ein Fahrvorhaben der Mehrzahl von Fahrvorhaben abbilden;Generieren (120) der Mehrzahl von Testfällen für die Simulation des autonomen Fahrzeugs basierend auf der Mehrzahl von Fahrumgebungen (10), der Mehrzahl von Fahrvorhaben (20) und der Mehrzahl von Szenarien (30);Bereitstellen (130) eines erwarteten Verhaltens des autonomen Fahrzeugs für jeden Testfall der Mehrzahl von Testfällen;Simulieren (140) des autonomen Fahrzeugs in der Mehrzahl von Testfällen; undAutomatisiertes Auswerten (150) einer Abweichung zwischen der Simulation des autonomen Fahrzeugs und dem erwarteten Verhalten des autonomen Fahrzeugs.

Description

  • Die Erfindung bezieht sich auf ein Verfahren und ein Computerprogramm zum Simulieren eines autonomen Fahrzeugs in einer Mehrzahl von Testfällen.
  • Die Entwicklung von autonomen Fahrzeugen ist ein aktueller Schwerpunkt in der Fahrzeugentwicklung. Dabei wird häufig mit regelbasierten und/oder erfahrungswertbasierten Implementierungen gearbeitet, die zuerst simuliert werden und anschließend auf Teststrecken unter realen Bedingungen getestet werden.
  • Die US20190213290A1 beschreibt ein Verfahren zur Simulation der Testumgebung für ein hochautomatisiertes Fahrzeug, umfassend eine Vielzahl von Objekten, Geländeformen, Straßen und Straßenzuständen.
  • Weiterhin beschreibt DE102006044086B4 ein System zur virtuellen Simulation von Verkehrssituationen, mit einer Anzeigeeinheit zur bildhaften Anzeige der virtuellen Verkehrssituationen und einer Eingabeeinheit, und mit zumindest einem nicht-deterministisch ausgestalteten Referenzfahrzeug und zumindest einem weiteren modellierten Verkehrsteilnehmer.
  • Dabei ist die Anzahl von Situationen, in denen ein solches autonomes Fahrzeug eingesetzt werden soll, unüberschaubar groß, so dass sich auch mit sorgfältiger Planung nicht alle Situationen simulieren und testen lassen, die in der Realität vorkommen können.
  • Es stellt sich daher die Aufgabe, ein verbessertes Verfahren zum Simulieren eines automatisierten Fahrzeugs bereitzustellen, das es ermöglicht, zuvor nicht simulierte Situationen zu erkennen und simulativ zu überprüfen.
  • Die Erfindung basiert auf der Idee, eine hierarchische Aufstellung von Fahrumgebungen, Fahrvorhaben und Szenarien zu generieren, aus denen eine Mehrzahl von Testfällen generiert wird. Dabei kann für jede Kombination aus Fahrumgebung (wie etwa Kreisverkehr, Kreuzung, Bushaltestelle, Werksgelände etc.), Fahrvorhaben (wie etwa Rechtsabbiegen, Linksabbiegen, Geradeausfahren, Parken etc.) und Szenario (Einfluss verschiedener beweglicher Objekte auf das autonome Fahrzeug) ein Testfall generiert werden. Für jeden der Testfälle wird deterministisch ein erwartetes/erwünschtes Verhalten definiert, und es wird eine Simulation der Testfälle durchgeführt, die mit dem erwarteten Verhalten automatisiert verglichen wird. Dabei kann die Simulation eines Testfalls zumindest einen Parameter umfassen, der veränderbar ist. Dieser kann variiert werden, um Systemgrenzen des autonomen Fahrzeugs zu bestimmen, außerhalb derer das autonome Fahrzeug in einem Sicherheitsmodus betrieben werden kann.
  • Ausführungsbeispiele schaffen daher ein Verfahren zum Simulieren eines autonomen Fahrzeugs in einer Mehrzahl von Testfällen. Das Verfahren umfasst ein Erfassen einer Mehrzahl von Fahrumgebungen, einer Mehrzahl von Fahrvorhaben des autonomen Fahrzeugs für die Mehrzahl von Fahrumgebungen und einer Mehrzahl von Szenarien für die Mehrzahl von Fahrvorhaben. Die Mehrzahl von Szenarien bilden jeweils einen Einfluss von ein oder mehreren veränderbaren Objekten auf ein Fahrvorhaben der Mehrzahl von Fahrvorhaben ab. Das Verfahren umfasst ferner ein Generieren der Mehrzahl von Testfällen für die Simulation des autonomen Fahrzeugs basierend auf der Mehrzahl von Fahrumgebungen, der Mehrzahl von Fahrvorhaben und der Mehrzahl von Szenarien. Das Verfahren umfasst ferner ein Bereitstellen eines erwarteten Verhaltens des autonomen Fahrzeugs für jeden Testfall der Mehrzahl von Testfällen. Das Verfahren umfasst ferner ein Simulieren des autonomen Fahrzeugs in der Mehrzahl von Testfällen. Das Verfahren umfasst ferner ein automatisiertes Auswerten einer Abweichung zwischen der Simulation des autonomen Fahrzeugs und dem erwarteten Verhalten des autonomen Fahrzeugs. Durch das Generieren der Mehrzahl von Testfällen können Lücken in der Simulation des autonomen Fahrzeugs aufgespürt werden, durch die deterministische Definition des erwarteten Verhaltens wird eine automatisierte Auswertung der Simulation ermöglicht, und durch die Simulation der Mehrzahl von Testfällen wird ein Identifizieren derjenigen Konstellationen ermöglicht, für die eine Programmierung des autonomen Fahrzeugs zu verbessern ist.
  • Dabei können die Testfälle der Mehrzahl von Testfällen jeweils zumindest einen veränderbaren Parameter aufweisen. Die Simulation des autonomen Fahrzeugs kann für verschiedene Werte des zumindest einen veränderbaren Parameters durchgeführt werden. Dies ermöglicht ein Ermitteln von Systemgrenzen des autonomen Fahrzeugs.
  • So kann das automatisierte Auswerten der Abweichung zwischen der Simulation des autonomen Fahrzeugs und dem erwarteten Verhalten des autonomen Fahrzeugs diejenigen Werte des zumindest einen veränderbaren Parameters ermitteln, bei denen eine Abweichung zwischen der Simulation des autonomen Fahrzeugs und dem erwarteten Verhalten des autonomen Fahrzeugs vorliegt, um Systemgrenzen des autonomen Fahrzeugs zu bestimmen. Diese Systemgrenzen können genutzt werden, um zu definieren, in welchen Situationen das Fahrzeug einen Sicherheits-Fahrmodus nutzt.
  • Das Verfahren kann ferner ein Anpassen einer Programmierung des autonomen Fahrzeugs basierend auf den bestimmten Systemgrenzen umfassen, so dass die Programmierung das autonome Fahrzeug außerhalb der Systemgrenzen in einen Sicherheits-Fahrmodus versetzt. Zudem kann das Verfahren ferner ein Anpassen des erwarteten Verhaltens des autonomen Fahrzeugs umfassen, so dass das erwartete Verhalten außerhalb der Systemgrenzen darauf basiert, dass das autonome Fahrzeug einen Sicherheits-Fahrmodus nutzt. Dies ermöglicht etwa den Einsatz des autonomen Fahrzeugs mit einer reduzierten Geschwindigkeit falls es sich in einer Situation befindet, die in einer Simulation zu einer Abweichung zwischen dem erwarteten Verhalten und dem simulierten Verhalten geführt haben.
  • In zumindest manchen Ausführungsbeispielen umfasst das Verfahren ein Identifizieren einer Teilmenge der Testfälle, für die kein erwartetes Verhalten definiert ist. Dies ermöglicht es, zu erkennen, welche Situationen noch nicht durch das Verfahren untersucht sind.
  • Beispielsweise kann das erwartete Verhalten deterministisch definiert sein. Dies ermöglicht den automatisierten Vergleich der Simulation mit dem erwarteten Verhalten.
  • So kann das erwartete Verhalten als Sequenz von erwarteten Aktivitäten des autonomen Fahrzeugs definiert sein. Eine solche Sequenz lässt sich automatisiert mit der Simulation vergleichen, ermöglicht gleichzeitig aber auch eine Definition und/oder ein Verständnis des erwarteten Verhaltens durch einen Entwickler.
  • In manchen Ausführungsbeispielen umfasst das Verhalten ferner ein Erfassen zumindest eines externen Einflussfaktors. Das Generieren der Mehrzahl von Testfällen für die Simulation des autonomen Fahrzeugs kann ferner auf dem zumindest einen externen Einflussfaktor basieren. Der zumindest eine externe Einflussfaktor kann als zusätzliche Schicht in der Generierung der Mehrzahl von Testfällen genutzt werden.
  • Dabei kann der zumindest eine externe Einflussfaktor zumindest ein Element der Gruppe von Wetter, einem Straßenzustand, einem optischen Signal und einem akustischen Signal umfassen. Dies ermöglicht die Generierung einer Vielzahl von möglichen Konstellationen.
  • Dabei kann die Mehrzahl von Testfällen als Mengenprodukt aus der Mehrzahl von Fahrumgebungen, der Mehrzahl von Fahrvorhaben, der Mehrzahl von Szenarien (und optional dem zumindest einen externen Einflussfaktor) gebildet werden. So kann ein Katalog von Testfällen generiert werden, der (möglichst) alle Fallkonstellationen abdeckt.
  • Ausführungsbeispiele schaffen ferner ein Programm mit einem Programmcode zum Durchführen des Verfahrens, wenn der Programmcode auf einem Computer, einem Prozessor, einem Kontrollmodul oder einer programmierbaren Hardwarekomponente ausgeführt wird.
  • Weitere vorteilhafte Ausgestaltungen werden nachfolgend anhand der in den Zeichnungen dargestellten Ausführungsbeispiele, auf welche Ausführungsbeispiele generell jedoch nicht insgesamt beschränkt sind, näher beschrieben. Es zeigen:
    • 1a und 1b zeigen Flussdiagramme von Ausführungsbeispielen eines Verfahrens zum Simulieren eines autonomen Fahrzeugs in einer Mehrzahl von Testfällen.
    • 2 zeigt ein schematisches Diagramm einer Generierung eines funktionalen Katalogs für ein Fahrzeug;
    • 3 zeigt ein schematisches Diagramm, das illustriert, wie aus einer Fahrumgebung, einem Fahrvorhaben und veränderbaren Objekten ein Testfall generiert wird;
    • 4 zeigt ein übergreifendes schematisches Diagramm, das eine Mehrzahl von Testfällen basierend auf einer Mehrzahl von Fahrumgebungen, einer Mehrzahl von Fahrvorhaben, einer Mehrzahl von Szenarien, Wetter und einem Straßenzustand generiert wird;
    • 5 zeigt ein schematisches Diagramm, das illustriert, wie aus einer Route ein Missions-Plan generiert wird;
    • 6 zeigt ein Beispiel eines Benennungsschemas;
    • 7a bis 7i zeigt beispielhafte Szenarien;
    • 8 zeigt ein Objektdiagramm von Objekten der Testfälle;
    • 9 zeigt ein beispielhaftes Aktivitätsdiagramm; und
    • 10 zeigt ein Diagramm eines Verfahrens zum Simulieren einer Mehrzahl von Testfällen.
  • Verschiedene Ausführungsbeispiele werden nun ausführlicher unter Bezugnahme auf die beiliegenden Zeichnungen beschrieben, in denen einige Ausführungsbeispiele dargestellt sind. Bei der nachfolgenden Beschreibung der beigefügten Figuren, die lediglich einige exemplarische Ausführungsbeispiele zeigen, können gleiche Bezugszeichen gleiche oder vergleichbare Komponenten bezeichnen. Solange nichts anderes definiert ist, haben sämtliche hierin verwendeten Begriffe (einschließlich von technischen und wissenschaftlichen Begriffen) die gleiche Bedeutung, die ihnen ein Durchschnittsfachmann auf dem Gebiet, zu dem die Ausführungsbeispiele gehören, beimisst. Ferner sei klargestellt, dass Ausdrücke, z.B. diejenigen, die in allgemein verwendeten Wörterbüchern definiert sind, so zu interpretieren sind, als hätten sie die Bedeutung, die mit ihrer Bedeutung im Kontext der einschlägigen Technik konsistent ist, und nicht in einem idealisierten oder übermäßig formalen Sinn zu interpretieren sind, solange dies hierin nicht ausdrücklich definiert ist.
  • Die 1a und 1b zeigen Flussdiagramme von Ausführungsbeispielen eines Verfahrens, etwa eines computerimplementierten Verfahrens, zum Simulieren eines autonomen Fahrzeugs in einer Mehrzahl von Testfällen. Das Verfahren umfasst ein Erfassen 110 einer Mehrzahl von Fahrumgebungen 10, einer Mehrzahl von Fahrvorhaben 20 des autonomen Fahrzeugs für die Mehrzahl von Fahrumgebungen 10, und einer Mehrzahl von Szenarien 30 für die Mehrzahl von Fahrvorhaben 20. Die Mehrzahl von Szenarien 30 bilden jeweils einen Einfluss von ein oder mehreren veränderbaren Objekten auf ein Fahrvorhaben der Mehrzahl von Fahrvorhaben ab. Das Verfahren umfasst ferner ein Generieren 120 der Mehrzahl von Testfällen für die Simulation des autonomen Fahrzeugs basierend auf der Mehrzahl von Fahrumgebungen 10, der Mehrzahl von Fahrvorhaben 20 und der Mehrzahl von Szenarien 30. Das Verfahren umfasst ferner ein Bereitstellen 130 eines erwarteten Verhaltens des autonomen Fahrzeugs für jeden Testfall der Mehrzahl von Testfällen. Das Verfahren umfasst ferner ein Simulieren 140 des autonomen Fahrzeugs in der Mehrzahl von Testfällen. Das Verfahren umfasst ferner ein automatisiertes Auswerten 150 einer Abweichung zwischen der Simulation des autonomen Fahrzeugs und dem erwarteten Verhalten des autonomen Fahrzeugs.
  • Ausführungsbeispiele befassen sich mit einem Verfahren und einem entsprechenden Computerprogramme, das genutzt werden kann, um ein Verhalten eines autonomen Fahrzeugs in einer Mehrzahl von Testfällen zu simulieren, um automatisiert herauszufinden, ob die Programmierung des automatisierten Fahrzeugs das automatisierte Fahrzeug so steuert, dass das simulierte Verhalten des Fahrzeugs dem erwarteten Verhalten des Fahrzeugs entspricht. Um dabei möglichst alle relevanten Konstellationen abzudecken, auch für Testsituationen, die in realen Tests ggf. nicht erfasst werden, wird in dem Verfahren die Mehrzahl von Testfällen basierend auf einer Kombination aus Fahrumgebungen, Fahrvorhaben und Szenarien gebildet.
  • Um ein Bespiel zu geben kann die Fahrumgebung etwa eine Kreuzung sein. Erreicht das autonome Fahrzeug die Kreuzung, so kann es verschiedene Fahrvorhaben haben, wie etwa rechts abbiegen, links abbiegen oder geradeaus weiterfahren. Diese Fahrvorhaben können je nach Szenario unterschiedlich durchgeführt werden, d.h. das autonome Fahrzeug wird einfacher links abbiegen können, falls es keinen Gegenverkehr gibt oder falls eine Linksabbieger-Ampel geschaltet ist, oder das autonome Fahrzeug muss auch auf unerwartete Situationen reagieren können, etwa falls ein vorausfahrender Fahrradfahrer auf der Kreuzung stürzt oder falls ein anderes Fahrzeug dem autonomen Fahrzeug die Vorfahrt nimmt. In anderen Worten entstehen die Situationen dadurch, dass ein oder mehrere veränderbare Objekte, wie etwa bewegliche Objekte wie Fahrzeuge oder Fußgänger, oder veränderbare Objekte wie Ampeln, einen Einfluss auf das Fahrvorhaben des Fahrzeugs nehmen.
  • Basierend auf einer Kombination der unterschiedlichen Fahrumgebungen (wie etwa Kreuzung, Autobahn, Landstraße, Kreisverkehr, Bushaltestelle etc.), Fahrvorhaben (wie etwa links abbiegen, rechts abbiegen, geradeaus fahren, überholen, dem Verkehr folgen, anhalten), und Szenarien (dem Einfluss der ein oder mehreren veränderbaren Objekte) kann die Mehrzahl von Testfällen generiert werden. Beispielsweise kann die Mehrzahl von Testfällen als Katalog von Testfällen bezeichnet werden. In anderen Worten bilden die Mehrzahl von Testfällen diejenigen Testfälle ab, mit denen das autonome Fahrzeug zurechtkommen soll.
  • Das Verfahren umfasst das Erfassen 110 der Mehrzahl von Fahrumgebungen 10, der Mehrzahl von Fahrvorhaben 20 des autonomen Fahrzeugs für die Mehrzahl von Fahrumgebungen 10, und der Mehrzahl von Szenarien 30 für die Mehrzahl von Fahrvorhaben 20. Beispielsweise kann das Erfassen 110 der Fahrumgebungen, der Fahrvorhaben und der Szenarien ein Auslesen der Fahrumgebungen aus einer Datenbank oder aus ein oder mehreren Dateien eines Dateisystems umfassen. So können die Fahrumgebungen, das Fahrvorhaben und die Szenarien in einer oder mehreren Datenbanken oder in den ein oder mehreren Dateien spezifiziert sein. Beispielsweise kann/können die ein oder mehreren Datenbanken oder Dateien die Fahrumgebungen, das Fahrvorhaben und die Szenarien umfassen. Dabei ist in manchen Ausführungsbeispielen das Fahrvorhaben abhängig von den Fahrumgebungen spezifiziert, d.h. für jede Fahrumgebung kann spezifiziert sein, welche Fahrvorhaben durchführbar sind. Alternativ kann das Fahrvorhaben unabhängig von den Fahrumgebungen spezifiziert sein. Zudem können die Szenarien abhängig von den Fahrumgebungen und/oder abhängig von den Fahrvorhaben spezifiziert sein, d.h. für jede Fahrumgebung kann spezifiziert sein, welche Szenarien auftreten können, oder für jede Kombination aus Fahrumgebung und Fahrvorhaben kann spezifiziert sein, welche Szenarien auftreten können. In zumindest manchen Ausführungsbeispielen können die Fahrumgebungen, das Fahrvorhaben und die Szenarien in einem Schichtmodell implementiert und/oder dargestellt sein, wie es in den 2 und 3 zu sehen ist.
  • Dabei kann eine Fahrumgebung einen Ort darstellen, an dem sich ein Fahrzeug auf zumindest einer Straße oder auf zumindest einer Fläche bewegen kann. Die Fahrumgebung kann dabei örtlich begrenzt sein, d.h. es kann sich um einen Ort handeln, an dem eine verkehrstechnische Besonderheit besteht. So kann eine Fahrumgebung beispielsweise ein Kreisverkehr sein, eine Kreuzung, ein Bahnübergang, eine Umgebung einer Bushaltestelle, eine Autobahnauffahrt, einen Bereich um eine Fußgängerampel, oder auch ein Bereich einer Landstraße oder Autobahn, der stellvertretend für eine „normale“ Straße genutzt wird. Ein Fahrvorhaben kann ein Fahrmanöver darstellen, das das autonome Fahrzeug in der Fahrumgebung durchführen soll. So kann ein Fahrvorhaben etwa ein Element der Gruppe von „rechts abbiegen“, „links abbiegen“, „geradeaus fahren“, „dem vorausfahrenden Fahrzeug folgen“, „überholen“, und „anhalten“ sein. Die Mehrzahl von Szenarien 30 bilden jeweils einen Einfluss von ein oder mehreren veränderbaren Objekten auf ein Fahrvorhaben der Mehrzahl von Fahrvorhaben ab. „Veränderbar“ bezieht sich dabei darauf, dass sich die Objekte innerhalb der Szenarien verändern können. Dabei können die ein oder mehreren veränderbaren Objekte beispielsweise ein oder mehrere bewegliche Objekte, wie etwa Fahrzeuge (Automobile oder Fahrräder) oder Fußgänger umfassen, die sich in den Szenarien bewegen (und sich dadurch verändern). Zudem können die ein oder mehreren veränderbaren Objekte ein oder mehrere Ampeln umfassen, die sich innerhalb der Szenarien verändern. Durch diese Veränderungen nehmen die ein oder mehreren Veränderungen einen Einfluss auf das jeweilige Fahrvorhaben des autonomen Fahrzeugs.
  • Dabei können sowohl die Fahrumgebungen als auch das Fahrvorhaben in einen größeren Kontext eingebettet sein. So kann die Mehrzahl von Fahrumgebungen Teil einer Route sein, d.h. die Route kann die Mehrzahl von Fahrumgebungen umfassen (ohne eine Mission). Zudem kann eine globale Fahrvorhaben (auch „Missions-Plan“) für die Route definiert sein, die die Mehrzahl von Fahrvorhaben umfasst. Ein Missions-Plan kann eine Menge von Situationen (Fahrvorhaben) umfassen (mit einer Mission). Eine Mission kann eine Menge von Szenen (Fahrumgebungen), Situationen (Fahrvorhaben) und Szenarios sein. Eine Szene (d.h. eine Fahrumgebung) kann eine Unterkomponente einer Route sein, und eine statische Umgebung darstellen. Eine Situation (ein Fahrvorhaben) kann eine Beschreibung einer lokalen Mission in einer spezifischen Szene (Fahrumgebung) sein. Die Situation kann eine Unterkomponente eines Missions-Plans sein und das einfachste/Basisszenario darstellen. Ein Szenario kann eine Situation zusammen mit einem dynamischen Umfeld (also anderen Teilnehmern) sein. Ein Szenario kann benötigte Aktivitäten, wie etwa Abweichungen von einer Mission, definieren. Ein Szenario stellt damit beispielsweise eine Variation oder Variante einer Situation/eines Fahrvorhabens dar.
  • Das Verfahren umfasst das Generieren 120 der Mehrzahl von Testfällen für die Simulation des autonomen Fahrzeugs basierend auf der Mehrzahl von Fahrumgebungen 10, der Mehrzahl von Fahrvorhaben 20 und der Mehrzahl von Szenarien 30. Dabei kann die Mehrzahl von Testfällen für (alle) mögliche Kombinationen aus den Fahrumgebungen, den Fahrvorhaben und den Szenarien gebildet werden. In anderen Worten kann die Mehrzahl von Testfällen als Mengenprodukt aus der Mehrzahl von Fahrumgebungen 10, der Mehrzahl von Fahrvorhaben 20 und der Mehrzahl von Szenarien 30 gebildet werden. Dabei kann etwa bereits vorher definiert sein, welche Kombinationen aus Fahrumgebung, Fahrvorhaben und Szenario möglich sind, etwa wenn diese abhängig zueinander spezifiziert sind. Alternativ können die Fahrumgebungen, das Fahrvorhaben und die Szenarien unabhängig voneinander spezifiziert sein, und aus der Menge der möglichen Kombinationen können diejenigen Testfälle entfernt werden, die keinen Sinn ergeben.
  • In manchen Ausführungsbeispielen werden die Testfälle nicht nur aus der Kombination aus den Fahrumgebungen, den Fahrvorhaben und den Szenarien gebildet, sondern es können auch weitere „Schichten“ übernommen werden, die weitere Variationen der Testfälle ermöglichen. Beispielsweise können externe Einflussfaktoren hinzugezogen werden, wie etwa ein Wetter, ein Straßenzustand, ein optisches Signal (etwa durch einen anderen Verkehrsteilnehmer oder durch eine Ampel/Schranke) oder ein akustisches Signal. Entsprechend kann das Verfahren ferner ein Erfassen 115 zumindest eines externen Einflussfaktors 40; 50 umfassen. Diese können ähnlich wie die Fahrumgebungen, das Fahrvorhaben und die Szenarien erfasst werden. Das Generieren der Mehrzahl von Testfällen für die Simulation des autonomen Fahrzeugs kann ferner auf dem zumindest einen externen Einflussfaktor basieren. Der zumindest eine externe Einflussfaktor kann zumindest ein Element der Gruppe von Wetter 40, einem Straßenzustand 50, einem optischen Signal und einem akustischen Signal umfassen.
  • Das Verfahren umfasst ferner das Bereitstellen 130 des erwarteten Verhaltens des autonomen Fahrzeugs für jeden Testfall der Mehrzahl von Testfällen. Dabei kann es für jeden Testfall ein oder mehrere erwartete, und damit auch erwünschte, Verhaltensweisen des autonomen Fahrzeugs geben. Das erwartete Verhalten des autonomen Fahrzeugs kann spezifizieren, wie sich das autonome Fahrzeug in den jeweiligen Testfällen verhalten soll. Dabei kann das erwartete Verhalten deterministisch definiert sein, d.h. in einer Kombination aus Fahrumgebung, Fahrverhalten und Szenario (d.h. in einem Testfall) kann ein bestimmtes Verhalten (oder mehrere bestimmte Verhaltensweisen) des Fahrzeugs definiert sein. Dies kann beispielsweise dadurch geschehen, dass für jeden Testfall ein oder mehrere Aktivitäten des autonomen Fahrzeugs spezifiziert sind, die in einer bestimmten Reihenfolge durch das Fahrzeug ausgeführt werden sollen. Das erwartete Verhalten kann den ein oder mehreren Aktivitäten entsprechen. In anderen Worten kann das erwartete Verhalten als Sequenz von erwarteten Aktivitäten des autonomen Fahrzeugs definiert sein. Beispielsweise kann das erwartete Verhalten als Aktivitätsdiagramm, wie es in 9 gezeigt ist, dargestellt und/oder eingegeben werden.
  • Teil des erwarteten Verhaltens des autonomen Fahrzeugs ist in manchen Ausführungsbeispielen auch die Definition eines Sicherheits-Fahrmodus. In einem Sicherheits-Fahrmodus kann das autonome Fahrzeug beispielsweise seine Geschwindigkeit reduzieren, größere Abstände halten, andere Fahrzeuge trotz Vorfahrt passieren lassen oder auf die Hilfe eines entfernten Fahrers zurückgreifen. Dabei kann das erwartete Verhalten des autonomen Fahrzeugs ebenfalls Grenzbedingungen umfassen, ab denen der Sicherheits-Fahrmodus genutzt wird. Diese Grenzbedingungen entsprechen in manchen Ausführungsbeispielen den Systemgrenzen der Programmierung des autonomen Fahrzeugs. Die Systemgrenzen können dort gezogen werden, wo ein „normaler“ Betriebsmodus des autonomen Fahrzeugs nicht mehr ausreicht, um einen sicheren Betrieb des Fahrzeugs zu ermöglichen. Die Systemgrenzen werden dort überschritten, wo Umgebungsparameter (weit) außerhalb des normalen liegen, etwa bei besonders schlechtem Wetter, sehr engen Straßen, engen Kurvenradien oder bei Straßen, die aufgrund eines Unfalls oder einer Baustelle einen ungewohnten Verkehrsfluss aufweisen.
  • Wie bereits die Fahrumgebung, Fahrvorhaben und die Szenarien kann das erwartete Verhalten des autonomen Fahrzeugs aus einer Datenbank und/oder aus ein oder mehreren Dateien eingelesen werden. Das erwartete Verhalten kann beispielsweise als Aktivitätsdiagramm dargestellt und/oder eingegeben werden, etwa über eine Web-basierte Eingabeoberfläche oder über ein Anwendungsprogramm. Alternativ kann das erwartete Verhalten des Fahrzeugs basierend auf der Simulation erzeugt werden, d.h. die Simulation der ein oder mehreren Testfälle kann genutzt werden, um das erwartete Verhalten zu generieren. Das simulierte Verhalten kann, etwa durch ein regelbasiertes Computerprogramm, oder durch einen menschlichen Operator, darauf überprüft werden, ob es einem erwünschten Verhalten entspricht, und anschließend als erwartetes Verhalten genutzt werden.
  • In manchen Fällen ist, bei einem ersten Durchführen des Verfahrens, nicht für jeden Testfall ein erwartetes Verhalten definiert. In diesen Fällen kann das Verfahren ein Identifizieren 170 einer Teilmenge der Testfälle, für die kein erwartetes Verhalten definiert ist, umfassen. Diese Teilmenge von Testfällen kann dann, basierend auf der Simulation oder basierend auf einer Eingabe durch einen Nutzer, bereitgestellt werden.
  • Das Verfahren umfasst ferner das Simulieren 140 des autonomen Fahrzeugs in der Mehrzahl von Testfällen. In der Simulation des autonomen Fahrzeugs wird das Fahrzeug, in einer simulierten Umgebung, mit jeweils einem Testfall der Mehrzahl von Testfällen konfrontiert, d.h. das autonome Fahrzeug wird instruiert, in der Fahrumgebung des Testfalls das Fahrvorhaben auszuführen, unter Berücksichtigung der veränderbaren Objekte des jeweiligen Szenarios. Dabei kann das Simulieren 140 des autonomen Fahrzeugs über eine Computersimulation durchgeführt werden, die die physikalischen Begebenheiten des Testfalls für das autonome Fahrzeugs generiert, etwa durch Bereitstellen von simulierten Sensordaten.
  • Dabei können verschiedene Varianten des jeweiligen Testfalls simuliert werden, d.h. innerhalb des gleichen Testfalls können unterschiedliche Fälle betrachtet werden, wie etwa unterschiedliche Straßenbreiten, unterschiedliche Kurvenradien, unterschiedlich gute Sichtverhältnisse etc. Diese Unterschiede können mit Hilfe zumindest einen veränderbaren Parameters spezifiziert werden. In anderen Worten können die Testfälle der Mehrzahl von Testfällen jeweils zumindest einen veränderbaren Parameter aufweisen. Der zumindest eine veränderbare Parameter kann dazu ausgelegt sein, innerhalb eines Testfalls unterschiedliche Varianten zu generieren, um die Systemgrenzen der Programmierung des autonomen Fahrzeugs zu ermitteln. Die Simulation des autonomen Fahrzeugs kann für verschiedene Werte des zumindest einen veränderbaren Parameters durchgeführt werden. So kann der zumindest eine veränderbare Parameter beispielsweise zumindest ein Element der Gruppe von einer Breite einer Straße, einem Kurvenradius einer Straße, einem Reibungskoeffizienten einer Straße, einer Wettersituation, einem Abstand zwischen dem autonomen Fahrzeug und den ein oder mehreren veränderbaren Objekten, einer Position der ein oder mehreren veränderbaren Objekte innerhalb der Fahrumgebung, einem Verhalten der ein oder mehreren veränderbaren Objekte, einem regelwidrigen Verhalten der ein oder mehreren veränderbaren Objekte, einem maximalen Abstand ab dem Objekt der ein oder mehreren veränderbaren Objekte oder ein Objekt der Fahrumgebung erkannt wird, und einer Geschwindigkeit des autonomen Fahrzeugs umfassen.
  • Das Verfahren umfasst ferner das automatisierte Auswerten 150 der Abweichung zwischen der Simulation des autonomen Fahrzeugs und dem erwarteten Verhalten des autonomen Fahrzeugs. Dabei kann, in einem einfachen Beispiel, zunächst einmal ermittelt werden, in welchen Testfällen das autonome Fahrzeug in der Simulation von dem erwarteten Verhalten abweicht. Die Abweichung kann beispielsweise basierend auf einem automatischen Vergleich von Kenndaten eines simulierten Verhaltens des autonomen Fahrzeugs in dem jeweiligen Testfall mit dem erwarteten Verhalten des autonomen Fahrzeugs in dem Testfall bestimmt werden. So kann beispielsweise das erwartete Verhalten eine Sequenz von Aktivitäten des autonomen Fahrzeugs in dem Testfalls spezifizieren, etwa mit zeitlichen Vorgaben für die Aktivitäten, und die automatisierte Vergleich kann bestimmen, ob die spezifizierten Aktivitäten der Sequenz, und die jeweiligen zeitlichen Vorgaben, eingehalten wurden. Weicht das simulierte Verhalten des Fahrzeugs, zumindest in Varianten der Simulation, von dem erwarteten Verhalten ab, ggf. unter Einbeziehung einer Toleranzschwelle, so kann eine Abweichung zwischen der Simulation des autonomen Fahrzeugs und dem erwarteten Verhalten des autonomen Fahrzeugs für den Testfall, oder bestimmte Parameter-Variationen des Testfalls, festgestellt werden.
  • Dabei können, durch eine gezielte Veränderung des zumindest einen veränderbaren Parameters, die Systemgrenzen der Programmierung des autonomen Fahrzeugs systematisch bestimmt werden. In anderen Worten kann das automatisierte Auswerten 150 der Abweichung zwischen der Simulation des autonomen Fahrzeugs und dem erwarteten Verhalten des autonomen Fahrzeugs diejenigen Werte des zumindest einen veränderbaren Parameters ermitteln, bei denen eine Abweichung zwischen der Simulation des autonomen Fahrzeugs und dem erwarteten Verhalten des autonomen Fahrzeugs vorliegt, um die Systemgrenzen des autonomen Fahrzeugs zu bestimmen. Die Systemgrenzen können beispielsweise dort vorliegen, wo sich die Simulation von dem erwarteten Verhalten unterscheidet.
  • Basierend auf den bestimmten Systemgrenzen können anschließend die Programmierung des autonomen Fahrzeugs, aber auch das erwartete Verhalten angepasst werden. In anderen Worten umfasst das Verfahren, in manchen Ausführungsbeispielen, ein Anpassen 160 der Programmierung des autonomen Fahrzeugs basierend auf den bestimmten Systemgrenzen, so dass die Programmierung das autonome Fahrzeug außerhalb der Systemgrenzen in einen Sicherheits-Fahrmodus versetzt, d.h. die Programmierung wird so verändert, dass diese ausgebildet ist, den Sicherheits-Fahrmodus zu aktivieren, wenn sich das autonome Fahrzeug außerhalb der Systemgrenzen befindet. Das Verfahren kann ferner ein Anpassen 165 des erwarteten Verhaltens des autonomen Fahrzeugs umfassen. Dabei kann das erwartete Verhalten so angepasst werden, dass das erwartete Verhalten außerhalb der Systemgrenzen darauf basiert, dass das autonome Fahrzeug einen Sicherheits-Fahrmodus nutzt.
  • Doch auch abgesehen von Anpassungen, die auf den Systemgrenzen basieren, kann die Programmierung des autonomen Fahrzeugs (automatisiert oder durch manuelle Anpassung) angepasst werden, etwa falls eine Abweichung zwischen dem erwarteten Verhalten und der Simulation festgestellt wird.
  • Mehr Details und Aspekte des Verfahrens werden in Verbindung mit dem Konzept oder Beispielen genannt, die nachher beschrieben werden. Das Verfahren kann ein oder mehrere zusätzliche optionale Merkmale umfassen, die ein oder mehreren Aspekten des vorgeschlagenen Konzepts oder der beschriebenen Beispiele entsprechen, wie sie vorher oder nachher beschrieben wurden.
  • Zumindest manche Ausführungsbeispiele befassen sich mit der Nutzung einer System-Spezifikation in textueller Form, um ein autonomes Fahrzeug über Simulationen zu testen. Dabei wird beispielsweise untersucht, wie sich ein autonomes Fahrzeug im Straßenverkehr, Werksverkehr oder in zugangsbeschränkten Bereichen verhalten soll. Dabei wird eine Beschreibung von nicht-deterministischem Fahrzeugverhalten im Straßenverkehr, Werksverkehr oder in zugangsbeschränkten Bereichen, die nicht öffentlich zugänglich sind, geschaffen. Mit Hilfe von Ausführungsbeispielen kann ein Nachweis der Vollständigkeit des zu beschreibenden Fahrzeugverhalten, etwa in textueller Form geschaffen werden.
  • Ausführungsbeispiele schaffen einen Fahrzeug-Funktions-Katalog, der beispielsweise die Mehrzahl von Testfällen abbildet. Der Katalog basiert auf einer Vorgehensweise zur Beschreibung von Fahrverhalten im Straßenverkehr. Der Katalog umfasst eine deterministische Beschreibung des Fahrzeugverhaltens pro Situation/Szenario, durch das Bereitstellen des erwarteten Verhaltens des autonomen Fahrzeugs für jeden Testfall der Mehrzahl von Testfällen. Eine Schicht-Struktur (auch aus dem engl. Layer-Struktur) ermöglicht eine einfachere Gap-Analyse (Lücken-Analyse) und Überprüfung, welche Funktionalität noch nicht beschrieben, und damit noch nicht simuliert und getestet, ist.
  • Die Erfindung basiert zumindest in Teilen darauf, dass ein nicht-deterministisches Fahrzeugverhalten auf deterministische Art und Weise beschrieben wird, etwa durch das Bereitstellen eines erwarteten Verhaltens des autonomen Fahrzeugs für jeden Testfall der Mehrzahl von Testfällen. Dabei wird ein Katalog an Testfällen (die Mehrzahl von Testfällen) in einer zumindest dreistufigen Layer-Struktur generiert, die zumindest die folgenden Schichten umfasst:
    • - Szene (Statische Umgebung, die Fahrumgebung), z.B. Kreuzung;
    • - Situation (Eigendynamik - angewandt auf spezifische Szene, das Fahrvorhaben), z.B. Rechtsabbiegen in der Kreuzung; und
    • - Szenario (Eigendynamik an bewegbare Objekte angepasst - angewandt auf spezifische Szene), z.B. Rechtsabbiegen in der Kreuzung und gleichzeitig geradeausfahrender Fahrerfahrer in der Spur.
  • Dabei wir eine klare Trennung von Statischer Umgebung, Eigendynamik und Einfluss von bewegbaren Objekten eingehalten.
  • Zusätzlich können weitere Faktoren einbezogen bzw. abgebildet werden, die Einfluss auf Fahrzeugverhalten haben über das Hinzufügen von ein oder mehreren weiteren Schichten. Diese Schichten können z.B. folgende ein oder mehrere Elemente der folgenden externen Einflussfaktoren umfassen:
    • - Wetter
    • - Straßenbedingungen
    • - Optische Signale
    • - Akustische Signale
  • Dabei können die bewegbaren Objekte über deren Attribute (wie etwa Position, relative Position, Zustand, Spur-Zuweisung) eingegrenzt werden. So können beispielsweise zwei Objekte, ein Zweispuriges Fahrzeug und ein Verkehrszeichen, dominiert sein:
    • - Objekt 1:
      • Objekt-Typ: Zweispuriges Fahrzeug; Position: dynamisch; relative Position: vorausfahrend; Zugewiesene Spur: in derselben Spur; Zustand: beschleunigt
    • - Objekt 2:
      • Objekt-Typ: Verkehrszeichen; Position: statisch; relative Position: voraus; Verkehrszeichen ID: siehe Bast; Verkehrszeichen Typ: z.B.: Bushaltestelle
  • Pro Szenario können genau definierte Objekte und deren Attribute erlaubt sein, wobei neue Objekte oder neue Zustände führen zu einem neuen Szenario führen können.
  • Das Fahrzeugverhalten, als Reaktion auf die Objekte in der Umgebung, wird in zumindest einigen Ausführungsbeispielen in Form von Aktivitätsdiagrammen (Wirkketten) beschrieben. Zu jeder Wirkkette kann ein „Minimum Risk Manöver“ (Manöver mit minimalem Risiko, Manöver, das das Fahrzeug in einem Sicherheits-Fahrmodus ausführt) definiert. Zu jedem Szenario kann eine Konfigurationsdatei angelegt werden. Über geeignete Parameter-Räume (pro Szenario) können die Systemgrenzen identifiziert und die Anforderungen an das Fahrzeugverhalten geschärft werden. Dabei kann zu jedem Szenario ein Berechnungsblatt angelegt werden, was die im Szenario relevanten Berechnungsvorschriften aufzeigt, wie etwa für eine Berechnung der Zeit/Strecke bei einem Bremsen zum Stillstand oder für eine Dauer eine Kurvendurchfahrt. Fehlende Szenarien können über ausreichende Testfahrten identifiziert werden und im Katalog aufgenommen werden.
  • 2 zeigt ein schematisches Diagramm einer Generierung eines funktionalen Katalogs für ein Fahrzeug. 2 zeigt ein Schichtenmodell 200 mit den Ebenen Fahrumgebung 10 (auch „Szene“/„Scene“), Situation 20 (auch Fahrvorhaben 20), Szenario 30, Wetter 40 und Straßenzustand 40. Eine Szene/Fahrumgebung repräsentiert dabei die statische Umgebung, und ist eine Unterkomponente einer Route. Eine Situation umfasst die Beschreibung einer lokalen Mission eines zu bewegenden Fahrzeugs für eine spezifische Szene. Eine Situation ist einer Unterkomponente eines Missionsplans und stellt das einfachste Szenario dar (ohne bewegliche Objekte). Das Szenario beschreibt eine Situation inklusive eines dynamischen Umfelds (durch andere Verkehrsteilnehmer). Ein Szenario definiert dabei durchzuführende Aktionen, wie etwa eine Abweichung von einer Mission.
  • 3 zeigt ein schematisches Diagramm 300, das illustriert, wie aus einer Fahrumgebung 10, einem Fahrvorhaben 20 und veränderbaren Objekten 30 ein Testfall generiert wird. Dabei wird der Fahrumgebung 10 ein Fahrvorhaben hinzugefügt, wie etwa „Abbiegen nach Links“ um die Situation (mit dem Fahrvorhaben) zu erhalten. Der Situation 20 werden bewegliche Objekte, wie etwa ein Fahrradfahrer, hinzugefügt, um ein Szenario 30 zu erhalten.
  • 4 zeigt ein übergreifendes schematisches Diagramm 400, das eine Mehrzahl von Testfällen basierend auf einer Mehrzahl von Fahrumgebungen 10, einer Mehrzahl von Fahrvorhaben 20, einer Mehrzahl von Szenarien 30, Wetter 40 und einem Stra-ßenzustand 50 generiert wird. Die Mehrzahl von Testfällen sind dabei Teil einer Mission, die eine Route, einen Missions-Plan, Fahrumgebungs-Identifikatoren, Situations-Identifikatoren und Szenario-Identifikatoren umfasst. Dabei wird in zumindest manchen Ausführungsbeispielen eine Strikte Schicht-Struktur eingehalten, bei der Schichten nicht übergangen werden dürfen.
  • 5 zeigt ein schematisches Diagramm, das illustriert, wie aus einer Route ein Missions-Plan generiert wird. So wird einer Route 510, die eine Mehrzahl von Fahrumgebungen umfasst, eine globale Fahr-Mission hinzugefügt, um den Missions-Plan 520, der eine Menge von Situationen umfasst, zu erhalten.
  • Dabei können die Situationen und Szenarien nach einer Namenskonvention/nach einem Benennungsschema benannt werden. So kann in einem beispielhaften Ausführungsbeispielen bei den Fahrumgebungen („Scenes“) zwischen den Fahrumgebungen C - Crossing (engl. für Kreuzung), E - Entry/Exit (engl. für Einfahrt/Ausfahrt), F - Follow Road (engl. für Folgen auf einer Straße), L - Lay-By (engl. für Haltebucht), und R - Round-About (engl. für Kreisverkehr) unterschieden werden. Zudem kann zwischen Vorfahrt Y - Yes (Ja) und N - No (Nein) unterschieden werden. Dabei wird bei der Vorfahrt angegeben, ob das sich bewegende Fahrzeug, unter Berücksichtigung der Verkehrsregeln und anderer Verkehrsteilnehmer, Vorfahrt hat. Bei den Fahrvorhabenen kann beispielsweise zwischen L - Left (Links), R - Right (Rechts) und S - Straight (Geradeaus) unterschieden werden. Dabei sagt das Fahrvorhaben aus, welche Intention das sich bewegende Fahrzeug in der aktuellen Fahrumgebung hat. In Bezug auf eine Objekt-Richtung kann zwischen B - Behind Coming (Nähert sich von hinten), F - Far Side (an der Fahrerseite), N - Near Side (an der Beifahrerseite), O - Oncoming (Entgegenkommend) und P - Preceding (Vorausfahrend) unterschieden werden. Dabei spezifiziert die Objekt-Richtung, wie andere bewegliche Objekte relativ zu dem sich bewegenden Fahrzeug positioniert sind. Zuletzt kann ein Objekt-Typ definiert werden. So können beispielsweise die Objekt-Typen C - Cyclist (Radfahrer), P - Pedestrian (Fußgänger) und V - Vehicle (Kraftfahrzeug) unterschieden werden. 6 zeigt ein Beispiel des Benennungsschemas. Das Fahrzeug 610 ist das sich bewegende/zu betrachtende Fahrzeug mit der Fahrvorhaben „Rechtsabbiegen“ 615, und Fahrrad 620 ist ein bewegliches Objekt mit der Fahrvorhaben „Geradeaus“ 625. Daraus ergibt sich, für die Fahrumgebung mit dem sich bewegenden Fahrzeug 610 und dem Fahrrad 620, der Code C - Crossing, N - No, R - Right, N - Near Side und C - Cyclist (für das Fahrrad 620).
  • 7a bis 7i zeigt beispielhafte Szenarien. Diese Szenarien können beispielsweise Schlüsselszenarien eines Mobility as a Service (Mobilität als eine Dienstleistung)-Konzepts sein.
  • 7a zeigt Szenarien, bei denen die Fahrumgebung 710 ein einspuriger Kreisverkehr ist. Fahrzeug 712a hat das Fahrvorhaben „Rechts abbiegen“, Fahrzeug 712b hat das Fahrvorhaben „Geradeaus“, muss aber auf das Fahrrad 714a mit der Fahrvorhaben „Geradeaus“ und das Fahrzeug 714b mit der Fahrvorhaben „Geradeaus“ achten, und Fahrzeug 712c hat das Fahrvorhaben „Links“, muss aber auf Fahrzeug 716 mit der Fahrvorhaben „Geradeaus“ achten.
  • 7b zeigt Szenarien, bei denen die Fahrumgebung 720 einen Folgeverkehr darstellt. Fahrzeug 722a hat das Fahrvorhaben, rechts anzuhalten, und hat auf Fahrzeug 724a zu halten. Fahrzeug 722b folgt Fahrzeug 724b, während Fahrzeug 726 (mit der Fahrvorhaben „Geradeaus“ entgegenkommt. Fahrzeug 722c hat das Fahrvorhaben „Geradeaus“ und folgt Fahrzeug 724c, das ebenfalls das Fahrvorhaben „Geradeaus“ hat.
  • 7c zeigt Szenarien, bei denen die Fahrumgebungen 730a; 730b; 730c eine Zusammenführungsspur darstellen. Dabei zeigen die Fahrumgebungen 730a und 730c das Anfang der Zusammenführungsspur und Fahrumgebung 730b zeigt das Ende der Zusammenführungsspur. Fahrzeug 732a fährt über die Zusammenführungsspur auf eine gerade, zweispurige Straße auf, muss aber auf Fahrzeug 734a mit Fahrvorhaben „Geradeaus“ achten. Fahrzeug 732b fährt am Ende der Zusammenführungsspur auf eine zweispurige Straße auf und muss ebenfalls auf ein Fahrzeug 734b mit Fahrvorhaben „Geradeaus“ achten. Fahrzeug 732c fährt auf der zweispurigen Straße, und muss auf Fahrzeug 734c achten, das auf die zweispurige Straße auffahren will.
  • 7d zeigt Szenarien, bei denen die Fahrumgebung 740 eine Kreuzung darstellt, an der das Fahrzeug 742a; 742b Vorfahrt hat. Im ersten Beispiel hat Fahrzeug 742a das Fahrvorhaben „Rechts“, hat aber auf Fahrrad 744a mit Fahrvorhaben „Geradeaus“ zu achten. Im zweiten Beispiel hat Fahrzeug 742b das Fahrvorhaben „Rechts“, hat aber auf Fahrzeug 744b mit Fahrvorhaben „Geradeaus“ zu achten.
  • 7e zeigt Szenarien, bei denen die Fahrumgebungen 750a; 750b Kreuzungen darstellt, an denen die Fahrzeuge 752a; 752b keine Vorfahrt haben. Dabei muss Fahrzeug 752a (mit Fahrvorhaben „Links“) auf Fahrzeug 754a (mit Fahrvorhaben „Rechts“) achten, und Fahrzeug 752b (mit Fahrvorhaben „Links“ muss auf Fahrzeug 754b (mit Fahrvorhaben „Geradeaus“) achten.
  • 7f zeigt Szenarien mit Rettungsfahrzeugen 762a; 762b auf Straße 760. Im ersten Beispiel will Rettungsfahrzeug 762a das am Rand stehende Fahrzeug 764 überholen, muss gleichzeitig aber auf das entgegenkommende Fahrzeug 766 achten. Im zweiten Beispiel will Rettungsfahrzeug 762b das Fahrzeug 768 überholen.
  • 7g zeigt Szenarien an einer Bushaltestelle, an der Fahrzeug 772a; 772b halten möchte, im Falle von Fahrumgebung 770a an einer Bushaltestelle, die auf einer Fahrbahn einer zweispurigen Straße markiert ist, im Falle von Fahrumgebung 770b in einer Haltebucht der Bushaltestelle.
  • 7h zeigt Szenarien mit Kreuzungen 780a-780e mit Ampeln, an denen Fahrzeuge 782a-782e auf die Ampeln reagieren. Fahrzeug 782a möchte links abbiegen, die Ampel der Geradeaus-Spur ist grün, und die Ampel der Abbiege-Spur nach links ist rot. Fahrzeug 782b möchte ebenfalls links abbiegen, die Ampel (für alle Spuren) ist rot. Fahrzeug 782c möchte rechts abbiegen, und die Ampel (für alle Spuren) ist grün. Fahrzeug 782d möchte rechts abbiegen, die Ampel für Linksabbieger ist rot, die Ampel für Geradeausfahrer ist grün, und eine Rechtsabbiegerspur ist vorhanden, die nicht von den Ampeln abhängig ist. Fahrzeug 782 möchte links abbiegen, die Ampel ist gelb.
  • 7i zeigt Szenarien von Fahrumgebungen 790a-790c mit besonders gefährdeten Verkehrsteilnehmen. Im ersten Beispiel hat Fahrzeug 792a auf ein Fahrrad 794, das auf einer Fahrradspur fährt, zu achten. Im zweiten Beispiel hat Fahrzeug 792b auf einen Fußgänger 796 zu achten, der die Straße mit Hilfe einer Verkehrsinsel überqueren möchte, und Fahrzeug 792c steht an einer Kreuzung 790c, an der ein Fußgänger 798 einen Zebrastreifen überqueren möchte.
  • Die Objekte, die an den Testfällen beteiligt sind, können beispielsweise in Objektdiagrammen dargestellt werden. 8 zeigt ein Objektdiagramm von Objekten der Testfälle. Ein Objekt 810, etwa ein Fahrzeug oder ein Fußgänger, umfasst oder besteht aus n Attributen 820, wie etwa eine Position, eine relative Position, ein Objekttyp, ein Objektzustand oder eine zugewiesene Fahrbahnspur. Dabei kann ein Objekt beispielsweise ein vorfahrendes Fahrzeug sein, das auf einer Fahrbahn anhält, oder ein Fahrradfahrer an der Beifahrerseite der auf einem (dedizierten) Fahrradspur fährt.
  • Das System reagiert auf diese spezifischen Objekte. Die Systemreaktion kann durch Aktivitätsdiagramme beschrieben werden. 9 zeigt ein beispielhaftes Aktivitätsdiagramm für eine Situation/ein Szenario. In dem Aktivitätsdiagramm von 9 reagiert das System auf ein Objekt 910 mit einem Satz von Start-Kriterien, mit ein oder mehreren Aktionen einer Systemreaktion 920, um zu einem Endzustand 930 zu gelangen.
  • 10 zeigt ein Diagramm eines Verfahrens zum Simulieren einer Mehrzahl von Testfällen. In dem Diagramm von 10 wird ein erwartetes Fahrzeugverhalten beschrieben 1010, für eine spezifische Szene und für spezifische Werte. Das erwartete Fahrzeugverhalten umfasst dabei System-Anforderungen zum Beschreiben von Fahrzeugverhalten. Aus dem beschriebenen Fahrzeugverhalten 1010 werden Aktivitätsdiagramme abgeleitet 1020. Diese Aktivitätsdiagramme dienen als Eingabe für eine funktionale Architektur, und als Eingabe für HARA (Funktionssicherheit, Hazard and Risk Assessment, Gefahren- und Risikoanalyse). Basierend darauf kann ein Parameter-Raum definiert 1030 werden, mit dem Ziel, von einer spezifischen Beschreibung zu einer generellen Beschreibung zu gelangen. Basierend auf den vorhergehenden Schritten umfasst das Verfahren eine Simulation 140 von Szenarien für alle möglichen Kombinationen (basierend auf dem Parameterraum). Dabei wird eine Konfiguration der Simulation vorgenommen, Systemgrenzen werden mit Hilfe der Simulation bestimmt, etwa basierend auf einem Vergleich eines erwarteten mit einem implementierten Fahrzeugverhalten. Basierend auf der Simulation wird eine iterative Adaption des erwarteten Fahrzeugverhaltens statt (etwa durch Angabe der Systemgrenzen, ab denen ein Minimum-Risk-Manöver durchgeführt wird), und das implementierte Fahrzeugverhalten wird ebenfalls iterativ adaptiert. Das Verfahren kann beispielsweise genutzt werden, um Systemanforderungen für ein Fahrzeugverhalten bereitzustellen, eine Eingabe für eine funktionale Architektur bereitzustellen, eine Eingabe für HARA bereitzustellen, und/oder eine Konfiguration der Simulation zu bestimmen (die für die Entwicklung oder Tests nutzbar ist), etwa durch das Generieren der Mehrzahl von Testfällen.
  • Ein weiteres Ausführungsbeispiel ist ein Computerprogramm zur Durchführung zumindest eines der oben beschriebenen Verfahren, wenn das Computerprogramm auf einem Computer, einem Prozessor oder einer programmierbaren Hardwarekomponente abläuft. Ein weiteres Ausführungsbeispiele ist auch ein digitales Speichermedium, das maschinen- oder computerlesbar ist, und das elektronisch lesbare Steuersignale aufweist, die mit einer programmierbaren Hardwarekomponente so zusammenwirken können, dass eines der oben beschriebenen Verfahren ausgeführt wird.
  • Die in der vorstehenden Beschreibung, den nachfolgenden Ansprüchen und den beigefügten Figuren offenbarten Merkmale können sowohl einzeln wie auch in beliebiger Kombination für die Verwirklichung eines Ausführungsbeispiels in ihren verschiedenen Ausgestaltungen von Bedeutung sein und implementiert werden.
  • Obwohl manche Aspekte im Zusammenhang mit einer Vorrichtung beschrieben wurden, versteht es sich, dass diese Aspekte auch eine Beschreibung des entsprechenden Verfahrens darstellen, sodass ein Block oder ein Bauelement einer Vorrichtung auch als ein entsprechender Verfahrensschritt oder als ein Merkmal eines Verfahrensschrittes zu verstehen ist. Analog dazu stellen Aspekte, die im Zusammenhang mit einem oder als ein Verfahrensschritt beschrieben wurden, auch eine Beschreibung eines entsprechenden Blocks oder Details oder Merkmals einer entsprechenden Vorrichtung dar.
  • Je nach bestimmten Implementierungsanforderungen können Ausführungsbeispiele der Erfindung in Hardware oder in Software implementiert sein. Die Implementierung kann unter Verwendung eines digitalen Speichermediums, beispielsweise einer Floppy-Disk, einer DVD, einer Blu-Ray Disc, einer CD, eines ROM, eines PROM, eines EPROM, eines EEPROM oder eines FLASH-Speichers, einer Festplatte oder eines anderen magnetischen oder optischen Speichers durchgeführt werden, auf dem elektronisch lesbare Steuersignale gespeichert sind, die mit einer programmierbaren Hardwarekomponente derart zusammenwirken können oder zusammenwirken, dass das jeweilige Verfahren durchgeführt wird.
  • Bezugszeichenliste
  • 10
    Fahrumgebung/Szene
    20
    Fahrvorhaben/Situation
    30
    Szenario
    40
    Wetter
    50
    Straßenzustand
    110
    Erfassen einer Mehrzahl von Fahrumgebungen, einer Mehrzahl von Fahrvorhaben, und einer Mehrzahl von Szenarien
    115
    Erfassen zumindest eines externen Einflussfaktors
    120
    Generieren einer Mehrzahl von Testfällen
    130
    Bereitstellen eines erwarteten Verhaltens
    140
    Simulieren eines autonomen Fahrzeugs
    150
    Automatisiertes Auswerten
    160
    Anpassen einer Programmierung
    165
    Anpassen des erwarteten Verhaltens
    170
    Identifizieren einer Teilmenge der Testfälle
    200
    Schichtenmodell
    300
    Schematisches Diagramm
    400
    Schematisches Diagramm
    510
    Route
    520
    Missions-Plan
    610
    Fahrzeug
    615
    Fahrvorhaben des Fahrzeugs
    620
    Fahrrad
    625
    Fahrvorhaben des Fahrrads
    710-798
    Elemente von beispielhaften Szenarien
    810
    Objekt
    820
    Attribute des Objekts
    910
    Objekt
    920
    Systemreaktion
    930
    Endzustand
    1010
    Beschreiben eines erwarteten Fahrzeugverhaltens
    1020
    Ableiten von Aktivitätsdiagrammen
    1030
    Definieren eines Parameter-Raums
    1040
    Simulieren von Szenarien

Claims (12)

  1. Verfahren zum Simulieren eines autonomen Fahrzeugs in einer Mehrzahl von Testfällen, das Verfahren umfassend: Erfassen (110) einer Mehrzahl von Fahrumgebungen (10), einer Mehrzahl von Fahrvorhaben (20) des autonomen Fahrzeugs für die Mehrzahl von Fahrumgebungen (10), und einer Mehrzahl von Szenarien (30) für die Mehrzahl von Fahrvorhaben (20), wobei die Mehrzahl von Szenarien (30) jeweils einen Einfluss von ein oder mehreren veränderbaren Objekten auf ein Fahrvorhaben der Mehrzahl von Fahrvorhaben abbilden; Generieren (120) der Mehrzahl von Testfällen für die Simulation des autonomen Fahrzeugs basierend auf der Mehrzahl von Fahrumgebungen (10), der Mehrzahl von Fahrvorhaben (20) und der Mehrzahl von Szenarien (30); Bereitstellen (130) eines erwarteten Verhaltens des autonomen Fahrzeugs für jeden Testfall der Mehrzahl von Testfällen; Simulieren (140) des autonomen Fahrzeugs in der Mehrzahl von Testfällen; und Automatisiertes Auswerten (150) einer Abweichung zwischen der Simulation des autonomen Fahrzeugs und dem erwarteten Verhalten des autonomen Fahrzeugs.
  2. Das Verfahren gemäß Anspruch 1, wobei die Testfälle der Mehrzahl von Testfällen jeweils zumindest einen veränderbaren Parameter aufweisen, wobei die Simulation des autonomen Fahrzeugs für verschiedene Werte des zumindest einen veränderbaren Parameters durchgeführt wird.
  3. Das Verfahren gemäß Anspruch 2, wobei das automatisierte Auswerten (150) der Abweichung zwischen der Simulation des autonomen Fahrzeugs und dem erwarteten Verhalten des autonomen Fahrzeugs diejenigen Werte des zumindest einen veränderbaren Parameters ermittelt, bei denen eine Abweichung zwischen der Simulation des autonomen Fahrzeugs und dem erwarteten Verhalten des autonomen Fahrzeugs vorliegt, um Systemgrenzen des autonomen Fahrzeugs zu bestimmen.
  4. Das Verfahren gemäß Anspruch 3, ferner umfassend Anpassen (160) einer Programmierung des autonomen Fahrzeugs basierend auf den bestimmten Systemgrenzen, so dass die Programmierung das autonome Fahrzeug außerhalb der Systemgrenzen in einen Sicherheits-Fahrmodus versetzt.
  5. Das Verfahren gemäß einem der Ansprüche 3 oder 4, ferner umfassend Anpassen (165) des erwarteten Verhaltens des autonomen Fahrzeugs, so dass das erwartete Verhalten außerhalb der Systemgrenzen darauf basiert, dass das autonome Fahrzeug einen Sicherheits-Fahrmodus nutzt.
  6. Das Verfahren gemäß einem der vorhergehenden Ansprüche, ferner umfassend Identifizieren (170) einer Teilmenge der Testfälle, für die kein erwartetes Verhalten definiert ist.
  7. Das Verfahren gemäß einem der vorhergehenden Ansprüche, wobei das erwartete Verhalten deterministisch definiert ist.
  8. Das Verfahren gemäß einem der vorhergehenden Ansprüche, wobei das erwartete Verhalten als Sequenz von erwarteten Aktivitäten des autonomen Fahrzeugs definiert ist.
  9. Das Verfahren gemäß einem der vorhergehenden Ansprüche, ferner umfassend Erfassen (115) zumindest eines externen Einflussfaktors (40; 50), wobei das Generieren der Mehrzahl von Testfällen für die Simulation des autonomen Fahrzeugs ferner auf dem zumindest einen externen Einflussfaktor basiert.
  10. Das Verfahren gemäß Anspruch 9, wobei der zumindest eine externe Einflussfaktor zumindest ein Element der Gruppe von Wetter (40), einem Straßenzustand (50), einem optischen Signal und einem akustischen Signal umfasst.
  11. Das Verfahren gemäß einem der vorhergehenden Ansprüche, wobei die Mehrzahl von Testfällen als Mengenprodukt aus der Mehrzahl von Fahrumgebungen (10), der Mehrzahl von Fahrvorhaben (20) und der Mehrzahl von Szenarien (30) gebildet wird.
  12. Programm mit einem Programmcode zum Durchführen des Verfahrens gemäß einem der vorhergehenden Ansprüche, wenn der Programmcode auf einem Computer, einem Prozessor, einem Kontrollmodul oder einer programmierbaren Hardwarekomponente ausgeführt wird.
DE102019211009.6A 2019-07-25 2019-07-25 Verfahren und Computerprogramm zum Simulieren eines autonomen Fahrzeugs in einer Mehrzahl von Testfällen Active DE102019211009B4 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102019211009.6A DE102019211009B4 (de) 2019-07-25 2019-07-25 Verfahren und Computerprogramm zum Simulieren eines autonomen Fahrzeugs in einer Mehrzahl von Testfällen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102019211009.6A DE102019211009B4 (de) 2019-07-25 2019-07-25 Verfahren und Computerprogramm zum Simulieren eines autonomen Fahrzeugs in einer Mehrzahl von Testfällen

Publications (2)

Publication Number Publication Date
DE102019211009A1 DE102019211009A1 (de) 2021-01-28
DE102019211009B4 true DE102019211009B4 (de) 2022-08-25

Family

ID=74098874

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019211009.6A Active DE102019211009B4 (de) 2019-07-25 2019-07-25 Verfahren und Computerprogramm zum Simulieren eines autonomen Fahrzeugs in einer Mehrzahl von Testfällen

Country Status (1)

Country Link
DE (1) DE102019211009B4 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102021201177A1 (de) 2021-02-09 2022-08-11 Zf Friedrichshafen Ag Computerimplementiertes Verfahren und Computerprogramm zur Generierung von Fahrstrecken für ein automatisiertes Fahrsystem
CN113515105A (zh) * 2021-04-09 2021-10-19 清华大学 用于车辆预期功能安全仿真测试的平台、方法及存储介质
US11960292B2 (en) 2021-07-28 2024-04-16 Argo AI, LLC Method and system for developing autonomous vehicle training simulations
CN116685955A (zh) * 2021-12-29 2023-09-01 华为技术有限公司 用于自动驾驶***的方法、装置、电子设备和介质
WO2023137274A1 (en) * 2022-01-11 2023-07-20 Argo AI, LLC Systems and methods for automated generation and selection of simulation scenarios
AT525982B1 (de) * 2022-04-19 2023-10-15 Avl List Gmbh Verfahren und Systems zum Betreiben eines Prüfstands mit szenarienbasierten Prüfstandstests eines Verkehrsteilnehmers
DE102022112059B3 (de) 2022-05-13 2023-04-20 Dr. Ing. H.C. F. Porsche Aktiengesellschaft Verfahren, System und Computerprogrammprodukt zur Kalibrierung und Validierung eines Fahrerassistenzsystems (ADAS) und/oder eines automatisierten Fahrsystems (ADS)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102006044086B4 (de) 2006-09-20 2013-05-29 Audi Ag System und Verfahren zur Simulation von Verkehrssituationen, insbesondere unfallkritischen Gefahrensituationen, sowie ein Fahrsimulator
DE102011088807A1 (de) 2011-12-16 2013-06-20 Bayerische Motoren Werke Aktiengesellschaft Verfahren zum Entwickeln und/oder Testen eines Fahrerassistenzsystems
US20190009789A1 (en) 2017-07-05 2019-01-10 Baidu Online Network Technology (Beijing) Co., Ltd. Autonomous vehicle site test method and apparatus, device and readable medium
US20190213290A1 (en) 2018-01-09 2019-07-11 The Charles Stark Draper Laboratory, Inc. Deployable Development Platform For Autonomous Vehicle (DDPAV)

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102006044086B4 (de) 2006-09-20 2013-05-29 Audi Ag System und Verfahren zur Simulation von Verkehrssituationen, insbesondere unfallkritischen Gefahrensituationen, sowie ein Fahrsimulator
DE102011088807A1 (de) 2011-12-16 2013-06-20 Bayerische Motoren Werke Aktiengesellschaft Verfahren zum Entwickeln und/oder Testen eines Fahrerassistenzsystems
US20190009789A1 (en) 2017-07-05 2019-01-10 Baidu Online Network Technology (Beijing) Co., Ltd. Autonomous vehicle site test method and apparatus, device and readable medium
US20190213290A1 (en) 2018-01-09 2019-07-11 The Charles Stark Draper Laboratory, Inc. Deployable Development Platform For Autonomous Vehicle (DDPAV)

Also Published As

Publication number Publication date
DE102019211009A1 (de) 2021-01-28

Similar Documents

Publication Publication Date Title
DE102019211009B4 (de) Verfahren und Computerprogramm zum Simulieren eines autonomen Fahrzeugs in einer Mehrzahl von Testfällen
DE102018128290A1 (de) Verfahren und vorrichtung zum erzeugen von szenarien und parametrischen sweeps für die entwicklung und bewertung von autonomen antriebssystemen
EP3005338B1 (de) Fahrerassistenzsystem mit zusätzlichen informationen zu einer strassenkarte
DE102016007899B4 (de) Verfahren zum Betreiben einer Einrichtung zur Verkehrssituationsanalyse, Kraftfahrzeug und Datenverarbeitungseinrichtung
DE102017213634A1 (de) Verfahren und Vorrichtung für die Durchführung von virtuellen Tests in einer virtuellen Realitätsumgebung für ein autonom fahrendes Fahrzeug
DE102015116882A1 (de) Verbindungswahrscheinlichkeitsmodellbildung und Folgerung der Kreuzungsstruktur
DE102013005362A1 (de) Verfahren zur Analyse einer Verkehrssituation
DE102011106064A1 (de) Fahrzeugverhaltensschätzvorrichtung
DE102020210962B4 (de) Computerimplementiertes Verfahren und Rechnersystem zum Erzeugen von Eingangsparametern für eine Simulation
DE102019203712B4 (de) Verfahren zum Trainieren wenigstens eines Algorithmus für ein Steuergerät eines Kraftfahrzeugs, Computerprogrammprodukt, Kraftfahrzeug sowie System
DE102020205310A1 (de) Computerimplementiertes Verfahren zum Bereitstellen einer Datenstruktur für die Streckenkomplexitätserfassung und Validierung von Funktionalitäten eines automatisierten Fahrsystems, derartige Datenstruktur, Computer zum Validierung von Funktionalitäten eines automatisierten Fahrsystems, Computerprogramm zum Bereitstellen einer derartigen Datenstruktur und computerlesbarer Datenträger
DE102020215545A1 (de) Verfahren zur Ansteuerung eines Fahrzeugs
DE102013003944A1 (de) Verfahren und Vorrichtung zum Bereitstellen von Fahrerassistenzfunktionalität
DE102020127855A1 (de) Sicherheitssystem, automatisiertes fahrsystem und verfahren dafür
DE102018128563A1 (de) Verfahren und vorrichtung für eine autonome systemleistung und einen vergleich
WO2018188846A1 (de) Fahrerassistenzsystem für ein fahrzeug
DE102021201177A1 (de) Computerimplementiertes Verfahren und Computerprogramm zur Generierung von Fahrstrecken für ein automatisiertes Fahrsystem
DE102020208946B4 (de) Navigationskarte für eine zumindest teilautomatisierte mobile Plattform
WO2023099066A1 (de) Simulation zur validierung einer automatisierenden fahrfunktion für ein fahrzeug
WO2023016919A1 (de) Computerimplementiertes verfahren und computerprogramm zur generierung von virtuellen fahrstrecken und entwicklung und/oder validierung von funktionalitäten eines automatisierten fahrsystems auf den generierten fahrstrecken
WO2022251890A1 (de) Verfahren und system zum testen eines fahrerassistenzsystems für ein fahrzeug
DE102019215141B4 (de) Verfahren zum Prognostizieren einer zukünftigen Verkehrssituation in einer Umgebung eines Kraftfahrzeugs durch Bestimmen mehrerer in sich konsistenter Gesamtszenarios für unterschiedliche Verkehrsteilnehmer; Kraftfahrzeug
DE102021214095A1 (de) Verfahren und System zum Erkennen von kritischen Verkehrsszenarien und/oder Verkehrssituationen
DE102015223657A1 (de) Verfahren zur Ermittlung einer Spurempfehlung für einen Informationsdienst für ein Fahrzeug
DE102022117841A1 (de) Verfahren, System und Computerprogrammprodukt zur Kalibrierung und Validierung eines Fahrerassistenzsystems (ADAS) und/oder eines automatisierten Fahrsystems (ADS) unter Berücksichtigung einer subjektiven Bewertung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final