Recherche linéaire Armijo
Le principe de la recherche linéaire Armijo est de tester comme valeur candidate de les puissances successives d'un paramètre
jusqu'à ce que le critère soit respecté. Ce critère utilise l'évalution de la fonction en plus de l'évaluation de son gradient.
Contents
function[t] = armijo(f,x,d,to,sigma)
Initialisation
if nargin==3 to = 0.5; sigma = 0.25; end [grad,fonc] = feval(f,x); k = 0; dif = 1; while (dif>0) && (k<100)
Mise à jour de t
t = to^k;
Calcul du critère
On accepte si il vérifie
[grad2,fonc2] = feval(f,x+t*d); dif = (fonc2-fonc - t*sigma*grad*d'); k = k+1; end end