ASI 3
Méthodes numériques pour l’ingénieur
Résolution de systèmes d’équation non linéaires
f(x)=0
Introduction
• Comment résoudre le système suivant ?
– Méthodes directes – Méthodes itératives
0 20
13 2
0 4
81
0 3
z y
x
z y
x
z y x
Introduction
• Comment résoudre le système suivant ?
– Méthodes directes : impossibles – Méthodes itératives
0
3 3 20 10
0 06
. 1 ) sin(
) 1 . 0 (
81
2 0 ) 1 cos(
3
2 2
z e
z y
x
yz x
xy
Résolution de f(x)=0
• Soit une fonction f : R
n R
n– continue sur ...
– Dérivable sur ...
• Principe :
– trouver une méthode itérative u
k+1= g(u
k)
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
c bf c b
f
c af c a
f c
c f
b c a
b f a f
alors
si ( ) ( ) 0 sinon
alors
si ( ) ( ) 0
sinon ( alors) on a trouvé la solution : si
2
0 )
( ) (
Théorème :
1
2
: avec vers
converge
du problème : ( ) 0 solution
la
soit algorithmede recherchepar dichotomie, l' la suite généréepar
soit
a n p b
p
p
p f p
p p
n n
N n n
N n n
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 1 1
k k
k k k
k
k f x f x
x x x
f x
x
a f b
f
a b b
f b c
x1
f(x1)
x2 f(x2)
x3 x4 x5 f(x5)
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ée
garder 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
) ( '
) (
1
k k k
k f x
x x f
x
) ( ' ) 1 (
) ( )
) ( (
b b f
f b c
a f b
f
a b b
f b c
Méthode de Newton
• En dimension 1 :
– on considère l'approximation affine :
– on cherche h tel que f(u
k+h)=0 soit si on néglige les terme en h
2– et ainsi
kkk k
k f u
u u f
h u
u 1
u h
f
u f
u h h
hf k k k
) ( '
) (
k k
u f
u h f
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
• Illustration
y=tanh(x)cos(x2)+x-2
y'=(1-tanh2(x))cos(x2) -2tanh(x)sin(x2)x+1
y(x)
1.9 1.95 2 2.05 2.1 2.15 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 = 2
u1 = 2.1627 u2 = 2.1380 u3 = 2.1378 u4 = 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
û u
C û
uk1 k
• Exemple en dimension 1
– résolution de x
2- 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 = 1
u1 = 1.5000 u2 = 1.4167 u3 = 1.4142 u4 = 1.4142 u0 = 1
u1 = 2 u2 = 1 u3 = 2 u4 = 1
u0 = 0.999 u1 = -0.0402 u2 = 49.668 u3 = 99.296 u4 = 198.57
g1 g2 g3
• Exemple en dimension 1
– résolution de x
2- 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 = 1
u1 = 1.5000 u2 = 1.4167 u3 = 1.4142 u4 = 1.4142 u0 = 1
u1 = 2 u2 = 1 u3 = 2 u4 = 1
u0 = 0.999 u1 = -0.0402 u2 = 49.668 u3 = 99.296 u4 = 198.57
g1 g2 g3
résumé
• Dichotomie
• séquente
• newton
• Point fixe
Accélération !
Multidimensionnel ?
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 :
x x x f
x f x x f
x x x f
x x f
x f
x f
n n n
n
1 1 2
1 2
1 1
1
La matrice jacobienne R
R
f : n
n i
x f x f x f
x f
1 )
( ) ( )
( 2 '
) 1 ( '
) ( )
(x h f x h f x h H x h h h2
f f
Le vecteur gradient
La matrice Hessiène
n
n R
R
f :
) ( )
( 2 '
) 1 ( )
( )
(x h f x f x h h H x h h h2
f f
Méthode de Newton
• En dimension n :
– on considère l'approximation affine :
– on cherche h tel que f(u
k+h)=0
soit système linéaire !
– et ainsi
uk h f
ukf
n
n R
R
f :
h u f u
f h
u
f ( k ) ( k ) ( k )
itèration
(LU) linéaire
système
) ( )
(
tion initialisa
1 0
h u
u
u f h
u f u
k k
k k
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 Newton converge vers û
û x û
f x
f
( ) ( )
û u
Méthode de Newton
• Avantage : convergence quadratique
– il existe C > 0 tel que
• Inconvénient : calcul de f(x) souvent difficile
1 û C u û 2
uk k
Exemple
0 1
3 2 ) 1 cos(
0 0 2
y x
e x
xy
y
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) ?
k
kk k kk
k f u f u
u u u
f u
u
1 1 1
1 2
Approximation de 1/f '(uk+1)
Méthodes de Quasi-Newton
• Approximation de f(u
k+1) par la matrice A
k– A
kdoit vérifier A
k(u
k- u
k-1)=f(u
k) - f(u
k-1) – Problème : il existe une infinité de A
k• 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 u
0et A
0(différences finies) – itération :
kk k
k u A f u
u 1 1
k
kk f u f u
y 1 1
k k
k u u
s 1 1
2 1
1 1
1 1
k
k k
k k k
k s
s s
A A y
A
• Convergence de la méthode de Broyden :
– "super-linéaire"
– moins rapide que Newton
0 lim
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
0
3 3 20 10
0 06
. 1 ) sin(
) 1 . 0 (
81
2 0 ) 1 cos(
3
2 2
z e
z y
x
yz x
xy
3 3 10
20 1
1 . 0 06 . 1 ) 9 sin(
1 6
) 1 3 cos(
1
2
xy e z
z x
y
yz x
) , (
) , (
) , (
3 2 1
y x g z
z x g y
z y g x
0 )
, , (
0 )
, , (
0 )
, , (
3 2 1
z y x f
z y x f
z y x f
Méthode du point fixe
• Exemple en dimension 3
0
3 3 20 10
0 06
. 1 ) sin(
) 1 . 0 (
81
2 0 ) 1 cos(
3
2 2
z e
z y
x
yz x
xy
3 3 10
20 1
1 . 0 06 . 1 ) 9 sin(
1 6
) 1 3 cos(
1
2
xy e z
z x
y
yz x
) , (
) , (
) , (
3 2 1
y x g z
z x g y
z y g x
0 )
, , (
0 )
, , (
0 )
, , (
3 2 1
z y x f
z y x f
z y x f
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)
3 3 10
20 1
1 . 0 06 . 1 ) 9 sin(
1 6
) 1 3 cos(
1
1 1
2 1 1
1 1
k
k y
k x
k k
k
k k k
e z
z x
y
z y x
3 3 10
20 1
1 . 0 06 . 1 ) 9 sin(
1 6
) 1 3 cos(
1
2 1
1 1
k
ky k x
k k
k
k k k
e z
z x
y
z y x
• 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 !
TD
• Implémenter en Matlab :
– Newton, Broyden, point fixe (+Gauss Siedel) – pour les problèmes suivants :
– comparer le temps de convergence (pour un même seuil)
0
3 3 20 10
0 06
. 1 ) sin(
) 1 . 0 (
81
2 0 ) 1 cos(
3
2 2
z e
z y
x
yz x
xy
5 1 2
3
7 )
( log sin
3 2
z y x
z y x
z y
x e