Vous êtes sur la page 1sur 102

MASTER ASE 1ère année

MODELISATION IDENTIFICATION

DES PROCESSUS

Master ASE1 – Identification des Processus – P. Bonnet 1


Pierre BONNET
2009-2010

Master ASE1 – Identification des Processus – P. Bonnet 2


PLAN DU COURS
 Présentation
- objectifs du cours et domaines d'application
 Notion de modèle
- modèle paramétrique
- modèle de connaissance/modèle de comportement
- modèle de signal/modèle de système
 Rappel des méthodes de base en Automatique
- réponse temporelle d'un système
- identification directe à partir de la réponse temporelle
- approche fréquentielle
 Principe d'ajustement du modèle
- modèle linéaire par rapport aux paramètres
- minimisation du critère d'ajustement et calcul de la solution optimale
- écriture matricielle de la méthode des moindres-carrés
 Analyse de la méthode des moindres-carrés
- Biais d'estimation
- Variance de l'estimation
- estimateur du maximum de vraisemblance
- rejet des mesures aberrantes

Master ASE1 – Identification des Processus – P. Bonnet 3


PLAN DU COURS
 Extension aux modèles non-linéaires
- méthode de Gauss
- analyse et améliorations

 Moindres-carrés récursifs
- principe du calcul récursif
- mise en oeuvre de la méthode récursive
- facteur de pondération, facteur d'oubli

 Modélisation d'un système


- choix d'un modèle discret ARMA
- mise en place de la méthode des moindres-carrés
- comportement du modèle vis à vis du bruit
- le modèle ARMAX

Master ASE1 – Identification des Processus – P. Bonnet 4


PLAN DU COURS
 Bibliographie
- Identification des systèmes - Ioan D. Landau - Hermès – 1998

- Estimation Prédiction - E. Duflos & Ph. Vanheeghe - Technip – 2000

- Identification et commande numérique des procédés industriels - R. Ben


Abdennour , P. Borne, M. Ksouri & F. M'sahli - Technip -2001

- Modélisation et Identification des Processus - P. Borne - Technip – 1992

- Cours d'Identification de l'Université de Lund (Suède)


http://www.control.lth.se/course/FRT041/

- Cours d'identification de l'EPFL (Suisse)


http://lawww.epfl.ch/page4230.html

Master ASE1 – Identification des Processus – P. Bonnet 5


OBJECTIFS DU COURS

 Donner les principes fondamentaux de la modélisation et de l'estimation


de paramètres appliqués aux systèmes rencontrés dans de nombreux
domaines scientifiques :

 l'Automatique pour laquelle la connaissance du modèle est indispensable


pour synthétiser une loi de commande

 les Sciences Expérimentales, lorsque la validation d'une théorie se fait par


des manipulations expérimentales (physique atomique, microélectronique...)

 la Biologie, l'Economie, les Statistiques

 partout où des observations sont validées par un principe de


fonctionnement (règles mathématiques)

Master ASE1 – Identification des Processus – P. Bonnet 6


OBJECTIFS DU COURS

 Principe de la modélisation/estimation

Entrées
Sorties
Système réel
réelles
+ Erreur de

- modélisation

Sorties Critère
Critère
Modèle d'évaluation
d'évaluation
calculées

Ajustement du modèle

Master ASE1 – Identification des Processus – P. Bonnet 7


OBJECTIFS DU COURS

 Différence entre modèle et système réel

Bruit sur les Bruit sur les


entrées sorties

Variables
Observations
exogènes
Variables
+ +
endogènes
entrées sorties

Evolution des paramètres Perturbations du


caractéristiques système

 Le modèle ne prend pas en compte les grandeurs non mesurables

Master ASE1 – Identification des Processus – P. Bonnet 8


OBJECTIFS DU COURS

 Intérêt de la modélisation:

Fournir un modèle mathématique acceptable pour un système dont on peut


"dériver" de nombreuses informations relatives à son fonctionnement dynamique :

 donner des valeurs pour certains paramètres


caractéristiques du processus étudié

 évaluer des grandeurs endogènes (observateur d'état)


 donner des valeurs estimées/filtrées du signal de sortie
 extrapoler/prédire le fonctionnement au delà des observations faites
 interpoler le fonctionnement entre deux points observés
 calculer la dérivée du signal de sortie, les dérivées successives
 déterminer un extremum (local) du signal
 évaluer la dérive d'un système
 détecter la défaillance d'un système
Master ASE1 – Identification des Processus – P. Bonnet 9
OBJECTIFS DU COURS

 Note importante:

Si vous estimez que ce cours manque d'exemples ou d'applications, il vous suffit


d'assister aux exposés en Amphi Maxwell ! (pas de grasse matinée, le cours est à
8h)

Les exemples vous sont présentés, avec démonstration sur Matlab/Scilab et le


tableau noir est largement utilisé pour compléter ces transparents.

Master ASE1 – Identification des Processus – P. Bonnet 10


NOTION DE MODELE

NOTION
DE
MODELE

Master ASE1 – Identification des Processus – P. Bonnet 11


NOTION DE MODELE

 Modèle

Un modèle est une structure mathématique pouvant représenter le système


étudié. Cette structure doit comporter des éléments d'ajustement.

 la structure du modèle représente la connaissance à priori que l'utilisateur


souhaite placer dans le modèle

Exemple : les fonctions de transfert du type


N  p
F  p = avec N  p et D  p polynôme en p
D p
peuvent représenter une partie des systèmes linéaires différentiels à
coefficients constants (systèmes SISO)

Master ASE1 – Identification des Processus – P. Bonnet 12


NOTION DE MODELE

 Modèle quantitatif

Un modèle est quantitatif lorsque les fonctions qui définissent les équations
sont spécifiées analytiquement.

Dans un modèle quantitatif, une suite d'opération permet le calcul de la valeur


numérique des fonctions du modèle à partir de leurs arguments [et des
entrées du système]

Exemple : l'équation différentielle d'un système est un modèle quantitatif


(domaine temporel), de même que la fonction de transfert d'un système
différentiel à coefficients constants (domaine symbolique de Laplace).

 les systèmes aléatoires sont régis par des modèles stochastiques ; la


valeur d'une variable aléatoire ne peut être calculée à un instant t .
Master ASE1 – Identification des Processus – P. Bonnet 13
NOTION DE MODELE

 Modèle paramétrique

Un modèle quantitatif est paramétrique lorsque son expression analytique


comporte un nombre fini de constantes non-précisées numériquement appelés
paramètres .
L'expression générale d'un modèle paramétrique est:

X t = f t , a 1, a 2, ... , a k  avec t variable explicative du modèle

Les paramètres représentent les constantes d'ajustement du modèle aux


mesures
Exemple : La fonction de transfert d'un système différentiel du premier
ordre est un modèle paramétrique, tout comme son équation différentielle.
K
F  p =
1 p
K et  sont les paramètres du modèle,
p variable explicative du modèle (variable complexe de Laplace)
Master ASE1 – Identification des Processus – P. Bonnet 14
NOTION DE MODELE

 Modèle de connaissance

Un modèle de connaissance est un modèle dont les paramètres représentent


des grandeurs caractéristiques de la structure étudiée.

Exemple : réponse impulsionnelle d'un système du 1er ordre


−t /
s t  = K e

K représente le gain statique du système

 représente la constante de temps

 les paramètres du modèle seront déterminés par quelques caractéristiques


graphiques de la réponse ou des méthodes plus complexes

Master ASE1 – Identification des Processus – P. Bonnet 15


NOTION DE MODELE

 Modèle de connaissance
Certains éléments du modèle peuvent ne pas être accessibles à l'identification.

Exemple : système électrique du 1er ordre


R1
st  = K 1 − e−t / 
R2 C
R2
K=  =  R 1 // R 2 . C
R1  R2

 La réponse indicielle (échelon unité) permet de déterminer K et 


mais pas la valeur des 3 composants.

Master ASE1 – Identification des Processus – P. Bonnet 16


NOTION DE MODELE

 Modèle de comportement

Un modèle de comportement est un modèle dont la structure et les


paramètres sont sans rapport avec le système réel

Exemple : réponse impulsionnelle d'un système du 2ème ordre modélisé par un


développement en série limité à coefficients réels.

2 k
st = a0  a1 t  a2 t ... a k t

 aucun des coefficients du modèle ne représente les paramètres


caractéristiques d'un second ordre (gain, amortissement et fréquence
naturelle), même pour un calcul d'ordre fini.

Master ASE1 – Identification des Processus – P. Bonnet 17


NOTION DE MODELE
 Modélisation d'un système sans entrée

La détermination des paramètres d'un système sans entrée se fait à partir de


l'observation de sa sortie (signal de sortie)
Sorties
Système
Système
+ Erreur de

- modélisation
Sorties
Modèle
Modèle Critère
Critère
modélisées

 l'outil de modélisation intègre la connaissance à priori du processus


générateur.

Master ASE1 – Identification des Processus – P. Bonnet 18


NOTION DE MODELE

 Modélisation d'un système avec entrée

La détermination des paramètres d'un système se fait à partir de


l'observation de sa sortie, compte-tenu de l'entrée appliquée.

Sorties
Entrée
Système
Système
externe
+ Erreur de

- modélisation
Sorties
Modèle
Modèle Critère
Critère
modélisées

 l'outil de modélisation doit donc prendre en compte


le signal de sortie ET le signal d'entrée.
Le degré de complexité est donc augmenté.
Master ASE1 – Identification des Processus – P. Bonnet 19
METHODES DE BASE

METHODES
DE
BASE

Master ASE1 – Identification des Processus – P. Bonnet 20


METHODES DE BASE

 Principe des méthodes de base

 Les méthodes de base (graphique, Broïda, Strecj, réponse harmonique...)


donnent usuellement un modèle de comportement . Pour les systèmes simples,
le modèle de comportement correspond au modèle de connaissance.

 La détermination des paramètres se fait à partir de la seule observation


de la sortie . Ces méthodes s'apparentent donc à des méthodes de modélisation
de signaux ou de données expérimentales.

 Elles s'appuient sur l'analyse graphique des courbes expérimentales en


quelques points particuliers et ne tiennent pas compte de l'ensemble des mesures.
Leur robustesse au bruit de mesure est faible.

Master ASE1 – Identification des Processus – P. Bonnet 21


METHODES DE BASE

 Relation entrée, sortie et système

 La sortie d'un système linéaire est le produit de convolution entre le


signal d'entrée et la réponse impulsionnelle du système.

e t  h t  s t 

s t  = e∗h = ∫ e h t −  d 
0

 La sortie est caractéristique du système pour des signaux élémentaires


tels que l'impulsion de Dirac, l'échelon ou la rampe
.

Master ASE1 – Identification des Processus – P. Bonnet 22


METHODES DE BASE

 Relation entrée, sortie et système

 Le signal d'excitation le plus courant est l'échelon. L'identification se


fait donc à partir de la réponse indicielle.

Remarque : on peut passer de la réponse impulsionnelle à la réponse indicielle


par intégration [numérique] des mesures

 Si le système présente une intégration dans sa fonction de transfert


(pôle nul), il suffit de dériver [numériquement] les mesures pour obtenir la
réponse d'un système équivalent sans intégration.

Master ASE1 – Identification des Processus – P. Bonnet 23


METHODES DE BASE

 Relation entrée, sortie et système

1
 Exemple du circuit du 1er ordre de la forme : L p =
1 p
1 1/
La réponse impulsionnelle est : S  p = 1 . =
1p p  1/
1 −t /
D'où : s t = e

L'intégration de la réponse impulsionnelle donne la réponse indicielle:


t
1 t
∫ s  u du =  [− e ] 0 = 1 − e−t /
−t /
0

Master ASE1 – Identification des Processus – P. Bonnet 24


METHODES DE BASE

 Méthode graphique directe


K
 1er ordre H  p = soumis à un échelon e t  = e 1 u t
1   p
t


st = K e1 1 − e   s0

Réponse s
s0  Ke1
.
63%
Ke 1
s0

0  t
Le temps de réponse à 95% est environ de 3 

Le temps de montée est:


Master ASE1 – Identification des Processus – P. Bonnet 25
METHODES DE BASE

 Méthode graphique directe


K
 1er ordre H  p = soumis à une rampe e t = a t ut
1   p
t


st  = a K  e  a K t − 

Réponse
s0  a K t
st 
.

s0
s0  a K t − 

0
t

Master ASE1 – Identification des Processus – P. Bonnet 26
METHODES DE BASE

 Méthode de Broïda
−Tp
 réponse indicielle du 1er ordre H  p = K
e avec retard
1   p
st

s0  Ke 1

40%
.
Ke 1
28%
s0

0 t
t 28 t 40
T = 2.8 t 28 − 1.8 t 40
 = 5.5t 40 − t 28 

Master ASE1 – Identification des Processus – P. Bonnet 27


METHODES DE BASE

 Méthode de Strejc
K
 réponse indicielle du 1er ordre H  p = n
1   p
st

s0  Ke 1

.
Ke 1

s0

0 t
Tu Ta

Master ASE1 – Identification des Processus – P. Bonnet 28


METHODES DE BASE

 Méthode de Strejc

La méthode définit une valeur de n


non-entière ;

généralement, on arrondit cette


valeur à l'entier le plus proche.

Master ASE1 – Identification des Processus – P. Bonnet 29


METHODES DE BASE

 Méthode fréquentielle

La méthode fréquentielle s'appuie sur la réponse harmonique du système.

e t  = A sin  t st
ht 

Excitation
A
Réponse

t0=0 t

j t
Ecriture complexe de l'entrée : e t  = A e
j t
Le régime permanent de la sortie est : st = A H  j e

Master ASE1 – Identification des Processus – P. Bonnet 30


METHODES DE BASE

 Méthode fréquentielle

Elle permet de réaliser une excitation dans une large gamme de fréquences,
contrairement à l'échelon qui possède un spectre réduit. Le nombre de points
de mesure est élevé. L'analyse est donc beaucoup plus performante que
l'analyse temporelle.
∣H  j ∣dB
arg H  j 
c = 1/ Log 
∣H 0∣dB

Log 
−45 °
c = 1/

−90°

 la détermination des paramètres du système se fait généralement


graphiquement (asymptotes, coupure, résonance...)
Master ASE1 – Identification des Processus – P. Bonnet 31
METHODES DE BASE

 Méthode fréquentielle

 Utilisation d'un signal d'excitation large bande pour déterminer


directement la réponse fréquentielle
t en une seule mesure :
st = e∗h = ∫ e  h t −  d 
0

La transformée de Fourier de la réponse impulsionnelle s'obtient par :


S  = E . H 
S 
H  =
E 

Il suffit donc de déterminer les transformées de Fourier de l'entrée et la


sortie pour déterminer la réponse fréquentielle du système

 La méthode est valide sous réserve d'absence de zéro dans le spectre


du signal d'excitation.
 On utilise un bruit blanc ou une SBPA pour l'excitation
Master ASE1 – Identification des Processus – P. Bonnet 32
MODELE AJUSTE

MODELE
AJUSTE

Master ASE1 – Identification des Processus – P. Bonnet 33


MODELE AJUSTE

 Objectif

L'idée est de reproduire le travail de l'homme lorsqu'il "ajuste" manuellement


/graphiquement le modèle qu'il souhaite appliquer.

Exemple : soit un ensemble de mesures expérimentales qui devraient suivre une loi affine
L'utilisateur trace le graphe des mesures, puis prend une règle (le modèle de la loi affine
ajustable en ordonnée et en pente) et tente l'ajuster "au mieux". La "qualité" de
l'ajustement diffère d'un opérateur à l'autre: le critère d'ajustement n'est pas
clairement exprimé; il est du domaine subjectif.

y1 y4 modèle ajustable x t 
y0 y2 y3

0 1 2 3 4 .... t

Master ASE1 – Identification des Processus – P. Bonnet 34


MODELE AJUSTE
 Critère d'évaluation de l'erreur de modélisation

Soient : y t i  les observations faites sur le système

x t i , a 1 , a 2 ... les valeurs prises par le modèles aux instants


d'observation

 Posons i écart [erreur] entre les mesures et le modèle

y t i  = x t i , a 1 , a 2 ...  i

 L'erreur quadratique cumulée est :


n2

a 1 , a 2 ... = ∑ i 2

n1
n2

 a 1 , a 2 ... = ∑  y t i  − x t i , a 1, a 2 ...2
n1

Note : il existe d'autres critères possibles (distance généralisée par exemple)

Master ASE1 – Identification des Processus – P. Bonnet 35


MODELE AJUSTE

 Minimum du critère

 Le critère présente une dépendance quadratique vis à vis des


paramètres .

1 2 0

1 0 0 0 0
1 0 0
8 0 0 0

8 0
6 0 0 0

6 0 4 0 0 0

 min 4 0
2 0 0 0

0
2 0 0

0
0 2 4 6 8 1 0 1 2 1 4 1 6
a2 5

1 0
1 5

a1
1 0
1 5 5

a1
0

Master ASE1 – Identification des Processus – P. Bonnet 36


MODELE AJUSTE

 Recherche du minimum de 
On suppose qu'il y a indépendance/orthogonalité des paramètres :

Le critère d'erreur  présente un minimum pour :


 ∂ ∂ ∂
=0 =0 .... =0
∂ a1 ∂ a2 ∂ ak
et

 ∂2  ∂2  ∂2 
2
0 2
0 .... 2
0
∂a 1 ∂a 2 ∂a k

Note : Les méthodes de base ne tiennent pas compte des équations de contrainte;
ceci peut être une source d'erreur.

Master ASE1 – Identification des Processus – P. Bonnet 37


MODELE AJUSTE

 Resolution

Le minimum est obtenu pour un jeu de valeurs dites optimales pour le critère
considéré (critère des moindres-carrés)

∂ Résolution des k équations


a1 , a2, ... , ak
∂ ai
= 0 

Le modèle le plus proche des mesures au sens du critère d'erreur est :

x t  = x t , a1 , a2 , ... ak 

Note : Selon la nature du modèle (linéaire ou non-linéaire par rapport aux


paramètres), la résolution des équations peut poser problème . Ce cours porte
essentiellement sur les méthodes de base applicable aux modèles linéaires.

Master ASE1 – Identification des Processus – P. Bonnet 38


MODELE AJUSTE

 Exemple d'application
Modélisation de 3 mesures successives par un modèle affine de la forme x t  = a  b t

y 1 =2 y 2=2
x t

y 0 =1

0 1 2 t
Méthode :
1°) Déterminer les valeurs prises par le modèle pour t = 0,1 ,2

2°) Exprimer  à partir des valeurs de x(t) et des mesures y0 , y1 , y2

3°) Former les dérivées partielles


∂ ∂
,
∂a ∂b
4°) Résoudre le système (Cramer) pour obtenir a , b

Master ASE1 – Identification des Processus – P. Bonnet 39


AJUSTEMENT DU
MODELE

Master ASE1 – Identification des Processus – P. Bonnet 40


AJUSTEMENT DU MODELE PAR LES MOINDRES-CARRES

 Choix du modèle
Soit un modèle x t de variable explicative t caractérisé par un jeu de
paramètres p = {a 1 , a 2 ,... , a k }

 Modèle linéaire
Le modèle est linéaire par rapport à ses paramètres s'il vérifie :
x t , 1 p1  2 p 2  = 1 x t , p1   2 x t , p2 

 Un modèle linéaire par rapport à ses paramètres a une expression du type:


x t  = a 1 f 1 t   a 2 f 2 t  ...
Les f 1 t  , f 2 t ... sont les "formants" du modèle

Exemples : x t  = a 0  a 1t a 2 t 2 ... x t  = A cos 10t   B sin 10t 

Master ASE1 – Identification des Processus – P. Bonnet 41


AJUSTEMENT DU MODELE PAR LES MOINDRES-CARRES
 Cas du modèle linéaire/paramètres d'ajustement
 Modèle linéaire à k paramètres :
x t  = a1 f 1 t  a 2 f 2 t  ... ak f k t

 Instants de n mesures :

t 1 , t 2 , ... , t n

 Mesures de la sortie du système :


y t 1  , y t 2  , ... , y t n 

 Expression du modèle aux instants de mesures :

x t 1  , x t 2  , ... , x t n 

 Critère d'erreur cumulée à noptimiser


 a 1 , a 2 ... = ∑  y t i  − x t i 2
i=1
Master ASE1 – Identification des Processus – P. Bonnet 42
AJUSTEMENT DU MODELE PAR LES MOINDRES-CARRES

 Présentation des données du problème


n abcisse mesure modèle

1 t1 y t 1  xt 1  = a 1 f 1 t 1   a 2 f 2 t 1  ... a k f k t 1 
2 t2 y t 2  xt 2  = a 1 f 1 t 2   a 2 f 2 t 2  ... a k f k t 2 
... ... ... ......
n tn y t n  x t n  = a 1 f 1 t n   a 2 f 2 t n  ... a k f k t n 

n
 = ∑ [ y t i  − a 1 f 1 t i  − a 2 f 2 t i  −... − a k f k t i ]
2

i=1

Master ASE1 – Identification des Processus – P. Bonnet 43


AJUSTEMENT DU MODELE PAR LES MOINDRES-CARRES

 Calcul des dérivées du critère quadratique

∂ n
= − 2 ∑ f 1 t i [ y t i  − a 1 f 1 t i  − a 2 f 2 t i  −... − a k f k t i ]
∂ a1 i=1

∂ n
= − 2 ∑ f 2 t i [ y t i  − a 1 f 1 t i  − a 2 f 2 t i  −... − a k f k t i ]
∂ a2 i=1
....
∂ n
= − 2 ∑ f k t i [ y t i  − a 1 f 1 t i  − a 2 f 2 t i  −... − a k f k t i ]
∂ ak i=1

Minimisation du critère d'erreur quadratique

∂ ∂ ∂
=0 =0 .... =0  a 1 , a 2 ,... , a k
∂ a1 ∂ a2 ∂ ak
Master ASE1 – Identification des Processus – P. Bonnet 44
AJUSTEMENT DU MODELE PAR LES MOINDRES-CARRES

 Présentation homogène du problème

Equations de minimisation :

n n n n
a1 ∑ f t i   a 2 ∑ f 1 t i  f 2 t i   ...  a k ∑ f 1 t i  f k t i  =
2
1 ∑ f 1 t i  y t i
i=1 i=1 i=1 i=1
n n n n
2
a 1 ∑ f 1 t i  f 2 t i   a 2 ∑ f 2 t i   ...  a k ∑ f 2 t i  f k t i  = ∑ f 2 t i  y t i 
i=1 i=1 i=1 i=1
.....
n n n n
a 1 ∑ f 1 t i  f k t i   a 2 ∑ f 1 t i  f 2 t i   ...  a k ∑ f t i  = 2
k ∑ f k t i y t i 
i=1 i=1 i=1 i=1

Master ASE1 – Identification des Processus – P. Bonnet 45


AJUSTEMENT DU MODELE PAR LES MOINDRES-CARRES

 
n
 Présentation homogène du problème
∑ f 1 t i  yi
i=1
n


Vecteur des
a1
Vecteur des Q = ∑ f 2 t i  yi
paramètres  = a2 mesures
i=1
...
à identifier ... pondérées n
ak ∑ f k t i  yi
i=1

 
n n n
2
∑f 1 t i  ∑ f 1 t i  f 2 t i  ... ∑ f 1 t i  f k t i  Matrice de
i=1 i=1 i=1
n n n pondération
R = ∑ f 2 t i  f 1 t i  ∑ f 22 t i  ... ∑ f 2 t i  f k t i  symétrique
i=1 i=1 i=1
... ... ... ...
n n n

∑ f k t i  f 1 t i  ∑ f k t i  f 2 t i  ... ∑ f 2k t i 
i=1 i=1 i=1

Master ASE1 – Identification des Processus – P. Bonnet 46


AJUSTEMENT DU MODELE PAR LES MOINDRES-CARRES
 Présentation homogène du problème

Les équations de minimisation peuvent s'écrire:

R = Q

La résolution de cette équation matricielle donne la solution optimale pour le


modèle :

 = R−1 Q

sous réserve que la matrice R soit inversible

Master ASE1 – Identification des Processus – P. Bonnet 47


AJUSTEMENT DU MODELE PAR LES MOINDRES-CARRES

 Ecriture matricielle du problème des moindres-carrés :

Soit x(t) le modèle linéaire par rapport à ses paramètres:


x t  = a1 f 1 t   a2 f 2 t  ... a k f k t 
Soit X l'ensemble des valeurs prises par le modèle et Y les mesures:

   
x t 1  a1 f 1 t 1 a 2 f 2 t 1 ...a k f k t 1  yt 1 
X = x t 2  = a1 f 1 t 2 a2 f 2 t 2 ...a k f k t 2  Y = yt 2 
... ................ ...
x t n  a1 f 1 t k a 2 f 2 t k ...ak f k t k  yt n 

  
f 1 t 1  f 2 t 1  ... f k t 1  a1

Posons: H =
f 1 t 2  f 2 t 2  ... f k t 2   = a2 ⇒ X = H
... ... ... ... ...
f 1 t n  f 2 t n  ... f k t n  ak

Master ASE1 – Identification des Processus – P. Bonnet 48


AJUSTEMENT DU MODELE PAR LES MOINDRES-CARRES

 Ecriture matricielle du problème des moindres-carrés :


L'erreur quadratique cumulée s'écrit: 1
n n
 = ∑  yt i  − xt i 2 = ∑ i2  =  1 2 ... n  2
...
i=1 i=1
n
Sachant que :  = Y − X et que : X = H

L'erreur cumulée s'écrit :  = Y − H  Y − H  T


∂
∂a 1

La minimisation du critère se fait pour : ∂ =



= 0

∂ ∂ a 2
...
∂
∂ ak
Master ASE1 – Identification des Processus – P. Bonnet 49
AJUSTEMENT DU MODELE PAR LES MOINDRES-CARRES

 Ecriture matricielle du problème des moindres-carrés :


La solution optimale sera obtenue pour :
∂ T T
= − H Y − H  − Y − H  H
∂
En remarquant que  est scalaire , on obtient :
∂ T
= −2 H Y − H 
∂

La solution optimale est :

 =  H T H −1 H T Y

Master ASE1 – Identification des Processus – P. Bonnet 50


AJUSTEMENT DU MODELE PAR LES MOINDRES-CARRES

 Exemple d'application
Modélisation de 3 mesures successives
par un modèle affine de la forme x t  = a  bt

y 1 =2 y 2=2
x t

y 0 =1

0 1 2 t
Méthode matricielle:
1°) Déterminer les valeurs prises par le modèle pour t = 0,1,2
2°) Construire le tableau des valeurs prises par le modèle
aux instants de mesure, le vecteur des observations.
T
3°) En déduire les matrices/vecteurs Y , H et  = a , b
4°) Calculer la solution optimale 

Master ASE1 – Identification des Processus – P. Bonnet 51


ANALYSE DES MOINDRES-CARRES

ANALYSE DE LA METHODE
DES MOINDRES-CARRES

Master ASE1 – Identification des Processus – P. Bonnet 52


ANALYSE DES MOINDRES-CARRES
 Pondération du critère J :
définition du critère d'erreur quadratique pondéré :

 = T Q 
Avec Q matrice de pondération
- définie positive : toutes ses valeurs propres sont
positives strictement
- symétrique
Exemple :

 
1 0 ... 0
0 2 ... 0
Q =
... ... ... ...
0 0 ... n

avec 10 , 20 ,... , n 0

On remarque que :
 = 0 si et seulement si =0
53
Master ASE1 – Identification des Processus – P. Bonnet
ANALYSE DES MOINDRES-CARRES
 Pondération du critère d'erreur quadratique cumulée :

 = T Q 
Minimisation du critère J par ajustement des paramètres :

 = Y − H  T
Q Y − H 

∂ = − H T QY − H  − Y − H T Q H
∂
∂ = =−2 H T QY − H  = 0
∂

La solution optimale est :

 =  H T Q H −1 H T Q Y

Master ASE1 – Identification des Processus – P. Bonnet 54


ANALYSE DES MOINDRES-CARRES
 Biais de l'estimation des paramètres:
Le biais d'un estimateur est l'espérance de l'écart entre l'estimation et les vraies valeurs.

L'estimateur non-biaisé fournit une valeur non-décalée par rapport à la vraie valeur

 Soit  la valeur théorique des paramètres.

 Le modèle parfait a pour valeur : X = H 

 Les mesures ont pour valeur : Y = H   v avec v bruit de mesure

T T
 =  H H  H [ H   v ]
−1

 L'écart entre l'estimation et la vraie valeur des paramètres du modèle est :

  =  H T H −1 H T v
−

Master ASE1 – Identification des Processus – P. Bonnet 55


ANALYSE DES MOINDRES-CARRES

 Biais de l'estimation des paramètres:


 L'espérance de l'erreur d'estimation est :
  ] = E [ H T H −1 H T v ]
E [ −


 Pour un bruit de mesure non corrélé à H , l'espérance sera :

  ] =  H T H −1 H T E [v]
E [ −

Dans les cas usuels (bruit à valeur moyenne nulle), l'estimateur des
moindres-carrés est non-biaisé : la valeur estimée des paramètres est
proche de la vraie valeur en moyenne.
Il fournit une estimation non-décalée par rapport aux vraies valeurs.

Master ASE1 – Identification des Processus – P. Bonnet 56


ANALYSE DES MOINDRES-CARRES

 Variance de l'estimation des paramètres:


 Variance d'une variable scalaire :


2 2
  = E [−
  ] avec 
 = E [] 1
 Matrice de variance/covariance d'une grandeur vectorielle A = 2
...
  A − A  ]
 A = E [ A − A T n
Terme de variance

[ ]
1 −1 2 1−1 2 −2  ... 1− 1  n −n 
2
2 −2 1−1   2−2  ... 2− 2 n −n 
A = E
... ... ... ...
 n −n 1 −1  n −n 2 −2  ... n −n 2

Terme de covariance
Master ASE1 – Identification des Processus – P. Bonnet 57
ANALYSE DES MOINDRES-CARRES

 Variance de l'estimation des paramètres:


 Variance de l'estimateur des moindres-carrés (pour un bruit centré):

  = E [  −   −  T ]

  = E [ [ H H  H v][ H H  H v] ]
T T T T T
 −1 −1

  = E [  H H  H v v H  H H   ]
T −1 T T T −1 T

 Pour un bruit non-corrélé à la matrice H , la matrice de variance-covariance de


l'estimation est :

  = [  H H  H ] E [v v ] [ H  H H   ]
T −1 T T T −1 T

Master ASE1 – Identification des Processus – P. Bonnet 58


ANALYSE DES MOINDRES-CARRES

 Variance de l'estimation des paramètres:


Cas du bruit blanc sur les mesures
 chaque mesure est supposée entachée d'un bruit blanc additif

 il n'y a pas de corrélation du bruit de mesure entre 2 mesures

[ ]  
2 2
v t1 0 ... 0 1 0 ... 0
2 2
 T
E [v v ] = E
0 v t2 ... 0
=
0  2 ... 0
... ... ... ... ... ... ... ...
2 2
0 0 ... v tn 0 0 ...  n

 Pour un bruit constant sur chaque mesure, de variance  2Y , le bruit sur


l'estimation des paramètres du modèle est :
−1 T
 =  [ H H  2
Y
T
]
Master ASE1 – Identification des Processus – P. Bonnet 59
ANALYSE DES MOINDRES-CARRES

 Estimateur du maximum de vraisemblance


On prend comme matrice de pondération l'inverse de la matrice de
variance-covariance du bruit, ce qui a pour effet de minimiser le poids des
mesures à bruit élevé.

  bruit = E [ v v T ]

  = T Q  = T  −1
bruit 

 =  H T  −1 H −1
H T −1
 bruit Y
 bruit

Master ASE1 – Identification des Processus – P. Bonnet 60


ANALYSE DES MOINDRES-CARRES

 Rejet des mesures aberrantes


 Le calcul des paramètres du modèle permet de calculer X

 X = H 

 La variance de l'estimation est : E [ X X T ] = E [ H   T H T ]

E [ X X T ] = H   H T

 Pour des mesures bruitées par un bruit blanc :


T 2 2 T −1 T T
E [ X X ] =  X =  Y H [ H H  ] H

 Rejet des mesures y t i  dont l'écart avec le modèle x t i  est supérieur


à  X avec K fixé par l'utilisateur ( de l'ordre de 2 à 3)

Master ASE1 – Identification des Processus – P. Bonnet 61


MOINDRES-CARRES RECURSIFS

MOINDRES CARRES
RECURSIFS

Master ASE1 – Identification des Processus – P. Bonnet 62


MOINDRES-CARRES RECURSIFS
 Calcul sur n mesures :

 On dispose de n observations auxquelles correspondent n valeurs du modèle

  
yt 1  f 1 t 1  f 2 t 1  ... f k t 1 
Y n = y t 2  X n = Hn =
f 1 t 2  f 2 t 2  ... f k t 2 

... ... ... ... ...
y t n  f 1 t n  f 2 t n  ... f k t n 

 la solution optimale calculée sur les n mesures est :

n =  H Tn H n −1 H Tn Y n

 elle minimise le critère calculé sur ces n mesures :

n T
= Y n− X n  Y n − X n 
Master ASE1 – Identification des Processus – P. Bonnet 63
MOINDRES-CARRES RECURSIFS

 Inconvénients de la méthode classique:

 La dimension (nxk) de la matrice H croît avec le nombre n de mesures


T T
 n =  H n H n  H n Y n
−1

 L'ajout d'une (n+1)ème mesure impose de recommencer la totalité du calcul

 Mise en évidence de la solution

 Utiliser la technique de calcul  n = R n Q n


−1

T
avec Rn = H n H n de dimension (kxk)
T
et Q n = H n Y n de dimension (kx1)

Master ASE1 – Identification des Processus – P. Bonnet 64


MOINDRES-CARRES RECURSIFS
 Ajout de la (n+1)ème mesure :

 On dispose de n+1 observations auxquelles correspondent n+1 valeurs du


modèle :

  
y t 1  f 1 t 1  f 2 t 1  ... f k t 1 
y t 2  f 1 t 2  f 2 t 2  ... f k t 2 
Y n1 = ... X n1 = H n1  = ... ... ... ... 
y t n  f 1 t n  f 2 t n  ... f k t n 
y t n1 f 1 t n1  f 2 t n1  ... f k t n1 

 Posons :

hTn1 = [ f 1 t n1  f 2 t n1 .... f k t n1 ]

Master ASE1 – Identification des Processus – P. Bonnet 65


MOINDRES-CARRES RECURSIFS
 Ajout de la (n+1)ème mesure :

 On dispose de n+1 observations auxquelles correspondent n+1 valeurs du


modèle

Y n1 =
 Yn

y t n1 
X n1 =
 
Xn

x n1
=
Hn

hTn1

 Posons :

 n1 =  H Tn1 H n1 −1 H Tn1 Y n1

Master ASE1 – Identification des Processus – P. Bonnet 66


MOINDRES-CARRES RECURSIFS
T
 Calcul de  H n1 H n1  :

 H
T
n1 H n1 =
 H
T
n h n1
 Hn

T
hn1

T T T
H n1 H n1 = H n H n  hn1 h n1
T
 Calcul de  H n1 Y n1  :

H
T
n1 Y n1 =
 H
T
n h n1
 Yn

y n1

H Tn1 Y n1 = H Tn Y n  hn1 y n1
Master ASE1 – Identification des Processus – P. Bonnet 67
MOINDRES-CARRES RECURSIFS
 Expression récursive de base:
T T T
 n1 =  H n H n  h n1 h n1   H n Y n  h n1 y n1 
−1

 Construire la matrice H au rang n


Calculer R n = H Tn H n de dimension (kxk)

Calculer Q n = H Tn Y n de dimension (kx1)

En déduire  n = R−1
n Q n estimation initiale au rang n

Itérer pour passer du rang n au rang n+1 :


Déterminer hTn1 = [ f 1 t n1  f 2 t n1  .... f k t n1 ]

Calculer R n1 = R n  h n1 h n1


T
(kxk) puis Q n1 = Q n  hn1 y n1 (kx1)

Et en déduire n1 = R−1


n1 Q n1

Master ASE1 – Identification des Processus – P. Bonnet 68


MOINDRES-CARRES RECURSIFS
 Calcul récursif évolué :

 n1 =  H Tn H n  hn1 hTn1 −1  H Tn Y n  hn1 y n1 

 Posons T
P n =  H n H n
−1
et
T
P n1 =  H n H n  hn1 hn1 
T −1

 Quelle est la relation entre P n et P n1 ?

 Lemme d'inversion :
Soit A = B  C  A−1 = B−1 − B−1 C B−1 [ I  B−1 C ]−1

 Appliquons le lemme à P n1

P n1 =  H Tn H n −1 −  H Tn H n −1 h n1 h Tn1  H Tn H n −1 [ 1 hTn1  H Tn H n −1 h n1 ]−1
T T −1
= P n − P n h n1 h n1 P n [ 1 h n1 P n h n1 ]
= P n − P n h n1 [ 1 h Tn1 P n h n1 ]−1 h Tn1 P n
Master ASE1 – Identification des Processus – P. Bonnet 69
MOINDRES-CARRES RECURSIFS
 Calcul récursif évolué :

P n1 = P n − P n h n1 [ 1 hTn1 P n hn1 ]−1 hTn1 P n

−1
K n1 = P n h n1 [ 1  h n1 P n hn1 ]
T
1

P n1 = P n − K n1 hTn1 P n

P n1 =  I − K n1 hTn1  P n 3

T T T
 n1 =  H n H n  h n1 h n1  H n Y n  h n1 y n1 
−1

=  P n − K n1 hTn1 P n   H Tn Y n  h n1 y n1


T T T T
= P n H n Y n  P n h n1 y n1 − K n1 h n1 P n H n Y n − K n1 hn1 P n h n1 y n1

Master ASE1 – Identification des Processus – P. Bonnet 70


MOINDRES-CARRES RECURSIFS
 Calcul récursif évolué :
 Récurrence finale
−1
K n1 = P n hn1 [ 1  h T
n1 P n hn1 ]
n1 =  n  K n1  y n1 − hTn1  n 
T
P n1 =  I − K n1 hn1  P n

 K n1 est le gain matriciel de correction

 Le gain de correction diminue à mesure que n augmente

 Les termes de la matrice P tendent vers 0 lorsque n augmente

Master ASE1 – Identification des Processus – P. Bonnet 71


MOINDRES-CARRES RECURSIFS
 Calcul récursif évolué :
 Autre expression de la récurrence finale
n1 =  n  P n1 hn1  y n1 − hTn1  n 

T
P n hn1 h n1 Pn
P n1 = P n −
1  hTn P n hn1

 P n1 est le gain matriciel de correction

 Le gain de correction diminue à mesure que n augmente et tend vers 0

Master ASE1 – Identification des Processus – P. Bonnet 72


MOINDRES-CARRES RECURSIFS
 Utilisation pratique de la récurrence évoluée:

 Poser les conditions initiales :


P 00 matrice carrée kxk
 00 vecteur colonne kx1

 Choix de P 00 : la matrice a pour définition P 00 =  H T00 H 00 −1


avec H 00 inexistante (absence de ligne).

P étant de dimension constante kxk , on propose le choix : P 00 = G I k


avec G gain d'adaptation ( G = 10 ou 100 par exemple)

 Choix de  00 : on propose le plus souvent  00 = 0

Master ASE1 – Identification des Processus – P. Bonnet 73


MOINDRES-CARRES RECURSIFS
 Utilisation pratique de la récurrence évoluée:

 Itérer une première fois


K 1 = P 00 h1 [1  hT1 P 00 h1 ]−1
T
 1 =  00  K 1  y 1 − h1  00 

P 1 =  I − K 1 hT1  P 00
 Itérer une deuxième fois
T −1
K 2 = P 1 h2 [1  h2 P 1 h 2 ]
T
 2 =  1  K 2  y 2 − h 2  1 
T
P 2 =  I − K 2 h2  P 1

 Appliquer la récurrence générale

Pierre BONNET Modélisation Identification


Master ASE1 – Identification des Processus – P. Bonnet 74
72
MOINDRES-CARRES RECURSIFS
 Pondération de la récurrence
 Objectif : - éviter la décroissance de K n1 ou P n1 vers 0
- diminuer le "poids" des anciennes mesures au profit des plus
récentes

 Loi proposée: P n1 = 1 H Tn H n   2 hn1 h Tn1 −1

Avec 011 et 02 2

A chaque étape de la récurrence, on multiplie le "poids" des anciennes mesures par le


facteur

P n1 =
1
1 
Pn −
P n h n1 hTn1 P n
T
1 / 2  h n1 P n h n1 
Master ASE1 – Identification des Processus – P. Bonnet 75
MOINDRES-CARRES RECURSIFS
 Introduction d'un facteur d'oubli
 choix : 1 = cste 2 = 1
diminution du "poids" des anciennes mesures au profit des plus récentes
d'où le principe du "facteur d'oubli" du passé

 Loi résultante:
 n1 =  H Tn H n  hn1 hTn1 −1  H Tn Y n  h n1 y n1  avec 01
A chaque étape de la récurrence, on multiplie le "poids" des anciennes mesures par le
facteur d'oubli 

A la (n+1) ième étape:


n
- la 1ère estimation est pondérée par 
 n−1
- la 2ème est pondérée par 
- la nième est pondérée par 
- la nouvelle est pondérée par 1

La pondération suit une loi exponentielle

Master ASE1 – Identification des Processus – P. Bonnet 76


MOINDRES-CARRES RECURSIFS
 Introduction d'un facteur d'oubli

 Le facteur d'oubli est choisi de l'ordre de 0.951

 Récurrence obtenue :
[ T 
 n1 =  n  K n1 y n1 − hn1  n ]
P n hn1
K n1 =
  hTn1 P n h n1
1
P n1 =  I − K n1 hTn1  P n

 Principale application : suivi des paramètres d'un système évoluant dans le temps
Exemple : suivi des paramètres d'un modèle linéaire par morceaux x = at  b , pour
des données présentant des discontinuités de modèle .

Master ASE1 – Identification des Processus – P. Bonnet 77


MOINDRES-CARRES RECURSIFS

 Algorithme à trace constante


 si h n1  0 , on aura P n1 ≃ P n / avec 1 la matrice P n "explose"

L'algorithme à trace constante a pour objectif de maintenir la somme des éléments


diagonaux à une valeur non nulle à tout instant :
trace P n1  = tr  P n  = tr P 0 =Cste
On choisit comme valeur de trace kG avec G gain initial et k nombre de paramètres
(valeurs typiques G = 1 à 4 ) :

tr  P n1  =
1
1 
tr P n −
P n h n1 h Tn1 P n
T
1 / 2  h n1 P n h n1 
Les valeurs de 1 et 2 sont déduites de cette équation, le rapport 1 / 2 étant fixé à
une valeur constante

Master ASE1 – Identification des Processus – P. Bonnet 78


MOINDRES CARRES NON-LINEAIRES

MOINDRES-CARRES
NON-LINEAIRES

Master ASE1 – Identification des Processus – P. Bonnet 79


MOINDRES CARRES NON-LINEAIRES
 Position du problème
Dans de nombreuses applications , la fonction modèle n'est pas linéaire par rapport à ses
paramètres.
Exemple : réponse indicielle d'un circuit du 1er ordre
y3 y5 y5
y2 f t ,
y1

y0

0 1 2 3 4 5 t
t


L'expression du modèle est : f t , = K 1 − e 
T
avec  = [ K , ]
 la dépendance vis à vis du paramètre  est non-linéaire , il n'est plus possible de
résoudre le système par la méthode linéaire (pas de matrice H )

Master ASE1 – Identification des Processus – P. Bonnet 80


MOINDRES CARRES NON-LINEAIRES

 Méthode de Gauss-Newton (méthode de gradient)

 La proposition est de partir d'une valeur initiale 0 des paramètres et de modifier


itérativement la valeur de  d'un incrément  de façon à minimiser le critère d'erreur
quadratique cumulée  à chaque étape.

[ ]
Etape initiale f t 1, 0 
T f t 2, 0 
Pour 0 = [ a 10 , a 20 , ...
, ] le modèle prend les valeurs : F t , 0  =
...
f t n , 0 
L'erreur entre le modèle et les mesures est :  = Y − F t , 0 

L'erreur quadratique cumulée est :    =  


0
T
= Y − F t , 0 T Y − F t ,0 

Généralement, l'erreur cumulée sera importante , les conditions initiales étant éloignées
de la solution optimale.

Master ASE1 – Identification des Processus – P. Bonnet 81


MOINDRES CARRES NON-LINEAIRES
 Méthode de Gauss-Newton
Incrémentation

 modification de la valeur de 0 d'un incrément  de façon à minimiser le critère

d'erreur quadratique cumulée 


Pour  = 0   , le modèle prend les valeurs F t , 0   et l'erreur    
0 

 Pour se placer au minimum d'erreur , on choisit  tel que


∂     =0
0 

∂ 

Calcul du minimum de l'erreur cumulée :


    T
∂ 0
∂ 

= −2
[ ∂ F t ,0 
∂  ]  Y −F t ,0  = 0

Master ASE1 – Identification des Processus – P. Bonnet 82


MOINDRES CARRES NON-LINEAIRES
 Méthode de Gauss-Newton
Calcul de F t , 0  
Le développement de Taylor du 1er ordre du modèle permet d'approximer la nouvelle
valeur du modèle à chaque instant d'observation :
f t i , 0   = f t i , 0   J i 0 .
avec J i 0  = ∇  f t i , 0 T gradient de f en ligne

L'extension à l'ensemble des points de calculs prend la forme matricielle suivante :

F t , 0 =F t ,0   J 0 .

[ ]
∂ f t 1  ∂ f t 1  ∂ f t 1 
...
∂ a1 ∂ a2 ∂ ak
∂ f t 2  ∂ f t 2  ∂ f  t2
∂ F t , 0   ...
Avec : J 0  = = ∂ a1 ∂ a2 ∂ ak
∂ 
... ... ... ...
jacobienne de f/paramètres ∂ f t n  ∂ f t n  ∂ f t n 
...
∂ a1 ∂ a2 ∂ ak

Master ASE1 – Identification des Processus – P. Bonnet 83


MOINDRES CARRES NON-LINEAIRES
 Méthode de Gauss-Newton
Calcul du minimum de l'erreur cumulée :
    T
∂ 0
∂ 

= −2
[ ∂ F t , 0 
∂  ]  Y −F t ,0  = 0

D'où : −2 J T  Y − F t , 0 J 0 .    = 0

On en déduit la valeur de l'accroissement à faire sur les paramètres pour minimiser l'erreur:
−1
 = [ J 0  . J 0  ] . J 0   Y −F t , 0 
T T

Itération
On itère en définissant les nouvelles valeurs des paramètres 1 = 0   et les
nouvelles valeurs du modèle F t , 1  . La correction suivante à faire sera :

T −1 T
 = [ J 1  . J 1  ] . J 1   Y − F t , 1  

Master ASE1 – Identification des Processus – P. Bonnet 84


MOINDRES CARRES NON-LINEAIRES
 Méthode de Gauss-Newton
Limitation : l'inversion de la matrice J T J peut poser problème (matrice singulière).

Pour éviter ce blocage, l'algorithme a été modifié par Levenberg-Marquardt:


−1
 = [ J . J   I ] . J  Y −F t , 
T T

Le paramètre  joue le rôle d'un amortissement de la correction; il doit être ajusté à


chaque pas de calcul. Dans les cas simples, on peut se contenter d'un amortissement
constant, dont la valeur initiale a été proposée par Marquardt:

0 =  . max [ J T J ]

 est un paramètre de gain à choisir convenablement (!)

Master ASE1 – Identification des Processus – P. Bonnet 85


MOINDRES CARRES NON-LINEAIRES
 Méthode de Gauss-Newton
Exemple d'application : soit un système du 1er ordre dont désire connaître les paramètres
caractéristiques (gain et constante de temps) par l'observation de la réponse indicielle.

Temps en s 0 1 2 3 4 5
y(t) 0.05 0.45 0.59 0.64 0.64 0.69

L'observation directe montre que le gain (valeur finale) est proche de 0.7 et la constante
de temps de l'ordre de la seconde (échelle de temps) t

 T
Le modèle de la réponse indicielle est : f t , = K 1 − e  avec  = [ K , ]

La matrice du Jacobien est construite à partir des dérivées partielles de f par rapport à 
−t −t
∂ f t , ∂ f t , t
= 1−e  = −K 2 e 
∂K ∂ 
Contrairement au cas d'un modèle linéaire/paramètres, les dérivées partielles dépendent
des paramètres eux-mêmes.

Il faut fixer une valeur initiale de K et  pour donner une valeur à la matrice Jacobienne
Valeurs initiales proposées : K 0 = 1 0 = 1
Master ASE1 – Identification des Processus – P. Bonnet 86
MOINDRES CARRES NON-LINEAIRES
 Méthode de Gauss-Newton

[ ] []
0. 0. 0.
0.63 −0.37 0.63
0.86 −0.27 0.86
La matrice Jacobienne est : J 0  = les valeurs du modèle : F 0 =
0.95 −0.15 0.95
0.98 −0.07 0.98
0.99 −0.03 0.99

L'erreur quadratique cumulée est de :  = 0.42


T −1 T
L'incrément à faire sur les paramètres est :  =  J J  J Y −F 0  = [−0.33
−0.06 ]
La nouvelle valeur des paramètres est : 1 = [ ]
0.67
0.94

Après 10 itérations , la valeur des paramètres converge vers : 10 = [ ]


0.67
0.92

L'erreur quadratique cumulée est de :  = 0.0035

Master ASE1 – Identification des Processus – P. Bonnet 87


MOINDRES CARRES NON-LINEAIRES
 Méthode de Gauss-Newton

Attention : certaines valeurs initiales ne permettent pas à l'algorithme de converger (par


exemple K = .1 et tau = .1 )!

Master ASE1 – Identification des Processus – P. Bonnet 88


MODELISATION DES SYSTEMES

MODELISATION
DES
SYSTEMES

Master ASE1 – Identification des Processus – P. Bonnet 89


MODELISATION DES SYSTEMES

 Modélisation d'un système discret

La détermination des paramètres d'un système à partir de l'observation de sa


sortie, compte-tenu de l'entrée appliquée.

Sorties
Entrée
Système
externe
+ Erreur de

- modélisation
Sorties
Modèle
modélisées

 le modèle doit traduire la relation entrée-sortie caractéristique du


système

Master ASE1 – Identification des Processus – P. Bonnet 90


MODELISATION DES SYSTEMES
 Système discret :

 modèle de récurrence

y m n a1 y m n−1  a2 y m n−2 ... a p y m n− p


= b 0 u n  b1 u  n−1 ... bq u n−q
Master ASE1 – Identification des Processus – P. Bonnet 91
MODELISATION DES SYSTEMES
 Modèle de récurrence

 la sortie du système à l'instant n se déduit


de la sortie aux instants ( n-1, n-2, ... ,n-p)
et de l'entrée aux instants (n, n-1,n-2, ... ,n-q )

y m n = −a1 y m n−1 − a 2 y m n−2 −...− a p y m n− p


 b0 u n  b1 u n−1 ... bq un−q

Ce modèle est dit "Autorégressif à moyenne mobile" ou modèle ARMA

Master ASE1 – Identification des Processus – P. Bonnet 92


MODELISATION DES SYSTEMES
 Exemple de modèle de récurrence discrète :
 Soit un système du premier ordre de fonction de transfert :
Y  p K
L p = =
U  p p

Ce système correspond à une équation de récurrence de la forme :


ẏ   y = K u

En approximant la dérivée par Euler :


y n1 − y n
  y n = K un
Te

Le système discrétisé est décrit par la récurrence :

y n1 = 1 −  T e  y n  K T e u n

Ou : y n = 1 −  T e  y n−1  K T e u n−1

Master ASE1 – Identification des Processus – P. Bonnet 93


MODELISATION DES SYSTEMES
 modèle de récurrence :

La récurrence s'applique aux mesures au bruit près:


y n = −a 1 y n−1 − a 2 y n−2 −...− a p y n− p
 b0 u n  b1 u n−1 ... bq u n−q  n

Le membre de droite représente le modèle . Il est défini à partir des mesures , et non à
partir des valeurs modélisées précédentes. On remarque que c'est un modèle avec
erreur (la somme pondérée des erreurs faites sur chacune de observations faites aux
instants n-1, ...,n-p ) . De ce fait, le modèle est biaisé (erreur systématique si les
mesures sont corrélées)

Master ASE1 – Identification des Processus – P. Bonnet 94


MODELISATION DES SYSTEMES
 Observation du système sur k échantillons :
 instant N :
y  N  = −a1 y  N −1 − a 2 y  N −2 −...− a p y  N − p
 b0 u  N   b1 u  N −1 ... b q u  N −q   N 
 instant N-1
y  N −1 = −a 1 y  N −2 − a 2 y  N −3 −...− a p y  N − p−1
 b 0 u N −1  b1 u  N −2 ... bq u N −q−1   N −1

 instant N-k:
y  N −k  = −a1 y N −1−k  − a 2 y  N −2−k  −...− a p y  N − p−k 

 b 0 u  N −k   b 1 u N −1−k  ... b q u N −q−k    N −k 

Master ASE1 – Identification des Processus – P. Bonnet 95


MODELISATION DES SYSTEMES
 Observation du système sur k échantillons :

 écriture matricielle
Les mesures sont liées à l'entrée par la relation :

[]
a1

[ ][ ] [ ]
yN  − y  N −1 ... − y  N − p uN  u  N −q .  N 
y  N −1 − y  N −2 ... − y  N − p−1 u  N −1 u  N −q−1 ap  N −1
= 
.. . ... ... ... ... ... b0 ...
y  N −k  − y  N −1−k  ... − y  N − p−k  u  p1 u  N −q−k  .  p1
bq

Master ASE1 – Identification des Processus – P. Bonnet 96


MODELISATION DES SYSTEMES
 Observation du système sur k échantillons (ou plus):

[]
a1

[ ]
yN  .
 Posons : vecteur y  N −1 vecteur des
 =
ap
des mesures
Y = para mètres
... b0
y  N −k  .
bq

[ ]
− y N −1 ... − y  N − p uN  u N −q
− y  N −2 ... − y  N − p−1 u N −1 u  N −q−1
H =
... ... ... ... ...
− y  N −1−k  ... − y N − p−k  u  p1 u N −q−k 

Les mesures suivent la loi : Y = H 

 C'est un problème classique de résolution par les moindres-carrés

Master ASE1 – Identification des Processus – P. Bonnet 97


MODELISATION DES SYSTEMES
 Modélisation par les moindres carrés simples:

 solution de base non récursive

 =  H T −1 H T Y

 Exciter le système avec un signal d'entrée et relever la réponse :


- échelon
- bruit blanc
- signal binaire pseudo-aléatoire (voir TP)

 Déterminer  par les moindres-carrés:


- former le vecteur des mesures Y
- former la matrice H à partir des mesures et des valeurs d'entrée
(tenir compte d'un retard éventuel)
- résoudre le système

Master ASE1 – Identification des Processus – P. Bonnet 98


MODELISATION DES SYSTEMES
 Modélisation par les moindres carrés simples:

 Exemple d'un premier ordre soumis à un échelon


Valeurs relevées pour une réponse à un échelon d'amplitude 1 :
Y= [0 .4 .7 .95 .98 1 .97 .99 1.02 ]';

 Le modèle retenu est :


y n = −a 1 y n−1  b 1 u n−1

La matrice H est :

[ ]
− y 1 u 1
−y  2 u 2
H=
... ...
− y n−1 u n−1
Les valeurs obtenues sont :

[
 = −0.577
0.444 ]
Master ASE1 – Identification des Processus – P. Bonnet 99
MODELISATION DES SYSTEMES
 Résolution par les moindres carrés récursifs:

 La résolution par les moindres-carrés récursif apporte un outil de calcul efficace,


et surtout un moyen d'identification en ligne ,c'est à dire au fur et à mesure que les mesures
sont faites

 Fixer l'ordre du modèle, son retard et choisir les valeurs initiales :


- par exemple  = 0
00
P 00 = 1000

 Exciter le système avec un signal d'entrée (échelon...)


- relever la réponse (et l'entrée) dès le premier instant d'échantillonnage
- ajuster le modèle par les MCR
- itérer pour obtenir les n

Master ASE1 – Identification des Processus – P. Bonnet 100


MODELISATION DES SYSTEMES
 Résolution par les moindres carrés récursifs:
 Exemple du système du premier ordre précédent sans retard
Y= [0 .4 .7 .95 .98 1 .97 .99 1.02 ]';

 Modèle à 2 paramètres a1 et b1 :
Valeurs initiales:
T
 00 = [0 0]

P 00 =
[ 1000
0
0
1000 ]
 Récurrence avec le vecteur
h n1 = [− y  n u n]T

 Les valeurs de n convergent vers la valeur finale précédente


La simulation "colle" aux mesures pour les premiers instants (réajustement du
modèle sur les mesures) puis produit un effet de filtrage (le modèle a convergé)
Master ASE1 – Identification des Processus – P. Bonnet 101
MODELISATION DES SYSTEMES
 Les problèmes non traités dans ce cours :
 La méthode introduit un biais d'estimation : les résultats sont décalés lorsque le bruit
est important.

Il devient nécessaire d'introduire un modèle du bruit pour "blanchir" l'erreur ou de


décorréler observation/erreur (ARMAX, MCR généralisés, variable instrumentale...)

 La méthode de base suppose que le retard et l'ordre du système sont connus.


Il est possible de déterminer automatiquement ces valeurs par minimisation de l'erreur
de modélisation.

 La méthode peut s'appliquer à un système bouclé déjà régulé (régulateur


classique). L'identification se fait sans intervention sur le process existant.
Le bouclage provoque un biais important des mesures. Des algorithmes permettent de
résoudre cette problématique.

Master ASE1 – Identification des Processus – P. Bonnet 102