El descenso gradual y el método de gradiente conjugado son algoritmos para minimizar las funciones no lineales, es decir, funciones como la función de Rosenbrock
f(x1,x2)=(1−x1)2+100(x2−x21)2
o una función cuadrática multivariada (en este caso con un término cuadrático simétrico)
f(x)=12xTATAx−bTAx.
Ambos algoritmos también son iterativos y están basados en la dirección de búsqueda. Para el resto de esta publicación, y serán vectores de longitud ; y son escalares, y los superíndices denotan el índice de iteración. El descenso de gradiente y el método de gradiente conjugado se pueden usar para encontrar el valor que resuelvexdnf(x)αx∗
minf(x)
Ambos métodos comienzan desde una suposición inicial, , y luego calculan la siguiente iteración usando una función de la formax0
xi+1=xi+αidi.
En palabras, el siguiente valor de se encuentra comenzando en la ubicación actual , y moviéndose en la dirección de búsqueda para cierta distancia . En ambos métodos, la distancia para moverse se puede encontrar mediante una búsqueda de línea (minimice sobre ). También se pueden aplicar otros criterios. Donde los dos métodos difieren es en su elección de . Para el método de gradiente, . Para el método de gradiente conjugado, el procedimiento de Grahm-Schmidt se utiliza para ortogonalizar los vectores de gradiente. En particular, , pero entonces es igualxxidiαif(xi+αidi)αididi=−∇f(xi)d0=−∇f(x0)d1−∇f(x1) menos la proyección de ese vector en tal que . Cada vector de gradiente posterior se ortogonaliza frente a todos los anteriores, lo que conduce a propiedades muy buenas para la función cuadrática anterior.d0(d1)Td0=0
La función cuadrática anterior (y las formulaciones relacionadas) también es de donde proviene la discusión de resolver usando el método de gradiente conjugado, ya que el mínimo de esa se logra en el punto donde .Ax=bf(x)xAx=b