master ingénierie des systèmes industriels et des projets

37
MASTER Ingénierie des Systèmes Industriels et des Projets SPECIALITE : SYSTEMES DYNAMIQUES ET SIGNAUX Année 2008 / 2009 Thèse de Master SDS Présentée et soutenue par : Lei XU le 02 juillet 2009 Au sein de l'Institut des Sciences et Techniques de l'Ingénieurs d'Angers TITRE APPORTS D’UN RESEAU BAYESIEN CAUSAL POUR LE DIAGNOSTIC PAR CLASSIFICATION SUPERVISEE JURY Président : Laurent Hardouin Professeur des Université à l’ISTIA Examinateurs : Fabrice Guérin Professeur des Université à l’ISTIA Philippe Declerck Maître de Conférences à l’ISTIA Sylvain Cloupet Maître de Conférences à l’ISTIA Directeur(s) de thèse : Sylvain Verron Maître de Conférences à l’ISTIA Laboratoire : LASQUO LASQUO/ISTIA 62, av. Notre Dame du Lac 49000 Angers

Upload: others

Post on 22-Nov-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

MASTER Ingénierie des Systèmes Industriels et des Projets

SPECIALITE : SYSTEMES DYNAMIQUES ET SIGNAUX

Année 2008 / 2009

Thèse de Master SDS

Présentée et soutenue par :

Lei XU

le 02 juillet 2009

Au sein de l'Institut des Sciences et Techniques de l'Ingénieurs d'Angers

TITRE

APPORTS D’UN RESEAU BAYESIEN CAUSAL POUR LE DIAGNOSTIC PAR

CLASSIFICATION SUPERVISEE

JURY

Président : Laurent Hardouin Professeur des Université à l’ISTIA

Examinateurs : Fabrice Guérin Professeur des Université à l’ISTIA

Philippe Declerck Maître de Conférences à l’ISTIA

Sylvain Cloupet Maître de Conférences à l’ISTIA

Directeur(s) de thèse : Sylvain Verron Maître de Conférences à l’ISTIA

Laboratoire : LASQUO

LASQUO/ISTIA 62, av. Notre Dame du Lac 49000 Angers

Remerciements

Je tiens à remercier Monsieur Sylvain VERRON d’avoir suivi ce projet de Master 2. Son

aide, j’ai permis de mener à bien ce travail. Je souhaite également la remercier pour

sa disponibilité tout au long des semaines de projet.

1

TABLE DES MATIERES

1 Introduction ............................................................................................................... 2

2 Méthode de diagnostic par classification supervisée................................................... 4

2.1 Diagnostic par classification supervisée ....................................................4

2.2 L’Analyse discriminante ..............................................................................5

2.2.1 L’analyse discriminante quadratique..............................................6

2.2.2 L’analyse discriminante linéaire. ....................................................6

2.3 Méthode des SVM (Support Vector Machines) .........................................7

2.4 Méthode des k plus proches voisins (KNN) ...............................................7

2.5 Méthode des arbres de décision................................................................8

2.6 Méthode des réseaux de neurones ...........................................................9

3 Réseaux bayésiens ................................................................................................... 11

3.1 Présentation des réseaux bayésiens ........................................................11

3.2 Un exemple de réseaux bayésiens...........................................................11

3.3 Réseaux bayésiens conditionnel Gaussien...............................................12

3.4 Proposition de Méthode MYT et Li et al. .................................................12

3.5 Méthode MYT par réseaux bayésiens......................................................15

4 Application des méthodes proposées ....................................................................... 17

4.1 Proposition...............................................................................................17

4.2 Évaluation.................................................................................................17

4.2.1 Présentation du TEP.....................................................................18

4.2.2 Surveillance du TEP par réseaux bayésiens .................................23

4.3 Analyse.....................................................................................................30

5 Conclusion générale ................................................................................................. 32

6 Références : ............................................................................................................. 33

2

1 Introduction

Après un long temps de fonctionnement, il y a certains changements dans la

production de tout système, ce qui influence inévitablement la qualité des produits.

Outre une conception stricte et fiable, la mise en place d'un système de supervision

de processus peut assurer et améliorer la qualité des produits. La surveillance des

procédés est une méthode de modélisation utilisant les dernières données du

processus. En entreprise, avec les progrès de l'automatisation et l'augmentation de

la capacité de la mémoire de l'ordinateur dans le travail, la collecte et le stockage de

données de production permet la surveillance des procédés.

Définition d’un procédé (Selon Montgomery [1]):

X0 : l’entrée du procédé (ex : matières premières, composants)

Xi : les facteurs contrôlables (ex : matière, opérateur)

Zj : les facteurs non-contrôlables (ex : température)

Y : le produit fini (ex : les caractéristiques qualité du produit fini)

La sortie Y est un ensemble de caractéristiques qualité :

Y = (y1, y2,..., yp) (ex : longueur, température, etc.).On suppose que yi suit une loi

normale N (μi, σi2) et que Y suit une loi normale multivariée N (μY, ΣY).

=

p

Y

µ

µµ

µ...

2

1

=

221

22221

11221

2

...

............

...

...

ppp

p

p

Y

σσσ

σσσσσσ

σ

Procédé X0 Y

X1, X2,…, Xn

Z1, Z2,…, Zm

3

Si le procédé est parfait (aucun facteur non-contrôlable), on peux avoir la

distribution pour Y est toujours μY. Mais en pratique, le procédé n’est jamais parfait

à cause des Xi et Zj.

Ici, la sortie d’un procédé suit, en général, une loi normale de moyenne μY et

d’écart-type σY. Dans notre cas, le procédé n’est soumis qu’à des causes aléatoires,

avec une durée plus longue, on trouve la situation comme la figure, l’évolution d’un

procédé stable. Les limites supérieures et inférieures de tolérance sont notées LST et

LIT.

On a plusieurs méthodes pour étudier les données d’un procédé, la plus ancienne est

la carte de contrôle. Par exemple, la carte de contrôle X proposée par Shewart [2],

les cartes R et S, les cartes EWMA (Exponentially Weighted Moving Average) [3] et

CUSUM (CU mulated SUM) [4], mais ces cartes ne peuvent suivre qu’un variable à la

fois. Si on doit prendre en compte plusieurs variables en même temps, on peut

utiliser les cartes de contrôle multivariées, la carte du T2 de Hotelling [5], même

MEWMA (Multivariate EWMA) [6] et MCUSUM (M ultivariate CUSUM) [4]. On peut

également utiliser l’analyse en composantes principales (ACP)[7, 8] pour étudier les

données d’un procédé.

4

2 Méthode de diagnostic par classification supervisée

On trouve différentes méthodes de classification utilisables pour le diagnostic des

systèmes (classification supervisée à k classes) [9, 10], et il n'existe pas de classifieur

meilleur sur toutes les applications. Donc, nous rappelons tout d'abord le principe de

classification supervisée, et puis nous présentons les différentes méthodes de

classification.

2.1 Diagnostic par classification supervisée

En pratique, sur une production (avec une durée suffisante), on peut obtenir des

données pour différentes classes de fautes. On note ces fautes : F= {F1, F2,…, Fm}, et

chaque faute suit une loi normale: Fi~N (μFi, ΣFi2).

Lorsqu’une nouvelle faute est détectée, noté Y0, on cherche à savoir à quelle région

de faute elle appartient (diagnostic). Pour cela, il faut reconnaître les classes de faute,

on peut les analyser en trois étapes : l’extraction de composantes, l’analyse

discriminante, et la sélection. On étudie chaque probabilité de P (Fi|Y0), et trouve le

plus grande P(F*|Y0), après, on peut dire que Y0 et une faute de F*.

Pour le diagnostic, nous nous intéressons aux différentes classes de fautes. Par

exemple, trois fautes.

L'attribution d'une classe à une nouvelle observation est l'un des buts de la

reconnaissance de forme (classification). Le système type de reconnaissance de

forme se décompose en trois parties : l'extraction de composantes, l'analyse

discriminante (ou calcul des coûts Ki) et la sélection [11].

5

On peut voir le schéma de principe de la reconnaissance de forme :

2.2 L’Analyse discriminante

Se basant sur la règle de Bayes, l’analyse discriminante affecte à un nouvel individu x

la classe Ci qui maximise la probabilité a posteriori P (Ci| x).

( ){ }xCPisiCx iki

i,...,1maxarg

==∈

Par la règle de Bayes : )(

)|()()|(

xP

CxPCPxCP ii

i = , on peut le récrire sous la

forme :

( ) ( ){ }iiki

i CxPCPisiCx,...,1maxarg

==∈

Par la fonction de coût K, on peut trouve que :

{ })(maxarg,...,1

xKisiCx iki

i=

=∈

Avec ))|()((log(2)( iii CxPCPxK −=

6

2.2.1 L’analyse discriminante quadratique

En utilisant la loi normale multivariée, l’équation de coût peut s’écrire :

)2log(|)log(|))(log(2)()()( 1 πµµ pCPxxxK iiiiT

ii +Σ+−−Σ−= −

Si on fait l’hypothèse que tous les variables sont indépendantes, alors, Σi est

diagonale, comme diag (Σi )=(σ12, σ22, … ,σp2), on peut trouver la fonction de coût K

suivante :

)2log()log(2))(log(2||||

)(2

2

πσσ

µppCP

xxK ii

i

ii ++−−=

Le problème de l'analyse discriminante quadratique est qu'elle a besoin d’estimer

beaucoup de paramètres, donc, il faut beaucoup de données. Les problèmes

d'estimation venant principalement des différentes matrices de variance-covariance,

une solution consiste en l'analyse discriminante linéaire.

2.2.2 L’analyse discriminante linéaire.

On fait l’hypothèse que pour toute classe Ci, Σi=Σ, (n=n1+n2+...+nk)

kn

nnn kk

−Σ−++Σ−+Σ−=Σ )1(...)1()1( 2211

On obtient la fonction coût:

CsteCPxxxK iiT

ii +−−Σ−= − ))(log(2)()()( 1 µµ

Cette fonction coût réalise des séparations linéaires (hyperplans) entre les classes.

Bien que l’on puisse faire l’hypothèse que Σ est diagonale, quelque problèmes

subsistent pour l’analyse discriminante, notamment:

- les estimations de matrices de variance-covariance deviennent très variables,

- certains paramètres peuvent ne pas être identifiables,

- certains matrices de variance-covariance deviennent non-inversibles.

7

2.3 Méthode des SVM (Support Vector Machines)

Les SVM sont des outils modernes pour la classification et la régression de données

[12]. Ils sont des classifieurs binaires,et ici, on étudie leur application à la

classification supervisée. Le but d’un SVM est de trouver un classifieur séparant les

données de différentes fautes, et maximisant la distance entre chaque classe. Ce

classifieur est appelé hyperplan. Par exemple pour deux classes :

2.4 Méthode des k plus proches voisins (KNN)

La méthode des k plus proches voisins (k Nearest Neighborhood) est une méthode

de discrimination non-paramétrique [13]. Pour une nouvelle observation à classer,

cette méthode calcule la distance de cette nouvelle observation à chaque

observation présente. On choisit les k voisins ayant la distance la plus faible (plus

proche). En générale, on attribue à la nouvelle observation la même que celle la plus

représentée parmi ses k plus proches voisins.

Un de problèmes principal de la classification par les k plus proches voisins est que

pour chaque nouvel individu à classer, on doit calculer les distances de ce nouvel

individu à chaque individu présent dans la base d’apprentissage, donc, cela prend

beaucoup de mémoire de stockage.

8

2.5 Méthode des arbres de décision

Un arbre de décision se représente sous les traits d’une arborescence[14].

Il existe beaucoup d’algorithmes pour construire un arbre de décision (par

exemple :CART (Classification And Regression Tree), ID3 et C4.5), l’idée globale est la

suivante :

Procédure : construire-arbre(X)

Si tous les points de X appartiennent à la même classe alors

Créer une feuille portant le nom de cette classe

Sinon

Choisir le meilleur attribut a pour créer un noeud

Le test associé à ce nœud sépare X en deux parties : Xg et Xd

Construire-arbre (Xg)

Construire-arbre (Xd)

FinSi

9

En observant la procédure de construction d'un arbre, on constate qu'une étape

pose problème : choisir le meilleur attribut pour créer un nœud. En effet, le but des

algorithmes d'arbre de décision est de trouver l'ordre adéquat des décisions à

prendre. En d'autres mots, quels attributs doivent être placés dans les premières

décisions et quels autres doivent être placés vers le bout de l'arbre (les feuilles). Le

but est donc de choisir en premier lieu l'attribut séparant au mieux les données dans

l'espace entier d'apprentissage. Ceci équivaut à chercher l'attribut dont

l'homogénéité est la plus faible. Afin de résoudre ce problème, les algorithmes cités

(CART, ID3 et C4.5) se basent sur la notion d'entropie H [15].

Soient les données suivantes : n exemples, réparties en k classes Ck comportant

chacune nj, p attributs binaires notés ai. Pour un attribut binaire a donné (a = vrai ou

a = faux), chaque sous-ensemble nj est divisé en deux parties contenant

respectivement vj (a = vrai) et fj ( a = faux),

∑=

=k

jjnn

1 , ∑

=

=k

jjvv

1 , ∑

=

=k

jjff

1 , nfv =+

L’entropie de l’attribut a est calculée par :

∑∑==

+=k

j

jjk

j

jj

f

f

f

f

n

f

v

v

v

v

n

vaCH

11

)log()log()|(

Donc, on trouve ai qui minimise l’entropie,

))|(min(arg iaCHi =

2.6 Méthode des réseaux de neurones

Les réseaux de neurones constituent une technique non-linéaire prédiction de

données [16].

10

On peut observer qu’un neurone reçoit une information de la part de plusieurs

entrées, avec ses poids propres ωj. On note s la somme de toutes xjωj :

∑=

=n

jjjxs

1

ω

La somme s est transmise à une fonction de transfert nommée fonction d’activation h,

donnant alors la sortie général y du neurone.

)(1∑

=

=n

jjjxhy ω

Les différentes fonctions d’activation h

La mise en relation de plusieurs neurones nous donne un réseau de neurones.

On note la première couche « couche d’entrée » et la dernière couche « couche de

sortie », et il y a une ou plusieurs couches de neurones entre ces deux couches,

notées couche cachées. Il n’y a aucune liaison entre les neurones d’une même

couche.

11

3 Réseaux bayésiens

3.1 Présentation des réseaux bayésiens

Un réseaux bayésien est modèle graphique probabilisé [17]. Il est défini par :

-Un graphe acyclique orienté G, G= (V, E), V est l’ensemble des nœud de G, E

est l’ensemble des arcs de G,

-Un espace probabilité(Ω,Z,P), Ω est un ensemble fini non-vide, Z est ensemble de

sous-espace, P une mesure de probabilité sur Z, P(Z)=1,

-un ensemble de variable aléatoire associées aux nœud du graphe G, telle que :

∏=

=n

iiin VCVPVVVP

121 ))(|(),...,,(

C(Vi) est l’ensemble des causes de Vi dans le graphe G.

Chaque variable est un nœud du graphe et prend ses valeurs dans un ensemble

discret ou continu. Le graphe est toujours dirigé et acyclique. Les arcs dirigés

représentent un lien de dépendance directe (la plupart du temps il s'agit de

causalité). Ainsi un arc allant de la variable X à la variable Y exprimera que Y

dépende directement de X. Les paramètres expriment les poids donnes à ces

relations et sont les probabilités conditionnelles des variables sachant leurs parents

(exemple : P(Y|X)) . Il est possible de réaliser des classifieurs grâce aux réseaux

bayésiens.

3.2 Un exemple de réseau bayésien

( http://bnt.insa-rouen.fr/tutoriels/tutoriel1.html ):

12

3.3 Réseaux bayésiens conditionnel Gaussien

Un réseau bayésien permet de modéliser plusieurs types de nœuds. Dans le cadre

des procèdes, nous sommes principalement en présence de deux types de nœuds :

un nœud représentant une variable discrète que l'on nomme nœud discret et un

nœud représentant une variable continue que l'on nomme nœud continu. Les

réseaux bayésiens traitent de modèles paramétriques. Or, dans le cas discret, un

nœud multinomial permet de modéliser toutes fonctions de densité de probabilité

d'une variable discrète. En effet, une variable binaire (par exemple Vrai-Faux) peut se

représenter grâce à un nœud discret (donc multinomial) de dimension 2 (possédant

2 modalités différentes). Pour les nœuds continus, il est logiquement possible de

pouvoir représenter n'importe quelles fonctions de densité de probabilité d'une

variable continue. Mais, à l'heure actuelle, les moteurs d'inférence ne savent traiter

qu'une seule fonction de densité de probabilité : celle de la loi normale multivariée

de dimension p. Cependant, toute fonction de densité de probabilité d'une variable

continue peut être approchée comme un mélange de plusieurs lois gaussiennes :

∑=

=p

iii CxPaxP

1

)|()( avec 10 << ia ,

11

=∑=

p

iia

3.4 Proposition de Méthode MYT et Li et al.

La méthode MYT a été mise au point par Mason, Young, et Tracy [18], et utilise la

statistique T2 [5] dans un nombre limité de composantes orthogonales qui sont

également des distances statistiques.

21,...,3,2,1

23,2,14

22,13

212

21

2 ... −•••• +++++= ppTTTTTT

Où 2

,. kjiT représente la statistique T2 de Xj, Xk sur Xi.

On fait l’hypothèse que le procédé peut être modélisé sous la forme d’un réseau

bayésien causal (chaque variable du procédé est une variable gaussienne univariée).

Si un réseau bayésien représente uniquement des variables continues normales, il

est appelé modèle linéaire gaussien.

Dans le cadre de la modélisation du procédé par un modèle linéaire gaussien, pour

une décomposition du T2 donnée, s’il existe un terme 2

1,...,1 −• iiT tel que l’ensemble de

variable {X1, … , Xi-1} contient au moins un descendant de Xi, cette décomposition est

de type A, dans le cas contraire, la décomposition est de type B.

13

On voit un exemple de 3 variables, X1, X2, X3 :

Les décompositions possibles sont les suivantes :

Li et al. [19] Prouvent que les décompositions de type A permettent un diagnostic

moins précis que les décompositions de type B. De plus, dans le contexte du modèle

linéaire gaussien, toutes les décompositions de type B convergent vers une unique

décomposition que les auteurs nomment "causation-based T2 décomposition", noté

décomposition causale du T2. Donc, chaque décomposition de type B (dans le cas

d'un modèle linéaire gaussien causal) converge vers la décomposition causale du T2

décrite dans l'équation ∑

=•=

p

iXPAi i

TT1

2)(

2

, où PA(X i) représentent les parents de la

variable X i sur le graphe causal. Ainsi, la décomposition causale du T2 de l'exemple

de { X1, X2, X3} est la suivante : 213

212

21

2•• ++= TTTT .

Suite à ces différentes démonstrations, les auteurs énoncent la procédure de

détection et de diagnostic utilisant la nouvelle décomposition causale. D’abord, pour

représenter les relations causales entre les différentes variables du procédé, on

construit un réseau bayésien linéaire gaussien, suite à cela, le procédé est surveillé

par une carte de contrôle du T2. Lors de la détection d'une situation hors-contrôle, le

T2 est décomposé par la décomposition causale de l’équation précédente. Dans

cette équation, chaque 2

)( iXPAiT • est indépendant et suit une distribution du 2χ

à

un degré de liberté. On compare chaque 2

)( iXPAiT • à la limite 2,1αχ

représentant le

quantile à la valeur α (taux de fausses alertes) de la distribution du 2χ à un degré

de liberté. Un 2

)( iXPAiT • significatif (dépassant la limite de contrôle) implique que la

variable X i a probablement subi un saut de moyenne. La figure représente le

diagramme de surveillance du procédé par la méthode énoncée ci-dessus.

14

Pour démontrer la performance de cette approche, les auteurs utilisent un procède

à 5 variables comme exemple, représenté par le réseau bayésien causal (modèle

linéaire gaussien) de la figure suivante, où la variable X5 représente une

caractéristique qualité, et les 4 autres sont des variables du procédé.

Dans ce contexte (5 variables), il existe 31 situations potentielles de fautes : 5 fautes

potentielles uniques (1 seule variable incriminée) et 26 fautes potentielles multiples

(plusieurs variables incriminées). Chaque faute est représentée comme un saut de

moyenne de 3 écart-types sur chaque variable incriminée. Une fois la situation

hors-contrôle détectée, elle est diagnostiquée. Si le diagnostic correspond

exactement au scénario simulé, le diagnostic est considéré comme correct, sinon il

est considéré comme erroné.

L'approche développe par Li et al. est la seule approche permettant la prise en

compte de variables continues. De plus, cette approche exploite des seuils donnes

par des quantiles de lois statistiques. Donc, elle permet d'améliorer

considérablement les performances de diagnostic par rapport à la méthode MYT,

tout en demandant moins de calcul que celle-ci. Cependant, quelques points

seraient à éclaircir. L'approche proposée possède exactement la même idée

sous-jacente à l'approche MYT, à savoir la régression des variables du procédé. La

différence ici est que l'on apporte une information supplémentaire : les relations

causales entre les différentes variables du procédé. Les auteurs se servent du réseau

bayésien causal. De plus, cette méthode permet juste l'identification des variables

responsables d'une situation hors-contrôle, mais elle n'effectue pas la détection par

réseau bayésien.

15

3.5 Méthode MYT par réseaux bayésiens

La méthode de Li et al. [19] calcule les différents 2

)( iXPAiT • et les décisions associées à

chacun d’entre eux.

On note SC pour sous-contrôle, et HC pour hors-contrôle, on peut obtient la carte

2)( iXPAiT • par réseau bayésien [20] :

Dans le cas d’une nouvelle faute donnée, il est important d’identifier dans le procédé

les variables responsables.

Par exemple, Y=(y1, y2), F=(F1, F2), chaque faute ont n observations.

16

Ici, quand il y a une nouvelle faute y*, et y* se trouve dans l’espace noir, on ne sais

pas si elle est une faute F1, ou F2. Pour cela, il faut séparer les espaces de F1 et F2,

c’est-à-dire que l’on doit amoindrir l’erreur de classification. Donc, on utilise la

méthode MYT par réseau bayésien et on calcule la probabilité de chaque PA(Xi), pour

chaque faute, on obtient ainsi de nouvelles variables permettant peut-être de mieux

séparer les classes.

17

4 Application des méthodes proposées

L'application du réseau présenté demande (comme toute autre méthode de

détection ou de diagnostic basée sur les données) une base de données regroupant

des observations de période de fonctionnement normal ainsi que des observations

des différentes fautes déjà connues.

4.1 Proposition

Comme on possède des données normales (déjà connues), on construit le réseau

bayésien. Par les différentes donnée fautes déjà connues, en les appliquant sur le

réseau bayésien causal, on peut obtenir des probabilités pour chaque faute, après,

on cherche les résultats par les différentes méthodes proposées. Pour chaque

méthode, il y a deux résultats : avec-probabilité, et sans-probabilité. On peut

résumer la proposition par la figure suivante.

4.2 Évaluation

Afin de valider les méthodes sur un exemple réel, nous l'appliquons sur un procédé

chimique complexe : le Tennessee Eastman Process (TEP) [21]. Ce procède complexe

implique 53 variables et 20 types de fautes. Ici, nous étudions les performances du

réseau en diagnostic supervisé.

Données Normales Données fautes

Données fautes avec des probabilités

Diagnostic par classifieur

Réseau Bayésien causal

Diagnostic par classifieur

Comparer

Construire le Réseau Bayésien

Calculer les probabilités

18

4.2.1 Présentation du TEP

Le Tennessee Eastman Process (TEP) est un procédé chimique développé par la

société Eastman Chemical Company afin de fournir une simulation d’un procédé

industriel réel. Il a été utilisé par la communauté de la surveillance des procédés.

Le schéma du Tennessee Eastman Process :

19

Ce procédé comporte 53 variables : 12 variables d’asservissement et 41 variables

mesurables. Parmi les 41 variables mesurables, 22 sont des variables mesurables en

continu (ce sont les valeurs des capteurs du procédé), les autres sont des mesures de

compositions telles que des concentrations, et ne sont pas disponibles en continu

mais échantillonnées.

Les variables de mesure en continu :

Les variables de mesure échantillonnées :

20

Les variables de contrôle du TEP (variables d’asservissement)

Pour comparer les méthodes de surveillance des procédés, on peut classifier le TEP

par 20 fautes différentes.

Il est possible de décrire le comportement des variables 9 (température du réacteur)

et 51 (débit du refroidissement liquide au réacteur) en réponse à l’introduction de la

fautes F4 (augmentation de la température d’entrée du liquide de refroidissement

du réacteur).

21

On observe que la température du réacteur augmente jusqu’à 120.6°C. Et elle

oscillait normalement autour de 120.4°C. En effet, puisque la température du liquide

de refroidissement est plus élevée, l’échange de chaleur entre le liquide et le

réacteur est plus faible, engendrant une augmentation de la température dans

celui-ci. Au vu de cette augmentation de température dans le réacteur,

l’asservissement du TEP accroît alors le débit du refroidissement liquide d’environ 41

m3/hr à environ 45 m3/hr (sur la variable 51). Car le débit augmente, la quantité de

chaleur évacuée du réacteur redevient normale, et la température du réacteur

retourne à son niveau normal de fonctionnement (aux alentour de 120.4°C).

Les figures suivantes donnent la comparaison des différentes variables pour le cas

des différentes fautes.

22

23

4.2.2 Surveillance du TEP par réseaux bayésiens

On utilise les données en ligne à l’adresse suivante http://brahms.scs.uiuc.edu . Elles

se présentent ainsi : 480 observation d’apprentissage pour chaque type de faute, et

800 observation de test pour chaque type de faute. Les données d’apprentissage ont

été obtenues par simulation de chacune des fautes sur une période de 24 heures, et

les données de test ont été obtenues sur une durée de 40 heures. La période d’

échantillonnage de toutes les variables a été fixée à 3 minutes. Il faut préciser que

les 53 variables n’ont pas été prises en compte puisque la variable XC(12), la vitesse

de l’agitateur, reste constante dans n’importe quelle situation.

Les données utilisées :

Pour tester les performances en diagnostic supervisé de la méthode proposée, on

prend en compte toutes les fautes, sans sélection de composantes et on suppose

que chaque observation est détectée.

On peut voir la matrice d’occurrence, pour chaque colonne testée, la trace de cette

matrice donne le nombre de bonnes classifications, il nous présente que certaine

fautes sont très bien reconnues par le classifieur (F1, F2, F5, F6, F7, F8, F12, F14 et

F19), avec un taux supérieur à 95%, F3, F9, F15 sont très mal reconnues, avec un

taux inférieur à 25%, les 8 autre fautes restantes sont moyennement reconnues

avec les taux entre 75% et 90%.

24

25

En utilisant les différentes méthodes proposées, on trouve les solutions suivantes :

Premier cas : (20 fautes avec 52 variable sur chaque faute)

Erreur F1, …, F20

sans probabilité Avec probabilité

Analyse discriminante linéaire 52.5500 32.4063

Analyse discriminante quadratique

(sauf F6, car il y a quelque faute sur les

variables de F6)

21.3355 32.6645

Analyse discriminante diaglinéaire 62.2437 34.4688

Analyse discriminante diagquadratique

(sauf F6, car il y a quelque faute sur les

variables de F6)

46.1579 42.5066

KNN Sortie du memoire

SVM rbf

(paramétrer =7) 45.9438 30.6312

SVM polynomial

(paramétrer =3) 54.0938 39.2437

SVM mlp

(paramétrer =[-1,1]) 77.6000 65.0062

Arbre de décision classification

(paramétrer =1) 49.9500 39.9500

Arbre de décision classification

(paramétrer =16) 49.7500 39.8875

Arbre de décision classification

(paramétrer =25) 49.7625 39.8937

Réseaux de neurones

(paramétrer =1) 55.2063 32.9812

Réseaux de neurones

(paramétrer =3) 48.3313 33.8625

Réseaux de neurones

(paramétrer =8) 41.5 33.3438

26

Deuxième cas : ({F4, F9, F11} avec 52 variables)

sans proba avec proba F4, F9, F11

Erreur mat_confusion Erreur mat_confusion

F4 F9 F11 F4 F9 F11

F4 771 7 254 F4 761 0 192

F9 10 351 277 F9 0 788 201

Analyse

discriminante linear 42.041

F11 19 442 269

18.5

F11 39 12 407

F4 F9 F11 F4 F9 F11

F4 659 0 28 F4 462 0 50

F9 0 583 66 F9 0 444 79

Analyse

discriminante

quadratic

18.833

F11 141 217 706

34.291

F11 338 356 671

F4 F9 F11 F4 F9 F11

F4 677 0 222 F4 740 0 185

F9 42 412 265 F9 0 783 184

Analyse

discriminante

diaglinear

41.583

F11 81 388 313

18.583

F11 60 17 431

F4 F9 F11 F4 F9 F11

F4 621 0 41 F4 525 0 69

F9 0 626 106 F9 0 503 78

Analyse

discriminante

diagquadratic

20.833

F11 179 174 653

29.958

F11 275 297 653

F4 F9 F11 F4 F9 F11

F4 338 252 251 F4 344 246 249

F9 233 276 296 F9 228 282 293 KNN avec 1 voisins 63.875

F11 229 272 253

63.166

F11 228 272 258

F4 F9 F11 F4 F9 F11

F4 338 252 251 F4 344 246 249

F9 233 276 296 F9 228 282 293 KNN avec 2 voisins 63.875

F11 229 272 253

63.166

F11 228 272 258

F4 F9 F11 F4 F9 F11

F4 344 248 253 F4 350 248 255

F9 242 287 294 F9 238 289 292 KNN avec 3 voisins 63.166

F11 214 265 253

62.833

F11 212 263 253

F4 F9 F11 F4 F9 F11

F4 357 272 273 F4 361 263 273

F9 234 275 290 F9 228 280 290 KNN avec 5 voisins 63.791

F11 209 253 237

63.416

F11 211 257 237

F4 F9 F11 F4 F9 F11

F4 396 299 282 D4 402 293 285

F9 231 250 291 F9 223 256 289 KNN avec 10 voisins 63.625

F11 173 251 227

63.166

F11 175 251 226

F4 F9 F11 F4 F9 F11 SVM rbf

(paramétrer =5)

38.875

F4 724 53 187

33.291

F4 509 2 104

27

F9 3 362 232 F9 2 515 119

F11 73 385 381

F11 289 283 577

F4 F9 F11 F4 F9 F11

F4 794 168 284 F4 715 0 193

F9 0 352 253 F9 0 761 208

SVM rbf

(paramétrer =30) 41.291

F11 6 280 263

21.875

F11 85 39 399

F4 F9 F11 F4 F9 F11

F4 726 104 273 F4 692 7 263

F9 3 450 279 F9 0 709 185

SVM polynomial

(paramétrer =3) 40.666

F11 71 246 248

26.958

F11 108 84 352

F4 F9 F11 F4 F9 F11

F4 442 133 191 F4 557 62 223

F9 149 295 232 F9 2 532 190

SVM mlp

(paramétrer =[-1,1]) 53.583

F11 209 372 377

38.500

F11 241 206 387

F4 F9 F11 F4 F9 F11

F4 655 0 49 F4 666 0 40

F9 11 536 119 F9 28 556 103

Arbre de décision

classification

(paramétrer =1)

24.041

F11 134 264 632

21.708

F11 106 244 657

F4 F9 F11 F4 F9 F11

F4 642 0 49 F4 718 0 34

F9 35 711 98 F9 0 783 92

Arbre de décision

classification

(paramétrer =16)

16.416

F11 123 89 653

9.3750

F11 82 17 674

F4 F9 F11 F4 F9 F11

F4 708 0 234 F4 576 0 166

F9 0 325 358 F9 0 689 156

Réseaux de neurones

(paramétrer =1) 48.291

F11 92 475 208

27.375

F11 224 111 478

F4 F9 F11 F4 F9 F11

F4 637 70 262 F4 551 3 267

F9 0 315 151 F9 0 636 161

Réseaux de neurones

(paramétrer =3) 44.208

F11 163 415 387

35.041

F11 249 161 372

F4 F9 F11 F4 F9 F11

F4 746 127 222 F4 572 2 219

F9 0 300 237 F9 0 626 99

Réseaux de neurones

(paramétrer =8) 42.208

F11 54 373 341

30

F11 228 172 482

28

Troisième cas: ({F4, F9, F11} avec 2 variables (X9 et X51) pour chaque faute)

sans proba avec proba F4, F9, F11

Erreur mat_confusion Erreur mat_confusion

F4 F9 F11 F4 F9 F11

F4 799 0 257 F4 797 0 196

F9 1 480 180 F9 0 799 162

Analyse

discriminante linear 31.583

F11 0 320 363

15.083

F11 3 1 442

F4 F9 F11 F4 F9 F11

F4 796 0 37 F4 788 0 84

F9 0 775 75 F9 0 776 71

Analyse

discriminante

quadratic

5.8750

F11 4 25 688

7.9583

F11 12 24 645

F4 F9 F11 F4 F9 F11

F4 800 0 276 F4 797 0 220

F9 0 462 144 F9 0 799 130

Analyse

discriminante

diaglinear

31.583

F11 0 338 380

14.750

F11 3 1 450

F4 F9 F11 F4 F9 F11

F4 784 0 44 F4 786 0 102

F9 0 759 86 F9 0 775 71

Analyse

discriminante

diagquadratic

7.7917

F11 16 41 670

8.8333

F11 14 25 627

F4 F9 F11 F4 F9 F11

F4 749 0 70 F4 741 0 57

F9 0 742 130 F9 0 754 92 KNN avec 1 voisins 12.875

F11 51 58 600

10.583

F11 59 46 651

F4 F9 F11 F4 F9 F11

F4 749 0 70 F4 741 0 57

F9 0 742 130 F9 0 754 92 KNN avec 2 voisins 12.875

F11 51 58 600

10.583

F11 59 46 651

F4 F9 F11 F4 F9 F11

F4 780 0 73 F4 774 0 71

F9 0 778 158 F9 0 786 94 KNN avec 3 voisins 11.375

F11 20 22 569

8.5417

F11 26 14 635

F4 F9 F11 F4 F9 F11

F4 779 0 75 F4 777 0 73

F9 0 779 179 F9 0 786 96 KNN avec 5 voisins 12.333

F11 21 21 546

8.5833

F11 23 14 631

F4 F9 F11 F4 F9 F11

F4 773 0 84 D4 782 0 72

F9 0 773 185 F9 0 796 102 KNN avec 10 voisins 13.458

F11 27 27 531

8.1667

F11 18 4 626

F4 F9 F11 F4 F9 F11 SVM rbf

(paramétrer =5)

21.541

F4 799 0 205

11.583

F4 796 0 162

29

F9 0 800 311 F9 0 798 110

F11 1 0 284

F11 4 2 528

F4 F9 F11 F4 F9 F11

F4 800 0 269 F4 800 0 299

F9 0 800 402 F9 0 800 212

SVM rbf

(paramétrer =30) 27.958

F11 0 0 129

21.291

F11 0 0 289

F4 F9 F11 F4 F9 F11

F4 799 0 63 F4 792 0 56

F9 0 791 99 F9 0 797 108

SVM polynomial

(paramétrer =3) 7.1667

F11 1 9 638

7.2917

F11 8 3 636

F4 F9 F11 F4 F9 F11

F4 634 151 169 F4 652 0 167

F9 1 556 213 F9 0 732 94

SVM mlp

(paramétrer =[-1,1]) 33

F11 165 93 418

19.875

F11 148 68 539

F4 F9 F11 F4 F9 F11

F4 664 0 19 F4 734 0 29

F9 111 749 148 F9 35 754 105

Arbre de décision

classification

(paramétrer =1)

14.750

F11 25 51 633

10.250

F11 31 46 666

F4 F9 F11 F4 F9 F11

F4 672 0 20 F4 757 0 25

F9 103 769 141 F9 15 776 78

Arbre de décision

classification

(paramétrer =16)

13.333

F11 25 31 639

7.0833

F11 28 24 697

F4 F9 F11 F4 F9 F11

F4 680 0 19 F4 773 0 23

F9 101 769 120 F9 0 783 92

Arbre de décision

classification

(paramétrer =25)

12.083

F11 19 31 661

6.6250

F11 27 17 685

F4 F9 F11 F4 F9 F11

F4 786 0 212 F4 788 0 166

F9 0 785 472 F9 0 787 83

Réseaux de neurones

(paramétrer =1) 29.708

F11 14 15 116

11.416

F11 12 13 551

F4 F9 F11 F4 F9 F11

F4 795 0 108 F4 786 0 157

F9 0 775 138 F9 0 788 88

Réseaux de neurones

(paramétrer =3) 11.500

F11 5 25 554

11.291

F11 14 12 555

F4 F9 F11 F4 F9 F11

F4 784 0 97 F4 787 0 64

F9 0 797 115 F9 0 784 78

Réseaux de neurones

(paramétrer =8) 9.6250

F11 16 3 588

7.1250

F11 13 16 658

30

Quatrième cas : (20 fautes avec 2 variables (X9 et X51) pour chaque faute)

Erreur F1, …, F20

sans probabilité Avec probabilité

Analyse discriminante linéaire 79.1937 76.1250

Analyse discriminante quadratique

(sauf F6, car il y a quelque faute sur les

variables de F6)

70.5687 70.1000

Analyse discriminante diaglinéaire 81.7375 74.7813

Analyse discriminante diagquadratique

(sauf F6, car il y a quelque faute sur les

variables de F6)

73.4562 71.6250

KNN Sortie du memoire

SVM rbf (paramétrer =7) 75.6063 71.2813

SVM mlp (paramétrer =[1,-1]) 82.0750 80.4000

Arbre de décision classification

(paramétrer =1) 83.9188 79.0375

Arbre de décision classification

(paramétrer =16) 83.6688 78.9375

Arbre de décision classification

(paramétrer =25) 83.4688 78.8063

Réseaux de neurones (paramétrer =1) 77.8875 69.9750

Réseaux de neurones (paramétrer =3) 71.3688 68.7500

Réseaux de neurones (paramétrer =8) 74.0500 67.3063

4.3 Analyse

On peut voir que, pour chaque cas, comme sur la figure, on peut bien séparer F4 et

F9, mais mal pour F4 et F11, même F9 et F11. Heureusement, avec les probabilités

F11 F4

F9

31

que l’on a calculées, les résultats sont meilleurs que sans-probabilités, sauf par les

méthodes d’Analyse discriminante quadratique et diagquadratique. Sur le quatrième

cas, on voit que si les classes sont assez grandes, donc, il est besoin assez nombres

de variables pour chaque classe.

Maintenant on voit que des situations suivantes :

Première situation : {F1, …, F20} compare avec {F4, F9, F11}, pour chaque faute, il y a

52 variables. On peut trouver que s’il y a moins de classifieurs, l’erreur de

classification doit être petite.

Erreur (avec probabilité) 52 variables pour chaque faute

F1, …, F20 F4, F9, F11

Analyse discriminante linéaire 32.4063 18.5

Analyse discriminante quadratique

(sauf F6, car il y a quelque faute sur les

variables de F6)

32.6645 34.291

Analyse discriminante diaglinéaire 34.4688 18.583

Analyse discriminante diagquadratique

(sauf F6, car il y a quelque faute sur les

variables de F6)

42.5066 29.958

KNN Sortie du

memoire 63.166

SVM rbf (paramétrer =7) 30.6312 25.7917

SVM polynomial (paramétrer =3) 39.2437 26.985

SVM mlp (paramétrer = [-1,1]) 65.0062 38.500

Arbre de décision classification

(paramétrer =1) 39.9500 21.708

Arbre de décision classification

(paramétrer =16) 39.8875 9.3750

Réseaux de neurones

(paramétrer =1) 32.9812 27.375

Réseaux de neurones (paramétrer =3) 33.8625 35.041

Réseaux de neurones (paramétrer =8) 33.3438 30

Deuxième situation : {F4, F9, F11}, pour chaque faute, {52 variables} compare avec {2

variables (X9 et X51)}. Ici, on peut trouver que si le nombre de classes est assez petit,

le cas de moins de variables est plus utile que beaucoup de variables.

32

De ce cas, on peut trouver que si le nombre de classes est assez grand, il faut un

grand nombre de variables pour chaque, mais s’il y a moins de classes, moins de

variables nous donnent alors un meilleur résultat. Enfin, l’apport d’un réseau

bayésien causal pour le diagnostic par classification supervisée permet d’amoindrir

l’erreur de diagnostic.

5 Conclusion générale

Dans le contexte économique actuel, la performance des entreprises doit être

toujours croissante. Celles-ci doivent produire toujours mieux, à moindre coût et

dans des conditions de sécurité de plus en plus sévères. De plus, les procédés sont

de plus en plus complexes et de plus en plus informatisés. Ainsi, il est de moins en

moins évident ou intuitif de savoir si tout se passe bien dans un procédé. Dans ce but,

la surveillance des procédés permet la détection et le diagnostic d'anomalies (de

fautes). Ainsi, plus une faute est rapidement détectée et correctement

diagnostiquée, plus la production du procédé sera conforme aux exigences requises,

dans les conditions de sécurité requises. Nous avons proposé une surveillance des

procédés multivariés par réseau bayésien causal. Une des perspectives de ces

travaux est de modéliser une Analyse en Composantes Principales (ACP) dans ce

réseau bayésien.

Erreur (avec probabilité) F4, F9, F11

52 variables 2 variables (X9 et X51)

Analyse discriminante linear 18.5 15.083

Analyse discriminante quadratic 34.291 7.9583

Analyse discriminante diaglinear 18.583 14.750

Analyse discriminante diagquadratic 29.958 8.8333

KNN avec 1 voisins 63.166 10.583

KNN avec 2 voisins 63.166 10.583

KNN avec 3 voisins 62.833 8.5417

KNN avec 5 voisins 63.416 8.5833

KNN avec 10 voisins 63.166 8.1667

SVM rbf (paramétrer =5) 33.291 11.583

SVM rbf (paramétrer =30) 21.875 21.291

SVM polynomial (paramétrer =3) 26.958 7.2917

SVM mlp (paramétrer =[-1,1]) 38.500 19.875

Arbre de décision classification

(paramétrer =1) 21.708 10.250

Arbre de décision classification

(paramétrer =16) 9.3750 7.0833

Réseaux de neurones (paramétrer =1) 27.375 11.416

Réseaux de neurones (paramétrer =3) 35.041 11.291

Réseaux de neurones (paramétrer =8) 30 7.1250

33

6 Références :

[1] Douglas C. Montgomery. Introduction to Statistical Quality Control, Third Edition.

John Wiley and Sons, 1997.

[2] Walter A. Shewhart. Economic control of quality of manufactured product. New York : D. Van Nostrand Co., 1931. [3] S. W. Roberts. Control chart tests based on geometric moving averages. Technometrics, 1(3) :239–250, Aout 1959.

[4] J.J. Pignatiello et G.C. Runger. Comparisons of multivariate cusum charts. Journal of Quality Technology, 22(3) :173-186, 1990. [5] Harold Hotelling. Multivariate quality control. Techniques of Statistical Analysis, :111–184, 1947. [6] Cynthia A. Lowry, William H. Woodall, Charles W. Champ, et Steven E. Rigdon. A multivariate exponentially weighted moving average control chart. Technometrics, 34(1) :46–53, 1992. [7] Brigitte Escofier et Jérôme Pages. Analyses factorielles simples et multiples : Objectifs, méthodes et interprétation, 3ème édition. Dunod, 1998. [8] Ludovic Lebart, Alain Morineau, et Marie Piron. Statistique exploratoire multidimensionnelle. DUNOD, 2000.

[9] Iserman, R. Fault Diagnosis : An introduction from fault detection to fault

tolerance. Springer, 2005.

[10] Chiang, L. H.; Russell, E. L. & Braatz, R. D. Fault detection and diagnosis in

industrial systems. New York: Springer-Verlag, 2001.

[11] L.H. Chiang, M.E. Kotanchek, et A.K. Kordon. Fault diagnosis based on fisher discriminant analysis and support vector machines. Computers and Chemical Engineering, 28(8) :1389–1401, 2004.

[12] Vladimir N. Vapnik. The Nature of Statistical Learning Theory. Springer, 1995.

[13] T.M. Cover et P.E. Hart. Nearest neighbor pattern classification. IEEE Transactions on Information Theory, 13 :21–27, 1967.

[14] Antoine Cornuéjols, Laurent Miclet, et Yves Kodratoff. Apprentissage artificiel : concepts et algorithmes. Eyrolles, 2002.

34

[15] Thomas M. Cover et Joy A. Thomas. Elements of Information Theory. John Wiley and Sons, 1991.

[16] Gérard Dreyfus, Jean-Marc Martinez, Mannuel Samuelides, Mirta Gordon, Fouad Badran, Sylvie Thiria, et Laurent Hérault. Réseaux de neurones : Méthodologie et applications. Eyrolles, 2ème édition, 2004.

[17] Patrick Naim, Pierre-Henri Wuillemin, Philippe Leray, Olivier Pourret, et Anna Becker. Réseaux bayésiens – 2ème édition. Eyrolles, 2004.

[18] Robert L. Mason, Nola D. Tracy, et John C. Young. Decomposition of T² for multivariate control chart interpretation. Journal of Quality Technology, 27(2) :99–108, 1995.

[19] Li, J.; Jin, J. & Shi, J. Causation-Based T² Decomposition for Multivariate Process

Monitoring and Diagnosis. Journal of Quality Technology, Vol. 40, pp. 46-58, 2008.

[20] Verron, S. Diagnostic et surveillance des processus complexes par réseaux

bayésiens. Thèse de doctorat de l’Université d’Angers, 2007

[21] P.R. Lyman et C. Georgakis. Plant-wide control of the tennessee eastman problem. Computers and Chemical Engineering, 19(3) :321-331, 1995.

Titre : Apports d’un réseau bayésien causal pour le diagnostic par classification

supervisée

Mots clés : Surveillance de procédés, réseau bayésien, détection, diagnostic,

surpervisé, analyse discriminante, arbres de décision, SVM, réseaux de

neurones, MYT

Résumé : Cette thèse porte sur la surveillance (détection et diagnostic) des procédés

multivariés par réseau bayésien causal. Ceci présente plusieurs méthodes de

surveillance surpervisées, telles que l’analyse discriminante, la méthode de SVM, de

KNN, des arbres de décision, des réseaux de neurones ou bien la méthode MYT. Par

appliquer ces méthodes sur un exemple classique : le procède Tennessee Eastman,

les performances du réseau bayésien causal pour le diagnostic sont évaluées.

Title :Contribution of causal bayesian network for diagnosis based on supervised

classification

Keywords : process montitoring, Bayesian networks, detection, diagnosis,

supervised, discriminant analysis, Tree method, SVM, KNN, Neural Network

method, MYT

Abstract : This thesis is about the multivariate process montitoring (detection and

diagnosis) with Bayesian networks. It presents some methods like discriminant

analysis, the Tree method, the SVM method, the KNN method, the Neural Network

method and the MYT method. By applying these proposed methods on a benchmark

problem: the Tennesse Eastman Process, efficiency of the Bayesian network is

evaluated for the diagnosis.

Laboratoire : LASQUO

LASQUO/ISTIA 62, av. Notre Dame du Lac 49000 Angers