stringtranslate.com

Búsqueda de línea

En optimización , la búsqueda lineal es un enfoque iterativo básico para encontrar un mínimo local de una función objetivo . Primero encuentra una dirección de descenso a lo largo de la cual se reducirá la función objetivo y luego calcula un tamaño de paso que determina qué tan lejos debe moverse a lo largo de esa dirección. La dirección de descenso se puede calcular mediante varios métodos, como el descenso de gradiente o el método cuasi-Newton . El tamaño del paso se puede determinar de forma exacta o inexacta.

Búsqueda lineal unidimensional

Supongamos que f es una función unidimensional, , y que es unimodal , es decir, que contiene exactamente un mínimo local x * en un intervalo dado [ a , z ]. Esto significa que f es estrictamente decreciente en [a,x*] y estrictamente creciente en [x*, z ]. Hay varias formas de encontrar un punto mínimo (aproximado) en este caso. [1] : sec.5 

Métodos de orden cero

Los métodos de orden cero utilizan solo evaluaciones de funciones (es decir, un oráculo de valores ), no derivadas: [1] : sec.5 

Los métodos de orden cero son muy generales: no suponen diferenciabilidad ni siquiera continuidad.

Métodos de primer orden

Los métodos de primer orden suponen que f es continuamente diferenciable y que podemos evaluar no sólo f sino también su derivada. [1] : sec.5 

Métodos de ajuste de curvas

Los métodos de ajuste de curvas intentan alcanzar la convergencia superlineal suponiendo que f tiene alguna forma analítica, por ejemplo, un polinomio de grado finito. En cada iteración, hay un conjunto de "puntos de trabajo" en los que conocemos el valor de f (y posiblemente también su derivada). Con base en estos puntos, podemos calcular un polinomio que se ajuste a los valores conocidos y encontrar su mínimo analíticamente. El punto mínimo se convierte en un nuevo punto de trabajo y procedemos a la siguiente iteración: [1] : sec.5 

Los métodos de ajuste de curvas tienen convergencia superlineal cuando se inician lo suficientemente cerca del mínimo local, pero pueden divergir en caso contrario. Los métodos de ajuste de curvas con salvaguarda ejecutan simultáneamente un método de convergencia lineal en paralelo al método de ajuste de curvas. Comprueban en cada iteración si el punto encontrado por el método de ajuste de curvas está lo suficientemente cerca del intervalo mantenido por el método de salvaguarda; si no lo está, entonces se utiliza el método de salvaguarda para calcular la siguiente iteración. [1] : 5.2.3.4 

Búsqueda de línea multidimensional

En general, tenemos una función objetivo multidimensional . El método de búsqueda lineal primero encuentra una dirección de descenso a lo largo de la cual se reducirá la función objetivo y luego calcula un tamaño de paso que determina cuánto se debe mover a lo largo de esa dirección. La dirección de descenso se puede calcular mediante varios métodos, como el descenso de gradiente o el método cuasi-Newton . El tamaño del paso se puede determinar de forma exacta o inexacta. A continuación, se muestra un ejemplo de método de gradiente que utiliza una búsqueda lineal en el paso 5:

  1. Establezca un contador de iteraciones y haga una estimación inicial del mínimo. Elija una tolerancia.
  2. Bucle:
    1. Calcular una dirección de descenso .
    2. Defina una función unidimensional , que represente el valor de la función en la dirección de descenso dado el tamaño del paso.
    3. Encuentra un que minimice sobre .
    4. Actualizar y
  3. Hasta

En el paso de búsqueda de línea (2.3), el algoritmo puede minimizar h exactamente , resolviendo , o aproximadamente , utilizando uno de los métodos de búsqueda de línea unidimensional mencionados anteriormente. También se puede resolver de forma flexible , solicitando una disminución suficiente en h que no se aproxime necesariamente al óptimo. Un ejemplo del primero es el método del gradiente conjugado . El último se denomina búsqueda de línea inexacta y se puede realizar de varias formas, como una búsqueda de línea de retroceso o utilizando las condiciones de Wolfe .

Superando los mínimos locales

Al igual que otros métodos de optimización, la búsqueda de línea se puede combinar con recocido simulado para permitirle superar algunos mínimos locales .

Véase también

Referencias

  1. ^ abcde Nemirovsky y Ben-Tal (2023). "Optimización III: Optimización convexa" (PDF) .

Lectura adicional