ALN - Curso 27 Gradiente Conjugado Cecilia González Pérez Junio 27 Métodos Iterativos Pueden ser: Métodos estacionarios Métodos no estacionarios Métodos no estacionarios hacen uso de información, evaluada en cada iteración, que les permite obtener la solución de modo dinámico suelen ser más eficientes que los métodos estacionarios para la mayor parte de los problemas contienen a los métodos basados en subespacios de Krylov Gradiente Conjugado Método iterativo no estacionario que permite resolver sistemas lineales bajo la restricción de que la matriz de n n coeficientes A R sea simétrica y definida positiva, o sea, simétrica y con valores propios positivos. Basado en subespacios de Krylov. No requiere una factorización de la matríz, ni es dependiente de parámetros definidos por el usuario, como sucede con otros métodos iterativos.
Subespacio de Krylov Se define el subespacio de Krylov de dimensión m asociado a la matriz A y al vector v, como el subespacio generado por la base {,, 2,..., m v Av A v A v}, y se denota por K A, v. m ( ) Se puede ver que: AKm K m + K K2... K m... Ortogonalidad Si v K m entonces Av Km Cualquier vector ortogonal a un espacio de Krylov se transforma bajo A en otro también ortogonal, pero al espacio de Krylov un orden menor. Problema de minimización equivalente A R n n n Si es simétrica y definida positiva y b R, entonces la función cuadrática n φ : R R φ ( x) = Ax, x b, x 2 n alcanza un único mínimo en el vector x R solución del sistema. Ax = b Nota: T T φ ( x) = Ax, x b, x = x Ax x b 2 2 2
A es simétrica entonces φ T φ ( x) = ( x) = ( Ax + A x) b = Ax b x 2 Entonces Además φ tiene un punto crítico en x si y solo sí ( ) φ x = Ax = b y, por lo tanto si A es definida positiva, el punto crítico de es un mínimo. φ 2 φ Hφ( x) = ( x) = ( aij ) = A xi x j Métodos de Descenso n Se parte de un punto u R, y en cada paso =,,2, se determina un nuevo punto de la siguiente manera: ( ) φ ( ) u R φ u < u + n + - Se calcula una dirección de búsqueda p 2 - Se considera la recta L que pasa por el punto con dirección p 3 - Se elige el punto u + L donde φ alcanza su mínimo sobre L u Como { α : α } L = u + p R, entonces φ α α α 2 2 2 ( u p ) + = Au, u b, u + Au b, p + Ap, p Por lo tanto, dφ r, p ( u + α p ) = α = α = dα Ap, p Donde Luego r = b Au es el residuo de u u + = u +α p 3
Método del Máximo Descenso Los distintos métodos de descenso se distinguen por la manera de escoger la dirección de descenso p La elección más simple es escoger la dirección de máximo descenso de φ ( ) p = φ u = b Au = r Esta elección conduce al Método del Máximo Descenso o del Gradiente. Método del Máximo Descenso Método del Máximo Descenso 4
Método del Máximo Descenso Algoritmo del Método del Máximo Descenso: Dado el vector inicial u, r = b Au Para =,,2, hasta que se satisfaga un criterio de detención r, r α = Ar, r u + = u +α r r = b Au = r α Ar + + Direcciones conjugadas Una elección de la dirección de descenso p que genera un método más eficiente se basa en ortogonalizar el residuo r j respecto a todas las direcciones de descenso anteriores p, j =,,-, en el producto interno x, y = Ax, y, x, y R A Las direcciones obtenidas satisfacen j Ap, p = j y son llamadas direcciones conjugadas o A-ortogonales. n El procedimiento anterior conduce a otro método llamado Método del Gradiente Conjugado. 5
La idea básica del método del gradiente conjugado consiste en construir una base de vectores ortogonales y utilizarla para realizar la búsqueda de la solución en forma más eficiente. La gran ventaja del método radica en que cuando se utiliza este procedimiento, basta con asegurar la ortogonalidad de un nuevo miembro con respecto al último que se ha construido, para que automáticamente esta condición se cumpla con respecto a todos los anteriores. Se basa en realizar una proyección ortogonal en el subespacio de Krylov K, donde r ( A, r ) es el residuo inicial. En las sucesivas iteraciones se obtienen soluciones aprox. al sistema (iterandos). Para cada iteración se calcula el residuo correspondiente a las distintas soluciones y una dirección de búsqueda ( p + ). Residuo de la resolución del sistema r = b Au + + α + Variable de escalado. La elección de β asegura que r + y r sean ortogonales (a todos los previos). Método del Gradiente Conjugado 6
Método del Gradiente Conjugado Método del Gradiente Conjugado Algoritmo del Método del Gradiente Conjugado: Ax = b Entrada: el sistema y un vector de búsqueda inicial u. Se calcula para iniciar el algoritmo r = b Au y p = r Para =,,2, hasta que se satisfaga un criterio de detención β + + r, r + = r, r p = r + β p + + + α + = r, p Ap p u + = u +α p r + = r α Ap 7
Propiedad de terminación finita Tras n iteraciones se alcanza la solución exacta suponiendo que no haya efecto de los errores de redondeo (aritmética exacta). Sin embargo, en aritmética finita este resultado ya no es válido. Debido a los errores de redondeo, pueden ser necesarios más de n pasos del método. Criterio de detención Puede tener en cuenta: Error cometido en el cálculo de la solución del sistema: i r límite b, donde el valor de la variable límite es proporcional a la precisión que se quiere alcanzar en el resultado. En la práctica se itera hasta que cierto criterio sobre el 6 residuo es alcanzado. Ej. r <. Debido a errores de redondeo no se puede bajar de un cierto nivel de residuo relacionado con la precisión de la máquina y el número de operaciones necesarias para calcular el residuo. Tiempo de ejecución del algoritmo: se establece un límite máximo al número de iteraciones que realiza el algoritmo. Velocidad de convergencia Se verifica que: i 2 u x 2 u x 2 + i u es la solución obtenida para la iteración i-ésima. x es la solución exacta del sistema. λ ( ) 2 es el número de condición espectral, max A. 2 = λ A i min ( ) 8
La convergencia del método dependerá, en gran manera, de las propiedades espectrales de la matriz de coeficientes. Un mal condicionamiento de la matriz provoca que converja lentamente. Precondicionador Matriz invertible M que provoca que el sistema: M Ax = M b tenga la misma solución de Ax = b más fácil de resolver. pero que sea La ventaja que se obtiene mediante su uso es que la nueva matriz de coeficientes presenta unas propiedades espectrales más favorables, que permiten una convergencia más rápida (PCG). Algunos datos El método del gradiente conjugado necesita muy poca memoria para ser realizado, lo que lo convierte en un gran método cuando la matriz del sistema es simétrica y definida positiva. Para cada iteración del algoritmo básico (sin precondicionador ni condición de convergencia) es necesario realizar un producto matriz-vector, tres actualizaciones vectoriales y dos productos escalares entre vectores. 9
Otros métodos Gradiente Bi-conjugado (BiCG). No exige que la matriz sea simétrica. Se basa en reemplazar las secuencias ortogonales de residuos por dos secuencias mutuamente ortogonales. La actualización de relaciones para los residuos son aumentadas por relaciones que son similares pero basadas en A T en lugar de A. Convergencia: Para sistemas simétricos y definidos positivos obtiene los mismos resultados que el método de Gradiente Conjugado. Algoritmo del Método del Gradiente Bi-conjugado: x Elegir, calcular r = b Ax y elegir r ' = r ; p = p ' ; = Para =,,2, hasta que se satisfaga un criterio de detención + = r ', r = + α + p ' +, Ap + β = + + p = r + β p + + p ' = r ' + β p ' + + x = x + α p + + + r = r + α Ap + + + r ' = r ' + α A p ' T + + + Otros métodos Gradiente Conjugado Cuadrático (CGS). Variante del Gradiente Bi- Conjugado. Requiere una cantidad de operaciones por la iteración casi igual al BiCG pero no es necesario usar A T. Convergencia: En la práctica la convergencia puede ser mucho más irregular que para el BiCG.
Algoritmo del Método del Gradiente Conjugado Cuadrático: x Elegir, calcular r = b Ax y elegir r ' = r ; p = q; = Para =,,2, hasta que se satisfaga un criterio de detención r ', + = r β = + + u = r + q β + ( β ) p = u + β q + p + + + = p ', Ap + α + + q = u α p + + + ( ) x = x + α u + q + + + ( ) r = x + α u + q + + + Otros métodos Gradiente Bi-conjugado Estabilizado (BiCGSTAB). Resuelve sistemas lineales no simétricos. Evita la irregular convergencia del método de Gradiente Conjugado Cuadrático modificando el polinomio que se usa para el cálculo del residuo. Requiere dos productos internos más que BiCG y CGS. Convergencia: Aprox. a la del método de Gradiente Conjugado Cuadrático, algunas veces converge más rápido que éste y otras no. Algoritmo del Método del Gradiente Bi-conjugado Estabilizado: x Elegir, calcular r = b Ax y elegir r ' = r ; p = q = ; = α = ω = Para =,,2, hasta que se satisfaga un criterio de detención r ', + = r β = + α ω + + ( ω ) p = r + β p q + + q = Ap + + + α + = r ', q + s = r α q + + + t = As + + t ω + = t, s + +, t + + x = x + α p + ω s + + + + + r = s + ω t + + + +
FIN Muchas gracias. 2