• Aucun résultat trouvé

Méthodes numériques pour l’ingénieur

N/A
N/A
Protected

Academic year: 2021

Partager "Méthodes numériques pour l’ingénieur"

Copied!
23
0
0

Texte intégral

(1)

ASI 3

Méthodes numériques pour l’ingénieur

la méthode des moindres carrés Le point de vue numérique

(factorisation QR)

(2)

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

sens au

ion approximat

)

( inconnues et

équations

) ( min

)

(

ion approximat

tion interpolla

)

(

, : données

1

2 1

1 1

1 , 1

k

n i

i i

i k

j

j i j i

i

k j

j j

n i i

i

n n

y x

f y

x y

x f

n k

n x k

x f

y x

α α

α

α

=

=

=

=

=

=

<

= =

f(x)

xi yi

(3)

Posons le problème matriciellement

( ) ( )

( )

( )







= +

+ +

+ +

= +

+ +

+ +

= +

+ +

+ +

= +

+ +

+ +

n k

n k j

n j n

i k

i k j

i j i

k k j

j

k k j

j

x f x

x x

x f x

x x

x f x

x x

x f x

x x

) 1 ( )

1 ( )

1 ( 2 1

) 1 ( )

1 ( )

1 ( 2 1

2 )

1 ( 2 )

1 ( 2 )

1 ( 2 2 1

1 )

1 ( 1 )

1 ( 1 )

1 ( 1 2 1

...

...

...

...

...

...

...

...

α α

α α

α α

α α

α α

α α

α α

α α

(

i i

)

i n

k j

j

j x x y

x

f 1,

1

1 pour , )

( =

=

= α

(4)

Posons le problème matriciellement

( ) ( )

( ) ( )









= +

+ +

+ +

= +

+ +

+ +

= +

+ +

+ +

= +

+ +

+ +

n k

n k j

n j n

i k

i k j

i j i

k k j

j

k k j

j

x f x

x x

x f x

x x

x f x

x x

x f x

x x

) 1 ( )

1 ( )

1 ( 2 1

) 1 ( )

1 ( )

1 ( 2 1

2 )

1 ( 2 )

1 ( 2 )

1 ( 2 2 1

1 )

1 ( 1 )

1 ( 1 )

1 ( 1 2 1

...

...

...

...

...

...

...

...

α α

α α

α α

α α

α α

α α

α α

α α

( ) ( )

( ) ( )









n k

n j

n n

i k

i j

i i

k j

k j

x f x

x x

x f x

x x

x f x

x x

x f x

x x

...

...

1

...

...

1

...

...

1

...

...

1

) 1 ( )

1 ( )

1 (

) 1 ( )

1 ( )

1 (

2 )

1 ( 2 )

1 ( 2 )

1 ( 2

1 )

1 ( 1 )

1 ( 1 )

1 ( 1

=

(

i i

)

i n

k j

j j

y x

x x

f

, 1 1

1

, pour

)

(

=

=

= α Xa = f

(5)

Approximation au sens des moindres carrés

( )

∑ ∑

∑ ∑

∑ ∑

=

= =

=

=

= =

=

 =

 

⇔ 

 =

 

 −

∂ =

=

∂ =

⇔ ∂

=



 −

=

=

n i

j i i

k n

i

j i i

n i

j i i k

i j

j

n i

i k

j

j i j n

i

i i

x y x

x x

y J x

k J j

J

y x

J J

y x

f

1

1

1 1

1 1

1

1 1

1

1

2

1

1 1

2

0 2

,..., 1

; 0

*) (

) ( argmin

* : principe

) ( avec

) ( min )

( min

α

α α

α α α

α

α α

α

α α α

Système linéaire de k équations et k inconnues

(6)

Approximation : version matricielle

( )

(

X y

)

J

(

X X

)

X y

X J

y X

e J

y y y

x x

x x

x x

e e e

y X

e

y x

y x

f e

y x

J J

y x

f

n i

k j k

i i

k i i

k

n i

i k

j

j i j i

i i

n i

i k

j

j i j n

i

i i

' '

0 )

( ' '

2 )

( '

) (

1 1 1

) (

) ( avec

) ( min )

( min

2 2

1 1

1 1 1 1 1 1

0

1

2

0 1

2

=

=

=

=

=

































=













=

=

=



 −

=

=

=

= =

=

∑ ∑

α α

α α

α α

α α α α

α

α α

α α

α

Système linéaire de k équations et k inconnues Erreur

d’approximation

(7)

Approximation : version matricielle

( )

(

X y

)

J

(

X X

)

X y

X J

y X

e J

y y y

x x

x x

x x

e e e

y X

e

y x

y x

f e

y x

J J

y x

f

n i

k j k

i i

k i i

k

n i

i k

j

j i j i

i i

n i

i k

j

j i j n

i

i i

' '

0 )

( ' '

2 )

( '

) (

1 1 1

) (

) ( avec

) ( min )

( min

2 2

1 1

1 1 1 1 1 1

0

1

2

0 1

2

=

=

=

=

=

































=













=

=

=



 −

=

=

=

= =

=

∑ ∑

α α

α α

α α

α α α α

α

α α

α α

α

Système linéaire de k équations et k inconnues Erreur

d’approximation Matrice de Vandermonde

(1735-1796)

(8)

Forme quadratique

( ) ( )

( )

y X X

X

h G

J y

X X

J

h G

J

y y y

X X

X

y X

y X

y X

e J

' '

0 )

( ' '

2 )

( '

' 2 2 '

min 1 )

( min

' '

' 2 '

'

) (

' 2 2

==

=

=

+

=

+ +

=

=

=

=

αα α

α α

α α

α α

α α

α

α α

α α

α α

Équations normales

(9)

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 ' à

orthogonal ˆ est

projecteur un

est '

' que montrons

' '

' ˆ

1 1

=

⇔⇔ − =

=

=

y X

X

y y

X X

y y

X X

X X

Xy X

X X

X y

α α

y

( )

X0 R p

Im =

Rn

(

y y

) (

X y

)

e = ˆ − = α −

=

= p

j

j

X j

X

1

)

( α

α

(10)

Comment résoudre le problème des moindres carrées ?





+ +

+

=









=

2 2

2

1 1

1

1 1

1

1 1

1

0

0

0 0

0 0

1 1

1

ε ε

ε ε

ε

ε X X

X T

Rang(X’X) = Rang(X) = 3

cond(X’X) = cond(X)*cond(X) régulière est

machine, précision

si

singulière est

machine, précision

si 2

X

X X T

>≤ εε

Il faut mieux travailler sur X que sur X’X … si possible !

(11)

Un principe, deux idées

ire) (triangula

' '

' : ainsi

avec

ion factorisat

y Q R

y X Xa

X

I Q'Q

QR X

=

=

=

=

α

R

G

0

HH

R 0

X

X

Orthogonalisation de Schmidt Orthogonalisation de Householder QR

X R

HX = ⇔ = Car H orthogonale

Matrice orthogonale

1 p

1

n

1

n

(12)

Base orthogonale (Schmidt)

y G R

y GG G

GR G

y GG GR

y GG X

y GG

y X y

I G G

R GR G

X

'

' '

'

' '

'

ˆ ' '

supérieure ire

triangula :

e

orthogonal base

:

=

⇔ =

⇔ =

=

==

= 

=

αα α α

R

G X

0

G,R = decompose(A) x = triang(R,G’b) Fonction x = mmc(A,b)

(13)

Décompose : X=GR

( )

( )

( ) (( ))

1 1

) ( ) ( ) ( )

( )

(

) 2 (

) 2 ( )

2 ( )

1 ( ) 1 ( ) 2 ( )

2 ( )

2 (

) 1 1 (

) 1 ( 1 )

1 (

~

~

;

~ '

~

~

;

~ '

1 avec

k k k k

i

i i

k k

k

G G G

G G

X X

G

G G G

G G

X X

G

k X X

k G

=

=

=

=

=

=

=

R

G X

0 Théorème :

dans tout espace vectoriel de dimension finie,

il existe des bases orthogonales

) (k

G X (k)

rki

~

(14)

Décompose : X=GR

fait

fait 2

/

; à jusqu' 1

pour

fait

2

-

; à jusqu' 1

pour

0 2

fait

fait

; à jusqu' 1

pour

fait

; à jusqu' 1

pour

0

1 à

jusqu' 1

pour

fait 0

; à jusqu' 1

pour

à jusqu' 1

pour

g g

g n j

g g g

g x

g

n j

g

g ps g

g n j

g a ps

ps n

j ps

k i

g n j

p k

jk jk

kj kj

jk jk

jk

ji jk

jk

ji jk jk

=

←←

← =

+

= ← +

← =

== ←

=

Fonction G,R = décompose(A)

Problème d’accumulation d’erreurs d’arrondi

(15)

Orthogonalisation : X = QR

) , ( '

: norme la

concerve symétrique

1 Q n n

Q Q

x Qx

Q Q

∈L

= ⇒ =

R

Q X

0

)

Q(k X (k) Transformation de Householder

'

e orthogonal matrice

une est

es orthogonal matrices

deux de

produit le

...

...

LU) pour

(comme colonne

par colonne

) ' (

e) orthogonal (

'

1

) 1 ( ) 2 ( )

( )

2 ( ) 1 (

1

H H

Q

H H

H H

H H

H Q

QR

H R

H

R H

X R

HX

j k

k

=

=

=

=

==

=

=

Définir H

(16)

Householder et moindres carrés

( )

ire) triangula (système

min

min

min min

carrées moindres

des problème

au appliquons

-

: norme la

concerve -

e orthogonal ation

transform une

est

T

y Q R

y Q R

y QR

Q

y QR

y X

I Q Q

x x

Q Q

Q

T T

T

T

=

=

=

=

=

=⇒

α α

α α

α

α α α α

(17)

Transformation de Householder

ation transform

première la

: axe d'

Symétrie

' 2 '

à e orthogonal

r Householde de

tion transforma

e x y

e Hx

y Hy

y y y I yy

H

y

=

=

=

=

(18)

Transformation de Householder

H(k) H

R 0

X

)

X (k

0

( )( )

(

(1) (1)

)(

' (1) (1)

)

) ' 1 ( )

1 ( )

1 ( )

1 ( )

1 (

) 1 ( )

1 ( )

1 ( )

1 ( ) 1 (

2

ation transform

première la

' 2 '

à e orthogonal

r Householde de

tion transforma

e X

e X

e X

e I X

H

e X

y e

X H

y y I yy

H

y

− −

=

=

=

=

H(k) H

H( )

~ k

= H

1 1 0

0 ation

transform la kème

) ( ) (

) ( ) ( )

(

) 1 ( )

( )

(

' 2 '

~

~

k k

k k

k

k k

k

y y

y I y

H

e X

y

=

=

(19)

Quels calculs ?

( )

j k i ij

ij

n k i

ij k i j

k k

k k

k k

k

s y

x x

x y

s

X y

y X

y X y

y I y

X H

) ( )

(

) ( ) (

) ( ) (

) ( ) ( )

(

1 1 '

'

~ '

β

β α

=



 −

=

=

(20)

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

( )

n j

k p

i k

y s a

a

p j

k a

y s

a

a n

n i

k a

y a

y

a a

sign

k i j j

i j

i

n k i

j i k i j

k k

k

k k k k

k i k

i k

k k k

k

n k i

k i k

k k

≤ +

≤ +

=

≤ +

=

=

+

=

≤ +

=

=

=

=

=

1 et

1

pour

1 pour

1

1 pour

et

) (

) ( ,

,

, ) ( ) ( ,

, ) 2 (

) (

, )

( )

( ,

) (

2 , ,

) (

β α

α β

α α

Diag(R)

yk

Partie

non encore factorisée

y1

k premières lignes de R

p n

(21)

L’algorithme QR

( )

fait fait pour jusqu'à ; fait /

pour jusqu'à ; fait

0

; à jusqu' 1

pour

finsi

alors

0 si

; s

fait

pour jusqu'à ;

0 s

à jusqu' 1

pour

2

i ij

ij

i ij kk

kk

kk k

k

j jk j

y s x

x n k

i s s

y x s

s n k

i s

p k

j x x

x s

y y

y s

s

x y

n k

j

p k

+

← == ← +

← +

= −

←−

←←←> − ← − +

=←

←=

β α α

βα α α α α Fonction Q,R = décomposeQR(X)

(22)

Remarques

MMC sans Q

e x x

w Re

r X w

R

X y

r

r X Xe

X X

y r

y R

y X z

R

R R X

X

QR X

y X X

X y

X

+

=

− =

−− = =−

⇒ =

=

=

− =

= =

=

6 5

' '

4 3

' '

: résidus 2

' '

1

' '

' '

min 2

α

α α

α

α α

R=chol(A’A)

Si on ajoute ou on enlève une variable Q et R changent « peu »

(23)

Matlab

( )

y Q H

H k

H H

H X y

X b

X y

y

b X

k

' vecteur le

t directemen mais

, matrice de

calculer sans

puis

matrices les

calculer sans

3 : 1 sur

boucle une

faisant en

puis

et ,

matrices les

calculant en

boucle de

faire sans

abord d'

matrice la

sur r

Householde de

méthode la

z implémente 3.

matlab de

fonction \ la

utilisant en

-

matlab de

qr fonction la

utilisant en

-

normales équation

les utilisant en

-

, carrées

moindres des

problème le

résoudre .

2

*

que tel

construire 1.

1 1 3

; 0

0

0 0

0 0

1 1

1

) (

) 3 ( )

2 ( )

1 (

=

=





=









=

ε ε

ε

ATTENTION : cette semaine il faut un compte rendu par binôme

unCR est une page recto verso : recto ce que vous avez fait, verso : ce que vous en pensez !

Références

Documents relatifs

L’évolution des émissions de dioxyde de carbone (CO 2 en millions de tonnes par an) pour les véhicules essences et diesel au cours des huit dernières années est donnée par

Mettre à jour les paramètres d’un modèle linéaire au fur et à mesure que de nouvelles données sont disponibles.. Algorithme : Filtre de Kalman en

Elles ne font pas l’objet de cette leçon qui présente deux méthodes plus sophistiquées que sont la méthode des moindres carrés et la méthode du modèle.. 2 Méthode des

Généralement, la variation des constantes à déterminer donnera lieu à une déformation et à un déplacement non parallèle aux ordonnées ; il est clair alors que la surface à

Comment extrapoler (à quelques années de distance) une série (assez longue) représentant les variations annuelles des disponibilités monétaires.. Contrairement à ce qui

estimateur, que les erreurs de prédiction ont les mêmes propriétés que celles de l’estimateur du gradient. Une solution simple du problème de poursuite d’une

commun du modele statistique linéaire (1) ces trois methodes que cons- tituent la regression lineaire, la methode des moindres carres et l’estima- tion bayesienne.. On

Bien d'autres méthodes pourraient encore être proposées; mais il nous a semblé légitime d'appliquer ici la méthode des moindres carrés de Gauss, qui, universellement employée