Vous êtes sur la page 1sur 50

Commande et Régulation

avec
l’Intelligence Artificielle
Sébastien Dourlens

Mars 1998
Université Pierre et Marie Curie - Paris 6
Plan de l’exposé

• 1. Introduction
• 2. Structures de contrôle
• 3. Apprentissage et optimisation
• 4. Mise en oeuvre industrielle
• 5. Comparaison et synthèse
• 6. Conclusion
• 7. Perspectives
1. Introduction
Automatique Classique Logique Floue

Sébastien Sébastien

Optimisation Réseau de neurones

But : Comment réunir les avantages de toutes ces théories ?


2. Les structures de contrôle
• 2.1 Introduction
• 2.2 L’automatique
Classique
• 2.3 Les réseaux de
neurones dynamiques
• 2.4 La logique floue
• 2.5 Le neuro-flou
• 2.6 Conclusion
2.1 Introduction
• Le but de ce chapitre est
de réaliser un état de l’art
en matière de contrôleurs
liés plus ou moins à des
techniques d’Intelligence
Artificielle telles que les
réseaux de neurones et la
logique floue.
2.2 L’automatique classique
• Système asservi en poursuite

• Système asservi en régulation

• Dispositif de commande PID : Identification


2.3 Réseaux de neurones dynamiques
• Définition : Système non linéaire constitué d’un
réseau de neurones organisé en couches et à
circulation vers l’avant
• TDNN : Time Delay Neural Network
– Réseau MLP statique adjoint d’un rebouclage externe et
d’entrées retardées pour le rendre dynamique
– Apprentissage en 2 phases : Série-Parallèle / Parallèle
• MNN : Memory Neural Network
– Réseau dynamique constituée de cellules mémoires
retardées
2.3.1 TDNN
Réseau statique
0 1 N
u(k) WN
W
S
y(k)

u(k-1) 1

u(k-nu) 1
BN

y(k-1)
1

y(k-ny)
1

B0 BN-1
2.3.2 MNN (Sastry 94)

h1 w1

+

u (k) + y (k)
T h2 w2

+
1-
T h3 w3

1  Wbi
hi z   Couche cachée
1  Wbi .z 1
2.3.3 MNN (Chatry 97)
V1

W1
W0
Wm0 Wb1 Wm1
V0 y(k)
u(k)

Wb0

V0(k)=u(k) et Vm0(k)=Wb0.Vm0(k-1)+(1-Wb0).V0(k)
T T
V1(k)= f(W0 .V0(k)+Wm0 .Vm0(k)+B0) et Vm1=M1.Vm1(k-1)+(I-M1).V1(k)
T T
y(k)=V2(k)=W1 .V1(k)+Wm1 .Vm1(k)+B1
2.3.4 MNN généralisé
V2 VN
V1
W1 y1

V0 Wm1
u1
Wm0

Wb1 Wb2
yi
UNBCE
Wb0

YNBCS
2.4 La logique floue

• 2.4.1 Théorie des ensembles flous


• 2.4.2 Eléments fondamentaux
• 2.4.3 Raisonnement flou
• 2.4.4 Schéma de principe
• 2.4.5 Fonction de transfert floue
2.4.1 Théorie des ensembles flous
• Logique floue = logique graduelle
• Définition d’un ensemble flou :
– X ensemble (classique)
– A = {(x,A(x)),xX} ensemble flou sur X avec
A : X [0,1]
x  A(x) fonction
d’appartenance
• T-norme (norme triangulaire) :
– opérateur binaire vérifiant T(0,0)=0, T(1,1)=1, Symétrie
T(a,b)=T(b,a), Associativité T(a,T(b,c))=T(T(a,b),c), Monotonie
a<c et c<d  T(a,c)T(b,d), Triangularité T(a,1)=a
• T-conorme: T-norme sauf triangularité
2.4.2 Eléments fondamentaux
• Système non linéaire statique
• Eléments :
– Fuzzification : fonctions-membres pour les entrées normalisées entre [-1,1]
=> degré d’appartenance à des variables linguistiques
– Moteur d’Inférence : base de règles pour l’implication et l ’agrégation
– Défuzzification : transforme les résultats flous en sorties normalisées entre [-
1,1] (en général ; calcul du centre de gravité)

• Choix de 2 méthodes de défuzzification :


– Mandani : fonctions-membres pour les sorties
• Si (entréei est var_linguistique_e) Alors (sortie est var_linguistique_s)
– Sugeno : coefficients de pondération sur les sorties
• Si (entréei est var_linguistique_e) Alors (sortie = f(entréei))
2.4.3 Raisonnement flou
• IF (condition) THEN (conséquence)
– Compare les variables d’entrée avec les fonctions-membres de la partie
condition d’une règle pour obtenir le degré d’appartenance à chaque
variable linguistique
– Combine les degrés d’appartenance de la partie condition à travers un
opérateur conjonction T-norme tel que X*Y (probabiliste) ou
Min(X,Y)=(X,Y) (Zadeh) pour obtenir le poids de chaque règle.
– Générer les conséquences qualifiée pour chaque règle selon les poids des
règles à travers un opérateur disjonction T-conorme tel que X+Y-X*Y
(probabiliste) ou Max(X,Y)= (X,Y) (Zadeh)
– Agréger les conséquences qualifiées pour produire les variables de sortie à
l’aide du calcul du centre de gravité.
2.4.4 Schéma de principe
2.4.5 Fonction de transfert floue
• Proche de l’Automatique classique avec des
données appartenant à des ensembles flous.
2.5 Le neuro-flou
• Système non linéaire statique comportant
indifféremment des éléments de la logique floue et
des réseaux de neurones
• 3 cas existants:
– Fonction « neurones » dans un contrôleur à logique floue
(Werbos 92, Takagi 88 et 90)
– Fonction « Logique floue » dans un réseau de neurones
(Glorennec 92), (Jang 93)
– Système incluant des réseaux de neurones complets et
des systèmes à logique floue (Automaticiens)
2.6 Commande incrémentale à règles
• La base de la CIR (?)
• CIR (D. Luzeaux)

• Etude du comportement du processus à contrôler :


Entrée = fonction (sorties, dérivée des sorties, ...)
2.7 Conclusion
• Etat de l’art réalisé et assez
complet
• Quelles sont les méthodes
employées pour
l’apprentissage et
l’optimisation de ces
techniques d’Intelligence
Artificielle ?
• But suivant : Etat de l’art en
matière d’apprentissage et
d’optimisation
3. Apprentissage et optimisation
• 3.1 Les méthodes EQM de
descente
• 3.2 Gradient
• 3.3 Algorithmes génétiques
• 3.4 Recuit simulé
• 3.5 ANFIS
• 3.6 Simplexe
• 3.7 Lagrangien
• 3.8 Equation Hamilton-Jacobi-Bellman
Itérations
3.1 Les méthodes de descente
• Réseaux de neurones dynamiques :
– Méthode de Relaxation, Newton et Quasi-Newton, Méthode de
Lagrangien (duale, optimisation non-linéaire sous contraintes)

• Réseaux de neurones et Logique floue :


– Gradient (Hayashi 89 et 92,Nomura 91, Jang 92, Maeda 91,Wang 92),
Gradient conjugué (Hichihashi 91), Algorithmes génétiques (GoldBerg
89, Glorennec 92, Bersini 92, Lee 93,Karr 93), Groupement ou
Clustering K-means (Jou 93, Berenji 93)

• Automatique classique et Logique floue :


– Equation de Hamilton-Jacobi-Bellman (programmation dynamique)
– Simplexe (programmation linéaire) (Fletcher 63, Nelder, Dennis 87)
– Recuit simulé (Siarry 88, Isaka 88, Guely 94) ou Recuit diffusé
(Gradient et Recuit simulé)
– Filtre de Kalman découplés étendus (FeldKamp 91 et 93)
3.2 Gradient
• Méthode locale de Rétropropagation de l’erreur supervisé
(Rumelhart 86)
• Algorithme du gradient à pas optimal ou de la plus grande
pente :
– En partant de uk, par une recherche linéaire, on a uk+1=uk-
kJ(uk) avec k=arg min J(uk-  J(uk))
– On arrête lorsqu’un test de convergence est vérifié (ex. :
J(uk)  <  )
• 2 directions de recherche successives sont opposées
• => lent, problème pour les minima locaux
3.3 Algorithmes génétiques
• Définition : programme
d’optimisation qui démarre avec
une population de procédures
codées (Création de la vie), elle
modifie ces procédures
(Obtention du cancer) et utilise
un processus de sélection
(Darwinisme) pour préférer les
mutants qui conviennent le
mieux et peut-être un processus
de recombinaison (Duplication)
Pour combiner les propriétés des
mutants préférables
3.4 Recuit simulé
• Analogie avec la métallurgie :
– Refroidir lentement un métal par paliers de
températures successifs pour obtenir un état cristallin
du métal le plus régulier possible soit une énergie libre
la plus basse possible (fonction de coût à minimiser).

• Méthode globale (kirkpatrick 83, Cerny 85)

• => plus rapide que le gradient


3.4 Algorithme du recuit simulé
3.5 ANFIS
• ANFIS = Adaptative Network Based Fuzzy
Inference system
• Employé pour modéliser ou identifier les
fonctions non linéaires
• Choix d’un architecture mi-floue mi-neuronale
• Apprentissage hybride rapide : gradient + LSE
(least squares estimate)
3.5 Schéma ANFIS
3.6 Algorithme « Simplexe »
– Initialiser les suites ordonnées de n+1 valeurs xi et de n+1 fonctions de ces
valeurs Fi et coeff. de réflection =1, coeff. de contraction =1/2, coeff.
d’expansion =2
– Itérer 200*n fois ou jusqu’à erreur quasi-nulle :
• Calculer c=(x1+...+xn)/n, new_x=(1+)*c-.xn+1 et new_F=F(new_x)
• Si (F1new_FFn) alors xn+1=new_x /* Réflection */
• Sinon Si (new_F<F1) alors /* Expansion */
– new2_x=(1- )*c- .new_x et new2_F=F(new2_x)
– Si (new2_F<F1) alors xn+1=new2_x sinon xn+1=new_x
• Sinon Si (new_F<Fn) alors /* Contraction */
– Si (new_FFn+1) alors new_x=xn+1
– new2_x=(1- )*c- .new_x et new2_F=F(new2_x)
– Si (new2_F<F1) alors xn+1=new2_x sinon xn+1=moyenne(x)
• Fn+1=F(xn+1); Trier les x et les F;
3.7 Méthodes de Lagrangien
(Optimisation non-linéaire)
• L(u,p)=J(u)+pT(u) avec contraintes égalités convexes
(=affines) : (u)=Du-d
• H(p)=minu L(u,p) : fonction duale à maximiser : concave
• Si L admet un point selle et si on connaît p* (max de H), pour
trouver u*, résoudre minu J(u)+(p*)T(u)
• Problème: peut-on calculer une dérivée de H ?
• On démontre sous des conditions de régularités suffisantes que
H(p)= (u(p)) (H duale et problème quadratique à contraintes
linéaires)

• => Algorithmes de Uzawa, d’Arrow-Hurwich


3.8 Equation de Hamilton-Jacobi-
Bellman (Prog. dynamique)

• Algorithme du plus court chemin


– min J=somme(distance(Pt,Pt+1)) avec t=0..T-1

• Commande optimale en temps discret :


– minu(0),...,u(T)  g(x(t),u(t),t)+h(x(T)) de t=0..T-1 sous la
contrainte dynamique x(t+1)=f(x(t),u(t),t), t=0..T
4. Mise en oeuvre industrielle
• 4.1 Introduction
• 4.2 Automatique
Classique
• 4.3 Réseaux de
neurones dynamiques
• 4.4 Logique floue
• 4.5 Neuro-floue
• 4.6 Conclusion
4.1 Introduction
• Etude de la mise en
oeuvre d’un point de vue
industrielle des différents
systèmes

• Considération des critères


de choix suivants :
– méthode rapide
– méthode précise
4.2 Automatique classique
4.3 Réseaux de neurones
4.4 Logique floue
4.5 Neuro-flou

• Mélange des phases de mise en oeuvre de


l’automatique classique, des réseaux de neurones
et de la logique floue selon la structure neuro-
floue
4.6 Conclusion
• Automatique classique
précise et longue (hypothèse
linéaire)
• Réseaux de neurones et
logique floue moins précis
mais plus rapide
(approximation générale en
non-linéaire)

• Nécessité de discuter sur des


critères basés application
industrielle
5. Comparaison / Synthèse

• 5.1 Introduction
• 5.2 Les critères de choix Très Bon

• 5.3 Les avantages et


inconvénients
Bon

• 5.4 La synthèse

Poubelle
5.1 Introduction
• Enumération des critères
de choix d’un point de vue
application industrielle
• Vision générale sur les
avantages et inconvénients
des différentes méthodes
• synthèse d’un système
globalisant les avantages
et correspondant aux
critères
5.2 Les critères de choix
• Point de vue de la Recherche :
– Innovation et répercussion dans le futur
• Point de vue de la technique :
– Contraintes liées au système à étudier
• Point de vue de l’industrie:
– Coût de mise en oeuvre (logiciel de modélisation reconnu, matériel
fiable, humain)
– Délais de mise en oeuvre
– Minimiser le coût de production : inclure de l'existant fiable
• Norme européenne ou internationale préférable
• Produit reconnu sur le marché préférable
5.3 Les avantages et inconvénients

• 5.3.1 Automatique classique


• 5.3.2 Fonction de transfert floue
• 5.3.3 Logique Floue
• 5.3.4 Réseaux de neurones
• 5.3.5 Neuro-flou
5.3.1 Automatique Classique
• Nécessite une bonne connaissance du système
• Etude difficile dans le cas non-linéaire
• Précision des résultats
• « Réglage par PID et méthode de Strejc »
• Etude du système demande un expert en
Automatique

• Identification possible par la méthode des moindres


carrés (cas linéaire)
5.3.2 Fonction de transfert flou
• Nécessite un modèle pour l’identification
• Permet l’étude de critères comme la stabilité
• Permet la synthèse de système
• Etude longue
• Imprécise
5.3.3 Logique floue
• Optimisation rapide pour l’identification
• Système non linéaire statique
• Admet des données imprécises : Faible sensibilité
aux bruits
• Règles connues et pondérées intégrables par
l’expert
• Etude et Mise en oeuvre rapide
• Implantation matérielle dédiée existante
5.3.4 Réseaux de neurones
• Système non linéaire dynamique
• Généralisation : identification simple
• Faible sensibilité aux bruits et aux pannes
• Informations délocalisées
• Bonne capacité de synthèse
• Règles d’expert connues pas intégrées
• Apprentissage lent selon précision nécessaire
• Implantation matérielle dédiée existante
5.3.5 Neuro-flou
• Avantages de la logique floue et des réseaux de
neurones
• Apprentissage rapide (ANFIS)
• Règles incluses
• Bonne capacité de synthèse avec imprécision
• Systèmes non linéaires dynamiques (à faire)
5.4 Synthèse
• Structure de type PID ou équivalente
• Structure hybride (type ANFIS) Neuro-floue
combinant les avantages des réseaux de neurones
dynamiques et du moteur d’inférence de la logique
floue
• Logique floue (voir la théorie des possibilités)
• Fonction de transfert floue ou Automatique
classique pour des critères de stabilité et de
précision
6. Conclusion
• Etude des différents contrôleurs
• Choix des méthodes d’apprentissage
• Choix de la mise en oeuvre
• Comparaison des contrôleurs
• Critères de choix => Système préférentiel d’un
point de vue mise en oeuvre industrielle
7. Perspectives
• Structure hybride (type ANFIS) Neuro-floue
combinant les avantages des réseaux de neurones
dynamiques et du moteur d’inférence de la logique
floue (voir la théorie des possibilités)
• Concevoir un système d’identification et de
commande à logique floue type Sugeno (statiques
puis dynamiques !) :
– 1. Choix des paramètres d’un modèle classique
– 2. Choix des paramètres de la défuzzification
– 3. Génération de règles d’inférence à partir des variations des données
(classification des signaux)
– 4. Choix et optimisation des paramètres de la fuzzification

Vous aimerez peut-être aussi