Correction du Partiel
XX/03/2018 D. Gontier, gontier@ceremade.dauphine.fr
Deux heures. Les documents et calculatrices ne sont pas autorisés.
Les exercices sont indépendants.
Exercice 1 : Méthode d’accélération d’Aitken
SoitΦ :R→Rde classeC2 telle queΦ(0) = 0, et0<Φ0(0)<1. Soitαtel que Φ0(0)< α <1.
a/ Montrer qu’il existeε >0 tel que, pour toutx∈(−ε, ε), on a|Φ0(x)|< α.
b/ Montrer que la suite définie par xn+1 = Φ(xn) avec x0 ∈ (−ε, ε) converge linéairement vers 0, à taux au moinsα.
c/ Montrer que0est l’unique point fixe deΦdans(−ε, ε).
On pose maintenant
Ψ(x) :=x− [Φ(x)−x]2 x−2Φ(x) + Φ(Φ(x)). d/ Dans le cas oùΦ(x) =αx, que vaut Ψ(x)?
e/ Dans le cas général, calculer le développement limité deΨà l’ordre1. Montrer queΨ(0) = 0etΨ0(0) = 0.
f/ On suppose Ψ de classe C2, et 0 < Ψ00(0) < 1. Montrer que la suite définie par xn+1 = Ψ(xn) avec x0 suffisamment proche de0converge quadratiquement vers 0.
a/ On a0<Φ0(0)< α. Donc par continuité deΦ0, il existe un voisinage de0tel que ces inégalités strictes restent vraies, c’est à dire
∃ε >0, ∀x∈(−ε, ε), 0<Φ0(x)< α, et donc |Φ0(x)|< α.
b/ On supposexn∈(−ε, ε). On a
|xn+1|=|Φ(xn)|=
Z xn
0
Φ0(t)dt
≤ Z xn
0
|Φ0(t)|dt≤αxn.
En particulier, on en déduit que|xn+1|< αε < ε, et donc, par récurrence, on a xn ∈(−ε, ε) pour toutn. De plus, on a|xn+1|< α|xn| ≤αn+1x0par récurrence. On en déduit que(xn)converge vers0avec une convergence linéaire d’au moinsα.
c/ Soit x0 un point fixe de Φ dans (−ε, ε). La suite xn+1 = Φ(xn) est alors constante égale x0. D’après la question précédente, on a doncx0−→0, doncx0= 0.
On peut aussi montrer quef(x) =x−Φ(x)est strictement croissante sur (−ε, ε).
d/ SiΦ(x) =αx, on a
Ψ(x) =x− [αx−x]2
x−2αx+α2x=x− (α−1)2x2
x(1−2α+α2) =x−(α−1)2 (α−1)2
x2 x = 0.
e/ Dans le cas général, on aΦ(x) =αx+o(x). On en déduit
[Φ(x)−x]2= [αx+o(x)−x]2= (α−1)2x2+o(x2)
et
x−2Φ(x)+Φ(Φ(x)) =x−2(αx+o(x))+Φ(αx+o(x)) =x−2αx+o(x)+α(αx+o(x))+o(x) =x(1−2α+α2)+o(x).
Donc
Ψ(x) =x−(α−1)2x2+o(x)
(α−1)2x+o(x) =o(x).
On en déduit queΨest dérivable en0, avecΨ(0) = 0etΨ0(0) = 0.
f/ Siβ:= Ψ00(0)6= 0, on aΨ(x)≈βx2+o(x2). Au premier ordre, on a donc xn+1=βx2n, et on en déduit que la suite(xn)converge quadratiquement vers0 six0 est proche de0.
Exercice 2 : Matrices à diagonale dominante, et méthode de Jacobi SoitA∈ Sd(R)une matrice symétrique telle que
l:= min
1≤i≤d
aii−X
j6=i
|aij|
>0.
Autrement dit, sur chaque ligne, le terme appartenant à la diagonale est plus grand que la somme des autres termes de la ligne (en module). On noteA=D+R, avec
D=
a11 0 . . . 0 0 a22 . . . 0 ... ... . .. ... 0 0 . . . add
et R=A−D=
0 a12 . . . a1d a21 0 . . . a2d ... ... . .. ... ad1 ad2 . . . 0
.
a/ Soit x∈Rd\ {0} tel que Ax =λx, et soit i∈argmax{|xj|,1 ≤j ≤d}. On suppose xi >0. Montrer que λ≥aii−P
j6=i|aij|. En déduire queA≥l.
b/ Montrer que la fonctionF(x) := 12xTAx−bTxa un unique minimumx∗, et calculer x∗. c/ Soit(xn)la suite définie par
xn+1=D−1(b−Rxn). (Itérations de Jacobi).
Montrer quekxn+1−x∗k∞≤ kD−1Rk∞,∞kxn−x∗k∞, où on a noté
∀x∈Rd, kxk∞:= max
1≤i≤d|xi| et ∀M ∈ Sd(R), kMk∞,∞:= max{kMxk∞,kxk∞= 1}.
d/ Montrer que
kD−1Rk∞,∞< max
1≤i≤d
1 aii
X
j6=i
|aij|
.
En déduire que la suite(xn)converge versx∗.
e/ Comparer la méthode de Jacobi avec la méthode du gradient à pas constant (avec pas optimal) dans le cas où
A=
2 1 0 0
1 2 0 0
0 0 10 1 0 0 1 10
.
a/ On suppose que|xi|= maxj|xj|etxi>0(sinon, on remplacexpar−x). L’égalitéAx=λxdonne à la lignei
d
X
j=1
aijxj=λxi, ou encore X
j6=i
aijxj+aiixi=λxi. On a donc
λxi ≥aiixi−X
j6=i
|aij| · |xj| ≥aiixi−X
j6=i
|aij| · |xi| ≥l|xi|.
On en déduit queλ > l. Ainsi, toutes les valeurs propres deAsont plus grandes quel, doncA≥l.
b/ CommeA≥l >0,Aest symétrique définie positive. (et en particulier inversible). La fonctionF a un unique point critiquex∗=A−1b, et la hessienne en ce point est Aqui est définie positive, doncx∗ est un minimum.
c/ On a
xn+1−x∗=D−1(b−Rxn)−x∗=D−1(Ax∗−Rxn)−x∗=D−1((D+R)x∗−Rxn)−x∗=D−1R(x∗−xn).
On obtient donc
kxn+1−x∗k∞≤ kD−1Rk∞,∞kx∗−xnk∞ d/ On note
B=D−1R=
0 aa12
11 · · · aa1d
a21 11
a22 0 · · · aa2d .. 22
. ... . .. ...
ada
add ad2
add · · · 0
2
Soity=Bx. On a, pour1≤i≤d,
|yi|=
d
X
j=1
bijxj
=
X
j6=i
aij
aiixj
≤ 1 aii
X
j6=i
|aij| · kxk∞.
Commeα:= maxi a1
ii
P
j6=i|aij|vérifie0< α <1, on akxn+1−x∗k∞≤αkxn−x∗k ≤αn+1kx1−x∗k. On en déduit que la suite(xn)converge versx∗(en normek · k∞, mais toutes les normes sont équivalentes) avec une vitesse linéaire à taux au moinsα.
e/ Les valeurs propres deAsont{1,3,9,11}. Le gradient à pas constant converge au maximum à taux λλd−λ1
d+λ1 =
11−1
11+1 = 1012= 56. Avec la méthode de Jacobi, on trouveα=12. Donc la méthode de Jacobi est plus rapide.
De plus, dans la méthode de Jacobi, il n’y a pas à choisir le pas.
Exercice 3 : Questions de code
a/ Chacun des codes suivants correspond à une multiplication matrice/vecteur, où x ∈ Rd est le vecteur.
Indiquer dans chaque cas de quelle matrice il s’agit. Par exemple,
1 d e f m u l t A 0( x ) : r e t u r n x
correspond à la matrice identité :A0=Id.
1 d e f m u l t A 1( x ) : r e t u r n b * x # Ici , b = a r r a y ( [ b_1 , b_2 , ... b_d ] )
1 d e f m u l t A 2( x ) :
2 y = z e r o s (l e n( x ) ) # len ( x ) r e n v o i e la t a i l l e du v e c t e u r x , d o n c ici l ’ e n t i e r d . 3 y [0] = s u m( x )
4 r e t u r n y
1 d e f m u l t A 3( x ) : r e t u r n x [ 0 ] * o n e s (l e n( x ) )
1 d e f m u l t A 4( x ) : r e t u r n r o l l ( x , 1) # r o l l ( x ,1) r e n v o i e le v e c t e u r [ x_d , x_1 , x_2 , ... , x_ { d - 1 } ]
1 d e f m u l t A 5( x ) :
2 y = z e r o s (l e n( x ) )
3 f o r i in r a n g e(l e n( x ) ) : 4 y [ i ] = s u m( x [ i :])
5 r e t u r n y
b/ Le code suivant comprend plusieurs erreurs. Écrivez un code corrigé.
1 d e f G r a d i e n t P a s C o n s t a n t( df , x0 , tau , tol =1 e -6 , N i t e r = 1 0 0 0 )
2 xn = x0
3 f o r n in l i n s p a c e ( N i t e r ) :
4 if df ( xn ) < tol :
5 r e t u r n xn
6 xn = xn + tau * df ( xn )
7 r e t u r n xn
a/ On trouve respectivement
A1=
b1 0 · · · 0 0 b2 · · · 0 ... ... . .. ... 0 0 · · · bd
, A2=
1 1 · · · 1 0 0 · · · 0 ... ... . .. ... 0 0 · · · 0
, A3=
1 0 · · · 0 1 0 · · · 0 ... ... . .. ... 1 0 · · · 0
,
puis
A4=
0 0 · · · 0 1 1 0 · · · 0 0 0 1 · · · 0 0 ... ... . .. ... ... 0 0 · · · 1 0
, A5=
1 1 · · · 1 1 0 1 · · · 1 1 0 0 · · · 1 1 ... ... . .. ... ... 0 0 · · · 0 1
.
b/ Le bon code est
3
1 d e f G r a d i e n t P a s C o n s t a n t( df , x0 , tau , tol =1 e -6 , N i t e r = 1 0 0 0 ) : # a v e c les 2 p o i n t s
2 xn = x0
3 f o r n in r a n g e( N i t e r ) : # r a n g e au l i e u de l i n s p a c e 4 if n o r m ( df ( xn ) ) < tol : # il f a u t r a j o u t e r la n o r m e
5 r e t u r n xn
6 xn = xn - tau * df ( xn ) # un s i g n e - , pas un s i g n e + 7 r e t u r n xn # a t t e n t i o n à l ’ i n d e n t a t i o n
Exercice 4 : Étude d’une suite
Soit(xn)la suite définie parx0= 1/2,x1= 1/16, puis xn+1=1
2x2nxn−1. a/ Montrer que la suite(xn)converge vers0.
b/ Montrer qu’il existeC >0tel que la suiteun:= log(Cxn)vérifie un+1= 2un+un−1.
c/ Montrer qu’il existeΦ>1 solution deΦn+1= 2Φn+ Φn−1 pour toutn∈N. d/ En déduire queun<−Φn pour tout n∈N(on donnelog(1/2)≈ −0.7et √
2≈1.4).
e/ Quelle la vitesse de convergence de la suite(xn)initiale ?
a/ On a par exemple quexnest décroissante minorée par0, donc converge. La limite doit vérifierx∗=12(x∗)3, doncx∗= 0 oux∗=√
2. Le deuxième cas ne peut pas arriver, carxn< x0<√
2. Doncx∗= 0.
b/ Siun= log(Cxn) = log(C) + log(xn), alors, en passant au log, on a
un+1−log(C) = log(1/2) + 2un−2 log(C) +un−1−log(C).
En choisissantlog(C) = 1/2 log(1/2)ou encore C= e−
√2, on obtientun+1= 2un+un−1comme souhaité.
c/ SiΦ6= 0avecΦn+1= 2Φn+ Φn−1, alors, en simplifiant parΦn−1, on aΦ2= 2Φ + 1. L’équationX2−2X−1 a pour racine1±√
2, doncΦ = 1 +√ 2.
d/ Par récurrence, on a
u0= log(C) + log(x0) = 1/2 log(1/2) + log(1/2)≈ −1.05<−Φ0= 1 et
u1= log(C) + log(x1) = 1/2 log(1/2) + log(1/24) =9
2log(1/2)≈ −3<−Φ =−1−√
2≈ −2.4.
Donc c’est vérifié pourn= 0 etn= 1. On a par ailleurs
Φn+1+un+1= 2(Φn+un) + (Φn−1+un−1)<0, et doncun+1<−Φn+1, comme souhaité.
e/ On a doncun<−Φn, ou encore log(Cxn)<−Φn. En prenant l’exponentielle, on obtient Cxn<e−Φn, ou encore 0< xnC−1e−Φn.
On en déduit quexn converge vers0avec une convergence à l’ordre au l’ordre Φ = 1 +√ 2.
4