DE102022116564A1 - Method, system and computer program product for evaluating test cases for testing and training a driver assistance system (ADAS) and/or an automated driving system (ADS) - Google Patents
Method, system and computer program product for evaluating test cases for testing and training a driver assistance system (ADAS) and/or an automated driving system (ADS) Download PDFInfo
- Publication number
- DE102022116564A1 DE102022116564A1 DE102022116564.7A DE102022116564A DE102022116564A1 DE 102022116564 A1 DE102022116564 A1 DE 102022116564A1 DE 102022116564 A DE102022116564 A DE 102022116564A DE 102022116564 A1 DE102022116564 A1 DE 102022116564A1
- Authority
- DE
- Germany
- Prior art keywords
- scenario
- test
- simulation
- adas
- ads
- 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.)
- Ceased
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 191
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000012549 training Methods 0.000 title claims abstract description 16
- 238000004590 computer program Methods 0.000 title claims description 8
- 238000004088 simulation Methods 0.000 claims abstract description 88
- 238000011156 evaluation Methods 0.000 claims abstract description 44
- 230000006870 function Effects 0.000 claims description 44
- 238000013528 artificial neural network Methods 0.000 claims description 29
- 238000004422 calculation algorithm Methods 0.000 claims description 26
- 238000004364 calculation method Methods 0.000 claims description 25
- 239000003795 chemical substances by application Substances 0.000 claims description 23
- 239000013598 vector Substances 0.000 claims description 22
- 238000013473 artificial intelligence Methods 0.000 claims description 21
- 238000002872 Statistical quality control Methods 0.000 claims description 14
- 230000006399 behavior Effects 0.000 claims description 13
- 230000002123 temporal effect Effects 0.000 claims description 11
- 230000001133 acceleration Effects 0.000 claims description 8
- 230000008569 process Effects 0.000 claims description 8
- 238000001556 precipitation Methods 0.000 claims description 6
- 230000009466 transformation Effects 0.000 claims description 6
- 238000000342 Monte Carlo simulation Methods 0.000 claims description 5
- 238000012417 linear regression Methods 0.000 claims description 5
- 239000000126 substance Substances 0.000 claims description 5
- 238000000844 transformation Methods 0.000 claims description 5
- 229920000832 Cutin Polymers 0.000 description 9
- 208000018910 keratinopathic ichthyosis Diseases 0.000 description 9
- 210000002569 neuron Anatomy 0.000 description 8
- 238000011161 development Methods 0.000 description 7
- 238000013527 convolutional neural network Methods 0.000 description 6
- 238000010200 validation analysis Methods 0.000 description 5
- 238000013461 design Methods 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 230000003203 everyday effect Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 210000004205 output neuron Anatomy 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- BUHVIAUBTBOHAG-FOYDDCNASA-N (2r,3r,4s,5r)-2-[6-[[2-(3,5-dimethoxyphenyl)-2-(2-methylphenyl)ethyl]amino]purin-9-yl]-5-(hydroxymethyl)oxolane-3,4-diol Chemical compound COC1=CC(OC)=CC(C(CNC=2C=3N=CN(C=3N=CN=2)[C@H]2[C@@H]([C@H](O)[C@@H](CO)O2)O)C=2C(=CC=CC=2)C)=C1 BUHVIAUBTBOHAG-FOYDDCNASA-N 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000007621 cluster analysis Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000006735 deficit Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 210000002364 input neuron Anatomy 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012876 topography Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01M—TESTING STATIC OR DYNAMIC BALANCE OF MACHINES OR STRUCTURES; TESTING OF STRUCTURES OR APPARATUS, NOT OTHERWISE PROVIDED FOR
- G01M17/00—Testing of vehicles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/09—Supervised learning
Abstract
Die Erfindung betrifft ein Verfahren zur Bewertung von Testfällen (Ti) zum Testen und Trainieren eines Fahrerassistenzsystems (ADAS) und/oder eines automatisierten Fahrsystems (ADS) und/oder einer Fahrfunktion für eine festgelegte Fahraufgabe in zumindest einem Szenario (SZi), umfassend:- Generieren (S10) von zumindest einem Testfall (Ti) von einem Testagenten (350) durch Auswählen von zumindest einem parametrisierten Szenario (SZpi) und konkreten Szenarioparametern (Pci) und konkreten Szenarioparameterwerten (PVci) aus einer Szenariendatenbank (200) mittels einer Teststrategie von einem Testagenten (350) für die Fahraufgabe;- Generieren (S20) einer Simulationsumgebung mit dem ausgewählten Testfall (Ti) und Durchführen einer Simulation des Verhaltens des Fahrerassistenzsystems (ADAS) und/oder eines automatisierten Fahrsystems (ADS) und/oder einer Fahrfunktion in der Simulationsumgebung von einem Simulationsmodul (400) zur Bestimmung von Simulationsergebnissen (450);- Bewerten (S30) der Simulationsergebnisse (450) durch ein Bewertungsmodul (500) zur Bestimmung eines Kritikalitätsindex (590) für den Testfall (Ti).The invention relates to a method for evaluating test cases (Ti) for testing and training a driver assistance system (ADAS) and/or an automated driving system (ADS) and/or a driving function for a defined driving task in at least one scenario (SZi), comprising:- Generating (S10) at least one test case (Ti) from a test agent (350) by selecting at least one parameterized scenario (SZpi) and concrete scenario parameters (Pci) and concrete scenario parameter values (PVci) from a scenario database (200) using a test strategy of one Test agents (350) for the driving task; - Generating (S20) a simulation environment with the selected test case (Ti) and carrying out a simulation of the behavior of the driver assistance system (ADAS) and/or an automated driving system (ADS) and/or a driving function in the simulation environment by a simulation module (400) for determining simulation results (450); - evaluating (S30) the simulation results (450) by an evaluation module (500) for determining a criticality index (590) for the test case (Ti).
Description
Die Erfindung betrifft ein Verfahren, ein System und ein Computerprogrammprodukt zur Bewertung von Testfällen zum Testen und Trainieren eines Fahrerassistenzsystems (ADAS) und/oder eines automatisierten Fahrsystems (ADS) und/oder einer Fahrfunktion.The invention relates to a method, a system and a computer program product for evaluating test cases for testing and training a driver assistance system (ADAS) and/or an automated driving system (ADS) and/or a driving function.
Moderne Fahrzeuge sind mit einer Vielzahl von Fahrassistenzsystemen bzw. automatisierten Fahrassistenzfunktionen ausgestattet, um den Fahrer beim Fahren zu unterstützen und seine Sicherheit zu erhöhen. Fahrassistenzsysteme unterstützen beispielsweise die Geschwindigkeits- und Abstandsregelung und beinhalten Spurhalte- und Spurwechselfunktionen. Hierbei kann eine bestimmte maximale Geschwindigkeit eingestellt werden, die nicht überschritten wird, solange die Geschwindigkeitsbegrenzungsfunktion aktiviert ist. Für die Abstandsregelung, bei der ein bestimmter Abstand insbesondere zu einem vorausfahrenden Fahrzeug eingestellt wird, werden Radarsensoren, aber auch Kamerasysteme eingesetzt. Hierdurch kann der Abstand zu vorausfahrenden Fahrzeugen, aber auch zu Fahrzeugen im Seitenbereich überwacht werden. Dies führt zu einem verbesserten Fahrkomfort und einer höheren Sicherheit insbesondere bei Fahrten auf der Autobahn und bei Überholmanövern.Modern vehicles are equipped with a variety of driving assistance systems or automated driving assistance functions to support the driver while driving and increase his safety. Driving assistance systems, for example, support speed and distance control and include lane keeping and lane changing functions. A specific maximum speed can be set, which will not be exceeded as long as the speed limit function is activated. Radar sensors and also camera systems are used for distance control, in which a certain distance is set, particularly to a vehicle in front. This allows the distance to vehicles in front, but also to vehicles in the side area, to be monitored. This leads to improved driving comfort and greater safety, especially when driving on the motorway and during overtaking maneuvers.
Dieser Trend zu Fahrerassistenzsystemen (engl. Advanced Driver Assistance System, ADAS) und automatisierten Fahrsystemen (engl. Automated Driving System, ADS) bei Kraftfahrzeugen, aber auch bei Luftfahrzeugen oder Wasserfahrzeugen und anderen sich bewegenden Objekten, erfordert umfangreiche Absicherungsstrategien, da die Verantwortung über die Fahrzeugführung nicht mehr uneingeschränkt beim Fahrer liegt, sondern aktive Funktionen von Rechnereinheiten im Fahrzeug übernommen werden. Daher muss bei vollständig oder teilweise sich autonom bewegenden Objekten sichergestellt werden, dass diese Systeme eine sehr geringere Fehlerrate beim Fahrverhalten aufweisen. Um eine sichere Funktionsfähigkeit eines ADAS/ADS-Systems zu gewährleisten, sind die Erkennung und Klassifizierung von anderen Objekten und die Interpretation von Verkehrsszenarien im Umfeld eines sich bewegenden Objekts, insbesondere eines Fahrzeugs, wichtige Voraussetzungen. Hierfür ist das gezielte Testen und Trainieren der Fahrerassistenzsysteme und automatisierten Fahrsysteme sowohl in Extrem- und Ausnahmesituationen (engl. Corner Cases) als auch in alltäglichen Situationen erforderlich. Derartige Extremsituationen ergeben sich durch eine besondere Kombination von verschiedenen Faktoren. Beispiele hierfür sind infrastrukturelle Besonderheiten wie beispielsweise der Straßentyp, die Randbebauung an einer Straße, die Qualität der Markierungen aber auch Umgebungsbedingungen wie beispielsweise Witterungsbedingungen, die Tages- und die Jahreszeit. Des Weiteren spielen das Verhalten der anderen Verkehrsteilnehmer, die geographische Topographie und die Wetterverhältnisse eine große Rolle.This trend towards driver assistance systems (Advanced Driver Assistance System, ADAS) and automated driving systems (ADS) in motor vehicles, but also in aircraft or watercraft and other moving objects, requires extensive security strategies, as the responsibility for the Vehicle control is no longer entirely the responsibility of the driver, but active functions are taken over by computer units in the vehicle. Therefore, for objects that move completely or partially autonomously, it must be ensured that these systems have a very low error rate in driving behavior. In order to ensure the safe functionality of an ADAS/ADS system, the detection and classification of other objects and the interpretation of traffic scenarios in the vicinity of a moving object, especially a vehicle, are important prerequisites. This requires targeted testing and training of driver assistance systems and automated driving systems both in extreme and exceptional situations (corner cases) as well as in everyday situations. Such extreme situations arise from a special combination of different factors. Examples of this are infrastructural features such as the type of road, the development on the edge of a road, the quality of the markings but also environmental conditions such as weather conditions, the time of day and the season. The behavior of other road users, the geographical topography and the weather conditions also play a major role.
Allerdings stellt bei der Integration von modernen ADAS/ADS-Systemen in ein Fahrzeug eine solche Verifizierung, Kalibrierung und Validierung auch eine große Herausforderung dar, da ein funktionales Spezifikationsdefizits bei Fahrassistenzsystemen besteht. Während in der Automobilindustrie für konventionelle Systeme ein anforderungsbasierter Testprozess etabliert ist, bei dem Testfälle anhand von Testspezifikationen implementiert werden, fehlt dies bisher für ADAS/ADS-Systeme, da im Gegensatz zu konventionellen Systemen eine wesentlich größere Anzahl an Einflussgrößen zu berücksichtigen ist, wie insbesondere die Fahrumgebung, die mittels Sensoren erfasst wird. Die Menge von Szenarien, die in der Fahrumgebung des Fahrzeugs auftreten können und die von einem ADAS/ADS-System korrekt erkannt und verarbeitet werden müssen, wird durch eine Operational Design Domain (ODD) dargestellt. Dazu gehören sowohl alltägliche Fahrszenarien als auch sehr selten auftretende Corner Cases. Um ein ADAS/ADS-System für alle möglichen Fahrszenarien zu testen und zu trainieren, müsste die gesamte ODD für ein ADAS/ADS-System erfasst und in einem Anforderungskatalog dokumentiert werden. Dies ist aufgrund der Komplexität der Fahrumgebung und der daraus resultierenden großen Anzahl von Fahrszenarien nicht möglich. Dieses Problem wird als funktionales Spezifikationsdefizit bezeichnet. Es erschwert sowohl den Kalibrierungs- als auch den Validierungsprozess eines ADAS/ADS-Systems und erfordert alternative Ansätze zu den bestehenden Methoden.However, when integrating modern ADAS/ADS systems into a vehicle, such verification, calibration and validation also represents a major challenge, as there is a functional specification deficit in driving assistance systems. While a requirements-based test process has been established for conventional systems in the automotive industry, in which test cases are implemented based on test specifications, this is currently missing for ADAS/ADS systems because, in contrast to conventional systems, a significantly larger number of influencing variables have to be taken into account, such as in particular the driving environment, which is recorded using sensors. The set of scenarios that can occur in the vehicle's driving environment and that must be correctly recognized and processed by an ADAS/ADS system is represented by an Operational Design Domain (ODD). This includes both everyday driving scenarios and very rarely occurring corner cases. In order to test and train an ADAS/ADS system for all possible driving scenarios, the entire ODD for an ADAS/ADS system would have to be recorded and documented in a requirements catalog. This is not possible due to the complexity of the driving environment and the resulting large number of driving scenarios. This problem is called functional specification deficiency. It complicates both the calibration and validation process of an ADAS/ADS system and requires alternative approaches to the existing methods.
Aufgrund der Herausforderungen bei der Erprobung von ADAS/ADS-Systemen werden daher neben den bekannten Methoden zunehmend virtuelle Simulationsverfahren zum Testen und Trainieren für eine Verifizierung, Kalibrierung und Validierung von ADAS/ADS-Systemen eingesetzt. Dabei müssen diese virtuellen Simulationsverfahren jedoch in einer Weise gestaltet werden, dass eine objektive Vergleichbarkeit von verschiedenen ADAS/ADS-Systemen mit sich unterscheidenden Funktionalitäten hinsichtlich der Leistungsfähigkeit und Sicherheit möglich ist. Hierzu werden Testfälle entwickelt, mit denen eine Simulationsumgebung für das Testen und Trainieren von ADAS/ADS-Systemen generiert werden kann. Allerdings geben nicht alle Testfälle kritische Verkehrssituationen wieder. Da jedoch die Beurteilung der Leistungsfähigkeit und Performance eines ADAS/ADS-Systems insbesondere von dessen Verhalten in kritischen Testfällen abhängt, ist eine Bewertung von Testfällen hinsichtlich ihrer Kritikalität erforderlich.Due to the challenges in testing ADAS/ADS systems, in addition to the known methods, virtual simulation methods are increasingly being used for testing and training for verification, calibration and validation of ADAS/ADS systems. However, these virtual simulation methods must be designed in such a way that an objective comparison of different ADAS/ADS systems with different functionalities in terms of performance and safety is possible. For this purpose, test cases are developed with which a simulation environment for testing and training ADAS/ADS systems can be generated. However, not all test cases reflect critical traffic situations. However, since the assessment of performance and performance Since the performance of an ADAS/ADS system depends in particular on its behavior in critical test cases, an evaluation of test cases with regard to their criticality is necessary.
Die
Die
Die
Die
Die der Erfindung zu Grunde liegende Aufgabe besteht nun darin, Möglichkeiten zur Bewertung von Testfällen zum Testen und Trainieren eines Fahrerassistenzsystems (ADAS) und/oder eines automatisierten Fahrsystems (ADS) anzugeben, so dass insbesondere der Kalibrierungs- und Validierungsprozess weniger Zeit benötigt und mit einer verbesserten Genauigkeit und Effizienz durchgeführt werden kann.The object underlying the invention is to provide options for evaluating test cases for testing and training a driver assistance system (ADAS) and/or an automated driving system (ADS), so that in particular the calibration and validation process requires less time and with a improved accuracy and efficiency.
Diese Aufgabe wird hinsichtlich eines Verfahrens durch die Merkmale des Patentanspruchs 1, hinsichtlich eines Systems durch die Merkmale des Patentanspruchs 9, und hinsichtlich eines Computerprogrammprodukts durch die Merkmale des Patentanspruchs 15 erfindungsgemäß gelöst. Die weiteren Ansprüche betreffen bevorzugte Ausgestaltungen der Erfindung.This object is achieved according to the invention with regard to a method by the features of patent claim 1, with regard to a system by the features of patent claim 9, and with regard to a computer program product by the features of
Durch die vorliegende Erfindung können aus einem Pool von zur Verfügung stehenden Testfällen für die Erstellung einer Simulationsumgebung für das Testen und Trainieren eines ADAS/ADS-Systems und/oder einer Fahrfunktion diejenigen kritischen Testfälle ausgewählt werden, die für die Erprobung und Absicherung eines ADAS/ADS-Systems und/oder einer Fahrfunktion besonders relevant sind. Zudem ergibt sich aus der Bewertung der Testfälle ein Grenzbereich zwischen kritischen und nichtkritischen Testfällen. Diese im Grenzbereich liegenden Testfälle sind für das reale Testen eines ADAS/ADS-Systems besonders interessant, da hierdurch die Leistungsfähigkeit eines ADAS/ADS-Systems präzise und nachvollziehbar bewertet werden kann und daraus mögliche Maßnahmen zur Verbesserung abgeleitet werden können. Insbesondere kann untersucht werden, ob dieser Grenzbereich mit den während der Entwicklung eines ADAS/ADS-Systems beispielsweise in einem Lastenheft definierten Systemgrenzen kompatibel ist. Durch die Auswahl von kritischen Testdatensätzen kann somit die Abschätzung der Sicherheit und Funktionsfähigkeit eines Fahrassistenzsystems (ADAS) und/oder eines automatisierten Fahrsystems (ADS) und/oder einer Fahrfunktion für eine bestimmte Fahraufgabe deutlich verbessert werden.The present invention makes it possible to select from a pool of available test cases for creating a simulation environment for testing and training an ADAS/ADS system and/or a driving function those critical test cases that are necessary for testing and securing an ADAS/ADS system and/or a driving function are particularly relevant. In addition, the evaluation of the test cases results in a border area between critical and non-critical test cases. These test cases, which lie in the borderline range, are particularly interesting for the real testing of an ADAS/ADS system, as they allow the performance of an ADAS/ADS system to be evaluated precisely and comprehensibly and possible measures for improvement can be derived from this. In particular, it can be examined whether this limit area is compatible with the system limits defined during the development of an ADAS/ADS system, for example in a requirements specification. By selecting critical test data sets, the assessment of the safety and functionality of a driving assistance system (ADAS) and/or an automated driving system (ADS) and/or a driving function for a specific driving task can be significantly improved.
Gemäß einem ersten Aspekt stellt die Erfindung ein Verfahren zur Bewertung von Testfällen zum Testen und Trainieren eines Fahrerassistenzsystems (ADAS) und/oder eines automatisierten Fahrsystems (ADS) und/oder einer Fahrfunktion für eine festgelegte Fahraufgabe in zumindest einem Szenario bereit. Ein Szenario stellt ein Verkehrsgeschehen in einer zeitlichen Sequenz dar und ist durch eine Auswahl von Szenarioparametern und zugehörigen Szenarioparameterwerten definiert, wobei bei einem parametrisierten Szenario die Szenarioparameter und zugehörigen Szenarioparameterwerte frei wählbar sind, und bei einem konkreten Szenario die konkreten Szenarioparameter und zugehörigen konkreten Szenarioparameterwerte festgelegt sind. Das Verfahren umfasst die Verfahrensschritte:
- - Generieren von zumindest einem Testfall von einem Testagenten durch Auswählen von zumindest einem parametrisierten Szenario und konkreten Szenarioparametern und konkreten Szenarioparameterwerten aus einer Szenariendatenbank mittels einer Teststrategie von einem Testagenten für die Fahraufgabe;
- - Generieren einer Simulationsumgebung mit dem ausgewählten Testfall und Durchführen einer Simulation des Verhaltens des Fahrerassistenzsystems (ADAS) und/oder eines automatisierten Fahrsystems (ADS) und/oder einer Fahrfunktion in der Simulationsumgebung von einem Simulationsmodul zur Bestimmung von Simulationsergebnissen;
- - Bewerten der Simulationsergebnisse durch ein Bewertungsmodul zur Bestimmung eines Kritikalitätsindex für den Testfall.
- - Generating at least one test case from a test agent by selecting at least one parameterized scenario and concrete scenario parameters and concrete scenario parameter values from a scenario database using a test strategy from a test agent for the driving task;
- - Generating a simulation environment with the selected test case and carrying out a simulation of the behavior of the driver assistance system (ADAS) and/or an automated driving system (ADS) and/or a driving function in the simulation environment from a simulation module to determine simulation results;
- - Evaluating the simulation results using an evaluation module to determine a criticality index for the test case.
In einer Weiterbildung ist vorgesehen, dass das Bewertungsmodul weitere Bewertungsergebnisse insbesondere in Form von Leistungsindikatoren (KPls) zur Bewertung der Performance des ADAS/ADS-Systems und/oder der Fahrfunktion und von Simulationsqualitätskriterien (SQCs) zur Bestimmung der Qualität der Simulation für den Testfall berechnet.In a further development, it is provided that the evaluation module calculates further evaluation results, in particular in the form of performance indicators (KPls) for evaluating the performance of the ADAS/ADS system and/or the driving function and simulation quality criteria (SQCs) for determining the quality of the simulation for the test case .
In einer vorteilhaften Ausführungsform ist vorgesehen, dass der Testfall und der bestimmte Kritikalitätsindex sowie die weiteren Bewertungsergebnisse in einer Testdatenbank gespeichert werden.In an advantageous embodiment it is provided that the test case and the specific criticality index as well as the further evaluation results are stored in a test database.
In einer weiteren Ausführungsform ist vorgesehen, dass eine Vielzahl von Testfällen generiert werden, die durch eine Variation eines oder mehrerer Szenarioparameter und konkreter Szenarioparameterwerte entstehen.In a further embodiment it is provided that a large number of test cases are generated, which arise from a variation of one or more scenario parameters and specific scenario parameter values.
Insbesondere ist vorgesehen, dass die Testfälle, die Szenarioparameter und die konkreten Szenarioparameterwerte als eine Daten-Repräsentation in Form zumindest eines Vektors in einem latenten Vektorraum dargestellt werden.In particular, it is provided that the test cases, the scenario parameters and the concrete scenario parameter values are represented as a data representation in the form of at least one vector in a latent vector space.
in einer weiteren Ausführungsform ist vorgesehen, dass der Testagent des Testmoduls eine Softwareapplikation umfasst, die Berechnungsverfahren und/oder Algorithmen der künstlichen Intelligenz verwendet, und dass das Simulationsmodul eine Softwareapplikation umfasst, die Berechnungsverfahren und/oder Algorithmen der künstlichen Intelligenz verwendet; und dass das Bewertungsmodul eine Softwareapplikation umfasst, die Berechnungsverfahren und/oder Algorithmen der künstlichen Intelligenz verwendet.in a further embodiment it is provided that the test agent of the test module comprises a software application that uses calculation methods and/or artificial intelligence algorithms, and that the simulation module comprises a software application that uses calculation methods and/or artificial intelligence algorithms; and that the assessment module includes a software application that uses calculation methods and/or artificial intelligence algorithms.
Vorteilhafterweise sind die Berechnungsverfahren und/oder Algorithmen der künstlichen Intelligenz als Mittelwerte, Minimal- und Maximalwerte, Lookup Tabellen, Modelle zu Erwartungswerten, lineare Regressionsverfahren, Gauß-Prozesse, Fast Fourier Transformationen, Integral- und Differentialrechnungen, Markov-Verfahren, Wahrscheinlichkeitsverfahren wie Monte Carlo-Verfahren, Temporal Difference Learning, erweiterte Kalman-Filter, radiale Basisfunktionen, Datenfelder, konvergente neuronale Netzwerke, tiefe neuronale Netzwerke, rückgekoppelte neuronale Netzwerke, und/oder gefaltete neuronale Netzwerke ausgebildet.The calculation methods and/or algorithms of artificial intelligence are advantageous as mean values, minimum and maximum values, lookup tables, models for expected values, linear regression methods, Gaussian processes, fast Fourier transformations, integral and differential calculations, Markov methods, probability methods such as Monte Carlo -Methods, temporal difference learning, extended Kalman filters, radial basis functions, data fields, convergent neural networks, deep neural networks, feedback neural networks, and/or convolutional neural networks.
Insbesondere ist vorgesehen, dass ein Szenarioparameter eine physikalische Größe, eine chemische Größe, ein Drehmoment, eine Drehzahl, eine Spannung, eine Stromstärke, eine Beschleunigung, eine Geschwindigkeit, einen Bremswert, eine Richtung, einen Winkel, einen Radius, einen Ort, eine Zahl, ein bewegliches Objekt wie ein Kraftfahrzeug, eine Person oder einen Radfahrer, ein unbewegliches Objekt wie ein Gebäude oder einen Baum, eine Straßenkonfiguration wie eine Autobahn, ein Straßenschild, eine Ampel, einen Tunnel, einen Kreisverkehr, eine Abbiegespur, ein Verkehrsaufkommen, eine topographische Struktur wie eine Steigung, eine Uhrzeit, eine Temperatur, einen Niederschlagswert, eine Witterung und/oder eine Jahreszeit darstellt.In particular, it is provided that a scenario parameter is a physical quantity, a chemical quantity, a torque, a speed, a voltage, a current, an acceleration, a speed, a braking value, a direction, an angle, a radius, a location, a number , a moving object such as a motor vehicle, a person or a cyclist, an immovable object such as a building or a tree, a road configuration such as a highway, a street sign, a traffic light, a tunnel, a roundabout, a turning lane, a traffic volume, a topographic Structure such as a slope, a time, a temperature, a precipitation value, a weather and/or a season.
Gemäß einem zweiten Aspekt stellt die Erfindung ein System zur Bewertung von Testfällen zum Testen und Trainieren eines Fahrerassistenzsystems (ADAS) und/oder eines automatisierten Fahrsystems (ADS) und/oder einer Fahrfunktion für eine festgelegte Fahraufgabe in zumindest einem Szenario bereit. Ein Szenario stellt ein Verkehrsgeschehen in einer zeitlichen Sequenz dar und ist durch eine Auswahl von Szenarioparametern und zugehörigen Szenarioparameterwerten definiert, wobei bei einem parametrisierten Szenario die Szenarioparameter und zugehörigen Szenarioparameterwerte frei wählbar sind, und bei einem konkreten Szenario die konkreten Szenarioparameter und zugehörigen konkreten Szenarioparameterwerte festgelegt sind. Das System umfasst eine Szenariendatenbank, in der zumindest parametrisierte Szenarien, Szenarioparameter und zugehörige Szenarioparameterwerte gespeichert sind, ein Testmodul, ein Simulationsmodul und ein Bewertungsmodul. Das Testmodul ist ausgebildet, zumindest einen Testfall durch Auswählen von zumindest einem parametrisierten Szenario und konkreten Szenarioparametern und konkreten Szenarioparameterwerten aus der Szenariendatenbank mittels einer Teststrategie von einem Testagenten für die Fahraufgabe zu generieren. Das Simulationsmodul ist ausgebildet, eine Simulationsumgebung mit dem ausgewählten Testfall zu generieren und eine Simulation des Verhaltens des Fahrerassistenzsystems (ADAS) und/oder eines automatisierten Fahrsystems (ADS) und/oder einer Fahrfunktion in der Simulationsumgebung von einem Simulationsmodul zur Bestimmung von Simulationsergebnissen durchzuführen. Das Bewertungsmodul ist ausgebildet, die Simulationsergebnisse zur Bestimmung eines Kritikalitätsindex für den Testfall zu bewerten.According to a second aspect, the invention provides a system for evaluating test cases for testing and training a driver assistance system (ADAS) and/or an automated driving system (ADS) and/or a driving function for a defined driving task in at least one scenario. A scenario represents a traffic event in a temporal sequence and is defined by a selection of scenario parameters and associated scenario parameter values, whereby in a parameterized scenario the scenario parameters and associated scenario parameter values are freely selectable, and in a specific scenario the specific scenario parameters and associated specific scenario parameter values are fixed . The system includes a scenario database in which at least parameterized scenarios, scenario parameters and associated scenario parameter values are stored, a test module, a simulation module and an evaluation module. The test module is designed to generate at least one test case by selecting at least one parameterized scenario and specific scenario parameters and specific scenario parameter values from the scenario database using a test strategy from a test agent for the driving task. The simulation module is designed to generate a simulation environment with the selected test case and to carry out a simulation of the behavior of the driver assistance system (ADAS) and/or an automated driving system (ADS) and/or a driving function in the simulation environment by a simulation module to determine simulation results. The evaluation module is designed to evaluate the simulation results to determine a criticality index for the test case.
In einer vorteilhaften Weiterentwicklung ist vorgesehen, dass das Bewertungsmodul weitere Bewertungsergebnisse insbesondere in Form von Leistungsindikatoren (KPls) zur Bewertung der Performance des ADAS/ADS-Systems und/oder der Fahrfunktion und von Simulationsqualitätskriterien (SQCs) zur Bestimmung der Qualität der Simulation für den Testfall berechnet.In an advantageous further development, it is provided that the evaluation module provides further evaluation results, in particular in the form of performance indicators (KPLs) for evaluating the performance of the ADAS/ADS system and/or the driving function and of simulation quality criteria (SQCs) for determining the quality of the simulation for the test case calculated.
Vorteilhafterweise werden der Testfall und der bestimmte Kritikalitätsindex sowie die weiteren Bewertungsergebnisse in einer Testdatenbank gespeichert.Advantageously, the test case and the specific criticality index as well as the further evaluation results are stored in a test database.
In einer Weiterbildung ist vorgesehen, dass eine Vielzahl von Testfällen generiert werden, die durch eine Variation eines oder mehrerer Szenarioparameter und konkreter Szenarioparameterwerte entstehen.In a further development it is provided that a large number of test cases are generated, which arise from a variation of one or more scenario parameters and concrete scenario parameter values.
In einer vorteilhaften Ausführungsform ist vorgesehen, dass die Testfälle, die Szenarioparameter und die konkreter Szenarioparameterwerte als eine Daten-Repräsentation in Form zumindest eines Vektors in einem latenten Vektorraum dargestellt werden.In an advantageous embodiment it is provided that the test cases, the scenario parameters and the concrete scenario parameter values are represented as a data representation in the form of at least one vector in a latent vector space.
In einer weiteren Ausführungsform ist vorgesehen, dass der Testagent des Testmoduls eine Softwareapplikation umfasst, die Berechnungsverfahren und/oder Algorithmen der künstlichen Intelligenz verwendet, und dass das Simulationsmodul eine Softwareapplikation umfasst, die Berechnungsverfahren und/oder Algorithmen der künstlichen Intelligenz verwendet; und dass das Bewertungsmodul eine Softwareapplikation umfasst.In a further embodiment, it is provided that the test agent of the test module comprises a software application that uses calculation methods and/or artificial intelligence algorithms, and that the simulation module comprises a software application that uses calculation methods and/or artificial intelligence algorithms; and that the assessment module includes a software application.
Insbesondere verwendet/verwenden die Berechnungsverfahren und/oder Algorithmen der künstlichen Intelligenz, wobei die Berechnungsverfahren und/oder Algorithmen der künstlichen Intelligenz als Mittelwerte, Minimal- und Maximalwerte, Lookup Tabellen, Modelle zu Erwartungswerten, lineare Regressionsverfahren, Gauß-Prozesse, Fast Fourier Transformationen, Integral- und Differentialrechnungen, Markov-Verfahren, Wahrscheinlichkeitsverfahren wie Monte Carlo-Verfahren, Temporal Difference Learning, erweiterte Kalman-Filter, radiale Basisfunktionen, Datenfelder, konvergente neuronale Netzwerke, tiefe neuronale Netzwerke, rückgekoppelte neuronale Netzwerke, und/oder gefaltete neuronale Netzwerke ausgebildet sind.In particular, the calculation methods and/or algorithms of artificial intelligence are used, the calculation methods and/or algorithms of artificial intelligence being used as mean values, minimum and maximum values, lookup tables, models for expected values, linear regression methods, Gaussian processes, fast Fourier transformations, Integral and differential calculations, Markov methods, probability methods such as Monte Carlo methods, temporal difference learning, extended Kalman filters, radial basis functions, data fields, convergent neural networks, deep neural networks, feedback neural networks, and / or folded neural networks are formed .
Vorteilhafterweise ist vorgesehen, dass ein Szenarioparameter eine physikalische Größe, eine chemische Größe, ein Drehmoment, eine Drehzahl, eine Spannung, eine Stromstärke, eine Beschleunigung, eine Geschwindigkeit, einen Bremswert, eine Richtung, einen Winkel, einen Radius, einen Ort, eine Zahl, ein bewegliches Objekt wie ein Kraftfahrzeug, eine Person oder einen Radfahrer, ein unbewegliches Objekt wie ein Gebäude oder einen Baum, eine Straßenkonfiguration wie eine Autobahn, ein Straßenschild, eine Ampel, einen Tunnel, einen Kreisverkehr, eine Abbiegespur, ein Verkehrsaufkommen, eine topographische Struktur wie eine Steigung, eine Uhrzeit, eine Temperatur, einen Niederschlagswert, eine Witterung und/oder eine Jahreszeit darstellt.Advantageously, it is provided that a scenario parameter is a physical quantity, a chemical quantity, a torque, a speed, a voltage, a current, an acceleration, a speed, a braking value, a direction, an angle, a radius, a location, a number , a moving object such as a motor vehicle, a person or a cyclist, an immovable object such as a building or a tree, a road configuration such as a highway, a street sign, a traffic light, a tunnel, a roundabout, a turning lane, a traffic volume, a topographic Structure such as a slope, a time, a temperature, a precipitation value, a weather and/or a season.
Gemäß einem dritten Aspekt stellt die Erfindung ein Computerprogrammprodukt bereit, das einen ausführbaren Programmcode umfasst, der derart konfiguriert ist, dass er bei seiner Ausführung das Verfahren gemäß dem ersten Aspekt ausführt.According to a third aspect, the invention provides a computer program product comprising executable program code configured to, when executed, carry out the method according to the first aspect.
Nachfolgend wird die Erfindung anhand von in der Zeichnung dargestellten Ausführungsbeispielen näher erläutert.The invention is explained in more detail below using exemplary embodiments shown in the drawing.
Dabei zeigt:
-
1 ein Blockdiagramm zur Erläuterung eines Ausführungsbeispiels eines erfindungsgemäßen Systems; -
2 eine schematische Darstellung eines Vektorraums; -
3 ein Flussdiagramm zur Erläuterung der einzelnen Verfahrensschritte eines erfindungsgemäßen Verfahrens; -
4 ein Blockdiagramm eines Computerprogrammprodukt gemäß einer Ausführungsform des dritten Aspekts der Erfindung.
-
1 a block diagram to explain an exemplary embodiment of a system according to the invention; -
2 a schematic representation of a vector space; -
3 a flowchart to explain the individual method steps of a method according to the invention; -
4 a block diagram of a computer program product according to an embodiment of the third aspect of the invention.
Zusätzliche Kennzeichen, Aspekte und Vorteile der Erfindung oder ihrer Ausführungsbeispiele werden in der nachfolgenden Beschreibung in Verbindung mit den Ansprüchen erläutert.Additional features, aspects and advantages of the invention or its embodiments are explained in the following description in conjunction with the claims.
Für das Testen, Trainieren und Absichern von Fahrerassistenzsystemen (ADAS) und automatisierten Fahrsystemen (ADS) werden zunehmend simulierte Verkehrsszenarien, die durch Programmierung erstellt werden, verwendet. Als Szenario wird im Rahmen der Erfindung ein Verkehrsgeschehen in einer zeitlichen Sequenz bezeichnet. Ein Beispiel für ein Szenario ist das Befahren einer Autobahnbrücke, das Abbiegen auf einer Abbiegespur, das Durchfahren eines Tunnels, das Einbiegen in einen Kreisverkehr oder das Halten vor einem Fußgängerübergang. Darüber hinaus können spezifische Sichtverhältnisse beispielsweise aufgrund der Dämmerung oder einer hohen Sonnenlichteinstrahlung sowie Umweltbedingungen wie das Wetter und die Jahreszeit, das Verkehrsaufkommen sowie bestimmte geographische topographische Verhältnisse ein Szenario beeinflussen. Beispielsweise kann ein Überholvorgang als ein Szenario beschrieben werden, bei dem ein erstes Fahrzeug sich zunächst hinter einem anderen Fahrzeug befindet, dann einen Spurwechsel auf die andere Fahrbahn durchführt und die Geschwindigkeit erhöht, um das andere Fahrzeug zu überholen. Ein derartiges Szenario wird auch als Cut-In-Szenario bezeichnet.Simulated traffic scenarios that are created through programming are increasingly being used to test, train and validate driver assistance systems (ADAS) and automated driving systems (ADS). In the context of the invention, a scenario is a traffic event in a temporal sequence. An example of a scenario is driving on a highway bridge, turning in a turning lane, driving through a tunnel, turning into a roundabout or stopping in front of a pedestrian crossing. In addition, specific visibility conditions, for example due to twilight or high levels of sunlight, as well as environmental conditions such as the weather and season, traffic volume and certain geographical topographical conditions can influence a scenario. For example, an overtaking operation can be described as a scenario in which a first vehicle is initially behind another vehicle, then changes lanes to the other lane and increases speed in order to overtake the other vehicle. Such a scenario is also known as a cut-in scenario.
Um Fahrerassistenzsysteme (ADAS) und automatisierte Fahrsysteme (ADS) in einem Kraftfahrzeug einsetzen zu können, müssen diese für einen verlässlichen Einsatz kalibriert und validiert werden. Die Kalibrierung dient dazu, die Funktionen an den jeweiligen Fahrzeugtyp sowie an das gewünschte Verhalten einer Fahrfunktion anzupassen, ohne dabei den Softwarecode zu ändern. Dazu werden die Kalibrierungsparameter modifiziert und dem ADAS/ADS in einem Datensatz zur Verfügung gestellt. Ziel der Validierung ist es, den bei der Kalibrierung gewonnenen Datensatz umfassend zu testen, die Zuverlässigkeit und Robustheit eines Fahrerassistenzsystems (ADAS) bzw. eines automatisierten Fahrsystems (ADS) in der gesamten ODD nachzuweisen und anschließend eine Freigabe zu erteilen. Hierbei ist es insbesondere von großer Bedeutung, die Sicherheit und Funktionsfähigkeit eines ADAS/ADS-Systems für kritische Testfälle abschätzen zu können.In order to be able to use driver assistance systems (ADAS) and automated driving systems (ADS) in a motor vehicle, they must be calibrated and validated for reliable use. The purpose of calibration is to adapt the functions to the respective vehicle type and to the desired behavior of a driving function without changing the software code. For this purpose, the calibration parameters are modified and made available to the ADAS/ADS in a data set. The aim of the validation is to comprehensively test the data set obtained during calibration, to demonstrate the reliability and robustness of a driver assistance system (ADAS) or an automated driving system (ADS) throughout the entire ODD and then to grant approval. It is particularly important to be able to estimate the safety and functionality of an ADAS/ADS system for critical test cases.
Unter einem „Modul“ kann im Zusammenhang mit der Erfindung beispielsweise ein Prozessor und/oder eine Prozessoreinheit und/oder eine Speichereinheit zum Speichern von Programmbefehlen verstanden werden. Der Prozessor ist speziell dazu eingerichtet, die Programmbefehle derart auszuführen, um das erfindungsgemäße Verfahren oder einen Schritt des erfindungsgemäßen Verfahrens zu implementieren oder zu realisieren. Insbesondere kann ein Modul in einer Cloud-Computing-Infrastruktur 700 integriert sein.In connection with the invention, a “module” can be understood to mean, for example, a processor and/or a processor unit and/or a memory unit for storing program instructions. The processor is specifically set up to execute the program instructions in order to implement or realize the method according to the invention or a step of the method according to the invention. In particular, a module can be integrated into a
Unter einem „Prozessor“ kann im Zusammenhang mit der Erfindung beispielsweise eine Maschine oder eine elektronische Schaltung verstanden werden. Bei einem Prozessor kann es sich insbesondere um einen Hauptprozessor (engl. Central Processing Unit, CPU), einen Mikroprozessor oder einen Mikrocontroller, beispielsweise eine anwendungsspezifische integrierte Schaltung oder einen digitalen Signalprozessor, möglicherweise in Kombination mit einer Speichereinheit zum Speichern von Programmbefehlen, etc. handeln. Auch kann unter einem Prozessor ein virtualisierter Prozessor, eine virtuelle Maschine oder eine Soft-CPU verstanden werden. Es kann sich beispielsweise auch um einen programmierbaren Prozessor handeln, der mit Konfigurationsschritten zur Ausführung des genannten erfindungsgemäßen Verfahrens ausgerüstet wird oder mit Konfigurationsschritten derart konfiguriert ist, dass der programmierbare Prozessor die erfindungsgemäßen Merkmale des Verfahrens, des Systems, der Module, oder anderer Aspekte und/oder Teilaspekte der Erfindung realisiert. Insbesondere kann der Prozessor hochparallele Recheneinheiten und leistungsfähige Grafikmodule enthalten.In connection with the invention, a “processor” can be understood to mean, for example, a machine or an electronic circuit. A processor can in particular be a main processor (Central Processing Unit, CPU), a microprocessor or a microcontroller, for example an application-specific integrated circuit or a digital signal processor, possibly in combination with a memory unit for storing program instructions, etc . A processor can also be understood as a virtualized processor, a virtual machine or a soft CPU. For example, it can also be a programmable processor that is equipped with configuration steps for carrying out the method according to the invention or is configured with configuration steps in such a way that the programmable processor has the features of the method, the system, the modules, or other aspects and/or other aspects according to the invention. or partial aspects of the invention are realized. In particular, the processor can contain highly parallel computing units and powerful graphics modules.
Unter einer „Speichereinheit“ oder einem „Speichermodul“ kann im Zusammenhang mit der Erfindung beispielsweise ein flüchtiger Speicher in Form eines Arbeitsspeichers (engl. Random-Access Memory, RAM) oder ein dauerhafter Speicher wie eine Festplatte oder ein Datenträger oder z. B. ein wechselbares Speichermodul verstanden werden. Es kann sich bei dem Speichermodul aber auch um eine cloudbasierte Speicherlösung handeln.In connection with the invention, a “memory unit” or a “memory module” can, for example, mean a volatile memory in the form of a random access memory (RAM) or a permanent memory such as a hard drive or a data carrier or, for example. B. a replaceable memory module can be understood. The storage module can also be a cloud-based storage solution.
Unter „Datenbank“ ist sowohl ein Speicheralgorithmus als auch die Hardware in Form einer Speichereinheit zu verstehen. Insbesondere kann eine Datenbank als Teil einer Cloud-Computing-Infrastruktur ausgebildet sein.“Database” means both a storage algorithm and the hardware in the form of a storage unit. In particular, a database can be designed as part of a cloud computing infrastructure.
Unter „Daten“ sind im Zusammenhang mit der Erfindung sowohl Rohdaten als auch bereits aufbereitete Daten aus Messergebnissen von Sensoren sowie aus weiteren Datenquellen zu verstehen.In connection with the invention, “data” means both raw data and already processed data from measurement results from sensors and from other data sources.
Die Erstellung von Testfällen Ti zum Testen und Trainieren eines Fahrerassistenzsystems (ADAS) und/oder eines automatisierten Fahrsystems eines Fahrerassistenzsystems (ADAS) und/oder einer Fahrfunktion erfolgt auf der Basis von parametrisierten Szenarien, die auch als logische Szenarien bezeichnet werden. Als ein parametrisiertes Szenario wird im Rahmen der Erfindung ein Szenario bezeichnet, das insbesondere in einem maschinenlesbaren Code geschrieben ist. Ein parametrisiertes Szenario SZpi wird durch verschiedene Szenarioparameter P1, P2, ..., Pn aus einer Menge von möglichen Szenarioparametern Pi und zugehörigen Szenarioparameterwerten PV1, PV2, ..., PVn aus einer Menge von möglichen Szenarioparameterwerten PVi definiert, wobei Szenarioparameterwerte PVi den Wertebereich eines Szenarioparameters Pi festlegen. Ein Szenarioparameter Pi stellt beispielsweise eine physikalische Größe, eine chemische Größe, ein Drehmoment, eine Drehzahl, eine Spannung, eine Stromstärke, eine Beschleunigung, eine Geschwindigkeit, einen Bremswert, eine Richtung, einen Winkel, einen Radius, einen Ort, eine Zahl, ein bewegliches Objekt wie ein Kraftfahrzeug, eine Person oder einen Radfahrer, ein unbewegliches Objekt wie ein Gebäude oder einen Baum, eine Straßenkonfiguration wie eine Autobahn, ein Straßenschild, eine Ampel, einen Tunnel, einen Kreisverkehr, eine Abbiegespur, ein Verkehrsaufkommen, eine topographische Struktur wie eine Steigung, eine Uhrzeit, eine Temperatur, einen Niederschlagswert, eine Witterung und/oder eine Jahreszeit dar. Szenarioparameter Pi kennzeichnen somit im Rahmen der vorliegenden Erfindung Eigenschaften und Merkmale eines Szenarios. Ein Beispiel für einen Szenarioparameter Pi eines Szenarios SZpi ist die Geschwindigkeit eines Ego-Fahrzeugs. Für diesen Szenarioparameter „Geschwindigkeit“ kann der Wertebereich des zugehörigen Szenarioparameterwertes PVi den Bereich von 100 km/h bis 180 km/h umfassen. Für ein anderes Szenario SZpk hingegen kann der Wertebereich des Parameterwertes PVi für den Szenarioparameter „Geschwindigkeit“ sich von 40 km/h bis 70 km/h erstrecken.The creation of test cases T i for testing and training a driver assistance system (ADAS) and/or an automated driving system of a driver assistance system (ADAS) and/or a driving function is carried out on the basis of parameterized scenarios, which are also referred to as logical scenarios. In the context of the invention, a parameterized scenario refers to a scenario that is written in particular in a machine-readable code. A parameterized scenario SZp i is defined by various scenario parameters P 1 , P 2 , ..., P n from a set of possible scenario parameters P i and associated scenario parameter values PV 1 , PV 2 , ..., PV n from a set of possible scenario parameter values PV i defined, where scenario parameter values PV i determine the value range of a scenario parameter P i . A scenario parameter P i represents, for example, a physical quantity, a chemical quantity, a torque, a speed, a voltage, a current, an acceleration, a speed, a braking value, a direction, an angle, a radius, a location, a number, a moving object such as a motor vehicle, a person or a cyclist, an immovable object such as a building or a tree, a road configuration such as a highway, a street sign, a traffic light, a tunnel, a roundabout, a turning lane, a traffic volume, a topographical structure such as a gradient, a time, a temperature, a precipitation value, a weather and/or a season. Scenario parameters P i thus characterize properties and features of a scenario within the scope of the present invention. An example of a scenario parameter P i of a scenario SZp i is the speed of an ego vehicle. For this scenario parameter “speed”, the value range of the associated scenario parameter value PV i can cover the range from 100 km/h to 180 km/h. For another scenario SZp k , however, the value range of the parameter value PV i for the scenario parameter “speed” can extend from 40 km/h to 70 km/h.
Ein parametrisiertes Szenario SZp umfasst eine zeitliche Folge von Zeitintervallen Δt1,Δt2., ..., Δtn, in denen jeweils verschiedene Szenen und Ereignisse stattfinden. Ein parametrisiertes Szenario SZp beginnt mit einer Startszene und entwickelt sich dann durch auftretende Ereignisse weiter, aus denen im zeitlichen Verlauf neue Folgeszenen entstehen. Die Startszene wird somit durch ein oder mehrere Ereignisse verändert. Bei einem Ereignis kann es sich sowohl um eine von einem Verkehrsteilnehmer aktiv ausgelöste Reaktion wie eine Beschleunigung handeln als auch um ein Ereignis, das zyklisch wiederkehrt, wie beispielsweise die Schaltvorgänge einer Ampel. Die Startszene und die einzelnen Folgeszenen umfassen somit jeweils nur ein kleines Zeitintervall Δt bzw. eine Momentaufnahme, während ein parametrisiertes Szenario SZp eine längere Zeitspanne umfasst.A parameterized scenario SZp comprises a temporal sequence of time intervals Δt 1 , Δt 2 ., ..., Δt n , in which different scenes and events take place. A parameterized scenario SZp begins with a starting scene and then develops further through occurring events, from which new subsequent scenes emerge over time. The starting scene is thus changed by one or more events. An event can be a reaction actively triggered by a road user, such as an acceleration, or an event that recurs cyclically, such as the switching of a traffic light. The start scene and the individual subsequent scenes therefore only cover a small time interval Δt or a snapshot, while a parameterized scenario SZp covers a longer period of time.
Im Rahmen der vorliegenden Erfindung wird zwischen einem parametrisierten Szenario SZp und einem konkreten Szenario SZc unterschieden. Als ein parametrisiertes Szenario SZp wird im Rahmen dieser Erfindung ein Szenario definiert, bei dem sowohl die Szenarioparameter Pi als auch die zugehörigen Szenarioparameterwerte PVi nicht alle festgelegt sind. Als ein konkretes Szenario SZc wird ein Szenario SZ bezeichnet, bei dem die konkreten Szenarioparameter Pci und die zugehörigen konkreten Szenarioparameterwerte PVci bzw. Wertebereiche der konkreten Szenarioparameterwerte PVci festgelegt sind. Bei beiden Szenarien, sowohl dem parametrisierten Szenario SZp als auch dem konkreten Szenario SZc, handelt es sich jeweils um Szenarien, die insbesondere in einem maschinenlesbaren Code geschrieben sind.In the context of the present invention, a distinction is made between a parameterized scenario SZp and a concrete scenario SZc. In the context of this invention, a parameterized scenario SZp is defined as a scenario in which both the scenario parameters P i and the associated scenario parameter values PV i are not all fixed. A scenario SZ in which the concrete scenario parameters Pc i and the associated concrete scenario parameter values PVc i or value ranges of the concrete scenario parameter values PVc i are defined is referred to as a concrete scenario SZc. Both scenarios, both the parameterized scenario SZp and the concrete scenario SZc, are scenarios that are written in particular in a machine-readable code.
Für die Erstellung von parametrisierten Szenarien SZpi können verschiedene Quellen wie Anforderungsspezifikationen, Expertenwissen, und/oder Messungen im öffentlichen Straßenverkehr oder auf Testgeländen mittels Sensoren verwendet werden. Die verwendeten Sensoren können insbesondere als Radarsysteme mit ein oder mehreren Radarsensoren, LIDAR-Systeme zur optischen Abstands- und Geschwindigkeitsmessung, bildaufnehmende 2D/3D-Kameras im sichtbaren, IR- und/oder UV-Bereich, und/oder GPS-Systeme ausgebildet sein. Des Weiteren können Beschleunigungssensoren, Geschwindigkeitssensoren, kapazitive Sensoren, induktive Sensoren, Spannungssensoren, Drehmomentsensoren, Drehzahlsensoren, Niederschlagssensoren und/oder Temperatursensoren, etc. verwendet werden. So kann mittels einer Softwareapplikation aus aufgenommenen Daten an einem bestimmten geographischen Ort ein jeweils passendes parametrisiertes Szenario SZpi. abgeleitet werden. Die Softwareapplikation verwendet insbesondere Algorithmen der künstlichen Intelligenz zur Identifikation der parametrisierten Szenarien SZpi. Bei den Algorithmen der künstlichen Intelligenz kann es sich insbesondere um Encoder und Decoder mit neuronalen Netzwerken handeln.Various sources such as requirement specifications, expert knowledge, and/or measurements in public traffic or on test sites using sensors can be used to create parameterized scenarios SZp i . The sensors used can in particular be designed as radar systems with one or more radar sensors, LIDAR systems for optical distance and speed measurement, image-recording 2D/3D cameras in the visible, IR and/or UV range, and/or GPS systems. Furthermore, acceleration sensors, speed sensors, capacitive sensors, inductive sensors, voltage sensors, torque sensors, speed sensors, precipitation sensors and/or temperature sensors, etc. can be used. Using a software application, a suitable parameterized scenario SZp i can be created from recorded data at a specific geographical location. be derived. The software application uses artificial intelligence algorithms in particular to identify the parameterized scenarios SZp i . The artificial intelligence algorithms can in particular be encoders and decoders with neural networks.
Ein neuronales Netzwerk besteht aus Neuronen, die in mehreren Schichten angeordnet und unterschiedlich miteinander verbunden sind. Ein Neuron ist in der Lage, an seinem Eingang Informationen von außerhalb oder von einem anderen Neuron entgegenzunehmen, die Information in einer bestimmten Art zu bewerten und sie in veränderter Form am Neuronen-Ausgang an ein weiteres Neuron weiterzuleiten oder als Endergebnis auszugeben. Hidden-Neuronen sind zwischen den Input-Neuronen und Output-Neuronen angeordnet. Je nach Netzwerktyp können mehrere Schichten von Hidden-Neuronen vorhanden sein. Sie sorgen für die Weiterleitung und Verarbeitung der Informationen. Output-Neuronen liefern schließlich ein Ergebnis und geben dieses an die Außenwelt aus. Neuronale Netzwerke lassen sich durch unbeaufsichtigtes oder überwachtes Lernen trainieren.A neural network consists of neurons arranged in several layers and connected to each other in different ways. A neuron is able to receive information at its input outside or from another neuron, evaluate the information in a certain way and forward it in a modified form at the neuron output to another neuron or output it as the end result. Hidden neurons are located between the input neurons and output neurons. Depending on the network type, there may be multiple layers of hidden neurons. They ensure the forwarding and processing of the information. Output neurons ultimately deliver a result and output it to the outside world. Neural networks can be trained through unsupervised or supervised learning.
Durch die unterschiedliche Anordnung und Verknüpfung der Neuronen entstehen verschiedene Typen von neuronalen Netzwerken wie insbesondere ein vorwärtsgerichtetes Netzwerk (engl. Feedforward Neural Network, FNN), ein rückgekoppeltes Netzwerk (engl. Recurrent Neural Network, RNN) oder ein gefaltetes neuronales Netzwerk (engl. Convolutional Neural Network, CNN). Ein gefaltetes neuronales Netzwerk besitzt mehrere Faltungsschichten und ist für maschinelles Lernen und Anwendungen im Bereich der Mustererkennung und Bilderkennung sehr gut geeignet. Da ein großer Teil der von den Sensoren aufgenommenen Daten als Bilder vorliegen, werden insbesondere gefaltete neuronale Netzwerke (CNN) verwendet.The different arrangement and connection of the neurons creates different types of neural networks, such as in particular a feedforward neural network (FNN), a feedback network (recurrent neural network, RNN) or a folded neural network (convolutional Neural Network, CNN). A convolutional neural network has multiple convolution layers and is very suitable for machine learning and applications in the field of pattern recognition and image recognition. Since a large part of the data recorded by the sensors is available as images, convolutional neural networks (CNN) are used in particular.
Diese aus verschiedenen Datenquellen generierten parametrisierten Szenarien SZpi sind in der Szenariendatenbank 200 gespeichert. In der Szenariendatenbank 200 können darüber hinaus Szenarioparameter Pi, Szenarioparameterwerte PVi, konkrete Szenarien SZci, konkrete Szenarioparameter Pci, konkrete Szenarioparameterwerte PVci sowie weitere Informationen gespeichert sein.These parameterized scenarios SZp i generated from various data sources are stored in the
Der Testagent 350 des Testfallmoduls 300 erstellt mittels einer Softwareapplikation durch Auswahl von passenden parametrisierten Szenarien SZpi und konkreten Szenarioparametern Pci sowie konkreten Szenarioparameterwerte PVci und gegebenenfalls weiteren Informationen eine Mehrzahl von Testfällen Ti für eine oder mehrere Fahraufgaben. Die jeweilige Fahraufgabe wird vor dem Starten der Simulation formuliert, beispielsweise von einem Experten wie einem Ingenieur. Es kann aber auch vorgesehen sein, die Fahraufgabe von einer Softwareapplikation vorgegeben wird. Eine beispielhafte Fahraufgabe ist ein Überholmanöver auf einer Autobahn, das auch als Cut-In-Manöver bezeichnet wird.The
Ein solches Cut-In-Szenario kann durch die Geschwindigkeit vego des Ego-Fahrzeugs, die Geschwindigkeit vtarget des Target-Fahrzeugs, eine relative Geschwindigkeit vrel zwischen den beiden Fahrzeugen, die räumliche Distanz dcutin zwischen den beiden Fahrzeugen und die räumliche Länge lcutin des Überholmanövers beschrieben werden. Die Geschwindigkeit von einem oder beiden Fahrzeuge kann sich zudem während des Überholmanövers durch einen Beschleunigungs- oder Abbremsvorgang ändern. Dies gilt auch für die räumliche Distanz dcutin zwischen den beiden Fahrzeugen.Such a cut-in scenario can be represented by the speed v ego of the ego vehicle, the speed v target of the target vehicle, a relative speed v rel between the two vehicles, the spatial distance d cutin between the two vehicles and the spatial length l cutin of the overtaking maneuver can be described. The speed of one or both vehicles can also change during the overtaking maneuver by accelerating or braking. This also applies to the spatial distance d cutin between the two vehicles.
In der folgenden Tabelle sind mögliche Szenarioparameter Pi und Szenarioparameterwerte PVi eines Cut-In-Szenarios dargestellt:
Für die Auswahl und die Gestaltung der Testfälle Ti ist eine Teststrategie vorgesehen, die vorgibt, wie der Testagent 350 die Testfälle Ti erstellt. Für die Festlegung der Teststrategie können verschiedene Berechnungsverfahren und Algorithmen, insbesondere Algorithmen der künstlichen Intelligenz vorgesehen sein. So können Algorithmen und Berechnungsverfahren wie Mittelwerte, Minimal- und Maximalwerte, Lookup Tabellen, Modelle zu Erwartungswerten, lineare Regressionsverfahren, Gauß-Prozesse, Fast Fourier Transformationen, Integral- und Differentialrechnungen, Markov-Verfahren, Wahrscheinlichkeitsverfahren wie Monte Carlo-Verfahren, Temporal Difference Learning, aber auch erweiterte Kalman-Filter, radiale Basisfunktionen, Datenfelder, konvergente neuronale Netzwerke, tiefe neuronale Netzwerke, und/oder rückgekoppelte neuronale Netzwerke verwendet werden, mit denen eine Anpassung der Strategie insbesondere durch Iterationsverfahren möglich ist.For the selection and design of the test cases T i , a test strategy is provided which specifies how the
Die Teststrategie des Testagenten 350 entscheidet somit über die Konfiguration der Testfälle Ti durch die Auswahl von passenden parametrisierten Szenarien SZpi und konkreten Szenarioparametern Pci sowie gegebenenfalls weiteren Parametern. Die verwendete Teststrategie wird durch den Zweck der Simulation vorgegeben, d.h. welche Erkenntnisse über das Verhalten eines ADAS/ADS-Systems bzw. einer bestimmten Fahrfunktion bei der Durchführung der festgelegten Fahraufgabe durch eine Simulation gewonnen werden sollen.The test strategy of the
Die erforderlichen Informationen für die Erstellung der Testfälle Ti entnimmt der Testagent 350 der Szenariendatenbank 200 sowie gegebenenfalls zumindest einer weitere Datenbank 750. Für das Cut-In-Szenario können durch Variation der möglichen Szenarioparameter Pi und Szenarioparameterwerte PVi eine Vielzahl an konkreten Szenarien SZci generiert werden. Insbesondere können die Szenarioparameterwerte PVi sukzessive mit einem festgelegten Wert geändert werden, beispielsweise für den Parameter „Geschwindigkeit“ jeweils um 10 km/h in einem Wertebereich von 40 km/h bis 120 km/h. Diese konkreten Szenarien SZci stellen mögliche Testfälle Ti dar. Bei einem Testfall Ti handelt es sich somit um ein relevantes konkretes Szenario SZc durch die Festlegung von konkreten Szenarioparametern Pci und möglichen weiteren Parametern. Insbesondere sollten die von dem Testagenten 350 erstellten relevanten Testfälle Ti die in der „Operational Design Domain“ (ODD) festgelegten relevanten Verkehrssituationen für eine Fahraufgabe umfassen, die von einem ADAS/ADS-System und/oder einer Fahrfunktionen beherrscht werden müssen.The
Die auf diese Weise bestimmten Testfälle Ti speichert der Testagent 350 in einer Testdatenbank 370. Die Daten für einen Testfall Ti können eine Test-Identifikationsnummer (Test-ID), einen Benutzernamen, eine Erstellungszeit und die Bezeichnung für das ausgewählte parametrisierte Szenario SZpi enthalten. Des Weiteren werden diejenigen konkreten Szenarioparameter Pci.gespeichert, die das parametrisierte Szenario SZpi in ein konkretes Szenario SZci transformieren. Darüber hinaus können Kalibrierungsparameter und weitere Daten wie Leistungsindikatoren (KPls) hinsichtlich der Bewertung der Performance der jeweiligen Fahrassistenzfunktion bei der Simulation sowie Bewertungsindikatoren für die Bewertung der durchgeführten Simulation gespeichert werden. Des Weiteren können Informationen zum Status der Simulation wie „durchgeführt oder nicht durchgeführt“ einem Testfall Ti zugeordnet werden. Zusätzlich können weitere Textnachrichten, Videosequenzen und oder Audiosequenzen, etc. mit weiteren Informationen gespeichert werden. Insgesamt können somit alle relevanten Informationen zu einem Testfall Ti in der Testdatenbank 370 gespeichert werden.The
Für die Durchführung einer Simulation des Verhaltens des ADAS/ADS-Systems für eine bestimmte Fahraufgabe übergibt der Testagent 350 einen Testfall Ti oder mehrere Testfälle Ti an das Simulationsmodul 400. Zudem kann das Simulationsmodul 400 weitere Daten aus zumindest einer weiteren Datenbank 750 abrufen, um die Simulation durchführen zu können.To carry out a simulation of the behavior of the ADAS/ADS system for a specific driving task, the
Insbesondere sind in der Datenbank 750 Daten in Form von Bildern, Graphiken, Zeitreihen, Kenngrößen, etc. gespeichert. So können beispielsweise Zielgrößen und Zielwerte in der Datenbank 750 abgelegt sein, die einen Sicherheitsstandard für die Simulation definieren. Des Weiteren können Daten über das Straßennetz mit Straßenspezifikationen wie beispielsweise Fahrspuren und Brücken, die Straßeninfrastruktur wie beispielsweise den Straßenbelag, die Randbebauung, die Straßenführung, länderspezifische Eigenschaften, Wetterverhältnisse, etc. vorgesehen sein. Die Datenbank 750 kann ebenfalls in der Cloud-Computing-Infrastruktur 700 integriert sein.In particular, 750 pieces of data in the form of images, graphics, time series, parameters, etc. are stored in the database. For example, target variables and target values can be stored in the
Das Simulationsmodul 400 erstellt aus einem Testfall Ti eine Simulationsumgebung für die Simulation des Verhaltens eines ADAS/ADS-Systems bzw. einer Fahrfunktion für eine festgelegte Fahraufgabe. Hierzu umfasst das Simulationsmodul 400 eine Softwareapplikation 450, die Berechnungsverfahren und/oder Algorithmen der künstlichen Intelligenz wie insbesondere neuronale Netzwerke verwendet.The
Die Qualität der Simulationsergebnisse 470 hängt dabei von der Güte der Szenariobeschreibung und der Wahl eines geeigneten Testfalls Ti ab. Um diese Qualität bewerten zu können, werden die durch die Simulation erzielten Simulationsergebnisse 470 an das Bewertungsmodul 500 zur Berechnung von Bewertungsergebnissen 570 weitergeleitet. Das Bewertungsmodul 500 umfasst hierzu eine Softwareapplikation 550, die die Simulationsergebnisse 470 hinsichtlich der Leistungs- und Funktionsfähigkeit von ein oder mehreren Funktionen bzw. der Gesamtperformance eines Fahrerassistenzsystems (ADAS) bzw. eines automatisierten Fahrsystems (ADS) insbesondere in Form von Leistungsindikatoren (KPls) bewertet. Zudem wird die Qualität des durchgeführten Simulationsverfahrens bewertet, insbesondere in Form von Simulationsqualitätskriterien (SQCs). Die Softwareapplikation 550 verwendet Berechnungsverfahren und/oder Algorithmen der künstlichen Intelligenz wie insbesondere neuronale Netzwerke für die Erstellung der Bewertungsergebnisse 570.The quality of the simulation results 470 depends on the quality of the scenario description and the choice of a suitable test case T i . In order to be able to evaluate this quality, the simulation results 470 achieved by the simulation are forwarded to the
KPIs dienen zur Beschreibung der Leistung eines zu testenden ADAS/ADS-Systems, wobei für verschiedene Bewertungskategorien wie Komfort, Sicherheit, Natürlichkeit des Fahrens und Effizienz unterschiedliche KPIs festgelegt werden. KPIs are used to describe the performance of an ADAS/ADS system under test, with different KPIs being set for different evaluation categories such as comfort, safety, naturalness of driving and efficiency.
Zusätzlich können weitere KPIs implementiert werden, um die korrekte Funktionalität des zu testenden ADAS/ADS-Systems zu verifizieren. Ein Beispiel für ein KPI ist die Bewertung einer minimalen Distanz zu anderem Fahrzeug oder einer mittleren Beschleunigung bei einem Verzögerungsszenario.Additionally, additional KPIs can be implemented to verify the correct functionality of the ADAS/ADS system under test. An example of a KPI is the evaluation of a minimum distance to another vehicle or an average acceleration in a deceleration scenario.
Zusätzlich zu den KPIs werden SQCs verwendet, um die Qualität der Simulation zu bewerten. Beispielsweise können andere Verkehrsteilnehmer durch modellierte Simulationsvertreter abgebildet werden, die in Abhängigkeit von den Reaktionen des zu testenden ADAS/ADS-Systems unterschiedliche Entscheidungen treffen. Aus diesem Grund muss in einer Bewertung überprüft werden, ob das simulierte Szenario mit der Szenariobeschreibung des Testfalls Ti übereinstimmt. Zu diesem Zweck werden für die SQCs Metriken definiert, die eine Rückmeldung über die korrekte Ausführung einer Szenariosimulation geben. So kann die Art der Durchführung eines Überholmanövers mittels eines SQC bewertet werden, beispielsweise hinsichtlich der Frage, ob eine Kollision vermieden werden konnte. Die KPIs und SQCs können durch Zahlenwerte aber auch durch boolesche Werte dargestellt werden.In addition to KPIs, SQCs are used to evaluate the quality of the simulation. For example, other road users can be represented by modeled simulation representatives who make different decisions depending on the reactions of the ADAS/ADS system being tested. For this reason, an evaluation must be carried out to check whether the simulated scenario matches the scenario description of the test case T i . For this purpose, metrics are defined for the SQCs that provide feedback on the correct execution of a scenario simulation. The manner in which an overtaking maneuver was carried out can be evaluated using an SQC, for example with regard to the question of whether a collision could be avoided. The KPIs and SQCs can be represented by numerical values but also by Boolean values.
Dabei können sowohl für die KPIs als auch für SQCs direkte und indirekte Bewertungsmetriken verwendet werden. Direkte Bewertungsmetriken enthalten Daten direkt aus simulierten Messdaten. Indirekte Bewertungsmetriken verwenden insbesondere Szenarioparameter als Datenquelle. Ein Beispiel für die Anwendung indirekter Bewertungsmetriken ist die Implementierung von Simulationsmodellen, die das subjektive Empfinden eines Fahrers bei der Durchführung einer Fahrassistenzfunktion eines ADAS/ADS-Systems quantifizieren und bewerten. Auf Basis der KPIs und SQCs lassen sich somit die Ergebnisse eines simulierten Testfalls Ti durch Zahlenwerte bzw. boolesche Werte darstellen.Direct and indirect evaluation metrics can be used for both the KPIs and SQCs. Direct assessment metrics contain data directly from simulated measurement data. Indirect evaluation metrics in particular use scenario parameters as a data source. An example of the application of indirect evaluation metrics is the implementation of simulation models that quantify and evaluate the subjective feeling of a driver when performing a driving assistance function of an ADAS/ADS system. Based on the KPIs and SQCs, the results of a simulated test case T i can be represented by numerical values or Boolean values.
Erfindungsgemäß wird zudem ein Testfall Ti hinsichtlich seiner Kritikalität in Abhängigkeit von verschiedenen Parametern mittels eines Kritikalitätsindex 590 bewertet. Unter Kritikalität ist die Relevanz eines Testfalls Ti hinsichtlich der Beurteilung der Leistungs- und Funktionsfähigkeit eines ADAS/ADS-Systems bzw. einer Fahrfunktion bezogen auf eine bestimmte Fahraufgabe zu verstehen. Insbesondere wird die Kritikalität eines Testfalls Ti in Bezug auf die Variation von Szenarioparameterwerten PVi eines Szenarioparameters Pi bewertet.According to the invention, a test case T i is also evaluated with regard to its criticality depending on various parameters using a
In
Da sich das Ego-Fahrzeug in diesem Fall mehr als eine Sekunde in der Nähe des Target-Fahrzeug aufhält, wird der Testfall als kritisch bewertet.Since the ego vehicle stays near the target vehicle for more than a second in this case, the test case is rated as critical.
Diejenigen Testfälle Tcutin, für die die Mindestzeitlücke weniger als eine Sekunde betragen, werden hingegen als unkritisch eingestuft.However, those test cases T cutin for which the minimum time gap is less than one second are classified as non-critical.
Aus Gründen der Übersichtlichkeit sind in der
Für die Transformation der konkreten Szenarioparameter Pci und Testfälle Ti in Daten-Repräsentationen in Form eines oder mehrerer Vektoren in dem latenten Vektorraum umfasst die Softwareapplikation 550 zumindest einen Encoder, um die Szenarioparameter Pci derart zu codieren, dass die Szenarioparameter Pci als eine Daten-Repräsentation in Form eines oder mehrerer Vektoren in einem latenten Vektorraum vorliegen. Des Weiteren ist ein zweiter Encoder vorgesehen, mit dem die Softwareapplikation 550 die Testfälle Ti derart codiert, dass sie ebenfalls als eine Daten-Repräsentation in Form eines oder mehrerer Vektoren in dem latenten Vektorraum vorliegen. Bei dem latenten Vektorraum handelt es sich somit um einen mehrdimensionalen Vektorraum mit einer Dimension, die der Repräsentation der konkreten Szenarioparameter Pci und der Testfälle Ti entspricht.For the transformation of the concrete scenario parameters Pc i and test cases T i into data representations in the form of one or more vectors in the latent vector space, the
Die Encoder der Softwareapplikation 550 sind insbesondere als tiefe Encoder ausgebildet, die tiefe neuronale Netze und insbesondere für gekoppelte neuronale Netze umfassen, die unterschiedliche Strukturen aufweisen können. Darüber hinaus können die Encoder weitere Strukturen und Algorithmen wie genetische Algorithmen und Lernverstärkungsagenten umfassen, um eine effiziente und präzise Klassifikation und Extraktion von Merkmalen der konkreten Szenarioparameter Pci durchzuführen, die die Basis für die Erstellung der Daten-Repräsentationen bildet.The encoders of the
Der Vektorraum wird somit mit jeder weiteren Simulation weiterentwickelt, wobei sich seine Dimension ständig verändern kann. Da für eine Vielzahl der Simulationen eine Codierung der jeweiligen konkreten Szenarioparameter Pci und der Testfälle Ti durchgeführt wird, entsteht sukzessive in einem kontinuierlichen Lernmodus durch neue Simulationen ein latenter Vektorraum mit einer Vielzahl von konkreten Szenarioparameter Pci und Testfällen Ti.The vector space is therefore further developed with each subsequent simulation, and its dimensions can constantly change. Since the respective concrete scenario parameters Pc i and the test cases T i are encoded for a large number of simulations, a latent vector space with a large number of concrete scenario parameters Pc i and test cases T i is gradually created in a continuous learning mode through new simulations.
In einer weiteren Ausführungsform kann vorgesehen sein, dass die Bewertung der Kritikalität von der Performance der SQCs abhängt. So kann vorgesehen sein, dass die Softwareapplikation 550 des Bewertungsmoduls 500 eine Bewertung der Kritikalität nur dann durchführt, wenn auch eine Erfüllung der jeweils definierten SQCs durch den Testfall Ti.vorliegt.In a further embodiment it can be provided that the assessment of the criticality depends on the performance of the SQCs. It can thus be provided that the
Die Bewertungsergebnisse 550 in Form von Leistungsindikatoren (KPIs), Simulationsqualitätskriterien (SQCs) und dem Kritikalitätsindex 590 werden an das Testmodul 300 wieder zurückgegeben. Der Testagent 350 kann die parametrisierten Szenarien SZpi und die konkreten Szenarioparameter Pci in der Szenariendatenbank 200 aufgrund der Bewertungsergebnisse mit Labeln wie Gewichten oder zur Kennzeichnung der Kritikalität versehen. Insbesondere kann die Teststrategie mittels der durch die Bewertungsergebnisse 550 gelabelten Daten in der Szenariendatenbank 200 angepasst werden. Für einen neuen Simulationszyklus in dem Simulationsmodul 400 können nun beispielsweise die als kritisch markierten Testfälle Ti verwendet werden, um das Verhalten eines ADAS/ADS-Systems und/oder einer Fahrfunktion in diesen als kritisch betrachteten Verkehrsszenarien simulieren zu können.The evaluation results 550 in the form of performance indicators (KPIs), simulation quality criteria (SQCs) and the
In
In einem Schritt S10 wird zumindest ein Testfall Ti von einem Testagenten 350 durch Auswählen von zumindest einem parametrisierten Szenario SZpi und konkreten Szenarioparametern Pci und konkreten Szenarioparameterwerten PVci aus einer Szenariendatenbank 200 mittels einer Teststrategie von einem Testagenten 350 für die Fahraufgabe generiert.In a step S10, at least one test case T i is generated by a
In einem Schritt S20 wird eine Simulationsumgebung mit dem ausgewählten Testfall Ti generiert und eine Simulation des Verhaltens des Fahrerassistenzsystems (ADAS) und/oder eines automatisierten Fahrsystems (ADS) und/oder einer Fahrfunktion in der Simulationsumgebung von einem Simulationsmodul 400 zur Bestimmung von Simulationsergebnissen 450 durchgeführt.In a step S20, a simulation environment with the selected test case T i is generated and a simulation of the behavior of the driver assistance system (ADAS) and/or an automated driving system (ADS) and/or a driving function in the simulation environment by a
In einem Schritt S30 werden die Simulationsergebnisse 450 durch ein Bewertungsmodul 500 zur Bestimmung eines Kritikalitätsindex 590 für den Testfall Ti.bewertet.In a step S30, the simulation results 450 are evaluated by an
Durch die vorliegende Erfindung können aus einem Pool von zur Verfügung stehenden Testfällen für die Erstellung einer Simulationsumgebung für das Testen und Trainieren eines ADAS/ADS-Systems und/oder einer Fahrfunktion diejenigen kritischen Testfälle ausgewählt werden, die für die Erprobung und Absicherung eines ADAS/ADS-Systems und/oder einer Fahrfunktion besonderes relevant sind. Zudem ergibt sich aus der Bewertung der Testfälle ein Grenzbereich zwischen kritischen und nichtkritischen Testfällen. Diese im Grenzbereich liegenden Testfälle sind für das reale Testen eines ADAS/ADS-Systems besonders interessant, da hierdurch die Leistungsfähigkeit eines ADAS/ADS-Systems präzise und nachvollziehbar bewertet werden kann und daraus mögliche Maßnahmen zur Verbesserung abgeleitet werden können. Insbesondere kann untersucht werden, ob dieser Grenzbereich mit den während der Entwicklung eines ADAS/ADS-Systems beispielsweise in einem Lastenheft definierten Systemgrenzen kompatibel ist.The present invention makes it possible to select from a pool of available test cases for creating a simulation environment for testing and training an ADAS/ADS system and/or a driving function those critical test cases that are necessary for testing and securing an ADAS/ADS system and/or a driving function are particularly relevant. In addition, the evaluation of the test cases results in a border area between critical and non-critical test cases. These test cases, which lie in the borderline range, are particularly interesting for the real testing of an ADAS/ADS system, as they allow the performance of an ADAS/ADS system to be evaluated precisely and comprehensibly and possible measures for improvement can be derived from this. In particular, it can be examined whether this limit area is compatible with the system limits defined during the development of an ADAS/ADS system, for example in a requirements specification.
Durch die Auswahl von kritischen Testdatensätzen kann somit die Abschätzung der Sicherheit und Funktionsfähigkeit eines Fahrassistenzsystems (ADAS) und/oder eines automatisierten Fahrsystems (ADS) und/oder einer Fahrfunktion für eine bestimmte Fahraufgabe deutlich verbessert werden. Hierdurch können Ressourcen eingespart werden, da sowohl das reale Abfahren von Teststrecken mit Standardverkehrssituationen als auch mit spezifischen Corner-Cases reduziert werden kann.By selecting critical test data sets, the assessment of the safety and functionality of a driving assistance system (ADAS) and/or an automated driving system (ADS) and/or a driving function for a specific driving task can be significantly improved. This allows resources to be saved, as the actual driving of test routes with standard traffic situations as well as with specific corner cases can be reduced.
BezugszeichenReference symbols
- 100100
- Systemsystem
- 200200
- SzenariendatenbankScenario database
- 300300
- TestmodulTest module
- 350350
- TestagentTest agent
- 370370
- TestdatenbankTest database
- 400400
- SimulationsmodulSimulation module
- 450450
- SoftwareapplikationSoftware application
- 470470
- SimulationsergebnisseSimulation results
- 500500
- BewertungsmodulAssessment module
- 550550
- SoftwareapplikationSoftware application
- 570570
- BewertungsergebnisseAssessment results
- 590590
- KritikalitätsindexCriticality index
- 700700
- Cloud-Computing-InfrastrukturCloud computing infrastructure
- 750750
- DatenbankDatabase
- 10001000
- ComputerprogrammproduktComputer program product
- 10501050
- ProgrammcodeProgram code
ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN THE DESCRIPTION
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of documents listed by the applicant was generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.
Zitierte PatentliteraturCited patent literature
- DE 102017009971 A1 [0006]DE 102017009971 A1 [0006]
- DE 102019124018 A1 [0007]DE 102019124018 A1 [0007]
- DE 102019217533 A1 [0008]DE 102019217533 A1 [0008]
- DE 102020005507 A1 [0009]DE 102020005507 A1 [0009]
Claims (15)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102022116564.7A DE102022116564A1 (en) | 2022-07-04 | 2022-07-04 | Method, system and computer program product for evaluating test cases for testing and training a driver assistance system (ADAS) and/or an automated driving system (ADS) |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102022116564.7A DE102022116564A1 (en) | 2022-07-04 | 2022-07-04 | Method, system and computer program product for evaluating test cases for testing and training a driver assistance system (ADAS) and/or an automated driving system (ADS) |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102022116564A1 true DE102022116564A1 (en) | 2024-01-04 |
Family
ID=89167770
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102022116564.7A Ceased DE102022116564A1 (en) | 2022-07-04 | 2022-07-04 | Method, system and computer program product for evaluating test cases for testing and training a driver assistance system (ADAS) and/or an automated driving system (ADS) |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102022116564A1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102017009971A1 (en) | 2017-10-26 | 2019-05-02 | Daimler Ag | A method of testing a lane keeping assistance system for a vehicle |
DE102020005507A1 (en) | 2020-09-09 | 2021-01-07 | Daimler Ag | Method for testing an automated driving function |
DE102019124018A1 (en) | 2019-09-06 | 2021-03-11 | Iav Gmbh Ingenieurgesellschaft Auto Und Verkehr | Method for optimizing tests of control systems for automated vehicle dynamics systems |
DE102019217533A1 (en) | 2019-11-13 | 2021-05-20 | Zf Friedrichshafen Ag | Method for estimating a coverage of the area of traffic scenarios |
-
2022
- 2022-07-04 DE DE102022116564.7A patent/DE102022116564A1/en not_active Ceased
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102017009971A1 (en) | 2017-10-26 | 2019-05-02 | Daimler Ag | A method of testing a lane keeping assistance system for a vehicle |
DE102019124018A1 (en) | 2019-09-06 | 2021-03-11 | Iav Gmbh Ingenieurgesellschaft Auto Und Verkehr | Method for optimizing tests of control systems for automated vehicle dynamics systems |
DE102019217533A1 (en) | 2019-11-13 | 2021-05-20 | Zf Friedrichshafen Ag | Method for estimating a coverage of the area of traffic scenarios |
DE102020005507A1 (en) | 2020-09-09 | 2021-01-07 | Daimler Ag | Method for testing an automated driving function |
Non-Patent Citations (4)
Title |
---|
GRUNER, Richard [et al.]: Spatiotemporal representation of driving scenarios and classification using neural networks. In: 2017 IEEE Intelligent Vehicles Symposium (IV). IEEE, 2017. S. 1782-1788. |
NEUROHR, Christian [et al.]: Fundamental considerations around scenario-based testing for automated driving. In: 2020 IEEE intelligent vehicles symposium (IV). IEEE, 2020. S. 121-127. |
PEGASUS, Projekt zur Etablierung von generell akzeptierten Gütekriterien, Werkzeugen und Methoden sowie Szenarien und Situationen zur Freigabe hochautomatisierter Fahrfunktionen. Schlussbericht für das Gesamtprojekt, 2020. URL: https://www.pegasusprojekt.de/files/tmpl/pdf/PEGASUS_Abschlussbericht_Gesamtprojekt.PDF[abgerufen am 04.04.2023]. |
RIEDMAIER, Stefan [et al.]: Survey on scenario-based safety assessment of automated vehicles. In: IEEE access, 2020, Vol. 8, S. 87456-87477. |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102007053501A1 (en) | Method for developing and / or testing at least one safety and / or driver assistance system for a motor vehicle and simulation environment | |
DE102022112059B3 (en) | Method, system and computer program product for calibrating and validating a driver assistance system (ADAS) and/or an automated driving system (ADS) | |
DE102018128289A1 (en) | METHOD AND DEVICE FOR AUTONOMOUS SYSTEM PERFORMANCE AND CLASSIFICATION | |
DE102019114577A1 (en) | SYSTEMS, DEVICES AND METHODS FOR EMBEDDED CODING OF CONTEXT-RELATED INFORMATION USING A NEURONAL NETWORK WITH VECTOR SPACE MODELING | |
DE102019124018A1 (en) | Method for optimizing tests of control systems for automated vehicle dynamics systems | |
WO2021058223A1 (en) | Method for applying automated driving functions efficiently and in a simulated manner | |
DE102021128041A1 (en) | IMPROVEMENT OF A VEHICLE NEURAL NETWORK | |
DE102021100149A1 (en) | Computer-implemented method for providing a test history of traffic scenarios to be tested | |
WO2015135806A1 (en) | Method and device for determining intersection parameters | |
DE102020128978A1 (en) | TRAINING DEEP NEURAL NETWORKS WITH SYNTHETIC IMAGES | |
DE102020210962A1 (en) | Computer-implemented method and computer system for generating input parameters for a simulation | |
DE102019208733A1 (en) | Method and generator for generating disturbed input data for a neural network | |
DE102022112060B3 (en) | Scenario database for a method and a system for calibrating and validating a driver assistance system (ADAS) and/or an automated driving system (ADS) | |
DE102019208735B4 (en) | Method for operating a driver assistance system for a vehicle and a driver assistance system for a vehicle | |
DE112020007538T5 (en) | Driving assistance device, learning device, driving assistance method, driving assistance program, learned model creation method, and learned model creation program data carrier | |
DE102020120141A1 (en) | Procedure for optimizing tests of control systems for automated vehicle dynamics systems using probabilistically predicted system responses | |
DE102022102501B3 (en) | Method, system and computer program product for determining an assessment of the functionality of a component of a motor vehicle | |
DE102022108677B3 (en) | Method, system and computer program product for determining objective parameters for predicting a subjective evaluation of a driver assistance system and/or an automated driver assistance function | |
AT524932B1 (en) | Method and system for testing a driver assistance system for a vehicle | |
DE102022107845A1 (en) | Method, system and computer program product for selecting concrete scenarios | |
DE102022116564A1 (en) | Method, system and computer program product for evaluating test cases for testing and training a driver assistance system (ADAS) and/or an automated driving system (ADS) | |
DE102022000849A1 (en) | Method for generating an environment representation for a vehicle | |
DE102021213538A1 (en) | Simulation to validate an automated driving function for a vehicle | |
DE102020214203A1 (en) | Method for determining a lane change intention of another motor vehicle located in the immediate vicinity of a motor vehicle, and assistance system | |
DE102020212921A1 (en) | Method, computer program and device for evaluating a usability of simulation data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R016 | Response to examination communication | ||
R002 | Refusal decision in examination/registration proceedings | ||
R003 | Refusal decision now final |