FR 3141259 A1 20240426 FR 2210996 A 20221024 Procédé pour ordonner les véhicules d’une flotte de véhicules selon un besoin de maintenance ; Programme d’ordinateur et système informatique associés. Ce procédé (100) comporte les étapes de : pour chaque véhicule de la flotte, déterminer (110) une série temporelle comportant, pour chaque pas de temps, une valeur instantanée d’au moins une grandeur d’intérêt obtenue à partir d’évènements de surveillance acquis au moyen d’un système de surveillance des véhicules de la flotte; analyser (120), sur un intervalle temporel prédéterminé, la série temporelle, en tenant compte des séries temporelles déterminées pour tous les véhicules de la flotte, en considérant qu’à chaque pas de temps, l’état d’un véhicule est soit un état « normal » soit un état « anormal », pour obtenir une séquence optimale d’états sur l’intervalle temporel prédéterminé ; et, détecter (130) la présence éventuelle d’une ou plusieurs salve(s) dans la séquence optimale d’états, puis ordonner (140) une liste des véhicules de la flotte selon les propriétés des salves détectées pour chacun des véhicules. Figure pour l'abrégé : figure 2 Procédé pour ordonner les véhicules d’une flotte de véhicules selon un besoin de maintenance ; Programme d’ordinateur et système informatique associés. La présente invention a pour domaine celui de la maintenance d’une flotte de véhicules, notamment de véhicules ferroviaires, comme des trains, des métros, des tramways, etc. On connaît des systèmes de surveillance des défaillances potentielles d’un véhicule ferroviaire fondés sur la génération d’événements au cours de l’exploitation de ce véhicule. Plus précisément, le véhicule surveillé est équipé d’une pluralité de capteurs propres à acquérir des données qui, une fois traitées, permettent de générer des évènements caractéristiques. Un événement constitue une nouvelle entrée dans une base de données de surveillance. Il est défini par une pluralité d’attributs, comme par exemple un identifiant du véhicule, un identifiant de l’évènement, un instant d’occurrence de l’évènement, le type dont relève l’évènement, et différentes valeurs le caractérisant (qui peuvent dépendre du type dont relève l’évènement). Actuellement, les événements générés pour un véhicule sont analysés par des opérateurs de maintenance afin d’effectuer un diagnostic sur l’état du véhicule et déterminer s’il est nécessaire d’effectuer une opération de maintenance sur ce véhicule et la nature de cette opération de maintenance : simple inspection ou remplacement de tel ou tel composant défaillant (ou sur le point de défaillir) du véhicule ferroviaire considéré. Cependant, de tels systèmes de surveillance génèrent des milliers d’événements chaque jour et pour chaque véhicule d’une flotte. Une telle masse d’informations est difficilement analysable par un opérateur. Une telle analyse reste complexe, notamment pour établir des corrélations significatives entre évènements. Elle nécessite par conséquent un investissement important en termes de temps de travail et de coûts. Par ailleurs, il est pratiquement impossible pour un opérateur de comparer les véhicules d’une flotte entre eux pour déterminer lequel de ces véhicules a un besoin de maintenance urgent afin d’effectuer en priorité les opérations de maintenance requises sur ce véhicule plutôt que sur un autre. Aujourd’hui, le choix d’inspecter un véhicule plutôt qu’un autre est essentiellement une décision empirique prise par l’opérateur de maintenance. Il serait donc intéressant de pouvoir identifier rapidement et simplement le ou les véhicule(s) d’une flotte qui ont un besoin prioritaire de maintenance, ne serait-ce que pour optimiser les tâches de maintenance et limiter le temps pendant lequel un matériel ne peut être utilisé. Le but de la présente invention est notamment de répondre à ce besoin. Pour cela l’invention a pour objet un procédé, mis en œuvre par ordinateur, pour ordonner les véhicules d’une flotte de véhicules selon un besoin de maintenance, caractérisé en ce qu’il comporte les étapes de : pour chaque véhicule de la flotte, déterminer une série temporelle, la série temporelle comportant, pour chaque pas de temps, une valeur instantanée d’au moins une grandeur d’intérêt obtenue à partir d’évènements de surveillance acquis au moyen d’un système de surveillance des véhicules de la flotte de véhicules ; analyser, sur un intervalle temporel prédéterminé, la série temporelle, en tenant compte des séries temporelles déterminées pour tous les véhicules de la flotte de véhicules, en considérant qu’à chaque pas de temps, l’état d’un véhicule est soit un état « normal » soit un état « anormal » nécessitant une maintenance, de manière à obtenir une séquence optimale d’états sur l’intervalle temporel prédéterminé ; et, détecter la présence éventuelle d’une ou plusieurs salve(s) dans la séquence optimale d’états, puis ordonner une liste des véhicules de la flotte de véhicules selon les propriétés des salves détectées pour chacun des véhicules. Suivant des modes particuliers de réalisation, ce procédé comporte une ou plusieurs des caractéristiques suivantes, prises isolément ou suivant toutes les combinaisons techniquement possibles : - la grandeur d’intérêt est le nombre total d’évènements ou le nombre total d’évènements d’un type particulier affectant le véhicule considéré, acquis au cours d’une fenêtre temporelle de référence. - analyser la série temporelle comporte une optimisation d’une fonction de coût, associant une fonction de vraisemblance et, de préférence, une fonction de transition, de manière à déterminer une probabilité instantanée pour chaque pas de temps. - la probabilité instantanée pour un pas de temps est comparée à une probabilité de référence calculée à partir des grandeurs d’intérêt de tous les véhicules de la flotte de véhicules, pour déterminer l’état optimal dans lequel se trouve le véhicule considéré au pas de temps considéré. - la présence de salves dans la séquence optimale d’états consiste à déterminer un nombre de pas de temps consécutifs que le véhicule passe dans l’état « anormal » dans la séquence optimale d’états et, lorsque que ce nombre de pas de temps est supérieur à un seuil prédéterminé, considérer qu’il s’agit d’une salve. - une salve est caractérisée par une durée et/ou une intensité et ordonner la liste des véhicules de la flotte de véhicules selon les propriétés des salves détectées pour chaque véhicule s’effectue selon la durée et/ou l’intensité desdites salves. - le véhicule est un véhicule ferroviaire, comme un train, un métro, ou un tramway. L’invention a également pour objet un produit programme d’ordinateur comportant des instructions logicielles qui, lorsqu’elles sont exécutées par un ordinateur, mettent en œuvre le procédé précédent. L’invention a également pour objet un système informatique , caractérisé en ce qu’il est adapté pour mettre en œuvre le procédé précédent, le système informatique étant propre à accéder au contenu d’une base de données de surveillance pour lire les évènements de surveillance acquis par un système de surveillance. De préférence, le système comporte : un module de détermination d’une série temporelle d’une grandeur d’intérêt ; un module d’analyse de la série temporelle d’une grandeur d’intérêt pour déterminer une séquence optimale d’états ; un module de détection de salves dans la séquence optimale d’états ; et, un module d’ordonnancement des véhicules d’une flotte de véhicules selon les propriétés des salves détectées. L’invention et ses avantages seront mieux compris à la lecture de la description détaillée qui va suivre d’un mode de réalisation particulier, donné uniquement à titre d’exemple non limitatif, cette description étant faite en se référant aux dessins annexés sur lesquels : La est une représentation schématique d’un système informatique pour la mise en œuvre du procédé selon l’invention ; et, La est une représentation sous forme de blocs d’un mode de réalisation préféré du procédé d’ordonnancement selon l’invention. Le procédé selon l’invention permet d’ordonner automatiquement les trains d’une flotte de trains selon un besoin de maintenance. Une flotte de trains regroupe une pluralité de trains similaires voire identiques entre eux et qui sont mis en circulation sur un réseau de manière essentiellement interchangeable. Dit autrement, la question d’ordonner, les uns par rapport aux autres, les trains d’une flotte en fonction d’un besoin de maintenance a un sens, puisque ces différents trains sont comparables dans leur structure (et donc leur usure et leurs défaillances potentielles) et dans leur utilisation (et donc dans leurs conditions d’exploitation). Le procédé selon l’invention est fondé sur la détection de salves ou rafales (« burst détection » en anglais) en analysant une série temporelle (« time séries ») d’une grandeur d’intérêt élaborée à partir des événements générés par un système de surveillance de l’état de la technique. Dans le contexte de l'analyse de série temporelle d’une grandeur, la détection de salves est une technique permettant d'identifier les valeurs de cette grandeur qui présentent une forte augmentation sur une période de temps limitée par rapport à un niveau de base. De nombreux algorithmes de détection de salves sont connues, notamment dans des applications de traitement du signal. De manière générale, un algorithme de détection de salves identifie les périodes de temps (ou salves) pendant lesquelles une valeur cible est inhabituellement fréquente. Les algorithmes de détection de salves peuvent être adaptés pour des flux de données discrètes, comme c’est le cas pour les événements générés par un système de surveillance d’une flotte de trains. Dans ce qui suit, le mode de réalisation qui est présenté en détail met en œuvre un algorithme de détection de salves fondé sur un maximum de vraisemblance logarithmique. Selon l’invention, la détection de salves pour un train particulier est effectuée en déterminant le niveau de base à partir des événements générés par le système de surveillance pour l’ensemble des trains de la flotte. La représente un système informatique 10 pour la mise en œuvre du procédé selon l’invention. Il comporte une base de données de surveillance 12 collectant les évènements générés par un système de surveillance 20 des trains de la flotte. Le système informatique 10 comporte un ordinateur 14 comportant des moyens de calcul, tels qu’un processeur, et des moyens de mémorisation, telles qu’une mémoire. La mémoire stocke notamment les instructions de programmes d’ordinateurs, en particulier un programme 30 dont l’exécution permet la mise en œuvre du procédé selon l’invention. Le programme 30 peut être décomposé en modules, en particulier un module 32 de détermination d’une série temporelle d’une grandeur d’intérêt, un module 34 d’analyse de série temporelle, un module 36 de détection de salves, et un module 38 d’ordonnancement des trains de la flotte. Le système informatique 10 comporte avantageusement une interface homme machine 16, par exemple une tablette, permettant d’afficher les résultats de la mise en œuvre du procédé selon l’invention à l’intention d’un opérateur de maintenance. En se référant à la , est présenté un mode de réalisation préféré d’un procédé pour ordonner les trains d’une flotte de trains selon un besoin de maintenance. Le procédé 100 est mis en œuvre indépendamment d’une étape 90 préalable d’acquisition d’évènements. Le procédé 100 en tant que tel comporte une étape 110 de détermination d’une série temporelle d’une grandeur d’intérêt ou caractéristique (cette étape correspondant à l’exécution du module 32), une étape 120 d’analyse d’une série temporelle (cette étape correspondant à l’exécution du module 34), une étape 130 de détection de salve (cette étape correspondant à l’exécution du module 36) et une étape 140 d’ordonnancement des trains de la flotte (cette étape correspondant à l’exécution du module 38). Etape 90 d’acquisition Cette étape, préalable à la mise en œuvre du procédé selon l’invention, s’effectue conformément à l’art antérieur. Elle est réalisée par le système de surveillance 20. Elle consiste à acquérir, pour chaque train de la flotte, des données de surveillance et à créer des évènements à partir des données acquises. Les données sont délivrées par des capteurs équipant chaque train. Les évènements sont associés à un train particulier. Ils sont datés. Par exemple, le pas de temps choisi pour la datation des évènements est celui de la journée. Les évènements sont enregistrés dans la base de données de surveillance 12. Il est à noter qu’un nombre élevé d'occurrences d'un événement peut être dû à une défaillance réelle de l'équipement surveillé (le système de surveillance peut alors continuer à signaler cette défaillance jusqu'à ce qu’elle soit réparée). Mais, un nombre élevé d'occurrences peut aussi être dû à une erreur dans la conception du système de surveillance lui-même, notamment la modélisation de la défaillance que ce système utilise pour générer des évènements de surveillance (et alors le système de surveillance signale l'événement plusieurs fois au cours du temps). Etape 110 de détermination d’une série temporelle d’une grandeur d’intérêt L’étape 110 a pour finalité de construire, pour chaque train, une série temporelle d’une grandeur d’intérêt à partir des événements contenus dans la base de données de surveillance 12. La grandeur d’intérêt est toute variable temporelle élaborée à partir de tout ou partie des évènements de surveillance associés à un train et permettant, en agrégeant ces évènements de surveillance, de quantifier un besoin de maintenance à chaque pas de temps. Par exemple, on définit d’abord une fenêtre temporelle correspondant par exemple à une semaine d’exploitation d’un train. La grandeur d’intérêt est alors par exemple le nombre total d’événements de surveillance générés pour le train considéré à l’intérieur de la fenêtre temporelle. La grandeur d’intérêt ainsi calculée est datée par exemple avec le dernier jour de la fenêtre temporelle utilisée. Il suffit de répéter cette opération en faisant glisser la fenêtre temporelle du pas de temps choisi (ici la journée), pour calculer une grandeur d’intérêt pour chaque jour d’exploitation d’un train. La série temporelle pour un train est alors constituée de la séquence des valeurs de la grandeur d’intérêt pour ce train. Une telle série temporelle est obtenue pour chacun des trains de la flotte. En variante, au lieu du nombre cumulé d'événements, la grandeur d’intérêt pourrait correspondre au nombre cumulé d'événements relevant d’un type particulier (c’est-à-dire associés à une défaillance spécifique ou un composant spécifique du train). Dans une autre variante, au lieu de n’analyser qu’une série temporelle d’une grandeur d’intérêt, il pourrait être choisi de calculer différentes grandeurs d’intérêt et de suivre chacune de ces grandeurs dans le temps. Etape 120 d’analyse d’une série temporelle Pour chaque train de la flotte, cette étape consiste à analyser la série temporelle de la grandeur d’intérêt obtenue à l’étape 110 en appliquant un algorithme de détection de salves, puis de quantifier le besoin de maintenance du train considéré en fonction des salves détectées. Cette étape tient compte non seulement de la série temporelle associée au train considéré mais également des séries temporelles associées aux autres trains de la flotte. L’algorithme de détection de salves plus particulièrement utilisé dans le présent mode de réalisation, est fondé sur le modèle qu’à chaque pas de temps un train ne peut être que dans deux états possibles, respectivement un état de fonctionnement nominal (« état normal » dans ce qui suit) et un état de fonctionnement nécessitant une maintenance (« état anormal » dans ce qui suit). Plus précisément, en supposant que les événements suivent une distribution binomiale lorsque le train est dans l’état normal et une distribution binomiale (identique pour simplifier la présente description) lorsque le train est dans l’état anormal, l’algorithme de détection de salves vise à déterminer la séquence d'états qui correspond le mieux aux observations constituées par les valeurs de la série temporelle de la grandeur d’intérêt sur l’intervalle temporel considéré. Considérons par exemple un intervalle temporel d’une semaine, subdivisé par pas de temps d’une journée. Chaque pas de temps de l’intervalle est indexé par l’entier t entre 1 et T, où est le nombre maximum de pas de temps de l’intervalle d’intérêt (ici T est égal à 7). Considérons une flotte composée de N trains. Chaque train est indexé par un entier j entre 1 et N La valeur quotidienne de la grandeur caractéristique pour le train j au jour t est notée : La valeur quotidienne de la grandeur caractéristique totale pour tous les trains de la flotte au jour t est donnée par : La valeur intégrée de la grandeur caractéristique pour le train j sur l’intervalle temporel est donnée par : La valeur intégrée de la grandeur caractéristique totale pour tous les trains de la flotte sur l’intervalle temporel est donnée par : On définit la probabilité du niveau de base pour le train j, ou probabilité de référence, par : Cette probabilité de référence est associée à l’état normal pour le train j. Elle correspond aux événements affectant le train j par rapport à l’ensemble des événements affectant les trains de la flotte, sur l’intervalle temporel considéré. La probabilité de salve associée pour le train j est alors définie par : , où est une constante de proportionnalité. Cette probabilité de salve est associée à l’état anormal pour le train j. Il s’agit ensuite de calculer une séquence d’états sur l’intervalle temporel considéré qui soit compatible avec les valeurs caractéristiques et pour le train j. Pour ce faire, un critère statistique est choisi. Par exemple, dans le présent mode de réalisation, le critère statistique choisi est fondé sur une fonction de coût associant une fonction de vraisemblance logarithmique, avantageusement combinée avec une fonction de transition. La fonction de vraisemblance instantanée associée à l’état à l’instant t (aussi noté ) pour le train j est la fonction de vraisemblance binomiale : Pour des raisons numériques, on cherche à minimiser le logarithme de sur l’intervalle temporel considéré. Afin d’évaluer la vraisemblance de l’état normal (s = « normal »), la probabilité est prise égale à . La vraisemblance de l’état anormal (s = « anormal ») est évaluée en prenant égale à . La fonction de transition de l’état à l’instant t vers l'état à l’instant suivant t+1 permet d’associer un coût à un changement d’état. De préférence, puisque, par définition, l'état normal est l’état attendu du train et que l'état anormal est un état "exceptionnel", la fonction de transition n'est non nulle que s'il y a un changement d'état et que la transition se fait de l'état normal vers l’état anormal. Il est envisageable que la fonction de transition soit proportionnelle à T, pour le rendre comparable au terme de vraisemblance dans le processus d'optimisation lorsque T augmente (c’est-à-dire lorsque l’intervalle de temps augmente). Ainsi, le critère instantané à minimiser est le suivant : Sur l’intervalle de temps, le critère à minimiser devient : La séquence optimale des états du train j, c’est-à-dire la séquence des états (« normal » ou « anormal ») du train j qui explique le mieux l'observation selon le modèle binomial, est donc celle qui minimise la fonction de coût pour tous les pas de temps de l’intervalle temporel considéré. La séquence optimale est déterminée par exemple à l'aide d'une optimisation par un algorithme « glouton », connu de l’homme du métier. Etape 130 de détection de salve(s) La séquence optimale d’états est enfin analysée pour y isoler d’éventuelles salves. Une salve (« burst » en anglais) se caractérise alors par un nombre minimum de pas de temps consécutifs dans l’état anormal. Ce nombre seuil est prédéfini. Il peut être choisi égal à un, une salve étant alors détectée dès que le train se trouve dans l’état anormal. En plus de sa durée, une salve peut être caractérisée par une intensité. L'intensité d’une salve est par exemple donnée par la somme des valeurs de la fonction de coût sur le ou les pas de temps associé(s) à la salve. Etape 140 d’ordonnancement Une fois réalisées les étapes précédentes pour chaque train, le manière d’ordonner les trains de la flotte entre eux dépend de la grandeur d'intérêt. Si l’on considère, comme dans l’exemple précédent, le nombre cumulé d'événements quotidien, on peut classer les trains par ordre décroissant de durée des salves détectées pour chaque train sur l’intervalle temporel considéré. Si deux salves ont la même durée, alors les trains sont classés par intensité décroissante de ces salves. Si l’on considère au contraire le nombre d'événements quotidiens relevant d’un type particulier, alors les salves sont classées par intensité (sachant que l’intensité prend en compte d’une certaine manière la durée de la salve). Une fois les trains de la flotte ordonnés par ordre de priorité, seuls les identifiants des X premiers trains (par exemple, X=3) sont affichés sur l’interface 16. Avantageusement, en sélectionnant l’identifiant d’un train, l’opérateur accède aux Y événements (par exemple, Y=5) les plus récurrents affectant ce train Avantages Le présent procédé aide les opérateurs de maintenance à sélectionner le train prioritaire pour la maintenance de manière rapide et rationnelle. Ce qui est pertinent pour le classement des trains les uns par rapport à autres, n'est pas le nombre d'occurrences d'événements en tant que tel, mais plutôt un changement significatif dans la proportion d'événements générés par un train par rapport au reste de la flotte, dans une certaine période de temps et éventuellement pour un certain type d’évènements. Si une augmentation inhabituelle et abrupte se produit pour un train particulier (dans le nombre total d'événements, ou seulement pour un seul type d'événement), on peut alors considérer que, pour une raison quelconque, le comportement de ce train est altéré. Il est important de le signaler automatiquement car cela peut être symptomatique de quelque chose d'anormal qu’il convient de rectifier au plus vite. Procédé (100), mis en œuvre par ordinateur, pour ordonner les véhicules d’une flotte de véhicules selon un besoin de maintenance, caractérisé en ce qu’il comporte les étapes de : - pour chaque véhicule de la flotte, - déterminer (110) une série temporelle, la série temporelle comportant, pour chaque pas de temps, une valeur instantanée d’au moins une grandeur d’intérêt obtenue à partir d’évènements de surveillance acquis au moyen d’un système de surveillance des véhicules de la flotte de véhicules ; - analyser (120), sur un intervalle temporel prédéterminé, la série temporelle, en tenant compte des séries temporelles déterminées pour tous les véhicules de la flotte de véhicules, en considérant qu’à chaque pas de temps, l’état d’un véhicule est soit un état « normal » soit un état « anormal » nécessitant une maintenance, de manière à obtenir une séquence optimale d’états sur l’intervalle temporel prédéterminé ; et, - détecter (130) la présence éventuelle d’une ou plusieurs salve(s) dans la séquence optimale d’états, puis - ordonner (140) une liste des véhicules de la flotte de véhicules selon les propriétés des salves détectées pour chacun des véhicules. Procédé selon la revendication 1, dans lequel la grandeur d’intérêt est le nombre total d’évènements ou le nombre total d’évènements d’un type particulier affectant le véhicule considéré, acquis au cours d’une fenêtre temporelle de référence. Procédé selon l’une quelconque des revendications précédentes, dans lequel analyser la série temporelle comporte une optimisation d’une fonction de coût, associant une fonction de vraisemblance et, de préférence, une fonction de transition, de manière à déterminer une probabilité instantanée pour chaque pas de temps. Procédé selon la revendication 3, dans lequel la probabilité instantanée pour un pas de temps est comparée à une probabilité de référence calculée à partir des grandeurs d’intérêt de tous les véhicules de la flotte de véhicules, pour déterminer l’état optimal dans lequel se trouve le véhicule considéré au pas de temps considéré. Procédé selon l’une quelconque des revendications précédentes, dans lequel détecter la présence de salves dans la séquence optimale d’états consiste à déterminer un nombre de pas de temps consécutifs que le véhicule passe dans l’état « anormal » dans la séquence optimale d’états et, lorsque que ce nombre de pas de temps est supérieur à un seuil prédéterminé, considérer qu’il s’agit d’une salve. Procédé selon l’une quelconque des revendications précédentes, dans lequel une salve est caractérisée par une durée et/ou une intensité et ordonner la liste des véhicules de la flotte de véhicules selon les propriétés des salves détectées pour chaque véhicule s’effectue selon la durée et/ou l’intensité desdites salves. Procédé selon l’une quelconque des revendications précédentes, dans lequel le véhicule est un véhicule ferroviaire, comme un train, un métro, ou un tramway. Programme d’ordinateur comportant des instructions logicielles qui, lorsqu’elles sont exécutées par un ordinateur, mettent en œuvre un procédé selon l’une quelconque des revendications précédentes. Système informatique (10), caractérisé en ce qu’il est adapté pour mettre en œuvre un procédé (100) selon l’une quelconque des revendications 1 à 6, le système informatique étant propre à accéder au contenu d’une base de données de surveillance (23) pour lire les évènements de surveillance acquis par un système de surveillance (20). Système selon la revendication 9, comportant : - un module (32) de détermination d’une série temporelle d’une grandeur d’intérêt ; - un module (34) d’analyse de la série temporelle d’une grandeur d’intérêt pour déterminer une séquence optimale d’états ; - un module (36) de détection de salves dans la séquence optimale d’états ; et, - un module (38) d’ordonnancement des véhicules d’une flotte de véhicules selon les propriétés des salves détectées.