Brevet FR3127313A1 — publié le 20230324

Procédé d’évaluation des performances d’un modèle de conduite pour un véhicule La présente invention concerne un procédé d’évaluation des performances d’un modèle de conduite pour un véhicule, le modèle de conduite étant un réseau de neurones préalablement entraîné pour déterminer une action de conduite du véhicule, parmi un ensemble d’actions prédéfinies, en fonction d’un ensemble d’états caractérisant un scénario dans lequel le véhicule évolue dans un environnement, le procédé comprenant les phases suivantes : l’obtention d’une base de données d’évaluation, la base de données d’évaluation comprenant plusieurs scénarios caractérisés par un ensemble d’états, et l’évaluation des performances du modèle de conduite pour chaque scénario de la base de données d’évaluation, l’évaluation étant faite par détermination d’actions tolérées et critiques et de de scénarios limites pour chaque scénario considéré. Figure pour l'abrégé : Figure 2 Procédé d’évaluation des performances d’un modèle de conduite pour un véhicule La présente invention concerne un procédé d’évaluation des performances d’un modèle de conduite pour un véhicule. La présente invention concerne aussi un produit programme d’ordinateur associé. Au cours des dernières années, la sûreté des outils d’apprentissage profond (en anglais « deep learning ») est devenu un sujet majeur de recherche dans le domaine de l’intelligence artificielle. En particulier, l’apprentissage par renforcement profond (en anglais « deep reinforcement learning »), qui combine des techniques d’apprentissage par renforcement (en anglais « reinforcement learrning ») et d’apprentissage profond, est principalement utilisé pour la manipulation de robots ou la navigation. Cependant, les modèles obtenus par de telles techniques sont considérés comme des algorithmes de boîte noire en raison de l'utilisation de réseaux neuronaux profonds pour réaliser les prédictions. A cet effet, plusieurs approches ont été développées pour certifier la décision des modèles obtenus par un apprentissage par renforcement profond. Il est notamment connu des méthodes d'apprentissage par renforcement adverse utilisant deux agents, à savoir un adversaire et un protagoniste. Il est aussi connu des méthodes basées sur l'observation du pire état possible. D’autres méthodes utilisent des fonctions de contrôle où la politique apprise par le réseau de neurones appartient à un ensemble de politiques considérées comme sûres. Néanmoins, de telles méthodes ne permettent pas de répondre aux besoins de sécurité en termes d’exigences et de spécifications industrielles. L’absence d’une réponse à ces besoins constitue la principale limite au déploiement et à l'industrialisation des modèles obtenus par un apprentissage par renforcement. Il existe donc un besoin pour un moyen permettant une meilleure évaluation des performances d’un outil d’intelligence artificielle, notamment en termes de sûreté de fonctionnement et de robustesse. A cet effet, la présente description a pour objet un procédé d’évaluation des performances d’un modèle de conduite pour un véhicule, le modèle de conduite étant un réseau de neurones préalablement entraîné pour déterminer une action de conduite du véhicule, parmi un ensemble d’actions prédéfinies, en fonction d’un ensemble d’états caractérisant un scénario dans lequel le véhicule évolue dans un environnement, le procédé étant mis en œuvre par ordinateur et comprenant les phases suivantes : l’obtention d’une base de données d’évaluation, la base de données d’évaluation comprenant plusieurs scénarios dans lesquels le véhicule évolue dans un environnement, chaque scénario étant caractérisé par un ensemble d’états propres à prendre différentes valeurs au cours du temps, chaque état ayant une valeur initiale correspondant à l’instant de début du scénario correspondant, l’évaluation des performances du modèle de conduite pour chaque scénario de la base de données d’évaluation, la phase d’évaluation comprenant, pour chaque scénario de la base de données d’évaluation, les étapes suivantes : la détermination, parmi l’ensemble d’actions prédéfinies, pour chaque instant du scénario considéré, des actions tolérées pour la conduite du véhicule selon le scénario considéré et des actions critiques pour la conduite du véhicule selon le scénario considéré, la détermination, par le modèle de conduite, d’une action de conduite du véhicule pour chaque instant du scénario considéré, tant que l’action déterminée est différente d’une action critique, la détermination, pour au moins un état du scénario considéré, dit état perturbé, d’une borne inférieure et d’une borne supérieure relative à une perturbation dudit état perturbé, la perturbation s’étendant sur un intervalle de valeurs de perturbations, la borne inférieure et la borne supérieure étant les sorties d’un modèle prédéterminé dont les entrées sont la valeur initiale de l’état et l’intervalle de perturbations, la valeur initiale dudit état perturbé étant comprise entre la borne inférieure et la borne supérieure, la détermination d’un jeu de scénarios, dits scénarios limites, pour le scénario considéré, chaque scénario limite différant du scénario considéré par remplacement de la valeur initiale d’au moins un état perturbé par la borne inférieure ou par la borne supérieure dudit état perturbé, chaque état perturbé ayant pour valeur la borne inférieure dudit état perturbé dans au moins un scénario limite, et ayant pour valeur la borne supérieure dudit état perturbé dans au moins un autre scénario limite, et la détermination, par le modèle de conduite, d’une action de conduite du véhicule pour chaque instant de chaque scénario limite déterminé, tant que l’action déterminée est différente d’une action critique, la validation du modèle de conduite pour le scénario considéré lorsque, pour chaque instant, l’action déterminée pour le scénario considéré et les actions déterminées pour les scénarios limites correspondent à une même action parmi les actions tolérées pour le scénario considéré audit instant, le modèle de conduite étant invalidé pour le scénario considéré sinon. Suivant des modes de réalisation particuliers, le procédé comprend une ou plusieurs des caractéristiques suivantes, prise(s) isolément ou suivant toutes les combinaisons techniquement possibles : - lorsque le modèle de conduite est invalidé pour le scénario considéré, il est obtenu au moins un motif d’invalidation correspondant qui est choisi parmi les motifs suivants : - un motif d’invalidation pour non-respect de contraintes de sécurité lorsqu’au moins l’une des actions déterminées pour le scénario considéré et les scénarios limites est une action critique, et - un motif d’invalidation pour défaut de robustesse lorsque l’action déterminée pour au moins un instant du scénario limite est différente de l’action déterminée pour le même instant du scénario considéré. les étapes de détermination de bornes, de détermination d’un jeu de scénario limites, de détermination d’une action de conduite pour chaque scénario limite et de validation du modèle de conduite pour le scénario considéré sont mises en œuvre seulement lorsque les actions déterminées pour le scénario considéré sont des actions tolérées, le modèle de conduite étant sinon invalidé pour le scénario considéré pour non-respect de contraintes de sécurité. les scénarios de la base de données d’évaluation sont tels que pour au moins un instant d’un scénario, il est déterminé plusieurs actions tolérées distinctes pour la conduite du véhicule autonome. les actions tolérées et critiques pour chaque scénario considéré sont déterminées en fonction de contraintes de sécurité, les contraintes de sécurité étant de préférence conformes à la norme ISO/PAS 21448 :2019 SOTIF. les états caractérisant chaque scénario comprennent la position et la vitesse du véhicule, ainsi que la position relative et, le cas échéant la vitesse relative, d’au moins un élément dans l’environnement du véhicule. les états perturbés sont choisis parmi la position et la vitesse du véhicule. à l’issue de la phase d’évaluation, le procédé comprend l’une des phases suivantes : la validation et/ou la certification du modèle de conduite pour l’intégration dans un véhicule lorsqu’une donnée, relative aux éventuels scénarios pour lesquels le modèle de conduite a été invalidé, est comprise dans un premier intervalle prédéterminé, ou l’invalidation du modèle de conduite lorsqu’une donnée, relative aux éventuels scénarios pour lesquels le modèle de conduite a été invalidé, est comprise dans un deuxième intervalle prédéterminé, le deuxième intervalle prédéterminé étant différent du premier intervalle prédéterminé, ou la détermination de règles d’utilisation du modèle de conduite en fonction d’au moins un scénario pour lequel le modèle de conduite a été invalidé. le modèle de conduite a été entraîné selon une technique d’apprentissage par renforcement, de préférence d’apprentissage par renforcement profond. La présente description se rapporte également à un produit programme d’ordinateur comportant un support lisible d’informations, sur lequel est mémorisé un programme d’ordinateur comprenant des instructions de programme, le programme d’ordinateur étant chargeable sur une unité de traitement de données et adapté pour entraîner la mise en œuvre d’un procédé tel que précédemment décrit lorsque le programme d’ordinateur est mis en œuvre sur l’unité de traitement des données. La présente description concerne aussi un support lisible d’informations sur lequel est mémorisé un produit programme d’ordinateur tel que précédemment décrit. D’autres caractéristiques et avantages de l’invention apparaîtront à la lecture de la description qui suit de modes de réalisation de l’invention, donnés à titre d’exemple uniquement et en référence aux dessins qui sont : , , une vue schématique d’un exemple d’ordinateur permettant la mise en œuvre d’un procédé d’évaluation des performances d’un modèle de conduite pour un véhicule, , , un organigramme d’un exemple de mise en œuvre d’un procédé d’évaluation des performances d’un modèle de conduite pour un véhicule, , , un exemple d’une scène d’un premier scénario dans lequel le véhicule d’étude évolue dans un environnement, , , un exemple d’une scène d’un deuxième scénario dans lequel le véhicule d’étude évolue dans un environnement, , , un exemple d’une scène d’un troisième scénario dans lequel le véhicule d’étude évolue dans un environnement, et , , un exemple d’une scène d’un quatrième scénario dans lequel le véhicule d’étude évolue dans un environnement. Un calculateur 10 et un produit programme d’ordinateur 12 sont illustrés par la . Le calculateur 10, est de préférence, un ordinateur. Plus généralement, le calculateur 10 est un calculateur électronique propre à manipuler et/ou transformer des données représentées comme des quantités électroniques ou physiques dans des registres de calculateur 10 et/ou des mémoires en d’autres données similaires correspondant à des données physiques dans des mémoires, des registres ou d’autres types de dispositifs d’affichage, de transmission ou de mémorisation. Le calculateur 10 est en interaction avec le produit programme d’ordinateur 12. Comme illustré par la , le calculateur 10 comporte un processeur 14 comprenant une unité de traitement de données 16, des mémoires 18 et un lecteur 20 de support d’informations. Dans l’exemple illustré par la , le calculateur 10 comprend un clavier 22 et une unité d’affichage 24. Le produit programme d’ordinateur 12 comporte un support d’informations 26. Le support d’information 26 est un support lisible par le calculateur 10, usuellement par l’unité de traitement de données 16. Le support lisible d’informations 26 est un médium adapté à mémoriser des instructions électroniques et capable d’être couplé à un bus d’un système informatique. A titre d’exemple, le support d’informations 26 est une disquette ou disque souple (de la dénomination anglaise « Floppy disc »), un disque optique, un CD-ROM, un disque magnéto-optique, une mémoire ROM, une mémoire RAM, une mémoire EPROM, une mémoire EEPROM, une carte magnétique ou une carte optique. Sur le support d’informations 26 est mémorisé le programme d’ordinateur 12 comprenant des instructions de programme. Le programme d’ordinateur 12 est chargeable sur l’unité de traitement de données 16 et est adapté pour entraîner la mise en œuvre d’un procédé d’évaluation des performances d’un modèle de conduite pour un véhicule, lorsque le programme d’ordinateur 12 est mis en œuvre sur l’unité de traitement 16 du calculateur 10. Le fonctionnement du calculateur 10 va maintenant être décrit en référence à la , qui illustre schématiquement un exemple de mise en œuvre d’un procédé d’évaluation des performances d’un modèle de conduite pour un véhicule, et aux figures 3 à 6 qui sont des exemples illustrant des scènes de scénarios utilisés lors de certaines phases du procédé. Le procédé d’évaluation vise à évaluer les performances d’un modèle de conduite M pour un véhicule. Le véhicule est de préférence un véhicule autonome, tel qu’une voiture autonome, ou un véhicule semi-autonome. Dans d’autres exemples, le véhicule est choisi parmi tous types de véhicules terrestres, aériens ou encore navals. Par le terme « performances », il est entendu l’évaluation de la sûreté des décisions prises par le modèle, c’est-à-dire le respect de contraintes de sécurité par le modèle, ainsi que la robustesse du modèle. La robustesse du modèle désigne la capacité à ne pas être perturbé par une petite modification dans les données d’entrée ou dans les paramètres du modèle. Le modèle de conduite M est un réseau de neurones préalablement entraîné pour déterminer une action A t de conduite du véhicule, parmi un ensemble d’actions A t prédéfinies, en fonction d’un ensemble d’états S t caractérisant un scénario dans lequel le véhicule évolue dans un environnement. Un scénario (aussi appelée épisode) est une succession de scènes dans le temps, les scènes s’enchaînant à des instants successifs. Les instants correspondent par exemple au instant de prises d’image des scènes et dépendent donc de la fréquence image. Les états S t caractérisant le scénario sont donc les entrées du modèle de conduite M et les actions A t sont les potentielles sorties du modèle de conduite M. En particulier, les états S t caractérisent le véhicule et l’environnement dans lequel évolue le véhicule pour un scénario donné. De préférence, les états S t caractérisant chaque scénario comprennent la position et la vitesse du véhicule, ainsi que la position relative et, le cas échéant la vitesse relative, d’au moins un élément dans l’environnement du véhicule. Dans un mode de mise en œuvre, les états S t comprennent aussi une indication sur la direction de déplacement du véhicule et des éventuels autres éléments en mouvement. En variante, il est supposé que le véhicule et les éventuels éléments se déplacent dans la même direction. Les éléments sont, par exemple, des obstacles à éviter par le véhicule. Les obstacles sont, par exemple, d’autres véhicules, des êtres humains, des animaux ou encore des installations ou des objets sur le parcours du véhicule. Les actions A t sont destinées à commander le véhicule de sorte à assurer la conduite du véhicule. Les actions A t sont destinées soit à être directement mises en œuvre sur le véhicule (conduite autonome), soit à servir d’aide à un conducteur (conduite semi-autonome). Dans un exemple, les actions de conduite A t sont choisies parmi les actions de conduite suivantes : accélérer, décélérer, tourner à droite, tourner à gauche, et ne rien faire. De préférence, le modèle de conduite M a été entraîné selon une technique d’apprentissage par renforcement, voire une technique d’apprentissage par renforcement profond. Cela signifie que les données ayant servies à entraîner le modèle de conduite M ne sont pas des données labellisées. L’apprentissage par renforcement met en œuvre un agent qui apprend à effectuer une tâche en maximisant des récompenses cumulatives décomptées. L'agent agit en choisissant séquentiellement des actions à partir d'observations sur une séquence de pas de temps. L'apprentissage par renforcement profond utilise des réseaux de neurones pour apprendre ou approximer certains composants (paramètres) de l'algorithme d’apprentissage par renforcement, tels que l'équation de Bellman, la transition d'état et la politique. Par exemple, le modèle de conduite M a été entraîné selon un algorithme dit d’optimisation de la politique proximale (en anglais « proximal policy optimization algorithm », abrégé en PPO) tel que décrit dans l’article Schulman, J., F. Wolski, P. Dhariwal, A. Radford, and O. Klimov (2017), Proximal policy optimization algorithms. arXi v p r eprin t arXiv:1707.06347 . Un tel algorithme PPO utilise un réseau neuronal critique et un réseau neuronal acteur. Le réseau critique produit une estimation d’une fonction de valeur qui est une estimation de la récompense actualisée cumulative future attendue à partir des états courants, en suivant une politique actuelle définie par le réseau acteur. En variante, le modèle de conduite M a été entraîné selon d’autres techniques d’apprentissage par renforcement. Le procédé d’évaluation comprend une phase 100 d’obtention d’une base de données d’évaluation. La phase 100 est mise en œuvre par le calculateur 10 en interaction avec le produit programme d’ordinateur 12, c’est-à-dire est mise en œuvre par ordinateur. La base de données d’évaluation a été conçue pour évaluer les performances du modèle de conduite M. La base de données d’évaluation comprend, ainsi, plusieurs scénarios dans lesquels le véhicule évolue dans un environnement, chaque scénario étant caractérisé par un ensemble d’états S t prenant différentes valeurs au cours du temps. Chaque état S t a une valeur initiale V c correspondant à l’instant de début (instant initial) du scénario correspondant. Les scénarios ont, par exemple, été générés via un outil de génération de scénarios, tel que l’outil décrit dans l’article Leurent, E. (2018), An Environment for Autonomous Driving Decision-Making. En variante, les scénarios sont obtenus sur des cas réels via des mesures effectuées par des capteurs. Les figures 3 à 6 illustrent des exemples de scènes de scénarios en deux dimensions dans lesquels une voiture autonome évolue dans un environnement. Dans cet environnement, l'agent conduit un véhicule (voiture) sur une autoroute inﬁnie avec quatre voies de circulation allant toutes dans la même direction. L'agent observe trois voies, celle sur laquelle il se trouve VP, les deux voies adjacentes, gauche VG et droite VD. Le véhicule conduit par l'agent (l'ego-véhicule 40) est inséré dans un flux de traﬃc (les exo-véhicules 42). Chaque exo-véhicule 42 suit un algorithme de conduite de base. L'objectif de l'agent est de conduire le plus rapidement possible sans collision. L'épisode se termine lorsque l'ego-véhicule 40 entre en collision avec un autre véhicule 42 ou lorsqu’une durée prédéterminée de l’épisode est atteinte. Dans ces scénarios, les états S t comprennent les états suivants : la position de l'ego-véhicule 40 sur la largeur de la route, la vitesse de l'ego-véhicule 40, les positions des exo-véhicules 42 les plus proches, avant et arrière, droite et gauche, sur chacune des voies adjacentes par rapport à l'ego-véhicule 40, et leurs vitesses par rapport à la vitesse de l'ego-véhicule 40. Les actions A t possibles pour le modèle de conduite M pour ces scénarios sont les suivantes : accélérer, décélérer, tourner à droite, tourner à gauche, et ne rien faire (rester sur la même voie avec la même vitesse). Une accélération est, par exemple, de 5 mètres par seconde. De même, une décélération est, par exemple, de 5 mètres par seconde. Dans cet exemple, la fonction de récompense du modèle de conduite M est de la forme suivante : Où : est la vitesse du véhicule ego, est la moyenne des vitesses des véhicules exos, et désigne le maximum de X. Le procédé d’évaluation comprend une phase 110 d’évaluation des performances du modèle de conduite M pour chaque scénario de la base de données d’évaluation. La phase d’évaluation 110 vise notamment à évaluer le respect de contraintes de sécurité (aussi appelées exigences de sécurité) et la robustesse du modèle de conduite M pour chaque scénario de la base de données d’évaluation. La phase 110 est mise en œuvre par le calculateur 10 en interaction avec le produit programme d’ordinateur 12, c’est-à-dire est mise en œuvre par ordinateur. Dans ce qui suit, nous décrivons les étapes de la phase d’évaluation 110 qui sont mises en œuvre pour chaque scénario de la base de données d’évaluation. La phase d’évaluation comprend une étape 110A de détermination, parmi l’ensemble d’actions A t prédéfinies pour le modèle de conduite M, pour chaque instant du scénario considéré, des actions A t tolérées pour la conduite du véhicule selon le scénario considéré et des actions A t critiques pour la conduite du véhicule selon le scénario considéré. Une action est dite tolérée lorsque sa mise en œuvre est conforme à des contraintes de sécurité pour le scénario considéré. Une action est dite critique sinon. Lors de l’étape 110A, chaque action est déterminée comme étant tolérée ou critique, indépendamment de l’action réellement réalisée dans la simulation. De préférence, les actions A t tolérées et critiques pour chaque scénario considéré sont déterminées en fonction de contraintes (exigences) de sécurité prédéfinies. Les contraintes de sécurité sont, avantageusement, conformes à la norme ISO/PAS 21448 :2019 SOTIF. Cette norme définit des niveaux de sécurité acceptables pour un véhicule routier afin d’éviter des risques déraisonnables. Le concept de base est l’introduction d’un processus itératif de développement et de conception de la fonction qui comprend la validation et la vérification, ce qui conduit à une fonction considérée comme sûre. Cette approche suppose qu'il existe une zone de scénarios connus avec un comportement sûr du système et une zone inconnue avec des dommages potentiels. De préférence, les scénarios de la base de données d’évaluation sont tels que pour au moins un instant d’un scénario, il est déterminé plusieurs actions tolérées et/ou actions critiques distinctes pour la conduite du véhicule autonome. Les sorties du modèle de conduite M ne sont donc pas binaires. Sur les exemples des figures 3 à 6, il est illustré les zones Z C correspondant à des actions critiques pour le véhicule et les zones Z T correspondant à des actions tolérées pour le véhicule. En particulier, pour la scène du scénario de la , la seule action critique est de tourner à droite. Pour la scène du scénario de la , les actions critiques sont de tourner à droite ou de tourner à gauche. Pour la scène du scénario de la , les actions critiques sont de tourner à droite ou d’accélérer. Pour la scène du scénario de la , la seule action critique est de décélérer. La phase d’évaluation 110 comprend une étape 110B de détermination, par le modèle de conduite M, d’une action de conduite A t du véhicule pour chaque instant du scénario considéré. L’action déterminée est soit une action tolérée, soit une action critique. Cela est réalisé tant que l’action déterminée est différente d’une action critique (et jusqu’à la fin du scénario). Dans un mode préféré de mise en œuvre, les étapes suivantes de la phase d’évaluation sont mises en œuvre seulement lorsque l’action déterminée pour chaque instant du scénario considéré est une action tolérée. En effet, lorsque l’action déterminée est une action critique, cela signifie que le modèle de conduite M n’est pas sûr pour le scénario considéré (non-respect des contraintes de sécurité). Le modèle de conduite M est alors considéré invalide pour le scénario considéré, dès l’étape 110B. La phase d’évaluation 110 comprend une étape 110C de détermination, pour au moins un état S t du scénario considéré, dit état perturbé S t *, d’une borne inférieure δ inf et d’une borne supérieure δ sup relatives à une perturbation dudit état perturbé S t *. La borne inférieure δ inf et la borne supérieure δ sup sont des valeurs de même nature que l’état perturbé S t * (si l’état perturbé correspond à une vitesse (respectivement une position), la perturbation est une vitesse (respectivement une position)). La perturbation s’étend sur un intervalle de valeurs de perturbations. Par exemple, plus ou moins 5 km/heure pour la vitesse, ou plus ou moins 3 mètres pour la position. La borne inférieure δ inf et la borne supérieure δ sup sont déterminées sur la base d’un modèle prédéterminé, dit modèle d’interprétation abstraite. Les entrées du modèle d’interprétation abstraite sont la valeur initiale V c de l’état perturbé et l’intervalle de perturbations correspondant. Les sorties du modèle d’interprétation abstraite sont la borne inférieure δ inf et la borne supérieure δ sup . Le modèle d’interprétation abstraite est un ensemble de fonctions. Le modèle d’interprétation abstraite a été conçu en conformité avec la théorie de l’interprétation abstraite. Des exemples de réalisation d’un modèle d’interprétation abstraite sont décrits dans les articles suivants : Article 1 : Patrick Cousot & Radhia Cousot. Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In Conference Record of the Sixth Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages , pages 238—252, Los Angeles, California, 1977. ACM Press, New York. Article 2 : Gehr, T., M. Mirman, D. Drachsler-Cohen, P. Tsankov, S. Chaudhuri et M. Vechev (2018). Ai2 : Safety and robustness certification of neural networks with abstract interpretation. In 2018 IEEE Symposium on Security and Privacy (SP), pp 3-18 IEEE. L’interprétation abstraite telle que décrite dans l’article 1 est une théorie d'approximation discrète de la sémantique des systèmes informatiques, principalement utilisée pour l'analyse et la vériﬁcation statique des logiciels. La sémantique des programmes décrit l'ensemble de tous les comportements possibles de ces programmes lorsqu'ils sont exécutés pour toutes les données d'entrée possibles. En d'autres termes, le comportement de tout programme peut être formellement décrit pour toutes les relations et transitions qui le constituent. Globalement, l'interprétation abstraite est une méthode classique de sur-approximation robuste et précise d'un ensemble potentiellement illimité ou inﬁni de comportements de programmes. Les idées clés derrière ce concept sont (i) les transformateurs abstraits" pour approcher le comportement du programme. Ils sont déﬁnis pour les instructions utilisées par le programme (par exemple, arithmétique affine, fonctions ReLU, etc) ; (ii) le domaine abstrait qui est simplement un ensemble d'éléments abstraits (approximations) généralement ordonnés dans un treillis (ensemble ordonné où toute paire d'éléments à une borne supérieure et une borne inférieure). L’article 2 développe une méthode de vériﬁcation appelée AI2 basée sur des interprétations abstraites qui peuvent raisonner sur la sécurité et la robustesse des systèmes de Deep Learning. AI2 vise à évaluer un travail de réseau neuronal profond contre des perturbations locales ou globales. Elle garantit également l'absence d'attaques adverses dans un intervalle certifié. Le modèle d’interprétation abstraite est, par exemple, conforme au modèle décrit dans cet article. Le modèle d’interprétation abstraite est, par exemple, construit sur la base des librairies ERAN et ELINA. La valeur initiale V c dudit état perturbé S t * est comprise entre la borne inférieure δ inf et la borne supérieure δ sup . Les états perturbés S t * sont de préférence des états relatifs au véhicule d’étude, et non des états de l’environnement. Les états perturbés S t * sont avantageusement choisis parmi la position et la vitesse du véhicule. Par exemple, dans le cas des scènes de scénarios illustrées en figures 3 à 6, il est considéré une perturbation en position pour l’ego véhicule qui s’étend sur un intervalle de 0 à 8,75 mètres, et une perturbation en vitesse pour l’ego véhicule qui s’étend sur un intervalle de 0 à 1,75 m/s. La phase d’évaluation 110 comprend une étape 110D de détermination d’un jeu de scénarios, dits scénarios limites, pour le scénario considéré. Chaque scénario limite diffère du scénario considéré par remplacement de la valeur initiale V c d’au moins un état perturbé S t * par la borne inférieure δ inf ou par la borne supérieure δ sup dudit état perturbé S t *. Chaque état perturbé S t * a pour valeur la borne inférieure δ inf dudit état perturbé S t * dans au moins un scénario limite, et a pour valeur la borne supérieure δ sup dudit état perturbé S t * dans au moins un autre scénario limite. En d’autres termes, chaque borne inférieure ou supérieure d’un état perturbé S t * correspond à au moins un scénario limite. Dans un exemple, chaque scénario limite correspond aux bornes inférieures ou supérieures de plusieurs états perturbés S t * (position et vitesse par exemple). Dans un autre exemple, les scénarios limites couvrent toutes les combinaisons de bornes inférieures et supérieures pour les états perturbés S t *. La phase d’évaluation 110 comprend une étape 110E de détermination, par le modèle de conduite M, d’une action A t de conduite du véhicule pour chaque instant de chaque scénario limite déterminé. L’action déterminée pour chaque instant de chaque scénario limite est soit une action tolérée, soit une action critique. Cela est réalisé pour chaque scénario limite tant que l’action déterminée est différente d’une action critique (et jusqu’à la fin du scénario limite). La phase d’évaluation 110 comprend une étape 110F de validation ou d’invalidation du modèle de conduite M pour le scénario considéré. En particulier, le modèle de conduite M est validé pour le scénario considéré lorsque, pour chaque instant, l’action A t déterminée pour le scénario considéré et les actions A t déterminées pour les scénarios limites correspondent à une même action A t parmi les actions A t tolérées pour le scénario considéré (déterminée pour l’instant considéré). Le modèle de conduite M est invalidé pour le scénario considéré sinon. De préférence, lorsque le modèle de conduite M est invalidé pour le scénario considéré, il est obtenu au moins un motif d’invalidation correspondant qui est choisi parmi les motifs suivants : - un motif d’invalidation pour non-respect de contraintes de sécurité lorsqu’au moins l’une des actions A t déterminées pour le scénario considéré et les scénarios limites est une action A t critique, et - un motif d’invalidation pour défaut de robustesse lorsque l’action A t déterminée pour au moins un instant du scénario limite est différente de l’action A t déterminée pour le même instant du scénario considéré. Optionnellement, le procédé d’évaluation 120 comprend l’une des phases suivantes : - la validation et/ou la certification du modèle de conduite M pour l’intégration dans un véhicule lorsqu’une donnée relative aux éventuels scénarios pour lesquels le modèle de conduite M a été invalidé, est comprise dans un premier intervalle prédéterminé. La donnée est, par exemple, le taux (pourcentage) de scénarios invalidés. Le premier intervalle prédéterminé est, par exemple, compris entre 0 et 5%. - l’invalidation du modèle de conduite M lorsqu’une donnée relative aux éventuels scénarios pour lesquels le modèle de conduite M a été invalidé est comprise dans un deuxième intervalle prédéterminé. Le deuxième intervalle prédéterminé est différent du premier intervalle prédéterminé. Le modèle invalidé est, par exemple, utilisé pour être par la suite réentraîné sur une base de données d’entraînement enrichie. La donnée est, par exemple, le taux (pourcentage) de scénarios invalidés. Le deuxième intervalle prédéterminé est, par exemple, compris entre 5% et 100%. - la détermination de règles d’utilisation du modèle de conduite M en fonction d’au moins un scénario pour lequel le modèle de conduite M a été invalidé. Les règles stipulent par exemple qu’un mode de conduite manuelle est activé lorsque les états S t en entrée du modèle de conduite M correspondent à un scénario similaire à un scénario pour lequel le modèle de conduite M a été invalidé. Ainsi, le présent procédé permet d’évaluer les performances d’un modèle de conduite M en testant le modèle sur différents scénarios et en appliquant une perturbation sur chaque scénario. Un tel procédé permet, ainsi, d’évaluer la sûreté et la robustesse du modèle de conduite M. En fonction des résultats des tests, le modèle de conduite M pourra être certifié, modifié, invalidé ou certifié moyennant des règles d’utilisation prédéfinies. En particulier, un tel procédé met en œuvre une adaptation du principe de l’interprétation abstraite pour tous types de modèles (y compris les modèles obtenus par renforcement) afin d’évaluer la robustesse du modèle. En outre, un tel procédé permet également de définir des situations critiques en terme de sécurité pour chaque scénario sans prendre en compte comment le modèle de conduite M, a appris et dans quel environnement. Un tel procédé est particulièrement adapté à l’évaluation des performances de modèles obtenus par apprentissage par renforcement, pour lesquels plusieurs décisions tolérées peuvent être prises par un modèle. L’homme du métier comprendra que les modes de réalisation et variantes précédemment décrits peuvent être combinés pour former de nouveaux modes de réalisation pourvu qu’ils soient compatibles techniquement. En outre, il est à noter que l’ordre des différentes étapes de la phase d’évaluation 110 est donné à titre d’exemple dans la description. Ainsi, cet ordre est susceptible d’être modifié tant que l’enchaînement des étapes est compatible techniquement. Par exemple, l’étape 110B peut être réalisée avant l’étape 110A, ou l’étape 110B qui serait réalisée après les étapes 110C et 110D. Procédé d’évaluation des performances d’un modèle de conduite (M) pour un véhicule, le modèle de conduite (M) étant un réseau de neurones préalablement entraîné pour déterminer une action (A t ) de conduite du véhicule, parmi un ensemble d’actions (A t ) prédéfinies, en fonction d’un ensemble d’états (S t ) caractérisant un scénario dans lequel le véhicule évolue dans un environnement, le procédé étant mis en œuvre par ordinateur et comprenant les phases suivantes : l’obtention d’une base de données d’évaluation, la base de données d’évaluation comprenant plusieurs scénarios dans lesquels le véhicule évolue dans un environnement, chaque scénario étant caractérisé par un ensemble d’états (S t ) propres à prendre différentes valeurs au cours du temps, chaque état (S t ) ayant une valeur initiale (V c ) correspondant à l’instant de début du scénario correspondant, l’évaluation des performances du modèle de conduite (M) pour chaque scénario de la base de données d’évaluation, la phase d’évaluation comprenant, pour chaque scénario de la base de données d’évaluation, les étapes suivantes : la détermination, parmi l’ensemble d’actions (A t ) prédéfinies, pour chaque instant du scénario considéré, des actions (A t ) tolérées pour la conduite du véhicule selon le scénario considéré et des actions (A t ) critiques pour la conduite du véhicule selon le scénario considéré, la détermination, par le modèle de conduite (M), d’une action de conduite (A t ) du véhicule pour chaque instant du scénario considéré, tant que l’action déterminée est différente d’une action critique, la détermination, pour au moins un état (S t ) du scénario considéré, dit état perturbé (S t *), d’une borne inférieure (δ inf ) et d’une borne supérieure (δ sup ) relative à une perturbation dudit état perturbé (S t *), la perturbation s’étendant sur un intervalle de valeurs de perturbations, la borne inférieure (δ inf ) et la borne supérieure (δ sup ) étant les sorties d’un modèle prédéterminé dont les entrées sont la valeur initiale (V c ) de l’état et l’intervalle de perturbations, la valeur initiale (V c ) dudit état perturbé (S t *) étant comprise entre la borne inférieure (δ inf ) et la borne supérieure (δ sup ), la détermination d’un jeu de scénarios, dits scénarios limites, pour le scénario considéré, chaque scénario limite différant du scénario considéré par remplacement de la valeur initiale (V c ) d’au moins un état perturbé (S t *) par la borne inférieure (δ inf ) ou par la borne supérieure (δ sup ) dudit état perturbé (S t *), chaque état perturbé (S t *) ayant pour valeur la borne inférieure (δ inf ) dudit état perturbé (S t *) dans au moins un scénario limite, et ayant pour valeur la borne supérieure (δ sup ) dudit état perturbé (S t *) dans au moins un autre scénario limite, et la détermination, par le modèle de conduite (M), d’une action (A t ) de conduite du véhicule pour chaque instant de chaque scénario limite déterminé, tant que l’action déterminée est différente d’une action critique, la validation du modèle de conduite (M) pour le scénario considéré lorsque, pour chaque instant, l’action (A t ) déterminée pour le scénario considéré et les actions (A t ) déterminées pour les scénarios limites correspondent à une même action (A t ) parmi les actions (A t ) tolérées pour le scénario considéré audit instant, le modèle de conduite (M) étant invalidé pour le scénario considéré sinon. Procédé selon la revendication 1, dans lequel lorsque le modèle de conduite (M) est invalidé pour le scénario considéré, il est obtenu au moins un motif d’invalidation correspondant qui est choisi parmi les motifs suivants : un motif d’invalidation pour non-respect de contraintes de sécurité lorsqu’au moins l’une des actions (A t ) déterminées pour le scénario considéré et les scénarios limites est une action (A t ) critique, et un motif d’invalidation pour défaut de robustesse lorsque l’action (A t ) déterminée pour au moins un instant du scénario limite est différente de l’action (A t ) déterminée pour le même instant du scénario considéré. Procédé selon la revendication 1 ou 2, dans lequel les étapes de détermination de bornes, de détermination d’un jeu de scénario limites, de détermination d’une action (A t ) de conduite pour chaque scénario limite et de validation du modèle de conduite (M) pour le scénario considéré sont mises en œuvre seulement lorsque les actions (A t ) déterminées pour le scénario considéré sont des actions (A t ) tolérées, le modèle de conduite (M) étant sinon invalidé pour le scénario considéré pour non-respect de contraintes de sécurité. Procédé l’une quelconque des revendications 1 à 3, dans lequel les scénarios de la base de données d’évaluation sont tels que pour au moins un instant d’un scénario, il est déterminé plusieurs actions tolérées distinctes pour la conduite du véhicule autonome. Procédé selon l’une quelconque des revendications 1 à 4, dans lequel les actions (A t ) tolérées et critiques pour chaque scénario considéré sont déterminées en fonction de contraintes de sécurité, les contraintes de sécurité étant de préférence conformes à la norme ISO/PAS 21448 :2019 SOTIF. Procédé selon l’une quelconque des revendications 1 à 5, dans lequel les états (S t ) caractérisant chaque scénario comprennent la position et la vitesse du véhicule, ainsi que la position relative et, le cas échéant la vitesse relative, d’au moins un élément dans l’environnement du véhicule. Procédé selon la revendication 6, dans lequel les états perturbés (S t *) sont choisis parmi la position et la vitesse du véhicule. Procédé selon l’une quelconque des revendications 1 à 7, dans lequel à l’issue de la phase d’évaluation, le procédé comprend l’une des phases suivantes : la validation et/ou la certification du modèle de conduite (M) pour l’intégration dans un véhicule lorsqu’une donnée, relative aux éventuels scénarios pour lesquels le modèle de conduite (M) a été invalidé, est comprise dans un premier intervalle prédéterminé, ou l’invalidation du modèle de conduite (M) lorsqu’une donnée, relative aux éventuels scénarios pour lesquels le modèle de conduite (M) a été invalidé, est comprise dans un deuxième intervalle prédéterminé, le deuxième intervalle prédéterminé étant différent du premier intervalle prédéterminé, ou la détermination de règles d’utilisation du modèle de conduite (M) en fonction d’au moins un scénario pour lequel le modèle de conduite (M) a été invalidé. Procédé selon l’une quelconque des revendications 1 à 8, dans lequel le modèle de conduite (M) a été entraîné selon une technique d’apprentissage par renforcement, de préférence d’apprentissage par renforcement profond. Produit programme d’ordinateur comportant un support lisible d’informations, sur lequel est mémorisé un programme d’ordinateur comprenant des instructions de programme, le programme d’ordinateur étant chargeable sur une unité de traitement de données et entraînant la mise en œuvre d’un procédé selon l’une quelconque des revendications 1 à 9 lorsque le programme d’ordinateur est mis en œuvre sur l’unité de traitement des données.