Chapitre 1
INTRODUCTION.
Lobjet de ce mmoire est lutilisation de rseaux de neurones pour la modlisation et la commande
de processus. Les tches auxquelles ces rseaux sont destins sont donc essentiellement celles de
prdicteurs ou de modles de simulation des processus commander, ainsi que celles de rgulateurs
ou de correcteurs. Nous nous plaons dans le cadre de modles temps discret des processus, cadre
qui se prte bien la commande numrique dune part, et lutilisation de rseaux de neurones
formels dautre part. Nous supposons que le comportement dynamique des processus auxquels nous
nous intressons peut tre dcrit par la classe de modles dynamiques suivante :
xp(k+1) = f x p(k), u(k)
(1)
yp(k) = g x p (k)
o kZ reprsente linstant discret t=kT, T tant le pas dchantillonnage, u(k)R nu est le vecteur
des entres externes du modle, yp(k)R ny est le vecteur de ses sorties, et xp(k)R nx est le vecteur
de ses variables dtat, linstant k ; f et g sont des fonctions non linaires.
Ces processus sont commands laide de processeurs numriques, pour lesquels nous cherchons
synthtiser des lois de commande de la forme trs gnrale :
(2)
u(k) = h yp(k), yp(k-1), , xp(k), xp(k-1), , u(k-1), u(k-2),
o h est une fonction non linaire.
Un rseau de neurones est un systme doprateurs non linaires interconnects, recevant des
signaux de lextrieur par ses entres, et dlivrant des signaux de sortie, qui sont les activits de
certains neurones. Pour les applications considres dans ce mmoire (modlisation et commande
temps discret de processus), ces signaux dentre et de sortie dun rseau de neurones sont constitus
de suites numriques. Un rseau de neurones est donc considr comme un filtre non linaire temps
discret. Nous distinguons deux types de rseaux (voir tableau 1) :
- les rseaux statiques ou non boucls : ils ralisent des fonctions algbriques. Dans ce mmoire,
nous les utilisons comme filtres transverses, prdicteurs non rcursifs, ou correcteurs par retour
dtat statique.
- les rseaux dynamiques ou boucls : ce sont des systmes dynamiques qui sont dcrits par un jeu
dquations aux diffrences non linaires couples. Ces rseaux sont utiliss dans ce travail comme
filtres rcursifs, simulateurs ou prdicteurs rcursifs, ou encore comme correcteurs par retour dtat
dynamique.
Dans le cas gnral, un rseau de neurones est un modle dynamique paramtr dcrit par :
S(k+1) = RN S(k), I(k); C
(3)
Y(k) = RN S(k), I(k); C
o kZ est linstant discret, I(k)R NI est le vecteur des entres externes du modle, Y(k)R NY est
le vecteur de ses sorties, et S(k)R NS est le vecteur de ses variables dtat, linstant k.
RN (., .; C), R NS+NI R NS, et RN (., .; C), R NS+NI R NY, reprsentent les fonctions ralises par
les neurones du rseau, interconnects avec les coefficients C.
Le cas particulier dun rseau non boucl correspond NS=0, simplement rgi par :
(3)
Y(k) = RN I(k); C
o RN (.; C), R NIR NY, reprsente la fonction ralise par les neurones du rseau, interconnects
avec les coefficients C.
Rseaux non boucls
Filtres transverses
Prdicteurs non rcursifs
Correcteurs par retour dtat statique
Rseaux boucls
Filtres rcursifs
Prdicteurs rcursifs
Modles de simulation
Correcteurs par retour dtat dynamique
Tableau 1.
Tches ralises par des rseaux de neurones boucls ou non1 pour la modlisation et la commande de processus.
La famille de modles paramtrs dfinie par (3) prsente les attraits suivants :
- Il existe thoriquement toujours un rseau de neurones tel que les valeurs des fonctions RN et RN
approchent avec une prcision fixe celles de fonctions continues dans un domaine donn de leurs
arguments. Presque tout modle de type (1) ou correcteur de type (2) peut donc tre approch par un
rseau de la famille (3), comme nous le verrons au II de ce chapitre.
- Il est possible destimer les coefficients dun rseau laide de squences de couples {entressorties dsires}, disponibles ou dtermins par le concepteur partir de la tche effectuer, de
manire satisfaire un indice de performance mesurant la ressemblance entre les sorties effectives du
rseau et les sorties dsires. Lun des intrts des rseaux de neurones rside dans le fait que cette
estimation des coefficients est le rsultat dune procdure algorithmique, lapprentissage, dont la
mise en uvre obit des rgles indpendantes de larchitecture et de la complexit du rseau.
Dans le paragraphe qui suit, nous prsentons les rseaux de neurones boucls et non boucls. Puis
nous rappelons les rsultats concernant lapproximation de fonctions ou de systmes dynamiques par
les rseaux de neurones. Enfin, nous introduisons la procdure algorithmique permettant destimer les
coefficients dun rseau destin une tche donne (voir galement l'annexe I).
Dans le prsent mmoire, propos de systmes mme non neuronaux, nous employons indiffremment les termes :
statique, non rcursif, non boucl, et les termes : dynamique, rcursif, boucl.
zi(k) = fi v i(k)
vi(k) =
cij, zj(k-)
jPi =0
Pi est lensemble des indices des units du rseau propageant leur activit au neurone i. Son potentiel
vi(k) est une somme des valeurs de ces units, linstant k ou des instants prcdents, pondre par
les coefficients cij,. qij est le retard maximal du neurone i sur lentre ou le neurone j. Si qij=0 pour
tout j, le neurone i est statique. La fonction f i, fonction dactivation du neurone i, est en gnral non
linaire. Ce peut tre la distribution de Heaviside, la fonction tangente hyperbolique ou une sigmode,
une fonction base radiale (RBF), ou encore la fonction identit.
z3 (k)
3
C 31,0
z1 (k) 1
C 32,1
C 34,1
z2 (k) 2
C 53,0
C 43,0
1
0
C42,0
C 51,0
C54,1
z5 (k)
0
1
0
0
1
z4 (k)
Figure 1.
Exemple de rseau de neurones et de son graphe.
Un rseau de neurones est conu pour remplir une tche que le concepteur dfinit par une squence
dentres, et par une squence de valeurs dsires correspondantes pour les activits de certains
neurones du rseau, les neurones de sortie. Les neurones qui ne sont pas des neurones de sortie sont
dits cachs. Le rseau de la figure 1 possde deux entres, deux neurones cachs, et un neurone de
sortie.
Pour caractriser un rseau de neurones, il est pratique dutiliser son graphe. Ses nuds sont les
neurones, ses racines les entres du rseau, et les arcs sont les connexions pondres par leur retard.
Sil ny a pas de cycle dans ce graphe, le rseau est non boucl, sinon, il est boucl [NER92b].
Larchitecture dun rseau est dfinie par le graphe du rseau, les coefficients de celui-ci, et par les
fonctions dactivation des neurones. Le caractre boucl ou non du rseau, ainsi que les fonctions
dactivation, peuvent tre fixs en fonction de la tche que doit remplir le rseau de neurones. Les
valeurs des coefficients sont en gnral dtermines par apprentissage, mais certaines dentre elles
peuvent tre fixes lavance. Ainsi, dans le cas de la modlisation dun processus, larchitecture peut
tre partiellement dtermine par des connaissances a priori ; les valeurs de coefficients ayant une
signification physique peuvent tre fixes pralablement lapprentissage.
o vi(k) est le potentiel du neurone i linstant k, zi(k) son activit, P i est lensemble des indices des
units propageant leur activit au neurone i, et cij est le coefficient de la connexion reliant lunit j au
neurone i.
Un rseau non boucl ralise donc une transformation entre/sortie non linaire RN paramtre par
les coefficients C du rseau (voir figure 2) :
Y(k) = RN I(k); C
o Y(k)R NY est le vecteur des sorties linstant k, cest--dire des activits des neurones de sortie
du rseau linstant k, et I(k)R NI est le vecteur des entres externes linstant k. RN(.; C) :
R NIR NY, reprsente la fonction ralise par les neurones du rseau interconnects avec les
coefficients C.
Sorties l'instant k
Y(k)
Rseau de neurones
statiques
RN
I(k)
Figure 2.
Forme canonique dun rseau de neurones non boucl.
y(k)
c21,1 c21,2
1
2
u(k)
c32,3
c21,0
c 21,1
u(k-1)
c32,4
c21,0
c21,1
c32,2
c21,0
c21,0
c 32,1
c21,0
c21,1
c21,0
c21,1
c21,1
c 21,2
c21,2
c 21,2
c21,2
c21,2
u(k-2)
u(k-3)
u(k-4)
u(k-5)
u(k-6)
u(k)
a)
b)
Figure 3.
Mise sous forme canonique dun filtre transverse non linaire temps discret (TDNN).
T
I(k) = u(k), u(k-1), u(k-2), u(k-3), u(k-4), u(k-5), u(k-6) ; Y(k) = y(k) .
Larchitecture de rseau non boucl la plus gnrale est celle du rseau compltement connect
(voir figure 4). Toutes les neurones cachs et les neurones de sortie sont connects aux units dindice
infrieur2.
Sorties du rseau
Neurones cachs
NI+1
N I+2
Neurones de sortie
NI+N c+1
...
..........
NI+N c+N Y
....
NI-1
NI
Entres externes
Figure 4.
Rseau de neurones non boucl compltement connect.
Un rseau non boucl ralise une tranformation entre/sortie ; il nest donc pas ncessaire que ses sorties soient
fonctions les unes des autres. Dans ce travail, les neurones de sortie dun rseau compltement connect ne sont ainsi pas
connects entre eux.
10
Les entres externes sont numrotes de 1 N I, les neurones cachs de NI+1 N I+N C, et les
neurones de sortie de NI+NC+1 NI+NC+NY.
Sorties du rseau
N I+Nc+1
NI+Nc +N Y
NI+1
....
. . . . N.+N.
I
.....
NI
Entres externes
Figure 5.
Rseau de neurones non boucl une couche de neurones cachs.
Une architecture trs utilise, historiquement en raison surtout de sa pertinence en classification, est
celle du rseau couches (voir figure 5). Les neurones cachs sont rpartis en couches successives,
les neurones appartenant une couche donne ntant commands que par les neurones de la couche
prcdente, et ceux de la premire couche ntant connects quaux entres externes. Mentionnons que
la proprit dapproximation universelle des rseaux de neurones est valable pour la famille des
rseaux possdant seulement une couche de neurones cachs (voir II).
11
Sorties
l'instant k
Variables d'tat
l'instant k+1
Y(k)
S(k+1)
RN , RN
I(k)
Retards
unitaires
S(k)
Variables d'tat
l'instant k
Entres externes
l'instant k
Figure 6.
Forme canonique dun rseau de neurones boucl.
Une forme canonique dun rseau de neurones boucl est ainsi dfinie partir dun rseau non
boucl constitu de neurones statiques possdant NI entres externes, NS entres dtat (les variables
dtat linstant k), NC neurones cachs et NY neurones de sortie (neurones pour les activits
desquels il existe une valeur dsire). Les sorties du rseau linstant k sont les activits des NY
neurones de sortie, et les variables dtat linstant k+1 sont les activits de NS neurones que nous
appelons neurones dtat3. Ces neurones dtat sont soit des neurones cachs, soit des neurones de
sortie.
z1(k)
C 31,0
z2(k-1)
z5 (k)
C 51,0
5
C 54,1
C 42,0
C 53,0
C 34,1
C 43,0
C32,1
z3(k-1)
z3 (k)
q-1
Figure 7.
Mise sous forme canonique du rseau de la figure 1.
T
Par exemple, mettons le rseau de la figure 1, boucl comme l'indique son graphe, sous une forme
canonique (voir figure 7). Ce rseau possde deux entres externes (NI=2) z1(k) et z2(k-1), une entre
dtat (NS=1) z3(k-1), deux neurones cachs (NC=2), dont un neurone dtat (NS=1) dont lactivit
Dans le prsent mmoire, comme pour les rseaux non boucls, les neurones de sortie ne sont pas relis entre eux.
Les neurones d'tat ne le sont pas non plus (voir la note 2, ainsi que les exemples de rseaux des chapitres 3 et 4).
12
donne la nouvelle valeur de la variable dtat z3(k), et un neurone de sortie (NY=1) dont lactivit
donne la valeur de la sortie z5(k).
13
14
- dautre part, comme nous le verrons au chapitre 2 consacr la modlisation, on est souvent en
prsence de processus affects de perturbations alatoires ; dans ce cas, le but de lapprentissage ne
peut tre de passer par tous les points de lensemble dapprentissage : bien que le systme
dapprentissage ne dispose pas des valeurs prises sur lensemble dapprentissage par les fonctions f
et g supposes rgir le fonctionnement du processus, il doit ajuster les coefficients du rseau de
faon que les fonctions quil ralise tendent vers ces fonctions. La mise au point dun tel systme
dapprentissage en fonction des hypothses faites sur les lois dterministes et les perturbations
alatoires affectant un processus fait lobjet des chapitres 2 et 3 de ce mmoire.
Dans le cas o la tche du rseau est de raliser une loi de commande imposant une dynamique
dsire un processus pour lequel on dispose dun modle, la dmonstration de lexistence dune telle
loi de commande est en elle-mme un problme. En effet, si la synthse du correcteur est effectue
laide dun modle neuronal, dont il est difficile de dterminer les caractristiques de faon analytique,
cette existence peut tre difficile tablir. Ces problmes spcifiques la commande sont abords au
chapitre 5.
Dans ce paragraphe, nous donnons les principes et dcrivons la mise en uvre des procdures
dapprentissage, indpendamment des considrations dexistence que nous venons dvoquer.
15
plus dimportance certaines dentre elles ; cela se traduit par une pondration des diffrents termes
de la fonction de cot (cest une gnralisation de la commande linaire quadratique, voir chapitre
5).
Lapprentissage d'un rseau de neurones est ainsi dfini comme un problme doptimisation qui
consiste trouver les coefficients du rseau minimisant une fonction de cot.
Exemples.
a) Apprentissage du prdicteur associ un processus mono-entre/mono-sortie :
Squence des
entres externes
u
Processus
Squence des
valeurs dsires
yp
+
u
Prdicteur
(rseau de neurones)
Algorithme
d'apprentissage
Figure 8.
Systme dapprentissage pour la modlisation dun processus.
La squence des entres externes est constitue des commandes {u(k)} appliques au processus, et
la squence des sorties dsires des sorties {yp(k)} mesures sur le processus. La figure 8 reprsente
le schma-bloc dun systme dapprentissage pour la modlisation du processus : le but est destimer
les coefficients du rseau prdicteur de faon que ses sorties soient aussi proches que possible de
celles du processus.
b) Apprentissage du correcteur dun processus par une mthode de commande indirecte.
Squence des
entres externes
r
y
Correcteur
(rseau de neurones)
Modle
de rfrence
Squence des
valeurs dsires
yr
Modle de simulation
(rseau de neurones
fix)
r
Algorithme
d'apprentissage
Figure 9.
Systme dapprentissage pour la commande dun processus.
+
y
16
17
vritable intrt que pour les systmes adaptatifs, en particulier en traitement du signal. Ce chapitre
(ainsi que les suivants) ayant pour objet l'apprentissage de systmes non adapatifs, nous prsentons
uniquement des algorithmes non rcursifs et itratifs.
Lexpression de la fonction de cot litration i sur une fentre fixe englobant toute la longueur N
de la squence dapprentissage est la suivante :
J(C, i) = 1
N
k= 1
E i(k)TW
E i(k) = 1
N
k= 1
o C reprsente les coefficients du rseau C(i-1) disponibles litration i, Ei(k) le vecteur des erreurs
linstant k et litration i, W une matrice dfinie positive (qui sera le plus souvent choisie
diagonale), D(k) le vecteur des sorties dsires linstant k, et Yi(k) le vecteur des sorties du rseau
linstant k et litration i.
18
modle. Les modalits de lapprentissage dun correcteur sont amplement dveloppes dans le
chapitre 5 consacr la commande.
CONCLUSION.
Dans ce chapitre introductif, complt par lannexe I pour les aspects pratiques de loptimisation,
nous avons prsent les modles dynamiques universels que sont les rseaux de neurones, et le cadre
gnral de leur apprentissage, largi aux rseaux (dits rseaux dtat , cf chapitre 2 I.1) dont
ltat nest pas constitu exclusivement des valeurs retardes des sorties.
Lutilisation des rseaux de neurones pour la modlisation de processus est dveloppe dans les
chapitres 2 4, et elle est applique un problme industriel dans la deuxime partie de ce mmoire,
avec la modlisation du vhicule autonome REMI (chapitre 7). La commande neuronale de processus
est prsente dans les chapitres 5 et 6, et, dans la deuxime partie, les systmes de commande
prconiss sont appliqus au pilotage de REMI (chapitre 8).