Métodos de descenso

Métodos de descenso

Como indica el nombre explícito, los métodos de descenso, o búsqueda local, consisten en "deslizar" a lo largo de la función objetivo hasta encontrar un óptimo local, es decir, donde el descenso ya no es posible. Hay varios tipos de métodos de descenso que describiremos aquí.

Descenso simple

A partir de una solución inicial, el algoritmo de descenso simple elige una solución vecina mejor que la solución actual, hasta que no puede tomar esa decisión.

El algoritmo es como sigue:

ENTONCES
hacer
   S(yo + 1) = vecino (SI)
   si f (S(yo + 1)) <f (SI) aceptar S(yo + 1)
   terminara si
tanto que f (S(yo + 1)) <f (SI), lo que sea S(yo + 1) = vecino (SI)
regreso Rno
Métodos de descenso simples de descenso.

Mayor descenso

El algoritmo es básicamente el mismo que para el descenso simple, solo se modifica un criterio de selección de una solución vecina:

elija s 'vecino de s / f (s') <f (s '') o f (s ') = f (s' ') qq es s' 'vecino de s

Por lo tanto, elegimos la solución vecina que ofrezca la mejor mejora de la solución actual.

Descenso único - mayor descenso

Descenso de múltiples salidas

El descenso de múltiples salidas realiza múltiples instancias de un solo descenso o un problema de descenso mayor. El algoritmo es como sigue:

iter = 1 f (mejor) = infinito
hacer
   Elija una solución de partida sO al azar s 0)
   si f (s) <f(Best) alors Best tant que iter < iterMax
regreso Bes

Descenso múltiple