Brevet FR3099282A1 — publié le 20210129

Description Titre de l'invention : Analyse de trajectoires d'aéronefs Domaine de l'invention [0001] Le document concerne le domaine de l'avionique en général et en particulier celui de l'apprentissage en matière de détection d'anomalies dans la trajectoire d'un aéronef. Etat de la technique [0002] Le problème technique de la détection d'anomalies est connu en informatique. Toutefois, les solutions connues en la matière ne répondent qu'imparfaitement dans le domaine très spécifique de l'avionique. [0003] A cc jour, il n'existe en effet aucune technique dite de « massive testing » pour détecter des anomalies dans des trajectoires d'aéronef Dit autrement, il n'existe pas de procédés adaptés pour conduire des tests dans un contexte où les masses de données sont très importantes (contexte « Big Data »). [0004] La mise à disposition de grandes masses données offre des opportunités d'usage des techniques d'apprentissage automatique. En particulier, il existe un besoin quant à la détection automatique de trajectoires anormales d'un aéronef Cependant, pour être efficiente, cette détection doit se fonder sur des modélisations des analyses humaines au sujet des systèmes des gestions de vol, acronyme FMS. [0005] Dans un contexte Big data, il convient de reconnaître des anomalies ou problèmes connus (i.c. des objets prédéfinis) mais également d'identifier des problèmes non-connus (inconnus). Par ailleurs, cette double détection doit être effectuée indépendamment, à terme, de l'expertise humaine (e.g. testeur ou utilisateur). [0006] Selon l'état de la technique, les approches connues permettent de détecter une ou plusieurs anomalies connues (i.c. qui sont caractérisées ou prédéfinics) dans de grandes niasses de données, par exemple en vérifiant des règles logiques prédéfinies. En revanche le problème technique initial non résolu consiste à identifier des anomalies inconnuesa priori, et ce avec une haute qualité d'analyse. Résumé de l'invention 100071 Le document décrit des dispositifs et des procédés mis en oeuvre par ordinateur pour l'analyse de trajectoires d'aéronefs, le procédé comprenant les étapes consistant à recevoir des données associées à une pluralité de trajectoires d'aéronefs ; décomposer lesdites trajectoires en une pluralité de vecteurs, un vecteur comprenant une ou plusieurs séquences d'énumérés; aligner plusieurs trajectoires vectorisées par décalage des séquences d'énumérés d'une ou de plusieurs positions; et détecter une ou plusieurs anomalies dans une ou plusieurs trajectoires par classification non-supervisée (e.g. DBSCAN). Des développements décrivent la détermination de modèles de détection 2 d'anomalies de trajectoires (160) de manière supervisée, l'utilisation d'algorithmes basés sur la densité, l'utilisation d'un ou de plusieurs réseaux de neurones et/ou arbres de décision, une ou plusieurs étapes d'affichage, notamment de causes racines (intelligence artificielle explicable ou compréhensible), le traitement de flux de données avioniques, etc. Des aspects de système (e.g. calcul) et de logiciel sont décrits. [0008] Avantageusement, les modèles de détection d'anomalies déterminés par l'invention sont embarquables à bord d'un aéronef. En d'autres termes, il n'est pas toujours requis d'embarquer les données (qui peuvent être très volumineuses, plusieurs téra ou péta-octets de données). En effet, les pondérations dans les réseaux de neurones (par exemple) « encodent » les données (par exemple les millions d'images n'ont pas besoin d'être embarqués une fois que le réseau de neurones les a traitées) [0009] Avantageusement, les vectorisations des trajectoires améliorent selon les différents modes de réalisation de l'invention améliorent l'efficacité des algorithmes de classification. [0010] Avantageusement, il est possible d'identifier une anomalie inconnue (une nouvelle anomalie), même si le volume de données manipulées est faible (le cas échéant, il est tiré parti de l'expertise encodée lors de la réalisation du test) [0011] Avantageusement, des modes de réalisation de l'invention permettent d'obtenir un système de gestion de vol ou SMS plus robuste du fait de la validation d'un vaste ensemble de trajectoires (ou de nouvelles bases de données de trajectoires). Un cercle vertueux peut ainsi être mis en place : l'identification de nouvelles anomalies peut permettre d'entraîner à nouveau le modèle de prédiction, et inversement le modèle de prédiction amélioré permet de nouvelles anomalies. [0012] Avantageusement, l'invention permet de réaliser, au sol, avec des grandes puissances de calcul des méthodes d'apprentissage automatique effectuées sur de grandes masses de données Big Data puis d'embarquer un modèle entraîné nécessitant peu de ressources de calcul. Description des figures [0013] D'autres caractéristiques et avantages de l'invention apparaîtront à l'aide de la des- cription qui suit et des figures des dessins annexés dans lesquels: [0014] La [fig.11 1 illustre des exemples d'étapes selon un mode de réalisation de l'invention; [0015] La [fig.2] illustre l'étape de détermination d'un ou de plusieurs modèles em- barquables de détection d'anomalies; [0016] La [fig.3] montre un exemple de vectorisation des trajectoires; [0017] La [fig.4] montre un exemple de manipulation des trajectoires vectorisées; [0018] La [fig.5] montre un autre exemple de manipulation des trajectoires vectorisées. 3 Description détaillée de l'invention [0019] Selon les modes de réalisation de l'invention, un « aéronef » peut être un drone, ou un avion commercial, ou un avion de fret, ou bien encore un hélicoptère, embarquant. ou non des passagers. Plus généralement, le terme « aéronef » dans la description ci-après peut être remplacé par les termes de véhicule, voiture, camion, bus, train, moto, bateau, robot, sous-marin, jouet, etc. ou tout élément étant susceptible d'être télé-piloté (par liaison radio, satellite, ou autre), au moins partiellement (de manière intermittente, ou périodique, ou même opportuniste au cours du temps). [0020] Les trajectoires manipulées peuvent être de différentes natures. En général, les tra- jectoires manipulées correspondent à des vols réels, pour lesquels des mesures ont été effectuées. En analysant les vols réels passés, un vol présent ou courant ou actuel peut être surveillé (le flux de données est analysé de manière à détecter une anomalie en « temps-réel ». Un vol futur (par exemple simulé) peut aussi être manipulé et jaugé ou surveillé selon les différents modes de réalisation de l'invention (prédiction de trajectoires admissibles, i.c. sans anomalie). Par extension, les trajectoires manipulées peuvent également être des trajectoires « virtuelles » et non pas réelles (c.g. simulées, vraisemblables, calcifiées, etc). L'origine des trajectoires peut d'ailleurs âtre conservée par la gestion de métadonnées (données sur les données) ; des pondérations peuvent éventuellement être effectuées (c.g. donnée mesurée ayant plus de poids qu'une donnée générée par la machine). Plus généralement encore, les trajectoires manipulées par l'invention peuvent être des trajectoires en 3D (3 dimensions d'espace), mais aussi des trajectoires de N dimensions. Par exemple, les trajectoires peuvent être des trajectoires 4D (3D plus temps), SD avec le carburant (fuel), 6D avec la météorologie, etc). Une anomalie peut concerner une ou plusieurs de ces dimensions ou paramètres. [0021] Les anomalies manipulées par l'invention peuvent être de différentes natures. Les anomalies peuvent être des anomalies de trajectoire, lesquels peuvent être indicatives d'un certain nombre de problèmes sous-jacents. Plus généralement, des anomalies peuvent concerner tout type de données, par exemple les logs de sécurité, les données de sortie du FMS, des informations de type météorologique, des données NOTAM, etc. Une grande diversité d'anomalies sont possibles (boude latérale non nécessaire, mode de poussée sélectionné pendant un temps très court, entrées/sorties d'aérofreins non nécessaires, etc). [0022] Dans le cadre de l'invention, les anomalies manipulées sont principalement des anomalies de trajectoire. En aval du procédé selon l'invention, certains modes de réalisation avantageux comprennent notamment la vente de services de validations de trajectoires. Ces analyses peuvent utiles à une grande diversité d'acteurs, par exemple au concepteur de procédures aéronautiques, aux fournisseurs A424, aux compagnies aériennes (analyse des cycles de hases de données, ouverture de routes analyse des comportements des pilotes, analyse des instructions émanant du contrôle aérien (c.g. détection de comportements anormaux ou suspects), analyse des consommations de carburant etc. [0023] Dans un mode de réalisation, les anomalies détectées sont stockées, pour référence ultérieure. Une anomalie peut être associée à de nombreuses métadonnées : nature de l'anomalie, aspects quantitatifs (numériques, valeurs statiques et/ou dynamiques c.g. dérives, etc), état (c.g. suspicion, infirmée, confirmée, avérée), relations (c.g. cause racine, relations de causalité tierces ou corrélations etc). Dans un mode de réalisation, des anomalies sont stockées dans une chaine de blocs (e.g. anomalies avérées, « vraies », telles qu'agréées par consensus distribué entre pilote, compagnie et ATC par exemple). [0024] L'expression anglaise "Big Data" désigne la collecte et l'analyse de données, ef- fectuées de manière massive. Ce concept est associé avec des caractéristiques de nature technique qui comprennent: le volume (c.g. grandes collections de données, même si elles sont redondantes), la variété (e.g. de nombreuses sources différentes sont utilisées), la vélocité (e.g. les données sont « &aiches » ou constamment mises à jour dans des environnements changeants ou dynamiques), attestant d'une certaine véracité (e.g. les signaux faibles qui sont noyés dans le bruit ne sont pas supprimés et peuvent par suite être détectés ou amplifiés), pour représenter in fine une certaine valeur (par exemple d'utilité du point de vue technique et/ou métier i.e. business). La présente invention renforce significativement les caractéristiques de vélocité et de véracité des données (données fraiches ou valides, pas obsolètes ou autrement datées). [0025] Différents types d'apprentissage automatique (ou machine) sont possibles. L'apprentissage automatique est un domaine de l'informatique qui utilise des techniques statistiques pour donner aux systèmes informatiques la possibilité "d'apprendre" avec des données (par exemple, pour améliorer progressivement les performances d'une tâche spécifique), et ce sans être explicitement programmé à cette fin. [0026] L'apprentissage automatique est utile pour la détection et la reconnaissance des motifs ou schémas ou patterns. Il est généralement plus facile de collecter les données (par exemple, les données d'un jeu vidéo ou de société) que d'écrire explicitement le programme qui régit le jeu considéré. De plus, des réseaux de neurones (réalisation matérielle de l'apprentissage automatique, ou émulation logicielle) peuvent être réutilisés pour traiter de nouvelles données. L'apprentissage automatique peut être effectué sur des données particulièrement volumineuses, c'est-à-dire en utilisant autant de données que possible (e.g. stabilité, convergence, signaux faibles, etc). De nouvelles données peuvent être ajoutées en permanence et l'apprentissage peut être affiné. [0027] Différents algorithmes d'apprentissage peuvent être utilisés, en combinaison avec les caractéristiques selon l'invention. Le procédé peut comprendre un ou plusieurs algorithmes parmi les algorithmes comprenant: les "machines à vecteur de support" ou "séparateurs à vaste marge" (en anglais « Support Vcctor Machine », acronyme SVM) ; le « boosting » (classificurs); les réseaux de neurones (en apprentissage non-supervisé) ; les arbres de décision ("Random Forest"), les méthodes statistiques comme le modèle de mixture gaussienne ; la régression logistique ; l'analyse discriminante linéaire ; et les algorithmes génétiques. [0028] Les tâches d'apprentissage automatique sont généralement classées en deux grandes catégories, selon qu'il existe un "signal" ou des entrées d'apprentissage ou des "retours d'information" ou sorties disponibles ». [0029] L'expression « apprentissage supervisé" désigne une situation dans laquelle il est présenté à l'ordinateur des exemples d'entrées et des exemples de sorties (réelles ou souhaitées). L'apprentissage consiste alors en l'identification d'un entrelacs de règles fait correspondre les entrées aux sorties (ces règles peuvent être compréhensibles ou non pour l'homme). [0030] L'expression «apprentissage semi-supervisé» désigne une situation dans laquelle l'ordinateur ne reçoit qu'un ensemble de données incomplet: par exemple il existe des données de sortie manquantes. Il est donc possible d'ajouter des données manquantes pour basculer dans un mode non supervisé. Un autre moyen consiste à utiliser des filtres externes (correspondant par exemple à des scénarios connus), pour filtrer les données de sorties et confirmer/infirmer les anomalies détectées par apprentissage non supervisé. Enfin, il est possible d'ajuster la pondération entre les différents algorithmes mis en oeuvre pour la détection d'anomalies et/ou d'en paramétrer un ou plusieurs paramètres. L'expression « semi-supervisé » ne signifie donc pas qu'une contribution humaine est nécessaire (au moins directement). [0031] L'expression « apprentissage par renforcement» consiste à apprendre les actions à prendre, à partir d'expériences, de façon à optimiser une récompense quantitative au cours du temps. Au travers d'expériences itérées, un comportement décisionnel (appelé stratégie ou politique, qui est une fonction associant à l'état courant l'action à exécuter) est déterminé comme étant optimal, en ce qu'il maximise la somme des récompenses au cours du temps. [0032] L'expression «apprentissage non-supervisé» (également appelé apprentissage ap- profondi ou apprentissage profond) désigne une situation dans laquelle aucune annotation n'existe (pas de libellé, pas de description, etc), laissant l'algorithme d'apprentissage seul pour trouver une ou plusieurs structures, entre entrées et sorties. L'apprentissage non-supervisé peut être un objectif en soi (découverte de structures cachées dans les données) ou un moyen de parvenir à un objectif (apprentissage par les fonctionnalités). 6 [0033] Selon les modes de réalisation, la contribution humaine dans les étapes d'apprentissage automatique peut varier. Dans certains modes de réalisation, l'apprentissage automatique est appliqué à l'apprentissage automatique lui-même (réflexif). L'ensemble du processus d'apprentissage peut en effet être automatisé, notamment en utilisant plusieurs modèles et en comparant les résultats produits par ces modèles. Dans la plupart des cas, les humains participent à l'apprentissage automatique (Altman in the loop»). Les développeurs ou curateurs sont responsables de la maintenance des amas de données: ingestion de données, nettoyage des données, découverte de modèles etc. Dans certains cas, l'homme n'a pas à intervenir, l'apprentissage est entièrement automatique une fois les données mises à disposition. [0034] L'apprentissage automatique utilisé en combinaison avec les caractéristiques selon l'invention bénéficie généralement du fait de disposer de grandes quantités de données. L'expression anglaise "Big data" désigne la collecte et l'analyse de données, effectuées de manière massive. Ce concept est associé avec des caractéristiques de nature technique qui comprennent: le volume (e.g. grandes collections de données, même si elles sont redondantes), la variété (e.g. de nombreuses sources différentes sont utilisées), la vélocité (e.g. les données sont « &aiches » ou constamment mises à jour dans des environnements changeants ou dynamiques), attestant d'une certaine véracité (e.g. les signaux faibles qui sont noyés dans le bruit ne sont pas supprimés et peuvent par suite être détectés ou amplifiés), pour représenter in fine une certaine valeur (par exemple d'utilité du point de vue technique et/ou métier i.e. business). [0035] Dans un mode de réalisation, une méthode d'apprentissage « sur politique » peut être utilisée. Les méthodes sur politique sont des méthodes itératives alternant des phases d'évaluation et d'amélioration de la politique. Elles se fondent sur l'estimation courante de la fonction valeur (respectivement de qualité) en l'état courant pour déterminer le choix de la prochaine action (contrôle), après observation du nouvel état courant et du signal de renforcement reçu, le modèle qui a été employé est mis à jour. Un exemple classique de ce type de méthode est l'algorithme SARSA. [0036] Dans un mode de réalisation, une méthode d'apprentissage « hors politique » peut être utilisée. Les méthodes hors politique ne sont quant à elles pas sensibles à la manière dont les actions sont sélectionnées à chaque instant mais seulement au fait d'observer une politique de contrôle présentant un niveau d'exploration suffisant. De ce fait elles peuvent librement observer une politique de contrôle différente (pouvant être sous-optimale). Un exemple classique d'algorithme hors politique est l'algorithme Q-learning. [0037] Dans un mode de réalisation, il est décrit un procédé mis en oeuvre par ordinateur pour l'analyse de trajectoires d'aéronefs, le procédé comprenant les étapes consistant à : recevoir des données associées à une pluralité de trajectoires d'aéronefs ; dé- 7 composer lesdites trajectoires en une pluralité de vecteurs, un vecteur comprenant une ou plusieurs séquences d'énumérés; aligner plusieurs trajectoires vectorisées par décalage des séquences de d'énumérés d'une ou de plusieurs positions; détecter une ou plusieurs anomalies dans une ou plusieurs trajectoires par classification non-supervisée. Vecteurs [0038] Un vecteur contient des types de valeurs ou des symboles ou des « énumérés » parmi une pluralité finie. Dans un mode de réalisation, les vecteurs comprennent des chaincs de caractères symboliques. Un caractère représente une classe, et ce n'est qu'un moyen de le représenter. Un chiffre fait aussi bien. En programmation informatique, un type énuméré (appelé souvent énumération, parfois type énumératif ou liste énumérative) est un type de données qui consiste en un ensemble de valeurs constantes. Lorsqu'une variable est de type énuméré, elle peut avoir comme valeur n'importe quel cas de ce type énuméré. Par exemple, des cartes à jouer ordinaires peuvent être représentées par des énumérations (couleur et hauteur). Le type booléen (logique) est un type énuméré prédéfini qui possède deux énumérateurs (« vrai » et « faux »). [0039] Dans un mode de réalisation, les trajectoires sont vectorisées. La décomposition en vecteurs s'effectue de manière à conserver l'information comprise dans la succession des segments de vol. L'objectif est d'unifier le nombre de paramètre de chaque trajectoire. Pour des temps et distances différentes le nombre de paramètres d'entrée des algorithmes est identique. Avantageusement, la vectorisation des trajectoires permet de conserver l'ensemble des informations de la trajectoire/procédure et de réduire la déformation (ex: ne pas « casser la pente », notion d'ordre dans une séquence de legs...) [0040] Dans un mode de réalisation, le procédé comprend les étapes consistant à déterminer une ou plusieurs caractéristiques de trajectoires, lesdites caractéristiques comprenant notamment la masse, la version du système de gestion de vol, la version de la base de données de navigation, la version du modèle de performances. Alignement [0041] L'alignement de séquences (ou alignement séquentiel) manipule des séquences (de symboles, de mots, de chiffres, etc) de manière à en faire ressortir les régions "homologues" ou "similaires" ou "identiques". Différents algorithmes peuvent être utilisés: algorithme de Smith-Waterman, utilisation de matrices de similarité, matrices de substitution, programmation dynamique, etc. [0042] A la différence des méthodes utilisées en bio-informatique qui autorisent la découpe en sous-séquences (introduction de « trous » à certaines positions dans les séquences, associées à des pénalités), les trajectoires vectorisées selon l'invention ne peuvent pas être distordues à un tel point. L'étape d'alignement doit s'effectuer sans introduction de trous (ou vides opérationnels). La comparaison de sous-séquences doit être 8 effectuée avec attention, car des changements de paliers risqueraient par exemple d'être comparés à des descentes pour atterrissage. [0043] La prise en compte de métadonnécs (e.g. type d'appareil, distance volée...), si dis- ponibles, peuvent permettent de déterminer des comparaisons raisonnables. Des étapes de clustering ou de sélection intermédiaires peuvent donc être ajoutées. [0044] Les méthodes d'alignement peuvent soit essayer d'aligner les séquences sur la totalité de leur longueur, on parle alors d'alignement global, soit se restreindre à des régions limitées dans lesquelles la similarité est forte, à l'exclusion du reste des séquences, on parle alors d'alignement local. [0045] En matière d'alignement de séquences, deux types principaux peuvent être distingués, suivant leur complexité de mise en oeuvre. L'alignement par paires consiste à aligner deux séquences grâce à un algorithme de complexité polynomiale. Il est possible de réaliser un alignement global, (i.c. entre les deux séquences sur toute leur longueur) ou bien local (i.c. entre une séquence et une partie de l'autre séquence). [0046] Un alignement multiple consiste à aligner plus de deux séquences et nécessite un temps de calcul et un espace de stockage exponentiels en fonction de la taille des données. [0047] Selon les modes de réalisation, une ou plusieurs sous-chaines peuvent être dé- terminées. Un alignement de chaînes peut notamment comprendre l'algorithme de Needleman-Wunsch, de Smith-Waterrnan ou la transformée de Burrows-Wheeler. [0048] Dans certains modes de réalisation, la mesure de similarité peut comprendre le calcul d'une distance. En mathématiques, on appelle distance sur un ensemble E toute application d définie sur le produit ExE et à valeurs dans l'ensemble des réels positifs, vérifiant les propriétés suivantes de symétrie {d(a,b)=d(b,a)}, de séparation {d(a,b)=0 équivalent à a=b} et d'inégalité triangulaire {d(x,z) REVENDICATIONS[Revendication 1] Procédé mis en oeuvre par ordinateur pour l'analyse de trajectoires d'aéronefs, le procédé comprenant les étapes consistant à : - recevoir (100) des données associées à une pluralité de trajectoires d'aéronefs ; - décomposer (110) lesdites trajectoires en une pluralité de vecteurs (120), un vecteur comprenant une ou plusieurs séquences d'énumérés; - aligner plusieurs trajectoires vectorisées par décalage des séquences d'énumérés d'une ou de plusieurs positions dans les séquences d'énumérés; - détecter une ou plusieurs anomalies dans une ou plusieurs trajectoires par classification non-supervisée (130). [Revendication 2] Procédé selon la revendication 1, comprenant en outre une étape consistmil à déterminer un ou plusieurs modèles de détection d'anomalies de trajectoires (160) de manière supervisée. [Revendication 3] Procédé selon la revendication 1, la classification non-supervisée utilisant un ou plusieurs algorithmes basés sur la densité. [Revendication 4] Procédé selon la revendication 3, un algorithme basé sur la densité étant de type DBSCAN et/ou [FOREST. [Revendication 5] Procédé selon la revendication 2, un modèle de détection d'anomalies comprenant un ou plusieurs réseaux de neurones et/ou arbres de décision [Revendication 6] Procédé selon la revendication 2, un modèle de détection d'anomalies corrélant une ou plusieurs des anomalies déterminées à une ou plusieurs causes racines prédéfinies, le procédé comprenait en outre l'étape consistmil à afficher dans le cockpit ou à destination du pilote une ou plusieurs desdites causes racines prédéfinies [Revendication 7] Procédé selon la revendication 6, comprenant en outre l'étape consistant à recevoir une confirmation ou une infirmation d'existence d'une anomalie [Revendication 8] Procédé selon l'une quelconque des revendications précédentes, les tra- jectoires étant des trajectoires latérales, et/ou des trajectoires verticales et/ou des modes de poussées. [Revendication 9] Procédé selon la revendication 2, comprenant en outre une étape consistant à recevoir des données avioniques de trajectoire dudit aéronef, par exemple depuis le système de gestion de vol, et à déterminer une ou plusieurs anomalies à partir desdits un ou plusieurs 21 modèles de détection d'anomalies (160). [Revendication 10] Procédé selon la revendication 9, comprenant en outre une étape consistant à communiquer lesdites une ou plusieurs anomalies déterminées durant le vol d'un ou de plusieurs aéronefs. [Revendication 11] Procédé selon l'une quelconque des revendications précédentes, une ou plusieurs anomalies étant stockées dans une hase de données (140), ladite hase de données étant centralisée, et interrogeable en tout ou partie. [Revendication 12] Procédé selon l'une quelconque des revendications précédentes, une ou plusieurs anomalies étant stockées dans une hase de données (140), ladite hase de données étant décentralisée, en utilisant une ou plusieurs chaincs de blocs. [Revendication 13] Un produit programme d'ordinateur, ledit programme d'ordinateur comprenant des instructions de code permettant d'effectuer les étapes du procédé selon l'une quelconque des revendications 1 à 12, lorsque ledit programme est exécuté sur un ordinateur. [Revendication 14] Un système pour l'analyse de trajectoires d'aéronefs, le système comprenant des moyens pour mettre en oeuvre les étapes du procédé selon l'une quelconque des revendications 1 à 12. [Revendication 15] Système selon la revendication 14, comprenant un ou plusieurs réseaux de neurones choisis parmi les réseaux de neurones comprenant : - un réseau de neurones artificiels ; - un réseau de neurones artificiels acyclique ; - un réseau de neurones récurrents ; - un réseau de neurones à propagation avant ; - un réseau neuronal convolutif; - un réseau de neurones antagonistes génératifs.