INPI-France/Brevets-Francais-2024-Chunked huggingface dataset:
La illustre un microcontrôleur MCU configuré pour mettre en œuvre un procédé de détection d’anomalies dans une matrice de données. Un tel procédé est décrit dans la suite en relation avec la .
Le microcontrôleur MCU comprend une unité de traitement UT et une mémoire MEM. La mémoire MEM comprend un programme d’ordinateur PRG comprenant des instructions qui, lorsqu’elles sont mises en œuvre par l’unité de traitement UT du microcontrôleur conduisent celle-ci à mettre en œuvre ledit procédé de détection d’anomalies.
Le programme d’ordinateur PRG comporte ledit modèle MDL défini par le procédé de génération de modèle décrit précédemment. En particulier, le modèle MDL comprend ladite nouvelle base transformée V’’ et ledit seuil maximal MTS de distance de Mahalanobis du modèle de détection d’anomalies. En variante, le modèle MDL peut comprendre la nouvelle base V’, la matrice de précision et le seuil maximal de distance de Mahalanobis.
Le microcontrôleur peut être intégré dans un système pour lequel une surveillance d’anomalies de fonctionnement est requise. Le microcontrôleur peut être configuré pour recevoir des données acquises par un capteur dudit système. Ces données acquises sont alors représentatives du fonctionnement du système.
La illustre un procédé mis en œuvre par ledit microcontrôleur pour effectuer une détection d’anomalies dans une matrice de données représentative d’un fonctionnement d’un système.
Le procédé comprend une étape 30 d’obtention d’une matrice de données à analyser. Dans cette étape 30, le microcontrôleur obtient un vecteur de données à analyser. Ces données à analyser peuvent être obtenues à partir d’un capteur dudit système.
Le procédé comprend ensuite une étape 31 de projection. Dans cette étape 31, les données à analyser sont projetées sur la base transformée V’’ du modèle de détection d’anomalie stockée en mémoire du microcontrôleur. La projection correspond à un produit matriciel entre les données à analyser et la base transformée V’’.
Cette projection des données à analyser permet d’obtenir un vecteur de données projetées.
Le procédé comprend ensuite une étape 32 de calcul de distance de Mahalanobis. Dans cette étape 32, le microcontrôleur calcule une distance de Mahalanobis à partir des données projetées et standardisées.
Le procédé comprend ensuite une étape 33 de détermination de la présence d’anomalies dans la matrice de données. Dans cette étape 34, le microcontrôleur compare la valeur de la distance de Mahalanobis calculée au seuil maximal stocké en mémoire du microcontrôleur.
En pratique, cette étape est mise en œuvre pour les deux lignes de bord qui bordent la voie de circulation sélectionnée, excepté si l’une ou l’autre de ces deux lignes borde la route (notamment s’il s’agit d’une barrière de sécurité).
Pour calculer le temps δt nécessaire pour que le véhicule traverse les lignes de bord, il est nécessaire de générer une trajectoire T0 du véhicule à l’aide d’au moins un modèle (voir ).
Différents modèles peuvent être utilisés à cet effet.
Typiquement, on pourra utiliser un modèle à courbure et accélération longitudinale constantes (modèle CCLA, de l’anglais « Constant Curvature And Longitudinal Acceleration »), mais en variante, on pourrait utiliser un modèle à courbure et vitesse longitudinale constantes (modèle CCALV de l’anglais « Constant Curvature And Longitudinal Velocity »). D’autres modèles pourraient également être employés.
La détermination de la trajectoire est réalisée sur une durée de prédiction prédéterminée, de quelques secondes au maximum (ici 5 secondes).
Une fois la trajectoire T0 obtenue, le calculateur détermine la position de l’intersection éventuelle entre la trajectoire T0 et la ou les lignes de bord bordant la voie de circulation sélectionnée.
Ici encore, ce calcul est réalisé à l’aide de la méthode de Newton-Raphson en deux dimensions.
On notera que lorsqu’aucune intersection n’est détectée, la solution δt sera formé par un temps infini.
Sinon, la solution δt sera formée par le temps nécessaire pour arriver à cette intersection.
On peut ici décrire plus en détail comment l’intersection entre la trajectoire T0 du véhicule 10 et chaque clothoïde considérée est recherchée.
A ce stade, le calculateur connaît l’ensemble C des paramètres définissant la clothoïde illustrant la ligne de bord considérée (les deux lignes étant considérées l’une après l’autre).
Le calculateur connaît également les données relatives à la dynamique du véhicule à l’instant T, à savoir : - sa position xx 0 , yy 0 , - son cap θ 0 , - sa vitesse v 0 , - son accélération a 0 , - la courbure instantanée c de sa trajectoire (voir équation Math.4), et - la durée de validité ΔT du modèle.
Il est donc en mesure de calculer la trajectoire du véhicule automobile, par exemple sous forme cartésienne.
Alors, le calculateur détermine, si elle existe, la racine de l’expression :
[Math. 11]
[x(s);y(s)] = [xx(t’);yy(t’)]
Sinon, le procédé se poursuit en une étape S4.
Avant de décrire cette étape S4, on peut expliquer comment la projection orthogonale du point critique Pc sur une clothoïde est effectuée.
Ici, la projection est réalisée sur la base de la méthode de Newton Raphson.
Cette méthode permet de trouver une approximation précise d'un zéro (c’est-à-dire d’une racine) d'une fonction réelle f d'une variable réelle t.
Pour introduire cette méthode, on peut définir l’ensemble C(t) comme étant l’ensemble des valeurs des coefficients de la clothoïde considéré au niveau du point d’abscisse curviligne l=t.
On peut également définir la variable réelle t* qui est telle que l’ensemble C(t*) soit la projection orthogonale Pc* du point critique Pc sur la clothoïde définie par cet ensemble C. Cette variable réelle t* constitue donc l’abscisse curviligne du projeté orthogonal Pc* du point critique Pc sur la clothoïde.
On peut enfin définir la fonction f sous la forme suivante :
Dans cette équation, les crochets signifient que l’on réalise le produit scalaire de deux vecteurs. Le premier vecteur est formé par la différence entre les coordonnées (x c , y c ) du point critique et les coordonnées cartésiennes (x(t), y(t)) d’un point situé le long de la clothoïde, à l’abscisse curviligne t. Le second vecteur est formé par la dérivée par rapport à l’abscisse curviligne t des coordonnées cartésiennes (x, y) dudit point.
On peut aussi écrire cette équation sous la forme :
Dans cette équation, le terme Ψ 0,proj est égal à l’angle de cap de la clothoïde au niveau du projeté orthogonal Pc*.
Par conséquent, on peut aussi écrire :
L’objectif est alors de trouver le zéro de la fonction f.
En pratique, pour trouver ce zéro, on considère en entrée les coefficients de la clothoïde considérée, ainsi que les coordonnées du point critique Pc à projeter.
Puis, le calculateur sélectionne un point de départ sur la clothoïde à partir duquel le projeté orthogonal Pc* sera recherché. En effet, cette méthode consiste à tester des points de départ différents puis, pour chaque point de départ, à tenter de faire converger l’algorithme vers une solution constituant le projeté orthogonal Pc*. Cette tentative de faire converger l’algorithme est réalisé un nombre fini d’itérations (par exemple une vingtaine de fois). Ainsi, tant que la méthode ne converge pas rapidement, on recommence avec d’autres points de départ.
A titre d’exemple, les points de départ successivement utilisés pourront être les points de coordonnées : - (x(L/2),y(L/2)), - (x(0),y(0)), - (x(L),y(L)).
Si la valeur de la distance de Mahalanobis calculée est inférieure au seuil maximal, alors le microcontrôleur considère que le vecteur de données est représentatif d’un comportement normal du système (état NRML sur la ).
Si la valeur de la distance de Mahalanobis calculée est supérieure au seuil maximal, alors le microcontrôleur considère que le vecteur de données est représentatif d’une présence d’anomalies dans le comportement du système (état OTLR sur la ). Dans ce cas, le microcontrôleur peut générer un signal d’alerte pour informer l’utilisateur du système d’un dysfonctionnement du système.
Bien entendu, la présente invention est susceptible de diverses variantes et modifications qui apparaîtront à l’homme de l’art. Par exemple, à la place de réaliser une transformation pour standardiser la projection des données d’apprentissage sur la base, le procédé de génération de modèle de détection d’anomalies peut comprendre un calcul d’une matrice de covariance, d’une matrice de précision (c’est-à-dire l’inverse de la matrice de covariance) et d’une moyenne à partir de la projection des données d’apprentissage sur la nouvelle base V’. La distance de Mahalanobis calculée dans ce procédé de génération est alors obtenue en utilisant cette matrice de précision et la moyenne calculée. Le modèle de détection généré comprend alors également cette matrice de précision et la moyenne calculée. Dans ce cas, le procédé de détection d’anomalies comprend un calcul de la distance de Mahalanobis en utilisant cette matrice de précision et la moyenne stockée.
Néanmoins, la projection de données sur la base transformée permet de ne pas calculer la matrice de précision car cette dernière correspond à la matrice identité dans ce cas. Cette transformation permet alors également d’éviter de stocker la matrice de précision dans le microcontrôleur.
PROCEDE ET SYSTEME D’IDENTIFICATION L’invention est un procédé d’identification de personnes physiques et morales.
L’identification des personnes se fait le plus généralement par analyse de leurs documents d’identité, soit en face à face soit par Internet, avec des méthodes qui sont peu fiables. Il existe aussi des automates d’analyse biométrique qui sont plus efficaces, mais réservés aux fonctionnaires de police ou de douane.
On connait aussi des méthodes d’authentification de documents ouvertes à tous, qui peuvent s’appliquer à l’authentification des documents d’identité et donc à l’identification à distance.
Problème technique Les usurpations d’identité touchent de plus en plus de personnes et d’organisations, et ont des conséquences graves sur la vie privée, la sécurité, la réputation, la confiance et le bien-être des victimes, ainsi que sur la sécurité et les finances publiques des états.
Les cartes d’identité et passeports continuent à être transmis par Internet et à pouvoir être revendus sur le darkweb, ce qui est d’autant plus dangereux que ce peuvent être de puissantes organisations mafieuses et des états voyous qui utilisent ces documents.
Les états disposent pourtant de tous les éléments d’identité de leurs ressortissants et d’étrangers vivant sur leur sol, et pourraient développer des services publics d’identification sur Internet, permettant par exemple de valider la similitude entre le visage d’une personne et sa photo d’identité officielle, et donc de réaliser des identifications de qualité au bénéfice de tous.
Ils n’ont généralement pas ouvert de tels services jusqu’à présent en raison des risques que cela représentait. Certains étaient relativement faciles à contrôler comme l’identification de personnes non consentantes, le détournement des traitements en utilisant les données biométriques à d’autres fins que celles initialement prévues, ou le partage de ces données avec des tiers non autorisés, mais d’autres ne semblaient pas pouvoir être maitrisés, comme le risque d’erreur ou de faille technique, et surtout l’exposition de données biométriques à des accès non autorisés ou à des pertes.
L'avènement de l'informatique quantique et les avancées de l'intelligence artificielle vont permettre de trouver toutes les clés de chiffrement en très peu de temps, par des attaques de force brute.
Des méthodes de chiffrement innovantes doivent donc être trouvées pour résister aux tentatives de déchiffrement de fichiers par force brute.
L’invention sera bien comprise, et d’autres buts, avantages et caractéristiques de celle-ci apparaîtront plus clairement à la lecture de la description qui va suivre, laquelle est illustrée par les figures 1 à 4.
est un diagramme montrant les différente étapes de la mise en service de l’application d’identification ci-après décrite.
Dans un autre mode de réalisation de cette première variante, non représenté, l’organe de rappel élastique 140 peut être un ressort de traction en lieu et place du ressort de compression, et l'homme de métier pourra adapter le système de fixation en conséquence.
Deuxième variante Selon une deuxième variante de la première configuration, comme illustré sur la , le système de fixation 110 de l’électrode est un système à ressort.
L’organe de rappel élastique 140 est un ressort de torsion.
Un bras du ressort de torsion 140 est relié, directement ou indirectement, à la tête 124 de la pièce d’appui 120, tandis qu’un autre bras du ressort de torsion 140 est fixé au corps 102 de l’électrode 100.
La pièce d’appui 120 est un levier. La tête 124 du levier 120 permet d’appuyer et de maintenir l’extrémité 240 de la plaquette fusible 200 sur le corps 102 de l’électrode, au niveau de la première portion d’extrémité 150 de l’électrode grâce à une force de rappel exercée par le ressort de torsion 140.
La position de blocage du système de fixation 110, comme représenté sur la , est la position au repos du système de fixation.
En position de dégagement du système de fixation 110, la tête 124 est séparée du corps de l’électrode pour permettre le positionnement ou le retrait de la plaquette fusible. Le ressort de torsion 140 est plus comprimé en position de dégagement qu’en position de blocage.
Pour déplacer le système de fixation en position de dégagement, par exemple, un opérateur soulève le levier 120. Cela entraine un mouvement de rotation du bras du ressort de torsion 140 lié au levier 120 dans une direction selon la flèche B telle qu’illustrée sur la , en déformant le ressort de torsion 140. Le ressort de torsion 140 est ainsi comprimé et la plaquette fusible 200 peut être libérée ou introduite.
Après le retrait ou l’installation de la plaquette fusible, l’opérateur relâche le levier 120. Le bras dudit ressort de torsion lié au levier se déplace alors en rotation dans un sens A tel qu’illustré sur la . Ainsi, la tête 124 du levier 120 est ramené vers le corps 102 de l’électrode au niveau de sa première portion d’extrémité 150, grâce à la force de rappel exercée par le ressort de torsion 140. Ledit ressort de torsion applique alors une certaine pression de contact sur l’extrémité 240 de la plaquette fusible 200 via le levier 120, afin d’assurer un contact électrique entre la plaquette fusible et l’électrode.
A titre d’exemple illustratif, tout type de la plaquette fusible illustré sur la peut être utilisé avec le système de fixation de cette deuxième variante.
Dans une forme préférée de réalisation, pour maintenir la plaquette fusible de manière plus stable, le corps 102 de l’électrode comporte au niveau de sa première portion d’extrémité 150 un pion 158 disposé en vis-à-vis de la tête 124, comme illustré sur la . Ainsi, une plaque fusible 200 comportant une extrémité 240 avec un orifice 241 ou une encoche 243 peut être préférentiellement utilisée, et le pion 158 reçoit l’orifice 241 ou l’encoche 243 de la plaquette fusible. Le pion est dimensionné à la taille de l’orifice ou de l’encoche de la plaquette fusible. A titre d’exemple illustratif, la plaquette représentée sur les vues (a), (b), (c) ou (e) de la est adaptée au système de fixation de cette forme préférée de cette deuxième variante.
Troisième variante Selon une troisième variante de la première configuration, le système de fixation 110 de l’électrode 100 est un système dit « à molette », comme illustré sur les Figures 5 à 8.
La pièce d’appui 120 du système de fixation comporte la tête 124 et une tige 122 ayant un axe longitudinal. Une extrémité de la tige 122 est reliée à la tête 124, tandis qu’à une autre extrémité de la tige 122, un écrou 126 est fixé.
L’organe de rappel élastique 140 est un ressort de compression disposé autour de la tige 122, entre le corps 102 de l’électrode et l’écrou 126. Une première extrémité 141 du ressort de compression 140 est fixée à l’écrou 126. Une deuxième extrémité 142 du ressort de compression est fixée au corps 102 de l’électrode au niveau de sa première portion d’extrémité 150.
De manière non limitative, le corps 102 de l’électrode 100 est de section circulaire. De préférence, au niveau de la première portion d’extrémité 150, le corps 102 de l’électrode est doté d’un premier méplat 153. Le premier méplat 153 s’étend depuis la première face 104 du corps de l’électrode et est destiné à recevoir l’extrémité 240 de la plaquette fusible.
Le corps 102 de l’électrode comporte un trou de guidage 151 traversant au niveau de la première portion d’extrémité 150. Le trou de guidage 151 débouche au niveau du premier méplat 153. Ce trou de guidage 151 est destiné à la réception de la tige 122 de la pièce d’appui 120, à un jeu près, pour permettre le déplacement axial de la tige 122 dans ledit trou de guidage.
A titre d’exemple, le point critique pourrait être situé à un coin du véhicule, notamment si l’objectif est de détecter le plus tôt possible un changement de voie de circulation en déterminant le moment où le point critique franchit la ligne de bord intermédiaire 32. Dans ce cas, il s’agira du point avant du véhicule situé du même côté que le volant.
Selon un autre exemple, il pourrait s’agir du centre de gravité du véhicule automobile 10. La position de ce centre de gravité pourra être estimée une fois et être invariable, ou pourra être calculée en fonction par exemple du nombre de passagers dans le véhicule 10. Ce point critique centré sur le centre de gravité sera utile notamment pour réaliser un freinage d’urgence tel que le véhicule 10 reste globalement sur sa voie de circulation. Ce point critique centré sur le centre de gravité sera aussi utile lorsque l’on souhaite afficher sur l’écran intérieur du véhicule la voie sur laquelle se trouve principalement le véhicule.
En variante, on pourrait définir non pas un seul point critique, mais un ensemble de plusieurs points critiques Pc, typiquement les quatre coins du véhicule automobile. En effet, avec ces quatre coins, la détection d’un changement de voie de circulation sera toujours réalisée de façon très précoce, quel que soit le côté vers lequel se dirige le véhicule 10.
La troisième étape S3 consiste ensuite, pour le calculateur 11, à déterminer la voie dans laquelle se trouve ce point critique Pc.
En l’espèce, le point critique Pc est affecté à la voie de circulation V0, V1 pour laquelle il se trouve à droite de sa ligne de bord gauche et à gauche de sa ligne de bord droite.
Pour effectuer ce contrôle, le point critique Pc est projeté sur les clothoïdes des différentes lignes de bord de voie. Puis le calculateur procède successivement, voie par voie, en déterminant si les projetés orthogonaux Pc* du point critique Pc sur les deux lignes de bord bordant cette voie présentent des ordonnées l’une positive et l’autre négative.
Plus précisément ici, la voie de circulation V0, V1 sélectionnée est celle pour laquelle : - le produit scalaire du vecteur et du vecteur (à savoir le vecteur normal à la clothoïde au niveau du projeté orthogonal Pc*) pour la clothoïde représentative de l’une des deux lignes de bord 31, 32, 33 délimitant cette voie de circulation V0, V1, multiplié par : - le produit scalaire du vecteur et du vecteur (à savoir le vecteur normal à la clothoïde au niveau du projeté orthogonal Pc*) pour la clothoïde représentative de l’autre des deux lignes de bord 31, 32, 33 délimitant cette voie de circulation V0, V1, est négatif.
En pratique, le calculateur réalise ce calcul successivement pour chaque voie de circulation, en commençant par la voie la plus à gauche. Dès que le produit des produits scalaires est négatif, le point critique Pc est affecté à la voie de circulation correspondante. Cette voie de circulation est alors dite « présélectionnée ».
On notera que dans la variante où un ensemble de plusieurs points critiques Pc est considéré, on recherchera ici dans quelle(s) voies de circulation ces points critiques se trouve(nt). Il peut ainsi que plusieurs voies de circulation soient présélectionnées.
Si jamais cette étape S3 a permis d’affecter le point critique Pc à une voie de circulation, le procédé se poursuit en une étape S4.
Dans le cas contraire, une étape intermédiaire S3’ est prévue.
Cette étape intermédiaire S3’ consiste à prolonger les clothoïdes définissant les lignes de bord de voie avant de remettre en œuvre le processus de l’étape S3.
En effet, comme chaque clothoïde présente une longueur L finie, il peut arriver que le projeté orthogonal Pc* du point critique Pc se situe non pas sur la clothoïde, mais sur la prolongation de celle-ci, en amont de l’original M de la clothoïde ou en aval du point d’abscisse curviligne L de la clothoïde.
L’idée consiste donc, si aucun projeté orthogonal Pc* n’a été trouvé sur une clothoïde, à prolonger cette dernière d’une longueur limitée (cette longueur est inférieure à 5 mètres et peut être typiquement égale à 3 mètres). Cette longueur est limitée puisqu’il est difficile de prolonger une clothoïde de façon fiable.
Ici, avant de réaliser cette prolongation, le calculateur réalise un contrôle. Ce contrôle consiste à vérifier, pour chaque voie, si les coefficients Ψ 0 et c 0 des clothoïdes des lignes bordant cette voie sont supérieures ou non à des valeurs seuils prédéterminées. S’ils sont inférieurs à ces seuils, les clothoïdes sont étendues vers l’arrière sur une longueur de 3 mètres. Sinon, elles ne le sont que sur une longueur réduite inférieure strictement à 3 mètres.
Comme le montre la , si cette étape S3’ ne permet pas de parvenir à une solution, aucune voie de circulation n’est sélectionnée et le procédé s’achève (étape S5).
En appliquant l’étape 14, la distance de Mahalanobis se réduit à la distance euclidienne. On peut l’exprimer comme suit :
où est un vecteur qui correspond à une donnée projetée et standardisée, est un vecteur qui correspond à une moyenne des données d’apprentissage projetées et standardisées.
Le procédé comprend ensuite une étape 16 de définition d’un seuil maximal de distance de Mahalanobis. Dans cette étape, le serveur définit un seuil maximal de distance de Mahalanobis. Ce seuil maximal de distance de Mahalanobis représente une limite d’un comportement normal du système. Par exemple, le seuil maximal est défini comme une distance qui est supérieure à la distance de Mahalanobis associée à 98% des données normales projetées sur la base V’ et standardisées.
Ce modèle de détection d’anomalies est ensuite intégré dans un microcontrôleur du système. En particulier, le modèle de détection d’anomalies est stocké dans une mémoire du microcontrôleur. Un tel modèle de détection présente l’avantage d’occuper relativement peu d’espace dans la mémoire du microcontrôleur.
La illustre un deuxième mode de mise en œuvre d’un procédé de génération d’un modèle de détection d’anomalie.
Le procédé comprend une étape 20 d’obtention de données d’apprentissage. Dans cette étape 20, des données d’apprentissage sont fournies au serveur. Les données d’apprentissage sont des données représentatives d’un comportement normal d’un système. Ces données peuvent par exemple être acquises par au moins un capteur de ce système lors d’un fonctionnement normal du système.
Le procédé comprend ensuite une étape 21 de mise en œuvre d’une décomposition en valeurs singulières. Dans cette étape 21, le serveur procède à une décomposition en valeurs singulières de la matrice X. Cette étape 21 permet de factoriser la matrice X de données d’apprentissage en trois matrices U, Σ et V. En particulier, les matrices U, Σ et V sont définies de sorte que la matrice X corresponde au produit matriciel UΣV T . La matrice U est alors une matrice orthogonale de taille m x m. La matrice Σ est une matrice diagonale de taille m x n contenant les valeurs singulières de la matrice X (c’est-à-dire les racines carrées des valeurs propres de la matrice X T X ou XX T ), et V est une matrice orthogonale de taille n x n.
Le procédé comprend ensuite une étape 22 de calcul d’une nouvelle base V’. Dans cette étape 22, le serveur calcule une nouvelle base V’ à partir de la matrice Σ obtenue grâce à la décomposition en valeurs singulières.