La discesa gradiente e il metodo del gradiente coniugato sono entrambi algoritmi per ridurre al minimo le funzioni non lineari, ovvero funzioni come la funzione Rosenbrock
f(x1,x2)=(1−x1)2+100(x2−x21)2
o una funzione quadratica multivariata (in questo caso con un termine quadratico simmetrico)
f(x)=12xTATAx−bTAx.
xdnf(x)αx∗
minf(x)
Entrambi i metodi partono da un'ipotesi iniziale, , e quindi calcolano l'iterazione successiva utilizzando una funzione del modulox0
xi+1=xi+αidi.
In parole, il valore successivo di si trova iniziando dalla posizione corrente e spostandosi nella direzione di ricerca per una certa distanza . In entrambi i metodi, la distanza da spostare può essere trovata mediante una ricerca per riga (minimizza su ). Possono essere applicati anche altri criteri. Dove i due metodi differiscono è nella loro scelta di . Per il metodo gradiente, . Per il metodo del gradiente coniugato, la procedura di Grahm-Schmidt viene utilizzata per ortogonalizzare i vettori del gradiente. In particolare, , ma quindi è ugualexxidiαif(xi+αidi)αididi=−∇f(xi)d0=−∇f(x0)d1−∇f(x1) meno la proiezione di quel vettore su tale che . Ogni vettore gradiente successivo è ortogonale rispetto a tutti i precedenti, il che porta a proprietà molto belle per la funzione quadratica sopra.d0(d1)Td0=0
La funzione quadratica di cui sopra (e le relative formulazioni) è anche il punto da cui deriva la discussione sulla soluzione di usando il metodo del gradiente coniugato, poiché il minimo di quella viene raggiunto nel punto dove .Ax=bf(x)xAx=b