Diagnostic de défaillances par Reconnaissance de Formes
Transcription
Diagnostic de défaillances par Reconnaissance de Formes
SETIT 2005 3rd International Conference: Sciences of Electronic, Technologies of Information and Telecommunications March 27-31, 2005 – TUNISIA Diagnostic de défaillances par Reconnaissance de Formes Rafik Bensaadi*, Hayet Mouss** Laboratoire d’Automatique et Productique Université de Batna , 1 Rue Chahid Med. El. Hadi Boukhlouf, 05000 Batna, Algeria. * [email protected] ** [email protected] Abstract: Afin de contrôler la tendance du procédé industriel, en fonctionnement normal, vers un état indésirable, des mesures particulières de sécurité doivent être programmées dans l’algorithme de contrôle. Les approches classiques (PID et même des méthodes à base du modèle d’état) perdent leurs performances devant des modèles imprécis pour les systèmes physiques réels, complexes de nature (non linéaires, MIMO). Une alternative fait donc appel aux techniques de l’Intelligence Artificielle. Cet article présente la conception d’un système de reconnaissance de formes floues qui répond, en temps réel, aux problèmes suivants: Identification d’un état actuel, Identification d’une évolution vers un mode de défaillance, Diagnostic et décision. références. Key words: diagnostic, détection de panne, reconnaissance de forme, contrôle flou, système complexe, gradients conjugués. 1 Introduction Un intérêt particulier est donné au développement de systèmes intelligents de détection et diagnostic de pannes dans les procédés industriels à cause des exigences croissantes pour un fonctionnement fiable, sûr et efficace, et pour maintenir la qualité des produits. D’autres variables, inconnues ou non directement mesurables, doivent faire partie du vecteur d’état pour mieux décrire le comportement du système: La précision du modèle, objectif très difficile, est nécessaire pour mieux gérer les informations incertaines et imprévues. Cependant, l’expert humain montre des compétences supérieures dans la commande de machines et localisation de défauts, et peut faire un diagnostic correct bien qu’il ne dispose d’aucun modèle sur le système sous contrôle, en effet, l’être humain est apte à apprendre, gérer des informations imprécises et agir en fonction d’une combinaison complexe de signaux de capteurs au lieu de sources séparées d’information. A cause de la complexité de la dynamique des procédés réels, nous avons besoin d’implanter une solution artificielle possédant un niveau sophistiqué de traitement de l’information proche de celui du cerveau humain, pou réaliser les taches délicates de détection et diagnostic de pannes. La Reconnaissance de Forme (RdF), domaine de l’intelligence artificielle, s’intéresse au problème de reconnaissance de situations significatives d’un système dans un environnement complexe ou noyé dans le bruit. Le principe de la RdF repose sur la représentation numérique du kème objet observé (entité physique tel qu’un moteur, image, etc.) par le vecteur xk = [xk1, . . . ,xkq]T, appelé ‘vecteur forme’, où xkj indique la jème caractéristique associée à l’objet k: température, pression, débit, fréquence de bruit sonore, etc. et q la taille du vecteur forme. Le concept de logique floue est inclus pour mieux considérer l’imprécision. Nous proposons dans cet article une technique pour l’apprentissage de fonctions d’appartenance. Nous allons discuter quelques approches de classification et appliquer l’algorithme CUSUM, avec des critères supplémentaires, au problème de détection de défaut. Nous présentons une architecture générale pour un système de diagnostic et aide à la décision avec les résultats de simulation sur un système fictif complexe. SETIT 2005 2 Description du Système de RdF Le vecteur forme correspond à une combinaison d’un nombre connu de signaux de capteurs: température au point A, niveau de pression en B, débit, etc. Il est construit en Composantes Principales) aident à la conception du vecteur forme. Pour chaque nouvelle observation, on doit identifier et quantifier l’état actuel du système ainsi que toute éventuelle évolution vers un autre état: en particulier, l’état de défaillance. On doit estimer la vitesse de cette évolution et exécuter les mesures d’urgences nécessaires dans des délais acceptables. Une architecture générale du système de diagnostic répondant aux objectifs précités est présentée en figure 1. 3 Estimation des fonctions d’appartenance 3.1 Coalescence Floue Cette première étape d’apprentissage non supervisé est nécessaire pour avoir une initialisation logique du système de diagnostic. Soit l’ensemble d’apprentisage X = {x1, x2, … xn}, où xk = [xk1, . . . ,xkq]T est le vecteur forme. Le problème de coalescence dans X consiste à attribuer aux objets {xk} des coefficients qui indiquent une partition naturelle en sousgroupes dans X. L’objectif est de rechercher une structure en c classes par calcul des degrés d’appartenance, U = [uik]. L’algorithme des c Moyennes Floues (ou FCM) est appliqué dans ce contexte avec les considérations suivantes: Une classe, ensemble d’observations de caractéristiques similaires, correspond à un mode de fonctionnement normal ou de défaillance, le nombre de classes considérées est supposé connu. Il est aussi initialisé en fonction des situations significatives observées durant la phase d’apprentissage, L’ensemble d’apprentissage est choisi de taille suffisamment longue pour bien couvrir toutes les valeurs possibles. Il est obtenu par une série d’observations sur le procédé en fonctionnement sous différents modes. SETIT 2005 Initialiser c, nombre connu de modes de fonctionnement Estimation des fonctions d’appartenance Coalescence Floue Apprendre un approximateur nonlinéaire Lire zk, nouvelle observation, ou moyenne d’une séquence Etiqueter zk uik faible Non Oui Mémoriser en donnée rejetée Non Max atteint Classifier zk Détection de changement d’état Oui Mise à jour de c avec une valeur supérieure Monitoring Mesures de sécurité Figure 1. Conception du système de RdF L’algorithme FCM converge depuis toute initialisation vers un minimum local. Les prototypes et degrés d’appartenance sont, itérativement, mis à jour par [3]: ∑ m uik x k k =1 n ∑u for i = 1,2,…c m ik k =1 uik = f (xk, vi, {vj}, m) où, vi: prototype de classe i, m ∈ [1, ∞): degré du flou, q vi = uik: degré d’appartenance de l’objet xk à la class i, (1) jusqu’à ce qu’un seuil d’erreur sera atteint. L’expression (1) est intuitivement acceptée si l’on observe la similarité avec le concept de ‘centre de gravité’. 3.2 Conception de l’Approximateur Nonlinéaire A ce niveau, X = {xk} et U = [uik] sont les entrées d’un algorithme d’apprentissage pour un approximateur SETIT 2005 nonlinéaire. Considérons la structure de la figure 2: un réseau de neurone du type RBNN (Radial Basis Neural Network). La couche intermédiaire (ou couche cachée) est constituée de p fonctions radiales de base (radial basis activation functions) avec un opérateur d’entrée du type ‘distance euclidienne’. La sortie est calculée par une fonction d’activation linéaire avec un opérateur d’entrée du type ‘produit scalaire’. b) Prendre α = −σ [ζ(k)]Td(k) [ζ(k + σ ⋅ d(k))]Td(k) − [ζ(k)]Td(k) c) θ = θ + α d(k) d) σ = α e) Si | α⋅d(k) | < tolα alors retourner θ (k+1) = θ sinon aller à b 3) Calculer ζ (k+1). Sortie 4) Si ζ(k) < tolθ alors retourner θ (k+1) ζ(0) 5) Définir la prochaine direction de recherche d (k+1) = –ζ (k+1) + β (k+1) d (k), Couche cachée où, entrées x1 ∑ w exp(− x − c j 2 j /γ j) 2 (2) j =1 où, θ = [w1, . . . ,wp]T: le vecteur-poids, cj = [cj1, . . . ,cjn]T: centres des fonctions de Gauss. On veut que Fi(x, θ) coïncide avec une fonction d’appartenance à la classe i aux points (xk, {uik}) pour i = 1,. . . , c, précédemment estimés par FCM. La méthode des Gradients Conjugués, choisie pour ses bonnes caractéristiques de convergence, est appliquée pour l’apprentissage de l’approximateur. Elle est basée sur la minimisation de: Ji = n [ζ(k + 1) − ζ(k)]Tζ(k + 1) [ζ(k)]Tζ(k) (loi de Polak-Ribiere) Le processus est répété pour les c classes considérées afin de définir toutes les fonctions d’appartenance. Notons que l’expression (2) ne présente aucun facteur de saturation pour borner Fi(x, θ) dans l’intervalle [0,1], et on peut se trouver lors de lecture devant quelques valeurs sensiblement négatives ou supérieures à 1. Elles doivent être rectifiées (en mettant par exemple les valeurs négatives ou dépassant 1, respectivement, à 0 et 1) afin qu’elles soient correctement considérées dans la phase ‘détection de défaut’. Une autre méthode qui consiste à ajouter un étage ‘sigmoid’ à la structure de figure 2, peut être essayée dans un travail futur. 4 Traiter une nouvelle observation L’approximateur de fonctions d’appartenance étant bien défini, une nouvelle observation z est étiquetée puis classifiée: Le degré d’appartenance de z à la classe i est ∑ (e ) e k T k µi(z) = Fi(z, θ) k =1 où, ek = (uik) – Fi(xk, θ), for i = 1,. . . , c L’algorithme est donné comme suit [10,11]: 1) Calculer ζ(k) = β(k + 1) = (loi de Fletcher-Reeves), ou 6) Incrémenter k et aller à 2. L’expression de sortie, avec x = [x1,. . . , xq]T, est donnée par p [ζ(k + 1)]Tζ(k + 1) [ζ(k)]Tζ(k) xq Figure 2. Structure de l’approximateur nonlinéaire F(x, θ) = β(k + 1) = ∂J i ∂θ . Initialiser la direction de θ = θ(k) recherche d(k) = –ζ (k). 2) Trouver θ(k+1) qui minimise Ji(θ) itérativement, par la méthode ‘Secant’ a) Initialiser σ < 1, prendre θ = θ(k) sur d(k), (3) Un classifieur strict est défini sur ℜq comme une fonction de décision D qui prend ses valeurs dans l’ensemble des éléments d’une base orthogonale de dimension c: D(z) = ei signifie que z appartient à la classe i. Cette attribution stricte est ‘quantifiée’ par l’expression (3) en précisant à quel degré z est considéré comme défaut du type i, et est utile pour identifier le mode de fonctionnement/défaillance actuel. Plusieurs choix sont disponibles pour la conception du classifieur: Critère 1: z ∈ i ⇔ µi(z) = max { µj(z) }j = 1, ⋅⋅⋅ c. Critère 2: Règle du plus proche prototype (NP rule) (4) SETIT 2005 z ∈ i ⇔ DNP,v(z) = ei ⇔ || z – vi || ≤ || z – vj || for j = 1, ⋅⋅⋅ c. (5) Critère 3: Règle des k-plus proches voisins (k-NN rule) Calculer et ordonner les distances d(z, xi): {d1≤ d2≤ ⋅⋅⋅ dk≤ dk+1≤ ⋅⋅⋅ dn}. Trouver les colonnes dans U correspondant aux indices des k plus proches voisins: {1, 2, ⋅⋅⋅ k}. Calculer le vecteur u(*|z) = [u(1|z) u(2|z) ⋅⋅⋅ u(c|z)]T avec: k u u(i z) = ∑ ij for j = 1, ⋅⋅⋅ c. k j =1 z ∈ i ⇔ DNN,k(z) = ei ⇔ u(i|z) = max { u(j|z) }j = 1, ⋅⋅⋅ c. (6) Le premier critère est le plus adéquat pour un ensemble d’apprentissage suffisamment représentatif et un approximateur de fonction d’appartenance, précis. NP et kNN seront des alternatives (redondance) servant à la résolution de situations ambiguës tel que l’exemple illustrée sur la figure 3: il est simple de conclure que (z1<z* ∈ class 1) et (z2>z*∈ class 1), mais nous avons besoin de critère(s) supplémentaire pour classifier (z2 ≈ z*) 1 0.9 µ2(z) µ1(z) 0.8 membership function 0.7 (8) Avant l’instant (inconnu) de changement k0, Θ est égal à Θ0. A l’instant k0, Θ = Θ1 ≠ Θ0. Le problème est de détecter k0. Il est facile de voir que la ‘somme cumulée’ S(k) = k k j =1 j =1 pΘ1(z(j)) Θ0 (z(j)) ∑ s(z(j)) = ∑ ln p (9) (où, {z(j)} j = 1, ⋅⋅⋅ k une séquence de variables aléatoires indépendantes) décroît sous l’hypothèse (Θ = Θ0), passe par un minimum à k0, puis croit sous l’hypothèse (Θ = Θ1). CUSUM est construit sous cette idée et donné comme suit: a) Lire une nouvelle donnée z(k), 0.5 0.4 b) Calculer la fonction de décision g(k)=max{0, g(k-1)+s(z(k))}, 0.2 0.1 c) Calculer le nombre d’observations successives pour lesquelles la fonction de décision reste strictement positive: z* 0 0.1 0.2 0.3 0.4 0.5 z 0.6 0.7 0.8 0.9 1 Figure 3: Ambiguïté dans un problème de classification La contrainte N(k) = N(k-1) 1{g(k-1)>0}+1, où 1{x}=1quand x est vrai 1{x} = 0 quand il est faux. c ∑ µ (z) > u th (7) i =1 est ajoutée pour rejeter des observations aux degrés d’appartenance faibles, uth est une faible valeur choisie inférieure à 0.5. Lorsqu’un nombre suffisant d’observations similaires (faible variance dans une distribution de Gauss) est atteint, une nouvelle classe est crée. Le prototype et degrés d’appartenance seront calculés individuellement (coalescence floue avec c=1) ou par lancement d’un nouveau processus global d’estimation de fonction d’appartenance. 5 pΘ1(z) pΘ0(z) A chaque instant tk, 0.6 0.3 i 1) CUSUM (CUmulative SUM) est un algorithme appliqué aux problèmes de détection de changement. Il consiste à traiter une séquence de variables aléatoires indépendantes suivant une loi de probabilité pΘ(z) dépendant d’un seul paramètre Θ. Le principe est basé sur un concept fondamental: rapport de vraisemblance d’une observation z: s(z) = ln Et finalement decider 0 interprété par le vecteur forme, on exprime par µi(t) le degré d’appartenance de l’état du système à la classe i à l’instant t, et on développe notre approche à travers les points suivants: Détection et prévision de pannes La détection et prévision de pannes constitue un vrai potentiel d’aide à la maintenance préventive. La détection d’un état de fonctionnement ou de défaillance, actuel ou futur, nécessite l’acquisition et traitement, en temps réel, des signaux z(t) et µi(z,t), et exploiter leurs caractéristiques stochastiques. Si l’état du système est efficacement d) Si g(k) > h, générer un signal d’alarme, (h est un seuil choisi pour vérifier des contraintes relatives aux temps de détection, et fausses alarmes) Déterminer l’instant de changement: k0 = ka – N(ka), où ka l’instant de l’alarme, Réinitialiser la fonction de décision à 0, Pratiquement, Θ est pris valeur moyenne d’une distribution de Gauss pΘ(z). Concernant notre problème, chaque valeur typique Θi indiquera le prototype vi, le problème de détection de changement entre états exige donc une connaissance préalable sur les caractéristiques statistiques de modes de fonctionnement/défaillance. On ne possède pour l’instant que des fonctions d’appartenance! 2) La remarque que nous venons de mentionner nous laisse penser à une modification: Considérer le rapport SETIT 2005 ln réponse de tous les éléments électriques/mécaniques considérés dans le diagnostic du procédé en question. p (z) µi(z) au lieu de ln Θi où i et j sont des indices de µ j (z) pΘj (z) classes. ‘degré d’appartenance’ n’a pas le même sens que ‘probabilité’, mais les deux rapports reflètent la même information, donc la possibilité d’appliquer CUSUM en prenant s(z) = ln µi (z) µ j (z) (10) est intuitivement acceptée. 3) Nous venons de présenter la détection de changement entre états. Si le prototype de la classe cible reste encore loin à l’instant de détection, k0 peut désigner un évènement d’évolution et les mesures de sécurités peuvent être prises dans des délais acceptables. Si le rayon de fonction d’appartenance de la classe cible est petit, la tache deviendra plus délicate. Nous avons donc besoin d’un autre outil pour quantifier l’évolution entre états et pouvoir générer l’alarme à un instant acceptable. Une évolution vers un mode de défaillance peut être dµi(t) décrite par : une valeur négative indique que le dt système est entrain de quitter l’état i, une valeur positive indique une évolution vers cet état. Le caractère ‘rapide’ ou ‘lent’, de la vitesse d’évolution, peut être interprété 2 d µi(t) : le changement de vitesse d’évolution est dit par 2 dt 2 d µi(t) ‘rapide’ pour > 0 . Une observation peut quitter 2 dt ‘rapidement’ l’état i et converger ‘lentement’ vers un état j. les informations sur la direction d’évolution sont extraites à partir d’une matrice 3×c définie par: µ 1 dµ E= 1 dt d 2µ1 2 dt µ2 dµ2 dt 2 d µ2 2 dt µc dµc ... dt 2 d µc ... 2 dt 6 Les effets (symptômes) de la défaillance du type i peuvent résulter de plusieurs éléments physiques, ceci est bien décrit par les probabilités conditionnelles. Le diagnostic est de décider que l’élément ej (une valve, transistor, etc) est (ou sera) la cause de la panne détectée (ou prévue). Les évènements précédents de panne alimentent une base de données statistique par des lois de probabilités conditionnelles {p(ith fault | ej-fault)}, utilisées pour le calcul de p(ej-fault | ith fault) par la règle de Bayes. Les actions préventives correspondantes sont décidées en fonction de la conclusion du diagnostic, la gravité du mode de défaillance et l’architecture du système de décision. Une solution puissante est conçue autour d’un Moteur d’Inférence: c’est un système matériel ou logiciel qui permet l’extraction d’une conclusion (sortie) à partir d’un fait (entrée) et une base de connaissance (règle de production). Si la base de connaissance inclut des termes flous, il est dit Moteur d’Inférence Flou. Une conclusion peut faire référence à: • La poursuite d’une nouvelle consigne (control flou), la base de connaissance contient des règles de la forme: Si (mode2) et (faible flux d’entrée), alors (la température du réservoir 3 doit être basse) • Des instructions logiques / diagnostic, une règle peut être: Si (flux de sortie > 0.24m3/s) et (vanne 21 fermée), alors (arrêt, et réparer/changer l’élément e2), Si (d2µ3/dt2 >0.12) ou (commande u1 non active), alors (Défaillance du type 3 dans les 3 prochaines minutes). ... En dehors de la construction et génération des règles de production, un problème se pose dans la précision d’expression des fonctions d’appartenance pour tous les sous-ensembles flous considérés dans la base de connaissance. Nous présenterons dans le paragraphe suivant, à travers un exemple de contrôle de température, les différentes étapes de conception d’une commande floue. (11) L’instant de l’alarme correspondant, ke, est calculé en fonction de contraintes définies sur les éléments de E, ke est, par exemple, défini comme le temps durant lequel dµi (t) d 2 µi (t) dµi (t) restent positifs, il ⋅ et dt 2 dt dt correspond dans ce cas avec l’instant d’alarme calculé par CUSUM. Une alarme précoce est générée si d’autres conditions sont ajoutées, ceci fera appel aux méthodes d’optimisation. A cause des perturbations externes, du bruit peut s’ajouter à z lors de l’acquisition. Nous allons donc considérer des valeurs moyennes au lieu de valeurs instantanées: le problème est résolu par l’implantation d’un filtre numérique du type RIF, la bande passante et temps d’échantillonnage sont choisis en fonction des caractéristiques du signal bruit ainsi que du temps de Diagnostic et Décision 7 Résultats de Simulation Considérons, pour la démonstration de la méthode de diagnostic proposée, un procédé fictif complexe. Nous supposons que l’expert humain surveille l’état du système en observant trois variables: v1 (pression au point A1), v2 (température au point A2) et v3 (fréquence de bruit sonore). Il ‘détecte’ et ‘diagnostique’ sur la base de deux combinaisons complexes: x1=f1(v1, v2, v3) et x2= f2(v1, v2, v3) (ACP). Nous voulons appliquer le Système de Reconnaissance de Formes conçu pour agir selon une faculté de raisonnement similaire. La simulation est lancée en provoquant, durant un temps suffisant, le fonctionnement sous un mode (typique) et deux modes de défaillance (affecter de façon aléatoire les paramètres du procédé). L’ACP a réduit le vecteur forme en SETIT 2005 [x1, x2]T. l’étape ‘apprentissage non supervisé’ est appliqué avec un ensemble d’apprentissage de taille égale à 100. Les échantillons sont étiquetés; et les prototypes identifiés comme montré sur la figure 4. La méthode des gradients conjugués est appliquée avec succès pour l’apprentissage d’un approximateur de fonction d’appartenance à base de RBNN pour chaque classe (figure 5). R2: Si (P5 ≈ 0.4 bar) ou (évolution lente vers mode3), alors (T5 est approximativement 15°C) R3: Si (mode2) et (bruit sonore de haute fréquence), alors (T5 doit être élevée) ….. Fait: z=[7, 3.7]T, P5 = 1.27 bar, dµ3/dt = 0.2 /sec, d2µ3/dt2 = -0.18 /sec2, fsn= 15 kHz Conclusion: T5 should be ? 8 L’ensemble flou ‘mode i’ est décrit par la fonction d’appartenance correspondante Fi(x ,θ). Les fonctions d’appartenance (forme et paramètres) pour tous les autres ensembles flous sont initialisés comme montré mais doivent être modifiées par apprentissage. 6 4 x2 2 0 Les opérations élémentaires de logique floue sont: -2 AND: µA∩B = MIN(µA, µB) (12) -4 OR: µA∪B = MAX(µA, µB) (13) NOT: µA = 1 − µA (14) -6 -2 0 2 4 6 8 10 12 x1 Figure 4. Coalescence floue avec c=3, q=2. Les prototypes sont indiqués par des étoiles rouges: v1=[1.823, -0.935]T, v2=[9.006, 2.151]T, v3=[6.297, 5.078]T Pour le test de classification et détection de défaut, on a provoqué une évolution vers le mode 3 pa génération d’une séquence {zk=[zk1, zk2]T} selon une trajectoire linéaire, chaque observation est bien étiquetée et classifiée (Figure9µ (z) a). CUSUM est appliqué avec s(z) = ln 3 (figure 6). µ1(z) L’évolution vers mode 3 est détectée avant lorsque les dérivées de fonctions d’appartenances sont considérées (figure 7-b). Un problème de contrôle de température est présenté pour décrire un exemple de moteur d’inférence flou (figure 8). Une partie de la base de connaissance est donnée par: R1: Si (mode1) et (évolution rapide vers mode3), alors (T5 doit être basse) Pour chacune des règles, la compatibilité avec les valeurs des variables (possibilité pour que la règle s’applique pour certaines valeurs des variables d’entrée et de sortie) est calculée. Les degrés d’appartenance résultants sont combinés par les opérateurs ‘ET’ (règles 1, 3) ou ‘OU’ (règle 2). Une conclusion individuelle est obtenue par seuillage (minimisation) de la fonction d’appartenance conséquence. Toutes les règles seront ensuite combinées par un opérateur ‘ALSO’ (maximisation des conclusions individuelles) pour construire une fonction d’appartenance relativement complexe ‘µ’,caractérisant la conclusion finale. L’étape finale est dite ‘defuzzification’: la nouvelle consigne * T5 , étant donné le fait: (z=[7, 3.7]T, P5=1.27 bar, dµ3/dt = 0.2 /sec, d2µ3/dt2=-0.18 /sec2, fsn=15 kHz), est calculée par la méthode du centre de gravité: * T5 = ∫ T µ(T ) dT ∫ µ(T ) dT 5 5 5 5 = 34.8°C 5 et T5 reste sous ce contrôle de façon continue. (15) SETIT 2005 (a) (b) 2 10 J3 J2 J1 1 10 0 10 -1 10 -2 10 0 5 10 15 number of iterations (c) 20 25 (d) Figure 5: Approximation des fonctions d’appartenance, p=25, γ = 2.5. (a) fonctions d’appartenance pour les classes considérées. (b) projection de (a) sur le plan x1-x2, le résultat est bien similaire au graphe de la figure 4.(c) Fonction de coût durant l’apprentissage. Un compromis existe entre temps d’apprentissage et critères requis de précision. (d) F1(x, θ) coïncide avec la fonction d’appartenance à la classe 1 aux points de l’ensemble d’apprentissage SETIT 2005 (a) -10 60 -20 50 cusum decision function: g CUmulative SUM: S -30 -40 -50 -60 30 20 10 -70 -80 40 0 5 10 15 20 25 30 time in number of samples 35 40 0 45 0 5 10 15 20 25 30 time in number of samples (b) 35 40 45 (c) µ1(z(k)) µ2(z(k)) µ3(z(k)) 0.6 0.4 0.2 0 0 5 10 15 20 25 30 time in number of samples 35 40 45 5 Class number 4 3 2 1 0 0 5 10 15 20 25 30 time in number of samples (a) 35 40 45 0.04 0.02 0 -0.02 -0.04 0 membership second derivative Membership 1 0.8 membership first derivative Figure 6. détection de changement par CUSUM, h=1.2. Le petit cercle rouge indique l’instant de changement; l’étoile indique l’instant d’alarme. (a) Trajectoire d’une série de nouvelle observations, le système est entrain de quitter le mode1 vers le mode3 (b) graphe ‘Cumulative Sum’, (c) graphe ‘fonction de décision’ 4 5 10 15 20 25 30 35 40 45 35 40 45 time in number of samples x 10-3 2 0 -2 -4 0 5 10 15 20 25 30 time in number of samples (b) Figure 7.Une stratégie de détection de pannes futures, qui prend en considération les dérivés de fonctions d’appartenance. (a) classification–critère 1. (b) 1ère et 2nde dérivés de µ1(t) et µ3(t), le cercle plein indique une détection précoce. SETIT 2005 Positive Sign µ1 Quick Evolution Low 1 0.024 Règle 1 d2µ3/dt2 dµ3/dt z2 ≈ 0.4 bar Positive Sign Slow Evolution T5 µ ≈ 15°C 1 0.740 0.210 Règle 2 high µ2 T5 ALSO T5 Defuzzification d2µ3/dt2 dµ3/dt P5 µ high 1 0.550 0.319 Règle 3 15 kHz -0.18 /sec2 0.2 /sec 1.27 bar z=[7, 3.7]T T5 Figure 8. Exemple de moteur d’inférence flou. Le contrôle flou peut servir à la décision T5 34.8°C Sound noise frequency z2 SETIT 2005 8 Conclusion Une architecture générale d’un système de détection et diagnostic de pannes, à base de la reconnaissance de formes floues, est présentée. L’approche fait appel à la coalescence floue comme première partition de l’ensemble d’apprentissage en classes dont le nombre est initialisé en fonction des modes de fonctionnement normal ou de défaillance déjà connus, et la méthode des gradients conjugués comme outil d’apprentissage pour concevoir les approximateurs de fonctions d’appartenance. En cours du fonctionnement, les observations sont classifiées et de nouvelles classes peuvent être crées. CUSUM est appliqué au problème de détection de panne avec considération, dans le rapport de vraisemblance, de degrés d’appartenance au lieu de probabilités. Puis, une autre méthode qui exploite les dérivés des fonctions d’appartenance est proposée, l’évolution entre états est quantifiée, et les mesures de sécurité sont bien prises dans des délais acceptables. Il y a plusieurs façon pour concevoir un système de décision, nous avons proposé une approche à base de connaissances et présenté un problème de ‘contrôle flou de température’ comme exemple d’une action de décision basée sur les informations de changements d’état extraites par la matrice E Les résultats de test sur un procédé fictif complexe sont satisfaisants. Les performances du système système de reconnaissance de forme seront prouvés par test sur site réel, ceci fera appel à la conception d’une plate-forme matérielle et logicielle et sera le sujet d’un futur travail. 9 Références [1] Mogens Blanke, Michel Kinnaert, Jan Lunze and Marcel Staroswiecki, Diagnosis and fault tolerant control, Berlin: Springer, 2003. [2] L. H. Chiang, E .L. Russell and R. D. Braatz, Fault Detection and Diagnosis in Industrial Systems, London: Springer, 2001. [3] J. C. Bezdek, ‘a review of probabilistic, fuzzy, and neural models for pattern recognition’, In C. H. Chen (ed), Fuzzy logic and neural network handbook, chapter 2, New York: McGraw Hill, 1996. [4] L. A. Zadeh, ‘Fuzzy sets’, Information and Control, vol. 8, pp. 338-353, 1965 [5] L. A. Zadeh, ‘Outline of a new approach to the analysis of complex systems and decision processes’, IEEE Trans. Syst., Man, Cybern., vol. SMC-3, no. 1, pp. 28-44, jan. 1973. [6] S. Zieba, Une méthode de suivi d’un système évolutif. Application au diagnostic de la qualité d’usinage, Thèse de doctorat, Université de Technologie de Compiègne, juin 1995. [7] Takeshi Yamakawa, ‘A Fuzzy Inference Engine in Nonlinear Analog Mode and Its Application to a Fuzzy Logic Control’, IEEE trans. on Neural Networks, vol. 4, no. 3, pp. 496-522, May 1993. [8] I. S. Torsum, Foundations of Intelligent KnowledgeBased Systems, London: Academic Press, 1995. [9] Bernard Dubuisson, Diagnostic et reconnaissance des formes, Paris: Hermès, 1990. [10] Jonathan Richard Shewchuk, An Introduction to the Conjugate Gradient Method Without the Agonizing Pain (earticle), August 1994 [11] Jeffrey T. Spooner, Manfredi Maggiore, Raúl Ordóñez and Kevin M. Passino, Stable Adaptive Control and Estimation for Nonlinear Systems. –Neural and Fuzzy Approximator Techniques, New York: John Wiley and sons, Inc., 2002. [12] David J. DeFatta, Joseph G. Lucas and William S. Hodgkiss, Digital Signal Processing: A System Design Approach, New York: John Wiley and sons, Inc., 1988.