Diagnostic des défauts par un Couplage réseaux de neurones

publicité
03-04 November 2007
4th International Conference on Computer Integrated Manufacturing CIP’2007
Diagnostic des défauts par un Couplage réseaux de
neurones artificiels - algorithmes génétiques
Mohamed.DJOUADA, Ridha. ZIANI, Ahmed. FELKAOUI, Rabah. ZEGADI
Laboratoire de Mécanique de Précision Appliquée
Département d’optique et mécanique de précision
Université Ferhat Abbes, Sétif Algérie19000.
[email protected]
Résumé. Dans cette étude nous proposons une comparaison
des performances de la classification des défauts dans les
machines tournantes en utilisant un couplage des réseaux de
neurones artificiels (RNA) et les algorithmes génétiques. Les
signaux vibratoires ont été traités pour extraire deux types
d’indicateurs qui sont utilisés comme entrée au classificateur pour
l’identification de quatre classes des défauts et la classe de
fonctionnement sain (sans défaut). Les performances de la
classification ont été examinées avant et après sélection des
indicateurs par les algorithmes génétiques. Les résultats obtenus
montrent que l’approche utilisée permet une classification efficace
des données avec une performance de 100%.
I.
INTRODUCTION
applications d'RNA dans l'analyse de données, l'identification
de modèle et la commande [4]. [6]. Parmi différents types
d'RNA, le perceptron multicouches (noté MLP pour Multi
Layer Perceptron en anglais) sont tout à fait populaires et
utilisés pour le travail actuel. Dans cet article, les termes RNA
et MLP ont été employés l'un pour l'autre en l'absence d'autres
types de réseaux neurones. Ici une brève introduction à MLP
est donnée pour la perfection.
Un réseau MLP se compose d'une couche d'entrée de
neurones de source, une ou plusieurs couches cachées et d'une
couche de sortie. Le nombre des neurones dans la couche
d'entrée et de sortie dépend du nombre de variables d'entrée et
de nombre des classes désirées respectivement. Le nombre de
couches cachées et le nombre de neurones dans chaque couche
cachée affectent les possibilités de généralisation du réseau.
Pour un plus petit nombre de couches cachées et de
neurones, l'exécution peut ne pas être proportionnée.
Considérant qu'avec trop de neurones cachés peuvent avoir
le risque de sur-ajustement de précision des données. Il y a de
diverses méthodes, heuristiques et systématiques, pour choisir
le nombre de couches cachées et de neurone [3].
La Fig.1 montre une architecture typique de MLP se
composant de trois couches ; de M, N et O pour l'entrée,
cachée et la couche de sortie, respectivement. Le vecteur
La surveillance des machines gagne beaucoup d'importance
dans l'industrie en raison de la nécessité d'augmenter la fiabilité
des machines et de diminuer la perte de production possible
due aux pannes engendrées par les différents défauts.
L'utilisation des signaux vibratoires et d’émission acoustique,
est tout à fait commune dans le domaine de la surveillance
conditionnelle des machines tournantes. La comparaison des
signaux d'une machine fonctionnant en conditions normales et
défectueuses, permet de détecter les défauts comme le
déséquilibre de masse, bande de frottement de rotor, déviation
d'alignement d'axe…
Cependant, beaucoup de techniques disponibles exigent
actuellement de beaucoup d'expertise pour les appliquer avec
succès ; on exige de nouvelles techniques qui permettent aux
opérateurs relativement non qualifiés de prendre des décisions
fiables sans connaître le mécanisme du système et analyser les
données. De nouvelles techniques sont exigées pour surveiller
un système mécanique. Donc, la fiabilité doit être le critère le
plus important de l'opération.
Les réseaux neurones artificiels (RNA) conviennent à ce
genre de problèmes. Ils ont été recherchés et appliqués dans de
vrais systèmes [1] [3].
Les algorithmes génétiques (AG) ont été présentée dans
plusieurs références [3] [5]. Dans la période courte de leurs
développements, les AG ont montré leurs capacités supérieures
et ont été avec succès appliqué dans beaucoup de domaines.
entre le j neurone de la couche cachée et le i neurone de
la couche d'entrée. L'indice supérieur 1 représente le
raccordement (premier) entre les neurones des couches
entrée/cachée. Le vecteur de sortie désirée y = [ y1 y 2 ... y O ]T du
II. LES RESEAUX DE NEURONES ARTIFICIELS (RNA)
réseau est obtenu à partir du vecteur des variables
intermédiaires U par une fonction d'activation f 2 de la couche
Les RNA ont été développés sous forme de modèles
parallèles de réseau distribué basés sur l'apprentissage
biologique du cerveau humain. Il y a de nombreuses
d'entrée X = [x1 x 2 ... x M ] , est transformé à un vecteur
intermédiaire des variables cachées U par utilisation de
T
fonction d'activation
f j : la sortie u j du j ème neurones de la
couche cachée est obtenue comme suit :
⎛M
⎞
u j = f 1 ⎜ ∑w i1, j x i + b 1j ⎟
(1)
⎝ i =1
⎠
1
1
Où b j et wi , j représenter respectivement le biais et le poids
ème
de sortie. Par exemple, la sortie du neurone
exprimé comme suit :
ème
k
peut être
03-04 November 2007
4th International Conference on Computer Integrated Manufacturing CIP’2007
⎛N
⎞
y k = f 2 ⎜ ∑w l2,k u l + b k2 ⎟
⎝ l =1
⎠
(2)
Où l'indice supérieur 2 dénote le raccordement (secondaire)
entre les neurones des couches cachée/sortie. Il y a plusieurs
formes des fonctions d'activation f 1 et, f 2 tels que la fonction
sigmoïde, la tangente hyperbolique et la fonction linéaire,
données par les équations. (3) (4) (5), respectivement:
1
f (v ) =
1 + e −v
itérativement pour réduire au minimum la fonction d'exécution
de MSE entre les sorties de réseau et les valeurs à atteindre
correspondantes.
x1
wi1, j
u1
x2
w l2,k
y1
u2
y2
(3)
bk2
b1j
1 − e −2 v
2
f (v ) =
=
−1
−2v
1+ e
1 + e −2v
(4)
f (v ) = v
(5)
Ces fonctions sont appelées en MATLAB: logsig, tansig et
purelin, respectivement.
L'apprentissage de réseau MLP implique de trouver des
valeurs des poids de raccordement, qui réduisent au minimum
la fonction erreur entre les résultats réels produit (calculés) et
les valeurs à atteindre (désirés) correspondantes dans
l'ensemble de apprentissage. Une des fonctions erreur
largement répandues est l'erreur quadratique moyenne (MSE)
et les algorithmes s'exerçants le plus généralement utilisés sont
basés sur la règle de delta aux réseaux à couches cachées
s'appelle la règle de la rétro propagation (back propagation) du
gradient de l'erreur [3].
Cet algorithme, qui présente l'avantage d'exister, reste
discutable dans la mesure où sa convergence n'est pas prouvée.
Son utilisation peut conduire à des blocages dans un minimum
local de la surface d'erreur. Son efficacité dépend, en effet, d'un
grand nombre de paramètres que doit fixer l'utilisateur : le pas
du gradient, les paramètres des fonctions sigmoïdes des
automates, l'architecture du réseau ; nombre de couches,
nombre de neurones par couche..., l'initialisation des poids...
Le réseau de neurone MLP, utilisé dans ce travail, est
composé de trois couches : entrée, cachée et sortie, comme
représenté sur la fig. 1. La couche d'entrée a eu des neurones
représentants les observations extraites à partir des signaux
mesurés de vibration par l'analyse temporelle et fréquentielle.
Ces observations ont été utilisées à l'entrée de réseau. Le
nombre de neurones O de sortie a été fixé à 5. Les valeurs à
atteindre (étiquettes) peuvent être sous formes binaires qui
représentent les différentes classes (états normal (N) et
défaillantes (f)) de fonctionnement du système. Dans MLP, les
fonctions d'activation tangente hyperbolique (tansig), ‘‘(4)’’ et
linéaire (purelin), ‘‘(5)’’, ont été employés dans la couche
caché et la couche de sortie, respectivement. La gamme des
neurones de la couche cachée et les fonctions d'activation ont
été choisies sur la base des épreuves d'apprentissage. L'RNA a
été créée, formée et mise en application à l'aide de la boîte à
outils de réseau de neurones de Matlab. L'RNA a été formée
uN
xM
yO
Couche d'entrée
Couche cachée
Couche de sortie
Fig. 1. Structure des réseaux de neurones artificiels.
La Fig. 2 montre l'organigramme du procédé proposé. Le
choix des indicateurs des observations d'entrées est optimisé
en utilisant une approche AG.
Machine tournante
Traitement et acquisition de données
Extraction des indicateurs, Formation des
matrices d’apprentissage BA et de test BT
Sans sélection
(1)
Sélection par AG
(2)
Ensemble de test
Apprentissage de MLP
Apprentissage
de MLP
terminé
Récupération du % d’observations
bien classées
Fig. 2. Organigramme de procédure de classification par un couplage
RNA_AG.
03-04 November 2007
4th International Conference on Computer Integrated Manufacturing CIP’2007
III. LES ALGORITHMES GÉNÉTIQUES AG
L’AG utilisé dans cette expérience est un AG simple. Les
expériences sont programmées dans l’environnement MTLAB.
L’AG utilise une dimension de la population de taille Np, et
commence avec une génération aléatoire des chromosomes.
Chaque chromosome est de taille Nb égale au nombre
d’indicateurs utilisés. Un modèle élitiste de la population est
utilisé, c’est à dire le meilleur individu dans la population
antérieure est gardé dans la nouvelle population, et ce qui
empêche la décroissance de la performance du AG avec la
croissance du nombre des générations.
A. Codification des chromosomes
Pour résoudre notre problème de sélection des indicateurs.
Nous avons choisi d’utiliser le codage binaire, où le nombre
de bits dans chaque chromosome (individu) correspond au
nombre d’indicateurs possibles qui peuvent être inclus dans
l’ensemble de départ. Ainsi, une chaîne binaire est composée
par M bits. Si le jième (i=1, …, M) bit a une valeur unitaire, alors
l’indicateur correspondant doit être choisi et participe à la
classification sinon si le jième bit a une valeur 0, alors
l’indicateur correspondant doit être exclu
B. Génération de la population initiale
La population initiale est constituée d’un ensemble
d’individus (chromosomes) générés aléatoirement. Le nombre
d’individus d’une population ou la taille de la population
constitue un paramètre important pour l’AG qu’il faudra
déterminer. La représentation de la population P est :
[
P = P1 P 2 , L Pi L P Np
]
t
Où Pi représente le iième chromosome dans la population et Np
représente le nombre de chromosomes dans la population.
Tous les chromosomes dans notre cas ont été générés
aléatoirement.
C. Calcul de la fonction d’évaluation (fitness).
Nous utiliserons dans ce travail une approche génétique qui
optimise le choix des paramètres par la minimisation d’une
fonction coût. Cette dernière est choisie d’après le critère de la
Trace tiré de l’Analyse Discriminante Linéaire (ADL).
Le critère de la trace que nous avons choisi est une fonction
est donné par :
J= trace ( S w )
(6)
Avec Sw : matrice de variance-covariance intra classe
NC
S W = N1 S w1 + N 2 S w 2 + L + N c S NC = ∑ N i S wi
(7)
i =1
S wi est la matrice de dispersion intra-classes de la classe wi .
Elle est calculée à l’aide de l’équation suivante [7]:
S wi =
1
Ni
N
∑
i
j =1
(x
ij
− m i )( x
Avec
N C : Nombre de classes
ij
− m i )t
(8)
Ni
: Nombre de vecteurs dans la classe
xij
: jième vecteur de la classe
mi
: Centre de gravité de la classe
ωi
ωi ,
ωi
.
m : Centre de gravité de l'ensemble d'apprentissage : c’est le
[
vecteur moyen total m = m1 m2 K m j K m M
partir de l’ensemble des échantillons m j =
N
1
N
]
t
obtenu à
N
∑x
i =1
ij
.
: Nombre de vecteurs de l'ensemble d'apprentissage
D. Critère d’arrêt
Les étapes de l’AG sont répétées durant t cycles, l’arrêt de
l’algorithme est fixé d’après un critère d’arrêt. Dans cet
article, l’algorithme s’arrête lorsqu’il atteint un nombre de 500
générations. Ce nombre est fixé initialement.
E. Sélection des individus pour la reproduction
Pour générer de nouveaux descendants (enfants), dans notre
cas, des parents sont sélectionnés, en fonction de leur fonction
d’évaluation, puis des mécanismes de croisement (crossover) et
la mutation, sont appliquées. Pour sélectionner les meilleurs
chromosomes dans une population, nous avons choisi d’utiliser
la sélection par troncature. Un taux de mortalité de 20 % est
considéré, c'est-à-dire que 80 % des plus forts individus sont
retenus pour la reproduction, alors que, 20 % des faibles
disparaissent sans avoir la possibilité de se reproduire, c’est à
dire subir un croisement et une mutation. Le croisement est mis
en place pour que les nouveaux chromosomes gardent la
meilleure partie des chromosomes anciens. Ceci, peut-être,
dans le but d'obtenir de meilleurs chromosomes. Néanmoins, il
est quand même important qu'une partie de la population
survive à la nouvelle génération car il est fort probable que les
meilleurs chromosomes ne seront pas reproduits dans la
prochaine génération. C’est pour cela que le modèle (stratégie)
élitiste a été également adopté.
IV. SYSTEME ETIDIE
La surveillance automatique sur les éléments des roulements
est nécessaire dans l'industrie, comme la vérification manuelle
d'un certain nombre des roulements dans les machines peut
prendre inadmissiblement pour désirer ardemment temps, et
par conséquent causera une grande perte d'argent. Par
conséquent, il est important de pouvoir détecter l'existence et la
sévérité d'un défaut des roulements dans les machines
tournantes.
Les données de vibration utilisées dans ce papier ont été prises
de
"Bearing
Data
Center",
Ce
site
Web
"www.eecs.cwru.edu\laboratory\bearing\welcome_overview.ht
m ", permet d'accéder à la base de données des essais de
roulements à billes, soit les roulements normaux ou
défectueux.
Comme représenté sur la fig. 3., le banc d'essai se compose
principalement d'un moteur (à gauche), d'un accouplement
03-04 November 2007
4th International Conference on Computer Integrated Manufacturing CIP’2007
(centre), d'un dynamomètre (droit) et des circuits de commande
(non montrés).
Fig. 3. Banc d'essai de roulements
Cinq conditions sont disponibles dans cet ensemble de
données ; L'état normal est représenté par un état nouvel des
roulements. Des autres simples défauts sous forme de points
ont été créés sur les roulements d'essai, en utilisant l'usinage
électro décharge. Dans ce travail nous nous limiterons à l’étude
des défauts créés sur la bague intérieure. Le tableau 1
représente les diamètres des défauts, leurs profondeurs et les
marques de roulement utilisés.
TABLEAU I
CARACTERISTIQUES DES DEFAUTS DE ROULEMENTS
Position du
roulement
Emplacement
du défaut
coté
entraînement
coté
entraînement
coté
entraînement
coté
entraînement
bague
Intérieur
bague
Intérieur
bague
Intérieur
bague
Intérieur
Diamètre
[inches1]
profondeur
[inches]
Marque
du
roulement
0.007
0.011
SKF
0.014
0.011
SKF
0.021
0.011
SKF
0.028
0.050
NTN
Les données ont été enregistrées sur une gamme de 4
vitesses différentes
Les signaux ont été enregistrés à l'aide des accéléromètres,
qui ont été fixés à la cage du moteur par aimant. La fig. 4
représente les signaux vibratoires des différents défauts et pour
l’état normal
V. PREPARATION DES OBSERVATIONS
Pour chaque mode de fonctionnement nous disposons de 4
signaux enregistrés pour quatre vitesses différentes. Nous
avons donc, 20 signaux échantillonnés à 12 KHz.
Pour avoir suffisamment d'individus dans les différents
modes de fonctionnement (sans et avec défaut) et puisque nous
disposons d'enregistrements d'une longueur de Ns=122136
points, chaque signal est décomposé en 2 tranches, la première
pour l’entraînement et la deuxième pour le test du réseau MLP.
Après une analyse préliminaire, nous avons choisi de
calculer des indicateurs temporels et fréquentiels dans les
quatre bandes adjacentes [1-1500 Hz], [1500-3000 Hz],
[3000-4500 Hz] et [4500-6000 Hz].
Dans chaque Bande nous avons choisi de calculer les
indicateurs temporels suivants : la valeur efficace, le facteur de
crête, le skewness, le kurtosis, et les moments d’ordre 5 et 6.
La matrice des données obtenue est composée de
(20 individus \ 24 indicateurs).
Pour extraire les indicateurs fréquentiels, nous avons choisi
de calculer les énergies du spectre dans les quatre bandes de
calculs précitées. La matrice obtenue est, donc, composée de
(20 individus \ 4 indicateurs).
Chaque ligne des matrices d’apprentissage BA, et de test
BT, est normalisée en accord avec la formule suivante :
xi =
xi − m x
σx
(9)
Où mx : la moyenne
σx
: La variance
Donc Les deux ensembles d’indicateurs calculés, forment
une matrice d’apprentissage (BA) de (20individu \ 28
indicateurs), et une matrice de test BT de même taille formé en
utilisant la deuxième tranche de chaque signal
VI.
PERFORMANCE DE LA CLASSIIFCATION
A.. Performance du RNA sans sélection des indicateurs par AG
Le réseau est entraîné en utilisant la matrice de
d’apprentissage BA pour prédire les sorties de la matrice de
test ET avec
deux ensembles d’indicateurs (temporels
fréquentiels) et avec l’ensemble de combinaison. La
performance de classification est donnée par :
per =
ny b
× 100
ny i
(10)
nyb : nombre de sorties bien prédites.
nyi : nombre total de sorties désirées (étiquettes).
Fig. 4. Signaux temporels, différents diamètres du défaut sur la bague
intérieure.
1
Inches ≡ pouces = 25.4 mm.
Le tableau 2 représente les performances de classification
pour les trois ensembles d’indicateurs calculés avant la
sélection par AG.
03-04 November 2007
4th International Conference on Computer Integrated Manufacturing CIP’2007
TABLEAU II
PERFORMANCES DE LA CLASSIFICATION PAR LES RNA SANS SELECTION DES
INDICATEURS
Indicateurs
Performance
apprentissage (%)
Performance
test (%)
temporels
100
90
fréquentiels
100
100
combinés
100
85
Mal
prédit
(en test)
5 ,8
Nbre
d’étirations
7
100
5 ,8, 9
11
Les résultats du tableau.2 montrent que le réseau est entraîné
avec une performance de 100% pour les différents ensembles
d’indicateurs. Nous avons obtenu une performance en test de
90% en utilisant les indicateurs temporels et une meilleure
performance de 100%, avec les indicateurs fréquentiels, tandis
que la combinaison des deux ensembles l’abaisse à 85%. Cela
peut être expliqué par la redondance de quelques indicateurs.
B. Performance du RNA avec sélection des indicateurs par AG
Dans cette étape le réseau est entraîné et testé en utilisant le
vecteur forme optimal obtenu par l’algorithme génétique que
nous avons proposé. Plusieurs essais ont été réalisés afin de
tester la convergence de notre algorithme.
Le tableau 3 représente les performances de classification
après sélection des indicateurs les plus pertinents.
TABLEAU III
PERFORMANCES DE LA CLASSIFICATION PAR LES RNA AVEC SELECTION DES
INDICATEURS
Indicateurs
Indicateurs
selectionnés
Performance
apprentissage
(%)
Performance
test (%)
Nbre
d’étirations
Essai 1
7 13 18 19
100
100
100
Essai 2
7 13 19 24
100
100
100
Essai 3
7 13 19 24
100
100
100
Essai 4
7 13
100
100
87
Les performances du RNA sur la base de test, en utilisant le
vecteur forme optimal (tableau 3), montrent une amélioration
de la performance de la classification pour les différents essais
réalisés. Cette performance atteint 100%. (Toutes les
observations sont correctement affectées aux classes
correspondantes) avec un nombre des indicateurs réduit La
séparation des cinq classes est, donc, réalisée avec un taux
d’erreur nul. On peut aussi constater que pour les différents
essais, le vecteur forme optimal n’est pas le même. Ceci est
tout à fait normal puisque la population initiale est générée
d’une façon aléatoire. Toutefois, certains indicateurs se
répètent ; ce sont 7 13 19 24 qui correspondent respectivement
à la valeur efficace calculée dans les bandes [1500-3000 Hz],
[3000-4500Hz],[4500-6000Hz] et au moment d’ordre 6 calculé
dans la bande [4500-6000Hz]. On peut constater également
que la classification est réalisée avec une performance de
100% en utilisant seulement les indicateurs 7 et 13.
VII. CONCLUSION
L’algorithme de sélection d’indicateurs utilisé ici permet,
donc, de choisir un sous-ensemble optimal d’indicateurs d’un
ensemble de caractéristiques obtenues par l’estimation de deux
types d’indicateurs. Il s’agit d’une représentation
parcimonieuse mais informative de 2 indicateurs sur les 20
initiaux du processus. L’algorithme génétique a permis de
diminuer le nombre d’indicateurs nécessaire à une bonne
classification. L’utilisation des techniques d’optimisation par
AG et de la classification par un réseau de neurone artificiel
MLP à coté du traitement du signal ont pu améliorer la
surveillance des machines en détectant l’évolution d’un défaut
dans le temps. C’est ce que nous avons pu mettre en évidence
lors de l’essai sur 5 classes.
RÉFÉRENCES
[1] L.B. Jack, A.K. Nandi, “Comparison of neural networks and support vector
machines in condition monitoring applications,” Proceedings of 13th
Conference on Condition Monitoring and Diagnostic Engineering
Management (COMADEM), Houston, TX, USA, 2000, pp. 721–730.
[2] L.B. Jack, A.K. Nandi, “Support vector machines for detection and
characterisation of rolling element bearing faults,” Proceedings of
Institution of Mechanical Engineers. Part C: Journal of Mechanical
Engineering Science 215 (2000) 1065–1074.
[3] L.B. Jack, A.K. Nandi, “Genetic algorithms for feature extraction in
machine condition monitoring with vibration signals,” IEE Proceedings
of Vision & Image Signal Processing 147 (2000) 205–212.
[4] L.B. Jack, A.K. Nandi, “Fault detection using support vector machines
and artificial neural networks, augmented by genetic algorithms,”
Mechanical Systems and Signal Processing 16 (2002) 373–390.
[5] B. Samanta, K.R. Al-Balushi, S.A. Al-Araimi, “Use of genetic algorithm
and artificial neural network for gear condition diagnostics,”
Proceedings of COMADEM 2001, University of Manchester, UK, 2001,
pp. 449–456.
[6] N. Benahmed, Optimisation de réseaux de neurones pour la
reconnaissance de chiffres manuscrits isolés : sélection et pondération
des primitives par algorithmes génétiques, Thèse de doctorat, Université
de Québec, 2002
[7] R. Casimir., Diagnostic des défauts des machines asynchrones par
reconnaissance des formes, Thèse de doctorat, Ecole Centrale de Lyon,
2003.
Téléchargement