ASI 3
Méthodes numériquespour l’ingénieur
la méthode des moindres carrés
Le point de vue numérique
(factorisation QR)
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8-4
-3
-2
-1
0
1
2
Approximation/interpollation: moindres carrés
carrés moindres des sensau ion approximat )( inconnues et équations
)(min )(
ionapproximat
tioninterpolla )(
, : données
1
2
1
1
1
1
,1
k
n
iiii
k
j
jijii
k
j
jj
niii
nn
yxfyxyxf
nk
nkxxf
yx
f(x)
xi
yi
Posons le problème matriciellement
nk
nkj
njn
ik
ikj
iji
kk
jj
kk
jj
xfxxx
xfxxx
xfxxx
xfxxx
)1()1()1(21
)1()1()1(21
2)1(
2)1(
2)1(
221
1)1(
1)1(
1)1(
121
......
......
......
......
niii
k
j
jj yxxxf ,1
1
1 ,pour )(
Posons le problème matriciellement
nk
nkj
njn
ik
ikj
iji
kk
jj
kk
jj
xfxxx
xfxxx
xfxxx
xfxxx
)1()1()1(21
)1()1()1(21
2)1(
2)1(
2)1(
221
1)1(
1)1(
1)1(
121
......
......
......
......
nk
nj
nn
ik
ij
ii
kj
kj
xfxxx
xfxxx
xfxxxxfxxx
... ... 1
... ... 1
... ... 1 ... ... 1
)1()1()1(
)1()1()1(
2)1(
2)1(
2)1(
2
1)1(
1)1(
1)1(
1
=
niii
k
j
jj
yx
xxf
,1
1
1
,pour
)(
Xa = f
Approximation au sens des moindres carrés
n
i
jii
k n
i
jii
n
i
jii
k
ij
j
n
ii
k
j
jij
n
iii
xyxxxyxJ
kjJ
J
yxJJyxf
1
1
1 1
11
1
1
1
1
1
2
1
1
1
2
02
,...,1 ;0*)()(argmin* : principe
)( avec )(min )(min
Système linéaire de k équations et k inconnues
Approximation : version matricielle
yXXXJyXXJ
yXeJ
y
y
y
xx
xx
xx
e
e
e
yXe
yxyxfe
yxJJyxf
n
i
k
j
kii
kii
k
n
i
i
k
j
jijiii
n
ii
k
j
jij
n
iii
''0)(' '2)('
)(
1
1
1
)(
)( avec )(min )(min
22
11
1
1
1111
0
1
2
01
2
Système linéaire de k équations et k inconnues
Erreur d’approximation
Approximation : version matricielle
yXXXJyXXJ
yXeJ
y
y
y
xx
xx
xx
e
e
e
yXe
yxyxfe
yxJJyxf
n
i
k
j
kii
kii
k
n
i
i
k
j
jijiii
n
ii
k
j
jij
n
iii
''0)(' '2)('
)(
1
1
1
)(
)( avec )(min )(min
22
11
1
1
1111
0
1
2
01
2
Système linéaire de k équations et k inconnues
Erreur d’approximation Matrice de Vandermonde
(1735-1796)
Forme quadratique
yXXX
hGJyXXJ
hGJ
yyyXXX
yXyX
yXeJ
'' 0)(' '2)('
'2'21
min)(min
'''2''
)('
22
Équations normales
Point de vue algèbrique (géométrique)X représente une application linéaire de Rp sur Rn Projection de y (les résultats des expériences)sur le sous espace vectoriel engendré par X (les données)
0'
0ˆ' à orthogonalest ˆ
projecteurun est '' que montrons
'''ˆ1
1
yXXyyXXyy
XXXX
XyXXXXy
y
0 pX RIm
nR yXyye ˆ
p
jj
jXX1
)(
Comment résoudre le problème des moindres carrées ?
2
2
2
111
111
111
00
00
00
111
XXX T
Rang(X’X) = Rang(X) = 3
cond(X’X) = cond(X)*cond(X)
régulièreest machine,précision sisingulièreest machine,précision si 2
XXX T
Il faut mieux travailler sur X que sur X’X … si possible !
Un principe, deux idées
ire)(triangula ''' : ainsi
avec ion factorisat
yQRyXXaX
IQ'Q QRX
R
G
0
HH
R
0
X
X
Orthogonalisation de Schmidt Orthogonalisation de Householder
QRXRHX
Car H orthogonale
Matrice orthogonale
1 p
1
n
1
n
Base orthogonale (Schmidt)
yGRyGGGGRG
yGGGRyGGX
yGGyXy
IGG
R
GGRX
' '''
''
' 'ˆ
'
supérieure ire triangula:
eorthogonal base :
R
G X
0
G,R = decompose(A)
x = triang(R,G’b)
Fonction x = mmc(A,b)
Décompose : X=GR
)(
)()(
1
1
)()()()()(
)2(
)2()2()1()1()2()2()2(
)1(1)1(
1)1(
~
~ ;'
~
~
~ ;'
~
1 avec
k
kk
k
i
iikkk
G
GGGGXXG
G
GGGGXXG
XkXkG
R
G X
0Théorème : dans tout espace vectoriel de dimension finie, il existe des bases orthogonales
)(kG )(kX
kir~
{
Décompose : X=GR
fait
fait 2/ ; àjusqu' 1pour fait
2 -
; àjusqu' 1pour 02
fait fait ; àjusqu' 1pour
fait ; àjusqu' 1pour 0
1 àjusqu' 1pour fait 0 ; àjusqu' 1pour
àjusqu' 1pour
gggnj
ggggxgnj
g
gpsggnjgapspsnj
ps
kignj
pk
jkjk
kjkj
jkjkjk
jijkjk
jijk
jk
Fonction G,R = décompose(A)
Problème d’accumulation d’erreurs d’arrondi
La méthode QRIl est si facile le résoudre un système « triangulaire » !
1bQRxbAxQRA
Q « facilement » inversible et R triangulaire
Définition : on appelle matrice de Householder du vecteur normé u une matrice H de la forme suivante
2 TuuIH
Propriété : une matrice de Householder est symétrique et orthogonale HTH=I
xHx Les transformations orthogonales « conservent » la norme
Orthogonalisation : X = QR
),(' : norme la concerve
symétrique
1 nnQQQxQxQ
Q
L
R
Q X
0
)(kQ )(kXTransformation de Householder
'
eorthogonal matrice uneest esorthogonal matricesdeux deproduit le
......
LU)pour (comme colonnepar colonne
)'( e)orthogonal ( '
1
)1()2()()2()1(
1
HHQ
HHHHHH
HQQRHRH
RHXRHX
jkk
Définir H
Householder et moindres carrés
ire) triangula(système min
min
minmin
carrées moindres des problèmeau appliquons
-
: norme la concerve - eorthogonalation transformuneest
T
yQRyQR
yQRQ
yQRyX
IQQ
xxQQQ
TT
T
T
Transformation de Householder
ation transformpremière la
: axed' Symétrie
''
2
à eorthogonalrHouseholde detion transforma
exyeHx
yHyy
yyyy
IH
y
Transformation de HouseholderThéorème : pour tout vecteur normé x, pour le vecteur unitaire e1
il existe une matrice H telle que : Hx=e1
Démonstration : posons
11
1
2
112
1112
11112
112
11
ou d'12
1or
12 2
''''2 '2'2
:effet en question, la à répond '2 alors
1 avec
eexxHxx
exxxexxexx
xeexexexxxxexexxxyyIHx
yyIH
exexy
Transformation de Householder
H )(kH
R
0
X
)(kX0
)1()1(')1()1(
')1()1()1()1()1(
)1()1()1()1()1(
2
ation transformpremière la
''
2
à eorthogonalrHouseholde detion transforma
eXeX
eXeXIH
eXyeXH
yyyy
IH
y
H )(kHH
)(~ kH=
1 1
0
0
ation transform la èmek
)()(
)()()(
)1()()(
'
'2~
~
kk
kkk
kkk
yy
yyIH
eXy
Quels calculs ?
jk
iijij
n
kiij
kij
kk
kk
kkk
syxx
xys
XyyX
Xyy
yyIXH
)(
)(
)()(
)()(
)()()(
1
'1
'
'~
QR : algorithme de Householder
• Rangement des variables
• produit des H : (si besoin) à la fin en commençant par le plus simple
• formules à l’étape k
njkpikysaa
pjkays
a
an
nikayay
aasign
kijjiji
n
kiji
kij
kkk
kkkk
kik
ik
kkk
k
n
kikikk
k
1et 1pour
1pour 1
1pour et
)(
)(,,
,)(
)(,
,)(2)(
,)()(
,)(
2,,
)(
Diag(R)k
yPartie non encore factorisée
1y
k premièreslignes de R
p
n
L’algorithme QR
fait fait fait ; àjusqu' pour
/ fait ; àjusqu' pour
0
; àjusqu' 1pour
finsi alors 0 si ; s
fait
; àjusqu' pour
0s àjusqu' 1pour
2
iijij
iij
kkkk
kk
kk
j
jkj
ysxxnkiss
yxssnkis
pkjxx
xsyy
yssxy
nkj
pk
Fonction Q,R = décomposeQR(X)
Retour des moindres carréesla méthode QR
cRxxbAxd
cRxbQQRxQbQAxQ
d
cbQ
bQAxQbAxQbAx
x
:en résoudre min0
''''
' posons
'''
2
222
Mise en œuvre : on calcule directement Q’b pendant la décomposition
RemarquesMMC sans Q
exxwRe
rXwRXyr
rXXeXXyr
yRyXzR
RRXXQRX
yXXXyX
65
''43
'' : résidus
2''1
''
''min 2
R=chol(A’A)
Si on ajoute ou on enlève une variable Q et R changent « peu »
Matlab
yQHHk
HHHX
yXbXyy
bX
k
' vecteur let directemen mais , matrice decalculer sans puis matrices lescalculer sans 3:1sur boucle unefaisant en puis
et , matrices lescalculant en boucle de faire sans abordd' matrice lasur r Householde de méthode la zimplémente 3.
matlab de fonction \ lautilisant en - matlab deqr fonction lautilisant en -
normaleséquation lesutilisant en - , carrées moindres des problème le résoudre .2
* que tel construire 1.
1
1
3
;
00
00
00
111
)(
)3()2()1(
ATTENTION : cette semaine il faut un compte rendu par binômeunCR est une page recto verso : recto ce que vous avez fait, verso : ce que vous en pensez !
Top Related