FR3111424A1 - Génération de trajectoires par un réseau de neurones issu d’un système de réseaux antagonistes génératifs - Google Patents
Génération de trajectoires par un réseau de neurones issu d’un système de réseaux antagonistes génératifs Download PDFInfo
- Publication number
- FR3111424A1 FR3111424A1 FR2006224A FR2006224A FR3111424A1 FR 3111424 A1 FR3111424 A1 FR 3111424A1 FR 2006224 A FR2006224 A FR 2006224A FR 2006224 A FR2006224 A FR 2006224A FR 3111424 A1 FR3111424 A1 FR 3111424A1
- Authority
- FR
- France
- Prior art keywords
- trajectory
- trajectories
- neural network
- vehicle
- discrimination
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/3446—Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags, using precalculated routes
-
- 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/045—Combinations of 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/047—Probabilistic or stochastic 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/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
Abstract
L’invention concerne un procédé et un dispositif de contrôle d’un égo-véhicule. Le dispositif de contrôle comprend un dispositif de génération de trajectoires comprenant un réseau de neurones, soumis à une phase d’apprentissage dans un système de réseaux antagonistes génératifs. Le réseau de neurone est configuré pour recevoir une carte de contexte correspondant à une situation de conduite de l’égo-véhicule, et à générer plusieurs trajectoires compatibles avec la carte de contexte. FIG. 3
Description
La présente invention appartient au domaine de la conduite autonome d’un véhicule. Elle concerne en particulier un procédé et un dispositif de génération de trajectoires dans un contexte de circulation donnée.
Elle est particulièrement avantageuse dans le cadre de l’optimisation des trajectoires suivies par un véhicule en conduite autonome.
On entend par « véhicule » tout type de véhicule tel qu’un véhicule automobile, un cyclomoteur, une motocyclette, un robot de stockage dans un entrepôt, etc.
On entend par « conduite autonome » d’un « véhicule autonome » tout procédé apte à assister la conduite du véhicule. Le procédé peut ainsi consister à diriger partiellement ou totalement le véhicule ou à apporter tout type d’aide à une personne physique conduisant le véhicule. Le procédé couvre ainsi toute conduite autonome, du niveau 0 au niveau 5 dans le barème de l’OICA, pour Organisation International des Constructeurs Automobiles.
Dans la suite, le terme d’ « égo-véhicule » est utilisé pour désigner le véhicule dont la conduite autonome est déterminé. Toutefois, comme détaillé ci-après, l’invention ne s’applique pas uniquement à un égo-véhicule mais s’applique également à un véhicule en pilotage manuel.
On entend par « route » tout moyen de communication impliquant un déplacement physique d’un véhicule. Une route nationale, départementale, locale, européenne, internationale, une autoroute nationale, européenne, internationale, un chemin forestier, un parcours pour dispositifs autonomes de rangement d’un entrepôt de stockage, etc. sont des exemples de routes.
La route comprend au moins une chaussée. On entend par « chaussée » tout moyen physique apte à supporter le déplacement d’un véhicule. Une autoroute comprend typiquement deux chaussées séparées par un terre-plein central.
La chaussée comprend au moins une voie. On entend par « voie » toute portion de chaussée affectée à une file de véhicules. Une chaussée d’une autoroute comprend typiquement au moins deux voies de circulation. Une voie d’insertion sur l’autoroute, une voie unique dans un tunnel, une voie de circulation à sens unique située dans une ville, etc. sont des exemples de voies.
Une voie peut être délimitée par des marquages au sol mais elle peut également correspondre à une trajectoire sur la chaussée empruntée par les véhicules circulant sur la chaussée. Une telle voie peut être appelée « voie virtuelle » car cette voie n’est pas délimitée par des marquages physiques mais est générée à partir de trajectoires passées empruntées par les véhicules circulant sur la chaussée.
Lors de la conduite autonome d’un véhicule, plusieurs solutions existantes sont prévues afin d’obtenir une trajectoire à exécuter par un dispositif de contrôle en charge de la conduite autonome de l’égo-véhicule.
Selon une première solution, le chemin le plus court vers une destination donnée est déterminé à partir d’une carte de contexte (une carte indiquant le tracé des routes notamment). Toutefois, dans de nombreuses situations, le chemin le plus court n’est pas le plus optimal en termes de confort de conduite notamment, ou de sécurité).
Selon une deuxième solution, un ensemble de trajectoires est prédéfini, et une fonction de coût est utilisée afin de sélectionner l’une des trajectoires de l’ensemble. Une telle solution repose cependant sur une base de données statique, ce qui ne permet pas d’obtenir un trajet optimal dans l’ensemble des situations de conduite.
La présente invention vient améliorer la situation.
A cet effet, un premier aspect de l’invention concerne un procédé de génération de trajectoires de conduite d’un égo-véhicule, comprenant :
une phase d’apprentissage d’un réseau de neurones d’un dispositif de génération de trajectoires dans un système de réseaux antagonistes génératifs, le dispositif de génération étant apte, sur réception d’une carte de contexte, à générer une pluralité de trajectoires compatibles avec la carte de contexte;
une phase courante comprenant les étapes suivantes :
- obtention d’une carte de contexte courante sur la base de données captées par l’égo-véhicule ;
- génération d’une pluralité de trajectoires par le dispositif de génération sur la base de la carte de contexte courante ;
- sélection d’une trajectoire parmi la pluralité générée ;
- contrôle du véhicule autonome sur la base de la trajectoire sélectionnée.
Ainsi, suite à la phase d’apprentissage, le dispositif de génération est capable de générer des trajectoires compatibles avec une carte de contexte courante, de manière dynamique, contrairement à la solution de l’art antérieur qui se fonde sur une base de données statique.
Selon un mode de réalisation, le système de réseaux antagonistes génératifs peut comprendre le dispositif de génération de trajectoires comprenant le réseau de neurones, dit premier réseau de neurones, une base de données stockant des trajectoires en association avec des cartes contexte respectives, un dispositif de sélection et un dispositif de discrimination comprenant un deuxième réseau de neurones, et dans lequel la phase d’apprentissage comprend les étapes suivantes :
- obtention d’une carte de contexte de la base de données, une première trajectoire étant associée à la carte de contexte dans la base de données ;
- génération d’une trajectoire, dite deuxième trajectoire, par le premier réseau de neurones sur la base de la carte de contexte obtenue ;
- sélection par le dispositif de sélection d’une trajectoire parmi la première trajectoire et la deuxième trajectoire ;
- discrimination par le dispositif de discrimination de la trajectoire sélectionnée pour déterminer si la trajectoire sélectionnée provient du dispositif de génération ou de la base de données ;
- obtention d’au moins un résultat issu de la discrimination ;
- ajustement de paramètres des premier et deuxième réseaux de neurones sur la base du résultat obtenu.
Ainsi, le premier réseau de neurones peut être entraîné de manière antagoniste avec le dispositif de discrimination. Par conséquent, les trajectoires finalement générées sont aussi réalistes que les trajectoires issues de la base de données.
En complément, un premier résultat issu de la discrimination peut être obtenu à partir d’une première fonction de perte associée au premier réseau de neurones, et un deuxième résultat issu de la discrimination peut être obtenu à partir d’une deuxième fonction de perte du deuxième réseau de neurones, et les première et deuxième fonctions de perte peuvent être antagonistes.
L’apprentissage est ainsi réalisé au moyen de fonctions de perte dont les résultats sont contraires (ou antagonistes), ce qui permet d’optimiser la capacité du dispositif de génération à générer des trajectoires réalistes.
En complément ou en variante, le résultat issu de la discrimination peut être comparé à un objectif prédéterminé, et la phase d’apprentissage peut être itérée tant que le résultat issu de la discrimination se satisfait pas l’objectif prédéterminé.
Ainsi, l’objectif prédéterminé peut être fixé en fonction des besoins de l’application finale. Ce mode de réalisation présente ainsi une grande flexibilité.
Selon un mode de réalisation, la phase d’apprentissage peut comprendre une phase préalable d’obtention de la base de données à partir de trajectoires réelles de différents véhicules et de cartes de contexte correspondantes.
Ce mode de réalisation permet avantageusement de prendre en compte la dynamique du véhicule en ce que les trajectoires utilisées pour l’apprentissage du dispositif de génération sont des trajectoires réelles (réellement parcourues par des véhicules).
Selon un mode de réalisation, le dispositif de génération peut générer k trajectoires sur la base d’un tirage de k valeurs aléatoires, k étant supérieur ou égal à 2.
Les valeurs aléatoires peuvent notamment être exploitées pour désigner les destinations respectives des trajectoires.
En complément, les k valeurs aléatoires peuvent être issues de tirages indépendants d’une distribution suivant une loi normale.
Un deuxième aspect de l’invention concerne un programme informatique comportant des instructions pour la mise en œuvre du procédé selon le premier aspect de l’invention, lorsque ces instructions sont exécutées par un processeur.
Un troisième aspect de l’invention concerne un dispositif de contrôle d’un égo-véhicule, le dispositif de contrôle comprenant :
une interface d’entrée pour recevoir des données obtenues l’égo-véhicule ;
un processeur apte à déterminer une carte de contexte courante à partir des données captées ;
un dispositif de génération de trajectoires apte à générer une pluralité de trajectoires compatibles avec la carte de contexte courante, dans lequel le dispositif de génération comprend un réseau de neurones soumis à un apprentissage dans un système de réseaux antagonistes génératifs ;
dans lequel le processeur est en outre apte à sélectionner une trajectoire parmi la pluralité et à contrôler l’égo-véhicule sur la base de la trajectoire sélectionnée.
Un quatrième aspect de l’invention concerne un véhicule comportant le dispositif de contrôle selon le troisième aspect de l’invention.
D’autres caractéristiques et avantages de l’invention apparaîtront à l’examen de la description détaillée ci-après, et des dessins annexés sur lesquels :
La figure 1 présente un système 100 d’apprentissage de génération de trajectoires selon un mode de réalisation de l’invention.
Le système 100 est une architecture de type «réseaux génératifs antagonistes/adverses» (GAN en anglais pour «Generative Adversarial Networks»), architecture utilisée dans le domaine de la génération de visages.
Le système 100 comprend un dispositif de génération de trajectoires 110, basé sur un premier réseau de neurones, une base de données de trajectoires 120 et un dispositif de discrimination 130, comprenant un deuxième réseau de neurones.
La base de données 120 stocke une pluralité de trajectoires, chacune associée à une carte de contexte. La carte de contexte peut correspondre à une carte 200 telle que représentée en référence à la figure 2a. La carte 200 peut-être une grille d’occupation issue de capteurs d’un véhicule dont la trajectoire a été enregistré à un instant t. Aucune restriction n’est attachée à de tels capteurs qui peuvent comprendre toute technologique visuelle (caméra, de type caméra vidéo multifonction, CVM, et système de traitement d’image), un système radar/lidar, ou un capteur ultrason par exemple, toute combinaison de telles technologies, ou plus généralement toute technologie capable de capter des informations relatives à l’environnement du véhicule. En variante, la carte peut être issue d’une modélisation obtenue à partir de données satellites.
Aucune restriction n’est attachée aux données représentant une trajectoire, qui peut par exemple être représentée de manière discrète comme une succession de points, conformément à la trajectoire 201 représentée en référence à la figure 2b. Chaque point peut être associé à deux coordonnées (xt+i, yt+i) permettant de repérer le point dans la carte 200 correspondante. Les coordonnées peuvent avoir été obtenues à partir de coordonnées GPS à des instants successifs t+i suivants l’instant t auquel la carte de contexte a été obtenue.
Aucune restriction n’est attachée à la quantité de données stockées dans la base de données 120. De préférence, la base de données 120 est suffisamment grande et diverse afin de représenter l’espace de contextes (le nombre de cartes de contexte notamment) à représenter. En particulier, plus l’espace de contextes est complexe (nombreuses options de routes, taille de carte importante, nombreux obstacles, etc), plus la taille de la base de données est de préférence importante. Par exemple, la base de données 120 peut comprendre plusieurs dizaines de milliers de trajectoires. Cette base de données est constituée sur la base de trajectoires empruntées par des véhicules en situation réelle. Aucune restriction n’est attachée à la manière dont les données de la base de données 120 sont obtenues. Par exemple, elles peuvent être issues de projets européens tel que le projet «L3 pilot» par exemple.
La base de données 120, une fois constituée, est utilisée en tant que base experte dans le système de la figure 1. Selon l’invention, la base de données 120 ne tient pas compte de la destination du conducteur dans le choix de sa trajectoire. La base de données 120 est donc stochastique au sens où, dans un contexte du rond-point des figures 2a et 2b par exemple, certaine des trajectoires vont tout droit, d’autres trajectoires vont à gauche, et d’autres font un demi-tour.
Selon la structure d’apprentissage de la figure 1, les premier et deuxième réseaux de neurones peuvent s’entraîner mutuellement. A cet effet, le système d’apprentissage 100 comprend en outre un dispositif de sélection 140 apte à recevoir deux ensembles de données et à en sélectionner un à soumettre au dispositif de discrimination 130, comme détaillé dans ce qui suit.
La figure 3 représente une succession d’étapes d’un procédé selon un mode de réalisation de l’invention.
Le procédé selon l’invention peut comprendre une phase d’initiation 300, ou d’apprentissage, mise en œuvre dans le système d’apprentissage de la figure 1 et une phase d’exploitation, mise en œuvre dans un dispositif de contrôle d’un véhicule, tel que le dispositif de contrôle 400 présenté en référence à la figure 4 décrite dans ce qui suit.
La phase d’initiation 300 comprend une étape 301 d’obtention de la base de données 120. La base de données 120 peut par exemple être obtenue conformément à la description des figures 2a et 2b données ci-dessus.
A une étape 302, le dispositif de génération 110 extrait une carte de contexte de la base de données 120.
En parallèle de l’extraction de la carte de contexte à l’étape 302, le dispositif de génération 110 génère aléatoirement une destination, telles que deux coordonnées de la carte de contexte 200 par exemple, à une étape 303. A cet effet, selon un mode de réalisation de l’invention, le dispositif de génération 110 obtient (reçoit en entrée ou génère lui-même) un vecteur de n nombres aléatoires. Par exemple, les n nombres aléatoires peuvent être issus de tirages indépendants d’une loi normale, de préférence centrée et réduite. Dans le cas où la loi normale considérée n’est pas centrée-réduite, aucune restriction n’est attaché à la moyenne de la loi normale. Aucune restriction n’est attachée au type de distribution utilisée pour le tirage des n nombres aléatoires. Toute autre méthode de génération de nombres aléatoires peut par ailleurs être utilisée selon l’invention.
A une étape 304, le dispositif de génération 110 génère une trajectoire agà partir du vecteur de n nombres aléatoires obtenu à l’étape 303 et à partir de la carte de contexte 200 extraite à l’étape 302, une destination de la trajectoire étant calculée à partir du vecteur de n nombres aléatoires. Le dispositif de génération 110 peut ainsi générer k trajectoires ag,iayant des destinations potentiellement différentes (car tirées aléatoirement), k étant un paramètre entier supérieur ou égal à deux, i variant de 1 à k. Un exemple de génération de trois trajectoires (k=3) est illustré en référence à la figure 2c. Trois trajectoires 210, 211, et 212 ont des destinations différentes, à titre illustratif uniquement. Le dispositif de génération peut également générer plusieurs trajectoires différentes ayant la même destination.
Lors de la phase d’apprentissage 300 toutefois, le dispositif de génération 110 ne génère qu’une seule trajectoire agà l’étape 304 (bien qu’il soit capable de générer k trajectoires).
En parallèle des étapes 301 à 304, à une étape 305, le dispositif de sélection 140 reçoit depuis la base de données, une carte de contexte 200 (la même que celle extraite à l’étape 302, ou une autre carte de contexte 200) et la trajectoire aequi lui est associée dans la base de données. La trajectoire aeest une trajectoire réelle, ou experte, car correspondant à une trajectoire réellement parcourue par un véhicule, conformément aux explications données précédemment.
A une étape 306, le dispositif de sélection 140 sélectionne une trajectoire asparmi les trajectoires aeet ag, par exemple de manière pseudo-aléatoire. Aucune restriction n’est attachée à la méthode de sélection d’une trajectoire parmi les trajectoires aeet ag, qui peut être selon une séquence prédéterminée, non connue du dispositif de discrimination 130.
L’étape de sélection 306 est opaque pour le dispositif de discrimination 130, qui ne dispose d’aucune information a priori sur la trajectoire sélectionnée asqui lui est soumise ( il ignore s’il s’agit d’une trajectoire réellement mesurée ae, ou d’une trajectoire aggénérée par le dispositif de génération 110).
A une étape 307, le dispositif de discrimination 130 reçoit la trajectoire sélectionnée et la carte de contexte associée, et détermine, lors d’une étape de discrimination, si la trajectoire sélectionnée provient de la base de données 120 ou du dispositif de génération 110. De manière préférentielle, l’information en sortie du dispositif de discrimination 130 n’est pas binaire mais est plutôt une probabilité p (ou 1-p) que la trajectoire soit issue de la base de données 120. La discrimination est permise par l’apprentissage du deuxième réseau de neurones du dispositif de discrimination 130.
Ainsi, les premier et deuxième réseaux de neurones sont entraînés en concurrence : le dispositif de discrimination 130 est optimisé de sorte à prédire si la trajectoire fournie par le dispositif de sélection 140 est issue de la base de données 120 ou du dispositif de génération 110. A l’inverse, le dispositif de génération 130 est entrainé de manière à ce que le dispositif de discrimination 130 se trompe le plus souvent possible et ne sache pas distinguer les trajectoires agdes trajectoires ae.
Afin de réaliser ces objectifs concurrents, les réseaux de neurones comprennent des couches de perte (« loss » en anglais), dont les objectifs sont antagonistes. De manière générale, une couche de perte spécifie comment l’entraînement (l’apprentissage) d’un réseau de neurones pénalise l’écart entre le signal prévu et le signal réel.
Pour l’apprentissage du deuxième réseau de neurones du dispositif de discrimination 130, l’invention peut prévoir l’utilisation d’un algorithme de type «Adam Optimizer», non détaillé davantage dans la présente description car déjà connu, avec un pas d’apprentissage de 10-4par exemple. Toutefois, cet algorithme est donné à titre illustratif et ne saurait restreindre le champ de l’invention à ce seul exemple.
La fonction de perte à minimiser pour le deuxième réseau de neurones peut être une fonction de type «binary cross entropy», en ramenant le problème à un problème de classification dans lequel le label « 1 » correspond à une trajectoire aeissue de la base de données 120, et le label « 0 » correspond à une trajectoire agissue du dispositif de génération 110.
La fonction de perte, ou d’optimisation, que le deuxième réseau de neurones cherche à minimiser peut ainsi être :
p étant la donnée de sortie du deuxième réseau de neurones correspondant à la probabilité, selon le deuxième réseau de neurones, que la trajectoire assoit issue de la base de données 120.
Pour ce qui concerne l’apprentissage du premier réseau de neurones du dispositif de discrimination 110, l’invention peut prévoir d’utiliser le même algorithme que pour le deuxième réseau de neurones, avec un pas d’apprentissage de 10-4, mais avec la fonction suivante pour la couche de perte :
Math1]
Les objectifs des deux réseaux de neurones étant opposés, les réseaux de neurones vont tous les deux apprendre simultanément leur tâche respective : le dispositif de discrimination 130 cherche à différencier les trajectoires générées agdes trajectoires aede la base de données 120, tandis que le dispositif de génération 110 cherche à tromper le dispositif de discrimination 130.
Les fonctions de perte sont déterminées à l’étape 308 en tant que résultats de la discrimination mise en œuvre à l’étape 307. Le procédé peut ensuite être itéré afin de poursuivre le processus d’apprentissage avec des nouvelles trajectoires aeet ag, en retournant aux étapes 302, 303 et 305 décrites précédemment.
Les premier et deuxième réseaux de neurones peuvent être de type profond, et comprendre différentes couches qui peuvent être convolutionnelles, linéaires ou récurrentes, et qui sont activées par des fonctions d’activation pouvant être de tout type selon l’invention (ReLu, tanh, linear, etc). Aucune restriction n’est attachée à l’invention, les détails d’implémentation étant fonction des objectifs visés.
Selon un mode de réalisation, chaque itération peut être conditionnée par une étape de test 309, dans lequel le système d’apprentissage évalue si la fonction de perte du dispositif de génération 110 (ou tout autre indicateur de performance du dispositif de génération 110) est inférieure à une valeur objectif, qui peut être prédéterminé. De manière plus générale, le système d’apprentissage détermine si le premier réseau de neurones réalise un objectif prédéfini. Si tel est le cas, la phase d’initiation 300 s’achève à une étape 310. Dans le cas contraire, si le dispositif de génération 110 n’est pas suffisamment entraîné (la valeur objectif n’a pas encore été atteinte), la phase d’initiation passe à une étape 311 d’optimisation de paramètres des premier et deuxième réseaux de neurones sur la base des résultats de discrimination, puis retourne aux étapes 302, 303 et 305 décrites précédemment. L’étape 311 permet ainsi de réaliser l’apprentissage, en ce que les paramètres des réseaux de neurones sont incrémentalement améliorés.
Le procédé comprend en outre une phase d’exploitation 320, ou phase courante, mise en œuvre dans un dispositif de contrôle d’un véhicule.
La phase d’exploitation 320 comprend une étape d’acquisition de données contextuelles et la construction d’une carte de contexte à partir des données contextuelles acquises. Aucune restriction n’est attachée à la manière dont les données contextuelles sont acquises. Par exemple, le véhicule peut comprendre un ou plusieurs capteurs apte à acquérir les données contextuelles. Aucune restriction n’est attachée au(x) capteur(s) du véhicule qui peut comprendre toute technologique visuelle (caméra, de type caméra vidéo multifonction, CVM, et système de traitement d’image), un système radar/lidar, ou un capteur ultrason par exemple, ou toute combinaison de telles technologies. Une combinaison de différentes technologies peut être utilisée afin de réaliser des fonctions complémentaires et/ou redondantes. Par exemple, le véhicule peut comprendre une caméra en association avec un système de traitement d’image et un lidar, qui peuvent être utilisés pour obtenir les données de contexte de manière complémentaire et/ou redondante. En variante ou en complément, le véhicule peut comprendre un dispositif de communication selon toute technologie de type V2X. A cet effet, l’interface de communication peut être une liaison de type WiFi, Car2X, ou de type cellulaire (de n’importe quelle génération, 3G, 4G, 5G ou suivantes).
A une étape 322, le dispositif de génération 110 reçoit la carte de contexte et génère k trajectoires en prenant en entrée k vecteurs de destination issus de la distribution normale (centrée réduite par exemple) et en soumettant ces k vecteurs de destination et la carte de contexte au premier réseau de neurones, précédemment entraîné durant la phase d’apprentissage 300. Comme précédemment détaillé, k est un entier supérieur ou égal à deux.
Les étapes de la phase d’exploitation 320 peuvent être itérées, en fonction de données de contexte mises à jour. En particulier, la phase d’exploitation 320 peut être itéré à une fréquence prédéterminée, ou, au contraire, sur détection d’un événement (détection d’un obstacle, sortie de la carte de contexte, etc).
Grâce à la distribution normale utilisée, les k trajectoires ag,iproposées sont à chaque itération sont toujours différentes et balayent l’espace des objectifs afin d’obtenir la diversité souhaitée.
A une étape 303, le dispositif de contrôle, sur la base des k trajectoires générées, sélectionne l’une des k trajectoires générées. Aucune restriction n’est attachée à la sortie qui peut être :
- un affichage sur un écran de la carte de contexte et des k trajectoire générées, afin que l’utilisateur sélectionne l’une des trajectoires affichées ; et
- une sélection de l’une des k trajectoires générées, en vue de piloter de manière autonome le véhicule, sur la base de critères prédéfinis..
Aucune restriction n’est attachée aux critères prédéfinis, qui peuvent être l’un des critères suivants, ou toute combinaison parmi les critères suivants :
- la compatibilité avec une destination de l’égo-véhicule. Par exemple, le dispositif de contrôle peut utiliser des données GPS et une destination afin de piloter l’égo-véhicule. La ou les trajectoires compatibles avec ces données et la destination peut être sélectionnée ;
- un critère de confort de conduite/sécurité. Par exemple, le dispositif de contrôle peut sélectionner la ou les trajectoires dont les rayons de courbures soient les plus grands (trajectoires les moins brusques ou dangereuses).
Une combinaison de ces deux critères peut notamment être une présélection des trajectoires compatibles avec la destination, puis la sélection de la trajectoire présentant le meilleur confort de conduite/sécurité parmi les trajectoires présélectionnées. D’autres critères peuvent néanmoins être prévus.
A une étape 324, le dispositif de contrôle contrôle l’égo-véhicule sur la base de la trajectoire sélectionnée.
La Figure 4 illustre la structure d’un dispositif de contrôle 400 selon un mode de réalisation de l’invention. Un tel dispositif de contrôle 400 intègre le premier réseau de neurones, qui a subi la phase d’apprentissage 300 décrite en référence à la figure 3.
Le dispositif de contrôle 400 comprend un processeur 402 configuré pour communiquer de manière unidirectionnelle ou bidirectionnelle, via un ou des bus, avec une mémoire 404 telle qu’une mémoire de type « Random Access Memory », RAM, ou une mémoire de type « Read Only Memory », ROM, ou tout autre type de mémoire (Flash, EEPROM, etc). En variante, la mémoire 404 comprend plusieurs mémoires des types précités. Le processeur 402 peut en outre intégrer, ou communiquer avec, le dispositif de génération 110 en phase d’exploitation 320.
La mémoire 404 est apte à stocker, de manière permanente ou temporaire, au moins certaines des données utilisées et/ou issues de la mise en œuvre du procédé selon l’invention. En particulier, la mémoire 404 est apte à stocker des données propres à l’égo-véhicules, des instructions à exécuter, et les données acquises du ou des capteurs.
Le processeur 402 est apte à exécuter des instructions, stockées dans la mémoire 404, pour la mise en œuvre des étapes de la phase d’exploitation 320 procédé selon l’invention, illustré en référence à la Figure 3. De manière alternative, le processeur 402 peut être remplacé par un microcontrôleur conçu et configuré pour réaliser les opérations de la phase d’exploitation 320, notamment la fonction de génération du premier réseau de neurones.
Le dispositif de contrôle 400 peut en outre comprendre une interface d’entrée 401 et une interface de sortie 403 afin de communiquer avec d’autres éléments du véhicule, tels que des capteurs ou un dispositif de communication, tel qu’une interface cellulaire/satellitaire. En particulier, l’interface d’entrée 400 est apte à recevoir des données depuis le ou les capteurs et/ou depuis le dispositif de communication. Le processeur 402 est apte à transmettre des commandes à l’interface de sortie 403, notamment pour réaliser les commandes issues du pilotage du véhicule de l’étape 324.
La présente invention ne se limite pas aux formes de réalisation décrites ci-avant à titre d’exemples ; elle s’étend à d’autres variantes.
Des équations et calculs ont en outre été détaillés. L’invention n’est pas limitée à la forme de ces équations et calcul, et s’étend à tout type d’autre forme mathématiquement équivalente.
Claims (10)
- Procédé de génération de trajectoires de conduite d’un égo-véhicule, comprenant :
une phase d’apprentissage (300) d’un réseau de neurones d’un dispositif de génération (110) de trajectoires dans un système de réseaux antagonistes génératifs, le dispositif de génération étant apte, sur réception d’une carte de contexte (200), à générer une pluralité de trajectoires (210;211;212) compatibles avec la carte de contexte;
une phase courante (320) comprenant les étapes suivantes :
- obtention (321) d’une carte de contexte courante sur la base de données captées par l’égo-véhicule ;
- génération (322) d’une pluralité de trajectoires par le dispositif de génération sur la base de la carte de contexte courante ;
- sélection (323) d’une trajectoire parmi la pluralité générée ;
- contrôle (324) du véhicule autonome sur la base de la trajectoire sélectionnée. - Procédé selon la revendication 1, dans lequel le système de réseaux antagonistes génératifs comprend le dispositif de génération de trajectoires (110) comprenant le réseau de neurones dit premier réseau de neurones, une base de données (120) stockant des trajectoires en association avec des cartes contexte respectives, un dispositif de sélection (140) et un dispositif de discrimination (130) comprenant un deuxième réseau de neurones, et dans lequel la phase d’apprentissage comprend les étapes suivantes :
- obtention (302) d’une carte de contexte de la base de données, une première trajectoire étant associée à la carte de contexte dans la base de données ;
- génération (304) d’une trajectoire, dite deuxième trajectoire, par le premier réseau de neurones sur la base de la carte de contexte obtenue ;
- sélection (306) par le dispositif de sélection d’une trajectoire parmi la première trajectoire et la deuxième trajectoire ;
- discrimination (307) par le dispositif de discrimination de la trajectoire sélectionnée pour déterminer si la trajectoire sélectionnée provient du dispositif de génération ou de la base de données ;
- obtention (308) d’au moins un résultat issu de la discrimination ;
- ajustement (311) de paramètres des premier et deuxième réseaux de neurones sur la base du résultat obtenu. - Procédé selon la revendication 2, dans lequel un premier résultat issu de la discrimination est obtenu à partir d’une première fonction de perte associée au premier réseau de neurones, et un deuxième résultat issu de la discrimination est obtenu à partir d’une deuxième fonction de perte du deuxième réseau de neurones, et dans lequel les première et deuxième fonctions de perte sont antagonistes.
- Procédé selon la revendication 2 ou 3, dans lequel le résultat issu de la discrimination est comparée à un objectif prédéterminé, et dans lequel la phase d’apprentissage (300) est itérée tant que le résultat issu de la discrimination se satisfait pas l’objectif prédéterminé.
- Procédé selon l’une des revendications 2 à 4, dans lequel la phase d’apprentissage (300) comprend une phase préalable d’obtention de la base de données à partir de trajectoires réelles de différents véhicules et de cartes de contexte correspondantes.
- Procédé selon l’une des revendications précédentes, dans lequel le dispositif de génération génère k trajectoires sur la base d’un tirage de k valeurs aléatoires, k étant supérieur ou égal à 2.
- Procédé selon la revendication 6, dans lequel les k valeurs aléatoires sont issues de tirages indépendants d’une distribution suivant une loi normale.
- Programme informatique comportant des instructions pour la mise en œuvre du procédé selon l’une quelconque des revendications précédentes, lorsque ces instructions sont exécutées par un processeur.
- Dispositif de contrôle (400) d’un égo-véhicule, le dispositif de contrôle comprenant :
une interface d’entrée (401) pour recevoir des données obtenues par l’égo-véhicule ;
un processeur (402) apte à déterminer une carte de contexte courante à partir des données captées ;
un dispositif de génération de trajectoires (110) apte à générer une pluralité de trajectoires compatibles avec la carte de contexte courante, dans lequel le dispositif de génération comprend un réseau de neurones soumis à un apprentissage dans un système de réseaux antagonistes génératifs ;
dans lequel le processeur est en outre apte à sélectionner une trajectoire parmi la pluralité et à contrôler l’égo-véhicule sur la base de la trajectoire sélectionnée. - Véhicule comportant un dispositif de contrôle selon la revendication 9.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR2006224A FR3111424A1 (fr) | 2020-06-15 | 2020-06-15 | Génération de trajectoires par un réseau de neurones issu d’un système de réseaux antagonistes génératifs |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR2006224A FR3111424A1 (fr) | 2020-06-15 | 2020-06-15 | Génération de trajectoires par un réseau de neurones issu d’un système de réseaux antagonistes génératifs |
FR2006224 | 2020-06-15 |
Publications (1)
Publication Number | Publication Date |
---|---|
FR3111424A1 true FR3111424A1 (fr) | 2021-12-17 |
Family
ID=73698897
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR2006224A Withdrawn FR3111424A1 (fr) | 2020-06-15 | 2020-06-15 | Génération de trajectoires par un réseau de neurones issu d’un système de réseaux antagonistes génératifs |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR3111424A1 (fr) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114355921A (zh) * | 2021-12-28 | 2022-04-15 | 北京易航远智科技有限公司 | 车辆循迹轨迹生成方法、装置、电子设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190042859A1 (en) * | 2017-08-02 | 2019-02-07 | X Development Llc | Systems and Methods for Determining Path Confidence for Unmanned Vehicles |
-
2020
- 2020-06-15 FR FR2006224A patent/FR3111424A1/fr not_active Withdrawn
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190042859A1 (en) * | 2017-08-02 | 2019-02-07 | X Development Llc | Systems and Methods for Determining Path Confidence for Unmanned Vehicles |
Non-Patent Citations (2)
Title |
---|
GUPTA AGRIM ET AL: "Social GAN: Socially Acceptable Trajectories with Generative Adversarial Networks", 2018 IEEE/CVF CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION, IEEE, 18 June 2018 (2018-06-18), pages 2255 - 2264, XP033476191, DOI: 10.1109/CVPR.2018.00240 * |
ROY DEBADITYA ET AL: "Vehicle Trajectory Prediction at Intersections using Interaction based Generative Adversarial Networks", 2019 IEEE INTELLIGENT TRANSPORTATION SYSTEMS CONFERENCE (ITSC), IEEE, 27 October 2019 (2019-10-27), pages 2318 - 2323, XP033668297, DOI: 10.1109/ITSC.2019.8916927 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114355921A (zh) * | 2021-12-28 | 2022-04-15 | 北京易航远智科技有限公司 | 车辆循迹轨迹生成方法、装置、电子设备及存储介质 |
CN114355921B (zh) * | 2021-12-28 | 2022-10-18 | 北京易航远智科技有限公司 | 车辆循迹轨迹生成方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2017807B1 (fr) | Procédé de détermination automatique des limitations de vitesse sur une route et système associé | |
EP2642464B1 (fr) | Procédé de détermination d'information | |
FR3054684A1 (fr) | Systeme de pilotage d’un vehicule autonome | |
EP1848965B1 (fr) | Procede et dispositif de determination d`itineraire avec points d`interet | |
FR2955935A1 (fr) | Appareil pour planifier des combinaisons de trajets, procede et programme a cet effet | |
FR3074123A1 (fr) | Evaluation d'un style de conduite d'un conducteur d'un vehicule routier en mouvement par apprentissage automatique | |
EP3519267B1 (fr) | Assistance à la conduite sur voie rapide à chaussées séparées par un rail de sécurité | |
FR2977026A1 (fr) | Procede et dispositif pour determiner l'aptitude d'un trajet | |
FR3111424A1 (fr) | Génération de trajectoires par un réseau de neurones issu d’un système de réseaux antagonistes génératifs | |
FR3082038A1 (fr) | Estimation dynamique du tangage instantane d'une camera embarquee dans un vehicule automobile | |
WO2020165544A1 (fr) | Identification de zones roulables avec prise en compte de l'incertitude par une méthode d'apprentissage profond | |
FR3034067B1 (fr) | Procede et dispositif d'assistance de conduite | |
EP3472015B1 (fr) | Procédé de détermination d'une classe de conduite de référence | |
WO2022008304A1 (fr) | Procédé de commande d'un véhicule automobile muni de moyens de conduite autonome | |
FR3096158A1 (fr) | système et procédé d’aide à la mobilité d’un véhicule tout terrain | |
FR3110752A1 (fr) | Prise de décision d’une stratégie d’évitement dans un groupement de véhicules | |
FR3106108A1 (fr) | Procédé et dispositif de détermination de trajectoire d’une route | |
FR3094126A1 (fr) | Dispositif électronique de sélection automatique d’une configuration de surveillance d’une zone de trafic routier, procédé de sélection et programme d’ordinateur associés | |
FR3057693A1 (fr) | Dispositif de localisation et dispositif de production de donnees d'integrite | |
FR3093052A1 (fr) | Assistance à la conduite d’un véhicule, par prise de décision à partir d’informations d’environnement généralisables | |
WO2020174142A1 (fr) | Assistance à la conduite d'un véhicule, par détermination fiable d'objets dans des images déformées | |
WO2019220030A1 (fr) | Procédé et dispositif d'assistance à la conduite automatisée d'un véhicule par détermination de la sûreté d'une trajectoire proposée | |
EP4251485A1 (fr) | Procédé et dispositif de détermination d'une ligne virtuelle de délimitation entre deux voies de circulation | |
WO2022128643A1 (fr) | Méthode d'aide à la conduite d'un véhicule automobile autonome sur une route | |
WO2021170917A1 (fr) | Optimisation du franchissement d'un système de signalisation par un égo-véhicule |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PLFP | Fee payment |
Year of fee payment: 2 |
|
PLSC | Publication of the preliminary search report |
Effective date: 20211217 |
|
ST | Notification of lapse |
Effective date: 20230205 |