Cálculo numérico. Sistemas de ecuaciones lineales. José Luis Morales http://allman.rhon.itam.mx/∼jmorales Departamento de Matemáticas. ITAM. 2010. José Luis Morales http://allman.rhon.itam.mx/∼jmorales Cálculo numérico. Sistemas de ecuaciones lineales. Las raı́ces de x2 − bx + c = 0. √ b2 − 4c r = 2 b = 3.6778, c = 0.0020798 b± r1 = 3.67723441190 . . . r2 = 0.00056558809 . . . En aritmética decimal de 5 dı́gitos b2 4c b√2 − 4c b2 √ − 4c b − √b2 − 4c (b − b2 − 4c)/2 José Luis Morales http://allman.rhon.itam.mx/∼jmorales 1.3526 × 10+1 8.3193 × 10−3 1.3518 × 10+1 3.6767 × 100 1.1000 × 10−3 5.5000 × 10−4 Cálculo numérico. Sistemas de ecuaciones lineales. Suma de n números reales p = 4, β = 10 s 9 = x 1 + x2 + · · · + x 9 . 0.1580 × 100 0.6266 × 102 0.8999 × 104 0.2653 × 100 0.7555 × 102 0.2581 × 101 0.7889 × 103 0.4288 × 101 0.7767 × 103 P: ¿En que forma deben ordenarse los sumandos para generar el menor error por redondeo? José Luis Morales http://allman.rhon.itam.mx/∼jmorales Cálculo numérico. Sistemas de ecuaciones lineales. Suma de n números reales p = 4, β = 10 s 9 = x 1 + x2 + · · · + x 9 . 0.1580 × 100 0.6266 × 102 0.8999 × 104 0.2653 × 100 0.7555 × 102 0.2581 × 101 0.7889 × 103 0.4288 × 101 0.7767 × 103 P: ¿En que forma deben ordenarse los sumandos para generar el menor error por redondeo? R: en forma ascendente José Luis Morales http://allman.rhon.itam.mx/∼jmorales Cálculo numérico. Sistemas de ecuaciones lineales. Problema por resolver Supongamos que A es una matriz real de m × n; x y b son vectores de dimensiones apropiadas. A y b son conocidos; x es el vector de incógnitas. El vector x debe satisfacer: min ||r||, x r = Ax − b, en donde || · || es una norma vectorial. Métodos computacionales viables: a) eliminación gaussiana con pivoteo; b) ortogonalización. José Luis Morales http://allman.rhon.itam.mx/∼jmorales Cálculo numérico. Sistemas de ecuaciones lineales. Eliminación gaussiana. A= ǫ −1 1 1 = 1 0 ℓ21 1 u11 u12 0 u22 , 0 < ǫ << 1 Claramente, u11 = ǫ, u12 = −1, ℓ21 = ǫ−1 , u22 = 1 + ǫ−1 . En aritmética de PF, para ǫ suficientemente pequeño, û22 = ǫ−1 . Si ℓ21 se calcula exactamente, tenemos que 0 0 A − L̂Û = . 0 1 Elección del pivote ǫ. José Luis Morales http://allman.rhon.itam.mx/∼jmorales Cálculo numérico. Sistemas de ecuaciones lineales. Eliminación gaussiana numéricamente estable. ′ A = LU = 1 1 ǫ −1 = 1 0 ǫ 1 1 1 0 −(1 + ǫ) , 0 < ǫ << 1. En aritmética de punto flotante 1 1 Û = . 0 −1 Por lo tanto ′ A − L̂Û = 0 0 0 0 Elección del pivote 1. Observación: ′ A = P A, P = . 0 1 1 0 . P es una matriz de permutación. José Luis Morales http://allman.rhon.itam.mx/∼jmorales Cálculo numérico. Sistemas de ecuaciones lineales. Sensibilidad de x con respecto a variaciones en los datos A, b. Sensibilidad proporcional a ǫ, δ ǫ −1 x1 1+δ Ax = = 1 1 x2 1+δ Alta sensibilidad con respecto a ǫ, δ 1+ǫ 1 x1 1+δ Bx = = 1 1 x2 1+δ Pregunta: ¿es cuantificable la sensibilidad? José Luis Morales http://allman.rhon.itam.mx/∼jmorales Cálculo numérico. Sistemas de ecuaciones lineales. Sensibilidad de x con respecto a variaciones en los datos A, b. Sensibilidad proporcional a ǫ, δ ǫ −1 x1 1+δ Ax = = 1 1 x2 1+δ Alta sensibilidad con respecto a ǫ, δ 1+ǫ 1 x1 1+δ Bx = = 1 1 x2 1+δ Pregunta: ¿es cuantificable la sensibilidad? Respuesta: Sı́ ... en esta clase daremos la respuesta! José Luis Morales http://allman.rhon.itam.mx/∼jmorales Cálculo numérico. Sistemas de ecuaciones lineales. Ejemplo La solución del sistema siguiente 0.0003x1 + 1.566x2 = 1.569 0.3454x1 − 2.436x2 = 1.018 es x1 = 10, x2 = 1. En aritmética decimal de 4 dı́gitos: EG sin pivoteo: x̄1 = 3.333 EG con pivoteo: x̂1 = 10.01 José Luis Morales http://allman.rhon.itam.mx/∼jmorales x̄2 = 1.001 x̂2 = 1 Cálculo numérico. Sistemas de ecuaciones lineales. Producto interno. Espacios vectoriales con producto interno. 1 2 3 Suma: x + y Producto escalar: αx. Producto interior: < x, y >. < , > : Rn × Rn −→ R x ⊥ y ⇐⇒ < x, y >= 0. Norma inducida por el producto interior: √ ||x|| = < x, x > Producto estándar en Rn < x, y >= xT y = n X xi yi i=1 José Luis Morales http://allman.rhon.itam.mx/∼jmorales Cálculo numérico. Sistemas de ecuaciones lineales. Consistencia Una norma matricial es consistente (la norma es submultiplicativa) si y sólo si: ||AB||α ≤ ||A||β ||B||γ . El producto AB está bien definido. Ejemplo: A en Rm×n , x ∈ Rn ||Ax||2 ≤ ||A||2 ||x||2 . José Luis Morales http://allman.rhon.itam.mx/∼jmorales Cálculo numérico. Sistemas de ecuaciones lineales. Sensibilidad ...ǫ = 1 3 2 1 0 −1 −2 −3 −3 −2 −1 José Luis Morales http://allman.rhon.itam.mx/∼jmorales 0 1 2 3 Cálculo numérico. Sistemas de ecuaciones lineales. Sensibilidad ... ǫ = .1 3 2 1 0 −1 −2 −3 −3 −2 −1 José Luis Morales http://allman.rhon.itam.mx/∼jmorales 0 1 2 3 Cálculo numérico. Sistemas de ecuaciones lineales. Sensibilidad ... ǫ = .01 3 2 1 0 −1 −2 −3 −3 −2 −1 José Luis Morales http://allman.rhon.itam.mx/∼jmorales 0 1 2 3 Cálculo numérico. Sistemas de ecuaciones lineales. Sensibilidad ...ǫ = 1 3 2 1 0 −1 −2 −3 −3 −2 −1 José Luis Morales http://allman.rhon.itam.mx/∼jmorales 0 1 2 3 Cálculo numérico. Sistemas de ecuaciones lineales. Sensibilidad ... ǫ = .1 3 2 1 0 −1 −2 −3 −3 −2 −1 José Luis Morales http://allman.rhon.itam.mx/∼jmorales 0 1 2 3 Cálculo numérico. Sistemas de ecuaciones lineales. Sensibilidad ... ǫ = .01 3 2 1 0 −1 −2 −3 −3 −2 −1 José Luis Morales http://allman.rhon.itam.mx/∼jmorales 0 1 2 3 Cálculo numérico. Sistemas de ecuaciones lineales. Normas matriciales y número de condición. Si A es una matriz invertible y || · || es una norma matricial cond (A) = ||A|| ||A−1 ||. Ejemplos de normas consistentes: ||A||1 = max j n X i=1 ||A||∞ = max i |aij |, n X j=1 |aij |, José Luis Morales http://allman.rhon.itam.mx/∼jmorales ||A||2 = q λmax (AT A). v uX n u n X a2ij . ||A||F = t i=1 j=1 Cálculo numérico. Sistemas de ecuaciones lineales. Ejemplo. Matrices bien condicionadas. Supongamos que |ǫ| << 1 ǫ −1 A= , 1 1 ||A||1 = 2, A−1 = ||A||∞ = 2, 1 1+ǫ ||A||F = 2 2 , ||A−1 ||∞ = , 1+ǫ 1+ǫ Supongamos que ǫ → 0, entonces ||A−1 ||1 = cond 1 (A) = 4, cond ∞ (A) = 4, José Luis Morales http://allman.rhon.itam.mx/∼jmorales 1 −1 1 ǫ p . 3 + ǫ2 . √ ||A−1 ||F = 3 + ǫ2 . 1+ǫ cond F (A) = 3. Cálculo numérico. Sistemas de ecuaciones lineales. Ejemplo. Matrices mal condicionadas B= 1+ǫ 1 1 1 ||B||1 ≈ 2, , ||B||∞ ≈ 2, B −1 cond 1 (B) → ∞, 1 −1 −1 1 + ǫ . q 3 + (1 + ǫ)2 ≈ 2. √ 3 + ǫ2 −1 ||B ||F = . ǫ ||B||F = 2 2 , ||B −1 ||∞ = , ǫ ǫ Supongamos que ǫ → 0, entonces ||B −1 ||1 = 1 = ǫ cond ∞ (B) → ∞, cond F (B) → ∞. Números de condición grandes ⇐ singularidad. José Luis Morales http://allman.rhon.itam.mx/∼jmorales Cálculo numérico. Sistemas de ecuaciones lineales. Conclusión Supongamos que queremos resolver el sistema de ecuaciones lineales Ax = b, en donde A es no singular, utilizando un método numérico que obtiene x̂ como aproximación a la solución correcta x. Entonces ǫb ≤ cond(A)ǫf ||E|| ||x − x̂|| ≤ cond(A) . ||A|| ||x|| José Luis Morales http://allman.rhon.itam.mx/∼jmorales Cálculo numérico. Sistemas de ecuaciones lineales. Matrices ortogonales A es ortogonal si y sólo si las columnas de A son ortonormales i.e. ATi Aj = δij , ∀i, j, i = 1, . . . , n. j = 1, . . . , n. Claramente la norma (vectorial) inducida por el producto interior estándar es la norma Euclidiana. ||Ax||22 = (x1 A1 + x2 A2 + · · · + xn An )T (x1 A1 + x2 A2 + · · · + xn An ) n X x2i = ||x|22 = i=1 Por lo tanto ||Ax||2 = ||x||2 . La norma espectral de una matriz ortogonal es 1. José Luis Morales http://allman.rhon.itam.mx/∼jmorales Cálculo numérico. Sistemas de ecuaciones lineales.