DE102022004427A1 - Method for selecting a trajectory set from a given training data set - Google Patents
Method for selecting a trajectory set from a given training data set Download PDFInfo
- Publication number
- DE102022004427A1 DE102022004427A1 DE102022004427.7A DE102022004427A DE102022004427A1 DE 102022004427 A1 DE102022004427 A1 DE 102022004427A1 DE 102022004427 A DE102022004427 A DE 102022004427A DE 102022004427 A1 DE102022004427 A1 DE 102022004427A1
- Authority
- DE
- Germany
- Prior art keywords
- trajectory
- metric
- training data
- data set
- trajectories
- 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
- 238000012549 training Methods 0.000 title claims abstract description 58
- 238000000034 method Methods 0.000 title claims abstract description 52
- 239000011159 matrix material Substances 0.000 claims description 18
- 238000013459 approach Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 238000009499 grossing Methods 0.000 description 2
- 238000003064 k means clustering Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 241001136792 Alle Species 0.000 description 1
- 241000501754 Astronotus ocellatus Species 0.000 description 1
- 238000012935 Averaging Methods 0.000 description 1
- 240000002834 Paulownia tomentosa Species 0.000 description 1
- 235000010678 Paulownia tomentosa Nutrition 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/01—Detecting movement of traffic to be counted or controlled
- G08G1/0104—Measuring and analyzing of parameters relative to traffic conditions
- G08G1/0125—Traffic data processing
- G08G1/0133—Traffic data processing for classifying traffic situation
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/16—Anti-collision systems
- G08G1/166—Anti-collision systems for active traffic, e.g. moving vehicles, pedestrians, bikes
Abstract
Die Erfindung betrifft ein Verfahren zur Auswahl eines Trajektoriensets (S) aus einem vorgegebenen Trainingsdatensatz (D), wobei die Auswahl in Abhängigkeit einer Metrik erfolgt und iterativ Trajektorien (Tj) aus dem gesamten Trainingsdatensatz (D) ausgewählt werden, bis zumindest ein Abbruchkriterium erfüllt ist.The invention relates to a method for selecting a trajectory set (S) from a predetermined training data set (D), the selection being made depending on a metric and trajectories (Tj) being iteratively selected from the entire training data set (D) until at least one termination criterion is met .
Description
Die Erfindung betrifft ein Verfahren zur Auswahl eines Trajektoriensets aus einem vorgegebenen Trainingsdatensatz.The invention relates to a method for selecting a trajectory set from a given training data set.
Die Prädiktion von Bewegungen von am Straßenverkehr teilnehmenden Verkehrsteilnehmern, beispielsweise Fahrzeugen, bildet einen essenziellen Bestandteil beim Betrieb automatisiert, beispielsweisie hochautumatgrertöder autonom fahrender Fahrzeuge. Eine zuverlässige und sichere Bewegungsplanung ist nur dann möglich, wenn auch die Prädiktion von hoher Qualität ist.The prediction of movements of road users participating in road traffic, for example vehicles, is an essential part of the operation of automated, for example highly automated, autonomous vehicles. Reliable and safe movement planning is only possible if the prediction is of high quality.
Aus „Tung Phan-Minh, Elena Corina Grigore, Freddy A. Boulton, Oscar Beijbom, Eric M. Wolff: CoverNet: Multimodal Behavior Prediction using Trajectory Sets; arXiv:1911.10298“ ist ein Verfahren zur multimodalen, probabilistischen Trajektorienvorhersage für einen innerstädtischen Verkehr bekannt. Dabei erfolgt die Trajektorienvorhersage mittels einer Klassifizierung über ein Trajektorienset mit verschiedenen Trajektorien. Eine Größe des Trajektoriensets ist durch eine Anzahl unterschiedlicher Fahrmaßnahmen, welche über einen vorgegebenen Vorhersagehorizont ergriffen werden können, begrenzt. Für die Generierung dieses Trajektoriensets wird aus dem Trajektorien- bzw. Trainingsdatensatz jede einzelne Trajektorie betrachtet und berechnet, wie viele andere Trajektorien im Trainingsdatensatz durch diese abgedeckt werden. Ein daraus resultierender Abdeckungsgrad wird dabei durch eine Metrik, die einen manuellen Hyperparameter besitzt, bestimmt. Die Trajektorie, die die meisten anderen Trajektorien des Trainingsdatensatzes abdeckt, wird in das Trajektorienset übernommen. Im Anschluss wird der Vorgang mit allen bisher unabgedeckten Trajektorien fortgeführt. Abgebrochen wird dabei dann, wenn alle Trajektorien abgedeckt sind. Dabei wird für den Abdeckungsgrad ein Hyperparameter verwendet, welcher zumindest indirekt eine vordefinierte Anzahl an Trajektorien bestimmt. Dabei wird die Bestimmung des Trajektoriensets mit einem so genannten „Greedy-Clustering-Algorithmus“ umgesetzt.From “Tung Phan-Minh, Elena Corina Grigore, Freddy A. Boulton, Oscar Beijbom, Eric M. Wolff: CoverNet: Multimodal Behavior Prediction using Trajectory Sets; arXiv:1911.10298” is a method for multimodal, probabilistic trajectory prediction for inner-city traffic. The trajectory prediction is carried out by means of a classification using a trajectory set with different trajectories. The size of the trajectory set is limited by a number of different driving measures that can be taken over a predetermined prediction horizon. To generate this trajectory set, each individual trajectory from the trajectory or training data set is considered and it is calculated how many other trajectories in the training data set are covered by it. The resulting degree of coverage is determined by a metric that has a manual hyperparameter. The trajectory that covers most of the other trajectories in the training data set is included in the trajectory set. The process is then continued with all previously uncovered trajectories. It stops when all trajectories are covered. A hyperparameter is used for the degree of coverage, which at least indirectly determines a predefined number of trajectories. The determination of the trajectory set is implemented using a so-called “greedy clustering algorithm”.
Weiterhin ist aus „Yuning Chai, Benjamin Sapp, Mayank Bansal, Dragomir Anguelov - MultiPath: Multiple Probabilistic Anchor Trajectory Hypotheses for Behavior Prediction; arXiv:1910.05449“ ein Verfahren zur Bewegungsplanung eines autonom fahrenden Fahrzeugs bekannt, bei welchem menschliches Verhalten vorhergesagt wird. Dabei wird ein so genanntes „K-means-Clustering“ dazu verwendet, so genannte Anker-Trajektoriensets zu erstellen. Dabei wird ein quadratischer Abstand zwischen jeweils zwei Trajektorien für eine Clusterbildung verwendet.Furthermore, “Yuning Chai, Benjamin Sapp, Mayank Bansal, Dragomir Anguelov - MultiPath: Multiple Probabilistic Anchor Trajectory Hypotheses for Behavior Prediction; arXiv:1910.05449” is a method for planning the movements of an autonomous vehicle, in which human behavior is predicted. A so-called “K-means clustering” is used to create so-called anchor trajectory sets. A square distance between two trajectories is used to form a cluster.
Der Erfindung liegt die Aufgabe zu Grunde, ein neuartiges Verfahren zur Auswahl eines Trajektoriensets aus einem vorgegebenen Trainingsdatensatz anzugeben.The invention is based on the object of specifying a novel method for selecting a trajectory set from a given training data set.
Die Aufgabe wird erfindungsgemäß gelöst durch ein Verfahren, welches die im Anspruch 1 angegebenen Merkmale aufweist.The object is achieved according to the invention by a method which has the features specified in claim 1.
Vorteilhäfte-Ausgestaltungen rder-Ertndung sind Gegenstand der Unteransprüche.Advantageous configurations of the invention are the subject of the subclaims.
Das Verfahren zur Auswahl eines Trajektoriensets aus einem vorgegebenen Trainingsdatensatz zeichnet sich erfindungsgemäß dadurch aus, dass
- - in einem ersten Verfahrensschritt ein initiales und leeres Trajektorienset angelegt wird,
- - in einem zweiten Verfahrensschritt nacheinander für jedes in dem Trainingsdatensatz vorhandene, aus jeweils zwei Trajektorien des Trainingsdatensatzes bestehende Trajektorienpaar ein Metrikwert gebildet wird, welcher ein Maß angibt, in welchem Umfang eine Trajektorienprädiktion einem Ground-Truth entspricht, und der jeweils gebildete Metrikwert in eine Metrikmatrix eingetragen wird, wobei jedes Element der Metrikmatrix dem jeweiligen Trajektorienpaar zugeordnet ist,
- - in einem dritten Verfahrensschritt ein Metrikspeicher des jeweils aktuellen Trajektoriensets angelegt und mit hohen Werten initialisiert wird, wobei eine Anzahl von in dem Metrikspeicher enthaltenen Elementen einer Anzahl der Trajektorien des Trainingsdatensatzes entspricht,
- - in einem vierten Verfahrensschritt überprüft wird, ob zumindest ein Abbruchkriterium erfüllt ist und
- - bei Vorliegen des zumindest einen Abbruchkriteriums ein vorliegendes Trajektorienset als metrikoptimales Trajektorienset ausgewählt wird und
- - bei Nicht-Vorliegen des zumindest einen Abbruchkriteriums ein fünfter Verfahrensschritt solange wiederholt wird, bis zumindest ein Abbruchkriterium erfüllt ist, und
- - in dem fünften Verfahrensschritt eine nächste optimale Trajektorie aus dem Trainingsdatensatz bestimmt wird, wobei
- - eine temporäre Speicherliste angelegt und initialisiert wird,
- - über alle Trajektorien in dem Trainingsdatensatz iteriert wird und für jede Trajektorie jeweils ein Minimum in dem Metrikspeicher und der Metrikmatrix ermittelt wird,
- - ein Mittelwert aller ermittelten Minima gebildet wird,
- - aus dem Mittelwert ein mittlerer Fehler eines aktuellen Trajektoriensets in Kombination mit einer Trajektorie einer aktuellen Iteration ermittelt wird,
- - ein Eintrag in der temporären Speicherliste bestimmt wird, welcher den geringsten Mittelwert aufweist,
- - der Metrikspeicher durch das ermittelte Minimum des Metrikspeichers und der Metrikmatrix ersetzt wird und
- - die Trajektorie, welcher das ermittelte Minimum zugeordnet ist, in das Trajektorienset aufgenommen wird.
- - in a first process step, an initial and empty trajectory set is created,
- - In a second method step, a metric value is formed successively for each pair of trajectories present in the training data set, each consisting of two trajectories of the training data set, which indicates a measure to which extent a trajectory prediction corresponds to a ground truth, and the metric value formed in each case into a metric matrix is entered, whereby each element of the metric matrix is assigned to the respective pair of trajectories,
- - in a third method step, a metric memory of the current trajectory set is created and initialized with high values, a number of elements contained in the metric memory corresponding to a number of trajectories of the training data set,
- - In a fourth step of the process, it is checked whether at least one termination criterion is met and
- - if the at least one termination criterion is present, an existing trajectory set is selected as a metric-optimal trajectory set and
- - If the at least one termination criterion is not present, a fifth process step is repeated until at least one termination criterion is met, and
- - In the fifth method step, a next optimal trajectory is determined from the training data set, where
- - a temporary storage list is created and initialized,
- - iterating over all trajectories in the training data set and determining a minimum in the metric memory and the metric matrix for each trajectory,
- - an average of all determined minima is formed,
- - a mean error of a current trajectory set is determined from the average in combination with a trajectory of a current iteration,
- - an entry is determined in the temporary storage list which has the lowest average value,
- - the metric memory is replaced by the determined minimum of the metric memory and the metric matrix and
- - the trajectory to which the determined minimum is assigned is included in the trajectory set.
Das vorliegenden Verfahren ermöglicht in besonders vorteilhafter Weise eine Bestimmung und Auswahl eines optimalen Trajektoriensets basierend auf einer datentechnischen Verarbeitung, insbesondere durch Vergleichen, Mittelwertbildung und/oder Zwischenspeicherung, so dass eine Verwendung eines suboptimalen „Greedy-Clustering-Algorithmus“ entfallen kann und keine Hyperparameter, beispielsweise ein Abdeckungsgrad, erforderlich sind. Auch kann eine Verwendung des „K-means-Clustering“, welches sich ebenfalls nicht daran orientiert, nachgelagerten Prädiktionsmodellen das Erreichen einer möglichst guten Prädiktionsgüte zu ermöglichen, entfallen. Die Metrik für die Generierung des Trajektoriensets kann dabei beliebig ausgewählt werden. Beispielsweise kann diese als Average Displacement Error, kurz ADE, gewählt werden. Der ADE kann auch zur Evaluierung einer Prädiktionsgüte von Trajektorienprädiktionsmodellen verwendet werden. Somit richtet sich bereits die Generierung des Trajektoriensets nach der Optimierung der Prädiktionsgüte aus.The present method enables, in a particularly advantageous manner, a determination and selection of an optimal trajectory set based on data processing, in particular through comparison, averaging and/or buffering, so that the use of a suboptimal "greedy clustering algorithm" can be omitted and no hyperparameters, for example a degree of coverage, are required. The use of “K-means clustering”, which is also not aimed at enabling downstream prediction models to achieve the best possible prediction quality, can also be omitted. The metric for generating the trajectory set can be selected arbitrarily. For example, this can be selected as Average Displacement Error, ADE for short. The ADE can also be used to evaluate the prediction quality of trajectory prediction models. The generation of the trajectory set is therefore based on the optimization of the prediction quality.
Das heißt, das Verfahren ermöglicht die Generierung eines fixen Trajektoriensets, welches sich unmittelbar an einer beliebigen oder an einer gegebenenfalls gewichteten Kombination aus mehreren Metriken zusammensetzt. Hierbei können auch Metriken gewählt werden, die direkt zur Messung der Prädiktionsgüte eingesetzt werden. Dies bedeutet, dass bereits die Generierung des Trajektoriensets für das Erreichen einer möglichst guten Prädiktionsgüte ausgelegt wird. Somit ist es mittels des Verfahrens möglich, ein optimiertes Trajektorienset auszuwählen, mittels welchem ein Modell zur Bewegungsprädiktion eines Verkehrsteilnehmers trainiert wird.This means that the method enables the generation of a fixed set of trajectories, which is based directly on any or an optionally weighted combination of several metrics. Metrics can also be selected that are used directly to measure the prediction quality. This means that the generation of the trajectory set is already designed to achieve the best possible prediction quality. The method therefore makes it possible to select an optimized trajectory set by means of which a model for predicting the movement of a road user is trained.
Ausführungsbeispiele der Erfindung werden im Folgenden anhand von Zeichnungen näher erläutert.Exemplary embodiments of the invention are explained in more detail below with reference to drawings.
Dabei zeigen:
-
1 schematisch ein Trajektorienset mit einer Vielzahl von Trajektorien und -
2 schematisch einen Ablauf eines Verfahrens zur Auswahl eines Trajektoriensets aus einem vorgegebenen Trainingsdatensatz.
-
1 schematically a trajectory set with a variety of trajectories and -
2 schematically a sequence of a method for selecting a trajectory set from a given training data set.
Einander entsprechende Teile sind in allen Figuren mit den gleichen Bezugszeichen versehen.Corresponding parts are provided with the same reference numbers in all figures.
In
Die Prädiktion von Bewegungen von am Straßenverkehr teilnehmenden Verkehrsteilnehmern, beispielsweise Fahrzeugen, bildet einen essenziellen Bestandteil beim Betrieb automatisiert, beispielsweise hochautomatisiert oder autonom fahrender Fahrzeuge. Eine zuverlässige und sichere Bewegungsplanung ist nur dann möglich, wenn auch die Prädiktion von hoher Qualität ist.The prediction of movements of road users participating in road traffic, for example vehicles, is an essential part of the operation of automated, for example highly automated or autonomous vehicles. Reliable and safe movement planning is only possible if the prediction is of high quality.
Zu einer solchen Prädiktion existieren lernbasierte Methoden zur Trajektorienprädiktion. Eine Art solcher lernbasierten Prädiktionsansätze sind setbasierte Prädiktionsansätze mit fixem oder dynamischem Trajektorienset S.There are learning-based methods for trajectory prediction for such a prediction. One type of such learning-based prediction approaches are set-based prediction approaches with a fixed or dynamic trajectory set S.
Bei klassischen Regressionsansätzen wird mittels eines Trainingsdatensatzes D für die Trajektorienprädiktion gelernt, wie eine Trajektorie Tj der Zukunft aussehen wird. Eine direkte Ausgabe des lernbasierten Modells sind dabei Koordinaten x, y über mehrere Zeitschritte hinweg, meist in einem lokalen Koordinatensystem. Um eine Multimodalität zu erreichen, also einen Verkehrsteilnehmer, auch als Agent bezeichnet, mit mehreren möglichen Zukünften prädizieren zu können, muss bereits vor dem Training des Modells eine Anzahl von Prädiktionsköpfen festgelegt werden.In classic regression approaches, a training data set D for trajectory prediction is used to learn what a trajectory T j of the future will look like. A direct output of the learning-based model are coordinates x, y over several time steps, usually in a local coordinate system. In order to achieve multimodality, i.e. to be able to predict a road user, also known as an agent, with several possible futures, a number of prediction heads must be defined before training the model.
Die genannten setbasierten Prädiktionsansätze hingegen haben ein anderes Funktionsprinzip, bei dem bei fixen Trajektoriensets S noch vor dem Training des lernbasierten Modells mittels eines Algorithmus ein Trajektorienset S aus dem Trainingsdatensatz D extrahiert wird. Das Trajektorienset S besteht aus einigen, mittels des Algorithmus ausgewählten zukünftig möglicherweise gefahrenen Trajektorien Tj. Während des Trainings des lernbasierten Modells lernt das Modell im Anschluss, welche Trajektorie Tj des Trajektoriensets S am wahrscheinlichsten der Zukunft des zu prädizierenden Agenten entspricht. Das Regressionsproblem ganzer Trajektorien Tj wird somit in ein Klassifikationsproblem überführt. Ein Vorteil hierbei ist, dass eine Anzahl der Moden nicht während des Trainings festgelegt werden muss. Noch während der Ausführung kann dynamisch entschieden werden, wie viele Trajektorien Tj für eine Weiterverarbeitung ausgewählt werden, weil jeder Trajektorie Tj im Trajektorienset S eine Wahrscheinlichkeit zugewiesen wird.The set-based prediction approaches mentioned, on the other hand, have a different functional principle in which, in the case of fixed trajectory sets S, a trajectory set S is extracted from the training data set D using an algorithm before the learning-based model is trained. The trajectory set S consists of some trajectories T j that may be driven in the future and selected using the algorithm. During training of the learning-based model, the model then learns which trajectory T j of the trajectory set S most likely corresponds to the future of the agent to be predicted. The regression problem of entire trajectories T j thus becomes a classification problem transferred. An advantage here is that a number of modes do not have to be determined during training. Even during execution, it can be decided dynamically how many trajectories T j are selected for further processing, because each trajectory T j in the trajectory set S is assigned a probability.
Während der Anwendung bedeutet dies konkret, dass zuvor aus dem Trainingsdatensatz D extrahierte und das Trajektorienset S bildende Trajektorien Tj für die Prädiktion „ausgewählt“ werden. Diese Auswahl geschieht über eine Klassifikation über das Trajektorienset S, indem bestimmt wird, wie wahrscheinlich ein Eintreten jeder einzelnen Trajektorie Tj des Trajektoriensets S in einer aktuellen Verkehrsszene ist.During application, this specifically means that trajectories T j previously extracted from the training data set D and forming the trajectory set S are “selected” for the prediction. This selection is done via a classification using the trajectory set S by determining how likely each individual trajectory T j of the trajectory set S is to occur in a current traffic scene.
Dabei wird in dem vorliegenden Verfahren davon ausgegangen, dass ein Trainingsdatensatz D mit gefahrenen Trajektorien Tj eines als Verkehrsteilnehmer ausgebildeten Agenten vorhanden ist. Es wird davon ausgegangen, dass der Trainingsdatensatz D k Trajektorien Tj beinhaltet, das heißt j = 1 ... k. Die Trajektorien Tj wurden von einer Vielzahl von Agenten, beispielsweise Fahrzeugen, während einer Vielzahl von vorangegangenen Fahrten erfasst. Der Trainingsdatensatz D wird weiterhin für ein Training von lernbasierten Prädiktionsmodellen verwendet.In the present method it is assumed that a training data set D with driven trajectories T j of an agent trained as a road user is available. It is assumed that the training data set D k contains trajectories T j , that is, j = 1... k. The trajectories T j have been recorded by a variety of agents, for example vehicles, during a variety of previous trips. The training data set D is further used for training learning-based prediction models.
In dem Verfahren wird in einem ersten Verfahrensschritt V1 ein initiales und leeres Trajektorienset S angelegt.In the method, an initial and empty trajectory set S is created in a first method step V1.
Anschließend wird in einem zweiten Verfahrensschritt V2 nacheinander für jedes in dem Trainingsdatensatz D vorhandene, aus jeweils zwei Trajektorien Tj des Trainingsdatensatzes D bestehende Trajektorienpaar ein Metrikwert gebildet, nach welchem das Trajektorienset S optimiert werden soll. Der gebildete Metrikwert gibt ein Maß an, in welchem Umfang eine Trajektorienprädiktion einem Ground-Truth entspricht. Dabei wird der jeweils gebildete Metrikwert in eine Metrikmatrix Mfull eingetragen, wobei jedes Element der Metrikmatrix Mfull dem jeweiligen Trajektorienpaar zugeordnet ist. Für die Metrikmatrix Mfull gilt also
Es erfolgt somit paarweise eine Berechnung der Metrik, nach der das Trajektorienset S optimiert werden soll. Dies wird für alle Trajektorien Tj im Trainingsdatensatz D durchgeführt, wobei die Metrikmatrix Mfull die paarweisen Metriken jeweils zweier Trajektorien Tj beschreibt. Beispielsweise befindet sich bei Mfull[i, j] der Metrikwert zwischen einer Trajektorie i und einer Trajektorie j. Somit ist eine solche Metrik immer ein Maß zwischen zwei Trajektorien Tj und wird in der Prädiktion dafür verwendet, zu bewerten, wie gut eine Prädiktion im Vergleich zum Ground-Truth ist. Die Metrik kann beispielsweise ein Average Displacement Error (kurz: ADE), ein Final Displacement Error (kurz: FDE) oder eine Miss-Rate sein. Außerdem können auch gegebenenfalls gewichtete Kombinationen solcher Metriken eingesetzt werden. Alle aufgeführten Metriken sind dabei permutationsinvariant, das heißt Metrik (i, j) = Metrik(j, i). Ist dies der Fall, ergibt sich eine symmetrische Matrix Mfull.The metric according to which the trajectory set S is to be optimized is therefore calculated in pairs. This is carried out for all trajectories T j in the training data set D, where the metric matrix M full describes the pairwise metrics of two trajectories T j . For example, for M full [i, j], the metric value is between a trajectory i and a trajectory j. Thus, such a metric is always a measure between two trajectories T j and is used in prediction to evaluate how good a prediction is compared to the ground truth. The metric can be, for example, an average displacement error (ADE for short), a final displacement error (FDE for short) or a miss rate. In addition, weighted combinations of such metrics can also be used if necessary. All metrics listed are permutation invariant, i.e. metric (i, j) = metric (j, i). If this is the case, a symmetric matrix M full results.
In einem dritten Verfahrensschritt V3 wird ein Metrikspeicher Mset eines aktuellen Trajektoriensets S angelegt und mit arbiträr hohen Werten, beispielsweise unendlich oder unrealistischen hohen Werten, initialisiert. Für den Metrikspeicher Mset gilt also
Anschließend wird in einem vierten Verfahrensschritt V4 in einer Verzweigung überprüft, ob zumindest ein Abbruchkriterium erfüllt ist. Als Abbruchkriterium kann dabei eine Anzahl der Trajektorien Tj in dem aktuellen Trajektorienset S und/oder ein zuletzt erreichter mittlerer Fehler verwendet werden. Bei Vorliegen des zumindest einen Abbruchkriteriums, dargestellt durch einen Ja-Zweig J, wird ein vorliegendes, das heißt aktuelles Trajektorienset S als metrikoptimales Trajektorienset S ausgewählt. Bei Nicht-Vorliegen des zumindest einen Abbruchkriteriums, dargestellt durch einen Nein-Zweig N, wird ein fünfter Verfahrensschritt V5 solange wiederholt, bis zumindest ein Abbruchkriterium erfüllt ist.Subsequently, in a fourth method step V4, a check is made in a branch as to whether at least one termination criterion is met. A number of trajectories T j in the current trajectory set S and/or a last average error reached can be used as the termination criterion. If the at least one termination criterion is present, represented by a yes branch J, an existing, i.e. current, trajectory set S is selected as the metric-optimal trajectory set S. If the at least one termination criterion is not present, represented by a no branch N, a fifth method step V5 is repeated until at least one termination criterion is met.
In dem fünften Verfahrensschritt V5 wird eine nächste optimale Trajektorie Tj aus dem Trainingsdatensatz D bestimmt. Hierbei wird in einem Verfahrensschritt V5.1 eine temporäre Speicherliste Mmemory angelegt und initialisiert. In der temporären Speicherliste Mmemory können immer Dreiertupel, umfassend einen Iterationsindex j der aktuellen Trajektorie Tj, ein Minimum Mtmp, min,j der aktuellen Trajektorie Tj und einen Mittelwert mtmp, min,j der aktuellen Trajektorie Tj gespeichert werden.In the fifth method step V5, a next optimal trajectory T j is determined from the training data set D. This is done in one process Step V5.1 created and initialized a temporary memory list M memory . The temporary memory list M memory can always store three tuples comprising an iteration index j of the current trajectory T j , a minimum M tmp, min,j of the current trajectory T j and an average value m tmp , min,j of the current trajectory T j .
Für das Minimum Mtmp, min,j gilt
Der Mittelwert mtmp,min,j entspricht dem Mittelwert über alle Elemente des Minimum Mtmp, min, j. Für den Mittelwert gilt
Anschließend wird über alle Trajektorien Tj in dem Trainingsdatensatz D iteriert, wobei jeder Trajektorie Tj ein Index j zugeordnet wird. Diese Iteration kann auch auf mehreren CPU-Kernen parallelisiert werden.All trajectories T j in the training data set D are then iterated over, with an index j being assigned to each trajectory T j . This iteration can also be parallelized on multiple CPU cores.
In der Iteration wird in einer Verzweigung überprüft, ob der Index j kleiner ist als eine Zählvariable k ist. Die Zählvariable k entspricht dabei der Anzahl der Trajektorien aus dem Trainingsdatensatz D. Wenn der Index j kleiner ist als eine Zählvariable k ist, wird zunächst in einem Verfahrensschritt V5.2 eine Zeile Mfull[j] mit dem Index j aus der Metrikmatrix Mfull extrahiert. Die extrahierte Zeile Mfull[j] entspricht dabei den paarweisen Metrikwerten einer aktuellen Trajektorie Tj zu allen anderen Trajektorien Tj in dem Trainingsdatensatz D. Die extrahierte Zeile Mfull[j] wird in einem temporären Metrikspeicher Mtmp,j abgelegt. Für den temporären Metrikspeicher Mtmp,j gilt:
Das Ergebnis entspricht dabei den paarweise Metrikwerten einer aktuellen Trajektorie Tj zu allen anderen Trajektorien Tj in dem Trainingsdatensatz D und wird in einem temporären Metrikspeicher Mtmp,j abgelegt.The result corresponds to the paired metric values of a current trajectory T j to all other trajectories T j in the training data set D and is stored in a temporary metric memory M tmp,j .
Anschließend wird in einem weiteren Verfahrensschritt V5.3 und jeweils einzeln das Minimum Mtmp,min,j aller Einträge in dem Metrikspeicher Mset und in dem temporären Metrikspeicher Mtmp,j ermittelt.Subsequently, in a further method step V5.3, the minimum M tmp,min,j of all entries in the metric memory M set and in the temporary metric memory M tmp,j is determined individually.
Anschließend wird einem weiteren Verfahrensschritt V5.4 der Mittelwert mtmp, min,j aller ermittelten Minima Mtmp, min,j gebildet, wodurch sich ein mittlerer Fehler des aktuellen Trajektoriensets S in Kombination mit einer Trajektorie Tj der aktuellen Iteration ergibt. In der Theorie könnte ein setbasiertes Prädiktionsmodell genau diesen mittleren Fehler erreichen, unter der Annahme, dass das Prädiktionsmodell für jede Szene immer die bestmögliche Trajektorie Tj auswählt.Subsequently, in a further method step V5.4, the mean value m tmp , min,j of all determined minima M tmp , min,j is formed, which results in an average error of the current trajectory set S in combination with a trajectory T j of the current iteration. In theory, a set-based prediction model could achieve exactly this mean error, assuming that the prediction model always selects the best possible trajectory T j for each scene.
Anschließend wird das ermittelte Dreiertupel in einem weiteren Verfahrensschritt V5.5 aus dem Iterationsindex j der aktuellen Trajektorie Tj, dem Minimum Mtmp, min,j der aktuellen Trajektorie Tj und dem Mittelwert mtmp, min,j der aktuellen Trajektorie Tj der temporären Speicherliste Mmemory hinzugefügt.The determined three-tuple is then selected in a further method step V5.5 from the iteration index j of the current trajectory T j , the minimum M tmp , min,j of the current trajectory T j and the mean value m tmp , min,j of the current trajectory T j der added to temporary memory list M memory .
Die Verfahrensschritte V5.2 bis V5.5 werden solange wiederholt, bis der Index j größer als die Zählvariable k ist. Ist dies der Fall, wird in einem weiteren Verfahrensschritt V5.6 der Index j in der temporären Speicherliste Mmemory bestimmt, welcher den geringsten Mittelwert mtmp, min,j aufweist.Process steps V5.2 to V5.5 are repeated until the index j is greater than the counting variable k. If this is the case, in a further method step V5.6 the index j in the temporary memory list M memory is determined, which has the lowest mean value m tmp , min,j .
Anschließend wird in einem weiteren Verfahrensschritt V5.7 die entsprechende Trajektorie Tj mit dem Index j in das Trajektorienset S aufgenommen und in einem Verfahrensschritt V5.8 der Metrikspeicher Mset durch das ermittelte Minimum Mtmp, min,j der entsprechenden Trajektorie Tj ersetzt.Subsequently, in a further method step V5.7, the corresponding trajectory T j with the index j is included in the trajectory set S and in a method step V5.8 the metric memory M set is replaced by the determined minimum M tmp , min,j of the corresponding trajectory T j .
Ist der Trainingsdatensatz D sehr groß, beispielsweise mit mehr als 200000 Trajektorien Tj, so kann gemäß einer möglichen Ausgestaltung des vorliegenden Verfahrens lediglich eine Teilmenge des Trainingsdatensatzes D, auch als Subset bezeichnet, zur Generierung und Auswahl des metrikoptimalen Trajektoriensets S verwendet werden. Unter der Bedingung, dass diese Teilmenge auch die Verteilung des gesamten Trainingsdatensatzes D gut widerspiegelt, kann dadurch ohne ein signifikant schlechteres Trajektorienset S zu generieren, eine Laufzeit minimiert werden.If the training data set D is very large, for example with more than 200,000 trajectories T j , then according to a possible embodiment of the present method, only a subset of the training data set D, also referred to as a subset, can be used to generate and select the metric-optimal trajectory set S. Under the condition that this subset also reflects the distribution of the entire training data set D well, a running time can be minimized without generating a significantly worse trajectory set S.
Trajektorien Tj von Fahrzeugen sind oftmals rauschbehaftet. Deshalb ist in einer weiteren möglichen Ausgestaltung des vorliegenden Verfahrens vorgesehen, dass vor einer Verwendung des Trainingsdatensatzes D zur Generierung und Auswahl des metrikoptimalen Trajektoriensets S alle in dem Trainingsdatensatz D vorhandene Trajektorien Tj initial geglättet werden und ein geglätteter Trainingsdatensatz D erstellt wird. Dieser besitzt die gleiche Anzahl an Trajektorien Tj wie der ungefilterte Trainingsdatensatz D. Zu dieser Glättung können beispielsweise Kalman-Filter, beispielsweise mit verschiedenen Variationen wie Extended Kalman Filter, Unscented Kalman Filter und/oder Kalman-Smoother, Savgol-Filter und andere Filter verwendet werden.Trajectories T j of vehicles are often noisy. Therefore, in a further possible embodiment of the present method it is provided that before using the training data set D to generate and select the metric-optimal trajectory set S, all trajectories T j present in the training data set D are initially smoothed and a smoothed training data set D is created. This has the same number of trajectories T j as the unfiltered training data set D. Kalman filters, for example with different variations such as extended Kalman filter, unscented Kalman filter and/or Kalman smoother, Savgol filter and other filters, can be used for this smoothing become.
Bei der Berechnung der Metrikmatrix Mfull wird in Zeile j dann jeweils der Metrikwert der geglätteten Trajektorie Tj zu allen anderen Trajektorien im Trainingsdatensatz D bestimmt. Der restliche Ablauf ist identisch zu dem oben beschrieben Verfahrensablauf.When calculating the metric matrix M full , the metric value of the smoothed trajectory T j for all other trajectories in the training data set D is then determined in line j. The rest of the process is identical to the process described above.
Nach jeder Iteration wird dann die entsprechende gefilterte Trajektorie Tj zum Trajektorienset S hinzugefügt. Dies stellt sicher, dass iterativ immer die gefilterte Trajektorie Tj aus dem gefilterten Trainingsdatensatz D zum Trajektorienset S hinzugefügt wird, die sich auf den originalen Trainingsdatensatz D optimal auswirkt. Die Nutzung geglätteter Trajektorien Tj kann eine größere Verallgemeinerung bewirken. Auch wenn beispielsweise mehrere verrauschte Trajektorien Tj einen gleichen Mittelwert besitzen, können aufgrund des Rauschens die genauen Verläufe der Trajektorien Tj trotz gleichem Mittelwert sehr unterschiedlich sein. Wählt man eine optimale Trajektorie Tj direkt aus diesen verrauschten Trajektorien Tj aus, so können hohe Fehler zu den umliegenden Trajektorien Tj entstehen. Glättet man allerdings zuerst die Trajektorien Tj vor, so kann eine Trajektorie Tj gefunden werden, die näherungsweise dem Mittelwert aller rauschbehafteten Trajektorien Tj entspricht und diese somit generalisiert abdeckt.After each iteration, the corresponding filtered trajectory Tj is then added to the trajectory set S. This ensures that the filtered trajectory T j from the filtered training data set D is always iteratively added to the trajectory set S, which has an optimal effect on the original training data set D. Using smoothed trajectories T j can provide greater generalization. Even if, for example, several noisy trajectories T j have the same mean value, the exact courses of the trajectories T j can be very different despite the same mean value due to the noise. If one selects an optimal trajectory T j directly from these noisy trajectories T j , high errors can arise from the surrounding trajectories T j . However, if the trajectories T j are first smoothed, a trajectory T j can be found which approximately corresponds to the mean of all noisy trajectories T j and thus covers them in a generalized manner.
Das Ergebnis nach einer solchen Glättung zeigt
Claims (4)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102022004427.7A DE102022004427A1 (en) | 2022-11-28 | 2022-11-28 | Method for selecting a trajectory set from a given training data set |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102022004427.7A DE102022004427A1 (en) | 2022-11-28 | 2022-11-28 | Method for selecting a trajectory set from a given training data set |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102022004427A1 true DE102022004427A1 (en) | 2023-09-28 |
Family
ID=87930885
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102022004427.7A Ceased DE102022004427A1 (en) | 2022-11-28 | 2022-11-28 | Method for selecting a trajectory set from a given training data set |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102022004427A1 (en) |
-
2022
- 2022-11-28 DE DE102022004427.7A patent/DE102022004427A1/en not_active Ceased
Non-Patent Citations (3)
Title |
---|
BOULTON, Freddy A.; GRIGORE, Elena Corina; WOLFF, Eric M. Motion prediction using trajectory sets and self-driving domain knowledge. Version 2. 13-01-2021. URL: https://arxiv.org/abs/2006.04767 [abgerufen am 31.07.2023]. - arXiv:2006.04767v2 |
Greedyalgorithmen und -heuristiken. In: Programming Wiki. Bearbeitungsstand: 21. Januar 2016, 13:23 Uhr.URL: https://programmingwiki.de/Greedyalgorithmen_und_-heuristiken [abgerufen am 31.07.2023] |
PHAN-MINH, Tung [u.a.]: CoverNet: Multimodal behavior prediction using trajectory sets. Version 2. 01-04-2020. S. 1-12. URL: https://arxiv.org/pdf/1911.10298v2 [abgerufen am 2020-11-19]. - arXiv: 1911.10298v2 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3785177B1 (en) | Method and device for determining a network-configuration of a neural network | |
DE112017005958T5 (en) | Robot control and calibration procedure | |
DE102018128289A1 (en) | METHOD AND DEVICE FOR AUTONOMOUS SYSTEM PERFORMANCE AND CLASSIFICATION | |
DE102019216232A1 (en) | Method and device for providing a driving strategy for the automated driving of a vehicle | |
EP1437685A2 (en) | Method for segmenting three-dimensional structures | |
DE102019114459A1 (en) | A method of scanning portions of a sample using a scanning microscope, computer program product, computer readable medium, and a system for scanning portions of a sample using a scanning microscope | |
EP2854045B1 (en) | Method and system for the evaluation of recorded measured values of a system | |
EP4000010A1 (en) | Device and computer-implemented method for the processing of digital sensor data and training method for same | |
DE102017217099A1 (en) | Method for investigating a functional behavior of a technical system and evaluation unit | |
DE102021005625B3 (en) | Method for trajectory prediction and method for automated operation of a vehicle | |
DE102022004427A1 (en) | Method for selecting a trajectory set from a given training data set | |
DE102016220561A1 (en) | Method for determining driving routes for land vehicles | |
EP3901713B1 (en) | Method and device for operating a technical system with optimal model | |
DE112021000251T5 (en) | PROCEDURE FOR SELECTING RECORDS TO UPDATE AN ARTIFICIAL INTELLIGENCE MODULE | |
DE102013225997A1 (en) | A method of determining a model value from a random forest model | |
DE102011087803B4 (en) | Method and apparatus for merging classified traffic situation information | |
WO2017084780A1 (en) | Method for determining parameters of an electrochemical energy store in a computer-aided manner | |
DE102019216973A1 (en) | LEARNING PROCEDURES FOR NEURAL NETWORKS BASED ON EVOLUTIONARY ALGORITHMS | |
DE102019213459A1 (en) | Method for compressing a neural network | |
DE102022214233B3 (en) | Determining the similarity of traffic scenes to improve machine learning systems or algorithms for trajectory prediction or maneuver planning for automated vehicles | |
DE112019007147T5 (en) | Vehicle path generation device, vehicle path generation method, and vehicle control device | |
DE102019131639B4 (en) | System for providing an explanation data set for an AI module | |
DE102020133654B3 (en) | Computer-implemented method for modifying a component of a computer-generated model of a motor vehicle | |
DE102019204136A1 (en) | Method and device for training and producing an artificial neural network | |
DE202021103700U1 (en) | Device for generating an artificial neural network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R230 | Request for early publication | ||
R016 | Response to examination communication | ||
R002 | Refusal decision in examination/registration proceedings | ||
R003 | Refusal decision now final |