Optimisation-méthode du gradient
Ibrahim Boutaleb Ecole des Mines de Nancy May 4, 2010
Abstract On va essayer d’ étudier di¤érentres méthodes de gradient dans le but de trouver le minimim d’ une fonctionnelle quadratique. Lors de cette étude, on utilisera la méthode de gradient à pas …xe, la méthode de gradient à pas optimal et la méthode de gradient conjugué.
1
La fonctionnelle Jn : de A 2 Mn (R) et le vecteur b 2 Rn dé…nis par : 1 2 0 :: :: 0 4 2 : : C C 2 : : : : C C et bn = (1; 1; :::; 1) : : : : 0C C : : 4 2A :: :: 0 2 4 Jn (x) = 1 (An x; x) 2 (bn ; x)
On considère la matrice 0 4 B 2 B B0 An = B B : B @ : 0
On dé…nit la fonctionnelle Jn qu’ veut minimiser par : on
1.1
Programmation de la fonctionnelle sur Matlab :
On dé…nit une fonction Matlab nommée fonctionnelle qui prend en entrée x; A et b, et qui nous rend en sortie J: Code : function J = fonctionnelle(x,A,b) J = 0.5*x’ *(A*x) - b’ *x; end Ensuite, on représente dans le cas n = 2; Jn sur le pavé [ 10; 10] [ 10; 10]:
1
1.2
Calcul de valeurs propres de Jn :
On dé…nit ici une nouvelle fonction qui permet de calculer les valeurs propres de Jn pour des valeurs di¤érentes de n. Code : function eigen les_n=[2,4,8,16,32,64]; for n=les_n A=matrice(n); lambda=eig(A); lmax=max(lambda); lmin=min(lambda); disp(sprintf(’ pourn=%d, lambda min=%e, lambda max=%e,K2(A)=%e’ ,n,lmin,lmax,lmax/lmin)); end Les résulats obtenus sont dressés dans le tableau suivant : n min max
Cond2
2 2 6 3
4 0; 76 7; 23 9; 47
8 0; 24 7; 75 32; 16
16 0; 068 7; 93 116; 4
32 0; 018 7; 98 440; 6
64 0; 0046 7; 99 1711
On remarque bien que toutes les valeurs propres de Jn sont positives.
2
1.3
Solution théorique (cas n = 2) :
On trouve comme solution du problème de minimisation dans le cas n = 2 :
1
x=A 1.3.1
b = (1; 1) 2 2
Courbes de niveau de Jn et son gradient :
A l’ aide des deux fonctions Matlab contour et quiver on trace les courbes