Vous êtes sur la page 1sur 95

Identification des systmes

Gonzalo Cabodevila
gonzalo.cabodevila@femto-st.fr

me
3 anne

cole Nationale Suprieure de


Mcanique et des Microtechniques
26, chemin de lpitaphe
25030 Besanon cedex FRANCE
http://intranet-tice.ens2m.fr
3

" Je distingue deux moyens de cultiver les sciences : l'un


d'augmenter la masse des connaissances par des dcouvertes ;
et c'est ainsi qu'on mrite le nom d'inventeur ; l'autre de
rapprocher les dcouvertes et de les ordonner entre elles, an
que plus d'hommes soient clairs, et que chacun participe,
selon sa porte, la lumire de son sicle ... "

Diderot
4
Table des matires
I Identication des systmes 9

1 Modles de connaissance 11
1.1 Modles simples linaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.1.1 Exemple : le moteur courant continu . . . . . . . . . . . . . . . . . . . . . . . 11
1.2 Mthodes systmatiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.2.1 Un exemple simple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.3 Dtermination des constantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.4 Linarisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.5 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2 Identication de modles non paramtriques 15


2.1 Quelle entre ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.1.1 Analyse harmonique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.1.2 Rponse impulsionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.1.3 Rponse indicielle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2 Etude des rponses indicielles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2.1 Systmes du premier ordre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2.2 Systmes du second ordre rsonnant . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2.3 Systmes du premier ordre retards ou du second ordre non rsonnant . . . . . 17
2.2.4 Systmes d'ordre suprieur 2 non rsonnants . . . . . . . . . . . . . . . . . . 18
2.2.5 Systme avec intgrateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.3 Autres modles ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.4 Mthode de Ziegler-Nichols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3 Algorithme gnral d'identication 23


3.1 Choix du signal d'excitation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.2 Les squences binaires pseudo alatoires (SBPA) . . . . . . . . . . . . . . . . . . . . . 24
3.2.1 Choix des paramtres d'une SBPA . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.3 Identication base sur l'erreur de sortie . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.4 Identication base sur l'erreur de prdiction . . . . . . . . . . . . . . . . . . . . . . . 28
3.4.1 Mthode des moindres carrs simples . . . . . . . . . . . . . . . . . . . . . . . . 28
3.4.2 Calcul du biais de l'estimateur . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.4.3 Mthode des moindres carrs gnraliss . . . . . . . . . . . . . . . . . . . . . . 31
3.4.4 Mthode de la Matrice Instrumentale . . . . . . . . . . . . . . . . . . . . . . . . 33
3.5 Identication en boucle ferme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.6 Et Matlab
r dans tout a ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

4 Estimations rcursives 37
4.1 Moindres carrs rcursifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.2 Variable instrumentale rcursive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

5
6 TABLE DES MATIRES

5 Algorithmes d'optimisation paramtrique. 41


5.1 Prsentation gnrale. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.2 Exemple introductif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.3 Problme pos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.4 Revue bibliographique succincte. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.5 Elments de comparaison des direntes mthodes. . . . . . . . . . . . . . . . . . . . . 43
5.5.1 Critres. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.5.2 Comparaisons. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.5.3 Rcapitulatif. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.5.4 Synthse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

6 Description des algorithmes utiliss. 47


6.1 Gradient et quasi-Newton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
6.1.1 Mthode du gradient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
6.1.2 Mthode de Newton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
6.1.3 Mthode de Newton-Raphson . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
6.1.4 Mthode de Levenberg-Markardt . . . . . . . . . . . . . . . . . . . . . . . . . . 48
6.1.5 l'algorithme BFGS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
6.2 Simplex de Nelder & Mead. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
6.2.1 Extensions - Amliorations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
6.3 Algorithmes gntiques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
6.3.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
6.3.2 Principe des algorithmes gntiques binaires. . . . . . . . . . . . . . . . . . . . 54
6.3.3 Extensions - Amliorations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6.3.4 Conclusion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6.4 Algorithmes gntiques cods rels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6.4.1 Principe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6.4.2 Conclusion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
6.5 Mthode du Recuit simul . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.5.2 Principe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.5.3 Extensions - Amliorations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.5.4 Mise en uvre du recuit simul. . . . . . . . . . . . . . . . . . . . . . . . . . . 58

Bibliographie 58

7 Travaux dirigs 61
7.1 Strecj - Broida - Programmation non linaire . . . . . . . . . . . . . . . . . . . . . . . 61
7.1.1 Strecj - Broida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
7.1.2 Programmation non linaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
7.1.3 Limites de la Programmation non linaire . . . . . . . . . . . . . . . . . . . . . 61
7.2 Identication des systmes instables ou intgrateurs . . . . . . . . . . . . . . . . . . . . 61
7.3 Choix de la source d'excitation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
7.4 Les modles paramtriques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
7.5 Cas pratique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

II Annexes 65
Examen nal janvier 2004 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Correction examen nal janvier 2004 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Examen nal janvier 2005 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Examen nal janvier 2006 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Correction examen nal janvier 2006 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
TABLE DES MATIRES 7

Examen nal janvier 2007 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83


Correction examen nal janvier 2007 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Examen nal janvier 2008 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
8 TABLE DES MATIRES
Premire partie

Identication des systmes

9
Chapitre 1

Modles de connaissance

1.1 Modles simples linaires

Ce sont les modles issus de la physique. Lorsque le systme est peu complexe il est possible d'crire
les relations entre les direntes grandeurs physiques dcrivant les dirents sous-systmes.

1.1.1 Exemple : le moteur courant continu

R L
i
-
6 6'$
J, f
u E
&%

Figure 1.1  Schma lectromcanique d'un moteur courant continu

avec : u = E + Ri + Ldi/dt
C = ki
E = k
J d
dt = C f

De l'ensemble des quations on peut tirer dirents graphes :


 Schma bloc
 Graphe de uence (voir polycopi de cours de Bernard Lang)
 Graphes Liens ou Bond graph (voir gure 1.2) (Hors du cadre de ce cours : cf Techniques de
l'ingnieur et autres bons bouquins sur la question)
De ces graphes, par rduction, on obtient la fonction de transfert, prliminaire la majorit des
mthodes d'analyse et de synthse de correcteurs que vous connaissez.
La gure 1.3 rappelle les analogies entre les dirents domaines de la physique.

11
12 CHAPITRE 1. MODLES DE CONNAISSANCE

Figure 1.2  Systme et son modle en Bond Graph. (tir de : http ://www.univ-
lille1.fr/l2ep/commande/ee/presentations/p-cs.htm)

Figure 1.3  Analogie des quations direntielles linaires.

1.2 Mthodes systmatiques

Lorsque le systme s'avre plus complexe, il est souvent utile de mettre en uvre une mthode sys-
tmatique. Les quations de Lagrange sont l'une de ses mthodes, particulirement adapte dans le
cadre de la robotique mais presque tous les systmes sont modlisables par cette mthode.
Les quations de Lagrange s'crivent sous la forme :

 
d T T D V
+ + = Qi
dt
qi
qi qi qi

avec : T = nergies cintiques


1
D =
2 pertes dpendantes de la vitesse
V = nergies potentielles
Q = Forces extrieures
1.2. MTHODES SYSTMATIQUES 13

1.2.1 Un exemple simple

i(t)
R - L0
e(t) 6 L(x) = x(t)


?x(t)

F = Mg
?

Figure 1.4  Sustentation magntique.


L0
On suppose L(x) = x

Mcanique Electrique
Coordonnes q2 = x(t) q1 = q(t)
Vitesse q2 = x(t) q1 = q(t) = i(t)
Travail des forces extrieures 2 = M gx(t) 1 = e(t).q(t) = e.q1
2 1
Forces extrieures Q2 = q 2
= M g Q 1 = q1 = e
Energie cintique T2 = 21 M q22 T1 = 12 L(x)q12 = 21 Lq20 q12
Energie potentielle V2 = 0 V1 = 0 (pas de capacit)
Fonction de dissipation D2 = 0 D1 = 12 Rq12
T = T2 + T1 = 12 M q22 + 21 Lq20 q12
V = V2 + V1 = 0
D = D2 + D1 = 12 Rq12
T L0
qi
M q2 q2 q1 
d T q1 q2 q1 q2
(
dt qi ) M q 2 L 0 q2 2
D
q2 0 Rq1
V
qi 0 0
T L0 q12
qi 2 ( q22
) 0
Qi Mg e

d'o on en dduit les formules suivantes :

q12
  
L0
M q2 + = Mg
2 q22
 
q1 q2 q1 q2
L0 + Rq1 = e
q22

q12
  
L0
q2 = g
2M q22
 
q2 L0 q1 q2
q1 = e Rq1 +
L0 q22
L'utilisation de logiciels de calcul analytique (Maple, Mathematica, ...) permettent une modlisation
rapide et sans erreurs.
14 CHAPITRE 1. MODLES DE CONNAISSANCE

1.3 Dtermination des constantes

Evidemment, avant de pouvoir simuler le systme, il faut dterminer la valeur numrique des dirents
paramtres entrant en jeu. La bonne mthode consiste alors soumettre le systme une srie de
mesures permettant d'"isoler" le paramtre que l'on dsire mesurer. La littrature regorge de mthodes
permettant des mesures ables.
ATTENTION : l'utilisation de mthodes de type "identication paramtrique" (voir chapitre 3) ne
permet en aucun cas de mesurer ces paramtres !

1.4 Linarisation

Ce systme tant non linaire et notre but tant d'en dterminer un modle linaire (fonction de
transfert, reprsentation d'tat), la premire tape consiste donc le linariser. Il existe d'innombrables
mthodes de linarisation, la littrature vous fournira une mthode approprie votre problme. Je
n'en prsenterai ici qu'une :
la linarisation autour d'un point de fonctionnement.

Cela consiste en un dveloppement limit au premier ordre (a = a0 + a) autour d'un point.


En reprenant l'exemple du paragraphe 1.2.1

q1 = F1 (q1 , q2 , q1 , q2 , e)

La linarisation autour du point E est donne par :



q = F1 q1 + F1 q2 + F1 q + F1 q + F1 e

1 1 2
q1 E q2 E q1 E q2 E e E

Notez bien que cette tape de linarisation n'est ncessaire que si vous comptez utiliser une mthode
de synthse fonde sur une reprsentation linaire !
Concernant la simulation : implantez les deux modles (linaris et non-linaris), le premier vous
permettra de vrier votre synthse de correcteur, le second (un peu plus proche de la ralit) vous
permettra de simuler la robustesse de votre correcteur vis--vis des non-linarits du systme.

1.5 Conclusions

Il faut toujours avoir un modle de connaissances, si mauvais soit-il pour pouvoir "sentir" le procd et
interprter vos rsultats. Ce modle de connaissances est le pralable toute identication de systme
quelle que soit la mthode employe.
Chapitre 2

Identication de modles non


paramtriques
Si le modle connaissance s'avre trop peu prcis ou impossible obtenir, on peut alors se sur un
modle de comportement entre - sortie. On parle alors d' identication du systme. L'objectif est
d'obtenir un modle qui "se comporte comme" le systme. La plupart du temps, les paramtres de ce
modles n'ont qu'un rapport lointain avec les paramtres d'un modle de connaissances.
En premier lieu, il faut donc rpondre aux deux questions suivantes :
 Quelle entre ?
 Comment traiter la sortie ?

2.1 Quelle entre ?

2.1.1 Analyse harmonique

Entre sinusodale de type u = A sin(t), balaye l'espace des pulsations susceptibles de contenir
une pulsation de coupure du systme. En notant l'amplitude et le dphasage de la sortie vis--vis de
l'entre on trace un diagramme de Bode. De l'analyse de ce diagramme on dtermine le modle
Les rsultats sont diciles exploiter si les constantes de temps sont proches. Bonne excitation sur
tout le spectre de frquences. Ce n'est pas une commande industrielle classique et par consquent elle
est dicile mettre en oeuvre.

2.1.2 Rponse impulsionnelle

Idalement la meilleure mthode car le spectre est constant. Mais il est impossible de raliser un Dirac
parfait. Une bonne approximation du Dirac peut tre obtenue en lectronique (gnrateur d'impul-
sions) et en mcanique (percussion souvent utilise en mcanique vibratoire) voire explosion dans le
domaine du gnie civil.

2.1.3 Rponse indicielle

Le spectre est correct, la commande est facile implanter car c'est une commande classique. C'est la
mthode la plus utilise.

15
16 CHAPITRE 2. IDENTIFICATION DE MODLES NON PARAMTRIQUES

2.2 Etude des rponses indicielles

2.2.1 Systmes du premier ordre

Table 2.1  Rponse d'un systme du premier ordre un chelon.

6s(t)

sf inal

63% sf inal
A
H(p) = 1+ p

-
t

Pas de retard pur, dmarrage franc ( comparer aux systmes d'ordre 2 ou suprieur).
En cas de bruit, la mthode de mesure de via l'intersection de la pente de la tangente au dmarrage
avec la valeur nale est meilleure que le relev du temps 63% de la valeur nale.

2.2.2 Systmes du second ordre rsonnant

Table 2.2  Rponse d'un systme du deuxime ordre un chelon.

D%
sf inal
A
 - H(p) = p2
Tpseudoperiode 1+ 2m
w0 p+
w0 2
-
tpic t

Le facteur d'amortissement m se dtermine l'aide de la mesure du dpassement :

m
D% = 100e 1m2

La pulsation propre w0 s'obtient via l'une des deux formules :

2
tpic = ou Tpseudo-priode =
w0 1 m2 w0 1 m2
2.2. ETUDE DES RPONSES INDICIELLES 17

2.2.3 Systmes du premier ordre retards ou du second ordre non rsonnant


AeT p
La mthode de Broda consiste "faire coller" un modle de la forme H(p) = 1+ p sur la rponse
du systme.

Table 2.3  Rponse d'un systme du deuxime ordre non rsonnant un chelon.
6 s(t)
sf inal

AeT p
40% sf inal H(p) = 1+ p
28% sf inal

t1 t2 -
t

Les valeurs de T et de sont calcules partir des relations suivantes :


= 5.5 (t2 t1 )
T = 2.8 t1 1.8 t2

En pratique, la prise en compte du retard pur est dicile dans une synthse de correcteur. On utilise
donc l'approximation suivante :

AeT p A(1 T p) A
H(p) = ' '
1 + p 1 + p (1 + p)(1 + T p)

Cette approximation reste valable jusqu' la pulsation = 1/T .


18 CHAPITRE 2. IDENTIFICATION DE MODLES NON PARAMTRIQUES

2.2.4 Systmes d'ordre suprieur 2 non rsonnants

La mthode la plus connue est la mthode de Strejc. Le modle est :

AeT p
H(p) =
(1 + p)n

Table 2.4  Mthode de Strejc : Rponse indicielle.


0.18

0.16

n Tu/Ta Tu/ Ta/


0.14
1 0 0 1
0.12 2 0.104 0.282 2.718
3 0.218 0.805 3.695
0.1
4 0.319 1.425 4.465
0.08 5 0.410 2.100 5.119
6 0.493 2.811 5.699
0.06
7 0.570 3.549 6.226
0.04
8 0.642 4.307 6.711

0.02 9 0.709 5.081 7.164


10 0.773 5.869 7.590
0
0 1 2 3 4 5 6 7 8

Tu Ta

1. Tracer la plus grande pente puis mesurer Tu et T a.


Tu
2. Calculer le ratio
Ta.
Tu
3. Dans la colonne
T a du tableau 2.4 trouver la valeur immdiatement infrieure ce ratio.
4. Sur la ligne de ce ratio dterminer n.
Ta
5. Toujours l'aide des valeurs numriques de cette ligne, calculer avec
.
Tu
6. Calculer la nouvelle valeur de Tu que l'on appellera T ucalc avec
.
7. En dduire T avec T = T u T ucalc .

Le tableau 2.4 vient du calcul de la rponse indicielle des fonctions de transfert de la forme :

AeT p
 
s(t) = L1
p(1 + p)n
Exemple : pour n=4
t t t
te 1 t2 e 1 t3 e
 
1 t
s(t) = L1 = 1 e
p(1 + p)4 2 2 6 3
la drive seconde s'crit :
t t
d2 s(t) 1 t2 e 1 t3 e
=
dt2 2 4 6 5
qui s'annule pour t = 3 .
la tangente de plus grande pente est donc la tangente la courbe en t = 3 . Le calcul de la droite
tangente donne :
e3 53 3
= 9/2 t e +1
2
2.2. ETUDE DES RPONSES INDICIELLES 19

53
Cette droite intercepte la droite d'quation s = 1 en t = 9 et l'axe des abscisses en t =
3
(53 e 2) ( 53 e3 2
)
1/9 e3
donc T a = 53
9 1/9 e3
et T u/T a = 0.3193573120
Note : si T u/T a < 0.1, donc n = 1, on applique plutt la mthode de Broda.
20 CHAPITRE 2. IDENTIFICATION DE MODLES NON PARAMTRIQUES

2.2.5 Systme avec intgrateur

Table 2.5  Mthode de Strejc (systme avec intgrateur)


1.4

1.2

n x/y
0.8 1 0.368
y
2 0.271
0.6 t 3 0.224
4 0.195
0.4
5 0.175
Y

0.2

X
0
0 1 2 3 4 5 6 7 8
Tu

Identi sous la forme :

ku 1
H(p) =
p (1 + p)n

1. Avec x/y : dterminer n


Tu
2. Calcul de avec = n
y 1
3. Calcul de ku = u t
En pratique il est assez rare d'identier un systme intgrateur en boucle ouverte car le systme drive
rapidement en dehors de son domaine de linarit (saturation, ...). En pratique, on procde une
identication en boucle ferme.

2.3 Autres modles ?

Les mthodes prcdentes sont trs performantes si toutefois le comportement du systme est proche
des rponses indicielles attendues.
Qu'en est-il pour les systmes dcrits par les fonctions de transfert suivantes :

AeT p 1 Tp
H1 (p) = p2
et H2 (p) =
1+ 2z (1 + 1 p)(1 + 2 p)(1 + 2p)
w0 p + w0 2

Dans la plupart des cas, l'un des modles prcdents sera susant. N'oubliez pas que nous cherchons
un modle de comportement uniquement. Dans les quelques cas rsistant aux mthodes prcdentes,
un peu d'astuce permet de trouver une mthode pour dterminer les constantes du systme. Et si rien
de ce qui prcde ne vous aide, il reste les mthodes de modlisation paramtrique.
2.4. MTHODE DE ZIEGLER-NICHOLS 21

2.4 Mthode de Ziegler-Nichols

Tous comptes fait, le but principal de l'identication en automatique est la mise en place d'un correc-
teur ou d'un rgulateur an d'amliorer les performances du systme en boucle ferme. Aussi l'on est
en droit de se demander si cette tape d'identication est bien ncessaire...
C'est exactement le principe de la mthode de Ziegler-Nichols, qui n'est pas une mthode d'identica-
tion proprement parler mais une mthode de rglage fonde sur des mesures eectues directement
sur le systme. Le tableau 2.6 rsume la mthode.

Table 2.6  Coecients d'un PID rgl par les mthodes de Ziegler-Nichols et Chien-Hrones-Reswick :
essai indiciel et mthode du pompage.

Mthode de pompage Mthodes apriodiques


Boucle ferme Boucle ouverte

Systmes stables ou instables Systmes stables, instables


en boucle ouverte ou intgrateurs

Ziegler-Nichols Ziegler-Nichols Chien-Hrones-Reswick

Rgulation ou Rgulation ou
Poursuite Poursuite
Rgulation Poursuite
P K = 0.5Kosc K = T K = 0.3 T K = 0.3 T
P.I K = 0.45Kosc K = 0.9 T K = 0.6 T K = 0.35 T
Ti = 0.83Tosc Ti = 3.3 Ti = 4 Ti = 1.2T
P.I.D K = 0.6Kosc K = 1.2 T K = 0.95 T K = 0.6 T
Ti = 0.5Tosc Ti = 2 Ti = 2.4 Ti = T
Td = 0.125Tosc Td = 0.5 Td = 0.4 Td = 0.5
22 CHAPITRE 2. IDENTIFICATION DE MODLES NON PARAMTRIQUES
Chapitre 3

Algorithme gnral d'identication


Il faut rpondre aux questions suivantes :

 Quel genre de modle ?


 Paramtrique ou non paramtrique ?
 Quelles mesures eectuer ?
 Quel signal d'excitation ?
 Quelle structure adopter ?
 Doit-on y inclure des connaissances a priori ?
 Comment choisir le bon modle parmi tous ceux calculs ?
 Ce modle est-il adapt ce que l'on va lui demander ?

 

Connaissances a priori
 
? ? ? 6

Choix de la
Mesures Critre de
structure
slection

?
Donnes

? ? ?

Calcul d'un 
modle

Validation

?
Modle nal

Figure 3.1  Algorithme gnral d'identication des systmes. Notez que le processus d'identication
est un processus itratif, chaque passage apportant un peu plus de connaissances.

23
24 CHAPITRE 3. ALGORITHME GNRAL D'IDENTIFICATION

3.1 Choix du signal d'excitation

Pour bien identier, il faut bien exciter dans tout le spectre de frquences susceptible de contenir des
constantes de temps du systme.
 sin(wt) : parfait d'un point de vue spectre (balayage en frquence) mais peu de systmes acceptent
ce genre d'entres.
 (t) : parfait du point de vue thorique, mais dicile de raliser une bonne approximation de
l'impulsion.
 u(t) : moins bon d'un point de vue spectral (u(f ) = 12 (f ) + j2f
1
), mais facile implanter.
 b(t) : bruit blanc idal d'un point de vue spectral mais comment le raliser ?
Il arrive que vous n'ayez aucune possibilit d'exciter le systme (ex : machine en production), il faudra
alors proter des commandes "naturelles" du systme comme signal d'entre du systme. Dans ce cas,
le premier travail consiste calculer le spectre du signal d'entre (FFT par exemple). Il faudra vrier
a posteriori que les constantes de temps identies sont bien dans des domaines de frquences dans
lesquels le systme a t excit.

3.2 Les squences binaires pseudo alatoires (SBPA)

L'un des moyens de raliser un signal "alatoire" est la mise en uvre de Squences Binaires Pseudo
Alatoires (en anglais PRBS : Pseudo Random Binary Sequence)
Principe :

b0 b1 b2 b3 b4 b5 b6 b7
- -

Figure 3.2  Principe de gnration de nombre alatoires fond sur un registre dcalage.

Pour que le systme fonctionne, on doit initialiser le registre n'importe quelle valeur binaire sauf
zro. le nombre cod en binaire A = b7 b6 b5 b4 b3 b2 b1 b0 est "alatoire. de la mme faon, le bit b7 semble
1
indpendant de ses valeurs prcdentes.

Table 3.1  Tableau des bits utiliser pour obtenir une squence de longueur maximale
n bits n bits
3 b2 b1 12 b11 b7 b3 b0
4 b3 b2 14 b13 b9 b5 b0
5 b4 b2 16 b15 b11 b2 b0
6 b5 b4 18 b17 b1
7 b6 b5 20 b19 b2
8 b7 b3 b2 b1 22 b21 b0
9 b8 b4 24 b23 b6 b1 b0
10 b9 b6 26 b25 b5 b1 b0

1. Cela ne semble pas trs srieux, mais sachez que les gnrateurs de bruit en lectronique utilisent ce principe mais

sur 40 bits et que le cryptage de textes utilise un principe tout fait similaire sur 128 bits !
3.2. LES SQUENCES BINAIRES PSEUDO ALATOIRES (SBPA) 25

Une squence sur N bits une longueur de 2N 1 = L dont 2N 1 1et 2N 1 1 0, sa valeur moyenne
est donc non nulle.
amplitude
6
"1"
a
-
t
"0"

Figure 3.3  diagramme temporel d'une squence binaire pseudo alatoire.

a
E[s(t)] =
L
Pour dterminer la forme du spectre il faut en premier lieu calculer sa fonction d'auto-corrlation, le
spectre tant la transforme de Fourier de la fonction d'auto-corrlation.

Fonction d'auto-corrlation
Z LT
1
Cxx ( ) = x( )x(t )dt
LT 0
si | | T
L + 1 | |
Cxx ( ) = a2 (1 . )
L T
si | | T
a2
Cxx ( ) =
L

a2

Te Te LTe t-
2
aL -

Figure 3.4  Fonction d'auto-corrlation d'une SBPA.


On en dduit le spectre qui est la transforme de Fourier de la fonction d'auto-corrlation.
+
L+1X n sin Ln 2 a2
P (f ) = a2 (v )( ) (v)
L2 LT Ln L
Le spectre de la SBPA reprsent en gure 3.5 est donc un peigne de Dirac modul par un sinus
cardinal. On considre que le bruit peut tre considr comme un bruit blanc dans le premier tiers du
premier lobe (1/3Te ). On remarque donc que :
 plus L grand plus la valeur moyenne est faible
 plus L grand plus de raies, plus proche du bruit blanc
26 CHAPITRE 3. ALGORITHME GNRAL D'IDENTIFICATION
SBP A(f )
6
6
6
6
6

6 6
6 -f
1
LTe 2 1/Te 2/Te
LTe

Figure 3.5  Spectre d'une SBPA.

3.2.1 Choix des paramtres d'une SBPA

Il faut donc dterminer a, L etT e "optimum" vis--vis du systme identier.


Le premier compromis concerne L et Te .

Plus la squence est longue :


 plus il y a d'informations
 plus le transitoire est ngligeable
 plus les organes sourent
 plus les drives s'accentuent

Le deuxime compromis est : plus a est petit,


 plus le signal est noy dans le bruit (le vrai celui l !)
 moins les organes sourent
 moins les drives s'accentuent
Le choix de a est donc avant tout li au bruit prsent dans le systme. On choisira a juste assez grand
pour avoir du signal en sortie du systme.

Choix de L et Te Une SBPA de longueur L = 2N 1 envoye la frquence 1/Te prsente un


plateau de longueur maximale de longueur N Te . Le plus petit plateau tant de longueur Te
Le choix de N (donc L) et Te est donc, encore une fois, un compromis entre :
 une bonne identication du gain statique
 une bonne excitation sur la bande de frquence du systme
Soit max la plus grande constante de temps du systme et min la plus petite constante de temps du
systme.
Pour une bonne identication du gain statique on choisira :

NTe = 3 5 max

Pour une bonne excitation sur le spectre entre 0 et la plus haute frquence de coupure on choisira :

1 1
0, 3 =
Te 2min
La rsolution de ses deux quations donne N et Te .
Note 1 : si max  min N devient vite trs grand donc LTe devient prohibitif !
3.3. IDENTIFICATION BASE SUR L'ERREUR DE SORTIE 27
SBP A(f )
9 zone o la SBPA est un bruit blanc
6
6
6 b
f = 0, 3/T e 6
6
plateau maximum=N Te
6 z }| {
a
6

6
6 6
6 -f
t
1
-
LTe 2 1/Te 2/Te t= 3 5 max
LTe

Figure 3.6  Paramtres d'une SBPA.

Note 2 : Si fe = 1/Te est bloque et trop grande (beaucoup de systmes sont sur-chantillonns), il
est parfaitement possible choisir Te = n/fe en rptant chaque bit n fois.

Note 3 : Si fe est bloque et trop petite, abandonnez l'ide d'identier la petite constante de temps :
de toutes faons vous ne pourrez pas la contrler !

3.3 Identication base sur l'erreur de sortie

Le principe de cette mthode d'identication est illustr en gure 3.7. Le modle est une fonction de
n paramtres i , i variant de 1 n. Il s'agit alors de dterminer les paramtres i tels que le critre
soit minimum. Le critre est en gnral choisi de la forme J = 2 .

yi
Systme

ui 
+
i
Critre





Modle

yi

Figure 3.7  Principe d'identication fond sur l'erreur de sortie.

La recherche des paramtres optimaux bi se fait par programmation non linaire. IL s'agit d'utiliser
un algorithme qui partir de paramtres non optimaux i et un critre J donne les paramtres bi .
Ces algorithmes sont nombreux, titre de d'exemple voici les plus utiliss.

 gradient
 quasi Newton
 Nelder et Mead
 algorithmes gntiques
 recuit simul

Avantages de cette mthode :


 Pas d'hypothse sur la forme du modle, il peut en particulier tre non linaire.
28 CHAPITRE 3. ALGORITHME GNRAL D'IDENTIFICATION

 Adapt la recherche de paramtres physiques si modle de connaissances (modle continu !).


L'inconvnient majeur est qu'aucun de ces algorithmes n'est capable de garantir que le rsultat est
rellement l'optimum.

3.4 Identication base sur l'erreur de prdiction

Dans cette partie, nous supposerons que le modle obtenu est un prdicteur, c'est dire qu'il permet
de calculer la sortie l'instant i en fonction des entres et des sorties relles aux instants prcdents
uik et yik .

yi
Systme

ui 
+
i
Critre





Modle


yi

Figure 3.8  Principe d'identication fonce sur l'erreur de prdiction.

3.4.1 Mthode des moindres carrs simples

Les calculs suivants seront fonds sur le modle prsent en gure 3.9.

i (bruit blanc)

vi yi
ui B(z 1 )
A(z 1 ) 

Figure 3.9  Modle du systme tudi.

La mise en quation du systme donne :

Avi = Bui
yi = vi + i
A(yi i ) = Bui
Ayi = Bui + Ai

posons :
ei = Ai
ei sont les rsidus de l'estimation. On obtient nalement :

Ayi = Bui + ei (3.1)

2
Si nous possdons N mesures conscutives, on peut crire N n fois l'quation 3.1.

2. n est l'ordre, suppos connu du polynme A, on appellera p l'ordre du polynme B.


3.4. IDENTIFICATION BASE SUR L'ERREUR DE PRDICTION 29

Sous forme matricielle, on obtient :


a1

yN

yN 1 yN 2 . . . yN n uN . . . uN p

a2 eN
yN 1 yN 2 yN 3 y u uN p1
.
eN 1
N n1 N 1

.

. eN 2

yN 2 . .

. .

yN 3 . . uN 2 uN p2

.

an

yN 3 .

= + .

. .

. . b0

. . yn+1 . uN p3

. .

. .

b1 .

.

.

yn+2 yn+1 yn . uN p .
en+2

..

yn+1 yn yn1 . . . y1 un+1 en+1
bm

soit :
y = X + e
le critre J est : X
J= e2 = eT e
donc :
J = (y X)T (y X) = y T y T X T y y T X + T X T X
Nous cherchons la valeur b de qui minimise J . Ainsi

J
= 0 = 2X T y + 2X T X =b

=b

D'o on en dduit :
b = (X T X)1 X T y
Il reste vrier que la valeur obtenue est bien un minimum

2 J

= 2X T X
2

2X T X est bien une matrice dnie positive donc c'est bien un minimum !

3.4.2 Calcul du biais de l'estimateur

b = E[(X T X)1 X T y]
E[] et y = X + e
= E[ + (X T X)1 X T e]
= + E[(X T X)1 X T e]

L'estimateur est non biais si :


E[]
b =

donc si :
E[(X T X)1 X T e] = 0
il faut donc que :
 X et e soient non corrls

 e soit centr
30 CHAPITRE 3. ALGORITHME GNRAL D'IDENTIFICATION

Mais ce n'est pas le cas ! Le calcul de ce biais sur l'exemple prsent en gure 3.10 permet de le
montrer.

i
vi yi
ui bz 1
1+az 1 

Figure 3.10  Systme du premier ordre bruit.

Les quations du systme sont :


vi + avi1 = bui1
yi = vi + i
o i est un bruit rpondant aux deux quations suivantes :

E[i ] = 0
E[i .ik ] = 2 (k)

soit une moyenne nulle et une fonction d'auto-corrlation de type Dirac.


En rcrivant les quations du systme on obtient :

yi + ayi1 = bui1 + i + ai1


= bui1 + ei

E[ei ] = E[i + ai1 ] = E[i ] + aE[i1 ] = 0

E[ei .eik ] = E[(i + ai1 )(ik + aik1 )]


= E[i .ik ] + aE[i .ik1 ] + aE[i1 .ik ] + a2 E[i1 .ik1 ]
= 2 [(1 + a2 )(k) + a(k 1) + a(k + 1)]

6 2 (1 + a2 )

a 2 6 6
a 2

-
-1 0 1 k

Figure 3.11  Fonction d'auto-corrlation des rsidus d'estimation.

La fonction d'auto-corrlation (voir g. 3.11) montre bien que les rsidus ei ne sont pas un bruit
blanc, notre estimateur est bien biais ! Il reste donc trouv une mthode qui permette de rendre ce
biais nul. Deux mthodes sont proposes ci-aprs : La mthode des moindres carrs gnraliss et la
mthode de la matrice instrumentale.
3.4. IDENTIFICATION BASE SUR L'ERREUR DE PRDICTION 31

3.4.3 Mthode des moindres carrs gnraliss

Le systme tudi est dcrit sur la gure 3.12.

P (z 1 )
Q(z 1 )

i
B(z 1 ) vi yi
m
A(z 1 )

ui ei
n

yi
modle

Figure 3.12  Systme tudi.

Avi = Bui
yi = v i + i
A(yi i ) = Bui
Ayi = Bui + Ai (3.2)

les rsidus sont donc :

ei = Ai

crits en fonction du bruit blanc i


P
ei = A i
Q
quation que nous crirons dans un soucis de simplication d'criture :

F ei = i

En reprenant l'quation 3.2 et en multipliant tous les termes par F on obtient :

AF yi = BF ui + AF i
Q
= BF ui + A i
AP
= BF ui + i

En rcrivant cette dernire quation,

Ayi? = Bu?i + i
o yi? et u?i sont, respectivement les sorties yi et les commandes ui ltres par le ltre F.
En appliquant la mthode des moindres carrs simples sur ces entres-sorties ltres le biais de l'esti-
mateur sera nul car le bruit i est bien un bruit blanc. L'estimation des paramtres sera donc parfaite.
Toutefois il reste dterminer le ltre F.
32 CHAPITRE 3. ALGORITHME GNRAL D'IDENTIFICATION

Dtermination de F Reprenons 3.4.3 sous forme matricielle (avec F de la forme : F = 1 + f1 z 1 +


f2 z 2 + . . . + fn z n )


f 1
eN
eN 1 eN 2 . . . eN n

f2

N

eN 1

eN 2 eN 3 eN n1 . N 1

..

eN 2

. .
.. N 2

. .

eN 3 . .

eN 3


= . + .
.

.
.. .

. .


.
.

. en+1 . ..


en+1 en .

en+2

..

en+1 en en1 . . . e1 . n
fn

soit

e = Xe f +

qui est une forme connue et dont on sais que la solution est :

fb = (XeT Xe )1 XeT e

Les paramtres f de F sont donc dtermins condition de disposer des rsidus e. Mais c'est justement
pour les avoir que l'on droule toutes ces quations...
La solution propose consiste alors procder par itrations en utilisant une premire estimation des
rsidus e obtenue par un premier modle utilisant
1 une premire approximation des paramtres du

systme obtenue par la mthode des moindres carrs simples.

L'algorithme est alors, partir des entres-sorties


1u = ui et
1y = yi
i i

1. Estimation des paramtres


k = (k X T k X)1k X T k y
2. Estimation des rsidus
ke = ky kXk
3. Construction du ltre F1
k fb = (k X T k X )1k X T k e
e e e
4. Filtrage les donnes
k y? = k yi et
k u? = k F k ui
i i
5. Rebouclage en utilisant ce nouvel ensemble d'entres sorties

Quelques remarques :

k F sont du premier ordre (n


Si les ltres = 1), la matrice Xe se rduit un rel ce qui simplie la
k k Tk
formule fb = ( Xe Xe )
1k X T k e = k e .
e kX
e

Critre d'arrt de l'algorithme : Le premier rexe consiste calculer la "blancheur" des rsidus, mais
ce critre est assez dicile mettre en uvre. Un mthode plus simple consiste calculer un critre
d'arrt de la forme :
J k J k1 J
Ca = = kJ
avec J = eT e
J
En pratique on utilisera Ca 5%.
A chaque itration le bruit "devient plus blanc" et pas consquent le critre dcrot.
3.5. IDENTIFICATION EN BOUCLE FERME 33

3.4.4 Mthode de la Matrice Instrumentale

Puisque le biais de l'estimateur des moindres carrs est biais cause de la corrlation entre X et
e, on se propose de dterminer une autre matrice qui permette le calcul de tout en vitant cette
corrlation et donc le biais de l'estimateur.

Posons :
b = (Z T X)1 Z T y
o Z est la matrice instrumentale.
Quelles sont les conditions sur Z pour que l'quation prcdente ait un sens ?
En poursuivant le calcul :
b = (Z T X)1 Z T (X + e)
b = + (Z T X)1 Z T e
Pour que
E[]
b =

il faut :

E[Z T X] 6= 0 et E[Z T e] = 0

Plusieurs choix de Z sont possibles, en voici deux :

le premier choix consiste faire deux campagnes de mesures avec la mme entre ui , le plus souvent
conscutives (dcales dans le temps). Vous avez alors la possibilit de dterminer deux matrices X
soit X1 et X2 , puis dterminer b en posant :

b = (X2T X1 )1 X2T y1

Il n'y a plus de corrlation entre X2 et y1 (le bruit est stochastique et ergodique) donc le biais est bien
nul.

La deuxime proposition consiste crer les donnes ncessaires la cration de la matrice X2 l'aide
d'un modle de type moindre carrs simples issu de la premire campagne de mesure.

3.5 Identication en boucle ferme

Ce domaine de l'identication est actuellement trs actif. En eet ces modles sont ncessaires dans le
cadre de la commande prdictive. Plus pragmatiquement, rappelons que le plus souvent l'identication
en milieu industriel s'eectue sur une machine en production. Il est par consquent dicile voire
impossible d'ouvrir la boucle pour procder une identication. C'est tout particulirement le cas des
systmes instables.
Il reste nanmoins possible d'obtenir un modle. Le systme de la gure 3.13 reprsente le systme
C(z 1 )
identier en boucle ferme. le correcteur du systme est reprsent par la fraction rationnelle .
D(z 1 )
Trois approches sont alors possibles.

La mthode directe : Dans ce cas on utilise les entres vi et les sorties yi . L'identication se fait
alors comme en boucle ouverte. L'avantage de cette approche est de ne pas ncessiter la connaissance
du rgulateur. Les mthodes ARX, ARMAX et les modles d'tat donnent de bons rsultats. Les
meilleurs rsultats seront obtenus si :
 Le modle de bruit est bon
 la boucle de retour n'aecte pas ou peu le spectre du signal d'entre (vi ))
 le rapport signal bruit est important (peu de bruit)
Dans le cas contraire, l'estimateur est biais.
34 CHAPITRE 3. ALGORITHME GNRAL D'IDENTIFICATION

P (z 1 )
Q(z 1 )

ui vi + yi
+ m C(z 1 ) B(z 1 ) m
H(z 1 ) = D(z 1 )
G(z 1 ) = A(z 1 )
+

Figure 3.13  Identication des systmes en boucle ferme.

La mthode indirecte : Dans ce cas on utilise les entres ui et les sorties yi . Bien entendu on
identie alors le systme en boucle ferme soit :

B 0 (z 1 ) H(z 1 )G(z 1 ) C(z 1 )B(z 1 )


M (z 1 ) = = =
A0 (z 1 ) 1 + H(z 1 )G(z 1 ) C(z 1 )B(z 1 ) + D(z 1 )A(z 1 )

La connaissance du rgulateur du rgulateur nous permet de dterminer le modle du systme :

M (z 1 )
G(z 1 ) =
H(z 1 ) M (z 1 )H(z 1 )

L'avantage de cette mthode est que n'importe quelle mthode d'identication est applicable et don-
nera un modle du systme en boucle ferme. Par contre, la moindre erreur sur le rgulateur (pas
forcement bien connu, paramtres, saturations ...) se retrouve dans le modle.

La mthode "Joint Input-Output" : Avec cette mthode on se propose de dterminer simulta-


nment les deux modles :
 le modle du systme
 le modle du correcteur.
Ceci s'eectue facilement en utilisant les modles paramtriques d'tat sous Matlab.

 
y
= Au + B
v

La matrice A contient alors les dynamiques du correcteur Guv et celle du systme en boucle ferme
Guy . Comme pour la mthode prcdente on remonte au modle du systme par calcul.

r
3.6 Et Matlab dans tout a ?

Matlab est avant tout un outil de calcul ! Scilab, gratuit, prsente les mmes fonctionnalits, il est
vrai, sans les boites outils du moins pas aussi compltes.
Matlab propose donc toute une srie d'outils d'aide l'identication. En particulier, quatre modles
linaires, les plus couramment utiliss sont des fonctions de Matlab.
Dans le tableau 3.2 ces modles sont prsents avec leurs utilisations "classique" et la mthode de
dtermination des paramtres. Notez qu'une lecture de la documentation concernant la boite outils
"identication"est une excellente activit !
Face la facilit de calcul de modles, le problme n'est plus vraiment de choisir une structure adapte
mais faire le tri parmi les quantits de modles calculs.
3.6. ET MATLAB
r DANS TOUT A ? 35

Table 3.2  Modles paramtriques implants sous Matlab.


i Modle ARX
Le modle le plus simple, donne souvent de bons rsultats.
1 le seul hic est le traitement du bruit qui est soumis
A(z 1 )
la mme dynamique que l'entre. A utiliser en premire
approximation ou lorsque le bruit est surtout l'entre.
ui +
yi
B(z 1 ) m
A(z 1 ) +
Mthode de dtermination des paramtres :
Moindres carrs ou Matrice instrumentale

i
Modle ARMAX
C(z 1 ) Proche du modle ARX, il s'utilise dans les mmes cas. Il
A(z 1 )
permet en outre de crer un modle de bruit un peu plus
raliste. C'est le modle le plus utilis.
ui +
yi
B(z 1 ) m
A(z 1 ) +
Mthode de dtermination des paramtres :
Maximum de vraisemblance

i
Modle OE
Bien que semblant plus simple que les prcdents, le calcul
des paramtres s'avre plus dicile. Parfait lorsque le bruit
est surtout un bruit de capteur, donc proche de la sortie.
ui +
yi
B(z 1 ) m
A(z 1 ) +
Mthode de dtermination des paramtres :
Maximum de vraisemblance

P (z 1 ) Modle de Box-Jenkins
Q(z 1 )
Le modle complet par excellence, la dynamique dirente
pour l'entre et le bruit en font un bon modle.
ui +
yi
B(z 1 ) m
A(z 1 ) +
Mthode de dtermination des paramtres :
Maximum de vraisemblance
36 CHAPITRE 3. ALGORITHME GNRAL D'IDENTIFICATION
Chapitre 4

Estimations rcursives

4.1 Moindres carrs rcursifs

L'estimation de paramtres par la mthode des moindres carrs simples prsente un inconvnient
majeur, la ncessit de calculer l'inverse d'une matrice, ce qui est long et parfois impossible sur un
microcontrleur. On se propose travers cet exercice de dterminer une forme rcursive de cette
estimation.
Les avantages d'une formulation rcursive tiennent essentiellement en deux points.
 La possibilit de traiter un plus grand nombre de donnes que dans le cas de la formulation directe
(pas de pseudo-inverse calculer), notamment dans le cas de l'implantation sur un microcontrleur.
 Dans le cas des systmes variants dans le temps, la forme rcursive permet de "suivre" les paramtres
du systme. Dans ce cas, l'identication en ligne est gnralement suivie d'une commande qui elle
aussi "s'adapte" aux paramtres courants, on entre alors dans le domaine des commandes auto-
adaptatives qui dpassent le cadre de ce cours.
Comme dans tout problme rcursif on s'intresse d'abord la boucle, ensuite comment on en sort et
enn comment on y entre. Supposons que nous possdions une estimation des paramtres l'instant
N : N

T
N = (XN XN )1 XN
T
YN

l'instant suivant la nouvelle estimation est :

T 1 T
N +1 = (XN +1 XN +1 ) XN +1 YN +1

avec :
     
xN +1 yN +1 eN +1
XN +1 = , YN +1 = et EN +1 =
XN YN EN

o xN +1 = [yN yN 1 . . . yN n+1 uN +1 . . . uN p+1 ]


N +1 s'crit alors :

T 1 T
bN +1 = (XN +1 XN +1 ) XN +1 YN +1
T
= (XN XN + xTN +1 xN +1 )1 (XN
T
YN + xTN +1 yN +1 )

En utilisant le lemme d'inversion matricielle :

(A + BCD)1 = A1 A1 B(C 1 + DA1 B)1 DA1

on obtient :

37
38 CHAPITRE 4. ESTIMATIONS RCURSIVES

 1 
T
XN )1 (XN
T
XN )1 xTN +1 1 + xN +1 (XN
T
XN )1 xTN +1 T
XN )1

bN +1 = (XN xN +1 (XN
T
YN + xTN +1 yN +1

XN

En posant
T X )1 xT
a = 1 + xN +1 (XN N N +1

 1 
T
XN )1 (XN
T
XN )1 xTN +1 1 + xN +1 (XN
T
XN )1 xTN +1 T
XN )1

bN +1 = (XN xN +1 (XN
T
YN + xTN +1 yN +1

XN
T
XN )1 (XN
T
XN )1 xTN +1 a1 xN +1 (XN
T
XN )1 XN
T
YN + xTN +1 yN +1
 
bN +1 = (XN
T
= (XN XN )1 XN
T T
YN +(XN XN )1 xTN +1 yN +1 (XN
T
XN )1 xTN +1 a1 xN +1 (XN
T
XN )1 XN
T
YN
| {z } | {z }
bN bN

(XN XN )1 xTN +1 a1 xN +1 (XN


T T
XN )1 xTN +1 yN +1
= bN + (XN T
XN )1 xTN +1 yN +1 (XNT
XN )1 xTN +1 a1 xN +1 bN
(XN T
XN )1 xTN +1 a1 xN +1 (XNT
XN )1 xTN +1 yN +1
 
T
= bN (XN XN )1 xTN +1 a1 xN +1 bN
T
XN )1 xTN +1 a1 xN +1 (XN T
XN )1 xTN +1 yN +1 + (XN T
XN )1 xTN +1 yN +1

+(XN
 
= bN (XNT
XN )1 xTN +1 a1 xN +1 bN
T
XN )1 xTN +1 a1 xN +1 (XN T
XN )1 xTN +1 yN +1 + yN +1

+(XN
 
= bN (XNT
XN )1 xTN +1 a1 xN +1 bN
T
XN )1 xTN +1 a1 xN +1 (XN T
XN )1 xTN +1 + a yN +1

+(XN
 
= bN (XNT
XN )1 xTN +1 a1 xN +1 bN
+(XN T
XN )1 xTN +1 a1 yN +1
 
= bN + (XNT
XN )1 xTN +1 a1 yN +1 xN +1 bN

On obtient nalement une formule de rcurrence :

 
T
bN +1 = bN + (XN XN )1 xTN +1 a1 yN +1 xN +1 bN

 
Le terme yN +1 xN +1 bN reprsente l'erreur d'estimation l'aide des paramtres prcdents. L'qua-

tion est alors : la nouvelle estimation est l'ancienne estimation corrige par un terme proportionnel
l'erreur d'estimation prcdente, que l'on peut rcrire sous la forme.

 
bN +1 = bN + KN +1 yN +1 xN +1 bN

L'algorithme gnral est donc :

 
bN +1 = bN + KN +1 yN +1 xN +1 bN (4.1)
1
KN +1 = PN xTN +1 I + xN +1 PN xTN +1 (4.2)

PN +1 = PN KN +1 xN +1 PN (4.3)
4.2. VARIABLE INSTRUMENTALE RCURSIVE 39

On remarquera une analogie avec le ltre de Kalman, en fait c'est bien l'quivalent d'un ltre de
Kalman appliqu sur le systme suivant :

N +1 = N
yN +1 = xN +1 N + eN +1

La condition de convergence est la mme : eN doit tre un bruit blanc.


L'initialisation de l'algorithme se fait de deux faons :
 Si on connais une premire estimation de (en provenance d'une mthode non rcursive par
exemple), on l'utilise. Dans ce cas on prend P0 = I avec petit (petite variance du bruit)
 Si on ne connais pas de premire approximation, on prend 0 quelconque et P0 = I avec grand
(grande variance du bruit).
Cet algorithme ne peut tre utilis que si les paramtres du systme sont constants, en eet lorsque N
tend vers l'inni, PN tend vers 0, alors une variation mme importante des paramtres n'inue plus
sur l'estimation de . Notons encore que sur le plan numrique la forme PN +1 = PN KN +1 xN +1 PN
est trs mal conditionne, on lui prfre la forme :

PN +1 = (I KN +1 xN +1 )PN (I KN +1 xN +1 )T + KN +1 KN
T
+1

Si les paramtres voluent brusquement, une solution consiste rinitialiser PN = I avec grand.
Si les paramtres voluent lentement on peut utiliser :
 
bN +1 = bN + KN +1 yN +1 xN +1 bN (4.4)
1
KN +1 = PN xTN +1 I + xN +1 PN xTN +1 (4.5)

1
PN +1 = (PN KN +1 xN +1 PN ) (4.6)

Cependant cet algorithme prsente l'inconvnient de faire crotre PN de faon exponentielle s'il n'y a
plus d'excitation.
Voici d'autres choix pertinents :
 gain constant : on force alors PN +1 = PN ; cela vite la diminution du gain en cours de recherche
des paramtres, et on donne ainsi plus de poids aux acquisitions les plus rcentes ; cette option
convient bien un systme dont les paramtres varient.
 gain dcroissant : PN = cst, cas classique, qui convient un systme paramtres constants.
 trace constante : on garde tr(PN ) = cst (multiplication par un facteur correctif chaque itration) ;
on a les mmes avantages que dans la recherche gain constant mais on module en cours de recherche
le poids relatif de chaque paramtre.
Cette mthode prsente les mmes avantages que la mthode des moindre carres non rcursive,
mais aussi le mme inconvnient : l'estimateur est biais ! Aussi on lui prfre gnralement d'autres
mthodes telle que la mthode de la variable instrumentale rcursive.

4.2 Variable instrumentale rcursive

L'algorithme, trs proche de celui nonc en (4.4) (4.6).


 
bN +1 = bN + KN +1 yN +1 xN +1 bN (4.7)

T 2 T
1
KN +1 = PN ZN +1 + xN +1 PN ZN +1 (4.8)

PN +1 = PN KN +1 xN +1 PN (4.9)

Dans ce cas ZN +1 reprsente un vecteur ligne instrumental compos, un peu comme la matrice ins-
trumentale, soit d'observations retardes de la sortie soit de la sortie d'un modle auxiliaire.
40 CHAPITRE 4. ESTIMATIONS RCURSIVES

Beaucoup d'autres algorithmes existent, le lecteur intress en trouvera plthore dans la littrature.
Nanmoins ils sont tous a peu prs fonds sur le mme principe. En fait, ils se rsument l'expression
d'un asservissement gain rglable : on asservit les paramtres pour annuler une erreur, d'quation
ou de sortie selon la mthode. La valeur du gain inue, comme sur n'importe quel systme, sur la
stabilit, soit la convergence de la mthode, et sur la rapidit.
Moduler le gain revient donc moduler la rapidit de convergence : si l'on a aaire un procd dont il
faut poursuivre les paramtres, qui varient eectivement dans le temps, on aura intrt avoir un gain
fort ; si par contre le systme est fortement bruit, on a intrt avoir un gain faible, sinon la sortie
du modle va poursuivre le bruit en faisant varier les paramtres chaque priode d'chantillonnage,
ce qui n'a pas de sens physique. Un bon rglage du gain demande plusieurs essais et pas mal de bon
sens !
Chapitre 5

Algorithmes d'optimisation paramtrique.

5.1 Prsentation gnrale.

Ce chapitre est consacr au choix d'une mthode d'optimisation des paramtres. Une tude biblio-
graphique succincte montre que le domaine de l'optimisation paramtrique est en pleine volution
notamment dans le cadre des mthodes stochastiques.
Nous prsenterons les mthodes les plus connues an d'en extraire les principes d'optimisation les plus
aptes rsoudre notre problme.
Les mthodes prsentes sont en fait celles qui reviennent le plus souvent dans la littrature. Parfois
anciennes, ces mthodes, en raison de leur capacit optimiser des fonctions trs direntes, sont
encore souvent utilises aujourd'hui. Par ailleurs, ces mthodes sont souvent la base de nouvelles
mthodes d'optimisation.
Le domaine d'utilisation de chaque mthode est un point dlicat aborder. Une faon simple de
dterminer ce domaine serait de le limiter au domaine de convergence garantie, en gnral les fonctions
convexes. Mais cette approche est quelque peu rductrice et ne tient pas compte de la robustesse de la
mthode, c'est pourquoi les spcialistes de l'optimisation paramtrique prfrent se rfrer des tests
sur des fonctions connues et prsentant des caractristiques des plus diverses.

5.2 Exemple introductif

Imaginons que la fonction minimiser soit l'altitude et que l'espace sur lequel nous cherchons
optimiser l'altitude soit la surface de notre plante. Il existe plusieurs faons de procder.
La premire faon consiste parcourir l'ensemble des points de la surface et de mesurer l'altitude en
chaque point. En supposant un maillage de la plante de 10m sur 10m et raison d'une mesure par
seconde : cela reprsente environs 160 000 ans de travail (numration).
La deuxime mthode consiste partir d'un point et de descendre dans le sens de la plus grande pente.
Nous vitons ainsi tous les sommets locaux mais un observateur qui partirai d'un point des Alpes a
peu de chances de trouver le fond de la mer (gradient). Nous pouvons amliorer cette mthode en
prenant trois observateurs qui se communiquent leur altitude. Celui qui se situe au point le plus haut
se dplace en direction d'un point situ entre les deux autres observateurs et parcoure deux fois la
distance qui le spare de ce point. Ces observateurs s'pargnent le calcul de la pente mais ont toujours
peu de chances de trouver la mer (Nelder et Mead).
Une troisime mthode consiste donner notre observateur initial une soucoupe volante (et amphibie)
qui lui permet de se dplacer trs vite. Pendant un temps il se pose au hasard sur la plante et note
l'altitude et la position de chaque point. puis au cours du temps il concentre sa recherche autour des
points les plus bas en eectuant des dplacements alatoires mais de plus en plus cours en moyenne.
Cet observateur trouverai trs rapidement un ocan et dterminerai son point le plus bas. Par contre
si il se concentre trop vite sur l'un des ocans il risque de rater le point le plus bas de la plante (recuit
simul).

41
42 CHAPITRE 5. ALGORITHMES D'OPTIMISATION PARAMTRIQUE.

La quatrime mthode consiste naturellement prendre plusieurs observateurs qui feraient le mme
travail que le prcdent. Rapidement il se constitueraient en groupes qui dterminent le relief de chaque
mers et ocans. Lorsqu'un groupe atteint le minimum de son tendue d'eau et remarque qu'un autre
groupe obtient un minimum plus faible, le premier groupe se dplace pour aider un autre groupe
n'ayant toujours pas atteint le fond (algorithmes gntiques).

5.3 Problme pos

L'ide gnrale de l'optimisation paramtrique consiste dterminer un ensemble de paramtres qui


optimise un critre soumis des contraintes. Dans la suite de ce mmoire, nous parlerons exclusivement
de minimisation, la maximisation tant la minimisation de l'oppos de la fonction.

minimiser f (x),
avec x = {x1 , x2 , x3 , , xn },
(5.1)
soumis Ck (x) 0 k = 1 m,
et Ck (x) = 0 k = m p.
Dans la premire partie de ce chapitre, nous nous consacrerons la dtermination de trajectoires
optimales sans contrainte. Ce cas, bien qu'inapplicable dans le cas des robots marcheurs, peut trs
bien l'tre pour des robots manipulateurs.

5.4 Revue bibliographique succincte.

Les principales mthodes d'optimisation peuvent tre classes en trois catgories principales :

1. Les mthodes analytiques, qui dterminent le point de calcul suivant en fonction des caractris-
tiques de la fonction au point considr.

2. Les mthodes stochastiques, qui intgrent une part de hasard dans le choix du point de calcul
suivant.

3. L'numration, qui consiste discrtiser l'espace engendr par le vecteur optimiser et calculer
l'ensemble des possibilits.

La gure 5.1 prsente les dirents groupes d'algorithmes d'optimisation paramtrique et leur classi-
cation.

L'numration : Elle consiste prendre un nombre ni de valeurs pour chaque paramtre et
calculer le critre associ pour l'ensemble des possibilits. Dans notre cas elle est inutilisable compte
tenu du nombre de paramtres. En utilisant 50 valeurs par paramtre et 13 paramtres par axe, il faut
examiner 50135 possibilits !

Les algorithmes d'ordre n : Fonds sur une dcomposition l'ordre n en sries de Taylor de la
fonction minimiser, ces algorithmes utilisent la drive d'ordre n pour la dtermination du point de
calcul suivant. Ils sont trs rapides lorsque la fonction est continue, drivable et convexe. Par contre,
ils sont peu robustes si la fonction prsente des minima locaux.

Les algorithmes d'ordre 0 : N'utilisant que la valeur de la fonction en certains points, ces algo-
rithmes sont lents mais robustes en cas de discontinuits de la fonction.

Les algorithmes gntiques : Transposition l'informatique de la slection naturelle selon Charles


Darwin, ils utilisent plusieurs vecteurs de paramtres (une population) qui voluent vers le minimum
par la mise en uvre de trois oprations stochastiques, la slection, le croisement et la mutation.
5.5. ELMENTS DE COMPARAISON DES DIFFRENTES MTHODES. 43

Figure 5.1  Classes d'algorithmes d'optimisation paramtrique.

Les algorithmes de recuit simul : Algorithmes stochastiques par excellence, ils sont statisti-
quement capables de dterminer le minimum global d'une fonction quelles que soient ses caractris-
tiques. Par contre, le temps de calcul ncessaire l'obtention du minimum est long.

Les stratgies d'volution : Fondes sur une valuation itrative de la fonction, le dplacement
est alatoire mais il s'adapte en fonction de la topologie locale de la fonction minimiser. La dirence
fondamentale entre stratgies d'volution et le recuit simul est que la premire mthode explore la
fonction de faon locale alors que la deuxime explore l'ensemble de l'espace.

5.5 Elments de comparaison des direntes mthodes.

5.5.1 Critres.

La robustesse est l'aptitude de la mthode converger vers un minimum global sans tre perturbe
par des minima locaux. Cette notion couvre les notions de robustesse la rugosit de la fonction et la
notion d'aptitude trouver le minimum global d'une fonction.

La vitesse est mesure en nombre d'itrations sur la fonction de cot, le temps de calcul ncessaire
pour l'algorithme de la mthode elle-mme est considr comme ngligeable.

La globalit du minimum est donne pour une minimisation d'une fonction multimodale sans aucune
connaissance a priori de la position du minimum global, donc d'une initialisation alatoire.

5.5.2 Comparaisons.

Nous reprendrons ici quelques comparaisons trouves dans la littrature an d'tablir un classement
des direntes mthodes par rapport aux trois critres dnis prcdemment, savoir : la robustesse,
la vitesse et la globalit du minimum.

Les algorithmes d'ordre n sont trs rapides, d'autant plus rapides que les fonctions optimises r-
pondent aux hypothses formules, par contre ils sont peu robustes en cas de discontinuits. Dans le
cas de discontinuits, parmi les mthodes analytiques, ce sont les algorithmes d'ordre 0 qui sont les
meilleurs.
44 CHAPITRE 5. ALGORITHMES D'OPTIMISATION PARAMTRIQUE.

0% pistasie 100%
| {z } | {z }
gradient alatoire

| {z }
Quasi Newton

| {z }
Simplex

| {z }
algorithmes gntiques

| {z }
recuit simul

Figure 5.2  Rcapitulatif des direntes mthodes en fonction de l'pistasie.

5.5.3 Rcapitulatif.

Le tableau 5.1 est une synthse des donnes recueillies dans la littrature. Les notations sous forme
de + et permettent seulement une comparaison qualitative entre les mthodes sans augurer de la
qualit intrinsque d'une mthode.

Principe robustesse vitesse minimum


ordre 1 : Gradient - - - ++ local
ordre 2 : Quasi Newton - - +++ local
ordre 0 : Simplex - + local
Algorithmes d'volution + - - global -
Algorithmes gntiques + - - - global ++
Recuit simul ++ - - - global ++

Table 5.1  Comparaison des mthodes d'optimisation.


La gure 5.2 donne le domaine d'utilisation de chaque mthode en fonction de l'pistasie. Cette no-
tion directement tire du vocabulaire de la gntique indique la propension d'un gne inhiber ou
augmenter l'eet d'un autre gne sur la valeur de la fonction. Ainsi une fonction non linaire, multi-
modale prsente une forte pistasie, par contre prs d'un minimum local de cette fonction, l'pistasie
est minimale voire nulle.
An de xer les ides, voici trois exemples de fonctions :

f1 (x) = x21 + x22 + x23 , pistasie nulle (5.2)

f2 (x) = 100(x21 x2 )2 + (1 x3 )2 , pistasie moyenne (5.3)

f3 (x) = (x22 x3 )2 si sin(x1) > 0


(5.4)
= (x21 x2 )2 si sin(x1) < 0, pistasie forte

Ainsi f1 (x) prsente une pistasie nulle puisque la valeur d'un gne ne change pas l'inuence d'un
autre gne sur le critre. Dans f2 (x) l'inuence existe entre x1 et x2 . Dans f3 (x) l'inuence est forte
puisque la valeur de x1 dcide de quels gnes interviennent dans le critre.

5.5.4 Synthse

La meilleure mthode serait une mthode qui volue en fonction de la connaissance de la fonction
optimiser. Ainsi la recherche dans ce domaine s'oriente vers le couplage de plusieurs mthodes
5.5. ELMENTS DE COMPARAISON DES DIFFRENTES MTHODES. 45

d'optimisation. Le problme d'optimisation revient alors eectuer successivement :

1. Dnition du problme et en particulier des limites de l'espace tudier notamment par la prise
en compte de limites sur la valeur des dirents paramtres optimiser.

2. Gnration alatoire d'une population respectant les limites prcdentes et valuation de chaque
individu vis--vis du critre.

3. Optimisation lente permettant :


 une exploration de l'espace total,
 la dtermination de sous-espaces convexes prsentant un minimum local.

4. Optimisation rapide dans les sous-espaces convexes.

Le passage d'une mthode l'autre peut tre fond sur la dtermination de l'pistasie.
46 CHAPITRE 5. ALGORITHMES D'OPTIMISATION PARAMTRIQUE.
Chapitre 6

Description des algorithmes utiliss.

6.1 Gradient et quasi-Newton

Ces mthodes consistent crire un dveloppement limit de la fonction autour du point courant, puis
d'en dduire par la minimisation de ce dveloppement limit, le point suivant. Le lecteur intress par
ce chapitre lira avec bonheur Numerical recipes in C [?] o les "dtails" des algorithmes (initialisation,
choix de dcroissance, ...) seront parfaitement explicits.

6.1.1 Mthode du gradient

La drive de f : Rn R s'crit :
f
Df (x)i =
xi
Df (x) est un vecteur ligne.
Le gradient de la fonction est :

 T
f
f (x) = Df (x)T =
x

f (x) est un vecteur colonne.


La fonction f minimiser peut tre approche autour d'un point x0 par :

f (x0 + x) ' f (x0 ) + f (x0 )T x

le point de calcul suivant sera calcul par :

xi+1 = xi + x

le pas tant dtermin par :

x = kf (x)

k tant un rel positif. Le choix de k donne lieu de nombreuses variantes de l'algorithme.


 Si k est trop petit, l'algorithme converge lentement.
 Si k est trop grand, l'algorithme oscille autour du minimum.
En pratique on choisi k variable au cours de l'optimisation, la plus connue est le line search. Une
mthode simple consiste faire varier k suivant :
 Si f (xi+1 ) < f (xi ) alors augmenter k (on est dans la bonne direction, on va voir plus loin)
 Si f (xi+1 ) = f (xi ) alors augmenter k (on est sur un plateau, on va voir plus loin)
 Si f (xi+1 ) > f (xi ) alors diminuer k et abandonner f (xi+1 ) (on remonte, le minimum est plus prs
de xi )

47
48 CHAPITRE 6. DESCRIPTION DES ALGORITHMES UTILISS.

6.1.2 Mthode de Newton

C'est en fait, l'extension l'ordre 2 de la mthode du gradient. Ainsi la fonction f minimiser est
approche par :
1
f (x0 + x) ' f (x0 ) + f (x0 )T x + xT 2 f (x0 )x
2
ou 2 f (x0 ) est le Hessien de la fonction (la drive seconde)

2f 2f 2f

x21 x1 x2 x1 xn
2f 2f 2f

2f
x2 x1 x2 x2 x2 xn

Df (x) = 2 f (x)ij = =

. . .. 2f
xi xj

. . .
. .

xi xj
2f 2f 2f
xn x1 xn x2 xn xn

Le point o la fonction approche est minimum est tel que la drive de la fonction est nulle soit
l'quation :
 
T 1 T 2
f (x0 ) + f (x0 ) x + x f (x0 )x = 0
x 2

f (x0 )T + 2 f (x0 )x = 0

le pas est alors :


x = 2 f (x)1 f (x)
On vois que par rapport la mthode du gradient, la direction de recherche est pondre par l'in-
verse du hessien. En pratique cette mthode est trs peu utilise car la dtermination du hessien est
longue et coteuse en temps de calcul, son inverse aussi. On lui prfrera des mthodes fondes sur
l'approximation du hessien.

6.1.3 Mthode de Newton-Raphson

Comme pour la mthode de Newton le pas est calcul par :

x = 2 f (x)1 f (x)
1
Mais au lieu de calculer le hessien puis son inverse on se contente de calculer x tel que :

2 f (x)x = f (x)

Notez bien que l'on a transform le calcul de l'inverse de 2 f (x)1 en une rsolution d'un systme
linaire chaque itration.

6.1.4 Mthode de Levenberg-Markardt

Les deux mthodes prcdentes prsentent l'inconvnient (que quelques variantes contournent) de ne
pas converger lorsque le point initial est loin du minimum recherch.
L'algorithme Levenberg-Markardt lve cet inconvnient on proposant un compromis entre la mthode
du gradient (robuste mais lente l'approche du minimum) et celle de Newton (peu robuste loin du
minimum mais trs ecace prs). Le pas xi s'obtient en rsolvant le systme d'quations linaires :

(f (xi )f (xi )T + i I)xi = f (xi )T f (xi )

ainsi, lorsque i est grand devant le hessien, l'algorithme tend vers l'algorithme du gradient, lorsque
i est petit, il converge aussi vite que celui de Newton.

1. Pour une fonction de 100 paramtres le hessien est une matrice 100 100 !
6.1. GRADIENT ET QUASI-NEWTON 49

6.1.5 l'algorithme BFGS

BFGS sont les initiales de Broyden-Fletcher-Goldfarb-Shanno, c'est sans doute l'algorithme le plus
utilis.
A partir d'un point initial x0 et une premire approximation du hessien H0
1. Calculer le pas par :
Hi xi = f (xi )

2. Dterminer i optimal par une mthode de type "line search" et calculer :

xi+1 = xi + i xi

3. Calculer la variation du gradient :

f (xi+1 ) f (xi )
yi =
i

4. Puis la nouvelle estimation du hessien est :

yi yiT Hi xi xi T HiT
Hi+1 = Hi + +
yiT xi xi T Hi xi

L'ensemble de ses mthodes convergent bien vers un minimum condition que la fonction soit convexe !
Le principal inconvnient de ses mthodes est de devoir calculer le gradient de la fonction chaque
itration aussi les mthodes suivantes se passent de cette tape de calcul et sont nettement plus
robustes si la fonction prsente des minima locaux.
50 CHAPITRE 6. DESCRIPTION DES ALGORITHMES UTILISS.

6.2 Simplex de Nelder & Mead.

Parmi les algorithmes d'ordre 0, la mthode d'optimisation Simplex de Nelder & Mead [?], est l'une
des plus anciennes connues et est encore aujourd'hui souvent utilise ( fminsearch de matlab). La
dmonstration de la convergence de cet algorithme dans le cas de fonctions convexes, n'a t ralise
qu'en 1995.
Un Simplex est un tableau de n+1 vecteurs (
i x) de n paramtres (i ). La mthode procde une
srie de :
 Rexions (le volume du Simplex reste constant)
pour dplacer le barycentre du Simplex en direction du point de critre le plus faible.
 Expansions (le volume augmente)
qui tendent le Simplex en direction du point de critre le plus faible.
 Contractions (le volume diminue)
qui lui permettent de passer dans des goulets.

Algorithme

L'algorithme est prsent par l'ordinogramme de la gure 6.5 Le vecteur donnant le critre le plus
grand la k me itration (xkmax ) est projet travers le barycentre des autres vecteurs du Simplex
(xk ).

xr = (1 + )xk xkmax , avec = 1, rexion, (6.1)

La gure 6.1 reprsente la position des vecteurs du Simplex dans l'espace des paramtres (ici reprsent
dans un espace de dimension 3).

X Simplex aprs rexion


Simplex original
B xr
B XXXXX
1  B
 
 B
    
,,
B   B


 HH B HH B ,,

  H H

 HB HB,

Figure 6.1  Image d'un Simplex de 4 vecteurs avant et aprs rexion.


Si la valeur du critre f (xr ), associe au vecteur xr est la plus faible obtenue jusqu' prsent, on tente
une expansion du Simplex dans la direction de la projection. Sinon on conserve xr et on recommence
une nouvelle itration. La procdure d'expansion (voir gure 6.2 est donne par :

xe = xr + (1 )xk , avec = 2, expansion, (6.2)

xe
1
((
Simplex original
B  (( (((
Simplex
 aprs
 expansion
 B   ( 
 B 
B  B


 HH B

  HHB  B

HH B
HHB

Figure 6.2  Image d'un Simplex de 4 vecteurs avant et aprs expansion.


Si la valeur du critre f (xe ) est plus faible que celle associe aux autres vecteurs du Simplex on la
conserve, sinon on conserve xr et l'on passe l'itration suivante.
Si f (xr ) est plus grande que la valeur maximale des vecteurs du Simplex, on tente une compression
(voir gure 6.3) suivant la direction de la projection.
6.2. SIMPLEX DE NELDER & MEAD. 51

xc = xmax + (1 + )xk , avec = 1/2, compression, (6.3)

Simplex aprs compression


Simplex original
B B
 B  B
 B  B
HH B HH B
 xc


1 

` ```
 HHB H`B
H

Figure 6.3  Image d'un Simplex de 4 vecteurs avant et aprs compression.


Si f (xc ) est plus grande que la plus grande valeur associe des autres vecteurs du Simplex, on procde
alors une contraction (voir gure 6.4) de tous les vecteurs du Simplex en direction du vecteur donnant
le critre le plus faible (xkmin ).

ix + xkmin
i
xk+1 =
k
, contraction. (6.4)
2

Simplex aprs contraction


Simplex original
B
  B B
 B H B
HH B
  HB

1
 }
Z
H H
ZB

Figure 6.4  Image d'un Simplex de 4 vecteurs avant et aprs contraction.

Initialisation. L'initialisation du Simplex peut tre quelconque condition que les vecteurs soient
linairement indpendants. L'initialisation classique est de la forme :

xi = x0 + ui , i = 1..n, (6.5)

o :

x0 = : vecteur initial quelconque,
xi = : vecteurs du Simplex,


= : paramtre rel,
ui = :

vecteurs linairement indpendants (en gnral norms).

Les vecteurs ui forment donc une base de l'espace des paramtres.

Critre d'arrt . Le critre d'arrt de l'optimisation est :

max min
s= < (6.6)
max + min
 tant une valeur relle positive choisie au dpart.
Le choix de  est limit par :
 La borne suprieure est lie la valeur approximative du critre optimal. L'application de 6.6 pour
une prcision relative voulue de 1% sur un critre optimal environ gal 10 conduit au choix de
 = 5 103 .
 La borne infrieure est lie la prcision du calculateur. On montre que  doit tre choisi comme
gal la racine carre du plus petit nombre qui peut tre reprsent, ce qui donne, pour des calculs
p
eectus en virgule ottante et en double prcision, une limite infrieure de = 1, 7 10308 =
1, 3 10154 .
52 CHAPITRE 6. DESCRIPTION DES ALGORITHMES UTILISS.

Figure 6.5  Ordinogramme de l'algorithme du Simplex de Nelder et Mead.

6.2.1 Extensions - Amliorations.

Les amliorations sont souvent lies la vitesse de convergence de l'algorithme. Notons parmi les plus
connues :

 La mthode du barycentre pondr (Weighted Centrod) :


Le point rchi est calcul par rexion non pas par rapport l'isobarycentre mais par rapport au
barycentre pondr par l'inverse de la valeur du critre. Ainsi le point rchi tend se rapprocher
des points ayant le plus faible critre.
 La mthode du Simplex super modie (Super Modied Simplex) : : Aprs calcul du critre au point
rchi et du critre du barycentre, nous faisons passer une quation du second degr par les trois
points (original, le barycentre et le point rchi) dont on dtermine l'optimum. C'est ce dernier
point qui sera choisi comme point rchi.

L'introduction d'une variable alatoire dans la recherche de nouveaux points rend l'optimisation plus
globale. Cette amlioration sort dj du cadre des mthodes d'ordre 0 pour entrer dans le cadre des
Algorithmes Gntiques (voir 6.3) ou des mthodes du recuit simul (voir 6.5).
6.2. SIMPLEX DE NELDER & MEAD. 53

Conclusions.

Cette mthode est la plus robuste des mthodes de type analytique. Les capacits d'adaptation du
volume du Simplex ainsi que l'absence de calcul du gradient en font une mthode rapide, peu sensible
aux discontinuits de la fonction de cot et facile mettre en uvre.
54 CHAPITRE 6. DESCRIPTION DES ALGORITHMES UTILISS.

6.3 Algorithmes gntiques.

6.3.1 Introduction.

Dvelopps par Holland en 1970, ces algorithmes sont la transposition algorithmique de la thorie de
Ch. Darwin sur la survivance du plus fort ou la slection naturelle des espces. Selon Ch. Darwin,
les individus les plus faibles disparaissent, seuls les individus les plus forts se reproduisent et parfois
ceux-ci mutent.

6.3.2 Principe des algorithmes gntiques binaires.

Les algorithmes gntiques binaires travaillent sur une entit fondamentale appele chromosome qui
est en fait une chane de bits, l'unit d'information la plus simple. L'utilisation de cette structure
fondamentale lie au calculateur et non pas au processus optimiser permet une grande adaptabilit
aux dirents problmes (combinatoires, optimisation de critres fonction de variables relles). Ainsi
le vecteur de paramtres initial est transform en une chane de bits.

x = (1 , 2 , 3 , , n ) x = (b1 , b2 , b3 , b4 , b5 , , bm ) (6.7)

o :

x : est un individu ou chromosome, (6.8)

bi : sont les gnes. (6.9)

Le passage de l'un l'autre fera l'objet du codage.


L'algorithme travaille sur une population de taille constante (30 300 individus typiquement) qui
volue chaque itration, pour crer une nouvelle gnration.

Initialisation. La population initiale est cre alatoirement.

Slection. La slection des individus qui vont se reproduire est alatoire mais fonction de la valeur
de leur critre associ. L'individu j est slectionn suivant une probabilit p sj .

f ( j x)
psj = Pn i
. (6.10)
i=1 f ( x)

Il existe une autre possibilit : la slection des parents croiser suivant leur rang (aprs classement
de l'ensemble de la population suivant la valeur de leur critre associ) et non la valeur de leur critre
associ. Cette deuxime mthode prsente l'avantage d'empcher une convergence trop rapide vers un
individu nettement meilleur que les autres.

Croisement. Le croisement est l'tape principale de l'optimisation. Cette opration consiste en-
gendrer 2 enfants ayant un chromosome compos de parties des chromosomes des 2 parents.
Exemple avec 2 points de croisement (k) :


parent1 = 001k00110010k1011
enf ant1 = 001k10011100k1011
(6.11)
enf ant2 = 101k00110010k1101
parent2 = 101k10011100k1101

Si la position des points de croisement tait constante, combin la slection, le croisement aurait pour
eet d'optimiser chaque partie de la chane. Mais la position des points de croisement est alatoire, ce
qui participe l'exploration de l'espace total. La probabilit de croisement, c'est--dire la probabilit
que deux individus slectionns pour le croisement subissent eectivement le croisement est en gnral
de pc = 0, 5 0, 7.
6.4. ALGORITHMES GNTIQUES CODS RELS. 55

Mutation. La mutation d'un individu permet de raliser l'aristognse et sert ainsi empcher la
perte de diversit. En eet si au cours de l'optimisation un gne de rang donn avait la mme valeur
pour toute une gnration, tous les descendants conserveraient ce gne. La probabilit de mutation
est en gnral de pm = 0, 01 0, 05.

individu = 001100k1k10001011 individu = 001100k0k10001011 (6.12)

Codage. Les fonctions que l'on veut minimiser tant dans la grande majorit des cas des fonctions
de variables relles, un codage des chanes binaires est ncessaire. Le codage le plus utilis est le codage
binaire virgule xe, par exemple :

1001, 1010 1 23 + 0 22 + 0 21 + 1 20 + 1 21 + 0 22 + 1 23 + 0 24 = 9, 625 (6.13)

La longueur de la chane dpend donc de la prcision souhaite sur les valeurs relles. Certains auteurs
prfrent le code de Gray qui prsente l'avantage d'avoir des codes conscutifs toujours distants de 1,
Mais ce codage diminue l'aptitude l'exploration de l'espace total par le croisement. Ces mthodes
de codage donnent une grande facilit pour imposer des contraintes sur les valeurs d'un paramtre.

6.3.3 Extensions - Amliorations.

Les algorithmes gntiques sont actuellement en pleine expansion. Le principal problme actuel des
algorithmes gntiques tant la faible propension l'exploration de l'espace complet, les recherches
portent en particulier sur ce point.
 Longueur de la chane de gnes dynamique.
 Notion de niche cologique.
 Sur les croisements :
 croisement multipoint (3,4,..) au lieu de 2 comme dcrit prcdemment,
 croisement uniforme qui est un croisement bit bit avec une probabilit d'changer les bits
qui dpend du nombre d'changes dj eectus. Le croisement uniforme augmente la capacit
d'exploration de l'espace total, il est surtout utilis dans le cas de populations faibles (dans le cas
de fortes populations, le nombre lev d'individus assure dj un bonne exploration de l'espace
total).
 Conservation d'une gnration sur l'autre du ou des meilleurs individus.

6.3.4 Conclusion.

Cette mthode est bien adapte la minimisation dans le cas de fonctions fortement non linaires.
La mutation est surtout utile dans le cas d'un critre forte pistasie, le croisement tant plutt
utile dans la phase de dtermination des minima locaux. Les algorithmes gntiques sont une bonne
mthode intermdiaire entre les mthodes analytiques et les mthodes stochastiques.

6.4 Algorithmes gntiques cods rels.

An de rsoudre le problme du codage et de la prcision des paramtres dans les algorithmes gn-
tiques, certains auteurs ont transpos les ides des algorithmes gntiques des gnes de type rel.

6.4.1 Principe.

La squence des oprations reste identique celle des algorithmes gntiques binaires, seules les op-
rations et le codage dirent.
Un chromosome est compos d'un ensemble de gnes rels de la forme :

chromosome = (1 , 2 , 3 , 4 , 5 , , n ), gnes = i , i = 1..n. (6.14)


56 CHAPITRE 6. DESCRIPTION DES ALGORITHMES UTILISS.

Croisement. Le croisement, qui consiste engendrer des descendants par change de gnes, de-
vient :


parent1 = (1 , k2 , 3 , k4 , 5 )
enf ant1 = (1 , k2 , 3 , k4 , 5 )
(6.15)
enf ant2 = (1 , k2 , 3 , k4 , 5 )
parent2 = (1 , k2 , 3 , k4 , 5 )

ou


parent1 = (1 , k2 , 3 , k4 , 5 )
enf ant1 = (1 , k 2 +2 3 +3
2 , 2 , k4 , 5 )
2 +2 3 +3 (6.16)
enf ant2 = (1 , k 2 , 2 , k4 , 5 )
parent2 = (1 , k2 , 3 , k4 , 5 )

Mutation. L encore, la mutation consiste empcher la perte de matriel gntique. Transpos


au codage rel, cela revient ajouter un bruit sur un ou plusieurs chromosomes choisis alatoirement.

i0 = i p i . (6.17)

o p est un nombre alatoire de moyenne nulle.


Renders propose une mutation dont l'amplitude dcrot avec le temps, de la forme suivante :

  5 
1 kk
i0 = i + (imax i ) 1 r 0 si b = 1,
  5  (6.18)
0 1 kk
i = i + (imin i ) 1 r 0 si b = 0,

o :
imax : valeur maximum du paramtre i ,
imin : valeur minimum du paramtre i ,
r : nombre rel alatoire donnant l'amplitude de la mutation,
k : indice de la gnration courante,
k0 : indice de la dernire gnration subissant une mutation,
b : nombre binaire alatoire donnant le sens de la mutation.
Par analogie avec les algorithmes de type recuit simul (voir 6.5), l'amplitude des mutations dcrot
au fur et mesure que l'algorithme converge.

Amliorations. An d'amliorer la vitesse de convergence, il est courant de mettre en uvre une
combinaison de plusieurs mthodes d'optimisation : algorithmes gntiques et mthodes analytiques.
L'algorithme gntique recherche les minima locaux et la mthode analytique dtermine rapidement
la valeur du minimum de la fonction dans chaque minimum local.

6.4.2 Conclusion.

Les algorithmes gntiques rels prsentent l'avantage de ne pas tre limits par le codage des variables
relles et la forme gnrale de l'algorithme permet un passage ais des algorithmes gntiques vers des
mthodes de type Simplex.
6.5. MTHODE DU RECUIT SIMUL 57

6.5 Mthode du Recuit simul

6.5.1 Introduction

La mthode du recuit simul ( Simulated Annealing) repose sur un principe de la thermodynamique :


la loi de refroidissement des mtaux. Un atome donn est anim par un mouvement brownien dont
l'amplitude dpend de la temprature. Lorsque la temprature dcrot ce mouvement s'estompe et
l'atome tend se positionner dans un tat d'nergie minimale.

6.5.2 Principe.

Le problme pos est la dtermination d'un vecteur x qui minimise le critre (x). La mthode du
recuit simul la plus simple rsout le problme par un processus itratif et stochastique comme suit.
Aprs une initialisation alatoire du premier point de calcul x0 , l'algorithme gnre, chaque itration,
un pas alatoire x suivant une loi de probabilit de type gaussienne g(x).

1 (x)2
g(x) = e 2T (k) (6.19)
(2T (k))n/2
Le nouveau point de calcul est :
xk+1 = xk + x. (6.20)

Deux cas peuvent se prsenter :

1. Le nouveau point est meilleur : (xk+1 ) < (xk ),


le point est accept et le processus recommence.

2. Le nouveau point est plus mauvais : (xk+1 ) > (xk ),


le nouveau point peut tre accept suivant une probabilit :

 
(xk+1 ) (xk )
pk = exp (6.21)
T (k)
A chaque itration la temprature T (k) diminue suivant la loi :

T0
T (k) = . (6.22)
ln(1 + k)
Une valeur minimale de T0 est propose par Hajcek qui assure une convergence statistique vers un
minimum global.
Ainsi lorsque la temprature est grande, l'algorithme peut quitter un minimum local, soit par un saut
direct, soit par un point intermdiaire de critre plus grand. Au fur et mesure que la temprature
dcrot, la longueur du pas diminue et la probabilit d'accepter un pas x qui fait augmenter le
critre dcrot. L'algorithme nit par gnrer des pas de faible amplitude et n'accepter pratiquement
plus de pas qui font augmenter le critre, les pas qui le font diminuer tant toujours accepts. Cette
mthode permet statistiquement de trouver un minimum global mais demande un trs grand nombre
d'itrations.

6.5.3 Extensions - Amliorations.

Par extension, de nombreuses mthodes se rapportent celle-ci du moment que la probabilit d'ac-
ceptation du pas est de la forme de celle prsente par l'quation (6.21).
Parmi les amliorations proposes dans la littrature, notons celle appele : Fast Annealing o g(x)
et T (k) sont choisis tels que :

T (k)
g(x) = (n+1)/2
(6.23)
((x)2 + T (k)2 )
58 CHAPITRE 6. DESCRIPTION DES ALGORITHMES UTILISS.

et
T0
T (k) = (6.24)
k
L'auteur propose donc une loi de dcroissance plus rapide, tout en conservant la mobilit du point de
calcul.
D'autre part, notons aussi la modication de [?] qui introduisent dans la mthode du Simplex une
probabilit d'acceptation du pas. Cet algorithme prsente l'avantage de converger vers l'algorithme
classique du Simplex (voir [?]) lorsque la temprature dcrot.

6.5.4 Mise en uvre du recuit simul.

Pour la mise en uvre de la mthode du recuit simul, nous avons choisi l'algorithme propos par
[?].
L'algorithme prsente trois phases distinctes mais imbriques :

1. lorsque la temprature est grande vis--vis du critre, pratiquement tous les dplacements sont
accepts, le Simplex s'agrandit et explore l'espace,

2. lorsque la temprature est du mme ordre de grandeur que le critre, le Simplex converge vers
les grandes valles tout en acceptant des dplacements qui augmentent le critre, ce qui lui
permet de sortir des rugosits de celui-ci,

3. lorsque la temprature est faible vis--vis du critre, l'algorithme dtermine le minimum local
qui, selon toute probabilit, est le minimum global.

Choix de la temprature. Il est ncessaire de choisir une temprature initiale T0 et une loi de
dcroissance au cours du temps. B. Hajcek a dmontr qu'une dcroissance de la forme :

T0
T (k) = (6.25)
ln(1 + k)

associe une probabilit d'acceptation du pas de la forme :

 
(xk+1 ) (xk )
pk = exp (6.26)
T (k)

assure statistiquement la dtermination d'un minimum global condition de choisir T0 suprieur au


maximum de profondeur de tous les minima locaux, minimum global exclu.
Le maximum de profondeur de tous les minima locaux est impossible dterminer, c'est pourquoi
certains auteurs [?] prconisent l'emploi d'une valeur largement suprieure une approximation de ce
second membre.
Nous avons born cette profondeur maximale par :

T0 = 10 la valeur maximale du critre l'initialisation, (6.27)

la valeur minimale du critre tant minimise par 0.


Bibliographie

Liens

http://www.mathworks.com/products/fuzzylogic.html

http://www.mathtools.net/MATLAB/Fuzzy_Logic/index.html

http://www.dbai.tuwien.ac.at/marchives/fuzzy-mail/

http://europa.eu.int/comm/research/rtdinfo/fr/24/02.html

http://www.gala.univ-perp.fr/~polit/chap0.html

http://www.eru.ulaval.ca/ptt15225

http://vcampus.u-strasbg.fr/uticeweb/mhiri/projet_V2

http://www.mathworks.fr/products/controldesign/modanal.shtml

59
60 BIBLIOGRAPHIE
Chapitre 7

Travaux dirigs

TDAO : Illustration de plusieurs aspect de l'identication des systmes

7.1 Strecj - Broida - Programmation non linaire

7.1.1 Strecj - Broida

 Ouvrez le chier simulink intitul "TDAOident.mdl", lancez la simulation.


 Appliquez la mthode de Broda puis celle de Strecj et implantez-les.
 Relancez la simulation, et observez les qualits des deux modles.
 En utilisant les Process Models de l'interface ident de matlab, retrouver les modles dtermins
prcdement (Strejc et Broda). Le processus identier est en fait un systme du troisime ordre
sans zros ni retard, dterminez l'aide des Process Models de l'interface ident un modle du systme.
Comparer les valeurs numriques obtenues aux valeurs vraies.
 Pour allez plus loin, synthtisez un correcteur PI sur le modle de Broda puis implantez-le sur le
systme rel. Observer la qualit de ce contrle pourtant calcul sur un modle ostensiblement
loign de la ralit.

7.1.2 Programmation non linaire

 Ouvrez le chier "pnl.m" et comprenez le contenu.


 Dans la fentre de commande matlab, tapez "save ES Uin tout Yout" puis,
"X=fminsearch('pnl',[-1 -1 -1 1])" (tapez "help fminsearch" et lisez la doc.)
 la valeur de X prsente le rsultat sous la forme "3 ples, gain"
 implantez ce nouveau modle et relancez la simulation.

7.1.3 Limites de la Programmation non linaire

 lancez "X=fminsearch('pnl',[0 0 0 0])", comparez les solutions.


 Dans le chier "pnl.m" changez l'utilisation de x0 en introduisant des zros et plus de ples.

7.2 Identication des systmes instables ou intgrateurs

Ouvrez le chier simulink intitul "instable.mdl". Ce systme est instable mais stabilis par le gain
de 0.1 et le bouclage. Les entres - sorties sont dans le workspace de Matlab et s'importent facilement
dans l'interface ident (Tapez "ident" dans la fentre de commande de Matlab), voir gure 7.1.
Note : les modles calculs dans "ident" s'exportent vers le workspace par glisser dplacer dans la case
to workspace puis du workspace vers simulink par une commande comme :
[A1,B1,C1,D1]=ssdata(amx2122)
 Observez les caractristiques spectrales de la SBPA et comparez celles du signal carr.

61
62 CHAPITRE 7. TRAVAUX DIRIGS

Figure 7.1  Comment importer des variables dans ident de Matlab.

 Aprs avoir annul le bruit, importez les donnes puis calculez un modle de type ARX752.
 observez la qualit de la simulation.
 observez les ples et les zros de ce modle.
 dduisez-en un modle plus simple et tout aussi correct.
 vrier que vous obtenez bien les coecients du modle en boucle ferme.

 Observez la dirence d'estimation des paramtres du systme en fonction de :


 la puissance de bruit (0, 0.01 et 0.0001)
 les dirents modles (en particulier, ARX, ARMAX, BOX-JENKINS)
 les signaux utiliss pour l'estimation (carr ou SBPA)
 la position de la source d'excitation (entre de la boucle ou juste devant le systme identier)
 Reprenez ce qui prcde en prenant comme entre la sortie du correcteur.

7.3 Choix de la source d'excitation

L'objectif est de dterminer la bonne squence binaire pseudo-alatoire pour exciter correctement le
systme.

 Ouvrez le chier "sbpa_ident.mdl"


 Le rglage de la priode de la SBPA s'eectue en dclarant la variable TeSBPA=1 (ici 1 seconde).
 Dterminer un premier modle en utilisant un process model avec 2 ples simples.
 Dduisez-en une approximation des constantes de temps max et min du systme.
 Dterminer une SBPA susceptible de bien exciter le systme dans toute la plage de frquences que
vous voulez identier.
 Identier nouveau le systme.

7.4 Les modles paramtriques

Il s'agit de prdire le cours d'une action du CAC40 partir des cours des autres actions.

 Excuter le chier "trait_don".


 Importez les variables "entree" comme entre et "sortie" comme sortie.
 Calculez et observez les rponses des dirents modles (ARX, ARMAX, BOX-JENKINS...).
 En particulier, notez l'erreur de prdiction 5 pas en avance.
 Peut-on devenir riche ? Si oui, comment ?
 Valider vos modles l'aide des donnes 'entreeV" comme entre et "sortieV".
7.5. CAS PRATIQUE 63

7.5 Cas pratique

Le systme modlis dans le chier "MEMSswitch.mdl" contient un modle "raliste" d'un interrupteur
fabriqu en technologies MEMS que l'on dsire utiliser comme un bras de levier command en position.
L'objectif est de dterminer un modle paramtrique du systme.
 L'ordre de grandeur de l'entre est de 50V.
 Le comportement est du type second ordre.
 Les caractristiques dynamiques varient un peu en fonction de la tension de commande continue.
La mise en place des donnes physiques du systmes est faite par le chier "donneesMEMS.m".
Dbrouillez-vous !
64 CHAPITRE 7. TRAVAUX DIRIGS
Deuxime partie

Annexes

65
JANVIER 2004 67

3me anne
Option automatique

Examen d'Identication et Commande Floue

Cet examen consiste modliser et commander le systme de commande d'altitude d'un avion. Il
s'agit dans un premier temps de dterminer un modle simple du systme de faon graphique, puis de
commander le systme par un rgulateur ou. Enn, le systme tant corrig par ce rgulateur ou
on dterminera un modle paramtrique plus prcis.

1 Mthodes graphiques

Step Response Step Response


From: U(1) From: U(1)
5 0.35

0.3
4

0.25

3
0.2
Amplitude

Amplitude
To: Y(1)

To: Y(1)

2 0.15

0.1
1

0.05

0
0

1 0.05
0 1 2 3 4 5 6 0 0.5 1 1.5 2 2.5

Time (sec.) Time (sec.)

Figure 2  Rponses du systme un chelon : gauche en boucle ouverte, droite en boucle ferme.

c + l correcteur
u systme
s

Figure 3  Identication en boucle ferme


1. La rponse un chelon du systme en boucle ouverte est donne sur la gure 2 (gauche). En
faisant l'hypothse que le systme est un systme du premier ordre avec un retard pur, donnez
les valeurs numriques d'un tel modle.

2. Toujours sur cette mme gure appliquez la mthode de Strejc an d'obtenir un modle plus
prcis.

3. Ce mme systme est boucl par un retour unitaire et un gain de 0,1 en guise de correcteur
comme indiqu sur la gure 3. Sa rponse l'chelon unit est donne sur la gure 2(droite).

(a) Dterminer un modle du systme en boucle ferme.

(b) En ngligeant le retard pur, dduisez-en un modle en boucle ouverte.

4. Finalement, on insre un gain variable dans la boucle et il s'avre que le systme oscille pour un
gain k = 1.

(a) Ce rsultat est-il concordant avec vos modles (raisonnement qualitatif !) ?


68 ANNEXE .ANNALES

(b) Au vu des rsultats prcdents, proposez un modle trois constantes de temps

5. Ce systme prsente de faon vidente un zro dit instable !

(a) Proposez alors un modle du systme incluant ce zro instable.

(b) Donnez une valeur numrique trs approche (pratiquement sans calcul) de ce zro agr-
ment d'une ligne de commentaire sur ce choix.

2 Commande par contrleur ou

Finalement, le systme prcdent est command par un contrleur ou.

() () (u)
N Z
6 P N Z
6 P NG N Z
6 P PG


-
- u -
-20 0 20 -10 0 10 -10 -5 0 5 10

Figure 4  Fuzzication des variables


\ N Z P
oprateurs logiques : ET = min OU = max
N NG N Z
avec mthode d'infrence : somme-produit
Z N Z P
dfuzzication : moyenne des maximums.
P Z P PG

1. En supposant = 10 et = 0, calculez la sortie u du contrleur.

2. Toujours en supposant = 0, calculez la sortie u du contrleur en fonction de la valeur de .


Tracez la courbe u = f () en prcisant les points importants et la forme de la courbe entre ses
points (droites, paraboles, ...)

3. Mme question mais en utilisant les hypothses suivantes :

 oprateurs logiques : ET = min OU = max


 mthode d'infrence : max-min
 dfuzzication : centre de gravit

3 Modles paramtriques

Le systme tant corrig par le rgulateur ou prcdent, on dcide de dterminer un modle param-
trique du systme corrig. Dans ce qui suit, et quels que soient vos rsultats prcdents, on supposera
que le systme prsente :

 3 constantes de temps de l'ordre de : 0,1, 0,05 et 0,02

1. Calculer la frquence d'chantillonnage ncessaire pour pouvoir identier correctement ces trois
constantes de temps.

2. Calculer la longueur de la squence binaire pseudo alatoire en fonction de cette frquence


d'chantillonnage pour bien identier le gain du systme.

3. Quelle est alors le temps d'excitation du systme ?


3. MODLES PARAMTRIQUES 69

4. On opte pour une mthode d'estimation des paramtres dite de la matrice instrumentale, dnie
par :




, Paramtres estims ;

Z,
Matrice instrumentale ;
T 1 T
= (Z X) Z y avec y, Vecteur des sorties mesures ;

X, Construite partir du jeu d'E/S (y = X + e) ;




e, Rsidus.

Montrez que pour que cet estimateur soit sans biais, il faut que

E[Z T X] 6= 0
E[Z T e] = 0
70 ANNEXE .ANNALES

3me anne
Option automatique

Corrig de l'Examen d'Identication et Commande Floue

1 Mthodes graphiques

Step Response Step Response


From: U(1) From: U(1)
5 0.35

0.3
4

0.25

3
0.2
Amplitude

Amplitude
To: Y(1)

To: Y(1)
2 0.15

0.1
1

0.05

0
Ta
T
1 0.05
Tu
0 1 2 3 4 5 6 0 0.5 1 1.5 2 2.5

Time (sec.) Time (sec.)

Figure 5  Rponses du systme un chelon : gauche en boucle ouverte, droite en boucle ferme.
1. Modle du premier ordre
On mesure T = 0, 3s et = 1, 9 0, 3 = 1, 6s le modle est donc :

AeT p 5e0,3p
G(p) = =
1 + p 1 + 1, 6p

2. Modle Strejc en boucle ouverte


On mesure T u = 0, 3s et T a = 1, 6s. En appliquant la mthode :

T u/T a = 0, 1875 n = 2
T a/ = 2, 718 = T a/2, 718 = 0, 5887
T u/ = 0, 282 T u0 = 0.1660
T r = T u T u0 T r = 0.134

d'o le modle :
AeT rp 5e0,166p
Gs (p) = =
(1 + p)n (1 + 0, 5887p)2
3. En boucle ferme

(a) Modle du systme en boucle ferme,


On mesure T u = 0, 33s et T a = 1s. En appliquant la mthode :

T u/T a = 0, 330 n = 4
T a/ = 4, 463 = T a/4, 463 = 0, 2241
T u/ = 1, 425 T u0 = 0, 319
T r = T u T u0 T r = 0.01
2. COMMANDE PAR CONTRLEUR FLOU 71

d'o le modle :
AeT rp 0, 34e0,01p
Gs (p) = =
(1 + p)n (1 + 0, 224p)4
(b) Modle en boucle ouverte dduit :

A/k
Gs (p) =
4 p4 + 4 3 p3 + 6 2 p2 + 4 p + 1 A

4. Finalement, on insre un gain variable dans la boucle et il s'avre que le systme oscille pour un
gain k = 1.

(a) A priori oui, les deux modles obtenus sont susceptibles d'tre instables dans une boucle
ferme si le gain est susamment grand.

(b) le plus simple est de reprendre le modle obtenu par la mthode de Strejc sur la boucle
ouverte :
AeT rp A
Gs (p) = n
' 2
(1 + p) (1 + p) (1 + T rp)
5. Introduction du zro instable

(a) Encore une fois, en reprenant le modle prcdent et en dveloppant au premier ordre
l'exponentielle, on obtient :

AeT rp A(1 T rp)


Gs (p) = n
'
(1 + p) (1 + p)2

(b) T r = 0.166. En fait pour tenir compte des termes que l'on nglige on augmente "un peu"
la valeur de Tr. Ainsi T r0 = 1, 5T r donne de bien meilleurs rsultats.

2 Commande par contrleur ou

1. Si = 10 et = 0, la sortie vaut 2,5.

2. En supposant = 0, calculez la sortie u du correcteur en fonction de


u
6
5

2,5

-20 -10 10 20
-

-2,5

-5

Figure 6  u = f ()(courbe exagre !)

3. avec :
 oprateurs logiques : ET = min OU = max
 mthode d'infrence : max-min
 dfuzzication : centre de gravit
72 ANNEXE .ANNALES

3 Modles paramtriques

Le systme prsente 3 constantes de temps de l'ordre de : 0,1, 0,05 et 0,02.

1. Une SBPA est un bruit blanc sur 0, 3fe donc :

1 1 1
0, 3fe fe = = 26, 5Hz
2min 0, 3 2min 0, 3 2 0.02

2. Le plateau maximum est de N Te avec Te = 1/fe et 2N 1 la longueur de la SBPA.


Il faut donc que :

N Te 3 5max N 3 5fe max = 3 5 26, 5 0, 1 = 8 13

N = 10 semble un bon compromis.

3. Le temps d'excitation est :

Texcitation = (2N 1)Te = 1023Te = 38, 6s

mais en gnral on envoie deux squences conscutives pour viter de prendre en compte le
transitoire au dbut de la squence, donc Texcitation ' 77, 2s
4. Mthode de la matrice instrumentale :




, Paramtres estims ;

Z,
Matrice instrumentale ;
T 1 T
= (Z X) Z y avec y, Vecteur des sorties mesures ;

X, Construite partir du jeu d'E/S (y = X + e) ;




e, Rsidus.


T 1 T
= (Z X) Z (X + e)
= + (Z T X)1 Z T e

pour que E[ ] = , il faut que :
E[(Z T X)1 Z T e] = 0
donc que :

E[Z T X] 6= 0
E[Z T e] = 0
1. MTHODES GRAPHIQUES 73

3me anne
Option mcatronique

Examen d'Identication

Cet examen consiste modliser un bras de robot prsentant deux types de drives lentes. En premier
lieu, la constante de temps principale varie dans le temps puis le systme prsente une drive lente de
la valeur moyenne de sortie.

1 Mthodes graphiques

40 10

9
35

8
30
7

25
6

20 5

4
15

3
10
2

5
1

0 0
0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10

Figure 7  Rponse du systme un chelon au dbut de l'identication (gauche) et aprs une heure
(droite).

14

12

10

4
0 10 20 30 40 50 60 70 80 90 100

Figure 8  Rponse du systme une excitation de type SBPA


74 ANNEXE .ANNALES

2 Modles de Strecj

1. La rponse un chelon du systme en boucle ouverte est donne sur la gure 7(gauche). En
faisant l'hypothse que le systme est un systme du premier ordre avec un retard pur, donnez
les valeurs numriques d'un tel modle.

2. Toujours sur cette mme gure appliquez la mthode de Strejc an d'obtenir un modle plus
prcis.

3. Appliquez Strecj sur la gure 7(droite) et dduisez-en un nouveau modle du systme.

4. En faisant l'hypothse d'une variation linaire de la constante de temps dominante et l'aide


des deux modles prcdents, proposez un modle du systme H(p, t)

3 Modles ARX

An d'tudier plus prcisment les autres constantes de temps du systme, vous dcidez de soumettre
le systme une squence binaire pseudo-alatoire. Le rsultat est donn g. 8

1. Rappeler le principe de calcul des modles ARX et la formule applique pour obtenir une esti-
mation des paramtres du systme.

2. La premire tentative de modlisation ARX est trs mauvaise ! Quels sont les deux phnomnes
qui "empchent" d'avoir un modle ARX correct.

3. An de compenser la drive lente de la valeur moyenne, vous envisagez deux mthodes

(a) Boucler le systme, et faire une identication en boucle ferme,

(b) Enlever cette drive par un traitement numrique hors ligne (un peu comme on enlve la
valeur moyenne).

4. Proposez un correcteur simple pour le bouclage du systme

5. Donnez la relation entre y(t) valeurs de la gure 8 et y1 (t) qui reprsente y(t) sans la drive. Les
valeurs numriques approches seront prises sur la gure 8.

6. Aprs calcul des modles ARX, les modles restent passablement mauvais avec un lger avantage
pour le modle calcul partir des valeurs en boucle ferme, pourquoi ?

7. Les mthodes prcdentes ne donnant pas de modles susants pour l'application envisage,
proposez une mthode qui permet d'identier ce systme malgr toutes ses imperfections.
4. FUZZIFICATION DES VARIABLES 75

3me anne
Option mcatronique

Examen de commande oue

Cet examen est destin dterminer un estimateur ou de pluie en fonction de la pression atmosph-
rique, du taux d'hygromtrie et de la temprature. Les valeurs numriques seront estimes grossire-
ment partir des graphiques donns o les abscisses sont en jours.

4 Fuzzication des variables

1. Aprs avoir observ les relations entre quantit de pluie et les variables d'entre en gure
??(pression atmosphrique, taux d'hygromtrie, temprature et leurs drives ) peu de temps
avant le dbut des prcipitations, proposez un choix d'ensembles ous pertinents. justiez bri-
vement le choix du nombre d'ensembles ous par variable et la forme de ses ensembles.

2. La forme de la variable de sortie est donne gure 9. Etablissez les rgles d'infrence pour chaque
prcipitation.

L'estimateur s'avre tre trop cher (trop de capteurs) et votre cahier des charges devient donc "esti-
mateur de pluie uniquement fonction de la pression atmosphrique et de ses variations".

1. proposez, dans ce cas, les rgles d'infrence sous la forme d'un tableau :

p \ p N Z P
N
Z
P

2. Proposez une mthode pour chaque point suivant :


 oprateurs logiques : ET = ? OU = ?,
 mthode d'infrence,
 dfuzzication.

3. Aprs un premier test en simulation il s'avre que votre estimateur prdit correctement dans
70% des cas mais le service marketing vous explique qu'il serait bon de donner outre le fait qu'il
pleuve ou pas une estimation de la probabilit d'orage. L'orage est probable s'il y a une baisse
de 1 2 hPa de la pression atmosphrique en une heure. Proposez un deuxime estimateur ou
donnant cette indication.

4. Question subsidiaire pour ceux qui ont suivit le cours d'identication. D'aprs vous, un modle
de type ARX serait-il meilleur ou moins bon pour ce type de prvisions ?

fonction d'appartenance
6
beau variable pluie

pluviomtrie
-
0 30 60 100

Figure 9  Fuzzication de la variable de sortie


76 ANNEXE .ANNALES

Figure 10  Donnes mtorologiques St-Philibert (abscisses en jours)


1. MODLE DE CONNAISSANCES 77

3me anne
Janvier 2006
Option mcatronique

Examen d'Identication des systmes


Tous documents autoriss

Cet examen consiste modliser un systme thermique particulirement pnible modliser. Les
questions suivantes sont lies mais peuvent tre traites dans le dsordre.

1 Modle de connaissances

La mise en quation du comportement dynamique du systme donne le schma linaire donn en


gure 11 avec les valeurs suivantes : R2 = 0, 2; R1 = 2, 1; C = 1; L = 1. 1 P est la puissance thermique
introduite dans le systme et T est la temprature que l'on veut asservir.

R2 L

R1
+
T
C
P

Figure 11  Modle thermique du systme.


T (p)
1. Dterminer la fonction de transfert linaire continue (en p) du systme
P (p) .
2. Calculer le facteur d'amortissement m du systme.

3. Ce systme s'avre trop peu amorti, on cherche alors augmenter cet amortissement en agissant
sur la seule variable R1 (rsistance thermique entre l'intrieur et l'extrieur de la chambre).
Comment doit varier R1 ?

2 Modle non-paramtrique

Le modle prcdent tant particulirement grossier, vous dcider de soumettre le systme un chelon
unit dmarrant l'instant t = 0.

1. La rponse un chelon du systme en boucle ouverte est donne sur la gure 12. En faisant
l'hypothse que le systme est un systme du second ordre avec un retard pur, donnez la forme
gnrale du modle.

2. Donnez les valeurs numriques des dirents coecients du modle.

1. Les inductances thermiques n'existent pas ! Il s'agit en fait d'un systme actif modlisable en premire approxi-

mation par une inductance.


78 ANNEXE .ANNALES

1.4

1.2

1
0.91

0.8

0.6

0.4

0.2

0
0 2 4 6 8 10 12 14 16 18 20

Figure 12  Rponse indicielle du systme.


bi
y
H(z) m i
vi
ui

Intercorrlateur

Figure 13  Identication par intercorrlation.

3 Modle par intercorrlation

Les deux modles prcdents ayant donn quelques nouvelles connaissances sur le systme, vous dcidez
de mettre en uvre une identication paramtrique fonde sur une identication par intercorrlation.
Dans cette partie les rponses demandent 1 ligne de calcul et une ou plusieurs interprtations du
P
rsultat. Pour les pinailleurs mathmatiques, et ils ont raison de l'tre, on intervertira les signes et
lim sans dmonstration.


X
y(i) = (h(j) u(i j)) + b(i)
j=0

avec :

y(i) = la sortie l'instant i


h(j) = la squence de pondration

u(i) = l'entre l'instant i


b(i) = le bruit l'instant i
3. MODLE PAR INTERCORRLATION 79

Par dnition la fonction d'intercorrlation entre deux signaux y et u est :

N
1 X
Cyu (k) = lim y(i) u(i k)
N 2N + 1
i=N

De la mme faon, la fonction d'autocorrlation d'un signal u est :

N
1 X
Cuu (k) = lim u(i) u(i k)
N 2N + 1
i=N

2
1. Quel est le lien entre H(z) et h(i) (cours des annes prcdentes)

2. Calculez Cyu (k) en fonction de l'entre, du systme et du bruit.

3. Introduisez dans ce rsultat la fonction d'autocorrlation de l'entre.

4. Montrez que si l'entre et le bruit ne sont pas corrls on obtient :


X
Cyu (k) = h(j) Cuu (j k)
j=0

5. Montrez que si l'entre u est un bruit blanc parfait alors :

Cyu (k) = A h(k)

ou A est un coecient li la puissance du bruit.

6. Que proposez vous pour raliser ce bruit blanc ?

7. La rponse du systme est donne en gure 14. Est-elle compatible avec celle prsente en gure
12.

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0.1

0.2

0.3
0 2 4 6 8 10 12 14 16 18 20

Figure 14  Rponse de l'intercorrlation entre-sortie du systme.


1
2. Un peu d'aide ? Calculer la sortie yk pour k variant de 0 5 de G(z) = z0,5
soumis (z)
80 ANNEXE .ANNALES

4 Filtrage des mesures

Tout comptes fait, vous dcider de procder une identication paramtrique classique, et vous lancez
une campagne de mesures entre-sortie du systme. Malheureusement, le stagiaire qui devait faire cela,
trouvant que le signal de sortie tait trop bruit n'a rien trouv de plus malin que de ltrer les donnes
de la sortie avec un ltre passe bas.

1. Que pouvez-vous faire pour utilisez au mieux ces donnes ?

2. Essayer de le dmontrer.

3. Le premier rsultat de calcul d'un modle ARX 10 10 3 est donn en gure 15. Quel modle
tenteriez-vous ensuite ?

Poles (x) and Zeros (o)

0.8

0.6

0.4

0.2

0.2

0.4

0.6

0.8

1 0.5 0 0.5 1 1.5

Figure 15  Ples et zros du modle ARX 10 10 3.


1. MODLE DE CONNAISSANCES 81

3me anne
Janvier 2006
Option mcatronique

Corrig de l'Examen d'Identication

1 Modle de connaissances

1. Fonction de transfert linaire continue

T (p) R1
=
P (p) R1 LCp2 + (L + R1 R2 C)p + R1 + R2

2. Facteur d'amortissement
1 L + R1 R2 C
m= p
2 (R1 + R2 )R1 LC

3. R1 doit diminuer, il faut donc augmenter les pertes.

2 Modle non-paramtrique

1. Forme gnrale du modle.


Ae p
H(p) = p2
2m
1+ w0 p + w0 2

2. Coecients du modle.
A = 0, 91
0 = 1, 04
m = 0, 32
= 2

est "visible" mais s'obtient par calcul en appliquant :

m
D% = 100e 1m2 donne m
Tpseudo-priode = w 21z 2 donne w0
0
tpic tpic = tpic donne
mesur calcul mesur w0 1z 2

3 Modle par intercorrlation

1. h(i) est la squence de pondration de la fonction de transfert H(z).


 En temporel, tout systme est un convoluteur : sa sortie est le produit de convolution entre
l'entre et sa squence de pondration.
 En z, cette convolution est transforme en un produit (c'est pour cela qu'on utilise les trans-
forme de Laplace et en z !).
La squence de pondration s'obtient facilement en calculant la sortie du systme soumis une
impulsion de Dirac.

2. Cyu (k)
82 ANNEXE .ANNALES

N
1 X
Cyu (k) = lim y(i) u(i k)
N 2N + 1
i=N
N
1 X X
= lim u(i k) h(j) u(i j) + b(i)
N 2N + 1
i=N j=0
N N
X 1 X 1 X
= h(j) lim u(i k)u(i j) + lim b(i) u(i k)
N 2N + 1 N 2N + 1
j=0 i=N i=N
N N
X 1 X 1 X
= h(j) lim u(i)u(i (j k)) + lim b(i) u(i k)
N 2N + 1 N 2N + 1
j=0 i=N i=N

3. Introduisez dans ce rsultat la fonction d'autocorrlation de l'entre


X
Cyu (k) = h(j) Cuu (j k) + Cbu (k)
j=0

4. Pour que :

X
Cyu (k) = h(j) Cuu (j k)
j=0

il faut donc que


Cbu (k) = 0
Ce qui est le cas si l'entre est le bruit sont dcorrls.

5. Si l'entre u est un bruit blanc parfait alors

N
1 X
Cuu (k) = lim u(i) u(i k) = A(k)
N 2N + 1
i=N

Par dnition d'un bruit blanc, sa fonction d'autocorrlation est une impulsion de Dirac et donc :

Cyu (k) = A h(k)

ou A est la "puissance" du bruit, en fait c'est le carr de sa valeur ecace.

6. Que proposez vous pour raliser ce bruit blanc ? Une squence binaire pseudo alatoire !

7. Oui, l'une est la rponse indicielle (entre = chelon), l'autre la rponse impulsionnelle (entre
= impulsion). Observez la pseudo-priode, pour le gain, il faut un peu plus de calcul...

4 Filtrage des mesures

1. Que pouvez-vous faire pour utilisez au mieux ces donnes ?


Filtrer les entres avec le mme ltre !

2. Essayer de le dmontrer.
Bonne chance ! (une dmonstration est donne dans le Ljung).

3. On observe facilement que 6 ou 8 zros compensent pratiquement 6 ou 8 ples. La prochaine


tentative serai donc ARX 4 4 3 ou ARX 2 2 3
1. MODLE NON-PARAMTRIQUE (5 PTS) 83

3me anne
Janvier 2007
Option mcatronique

Examen d'Identication des systmes


Tous documents autoriss

1 Modle non-paramtrique (5 pts)

Figure 16  Rponse du systme un crneau unit de dure t = 0, 5s.


1. Identier le systme avec le mthode de Strejc, comme si la rponse tait la rponse un chelon.

2. Dduisez-en la fonction de transfert du systme.

2 Modle paramtrique (5 pts)

Un systme sans bruit soumis une rampe unit donne la sortie suivante.

k 0 1 2 3 4 5
uk 0 1 2 3 4 5
yk 0 0 7 7 42 14
On se propose d'identier un modle paramtrique de la forme

yk = a1 yk1 + b1 u2k1
1. Ecrivez la relation prcdente pour k=4 et k = 3.
2. Montrez que ces deux quations peuvent se mettre sous une forme matricielle de la forme :

y = X + e

3. Dterminez les coecients a1 et b1 .


84 ANNEXE .ANNALES

3 Moindres carrs rcursifs (5 pts)

L'estimation de paramtres par la mthode des moindres carrs simples prsente un inconvnient
majeur, la ncessit de calculer l'inverse d'une matrice, ce qui est long et parfois impossible sur un
microcontrleur. On se propose travers cet exercice de dterminer une forme rcursive de cette
estimation.
A l'instant N on peut crire :


a1

yN

yN 1 yN 2 . . . yN n uN . . . uN p

a2 eN
yN 1 yN 2 yN 3 y u uN p1
.
eN 1
N n1 N 1

.

. eN 2

yN 2 . .

. .

yN 3 . . uN 2 uN p2

.

an

yN 3 .

= + . (1)

. .

. . b0

. . yn+1 . uN p3

. .

. .

b1 .

.

.

yn+2 yn+1 yn . uN p .
en+2

..

yn+1 yn yn1 . . . y1 un+1 en+1
bm

sous forme condense :

YN = XN N + EN

dont l'estimation optimale est :


T
bN = (XN XN )1 XN
T
YN

1. Ecrivez la forme (1) l'instant N +1 en utilisant

     
xN +1 yN +1 eN +1
XN +1 = , YN +1 = et EN +1 =
XN YN EN

2. Donnez le vecteur ligne xN +1


N + 1 s'crit T
bN +1 = (XN 1 T
3. L'estimation l'instant : +1 XN +1 ) XN +1 YN +1 , crivez bN +1 en
fonction de XN , xN +1 , YN , yN +1 .
Note :
 T  
a a
= AT A + aT a
A A

4. Sachant que :

(A + BCD)1 = A1 A1 B(C 1 + DA1 B)1 DA1

Montrez que :

 1 
T
XN )1 (XN
T
XN )1 xTN +1 1 + xN +1 (XN
T
XN )1 xTN +1 T
XN )1

bN +1 = (XN xN +1 (XN
T
YN + xTN +1 yN +1

XN

5. En posant
T X )1 xT
a = 1 + xN +1 (XN N N +1 , montrez que :

 
T
bN +1 = bN + (XN XN )1 xTN +1 a1 yN +1 xN +1 bN (2)

 
6. Que reprsente le terme yN +1 xN +1 bN , interprtez alors l'quation (2)
4. MODLISATION PARAMTRIQUE (5 PTS) 85

Figure 17  Modle issus d'un modle de connaissances

4 Modlisation paramtrique (5 pts)

Un premier modle issu d'un modle de connaissance, est donn en gure 17.

1. Voyant que le systme est intgrateur, comment procdez vous pour obtenir un modle param-
trique du systme ?

2. Dterminer les paramtres d'une squence binaire pseudo alatoire pour procder une identi-
cation paramtrique de ce systme.

3. Quel modle entre ARX et ARMAX donnera les meilleurs rsultats d'aprs vous.
86 ANNEXE .ANNALES

3me anne
Janvier 2006
Option mcatronique

Corrig de l'Examen d'Identication

1 Modle non-paramtrique (5 pts)

1. Modle Strejc
On mesure T u = 0, 3s et T a = 1, 3s. En appliquant la mthode :

T u/T a = 0, 2308 n = 2
T a/ = 2, 718 = T a/2, 718 = 0, 4783
T u/ = 0, 282 T u0 = 0, 1349
T r = T u T u0 T r = 0, 1651
Gain : 0.83

d'o le modle :
AeT rp 0.83e0,134p
G(p) = =
(1 + p)n (1 + 0, 5887p)2

Figure 18  comparaison sortie relle et sortie du modle.


2. MODLE PARAMTRIQUE (5 PTS) 87

2. On crit l'galit : rponse indicielle du modle = rponse un crneau du systme.

1 1 e0.5p AeT rp 1 2AeT rp


G(p) = G2 (p) = G2 (p) = '
p p (1 + p)n 1 e0.5p p(1 + p)n

2 Modle paramtrique (5 pts)

On se propose d'identier un modle paramtrique de la forme

    
42 7 9 a1
= = y = X + |{z}
e
7 7 4 b1
=0

la solution est :
 
T 1 T 3
b = (X X) X y=
7

3 Moindres carrs rcursifs (5 pts)

L'estimation de paramtres par la mthode des moindres carrs simples prsente un inconvnient
majeur, la ncessit de calculer l'inverse d'une matrice, ce qui est long et parfois impossible sur un
microcontrleur. On se propose travers cet exercice de dterminer une forme rcursive de cette
estimation.
A l'instant N on peut crire :


a1

yN

yN 1 yN 2 . . . yN n uN . . . uN p

a2 eN
yN 1 yN 2 yN 3 y u uN p1
.
eN 1
N n1 N 1

.

. eN 2

yN 2 . .

. .

yN 3 . . uN 2 uN p2

.

an

yN 3 .

= + . (3)

. .

. . b0

. . yn+1 . uN p3

. .

. .

b1 .

.

.

yn+2 yn+1 yn . uN p .
en+2

..

yn+1 yn yn1 . . . y1 un+1 en+1
bm

sous forme condense :


YN = XN N + EN
dont l'estimation optimale est :
T
bN = (XN XN )1 XN
T
YN
1.

a1

eN +1

yN +1 yN yN 1 . . . yN n+1 uN +1 . . . uN p+1
yN yN 1 yN 2 . . . yN n uN . . . uN p a2 eN

.

eN 1

yN 1 yN 2 yN 3 yN n1 uN 1 uN p1 .

.


eN 2

yN 2 . .
. . an

yN 3 . . uN 2 uN p2
.

= +

yN 3 .

b0 .

. .
. .

. . yn+1 . uN p3
.. b1 .

.

.

.
. .

yn+2 yn+1 yn . uN p .

. en+2
yn+1 yn yn1 ... y1 un+1 bm en+1
(4)

2. xN +1 = yN yN 1 . . . yN n+1 uN +1 . . . uN p+1
88 ANNEXE .ANNALES

3.

T 1 T
bN +1 = (XN +1 XN +1 ) XN +1 YN +1
T
= (XN XN + xTN +1 xN +1 )1 (XN
T
YN + xTN +1 yN +1 )

4. Il sut de dvelopper
 1 
T
XN )1 (XN
T
XN )1 xTN +1 1 + xN +1 (XN
T
XN )1 xTN +1 T
XN )1

bN +1 = (XN xN +1 (XN
T
YN + xTN +1 yN +1

XN

5.
 1 
T
XN )1 (XN
T
XN )1 xTN +1 1 + xN +1 (XN
T
XN )1 xTN +1 T
XN )1

bN +1 = (XN xN +1 (XN
T
YN + xTN +1 yN +1

XN
T
XN )1 (XN
T
XN )1 xTN +1 a1 xN +1 (XN
T
XN )1 XN
T
YN + xTN +1 yN +1
 
bN +1 = (XN
T
= (XN XN )1 XN
T T
YN +(XN XN )1 xTN +1 yN +1 (XN
T
XN )1 xTN +1 a1 xN +1 (XN
T
XN )1 XN
T
YN
| {z } | {z }
bN bN

(XN XN )1 xTN +1 a1 xN +1 (XN


T T
XN )1 xTN +1 yN +1
= bN + (XN T
XN )1 xTN +1 yN +1 (XNT
XN )1 xTN +1 a1 xN +1 bN
(XN T
XN )1 xTN +1 a1 xN +1 (XNT
XN )1 xTN +1 yN +1
 
T
= bN (XN XN )1 xTN +1 a1 xN +1 bN
T
XN )1 xTN +1 a1 xN +1 (XN T
XN )1 xTN +1 yN +1 + (XN T
XN )1 xTN +1 yN +1

+(XN
 
= bN (XNT
XN )1 xTN +1 a1 xN +1 bN
T
XN )1 xTN +1 a1 xN +1 (XN T
XN )1 xTN +1 yN +1 + yN +1

+(XN
 
= bN (XNT
XN )1 xTN +1 a1 xN +1 bN
T
XN )1 xTN +1 a1 xN +1 (XN T
XN )1 xTN +1 + a yN +1

+(XN
 
= bN (XNT
XN )1 xTN +1 a1 xN +1 bN
+(XN T
XN )1 xTN +1 a1 yN +1
 
= bN + (XNT
XN )1 xTN +1 a1 yN +1 xN +1 bN
 
6. Le terme yN +1 xN +1 bN reprsente l'erreur d'estimation l'aide des paramtres prcdents.

L'equation est alors : la nouvelle estimation est l'ancienne estimation corrige par un terme
proportionnel l'erreur d'estimation prcdente.

4 Modlisation paramtrique (5 pts)

1. Par un bouclage simple, suivi d'une identication.

2. Les paramtres dpendent nettement du choix fait pour le bouclage.


Par exemple, bouclage avec un gain A=0,25 = deux ples simples en -0,5 = ' 2s

Pour une bonne identication du gain statique on choisira :

NTe = 3 5
JANVIER 2007 89

Pour une bonne excitation sur le spectre entre 0 et la plus haute frquence de coupure on choisira :

1 1
0, 3 =
Te 2
5
Bon chantillonnage = Te ' 3, 7s Bonne identication du gain statique = n ' Te = 3.

3. ARMAX donnera les meilleurs rsultats.


90 ANNEXE .ANNALES

3me anne
Rattrapage 2012 Option mcatronique

Examen d'Identication des systmes


Tous documents autoriss

Cet examen consiste dterminer un modle de la peau humaine soumise un chelon de compression.
La peau est un matriaux complexe (viscohyperlastique) trs variable d'un individu l'autre et mme
d'une rgion l'autre sur un mme individu. L'objectif et de dterminer un modle de peau "local".
Les valeurs numriques des dirents modles sont volontairement direntes. Les questions suivantes
sont lies mais peuvent tre traites dans le dsordre.

Figure 19  Systme tudi.

1 Modle de connaissances (5 pts)

Un modle simpli de la peau est donn par la gure 20

Figure 20  Modle de peau viscolastique.


= contrainte
d(t) = dformation = = x/x
(t) = E(t) + avec :
dt E = module d'Young quivalent
= coecient de frottement visqueux

le modle de la force exerce par le poinon sur la peau est donn par :

F = force
F (p) Kf
= avec : i = courant dans la bobine
i(p) 1 + p
= L/R = constante de temps =inductance/rsistance

Applications numriques : E =300 Mpa, /E = 100 ms, Kf =10, =1ms, paisseur totale de la peau :
1mm, diamtre du poinon : =1mm.
x(p)
1. Dterminer la fonction de transfer du systme H(p) = i(p) .
2. Dterminer les termes T ,D ,V et Q utiliss dans le formalisme de Lagrange.
 
d T T D V
+ + = Qi
dt
qi
qi qi qi
2. MODLE NON-PARAMTRIQUE 91

2 Modle non-paramtrique

Figure 21  Rponse indicielle de la peau.


1. Identier le systme avec la mthode de Broda.

2. Identier le systme avec la mthode de Strejc.

3. Quel modle vous semble le plus pertinent ?

3 Signal d'excitation

Notre systme tant trs sensible la valeur moyenne du signal d'excitation, on dcide d'utiliser une
squence ternaire pseudo alatoire (STPA). Une mthode de synthse de squences ternaires pseudo
alatoires consiste les dduire d'une SBPA par l'algorithme suivant :

1
y(i) = (x(i) x(i 1))
2
z = {y(0), y(2), y(4), , y(1), y(3), }

avec : x = squence binaire pseudo alatoire (valeurs : -1 ou 1)


y = squence intermdiaire
z = squence ternaire pseudo alatoire

1. Reprsentez le diagramme temporel d'une squence binaire pseudo alatoire utilisant n=3 bits
L = 2n 1
L
soit de longueur en prenant b0 = b2 b1 .
2. En prenant une priode d'chantillonnage Te =100 ms, quelles sont les constantes de temps min
et max que l'on peux correctement identier en utilisant la SBPA prcdente ?

3. Avec la mthode propose, dduisez-en une squence ternaire pseudo alatoire.

4. Quelle est la constante de temps max que l'on est susceptible de bien identier ?

5. Calculer la valeur moyenne de la STPA calcule prcdemment.

6. Calculez sa fonction d'autocorrlation ( ! long !).


92 ANNEXE .ANNALES

4 Modle paramtrique

On dcide de procder une identication paramtrique rcursive. Le modle contient 5 parametres :


a1 , a2 , a3 , b0 et b1 .
b0 + b1 z 1
H(z) =
1 + a1 z 1 + a2 z 2 + a3 z 3
1. Donner la taille des vecteurs et matrices suivants (notation du cours) : bN , KN , PN . Attention
3
il y des erreurs dans le poly !

2. Le terme b0 tends vers 0, que peut-on en dduire concernant le retard pur du systme ?

5 Modle d'ordre non entier

En fait il s'agit d'un modle incluant une partie approchant un modle d'ordre fractionnaire
(p
, R).
le modle est de la forme :

n
Y z zz i
H(z) = K
z zp i
i=0

avec :

zp i+1 = zp i
zz i = z p i
zp 0 = z 0
<

Figure 22  Caractristiques d'un modle d'odre fractionnaire : rponse indicielle et ples et zros.

1. Proposez une mthode pour dterminer les paramtres , , z0 et K optimums vis--vis d'un
critre que vous dnirez.

Liens

http://www.mathworks.com/products/fuzzylogic.html

3. dsol !
5. MODLE D'ORDRE NON ENTIER 93

Figure 23  Rponse indicielle de la peau.

http://www.mathtools.net/MATLAB/Fuzzy_Logic/index.html

http://www.dbai.tuwien.ac.at/marchives/fuzzy-mail/

http://europa.eu.int/comm/research/rtdinfo/fr/24/02.html

http://www.gala.univ-perp.fr/~polit/chap0.html

http://www.eru.ulaval.ca/ptt15225

http://vcampus.u-strasbg.fr/uticeweb/mhiri/projet_V2

http://www.mathworks.fr/products/controldesign/modanal.shtml
94 ANNEXE .ANNALES
Bibliographie

95