Este método fué desarrollado por Davidon y requiere que la función sea diferenciable. El método consiste en encontrar un valor óptimo de una variable a, denominada a* , tal que la función: obtenga un mínimo local, donde X y s son valores iniciales arbitrarios. El punto X es el punto de partida de la búsqueda de los óptimos, mientras que s es la dirección de la búsqueda. Este mínimo local se obtiene en 3 fases, a saber:
Fase 1: Dados los valores arbitrarios de X y s evalúe .
Fase 2: Evalúe para los valores iniciales de a igual a 0, 1, 2, 4, 8, 16, 32, ..., a, b, donde b, es el primer valor para el cual g(a) es no negativo ó g(a) no ha decrecido. Resulta que el valor óptimo de a* se encuentra en el rango a < a* <= b.
Fase 3: se ajusta un polinomio cúbico tomando en consideración los valores g(a), g(b), g'(a), g'(b). El valor mínimo a* se representa en esta iteración por ae, donde
y