ASI 3 Méthodes numériques pour l’ingénieur
Transcript of ASI 3 Méthodes numériques pour l’ingénieur
Introduction
• Comment résoudre le système suivant ?
– Méthodes directes– Méthodes itératives
=+−−=+−=+−
020132
0481
03
zyx
zyx
zyx
Introduction
• Comment résoudre le système suivant ?
– Méthodes directes : impossibles– Méthodes itératives
=−
++
=+++−
=−−
− 03
31020
006.1)sin()1.0(81
021
)cos(322
πze
zyx
yzx
xy
Résolution de f(x)=0
• Soit une fonction f : Rn→ Rn
– continue sur ...
– Dérivable sur ...
• Principe :– trouver une méthode itérative uk+1 = g(uk)
qui converge vers la solution
• Plusieurs méthodes– Newton
– Quasi-Newton (sécante, Broyden, …)
– Point fixe
– Gradient
• Problèmes ?– Convergence
– Complexité
Résolution de f(x)=0
f(x)=0 lorsque n=1
• Recherche par dichotomie• méthode de la séquente
• méthode de point fixe• méthode de Newton-Raphson } Aussi lorsque
2≥n
f(x)
c=a+b/2
f(c)
a
f(a)
b
f(b)
Mé thode de la dichotomie
Recherche dichotomique
cbcfbf
cacfaf
ccf
bacbfaf
←>
←>
<
+=→<
alors 0)()( sisinon
alors 0)()( sisinon
:solution la trouvéaon alors )( si
2 0)()(
ε
Théorème :
{ }
{ }1
2
: avec versconverge 0)( : problèmedu solution la soit
,dichotomiepar recherche de algorithmel'par générée suite la soit
≥−
≤−
=∈
∈
nab
pp
pppfp
p
nn
Nnn
Nnn
Alors
Bonne idée : prendre c à l’intersection de la séquente et le l’axe des x
c
f(c)
a
f(a)
b
f(b)
Mé thode de la sé quente
Méthode de la séquente
)()()(
)()()(
1
11
−
−+ −
−−=
−−
−=
kk
kkkkk xfxf
xxxfxx
afbfab
bfbc
x1
f(x1)
x2
f(x2)
x3
x4 x
5f(x
5)
Mé thode de la fausse position
x1
f(x1)
x2
f(x2)
x3
x4
x5
f(x5)
Mé thode de la sé quente
La « fausse » bonne idéegarder f(a) et f(b) de signe opposé
Bonne idée : si on est proche de la solution : prendre la dérivée
a
f(a)
b
f(b)
c
f(c)
Mé thode de Newton-Raphson
Méthode de Newton
)(')(
1k
kkk xf
xfxx −←+
)('1
)(
)()()(
bfbfbc
afbfab
bfbc
−=
−−
−=
Méthode de Newton
• En dimension 1 :– on considère l'approximation affine :
– on cherche h tel que f(uk+h)=0 soit si on néglige les terme en h2
– et ainsi ( )( )k
kkkk uf
ufuhuu
′−=+=+1
( ) ( ) ( ) ( )hhhufufhuf kkk ε+′+=+
)(')(
k
k
ufuf
h ≈
0 0.5 1 1 .5 2 2 .5 3-2
- 1 . 5
-1
- 0 . 5
0
0 .5
1
1 .5
2
Méthode de Newton
• Illustrationy=tanh(x)cos(x2)+x-2
y'=(1-tanh2(x))cos(x2)-2tanh(x)sin(x2)x+1
y(x)
1 . 9 1 . 9 5 2 2 . 0 5 2 . 1 2 . 1 5 2 . 2-1
-0 .5
0
0 . 5
Méthode de Newton
• Illustration
y=tanh(x)cos(x2)+x-2
y'=(1-tanh2(x))cos(x2)-2tanh(x)sin(x2)x+1
u0 = 2u1 = 2.1627u2 = 2.1380u3 = 2.1378u4 = 2.1378
u1 = 2.1627
u2= 2.1380
u0 = 2
Méthode de point fixe
• Définition• f(x)=0 et le x = g(x)
• exemple• convergence (suite de Cauchy)• théorème de convergence globale
• théorème de convergence local– théorème du point fixe
Méthode du point fixe
• Principe général :– trouver g en fonction de f telle que
• f(û)=0 ⇔ g(û)=û• la suite uk converge (si u0 est bien choisi)
– conditions suffisantes sur g en dimension 1
• g dérivable et |g'(û)| < 1
– conditions suffisantes sur g en dimension n• g différentiable et ρ[∇g(û)] < 1 (ρ = rayon spectral)
Méthode du point fixe
• Convergence linéaire :
– il existe C > 0 tel que
• Inconvénient : choix de g de manière algébrique
ûuCûu kk −≤−+1
• Exemple en dimension 1– résolution de x2 - 2 = 0
– choix de g :• g1(x) = 2/x g'1(x) = -2/x2 g'1(û) = -1• g2(x) = 2x - 2/x g'1(x) = 2+2/x2 g'1(û) = 3• g3(x) = x/2 + 1/x g'1(x) = 1/2-1/x2 g'1(û) = 0
Méthode du point fixe
|g'(û)| < 1 convergence
assurée
u0 = 1u1 = 1.5000u2 = 1.4167u3 = 1.4142u4 = 1.4142
u0 = 1u1 = 2u2 = 1u3 = 2u4 = 1
u0 = 0.999u1 = -0.0402u2 = 49.668u3 = 99.296u4 = 198.57
g1 g2 g3
• Exemple en dimension 1– résolution de x2 - 2 = 0
– choix de g :• g1(x) = 2/x g'1(x) = -2/x2 g'1(û) = -1• g2(x) = 2x - 2/x g'1(x) = 2+2/x2 g'1(û) = 3• g3(x) = x/2 + 1/x g'1(x) = 1/2-1/x2 g'1(û) = 0
Méthode du point fixe
|g'(û)| < 1 convergence
assurée
u0 = 1u1 = 1.5000u2 = 1.4167u3 = 1.4142u4 = 1.4142
u0 = 1u1 = 2u2 = 1u3 = 2u4 = 1
u0 = 0.999u1 = -0.0402u2 = 49.668u3 = 99.296u4 = 198.57
g1 g2 g3
Accélération de la convergence
• Définition : l’ordre de la convergence• Motivation
• Définition du principe de Aitken• Théorème de convergence quadratique• Aitken et Steffensen
Méthode de Newton• En dimension n :
– une équation, n inconnues :
– n équations, n inconnues :
( )
( ) ( ) ( )
( )
( ) ( )
∂∂
∂∂
∂∂
∂∂
∂∂
∂∂
=∇
xx
fx
x
f
xxf
xxf
xxf
xxf
xf
n
nn
n
LL
MOM
MO
L
1
1
2
1
2
1
1
1
La matrice jacobienne
RRf n →:
∂∂
∂∂
∂∂
=∇
n
i
xf
xf
xf
xf
M
M1
)(
)()('21
)(')()( 2hhhxHhxfhxfhxf f ε++∇+=+
Le vecteur gradient
La matrice Hessiène
nn RRf →:
)()('21
)()()( 2hhhxHhhxfxfhxf f ε++∇+=+
Méthode de Newton• En dimension n :
– on considère l'approximation affine :
– on cherche h tel que f(uk+h)=0soit système linéaire !
– et ainsi
( ) ( )kk ufhuf −=∇
nn RRf →:
hufufhuf kkk )()()( ∇+=+
itèration
(LU) linéaire système )()(
tioninitialisa
1
0
huu
ufhuf
u
kk
kk
+=
−=∇
+
Méthode de Newton
• Théorème :– s'il existe û tel que
• f(û)=0• f est différentiable dans un voisinage de û•
• ∇f(û) est inversible
– alors il existe η > 0 tel que• si u° vérifie
• alors la suite construite par la méthode de Newtonconverge vers û
ûxûfxf −≤∇−∇ α)()(
η<−° ûu
Méthode de Newton
• Avantage : convergence quadratique
– il existe C > 0 tel que
• Inconvénient : calcul de ∇f(x) souvent difficile
21 ûuCûu kk −≤−+
Méthodes de Quasi-Newton
• Comment se passer du calcul de ∇f(x) ?
• En dimension 1 : méthode de la sécante
• En dimension n : – le rapport précédent n'a aucun sens (u est un vecteur)
– comment approcher ∇f(uk+1) ?
( ) ( ) ( )kk
kkkkk ufuf
uuufuu
−−
−=+
++++
1
1112
Approximationde 1/f '(uk+1)
Méthodes de Quasi-Newton
• Approximation de ∇f(uk+1) par la matrice Ak
– Ak doit vérifier Ak(uk - uk-1)=f(uk) - f(uk-1)
– Problème : il existe une infinité de Ak
• Méthode de Broyden :– condition supplémentaire : Akz = Ak-1z si (uk - uk-1)'z = 0
Méthodes de Quasi-Newton
• Méthode de Broyden : algorithme– initialisation de u0 et A0 (différences finies)
– itération :( )kkkk ufAuu 1
1−
+ −=( ) ( )kkk ufufy −= ++ 11
kkk uus −= ++ 11
( )( )2
1
1111
+
++++
′−+=
k
kkkkkk
s
ssAyAA
• Convergence de la méthode de Broyden :
– "super-linéaire"
– moins rapide que Newton
0lim
1
=−
−+
∞→ ûu
ûu
k
k
k
Méthodes de Quasi-Newton
Méthode du point fixe
• Principe général :– trouver g en fonction de f telle que
• f(û)=0 ⇔ g(û)=û• la suite uk converge (si u0 est bien choisi)
– conditions suffisantes sur g en dimension 1
• g dérivable et |g'(û)| < 1
– conditions suffisantes sur g en dimension n• g différentiable et ρ[∇g(û)] < 1 (ρ = rayon spectral)
Méthode du point fixe
• Exemple en dimension 3
=−
++
=+++−
=−−
− 03
31020
006.1)sin()1.0(81
021
)cos(3
22
πze
zyx
yzx
xy
−−−=
−++=
+=
−
3310
201
1.006.1)sin(91
6
1)cos(
3
1
2
πxyez
zxy
yzx
===
),(
),(
),(
3
2
1
yxgz
zxgy
zygx
===
0),,(
0),,(
0),,(
3
2
1
zyxf
zyxf
zyxf
Méthode du point fixe
• Exemple en dimension 3
=−
++
=+++−
=−−
− 03
31020
006.1)sin()1.0(81
021
)cos(3
22
πze
zyx
yzx
xy
−−−=
−++=
+=
−
3310
201
1.006.1)sin(91
6
1)cos(
3
1
2
πxyez
zxy
yzx
===
),(
),(
),(
3
2
1
yxgz
zxgy
zygx
===
0),,(
0),,(
0),,(
3
2
1
zyxf
zyxf
zyxf
Méthode du point fixe
• Exemple en dimension 3 (suite)– valeurs initiales (x0=0.1 ; y0=0.1 ; z0=-0.1)
–
– convergence vers (0.5 ; 0.0 ; -0.5236)
– résultat théorique: (0.5 ; 0.0 ; -π/6)
−−−=
−++=
+=
−−−
−−
−−
3310
201
1.006.1)sin(91
6
1)cos(
3
1
11
12
1
11
πkk yx
k
kkk
kkk
ez
zxy
zyx
−−−=
−++=
+=
−
−
−−
3310
201
1.006.1)sin(91
6
1)cos(
3
1
12
11
πkk yx
k
kkk
kkk
ez
zxy
zyx
• Comment essayer d'accélérer la convergence– remplacer les valeurs par leurs "dernières"
estimations• (cf. Gauss-Siedel pour les systèmes linéaires)
– exemple :
Méthode du point fixe
Conclusion
• Méthodes– Newton :
• inconvénient = calcul des dérivées• avantage = convergence quadratique
– Quasi-Newton :• inconvénient = convergence super-linéaire• avantage = plus de calcul des dérivées
– Point Fixe :• inconvénient = convergence linéaire• inconvénient = choix de g
• Problème général : initialisation de la suite !