Brevet FR2970796A1 — publié le 20120727

PROCEDE DE TRAITEMENT DE MESSAGES DE PANNES GENERES DANS UN APPAREIL A SYSTEMES COMPLEXES Domaine de l'invention L'invention concerne un procédé de traitement des messages de pannes générés dans un appareil à systèmes complexes tel qu'un aéronef. Ce procédé a pour but de simplifier la maintenance des appareils contenant des systèmes complexes, typiquement des aéronefs, en analysant les messages de pannes afin d'isoler les systèmes / équipements réellement en panne et nécessitant donc une action de maintenance. L'invention trouve des applications dans le domaine de la maintenance d'un appareil et, plus précisément, dans le domaine du diagnostic de pannes d'un appareil tel qu'un aéronef. Etat de la technique Il est bien clair que l'amélioration continue des techniques et la recherche de performances toujours plus élevées font que la quantité et la complexité des systèmes embarqués dans les moyens de transport actuels ne cessent de croître, en particulier dans les aéronefs. Parallèlement à l'accroissement de ces systèmes, leurs systèmes respectifs de contrôle de fonctionnement se perfectionnent. Des messages de pannes sont générés par ces systèmes à chaque détection de défaillance d'un des systèmes. L'accroissement du nombre de système entraine un accroissement des messages de pannes générés. Ces nombreux messages de pannes générés par l'aéronef nécessitent d'être interprétés afin de décider des actions de maintenance à effectuer sur l'appareil. Or, les nombreuses dépendances entre les différents systèmes d'un appareil et, notamment, d'un aéronef impliquent qu'une panne réelle peut générer une réaction en chaîne de messages de pannes dans tout l'aéronef. Des messages de pannes secondaires, dérivant de la cause première de l'incident, ne doivent pas entraîner les actions de maintenance leur étant normalement associées, car elles ne traduisent pas de panne réelle d'un système, mais simplement des problèmes de conditions de fonctionnement de ce système du fait d'une panne en amont. Si un système défectueux est presque toujours repéré, d'autres systèmes non défectueux peuvent également être indiqués et entraîner des actions de maintenance. En effet, il a été estimé à environ 800/0 le nombre de messages de pannes inutiles, considérés comme des messages parasites. De nombreuses compagnies aériennes ont indiqué que cette question de faux messages de pannes (conduisant à des No Fault Found - NFF) était un problème important auquel il fallait trouver une solution. En effet, les vérifications inutiles de pannes parasites se traduisent par de longues immobilisations des aéronefs au sol, en maintenance, réduisant le temps de vol quotidien desdits aéronefs et donc la rentabilité des compagnies aériennes. Des outils de diagnostic ont déjà été conçus afin de pallier le problème des pannes, quel que soit le domaine d'activité. Une méthode se démarque des autres : l'approche à base de modèle. Le principe de cette méthode consiste à construire le "modèle" des systèmes que l'on souhaite diagnostiquer et à détecter une panne en observant les différences entre les événements entrants et sortants théoriques et réels. Sur cette base, des calculs d'interactions sont effectués afin de cibler le mieux possible le ou les éléments incriminés. Par la suite, de nouvelles approches ont émergé, afin d'affiner et perfectionner ces méthodes à base de modèle : les systèmes hybrides. Ces systèmes hybrides ont été affinés par des capacités de raisonnement, tels que le raisonnement à partir de cas, les chaînes de Markov, etc. Ces approches permettent alors de diagnostiquer des systèmes dont le comportement n'est pas connu ou de gérer des détections de fautes intermittentes par exemple. Plusieurs de ces méthodes ont pour point commun de partir du principe que les " modèles " des systèmes sont connus, c'est-à-dire que la logique complète des enchaînements de pannes sont connus. Ils se basent alors sur l'observation d'événements anormaux afin de déduire un diagnostic. Dans le cas de systèmes aéronautiques comportant un très grand nombre de sous-systèmes et de composants disposés dans un espace limité, dont le fonctionnement correct dépend de paramètres de température, d'environnement vibratoire, électrique, chimique, etc., et dont une panne peut provoquer des modifications locales de ces paramètres, les modèles des systèmes ne sont que très partiellement connus ou formalisés. L'observation de l'événement anormal initial ne peut se faire que via une série de messages de maintenance dont les causes et conséquences ne sont pas toujours clairement identifiées. Ceci limite grandement l'applicabilité de la méthode à base de modèles au présent problème de pannes multiples de systèmes avion. En outre, lorsqu'un modèle a été formalisé, il est figé, c'est-à-dire qu'il est abouti et considéré comme connu. Lorsqu'un évènement se produit, cet évènement est comparé au modèle formalisé puis classé comme évènement normal ou anormal. Or, dans le cas des systèmes aéronautiques, un modèle n'est jamais totalement abouti : à chaque nouveau vol, des évènements nouveaux ou des séquences nouvelles d'évènements peuvent se produire, dus par exemple à des conditions climatiques particulières. Un modèle figé ne permet donc pas de traiter correctement toutes les séquences de messages de pannes qui peuvent être produites lors d'un vol. Exposé de l'invention L'invention a justement pour but de remédier aux problèmes des techniques exposées précédemment. Pour cela, l'invention propose un procédé permettant d'améliorer les capacités de diagnostic et d'isolation des pannes dans un système complexe dont le modèle n'est pas complètement connu. Ce procédé permet de repérer les messages de pannes parasites avec suffisamment de confiance et d'expertise pour éviter les actions de maintenance inutiles et coûteuses. Il permet, en outre, d'accroître la connaissance sous-jacente à la génération de messages de pannes afin de pouvoir analyser les dépendances entre les systèmes et les réactions en chaîne des messages afin d'optimiser les actions de maintenance et d'isolation des systèmes défectueux. De façon plus précise, l'invention concerne un procédé de traitement d'au moins une séquence de messages de pannes survenant dans un appareil comprenant de nombreux systèmes, pour discriminer des messages de pannes probablement issus d'une réelle défaillance d'un système et des messages de pannes sans faute réelle du système, comportant : une phase d'apprentissage de données antérieures enregistrées dans un historique, ces données contenant des messages de pannes, pour trier et classer ces messages de pannes et construire un modèle de connaissances des motifs de pannes, et - une phase de test exécutée en temps réel pour traiter et enregistrer des nouvelles données provenant d'un test, caractérisé en ce que la phase de test comporte une étape de recherche de motifs approximatifs appliquée aux données issues du test pour reconnaitre et classer lesdites données en fonction du modèle de connaissances construit pendant la phase d'apprentissage. Le procédé de l'invention peut comporter une ou plusieurs des 10 caractéristiques suivantes : - la phase de test comporte une phase d'aide à la décision pour analyser les données issues du test afin de déterminer, pour chaque message de panne réelle, au moins un indice de confiance de la panne. - une troisième base de données est construite, à l'issue de l'étape de 15 recherche de motifs approximatifs, cette troisième base de données contenant des motifs de pannes reconnus. - les données de la troisième base de données sont filtrées et classées en quatre sous bases de données en fonction de la classification de chaque motif de panne et de la reconnaissance de ces motifs. 20 - la phase d'aide à la décision comporte une étape de calcul d'un indice de confiance local et d'un indice de confiance global, en inférant sur les résultats d'un apprentissage issu de la relation entre classification réelle et mesure d'intérêt (IM). - les mesures d'intérêts sont calculées par la formule : 25 IM - E classification x ln(E longueur) x E occurence - E distance E distance Longueurtotale Où IM est une mesure d'intérêt, « classification » est la classification du motif considéré, « longueur » est la longueur du motif, «occurrence » est le nombre de fois où le même motif est présent dans le vol, « distance » est 30 la déviation du motif dans la séquence, « longueur totale » est le nombre de messages générés pendant le vol. - les données issues du test sont introduites dans l'historique de données pour compléter la phase d'apprentissage. - la phase d'apprentissage comporte une étape de recherche de motifs séquentiels pour construire une première base de données contenant des motifs de pannes. - le procédé d'apprentissage comporte une étape de recherche de motifs approximatifs pour construire le modèle de connaissance contenant les motifs de pannes, associés chacun à un système et à une classification. - la classification est binaire, cette classification correspondant à des messages de pannes réelles ou des messages de pannes parasites. Brève description des dessins La figure 1 représente un diagramme fonctionnel montrant les différentes étapes du procédé de l'invention. La figure 2 représente, en A, les étapes constituant la phase d'apprentissage du procédé de l'invention et, en B, les étapes constituant la phase de test du procédé de l'invention. La figure 3 représente un diagramme fonctionnel montrant les étapes de la phase d'aide à la décision du procédé de l'invention. Description détaillée de modes de réalisation de l'invention Le procédé selon l'invention est destiné à être mis en oeuvre par l'intermédiaire d'un premier logiciel exécuté par un premier ordinateur, situé au sol, pour traiter et analyser des données d'un historique. Cet historique est constitué des données relatives à une pluralité de vols antérieurs, et à leur maintenance, enregistrées à des fins d'analyse. Ces données contiennent, notamment, les numéros de ces vols antérieurs et, pour chaque vol, les messages de pannes, les instants auxquels ces messages ont été générés, les systèmes défectueux et les systèmes non-défectueux pour lesquels des messages de pannes ont été générés. Le procédé de l'invention est destiné également à être mis en ceuvre par l'intermédiaire d'un second logiciel exécuté par un second ordinateur pour une analyse en temps réel des données d'un vol, appelé vol test, de l'aéronef. Ce second ordinateur peut être un calculateur embarqué sur un aéronef ou un ordinateur portable apte à être connecté, dès l'atterrissage de l'aéronef, au calculateur de bord dudit aéronef. Ce second ordinateur est apte à recevoir des données relatives aux messages de pannes des systèmes avion en temps réel par un réseau connu et pré-existant. Le premier logiciel exécute une phase d'apprentissage du procédé de l'invention. Le second logiciel exécute une phase de test du procédé de l'invention. La phase d'apprentissage constitue une boucle de traitement longue et la phase de test constitue une boucle de traitement courte, ces deux boucles étant imbriquées l'une dans l'autre pour assurer un apprentissage continu permettant d'accroître l'historique au fur et à mesure des nouvelles données de vols. Un diagramme fonctionnel montrant ces phases d'apprentissage et de test, avec leurs les différentes étapes, est représenté sur la figure 1. Selon l'invention, la phase d'apprentissage, représentée en A sur la figure 2, analyse les messages de pannes antérieurs via des processus de recherche de motifs séquentiels et des processus de recherche de motifs approximatifs, puis construit un modèle des connaissances comportant les différentes pannes associées à une classification et au(X) système(s) incriminé(s). En effet, des messages de pannes étant générés, en séquences, les uns après les autres lors d'un vol d'un aéronef comportant une anomalie, des motifs particuliers de successions de ces messages de pannes peuvent émerger comme apparaissant plus fréquemment, et le but est de pouvoir les identifier. De façon plus précise, la phase d'apprentissage A analyse les messages de pannes antérieurs en recherchant, dans l'historique 100, les messages de pannes générés lors de vols précédents et les données associées à ces messages de pannes (par exemple, l'instant où le message a été généré, etc.). Une étape 110 de recherche de motifs séquentiels (RMS) permet de déterminer une séquence de messages de pannes, c'est-à-dire l'ordre dans lequel plusieurs messages de pannes sont généralement générés. Cette étape 110 permet de découvrir des corrélations entre les séries d'événements, c'est-à-dire de pannes, en fonction de leur chronologie d'apparition. Ces évènements, ou pannes, sont appelés par la suite motifs. Il s'agit de déterminer, dans l'étape 110, quelles sous-séquences d'événements apparaissent le plus fréquemment au sein d'un ensemble de séquences donné. Une telle technique de recherche de motifs séquentiels est utilisée habituellement pour l'analyse de comportement de consommateurs ou la prédiction d'actes malveillants, pour l'analyse de données météorologiques, voire pour l'analyse de données boursières. Il est connu que l'extraction de motifs longs est complexe et demande des moyens de calcul puissants. L'étape 110 de recherche de motifs séquentiels de l'invention utilise un algorithme construit sur la base de plusieurs algorithmes issus de la littérature et pouvant répondre de la manière la plus pertinente possible aux besoins et contraintes spécifiques à savoir : Gestion d'une base de données de messages de panne volumineuse, dont la taille est liée au nombre de systèmes, sous-systèmes et composants avion. - Nombre de messages de pannes générés en même temps. - Impossibilité d'élaguer la recherche sous peine de supprimer un message -de panne pertinent ou issu d'une panne- réelle. - Capacité de déterminer si un motif est pertinent. - Capacité de gestion des contraintes temporelles et des contraintes systèmes. - Utilisation d'une méthode qui ne soit pas une " boîte noire " afin de 20 pouvoir réutiliser les résultats pour la construction du modèle. Ces contraintes et besoins liés au secteur aéronautique ont donc conduit l'étape de recherche de motifs séquentiels du présent procédé à utiliser diverses techniques notamment : 1/ Le moteur de recherche de motif séquentiel utilisé dans le présent 25 exemple est basé sur un algorithme connu sous le nom de Spade (Sequential Patterns Discovery using Equivalent Class), développé par Zaki en 2001. 2/ CloSpan (Closed Sequential Pattern Mining, par Yan, Han et Afshar 2003) est un autre algorithme connu permettant d'optimiser la recherche et 30 l'extraction des motifs séquentiels, et utilisé ici en complément de Spade. 3/ Incrémentai: une technique connue de l'homme de l'art (par exemple par Cheung, IODE 96 ou par Zhang, Kao 2002) qui utilise la connaissance extraite au rang n-1 pour extraire les motifs séquentiels au rang n+1. 4/ Interactive Séquence Mining: une technique également connue (par exemple Parthasarathy, Zaki CIKM 99), qui utilise la connaissance générale du modèle de connaissances pour construire les motifs séquentiels au rang n+1, mais qui nécessite de larges ressources de mémoire et de temps de calcul. 5/ Contraintes : prise en compte de contraintes comme un temps minimal ou maximal entre deux messages successifs, une fenêtre de temps pendant laquelle les messages sont considérés comme étant générés ensemble. Prise en compte également de contraintes de longueur de motif ou des contraintes sur certains attributs. La recherche de motifs séquentiels utilise un paramétrage que l'utilisateur doit renseigner : - L'attribut représentant une transaction - L'attribut représentant le temps ^ La liste des contraintes sur les attributs - Les contraintes temporelles (exemple fenêtre de temps maximum pour une séquence, laps de temps maximum ou minimum entre deux événements) - La longueur maximale des motifs séquentiels (limite en nombre d'événements considérés dans un motif) - Le support minimal des motifs séquentiels (fréquence minimale pour considérer un motif séquentiel) Le but de ce paramètre est de faciliter la recherche et de réduire significativement le temps de calcul. Il permet de s'adapter aux contraintes inhérentes d'un cas d'application et est valable tout au long du scénario (au contraire du modèle de connaissances qui lui peut interagir de façon plus dynamique avec le système). A la fin de l'étape 110 de recherche de motifs séquentiels, une première base de données 120 est générée qui contient, non plus des messages de pannes, mais des motifs de pannes, ce qui constitue une différence fondamentale d'approche. Ainsi, si l'historique 100 contient, par exemple, les messages de pannes suivants A à t1, B à t2, C à t3, D à t4, la première base de données 120 contient, par exemple, les séquences de messages de pannes A suivi de B ou C suivi de D, etc. Le procédé de l'invention comporte ensuite une étape 130 de recherche de motifs approximatifs (RMA) qui permet de classer les motifs de la première base de données 120. Cette étape 130 de recherche de motifs approximatifs a pour but de classifier les motifs 120 extraits par de la reconnaissance approximative parmi l'ensemble des messages de pannes analysés, en tenant compte de la classification de l'historique des vols (équipement incriminé et conclusion -fausse panne / vrai panne). Cette étape 130 permet donc de classer les motifs en utilisant les données 101 relatives à la partie maintenance de l'historique. Les données 101 utilisées dans cette étape proviennent des résultats de maintenance 102 obtenus pour les vols antérieurs. Ces données 101 sont, notamment, l'identifiant du vol, le système incriminé et la conclusion de vraie ou fausse panne dudit système. Pour effectuer cette classification des motifs, l'étape 130 de recherche de motifs approximatifs utilise des concepts d'alignements optimaux, utilisés généralement en bio-informatique pour reconnaître les nucléotides qui codent un acide aminé, puis les acides aminés qui codent une protéine dans un brin d'ADN, ou pour rechercher les zones similaires entre différentes espèces qui pourraient avoir un rôle structural important. Cette étape de recherche de motifs approximatifs de l'invention adapte l'algorithme de «Needleman et Wunsh » aux motifs aérodynamiques de la première base de données [comme expliqué sur le site : http://blast.ncbi.nlm.nih.gov/blast.cgi]. Cet algorithme utilise habituellement des matrices de distances et une programmation dynamique pour trouver l'alignement optimal entre deux séquences afin de gérer le glissement, l'insertion, la suppression et l'entrecroisement (ou crossing-over, en termes anglo-saxons) au sein de séquences à aligner. Dans l'invention, cet algorithme est adapté d'une part pour trouver, parmi un ensemble de message de pannes, les endroits ou les zones qui pourraient correspondre au mieux à une liste de motifs et d'autre part pour gérer, non pas des lettres, mais des objets complexes comportant différentes données telle que : - un identifiant du vol. - un identifiant du message (pouvant être composé) - un identifiant du système incriminé - un identifiant de la classification. A l'issue de cette étape 130 de recherche de motifs approximatifs, une deuxième base de données 140 est générée. Cette deuxième base de données 140 constitue le modèle de connaissances du procédé de l'invention, ce modèle de connaissances contenant la liste des motifs avec leur(s) classification(s) associée(s) et leur(s) systèmes) incriminé(s). La classification des motifs, dans ce modèle de connaissances, est binaire, c'est-à-dire que les motifs sont classés selon qu'ils correspondent à des messages de pannes réelles ou à des messages de pannes parasites. Le modèle de connaissances 140 gère également plusieurs mesures comme : - la distance d'alignement entre le motif et la suite de messages de pannes du vol concerné, - le support qui est le nombre d'occurrence du motif dans l'ensemble de la base, - le rang, compris entre 0 et 100, qui informe de la place d'un motif en terme du nombre d'occurrences pour une même longueur (100 représente le motif le plus fréquent; 0 le moins fréquent), et - la probabilité conditionnelle qui est la probabilité d'avoir un motif en connaissant son préfixe. Pour s'assurer que le modèle de connaissances 140 ainsi généré est correct, chaque solution proposée, une fois validée en fonction de ses conséquences réelles, est réintégrée à la boucle longue de la phase d'apprentissage A. Autrement dit, le cas de chaque vol constituant l'historique est réintégré dans le modèle de connaissances 140, d'une part, pour vérifier que la solution trouvée grâce au modèle de connaissances coïncide avec le cas réel précédemment enregistré dans l'historique, et, d'autre part, pour prendre en compte, dans le modèle de connaissances, tous les cas de vols antérieurs. En effet, on comprend bien que plus le nombre de vols pris en compte est élevé et plus le modèle de connaissances est correct, c'est-à-dire conforme à la réalité. Cette réintégration des cas de vols antérieurs dans le modèle de connaissances 140 constitue un retour d'expérience qui permet de s'assurer de la bonne cohérence des résultats et qui permet audit modèle de connaissances de s'auto-améliorer. Outre la phase d'apprentissage A décrite précédemment, le procédé de l'invention comporte une phase de test représentée sur la partie B de la figure 2. Cette phase de test B consiste à traiter uniquement les données relatives à un nouveau vol, appelé vol test. En effet, lors d'un vol, toutes les données relatives à ce vol sont enregistrées par un calculateur embarqué, par exemple le calculateur de bord. A l'atterrissage de l'avion, un opérateur de maintenance récupère ces données de vol 150, soit directement sur le calculateur, soit en connectant un ordinateur portable sur le calculateur et en copiant les données de vol du calculateur sur l'ordinateur portable. Une fois copiées, les données de vol 150 (dont les messages de pannes du vol considéré) peuvent être traitées dans la phase de test B. Cette phase de test B est une boucle de traitement exécutée en temps réel, c'est-à-dire exécutée dès la mise à disposition des dites données, en un temps très rapide car les données d'un seul vol sont traitées. Cette phase de test comporte une étape 130 de recherche de motifs approximatifs (RMA) appliquée aux messages de pannes du vol test. Cette étape 130 de recherche de motifs approximatifs met en oeuvre le même algorithme que celui décrit précédemment pour la phase d'apprentissage, mais ne traite que les messages de pannes du vol considéré. Elle permet ainsi d'analyser les messages d'un vol non connu et d'en déduire les probables dysfonctionnements sur les systèmes de l'avion. A l'issue de cette étape 130, une troisième base de données 145 est générée qui contient les motifs reconnus, c'est-à-dire l'ensemble des messages de pannes reconnus dans le vol. Cette étape 130 de recherche de motifs approximatifs utilise le modèle de connaissances 140 construit lors de la phase d'apprentissage A pour classifier les données 150 du nouveau vol. Elle est effectuée en temps réel (directement au moment de la réception des messages ou à l'atterrissage de l'avion) et permet de reconnaître quels messages pourraient être apparentés à des motifs et la distance d'alignement entre ces messages et les motifs réels (motifs correspondant à des pannes réelles). Cette reconnaissance approximative (130) génère un panel de systèmes et de classifications (145), avec un indice de confiance, ou mesure d'intérêt, dépendant de la distance d'alignement relative aux motifs réels, de la longueur du motif, de son nombre d'occurrences ou du nombre de vols qui classent ce motif d'une même façon, etc. Pour cela, plusieurs valeurs sont calculées : la distance qui correspond à la déviation dans la séquence de 5 messages entre les motifs reconnus pendant la phase d'apprentissage et les motifs provenant du vol test, la longueur du motif reconnu dans le vol test, la numérosité qui correspond au nombre de vols ayant classé le motif de la même façon, c'est-à-dire avec la même association classification / 10 système, l'occurrence, c'est-à-dire le nombre de fois où le motif est reconnu dans le vol test, et le support, c'est-à-dire le nombre de fois où chaque motif apparaît dans les vols antérieurs considérés dans la phase d'apprentissage. 15 Ces valeurs combinées entre elles permettent d'associer, à chaque combinaison classification / système, une mesure d'intérêt. Le procédé de l'invention offre ainsi, pour un vol, les tendances de pannes dudit vol et permet d'isoler (185) un système si sa classification s'avère être une vrai panne. 20 Si l'on considère l'exemple aérodynamique suivant, dans lequel la panne réelle est le capteur de température et les messages enregistrés dans l'historique sont : - capteur de température défaillant, -système hydraulique en panne, 25 - moteur non alimenté en électricité, et - perte du moteur droit Dans le cas d'une analyse classique, l'opérateur de maintenance aurait vérifié le capteur de température, le système hydraulique, l'alimentation électrique du moteur et le moteur droit. Or, le capteur de température étant 30 défaillant, le moteur a reçu une mauvaise information de température et s'est retrouvé en dehors de ses limites acceptables ; il a donc généré un message de panne. Le procédé de l'invention permet de savoir que cette séquence de pannes est courante et qu'il s'agit en fait d'une unique panne du capteur de température. La phase de test B comporte en outre une étape 170 d'aide à la décision. Cette étape 170 d'aide à la décision permet d'isoler la panne issue de la base de données 145 et de fournir un niveau de confiance associé. Cette étape d'aide à la décision analyse tous les motifs reconnus et analyse leurs distances, leurs longueurs, leur nombre d'occurrence dans le vol, le nombre d'occurrences dans la base de données, le nombre de vols qui ont classés le même motif de la même façon, etc. Cette étape d'aide à la décision a été représentée sous une forme fonctionnelle sur la figure 3. Elle comporte une première opération 171 de calcul des mesures d'intérêts, la mesure d'intérêt étant comprise entre - infini et + infini. Il est rappelé que les données obtenues en sortie de l'étape de RMA 130 se présentent sous la forme d'une base 145 de motifs séquentiels, reconnus et classifiés, cette base 145 constituant: un sous ensemble de la base de connaissance 140. La première opération 171 de calcul des mesures d'intérêts consiste à filtrer et séparer cette base de données 145 en fonction de deux critères : selon la classification donnée pour chaque motif, et selon si un motif est classé de façon unique ou pas, un motif pouvant avoir la classification « motif réel » (ou Real failure, en termes anglo-saxons) pour un certain nombre de vols et la classification « défaillance sérieuse » (ou Surious Failure, en termes anglo-saxons) pour d'autre vols. Les motifs reconnus de la base de données 145 sont alors divisés en quatre sous bases de motifs reconnus, en fonction de leur classement (NFF ou RF) et en fonction de la reconnaissance du motif (motifs reconnus entièrement ou motifs reconnus partiellement), à savoir : -KM One NFF : la base de données contenant les motifs reconnus qui sont classés NFF (Not Fault Found) de façon unique KM_One_RF : la base de données contenant les motifs reconnus qui 30 sont classés « défaillance réelle (RF) » de façon unique -KM All NFF : tous les motifs reconnus et classés NFF -KM All RF : tous les motifs reconnus et classés « défaillance réelle Une deuxième opération 172 de calcul des mesures d'intérêts est ensuite mise en oeuvre qui consiste à appliquer, à chaque sous ensemble de la base de donnée, la fonction suivante : IM classification x ln(E longueur) x E occurence - E distance = E distance Longueurtotale Où IM est la mesure d'intérêt, « classification » est la classification du motif considéré, « longueur » est la longueur du motif, «occurrence » est le nombre de fois où le même motif est présent dans le vol, « distance » est la déviation du motif dans la séquence, « longueur totale » est le nombre de messages générés par le vol. On obtient alors quatre mesures d'intérêt IM, c'est-à-dire une mesure d'intérêt pour chaque sous base de motifs reconnus : -IM_One_NFF est la mesure d'intérêt pour la base de données contenant les motifs reconnus classés NFF de façon unique -IM_One_RF est la mesure d'intérêt pour la base de données contenant les motifs reconnus classés « défaillance réelle » de façon unique -IM_AII_NFF est la mesure d'intérêt pour tous les motifs reconnus et classés NFF -IM_AII_RF est la mesure d'intérêt pour tous les motifs reconnus et classés « défaillance réelle ». Des classeurs de données sont alors construits au moyen d'un procédé basé sur la technologie connue sous le nom de «eXtended Learning Classifier System » La technologie LCS (Learning Classifier Systems) de John Holland propose des systèmes de classeurs qui sont des systèmes d'apprentissage adaptatifs et dynamiques utilisant des algorithmes génétiques. Dans l'invention, la technologie LCS a été modifiée, adaptée et optimisée pour faire de la classification supervisée avec un auto-ajustement de son apprentissage afin d'optimiser sa convergence. L'apprentissage des classeurs se fait sur la relation des mesures d'intérêts (IM) associée à la classification réelle. Ainsi chaque classeur comprend une série de quatre intervalles correspondant aux valeurs que peuvent prendre les différentes IM pour une classification donnée. Une fois l'apprentissage des classeurs terminé, les données des classeurs sont récupérées (étape 185) pour les faire correspondre avec les mesures d'intérêt du vol test (obtenues en sortie de la boucle de test B), d'isoler la panne la plus probable en fonction des motifs reconnus. Cette correspondance des données de classeurs et des mesures d'intérêts permet aussi de connaître la classification la plus pertinente à associer au vol test. La phase d'aide à la décision proposée dans l'invention a l'avantage d'être très rapidement adaptative. De plus, elle permet de calculer deux mesures de confiance, bornées chacune entre 0 et 1 : - une mesure de confiance globale qui donne un indicatif de la qualité des résultats de l'ensemble du processus de résolution, et - une mesure de confiance locale qui donne un indicatif de la qualité sur la classification faites du vol test. Ainsi, en sortie de la phase d'aide à la décision (étape 186), l'opérateur peut lire une information spécifiant quel est le système qui est réellement défaillant et quel est l'indice de confiance de cette information, cet 15- indice de confiance étant de préférence compris entre 0 et 1. Par exemple, il peut lire « dans le vol testé, le capteur de température a une vraie défaillance, avec une confiance de 0,9 ». Il peut lire également un indice de confiance globale du type « l'ensemble du système a une confiance de 0,95 ». 20 La phase d'aide à la décision a l'avantage en outre d'auto-ajuster ses décisions. En effet, l'algorithme mis en oeuvre dans cette phase est capable de déterminer lui-même s'il a des choses à extraire et à apprendre du vol test. Si tel est le cas, il considère que son apprentissage n'est pas terminé et il continue, de lui-même, à évoluer afin de construire des classeurs meilleurs. 25 Dans le cas contraire, il décide que son apprentissage est terminé. La mesure de confiance locale tient compte de cet état d'apprentissage de l'algorithme. Si l'algorithme considère que son apprentissage n'est pas terminé, par exemple parce que certains motifs reconnus sont peu connus, l'indice de confiance sera moindre. Au contraire, si tous les motifs reconnus 30 sont bien connus et bien classés, alors l'indice de confiance sera élevé. L'étape 190 de la figure 1 comprend le procédé permettant d'intégrer ce nouveau vol à l'historique (100) afin d'être pris en compte dans l'ensemble du processus, formant ainsi un cycle fermé. Comme on le comprend de ce qui précède, un tel procédé permet 35 d'améliorer le diagnostic et l'isolation des pannes, notamment dans un aéronef. Il permet notamment de réduire le nombre d'informations affichées par les systèmes de support à la maintenance ainsi que le traitement des pannes parasites par les équipes de maintenance, évitant des actions de maintenance inutiles, coûteuses et engendrant des pertes de temps importantes, notamment pendant les temps de rotation des avions au sol. Il permet, en outre, de fournir des informations quant à la confiance, la probabilité et la pertinence des messages de pannes, ce qui permet de cibler de façon plus sûre et plus rapide les actions de maintenance nécessaires. L'un des principaux avantages est d'offrir un système qui exploite complètement le retour d'expérience et les connaissances générales sur les systèmes de l'avion et leurs défaillances et qui s'adapte aux nouvelles pannes et s'améliore automatiquement au fur et à mesure de l'apparition des pannes et de l'évolution des connaissances.15 REVENDICATIONS1 - Procédé de traitement d'au moins une séquence de messages de pannes survenant dans un appareil comprenant de nombreux systèmes, pour discriminer des messages de pannes probablement issus d'une réelle défaillance d'un système et des messages de pannes sans faute réelle du système, comportant : - une phase d'apprentissage (A) de données antérieures enregistrées dans un historique, ces données contenant des messages de pannes, pour trier et classer ces messages de pannes et construire un modèle de connaissances des motifs de pannes, et - une phase de test (B) exécutée en temps réel pour traiter et enregistrer des nouvelles données provenant d'un test, caractérisé en ce que la phase de test comporte : - une étape de recherche de motifs approximatifs (130) appliquée aux données issues du test pour reconnaitre et classer lesdites données en fonction du modèle de connaissances construit pendant la phase d'apprentissage. 2 - Procédé selon la revendication 1, caractérisé en ce que la phase de test comporte une phase d'aide à la décision (170) pour analyser les données issues du test afin de déterminer, pour chaque message de panne réelle, au moins un indice de confiance de la panne. 3 - Procédé selon l'une quelconque des revendications 1 à 2, caractérisé en ce qu'une troisième base de données (145) est construite, à l'issue de l'étape de recherche de motifs approximatifs (130), cette troisième base de données contenant des motifs de pannes reconnus. 4 - Procédé selon la revendication 3, caractérisé en ce que les données de la troisième base de données (145) sont filtrées et classées en quatre sous bases de données en fonction de la classification de chaque motif de panne et de la reconnaissance de ces motifs. 30 35 5 - Procédé selon l'une quelconque des revendications 2 à 4, caractérisé en ce que la phase d'aide à la décision (170) comporte une étape de calcul d'un indice de confiance local et d'un indice de confiance global. 6 - Procédé selon l'une quelconque des revendications 2 à 5, caractérisé en ce que les indices de confiance sont calculés à partir d'une formule de mesure d'intérêts : IM - E classification x ln(E longueur) x E occurence - E distance E distance Longueurtotale Où IM est une mesure d'intérêt, « classification » est la classification du motif considéré, « longueur » est la longueur du motif, «occurrence » est le nombre de fois où le même motif est présent dans un vol, « distance » est la déviation du motif dans la séquence, « longueur totale » est le nombre de messages générés pendant le vol. 7 - Procédé selon l'une quelconque des revendications 1 à 6, caractérisé en ce que les données issues du test sont introduites dans l'historique de données pour compléter la phase d'apprentissage (190). 8 - Procédé selon l'une quelconque des revendications 1 à 7, caractérisé en ce que la phase d'apprentissage comporte une étape (110) de recherche de motifs séquentiels pour construire une première base de données (120) contenant des motifs de pannes. 9 - Procédé selon la revendication 8, caractérisé en ce que le procédé d'apprentissage comporte une étape (130) de recherche de motifs approximatifs pour construire le modèle de connaissance (140) contenant les motifs de pannes, associés chacun à un système et à une classification. 10 - Procédé selon la revendication 9, caractérisé en ce que la classification est binaire, cette classification correspondant à des messages de pannes réelles ou des messages de pannes parasites.