42

8. - lya.fciencias.unam.mx

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 8. - lya.fciencias.unam.mx
Page 2: 8. - lya.fciencias.unam.mx

' d v , g g w a p5.g.g g -. c. g p 8 B a a 9 8 8.

g o @ F g 2. a m -. 8. 2. a L g

5 . gia 02 cn c. * < K Z . . 0

$ P : : 8 cn e - z . . 0

02 a . g s . : A < . - 5 .

86'. . 3 - . . E a E : : 5 J 0 ~ a . : - E .

g B : : g n. 3 $0: . " n a . : 8 .- a : . . . . . 8. . a . . . . . .

Page 3: 8. - lya.fciencias.unam.mx

. . . . . . . . . . . . . . . . . . 4.3.5 Convergencia del metodo 45 . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3.6 Resultados 45

. . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4 MCtodo de Chan 46 4.4.1 Expresi6n implicita de las soluciones . . . . . . . . . . . . 49 4.4.2 Deflacidn usando valores y vectores singulares . . . . . . . 50 4.4.3 Algoritmos . . . . . . . . . . . . . . . . . . . . . . . . . . 51

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5 Resultados 54 . . . . . . . . . . . . . . . . . . . . . 4.6 Solucidn deflacionada con QR 55

I

5 Problemas de Minimos Cuadrados con ~ a n ~ d Deficiente 55 5.1 CAculo de ~ ~ s v o mediante RRQR de A . . . . . . . . . . . . . 56

5.1.1 Determinaci6n del Espacio Nulo NumCrico . . . . . . . . . 57 . . . . . . . . . . . . 5.1.2 Determinacidn de la soluci6n TSVD 59

5.1.3 Costo computational . . . . . . . . . . . . . . . . . . . . . 61 5.2 Soluci6n de minimos cuadrados mediante TQR . . . . . . . . . . 61 5.3 Soluciones deflacionadas con RRQR . . . . . . . . . . . . . . . . 62 5.4 Resultados.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

:B ~ k t o d d d e . Newton para sistemas de ecuaciones no lineales 68 6.1 MBtodo de Newton en Rn . . . . . . . . . . . . . . . . . . . . . . 68

6.1.1 Ventajas y desventajas del mCtodo de Newton para resolver sistemas de ecuaciones no lineales. . . . . . . . . . . . . . 70

6.2 Modificaci6n del mBtodo de Newton . . . . . . . . . . . . . . . . 70

Referencias .82

Uno de 10s problemas mas importantes del Algebra Lineal numCrica, es el de determinar el rango numCrico de una matriz, y como es bien conocido la descom- posicion en valores singulares, (SVD), es el mCtodo m k confiable. Sin embargo, la complejidad computacional es muy grande comparada con la descomposicidn QR. Esta tiene la desventaja de no ser suficientemente confiable en cuanto a la determinacidn del rango numkrico.

Una alternativa, la factorizaci6n RRQR que revela rango, ha sido propuesta por Foster [9] y principalmente por Chan [4], b t e mCtodo no &lo es econdmico, sino que es seguro, ya que garantiza obtener 10s valores singulares m k pequeiios de la matriz porque produce cotas superiors e inferiores para Cstos. Ademk produce un conjunto de vectores que generan una buena aproximacidn a1 espacio nulo de la matriz.

A partir de estos trabajos, en 10s dltimos diez aiios se ha desarrollado una considerable actividad de investigaci6n sobre este t6pic0, lo cual ha dado lugar a una familia de factorizaciones RRQR. Podemos citar, entre otros, las siguientes contribuciones [I], [ l l ] . En este trabajo estamos interesados en presentar las ideas bbicas, algebraicas y numkricas, sobre las que est i basada la versidn de Chan de la descomposici6n RRQR de una matriz, asi como algunas de sus princi- pales aplicaciones. Una es el cilculo de soluciones deflacionadas de sistemas casi singulares, por lo que se introducen tambiCn estos conceptos con todo detalle, y finalmente, se presentan algunos ejemplos sencillos que muestran el potencial en la estabilizacion del metodo de Newton.

2 Resultados Preliminares

Una de las factorizaciones de matrices muy usadas, es la factorizaci6n QR, la cual consiste en descomponer la matriz A,,, en el product0 de dos matrices Qmxm y R m x n tal que A = QR, y donde Q es ortogonal y R es triangular superior.

Definicidn. Para w # 0 en Rn, la matriz de Householder H, n x n, se define como

H = 1, - (L) WW'. wtw

Es facil demostrar que H es simbtrica, es decir H = Hi, y tambiBn que es ortogonal, esto es Hi = H-'. En consecuencia H = H-'.

Page 4: 8. - lya.fciencias.unam.mx

Se puede demostrar que considerando la matriz H definida anteriormente, para cualquier x # 0, y # 0 en R n , con x # y, existe una H tal que H z = cry para algrin nlimero real cr.

Teorema 2.1 (Descomposici6n QR) Suponga que Am,, es una rnatriz real. Existe suceszdn H I , H2, . . . , Hn de a lo rncis n matrices de Householder de rnanera

que HnHn_i . . . HIA = R

en donde R es triangular superior y tiene elernentos no negativos en la diagonal principal, equivalenternente

A = Q R

donde Q = Hl H2 . . . Hn es n x n y ortogonal. Si rango(A) = n, las primeras n colurnnas de Q generan Im(A) =< a,, a2,. . . , an >.

El mktodo de Householder opera de la siguiente manera: supongamos que tenemos una matriz A E R m x n , A = (alla2(. . . lan), tratamos de encontrar una matriz H1 que haga ceros la primera columna de A a excepci6n del primer

y entonces el producto HIA nos queda

De esta forma, el siguiente paso es encontrar una matriz H2 que actlie igual que HI sobre la submatriz A', de forma tal que

Y se procede de igual forma sobre la siguiente submatriz. De manera que a1 tener las n matrices de Householder, el producto H,Hn-1 . . . H ~ H I A = R, donde R es una matriz triangular superior.

Sobre la factorizaci6n RRQR 7

2.2 QR con pivoteo

Si A E RmXn y rango (A) < n, entonces la factorizaci6n QR no necesariamen- te produce una base ortonormal para la Irn(A). Por ejernplo, si A tiene tres coiumnas y

A = (a1 aza3) = (91 4243)

es su factorizaci6n QR, entonces rango(A) = 2, pero Irn(A) no es igual a <ql,q2 >, <ql,q3 > 6 <q2,q3 >. Yaquesiconsideramos

Im(A) es < a l l as >, y no es igual a1 subespacio generado por las columnas de Q, yaque <ql,qz > =planoyz, < ql,qg >=planoxz y <qzlq3> =planoxy.

Afort~nadamente, el procedimiento de Householder para obtener la factori- zaci6n QR, puede ser modificado facilmente para producir una base para Im(A). El algoritmo modificado calcula la factorizaci6n

Q t A n = ( R d l R;2) m - r

donde r = rango (A), Q es ortogonal, Rl l es triangular superior y no singular y n es una matriz de permutacibn.

El procedimiento consiste en lo siguiente, en el primer paso se calcula la norma de cada columna de la matriz y se coloca en la primera columna a la columna de norma maxima, esto se hace mediante una permutaci6n de columnas n l . A la nueva matriz Anl se le aplica el primer paso de la descomposici6n QR, y se obtiene una matriz ortogonal Q1 tal que

donde Rll = ( r l l ) , R12 = (r12, . . . , rln), Rz2 es una matriz de (m - 1) x (n - 1). Se procede de la misma forma para la submatriz Rz2, y asi sucesivamente. A1 final tendremos

Page 5: 8. - lya.fciencias.unam.mx

-.-

i6n II estd dada por

caso, si rango(A) = r entonces las primeras

2.3 Descomposic

ada es la descomposici6n en valores sin- o a que proporciona informaci6n sobre el

rango deficiente de u

matriz real de orden m x n, entonces existen

Y V = (vl,v2, ..., v,) € R n X n

u t A v = daag(fl<g,op) E RmXn, p = min{m,n) .+-. *-

donde ul 2 uz 2 . . . > up 2 k$$ B

Los 01 son 10s valores sin$:! de A y 10s vectores u, y v, son 10s t-kimos uectores slngulares zzquterdo Y demho, respectivamente. Es fdcil verificar com- parando las columnas en y*iones AV = XU y AtU = CtV que

i:

Para i = 1,. . . , rnin{rn,n). La SVD proporciona gran informaci6n acerca de la estructura de la maMz.

Si la SVD de A estd dads Por &rema anterior, y definimos r como

entonces

Sobre la factorizacibn RRQR 9

1 Observese tarnbiin que

Esto es, 10s a! son 10s eigenvalores de AAt y 10s vectores singulares izquierdos ui son sus correspondientes eigenvectores.

Mas arin, si U, = (ul, u2, - - - , w), Cr = diag(al,az,. . - ,or) , y V, = (vl , ~ 2 , . . - , v,) entonces tenemos la expansi6n SVD

F La norma-2 y la norma de Fkobenius estin caracterizadas en tbminos de la I SVD, de la siguiente forma i

I 2.3.1 Rango deficiente y la SVD

: Uno de 10s aspectos m b relevantes de la SVD es que proporciona informaci6n sobre la sensibilidad del rango de una matriz. Esto es importante debido a las grandes dificultades numkricas que se presentan cuando se trabaja con rnatri- ces cercanas a tener rango deficiente. Por esto, para un c pequeiio, estamos interesados en el E-rango de una matriz que se define de la siguiente manera.

Definicibn. Sea A una matriz de m x n

k = rango (A, c) = min rango ( B ) IlA-BIlz6r

es llamado el c-rango de A. La cantidad c depende de la incertidumbre que tengamos en 10s elementos de A y debe elegirse cuidadosamente.

Consideremos la descomposici6n en valores singulares de A,

donde U = (211,212,. . . ,u,) y V = (vl,v2,. . . ,vn) son matrices con columnas ortogonales y C = diag ( a l , 02, . . . , a,) es una matriz de (m x n) diagonal, c u p s elementos diagonales son llamados 10s valores singulares de A y estan ordenados de tal forma que ul 2 uz 2 . . . 2 an 2 0.

Page 6: 8. - lya.fciencias.unam.mx

Consideremos B tal que IIA - BII 5 E. Supongamos que at > 6 L uk+l, puesto que

min llA - BII = uk+l rango ( ~ ) = k

B debe tener a1 menos rango k, por lo tanto

rango (A, 6) = min rango (B) = k IIA-BIl5

y por consiguiente si k es el numero de valores singulares estrictamente mayor que E, es decir,

Uk > 2 Uk+l

entonces k = rango (A, E). Ademb es ficil verificar que

Como JIAv, 11 5 E i = k + 1,. . . , n, es natural pensar que estas v; son vectores nulos aproximados y entonces definir el E-subespacio nulo de A como el subespacio generado por 10s vectores vk+l, . . . , v,.

2.4 MQtodo de la potencia inversa

Supongamos que queremos calcular el eigenvector de A correspondiente al eigen- valor mis pequeiio en magnitud. Sean (Al, el) . - - ( A , , en), 10s eigenpares de A, 10s correspondientes eigenpares de B = A-' son (1 / A l , el ) . . . (1 /An, en). Si An es el eigenvalor m b pequeiio en magnitud de A, entonces l / A n es el eigenvalor de mayor magnitud de B, y la iteration de potencia

converge a1 eigenvector en correspondiente a1 eigenvalor l / A n de B = A-I

Al implementar el mCtodo de la potencia inversa, multiplicamos por A para expresar la iteracion xnueu4 = A-1x4nie"or , en la forma

Asi, en cada iteracion se tiene que resolver un sistema de ecuaciones.

Sobre la factorizaci6n RRQR 11

2.4.1 Aplicaci6n a1 c6lculo de valores y vectores singulares

Si aplicamos iteraci6n inversa a AA' obtendremos una aproximacion a1 vector singular izquierdo de A, u, que corresponde a1 valor singular m h pequeio de A. Esto es, partimos de un vector inicial, uo, y realizamos el proceso iterativo. En la i-hima iteracion tendremos

o lo que es lo mismo u , - u,-1 (AAt) a -

En la prictica no es recomendable realizar el product0 AAt, ya que si la matriz es t i ma1 condicionada, AAt lo es t i abn m h . Para evitar este proble- ma utilizamos un algoritmo que consta de dos pasos, en la i z b i m a iteracion resolvemos

1. Ay, = u,

de esta fonna los resultados son m L confiables. Algoritmicamente conviene normalizar cada vector encontrado, para evitar

que 10s vectores u, crezcan demasiado. De esta forma una iteration del algoritmo consta de cuatro pasos

1. Resolver Ay, = u,-1

2. Normalizar y,

3. Resolver Atu, = y,

4. Normalizar u,

Y tendremos que u, -+ u,, donde un es el vector singular izquierdo corres- pondiente a1 valor singular m b pequeiio, an de A.

Para obtener el vector singular derecho correspondiente a a,, partimos de la . relacion

Av = uu

que es lo mismo que

Page 7: 8. - lya.fciencias.unam.mx
Page 8: 8. - lya.fciencias.unam.mx

5. Computar la factorizaci6a 3 = QR.

En general, si A es cercana a ser singular, una o dos iteraciones son suficientes para la convergencia.

Computacionalmente, a1 igual que en la aproximaci6n a un solo vector, se trabaja con R en lugar de A y dado que AtA = RtR, el algoritmo es el siguiente: Algoritmo con R ,-.

Dado 3 tal que 3'3 = I, repetir hasta la convergencia

1. Resolver R t P = 3 .

2. Computar la factorizaci6n Q = QyrRy.

4. Resolver R 3 = Q.

5. Computar la factorizaci6n 3 = Q*R*.

Chan y Hansen [5] utilizan una variante de este algoritmo, la cud se describe a continuaci6n Algoritmo Dado @ tal que at@ = I, repetir hasta la convergencia

1. a) Resolver Rt P = 3.

b) h o l v e r R 3 = Q.

c) Computar la factorizaci6n 3 = QoRo.

d) @ = Q * .

2. Computar la factorizaci6n 9 = QyrRp.

2.5 Refinamiento iterativo de soluciones aproximadas de sistemas de ecuaciones Iineales

Analizaremos un metodo para encontrar una soluci6n aproximada de la ecuaci6n

Sobre la factorizaci6n RRQR 15

donde la matriz A es de orden n y no es muy ma1 condicionada. El m6todo em- pieza con una soluci6n aproximada xl y produce una nueva soluci6n aproximada 2 2 la cual esta m h cerca de x que XI. Obviamente se puede aplicar el m6todo nuevamente a la soluci6n aproxjmada z2 para obtener una mejor aproximaci6n 23. Procediendo de esta forma obtenemos una sucesi6n {xk) de soluciones apro- ximadas que convergen a la soluci6n real z. El mhtodo descrito a continuaci6n es llamado refinamiento atemtiuo.

La idea detrh del mdtodo es simple. Tomar zl una soluci6n aproximada de A 2 = b, se forma

r l =b-Axl

que es el residual correspondiente a zl . Entonces si resolvemos el sistema

y calculamos 2 2 = 21 + d

se sigue que

entonces 22 e~ en teoria la soluci6n exacta. En la prktica 10s cilculos se obtienen con errores de redondeo, y entonces 2 2 no va a ser una soluci6n exacta. De hecho, 10s errores hechos a1 resolver (2) para dl son del mismo tip0 que 10s cometidos para resolver inicialmente para 21, y no es claro que 2 2 sea tan buena aproximaci6n como zl .

Si A no es muy ma1 condicionada, y el residual rl es calculado en aritmdtica de doble precisi6n, entonces el error llz - z211 va a ser m k pequeiio que el error 112 - x1 11. Si el proceso se aplica iterativamente para generar una sucesi6n de soluciones aproximadas zl , 22,. . ., cada zk va a tener un error m h pequeijo que su anterior ~ k - ~ . De esta forma cada vez se acerca m k a la soluci6n. El algoritmo del refinamiento iterativo es el siguiente.

Page 9: 8. - lya.fciencias.unam.mx

Algoritmo Tomar x una aproximaci6n a la soluci6n de la ecuaci6n Ax = b. Si A no es muy ma1 condicionada, este dgoritmo, cuando se desarrolla en aritmetica de t-digitos, produce una soluci6n aproximada z que est6 cerca de la soluci6n exacta redondeada a t digitos.

1. Computar r = b - Ax en doble precisi6n y redondearlo a precisi6n simple.

2. Computar en precisi6n simple la soluci6n de la ecuaci6n Ad = r.

3. Si _< lo-' terminar la iteracibn.

5. Vaya a 1.

Este procedimiento es muy barato. Dado que el dlculo del residual requiere &lo n2 multiplicaciones, el proceso completo puede ser obtenido con 2n2 multi- plicaciones. . . _ . . . .

. .. . . . . . .

2.6 Minimos Cuadrados

Los detalles de esta secci6n se pueden ver en [13]. Considere el problema de encontrar un vector x E Rn tal que Ax = b, donde

la matriz de datos A E RmXn y el vector de observaciones b E Rm esGn dados y m 2 n. Cuando hay mfis ecuaciones que inc6gdKas se dice que el sistema es sobredeterminado. En una gran variedad de problemas un sistema sobredeter- minado no tiene soluci6n exacta dado que b debe ser un elemento de R(A). Por lo tanto el problema consiste en encontrar una soluci6n aproximada, es decir, se quiere encontrar

min (IAx - b1I2 zERn

Denotemos por XLS la soluci6n de este problema, la cual viene dada a1 resolver las llamadas ecuaciones normals, [13]

Desafortunadamente, cuando A es ma1 condicionada, AtA lo es mfis, ya que se tiene que

cond(~'A) = [cond (A)I2 (3)

Esto presenta problemas, como se muestra en el siguiente ejemplo.

Ejemplo 2. Consideremos

la soluci6n del sistema Ax = b es zl = 1, za = 1. Por o tm lado obtenemos

y la soluci6n de las ecuaciones normales es

las cuales e s t h muy alejadas de la soluci6n real.

. . . . UM forma .de resolver este tipo de problemas es utilizar la descomposici6n

.. . - - Q R d~finida anteriormente, como se verb en la siguiente secci6n.

2.7 Soluci6n de minimos cuadrados via factorizaci6n QR

Consideremos A E RmXn, con m 2 n y b E Rm y supongamos que hemos computado una matriz ortogonal Q E RmXm tal que

! es triangular superior. Si

para cualquier x E Rn. Claramente si rango(A) = rango(R1) = n, entonces XLS, que es la soluci6n de minimos cuadrados, esta definido por un sistema triangular superior

RlxLs = c

Page 10: 8. - lya.fciencias.unam.mx

lo cual es muy ficil de resolver. Note que tambi6n es fhcil de calcular el residuo.

\\

Concluimos que el problema de minimos cuadrados con rango completo puede ser resuelto fhcilmente una vez computada la factorizacibn QR de A.

En particular a1 aplicar esta tknica en la solucibn del ejemplo anterior se obtiene la siguiente soluci6n:

La cual es mucho mejor que la obtenida mediante las ecuaciones normals.

2.8 Problema de minimos cuadrados con rango deficiente

Si A tiene rango deficiente entonces hay un nhnero infinito de soluciones a1 pro- blema de minimos cuadrados y se desea encontrar la solucibn de norma minima, para lo cual se deben emplear tkcnicas especiales. Estas tknicas tiene la misma dificultad que la determinacibn del rango nurnbico. Una forma de abordar el problema es usando QR con pivoteo.

2.8.1 Minimos cuadrados con Q R con pivoteo

Supongamos que tenemos A E RmXn que tiene rango T . Si le aplicamos la des- composicibn QR con pivoteo, obtendremos una factorizacibn An = QR, donde Q es una matriz ortogonal, II una matriz de permutacibn, y R es una matriz triangular de la forma

donde R11 es una matriz triangular superior de orden T .

Una vez que se tiene esta factorizacibn, el problema de minimos cuadrados puede ser resuelto. Para cualquier x E Rn tenemos

donde

Sobre la factorhcibn EtRQR 19

Entonwa si x minimiza, debemos tener

Si z es cero en esta expresi6n, entonwa tendremos la solucidn bdsica

Si x tiene la forma de la ecuaci6n ( 5 ) ) entonces x minimiza llAx - blli, per0 entre todos los minimizadores nos interesa encontrar aquella x que tenga norma minima, para esto observernos que si tenemos la factorizaci6n AII = QR donde R tiene la forma de (4), entoncea

Podemos utilizar transformaciones de Householder para elirninar el factor Rlz . . .. de la matriz R, y obtenemos

De esta forma la matriz A nos queda como A = QTPtIIt. Si considerarnos 1 1 Ax - b1122, b t a viene.dada por

y si consideramos y = P'n'x, entonces x = IIPy, y tenemos que

Page 11: 8. - lya.fciencias.unam.mx

Esta norma se rninimizarh cumdo R l l w = c, esto es cuando w = R;;C, y y sera minima cuando tenga la forma

De esta forma podemos encontrar la soluci6n a1 problema de minim05 cua- drados mediante la expresibn

Nbtese que XB tiene a lo m L r componentes distintas de cero, y entonces AxB 5610 opera un subconjunto de columnas de A.

La solucibn b&ca no es la soluci6n minima de norma-2, a menos que la submatriz R12 sea cero, dado que

2.8.2 Determinacidn del rango numdrico con An = QR

Si el algoritmo de la factorizacidn QR con pivoteo es utilizado para calcular la solucidn X L ~ , entonces se requiere conocer el rango numkrico de A. Para apreciar las dificultades que se presentan si utilizamos este algoritmo en la determinacidn del rango numCrico, supongamos que la matriz computada por el algoritmo des- pu& de k pasos, en aritmktica de punto flotante, es la siguiente

fl(Hk . . . H I A n l . . .rIk) = = m - k

Supongamos que rango ( A ) = k. Debido a los errores de redondeo, g2) no serA exactarnente cero. Sin embargo si la norma de g) es pequeiia, es ramnable terminar el algoritmo y concluir que A tiene rango k. Un criterio de terminacibn del algoritmo puede ser

11%)ll2 5 €1 llAll2 para algun parimetro c l que dependa de la miquina. Con a t e criterio de termi- naci6n concluimos que QR con pivoteo de columna descubre un rango deficiente

(k) si durante el algoritmo R22 es pequeiio para al&n k < n.

Sobre la factorizacidn RRQR 21

Desafortunadamente, esto no siempre se cumple. Una matriz puede estar - (k) cercana a tener un rango deficiente y no tener R2, pequeiio. Entonces la facto- rizaci6n de QR con pivoteo de columna por sf misma no es totalmente confiable para detectar si una rnatriz est i cerca de tener un rango deficiente, como se rnuestra en el siguiente ejernplo

Ejemplo 3. Consideremos la matriz A, como

con c2 + s2 = 1 y S, c > 0. ESta matriz no se altera a1 aplicarle el algoritmo de QR con pivoteo. Es facil demostrar que las columnas de A, son unitarias y que IIAnl12 2 1 para toda n; por otro lado, se

-(I) tiene que ~ a a ) = S A , - ~ , por lo que llRz2 112 2 s 2 sn-'. Siguiendo - (k ) con este proceso tendremos que IIRZ2 112 2 sn-' para k = 1 : n - 1.

.. . . . . Es ta desigualdad implica que la matriz Aloo.con c,= 0.2,no tiene una submatriz de norma pequeiia,'dado que'sg9 % 0.13. 'Sin embargo, se puede demostrar que on = O(10-'), por lo que Aloe esti cercana a - (k) tener un rango deficiente, lo cual no es revelado por R22 .

De aqui que la factorizaci6n QR con pivoteo no siempre es confiable en la determinaci6n del rango numkrico, y por consiguiente en el cilculo de la solucidn a1 problems de minimos cuadrados. Este problema puede ser superado a1 utilizar la SVD de la matriz A como se muestra en la siguiente seccibn, sin embargo este procedimiento resulta muy costoso. Una forma de resolver este problema de manera econ6mica es utilizar la descomposici6n RRQR de la matriz A, la cual se estudia en la secci6n 3.

2.8.3 Minimos cuadrados y S V D

Veremos la aplicacion de SVD a la soluci6n del problema de minimos cuadrados. Queremos minimizar

ll Ax - bll2.

1 Si consideramos la SVD de A, entonces tenemos

Page 12: 8. - lya.fciencias.unam.mx

esto dado que la matriz U es ortogonal.

Sead = U t b y z = Vtx,entonces

Si todos 10s valores singulares de A son mayores que cero, entonces podemos seleccionar las z:s, equivalentemente..las xis, d e ta1,forma gue llAx - bll: sea mihima, esto es, encontramos las zis taiks'que ' ' ' . ' .

En este caso el problema de minimos cuadrados tiene soluci6n unica. Sin embargo, si u, = 0, entonces cualquier elecci6n de z , es permitida y con todas las elecciones tendremos exactamente el mismo residual, la suma de 10s cuadrados

/

En tal caso el problema de minimos cuadrados no tiene soluci6n unica, pero la solucion de norma minima corresponde a considerar z, = 0. M& generalmente, si tenemos a, = 0, entonces tambiCn se considera la correspondiente z, = 0.

El uso de SVD considera una tolerancia r, que refleja la exactitud de 10s datos originales y la aritmktica de punto flotante utilizada. Cualquier uj mayor que

d . r se considera mayor que cero y la correspondiente zl se calcula como q = 6. Cualquier uj rnenor que E se considera como cero y su correspondiente zl tambiCn.

Entonces si r es el nlimero de valores singulares mayores que r, se tiene que

Sobre la factorizaci6n RRQR 23

r = C+d, donde Ct es una matriz diagonal de n x m con la siguiente forma

Por lo tanto,

De esta forma se tiene que si A+ = VC+Ut, entonces

x = A + &

A+ es conocida como la pseudoinversa de A.

3 RRQR. Revela Rango QR

Una de las tareas m L dificiles a que se enfrenta en la soluci6n de problemas con matrices casi singulares es la determinaci6n de su rango numCrico, el cual nos proporciona informaci6n sobre la confiabilidad de las soluciones bajo pertur-

baciones. El mCtodo m& confiable para llevar a cab0 la determinaci6n del rango numCrico

es la descomposicion singular, sin embargo, la alta complejidad computacional del algoritmo es una de sus mayores desventajas.

Un mCtodo menos costoso es la descomposicidn QR con pivoteo por colum- nas de una matriz, pero la determinaci6n del rango numCrico no es totalmente confiable, como se vi6 en la secci6n anterior.

La alternativa mas prometedora a la Descomposicion en Valores Singulares ( S V D ) , es una descomposici6n llamada RRQR, (Revela-Rango-QR) desarrolla- da por Chan (4). En esta secci6n presentaremos las ideas de este mktodo.

Page 13: 8. - lya.fciencias.unam.mx

Necesitamos determinar el rango de una matriz, el e rango numCrico, rango (A, c), es decir, el nrimero de columnas linealmente independientes de A que se puede garantizar que son linealmente independientes a pesar de que A sufra una per- turbaci6n de norma menor 6 igual que f . ,

Una tCcnica corn611 para determinar el rango de A es usar la descomposici6n QR con pivoteo. Aunque esta estrategia es usualmente efectiva para producir una 1 1 Rz2 112 muy pequeiia, tambiCn puede fallar, como se him ver anteriormente. Pero ~Cuando una descomposici6n QR nos revela el rango de una matriz?

Por ejemplo, si rnn 0, entonces R es casi singular, y en consecuencia tam- biCn A. Asi, si T,, es suficientemente pequeiio, podemos concluir que A esta cercana a tener un rango deficiente. Si r,, # 0, i = 1 , . . . , n - 1 y rnn = 0 entonces rango (A) = n - 1.

Mas en general, si la matriz R tiene la forrna

donde R11 tiene dimensiones (n - T) x (n - T), R12 es de (n - T) x T, RZ2 es de T x T y si llR22112 es pequeiio, entonces A esta cercana a tener un rango deficiente r , porque

an-r+l(R) 5 llR22ll2

Dado que, si k = n - r , entonces I I

si consideramos

donde R l l es de k x k y no singular, entonces tenemos que

Esto significa, por ejemplo, que si podemos calcular factorizaciones QR de tal forrna que la matriz R se puede particionar en la forma anterior con un bloque RZ2 tal que 1 1 Rz211 sea pequeiia, quiere decir que de manera automatica tenemos cotas superiores para 10s T .valores singulares m h pequeiios de A.

Sobre la factorizaci6n RRQR 25

3.3 RRQR 3.3.1 RRQR. Caso de rango deficiente uno

iCdmo encontrar la factorizacibn QR que nos garantice llR22112 pequeia si A est6 cercana a tener un rango deficiente? En ohas palabras, ?ExistirA una per- mutaci6n Jl tal que AII = QR y tal que JJRzzllz sea pequeiia si A esta cercana a tener rango deficiente?

Chan [4] desarrollb una tCcnica para encontrm una matriz de permutacibn II con estas caracteristicas. Se trata de encontrar una pemutacion Il de forma tal que A n = QR

y con ((R22(( pqueiia. Consideremos cualquier ~escomposici6n QR de A y su- pongamos que R22 es de 1 x 1, entonces se tiene

donde R1l es d'e (n - 1) x (n - I ) , y R12 es de (n - 1) x 1, entonces

Nuestra tarea es garantizar que lrnnl sea pqueiio cuando lo sea an(R). Sea on como el valor singular m h pqueiio de la matriz, entonces tendremos

donde v es el vector singular derecho norrnalizado correspondiente a an, Y el

vector singular izquierdo norrnalizado de A. Considerando la factorizacibn QR de la matriz A, nos gustaria que la matriz

R tuviera la siguiente forma

donde Irnnl fuera pequeiio. Supongamos que tenemos la fa~torizacion QR de la matriz A, entonces

Page 14: 8. - lya.fciencias.unam.mx

Como Q es una matriz ortonormal, obtenemos

Supongamos que llvll2 = 1, entonces

de donde

Como A es casi singular, existe v , con llvll2 = 1 tal que ((Av(l2 es pequeiia, por ejemplo el vector singular derecho de on, Avll2 = on, y tenemos

Queremos garantizar que an/lvnl sea pequeiio. Sabemos que Iv,I < 1, aunque puede ser muy pequeiio. Pero si lv,l fuese el mkimo de las componentes del vector v, es decir, si Jv,J = IIvllm, entonces Iv,l _> A, es decir

entonces

lrnnl 5 fion Sea P la permutacidn en v que garantiza que Iv, I = IIvllw La descomposici6n

QR de APt

IrnnIIunI 5 IIAuIIz

con Jv,J > & y por lo tanto lrnnl 5 fin. Asi que la permutaci6n que estamos buscando es Il= Pt.

En resumen, si v es el vector singular derecho que corresponde a1 valor singular mas pequeiio, a,, de A, entonces

Sobre la factorizacibn RRQR 2 7

IlAvll~ = on

y entonces si elegimos ll permutacidn tal que:

I(ntv)nl = llvllw

entonces la matriz All tiene una factorizacidn QR tal que

De lo anterior tenemm el algoritmo siguiente

1. Calcular v el vector singular derecho normalizado correspondiente a1 valor singular mas pequeiio de A.

2. Encontrar la matriz de permutaci6n ll tal que I(IItv),,l = llvllW

3. Calcular la factorizaci6n QR de A n

. . D ~ d o que solamente se necesita la permutacidn I I , no es necesario computar toda la SVD de A para encontrar v. En la prbctica, se pueden usar unos cuantos pasos de la iteraci6n inversa, como lo vimos en la seccidn anterior, para calcular una aproximaciQ a v. Obteniendo Bste, la permutacih II puede ser determi- nada. En el caso m k interesante, donde on << on-1, la iteraci6n inversa debe converger rapidamente.

Consideremos cualquier la factorizacibn QR de la rnatriz A, y su descompc- sicidn en valores singulars, esto es

de aqui obtenemos que R~ = Q:UCV'

Se observa que A y R1 tienen 10s mismos vectores singulares derechos, entonce, trabajamos con R1 y obtenemcs el vector singular correspondiente a1 valor sin- gular m L pequeiio. Enseguida calculamos la matriz de permutacidn P tal que ((Ptv),l = Ilv(Jm, y tenemos que

Calculamos la factorizaci6n QR de R I P

R I P = Q2R2

Page 15: 8. - lya.fciencias.unam.mx

Y la combinamos con la ecuacirjn (7), para obtener

~ I P = QiQzRz

De esta forma tenemos la la factorizacion QR buscada

donde Q = QIQz, R = R2 y n = 111 P. El algoritmo es el siguiente.

3.3.2 Algoritmo RRQR \

1. Calcule cualquier factorizacion QR de A,,,

2. Calcule v el vector singular derecho correspondiente por medio de la itera- cion inversa.

3. Determine una permutation P tal que

4. Calcule la factorizacion QR de RIP ,

y tendremos que

Irnn 1 60, Nota. Una variante de este algoritmo es calcular el vector singular derecho usando el estimador de condicion de LINPACK generalizado 18). Esta variante ha sido implementada por Chan [4] en MATLAB.

Conviene ver un ejemplo numCrico antes de presentar el caso donde A tiene rango deficiente mayor que uno.

Sobre la factorizaci6n RRQR 29

I Ejemplo. Consideremos la matriz triangular defmida anteriormente, i I

donde s y c satisfacen s2 + c2 = 1. Consideremos c = 0.2, y n = 100. Aplicaremos el algoritmo RRQR a esta matriz. Aunque tdricamente QR con pivoteo no debe intercambiar Ias columnas de la matriz, ya que todas tienen norma 1, se observa que debido a los errores de re- dondeo si realiza el pivoteo, para forzarlo a no hacerlo perturbaremos ligeramente la matriz de manera que los valores s inda res tarnbiBn se perturbartin un poco. Consideremos

A, = An + diag(nc, (n - 1)c, . . . , c)

Si aplicamos SVD completa a esta matriz, obtenemos que 10s ~iltimos 5 valores singulares son los siguientes:

I Calculemos su n6mero de condicibn:

Del numero de condicidn se obsewa que la matriz esta cercana a ser singular, y de acuerdo a 10s ljltimos valores singulars, se tiene que A, esta cercana a tener un rango deficiente uno.

Si aplicamos el algoritmo RRQR a la matriz A,, obtenemos que el bloque inferior derecho de 3 x 3 de R, es el siguiente:

Page 16: 8. - lya.fciencias.unam.mx

De aqui se observa que R es cercana a tener un rango deficiente uno, y en consecuencia tambikn A,,,, por lo tanto la descomposci6n RRQR si revela el rango de la matriz A,,,, el cual no es revelado si d l o utilizamos QR con pivoteo.

3.3.3 RRQR. Caso general

Consideremos ahora el caso donde la matriz A tiene un rango deficiente r > 1. Queremos encontrar una permutaci6n II tal que si

es la factorizaci6n QR de All, con R22 E RrX', entonces llRzzll es pequeiia en alguna norma.

Una forma natural de hacerlo es repetir el algoritmo unidimensional para T = 1,2,. . . , a Rll la parte triangular principal de R. Supongarnos que ya tenemos aislado un pequeiio bloque R2p de r x T. Para aislar un pequeiio bloque RZ2 de (T + 1) x (T + 1) calculamos, utilizando el algoritrno de una dimensibn, una matriz de permutaci6n P tal que

RilP = ~ 1 ~ 1 1

es la factorizaci6n QR de RllP y donde el elemento (n - r) x (n - r) de lZl l es pequeiio. Entonces tenemos que

y no es dificil verificar que

es la factorizacidn QR de AfI. Antes de describir el algoritmo conviene dar un ejemplo numkrico.

Ejemplo. Consideremos la matriz

Sobre la factorizacibn RRQR 31

esta matriz tiene rango 2. El algoritmo RRQR para esta matriz es el siguiente

Consideraremos una tolerancia=ficJJAJJ, por lo que en nuestro caso tenemos

tolerancia = 1.0435e - 015 Primero consideremos una factorizaci6n QR inicial de la matriz, esto es, All = QR

La rnatriz de permutaci6n incial esth dada por la identidad,

de esta forma el bloque principal R1 de R en el primer paso es la misma R, enseguida calculamos el vector singular derecho normali- zado correspondiente a1 menor valor singular por medio de iteracihn inversa y obtenemos

y como a stolerancia, entonces procedemos a aplicar el algoritmo, primer0 observamos que el elemento de mayor magnitud es v(3), por

Page 17: 8. - lya.fciencias.unam.mx

lo que la permutaci6n P esta dada por

Aplicando la permutaci6n a R1 por la derecha obtenemos

Y obteniendo la factorizaci6n QR de R1, tenemos

Y actualizamos n, Q y R

Sobre la factorizacidn RRQR 33

Ahora obtenemos R1 el bloque principal de R de 3 x 3 que viene dado Par

Y aplicando iteraci6n inversa a R1 obtenemos el valor singular m b pequeiio y su correspondiente vector singular derecho normalizado

Como o < tolerancia, entonces aplicamos e1,algoritmo nuevamente. El elemento de mayor magnitud de v es v ( 2 ) , por lo que la matriz de permutacion P esti dada por

Aplicando la permutaci6n a la matriz R1, tenemos

Obteniendo la factorizaci6n QR de R1, tenemos

Page 18: 8. - lya.fciencias.unam.mx

Y actualizamos las matrices

Ahora obtenemos el nuevo bloque principal de R, que es una matriz de 2 x 2 y esta dada por

Aplicando iteraci6n inversa obtenemos que el valor singular m b pe- queiio de Rl y su correspondiente vector singular son

Como a >tolerancia, el algoritmo termina, y las matrices determina- das son

-1.18e - 001 4.02e - 001 -8.84e - 001 2.02e - 001

Q = ( -5.93e - 001 -2.87e - 002 -1.15e - 001 -7.96e - 001 -7.12e - 001 3.74e - 001 3.72e - 001 4.63e - 001 -3.56e - 001 -8.34e - 001 -2.56e - 001 3.32e - 001

Sobre la factorizaci6n RRQR 35

De esta manera se determina que el rango de'la matriz es 2 y que efectivamente la factorizaci6n de QR de AH son la Q y la R encon- tradas.

3.3.4 Algoritmo R R Q R . Caso general

Calcule cualquier factorizaci6n QR de A

I 1. Rl l t bloque principal de R de i x i. . . . . .

2. Calcular el v&t6r"&ngul& v E R' d e : ~ ; ~ correspondiente a amiri(R.11), '.' - . .

con llvlJ2 = 1 , y tomar 6, = amin(RI1)

3. Calcular una permutaci6n P E RiX' tal que I(P'v)~I = 1IPtvII,

4. ~ s i ~ n a r G - ( ) t Rn a la i-&ma columna de W.

5. Calcular W t P'w, donde , P = (: y ) 1 6. Calcular la factorizacibn QR de R l l P = Q~ Rll.

La matriz W se utiliza para guardar 10s vectores singulares correspondientes a 10s valores singulares m b pequeiios de 10s bloques triangulares principales R11. W nos servira para deducir las cotas para 10s valores singulares mas pequeiios de A, como se ver6 mas adelante.

Page 19: 8. - lya.fciencias.unam.mx

Sobre la factorizaci6n RRQR 37

3.3.5 Acotarniendo d e 10s valores singulares

Muy frecuentemente, es deseable estar en condiciones de inferir el rango numCrico de A de su factorizaci6n QR, estimando 10s valores singulares m L pequeiios de A a partir del factor triangular R. Se pueden derivar facilmente cotas a posteriori de 10s valores singulares de A en tCrminos de las matrices R y W computadas en el algoritmo RRQR(r) [4].

Teorema 3.1 Consideremos W E RnXr y R E Rnxn calculadas por el algoritmo RRQR(r). Tomemos Ri2 y Wi2 denotando 10s bloques triangulares superiows de j x j situados en la parte inferior derecha de R y W respectivamente. Entonces, para 1 < j 5 r ,

on- j+ 1 < bn-j+l < on-j+l I 11g2112 I J;II(wJ)- '~~~

f i l l ( ~ ; ) - ~ l l 2 -

Las cantidades bnPj+l y l l ~ { ~ l l 2 proporcionan cotas a posteriori inferior y

superior, respectivamente, para el valor singular a n - j + l Si J ( ( W ; ) - I ~ ~ ~ no es rnuy grande, entonces este resultado establece que estas cotas deben ser muy ,

, . . . . . precisas y se puede'into&&.inferir el iahgo:numCiico de A. En la prziitica, 61. . ' :

valor de 1(~:,112 puede ser estimado por normas m k fzicilmente computables de -- Ri2 tales como la norma-1, la norma-oo, y la norma de F'robenius. Estas cotas a posteriori sirven tambiCn para implementar el algoritmo RRQR en una forma adaptiva: el algoritmo puede ser terminado si la cota inferior indica que todos 10s valores singulares pequeiios de A han sido revelados.

3.3.6 Costo computacional

El trabajo computacional del algoritmo RRQR consta de 3 pasos: la computacidn de la factorizacidn QR inicial, el calculo del vector singular v de R l l par itera-

i I

ci6n inversa en cada iteracibn, y la refactorizaci6n QR de R l l P tambiCn en I cada iteraci6n. Si ignoramos 10s tCrminos de bajo orden, 10s primeros dos pasos I

toman n2 (m - 4 ) y ~ n ~ r flops respectivamente (suponiendo que Q no necesita I

ser acumulida), dbnde I es el nlimero de iteraciones inversas necesitadas en cada L

iteracibn, usualmente I = 2 es suficiente en la practica, especialmente si se utiliza un estimador eficiente del nlimero de condici6n para seleccionar el vector incial. I

Para la refactorizacibn de Rl P es conveniente usar rotaciones de Givens cuyo I

costo es de aproximadamente 2n2r flops. De aqui, el total de flops utilizados por ! el algoritmo RRQR(r) esta dado por

asumiendo que I = 2 Entonces si r << n, el trabajo extra desarrollado despub de la factorizaci6n

inicial QR es de rnuy bajo orden, especialmente si m >> n. En el case extremo en que r = n, tenemos W(n) = mn2 + y n 3 , el cual es todavia pequeiio comparado

con el costo necesario para computar la SVD que es de 2mn2 + 4n3 flops.

4 Soluciones Deflacionadas de Sistemas de Ecua- ciones Lineales

Uno de 10s problemas cotidianos en el c&lculo cientifico es el de resolver un sistema de ecuaciones lineales de la forma:

Ax = b.

En la actualidad se cuenta con buenas bibliotecas de software para obtener la soluci6n numCrica usando una computadora. En la practica es importante considerar las propiedades de la matriz A del sistema, para elegir el algoritmo mas econ6mico y que proporcione 10s resultados m k confiables. Por ejemplo A puede ser simCtrica, banda, positiva definida, rala, de dimensidn pequeiia o rnuy grande.

Uno de 10s logros m k significativos en e t a area es que es posible determinar cuantas cifras correctas tiene la solucibn obtenida, esto es rnuy importante desde el punto de vista prictico, ya que si la matriz es rnuy cercana a ser singular, entonces puede ser que debido a la precisi6n finita de la computadora, no se pueda obtener una solucidn confiable 0 que el problema original estuvo ma1 planteado o es rnuy sensitivo a errores en los datos.

Sucede que en la practica hay algunas aplicaciones que son intrinsecamente muy sensitivas a errores y que dan' lugar a sistemas de ecuaciones lineales con una matriz casi singular, en estos cases 10s algoritmos usuales no nos pueden proporcionar una soluci6n aproximada confiable.

4.2 Problema.

Dado un sistema de ecuaciones lineales de la forma

Page 20: 8. - lya.fciencias.unam.mx

donde A es casi singular, determinar una soluci6n aproximada. Estos sistemas aparecen en muchas aplicaciones como las siguientes

Ejemplo 1. Dada la ecuaci6n integral

donde K(x, t) y g(x) son funciones conocidas, se desea determinar la soluci6n f (t). En la prktica muchos de estos problemas nose pueden resolver analiticamente, por lo que es necesario obtener una soluci6n numkrica. Un metodo usual es el siguiente: Reemplazar la variable continua x por un conjunto h i t o de puntos ~ 1 ~ x 2 , . . . , xm, tales que

y escribimos

El segundo paso es reemplazar la variable continua t por un conjunto finito de puntos t l , t2, . . . , t, tales que

Cada una de las integrales de (8) se calcula por medio de una formula de cuadratura numkrica, y resulta

donde 10s wl, w2, . . . w,, son 10s pesos asociados a la f6rmula de cua- dratura. En notaci6n matricial

donde

f = ( f f (t2), . . - 7 f (t,))l

De esta forma, para resolver el problema tenemos que resolver un sistema de ecuaciones lineales, donde frecuentemente la matriz A es muy cercana a ser singular.

1 L

Ejemplo 2. En 10s mktodos numkricos que aplican homotopia para resolver sistemas de ecuaciones no lineales aparecen sistemas de la forma:

A(:)=(:;: :::)(;)=(;) . : . .

donde All es una matriz de n x n que algunas veces puede ser singular con n6cleo unidimensional, y 10s vectores a12, ail , y el escalar a22 son tales que la matriz A es no singular. Es fkil verificar que si All es no singular, entonces A es no singular si y $10 si

Ademb si All es singular c?n espacio nulo unidimensional y u, v son 10s vectores nulos izquierdo y derecho respectivamente, entonces A es no singular si y s610 si vial2 # 0, y a i lu # 0.

Una forma de abordar el problema es la siguiente: supongarnos que A esta muy cerca de una matriz singular A,, entonces A es de la forma

A = A , + E

donde 11 Ell << 1. Si consideramos el product0 Ax, Cste viene dado por

Ax = (A, + E)x = b

entonces - A , x = b - E x = b

Page 21: 8. - lya.fciencias.unam.mx

es un sistema consistente, per0 tiene muchas soluciones de la forma

donde Axd = 6, es decir, zd es una soluci6n particular de A,z = 6, y A,v = 0. Una de las soluciones es precisamente z, para 6 = a, y entonces

z = z ~ + ~ v

Como se muestra en la siguiente figura.

Los mCtodos usuales que nos proporcionan x, cuando A es muy cercana a A,, tienen una componente muy grande en la direction v, por lo que llxll es usualmente tambi6n muy grande. En la prdctica, Av x 0, por lo que nos interesa obtener la componente de x que es m& significativa para la solucion que es zd, que es la proyeccion ortogonal de z en el subespacio ortogonal a v.

Asi, la idea es determinar la componente xd de la soluci6n

El problema en la prdctica es obtener zd de manera economics, a partir del proceso de soluci6n del sistema de ecuaciones.

Sobre la factorizaci6n RRQR 41

A1 vector xd se le llama la solucio'n deflacionada del sistema de ecuaciones y a la soluci6n

z = x ~ + ( Y V

se le llama una descomposicio'n deflacionada de la soluci6n del sistema de ecua- ciones.

4.3 Mdtodo de Stewart

4.3.1 El caso singular

Supongamos que A = A, es singular y rango (A) = n - 1, y que el sistema

i es consistente, entonces el sistema tiene muchas soluciones que son de la forma

I donde v es tal que A,v = 0 y llvll = 1. De todas las soluciones vamos a elegir aquitlla x, que tenga norma minima, y es la que obtenemos pidiendo que X, sea ortogonal a v.

Sea Q, = vvt la matriz de proyeccion ortogonal sobre v, y P, = I - Q, la matriz de proyeccion ortogonal sobre el subespacio ortogonal a v, entonces si z es cualquier soluci6n

Xd = P,x = PV(zp + (Yv)

= x, + 0 = x,; si x, l v

Ahora, lo que necesitamos es caracterizar zd, para ello observemos que Asxd = b y Pvxd = xd, esto implica que

adernis si u es tal que utA, = 0 y IluII = 1, entonces

es decir, que para que el sistema sea consistente, es necesario que el vector b sea ortogonal a u, entonces si Qu = uut, es la matriz de proyeccion ortogonal sobre u, y P, = I - Q, la matriz de proyeccion ortogonal sobre el subespacio ortogonal a u, entonces

Pub= b

Page 22: 8. - lya.fciencias.unam.mx

Por lo que sustituyendo en la ecuaci6n (10) obtenemos

Entonces el procedimiento para obtener xd cuando A = A, se puede escribir en la forma siguiente:

1 . Calcular u y v unitarios, tales que utA, = 0 y A,v = 0

2. b,, = Pub= b

3. Calcular una soluci6n i de A,? = bo

4 . X d = P,Z

4.3.2 Unicidad de la soluci6n

Veremos la unicidad de la soluci6n xd en el caso en que la matriz A = A, es singular.

Supondremos que existen dos soluciones delsistema, demostraremos que e t a s soluciones tienen que ser iguales. Consideremos u y v unitarios y tales que Asv = 0 y v tA , = 0, y tambikn consideraremos las matrices Pu y P, como se definieron anteriormente.

Supongamos que zd y x i son soluciones del sistema, esto es

Entonces P,,(zd - x;) = xd - x i , esto implica que

(xd - x;) E N ( A ) ~ ( 1 1 )

Por otro lado tenemos

PuASPvxd = PuASPvx;

de qui se sigue que

esto irnplica

entonces

Sobre la factorizaci6n RRQR 43

I y multiplicando por ut , obtenemos

I de aqui se sigue que a = 0, y entonces A,(xd - xi) = 0, e t o implica que

entonces (xd - x i ) tiene que ser un rndltiplo de v, esto es, (xd - x:) = pv. Pero sabemos que

N(A) n N w = 101

Combinando la ecuaci6n anterior con las ecuaciones ( 1 1 ) y (12), obtenemos que

xd - X ; = 0

y de aqui se deduce que xd = X:

Por lo tanto, tenemos unicidad en las soluciones para el caso en que la matriz A es singular y con rango ( A ) = n - 1.

! 4.3.3 El caso no singular

Supongamos ahora que A = A, + E y que tenemos 10s vectores nulos u y v de A, como en el caso anterior. Es facil verificar que

Para esto observemos que

y tomando en cuenta que

QUAs = v (v tAs ) = U . 0 = 0

Por consiguiente

As = IAsI = (Qu + Pu)As(Qv + Pv) = P,AsPu

Page 23: 8. - lya.fciencias.unam.mx

Como A = A, + E con 11 Ell << 1, entonces

y de aqui obtenemos PuAP, = PuA,P, = A,

Pero como b no es ortogonal a u, en general, entonces necesitamos eiegir el lado derecho de tal forma que quede el sistema aproximadamente consistente, es decir, elegir 6 = Pub, y entonces necesitamos una soluci6n de

tal que P,x = x

Definici6n. Diremos que la solucidn deflacionada de

cuando A = A, + E , 11 Ell << 1, rango (A,) = n - 1, y u y v son l e vectores nulos unitarios izquierdo y derecho de A,, es el linico vector xd que satisface:

La unicidad de xd serd demostrada mas adelante en un caso m b general. Observaci6n. El vector xd siempre estd bien definido, a6n cuando IlEll = 0.

4.3.4 MBtodo i terativo

Lo que ahora vamos a ver es uno de 10s aspectos prdcticos para el calculo de la solucion xd. Supongamos que nos dan u y v , entonces Stewart [19] propone el siguiente mCtodo iterativo para obtener xd. Este es t i basado en el mCtodo de refinamiento iterativo descrito en la secci6n 1. xo = 0- Para k = 0 , 1 , 2 , ... Tk = Pu(b - AX^) ASk = Tk

xk+1 = xk + P v ~ k

Sobre la factoriaaciin RRQR 45

4.3.5 Convergencia del mdtodo

De acuerdo a1 aigoritmo anterior, en cada iteracih obtendremos

Y se puede escribir de la forma 1 donde

y es bien conocido que si llGll < 1, entonces la iteraci6n converge. Computacionalmente, el procedimiento de Stewart es el siguiente:

. . . . . . . . . .

. . . .

2. Para k = 0,1,. . . a) r = P, (b - Az)

b) Resolver As = r

c) z + z + P , s

4.3.6 Resultados

Se implement6 el metodo de Stewart uti l imdo MATLAB y se proM con algunas matrices que se sabe son ma1 condicionadas, k t a s fueron la matriz de Hilbert, la matriz de Vandermonde (generada por el vector de la forma (1,2, . . . , n)) y una matriz triangular superior de la siguiente forma , ..

donde s y c satisfacen s2 + c2 = 1. En el ejemplo mnsideramos c = 0.2. En todos 10s ejemplos se consideraron varios 6rdenes de las matrices y lado

derecho b en el caso de la matriz de Hilbert y la matriz de Vandermonde, corno el n-kimo vector can6nico en, en el caso de la matriz Triangular ma1 condicionada,

Page 24: 8. - lya.fciencias.unam.mx

se consider6 con un vector con todas sus componentes igual a uno. Se calcul6 el valor singular m h pequeiio de la matriz utilizando iteraci6n inversa, y se compar6 con el calculado a1 obtener la SVD de A completa. TambiCn obtuvimos la solucion del sistema utilizando directamente MATLAB. Enseguida se presentan 10s errores relativos cometidos en 10s cilculos.

Resultados obtenidos con la matriz de Hilbert utilizando el metodo de Stewart

Resultados~obtenidos .con la mafrii devandermonde utilizando el- rriktod6:d~i: : Stewart

Resultados obtenidos con la matriz triangular ma1 condicionada utilizando el mCtodo de Stewart

4.4 M6todo de Chan Para Stewart una soluci6n deflacionada es ortogonal a1 vector nulo unitario de- recho de A,. Chan 12) en 1984 presenta un esquema te6rico mas general para

Sobre la factorizacidn RRQR 47

obtener soluciones deflacionadas de sistemas de ecuaciones lineales, en donde ]as proyecciones no son necesariamente ortogonales, lo cual generaliza el concept0 de soluci6n deflacionada. En el caso particular en el que las proyecciones son ortogonales, se obtiene el mCtodo de Stewart.

Para empezar observemos que en el sistema propuesto por Stewart

las matrices P,APv y PuA son singulars, puesto que Pu lo s. Observernos que PuA es m h simple, y ademh

si utA = avt con llvll = 1 y llull = 1, entonces A - PuA = uuvt IIA - PdII 5 a ,

A = P u A + E

IlEll puede ser muy pequeiia si a << 1. Si hacemos A, = PuA, entonces el sistema nos queda de la forma

Se pueden considerar soluciones deflacionadas m L generales usando proyec- tores que no sean ortogonales. Por ejemplo, si us y v, son los vectores nulos unitarios izquierdo y derecho de A, respectivamente, consideremos

Page 25: 8. - lya.fciencias.unam.mx

Si A, = SA, se propone encontrar soluciones deflacionades que satisfagan el sistema

donde S, R, y N son de la forma anterior y son tales que rango (A,) = n - 1. Para que (4.1) tenga soluci6n se requiere que Rb pertenaca a Im(A), equi-

valentemente que U S Rb = 0. Pero

Asi tenemos que el sistema es consistente, per0 ahora necesitamos que la soluci6n sea unica.

Como todas las soluciones son de la forma

Xd = 5 0 f QV,

donde us es el vector nulo derecho normalizado de A,, entonces si un es el vector nulo izquierdo normalizado de N , entonces

si u ~ v , # 0, la ecuaci6n anterior determina univocamente a cr y por consiguiente a xd.

Como N = I -uSpt

entonces p t ~ = pt - (ptu,)pt = 0

Asi que p es un vector nulo izquierdo de N , esto es

Esta elecci6n de N garantiza la unicidad de xd. Concluimos la discusi6n anterior con el siguiente teorema.

Teorema 4.1 El sistema

Sobre la factorizacidn RRQR 49

donde S = I - wu:; usw = 1 R = I - yu',; u:y = 1 N = I - vapt; p'v, = 1

y us y u, son 10s vectores nulos nonnalizados izquierdo y derecho de A,, taene solucidn linica.

4.4.1 Expresibn implicita de las soluciones

' Encontraremos una expresi6n para la solucibn del sistema

I en tCrminos de la solucibn del sistema deflacionado

I de acuerdo al siguiente teorema.

I . . . . . . . .

. . Teorema 4.2 Si xd es la linica solucidn del sistema ' . ' . .

I entonces la solucidn del sistema Ax = b estd dado por

I d

donde Au, = Ow y Au, = ny y us es tal que si SA = A, entonces U S A , = 0.

Esta es una descomposicibn deflacionada de x. La demostraci6n de este teo- rema asi como de la unicidad de la descomposic6n aparece en [2].

0 bservese que A,U, = SAU, = sew = esw

como s = I - w u :

entonces Sw = w-w(u:w)=o

y de aqui uu, = us

Page 26: 8. - lya.fciencias.unam.mx

Para que la soluci6n deflacionada sea ritil, las matrices S y R deben escogerse tales que A, estC cerca de A y Rb est6 cerca de b en alguna norma. En par- ticular, si A es singular, entonces S se escoge tal que A, = A. Para prop&ieos computacionales, la matriz N debe tambi6n ser escogida tal que xd permanez- ca acotada, independientemente de la singularidad de A. Por la forma de S, A, - A = w(utA), y de aqui es natural usar una aproximaci6n a1 vector nulo izquierdo de A para us. A ~ n cuando la u, estk fija, hay varios caminos para escoger w , y y p, y esto d a lugar a una variedad de soluciones y descomposiciones deflacionadas.

4.4.2 DeflaciBn usando valores y vectores singulares

Ahora haremos ver que la definici6n de Stewart es un caso especial de la de Chan cuando se usan 10s vectores singulares izquierdo y derecho de A.

Sean us, y v,, 10s vectores singulares izquierdo y derecho normalizados co- rrespondientes a a, el valor singular m b pequeiio de A. Es decir

Av,, = UUsv

Atus, = UVsv . . . . . . . . . .. . . . .

Si elegimos u s = w = y = u m ; v , = p = v s v

entonces S = I - wu: = Pu = I - usvu:, R = I - y u ' , = P , N = I - vSpt = P, = I - v,,vf,

y ademas u;,Axd = UV;,X~ = u ( v ~ , P ~ ) x ~ = 0

y puesto que Av,, = au,,, del teorema anterior, se tiene

la cual coincide con la propuesta por Stewart en (9).

Sobre la factorizaci6n RRQR 5 1

AP, = A - ~v, ,v6, = A - au,,v~,

Ppr lo tanto

A,, = PuA = PuAP, = AP, = A - au, ,v~,

Y se observa que u,, y v,, son 10s vectores nulos izquierdo y derecho de A,, Ya que

uf,A, = - U U , , ~ ~ , ) = uf,A - avf, - - t av,, - uv;, = 0

Y

- - au,, - auav = 0 . . . ' . . . . . .

. . .. . : . . . . Es decir

Teorema 4.3 La solucibn de Ax = b se puede escribir en la f o m a

donde x,, es la solucidn 6nica del sistema

ademcis la matriz A,, = PuA es singular y satisface

y us, y v,, son sus vectores nulos izquierdo y derecho respectivamente.

4.4.3 Algoritmos

Ahora abordaremos el problema prictico del chlculo de las soluciones deflacie nadas. En primer lugar necesitamos calcular aproximaciones a 10s vectores nulos izquierdo y derecho de A,. Esto corresponde a encontrar 10s vectores singulares izquierdo y derecho del valor singular m& pequeiio de A.

Page 27: 8. - lya.fciencias.unam.mx

Para esto podemos aplicar el metodo de la potencia inversa propuesto por Stewart [19], para calcular una aproximaci6n a1 vector singular izquierdo asocia- do a1 valor singular m b pequeiio de A. Este metodo esti descrito tambien en la secci6n 1 .

Dado uo Para k = 1 , 2 , . . . liasta la convergencia

1 . A21k+l = I l k

2 . v*+1 =

3. Atiik+l = V k + 1

4. U*+l = +& Denotemos el vector limite de los { u k ) por us, y calculemos entonces us, y

a por medio de las relaciones:

Ahora consideraremos un algoritmo similar a1 de Stewart para el cAlcu10 de la soluci6n xd, del sistema

.!?Axd = Rb Nxd = Xd

ALGORITMO Dado xo tal que Nxo = xo Para k = 0,1,. . . hasta la convergencia 1 . ~k = R b - S A x k = R b - A S 2 k 2 . Resolver Adk = rk 3. X k + l = X k + Ndk

Para analizar la convergencia de este algoritmo, observemos que

Y puesto que Nxk = xk y N2xk = xk, obtenemos

donde G = N ( I - A-' A,) N . Claramente si IlCll < 1, la sucesibn de (z,) converge. Digam08 que {z&) -+

z , mostraremos que z satisface (4.1) y (4.2).

entonces N A - l ~ b - N A - ~ A , ~ = o

N A - I (Rb - A,z) = 0

donde r ( z ) = Rb - A,z, pero la ecuaci6n anterior nos indica que A-'r(z) tiene que ser un mliltiplo del vector nulo derecho vn de N , por consiguiente

y tenemos que u;r(z) = cru;Avn = 0

si uZAv, # 0 =.z cr = 0 =+ r ( z ) = 0. Entonces la soluci6n realmente satisface (4.1).

Si G = 0, la sucesi6n { x k ) es constante y se tiene convergencia en un solo paso. La soluci6n es

= N A - l ~ b

Pero lo m L notable es que en el caso R = S = P,, y N = P,, si s61o se satisface la relaci6n

Avsv = uudv

entonces G - 0. Ya que

Page 28: 8. - lya.fciencias.unam.mx

4.5 Resultados Se implement6 el mktudo de Chan en MATLAB, y se prob6 con algunas matrices ma1 condicionadas. Se proM con la matriz de Hilbert, la matriz de Vandermonde, y la matriz Tringular definida en 4.3.6. Se consideraron varios Qdenes de las matrices y en el caso de las matrices de Hilbert y de Vandermonde se utiliza el lado derecho b como el n & i o vector can6nico e,. Para la matriz %angular consideramos el lado derecho b como un vector conteniendo solamente unos. El valor singular m&s pequeiio y sus correspondientes vectores singulares, se aproxi- man utilimndo iteraci6n inversa. Se d c u l a la SVD de A completa y la solucibn obtenida por MATLAB para comparar los resultados obtenidos. Enseguida se presentan los errores relativos cometidos en los ctilculos.

Resultados obtenidos con la matriz de Hilbert utilizando el mktodo de Chan

Resultados obtenidos con la matriz de Vandermonde utilizando el mBtodo de Chan

Resultados obtenidos con la matriz triangular mal condicionada utilizando el metodo de Chan

No.iteraciones 5 5 5 4 4

n 8 9

10 11 12

Sobre la factorizeci6n RRQR 55

Error dlculo soln. 2.245e - 14 1.426e - 12 1.294e - 12 2.562e - 12 1.208e - 10

4.6 Soluci6n deflacionada con QR

Regresando a la formulaci6n de Stewart, dado el sistema

A x = b

No.iteraciones 5 3 3 3 3

n 20 30 40 50 60

se requiere encontrar la soluci6n de norma minima del sistema

Error ctilculo soln. 2.341e - 15 6.512e - 15 2.898e - 16 9.438e - 17 2.472e - 16

donde A, s una matriz singular cercana a A, rango (A,) = n - 1, y b es tal que el sistema es consistente.

Se puede pensar entonces que se e s t i resolviendo un problema de minimos cuadrados. Podemos intentar encontrar xd usando QR con pivoteo. Sea A n = QR la descomposici6n ,mencionada, entonces de (6) obtenemos

Sin embargo, recordemos que en la seccidn 1 se demuestra que la factorizacidn QR con pivoteo no es confiable en la determinaci6n del rango numkrico.

5 Problemas de Minimos Cuadrados con Rango Deficient e

En esta seccidn consideraremos algoritmos para resolver el problema de minimos cuadrados lineales

min IJAx - bll, A E RmXn ZER- (15)

donde la matriz A es muy ma1 condicionada o tiene rango deficiente. La soluci6n usual a1 problema de minimos cuadrados, usando la descomposi-

cion QR con pivoteo, A n = QR, formalmente dada por (6) no sirve de mucho dado que es extremadamente sensible a perturbaciones en b y es usualmente do- minada por grandes contribuciones oscilatorias provenientes de 10s errores en el lado derecho, b. Una aproximaci6n estindar para calcular una soluci6n a1 proble- ma de minimos cuadrados que es menos sensible a perturbaciones es transformar (15) en un problema cercano que es t i mejor condicionado. En la prictica, este proceso usualmente corresponde a filtrar o amortiguar las contribuciones a la soluci6n correspondientes a 10s valores singulars m 6 pequeiios de A. Una de

Page 29: 8. - lya.fciencias.unam.mx

tales aproximaciones es la solucibn truncada SVD (TSVD), en el cual uno eli- mina completamente todos los valores singulares debajo del c rango numdrico, rango (A, c). La solucih TSVD, X T S ~ D , esta d e f i d a como

Entonces la solucibn TSVD puede ser siempre calculada de la SVD comple- ta de A, per0 es computacionalmente muy cara porque una gran cantidad de informaci6n dada por la SVD no es usada. De hecho, como veremos despub, basta con conocer el c rango numbrico y la informacih sobre el espacio nulo numdrico para calcular XTSVD. De aqui la solucibn TSVD puede ser calculada eficientemente por la factorizacibn RRQR de A, como veremos a continuaci6n.

5.1 Chlculo de X T ~ V D mediante RRQR de A

Queremos calcular ZTSVD sin usar (16) y utilizando la informaci6n que nos . . .

proporciona..RRQR; Consid+aremos la matriz . . . . . . . . . . . . . . . . .. . -

la cual tiene rango k, por lo tanto dim(N(Ak)) = n - k. Entonces el problema se transforma en encontrar

rnin ((Akx - b\(2 (17)

La soluci6n de este problema viene dado en forma general como

donde u E N(Ak) y xk es soluci6n de (17). A su vez u es combinaci6n lineal de 10s ultimos n - k vectores singulares derechos, esto es

XG esta bien determinada cuando xk y vk+l,. . . , vn estdn bien determinados. De estas soluciones queremm determinar la de norma minima. RRQR nos propor- ciona una aproximacion a1 espacio nulo, la cual puede ser rnejorada mediante un proceso iterative.

Sobre la factorizaci6n RRQR 5 7

5.1.1 Deterrninacion del Espacio Nulo Numerico

Con el algoritmo RRQR obtenemos el rango numkrico k = rango (A, c) y una aproximaci6n a1 espacio nulo de A, representado por la matriz W. Sin embargo la soluci6n TSVD requiere el espacio nulo real, Nk de A. Mostraremos c6mo refinar la matriz W para obtener una base aproximada para Nk. Antes veremos quC tan buena aproximaci6n es W.

En el segundo paso del algoritmo RRQR querernos obtener el valor singular m L pequeo de R11, asi como 10s correspondientes vectores singulares izquierdo y derecho normalizados, esto es,

Como u y v son unitarios, se sigue que

Con la iteraci6n inversa obtenemos una aproximacibn, y se tiene que

sib,, =:on y wn x u n . De aqui, si

w = (wn-k+ll ... lwn)

entonces

RllW = (Rllwn-k+lI ...IRllwn)

Calculando la norma de Frobenius de Csta matriz se tiene

De aqui se tiene la siguiente desigualdad

Si B E R~~~ es una matriz que contiene un subconjunto de k columnas de A, entonces

omin (B) = ok (B) 5 a k (A)

Page 30: 8. - lya.fciencias.unam.mx

Combinando este resultado con 10s anteriores, tenemos que

y de aqui

donde wk = U ~ + ~ / U ~ . Este resultado sugiere que Im(nW) es una buena aproxi- maci6n a1 espacio nulo numCrico Nk, siempre que wk sea pequeiio. Esto es cierto como veremos en el siguiente teorema.

Teorema 5.1 Consideremos la matriz W E R " ~ ( " - ~ ) particionada en la si- guiente f o m a

Entonces el dngulo 0 entre 10s subespacios, ImflW) y el espacio nulo numirico Nk de A, estd acotado en la siguiente f o m a

sin o < (1 + -llw;'ll2)wk

donde wk = uk+l/ok: y 11w~'112 5 f i 2 n - k .

La demostraci6n aparece en [4]. Este teorema significa que si wk es pequeiio y k =: n, entonces Im(nW) es

una buena aproximaci6n a1 espacio nulo numeric0 Nk, dado que 11 W;' 112 no pue- de ser muy grande. De aqui W es una buena matriz inicial para una iteraci6n inversa simultanea con RtR, como se vi6 en la secci6n 1, para determinar una base aproximada para Nk, garantizando una convergencia ripida con pocos pa- sos. Esto da lugar al siguiente algoritmo SPIT (iteraci6n de subespacios), para determinar una matriz Vo cuyas columnas son una base ortonormal para Nk. Este algoritmo aparece en 151.

Sobre la factorizaci6n RRQR 59

Algoritmo SPIT

1. Tomar i + 0.

2. Tomar v(O) + W y ortonormalizar sus columnas.

3. Iteracion de Subespacios. Repetir hasta que sin$ < c:

I l a) i + i + 1, U(1) + ~ - ~ v ( * - l ) , v(') t R-'u('). Cambiar la escala

en caso de ser necesario para evitar overflow.

b) Ortonormalizar las columnas de v(') c) Estimar sin $, donde $ es el Qngulo entrelos subespacios la ~m((l/( '- ')))

y la lm((Va))) .

4. Ortonormalizar las columnas de o(') para obtener Uo.

5. Considerar Vo t nV(')

6. Fin.

Si R tiene un elemento cero o casi cero en la diagonal, simplemente se inserta un m~ltiplo pequeiio de la precisi6n de la miquina. La cantidad c en el paso 3 determina la exactitud del cilculo de vo y debe corresponder a la exactitud requerida en el cilculo de la soluci6n TSVD, xk. En el paso 3c, se requiere una estimacidn para sin 9. Una forma de calcular sin$ es [5)

5.1.2 Determinaci6n de la soluci6n TSVD

Sea An = QR la descomposici6n RRQR de A, entonces

min [)Ax - bl(2 = min l(AnPitx - bl12

= min (IAIIy - bit2

= min ((QRy - b(Iz

= min ((Ry - Qtbl12

donde y = n tx . Supongamos que la matriz R obtenida por RRQR no tiene valores singulares

exactamente cero. En teoria se puede entonces calcular el vector R-'Qtb, y entonces deflacionar esta soluci6n; i.e. ortogonalizar con respecto a1 espacio nulo numCrico Nk. En la prictica, sin embargo, la matriz R puede ser muy

Page 31: 8. - lya.fciencias.unam.mx

ma1 condicionada, y por lo tanto no es buena la soluci6n TSVD calculada. Esto debido a que el vector calculado R-'Qtb el cual tdricamente debe estar dado por (16), va a estar dominado por estas contribuciones, correspondientes a 10s valores singulares m k pequeiios uk+l, . . . ,on , que van a ser removidos nuevamente en el proceso de deflacion. De aqui que 10s errores de redondeo asociados con estas componentes van a contaminar la soluci6n calculada.

El problema es superado deflacionando el lado derecho b con respecto a1 subes- pacio generado por uk+1,. . . , u,, donde ui son las columnas de U en la SVD de A. Para deflacionar con respecto a 10s vectores singulares izquierdos uk+l,. . . , u,, deflacionamos Qtb con respecto a las columnas de la Uo obtenida por el paso 4 en SPIT, esto es, proyectamos Qtb sobre R(A), la proyecci6n viene dada por S = I - UoU;. De esta forma calculamos

Entonces el sistema Ry = /3 es consistente. Resolvemos este sistema y encontra- mos la solucion

y = R-'P

Enseguida encontramos x, x = IIy. Nos interesa encontrar la soluci6n de norma minima, entonces empleamos una idea similar a la de la secci6n 2, esto es; defla- cionamos la solucion proyectandola sobre N(A)', la proyecci6n viene dada por P = I - vov;, de esta forma encontramos XTSVD

El algoritmo TSOL para calcular la soluci6n TSVD, xk, viene dado por Algoritmo TSOL

1. Calcular /3 +- Qtb

2. Calcular E + RP'(I, - UoUh)P, donde Uo estd definida por 4 en SPIT.

3. Calcular la solucidn TSVD xk = (I, - vov~)ll[, donde vo esta definida por el paso 5 de SPIT.

4. Fin.

Si A tiene k valores singulares numkricamente cero, entonces 10s correspon- dientes vectores singulares izquierdos de A estan dados con suficiente exactitud

lo cual significa que la deflacion con respecto a1 subespacio asociado corresponde a la eliminaci6n de 10s 6ltimos k elementos de Qtb.

Sobre la factorizaci6n RRQR 61

5.1.3 Costo cornputacional

La cantidad de operaciones para calcular la soluci6n TSVD via RRQR, SPIT y TSOL, se puede demostrar que esta acotada por

1 1 [m + (n - PI + pz + 1) + pi + ?In2 flops

donde pl 6 el promedio de iteraciones inversas por valor singular en RRQR, y pl es el numero de iteraciones de subespacios usados en SPIT. Entonces si el rango numCrico k = n, el procedimiento RRQR-SPIT-TSOL no cuesta mucho mas esfuerzo cornputacional que una factorizaci6n QR.

5.2 Soluci6n de minimos cuadrados mediante TQR Aunque podemos usar la factorizaci6n RRQR para calcular X T ~ V D , se puede definir una soluci6n a1 problema de minimos cuadrados en tkrminos de la fact* rizacion RRQR por si misma. Consideremos la factorizaci6n RRQR de A. La aproximaci6n estandar es eliminar la submatriz R22 (que estd garantizada que tiene norma del orden de uk+l) y entonces resolver el problema modificado. A- ndlogo a la soluci6n TSVD, es natural definir la soluci6n truncada QR, (TQR), XTQR como la soluci6n a1 problema de minimos cuadrados de norma minima a1 problema modificado. Tenernos

es conveniente usar una transformaci6n ortogonal por la derecha P para eliminar R12 por medio de R11, i.e. (R11,R12)P = ( ~ l l , O ) . Entonces la soluci6n TQR est6 dada por

Como se vi6 en la secci6n 1. Alternativamente uno puede calcular la solucih bkica X B , definida como

la solucion de otro problema modificado de minimos cuadrados donde ambas submatrices R12 y RZ2 son eliminadas. La soluci6n bkica est i dada por

Como se vi6 tambikn en la secci6n antes mencionada.

Page 32: 8. - lya.fciencias.unam.mx

Estos dos metodos, en muchos de los casos, funcionan bien para resolver pro- blemas de minimos cuadrados con rango deficiente con un rango num6rico bien determinado, y se tiene que XTQR es m b barata que XTSVD.

La soluci6n bbica obtendida por la factorizaci6n RRQR tiene aproximada- mente el mismo residual que la soluci6n XTQR y XTSVD, dado que se garantiza que R1 1 es t i bien condicionada. Por otro lado, la soluci6n bhica puede ser dife- rente que la soluci6n XTQR y XTSVD, esto dado que la soluci6n bbica tiene una componente, posiblemente grande, en el espacio nulo numeric0 de A.

5.3 Soluciones deflacionadas con RRQR

La tknica desarrollada en la secci6n anterior nos permite calcular fkilmente la solucion deflacionada de un sistema de ecuaciones usando XTQR o alternativa- mente la soluci6n bbica x s .

Vamos a comparar estas soluciones con las obtenida por Stewart y por Chan. Encontraremos las soluci6n a sistemas de ecuaciones con matrices que se sabe

que son ma1 condicionadas, la matriz de Hilbert, la de Vandermonde, y la matriz triangular definida en el ejemplo 3 de la secci6n 1.

En todos 10s ejemplos se consideraron varios 6rdenes de las matrices y lado derecho b en el caso de la matriz de Hilbert y la matriz de Vandermonde, como el n-kimo vector can6nico en, en el caso de la matriz Triangular ma1 condicionada, se consider6 con un vector con todas sus componentes igual a uno. Se calcul6 la solucion XTQR y la soluci6n bbica x s , se obtuvo la soluci6n obtenida por MATLAB, se presentan 10s errores relativos cometidos en 10s cdlculos.

Resultados obtenidos con la matriz de Hilbert utilizando RRQR

Resultados obtenidos con la matriz de Vandermonde utilizando RRQR

1

Sobre la factorizaci6n RRQR 63

Error Cilculo Solucidn Truncada 6.7310e - 08 9.1235e - 07 4.7042e - 05 5.7210e - 04

n 8 9

10 11

Resultados obtenidos con la matriz Triangular ma1 condicionada utilizando

RRQR

Error Calculo Solucidn Bbica 6.7310e - 08 9.1235e - 07 4.7042e - 05 5.7210e - 04

n 1 Error Cdculo Soluci6n Bbica I Error CBlculo Soluci6n auncada 30 1 0.0 I 0.0

5.4 Resultados

Usando MATLAB se resolvieron algunas ecuaciones integrales como las que apa- recen en el ejemplo 1 del capitulo 2, cuyo resultado se encoentra a1 tener que resolver un sistema de ecuaciones lineales, y en muchas ocasiones se tiene que la matriz del sistema es muy ma1 condicionada. Se trabaj6 problema de Phillips, el de Bellman y el de Fox-Goodwin, utilizando las reglas de cuadratura de Simpson y la del Trapecio.

El problema de Phillips viene dado por las ecuaciones

donde

K ( x , t ) = { ~ + c o s ~ , siIt-x1<3, 1x156 silt - X I 5 3, 1x1 < 6

La soluci6n exacta a este problema viene dada por

I + cos i n t It1 5 3 f (t) = It1 > 3

Las ecuaciones para el problema de Bellman vienen dadas por

Page 33: 8. - lya.fciencias.unam.mx
Page 34: 8. - lya.fciencias.unam.mx
Page 35: 8. - lya.fciencias.unam.mx

6 Mktodo de Newton para sisternas de ecuicio- nes no lineales

Problema. Dada una funci6n f : Rn -t Rn, encontrar x* E Rn tal que f ( z 9 ) = 0.

Consideremos primer0 una funcibn real de variable real, f : [a, b] -, R. Dada z o , una aproximaci6n inicial a z * , el metodo de @wton para encontrar

x* es un procedimiento iterativo, definido por

donde f l ( x ) representa la derivada de la funei6n f ( x ) . El metodo presupone f l ( x k ) # 0, para cada z k encontrada por la itersci6n. Por esto el d t o d o presenta problemas cuando f l ( z k ) = 0.

El metodo de Newton puede deducirse de la siguiente forma. J

Por el Teorema de Taylor, tenemos que

f " ( z ) h2 f ( x + h ) = f ( x ) + f l ( z ) h + ~ + . . .

de donde f ( x + h ) " f (4 + f ' (x)h

necesitamos h tal que f ( x + h ) = 0, por las ecuaciones anteriores se tiene

Por lo que el nuevo punto ( x + h ) , estd dado por

6.1 Mktodo de Newton en Rn Consideremos una funcion f : Rn -, R". En analogia con el caso real, por el Teorema de Taylor tenemos que

f ( z + h ) = f ( x ) + J ( x ) h

donde J ( x ) representa el Jacobiano de la fuacion f .

Sobre la factorizacidn RRQR 69

Queremos encontrar h tal que f ( z + h) = 0, entonces

J ( x ) h = - f (z)

h = J-' ( x ) f ( z )

Por lo tanto la iteraci6n para el metodo de Newton esti dada por

zn+1 = z n + hn

donde h, satisface J ( x ) h , = - f (z , )

Ejemplo 1. Consideremos

. . . . . . ..

. . . . . .

que tiene raices en (3,O)' y (0,3)', fiornemos xo = (1,5)': Las primer* dos iteraciones para el metodo de Newton son

Se observa que el mCtodo de Newton trabaja bien para a t e ejemplo, x2 b t i muy cerca de la raiz (0,3)'. Esta es la principal ventaja del mCtodo de Newton, si xo esta suficientemente cerca de la solucibn x* y J ( x * ) es no-singular, entonces las xk's generadas por el metodo de Newton-convergen cuadraticamente a z*.

Sin embargo, el metodo no siempre opera bien, como lo veremos en el siguiente ejemplo.

Page 36: 8. - lya.fciencias.unam.mx

Ejemplo 2. Consideremos

cuya raiz se encuentra en x* = (0, O)t. Consideremos la aproximaci6n lnicial xo = (-10, -lo)', entonces

x l = (-11 + el0,-11 + elo)' ra (2.2 x 104,2.2 x h4)'

que no es un buen paso. Aqui el metodo de Newton no opera bien.

6.1.1 Ventajas y desventajas del mBtodo de Newton para resolver sistemas de ecuaciones no lineales

Venta jas

1. Converge cuadrfiticamente para pun- iniciales adecuados si J (x*) es no singular. . . .

. . . . . . . . . . . . . . .

2. Soluci6n exacta en una iteraci6n p&a una funcibn de la h i m a f(x) = Ax + c.

Desventajas

1. No es globalmente convergente en muchos problemas.

2. Requiere de J(xk) en cada itetaci6n.

3. Cada iteraci6n requiere la solucih de un sistema de ecuaciones lineales que puede ser singular o mal condicionado.

6.2 Modificacidn del metodo de Newton

Un primer problema que se presents en el mCtodo de Newton es que no siempre converge. Una forma de evitar este problema consiste en comprobar en cada paso si se es t i avanzando en la direcci6n corrects, para esto se puede proceder de la siguiente forma: primero tomar el paso de Newton, h, enseguida comparar 11 f (x)ll y 11 f (x + h) 11. Si 11 f (x + h)ll < 11 f (x) 11 en realidad el nuevo punto esta m b cerca de la raiz que el punto anterior, en caso de no ser asi, reducir el paso de Newton, por ejemplo como h 6 4, y se compare nuevarnente 11 f (x)ll y 11 f (x + h)l). Se procede de esta forma hasta que la h encontrada satisfaga que 11 f (x + h)ll < 11 f (x)ll. El algoritmo es el siguiente.

Sobre la factorizacibn RRQR 71

1. Tomar el paso de Newton.

2. Calcular f (x + h)

a) Se cornparan Ilf (x)ll Y Ilf (z + h)ll b) Si I( f (x)ll > (1 f (x + h)((, aceptamos h, y (x + h) es el nuevo punto. c) Si 11 f (.)[I 5 11 f (x + h)II entonces h + $, y se pasa a1 punto a).

Existen modificaciones mas eficientes per0 m& sofisticadas, de las cuales no nos ocuparemos aqui.

Un segundo problema es que J puede ser singular o ma1 condicionado, y entonces el sistema lineal

J (~k)hk = -f ( ~ k ) no tiene una soluci6n confiable. Vamos a ver que en estos casos RRQR es de gran ayuda para encontrar una buena aproximaci6n a la solucidn.

Modificaci6n 2. Para resolver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

J h = -f (18)

utilizaremos RRQR. Recordemos que encontramos la solucion a un sistema de ecuaciones lineales con una matriz ma1 condicionada, utilizando el algoritmo RRQR. Utilizando la soluci6n truncada, definida en la seccidn 5, del sistema 18 obtenemos una soluci6n bastante buena a1 sisterna, y asi, en el desarrollo del mCtodo de Newton, obtendremos en rnuchos casos una buena aproximacidn a las raices de funciones.

Se implement6 el mCtodo de Newton, con el algorimo RRQR de forma tal que se utiliza la solucidn truncada con RRQR para resolver el sistema J h = - f en cada paso. Se utiliza tambien la modificaci6n 1 para la bdsqueda lineal. Se realizd el programa en MATLAB y se prob6 con varios ejemplos cuyos resultados se presentan grificamente, y que se comparan con 10s que resultan de aplicar el metodo de Newton sin RRQR. Se trabaj6 con funciones f : R2 + R2, se grafica la soluci6n y las curvas de nivel de la superficie obtenida a1 considerar la grifica de la norma a1 cuadrado de la funcibn, para observar como se acerca a la solucidn. En el primer ejemplo las dos soluciones obtenidas no varian, en tanto que en el segundo ejemplo la solucion obtenida utilizando el algoritmo RRQR es mucho mejor que la obtenida con s610 resolver el sistema, como se puede apreciar en las graficas. Tarnbien se presentan las graficas de 10s residuales obtenidos con cada punto encontrado, la norma del vector de bdsqueda y la condici6n de la rnatriz jacobiana del sistema, obtenidos a1 utilizar el mCtodo de Newton con RRQR y sin RRQR.

Page 37: 8. - lya.fciencias.unam.mx
Page 38: 8. - lya.fciencias.unam.mx
Page 39: 8. - lya.fciencias.unam.mx

Figura 13:

Figura 14:

Sobre la factorizaci6n RRQR 77

I(x, Y) = [sen (sen (x + Y)), x2 + y21

Punto inicial (2,7) N6mero mhximo de iteraciones 30 Tolerancia le-06

Resultados Newton con RRQR

Soluci6n obtenida (-9.529e-06, 9.529e-06) Ultimo Residual 1.816e-10 Numero de iteraciones necesitadrts 13

Resultados con Newton sin RRQR

Soluci6n obtenida (4.622,4.622) Ultimo Residual 42.72 Nhmero de iteraciones necesitadas 6

Page 40: 8. - lya.fciencias.unam.mx
Page 41: 8. - lya.fciencias.unam.mx
Page 42: 8. - lya.fciencias.unam.mx

Referencias

[I] S. Chandrasekaran and I. Ipsen, "On rank-revealing factorisations", SIAM, J. Matriz Anal. Appl., 15 pp.592-622(1994).

(2) T.F. Chan, "Deflated Decomposition of Solutions of Nearly Singular Sys- tems", SIAM, J. Numer. Anal., 21(4) pp.738-754(1984).

[3] T.F. Chan, "Deflation Techniques and Block-Elimination Algorithms For Solving Bordered Singular Systems", SIAM J. Sci. Stat. Comput., 5(1) pp.121-134(1984).

[4] T.F. Chan, "Rank Revealing QR Factorizations", Linear Algebra Appl., 88/89, pp.67-82(1987). /'

[5] T.F. Chan and P.C. Hansen, "Computing Truncated Singular Value Decom- position Least-Squares Solutions by Rank Revealing QR Factorizations", SIAM J. Sci. Stat. Comput., 11(3) pp.519-530(1990).

[6] T.F. Chaii and P.C. Hansen, "Some applications of the Rank Revealing QR Factorizations", SIAM J. Sci. Stat. Comput., 13(3) pp.727-741(1992).

[7] T.F. Chan and D.C. Resasco, "Generalized Deflated Block-Elimination", SIA M J. Numer. Anal., 23 pp.913-924(1986).

[8] A.K. Cline, A.R. Conn and C.F. Van Loan, "Generalizing the Linpack Con- dition Estimator", Numerical Analysis, ed. J.P. Hennart, Lecture Notes in Mathematics, no. 909, Springer-Verlag, N.Y.

191 L. Foster, "Rank and Null Space Calculations using matrix decomposition without column interchanges", Linear Algebra Appl., 74 pp.47-71(1986).

(101 M. Gu and S. Eisenstat, "Efficient Algorithms for Computing a Strong Rank-Revealing QR Factorization", SIAM J. Sci. Comput., 17 pp.848- 869(1996).

[Il l P. Hong and C.T. Pan, "The rank revealing QR and SVD", Math. Comp., 58 pp.575-232(1 992).

[12] I.Garcia, La descomposicidn RRQR y algunas aplicaciones. Tesis de Licen- ciatura, Esc. de Matembticas, Universidad Aut6noma de Coahuila, 1993.

[13] G.H. Golub and C.F. Van Loan, Matriz Computatzons, Second Edition, The Johns Hopkins University Press, 1989.

Sobre la factorizaci6n RRQR 83

1141 W.W. Hager Applied Numerical Linear Algebra, Prentice Hall, 1988.

[15] D. Kahaner, C. Moler and S. Nash, Numerical Methods and Software, Pren- tice Hall, 1989.

[16] B. Noble y J.W. Daniel, Algebra Lineal Aplicada, Tercera Edicibn, Prentice Hall, 1988.

[17] D.L. Phillips, "A Technique for the Numerical Solution of certain Integral Equations of the first kind", J. ACM, 9 pp. 84-97(1962).

[la] G. Strang, Linear Algebra and its Applications, Third Edition, Harcourt Brace Jovanovich, 1988.

[19] G.W. Stewart, "On the Implicit Deflation of Nearly Singular Systems of Linear Equations", SIAM J. Sci. Stat. Comput., 2(2) pp.136-140(1981).

[20] S. Twomey, "On the Numerical Solution of Redholm Integral Equations of the First Kind by the Inversion of the Linear System Produced by Quadra- ture", J. ACM , 10 pp.97-lOl(1962). . . . .

[21] J.M. Varah, "On the Numerical Solution of Ill-Conditioned Linear Systems with Applications to Ill-Posed Problems", SIAM J. Numer. Anal., lO(2) pp.257-267(1973).

[22] V.Vemuri and Fang-Pai Chen, "An Initial Value Method for Solving Red- holm Integral Equation of the First Kind", Juornal of The fianklin Insti- tute, 297(3) pp.187-200(1974).