Computación Científica Gustavo Rodríguez Gómez INAOE Agosto Dicembre 2012 1 / 19
Capítulo 2 Métodos Gradientes 2 / 19
1 Métodos Gradiente Introducción El método del gran descenso "steepest descent") Criterios de parada Funciones cuadráticas 3 / 19
Superficie de nivel Métodos Gradiente Introducción Sea f : Ω R n R una función. La hipersuperficie de nivel, superficie de nivel si n = 3, curva de nivel si n = 2, está definida por S = {x Ω f x) = c, constante real} Figure: Curvas de Nivel para una función f x) 4 / 19
Métodos Gradiente Propiedades del gradiente Ya que la derivada direccional de f x) en la dirección de d = f x)/ f x), d = 1, está dada por entonces f x) d = f x), d = f x) d cos θ = f x), La función f x) crece más rápidamente en la dirección de f x). La función f x) decrece más rápidamente en la dirección de f x). Cualquier dirección u R n ortogonal al f x) es una dirección de cambio nulo. 5 / 19
Métodos Gradiente Dirección del gradiente Dirección de búsqueda La dirección negativa del gradiente, f x), es una buena dirección de búsqueda para encontrar un minimizador de la función. 6 / 19
Métodos Gradiente Algoritmo gradiente descendente Algoritmo del gradiente descendente Dado un punto de inicio x [k] para encontrar el siguiente punto x [k+1], comenzamos en x [k] y nos desplazamos por una cantidad α k f x [k] ): x [k+1] = x [k] α k f x [k] ). 7 / 19
Métodos Gradiente El método del descenso rapido El método del gran descenso "steepest descent") 1 El método del descenso rapido es un algoritmo tipo gradiente descendente. 8 / 19
Métodos Gradiente El método del gran descenso "steepest descent") El método del descenso rapido 1 El método del descenso rapido es un algoritmo tipo gradiente descendente. 2 El tamaño del paso α k se selecciona para maximizar la cantidad que decrece la función objetivo en cada paso. 9 / 19
Métodos Gradiente El método del gran descenso "steepest descent") El método del descenso rapido 1 El método del descenso rapido es un algoritmo tipo gradiente descendente. 2 El tamaño del paso α k se selecciona para maximizar la cantidad que decrece la función objetivo en cada paso. 3 El parámetro α k se escoge para ) minimizar φ k α) = f x [k] α f x [k] ), esto es ) α k = arg min f x [k] α f x [k] ) α 0 10 / 19
Métodos Gradiente El método del descenso rapido El método del gran descenso "steepest descent") Teorema Si {x [k]} es una sucesión descendente para la función f : k=0 Rn R, entonces para cada k el vector x [k+1] x [k] es ortogonal al vector x [k+2] x [k+1]. Teorema Si {x [k]} es la sucesión descendente para la función f : k=0 Rn R y si f x [k] ) = 0, entonces f x [k+1]) < f x [k]). 11 / 19
Criterios de parada Verificar si el usuario. f Métodos Gradiente Criterios de parada x [k]) < ε, donde ε > 0 es un umbral definido por 12 / 19
Criterios de parada Verificar si el usuario. Verificar si f f definido por el usuario. Métodos Gradiente Criterios de parada x [k]) < ε, donde ε > 0 es un umbral definido por x [k+1]) f x [k]) < ε, donde ε > 0 es un umbral 13 / 19
Criterios de parada Verificar si el usuario. Verificar si f f Métodos Gradiente Criterios de parada x [k]) < ε, donde ε > 0 es un umbral definido por x [k+1]) f x [k]) < ε, donde ε > 0 es un umbral definido por el usuario. Verificar si x [k+1] x [k] < ε, donde ε > 0 es un umbral definido por el usuario. 14 / 19
Criterios de parada Verificar si el usuario. Verificar si f f Métodos Gradiente Criterios de parada x [k]) < ε, donde ε > 0 es un umbral definido por x [k+1]) f x [k]) < ε, donde ε > 0 es un umbral definido por el usuario. Verificar si x [k+1] x [k] < ε, donde ε > 0 es un umbral definido por el usuario. Verificar errores relativos en los valores de f x) f x [k+1]) f x [k]) f x [k]) < ε 15 / 19
Criterios de parada Verificar si el usuario. Verificar si f f Métodos Gradiente Criterios de parada x [k]) < ε, donde ε > 0 es un umbral definido por x [k+1]) f x [k]) < ε, donde ε > 0 es un umbral definido por el usuario. Verificar si x [k+1] x [k] < ε, donde ε > 0 es un umbral definido por el usuario. Verificar errores relativos en los valores de f x) f x [k+1]) f x [k]) f x [k]) < ε Verificar errores relativos en las x x [k+1] x [k] x [k] < ε 16 / 19
Métodos Gradiente Criterios de parada Criterios de parada divisiones por números pequeños) Para evitar dividir por números pequeños se pueden utilizar los siguientes criterios f x [k+1]) f x [k]) max 1, f x [k]) ) < ε, x [k+1] x [k] max 1, x [k] ) < ε 17 / 19
Métodos Gradiente Funciones cuadráticas Funciones cuadráticas Funciones cuadráticas Considere la siguiente función cuadrática f x) = 1 2 x T Qx b T x, donde Q R n n es simétrica y positiva definida, b, x R n. Objetivo Analizar el comportamiento del algoritmo del descenso rápido cuando se aplica a la anterior función cuadrática. 18 / 19
Funciones cuadráticas Métodos Gradiente Funciones cuadráticas Lema El método del descenso rápido aplicado a la función cuadrática f x) = 1 2 x T Qx b T x, toma la forma donde ) x [k+1] = x [k] g [k]t g [k] g [k]t Qg [k] g [k], g [k] = f x [k] ) = Qx [k] b. 19 / 19