Anda di halaman 1dari 286

lisis Matricial Ana n Aplicado y Ampliacio todos Nume ricos de Me

Ion Zaballa Departamento de Matem atica Aplicada y Estad stica e Investigaci on Operativa Euskal Herriko Unibertsitatea

Cap tulo 1

Vectores y Matrices

1.1.

Matrices y Aplicaciones Lineales

El objetivo de este cap tulo es jar algunas notaciones y convenciones, y tambi en dar un repaso r apido a algunos conceptos b asicos de algebra lineal pero desde un punto de vista que, quiz as, no es el habitual. Comenzamos recordando que una matriz no es m as que una familia de elementos expuestos en un determinado orden de forma que su apariencia externa es la de un rect angulo de elementos ordenados:
   

A

a11 a21 . . .

a12 a22 . . .

am1 am2

. . . a1n . . . a2n . ... . . . . . amn

    

Esta parece ser la forma en que Sylvester (1885) introdujo originalmente las matrices. De forma abreviada escribiremos A  raij s 1im para indicar la matriz que tiene
1 j n

Vectores y Matrices

en la posici on o entrada pi, j q el elemento aij . Tambi en diremos que aij es el elemento pi, j q de A. Si A  raij s 1im entonces diremos que A tiene m las y n columnas 1j n y que A es de orden o tama no m n o simplemente que es una matriz m n. Las matrices con igual n umero de las y columnas se llaman cuadradas. La i- esima la y j - esima columna de A son las matrices
    

 rai1 ai2

. . . ain s

aj

a1j a2j . . . amj

   , 

respectivamente. Los elementos de una matriz pueden ser de muy diferente naturaleza: n umeros, polinomios, funciones continuas, etc. Por lo general son elementos de alg un conjunto con estructura de anillo (normalmente conmutativo y con elemento 1) de forma tal que si R es uno de tales anillos entonces podemos denir formalmente una matriz A de orden m n como una aplicaci on: :I

J R

aij  bij @i, j . Denotaremos con Rmn al conjunto de las matrices de tama no m n con elementos en R. Podemos entonces denir la suma y producto de matrices: Si A  raij s P Rmn y B  rbij s P Rmn son matrices del mismo tama no entonces AB y si A  raij s P Rmn y B

donde I  t1, 2, . . . , mu, J  t1, 2, . . . , nu y pi, j q  aij . De esta forma A es la aplicaci on y dos matrices son iguales si lo son las aplicaciones que las denen. Es decir, A  raij s 1im y B  rbij s 1ip son iguales si y s olo si n  q , m  p y
1 j n

1 j q

 raij bij s P Rmn;



n k 1

 rbij s P Rnp, entonces


AB

aik bkj

P Rmp.

En particular, si n  m  p entonces cualesquiera dos matrices de Rnn se pueden sumar y multiplicar y pRnn , , q es un anillo no conmutativo con elemento

1.1 Matrices y Aplicaciones Lineales

identidad. Este elemento es la matriz




In

   

0 ... 1 ... . . . . .. 0 0 ...

1 0 . . .

0 0 . . . 1

    

 rij s,

llamada matriz identidad. Las unidades de un anillo son aquellos elementos que admiten un inverso. En nuestro caso, y dado que Rnn es una anillo no conmutativo, diremos que una matriz A P Rnn es una unidad, que admite inversa o, m as com unmente, que es invertible si existe una u nica B P Rnn tal que AB  BA  In . Si A es invertible, a la u nica matriz B tal que AB  BA  In se le llama inversa de A y se representa por A1 . Se puede demostrar que si R  F es un cuerpo y AB  In entonces A1  B . Esto es u til porque nos dice que basta comprobar que A es invertible por la derecha (o izquierda) para demostrar que lo es por los dos lados. Debe observarse que si A1 , A2 P Rnn son invertibles entonces el producto A1 A2 1 A1 . As pues, el conjunto de las matrices invertibles n n lo es y pA1 A2 q1  A2 1 es un grupo, no abeliano, llamado grupo general lineal de orden n sobre R y que denotaremos por Gln pRq. Las matrices de Rmn se pueden multiplicar por elementos de R (escalares): Si x P R y A  raij s P Rmn entonces xA  rxaij s P Rmn . De esta forma el conjunto Rmn tiene estructura de m odulo libre sobre R. Una base de este m odulo es el conjunto tEij : 1 i m, 1 j nu siendo Eij la matriz cuyos elementos son todos cero excepto el de la posici on pi, j q que es 1. Dado que R es conmutativo con elemento identidad, todas las bases de Rmn tienen el mismo n umero de elementos (a este n umero se le llama dimensi on o rango del m odulo), en este caso mn. En particular, si R  F es un cuerpo, entonces Fmn es un espacio vectorial y Fnn un algebra, no conmutativa, de dimensi on n2 .

1.1.1.

Algunos tipos de matrices

1. Transpuesta y transpuesta conjugada

Vectores y Matrices

Dada una matriz A P Rmn a la matriz que se obtiene al intercambiar las las por las columnas se le llama matriz transpuesta de A y se denota por AT . As , mn T nm si A  raij s P R entonces A  raji s P R . Por su parte, si R  C, el cuerpo de los n u meros complejos y la unidad imaginaria la representamos con ? i ( 1), entonces cada elemento akj  xkj iykj de una matriz A admite  ra un conjugado a kj  xkj iykj . La matriz A ij s se llama matriz conjugada mn de A. La transpuesta conjugada de A P C la denotaremos por A P Cnm . Algunas propiedades elementales de la transposici on son las siguientes:

pAT qT  A,

Si es una escalar entonces pAqT

 AT y pAq  A pA B qT  AT B T , pA B q  A B pAB qT  BA, pAB q  B A pAT q1  pA1qT , pAq1  pA1q. 2. Matrices Sim etricas y Herm tices Las matrices que tienen la propiedad de ser iguales a sus transpuestas, A  AT ; i. e. matrices A  raij s tales que aij  aji para todos i y j , reciben el nombre de matrices sim etricas. El nombre es debido, posiblemente, a que sus elementos son simetr cos respecto de la diagonal principal. Es claro que estas matrices deben ser cuadradas. Por su parte, si R  C y A  A entonces A se dice que es herm tica. Y si A  A entonces A es skew-herm tica. Algunos ejemplos de estos tipos de matrices son los siguientes:


pAq  A

Las matrices skew-sim etricas son las que cumple que AT

 A.

i 2i 2i 4

sim etrica
 

1 2i 2i 4 i 2i 2i 4i 0 i


herm tica

0 2i 2i 0 0 i i 0


skew-sim etrica


skew-herm tica

sim etrica y skew-herm tica

i
0

herm tica y skew-sim etrica

Cualquiera que sea A P Rnm , las matrices AAT , AT A y A AT son sim etricas; mn mientras que si A P C entonces AA , A A y A A son herm ticas.

1.1 Matrices y Aplicaciones Lineales

3. Matrices Diagonales Una matriz n n se dice que es diagonal si todos sus elementos son cero excepto los de las posiciones pi, iq, 1 i n. Si D P Rnn y di es elemento que ocupa la posici on pi, iq, escribiremos: D

 Diagpd1, . . . , dnq.

En general si A P Rnn los elementos aii , 1 i n, se dice que son o forman la diagonal principal de A. Las matrices diagonales se pueden considerar como un caso especial de matrices diagonales por bloques. Estas son las que tienen la forma:   A1 0 . . . 0  0 A ... 0  2    .  . . .. . .  . . . . .  0 0 . . . Ap siendo Ai una matriz cuadrada de tama no ni ni , 1 i p. 4. Matrices Triangulares Una matriz A  raij s P Rnn se dice que es triangular superior si aij  0 para i j . Si aij  0 para i j entonces A es triangular inferior. De la misma forma que con matrices diagonales, las triangulares son un caso particular de las matrices triangulares por bloques. Una matriz triangular superior por bloques tiene la siguiente forma:
   

A

A11 A12 0 A22 . . . . . . 0 0

. . . A1p . . . A2p . ... . . . . . App

   . 

con Aij

P Rn n .
i j

Las inversas de matrices triangulares superiores (inferiores) son triangulares superiores (inferiores, respectivamente). 5. Matrices de Permutaci on Una matriz P P Rnn se dice que es de permutaci on si en cada la y columna hay un elemento igual a 1 y todos los dem as son cero. La multiplicaci on por

Vectores y Matrices

este tipo de matrices efect ua una permutaci on de las las o columnas del objeto multiplicado. As por ejemplo, 0 0 1  P  1 0 0  y PT 0 1 0 son matrices de permutaci on y 1 3      1 2 3 PT P 2  1  y 3 2
     

0 1 0   0 0 1 1 0 0

3 1 2 .

Es decir, P pone la la 1 en la 2, la 2 en la 3 y la 3 en la 1. Y P T hace lo mismo pero en las columnas. En general, si Sn es el grupo sim etrico de orden n; i. e. el grupo de permutaciones de n elementos, y  pi1 , i2 , . . . , in q P Sn ; i. e. pk q  ik , denotamos con P  ripj q s  riik s P Rnn . Es decir, P es la matriz que tiene exactamente un 1 en la posici on p piq, iq, 1 i n y todos los dem as elementos son cero. As , en el ejemplo de arriba, P es la matriz de la permutaci on  p2, 3, 1q. Notemos que P T

 P  P 1 y si A  raij s entonces P A  rapiqj s y AP T  raipj q s.


1

Es decir, P A se obtiene de A poniendo la la i en la piq, y AP T se obtiene de A poniendo la columna j en la pj q. Hay otros tipos de matrices que iremos deniendo a medida que los vayamos necesitando.

1.1.2.

Aplicaciones lineales

Si R  F es un cuerpo (sobreentendemos que es conmutativo) hay una relaci on muy estrecha entre las matrices con elementos en F y las aplicaciones lineales denidas entre espacios vectoriales sobre F. En efecto, sean V1 y V2 espacios vectoriales de dimensiones n y m, respectivamente, sobre F, y jemos bases B1 y B2 de V1 y V2 . As a cada aplicaci on lineal f : V1 V2 le corresponde una matriz A  raij s P Fmn

1.1 Matrices y Aplicaciones Lineales

de la siguiente forma: los elementos de la j - esima columna de A son las componentes de la imagen del j - esimo vector de B1 respecto de la base B2 . Es decir, si B1  tv1 , . . . , vn u, B2  tu1 , . . . , um u, y f pvj q 
m

y V2 , respectivamente, la relaci on (1.1) dene una u nica aplicaci on lineal entre estos espacios vectoriales. Dicho formalmente, si HompV1 , V2 q es el espacio vectorial de las aplicaciones lineales de V1 en V2 , y jadas bases en estos dos espacios vectoriales, los espacios vectoriales Fmn y HompV1 , V2 q son isomorfos y el isomorsmo est a denido a partir de la relaci on (1.1). Conviene tener siempre presente este isomorsmo porque nos permite traducir propiedades de las matrices en propiedades de las aplicaciones lineales entre espacios vectoriales y al rev es. En particular, toda matriz A P Fmn puede verse como una aplicaci on lineal entre los espacios vectoriales Fm y Fn . Para ello identicamos Fn con Fn1 ; es decir, escribimos y hablamos indistintamente del vector x  px1 , x2 , . . . , xn q P Fn y de la matriz columna (a la que llamaremos con mucha frecuencia vector columna):
    

 entonces la matriz A  raij s P F se llama la matriz de f respecto de las bases B1 y B2 . Rec procamente, dada la matriz A  raij s P Fmn y jadas las bases B1 y B2 de V1
i 1 m n

aij ui ,

 1, . . . , n

(1.1)

x

x1 x2 . . . xn

    

x1 x2 . . . xx

T

P Fn1.

De esta forma, dada A P Fmn , queda denida la aplicaci on lineal (que seguimos denotando con la letra A): A : Fn Fm x ; Ax donde debemos entender que Ax es el vector columna que resulta de multiplicar A y el vector columna x.

1.1.3.

Dos interpretaciones del producto de matrices

Todo lo dicho hasta aqu concuerda con la interpretaci on habitual del A lgebra lineal. Desde este punto de vista la ecuaci on Ax  b, que es un sistema no homog eneo

10

Vectores y Matrices

de ecuaciones lineales, se debe interpretar de la siguiente forma: b es la imagen por A del vector x. Por supuesto, esto es correcto, pero hay otra forma de mirar esta ecuaci on que es mucho m as u til para este curso y que pasamos a analizar ahora. En primer lugar, b  Ax signica que el vector b es el resultado de multiplicar la matriz A y el vector x: bi

n j 1

aij xj ,

i  1, . . . , m.

Poniendo todas las componentes de b juntas:




b1 a11 a12 a1n b  a  a  a   2   21   22   2n   x x  .       .  xn . . . 1 2  .  .  . .   . .  .  .  bm am1




am2


amn

y escribiendo A en funci on de sus columnas: A  a1 a2 tenemos que

an ,

b  x 1 a1 x 2 a2 x n an .

Es decir b es una combinaci on lineal de las columnas de A cuyos coecientes son las componentes del vector x. As pues, no es A quien act ua sobre x para producir b, sino que es x quien act ua sobre A para producir b. Este es el punto de vista habitual que adoptaremos en este curso. De la misma forma, si A P Rmn y B P Rnp tenemos una doble interpretaci on mp para la matriz C  AB P R . La tradicional ser a que C es la matriz de la composici on de las aplicaciones Rp
B A Rn Rm

en las bases can onicas. La que m as nos interesa en este curso es la siguiente: Si cij es el elemento en la posici on pi, j q de C entonces cij

n k 1

aik bkj ,

1 i m,

1j

p.

1.1 Matrices y Aplicaciones Lineales

11

Por consiguiente cij


  

 ai1b1j ai2b2j ainbnj ,


a12 a22 . . .

(1.2)

y si cj y bj son las j - esimas columnas de C y B : c1 j a11 c  a  2j   21 cj   .  .  . .   . . cmj As





cp


..

a1n b1j b  a2n    2j    .   Abj , . . .  . .  amn






 1, . . . , p.

am1 am2

bnj

c1 c2

Ab1 Ab2

Abp ,

de modo que la j - esima columna de C es una combinaci on lineal de las columnas de A cuyos coecientes son las componentes de la j - esima columna de B . De forma similar, de (1.2) sacamos que si ci y ai son las i- esimas las de C y A, entonces ci  ai B. Y esto signica que la i- esima la de C es una combinaci on lineal de las las de B cuyos coecientes son las componentes de la i- esima la de A. En resumen, en el producto de matrices AB : A acta sobre B provocando combinaciones lineales en las las de B , y B acta sobre A provocando combinaciones lineales en las columnas de A.

Ejemplo 1.1 : Producto interno y producto externo de vectores. Sean u, v P Rn . Se dene le producto interno de estos dos vectores como uT v , mientras que el producto externo es uv T . Hay una gran diferencia entre estos dos productos. Para empezar uT v P R11 ; es decir, es un escalar mientras que uv T P Rnn es una matriz. Adem as, uT v es una combinaci on lineal de las columnas de uT con los coecientes de v o una combinaci on T lineal de las las de v con los coecientes de u. Tanto las columnas de u como las

12

Vectores y Matrices

las de v son de tama no 1 1, de modo que el resultado es un escalar:

uT v

u1 u2

v1 n    v2   un  ui vi . . .
i 1

vn

P R.

Por su parte uv T se puede ver como una combinaci on de las las de v T (s olo hay una) cuyos coecientes son las componentes de u; o, como una combinaci on lineal de las columnas de u (s olo hay una) cuyos coecientes son las componentes de v T . Es decir,


uv T

v1 u v2 u

u1 v T u1 v1 u1 v2 T     u2 v   u2 v1 u2 v2 vn u   .  . . .  . .   . . . T un v un v1 un v2


.. .

u1 vn u1 vn    . . .  un vn

En conclusi on, el producto exterior de u y v es una matriz n n cuyas columnas son m ultiplos del vector u, y cuyas las son m ultiplos del vector v T .

Otras dos interpretaciones del producto de matrices Se pueden dar dos nuevas interpretaciones del producto de matrices a partir de los productos interno y externo de vectores. Sean A P Rmn y B P Rnp . Entonces Por una parte, el elemento pi, j q de AB es pAB qij

n k 1

donde a1i es la i- esima columna de AT y bj la j- esima columna de B .

el producto interno de la i- esima la de A y la j- esima columna de B . Siendo completamente formales: pAB qij  pa1iqT bj ,

aik bkj . Es decir, es

Por otra, si ai representa la columna i- esima de A y bj la j- esima la de B , k entonces el elemento pi, j q del producto externo ak b es precisamente aik bkj . Por

1.1 Matrices y Aplicaciones Lineales

13

lo tanto, si b1k es la k- esima columna de B T tenemos que pak pb1k qT qij Es decir, AB

 aik bkj .

 a1pb11qT a2pb12qT anpb1nqT ,

es la suma de n productos externos. Cada sumando es el producto externo de la i- esima columna de A y la i- esima la de B (formalmente la i- esima columna de B T ).

Ejemplo 1.2 :Matrices elementales Dada una matriz A P Rmn , hay tres tipos de transformaciones elementales que se pueden realizar sobre A: (t1 ) Sumar a una la (o columna) de A otra la (o columna) multiplicada por un escalar. (t2 ) Multiplicar una la (o columna) de A por un escalar distinto de cero. (t3 ) Permutar dos las (o columnas) de A. Si las transformaciones se hacen en las las se habla de transformaciones elementales por las y si se hacen en las columnas de transformaciones elementales por columnas. Puesto que las transformaciones elementales por las en A producen combinaciones lineales de sus las, se tienen que poder realizar multiplicando una matriz apropiada por A. Y lo mismo por columnas: las transformaciones elementales por columnas se pueden realizar multiplicando A por una matriz apropiada. Supongamos, por ejemplo, que se quiere sumar a la i- esima la la j - esima multiplicada por P R. Y supongamos, por jar ideas, que i j . Si escribimos A en funci on de sus las   a1  a2    A .   . .  am

14

Vectores y Matrices

queremos obtener la matriz


    i a       

a1 . . .

  j a   .  . .   j a   . .  .

am Puesto que cada la de B es una combinaci on lineal de las las de A, debe existir una matriz E1 pq tal que B  E1 pqA. Ahora bien, todas las las de A y B coinciden, excepto la i- esima que es ai aj . Por lo tanto
   i     j  

i 1 ...

          

E1 pq 

1 ... ... . . . 1 ... 1

Es importante observar que E1 pq  In aeT esimo vector (columna) j donde ej es el j - can onico (todos los elementos cero excepto el de la posici on j que es 1) y a es el vector (columna) cuyos elementos son todos cero excepto el de la posici on i que es . As pues E1 pq es una modicaci on de rango 1 de la matriz identidad. Es claro que B

 E1pqA. De la misma forma




AE1 pq  a1

ai

aj

ai

an .

N otese que en este caso, la columna que cambia es la j - esima. Si lo que se quiere es multiplicar la i- esima la de A por

0 entonces la

1.1 Matrices y Aplicaciones Lineales

15

matriz E2 pq que lo produce es i 1 .. . 1 1 .. . 1

     i    

         

E2 pq 

En efecto
 

E2 pqA  ai   .   . . 


a1  .  .   .

y AE2 pq  a1

ai

an .

am

Finalmente, si lo que se quiere es permutar las las o columnas i y j debemos utilizar una matriz de permutaci on, en realidad una transposici on:

     i     j    

i 1 ... 1

              

0 ... 1 . ... . . . . . 1 ... 0 1 ... 1

16

Vectores y Matrices

As


a1  .   . .  PA 
 j a   .   .   .   i a   .   . . 

y AP

a1

aj

ai

an .

am

Las matrices de la forma E1 pq, E2 pq y P se llaman matrices elementales. Debe notarse que estas matrices y las matrices de transposici on se obtienen de la matriz identidad realizando sobre esta la misma transformaci on elemental que se quiere conseguir sobre la matriz que van a actuar. As , la matriz E1 pq de m as arriba se obtiene de la matriz In sumando a la la i la j - esima multiplicada por . Y tambi en se obtiene sumando a la columna j la i- esima multiplicada por .

1.1.4.

Submatrices

Dada una matriz A  raij s P Rmn , diremos que la matriz B  rbij s P Rpq es una submatriz de A si existen ndices pi1 , . . . , ip q y pj1 , . . . , jq q tales que 1 i1 ip m, 1 j1 jq n y

ai r j s

 brs,

1r

p, 1 s q.

Esto signica, simplemente, que los elementos que componen B est an en la intersecci on de algunas las y columnas de A:

1.1 Matrices y Aplicaciones Lineales

17

b11

t t

b12 b22

t t

b13

i1 i2

b21

b23

A
tb31 tb41 tb32 tb42

b33

i3 i4

b43 t j3

j1

j2

Trabajaremos a menudo con submatrices para lo que vamos a introducir una notaci on m as compacta y u til. Denotamos con Qr,n

 tpi1, . . . , ir q : 1 i1 . . . ir nu

el conjunto de todas las secuencias de r n umeros enteros positivos entre 1 y n.

P Qr,n, diremos que precede a en el orden lexicogr aco, y escribiremos , si la primera diferencia i i que no sea cero es positiva. Por ejemplo, si  p1, 3, 4, 7q y  p1, 3, 5, 6q entonces  p0, 0, 1, 1q y  p0, 0, 1, 1q. por lo tanto precede a en el orden lexicogr aco: . Dada una matriz A  raij s P Rmn , si P Qr,m y P Qs,n , la matriz B  rbij s P
Si , Rrs denida por bij

 a ,
i j

1 i r,

1j

es una submatriz de A y se denotar por B

 Ar| s.

Esta notaci on es muy parecida a la que usa MATLAB para denir submatrices (ve ase la Gua de MATLAB para este curso). MATLAB utiliza par entesis en vez de

18

Vectores y Matrices

corchetes. Aqu los par entesis se usar an para designar la submatriz complementaria. Es decir, si P Qr,n entonces la secuencia complementaria de es 1 P Qnr,n que 1 , . . . , 1 q entonces cumple la siguiente condici on: Si  p1 , . . . , r q y 1  p1 nr

1 , . . . , 1 u  t1, 2, . . . , nu. t1, . . . , r , 1 nr

Si P Qr,m y P Qs,n y 1 , 1 son las secuencias complementarias en t1, . . . , mu y t1, . . . , nu, entonces pondremos Ap| q  A  r1 | 1 s.

Ejemplo 1.3 .- El siguiente ejemplo puede ayudar a claricar la notaci on. Sea 0  3 A  4 7 Ar1, 2|1, 3s 
 

1 2 5 6

2 1 6 5


3 0   7  4


a11 a13 a21 a23




0 3


2 1


Ap2, 3|3q  Ar1, 4|1, 2, 4s 

a11 a12 a14 a41 a42 a44

0 7

1 6

3 4

1.2.

Imagen y N ucleo de una matriz

Aunque en la secci on anterior hemos procurado actuar con la m axima generalidad acerca del anillo en el que est an denidas las matrices, a partir de ahora, nuestras matrices supondremos que tienen sus elementos en un cuerpo (siempre conmutativo), F, y casi siempre podremos pensar que este cuerpo es el de los n umeros reales o complejos. Comenzamos con dos conceptos b asicos bien conocidos: la imagen y el n ucleo de una matriz se denen como la imagen y n ucleo de la correspondiente aplicaci on lineal asociada. Denici on 1.4 .- Sea A P Fmn . Se dene ImpAq  ty

P Fm|y  Ax para algn x P Fnu.

1.2 Imagen y N ucleo de una matriz

19

KerpAq  tx P Fn |Ax  0u.

En estos dos conceptos aparece un sistema de ecuaciones lineales. Podemos utilizar la interpretaci on que hemos hecho en la Secci on 1.1.3 acerca del signicado de multiplicar matrices para conseguir una nueva caracterizaci on de estos conjunn tos. Recordemos que si a1 , . . . , an son vectores de F , el subespacio de Fn generado por estos vectores , y que denotaremos indistintamente por a1 , . . . , an o por Span pa1 , . . . , an q, es el conjunto de todas las combinaciones lineales de a1 , . . . , an :

a1, . . . , an  Span pa1, . . . , anq 

i 1

x i ai | x i

PF

Proposici on 1.5 .- ImpAq es es subespacio de Fm generado por las columnas de A. Demostraci on.- Tenemos que demostrar que si A  a1 a2 Im A  a1 , a2 , . . . , an . Ahora bien y


x i ai ,

an entonces

P Im A y  Ax,

para algn x P Fm

y

n i 1

donde x1 , . . . , xn son las componentes de x. La u ltima equivalencia es, como ya hemos mencionado, debida a que y  Ax si y s olo si y es una combinaci on lineal de las columnas de A cuyos coecientes son las componentes de x. De forma similar, los vectores x P Ker A son aquellos cuyas componentes son los coecientes del vector 0 como combinaci on lineal de las columnas de A: 0  x1 a1 x2 a2 xn an .

1.2.1.

Rango y nulidad

El rango por columnas de una matriz es la dimensi on del espacio que generan sus columnas. Y el rango por las de una matriz es la dimensi on del espacio que generan sus las. Ambos n umeros coinciden para cada matriz (hay varias pruebas posibles de este hecho, una de ellas se puede obtener como corolario del Teorema SVD que

20

Vectores y Matrices

discutiremos en Lecciones posteriores). Nos referiremos a este n umero com un como el rango de la matriz y, para una matriz A, lo representaremos por rangpAq. Por otra parte, la nulidad de A P Fmn se dene como la dimensi on de Ker A y la denotaremos con el s mbolo pAq. Los teoremas de isomorfa nos dan una relaci on estrecha entre nulidad y rango. En efecto, de acuerdo con la Proposici on 1.5, rangpAq  dim Im A y de acuerdo con los teoremas de isomorfa de aplicaciones lineales dim Im A  n dim Ker A. As pues rangpAq  n pAq. Diremos que una matriz m n tiene rango completo si su rango es el m aximo posible; es decir, el m as peque no de los n umeros m y n. As pues, si m n y mn APF tiene rango completo, se tiene que las n columnas de A son linealmente independientes. Esto a su vez signica que el u nico vector x  px1 , . . . , xn q para el que x1 a1 xn an  0 es x  0; es decir, Ker A  t0u. Y esto equivale a que la aplicaci on lineal que dene A es inyectiva. De la misma forma, si m n y A tiene rango completo entonces dim Im A  m y como Im A Fm debe ser Im A  Fm ; i.e., A es suprayectiva. Finalmente, si m  n y A tiene rango completo entonces la aplicaci on lineal que dene es biyectiva. Es decir, A es invertible: hay una nica matriz B P Fnn tal que AB  BA  In . A esta nica matriz se le llama inversa de A y se representa por A1 . El siguiente Teorema recoge unas cuantas propiedades bien conocidas equivalentes a que una matriz sea invertible. Algunas de ellas ya han sido demostradas m as arriba. Teorema 1.6 Para A P Fnn las siguientes condiciones son equivalentes: 1. A tiene inversa A1 . 2. rangpAq  n. 3. Im A  Fn . 4. pAq  0. 5. Ker A  t0u.

1.3 Factorizaci on LU

21

6. 0 no es un valor propio (autovalor) de A. 7. detpAq  0. Recordemos que , escalar en, quiz a, un cuerpo extensi on de F, es un valor propio si hay un vector no nulo x tal que Ax  x. Si 0 fuera valor propio de A entonces Ax  0 para alg un x  0. As Ker A  t0u. Y rec procamente. En cuanto a la propiedad detpAq  0, se trata de una consecuencia inmediata de las propiedades b asicas de los determinantes para matrices sobre cuerpos. Y en cuanto a terminolog a, las matrices que cumplen la propiedad detpAq  0 se llaman no singulares o regulares. Por lo tanto, no singularidad e invertibilidad son conceptos equivalentes para matrices sobre cuerpos. Asociada al determinante recordemos que hay una caracterizaci on del rango de una matriz que la mencionamos por completitud porque tanto ella como el propio concepto de determinante no son de utilidad desde un punto de vista num erico: el rango de A es el tama no de la mayor submatriz con determinante no nulo de A. A los determinantes de las submatrices de una matriz tambi en se les llama menores de la matriz. Una observaci on nal en la l nea de lo expuesto en la Secci on 1.1.3. Cuando escribimos x  A1 b no debemos pensar en el vector x como el resultado de multiplicar la inversa de la matriz A por el vector b, sino que A1 b es el vector cuyas componentes son los coecientes de b escrito como combinaci on lineal de las columnas de A. En efecto, esto es consecuencia de la siguiente obvia equivalencia para las matrices invertibles: O tambi en, si A es invertible entonces Im A  Fn y las columnas de A forman una base de Fn . Las componentes del vector A1 b son las coordenadas de b en esta base. Ax  b x  A1 b

1.3.

Factorizaci on LU

La factorizaci on LU se estudia en el curso de M etodos Num ericos bajo la denominaci on de Algoritmos de Doolittle y Crout. La repasamos ahora brevemente.

22

Vectores y Matrices

El objetivo de la factorizaci on LU es la resoluci on de sistemas de ecuaciones lineales; y es la forma actual de representar la eliminaci on Gaussiana. La eliminaci on Gaussiana era conocida ya en la China antigua [15] y los estudiantes la emplean de manera intuitiva en la escolarizaci on obligatoria o bachillerato como un m etodo de eliminaci on de variables al resolver sistemas lineales. Gauss la us o en el contexto de problemas de m nimos cuadrados lineales [7],[10], [20]. En los cursos de a lgebra lineal se suele ense nar en conjunci on con la reducci on de una matriz a forma escalera y, en este contexto, se trata como una herramienta para obtener todas la soluciones de un sistema lineal, para calcular el determinante y el rango de la matriz de los coecientes. En esta secci on estudiaremos su conexi on con la factorizaci on LU y justicaremos por qu e esta es la forma eciente de implementar la eliminaci on Gaussiana. Supongamos, en una primera aproximaci on, que se nos pide resolver el siguiente sistema de ecuaciones lineales:      10 20 0 x1 6 2 4 6 x2    4  5 2 8 x3 11 y pongamos       10 20 0 x1 6      A  2 4 6 , x  x2 , b  4  5 1 9 x3 11 La eliminaci on Gaussiana consiste en operar sobre las las del sistema para reducir a cero todos los elementos de la primera columna de la matriz de los coecientes. El primer paso ser a sumar a la segunda la la primera multiplicada por 2{10 y sumar a la tercera la la primera multiplicada por 5{10. Se trata, en realidad, de hacer transformaciones elementales: si     1 0 0 1 0 0 1 0 M11  2{10 1 0 y M12   0 0 0 1 5{10 0 1 entonces 10  M12 M11 A  0 0 Notemos que M1


20
0 8

0 6   6 y M12 M11 b  5,2 8 8


 

 M12M11

1 0 0   2{10 1 0 ; 5{10 0 1

1.3 Factorizaci on LU

23

es decir, podemos condensar todas las operaciones elementales hechas en la primera columna en una u nica matriz que diere de la identidad en que los elementos en la primera columna son los n umeros por los que hay que multiplicar el elemento en la posici on p1, 1q para anular los restantes elementos de la primera columna. En denitiva,   0 m1   2{10  . M1  I3 m1 eT 1, 5{10 El siguiente paso es proceder con los elementos de la segunda columna que est an por debajo de la diagonal de la misma forma. En nuestro ejemplo, sin embargo, tenemos un problema: el elemento en la posici on p2, 2q es 0; no podemos usarlo para eliminar el elemento en la posici on p3, 2q. El remedio es f acil: permutamos las las 2 y 3. Para ello denimos   1 0 0 P  0 0 1 0 1 0 Esta es una matriz de permutaci on que al premultiplicar cualquier matriz por ella, permuta en aquella las las 2 y 3. As 10 P M1 A   0 0


20
8 0

0 6 8  y P M1 b   8  6 5,2

La estrategia de permutar las se debe usar, por motivos que por ahora no se pueden explicar con brevedad, no s olo cuando el elemento de la posici on diagonal es cero, sino para colocar en dicha posici on el elemento que, en valor absoluto, sea el mayor de la columna por debajo de la diagonal. Por ejemplo, si sustitu mos el 4 en la posici on p2, 2q de la matriz original A por 4,1 entonces 10  M1 A  0 0


20
0,1 8

0 10   6 y P M1 A  0 8 0

20
8 0,1

0 8 . 6

Siguiendo con esta matriz, sumamos a su tercera la la segunda multiplicada por 1{80; i.e, premultiplicamos por 1  M2  0 0


0 0 1 0  I3 m2 eT 2, 1{80 0

0  0 , m2  1{80

24

Vectores y Matrices

para obtener 10  M2 P M1 A  0 0


20
8 0

0 6   8 y M2 P2 M1 b  8  5 ,9 5,1

De aqu se obtiene f cilmente la soluci on: x3

51 , x2 59

1 8

51 88 59

8 , x1 59

1 10

8 6 20 59

6  10 16 . 59

Recordamos que a este proceso se le llama sustituci on hacia atr as. Observemos ahora que 1 0 0 1  P M1 P  5{10 1 0  M1 2{10 0 1
 

1 P siendo M 1 la matriz que se obtiene de M1 al y que P T  P . Es decir, P M1  M1 1 1  M2 intercambiar los elementos en las posiciones p2, 1q y p3, 1q. As pues, si M2 1M1P A  U M2 1
siendo 10 U 0 0


20
8 0

0 8 5 ,9

1 y M 1 son muy f aciles una matriz triangular superior. Finalmente, las inversas de M1 2 de calcular: basta cambiar de signo los elementos que est an fuera de la diagonal:
1 0 0 1 1   5{10 1 0 , L L1  M1 2 2{10 0 1 Poniendo L  L1 L2 obtenemos
  

1 0 0  0 1 0 0 1{80 0


1 0 0  1 0 L  5{10 2{10 1{80 1

1.3 Factorizaci on LU

25

que es una matriz triangular inferior con elementos todos iguales a 1 en la diagonal y cuyos elementos por debajo de la diagonal i son los de la matriz Li . Adem as, existe una matriz de permutaci on P tal que P A  LU A esta forma de escribir P A se le llama descomposici on o factorizaci on LU de A con pivoteo parcial por columnas. Este ha sido un ejemplo de un resultado general: dada una matriz no singular A P Fnn , (F  R o C), realizando transformaciones elementales por las se puede reducir A a una matriz U que es triangular superior. En concreto, existen matrices M1 ,. . . , Mn1 con la forma


Mk

 0   0  . . .

1 . . . .. .

0 . . . 1 mk1k . . . mnk

0 0 T   In mk ek , 1 0 . . . . . .. . . 0 1


0 . . .

0 .  . .

mk

  k  m  k1k  .  . .

0 . . . 0

        

mnk

y matrices de transposici on P1 ,. . . , Pn1 tales que Mn1 Pn1 . . . M2 P2 M1 P1 A  U. Expl tamente, si para k

 1, . . . , n 1, Apkq  Pk Mk1Pk1 . . . P2M1P1A, entonces k nk  pkq pk q  k A11 A12 p kq A  pk q nk 0 A


22

siendo A11 una matriz triangular y para i  k 1, . . . , n las cantidades mik

pk q

 aik pkq .
akk

pkq

se llaman multiplicadores y a akk el pivote del paso k . Adem as, Apk1q  Mk Apkq es una matriz con la misma forma que Apkq pero con ceros en la columna k 1 por

pkq

26

Vectores y Matrices

debajo de la diagonal. Los elementos de A22 las siguientes operaciones: aij

pk1q se obtienen de los de Apkq mediante


i, j

pk1q  apkq m apkq , ik kj ij

 k 1, . . . , n.

Ahora, si Li es la matriz que se obtiene cambiando los signos de los multiplicadores en la columna i de Mi e intercambi ando los elementos de dicha columna correspondientes a la transposiciones Pn1 ,. . . , Pi1 , entonces Poniendo P

 Pn1 . . . P1 y L  L1 . . . Ln1 tenemos que P A  LU

Pn1 . . . P1 A  L1 . . . Ln1 U.

es una descomposici on LU de A con pivoteo por columnas. Debe observarse la siguiente propiedad que es importante para realizar el algoritmo que produce la factorizaci on LU de A con pivoteo parcial de columnas: Para i  1, . . . , n 1 denotemos 1 . . . .. .  0 Li   0 . . . 0


0 . . . 1
i 1i

0 . . .

. . .

y supongamos i j . Entonces teniendo en cuenta que eT i 1 . . . i 0 0  . . .


 j0  0 . . . 

ni

0 0 T   In i ei , 1 0 . . . . . .. . . 0 1


0 .  . .

   i     

0 . . . 0
i 1i

        

. . .

ni j

 0, se concluye que
0 . . . 0 0 . . . 0 1 . . . 0

...

i 0 . . . 1
i 1i

Li Lj

 In

T i ei

T j ej

. . .

0 . . . 0 1 . . . 0 0 . . . 0


.. .

j 0 . . . 0 0 . . . 1
j 1j

ji j 1i

. . .

. . .

0 0 .. . 0


. . .

0 . . . 0 0 . . .

        .  0  0  

ni

nj

1.3 Factorizaci on LU

27

T En denitiva, L  L1 . . . Ln1  In i eT i n1 en1 . Es decir, para j  1, . . . , n 1 la j - esima columna de L es la de Lj . En otras palabras, los elementos de L en la columna j por debajo de la diagonal son los multiplicadores del paso j , de modo que L se obtiene asignado a la posici on pi, j q, i j , el multiplicador p j q pj q mij  aij {ajj .

Se presenta a continuaci on una funci on de MATLAB que teniendo en cuenta todos los comentarios anteriores devuelve las matrices L, U y P tales que P A  LU es una factorizaci on LU de A con pivoteo parcial por columnas. La matriz P puede no ser u nica (puede haber en cada paso varios elementos en la correspondiente columna con m aximo valor absoluto) pero una vez jada esta, los factores L y U son u nicos ([6, pag. 35 Vol. 1]). Se pone el s mbolo % para explicar brevemente el signicado de cada l nea. function [L,U,P] = lutxv1(A) %LUTXV1 devuelve matrices L, triangular inferior con 1 en la diagonal, %U, triangular superior y P e permutaci on tal que PA=LU. En vez %trabajar con la matriz P se trabaja con un vector p que almacena las %transposiciones y a partir del cual se construye P. % Calculamos el tama~ no de A [n,n] = size(A); %Iniciamos p=[1 2 ... n]^T p = (1:n); % y L L=eye(n); %Transformaciones elementales en las columnas 1, 2,..., n. for k = 1:n-1 %Calculamos el m aximo, r, (en valor absoluto) de los elementos % A(k,k), A(k,k+1),...,A(k,n), y la posici on, m, donde se encuentra [r,m] = max(abs(A(k:n,k))); % Calculamos la posici on del m aximo en toda la columna k- esima de A m = m+k-1; %Si el m aximo fuera cero es porque toda la columna es cero y A no ser a %invertible if (A(m,k) ~= 0) %Si el m aximo no est a en la diagonal permutamos

28

Vectores y Matrices

if (m ~= k) %permutamos las filas k y m en A A([k m],k:n) = A([m k],k:n); %en L L([k m],1:k-1) = A([m k],1:k-1); % y las posiciones k y m de p p([k m]) = p([m k]); end %L est a fromada por los multiplicadores i = k+1:n; L(i,k) = A(i,k)/A(k,k); % Por debajo de (k,k) los elementos de A en % para qu e hacer la operaci on? A(i,k)=0; % Realizamos sobre las filas i=k+1,...,n la j = k+1:n; A(i,j) = A(i,j) - L(i,k)*A(k,j); end end %A se ha convertido en triangular superior: es la U=A; % Constru mos P a partir de p: las filas 1:n de P P=eye(n); P=P(p,:);

la columna k ser an 0

transformaci on elemental

U son las de la permutaci on

En la segunda y u ltima versi on se juega con el hecho de que la matriz A va haci endose triangular superior y en cada paso sus elementos por debajo de la diagonal se hacen ceros. De hecho, se van haciendo ceros a medida que se va construyendo la matriz L columna a columna con los multiplicadores. La idea es aprovechar la parte triangular inferior de A almacenando all la parte triangular inferior de la L. De esta forma, toda referencia a L es innecesaria. La siguiente funci on de MATLAB es de una versi on legible de la funci on LU de MATLAB. function [L,U,P] = lutx(A) %LUTX devuelve matrices L, triangular inferior con 1 en la diagonal, %U, triangular superior y un vector p, tal que si P es la matriz de %permutaci on que corresponde al vector p, se tiene PA=LU % Calculamos el tama~ no de A

1.3 Factorizaci on LU

29

[n,n] = size(A); %Iniciamos p=[1 2 ... n]^T p = (1:n); %Transformaciones elementales en las columnas 1, 2,..., n. for k = 1:n-1 %Calculamos el m aximo, r, (en valor absoluto) de los elementos % A(k,k), A(k,k+1),...,A(k,n), y la posici on, m, donde se encuentra [r,m] = max(abs(A(k:n,k))); % Calculamos la posici on del m aximo en toda la columna k- esima de A m = m+k-1; %Si el m aximo fuera cero es porque toda la columna es cero y A no ser a %invertible if (A(m,k) ~= 0) %Si el m aximo no est a en la diagonal permutamos if (m ~= k) %permutamos las filas k y m A([k m],:) = A([m k],:); % y las posiciones k y m de p p([k m]) = p([m k]); end %Almacenamos en la columna k desde la posici on diagonal para abajo %los elementos de L i = k+1:n; A(i,k) = A(i,k)/A(k,k); % Realizamos sobre las filas i=k+1,...,n la transformaci on elemental j = k+1:n; A(i,j) = A(i,j) - A(i,k)*A(k,j); end end %En la parte triangular inferior de A (sin la diagonal) est a L L = tril(A,-1) + eye(n,n); %Y en la parte triangular superior (incluyendo la diagonal) est a U U = triu(A); % Constru mos P a partir de p: las filas 1:n de P son las de la permutaci on P=eye(n); P=P(p,:); Una vez se ha obtenido una descomposici on LU de A, la resoluci on del sistema Ax  b es simple: se obtiene la soluci on del sistema Ly  b mediante sustituci on hacia adelante; y a continuaci on la soluci on de U x  y mediante sustituci on hacia

30

Vectores y Matrices

atr as. El algoritmo LU es el primer algoritmo que vemos en este curso. Se trata de un algoritmo sencillo pero eso no signica que sea bueno. Dise nar buenos algoritmos puede ser una tarea complicada y decidir si un algoritmo es bueno tambi en. Hay dos propiedades fundamentales que se deben exigir a un buen algoritmo: que sea estable y sea poco costoso. Estudiaremos en cap tulos posteriores lo que signica que un algoritmo es estable y analizaremos si la eliminaci on Gaussiana lo es. Para un algoritmo como el que acabamos de ver, su coste se mide en funci on del n umero de operaciones que hay que realizar. A estas operaciones se les suele llamar ops (por oating point operations ). Cada suma, resta, multipliaci on y divisi on es una op. No distinguiremos entre operaciones con n umeros reales o complejos y tampoco prestaremos atenci on a otras operaciones que realizan internamente los ordenadores (como asignaci on de memoria o realocaci on de variables, dedicaci on de los procesadores a las distintas tareas que se est en realizando en el momento de correr el algoritmo, etc). No obstante se debe saber que estos factores pueden afectar en gran medida al tiempo necesario para la implementaci on del algoritmo. Normalmente el n umero de ops es un polinomio en el tama no de la matriz. De este polinomio s olo se suele destacar el t ermino de grado mayor. As , se suele 2 3 decir que el coste del algoritmo LU es del orden de n y se escribe habitualmente 3 2 3 3  3 n o simplemente Opn q. C omo se calcula este n umero? Observando que s olo hay operaciones aritm eticas en dos l neas del algoritmo: A(i,k) = A(i,k)/A(k,k); A(i,j) = A(i,j) - A(i,k)*A(k,j) La primera consiste de una divisi on mientras que la segunda de una resta y una multiplicaci on. Esta domina a aquella y teniendo en cuenta que la longitud del vector j es l  n k 1 resulta que 2l es el n umero de operaciones necesario para conseguir los elementos de la la i. Y esto hay que repetirlo para i  k 1 : n y para k  1 : n 1. As pues, el n umero de operaciones est a dominado por la expresi on:
n 1

k 1i k 1j k 1

  

2

n 1 k 1

2pn k q

n 1 k 1

2k 2

2n 1q 2 3  2 npn 1qp  n 6 3

tal y como se ha dicho m as arriba. Se dice entonces que el coste del algoritmo LU es de orden c ubico.

Cap tulo 2

Normas de Vectores y Matrices

2.1.

Introducci on

En este cap tulo repasaremos brevemente el concepto de norma de un vector para centrarnos en el estudio de las normas de matrices o, si se quiere, en las normas de los operadores lineales. El estudio de las normas de matrices es importante por varias razones. Es necesario, por ejemplo, para denir de forma precisa conceptos tales como series de potencias de matrices; y desde luego es b asico para precisar lo que se entiende por proximidad o lejan a entre matrices, aspectos fundamentales en el an alisis de algoritmos en la computaci on num erica. Un par de ejemplos pueden servir para ilustrar estas ideas. Es conocido que si x es un n umero complejo de m odulo menor que 1 entonces

p1 xq1  1 x x2 x3 . . .
Esto sugiere la f ormula

pI Aq1  I A A2 A3 . . .
31

32

Normas de Vectores y Matrices

para calcular la inversa de la matriz I A. Pero cu ando es tal f ormula v alida?. Resulta que es suciente que una norma de la matriz A sea menor que 1, y adem as cualquier norma sirve. De forma parecida se puede ver que bajo ciertas condiciones relativas a la norma de A la serie 8 1 Ak k i0 es convergente y sirve para denir la funci on matricial eA . Por otra parte, el c alculo num erico con matrices que proceden de datos experimentales, no es exacto; por lo general matrices est an sometidas, bien sea por errores de redondeo o por imprecisi on en las mediciones,a peque nas perturbaciones. Cu an peque nas son estas perturbaciones, o lo que es lo mismo, cu an lejos est a la matriz verdadera de la calculada son conceptos que se pueden hacer precisos utilizando normas. En todo este cap tulo supondremos que F es el cuerpo R de los n umeros reales o el cuerpo C de los n umeros complejos.

2.2.
2.2.1.

Normas de Vectores
Denici on y Ejemplos

Como es bien sabido, el concepto de norma de un vector es una generalizaci on del concepto de valor absoluto o m odulo de un n umero complejo.

Denici on 2.1 .-Sea V un espacio vectorial sobre F (R o C). Una funci on : V R es una norma en V si satiface las siguientes propiedades: (i) x  0 pxq 0. (ii) pxq  || pxq,

@ P F. @x P V
(desigualdad triangular)

(iii) px y q pxq py q,

2.2 Normas de Vectores

33

Tres importante propiedades se siguen de forma inmediata de la Denici on 2.2. Para cualquier norma 1. p0q  0 porque p0q  p0xq  0 pxq  0.

2. pxq  pxq porque pxq  | 1| pxq  pxq

3. | pxq py q| px y q. En efecto, hay dos posibilidades:

b) pxq py q. Entonces | pxq py q|  py q pxq y de nuevo por la desigualdad triangular py q py xq pxq  px y q pxq. Ejemplo 2.2 Se puede denir una innidad de normas en Fn , sin embargo las m as utilizadas son las llamadas normas de H older o normas p . En lo que sigue supondremos que x  px1 , x2 , . . . , xn q P Fn es un vector de Fn . Para cada una de las normas dibujamos, a modo de ilustraci on la correspondiente bola unidad en R2 ; i.e., el conjunto B p0, 1q  tx P R2 | x 1u.

a) pxq py q. En este caso | pxq py q|  pxq py q y por la desigualdad triangular pxq  ppx y q y q px y q py q.

(a)

La norma x

1:

n i 1

| xi | .

(b)

La norma x

o norma eucl dea:


d
n

2

i 1

| xi | 2 .

34

Normas de Vectores y Matrices

(c)

La norma 8 : x 8  m ax |xi |. 1in

(d)

La norma x

general (p 2):

n i 1

| xi | p

1{p

Demostrar que las normas p son, en efecto, normas es f acil salvo la desigualdad triangular que, en el caso general, se conoce como desigualdad de Minkowsky. esta a su vez, es consecuencia de otra desigualdad importante; la desigualdad de H older: 1 1 Si p y q son n umeros reales tales que p q  1 entonces

| x y |

En el caso particular en que p  2 (y entonces tambi en q H older se convierte en una desigualdad bien conocida:

 2) la desigualdad de

| x y |
la desigualdad de Cauchy-Schwartz.

2,

Aparentemente la norma 8 no es una norma p . Sin embargo se la puede considerar como tal porque para cualquier x P Fn se tiene que x 8  l m p8 x
p

2.2 Normas de Vectores

35

Algo de esto ya se intuye en la forma que tienen las bolas unidad en R2 para las normas p . Tambi en admite, claro est a, una demostraci on rigurosa: Sea x y supongamos que x 8  m ax |xi |  |xi1 |   |xiq |  m. 1in Es decir, que las componentes i1 , . . . , iq son, en m odulo, mayores que todas las dem as, y que en todas ellas el valor de dicho m odulo es el mismo e igual a m. As , si tj1 , . . . , jnq u  t1, . . . , nuzti1 , . . . , iq u tenemos que x
xj k
p p  pqm | xj |p |xj |p q1{p  x j p 1{p xj p  m q m m .
1 n q 1 n q

 p|x1|p xn|pq1{p,

m como se deseaba demostrar.

Como

xj 1 conclu mos que l m  0 y l m p8 m p8


k

m

x 8 , tal y

2.2.2.

Equivalencia de normas

Las normas son herramientas b asicas para denir y analizar la convergencia de una sucesi on de vectores en espacios vectoriales. Como es habitual, una sucesi on txk u V se dice que converge a x (y se escribe xk x) si la sucesi on de n umeros reales t pxk xqu converge a cero, pxk xq 0, siendo una norma denida en V . Esta denici on depende de la norma . En principio podr a suceder que una sucesi on de vectores convergiera para una norma pero no para otra. De hecho, esto es perfectamente posible en espacios de dimensi on innita, pero no en espacios de dimensi on nita. Ello es consecuencia de que todas las normas en un espacio vectorial de dimensi on nita son equivalentes en el siguiente sentido: Denici on 2.3 Sean y normas denidas en V , espacio vectorial sobre F. Se dice que y son equivalentes si existen n umeros reales positivos c1 y c2 tales que c1 pxq pxq c2, @x P V.

36

Normas de Vectores y Matrices

Debe notarse que as se dene, en efecto, una relaci on de equivalencia en el conjunto de todas las normas denibles en un espacio vectorial. (Se ver a en los ejercicios que hay una innidad de normas denibles en cualquier espacio vectorial). Nuestro objetivo es demostrar que todas las normas en un espacio de dimensi on nita son equivalentes. Para ello debemos recordar algunos resultados b asicos de topolog a. En todo espacio normado, pM, . q podemos denir una distancia: dpx, y q  x y , que hace de pM, dq un espacio m etrico, y por lo tanto topol ogico con una base de abiertos dada por las bolas abiertas centradas en cada punto de M . Por consiguiente, si V es un espacio vectorial en el que tenemos denida una norma, autom aticamente tenemos en V estructuras de espacio m etrico y topol ogico. Si en M tenemos denidas dos normas, las bolas abiertas denidas por ambas normas pueden ser diferentes (ve ase el Ejemplo 2.2). A pesar de que las bases de abiertos determinadas por dichas normas sean diferentes, las topolog as determinadas por estos pueden ser iguales. La propiedad de que las normas son equivalentes determina que, en efecto, las topolog as inducidas por ellas son la misma; es decir, todo abierto respecto de una de las normas lo es respecto de la otra. En efecto, recordemos que si es una norma en M , un conjunto A M es abierto si para cada x P A existe un n umero real 0 tal que B px, q  ty P V | px y q u est a contenido en A. Ahora, si en M hay denidas dos normas equivalentes, digamos y , entonces existen constantes positivas c1 y c2 tales que c1 pxq pxq c2 pxq para todo x P M . Supongamos que A es abierto respecto de la norma . Esto signica que para todo x P A existe r 0 tal que px y q r implica que y P A. Veamos que A es abierto respecto de . Sea x P A un elemento cualquiera y denamos s de modo que 0 s cr2 . Si px y q s tenemos que px y q c2 px y q c2 r c2

 r.

Por lo tanto y P A y A es abierto respecto a . La demostraci on de que todo abierto respecto a lo es respecto a se hace igual. As pues, todas las normas equivalentes denidas en un conjunto M inducen la misma topolog a en dicho conjunto. En consecuencia, todos los invariantes topol ogicos (compacidad, conexi on, . . . ) se mantienen. Es decir, si un conjunto es compacto o conexo respecto de una de las normas lo es respecto de la otra.

2.2 Normas de Vectores

37

Estas propiedades tienen un inter es sobre todo te orico, pero nos ahorra tener que estar prestando atenci on continuamente a las normas empleadas cuando se prueban resultados topol ogicos. En cualquier caso, una primera consecuencia es que la convergencia de sucesiones de vectores en espacios de dimensi on nita es independiente de la norma elegida. La demostraci on de que todas las normas denidas en un espacio vectorial de dimensi on nita son equivalentes se puede hacer de diversas formas. La que adoptamos aqu no es la m as directa pero tiene la virtud de poner de maniesto una propiedad fundamental de los espacios vectoriales de dimensi on nita: estos espacios vectoriales est an caracterizados por el hecho de que las esferas unidades respecto de cualquier norma son conjuntos compactos. Demostraremos esta importante propiedad (que usaremos de manera signicativa posteriormente) en el siguiente Lema. En la prueba usaremos que las normas 1 y 2 en Fn son equivalentes. En efecto, tal y como se propone demostrar en los ejercicios, se tiene la siguiente desigualdad para todo xFn : ? (2.1) }x}2 }x}1 n}x}2. Una u ltima observaci on: n otese que la acotaci on no se conserva por homeomorsmo (el intervalo p0, 1q es homeormorfo a R) pero si dos normas son equivalentes y un conjunto es acotado respecto de una de ellas lo es, por la denici on de equivalencia de normas, respecto de la otra. Lema 2.4 (a) Todas las normas denidas en V , espacio vectorial sobre F, son funciones continuas cuando en V se considera la topolog a inducida por y en R la topolog a habitual (la inducida por el valor absoluto). (b) Sea V un espacio vectorial de dimensi on nita y una norma en V . La esfera unidad de V respecto de la norma , S  tx P V | pxq  1u, es un conjunto compacto con la topolog a en V inducida por dicha norma. Demostraci on.(a) Sea una norma denida en V y consideremos en V la topolog a inducida por esta norma. Sea 0 un n umero real arbitrario. Escogemos 0 . Entonces, como para todo x, y P V

| pxq pyq| px yq,

38

Normas de Vectores y Matrices

resulta que si px y q es continua.

entonces | pxq pyq| . Esto demuestra que  n y sea tv1, . . . , vnu una base de V . Denimos la
v

(b) Supongamos que dim V siguiente funci on: g :

Fn a  pa1 , . . . , an q

 a1 v 1 an v n

donde la topolog a en V es la derivada de la norma . Esta aplicaci on es un isomorsmo de espacios vectoriales; es decir, es una aplicaci on lineal y biyectiva. Y desde el punto de vista topol ogico es tambi en n un homeomorsmo cuando en V y F se consideran las topolog as derivadas de las normas y 1 . Es decir, g es una aplicaci on continua con inversa continua. No obstante, para llegar al resultado deseado s olo necesitamos que g sea continua. Aunque, tal y como se acaba de decir, este es un hecho conocido, lo demostramos porque la demostraci on es muy sencilla y esta propiedad se usar a con frecuencia en este curso. Que la inversa de g tambi en es continua requiere m as trabajo. Aunque no se va a utilizar, demostraremos esta propiedad al nal de la secci on. Sea 0 un n umero real dado. Tenemos que encontrar un n umero real tal que si a b 1 entonces pg paq g pbqq . Ahora bien pg paq g pbqq

n i 1

|ai bi| pviq M a b 1,




i 1

paivi biviq

donde M  m axt pv1 q, . . . , pvn qu. Observamos que M 0 porque vi  0 para todo i  1, . . . , n por ser vectores de una base de V . Basta escoger 0 M para obtener el resultado deseado. Sea S V la esfera unidad respecto de la norma : S  tx P V | pxq  1u. Este conjunto es acotado respecto de la m etrica determinada por . Y tambi en es cerrado porque es la anteimagen por la aplicaci on continua del 1 cerrado t1u de R. Como g es continua, g pS q es cerrado. El conjunto g 1 pS q tambi en es acotado. Esto es, en realidad, una consecuencia inmediata de un resultado que veremos en la pr oxima lecci on. Sin dicho resultado, necesitamos

2.2 Normas de Vectores

39

una demostraci on. Ya hemos visto que g : Fn V y : V continuas. Entonces, la composici on de ambas f : Fn p a1 , . . . , a n q

R son funciones

R pa1 v1 an vn q

n1 tambi en lo es. Sea S1  tx P Fn|}x}1  1u la esfera unidad de Fn respecto de la norma 1 . Este conjunto es cerrado y acotado respecto de la norma 1 . Por (2.1) tambi en es cerrado y acotado respecto de la norma eucl dea. Ahora bien, sabemos (Teorema de Heine-Borel) que ser cerrado y acotado en Fn (F  R n1 o C) respecto de la norma eucl dea equivale a ser compacto. As pues S1 n1 es compacto. Consecuentemente, f restringida a S1 alcanza su m nimo. Sea n1 n1 f py q. Notemos que m 0 porque si y P S entonces y  0, m  m nyPS1 1 por lo que vy  y1 v1 yn vn  0 y f py q  pvy q 0.

Sea ahora a  pa1 , . . . , an q P g 1 pS q. Esto signica que x  a1 v1 an vn S y as


1  pxq

 } a} 1

i 1

ai vi

n ai

Pero como

}}

a1 n ,... a a 1 a 1

i 1

}}

P S1n1 resulta que


 }a}1

vi

Por lo tanto

n ai i 1

 }a}1

vi

f

a1 an ,... }a}1 }a}1

m.

1  pxq }a}1 m, 1 y como m 0 obtenemos }a}1 . As pues, g 1 pS q est a acotado en m la norma 1 (y por lo tanto en al norma 2 ). Y como tambi en es cerrado en ambas normas por ser equivalentes, y F  R o C, g 1 pS q es compacto. Finalmente, como g biyectiva, g pg 1 pS qq  S . Ahora bien, la imagen de un compacto por una aplicaci on continua es compacto. Conclu mos entonces que S es compacto, tal y como se deseaba demostrar. El rec proco del apartado (b) del lema anterior tambi en es verdadero. Aunque no lo vamos a utilizar lo exponemos por completitud. La demostraci on usa el siguiente resultado de Riesz, que no demostramos:

40

Normas de Vectores y Matrices

Lema 2.5 (Lemma de Riesz) Sea E un espacio vectorial y una norma denida en el. Sea S E un subespacio propio y 0 1. Existe x P E zS tal que px q  1 y ps x q para cada s P S . Teorema 2.6 Un espacio vectorial V es de dimensi on nita si y s olo si la esfera unidad en V , respecto de cualquier norma, es un conjunto compacto. Demostraci on.- La necesidad de que la esfera unidad sea un conjunto compacto para que V sea de dimensi on nita se ha probado en el Lema 2.4. Demostremos ahora la suciencia. Sea una norma en V y supongamos que V es de dimensi on innita. Sea x1 P V cualquier vector tal que px1 q  1. Sea V1  x1 el subespacio generado por x1 . Como V es de dimensi on innita, V1 es un subespacio propio de V , por el Lema de 1 para todo y P V1 . Riesz, existe x2 P V tal que px2 q  1 y px2 y q 2 Sea V2  x1 , x2 el subespacio generado por x1 y x2 . De nuevo, V2 V es un subespacio propio de V . Aplicando otra vez el Lema de Riesz, existe x3 P V tal que 1 px3 q  1 y px3 y q 2 para todo y P V2 . Siguiendo as sucesivamente, constru mos una sucesi on de vectores txn u con las siguientes propiedades: (a) pxn q  1 para n  1, 2, . . . (b) pxn xm q
1 2

para n  m, n, m P N.

Por lo tanto hemos constru do una sucesi on de vectores en la esfera unidad de V , respecto de la norma , que no admite una subsucesi on convergente. Esto signica que la esfera unidad no es un conjunto compacto en V , contradiciendo la hip otesis. Demostramos nalmente el resultado sobre la equivalencia de normas que busc abamos. Teorema 2.7 Todas las normas denidas en un espacio vectorial de dimensi on nita son equivalentes.

2.2 Normas de Vectores

41

Demostraci on.- Sea V un espacio vectorial de dimensi on nita sobre F, y sean y dos normas denidas en V . Sea S  tx P V |pxq  1u. Por una parte, este conjunto es compacto con la topolog a en V inducida por la norma . Hemos visto en la demostraci on del Lema 2.4 que si g : Fn a  pa1 , . . . , an q

 a1v1 anvn

entonces g 1 pS q es compacto en Fn con la topolog a habitual (la derivada de la norma eucl dea o de la 1 ). Tambi en se ha demostrado g es continua cuando en V se considera la topolog a derivada de cualquier norma, en particular, de la norma . Como la imagen de un compacto por una aplicaci on continua es un compacto y g es biyectiva, conclu mos que S es compacto en V con la topolog a inducida por la norma . As pues, cuando en V consideramos la topolog a inducida por tenemos que es una aplicaci on continua y S un compacto. Por lo tanto, alcanza en S su m aximo y su m nimo. Pongamos c2  m n py q y c1  m ax py q. Entonces, para y PS y PS x P S y x P V , tenemos que p xq pxq  pxq Y de la misma forma pxq  pxq

x pxq

pxq m n py q  c2 pxq. y PS

x pxq

pxq m ax py q  c1 pxq. y PS

Una consecuencia inmediata de la equivalencia de normas en espacios de dimensi on nita es que los isomorsmos algebraicos de espacios vectoriales normados son isomorsmos topol ogicos u homeomorsmos: Corolario 2.8 Sean V1 y V2 dos espacios vectoriales de dimensi on nita n sobre F y sea f : V1 V2 un isomorsmo. Sean y normas denidas en V1 y V2 , respectivamente. Entonces f y f 1 son aplicaciones continuas cuando en V1 y V2 se consideran las topolog as inducidas por estas normas.

42

Normas de Vectores y Matrices

Demostraci on Probamos la continuidad de f , la de f 1 se demuestra igual. En primer lugar, es f acil demostrar que la aplicaci on : V1 R denida por pxq  pf pxqq es una norma en V1 . Como V1 es de dimensi on nita, y son equivalentes. Existe una constante positiva c2 tal que pxq c2 pxq para todo x P V1 . Sea ahora 0 un n umero real dado. Escojamos de modo que 0 Entonces, si x, y P V1 cumplen que px y q , se sigue pf pxq f py qq  pf px y qq  px y q c2 px y q c2

. c2

Esto demuestra que f es uniformemente continua en V1 . Una consecuencia inmediata es el siguiente resultado anunciado en la demostraci on del Lema 2.4: la inversa de g : Fn a  pa1 , . . . , an q

 a1v1 anvn

es una aplicaci on continua.

2.3.
2.3.1.

Normas de Matrices
Deniciones, Ejemplos y Primeras Propiedades

Dado que Fmn es un espacio vectorial todo lo dicho en la secci on anterior es de aplicaci on a las matrices de tama no m n con elementos en el cuerpo de los n umeros reales o complejos. En particular, todas las normas denidas en Fmn son equivalentes; i.e. generan la misma topolog a,y son funciones continuas. Debemos observar que las propiedades que denen una norma tienen en cuenta las operaciones propias de la estructura de espacio vectorial sobre el que se denen: el producto por escalares y la suma de vectores (desigualdad triangular). Sin embargo las matrices, en algunos casos, se pueden multiplicar. Una norma sobre Fnn se dir a que es una norma de matriz cuando respecto al producto se verica una propiedad similar a la desigualdad triangular para la suma. Tomar en consideraci on esta propiedad de las matrices nos conduce a la siguiente denici on:

2.3 Normas de Matrices

43

Denici on 2.9 .- Sean , y normas denidas en Fmn , Fnp y Fmp , respectivamente. Diremos que , y son consistentes si para todas matrices A P Fmn y B P Fnp se verica pAB q pAq pB q. En particular una norma denida en Fnn se dice que es consistente si pAB q pAq pB q para todas A, B P Fnn . Una norma denida en Fnn consistente tambi en se dice que es multiplicativa o submultiplicativa. Una norma denida en Fnn se dice que es una norma de matriz si es consistente.

Un caso particular importante es el de las normas consistentes (tambi en llamadas en este caso compatibles) con las normas de vector: Si es una norma denida en Fnn y es una norma denida en Fn entonces se dice que es consistente o compatible con la norma de vector si para toda matriz A P Fnn y todo vector x P Fn se tiene que pAxq pAq pxq Ejemplo 2.10 1. - La norma eucl dea en Fmn ser a

m n i 1j 1

 

| aij |2

1
2

A esta norma se le llama tambi en norma de Frobenius y se suele representar por A F . En algunos sitios se le llama tambi en norma de Schur o de HilbertSchmidt. Nosotros utilizaremos el nombre de norma eucl dea o de Frobenius. La norma de Frobenius en Fnn es una norma de matriz. En efecto, teniendo en cuenta que la desigualdad de Cauchy-Schwartz y que
n k 1

aik bkj

44

Normas de Vectores y Matrices

es el producto escalar de la i- esima la de A por la j- esima columna de B , AB


2 F

n i,k 1

| aik |

2 n n aik bkj i,j 1 k 1 n 2


j,k 1

n i,j 1

k 1

| aik |
2 F

k 1 2 F

| bkj |


2

| bkj |2  

2. - La norma 8 en Fmn ser a: A


1 i m 1 j n

m ax |ai,j |

Esta norma en Fnn no es una norma de matriz como lo demuestra el siguiente ejemplo:     1 1 2 2 2 A A  AA  1 1 2 2 y AA  2 1  A A 3. - En general la norma
p

en Fmn se denir a como: A

m n i 1j 1

 

|aij |

1
2

Utilizando la desigualdad de H older se puede demostrar que en Fnn esta norma es una norma de matriz si y s olo si 1 p 2. 4. - Una peque na modicaci on en la denici on de la norma 8 nos permite obtener nn una norma de matriz en F : A

n

1 i,j n

m ax |ai,j |

En efecto, si a  m ax |aij | y b  m ax |bij | entonces


1 i,j n

AB


m ax

n n m ax aik bkj 1i,j n k 1 n


k 1

1 i,j n

m ax
1 i,j n

n k 1

1 i,j n

ab  na nb  A

|aik bkj |

2.3 Normas de Matrices

45

La norma de Frobenius se puede escribir alternativamente de cualquiera de las dos formas siguientes: a) b) A
F

A a1 2 a2 2 an 2 2 2 ... 2 , donde A est a escrita en t erminos de sus vectores columna.

 2 F

trpA Aq

 ra1

a2 an s

P Fnn

2.3.2.

Normas de Matriz Inducidas

Consideremos en Fn y Fm normas }}n y }}m , respectivamente. Es un hecho conocido que las aplicaciones lineales entre espacios vectoriales normados de dimensi on nita son operadores acotados. Que un operador h : E1 E2 entre dos espacios normados es acotado signica que @x P E1 existe una constante M 0 tal que }hpxq} M }x} donde hemos representado con el mismo signo, }}, y sin posibilidad de confusi on,las dos normas denidas en E1 y E2 . Si E1 y E2 son espacios vectoriales de dimensi on nita, hemos visto en el Corolario 2.8 que las aplicaciones lineales son continuas. x a en la esfera unidad S1 de E1 que, por el Lema 2.4, Si x P E1 entonces }x} est es un conjunto compacto en E1 . Por consiguiente, si h es lineal entonces, como las normas son siempre funciones continuas, } } h restringido a S1 alcanza su m aximo x x 1 y m nimo. Sea M  m ax }hpy q}. Entonces }hp }x} } M . Pero }hp }x} }  }x} }hpxq}, de donde se sigue que }hpxq} M }x}.
y S1

Una t ecnica general para obtener normas de matriz a partir de normas vectoriales es la siguiente: Sea A P Fmn y pensemos en A como una transformaci on u operador lineal: A : Fn Fm x Ax

En particular para la aplicaci on lineal A se tiene que @x P Fn existe una constante M 0 tal que }Ax}m M }x}n . Y esto signica que el conjunto
"

}Ax}m : x P Fn, x  0* }x}n

est a acotado superiormente. Consecuentemente, tiene un supremo. Podemos as denir la siguiente funci on: f : Fmn R A f pAq

46

Normas de Vectores y Matrices

donde

f pAq 

0 x F

P

sup n

Ax x

m n

Es claro que el cociente Ax x


m n

es no negativo. Probaremos que f es una norma consistente con las normas de vector que sirven para denirla. Comenzaremos observando que el sup se alcanza y que, por lo tanto, podemos sustituir sup por max. Para ello probamos, en primer lugar, que (supondremos siempre x P Fn ): f pAq  sup Ax m .
x
n

1

En efecto si M Ax
m,

@x P Fn tal que x n 1, con lo que M xsup Ax m . Rec procamen1 te, si M  sup Ax m , entonces M Ax m , @x P Fn tal que x n  1. Sea x 1 x P Fn un vector no nulo arbitrario; entonces xx es un vector unitario, de modo Ax m . Por lo tanto M sup Ax . En conclusi on que M A xx m  x1 x 0xPF f pAq  sup Ax n . x 1
n n n m n n n n n

sup
0 x

Ax m x n

entonces M

Ax m , x n

@x  0. En particular M

Ahora bien, m es una funci on continua respecto de cualquier norma de Fn y tambi en A es una funci on continua (por ser una funci on lineal). Por otra parte, la esfera unidad es un conjunto compacto (respecto de cualquier norma) de Fn , y cualquier funci on continua alcanza sus valores m aximo y su m nimo en ella. As pues f pAq  m ax
x
n 1

Ax

0 x F

m axn

P

Ax x

m n

Demostraremos ahora que f pAq es una norma vectorial consistente con las normas } }m y } }n . Teorema 2.11 .- Sea

normas denidas en Fn y Fm , respectivamente.

2.3 Normas de Matrices

47

a) La funci on real f denida en Fmn por f pAq  m ax


x
n

1

Ax

0 x F

m axn

P

Ax x

m n

es una norma que denotaremos con b) Si A P Fmn y B

m,n .

P Fnp entonces }AB }m,p }A}m,n}B }n,p. } }n,n es una norma de matriz.
m

En particular, si m  n entonces la norma c) Las normas

m,n ,

son consistentes. y

d) Si es cualquier otra norma de matriz consistente con A m,n pAq, @A P Fmn .

n,

entonces

En lo sucesivo, y para evitar una notaci on excesivamente pesada, no escribiremos los sub ndices que asocian cada norma al espacio en el que est a denida y representaremos todas las normas con el s mbolo } }. La raz on es que en todo momento es claro en qu e espacio est a el vector o la matriz sobre el que act ua la norma. As , escribiremos }x} y }A} en vez de }x}n o }A}m,n porque si A P Fmn entonces la norma en Fmn es }}m,n y no se necesita precisar los sub ndices; y, adem as, Ax s olo n tiene sentido si x P F y no se precisa especicar el sub ndice en el correspondiente s mbolo de la norma. Demostraci on.- a) Debemos vericar todos los axiomas que denen las normas de matriz (i) Si A  0 existe x m ax Ax 0.
x

P Fn tal que Ax  0. Por lo tanto

Ax

0y

1

(ii) Para todo P F A

 ||


x

m ax
x

m ax

1

Ax

1

Ax

 ||


A

m ax ||
x

1

Ax

48

Normas de Vectores y Matrices

(iii) Probamos ahora que si A, B efecto AB

P Fmn entonces pA B qx 
Bx m ax
x

AB


Bx

B . En

 p

m ax
x

1

1
Ax

Ax Bx

m ax
x

1

Ax B .

m ax
x

1

m ax
x

1

b) Sean A P Fmn y B

P Fnp. Por denici on AB  m ax ABx }x}1

. AB

Sea x0 P Fp un vector con x0  1 donde se alcanza el m aximo: Ahora bien, para cada matriz X X de donde resulta que Xy

ABx0 .

m ax
y 0

Xy y

X y , @y  0. As AB  ApBx0 q A Bx0 A B x0  A B ,

porque

 1; que es lo que se quer a demostrar. En particular si m  n  p y A, B P Fnn entonces }AB }n,n }A}n,n }B }n,n. Es decir, } }n,n es una norma de matriz.
x0 c) Ya hemos visto que @A P Fnn y @x P Fn , x  0, se tiene que Ax
m

m,n

Y para x  0 se obtiene la igualdad de forma evidente. Por consiguiente, las normas m,n, m y n son consistentes.

2.3 Normas de Matrices

49

d) Tambi en hemos visto m as arriba que existe x0 A Como es consistente con A

P Fn con

x0

 1 tal que


n

Ax0

resulta que x0
n

Ax0

pAq

 pAq,

tal y como se deseaba demostrar.

Ejemplo 2.12 .- Vamos a ver c omo se denen expl citamente las normas de matriz p para p  1, 2, 8. 1. - La norma de matriz 1 : Sea A P Fmn y escribamos esta matriz en funci on de sus columnas A  ra1 a2 an s. Vamos a probar que la norma de matriz inducida por la norma 1 es : A o, equivalentemente, A En efecto, pongamos M
1 1

1 j n

m ax

m i 1

|aij |
1

1 j n

m ax

 1m ax }a } . Vamos a demostrar que M  m ax }Ax}1 . j n j 1 }x} 1 Para ello probamos primero que M }Ax}1 para todo x P Fn con }x}1  1;
1

aj

i.e. que M es una cota superior del conjunto

t}Ax}1 : }x}1  1, x P Fnu,


Y a continuaci on que esta cota se alcanza. Es decir, que existe x0 }x0}  1 y M  }Ax0}1. Sea x P Fn con }x}1

P Fn tal que

 1, y sean px1, . . . , xn) sus componentes. Entonces

}Ax}1  }x1a1 xnan}1 p|x1|}a1}1 |xn|}an}1q p|x1| |xn|q 1m ax }a }  M }x}1  M j n j 1

50

Normas de Vectores y Matrices

Por lo tanto, M es una cota superior de t}Ax}1 : }x}1  1, x P Fn u. Ahora, si el m ax }aj }1 se alcanza, digamos, para la columna k entonces M  }ak }1 .
1 j n

k Tomando x0

 ek  p0, . . . , 0, 1, 0, . . . , 0q P Fn, tenemos que }x0}1  1 y


M

 }ak }1  }Aek }1  }Ax0},  1, x P Fnu que se

de modo que M es una cota superior de t}Ax}1 : }x}1 alcanza. Esto es m ax }aj }1  m ax }Ax}1  }A}1
1 j n

}x}1 1

2. - La norma de matriz 8 : De forma similar a lo que hemos visto m as arriba, vamos a demostrar que la norma de matriz inducida por la norma 8 es A 8  m ax 1in
n n j 1

|aij |.

Pongamos M

 1m ax |aij |. Por una parte in


j 1

Ax 8 

1m ax |a in j 1 ij  M }x}8.
As pues

n n m ax aij xj m ax aij xj 1in j 1 1in j 1   n n

|
x 8

1 k n

m ax |xk |

1 i n j 1

m ax

|aij |

}A}8 

m ax
x

8 1

Ax 8 M.

(2.2)

Para demostrar la desigualdad en sentido contrario vamos a probar que para cada i  1, . . . , n existe un vector xi con }xi }8  1 tal que
n j 1

|aij | 

n aij xi j . j 1

(2.3)

2.4 Sucesiones y Series de Matrices

51

Supuesto esto demostrado es f acil ver que }A}8 i  1, . . . , n

M . En efecto, para cada

}A}8  }x m ax }Ax}8 }Axi }  } 8 1  

n m ax aij xi j 1in j 1 n
1 i nj 1

  |aij |.

m ax

|aij |  M

As pues, debemos demostrar (2.3). Basta encontrar xi tal que aij xi j Pero esta misma identidad nos sirve de denici on: xi j ij  |a a |
ij

on de xi tenemos que siempre que aij  0 y xi j  1 si aij  0. Con esta denici }xi}8  1 y se verica (2.3) porque cada sumando aij xij  |aij | es positivo. En conclusi on
n j 1

}A1}8  }x m ax }Ax}8  M  m ax 1in }8 1


tal y como se deseaba demostrar.

|aij |

3. - La norma de matriz 2 : A la norma de matriz inducida por la norma 2 se le llama tambi en Norma Espectral. Veremos en un tema posterior que tiene un signicado muy importante que todav a no estamos en condiciones de comprender bien.

2.4.

Sucesiones y Series de Matrices

Tal y como hemos dicho en la secci on anterior, el uso de normas nos permite hablar de convergencia de sucesiones de vectores y, por lo tanto, de matrices. El objetivo de esta secci on es introducir las serie de matrices y demostrar un resultado que necesitaremos en un tema posterior.

52

Normas de Vectores y Matrices

Sea tAk u8 on innita de matrices con elementos en Fnm , recordemos k0 una sucesi que F  R o C. Con esta sucesi on formamos otra, la de las sumas parciales Sk

k j 0

Aj ,

0.

Denici on 2.13 La serie


k

8
j 0

existe el l m Sk . Adem as, si S

Aj converge si la sucesi on tSk u es convergente; i.e. si

 kl m S entonces escribiremos 8 k
8 
Aj

 S.

j 0

La convergencia de la serie

8
j 0

8
j 0

}Aj } de la siguiente forma:

Aj se puede reducir a la de la serie num erica

Proposici on 2.14 Si la serie num erica

8
j 0

}Aj }
Aj .

converge para alguna norma de

matriz, tambi en converge la serie matricial

8 

j 0

Demostraci on.- Sea 0 un n umero real dado. Veremos que existe un entero N 0 tal que si p, q N entonces Sp Sq . Esto demuestra que la sucesi on mn tSnu de sumas parciales es una sucesi on de Cauchy. Como F es completo, tSn u converge. En efecto Sp Sq Ahora bien, si
  q     Aj   j p1 
q j p 1

8
j 0

}Aj } 
Aj

p Aj j 0

} }

q j 0

} }

Aj .

}Aj } converge, existe N 0 tal que si p, q N entonces


p Aj j 0

} }

q j 0

} } ,

2.4 Sucesiones y Series de Matrices

53

que es lo que se quer a demostrar. En particular, para matrices cuadradas la serie de potencias gente si lo es la serie num erica

8
j 0

8
j 0

particular de la Proposici on 2.14 pero se demuestra igual teniendo en cuenta que la norma elegida es una norma de matriz. En efecto, basta observar que si Bj  aj Aj entonces }Bj } |aj | }Aj } |aj | }A}j , donde la u ltima desigualdad se debe a que las normas de matriz tienen la propiedad submultiplicativa. Como muchas funciones escalares se pueden denir como series de potencias convergentes en ciertas regiones del plano complejo, la posibilidad de reducir la convergencia de una serie de potencias matriciales a la de sus correspondientes normas permite denir de forma sencilla algunas funciones matriciales. Concretamente, sea f pz q

|aj | }A} . En realidad, este resultado no es un caso


j

aj Aj es conver-

8
j 0

aj z j en un entorno de z

 0 con un radio de P
Fnn . Si hay converge y

convergencia R y consideremos la serie matricial alguna norma de matriz para la que }A} podemos denir f pAq 

8
j 0

aj Aj con A

R, la serie

8
j 0

|aj | }A}j

8
j 0

aj Aj .

En particular, cada una de las siguientes funciones est a perfectamente denidas: eA

 j1! Aj , @A P Fnn. j 0 8 p1qj senpAq  A2j 1 , @A P Fnn . p 2 j 1 q ! j 0 8 p1qj 2j nn cospAq  p2j q! A , @A P F .


j 0

De la misma forma se podr an denir otras funciones matriciales como ln A, tanpAq,

54

Normas de Vectores y Matrices

etc. Nos interesa especialmente la serie geom etrica a 1z 1

8
j 0

 p1 zq1 si |z| 1:

z j que sabemos que converge

P Fnn y }A} 1 para alguna norma de matriz, entonces 8 In A es invertible. Adem as, en tal caso pIn Aq1  Aj y }pIn Aq1 }
Proposici on 2.15 Si A
j 0

1 }A}

Demostraci on.- Si }A} 1 entonces la serie geom etrica te, y por la Proposici on 2.14 la serie matricial pongamos Sk Entonces

8
j 0

8
j 0

}A}j es convergen
8
j 0

Aj converge. Sea B

Aj y

k j 0

Aj .

pI AqSk  pIn AqpIn A Ak q  In Ak1. Como l m Sk  B resulta que k8


k

l m pIn AqSk

 pIn AqB,

y tambi en

 kl m pI Ak1 q. 8 8 n Ahora bien, l m pIn Ak1 q  In porque }In Ak1 In } k8


k

l m pIn AqSk

num erica

t}A}k u converge a cero por ser }A} 1. En consecuencia pIn AqB  In y pIn Aq1  B 

}A}k1 y la sucesi on

8
j 0

Aj .

2.4 Sucesiones y Series de Matrices

55

Finalmente

}pIn Aq1} 

 8      Aj   j 0 

8
j 0

}A}j  1 1}A} .

56

Normas de Vectores y Matrices

Cap tulo 3

Valores singulares

3.1.

Introducci on

Los valores singulares juegan un papel central en el a lgebra lineal num erica actual. Son esenciales para calcular de forma able cantidades tan importantes como el rango de una matriz o la distancia de una matriz no singular al conjunto de las matrices singulares. Como tantas veces en matem aticas, no fue la necesidad pr actica (derivada, por ejemplo, del c alculo num erico) sino la necesidad de profundizar en el conocimiento lo que produjo el surgimiento de los valores singulares. Por otra parte, no ha sido hasta el reciente desarrollo del a lgebra lineal num erica cuando tal concepto ha adquirido la importancia que actualmente tiene e incluso la denominaci on que ahora le estamos dando. En efecto, fue en la segunda parte del siglo XIX cuando algunos ge ometras se preguntaron, utilizando lenguaje actual, por la posibilidad de reducir unitariamente una forma cuadr atica a forma diagonal. Entre los matem aticos que contribuyeron 57

58

Valores singulares

a la soluci on de este problema se encuentran nombres tan famosos como Eugenio Beltrami, Camille Jordan, James Joseph Sylvester, Erhard Scmidt o Hermann Weyl. Una breve e interesante historia de los valores singulares puede encontrarse en el report de G. W. Stewart: On the early history of the Singular Value Decomposition que se puede obtener en la direcci on http://citeseer.ist.psu.edu/stewart92early.html o mediante ftp an onimo en thales.cs.umd.edu en el directorio pub/reports. En nuestro proceso hacia la denici on de los valores singulares y del teorema central de este cap tulo (El Teorema SVD) necesitamos recordar el concepto de matriz unitaria. A ello dedicamos la primera secci on.

3.2.
x, y

Matrices Ortogonales y Unitarias

Comenzamos repasando los conceptos de producto escalar y ortogonalidad. Si P Fn entonces el producto escalar de y y x es

x, y  '
%

$ n ' y i xi &
i 1 n i 1

 yT x  yx

si F  R, si F  C

Por lo general supondremos que F  C de modo que el producto escalar de x y y lo escribiremos como un producto de matrices; i.e. y x. Deberemos entender que en el caso en que los vectores sean reales y hablemos del producto escalar en Rn entonces se debe sustituir por T . Debe observarse que para todo x P Cn x x 
n i 1

y i xi

|xi|2  }x}2 2.

Esta forma de expresar la norma eucl dea de un vector, la usaremos muy a menudo. Un vector diremos que es unitario si su norma es 1. Dos vectores se dice que son ortogonales si su producto escalar es cero: xKy

yx  0.

3.2 Matrices Ortogonales y Unitarias

59

N otese que y x y x y son n umeros complejos conjugados: x y pero si x, y

 yx,

P Rn entonces xT y  yT x. Dos conjuntos X, Y Fn son ortogonales si cada vector de X es ortogonal a cada vector de Y . Escribiremos, en tal caso, X K Y . Si S Fn es un subconjunto
denotaremos SK Independientemente de si S es un subespacio vectorial o no, S K siempre lo es, y lo llamaremos el subespacio ortogonal de S . Abusando de lenguaje diremos que un conjunto de vectores no nulos es ortogonal si cada vector es ortogonal a todos los dem as: S ortogonal @x, y P S, x y  0. Si, adem as, todos los vectores del conjunto son unitarios entonces el conjunto se dice que es ortonormal : S ortonormal

 ty P Fn|xy  0, @x P S u.

S ortogonal y @x P S, }x}2  1.  tv1, . . . , vtu ortogonal son

Proposici on 3.1 Todos los vectores de un conjunto S linealmente independientes.


t i 1

Demostraci on.- Si

ai vi

 0, entonces para j  1, . . . , t 
t i 1

0  vj
Por lo tanto, cj

t i 1

ai vi

v q  c pv v q  c }x }. ai pvj i j j j j j

 0.

Denici on 3.2 (a) Una matriz U P Cnn es unitaria si sus columnas forman una base ortonormal de vectores de Cn . (b) Una matriz P P Rnn es ortogonal si sus columnas forman una base ortonormal de vectores de Rn .

60

Valores singulares

Hay algunas condiciones equivalentes a ser unitaria (aplicado a F para matrices ortogonales):

 R sirven

Proposici on 3.3 Para U (i) U es unitaria.

P Cnn las siguientes condiciones son equivalentes:  U 1 .

(ii) U es no singular y U (iii) U U

 In.

(iv) U es unitaria. (v) Las las de U forman un sistema ortonormal de vectores de Cn . (vi) Para todo x P Cn se tiene }x}2

 }U x}2

La demostraci on de estas propiedades es m as o menos inmediata salvo, quiz a, la condici on (vi). Desde luego, si U es unitaria entonces

2 }U x}2 2  pU xq U x  x U U x  x x  }x}2
donde hemos usado las condiciones (iv) y (iii) equivalentes a ser U unitaria (i.e. U U  In ). El rec proco se puede demostrar siguiendo las siguientes ideas: Si }U x}2  }x}2 entonces xU U x  xx, que equivale a xpU U Inqx  0. Teniendo en cuenta que U U In es herm tica (sim etrica en el caso real de matrices ortogona les) es f acil ver que x pU U In qx  0 implica U U In  0. En efecto, si ponemos A  U U In , x Ax  0 para todo x P Fn implica que si ei  p0, . . . , 1, . . . , 0q es el i- esimo vector can onico entonces e i Aei  0 aii  0 pei ej qApei ej q  0 Repaij q  0. pei iej qApei iej q  0 Impaij q  0 Las matrices unitarias forman un subgrupo multiplicativo del Grupo General Lineal, llamado Grupo Unitario. La condici on (vi) de la Proposici on 3.3 indica que el grupo unitario es el grupo de isometr as para la norma eucl dea.

3.2 Matrices Ortogonales y Unitarias

61

Denici on 3.4 Una norma } } en Cmn se dice que es unitariamente invariantes si @A P Cmn y para todo par de matrices unitarias U P Cmm y V P Cnn se cumple que }U AV }  }A}. Proposici on 3.5 Las normas invariantes.

} }2 y } }F

denidas en Cnn son unitariamente

Demostraci on.- Recordemos que }A}2 , si U es F  trpA Aq  trpAA q. As unitaria 2 }U A}2 F  trpA U U Aq  trpA Aq  }A}F .
De la misma forma, si V es unitaria

2 }AV }2 F  trppAV qpAV q q  trpAV V A q  trpAA q  }A}F .


Por lo tanto, si U y V son unitarias:

}U AV }F  }U A}F  }A}F .
Por otra parte, }A}2

 }m ax }Ax}2 . Entonces, si U es unitaria x}  1


2

}U A}2  }m ax }U Ax}2 . x}  1
2

Pero por ser U unitaria, }U x}2

 }x}2, de modo que }U Ax}2  }Ax}2 y }U A}2  }m ax }U Ax}2  m ax }Ax}2  }A}2 . x}  1 }x} 1
2 2

Tambi en, si V es unitaria los conjuntos

tx P Cn|}x}2  1u  tV x P Cn|}V x}2  1u


son iguales. Entonces

}AV }2  }m ax }AV x}2  m ax }AV x}2  m ax }Ay }2  }A}2 . x} 1 } V x } 1 }y} 1


2 2 2

En consecuencia }U AV }2

 }A}2.

62

Valores singulares

3.3.

Valores singulares

Hay varias formas de introducir los valores singulares de una matriz. Tal y como se ha mencionado en la Introducci on de esta Lecci on, hist oricamente los valores singulares son el resultado de la b usqueda de una forma de reducir las formas cuadr aticas a forma diagonal mediante cambios de base ortonormales. Este hecho, sin embargo tiene un signicado geom etrico que no debe pasar desapercibido: Las aplicaciones lineales transforman las esferas unidad en hiperelipses. Una hiperelipse es la generalizaci on a m dimensiones de una elipse. Podr amos denirla como la supercie que se obtiene al estirar o comprimir la esfera unidad en m direcciones ortogonales por factores 1 , 2 ,. . . , m (posiblemente cero). Es decir, si jamos m vectores ortonormales u1 , . . . , um P Fm , los vectores 1 u1 ,. . . , m um son los semiejes de la hiperelipse con longitudes 1 ,. . . , m .

 tx P Fn|}x}2  1u es la esfera unidad y A P Fmn entonces ApS n1 q es una hiperelipse. La Figura 3.1 representa el caso n  m  2 y F  R.

Si

S n1

v1

s2 u 2 s1 u 1

v2

Figura 3.1: Las matrices transforman esferas en elipses El hecho de que las aplicaciones lineales (o matrices) transformen la esfera unidad en hiperelipses no es obvia y quedar a demostrada cuando probemos el llamado

3.3 Valores singulares

63

Teorema SVD. Por ahora acept emosla y veamos qu e signica en t erminos de matrices. Supongamos que la matriz de la aplicaci on lineal es A P Fmn y que, por sencillez, rangpAq  n m. Notemos que, como aplicaci on lineal, A : Fn Fm . Tal y como hemos mencionado, la hiperelipse queda determinada, en principio, por m vectores ortonormales tu1 , . . . , um u y las correspondientes longitudes de los semiejes 1 ,. . . , m que los vamos a suponer ordenados de forma que 1 2 m 0. As i ui es el i- esimo semieje m as largo de ApS n1 q. As pues, n1 para i  1, . . . , m i ui P ApS q Im A. Pero como los vectores tu1 , . . . , um u son ortonormales, y por lo tanto son linealmente independientes, si rangpAq  r debe haber a lo sumo r vectores i ui linealmente independientes. De todo ello se sigue que hay r de los i que son distintos de cero a lo m a. En otras palabras, si la hiperelipse es la imagen por A de la esfera unidad, debe estar en Im A as que s olo puede contener r vectores linealmente independientes. Finalmente sean tv1 , . . . , vn u S n1 las anteim agenes de los semiejes no nulos de la hiperelipse: Avi

 i ui ,

i  1, . . . , r.

En este momento no es claro por qu e pero admitamos que los vectores vi son ortogonales (y, por lo tanto, ortonormales porque est an en la esfera unidad). La condici o , . . . , r, se puede escribir en forma matricial: Si  n Avi  i u  i , i  1   u1 ur y V  v1 vr tenemos que ponemos U AV U ,   Diagp1 , . . . , r q.

P Fmn y V P Fnn matrices cuyas columnas son vectores ortonormales. siendo U podemos Si escogemos base ortonormal de Ker V  Ay  que sean ortogonales a los de   V que es unitaria y AV  U 0 . Por formar una matrix unitari V  V consiguiente   V . 0 V U AU A esta factorizaci on de A se le llama Descomposici on en Valores Singulares Reducida o Econ omica de A. O, m as abreviadamente, SVD Reducida de A. Hay tambi en una Descomposici on en Valores Singulares Completa de A, que es la que aparece en la mayor a de los libros que tratan el tema, aunque en la mayor parte de las aplicaciones es la descomposici on reducida la que se utiliza. Pasar de no es una matriz unitaria y una descomposici on a la otra es muy f acil: Si m n, U no tiene el tama no de A. Una descomposici on completa es una que cumpla estos dos

64

Valores singulares

requisitos. Para ello basta ampliar el sistema de vectores ortonormales tu1 , . . . , un u hasta una base ortonormal de Cm . Tal cosa siempre es posible porque los vectores u1 , . . . , un son linealmente independientes y se pueden ampliar hasta una base de Cn . Luego basta aplicar el m etodo de Gram-Schmidt para obtener la base ortonormal. Sea entonces tu1 , . . . , un , un1 , . . . , um u una base ortonormal de Cm y pongamos U Entonces

u1

un un1


um


y 

0mnn

  U U V  U

Por lo tanto, A  U V es una descomposici on en valores singulares completa de A. N otese que de una descomposici on en valores singulares completa de A se obtiene una reducida sin m as que suprimir las las cero de y las correspondientes columnas de U y V . Denici on 3.6 Sea m, n enteros positivos y A P Cmn . Una descomposici on en valores singulares (completa) de A es una factorizaci on A  U V donde U

0mnn

V  A. U

En reales no negativos ordenados de mayor a menor y se llaman valores singulares de A. Adem as, a los vectores u1 , . . . , um y v1 , . . . , vn que forman las columnas de U y V se les llama vectores singulares de A por la izquierda y por la derecha, respectivamente. Si A P Rmn basta cambiar matriz unitaria por matriz ortogonal. Nos queda establecer de manera rigurosa que tal descomposici on es siempre posible y que los valores singulares est an determinados de forma u nica por A. Admiti endolo, deber a ya ser claro que, en efecto, la imagen de la esfera unidad en

P Cmm y V P Cnn son unitarias y es diagonal. Adem as, $   Diagp1 , . . . , n q ' ' si m n & 0mnn  ' '  %  Diagp1 , . . . , m q 0mnm si n m cualquier caso, 1 p 0, p  m ntm, nu son n umeros

3.3 Valores singulares

65

Fn por A  U V es una hiperelipse:V por ser unitaria preserva la esfera, la deforma estirando o encogiendo la esfera en direcciones ortogonales y U , de nuevo unitaria, la gira o reeja. Todo lo anterior tiene sentido una vez que demostremos el siguiente resultado fundamental Teorema 3.7 (Teorema SVD) Toda matriz A P Fmn admite una descomposici on en valores singulares. Adem as, los valores singulares est an determinados de forma u nica, y, si A es cuadrada y sus valores singulares son todos distintos, entonces los vectores singulares est an tambi en determinados de forma u nica salvo producto por un n umero complejo de m odulo 1. Demostraci on.- Supondremos F  C y todo lo que vamos a decir es de aplicaci on a matrices de n umeros reales cambiando la palabra unitaria por ortogonal. Dado que el caso de A  0 es trivial, supondremos que A  0 y procederemos por inducci on sobre n, el n umero de columnas de A. Supondremos, adem as, que m n. Si fuera n m, y una vez demostrado el Teorema con m n, lo aplicar amos a A . As , existir an matrices unitarias U y V tales que A  U V Entonces A  pA q  V U . Como los valores singulares son n umeros reales  y A  V U con U y V unitarias. Sea entonces n  1 y m 1. Ponemos U V U  }A}2 y V  1. As  }A1} A,
2

1  }A } A }A}2 1  A.
2

es un vector columna Para n  1, A P Cm1 es un vector columna y por lo tanto U V es una descomposici unitario. As AU on reducida de A que puede extenderse a una descomposici on completa tal y como hemos visto m as arriba. Consideremos ahora que el Teorema ha sido demostrado para matrices de tama no m p (p n 1). Sea A P Cmn y 1  }A}2 . Como }A}2  m ax }Ax}2
n

existe un vector unitario v1 P C , }v1 }2  1, tal que 1  }A}2  }Av1 }2 . Sea 1 u1  }Av Av1 . As }u1 }2  1 y Av1  1 u1 . Extendamos u1 y v1 hasta bases orto1 }2 m normales de C y Cn , respectivamente, y sean U1 y V1 las matrices, unitarias, cuyas

}x}2 1

66

Valores singulares

columnas son los vectores de esas bases. Escribamos U1 Entonces U AV


1

u1 U 1 ,

V1




u1 V 1 .


Av  1 (recordemos que u Por una parte Av1  1 u1 implica que u 1 u1  1 porque 1 1 u1 es un vector unitario). Adem as U 1 Av1  1 U 1 u1 . Pero las columnas de U 1 son pues ortogonales a u1 y esto equivale a U 1 u1  0. As U AV
1 1

  u u Av1 u 1 1 AV 1 . A v1 V 1  1 U1 U 1 Av1 U 1 AV 1

u 1 Av1 u1 AV 1 . U 1 AV 1 0

Veamos que tambi   en u1 AV 1  0. Pongamos w  u1 AV 1 y B  U 1 AV 1 , S  AV1 y z  1 . Como la norma espectral es consistente con la norma eucl U1 dea w

}S }2}z}2 }Sz}2   p
2 1

     1 w 1     0 B w   

   2 w w  1     Bw 2

2 w wq  p1

  wwq1{2  1 

 w  2

2  p1 wwq1{2}z}2.

2 wwq1{2. Pero la norma espectral es unitariamente invariante As pues, }S }2 p1 2 (Proposici on 3.5); por lo tanto 1  }A}2  }S }2 p1 wwq1{2; lo cual implica que w  0 tal y como quer amos demostrar.

En consecuencia

U AV
1

1 0 . 0 B

Debe notarse que B es la restricci on de A al subespacio ortogonal a u1 ; i.e. K p m1qpn1q u1 . Adem as B P C . Por la hip otesis de inducci on, B admite una pm1qpm1q y V2 P descomposici on en valores singulares: B  U2  2 V2 con U2 P C Diagp2 , . . . , n q Cpn1qpn1q unitarias y 2  . As 0


1 0 1 0 U1 AV1 0 V2 0 U2

1 0 0 U2



1 0 0 B



1 0 0 V2

Diagp1 , 2 , . . . , n q . 0

3.3 Valores singulares

67

Si ponemos

1 U 

tenemos que U AV  y A  U V . Esto prueba la existencia de la descomposici on de A en valores singulares, excepto el ordenamiento de los valores singulares. Seg un la hip otesis de inducci on los valores singulares de B est an ordenados de mayor a menor. Basta entonces demostrar que 1 pAq 1 pB q. Es decir, }A}2 }B }2 , o bien, m ax }Ax}2 m ax }Bx}2 . Adem as, como la norma espectral es unitariamente invariante podemos suponer que A Sea x0


0 U1 0 U2

y V

 V1

1 0 , 0 V2

}x}2 1

}x}2 1

1 0 . 0 B

P Cn1 un vector unitario para el que }Bx0}  }m ax }Bx}2 y sea x}  1


2

y Claramente y y
2

0 x0

P Cn.

 x 0 x0  1, de modo que m ax }Ax}2 }Ay }  y A Ay  x ax }Bx}2 , 0 B Bx0  }Bx0 }  m }x} 1 } x}  1


2

tal y como se deseaba demostrar. La unicidad de los valores singulares as como el resto del teorema lo demostraremos una vez analizadas unas cuantas propiedades importantes de los valores singulares. Observaciones 3.8 Si A P Rmn entonces existen matrices ortogonales P y Q P Rnn tales que A  P QT con 
$   Diag , . . . , ' 1 n ' & ' ' % 

P Rmm

0mnn

si m n


Diagp1 , . . . , m q 0mnm p

si n m.

En cualquier caso, 1 negativos.

0, p

m ntm, nu son n umeros reales no

68

Valores singulares

3.4.

Propiedades de los valores singulares

A continuaci on analizamos algunas propiedades que se derivan del Teorema SVD. Proposici on 3.9 Si r es el n umero de valores singulares de A distintos de cero, entonces rang A  r. La demostraci on es una consecuencia inmediata de que el rango de una matriz no var a si la multiplicamos por matrices invertibles.

Proposici on 3.10 Si A  U o n de A V es una descomposici  singulares, r  rang A, y U  u1 u2 um y V  v1 v2 Im A  u1 , . . . , ur y Ker A  vr1 , . . . , vm .

P Cmn  en valores vn entonces

Demostraci on.- Sobre la base de que V y U son invertibles es f acil ver que ImpAV q  ImpAq y Ahora bien, KerpU Aq  KerpAq.

 u1, . . . , ur . Por otra parte, como tv1 , . . . , , vm u es una base ortonormal de Cn , si x P Cn entonces m x ci vi  V c con c  pc1 , . . . , cm q. As
i 1

ImpAV q  ImpU q  1 u1 , . . . r ur

ici  0, 1 i r x 

x P KerpAq Ax  0 AV c  0 U AV c  0 c  0
m i r 1

Esto signica que KerpAq  vr1 , . . . , vm De forma similar se prueba

ci vi .

. P Cmn  en valores vn entonces

Proposici on 3.11 Si A  U o n de A V es una descomposici  singulares, r  rang A, y U  u1 u2 um y V  v1 v2 Im A  v1 , . . . , vr y Ker A  ur1 , . . . , um .

3.4 Propiedades de los valores singulares

69

Esta proposici on tambi en se puede ver como una consecuencia inmediata de la anterior teniendo en cuenta las siguientes propiedades cuya demostraci on es muy simple pIm AqK  Ker A y pKer AqK  Im A La siguiente proposici on nos proporciona una forma pr actica de calcular los valores singulares de una matriz: Proposici on 3.12 Los valores singulares de A P Cmn distintos de cero son las ra ces cuadradas positivas de los valores propios distintos de cero de A A y tambi en de los de AA .

Demostraci on.- Probaremos que los valores singulares de A son las ra ces cua dradas positivas de los valores propios de A A. Que tambi en son los de AA se demuestra igual. Tambi en es consecuencia de la siguiente propiedad: Si A P Fmn y B P Fnm entonces los valores propios distintos de cero de AB y BA son los mismos. La explicaci on de esta propiedad est a contenida en la siguiente ecuaci on:


Im 0


A
In



AB 0 B 0



Im A 0 In


0 0 . B BA
 

I A Como m 0 In

AB 0 0 0  , las matrices y son semejantes; In B 0 B BA  Im AB 0 i.e. tiene los mismos valores propios. Adem as, det  n detpIm B I n   Im 0 m AB q y det B In BA  detpIn BAq. Por lo tanto, las matrices AB y BA tienen los mismos valores propios distintos de cero. Im 0 Si A  U V es una descomposici on de A en valores singulares entonces A A  V U U V

1

 V T V

porque es una matriz de n umeros reales. Como V es unitaria V  V 1 , por lo que A A y T son semejantes. Es decir, tienen los mismos valores propios. Pero
2 2 T  Diagp1 , . . . , r , 0, . . . 0q P Rnn

70

Valores singulares

2 con r  rangpAq. Por lo tanto 1 A A. .

r2 son los valores propios de T y de

Recordemos ahora que los valores propios son u nicos para cada matriz. Esto demuestra la segunda parte del Teorema SVD Corolario 3.13 Los valores singulares de A est an determinados de forma u nica. Para probar la u ltima parte del Teorema SVD; es decir, que si A es cuadrada y sus valores singulares son todos distintos, entonces los vectores singulares est an tambi en determinados de forma u nica salvo producto por un n umero complejo de m odulo 1, debemos recordar lo siguiente sobre los valores propios de una matriz: Si M P Cnn y sus valores propios son distintos dos a dos entonces admite un sistema completo de vectores propios linealmente independientes. Esto es una consecuencia de que a valores propios distintos corresponden vectores propios linealmente independientes. Si M tiene n valores propios distintos hay n vectores propios linealmente independientes; y como est an en un espacio de dimensi on n deben ser una base. Ahora bien, si vi es un vector propio asociado al valor propio i entonces M vi  i vi . Y cualquier otro vector propio wi asociado al mismo valor propio debe ser propor cional a vi ; es decir, existe P C tal que wi  vi . Ahora, si T  v1 v2 vn entonces T P Cnn es invertible y T 1 M T

 Diagp1, . . . , nq

(3.1)

Y rec procamente, si T P Cnn es una matriz invertible que verica (3.1) con i  j , entonces la i- esima columna de T es un vector propio asociado al valor propio i . Aplicando todo esto a la matriz A A y teniendo en cuenta la demostraci on de la Proposici on 3.12 tenemos que V A AV y tambi en U AA U
2 2 2  Diagp1 , 2 , . . . , n q, 2 2 2  Diagp1 , 2 , . . . , n q.

Esto quiere decir que las columnas de V son una base ortonormal de vectores propios de Cn respecto de A A; y las de U son una base ortonormal de vectores propios de Cn respecto AA . Y, adem as, si A  U1 V1 es otra descomposici on de A en valores

3.4 Propiedades de los valores singulares

71

1 singulares, entonces vi  vi (i- esimas columnas de V y V1 ). Como en este caso son, vi  ||2 v 1 v 1  ||. Es decir, es adem as, vectores unitarios, tenemos que 1  vi i i un escalar de m odulo 1. Para las columnas de U sirve un razonamiento similar.

La unicidad de los valores singulares produce la siguiente consecuencia: Proposici on 3.14 Si A P Cmn y 1 p 0, p  m ntm, nu, son sus valores 2 2 . p singulares, entonces }A}2  1 y }A}F  1 Demostraci on.- En efecto si A  U V es una descomposici on en valores singulares de A, como las normas }}2 y }}F son unitariamente invariantes tenemos

}A}2  }}2

}A}F  }}F .

2 2 . Lo segundo es inmediato por p Basta probar que }}2  1 y }}F  1 la propia denici on de la norma de Frobenius. En cuanto a lo primero, supongamos por sencillez que m n y sea x P Cn un vector arbitrario de norma eucl dea 1. Entonces

}x}2 

2 2 |x |2 1 |x1|2 n n

1 |x1|2 |xn|2  1}x}2  1,

donde hemos utilizado que 1 e1  p1, 0, . . . , 0q P Cn entonces }e1 }2 1


2

n y que }x}2  1. Adem as, resulta que si  1 y }e1}2  1. Esto prueba que

 }m ax }x}2  }}2 . x}  1 n son sus valores singulares entonces

Proposici on 3.15 Si A P Cnn y 1

| detpAq|  1 . . . n
res, Demostraci on.- Si A  U V es una descomposici on de A en valores singuladetpAq  detpU q detpq detpV q.

Pero U y V son unitarias. Entonces, por una parte, U U  In y por otra detpU q  detpU q porque el conjugado de cualquier suma y producto de n umeros complejos es

72

Valores singulares

la suma o producto de los conjugados de dichos n umeros. As pues, 1 detpU q detpU q  detpU qdetpU q  | detpU q|2 . En conclusi on,

 detpInq 

| detpU q|  | detpV q|  1,
y

| detpAq|  | detpq|  1 . . . n. P
Cnn es invertible y 1

Proposici on 3.16 Si A

1 singulares entonces los valores singulares de A1 son

}A1}2  1 .
n

n son sus valores 1 . En particular,


n 1

Demostraci on.- Si A  U V es una descomposici on en valores singulares de A y es invertible, entonces A1  V 1 U . Notemos que 1  Diag y que 1 1

1 1 ,..., 1 n

1 . Existe una matriz de permutaci on


n

0 0  P  . . . 1

0 1 . . .

1 0   . . .

0 0

1 1 ,..., . Si ponemos V1  V P T y U1  U P T resulta tal que P 1 P T  Diag n 1 que U1 y V1 son unitarias, porque el producto de matrices unitarias es una matriz es una descomposici unitaria, y A1  V1 P 1 P T U1 on en valores singulares de A1 . Como }A1 }2 es el mayor valor singular de A1 la conclusi on es inmediata. La descomposici on de A en valores singulares nos proporciona una forma especialmente u til de escribir A como suma de matrices de rango 1:

3.5 Aproximaci on a matrices de menor rango

73

Proposici on 3.17 Si A  U V singulares y rangpAq  r entonces

P Cmn es una descomposici on de A en valores


A
r i 1

donde U  u1 um , V singulares positivos de A.

v1

i ui vi
vn y 1


r 0 son los valores




Demostraci on.- Basta poner  1 2 r , i

Diagp0, . . . , i , . . . , 0q 0 0 0

donde Diagp0, . . . , i , . . . , 0q P Crr y i aparece en la i- esima posici on. Es claro que A  Debe notarse que
  
r i 1

U i V y que U i V
r i 1

 iuivi.

con Ur  u1 ur , Vr  v1 vr y r posici on reducida en valores singulares de A.

i ui vi

 Ur r Vr


 Diagp1, . . . , r q, es una descom-

3.5.

Aproximaci on a matrices de menor rango

Una de las aplicaciones m as interesantes del Teorema SVD es que nos permite calcular el rango de una matriz con bastante abilidad. De hecho, el Teorema SVD nos da mucho m as que eso, nos proporciona una medida de esa abilidad. Ello es consecuencia del siguiente teorema que nos proporciona una cota de la distancia que hay de una matriz al conjunto de las matrices de rango menor que ella. Teorema 3.18 .- Sea A negativo. Entonces donde 1

P Fmn una matriz de rango r; y sea k r un entero no


m n
rang B

2 . . . r 0 son los valores singulares no nulos de A.

p qk

}A B }2  k1

74

Valores singulares

Demostraci on.- Tal y como viene siendo habitual demostraremos que k1 es una cota superior alcanzable del conjunto de n umeros

t}A B }2 : rangpB q ku; es decir, que para cualquier matriz B P Fmn con rangpB q k se tiene que }A B }2 k1 y que existe una matriz Ak P Fmn con rangpAk q  k tal que }A Ak1 }2  k1 .
Sean U

P Cmm y V P Cnn matrices unitarias tales que


U AV

D

r 0 0 0

con r

 Diagp1, 2, . . . , r q.

Observemos que como m ntn, mu r k tenemos que k 1 n. Sea Vk1 la submatriz de V formada por sus primeras k 1 columnas. Como las columnas de Vk1 son ortonormales, dim Im Vk1  k 1. Sea ahora B P Fmn una matriz cualquiera tal que rang B k . Esto signica que dim KerpB q  n rangpB q n k . Tanto Ker B como Im Vk1 son subespacios vectoriales de Fn , pero dim Ker B dim Im Vk1 n 1. Esto signica que Ker B X Im Vk1  t0u y, en consecuencia, hay un vector x P Ker B X Im Vk1 no nulo que podemos tomarlo de norma 1: x 2  1. Ahora
2 2 2 2 2 }A B }2 2 }pA B qx}2  }Ax Bx}2  }Ax}2  }U V x}2  }V x}2 porque x P Ker B y U es unitaria. Dado que x P Im Vk1 es ortogonal a las u ltimas n k 1 columnas de V . Es decir, vi x  0 para i  k 2, . . . , n. Por lo tanto, si y  V x entonces las n k 1 u ltimas componentes de y son iguales a cero. As pues, teniendo en cuenta que k r 2 2 2 2 }V x}2 2  1 |y1 | k1 |yk1 | . Como 1 k1 deducimos que 2 2 2 2 }V x}2 2 k1 p|y1 | |yk1 | q  k1 }y }2 porque yk2   yn  0. Finalmente, }y }2  }V x}2  }x}2  1 porque V es

una matriz unitaria y x un vector de norma eucl dea igual a 1. En consecuencia, 2 }A B }2 k1, tal y como se deseaba demostrar.

3.5 Aproximaci on a matrices de menor rango

75

Veamos ahora que existe una matriz Ak de rango k tal que }A Ak }2 Pongamos Ak  U Dk V , siendo Dk

 k1.

Diagp1 , . . . , k q 0 0 0

P Cmn.

Teniendo en cuenta que la norma espectral es unitariamente invariante, resulta que

}A Ak }2  }U pD Dk qV }2  }D Dk }2.
Pero D Dk

Diagp0, . . . , 0, k1 , . . . , r q 0 0 0

cuyos valores singulares no nulos son k1 . . . r porque existe una matriz de permutaci on -y en consecuencia unitaria- Q tal que Q pD Dk qQ 
T

Diagpk1 , . . . , r q 0 0 0

Por lo tanto

}A Ak }2  }D Dk }2  k1,

lo que concluye la demostraci on. Este teorema nos proporciona, como corolario, la distancia de una matriz no singular a la matriz singular m as pr oxima en la norma espectral: el valor singular m as peque no de la matriz no singular. Corolario 3.19 .- Si A P Cnn es una matriz no singular y 1 son sus valores singulares, entonces m n
det B

2 . . . n 0

p q0

}A B }2  n.

Demostraci on.- det B

 0 si y s olo si rangpB q n 1. Por el teorema anterior m n }A B }2  m n }A B }2  n. detpB q0 rangpB qn1

Una consecuencia inmediata de este Corolario es el siguiente

76

Valores singulares

Corolario 3.20 El conjunto de las matrices de rango completo de Cmn es abierto. Demostraci on.- En efecto, suponiendo, por sencillez que m n, tenemos que si mn APF y rangpAq  n entonces las matrices de rango menor que n m as pr oximas a A est an a una distancia n , medida en la norma espectral. En consecuencia, cualquier bola abierta con centro en A y radio r n est a completamente contenida en el conjunto de las matrices de rango completo. Esto demuestra que este conjunto es abierto.

3.6.

La inversa de Moore-Penrose
A  U V ,  Diagp1 , . . . , n q

Ya hemos visto en la Proposici on 3.16 que si es una descomposici on en valores singulares de A P Cnn y esta es invertible entonces U , A 1  V  Diag 1 1 ,..., n 1

 VP y U  U P , P una matriz de permutaci con V on, es una descomposici on en valores singulares de A1 . Podemos usar esta idea para generalizar el concepto de inversa a inversa generalizada (o pseudoinversa) que juega un papel fundamental en varias partes de la matem atica y en particular en la soluci on del problema de m nimos cuadrados. Hay varias inversas generalizadas (ver [2]). Aqu s olo trataremos de la llamada inversa generalizada de Moore-Penrose o, simplemente, inversa de Moore-Penrose o pseudoinversa de Moore-Penrose. En MATLAB se utiliza el comando pinv para calcularla. Supongamos que A singulares no nulos y

P Cmn y r  rangpAq. Sean 1 r 0 sus valores





A  U V ,


Diagp1 , . . . , r q 0 0 0

una descomposici on de A en valores singulares. Pongamos :

 Diag

1 1 ,..., 1 r 0

0 0

3.6 La inversa de Moore-Penrose

77

y denamos

A:

 V :U .

Denici on 3.21 A la matriz A: se le llama inversa generalizada o pseudoinversa de Moore-Penrose de A. En los ejercicios se presentan algunas propiedades importantes de la inversa de Moore-Penrose. En particular, la denici on dada aqu no es la que aparece habitualmente en los libros cl asicos, aunque es la que mejor se adapta a nuestras circunstancias. La denici on habitual es la siguiente: Es la u nica matriz que cumple las siguientes cuatro propiedades:

piq piiiq

AA: A  A, A: A  pA: Aq ,

piiq pivq

A: AA:  A: , AA:  pAA: q .

Se puede demostrar que la Denici on 3.21 es equivalente a estas cuatro condiciones. En cualquier caso, a primera vista en la Denici on 3.21 no parece que se pueda asegurar que hay una u nica inversa de Moore-Penrose para cada A. En efecto, la denici on depende de la elecci on de las matrices U y V en la descomposici on de A en valores singulares y estas no son, en general, u nicas. Nos proponemos demostrar que, a pesar de la arbitrariedad en la elecci on de los vectores singulares por la izquierda y por la derecha, la inversa de Moore-Penrose es u nica: Proposici on 3.22 Para cada A P Cmn hay una u nica inversa de Moore-Penrose. Demostraci on.- Sea A  U V , 
 

Diagp1 , . . . , r q 0 0 0

una descomposici on en valores singulares de A, r  rangpAq. Y sea A:  V : U la correspondiente inversa de Moore-Penrose. Por la Proposici on 3.10 las r primeras columnas de U y V forman bases ortonormales de  ImpAq y de ImpA   q, respectivamente. De acuerdo con esto escribimos V  V1 V2 y U  U1 U2 con V1 P Cnr y U1 P Cmr . Si adem as, ponemos r

 Diagp1, . . . , r q

1 entonces r  Diag

1 1 ,..., 1 r

78

Valores singulares

A  U1 r V1

y A:

1  V1 r U1 .

Ahora, si hubiera otra descomposici on de A en valores singulares, como estos son m m nn V . u nicos, existir an matrices unitarias U P C yV PC tales que A  U 1 y V 1 matrices yV como U y V tendr 1 r V 1 con U Partiendo U amos que A  U cuyas columnas forman bases ortonormales de ImpAq y ImpA q, respectivamente. Para esta descomposici on de A, la inversa de Moore-Penrose correspondiente 1 : . :  V 1 . Debemos demostrar que A:  A ser a: A U r 1 1 forman bases ortonormales de ImpAq y Por una parte, las columnas de U1 y U las columnas de V1 y V1 forman bases ortonormales de ImpA q. Por lo tanto, existen matrices unitarias P, Q P Crr tales que 1 U

 U1P
1 r V 1 U

1 y V

 V1Q.

(P y Q son las matrices de cambio de bases ortonormales; por lo tanto, unitarias). Por otra parte, de modo que

 U1r V1,  U1r V1.  r .


1  r , 1  V1 r U1 .

U1 Pero U1

 V1V1  Ir , as que

U1 P r Q V1 P r Q

Y como r es invertible y tambi en Es decir,

1 Q r P 1 V1 Q r P U1

: A

 V1 Q1 P U  V1 1 U  A: , 1 1 U V r 1 r 1 r 1

tal y como se deseaba demostrar.

Cap tulo 4

Condicionamiento

4.1.

Introducci on

El hecho de que los ordenadores pueden representar s olo un n umero nito de n umeros reales y de forma aproximada tiene una consecuencia inmediata en el c alculo num erico: a un cuando un algoritmo haya sido dise nado te oricamente para producir la respuesta exacta a un problema, su implementaci on en un ordenador rara vez producir a tal respuesta. La cuesti on entonces radica en saber cu ando se puede conar en la respuesta obtenida. Los algoritmos en los que se puede conar son los algoritmos estables; es decir, son aquellos que produce una respuesta casi exacta cuando se aplican a datos que son casi exactos. Este es un concepto difuso, por ahora, pero debemos observar desde un principio que en el c alculo num erico los errores est an siempre presentes. Hay errores de muy diversa procedencia, principalmente: errores en las mediciones o en la estimaciones previas (posiblemente grandes: a menudo los datos en ingenier a o econom a son concidos exactamente con pocos d gitos [18]). 79

80

Condicionamiento

errores en la forma en la que los ordenadores almacenan los n umeros: palabras de 32 o 64 bits, seg un sea en simple o doble precisi on. Es decir, errores de redondeo (peque nos, comparados con los anteriores). errores como resultado de c alculos anteriores si, por ejemplo, los datos proceden de soluciones num ericas a problemas previos. Hay problemas que son especialmente sensibles a estos tipos de errores. El estudio de c omo estos afectan a las respuestas calculadas pertenece a una disciplina denominada Teor a de la perturbaci on. En ella se pretende estimar cu anto puede cambiar la soluci on de un problema cuando los datos de partida son modicados ligeramente. Pero el an alisis num erico pretende m as: su objetivo es dise nar algoritmos que sean lo m as insensibles posible a los errores. Los algoritmos que poseen esta propiedad se dice que son estables. No es una tarea f acil saber si un algoritmo es estable o no. Lo primero que se necesita para ello es una buena denici on de estabilidad. Iremos abordando estas cuestiones a lo largo de este tema y el siguiente aplic andolos, a modo de ejemplo, al problema de la resoluci on de sistemas lineales. Hay un tercer aspecto importante en Algebra Lineal Num erica que s olo abor daremos tangencialmente en este curso: la velocidad de los algoritmos. Esta suele ser medida, en la disciplina que nos ocupa, en flops (n umero de operaciones en punto otante), pero su an alisis, aunque importante porque en determinadas circunstancias la velocidad de los algoritmos puede ser decisivo para decantarse por la utilizaci on de uno u otro, suele ser tedioso y con escaso contenido matem atico. Quienes est en interesados el an alisis de la velocidad de los principales algoritmos, pueden consultar los libros recomendados en la bibliograf a.

4.2.

Condicionamiento de un problema

En abstracto podemos ver un problema como una funci on f : X Y de un espacio vectorial normado de datos en un espacio vectorial normado de resultados. Por ejemplo, el problema de calcular la mitad de un n umero real se puede ver como la funci on f : R R x ; x 2 Y el problema de calcular las ra ces de un polinomio tambi en se puede interpretar de esta forma aunque los espacios X e Y que intervienen son un poco m as complicados.

4.2 Condicionamiento de un problema

81

Esta funci on es casi siempre no lineal (incluso en Algebra Lineal) pero s continua. Y lo que se pretende es saber c omo act ua f sobre un punto concreto x P X . Intuitivamente, para un valor x P X , se dice que un problema est a bien condicionado (en realidad deber a decirse bien condicionado para el valor dado x, pero se sobreentender a lo de que es para un valor concreto que siempre se dar a previamente) si cualquier peque na modicaci on en x produce una peque na modicaci on en f pxq. Un problema mal condicionado es aquel para el que hay peque nas modicaciones de x que producen grandes modicaciones de f pxq. Para hacer preciso este concepto supongamos, de momento, que X  Fn , Y  Fm y f es diferenciable en x. Podemos aproximar el valor de f px xq por f pxq utilizando el primer t ermino del desarrollo de f en serie de Taylor alrededor de x: f px xq  f pxq f 1 pxqx donde f 1 pxq es la diferencial de f en x (i. e. la aplicaci on lineal de Fn a Fm representada por la matriz jacobiana de f en las bases can onicas). As f px xq f pxq  f 1 pxqx Eligiendo normas en Fn y Fm y usando para f 1 pxq la correspondiente norma inducida

}f px xq f pxq}  }f 1pxq}, }x}


de modo que }f 1 pxq} nos da una idea aproximada de la raz on de los errores absolutos de las soluciones del problema y los datos del mismo. Si este n umero es muy grande es porque peque nas modicaciones en el dato del problema produce una modicaci on 1 muy grande en la soluci on. Al n umero }f pxq}, que es la norma de la matriz de las derivadas parciales de f en x, se le llama n umero de condici on (absoluto) del problema f en x respecto de la norma } }; y se representa por pxq. Si lo que se quiere es una idea de la relaci on entre los errores relativos podemos observar que }f px xq f pxq}  }x} }f 1pxq}}x} , }f pxq} }x} }f pxq} de modo que

}f px xq f pxq}
N }x}
 }f 1pxq}}x} . }f pxq} }x} }f pxq}

82

Condicionamiento

Y al n umero

mente n umero de condici on del problema f en x respecto de la norma } }; y se representa por pxq. Este n umero mide la sensibilidad del problema f a las peque nas perturbaciones de x. As , si pxq es peque no, errores relativos peque nos en el dato producen errores relativos peque nos en la soluci on; mientras que si pxq es grande errores relativos peque nos en los datos producen errores relativos grandes en la soluci on. En este caso, el problema est a mal condicionado; y en el anterior el problema est a bien condicionado. Cuando f no es diferenciable se requiere otra caracterizaci on de n umero de condici on que se reduzca a la ya dada si f es diferenciable. La denici on precisa es la siguiente: N umero de condici on absoluto: pxq : l m sup

}f 1pxq}}x} }f pxq}

se le llama n umero de condici on (relativo) o simple-

}f px xq f pxq} . 0 }x} }x}

(4.1)

N umero de condici on relativo: pxq : l m sup

0 }x}

}f px xq f pxq}
N }x}
}f pxq} }x}

(4.2)

Cuando nos reramos al n umero de condici on de un problema, se deber a entender que es el n umero de condici on relativo. Debe observarse en cualquier caso que pxq 

}x} }f pxq} pxq

(4.3)

Observaciones 4.1 Deber amos demostrar que las deniciones (4.1) y (4.2) son consistentes. Es decir, que el l mite existe y coincide con la norma de la diferencial de f cuando esta es diferenciable. Lo primero no es dif cil. Vamos a hacerlo para el n umero de condici on absoluto. El correspondiente resultado para el n umero de n condici on relativo se sigue de (4.3). Para x P F dado, pongamos p q  sup

}f px xq f pxq} }x} }x}

4.2 Condicionamiento de un problema

83

y observemos que si 0 1 lo tanto p1 q  sup

2 entonces tx : |x} 1u tx : }x} 2u. Por


2

}x}1

}f px xq f pxq} sup }f px xq f pxq}  p q, 2 }x} }x} }x}

de modo que es mon otona creciente y acotada inferiormente por 0. Por consiguiente, existe el l m p q. Notemos que 0, y por lo tanto la convergencia a 0

es siempre por la derecha aunque no se haya hecho expl cito en la denici on. Probamos ahora que cuando f es diferenciable pxq  }f 1 pxq}. Recordamos que la diferenciabilidad de f signica que f px xq f pxq  f 1 pxqx }x}rpxq, donde f 1 pxq es una aplicaci on lineal de Rn en Rm cuya matriz en las bases can onicas es la matriz jacobiana de f , y l m rpxq  0. Pongamos, para facilitar la compresi on f 1 pxq  J pxq. Entonces para

0    J pxqx  } f px xq f pxq}  sup  rpxq sup  . }x} }x} }x} }x}


x

El objetivo es demostrar que


  J x x l m sup   x 0

}x}

p q rpxq   }J pxq},  } }

donde }J pxq} es la norma de matriz inducida por la norma de vector que estemos considerando. Es decir pxqh} . }J pxq}  sup }J} h} h0 (N otese que las normas en el numerador y denominador en esta expresi on son normas de vector en espacios de, posiblemente, dimensiones diferentes). Se puede demostrar, como se hizo en la Secci on 2.3.2 de la Lecci on 2, que para cualquier 0

pxqh}  }J pxq}  sup }J} h}


h 0

}J pxqh} , }h} }h}


sup

de modo que

}J pxqh}  }J pxq}, 0 }h} }h}


l m sup

84

Condicionamiento

porque estamos calculando el l mite cuando

0 de una cantidad constante: }J pxq}.


Por lo tanto, lo que queremos demostrar es que l m

0 }x}

  J x x sup   x

p q rpxq  sup }J pxqx}  0.  } } }x} }x}


x

(4.4)

0. Para probar (4.4) utilizaremos la denici on de l mite: Sea 0 un n umero real. Por una parte

Ahora bien, sabemos que l m rpxq  0, lo que implica que l m sup }rpxq} 

0 }x}


}x}

  J x x sup   x


    p q rpxq  sup  J pxqx  }rpxq} sup  J pxqx  sup }rpxq} ,  } } }x}  }x}  }x} }x}  }x}    J x x sup  }x}  x J x x x

de modo que

p q p q sup } p q } sup }rpxq} . } } }x} } } }x}

  r x  

Como l m sup }rpxq}

0 }x} }x}

entonces sup

 0, para el dado existe un 0 tal que si 0 }rpxq} . As pues, con este mismo ,
  J x x sup  }x}  x

p q p q sup } p q } , } } }x} } }

  r x  

J x x x

lo que demuestra (4.4). 1. Para x P R calcular x . 2

Ejemplo 4.2

En este caso f pxq 

x 1 es una funci on diferenciable y f 1 pxq  . As 2 2

| f 1 pxq||x| 1{2   |f pxq| 1{2  1. El problema est a bien condicionado en cada x P C.

4.3 El n umero de condici on para el producto de matrices y vectores

85

2. Para x P R calcular Ahora f pxq 

?x y f es diferenciable para x 0. f 1pxq  ? 1 . As 2 x



1 2 x

? x.

x ?x  1 . 2


El problema est a bien condicionado para todo x 0. 3. Para x1 , x2

P R calcular x1 x2.

f pxq  x1 x2 es una funci on de dos variables. f 1 pxq  Para la norma 8 tenemos que 

Bf Bf   x 2 B x1 B x2

x1 .

| x1 | | x2 | p|x1| |x2|q m axt|x1 |, |x2 |u  | x1 x2 | m nt|x1 |, |x2 |u

Este problema est a bien condicionado para valores de x1 y x2 pr oximos en valor absoluto, y mal condicionado para valores que dieren mucho en valor absoluto.

4.3.

El n umero de condici on para el producto de matrices y vectores

Como viene siendo habitual F representa el cuerpo de los n umeros reales o complejos. Analizamos con un poco de detalle el n umero de condici on del siguiente problema: Dada una matriz A P Fmn , calcular el producto de Ax para x P Fn1 . La funci on asociada al problema es f : Fn Fm x ; b  Ax Esta funci on es diferenciable: f pxq  Ax 

n j 1

m

aij xj

i 1

86

Condicionamiento

Es decir, para i  1, . . . , m

fi pxq 

n j 1

aij xj ,

de modo que

B fi  a . Bxj ij
f 1 pxq  A. 

Por lo tanto,

Y el n umero de condici on relativo para este problema es

}f 1pxq}  }A} }x} , }f pxq}{}x} }Ax}

(4.5)

donde tomamos como norma de A la norma inducida por las normas de x y Ax. Debemos tener en cuenta que estos vectores pueden estar en espacios vectoriales de dimensiones diferentes. Por ser una norma inducida por una norma de vector, es compatible con ella. Es decir, }Ax} }A} }x} y, en consecuencia El problema estar a bien condicionado para aquellos x P Fn para los que es pr oximo a 1; y mal condicionado para aquellos para los que es mucho mayor que 1. Adem as cuando A es cuadrada y no singular tenemos que x  A1 Ax y 1.

}x}  }A1Ax} }A1} }Ax}.


}A} }A1 }.

Sustituyendo en (8.10) tenemos que As que el n umero de condici on de calcular b  Ax con A dada e invertible est a aco 1 tado por la cantidad }A} }A }. Qu e n umero de condici on tiene el problema de resolver el sistema Ax  b con A una matriz dada cuadrada e invertible? Nos preguntamos por el problema f : Fn Fm b ; x  A1 b }A1 } }A}. En denitiva tenemos el siguiente resultado

Es el mismo que acabamos de estudiar pero aplicado a la matriz A1 :

4.3 El n umero de condici on para el producto de matrices y vectores

87

Teorema 4.3 Sea A P Fnn no singular y consideremos el problema de la resoluci on del sistema lineal Ax  b respecto de b. El n umero de condici on de este problema es  }A1 }

}b} }A1} }A}  }A} }A1}. }A1b}

Denici on 4.4 El n umero }A} }A1 } recibe el nombre de n umero de condici on de la matriz A, si A es cuadrada y no singular, y se denota por pAq. Cumple que pAq 1, y si pAq es un n umero pr oximo a 1 se dice que A es una matriz bien condicionada; y si es mucho mayor que 1, que es mal condicionada. Debe notarse que a normas diferentes, para una misma matriz, los n umeros de condici on pueden ser diferentes, pero la equivalencia de normas garantiza que no son muy diferentes. Particularmente notable es el n umero de condici on respecto de la norma espectral o de operador: 2 pAq  }A}2 }A1 }2 . Recordemos que }A}2 1 , y as singular de A1 es 1{n . Es decir, }A1 }2  n 2 pAq  1 . n

 1 es el mayor valor singular de A y que el mayor valor

Es muy importante notar que el condicionamiento de una matriz depende de la relaci on entre su primer y u ltimo valor singular. Desde luego, si A es singular, entonces 2 pAq  8, y A est a muy mal condicionada, pero A puede estar cerca de ser singular y estar muy bien condicionada. Por ejemplo, para A


107 1010 1010 107

es una matriz casi singular porque n

 0,0999 106, pero

2 pAq  1,00200200200200, de forma que est a muy bien condicionada: sus columnas (y las) son muy linealmente independientes: la primera componente de la primera columna es 103 veces

88

Condicionamiento

m as grande que la de la segunda columnas; y lo mismo pasa con las segundas componentes pero al rev es. El n umero de condici on no s olo depende del u ltimo valor singular, que nos mide la distancia al conjunto de las matrices singulares, sino de su relaci on con el primero. En este ejemplo, 1  0,1001 106 y 1 {2 es casi 1. En conclusi on, una matriz no singular A puede estar cerca del conjunto de matrices singulares pero estar muy bien condicionada. As , si los elementos de A son muy peque nos en valor absoluto (como en el ejemplo de m as arriba), su determinante ser a muy peque no (en valor absoluto) y su u ltimo valor singular ser a muy peque no porque el producto de los valores singulares es el valor absoluto del determinante de la matriz. Consecuentemente, A est a cerca de alguna matriz singular. Sin embargo, A puede ser una matriz bien condicionada porque puede suceder que 1 sea tambi en muy peque no y muy parecido a n . Su n umero de condici on nos da una idea de si sus columnas son muy linealmente independientes o no. Un sistema de vectores tv1 , . . . , vn u son casi linealmente dependientes si se pueden encontrar escalares 1 , . . . , n , no todos peque nos de forma que 1 v1 n vn es casi cero. Obs ervense las comillas. Son conceptos imprecisos, pero que nos hacen intuir que cuanto m as cerca est en las columnas de una matriz de ser ortogonales, mejor condicionada estar a dicha matriz. Lo que s se puede probar rigurosamente es que no hay matrices mejor condicionadas (en la norma espectral) que las unitarias. En efecto, si U es unitaria entonces todos sus valores singulares son iguales a 1 y en consecuencia 2 pU q  1. Terminamos esta secci on con un resultado que nos ofrece otra interpretaci on interesante del n umero de condici on de una matriz. Corolario 4.5 Sea A P Fnn una matriz no singular. Entonces 1 2 pAq Es decir,

 m n

"

}A}2 : A A singular * . }A}2

1 es la distancia relativa de A al conjunto de las matrices singulares. 2 pAq Cualquier error relativo en A menor que esta cantidad nos asegura que la corres1 pondiente matriz es no-singular. Pero si el error relativo en A es mayor que 2 pAq 1 la matriz obtenida podr a ser singular. Es decir, es el menor error relativo 2 pAq posible para que la perturbaci on en A produzca una matriz singular.

4.4 La condici on de los sistemas de ecuaciones lineales

89

Demostraci on.- Por una parte 1 2 pAq Y por otra parte, n Por lo tanto, 1 2 pAq
" * } A}2 } A}2  rangpm n  m n AAqn }A}2 }A}2 : A A singular .

1 1 n  }A  1 }2 }A }2 }A} .

 rangpm n }A A A}2. AAqn

Podemos extender el concepto de n umero de condici on a las matrices rectangulares de rango completo usando A: en lugar de A1 . Es decir, pAq  }A} }A: }. Y si A P Fmn con m n y rang A  n seguir amos teniendo 2 pAq  1 . n

4.4.

La condici on de los sistemas de ecuaciones lineales

En la secci on anterior hemos considerado los problemas de calcular Ax y A1 b para x y b, respectivamente, y suponiendo que A es una matriz ja. En ambos casos hemos visto que el n umero de condici on de estos problemas est a acotado inferiormente por 1 y superiormente por pAq. Hemos visto tambi en que este n umero es importante para analizar la independencia lineal de las columnas de la matriz A. Se trata ahora de mostrar que pAq es, en efecto, el n umero de condici on de un problema. Es l ogico pensar que dicho problema debe tener relaci on con la ecuaci on Ax  b porque en el caso particular en que b  0 la soluci on del sistema es, en aritm etica exacta, x  0. Si el problema est a mal condicionado entonces el error absoluto en el resultado puede ser grande en comparaci on con el error absoluto en la perturbaci on en A. Es decir, si una ligera perturbaci on en A produce una soluci on x, de Ax  0, con alguna componente muy grande respecto de dicha perturbaci on debe ser debido

90

Condicionamiento

a que las columnas de A est an cerca de ser linealmente independientes. Esto justica nuestra intuici on sobre el signicado de pAq en relaci on a la dependencia lineal de las columnas de A expuesta en la secci on anterior. Se trata de estudiar el sistema Ax  b cuando b es un vector dado y A s olo se conoce aproximadamente. Es decir, el problema f : Gln pFq Fn A ; A1 b (4.6)

con b P Fn un vector dado jo y A invertible. Recordemos que Gln pFq es un subconjunto abierto de Fnn . Nuestro objetivo es demostrar el siguiente resultado Teorema 4.6 (a) Sea b P Fn un vector no nulo y consideremos el problema de hallar la soluci on del sistema Ax  b a partir de A P Fnn , invertible. El n umero de condici on de este problema es  }A} }A1 }  pAq. cualquiera que sea la norma de vector en Fn y siendo la norma en Fnn la norma de operador inducida por la norma de Fn . (b) En las mismas condiciones de (a), pAq tambi en es el n umero de condici on del problema: r : Gln pFq Fnn f (4.7) A ; A1 que consiste en calcular la inversa de A para matrices invertibles de orden n. Demostraci on.- Las demostraciones de ambos resultados son parecidas. Las iremos haciendo en paralelo.
r, (4.6) y(4.7), que denen En primer lugar probaremos que las funciones f y f r son los n los dos problemas son diferenciables. En consecuencia, si y umeros de r, entonces condici on de los problemas denidos por f y f

}f 1pAq}}A} }f pAq}

r y

}fr1pAq}}A} . }frpAq}

4.4 La condici on de los sistemas de ecuaciones lineales

91

Teniendo en cuenta que la diferencial f 1 pAq : Fnn Fn es una aplicaci on lineal, la norma para f 1 pAq es la norma de operador inducida por las normas que se hayan considerado en Fnn y Fn ; i.e., (Recu erdese que, a su vez, la norma en Fnn es la inducida por la de Fn ). Y de la r1 pAq : Fnn Fnn es una aplicaci misma forma, f on lineal de modo que la norma para f 1 pAq es la norma de operador inducida por las norma de Fnn :
r1 pAqpX q}. }fr1pAq}  }m ax }f X }1

}f 1pAq}  }m ax }f 1 pAqpX q}. X }1

r  pAq  Un c alculo elemental muestra que es equivalente demostrar que  1 }A}}A } y que

}f 1pAq}  }A1}}A1b}

}fr1pAq}  }A1}2

As pues, el objetivo es probar que }A1 }}A1 b} es una cota superior alcanzable del conjunto t}f pAq1 pX q} : }X }  1u. Y que }A1 }2 es una cota superior alcanzable rpAq1 pX q} : }X }  1u. del conjunto t}f
r son diferenciables. Podemos escribir f r a partir de Veamos que, en efecto, f y f las siguientes funciones:

g1 : Gln pFq X

det X

Sn

p1q x1p1q . . . xn

g2 : Gln pFq X

Como g1 no se anula en Gln pFq y g1 y g2 son funciones diferenciables en los elementos r  g2 {g1 es diferenciable. Ahora bien, para b jo f pX q  de la matriz X , tambi en f rpX qb, de modo que f es diferenciable. f Veamos ahora que }f 1 pAqpX q} }A1 }}A1 b} para toda matriz X P Fn . Recordemos que f 1 pAqpX q es la derivada direccional de f en la direcci on de X : f 1 pAqpX q

Fnn AdjpX q  rp1qij det X rj |iss

 

pA tX q1b A1b  l rpIn tA1X q1A1 A1sb  m t0 t0 t t


rp In tA1 X q1 In sA1 b p In tA1 X q1 In l m  l m A 1 b
l m
t

92

Condicionamiento

Pero para t sucientemente peque no se tiene que }tA1 X } 1 de modo que, por la Proposici on 2.15 del Cap tulo 2, conclu mos que In tA1 X es invertible y

pIn tA1X q1  In tA1X t2pA1X q2 t3pA1X q3 .


En consecuencia

pIn tA1X q1 In  A1X tpA1X q2t2pA1X q3  A1X pI tA1X q1 n t


Por lo tanto f 1 pAqpX q  l mpA1 X qpIn tA1 X q1 A1 b  A1 XA1 b. t0
r1 pAqpX q  A1 XA1 . Exactamente igual se demuestra que f

Probamos ahora que }A}1 }A1 b} es una cota superior de t}f 1 pAqpX q} : }X }  1u. Sea X P Fnn una matriz de norma 1. Entonces, por la compatibilidad de las normas

}f 1pAqpX q}  }A1XA1b} }A1}}X }}A1b}  }A1}}A1b} porque }X }  1. De la misma forma }fr1pAqpX q}  }A1XA1} }A1}}X }}A1}  }A1}2, r1 pAqpX q} : }X }  1u. Por de modo que }A1 }2 es una cota superior del conjunto t}f
lo tanto

}fr1pAq}  }m ax }A1 XA1 } }A1 }2 . X }1

(4.8)

Debemos encontrar ahora una matriz B de norma 1 tal que }f 1 pAqpB q}  }A1BA1b}  }A1}}A1b}. Si esta matriz B , adem as de tener norma 1, cumpliera que BA1 b  y siendo y un vector tal que }A1 y }  }A1 }}y } y }y }  }A1 b}, entonces tendr amos asegurada la igualdad, porque en tal caso

}A1BA1b}  }A1y}  }A1}}y}  }A1}}A1b}

(4.9)

Parece que los requerimientos son excesivos, pero en realidad no lo son porque tenemos todos los elementos necesarios para poder decir exactamente qu e matriz nn B y qu e vector y debemos escoger. En primer lugar, como la norma en F es la

4.4 La condici on de los sistemas de ecuaciones lineales

93

norma inducida por la norma de Fn , existe un vector no nulo y1 tal que }A1 y1 }  }A1}}y1}. N otese que cualquiera que sea el n umero , tambi en y1 cumple la misma propiedad:

}A1py1q}  ||}A1y}  ||}A1}}y1}  }A1}}y1}


En particular, si y b}  }A }y } y1

1
1

Tenemos que }y }  }A1 b} y }A1 y }  }A1 }}y }.


1 Con este vector y formamos el vector y0  }y } y de modo que }y0 }  1. Pongamos 1 1 x  A b y x0  }x} x. Estos vectores cumplen que }y0 }  }x0 }  1. Por el Ejercicio entonces Bx0  y0 y 2.8 de la Lecci on 2, existe un vector z0 tal que si B  y0 z0 }B }  1. Tal vector z0 es z1 z0  x0 z1

x0 |  }z1 }1 }x0 } (} }1 la norma dual de siendo z1 un vector para el que |z1 siempre existe (ver Ejercicio 2.8 de la Lecci on 2). As pues, }B }  1 y
BA1 b  Bx  }x}Bx0

} }), que

 }x}y0  }A1b}y0  }y}y0  y. En denitiva, existe un vector y tal que }y }  }A1 b} y }A1 y }  }A1 }}y }. Y para este vector y existe una matriz B tal que }B }  1 y BA1 b  y . Por lo tanto, se cumple (4.9) y }f 1 pAqpB q}  }A1 }}A1 b}. Esto es, }f 1 pAq}  }A1 }}A1 b} y  pAq tal y como se deseaba demostrar. r1 pAq}  }A1 }2 . Para ello observamos Para concluir, debemos demostrar que }f
que, debido a que la norma en Fnn es la inducida por la de Fn , existe un vector b de norma 1 tal que }A1 b}  }A1 }. Para este vector b, y de acuerdo con lo que hemos demostrado m as arriba, existe una matriz B de norma 1 tal que }A1 BA1 b}  1 1 }A }}A b}  }A1}2. En consecuencia,

}A1}2  }A1BA1b} }A1BA1}}b}  }A1BA1} }fr1pAq} }A1}2 y consecuentemente r  pAq.


r1 pAq}  m r1 pAq}  porque }f ax }A1 XA1 }. Teniendo en cuenta (4.8) conclu mos que }f

}X }1

94

Condicionamiento

Cap tulo 5

Estabilidad

5.1. 5.2.

Introducci on Aritm etica en punto otante

Recordamos en esta secci on, muy brevemente, las ideas expuestas en la secci on con este mismo nombre en el documento Pr acticas de An alisis Matricial. Una Introducci on a MATLAB. En primer lugar, los n umeros en punto otante forman un subconjunto nito F de n umeros racionales. Este conjunto est a formado por el 0 y los n umeros de la forma x  p1 f q 2e con 0f

y e un n umero entero. 95

96

Estabilidad

La precisi on del conjunto F queda determinada por un n umero llamado epsilon de la m aquina que denotaremos con el s mbolo M , y cuyo valor es
M

 253.

Este n umero est a muy relacionado con el error de redondeo al aproximar los n umeros reales al n umero en F m as pr oximo. Espec camente, si pxq es el n umero de F m as pr oximo a x P R, x  0, entonces

| pxq x| 253  | x|

M.

(5.1)

En algunos casos, como MATLAB, se toma como M el doble de este valor; es decir, 252 . Este n umero es la distancia de 1 al siguiente n umero en punto otante. De hecho, en el intervalo r1, 2s los n umeros en punto otante son equidistantes y la distancia entre dos de ellos es precisamente este n umero: 252 . La desigualdad (5.1) se puede escribir como

| pxq x| M |x|,
en la que se puede incluir x  0. A su vez, esta desigualdad permite establecer la siguiente norma que relaciona los n umeros reales y los de F: Primer axioma para F Para cada x P R hay un

| | M tal que pxq  xp1 q.


con

(5.2)

En un ordenador, todos los c alculos matem aticos se reducen a ciertas operaciones aritm eticas elementales, de las cuales las cl asicas son , , , y . Estos s mbolos representan operaciones en R. En un ordenador tenemos operaciones similares en F. Habitualmente estas operaciones aritm eticas con n umeros en punto otante se representan con los s mbolos `, a, b y c, y en la pr actica son implementadas mediante software. Respecto de estas operaciones es razonable desear que los ordenadores se construyeran siguiendo el siguiente principio: si x, y son n umeros en punto otante (i.e.,

5.2 Aritm etica en punto otante

97

x, y PF), representa una de las operaciones , , , o , y si f la operaci on correspondiente en punto otante, entonces x f y debe ser exactamente: xfy

 px yq

(5.3)

Si se cumple esta condici on, por (5.2) y (5.3), podemos concluir que el ordenador tiene la siguiente importante propiedad: Axioma fundamental de la aritm etica en punto otante Para todo x, y

P F, existe con | | M tal que x f y  px y qp1 q | pxq x| . | x|

(5.4)

Recordemos que si x P R y pxq es el valor aproximado de x en punto otante, el error relativo al aproximar x por pxq es

Por lo tanto, el axioma fundamental de la aritm etica en punto otante dice que el error relativo en cada operaci on de la aritm etica en punto otante es a lo m as M . El an alisis del error de las operaciones con n umeros en punto otante est a basado en las condiciones (5.2) y (5.4) para valores de M que no tienen por qu e ser 253 . As nuestro an alisis incluir a, por ejemplo, ordenadores o calculadoras que en vez de redondeo utilizan truncamiento para aproximar un n umero real por el m as pr oximo en punto otante. En estos casos, el error relativo al aproximar un n umero real por el m as cercano, truncando en vez de redondeamdo, es 252 . En vez de pensar en M como un valor jo, pensaremos en M de un ordenador o calculadora como el menor n umero para el que se cumplen las condiciones (5.2) y (5.4) en ese aparato. Durante mucho tiempo, y hoy todav a en algunos libros, se dene el epsilon de la m aquina como la distancia de 1 al siguiente n umero en punto otante en el sistema F de dicha m aquina. Hoy en d a, sin embargo, se preere la denici on dada m as arriba por ser m as independiente del ordenador concreto o sistema F que est e utilizando. Para la mayor parte de los ordenadores, incluyendo todos los que utilizan la aritm etica del est andar IEEE, ambas deniciones de M producen, aproximadamente, el mismo valor: en aritm etica decimal 252 y 253 son ambos del orden de 1016 . En ocasiones, sin embargo, puede ser necesario un valor grande de M para que se cumplan las condiciones (5.2) y (5.4). En 1994 se descubri o en los microprocesadores

98

Estabilidad

Intel Pentium un error en la tabla que usaban para implementar el est andar IEEE de doble precisi on; su precisi on efectiva result o ser de, aproximadamente, 6,1 105 , 1011 veces menor que la supuestamente deseada. Por supuesto, el error fu e corregido muy pronto. Pero hay m as ejemplos. La operaci on de restar en punto otante en los ordenadores Cray que se produjeron hasta mediados de la d ecada de 1990 necesitaba un M  1para que se cumpliera (5.4). Esto era debido a que la substracci on se realizaba sin lo que se llama el d gito de guardia. Este concepto se entiende mejor con un ejemplo. Supongamos que F es el conjunto de n umeros en punto otante representados en base 2 y con 3 posiciones en la fracci on (no importa el rango del exponente para este ejemplo). Supongamos que queremos restar a 1 el anterior n umero de F. Este n umero es 0,111. Escribimos estos n umeros en forma normalizada 1 0,111 y los restamos 0,100 21 0,111 20 ,100 21 0 0,0111 21 0,0001 21  0,100 22

0,100 21 0,111 20 ,

Observamos, en primer lugar, que la respuesta es correcta: en notaci on decimal, los n umeros positivos de F son 0, 23 , 2 23 , 3 23 , . . . , 7 23 , 1. Es decir, la diferencia entre 1 y su anterior n umero en F es 23  0,100 22 . En segundo lugar, al pasar de representar 0, 111 como 0,111 20 a 0,0001 21 hemos introducido un cuarto d gito en la fracci on. Este es el d gito de guardia. Si no lo hubi eramos hecho as la operaci on habr a sido como sigue: 0,100 21 0,111 20 ,100 2 0 0,011 21 0,001 21  0,100 21
1

El error relativo de esta respuesta es 1!:

Recordemos que para los antiguos ordenadores Cray M  1. Estas m aquinas no son in utiles pero el an alisis del error debe ser diferente del que nosotros haremos. Afortunadamente el axioma (5.4) y la adopci on del est andar IEEE para la aritm etica de punto otante han sido ampliamente admitidos por los productores de ordenadores;

|22 23|  1. |23|

5.3 Estabilidad de los algoritmos

99

y desde 1996 todos los ordenadores personales compatibles IBM y todas las estaciones de trabajo producidas por SUN, DEC, HP e IBM implementan el est andar IEEE que se expuso en el documento Pr acticas de An alisis Matricial. Una Introducci on a MATLAB.

5.3.

Estabilidad de los algoritmos

Ser a bueno que los algoritmos num ericos proporcionaran respuestas exactas a los problemas num ericos, pero como los n umeros reales forman un continuo y los ordenadores s olo pueden utilizar un n umero nito de n umeros racionales, ese objetivo es, en general, imposible de alcanzar. La noci on de estabilidad es la forma est andar de caracterizar lo que es posible; lo que los analistas num ericos consideran que es la respuesta correcta aunque no sea la exacta. En la Lecci on anterior denimos un problema como una funci on f : X Y entre dos espacios vectoriales; uno de datos, X , y otro de soluciones, Y . Un algorit : X Y entre los mismos espacios mo tambi en puede verse como una funci on f vectoriales. Pero la denici on es un poco m as complicada: Supongamos que nos dan los siguientes datos: un problema f : X

Y,

un ordenador cuyo sistema en punto otante cumple (5.4) , un algoritmo para f en el sentido intuitivo del t ermino (una serie de mandatos implementables en el ordenador con el objetivo de resolver f ), y una implementaci on de este algoritmo en la forma de un programa para el ordenador. Dado un dato x P X , sea pxq el valor redondeado de x en el sistema de punto otante de forma que se verique (5.2), y proporcionemos este valor, pxq, como entrada al programa del ordenador. El resultado es una colecci on de n umeros en punto otante que est an en Y . El resultado obtenido es f pxq. pxq Realmente esta denici on no parece tener demasiado sentido. Para empezar f estar a afectada por errores de redondeo; y, dependiendo de las situaciones, puede

100

Estabilidad

verse afectada por todo tipo de circunstancias, como tolerancias para que haya convergencia o, incluso, otras tareas que pueda estar realizando el ordenador cuando pxq puede tomar diferentes valores de una a se corre el programa. Esta funci on f otra ejecuci on del programa. En n, todas estas complicaciones pueden hacernos pensar que no merece la pena intentar denir un algoritmo como una funci on. As y todo, hablar de f pxq como una funci on es conveniente y sobre ella se pueden establecer unos cuantos resultados que permiten un mejor an alisis de la exactitud de los algoritmos de Algebra Lineal Num erica; y todo ello basado exclusivamente en los axiomas fundamentales (5.2) y (5.4). El s mbolo es una notaci on que usaremos para expresar la cantidad calculada por el ordenador. Por ejemplo, la cantidad calculada por un ordenador cuyo sistema de aritm etica en punto otante cumpla los axiomas (5.2) y (5.4) del sistema lineal Ax  b ser a denotada por x . Lo m as importante que podemos pedir a un buen algoritmo es que nos proporcione una buena aproximaci on al problema asociado f . Para precisar esta idea, pxq}, o el consideremos el error absoluto del c alculo para un dato dado x, }f pxq f error relativo }f pxq fpxq} , }f pxq} es un buen algoritmo, se podr que ser a nuestra mediada habitual del error. Si f a esperar un error relativo peque no, del orden del M . Se podr a decir que un algoritmo para un problema f es preciso, si para cada x P X f

}f pxq fpxq}  Op q. (5.5) M }f pxq} Hablando vagamente, el s mbolo Op M q signica del orden del epsilon de la m aquina. Sin embargo, Op M q tiene un signicado preciso. Record emoslo. La notaci on ptq  Opptqq

As , sen2 ptq  Opt2 q para t 0 porque existe una constante C tal que | sen2 ptq| C |t2 | para t sucientemente peque no como lo atestigua el desarrollo en serie de 2 Taylor de sen ptq.

es est andar en matem aticas y signica que existe una constante positiva C tal que, para t sucientemente pr oximo a un l mite sobreentendido (como, por ejemplo t 0 o t 8), |ptq| C |ptq|.

5.3 Estabilidad de los algoritmos

101

Tambi en es est andar en matem aticas la expresi on ps, tq  Opptqq uniformemente en s, para indicar que existe una constante C tal que

|pt, sq| C |ptq|


para todo s. As , por ejemplo,

psen2 tqpsen2 sq  Opt2q


cuando t 0, pero la uniformidad se pierde si reemplazamos sen2 s por s2 . Aqu el uso de O sigue estos mismos criterios. As , para un problema dado para este problema, el resultado de aplicar el algoritmo a un f y un algoritmo f dato x P X , depende tanto de x como del epsilon de la m aquina, M , respecto del que se realizan los redondeos. La expresi on (5.5) indica que existe una constante C tal que el error relativo est a acotado por C M uniformemente para todo x P X y para M 0. Rara vez se menciona la uniformidad respecto de x; debe darse por sobreentendida. En realidad M es una cantidad ja para cada m aquina. Cuando decimos que on de los ordenadores. La ecuaci on (5.5) M 0 estamos pensando en una idealizaci en unos ordenadores que satisfacen las signica que si corri eramos el algoritmo f condiciones (5.2) y (5.4) para una secuencia de valores de M que converge a cero, entonces }f pxq fpxq} , }f pxq} converger a a cero a la misma velocidad, al menos, que
M.

Volviendo ahora a la precisi on de los algoritmos, si el problema f est a mal condicionado para alg un x, el objetivo de precisi on denido por (5.5) es poco razonable porque el redondeo de los datos es inevitable en un ordenador digital. Incluso si todos los c alculos posteriores fueran hechos exactamente, esa perturbaci on inicial en los datos producir a grandes cambios (en t erminos relativos) en los resultados. En lugar de intentar la precisi on en todos los casos, a lo m as a lo que podemos aspirar, en general, es a la estabilidad.

102

Estabilidad

para un problema f se dice que es estable si para Denici on 5.1 Un algoritmo f cada x P X existe x para el que

}x x} }x}  Op M q

pxq} }f px q f  O p M q. }f p x q} En palabras Un algoritmo estable es el que produce una respuesta casi correcta a una pregunta casi correcta.

(5.6)

El concepto de estabilidad tiene diferentes signicados en otras partes del an alisis num ericos. La denici on que acabamos de dar es buena para analizar los algoritmos propios del Algebra Lineal Num erica, pero puede no ser apropiada para otras a reas, como las ecuaciones diferenciales. Muchos algoritmos de Algebra Lineal Num erica satisfacen una condici on de estabilidad que es a la vez m as fuerte y m as sencilla: para un problema f se dice que es estable hacia Denici on 5.2 Un algoritmo f atr as (backward stable) si para cada x P X existe x para el que

}x x} }x}  Op M q
pxq  f px f q.

La condici on de estabilidad hacia atr as es m as fuerte que la de estabilidad dada en la Denici on 5.1 porque el Op m q de la condici on (5.6) ha sido sustitu do por 0. En palabras: Un algoritmo estable hacia atr as es el que produce una respuesta correcta a una pregunta casi correcta.

5.3 Estabilidad de los algoritmos

103

O dicho de otra forma: un algoritmo es estable hacia atr as si al ser aplicado a unos datos exactos produce el mismo resultado que si se resolviera exactamente el problema con unos datos aproximados. El error relativo en estos datos aproximados debe ser del orden Op M q. Antes de ver algunos ejemplos generales de algoritmos estables, quiz a sea ilustrativo estudiar lo que signica la estabilidad hacia atr as con un ejemplo num erico. Ejemplo 5.3 Supongamos que queremos reducir la matriz A


3,000 2,000 1,000 2,000

a forma triangular superior mediante operaciones elementales. Este es el principio del algoritmo de eliminaci on gaussiana para luego resolver el sistema correspondiente mediante sustituci on hacia atr as. Lo haremos usando aritm etica decimal de cuatro d gitos en la fracci on. Qu e signica esto? Es importante aclararlo para saber hacer las operaciones. Al hablar de aritm etica decimal nos referimos a que la base de numeraci on es 10. Y al decir que la fracci on es de cuatro d gitos queremos decir que todos los n umeros se aproximan por redondeo a uno de la forma

 0.x1x2x3x4, 0 xi 9 As , los n umeros en el intervalo r1, 10q en este sistema ser an (en forma no normalif zada pero f acilmente normalizable) 1 2 . . . 1,001 2,001 . . .

f 10e,

1,998 1,999 2,998 2,999 . . ... . 9 9,001 9,002 9,998 9,999 Y los n umeros en el intervalo r10j , 10j 1 q se obtienen al multiplicar cada uno de los n umeros de esta tabla por 10j , mine j maxe, siendo mine y maxe los
1,002 2,002 . . . valores m nimo y m aximo asignados a e (que no vamos a especicar porque no los necesitaremos en nuestro c alculo, pero que se puede pensar que son tan peque no y grande, respectivamente, como se necesite).

En este sistema tomando, como es habitual salvo que tengamos otra referencia, como la distancia de 1 al siguiente n umero en punto otante 1,001, resulta que
M

 103.

(5.7)

104

Estabilidad

Y, al operar, cualquier resultado obtenido que sea menor que M podr a ser considerado como cero. Por supuesto, si mine 3 hay n umeros menores que M que son representables en este sistema y no son cero. Lo que se quiere decir es que si al hacer, digamos, una resta el resultado es menor que M , el n umero ser a redondeado a cero. Esto es una pr actica habitual en los ordenadores en los procesos cuyo objetivo es converger a cero o hacer cero ciertas cantidades mediante operaciones. En ocasiones, estos ceros no son absolutos y se redondea a cero cuando dichas cantidades son menores que un cierto valor que se suele llamar tolerancia. As , en el sistema elegido la diferencia 1 0,9999 se tendr a que hacer con el d gito de guardia: 0,1000 101 0,9999 100 ,1000 101 0 0,09999 101 0,00001 101  0,1000 103

que ser a considerado como 0, 000 (si esta fuera la aritm etica de MATLAB, el n umero que presentar a en pantalla ser a 0, 0000) . Volviendo a la matriz A, notamos que ya la hemos escrito en el sistema aritm etico especicado m as arriba, aunque los n umeros no est an normalizados. La u nica operaci on que tenemos que hacer es restar a la segunda la la primera multiplicada por 1{3, pero con la aritm etica que estamos utilizando: m21

 a21{a11  p1,000{3,000q  0,3333


a121

(o 3,333 101 en forma normalizada)

Si sumamos a la segunda la de A la primera multiplicada por m21 tenemos que si A1  ra1ij s representa la matriz obtenida entonces

 p1,000 0,3333 3,000q  p1,000 0,9999q  0,000,

tal y como hemos visto m as arriba. Y a122 As

 p2,000 0,3333 2,000q  p2,000 0,6666q  p1,3334q  1,333


1,000 2,000 A1  0 1,333

que al hacer esta misma operaci El objetivo es encontrar una matriz A on en 1 aritm etica exacta nos de como resultado A . Procediendo paso a paso con todo detalle, escogemos a 21  0,9999,

5.3 Estabilidad de los algoritmos

105

As , exactamente m21 y

a 21 {a11  0,9999{3,000  0,3333.


a 21 m21 a11 a 22 m21 a12

0

exactamente. Ahora debemos escoger a 22 de forma que

 1,333

exactamente. Es decir, a 22 deseada es La matriz A

 1,333 0,3333 2  1,9996


 A


3 2 0,9999 1,9996

En s mbolos

pAq. q  f f pA } }A A }A}  Op M q

Para que el algoritmo sea estable haca atr as debe ser

Como todas las normas son equivalentes basta que lo veamos en una de ellas. Escogemos, por sencillez, la norma 8 vectorial; i.e. }A}  m ax1i,j 2 |aij |. As , como  AA

0 0 4 10 4 104

}  4 104 y }A}  3. Por lo tanto resulta que }A A } }A A 4 4  10  Op M q }A} 3 tal y como se deseaba mostrar. En todos los ejemplos num ericos de esta lecci on asumiremos que la m aquina sobre la que los hacemos opera con la aritm etica que acabamos de decir y, que como consecuencia, su epsilon es el de (5.7).

106

Estabilidad

5.4.

Ejemplos de algoritmos estables

Veremos en esta secci on tres ejemplos de algoritmos estables hacia atr as y uno que es estable pero no lo es hacia atr as.

5.4.1.

Estabilidad de las operaciones aritm eticas elementales

Comencemos con las cuatro operaciones aritm eticas elementales: , , , . No hay mucho que decir sobre la posibilidad de elegir algoritmos para realizarlas: vienen impl citas en los ordenadores que las implementas con las operaciones `, a, b y c, respectivamente. En un ordenador que satisfaga los axiomas (5.2) y (5.4) los algoritmos impl citos son estables hacia atr as. Lo mostraremos con la resta, que es la operaci on m as susceptible de inestabilidad. En este caso X  R2 y Y  R (en secci on supondremos que la aritm etica se hace con n umeros reales). Para px1 , x2 q P X , f px1 , x2 q  x1 x2 es el problema a resolver y el algoritmo es px1 , x2 q  px1 q a px2 q. f (5.8)

Hagamos primero un ejemplo en aritm ? etica decimal de punto otante con 4 d gitos en la fracci on. Sea x1  y x2  2{2. Entonces px1 q  3,142, y utilizando el d gito de guardia: px1 q px2 q  2,4349. Es decir, Tomando, por ejemplo, x 1 px1 q a px2 q  2,435. x 1 x 2 px2 q  0,7071  7,071 101

 3,142 y x 2  0,7070 tenemos que  2,435

5.4 Ejemplos de algoritmos estables

107

en aritm etica exacta y el error de esta aproximaci on es

| x1 x 1 | | x2 x 2 | 4 1,3 104 , | x1 | |x2| 1,6 10


M,

ambos del orden de

(5.7).

Procedamos a ver que lo que nos indica este ejemplo es verdad en general. En primer lugar la condici on (5.8) signica que primero redondeamos x1 y x2 a sus valores m as pr oximos en punto otante y luego realizamos la operaci on a. Por (5.2)

| 1|, | 2| M . Y por (5.4) px1 q a px2 q  ppx1 q px2 qqp1 3 q para alg un | 3 | M . Combinando estas dos ecuaciones px1 q a px2 q  rx1 p1 1 q x2 p1 2 qsp1 3 q   x1p1 1qp1 3q x2p1 2qp1 3q   x1 p 1 1 3 1 3 q x2 p 1 2 3
para algunos Pongamos x 1 Tenemos que

px1 q  x1 p1

q,

px2 q  x2 p1

2 3

 x1p1 1 3

1 3

q, x 2  x2 p 1 2 3
2 M.

2 3

q.

Para

|x 1 x1 | |x1| | 1| | 3| | 1|| 3| 2 M no 2 M sucientemente peque M M por lo que |x 1 x1 | |x1|  Op M q.

Y de la misma manera

|x 2 x2 | |x2|  Op M q. pxq  px1 q a px2 q  x Esto signica que f 1 x 2  f px q con }x x}8 }x}8  Op M q
Pero como todas las normas en F2 son equivalentes podemos sustituir la norma 8 por cualquier norma. Por lo tanto se verica la condici on de estabilidad hacia atr as de la Denici on 5.2.

108

Estabilidad

Observaciones 5.4 En el an alisis de la estabilidad hacia atr as aparecen muy a menudo expresiones de la forma

p1 1qp1 2q . . . p1 nq
para alg un valor de n. De hecho, en el an alisis reci en realizado para la resta hemos visto que p1 1qp1 2q 1 2 M Op 2 M q. Y como, para
M

1 tenemos que 2 amos poner M M podr p1 1qp1 2q 3 M .

Pero en realidad tenemos una cota mucho mejor que nos la proporciona el siguiente resultado, que damos sin demostraci on (ver Problema 4). Proposici on 5.5 Si n

0,1 y para i  1, . . . , n | i| M , entonces p1 1qp1 2q . . . p1 nq  1


M

(5.9)

con

|| 1,06n M .
1
M

A la cantidad

 1,05 M

se le llama, a veces, unidad de redondeo ajustada. La condici on n M 0,1 puede parecer, si no se analiza de cerca, una suposici on bastante restrictiva. Pero no lo es en manera alguna. En efecto, un ordenador que tardara en realizar cada suma 1segundos=106 segundos con un M  1015 necesitar a un n  1014 para que n M 0,1. El tiempo que necesitar a para realizar este n umero de sumas ser a 108 segundos  3,2 a nos . Como dice G. Stewart no contengas la respiraci on esperando que n que 0,1.
M

sea mayor

En consecuencia, ante una expresi on de la forma (5.9) siempre escribiremos

p1 1qp1 2q . . . p1 nq  1 Op M q,

5.4 Ejemplos de algoritmos estables

109

o tambi en, cuando queramos poner de maniesto el n umero de productos involucrados p1 1qp1 2q . . . p1 nq 1 n M Op 2 M q, interpretando que Op
2 M

q es despreciable respecto a

M.

5.4.2.

Producto escalar

Supongamos que nos dan dos vectores x, y P Rn y queremos calcular su producto escalar  xT y . El algoritmo obvio es calcular los productos xi yi con b y sumar los resultados con `. Todav a quedar a la cuesti on del orden en el que se realiza esta suma; supongamos que es de izquierda a derecha. Es decir:

pppx1y1 x2y2q x3y3q q.


Por sencillez supondremos que los vectores x, y ya est an redondeados; i.e. xi , yi PF, i  1, . . . , n (esto nos evita un para cada componente). Suponiendo que se verican las condiciones (5.2) y (5.4) proceder amos de la siguiente forma: s1 con

 px1y1qx1 b y1  x1y1p1 1q

| 1|
s2

M.

De la misma forma

 ps1 x2y2q  s1 ` px2 b y2q  ps1 x2y2p1 22qqp1 2q   x1y1p1 1qp1 2q x2y2p1 22qp1 2q. s3  ps2 x3 y3 q  s2 ` px3 b y3 q  ps2 x3 y3 p1 33 qqp1 3 q   x1y1p1 1qp1 2qp1 3q x2y2p1 22qp1 2qp1 3q x3y3p1 33qp1 3q. con | 2 |, | 3 |, | 22 |, | 33 | M . SE seguir a as sucesivamente hasta obtener la expre-

si on de sn que ser a la representaci on en punto otante del producto escalar xT y cuando se usa el orden jado m as arriba. A n de dar una expresi on simplicada j para este n umero haremos el siguiente convenio: p1 q ser a una abreviatura para representar el producto de j s que pueden ser diferentes. As p1 1 qp1 2 qp1 3 q lo abreviar amos a p1 q3 , pero p1 22 qp1 2 qp1 3 q tambi en lo abreviar amos 3 a p1 q . Utilizando este convenio es f acil ver que sn

 x1y1p1 qn x2y2p1 qn x3y3p1 qn1 xnynp1 q2.

110

Estabilidad

Usando ahora la Proposici on 5.5, tenemos

1 q x y p1 q x y p1 q  x1y1p1 nq x2y2p1 n 3 3 n1 n n 2 1 | 1, 06n M . con |i | 1, 06i M i |n 1 q, . . . , x Poniendo, por ejemplo, x 1  x1 p1 n q, x 2  x2 p1 n n  xn p1 2 q y y i  yi , i  1, . . . , n (o al rev es), tendr amos que para i  1, . . . , n, |y i yi | |x i xi |  O p M q, | xi | |yi|  Op M q pxT y q  x y f T y . Es decir, el resultado devuelto por el algoritmo es el resultado
sn exacto del producto escalar de dos vectores cuyas componentes dieren, en valor relativo, del orden de M de los vectores dados. En otra palabras, el algoritmo es estable hacia atr as. Un ejemplo num erico con n  2 es el siguiente: Sean x


2{3 16{17

1{6 . 125{126

En un ordenador con aritm etica decimal de 4 d gitos en la fracci on tendr amos ppx1 q py1 qq  p0,6667 0,1667q  0,1111, y As ppx2 q py2 qq  p0,9412 0,9921q  0,9338. pppx1 q py1 qq ppx2 q py2 qqq  1,045.

Hay muchas formas de escoger x yy para que x y T  1,045 y que el error relativo sea del orden de M  103 . Por ejemplo, si ponemos x 1 entonces x 1 y 1 Y si ponemos x 2

 0,6666,
1

y 1

0,1111 1 0  , ,6666 6

x 1 | |y1 y 1 |  0,1111 y |x1|x  104 , | |y |  0.


1

 16 17

y 2

17 ,  0,9339 16

5.4 Ejemplos de algoritmos estables

111

entonces x 2 y 2 Adem as

x 2 | |y1 y 1 |  0,9339 y |x2|x  0, 2,07 104. | | y | 2 1


x 1 y 1 x 2 y 2

 1,045.

5.4.3.

Producto exterior

Supongamos ahora que queremos calcular el producto exterior de dos vectores. Es decir, para x, y P Rn , la matriz A  xy T que tiene rango 1. El algoritmo obvio para hacerlo es calcular cada uno de los productos x i yj cuyo elemento en la posici y construir la matriz A on pi, j q sea pxi q b pyj q. Este algoritmo es estable porque por (5.2) y (5.4)

con

| i|, | j |, | ij |

pxi q b pyj q  xi p1
M.

qyj p1 j qp1 ij q || 3, 18 M ,

Operando como m as arriba vemos que

pxi q b pyj q  xi yj p1 q,

lo que indica que

, respectivamente. yA Por lo tanto

}aij a ij } }aij }  Op M q siendo aij  xi yj y a ij  pxi q b pyj q los elementos en la posici on pi, j q de A  xy T
A}8 }A }A}8  Op M q,

y esta expresi on es v alida para cualquier norma por la equivalencia de normas. De acuerdo con la denici on de estabilidad de los algoritmos resulta que este algoritmo es estable. Con los vectores x, y del ejemplo anterior px, y q  A  f
 

0,1111 0,6614 0,1569 0,9938

112

Estabilidad

Si ponemos x 1

16 1 0,9338 17  0,6666, x 2  , y 1  , y 2  17 6 16

resulta que, en aritm etica exacta, f px , y q  x y Usando la norma espectral px, y q} }f px , y q f 1,183 104 }f px , y q} Sin embargo, el algoritmo no es estable hacia atr as. La explicaci on es lasiguiente:  La matriz calculada, A, es una peque na perturbaci on de la matriz A  xi yj que tiene rango 1. Sabemos que el conjunto de las matrices de rango completo es un conjunto abierto y denso en Rnn . Esto signica que tan cerca como queramos de sea una de tales A hay matrices de rango superior a 1. Es muy probable que A fuera de rango 1, se deber matrices. En efecto, para que A a poder escribir como el T producto externo de dos vectores x y con x yy pr oximos a x y y , respectivamente. , debemos multiplicar Ahora bien al hacer el c alculo de los elementos de la la i de A en aritm etica de punto otante pxi q b py j q, j  1, . . . , n, con los consiguientes redondeos. A un suponiendo que xi , yi ya est an redondeados, tendr amos: xi b yj
T

0,1111 264550209{p4 108 q . 8{51 0,9338

 xiyj p1 ij q

con, posiblemente, ij diferentes para cada i, j . Es muy poco probable que, en estas circunstancias, xi b yj  x i y j para i, j  1, . . . , n. En otras palabras, muy probable mente la matriz A tendr a rango mayor que 1. Esto imposibilita que se pueda escribir en la forma x y T . Podemos ver este hecho en el ejemplo anterior: Para px, y q  A  f
 

0,1111 0,6614 0,1569 0,9938

que es la matriz x y T redondeada con la aritm etica de base decimal y 4 cifras en la mantisa, rang A  2. De hecho, sus valores singulares calculados con MATLAB son 1,16034185454010 y 2,454449082275455 105 . Por lo tanto, esta matriz nunca podr a escribirse como un producto externo de vectores, porque estas matrices tienen todas rango 1.

5.5 Estabilidad de la eliminaci on gaussiana

113

5.5.

Estabilidad de la eliminaci on gaussiana

El problema de la estabilidad del algoritmo de la eliminaci on gaussiana ha sido objeto de estudio durante muchos a nos; y, aunque hoy en d a se comprende bastante bien y su uso es casi siempre altamente able, hay todav a algunas cuestiones dif ciles que merecen estudio y que inducen a utilizarlo con cuidado. Su estudio detallado requerir a mucho tiempo, as que aqu vamos ver lo justo para hacernos una idea de donde pueden estar las dicultades. Conviene en este punto repasar el Ejemplo 5.7 en el que se estudi o la estabilidad hacia atr as de la eliminaci on gaussiana para un sistema de orden 2 pero que sirve como gu a de lo que viene a continuaci on. Como en casi todos los casos en los que se estudia la estabilidad de un algoritmo, la parte m as tediosa del an alisis es la de llevar la cuenta de los errores de redondeo en cada etapa del algoritmo. Haremos un an alisis un poco detallado del primer paso del algoritmo y daremos directamente el resultado. Recordemos que este primer paso consiste en seleccionar el mayor elemento, en m odulo, de la primera columna (el pivote) y permutar las para ponerlo en la posici on p1, 1q. Esto no produce ning un tipo de error (el posible error en el redondedo de los datos ya se ha producido al almacenar la matriz en la memoria del ordenador). As pues analizaremos lo que viene a continuaci on: se resta a cada la la primera multiplicada por el multiplicador: mi1

 ai1{a11,

pero hecho en la aritm etica de punto otante (supondremos, para simplicar la notaci on y no hacer m as tedioso el an alisis, que los n umeros de la matriz ya est an redondeados al correspondiente n umero en punto otante; i.e., aij  paij q): ai 1 p1 i1q mi1  pai1 {a11 q  a11 con

| i1 |

M.

Si ponemos a i1

 ai1p1 i1q a i1 {a11 .

(5.10)

entonces, en aritm etica exacta mi1 (5.11)

Procedemos a eliminar los elementos de la primera columna por debajo del elemento en la posici on p1, 1q. Para i  2, . . . , n y j  1, . . . , n a1ij

 paij mi1aij q  raij mi1a1j p1 ij qsp1 ij q   aij mi1a1j aij ij mi1a1j p ij ij ij ij q.

114

Estabilidad

Si ponemos a ij entonces

 aij aij ij mi1a1j p ij ij


a1ij

ij ij

(5.12) (5.13)

a ij mi1 a1j .

De (5.13) y (5.11) se sigue que el resultado de realizar la eliminaci on gaussiana sobre la matriz original A con redondeo es el mismo que el de realizarla en aritm etica exacta sobre la matriz   a11 a12 a1n a 22 a 2n   21 a  A . . . . . . .  . . .  a n1 a n2

a nn

est Adem as, A y A an pr oximas la una de la otra. En efecto, de (5.12) se sigue que para j 1 |a ij aij | paij 3mi1 a1j q M . Como la eliminaci on ha sido realizada con pivoteo, |mi1 | entonces

1. Y si  m ax |aij | i,j

|a ij aij | 4 M .

Por (5.10), esta acotaci on tambi en se satisface para j

 1.

Esto nos da una idea del an alisis de la estabilidad del algoritmo de eliminaci on gaussiana con pivoteo parcial por columnas. Una an alisis completo requiere mucho m as tiempo y detalle. Damos, a continuaci on, el resultado general sin demostraci on adicional y presentamos un ejemplo de una matriz 3 3 Teorema 5.6 Si se utiliza eliminaci on gaussiana con pivoteo parcial para resolver nn el sistema Ax  b, con A P F , en un ordenador que cumple las condiciones (5.2) y (5.4), entonces la soluci on calculada, x , cumple

pA Aqx b
donde

}A} pnq , M }A}

(5.14)

siendo una funci on creciente de n que depende de la norma, y el cociente entre el mayor elemento en la matriz triangular superior resultante en el proceso de eliminaci on y el mayor elemento de A, todo ello en m odulo.

5.5 Estabilidad de la eliminaci on gaussiana

115

Ejemplo 5.7 Supongamos que queremos reducir la matriz 3,000 2,000 1,000  A  1,000 2,000 3,000 2,000 3,000 2,000 a una matriz triangular superior mediante eliminaci on gaussiana usando, como hasta ahora, aritm etica decimal con 4 d gitos en la fracci on. En la primera columna el pivote es el elemento en la posici on p1, 1q de modo que no hay que permutar las. Los multiplicadores ser an: m21  p1{3q  0,3333 m31 p2{3q  0,6666 Para obtener ceros en las posiciones p2, 1q y p3, 1q con aritm etica exacta y estos multiplicadores, ponemos a 21
 

 3 0,3333  0,9999,

a 31

 3 0,6666  1,9998.  p3 1 0,3333q  2,667,  p2 1 0,6666q  1,333




La submatriz formada por las dos u ltimas las y columnas queda de la siguiente forma: a122 a132

 p2 2 0,3333q  1,333,  p3 2 0,6666q  1,667,




a123 a133

Ahora en la matriz

3 2 1 A1  0 1,333 2,667 0 1,667 1,333 el pivote de la segunda columna es el elemento en la posici on p3, 2q. Permutamos las dos las para obtener   3 2 1 A11  0 1,667 1,333 0 1,333 2,667 Procedemos a anular el elemento en la posici on p3, 2q de esta matriz (antiguo ele1 mento a22 ). El multiplicador es m32

 p1,333{1,667q  0,7996.

116

Estabilidad

Para que en aritm etica exacta con este multiplicador obtuvi eramos un cero en la posici on p3, 2q deber a ser 1 22 a Pero a122 proven a de hacer una operaci on elemental con el multiplicador m21 . As a 22 Finalmente, debemos calcular el elemento que queda en la posici on p3, 3q: a33 As en aritm etica exacta 1 23 a 1 22 m21 a12  1,9995332. a

 1,667 0,7996  1,3329332.

 p2,667 1,333 0,7996q  1,601.

 1,601 1,333 0,7996  2,6668668.


a 23 1 23 m21 a13  3,0001668. a
 

Y como este elemento proven a de la operaci on elemental con el multiplicador m21 :

En aritm etica en punto otante la matriz triangular superior que se obtiene es 3 2 1  U  0 1,667 1,333 0 0 1,601 Y esta matriz se obtendr a mediante aritm etica exacta sobre la matriz   3 2 1  0,9999 1,9995332 3,0001668 A 1,9998 3,0002 1,9996 son muy parecidas. Cu En efecto, A y A anto? En la norma espectral: }2 }A A 4 }A}2 1,04 10 . Si queremos tener una apreciaci on de la cota (5.14) para este ejemplo, calculamos As 3 axij |uij |   1.  m m ax |a | 3
ij ij

}A} pnq 103, }A}

. una cantidad muy conservadora en relaci on a la cota realmente obtenida con A

5.5 Estabilidad de la eliminaci on gaussiana

117

Observaciones 5.8 .-

1. El an alisis del error hacia atr as muestra que la soluci on calculada para Ax  b por eliminaci on gaussiana es la soluci on exacta de una matriz obtenida al perturbar ligeramente A. Si la cota (5.14) es peque na pero el resultado no es preciso entonces no es el algoritmo el que est a fallando sino el condicionamiento del problema o los errores de los datos iniciales.

2. La funci on en (5.14) es, por lo general, una peque na potencia de n, digamos n2 . Sin embargo, cualquier matem aticamente rigurosa resulta siempre una sobreestimaci on del error real en la soluci on, que habitualmente es del orden de n o menor.

3. El n umero es conocido con el nombre de factor de crecimiento porque mide el crecimiento de los n umeros durante el proceso de eliminaci on. Mantener este factor de crecimiento lo m as peque no posible es la raz on para usar pivoteo. En efecto, con pivoteo los multiplicadores se matienen siempre acotados por 1; sin el, podr an alcanzar (por ejemplo cuando el elemento en la diagonal de la columna que se est a reduciendo es casi cero) valores muy grandes. Esto provocar a que en la submatriz afectada por la eliminaci on los elementos crecieran much simo y ser a enorme comparado con M .

4. Desafortunadamente, hay matrices para las que es enorme a un cuando se use pivoteo parcial. Por ejemplo, la eliminaci on gaussiana aplicada a la matriz
 

1 1  W  1 1 1

0 1 1 1 1

0 0 1 1 1

0 0 0 1 1

1 1  1  1 1

118

Estabilidad

ser a de la siguiente forma




1 0  0  0 0

0 1 1 1 1

0 0 1 1 1

0 0 0 1 1

1 1   2 0  2  0 0 2 2 0


0 1 0 0 0

0 0 1 1 1 0 1 0 0 0 0 0 1 0 0

0 0 0 1 1

1 1   2 0  4  0 0 4 4 0


0 1 0 0 0

0 0 1 0 0

0 0 0 1 1

1 2  4  8 8

1 0   0 0 0

0 1 0 2  0 4  1 8 0 16

Y si se aplica la eliminaci on gaussiana sobre una matriz del tipo de W pero de tama no n n, el factor de crecimiento ser a 2n1 . En realidad estos son ejemplos de laboratorio y rara vez aparecen en aplicaciones reales (aunque se han dado casos). La opini on general es que el algoritmo de eliminaci on gaussiana con pivoteo parcial es uno de los algoritmos m as estables y ecientes para resolver sistemas lineales. A pesar de ello, hay que utilizarlo con un poco cuidado y estar alerta a las posibles anomal as que puedan presentar los resultados cuando son comparados con los esperados en la aplicaci on concreta que se tenga entre manos.

5.6.

Precisi on de un algoritmo estable hacia atr as

En la secci on anterior al analizar la cota (5.14) del error en la eliminaci on gaussiana, dijimos que si esta se mantiene razonablemente baja y los resultados son pobres, hay que echar la culpa a los errores en los datos iniciales (i.e., porque empezamos con una mala aproximaci on a A) o al condicionamiento del problema, que sabemos que es pAq. C omo inuye el condicionamiento del problema en el error de los resultados proporcionados por los algoritmos estables? Esta es una pregunta natural que pretendemos contestar en esta u ltima secci on. , para un problema f : X Y . Supongamos que tenemos un algoritmo estable, f Cu an preciso ser a el resultado que devuelve? La respuesta depende del n umero de condici on del problema. Si este es peque no, el resultado ser a preciso (en t erminos de

5.6 Precisi on de un algoritmo estable hacia atr as

119

error relativo); pero si es grande, la falta de precisi on ser a proporcional al n umero de condici on: Teorema 5.9 Dado un problema f : X Y cuyo n umero de condici on es , supongamos que un algoritmo estable hacia atr as es aplicado para resolverlo en un ordenador que cumple los axiomas (5.2) y (5.4). Entonces el error relativo cumple

}fpxq f pxq}  Oppxq q. M }f pxq}


Demostraci on.- Demostraremos este teorema en el caso en que f es diferenciable. En el caso general la demostraci on es un poco m as t ecnica. Si f es diferenciable en x, para todo x sucientemente pr oximo a x tenemos que

donde

}rpx x q}  0. As } x x }0 }x x } }f pxq f px q} }f pxq}


l m

f pxq f px q  f 1 pxqpx x q rpx x q

}x x } }f 1 pxq} }x} }rpx x q} }x} }f pxq} }f pxq} } r px x q} }x x } }x} pxq }f pxq} .

es un algoritmo estable hacia atr Ahora bien si f as para x, existe x con

}x x } } x}  O p M q
pxq. Entonces tal que f px q  f

q} }x} }x x q} }f pxq fpxq} pxq }rpx x }f pxq} }x x } }f pxq} } x} . }rpx x q} Dado que l m  0, para x sucientemente pr oximo a x, }xx }0 }x x } }f pxq fpxq} pxq }x x q} }f pxq} } x} .

(5.15)

120

Estabilidad

Y como }x x } 0 cuando

0, conclu mos que }f pxq fpxq}  pxqOp q  Oppxq q, M M }f pxq}


M

tal y como se quer a demostrar.

Cap tulo 6 Proyecciones y bases ortonormales

6.1.

Introducci on

Este es el primero de los dos cap tulos dedicados a la factorizaci on QR y a la soluci on del problema de m nimos cuadrados. La factorizaci on QR es una manera matricial de presentar el ya conocido procedimiento de ortonormalizaci on de Gram-Schmidt. No perseguimos volver a presentar este procedimiento sino mostrar que hay varias formas de conseguir bases ortonormales que producen algoritmos con distintas propiedades. En este cap tulo nos centraremos en algoritmos ligados al m etodo de Gram-Schmidt y en el siguiente estudiaremos las reexiones de Householder. Veremos que los principios que fundamentan ambos tipos de algoritmos son completamente diferentes. Debemos recordar que, b asicamente, el m etodo de ortonormalizaci on de GramSchmidt consiste en lo siguiente: Dado un subespacio del que se conoce una base ortonormal y un vector que no est a en el subespacio, se proyecta este sobre el ortogonal de aqu el a n de conseguir una base ortonormal para un subespacio de dimensi on una unidad mayor. Procediendo recursivamente desde un vector dado se puede conseguir una base ortonormal de todo el espacio. Todo este procedimiento 121

122

Proyecciones y bases ortonormales

est a basado en el concepto de proyecci on ortogonal que repasamos brevemente a continuaci on, para volver luego sobre dos algoritmos diferentes ligados, ambos, al m etodo de Gram-Schmidt.

6.2.

Proyecciones

Comenzamos deniendo lo que entendemos por proyecci on: Denici on 6.1 Una matriz P P Cnn se dice que es una proyecci on si es una 2 matriz idempotente. Es decir, si P  P . Algunas consecuencias inmediatas de esta denici on son las siguientes Proposici on 6.2 Si P P Cnn es una proyecci on tambi en lo es In P . A esta se le llama proyecci on complemetaria de P y cumple que Ker P  ImpIn P q y KerpIn P q  Im P . Demostraci on.- En primer lugar pIn P q2 P  P . As pues, In P es una proyecci on.
2

 In 2P P 2  In P

porque

Adem as, y P ImpIn P q pIn P qx  y para alg un x. Y de aqu , P y  P pIn P qx  pP P 2 qx  pP P qx  0, lo que indica que y P Ker P . Rec procamente, y P Ker P P y  0 pIn P qy  y y P ImpIn P q. La identidad KerpIn P q  Im P se demuestra cambiando los papeles de In P y P.

Proposici on 6.3 Si P

P Cnn es una proyecci on entonces Im P ` Ker P  Cn

Demostraci on.- En primer lugar, la suma Im P Ker P es directa porque, de acuerdo con la Proposici on anterior, Im P  KerpIn P q y si x P KerpIn P qX Ker P entonces pIn P qx  0 y P x  0. De aqu , x  0.

6.3 Proyecciones ortogonales

123

Por otra parte Im P Ker P Cn . Y si x P Cn es un vector cualquiera entonces x  P x pIn P qx. Pero P x P Im P y pIn P qx P ImpIn P q  Ker P . Esta simple Proposici on tiene una consecuencia importante: si P es una proyecci on, esta determina dos subespacios mutuamente suplementarios: Im P y Ker P . El rec proco tambi en es cierto. Si S1 y S2 son subespacios de Cn tales que S1 ` S2  Cn entonces hay una proyecci on P tal que S1  Im P y S2  Ker P . En efecto, siendo n S1 ` S2  C , cualquier matriz queda completamente determinada por su acci on nn sobre los vectores de S1 y S2 . En concreto, si denimos P P C como la matriz que cumple " x si x P S1 Px  0 si x P S2 resulta que en cualquier base de Cn obtenida como reuni on de bases de S1 y S2 , la matriz de P , como aplicaci on lineal, es P

Ip 0 0 0

siendo p  dim S1 . En cualquier otra base de Cn , la matriz ser a semejante a esta. Es claro que P es una proyecci on y que Im P  S1 y Ker P  S2 . Es la proyecci on sobre S1 a lo largo de (o paralelamente a) S2 . As pues on, proyecta Cn sobre Im P a lo largo de Conclusi on: Si P es una proyecci Ker P .

6.3.

Proyecciones ortogonales

Como su nombre indica las proyecciones ortogonales son las que proyectan a lo largo del ortogonal. Denici on 6.4 Una proyecci on P

P Cnn es ortogonal si Ker P  pIm P qK.

Es f acil demostrar que para cualquier matriz A P Cmn , pIm AqK  Ker A . En efecto, x P Ker A A x  0 x A  0 x Ay  0 para todo y P Cn x K z para todo z P Im A x P pIm AqK .

124

Proyecciones y bases ortonormales

Proposici on 6.5 Una proyecci on P es ortogonal si y s olo si P herm tica).

P (i.e., es

Demostraci on.- En primer lugar, si P es proyecci on tambi en P lo es. Ahora, si P es una proyecci on ortogonal entonces Ker P  pIm P qK  KerpP q. Tambi en se cumple que Im P  ImpP q. As es,

pIm P qK  KerpP q  Ker P  pIm P qK,

por denici on de proyecci on ortogonal. Como para cualquier subespacio de Cn , pS KqK  S , conlcu mos que Im P  Im P . Ahora bien, dos aplicaciones lineales que coinciden sobre dos subespacios suplementarios son la misma. Como P x  P x  x para x P Im P  ImpP q y P x  P x  0 para x P Ker P  KerpP q, tenemos que P  P . Resultar a m as u til la siguiente caracterizaci on de las proyecciones ortogonales. Proposici on 6.6 Una matriz P P Cnn de rango r es una proyecci on ortogonal si y s olo si existe una matriz Q P Cnr , con columnas ortonormales, tal que P  QQ . Demostraci on.- Supongamos primero que P nr C con columnas ortonormales. Entonces P2

 QQ para alguna matriz Q P  P ; es

 QQQQ  QpQQqQ  QQ,  pQQq  pQqQ  QQ  P.

porque Q Q  Ir por tener Q las columnas ortonormales. Por lo tanto P 2 decir, P es una proyecci on. Adem as P

As que, por la Porposici on anterior P es una proyecci on ortogonal. Supongamos ahora que P es una proyecci on ortogonal y sea tq1 , . . . , qr u una base   ortonormal de Im P . Pongamos Q  q1 q2 qr . Veamos que P  QQ . Para ello probaremos que P x  QQ x para todo x P Cnn . Sea x un vector cualquiera de Cn . Como P es una proyecci on Cn  Ker P ` Im P . Por lo tanto existen unos u nicos vectores x1 P Im P y x2 P Ker P tales que x  x1 x2 . Entonces P x  P x1  x1 y P x2  0. Es decir, P x  x1 . Calculemos QQ x.

6.3 Proyecciones ortogonales

125

Por una parte

x q1 r q x  2  xqq . p qi QQ x  Q  .  i .  .  x qr
i 1

(6.1)

Ahora bien, como qi

P Im P

y x2

P Ker P  pIm P qK  qix1.

x  qx qx qi i 2 i 1
Pero, Im P  q1 , . . . , qr yendo en (6.1)

, por lo que x1  a1q1 ar qr y qix1  ai. Sustitur QQ x  ai q i  x 1 . j 1

En conclusi on P x  QQ x para todo x P Cn y P

 QQ.

Observaciones 6.7 1. Si Q tiene columnas ortonormales entonces P  QQ es la proyecci on ortogonal sobre Im P a lo largo de Ker P  pIm P qK  Ker P . Ahora bien, como P  QQ y Q es de rango completo, Im P  Im Q y Ker P  Ker Q . En conclusi on QQ es la proyecci on ortogonal sobre Im Q a K lo largo de Ker Q  pIm Qq . 2. In QQ tambi en es una proyecci on, la complementaria de QQ . Y tambi en es ortogonal porque pIn QQ q  In QQ . Por la Porposici on 6.2, ImpIn QQ q  KerpQQ q  Ker Q  pIm QqK y KerppIn QQ q  ImpQQ q  Im Q. Por lo tanto, es la proyecci on ortogonal sobre pIm QqK a lo largo de Im Q. 3. Nos interesan muy especialmente las proyecciones ortogonales de rango 1. Son las de la forma Pq  qq siendo q un vector unitario. Por lo dicho anteriormente, qq es la proyecci on ortogonal sobre Im q  q a lo largo de pIm q qK  q K .

De la misma forma In qq es una proyecci on de rango n 1: es la proyecci on ortogonal sobre q K a lo largo de q .

126

Proyecciones y bases ortonormales

6.4.

El algoritmo cl asico de Gram-Schmidt

Recordemos que el m etodo de ortonormalizaci on de Gram-Schmidt consiste, a grandes rasgos, en lo siguiente: Dado un sistema de vectores a1 , . . . , an P Cm , que supondremos linealmente independientes, se trata de conseguir una base ortonormal tq1, . . . , qnu del subespacio a1, . . . , an de modo que

q1, . . . , qj  a1, . . . , aj ,
Para ello se procede de la siguiente forma: 1. q1 a1  }a }

 1, . . . , n.

1 2

2. Para j  2, 3, . . ., qj es la proyecci on ortogonal de aj sobre el subespacio K K a1, . . . , aj1  q1, . . . , qj1 dividido por su norma. Ahora bien, hemos visto en la Observaci on 6.7 que si entonces la proyecci on ortogonal sobre q1 , . . . , qj 1 K es Im Qj 1 Q j 1 . Por lo tanto, vj  pIm Qj 1 Q j 1 qaj es la proyecci on ortogonal de aj sobre Qj 1

q1

q j 1

q1, . . . , qj1 K, y as pIm Qj1Q vj j 1 qaj  qj  }vj }2 }pIm Qj1Qj1qaj }2 .




Dado que esta construcci on es inductiva puede implementarse algor tmicamente. En primer lugar vj  pIm Qj 1 Q j 1 q aj y qj

 aj Qj1Q j 1 aj

 aj

  Qj 1  

aj qj 1

aj q1 aj q2 . . .

    

 aj pqiaj qqi.
i 1

j 1

 }vvj}

j 2

6.4 El algoritmo cl asico de Gram-Schmidt

127

Por lo tanto, si ponemos v1  a1 rjj  }vj }2 aj rij  qi tenemos que para j

 1, 2, . . . , n
aj

  

vj

rij qi 
j 1 i 1

 }vj }2qj rij qi 


j 1 i 1 j i 1

rij qi

q1 q2

r1j   r2j   qj  .   . .  rjj

Si constru mos una matriz con los vectores ai , A entonces A tiene rango completo y




a1 a2

an

Cmn ,

A  a1 a2

an

q1 q2

r11 r12   0 r22 qj  . . .  . . . 0 0

...

r1n r2n   . . . .  rnn

Es decir, A  QR con Q P Cmn una matriz con columnas ortonormales y R  rrij s P Cnn una matriz triangular superior con rii 0. A esta forma de expresar A se le llama factorizaci on QR reducida de A. Y, tal y como hemos visto, el m etodo de ortonormalizaci on de Gram-Scmidt nos proporciona un algoritmo par obtener esta factorizaci on:

128

Proyecciones y bases ortonormales

Algoritmo cl asico de Gram-Schmidt Dada A  a1 a2




an

P Fmn, m n, rangpAq  n, (F  R o C)

R=zeros(n,n) Q=A for j  1:n for i  1:j 1 aj rij  qi qj  qj rij qi end for rjj  }qj }2 qj qj  rjj end for La salida de este algoritmo debe ser una matriz triangular superior R con rii y una matriz Q con columnas ortonormales.

6.5.

El algoritmo modicado de Gram-Schmidt

Hay otro procedimiento te orico que produce tambi en una base ortonormal como la del m etodo de Gram-Schmidt. Partimos de la siguiente observaci on: Si Q P Cmn tiene columnas ortonormales la proyecci on ortogonal QQ es suma de n proyecciones ortogonales de rango 1. En efecto
 

QQ

q 1 q2

  q 2  qn  .  . . qn

q1

q q q q a st.  q1 q1 2 2 n n

Ahora recordemos que en el m etodo cl asico de Gram-Schmidt cada qj se obtiene K proyectando aj sobre q1 , . . . , qj 1 , y despu es normalizando. Es decir, qj

pI Q Q qa  }pI m Q j1Qj1qa j}
m j 1

j 1

j 2

6.5 El algoritmo modicado de Gram-Schmidt

129

De acuerdo con lo que acabamos de ver


j 1 . q i qi Im Qj 1 Qj 1  Im i1

Pero si hacemos el producto

q pIm qj1qj1qpIm qj2qj2q . . . pIm q1q1 qj  0 si i  j , resulta que este producto es y tenemos en cuenta que qi q q . . . q q  I Q Q . Im qj 1 qj j 1 j 1 1 1 j 2 j 2 1
En denitiva, si ponemos Pi

 Im qiqi entonces Im Qj 1 Q j 1  Pj 1 Pj 2 . . . P1 .

(6.2)

Cu al es la interpretaci on geom etrica de esta igualdad?. En primer lugar, Im es la proyecci o n ortogonal sobre pIm Qj 1 qK  q1 , . . . , qj 1 K . En seQj 1 Q j 1 es la proyecci gundo lugar, Pi  Im qi qi on sobre qi K . Por lo tanto, para un n vector x P C cualquiera, pIm Qj 1 Qj 1 qx es la proyecci on ortogonal de x sobre K q1, . . . , qj1 y Pix es la proyecci on ortogonal de x sobre qi K . As pues, Pj 1 Pj 2 . . . P1 x es el vector resultante de hacer lo siguiente: 1. Proyectamos x ortogonalmente sobre

q1 K. Esto es P1x q2 K. Esto K. Esto

2. El vector obtenido, P1 x, lo proyectamos ortogonalemnte sobre es P2 P1 x.

3. El vector obtenido, P2 P1 x lo proyectamos ortogonalmente sobre q3 es P3 P2 P1 x. 4. As sucesivamente hasta proyectar Pj 2 . . . P2 P1 x sobre

qj1 K.

La identidad (6.2) nos dice que es lo mismo hacer este proceso de proyecciones sucesivas que hacer directamente la proyecci on de x sobre q1 , . . . , qj 1 K . Esto segundo es lo que hace el m etodo cl asico de Gram-Schmidt. Pero el resultado te orico es el mismo si se hacen las proyecciones sucesivas de rango n 1. La implementaci on

130

Proyecciones y bases ortonormales

de este procedimiento es lo que denominaremos algoritmo modicado de GramSchmidt. La implementaci on pr actica del algoritmo diere muy poco de la del algoritmo cl asico. De hecho s olo hay que cambiar una l nea:

Algoritmo modicado de Gram-Schmidt Dada A  a1 a2




an

P Fmn, m n, rangpAq  n, (F  R o C)

R=zeros(n,n) Q=A for j  1:n for i  1:j 1 qj (M etodo Cl asico: rij rij  qi qj  qj rij qi end for rjj  }qj }2 qj qj  rjj end for

 qiaj )

aj por rij  q qj Puede no ser evidente por qu e la simple sustituci on de rij  qi i produce el mismo resultado en aritm etica exacta, y puede que tampoco sea evidente por qu e este algoritmo produce
qj

qj Para comprenderlo analicemos con detalle el progreso de las operaciones rij  qi seguida de qj  qj rij qi para un j jo y para i  1, . . . , j 1. La notaci on que usaremos es la del ordenador; es decir, las variables no lo son en el sentido matem atico sino en el del ordenador (lugares f sicos en la memoria del mismo) y iguladadsignica asignaci on. As , para la expresi on:
qj

qa .  pIn qj1qj1q pIn q1q1 j

 qj r1j q1

se debe entender que a la variable qj se le asigna el valor de restar al valor previo de qj el producto r1j q1 . Supongamos entonces jado j

P t1, . . . , nu y procedamos con el bucle:

6.6 N umero de operaciones

131

for i  1:j 1 qj rij  qi qj  qj rij qi end for recordando que el valor de qj al comienzo del mismo es aj . Para i  1

Para i  2 r2j qj

q j  q aj r1j  q1 1 qj  qj r1j q1  aj

aj qq1  aj pq1 q qaj  pIn q1 q qaj . p q1 1 1

qj  q pIn q1 q qaj  q2 1 2 qaj q pIn q1 q qaj q2   qj r2j q2  pIn q1q1 1 2 qaj  pI q2 q qpIn q1 q qaj .  pIn q1q1 qaj q2q2 pIn q1q1 2 1 Siguiendo as sucesivamente obtendr amos para i  j 1 q pI q q qpI q q qa . qj  pI qj 1 qj 2 2 n 1 1 j 1
Por (6.2) resulta que qj

 pIn Qj1Q j 1 qaj

de modo que el valor de qj , en aritm etica exacta, obtenido por los procedimientos cl asico y modicado de Gram-Schmidt es el mismo. Debe notarse que con ambos m etodos, los elementos diagonales de R son n umeros reales positivos independientemente de si la matriz original es de n umeros reales o complejos. Observaciones 6.8 Cuando el tama no de la matriz A es muy grande y puede haber problemas para alojar en memoria las matrices Q y R, en vez de asignar Q=A, se pueden ir sustituyendo las columnas de A por las de Q a medida que esta se va construyendo. Con los ordenadores actuales este es un problema menor, pero todav a hay algoritmos que contemplan esta posibilidad.

6.6.

N umero de operaciones

Al igual que con el algoritmo LU , para los algoritmos que estudiemos en este curso iremos calculando su coste operacional; es decir, una estimaci on del n umero

132

Proyecciones y bases ortonormales

de ops (oating point operations) que conlleva la implementaci on pr actica del mismo. Para ambos algoritmos de GramSchmidt tenemos el siguiente resultado: Teorema 6.9 Los algoritmos cl asico y modicado de GramSchmidt requieren 2 2mn ops para calcular la factorizaci on QR de una matriz m n.

Recordemos que el n umero de ops es un polinomio en el tama no de la matriz y que de este polinomio s olo se suele destacar el t ermino de grado mayor dado que el resto son poco signicativos salvo que n y m sean peque nos. As , el Teorema 7.5 nos dice que el coste de los algoritmos de GramSchmidt es del orden  2mn2 o Op2mn2 q; teniendo estos s mbolos el habitual signicado asint otico: n umero de ops m,n8 2mn2 l m

 1.

Demstraci on. El Teorema puede demostrarse de la siguiente forma: Cuando m y n son grandes, el mayor n umero de operaciones se encuentran en las dos siguiente sentencias: qj (M aj ) rij  qi etodo Cl asico: rij  qi qj  qj rij qi

qj y requiere m multiplicaciones y m 1 La imera l nea calcula el product escalar qi sumas. Y la segunda la calcula qj  qj rij qi precisando m multiplicaciones y n restas. As pues, el trabajo que se hace en cada iteraci on es del orden de  4m. Como hay que hacer i  1 : j 1 iteraciones para j  1 : n, el n umero total de ops necesarios es asint otico a 1 n j
j 1i 1

 

4m  4m

j 1

pj 1q  4m

n 1 j 1

1qn  4m pn  2mn2 Opmnq. 2

6.7.

Existencia y unicidad de la factorizaci on QR

Hemos exigido que los vectores a1 , . . . , an sean  linealmente  independientes. En estas circunstancias la descomposici on QR de A  a1 an es u nica. En efecto, ambos m etodos utilizan proyecciones ortogonales, y estas son u nicas. Por ejemplo, a1 el m etodo cl asico, empieza construyendo q1  a denido }a1}2 , de modo que est

6.7 Existencia y unicidad de la factorizaci on QR

133

de forma u nica; y para j  2, . . . , n , qj es la proyecci on ortogonal de aj sobre el subespacio a1 , . . . , aj 1 K y luego normalizado. La proyecci on ortogonal de aj sobre un subespacio jo es u nica; y, por supuesto, la norma del vector obtenido tambi en. As pues, la matriz Q obtenida es u nica.

q1, . . . , qn , que son u nicos.


Estos argumentos prueban Teorema 6.10 Si A factorizaci on QR.

Por su parte, los elementos de R son las componentes de cada aj en la base

Cmn (m

n) tiene rango completo admite una u nica

No obstante, debe notarse que hay varias formas de escribir A  QR con Q una matriz con columnas ortonormales y R triangular superior. Por ejemplo, si A  QR  pei Qq tiene columnas ortonormales y tambi en A  pei Qqpei Rq. cumple que Q i  e R es triangular superior. Pero la condici R on rii P R exige que  0. Analizamos ahora el caso en que rangpAq no es completo. En este caso, habr a una columna, digamos aj , que ser a combinaci on lineal de a1 , . . . , aj 1 . Es decir, aj

P a1, . . . , aj1  q1, . . . , qj1 .

Como qj es la proyecci on ortogonal de aj sobre el subespacio a1 , . . . , aj 1 K una vez normalizado, y aj P q1 , . . . , qj 1 tenemos que qj  0. Mejor dicho, la proyecci on ortogonal, vj , de aj sobre a1 , . . . , aj 1 K es el vector cero y as rjj  }vj }2  0. Esto imposibilita construir el vector unitario y continuar el algoritmo en el punto en que se hace la divisi on qj

 rqj .
jj

Este hecho parecer a indicar que no existe factorizaci on QR. Sin embargo, te oriK camente, podr amos escoger para qj un vector unitario en q1 , . . . .qj 1 y proseguir con el proceso de Gram-Schmidt; y hacerlo tantas veces cuantas sea necesario. En la pr actica no hay posibilidad de escoger de manera adecuada el vector qj ortonormal a q1 , . . . , qj 1 . Esto s olo es una posibilidad te orica que nos permite asegurar que, incluso cuando A no es de rango completo, siempre admite una factorizaci on QR.

134

Proyecciones y bases ortonormales

Teorema 6.11 Toda matriz A P Cmn (m n) admite una factorizaci on QR. Debe observarse que si A no tiene rango completo entonces habr a factorizaci on QR de A, pero no se cumplir a que Im Q  Im A. En la pr actica, dif cilmente el valor calculado por el ordenador ser a exactamente rjj  0, debido al redondeo. Muchos programas, como MATLAB, si el n umero por el que se va a dividir es muy peque no, emiten un aviso de divisi on por cero. Pero los errores de redondeo pueden ser de tal magnitud que MATLAB no detecte que tal divisi on por cero se ha producido y nos devuelva un resultado. Por ejemplo >> A=ones(3); >> [Q,R]=clgs(A) Q = 5.7735e-01 -5.7735e-01 5.7735e-01 -5.7735e-01 5.7735e-01 -5.7735e-01 R = 1.7321e+00 1.7321e+00 0 3.8459e-16 0 0

5.7735e-01 5.7735e-01 5.7735e-01 1.7321e+00 3.8459e-16 8.5397e-32

Claramente rangpAq  1 pero MATLAB lleva a cabo el algoritmo sin ning un tipo de aviso. Vemos, enseguida, que las dos u ltimas las de R son casi cero. Esto nos indica que algo raro sucede. Si hacemos >> Q*Q ans = 1.0000e+00 -1.0000e+00 1.0000e+00 >> Q*R ans = 1 1 1 1 1 1

-1.0000e+00 1.0000e+00 -1.0000e+00

1.0000e+00 -1.0000e+00 1.0000e+00

1 1 1

6.8 Factorizaci on QR reducida y completa

135

observamos que Q no es unitaria. El algoritmo nos devuelve una factorizaci on de A en dos matrices Q y R. R es triangular superior con rii 0 pero Q no es unitaria. Por lo tanto, no se trata de una factorizaci on QR de A. Este fen omeno es bastante frecuente con los algoritmos de Gram-Schmidt y lo analizaremos con m as detalle en la u ltima secci on de este Tema.

6.8.

Factorizaci on QR reducida y completa

Al igual que con los valores singulares existe una factorizaci on reducida y una factorizaci on completa de cualquier matriz A P Cmn (m n). La reducida ya hemos visto lo que es: una descomposici on de A en dos factores Q P Cmn y R P Cnn , con Q una matriz cuyas columnas son ortonormales y R una matriz triangular superior con elementos diagonales n umeros reales positivos (si A es de rango completo) o cero (si A no es de rango completo). Para obtener una factorizaci on QR completa de A se a naden a Q m n columnas mm ortonormales para formar una matriz Q P C que sea unitaria. Y se a naden a R m n las de ceros para obtener la matriz  R


R 0pmnqn

R , pero esta factorizaci Claramente A  Q on no tiene por qu e ser u nica, debido . A cualquier a la arbitrariedad de la elecci on de las u ltima m n columnas de Q yR con estas propiedades (i.e. Q unitaria y descomposici on de A en dos factores Q P Cmn con rij  0 para i j y rjj 0) se le llama factorizaci R on QR completa de A. Los algoritmos de Gram-Schmidt proporcionan factorizaciones reducidas. En la pr oxima lecci on estudiaremos otro algoritmo que da una factorizaci on completa. Ya hemos dicho c omo pasar de una factorizaci on reducida a una completa. El rec proco mn es obvio: si A  QR es una factorizaci on completa de A P C y m n, entonces sus u se obtiene una factorizaci on reducida eliminando de Q ltimas m n columnas sus u y de R ltimas m n las de ceros.

136

Proyecciones y bases ortonormales

6.9.

Un an alisis experimetal de la estabilidad de los algoritmos de Gram-Schmidt

El experimento que se expone a continuaci on, hecho con MATLAB, tiene como nalidad explorar la diferencia en la estabilidad num erica entre los algoritmos cl asico y modicado de Gram-Schmidt. Primero constru mos una matriz A de tama no 80 80 con vectores singulares aleatorios y valores singulares en progresi on geom etrica desde 21 hasta 280 de 1 raz on 2 : disp(Escogidas U y V matrices ortogonales 80x80 aleatorias) S=diag(2.^(-1:-1:-80)); A=U*S*V; Y usamos los algoritmos cl asico y modicado de Gram-Schmidt para calcular factorizaciones QR de A: [QC,RC]=clgs(A); [QM,RM]=mgs(A); Finalmente, dibujamos los elementos diagonales rjj de R producidos por ambos algoritmos con una escala logar tmica: axis([1 80 10^(-25) 10^0]) semilogy(1:80, diag(RC),*) hold on semilogy(1:80,diag(RM),o); semilogy(1:80, 2.^(-1:-1:-80),r.-); plot(1:80,sqrt(eps).*ones(80),1:80,eps.*ones(80)) Esto, m as algunas sentencias para presentar la gr aca con el texto apropiado, proporciona la Figura 6.1, que interpretamos a continuaci on. Por una parte rjj  }vj }2 con vj  pIm Qj Q j qaj , de modo que rjj nos da una idea del tama no del vector proyecci on de aj sobre a1 , . . . , aj 1 K . Salta a la vista

6.9 Un an alisis experimetal de la estabilidad de los algoritmos de Gram-Schmidt137

10

10

eps1/2
10
10

rjj
10
15

eps

10

20

2
10 20 30 40 50 60

10

25

70

80

Figura 6.1: Elementos diagonales de R en la descomposici on QR de A calculados con MATLAB mediante los algoritmos cl asico y modicado de G-S. El algoritmo cl asico produce los n umeros representados por y el modicado, los representados por . en la gura que rjj es una funci on decreciente de j y que este decrecimiento se hace, sobre todo al principio, a lo largo de la recta 2j . Esto es bastante razonable porque A  U SV
T

80 i 1

T si ui vi

T T T  21u1v1 22u2v2 s80u80v80 ,

y la j - esima columna de A es aj

 21vj1u1 22vj2u2 280vj,80u80. }vj }2 


80 i 1

Ahora bien, las las de V son ortonormales as que

y, como V es aleatoria, podemos suponer que todos los |vji | son, aproximadamente, de la misma magnitud. Es decir,

|vji|2  1,

|vji| 

1 80

1{2

 801{2  0,1.

138

Proyecciones y bases ortonormales

As pues aj

 801{2

21 u1 22 u2 280 u80 .

Todos los ui son vectores unitarios por lo que la componente de aj en la direcci on de ui es el doble que su componente en la direcci on de ui1 . En particular, la componente m as fuerte de aj es en la direcci on de u1 . Pero al hacer la descomposici on QR de A, q1 tiene la direcci on de a1 , que es, aproximadamente, la de u1 . Es decir, q1  u1 y, por lo tanto, r11  21 801{2 . En el segundo paso, v2

a qq  a pu a qu  801{2  a2 p q 1 2 1 2 1 2 1

22 u2 280 u80

 801{222u2,

as que q2  u2 y r22  801{2 22 . Y as sucesivamente. Esto justica por qu e los rjj j decrecen aproximadamente pegados a la recta 2 . Lo segundo que llama la atenci on es que este comportamiento de rjj de ir pe? j gado a la recta 2 se detiene en un cierto punto. Aproximadamente en eps para el algotitmo cl asico de Gram-Schmidt y en eps para el modicado. Esto es una consecuencia del redondeo. Con el algoritmo cl asico los rjj nunca son menores de 8 10 mientras que con el modicado se reducen del orden de 8 d gitos decimales m as, hasta, aproximadamente, 1016 ; el orden del epsilon de la m aquina, eps. Nada mejor es esperable. Algunos algoritmos son m as sensibles que otros a los errores de redondeo. Es conocido que al algoritmo cl asico le pueden afectar mucho. Por ello rara vez se usa.

6.10.

P erdida num erica de ortogonalidad

Hay otro tipo de inestabilidad que afecta a ambos algoritmos del que ya hemos visto un ejemplo m as arriba: ambos pueden calcular matrices Q que est an lejos de tener columnas ortonormales. Una medida de la ortogonalidad de las columnas de una matriz nos la da el siguiente procedimiento: Si las columnas de Q P Cmn son ortonormales entonces Q Q  In . Si las columnas de Q son casi ortonormales entonces Q Q es casi In ; es decir, los elementos de la matriz Q Q In son casi cero. O equivalentemente }QQ In}2  0.

6.10 P erdida num erica de ortogonalidad

139

La p erdida de ortogonalidad ocurre cuando A est a pr oxima a no tener rango completo; es decir, cuando n  0. Y como en la mayor parte de los fen omenos de inestabilidad, esta aparece incluso en matrices de dimensi on peque na. Vamos a presentar dos ejemplos, uno para hacer a mano y otro con MATLAB. Consideremos la siguiente matriz A
 

0,70000 0,70711 0,70001 0,70711

en un hipot etico ordenador que redondea los resultados a 5 d gitos de exactitud relativa. Los algoritmos cl asico y modicado de Gram-Schmidt son id enticos para matrices de dos columnas. Observemos, en primer lugar, que 2 pAq  5,0252 106 es la distancia de A a las matrices de rango 1. Calculemos la descomposici on QR que se obtendr a en esta situaci on (recordemosque lo hacemos redondeando a 5 d gitos signicativos). En el primer paso del algoritmo a1

0,70000 0,70001

r11  }a1}2 


0,72 0,700012

 0,98996

q1  a1{r11 
En el segundo paso

0,70710 0,70711

a2  0,70710 0,70711 0,70711 r12  q1


0,70711


 1,0000p045 . . .q


0,70711 v2  a2 pq a2 qq1 
1

0,70710 1 0,70711 0,70711

0,00001 0,00000

  

Los errores de redondeo en este c alculo de v2 son determinantes. De hecho q2 y la matriz Q obtenida es Q


1 0

0,70710 1 , 0,70711 0

que a ser   es una matriz lejos de ser ortogonal. Para serlo la primera columna deber 0 , muy lejos de q1 . De hecho 1

}QQ In}2  0,70710,

140

Proyecciones y bases ortonormales

un n umero muy grande. En un ordenador con 16 d gitos de precisi on como los habituales y usando MATLAB con esta misma matriz: >> A=[ 0.70000 0.70711; 0.70001 0.707111]; >> [Q,R]=mgs(A); >> norm(Q*Q-eye(2)) produce ans= 2.3014e-11 un n umero peque no pero muy grande comparado con el epsilon de la m aquina, eps, que es del orden de 2.2204e-16. Si hacemos lo mismo con el algoritmo QR implementado por MATLAB y que estudiaremos en la pr oxima lecci on obtenemos >> [Q,R]=qr(A); >> norm(Q*Q-eye(2)) ans = 2.3514e-16 que es del orden del epsilon de la m aquina.

Cap tulo 7

Reexiones de Householder y el Algoritmo QR

7.1.

Introducci on

Hay otros dos m etodos importantes para calcular la descomposici on QR de una matriz: las reexiones de Householder y las rotaciones de Givens. Ambos comparten la propiedad de ser procesos que conducen a una triangularizaci on de la matriz dada mediante transformaciones ortogonales (caso real) o unitarias (caso complejo). En este curso estudiaremos el primero de los dos m etodos (el de las reexiones de Householder). Una buena referencia para el m etodo de las rotaciones de Givens es el libro de Golub y van Loan [9]. En realidad, estos dos m etodos, son el resultado de aplicar un teorema general de a lgebra que establece que toda transformaci on ortogonal (o unitaria) es un producto de simetr as (reexiones o giros). Los m etodos de Householder y Givens dieren de los de Gram-Schmidt en un hecho b asico fundamental. Para ver esta diferencia analicemos, de nuevo, el proecedi141

142

Reexiones de Householder y el Algoritmo QR

miento de ortonormalizaci on de Gram-Schmidt: dada A  a1 a2 1 a1 con r11  }a1 }2 . As , si (F=R o C) denimos q1  r11 R1 tenemos que

an

P Fm n

 Diag

1 , 1, . . . , 1 r11

 AR1  A continuaci on, ponemos r22  }a2 }2 y


A2 q2 Si denimos

q 1 a2

r12 a1 r11

an .

1 a qq q  1 p a2 p q 1 2 1 r22 r22 1 0   R2  0 . . . 0


a2

 r1 a2 r r12 r
22

a1

11 22

r r

1 r22

12 22

0 . . . 0


0 0 1 . . . . .. 0

0 0  0   . . . 1

tenemos que A3

 A2R2  A1R1R2 

q 1 q 2 a3

an .

Procediendo de esta forma sucesivamente podemos construir, para la matriz dada A, matrices R1 , R2 ,. . . , Rn de modo que AR1 . . . Rn

 Q, 

siendo Q una matriz cuyas columnas son ortonormales. Se pone, entonces, R 1 . . . R1 y se obtiene A  QR , la descomposici Rn on QR, reducida, de A. 1

El m etodo de Householder; y tambi en el de Givens, cambia completamente el punto de vista: se trata de realizar sobre la matriz A una serie de transformaciones unitarias (u ortogonales, en el caso real) Q1 , Q2 . . . , Qn tales que Qn . . . Q1 A  R sea una matriz triangular superior. En lo sucesivo hablaremos de transformaciones y matrices unitarias pero se debe entender que si A es real las transformaciones y matrices son ortogonales.

7.1 Introducci on

143

Lo primero que hay que observar es que mientras los m etodos de ortonormalizaci on de Gram-Schmidt produce una factorizaci on QR reducida, el de Householder produce una factorizaci on completa. En aquel caso Q es de tama no m n y R es n n. En el m etodo de Householder cada Qi es unitaria (o, insistimos por u ltima vez, ortogonal en el caso real);por lo tanto, de tama no m m. Y R ser a de tama no m n. Sucintamente, el m etodo de Householder consiste en construir matrices unitarias elementales (reexiones) que operan sucesivamente sobre las columnas de A para reducir esta matriz a una forma triangular superior. Esquem aticamente el proceso ser a el siguiente:
 x x x   x x x   x x x

x x x


Q
1

x x x

x 0  0  0 0

x x x x  x x  x x x x Q1 A

Q
2

x x x  x x    0 x    0 x 0 x Q2 Q1 A

Q
3

x x x  x x    x    0 0 Q3 Q2 Q1 A

Q1 opera sobre las las 1 a 5 para hacer ceros en todas las posiciones de la primera columna excepto en la posici on de la diagonal. A continuaci on se construye una matriz Q2 , unitaria u ortogonal en el caso real, que opera sobre las las 2 a 5 de la matriz obtenida en el paso anterior, para hacer ceros en todas las posiciones de la segunda columna por debajo de la diagonal principal. Y as sucesivmente. Es decir, para k  1, 2, . . . , n, Qk opera sobre Ak p1 : k, 1 : nq haciendo ceros en las posiciones pk 1, kq, pk 2, kq,. . . , pm, kq, donde A1  A y para k 1, Ak  Qk1Ak1. Se debe observar que Qk no act ua sobre las primeras k 1 las de Ak1 ; es decir, las deja intactas, por lo que tendr a la siguiente forma: Qk

Ik1 0 k 0 Q

k una matriz unitaria cuyo objetivo es reducir el vector formado por los siendo Q elementos en las posiciones pk, k q, pk 1, k q,. . . , pm, k q de Ak1 a un vector cuya u nica componente posiblemente no nula sea la primera: x x x   0     k  Q .   .. . . . . x 0
   

144

Reexiones de Householder y el Algoritmo QR

La primera cuesti on surge de forma natural: existe siempre, para cualquier vector, una matriz unitaria que lo reduce a otro cuya u nica componente no nula sea, posiblemente, la primera?. Como veremos enseguida la respuesta es armativa y es la base del m etodo de Householder.

7.2.

Las reexiones de Householder

El objetivo es resolver el siguiente problema: dado un vector x P Cn1 construir una matriz unitaria Q P Cnn tal que siendo e1 el vector p1, 0, . . . , 0q. Qx  e1

2 ||2  }Qx}2 2  x Q Qx  x x  }x}2 , de donde deducimos que }x}2  ||.

Antes de nada debemos observar que, como Q es unitaria,

La idea de Householder fu e construir tal matriz como la matriz de una reexi on: una simetr a respecto de un hiperplano. El caso particular de R2 nos servir a como gu a de lo que queremos conseguir: dado un vector x P R2 debemos encontrar una hiperplano (en este caso, una recta que pase por el origen) tal que el sim etrico de x respecto de este hiperplano sea e1 (Figura 7.1). Suponiendo que 0, dicha recta (H en la gura) es la bisectriz del angulo que forma los vector x y e1 . Sea v  e1 x  }x}2e1 x (este vector es el de la Figura 7.1 pero trasladado al origen). Como el tri angulo formado por los vectores x, }x}2e1 y v (trasladado desde el origen al extremo de x) es is osceles, resulta que H es perpendicular a v . Es decir, H Figura 7.1: Reexi on sobre el eje de abscisas

v1 x v

| |x| |2 e1

 v K

Cu al es la transformaci on que lleva x sobre }x}2 e1 ?

7.2 Las reexiones de Householder

145

Enseguida notamos que v1 es la proyecci on ortogonal de x sobre v a lo largo de v H . Por lo tanto, si q  en la direcci on de v , tenemos que }v}2 es el vector unitario la proyecci on ortogonal sobre v es Pq  qq ; y

 Pq x  qqx. Como, nalmente, v  2v1 y x v  }x}2 e1 conclu mos que pI 2qqqx  }x}2e1. As pues, la matriz Q que representa la reexi on respecto de v K y que hace que Qx  }x}2 e1 es Q  I 2qq v donde q  }v} y v  }x}2e1 x.
v1
2

Hay otra forma de reejar x sobre el eje de abscisas: hacerlo sobre la direcci on negativa de este. Es decir, la reexi on ser a Q1 x  }x}2 e1 . Razonando como antes, pero respecto de con la Figura 7.2, ser a Q1  I 2q1 q1 u q1  }u }2 y u  }x}2 e1 x. Todo lo anterior nos permite asegurar que en el caso R2 , para un vector x dado, siempre podemos encontrar una transformaci on ortogonal Q de forma que Qx  }x}2e1. Adem as, nos dice que la matriz Q es una reexi on. Es decir, Q  I 2q1 q1 u con Q1  }u}2 y u  }x}2 e1 x. esta es nuestra gu a para demostrar que lo mismo es posible en Cn .
 
| |x| | e 2 1

H
u1 u x v +| |x| | e 2 1

H+

Figura 7.2: Las dos reexi on sobre el eje de abscisas

x1 .  n i Lema 7.1 Sea x   . .  P C y escribamos x1  |x1 |e . Existen vectores unitarios xn n i u1 , u2 P C tales que si Qui  pIn 2ui u i q, i  1, 2, entonces Qu1  }x}2 e e1 y Qu2  }x}2 ei e1 .

146

Reexiones de Householder y el Algoritmo QR

Observaci on: En el caso complejo no se puede asegurar, en general, que la primera componente de Qui x vaya a ser real. Demostraci on.- Elegimos los vectores u1 y u2 siguiendo la orientaci on marcada por el caso R2 . Denimos v1 y u1

 }x}2ei e1 x,
1 ,  }v v} 1

v2

 }x}2ei e1 x,
v2  }v }.
2

u2

Veremos que, en efecto, Qu1 x  }x}2 ei e1 . La demostraci on de que Qu2 se hace igual.

 }x}2ei e1

1 1

Qu1 x  pIn 2u1 u 1 qx  x 2pu1 xqu1


Ahora bien

v1 x v1  x2 v1 .  x 2 pvvv1 x 1 { 2 1 { 2 q pv v q v v
1 1 1 1

x v1
Y

i x1 x x   p}x}2ei eT 1 x qx  }x}2 e i i 2  }x}2e e |x1| }x}2  }x}2p|x1| }x}2q.

v1 v1

    

i p}x}2ei eT 1 x qp}x}2 e e1 xq  2 T i T }x}2e1 e1 }x}2e e1 x }x}2ei xe1 xx  i x1 }x}2 ei x }x}2 1 }x}2 2 }x}2 e 2  2 i i i 2}x}2 }x}2 e |x1 |e }x}2 e |x1 |ei  2}x}2 2 2|x1 |}x}2  2}x}2 p}x}2 |x1 |q.

Por lo tanto Qu1 x  x 2

}x}2p|x1| }x}2q v  x v  x }x} ei e x  }x} ei e , 1 1 2 1 2 1 2}x}2 p}x}2 |x1 |q

tal y como se quer a mostrar. Antes de continuar veamos un ejemplo en R4 . Ejemplo 7.2 Sea x  p3, 1, 5, 1q. Encontrar una reexi on Qu tal que Qu x  p, 0, 0, 0q.

7.2 Las reexiones de Householder

147

Las operaciones las haremos con ayuda de MATLAB. Seg un el Lema 7.1 debemos poner v Ahora Por lo tanto v Entonces u1 As Qu1 Entonces Qu1 x  3, 1, 5, 1q  v1  p6, 0, 0, 0q p3, 1, 5, 1q  p p9, 1, 5, 1q  v2
"

 }x}2ei e1 x ?

y u

v }v}2 .

}x}2 

9 1 25 1  6 y x1

 3.

p3, 1, 5, 1q 1 6


y v2

 ? 1 p9, 1, 5, 1q.
116 5 {6 1{6 5{18 1{18  7{18 5{18 . 5{18 17{18


1{2 1{6  1 { 6 17 {18   pI4 2u1u 1q   5{6 5{18 1{6 1{18


  0  . 0

0 De la misma forma

Qu2 Y Qu2 x  6e1 .

1{2 1{6 5{6 1{6   1{6 53{54 5{54 1{54 .  pI4 2u2u 2q   5{6 5{54 29{54 5{54 1{6 1{54 5{54 53{54

Ahora podemos describir el proceso de triangularizaci on de Householder. La inducci on del siguiente teorema lo pone claramente de maniesto.

148

Reexiones de Householder y el Algoritmo QR

Teorema 7.3 Sea A P Cmn y m n. Existen vectores unitarios u1 , . . . , un tales que para i  1, . . . , n, ui P Cmi1 y si Qui  Imi1 2ui u i y Qi entonces
m m

Ii1 0 0 Qui

P Cmm

superior cuyos elementos diagonales son n umeros reales.

siendo D P C una matriz diagonal unitaria y R P Cmn una matriz triangular

Qn . . . Q1 A  DR

Demostraci on.- Procederemos por inducci on sobre n. Si n  1 entonces A P Cm1 . Si A  0 escogemos cualquier vector unitario u P Cm1 y ponemos D  Im y R  0 P Cm1 . Claramente, Qu A  DR. Si A  0, por el Lema 7.1 existe u1 P Cm1 , unitario, tal que Qu1 A  }A}2 ei e1 (con se quiere decir que se puede elegir u1 para que Qu1 A  }A}2 ei e1 y se puede elegir u1 para que Qu1 A  }A}2 ei e1 . Arrastraremos esta notaci on), siendo el argumento de la primera componente de A. Entonces Qu1 A  DR con D
  0  y R .  . . 0

}A}2

   . 

 Diagpei , Im1q

Supongamos el teorema verdadero para   matrices hasta con n 1 columnas y sea m n A P C . Escribamos A  a1 A1 . Por el primer paso de la inducci on, existe u1 P Cm1 , unitario, tal que Qu1 a1  }a1 }2 ei e1 . As

}a1}2ei Qu A  0
1

xT B

con x P Cpn1q1 y B P Cpm1qpn1q . Aplicamos la hip otesis de inducci on a B . Existen vectores unitarios u2 , . . . , un tales que para i  2, . . . , n, ui P Cpmi1q1 y si Qui  Imi1 2ui u i y   I 0 i 2 i  Q 0 Qui

7.2 Las reexiones de Householder

149

2 (Q

 Qu ) entonces
2

P Cpm1qpm1q una matriz diagonal unitaria y R P Cpm1qpn1q una matriz siendo D triangular superior cuyos elementos diagonales son n umeros reales. Sea Q1  Qu1 y Qi Entonces

n . . . Q 2C Q

R, D

1 0 i 0 Q

P Cmm,


i  2, . . . , n. xT R . D xT R
 

}a1}2ei Qn . . . Q2 Q1 A  0
q, D  Diagpe , D
i

Poniendo

}a1}2 R 0

obtenemos el resultado deseado. Observaciones 7.4 1. Las matrices de la forma Qu  In 2uu , con u P Cn1 unitario, se llaman matrices de Householder o transformaciones de Householder o reexiones de Householder, por ser Householder quien puso de maniesto su inter es en el c alculo num erico. Estas matrices tienen algunas propiedades importantes: (i) Son matrices herm ticas (sim etricas en el caso real). En efecto, Q u

2u u  I 2uu  Q  pIn 2uuq  In n u

(ii) Son unitarias:

(iii)

 pIn 2uuqpIn 2uuq  In 4uu 4uuuu  In donde hemos utilizado que u u  1 porque u es unitario. 1 De las dos propiedades anteriores se deduce que Q u  Qu  Qu . Es
decir, la inversa de una matriz de Householder es ella misma.

Qu Q u

2. Para que una matriz D P Cmm sea diagonal y unitaria debe ser de la forma D  Diagpei1 , . . . , eim q. Por lo tanto, si A P Rmn es real en el Teorema 7.3, debemos concluir que D  Im y que las matrices Qui y R son reales. Es decir, en el caso real las matrices de Householder son ortogonales.

150

Reexiones de Householder y el Algoritmo QR

3. En el Teorema 7.3 no se ha jado el signo de los elementos diagonales de la matriz R. Ello es debido a que dos elecciones de vectores ui es posible. Es decir, es posible elegir tanto vi  }ai }2 ei e1 ai como vi  }ai }2 ei e1 ai . Para ambas elecciones, deniendo ui  vi {}vi }2 , las matrices Qui  I 2ui u i permiten llevar la matriz A a forma triangular. El signo de los elementos diagonales depende de la elecci on realizada. Ahora bien, esta elecci on no es inocua desde el punto de vista del c alculo num erico. El siguiente ejemplo, hecho con MATLAB, lo pone de maniesto: >> A=[2 3; 10^(-7) 4] A = 2.000000000000000 0.000000100000000

3.000000000000000 4.000000000000000

>> v1=norm(A(:,1))*[1;0]-A(:,1), v2=-norm(A(:,1))*[1;0]-A(:,1) v1 = 1.0e-07 * 0.000000022204460 -1.000000000000000 v2 = -4.000000000000002 -0.000000100000000 >> u1=v1/norm(v1), u2=v2/norm(v2) u1 = 0.000000022204460 -1.000000000000000 u2 = -1.000000000000000 -0.000000025000000 >> Q1=eye(2)-2*u1*u1, Q2=eye(2)-2*u2*u2 Q1 = 0.999999999999999 0.000000044408921 0.000000044408921 -0.999999999999999 Q2 = -0.999999999999999 -0.000000050000000 -0.000000050000000 0.999999999999999

7.2 Las reexiones de Householder

151

>> Q1*Q1, Q2*Q2 ans = 1.000000000000000 -0.000000000000000 ans = 1.000000000000001 0.000000000000000 >> R1=Q1*A, R2=Q2*A R1 = 2.000000000000002 -0.000000011182158 R2 = -2.000000000000003 -0.000000000000000

-0.000000000000000 1.000000000000000 0.000000000000000 1.000000000000000

3.000000177635681 -3.999999866773233

-3.000000199999997 3.999999849999995

La primera columna, a1 , de A est a casi en la direcci on de e1  p1, 0q. Si elegimos v1  }a1 }2 e1 a1 la matriz Q1 es ortogonal pero el elemento de la posici on p2, 1q de R1  Q1 A es del orden de 108 , un orden m as que el elemento p2, 1q de A. Sin embargo, si elegimos v2  }a1}2e1 a1 entonces Q2 es un poco menos ortogonal que Q1 , pero R2  Q2 A es perfectamente triangular (hasta la precisi on con la que trabajamos 1016 ). Este ejemplo no es especialmente rebuscado, sucede muy a menudo. Si los vector x P Rm1 y }x}2 e1 son casi iguales (i.e., x1 }x}2 , x2 , x3 ,. . . , xm son casi cero), al hacer la diferencia


 }x}e1 x   

}x}2 x1  x  2  
. . . xm
 

tenemos que hacer la resta }x}2 x1 de dos cantidades casi iguales. Este problema, tal y como se ve en los problemas del Cap tulo 4, est a mal condicionado y los errores de redondeo pueden dar lugar a c alculos inexactos. Esto no sucede

152

Reexiones de Householder y el Algoritmo QR

si elegimos v

 }x}e1 x   

}x}2 x1  x2   
. . . xm
 

porque entonces lo que tenemos que hacer es sumar |x}2 x1 , y la suma es un problema bien condicionado De la misma forma si x y }x}2e1 x.

}x}2e1 son casi iguales y debemos elegir v 

En conclusi on, la elecci on apropiada para v es

 signpx1q}x}2ei e1 x donde signpx1 q es el signo de x1 ; es decir, signpx1 q  1 si x1 0 y signpx1 q  1 si x1 0. Y para ser completamente exahustivos en este punto debemos considerar el caso en que x1  0. En este caso se dene signpx1 q  1. Se
v

debe observar que MATLAB no considera el caso en que x1 pueda ser cero y hay que denirlo expl citamente. Debe observarse tambi en que puesto que Qu  I 2uu se puede, igualmente, elegir v que es la elecci on habitual.

 signpx1q}x}2ei e1 x,

1 un el Teorema 7.3 para cada 4. Teniendo en cuenta que Q u  Qu y que, seg mn APC existen matrices de Householder Qui , i  1, . . . , n tales que

Qun . . . Qu1 A  DR, tenemos que A  Qu1 . . . Qun DR. A  QR es una factorizaci on QR de A. Esta es una factorizaci on QR completa; para obtener una factorizaci on reducida basta suprimir de Q las u ltimas m n columnas y de R sus u ltima m n las (que son las cero).

Si ponemos Q  Qu1 . . . Qun D, resulta que

7.2 Las reexiones de Householder

153

5. Vamos a hacer expl cito el proceso constructivo de factorizaci on QR que est a detr as de la inducci on en el Teorema 7.3. El objetivo es formular un algoritmo que produzca una factorizaci on QR de una matriz arbitraria A P Rmn . Por ello, nos centraremos en el caso real. Supongamos A P Rmn dada. El Teorema 7.3 nos dice que existen vectores unitarios u1 , u2 ,. . . , un , ui P Rmi1 tales que si Qui  Imi1 2ui u i y Qi  DiagpIi1 , Qui q entonces
 

r11

 Qi1 . . . Q1 A   0  0

... 0 0

ri1 i1


Ai

    

Como Qi

 DiagpIi1Qu q
i

 

r11

 Qi Qi1 . . . Q1 A   0  0

..

0 0

ri1i1


Qui Ai

    

Es decir la acci on de Qi sobre la matriz obtenida hasta el paso i 1 s olo afecta a la submatriz Ai . Y Qui Ai

 pImi1 2uiu i qAi  Ai 2ui ui Ai .

Esta es la operaci on que tenemos que realizar en cada paso de el proceso iterativo sobre A. Algo similar sucede con la matriz Q. Recordemos que Q r i  Q1 Q2 qi , i  1, . . . n tenemos que ponemos Q
r Q r i1 Qi 

 Q1Q2 Qn. Si

Ii1 0 . 0 Qui

Por lo tanto, en el paso i s olo quedan afectadas las m i u ltimas columnas de r . As Qi pues
r i p:, i : mqQu Q i r i1 p:, i : mq 2Q r i1 p:, i : mqui u . Q i

154

Reexiones de Householder y el Algoritmo QR

Algoritmo QR de Householder (Caso real) Dada A P Rmn R  A, Q  Im for k  1 to n x  Rrpk, . . . , mq|pk qs u  signpx1 q}x}2 e1 x u u }u}2 Rrpk, . . . , mq|pk, . . . , nqs

Rrpk, . . . , mq|pk, . . . , nqs 2uu Rrpk, . . . , mq|pk, . . . , nqs Qp:, k : mq  Qp:, k : mq 2Qp:, k : mquu end for

La salida de este algoritmo debe ser: una matriz ortogonal Q y una matriz triangular superior R tales que A  QR. Se trata, como ya se ha dicho, de una factorizaci on QR completa de A. Ya se ha indicado m as arriba como conseguir una factorizaci on reducida a partir de esta. Una observaci on nal: El algoritmo QR de Householder, en el caso real, devuelve una matriz triangular superior R cuyos elementos diagonales son n umeros reales pero que pueden ser positivos o negativos. Los algoritmos de GramSchmidt devuelven matrices R con n umeros reales positivos en la diagonal. Se puede conseguir que el algoritmo de Householder tambi en proporcione matrices R con n umeros reales positivos (o negativos) en la diagonal. Para ello, si el elemento en la posici on pk, k q es, digamos, negativo, multiplicamos la k - esima la de R por 1 y tambi en la k esima columna de Q por 1. Es decir, si Ek  Diagp1, . . . , 1, . . . , 1q (1 en la k - esima posici on) entonces A  QEk Ek R. Como Ek es unitaria, tambi en lo es QEk . Y tambi en Ek R es triangular superior. En el algoritmo bastar a a nadir las siguientes l neas de c odigo justo antes de nalizar el bucle for:

if Rpk, k q 0 Rpk, k : nq  Rpk, k : nq Qp:, k q  Qp:, k q end if

7.3 N umero de operaciones

155

7.3.

N umero de operaciones

Estudiamos a continuaci on el coste del algoritmo QR por transformaciones de Householder. Antes de nada debemos hacer una observaci on que es pertinente tambi en para la siguiente secci on donde estudiaremos la estabilidad de este algoritmo: tal y como se ha expuesto aqu el algoritmo (recuadro con el Algoritmo de Householder (Caso real)) la matriz Q se forma expl citamente. Sin embargo, esto no es estrictamente necesario ya que Q es producto de reexiones de Householder y estas quedan determinadas completamente por los sucesivos vectores unitarios u. Podr amos pensar que lo que devuelve el algoritmo no son las matrices R y Q sino la matriz R y los n vectores unitarios u que permiten (si se desea) construir la matriz Q. Teniendo en cuenta esto, las operaciones del algoritmo se encuentran en el bucle (1) (2) (3) (4) x  Rrpk, . . . , mq|pk qs u  signpx1 q}x}2 e1 x u u }u}2 Rpk : m, k : nq  Rpk : m, k : nq 2uu Rpk : m, k : nq

que se realiza para k  1 : n. El n umero m k 1 aparece muy frecuentemente porque es el tama no del vector x. Pongamos  m k 1 para abreviar la notaci on. La sentencia (1) es una asignaci on y por lo tanto en ella no se realizan ops. En la sentencia (2) se hacen:
2 2 multiplicaciones: x2 1 , x2 ,. . . , x . 2 1 sumas: x2 1 x .

1 ra z cuadrada:

2 x2 1 x

1 multiplicaci o en }x}2 e1 . 1 suma para la primera componente de x. En total 2

2  2pm k 2q ops. Como k  1 : n, el n umero total de ops

156

Reexiones de Householder y el Algoritmo QR

necesarios para implementar la sentencia (2) es


n k 1

2pm k 2q

 

pm n 1 kq  2npm n 1q 2 npn2 1q k 1 2mn n2 potencias menores en m y n.


2
n

Para implementar la sentencia (3) se necesita un n umero similar de ops. Es en la sentencia (4) donde se acumula la mayor parte de las ops como veremos ahora. Analicemos cu antas son necesarias para cada j  k : n: Rpk : m, j q  Rpk : m, j q 2upu Rpk : m, j qq Los par entesis en upu Rpk : m, j qq indican la forma que asociamos para realizar los productos. N otese que u Rpk : m, j q es un producto escalar y, por tanto, un n umero cuya formaci on requiere productos y 1 sumas. En total, 2 1 ops. Ahora, si ponemos x  u Rpk : m, j q tenemos que multiplicar el n umero x por 2u; es decir, 2x requiere un producto y 2xu requiere productos para un total de 1 ops. Finalmente, si v  2xu tenemos que hacer la resta Rpk : m, j q v; lo cual requiere ops. As pues, el n umero total de ops para cada j  k : n es p2 1q p 1q  4 . Y el n umero total de ops involucrados en la sentencia (4) para cada k  1 : n son 4 pn k 1q  4pm k 1qpn k 1q. . As pues, el n umero total de ops necesarios para la sentencia (4) es
n k 1

4pm k 1qpn k 1q

pm n kqk  4pm nq k 4 k2 k 1 k 1 k1 npn 1q npn 1qp2n 1q  4pm nq 2 4 6 2 3 2  2mn 3 n potencias menores en m y n.
4
n n n

Teorema 7.5 El algoritmo QR de Householder (caso real) requiere ops para calcular la factorizaci on QR de una matriz m n.

2 3  2mn2 3 n

2 N otese que este algoritmo requiere del orden de n3 ops menos que los algoritmos 3 de Gram-Schmidt.

7.4 Estabilidad del algoritmo de Householder

157

7.4.

Estabilidad del algoritmo de Householder

Estrictamente hablando el algoritmo de Householder para la factorizaci on QR no puede ser estable hacia atr as si se entiende que el objetivo del mismo es calcular para cada matriz A matrices Q, unitaria (ortogonal), y R, triangular superior con n umeros reales en la diagonal. La raz on es la misma que la que impide que ning un algoritmo para el c alculo de la descomposici on en valores singulares de una matriz sea estable hacia atr as (Problema 6 de la Lecci on ??). En efecto, para cualquier algoritmo siempre habr a matrices, A, cuya matriz Q no sea exactamente unitaria (ortogonal) siendo imposible, por lo tanto, que tal matriz Q sea la matriz exactamente unitaria (ortogonal) de alguna matriz pr oxima a A. Dicho lo anterior, y recordando (ver Secci on 7.3) que la formaci on de la matriz Q en el algoritmo de Householder se hace a partir de los vectores unitarios que se construyen en los pasos u  signpx1 q}x}2 e1 x u u }u}2 del algoritmo, podemos interpretar que el resultado que se busca no es la matriz Q expl citamente, sino cada uno de los vectores unitarios v1 , v2 ,. . . , vn que, una vez normalizados, se usan para construir las reexiones cuyo producto permite obtener la matriz unitaria (ortogonal) Q: Q  Q1 Q2 Qn , Qi

 Im 2uiu i,

ui

vi  }v }.
i

Si se entiende que el problema de la factorizaci on QR consiste en, para cada A P mn F (n m), obtener vectores v1 , v2 ,. . . , vn en Fm1 tales que si Qi  Im 2ui u i, vi ui  ume}vi} , y Q  Q1Q2 Qn entonces A  QR con R triangular superior con n ros reales en la diagonal, entonces el algoritmo de Householder para la factorizaci on QR es estable hacia atr as para cualquier matriz A. En efecto, tal algoritmo aplicado mn r, con n aAPF producir a una matriz triangular superior R umeros reales en la v ri r ri , i  1, . . . , tales que deniendo u ri  ri u r diagonal, y vectores v , Qi  Im 2u i, }v ri } r  Q1 Q r n entonces Q rR r es una factorizaci i  1, . . . , n, y Q on QR exacta de una r matriz A pr oxima a A. El siguiente teorema, que damos sin demostraci on, establece la estabilidad hacia atr as del algoritmo de Householder rigurosamente:

158

Reexiones de Householder y el Algoritmo QR

Teorema 7.6 Supongamos que el algoritmo QR por reexiones de Householder se aplica en un ordenador que cumple los dos axiomas de la aritm etica de punto otante mn ryR r como (5.2) y (5.4) de la Lecci on 5. Sea A P F una matriz arbitraria. Sean Q r  A A tal que m as arriba. Entonces existe una matriz A

}A}  Op q M }A}
rR r  A A. yQ

Cap tulo 8

El Problema de M nimos Cuadrados

8.1.

El problema de m nimos cuadrados

El problema del ajuste de datos; es decir, descubrir una funci on matem atica que pueda explicar de la mejor forma posible el comportamiento de alg un mecanismo o grupo de seres u objetos que puede ser medido, y del cual conocemos algunos datos (con sus posibles errores de medici on), es un problema cl asico y ha supuesto un reto para la comunidad matem atica desde su planteamiento por Gauss y Legendre hacia 1800. En lenguaje de algebra lineal consiste en encontrar la soluci on de un sistema lineal Ax  b siendo A P Cmn con m n. En A y b se recogen todos los datos del experimento que se quieren ajustar. Enseguida veremos algunos ejemplos. Sabemos que el sistema tiene soluci on si y s olo si b P Im A, condici on que dif cilmente se cumple si m es mucho mayor que n. Si m n diremos que el sistema Ax  b est a sobredeterminado; y si no existe ning un x P Cn1 tal que Ax  b lo que se 159

160

El Problema de M nimos Cuadrados

puede intentar es buscar un x de forma que el vector r

 Ax b P Cm,

que se llama residuo o vector residual, sea lo m as peque no posible. Lo grande o peque no que sea r lo mediremos mediante una norma. El problema de m nimos n1 cuadrados consiste en encontrar x P C para que el vector residuo tenga la menor norma eucl dea posible. Su formulaci on precisa ser a la siguiente: Problema de m nimos cuadrados: Sea F  R o C. Dada una matriz A P Fmn m y un vector b P F ,(m n) encontrar x P Cn1 para que }Ax b}2 sea m nimo. La elecci on de la norma eucl dea se puede justicar desde varios puntos de vista: hist orico, geom etrico, estad stico, . . . ; pero sobre todo porque es la norma habitual, conduce a los algoritmos m as sencillos y as como todas las normas son funciones continuas de los vectores, la norma eucl dea es, adem as, diferenciable. Como, por a nadidura, la funci on }Ax b}2 alcanza su m aximo absoluto en un m aximo local, este m aximo puede calcularse igualando a cero las derivadas parciales de dicha funci on. Este proceso conduce a lo que se llaman las ecuaciones normales del problema de m nimos cuadrados. Estas ecuaciones nos las encontraremos m as adelante procedentes de un contexto completamente diferente.

Ejemplo 8.1 El ejemplo m as t pico de ajuste de datos por m nimos cuadrados es el c alculo del polinomio de interpolaci on: dados m puntos del plano pxi , yi q, i  1, . . . , m, de forma que xi  xj para i  j , se trata de encontrar un polinomio de grado a lo m as m 1, ppxq  a0 a1 x am1 xm1 , que pase por los n puntos.

Se trata, entonces, de encontrar los coecientes a0 , a1 ,. . . , am1 , para que ppxi q  yi , Esto equivale a resolver el sistema lineal
m 1 a0 a1 xi am1 xi

i  1, . . . , m.

 yi ,

i  1, . . . , m

(8.1)

8.1 El problema de m nimos cuadrados

161

cuya matriz de coecientes es

1 1 x1 x2 xm 1 1 m 1  2  j 1   1 x2 x2 x2  A  xi   . . . .. . . .  .. . . . . . m1 2 1 xm xm xm
Esta es una matriz de Vandermonde cuyo determinante es det A 

i j

pxi xj q.

Por consiguiente A es invertible y el sistema (8.1) tiene una u nica soluci on. En la Figura 8.1 se muestra la gr aca del polinomio de interpolaci on que pasa por los 11 puntos pi, 0q con i  5, 4, . . . , 1, 0, 1, . . . , 4, 5. Se trata de un polinomio de grado 10. A su derecha se ha escrito el c odigo de MATLAB que obtiene los coecientes del polinomio de interpolaci on: c  Azb y que da la gr aca: plot(t, polyval(p,t),a,b,r*,markersize,10);. El comando polyval(p,t) devuelve un vector: el valor del polinomio p en las componentes del vector t. N otese el uso de las sentencias fliplr y flipud para obtener la matriz de los coecientes del sistema y los coecientes del polinomio de interpolaci on en la forma apropiada. La sentencia zeroaxes hace que los ejes cartesianos se dibujen en la forma que se acostumbra a utilizar en la pizarra: dos l neas perpendiculares que se cortan en p0, 0q.
5 4 3 2 1 6 4 2 1 2 3 2 4 6

Figura 8.1: a=-5:5; A=fliplr(vander(a)); b=[0 0 0 1 1 1 0 0 0 0 0]; c=Azb; p=flipud(c); t=linspace(-5.05,5.05); plot(t, polyval(p,t),a,b,r*,...; markersize,10); zeroaxes

Indudablemente el polinomio de interpolaci on se ajusta perfectamente a los datos, pero a menudo estos proceden de experimentos y lo que se pretende es buscar una

162

El Problema de M nimos Cuadrados

curva que interprete los datos obtenidos. Como las mediciones se realizan en momentos puntuales, tal gr aca deber a reejar, salvo que se tengan motivos para pensar lo contrario, una comportamiento suave entre dos datos consecutivos, y no la uctuaci on que muestra el polinomio de interpolaci on de nuestro ejemplo. Quiz a un polinomio de menor grado pueda mostrar un mejor comportamiento. Tal polinomio no pasar a por algunos de los puntos. Pero la medici on de todo proceso real conlleva errores que podr an explicar tal fen omeno. Ejemplo 8.2 (Ajuste por m nimos cuadrados) Con los mismos datos del ejemplo anterior calcular el polinomio de grado 7 que mejor se ajusta a los datos en el sentido de los m nimos cuadrados. Siguiendo los mismos pasos que en el ejemplo anterior lo que buscamos es un polinomio de grado a lo m as n 1 m 1 tal que }ppxq y }2 sea m nimo. Aqu , ppxq es el vector cuya i- esima componente es ppxi q y el vector y es el que tiene por i- esima componente yi . Ahora bien, si
n1 1 x1 x2 x1 1 n1  2 1 x x2 x2  2  A  .  . . .. . .  . .. . . . . . 2 n1 1 xm xm xm

ppxq  a0 a1 x an1 xn1

es la matriz de Vandermonde truncada y c  pa0 , a1 , . . . , an1 q es el vector de los coecientes de p tenemos que ppxq  Ac. As que se trata de hallar un vector c en el que se alcance m n }Ax y}2. n
x C

En la Figura 8.2 se presenta la gr aca producida por MATLAB del polinomio de grado 7 que mejor se ajusta a los datos pai , bi q en el sentido de los m nimos cuadrados. El problema de m nimos cuadrados correspondiente se calcula en el interior de la sentencia ployfit. El resto del c odigo de MATLAB que se muestra es el mismo que en el apartado anterior. Una observaci on nal antes de abordar la soluci on del problema de m nimos cuadrados y los algoritmos correspondientes. Una variante del problema de encontrar

8.2 La soluci on del problema de m nimos cuadrados

163

5 4 3 2 1 6 4 2 1 2 3 2 4 6

Figura 8.2: a=-5:5 A=fliplr(vander(a)) b=[0 0 0 1 1 1 0 0 0 0 0]; p=polyfit(a,b,7); t=linspace(-5.3,5.3); plot(t, polyval(p,t),a,b,r*,... markersize,10); axis([-6 6 -3 5]); zeroaxes

el polinomio de grado a lo m as n 1 que mejor se ajusta a una nube de m puntos, pxi, yiq, distribu dos en el plano es el de encontrar la funci on pxq  c1 1 pxq c2 2 pxq cn n pxq, que mejor se ajusta a una de tales nubes de puntos. Aqu 1 , 2 ,. . . , n son funciones dadas, o de las que uno sospecha que una combinaci on lineal de ellas puede ajustarse bien a los datos. En este caso el problema se reduce a calcular el vector c donde se alcanza el m nimo: m n }Ax y }2 , siendo A P Fmn la matriz cuyo elemento en la posici on pi, j q es j pxi q y siendo y el vector cuyas componetes son y1 , . . . , ym .
x C

8.2.

La soluci on del problema de m nimos cuadrados

En esta secci on demostramos el resultado que nos da la soluci on del problema de m nimos cuadrados. Geom etricamente la situaci on es muy simple (v ease la Figura 8.3): el vector de Im A cuya distancia a b es m nima es la proyecci on ortogonal de b sobre Im A. Y la distancia m nima es la norma del residuo. Esto es lo que nos dice el siguiente Teorema.

164

El Problema de M nimos Cuadrados

r=Ax0b b

Im A

Ax

Figura 8.3: La soluci on del problema de m nimos cuadrados Teorema 8.3 Sean A P Fmn , F  R o C, y b P Fm1 , m n. Sea PA la proyecci on ortogonal sobre Im A. Entonces, Ax0 cumple

}Ax0 b}2  m n }Ax b}2 xPF


n

si y s olo si se cumple cualquiera de las siguientes condiciones que son equivalentes: (i) Ax0 (ii) (iii)

 P A b. b Ax0 P pIm AqK . A Ax0  A b.

Adem as, la soluci on x0 es u nica si y s olo si rang A  n. En la demostraci on se usa el teorema de Pit agoras: Si x, y P Cn son ortogonales 2 2 2 entonces }x y }2  }x}2 }y }2 . En efecto, }x y }2 2  px y q px y q  x x y 2 x y y x  x x y y  }x}2 2 }y }2 , donde hemos usado que x y  y x  0 porque x e y son ortogonales. Demostraci on.- Todo se basa en la demostraci on de la idea geom etrica expuesta m as arriba: m n }Ax b}2  }PAb b}2. n
x C

Vemaos que esto es as . En efecto


2 2 2 }Ax b}2 2  }Ax PA b PA b b}2  }Ax PA b}2 }PA b b}2

8.3 Algoritmos para calcular la soluci on del problema de m nimos cuadrados

165

porque Ax PA b P Im A y PA b b  pI PA qb P pImAqK y aplicando el Teorema de Pit agoras. Por lo tanto, para todo x P Cn

}Ax b}2 }PAb b}2. Pero como PA b P Im A, existe x1 P Cn tal que Ax1  PA b; i.e., }Ax1 b}2  }PA bb}2 . abamos mostrar. Por lo tanto m n }Ax b}2  }PA b b}2 , tal y como dese xPC
n

Ahora, si Ax0 es el vector que hace m nima la distancia de Ax a b entonces


2 2 2 n }Ax b}2 }PAb b}2 2  }Ax0 b}2  }Ax0 PA b}2 }PA b b}2 . 2  m xP C
n

De aqu deducimos que }Ax0 PA b}2 PA b  Ax0

 0; es decir, Ax0  PAb.

S olo queda demostrar la equivalencia entre las tres condiciones. Por una parte

b Ax0  b PAb  pI PAqb P pIm AqK. Y si b Ax0 P pIm AqK entonces PA pb Ax0 q  0 de modo que PA b  PA Ax0 . Pero como Ax0 P Im A tenemos que PA Ax0  Ax0 . Esto demuestra la equivalencia entre
las condiciones (i) y (ii). Finalmente, como pIm AqK  Ker A tenemos que b Ax0 A pb Ax0 q  0; i. e., A Ax0  A b.

P pIm AqK si y s olo si

Falta demostrar que la soluci on del problema de m nimos cuadrados es u nica si y s olo si rang A  n. Ahora bien, rang A  n si y s olo si A A es invertible. Una forma de ver esto es, por ejemplo, la siguiente: rang A  n si y s olo si n pAq  0. Como los valores singulares de A son las ra ces cuadradas positivas de los valores propios de A A, n  0 si y s olo si todos los valores propios de A A son distintos de cero; i.e. detpA Aq  0. Pero A A es invertible si y s olo si el sistema A Ax  A b tiene soluci on u nica.

8.3.

Algoritmos para calcular la soluci on del problema de m nimos cuadrados

El Teorema 8.3 nos da las claves para calcular un vector x0 que solucione el problema de m nimos cuadrados. En primer lugar, el sistema A Ax  A b recibe el nombre de

166

El Problema de M nimos Cuadrados

ecuaciones normales del problema de m nimos cuadrados. Es el sistema que aparece al calcular el m nimo local de la funci on f pxq  }Ax b}2 . Es decir, el sistema

da lugar al sistema A Ax  A b. Como la funci on f es convexa, alcanza su m nimo absoluto en un m nimo local. Para resolver el sistema A Ax  A b num ericamente, tendremos en cuenta la estructura especial de la matriz A A: es herm tica (sim etrica en el caso real). Adem as es denida positiva porque x A Ax  }Ax}2 0 para x  0. Ahora bien toda matriz herm tica denida positiva admite una factorizaci on de Cholesky (variante de la factorizaci on LU cuando la matriz es sim etrica o herm tica). En MATLAB el comando chol(A) devuelve la factorizaci on de Cholesky de A si esta es herm tica denida positiva. Recordemos que una factorizaci on de Cholesky de una matriz herm tica denida positiva, A, es una factorizaci on de la forma A  LL siendo L una matriz triangular superior. Esta factorizaci on es especialmente apropiada para resolver sistemas lineales mediante sustituci on hacia adelante y hacia atr as. Teniendo en cuenta todo esto podemos dar un primer algoritmo para la resoluci on del problema de m nimos cuadrados.

Bf pxq  0, B xi

i  1, . . . , n

Algoritmo m nimos cuadrados via ecuaciones normales Dada A P Fmn y dado b P Fm 1. F ormense las matrices A A y A b. 2. Calc ulese la factorizaci on de Cholesky de A A  LL , (chol(A)) 3. Resu elvase Ly 4.

 Ab (z o sustituci on hacia adelante) Resu elvase L x  y .(z o sustituci on hacia atr as)

8.3 Algoritmos para calcular la soluci on del problema de m nimos cuadrados

167

Cuando A es herm tica denida positiva pero mal condicionada, el algoritmo de Cholesky puede dar resultados muy inexactos. Por lo tanto, el algoritmo anterior no es adecuado para resolver el problema de m nimos cuadrados. Una posibilidad ser a usar la factorizaci on QR de A A para conseguir la factorizaci on de Cholesky de A A en vez del algoritmo de Cholesky. En efecto, si A  QR es la factorizaci on QR reducida de A, entonces A A  R Q QR  R R  LL , donde hemos utilizado que Q Q  In , por tener Q columnas ortonormales, y hemos puesto L  R . Esto nos muestra que si A es de rango completo, la factorizaci on de Cholesky de A A es u nica. Esta alternativa, sin embargo, carece de sentido porque la ventaja del algoritmo de Choleski es que su coste es  n2 (mientras que el de la factorizaci on QR ser a de orden c ubico) y hay otros algoritmos que, cuando el de Choleski no es aconsejable, usan la factorizaci on QR y s olo precisan resolver un sistema triangular. Presentamos a continuaci on uno de tales algoritmos. En el segundo algoritmo se trata de conseguir la soluci on, x0 , como soluci on del sistema Ax0  PA b. Para ello, debemos conseguir PA , que es la proyecci on ortogonal sobre Im A. Recordemos que PA  QQ , donde Q es una matriz cuyas columnas son una base ortonormal de Im A. Recordemos que si A  QR es una factorizaci on QR de A entonces las columnas de Q son una base ortonormal de Im A y, por consiguiente, QQ es la proyecci on ortogonal sobre Im A.

Algoritmo m nimos cuadrados via factorizaci on QR Dada A P Fmn y dado b P Fm 1. H allese la factorizaci on QR, reducida, de A 2. Calc ulese Q b. 3. Resu elvase Rx  Q b (z o sustituci on hacia atr as)

Estos dos algoritmos pueden presentar problemas si la matriz A es singular o muy pr oxima a serlo; i.e., pAq es muy grande. Si la situaci on es esta, tenemos una alternativa: los valores singulares.

168

El Problema de M nimos Cuadrados

8.3.1.

El problema de m nimos cuadrados y la inversa MoorePenrose

La inversa generalizada de Moore-Penrose se puede denir como la matriz que soluciona el problema de m nimos cuadrados. Es decir, de la misma que la soluci on del 1 sistema Ax  b es x  A b siempre que A sea invertible, la soluci on del problema de m nimos cuadrados es x0  A: b. Veremos que esto es, en efecto as , y que este hecho nos proporciona un algoritmo alternativo para resolver el problema de m nimos cuadrados. Recordemos que x0 es soluci on del problema se m nimos cuadrados si y s olo si es soluci on del sistema Ax  PA b, siendo PA la proyecci on ortogonal sobre Im A. Recordemos tambi en que si r  rang A y A  U V es una descomposici on completa de A en valores singulares, entonces las r primeras columnas de U son una base ortonormal de Im A. (Proposici on 3.10). Sea Ur la submatriz de U formada por sus r es la primeras columnas. Como son una base ortonormal de Im A, la matriz Ur Ur . As proyecci on ortogonal sobre Im A. Es decir, PA  Ur Ur pues, si ponemos 


r 0 0 0

entonces el sistema Ax  PA b es equivalente a

b. Ur r 0 V x  Ur Ur b dado que U Ur Y este sistema es equivalente a r 0 V x  Ur r b y y  V x. Entonces, c  Ur


Ax  PA b r 0 y Si r
    

 Ir . Pongamos

 c.
yn
T

 Diagp1, . . . , r q, la soluci on general de este sistema es


y

 c1{1

c2 {2

cr {r yr1

con yr1 ,. . . , yn , n umeros arbitrarios. Si el rango de A es completo, n, la soluci on del sistema queda completamente determinada; cosa que ya hab amos demostrado. Pero si rang A n entonces hay innitas soluciones del problema de m nimos cuadrados. Entre ellas, se suele escoger la soluci on de norma m nima. Y esta es la que se consigue haciendo yr1   yn  0. Finalmente, como y  V x, tenemos que x  V y .

8.3 Algoritmos para calcular la soluci on del problema de m nimos cuadrados

169

Adem as, }x}2  }V y }2  }y }2 . En denitiva, el vector x0 de norma m nima que soluciona el problema de m nimos cuadrados es:


c1 {1 c {     2 2 x0  V y0  V cr {r   Vr  . ,    .  .  0   .  cr {r  . .  0 donde Vr es la submatriz de V formada por sus r primeras columnas. Ahora vamos a volver hacia atr as a n de recuperar la soluci on del problema en t erminos de los datos originales: A y b. Recordemos, antes de nada, que con las notaciones introducidas A  Ur r Vr es una descomposici on reducida de A en valores singulares. En consecuencia A:
1  Vr r Ur

c1 {1 c2 {2     .  .  . 

  

es la inversa generalizada o Moore-Penrose de A. Ahora bien, c1 {1 c {   2 2 1 1 x0  Vr  .   Vr r c  Vr r Ur b,  . .  cr {r


 

b. As porque c  Ur pues, el vector de norma m nima que soluciona el problema de m nimos cuadrados es
x0 tal y como hab amos anunciado. Este proceso, adem as, nos proporciona un algoritmo para calcular la soluci on del problema de m nimos cuadrados en el caso m as general.
1 :  V r r Ur b  A b

170

El Problema de M nimos Cuadrados

Algoritmo m nimos cuadrados via valores singulares Dada A P Fmn y dado b P Fm 1. Calcular la descomposici on reducida de A en valores singulares: m r A  U V , U P F , V P Fnr y  Diagp1 , . . . , r q. 2. Calcular c  U b. 3. Calcular x  V 1 c. Este es el vector de menor norma que soluciona el problema de m nimos cuadrados.

8.4.

El condicionamiento del problema de m nimos cuadrados

El condicionamiento del problema de m nimos cuadrados es un tema importante porque tiene implicaciones no triviales en el estudio de la estabilidad de los algoritmos para este problema. Como es habitual analizaremos en detalle el condicionamiento del problema y estudiaremos la estabilidad de los algoritmos mediante ejemplos signicativos. Recordemos que el problema de m nimos cuadrados consiste en lo siguiente (supondremos en lo sucesivo que la matriz del sistema tiene rango completo): Dada A P Fmn de rango completo y m n, y dado b P Fm , calcular x P Fn para que }Ax b}2 sea m nima.

(8.2)

Ya sabemos que, en este caso, la soluci on del problema es u nica y viene dada por x  A: b donde A: P Fnn es la pseudoinversa o inversa generalizada de Moore-Penrose de A (ver 3.6). Adem as, si y  Ax es el vector en Im A m as pr oximo a b entonces y

 P b,

8.4 El condicionamiento del problema de m nimos cuadrados

171

siendo P la proyecci on ortogonal sobre Im A. Nuestro objetivo es estudiar el condicionamiento del Problema (8.2) respecto a perturbacione en A y en b. Es decir, los datos del problema son la matriz A y el vector b. La soluci on es el vector de coecientes x o el correspondiente vector y  Ax. As pues Datos: A, b. Soluciones: x, y. Tenemos as , en realidad, cuatro posibles cuestiones de condicionamiento: Error relativo en x o y respecto a peque nas perturbaciones en los datos b o A. El objetivo en esta secci on es dar un resultado fundamental sobre el condicionamiento del problema de m nimos cuadrados. Para entender el enunciado y como apoyo a la demostraci on necesitamos introducir algunos conceptos y un par de resultados auxiliares. En primer lugar debemos recordar que para una matriz A P Fmn de rango completo n el n umero de condici on es 2 pAq  }A}2 }A: }2 1 . 
n

b Im A

r=Axb y=Ax=Pb

Figura 8.4: El problema de m nimos cuadrados. En segundo lugar, necesitamos el conceto de angulo entre dos vectores de Fm . Lo denimos, como es habitual, a partir de la desigualdad de Cauchy-Schwartz: si x, y P Fm entonces |xy| }x}2}y}2,

172

El Problema de M nimos Cuadrados

de modo que

x y 1 }x} }y} 1.
2 2

Se dene, entonces el a ngulo, , de x, y como Equivalentemente cos x y  arc cos }x} }y}
2

x y  } x} }y }
2

.
2

En nuestro caso, para calcular el angulo de b e y debemos hacer el producto escalar on (P 2  P ) ortogonal b y  b P b. Teniendo en cuenta que P es una proyecci pP  P ) resulta que b y As pues
2  bP b  bP P b  bP P b  }P b}2 2  }y }2 .

y }2 } }b}2 . Para el seno usamos la identidad sen2  1 cos2 : 2 }y}2 }b}2 2 2 }y }2 sen2  1  . }b}2 }b}2 2 2 Ahora bien, b  y b y siendo y y b y ortogonales (y P Im A y b y  b P b  pIm P qb P pIm AqK ). Por consiguiente, usando el Teorema de Pit agoras, 2 2 }b}2  } y } } b y } y 2 2 2 }b y }2 sen  }b} cos
2

Todas estos resultados generalizan los habituales en R2 (Figura 8.4) En tercer lugar, para cualquier norma inducida }Ax} }A} }x}. Necesitaremos una medidad de lo lejos o cerca que est a }y }  }Ax} de su m aximo valor posible:

}2 }x}2  }A}2 }x}2 .  }A} y} }Ax}


2 2

Estos par ametros tienen el siguiente rango de variaci on: 1 pAq 8 0

{2

pAq

8.4 El condicionamiento del problema de m nimos cuadrados

173

Todas estas acotaciones son claras excepto, quiz a, la u ltima que viene de la siguiente observaci on: }x}2  }A1Ax}2 }A1}2}Ax}2, de modo que

} A}2 }A1 }2 }Ax}2  2pAq. }Ax}2

El resultado previo que necesitamos es el siguiente Lema 8.4 Para A P Fmn de rango completo n se tiene:

}pAAq1A}2  1 .
n

(8.3) (8.4)

siendo 1

n los valores singulares de A.

}pAAq1}2  12

Demostraci on.- La propiedad (8.4) es una consecuencia inmediata de que los valores singulares de A son las ra ces cuadradas positivas de los valores propios de A A, 2 es el mayor valor singular de pA Aq1 (ver Porposiciones 3.12 y 3.16). y de que 1{n Para probar la propiedad (8.3) se usa el Teorema SVD para ver que los valores singulares de pA Aq1 A y los de A: coinciden. Podemos ahora plantear y demostrar el resultado principal Teorema 8.5 Sean b P Fm y A P Fmn con b  0 y rang A  n m. Para el problema de m nimos cuadrados (8.2) se cumplen las siguientes propiedades, todo respecto de la norma 2 : (i) El n umero de condici on del problema de calcular y 1 . cos

 Ax P Fn respecto de b es
(8.5)

174

El Problema de M nimos Cuadrados

(ii) El n umero de condici on del problema de calcular x P Fn respecto de b es 2 pAq . cos (8.6)

(iii) Sea x la soluci on del problema de m nimos cuadrados relativo a minimizar }A}2 n entonces }pA Aqx b}2 . Si y  pA Aqx y  }A}2 1

}y y }2 }y}2

2 pAq cos

Op 2q.

(8.7)

(iv) En las mismas condiciones del apartado anterior

}x x} 2 }x}2

2 pAq

2 pAq2 tan

O p 2 q.

(8.8)

(v) Sea x es la soluci on del problema de m nimos cuadrados relativo a minimizar }pA Aqx pb bq}2 . Si sen  1 y

 m ax
siendo 1

"

n los valores singulares de A, entonces


* " }x x}2 2 pAq2 tan 1 Op 2q. }x}2 2pAq cos 1

}A}2 , }b}2 * n }A}2 }b}2 1

(8.9)

En el caso especial en que m  n, el problema de m nimos cuadrados se reduce al de la resoluci on de un sistema de ecuaciones lineales. En tal caso  0 y las cotas de (8.6) y (8.8) se reducen a 2 pAq{ y 2 pAq recuperando los resultados vistos en la Lecci on 4. Demostraci on.- Demostraremos las propiedades (i) y (v). La propiedad (ii) se demuestra de manera muy similar a la propirdad (i), la propiedad (iv) es una caso particular de la (v) y la propiedad (iii) requiere una demostraci on independiente pero parecida a la (iv). (i) La relaci on entre b e y es y

 Pb

8.4 El condicionamiento del problema de m nimos cuadrados

175

siendo P la proyeccci on ortogonal sobre Im A. Vimos en la Secci on 4.3 del Cap tulo 4 que el n umero de condici on del problema de multiplicar Ax para A dada y x variable: f : Fn Fm x ; b  Ax es 

}f 1pxq}  }A} }x} , }f pxq}{}x} }Ax}

(8.10)

Como P es una proyecci on ortogonal P  QQ para alguna matriz Q P Fnm con  r una matriz unitaria. Entonces columnas ortonormales. Sea U  Q Q U P U

En nuestro caso se trata del n umero de condici on del problema y b para P dado. Entonces }P }2}b}2 pbq  }y }2

 P b respecto de

  Q I 0 r QQ Q Q  n r 0 0 Q

Por lo tanto, los valores singulares de P son todos iguales a 1 y en particular

}P }2  1pP q  1 }y}2 . En conclusi on: Finalmente, recordemos que cos  }b}2 }P }2}b}2  1 , pbq  }y}2 cos
tal y como se deseaba demostrar.

sigue entonces que el sistema

}A}2 n  1 A y f  1 b. Por hip otesis, }A}2 1 y como }A}2  1 , tenemos que }A}2 n . Por el Teorema 3.18 resulta que rangpA Aq  n y consecuentemente rangpA tE q  n para todo t P r0, s. Se
(v) En primer lugar denimos E

pA tE qpA tE qxptq  pA tE qpb tf q

(8.11)

176

El Problema de M nimos Cuadrados

tiene una u nica soluci on para cada t P r0, s. Invertir una matriz es una funci on diferenciable en los elementos de la matriz. Por lo tanto x es una funci on diferenciable de t en r0, s. Por la denici on de diferencial xp Como xp

q  xp0q x1p0q Op 2q.

qx , xp0q  x, b  0 y sen  1, tenemos que x  0 y } x1 p0q}2 }x x}2  Op 2 q. (8.12) }x}2 }x}2 Necesitamos una estimaci on de }x1 p0q}2 . Para ello calculamos x1 p0q en (8.11). Primero derivamos E pA tE qxptqpA tE q ExptqpA tE q pA tE qx1 ptq  E ppb tf qpA tE q f, y sustitu mos t  0 recordando que xp0q  x: E Ax A Ex A Ax1 p0q  A f As x1 p0q  pA Aq1 A pf

E b.

Exq pAAq1E pb Axq.

Tomando normas:

}x1p0q}2 }pAAq1A}2p}f }2 }E }2}x}2q }pAAq1}2}E }2}b Ax}2. }A}2  }A}2, as que


Por una parte, }E }2

 1 }A}2 }A}2. Y de la misma forma }f }2 }b}2. Tambi en

}x1p0q}2 }pAAq1A}2p}A}2 }x}2 }b}2q }pAAq1}2}A}2}b Ax}2


b}2 }b Ax}2 . }pAAq1A}2}A}2 }}A } x}2 }pA Aq1 }2 }A}2 2 } }A}
2 2

Por otra parte, por el Lema 8.4, 2 pAq2 . Entonces

}pAAq1A}2}A}2  2pAq y }pAAq1}2}A}2 2 

}x1p0q}2 pAq }b}2{}Ax}2 1


pAq2 }b Ax}2{}Ax}2 . 2 2 }x}2 }A}2}x}2{}Ax}2 }A}2}x}2{}Ax}2

8.5 Estabilidad de los algoritmos para el problema de m nimos cuadrados

177

Ahora bien,

}2}x}2 , cos  }Ax}2  }A }Ax} }b}


2 2

y tan

}x1p0q}2 pAq 1 1
pAq2 tan 2 2 }x}2 cos
"

Ax}2  }b} . En consecuencia Ax}


2

sustituyendo en (8.12)

}x x}2 }x}2

2 pAq

1 cos

2 pAq2 tan

O p 2 q,

tal y como se quer a demostrar.

8.5.

Estabilidad de los algoritmos para el problema de m nimos cuadrados

Un estudio experimental de la estabilidad de los algoritmos para la resoluci on del problema de m nimos cuadrados lineal es el objetivo de una de las pr acticas obligatorias con MATLAB que habr a de realizarse en este curso. En ella se plantea un problema de m nimos cuadrados cuya soluci on debe ser calculada con los tres algoritmos vistos en la Secci on 8.3. A su vez, para los algoritmos basados en la factorizaci on QR, se utilizar an los tres algoritmos vistos en las Lecciones 6 y 7; es decir, los algoritmos cl asico y modicado de Gram-Schmidt y el algoritmo de Householder. A trav es de dicho experimento se comprobar a que los algoritmos basados en la resoluci on de las ecuaciones normales y el factorizaci on de Cholesky as como los basados en la factorizaci on QR obtenida con los algoritmos de Gram-Schmidt pueden dar resultados con mucho error si la matriz del sistema est a mal condicionada. Por lo tanto, estos algoritmos son inestables. No obstante, hay resultados (ver [11, Sec 20.4]) que muestran que para matrices bien condicionadas el algoritmo basado en la resoluci on de las ecuaciones normales es estable hacia atr as y para valores de m mucho mayores que n, el coste operacional sensiblemente menor que el m etodo basado en la factorizaci on QR mediante reexiones de Householder. En tale situaciones, el m etodo basado en la resoluci on de las ecuaciones normales ser a el preferido. Por otra parte, a pesar de que el m etodo basado en la factorizaci on QR mediante el algoritmo modicado de Gram-Schmidt es inestable cuando se implementa de la manera indicada en la Secci on 8.3, hay una forma de hacerlo que lo hace estable

178

El Problema de M nimos Cuadrados

hacia atr as (ver [11, Sec 20.3]). Finalmente, los algoritmos basados en la factorizaci on QR mediante reexiones de Householder y valores singulares son estables hacia atr as para sistemas en los que A es una matriz de rango completo. A continuaci on se enuncian los teoremas que lo hace expl to. Teorema 8.6 Supongamos que el problema de m nimos cuadrados con una matriz A de rango completo se resuelve mediante el algoritmo QR por reexiones de Householder o mediante la descomposici on en valores singulares en un ordenador que cumple los axiomas (5.2) y (5.4) de la Lecci on 5. Este algoritmo es estable hacia m n atr as: para cada A P F (m n y rang A  n) existe una perturbaci on A tal que }A}  Op q M }A}
p producida por el algoritmo satisface y la soluci on x p b}2  m }pA Aqx n }pA Aqx b}2 . xPF
n

Para terminar, conviene mencionar que si la matriz A no es de rango completo, sabemos que la soluci on no est a determinada de forma u nica y el u nico algoritmo completamente estable es el basado en la descomposici on de A en valores singulares.

Cap tulo 9

El algebra de los valores propios

9.1.

Introducci on

El objetivo de este tema es proporcionar las ideas matem aticas que se usan en el c alculo num erico de los valores propios de matrices. En parte es un repaso de conceptos ya estudiado en cursos b asicos de Algebra Lineal pero el enfasis se pone en aquellos aspectos que son importantes en el an alisis num erico. As , mientras que el objetivo te orico u ltimo, en relaci on con los valores y vectores propios, es la obtenci on de la forma can onica de Jordan que proporciona un sistema completo de invariantes para la semejanza (o conjugaci on) de matrices, esta es de muy poca relevancia desde el punto de vista num erico. La raz on es que la forma can onica de Jordan es altamente inestable y, salvo que se usen algoritmos simb olicos, rara vez se puede obtener con abilidad. A lo largo de este tema veremos que uno de los problemas es que las transformaciones de semejanza no son recomendables para la obtenci on de los valores y vectores propios de matrices. En su lugar, mucho m as ables son las transformaciones de semejanza unitaria. Este planteamiento nos conduce a estudiar 179

180

El a lgebra de los valores propios

con detalle la forma de Schur (compleja y real) que ser a el objetivo nal de los algoritmos de c alculo de valores propios. En este primer tema sobre valores propios nos centraremos en los aspectos te oricos que nos permitir an comprender mejor los algoritmos que veremos en el siguiente tema. Empezaremos repasando los conceptos de Algebra Lineal relacionados con los valores y vectores propios. Entre otras cosas veremos que el conjunto de las matrices con valores propios distintos forman un conjunto denso en el espacio de las matrices cuadradas; lo cual, desde un punto de vista num erico, hace pr acticamente indistinguibles las matrices con valores propios distintos de las que no tienen esta propiedad. Por ello, las matrices que tienen valores propios repetidos se llaman matrices defectuosas. Veremos que no ser defectuosa equivale a ser diagonalizable por semejanza (o conjungaci on). La mayor parte de los problemas en los que hay que calcular valores propios suelen involucrar matrices de n umeros reales. Pero como estas pueden tener valores propios complejos y la teor a b asica es la misma para matrices reales o complejas, en todo este tema, y salvo que se especique lo contrario, F representar a indistintamente el cuerpo de los n umeros reales o el de los complejos.

9.2.

Valores y vectores propios

Si A P Fnn , 0 x P Cn tal que

P C es un valor propio (o autovalor) de A si existe un vector no nulo


Ax  0 x

Al conjunto de valores propios (distintos) de A lo denotaremos por pAq; y a este conjunto se le conoce con el nombre de espectro de A. En algunos libros y art culos se le suele denotar por pAq, pero cada vez se utiliza m as la notaci on que se emplear a aqu : pAq. Si 0 P pAq, los vectores x  0 para los que Ax  0 x se llaman vectores propios o autovectores de A asociados al valor propio 0 . Para 0 P pAq sea S0

 tx P Cn|Ax  0xu

Este conjunto es un subespacio vectorial de Cn que se llama subespacio propio de A asociado a 0 . Como x P S0 p0 In Aqx  0

9.2 Valores y vectores propios

181

resulta que el subespacio propio de A asociado a 0 es Kerp0 In x P S0 entonces p0In AqAx  Ap0In Aqx  0,

Aq. Adem as si

de modo que Ax P S0 . Los subespacios que cumplen esta propiedad (x P S Ax P S ) se llaman subespacios invariantes por A. As pues, los subespacios propios de A son invariantes por A (o A-invariantes). La siguiente propiedad pone de maniesto que vectores propios asociados a valores propios distintos son linealmente independientes Proposici on 9.1 Sea A P Fnn y t1 , . . . , s u pAq. (a) Si para i  1, . . . , s, xi es un vector propio de A asociado al valor propio i , entonces los vectores x1 ,. . . , xs son linealmente independientes. (b) La suma Kerp1 In Aq Kerps In Aq es directa. Demostraci on.- (a) Lo demostraremos por contradicci on. Recordemos que pAq es el conjunto de los valores propios de A y, por lo tanto i  j para i  j . Con los vectores x1 ,. . . , xs constru mos la matriz X  x1 xs . Si x1 ,. . . , xs no son linealmente dependientes, entonces rang X  r s y hay r columnas de X , digamos xi1 ,. . . , xir que son linealmente independientes y vectores propios asociados a los valores propios i1 ,. . . , ir . Sea xj una columna de X tal que j R ti1 , . . . , ir u, entonces xj  1 xi1 r xir . Como xj
 

P Kerpj In Aq y Axi  i xi , k  1, . . . , s, resulta que


k k k 1 r 1 1

0  pj In Aqxj

 pj InAqp1xi r xi q  1pj i qxi r pj i qxi


r

Y como xi1 ,. . . , xir son linealmente independientes k pj

i q  0,
k

 1, . . . , r.

Pero xj  0, de modo que al menos un k  0. Para ese ndice k conclu mos que necesariamente j  ik contradiciendo que todos los valores propios son distintos.

182

El a lgebra de los valores propios

(b) Hay que demostrar que si Ri

 KerpiIn Aq, entonces para j  1, . . . , s Mj  R1 X X Rj 1 X Rj 1 X X Rs  t0u.


vi

Si 0  x P Mj para alg un j , entonces Ax  j x  j pv1 vj 1 vj 1 vs q, As

i j

P KerpiIn Aq. j x  Ax j x  0

pi j qvi 

i j

i vi j

i j

vi

i j

Avi j x  A

i j

vi

Pero, por el apartado (a), los vectores v1 , . . . , vj 1 , vj 1 , . . . , vs son linealmente independientes. Por consiguiente i  j para i  1, . . . , j 1, j 1, . . . , s, lo que es imposible porque son todos distintos. Introducimos ahora los conceptos de multiplicidad algebraica y geom etrica. Denici on 9.2 Para 0 P pAq se dene la multiplicidad geom etrica de 0 como la dimensi on del subespacio propio de A asociado a 0 , y se denota por mgA p0 q: mgA p0 q  dim Kerp0 In Aq Por otra parte,

los polinomios en la indeterminada con coecientes en F; i.e. In A P Frsnn

P pAq Dx  0 t. q. p0In Aqx  0 detp0In Aq  0 Si denota una indeterminada, la matriz In A est a denida en Frs, el anillo de
0

Como Frs es una anillo conmutativo, podemos calcular el determinante de In A. Es f acil ver que este es un polinomio de grado n con coeciente principal 1: detpIn Aq  n p1 n1 pn1 pn . Los polinomios cuyo coeciente principal es 1 se llaman polinomios m onicos. Y al polinomio m onico detpIn Aq se le llama polinomio caracter stico de A. Lo denotaremos por pA pq  detpIn Aq.

9.2 Valores y vectores propios

183

Si factorizamos este polinomio en C, se descompone como producto de potencias de factores lineales:

tal y como hemos visto m as arriba.

 j , entonces pAq  t1 , 2 , . . . , s u porque 0 P pAq si y s olo si detp0 In Aq  0,


i

ppq  p 1 qm1 p 1 qm2 . . . p 1 qms ,

Denici on 9.3 Al n umero mi se le llama multiplicidad algebraica de i como valor propio de A, y se representa por maA pi q. En otras palabras, la multiplicidad algebraica de un valor propio es su multiplicidad como ra z del polinomio caracter stico. Cuando no haya posibilidad de confusi on, en la notaci on de las multiplicidades algebraica y geom etrica (maA p0 q y mgA p0 q) suprimiremos los sub ndices que hacen referencia a la matriz. Por otra parte, si A, B P Fnn son semejantes; i.e., A  T 1 BT para alguna matriz T P Gln pFq, entonces tienen el mismo polinomio caracter stico, pA pq  pB pq. En efecto, pA pq

  

detpIn Aq  detpIn T 1 BT q  detpT 1 pIn B qT q  detpT 1 q detpT q detpIn B q  detpIn B q  pB pq.

Una consecuendia de esta propiedad es que pAq  pB q y para cada 0 P pAq  pB q, maA p0 q  maB p0 q. Tambi en es cierto que mgA p0 q  mgB p0 q porque Kerp0 In Aq  T 1 Kerp0 In B q, lo cual se demuestra por doble inclusi on como sigue: x P Kerp0 In Aq p0 In Aqx  0 T 1 p0 In B qT x  0 p0In B qT x  0 T x P Kerp0In B q x P T 1 Kerp0In B q. Adem as, como T es invertible, dim Kerp0 In Aq  dim Kerp0 In B q. Las multiplicidades algebraica y geom etrica de cada valor propio est an relacionadas tay y como muestra la siguiente proposici on.

184

El a lgebra de los valores propios

Proposici on 9.4 Para A P Fnn y 0

P pAq,map0q mgp0q.

Demostraci on.- Sea mgp0 q  r y tt1 , . . . , tr u una base del subespacio propio S0  Kerp0 In Aq. Ampliamos 1 , . . . , tr , tr1 , . . . , tn u para obtener  esta base tt una base de Cn . Pongamos T  t1 t2 tn la matriz cuyas columnas son los vectores de la base escogida. Y sea B  T 1 AT . Veamos la forma que tiene esta matriz: AT

 

 

At1

Atr Atr1 tr tr1

tn


Atn


C D

0 t1

0 tr yr1

yn

t1

  0 Ir

 T B.


As

p 0qIr In B  0

C Inr D

Por lo tanto

detpIn B q  p 0 qr detpInr Dq.

Como A y B tienen para cada valor propio las mismas multiplicidades algebraicas y geom etricas y 0 podr a ser valor propio de D, concluimos que r  mgp0 q map0 q.

Denici on 9.5 Sea A P Fnn y 0

P pAq.

(a) Si mgp0 q map0 q entonces se dice que 0 es un valor propio defectuoso de A. En caso contrario se dice que es no defectuoso. La matriz A se dice que es defectuosa si tiene alg un valor propio defectuoso y en caso contrario se dice que es no defectuosa. (b) Si map0 q  1 entonces se dice que 0 es un valor propio simple de A. La matriz A se dice que es simple si todos sus valores propios son simples. (c) Los valores propios no defectuosos que no son simple se llaman semisimples. La matriz A se dice que es semisimple si sus valores propios son simples o semisimples.

9.2 Valores y vectores propios

185

Debe notarse que para una matriz es lo mismo ser semisimple o ser no defectuosa y que las matrices simples tiene todos sus valores propios distintos. En el extremo opuesto, las matrices cuyos valores propios tienen todos multiplicidad geom etrica 1, se llaman no derogatorias. Las matrices simples son a la vez no defectuosas y no derogatorias. Posiblemente la denominaci on de matriz defectuosa se debe al hecho de que casi todas las matrices son no defectuosas. Veremos que, en efecto, el conjunto de matrices no defectuosas es un conjunto abierto y denso en el conjunto de todas las matrices cuadradas. En otras palabras, tan cerca como se quiera de una matriz defectuosa hay matrices que no lo son. Tambi en se dice que la propiedad ser no defectuosa es gen erica para las matrices. Denici on 9.6 A P Fnn se dice que es diagonalizable si es semejante a una matriz diagonal. Si A es diagonalizable, las matrices diagonales a las que es semejante son matrices cuyos elementos diagonales son los valores propios (en alg un orden) de A. En efecto, 1 si T AT  D  Diagpd1 , . . . , dn q entonces A y D tienen el mismo polinomio caracter stico. Pero detpIn Dq  p d1 qp d2 q . . . p dn q; as que d1 , . . . , dn son los valores propios (quiz a repetidos) de D y, por lo tanto, de A. Proposici on 9.7 A P Fnn es no defectuosa si y s olo si es diagonalizable. Demostraci on.- Claramente si A es diagonalizable es no defectuosa porque la mutiplicidad algebraica de sus valores propios es 1. Rec procamente, si A es no defectuosa entonces para cada 0 map0 q  mgp0 q. Supongamos pAq  t1 , . . . , s u y mapi q  mgpi q  mi , i  1, . . . , s.

P pAq se tiene que

186

El a lgebra de los valores propios

Esto signica que dim Kerpi In Aq  mi y m1 ms  n. Pero por la Proposici on 9.1 la suma Kerp1 Aq Kerps In Aq es directa, de modo que dimpKerp1 Aq Kerps In Aqq  m1 ms  n. Es decir, Cn  Kerp1 Aq  ` ` KerpsIn Aq. As , si ttii  , . . . , timi u es una base de Kerpi In Aq y T  t11 t1m1 ts1 tsms , las columnas de T forman una base de Cn y consecuentemente T es invertible. Ahora AT

   

 At11

1 t11

At1m1 1 t1m1

Ats1 Atsms   s ts1 s tsms  1  .. . 

           

t11

t1m1

ts1

   tsms      

1 ... s .. . s

TD

Como T es invertible, T 1 AT

 D con D diagonal.

La demostraci on nos proporciona la siguiente informaci on: Si A es diagonalizable y formamos una matriz T cuyas columnas sean vectores propios asociados a los valores propios de A (un vector propio por cada valor propio) entonces T es invertible y T 1 AT es una matriz diagonal cuyos elementos diagonales son los valores propios de A. Pero el rec proco tambi en es cierto: si T 1 AT  D es diagonal, entonces los valores propios de A son los elementos diagonales de D y la i- esima columna de T es un vector propio de A asociado al valor propio que ocupa la i- esima posici on de la diagonal de D. Si A no es diagonalizable, todav a podemos encontrar una matriz T , no singular, tal que T 1 AT es casi diagonal:

Teorema 9.8 (Forma can onica de Jordan) Dada A P Fnn existe una matriz no singular T P Cnn tal que T 1 AT  J es la forma can onica de Jordan de A. Es decir, J es una matriz diagonal por bloques J  DiagpJn1 p1 q, Jn2 p2 q, . . . , Jns ps qq

9.2 Valores y vectores propios

187

y Jni pi q  DiagpJni1 pi q, Jni2 pi q, . . . , Jniri pi qq con


  0 . . . 0

Jnij pi q 

.  i . . 0 0  . . .. .. P Cnij nij . . . . . . .  0 i 1  0 0 i

J es u nica salvo permutaci on de sus bloques diagonales. Demostraciones de este teorema pueden encontrarse en muchos libros de Algebra Lineal. La forma can onica de Jordan ofrece toda la informaci on sobre la estructura propia de la matriz A. En efecto, sus valores propios son 1 ,. . . , s ; la multiplicidad geom etrica de i es ni y su multiplicidad geom etrica es ri , el n umero de bloques diagonales en Jni pi q. Pero calcular num ericamente la forma can onica de Jordan es una tarea dif cil, si no imposible, por dos razones especialmente: No depende continuamente de A de modo que los errores de redondeo, por peque nos que sean pueden cambiarla completamente. Ejemplo 9.9 Sea
 

Jn p0q  

  

1 .. .. . .    .. . 1 0

una matriz en forma de Jordan. Para todo lo perque no que se quiera, si se a nade el n umero i al elemento en la posici on pi, iq de Jn p0q la matriz resultante tiene n valores propios distintos y es, por lo tanto, diagonalizable. Su forma de Jordan ser a Diagp, 2, . . . , nq. La distancia entre Jn p0q y esta matriz diagonal es, en la norma de Frobenius, mayor que n 1. Por lo tanto, peque nas modicaciones en los elementos de Jn p0q producen una matriz cuya forma de Jordan est a lejos de la forma de Jordan de Jn p0q (que es ella misma). Por lo tanto la aplicaci on que a cada matriz le asocia su forma de Jordan no es continua.

188

El a lgebra de los valores propios

No se puede calcular de forma estable en general. En realidad, este es un problema incluso cuando la forma de Jordan es diagonal: si T 1 AT  J y T est a muy mal condicionada (pT q  }T } }T 1 } es muy grande) los valores propios obtenidos pueden estar muy lejos de los exactos. El siguiente resultado nos da muestra de ello. Teorema 9.10 (Teorema de Bauer-Fike) Sea A P Fnn una matriz diagonalizable y sea T P Gln pCq tal que T 1 AT  D  Diagp1 , . . . , n q. Entonces, para cada P pA E q, E P Fnn , se tiene que
1 i n

m n |i | }T } }T 1 } }E }

donde

} } es cualquier norma de matriz inducida por una norma de vector

p.

Recordemos que el n umero de condici on de T es pT q  }T } }T 1 }, de modo que este resultado nos dice que si T est a mal condicionada entonces los valores propios de A E pueden estar muy lejos de los de A aunque E sea muy peque na. El siguiente ejemplo nos lo muestra. Ejemplo 9.11 Sean

1 2 3 A  0 0,9990 1 , 0 0 2 Entonces T 1 AT


1 1 0,9623 T  0 0,0005 0,1923 0 0 0,1925




 Diagp1, 0,9990, 2q. Y si

0 0 0 0 0  E 0 5 10 0 105 entonces pA E q  t0,9995 0,0044i, 0,9995 0,0044i, 2, 0001u

El error en el c alculo de los valores propios ser a 2 o rdenes de magnitud mayor que el de la perturbaci on. N otese que pT q  6,8708 103 . Lo que ser a deseable es poder utilizar matrices cuyo n umero de condici on fuera lo m as peque no posible. Estas matrices son las matrices unitarias. Sin embargo, s olo algunas matrices pueden reducirse a forma diagonal usando matrices unitarias tal y como veremos m as adelante.

9.2 Valores y vectores propios

189

Demostraci on Si P pAq entonces m n1in |i |  0 y no hay nada que demostrar. Supondremos entonces que R pAq de modo que  i para todo i  1, . . . , n y In D es invertible. Como P pA E q, existe un vector no nulo x P Cn tal que pA E qx  x. As Ex  pIn Aqx  pIn T DT 1 qx  T pIn DqT 1 x. Pongamos Entonces o y T 1 x  y. T 1 Ex  pIn Dqy

 pIn Dq1T 1Ex  pIn Dq1T 1ET y. }y} }pIn Dq1} }T 1} }E } }T } }y}.

Tomando normas de vector y las correspondientes normas de matriz inducidas

Como y

0

1 }pIn Dq1 } }T 1 } }E } }T }

(9.1)

1 1 ,..., , y para cualquier matriz Dq1  Diag 1 n diagonal B  Diagpb1 , . . . , bn q y para cualquier norma de matriz inducida por una norma de vector
p

Ahora bien pIn

se tiene que

}B }  1m ax |b | in i
En efecto pero

}B }  }m ax }Bx}p x}  1
p

b1 x 1 b x   2 2 Bx   .   . .  As , para cualquier x P Fn unitario tenemos que bn x n

}Bx}p 1m ax |b | }x}p  m ax |bi | in i 1in

190

El a lgebra de los valores propios

Por otra parte, si m ax |bi |


1 i n

 |bk | y tomamos x  ek , el k- esimo vector can onico, n resulta que }Bx}p  |bk |. En conclusi on, para cualquier x P F unitario, }Bx}p m ax |bi | y hay un x de norma 1 tal que }Bx}p  m ax |bi |. Por consiguiente 1in 1in

}B }  }m ax }Bx}p  m ax |bi |. 1in x}  1


p

Continuando con la demostraci on del teorema, tomando cualquier norma de matriz inducida por una norma de vector p 1 }pIn Dq1}  1m ax  n in | | m
i

1 i n

| i |

Sustituyendo en (9.1) conclu mos que


1 i n

m n | i | }T } }T 1 } }E }

que es lo que se quer a demostrar.

9.3.

Semejanza Unitaria

En general no se puede diagonalizar una matriz cualquiera usando matrices unitarias, pero s se puede triangularizar. Para calcular los valores propios esto es suciente porque los valores propios de una matriz triangular son tambi en sus elementos diagonales. El siguiente resultado nos muestra c omo reducir una matriz cualquiera a forma triangular mediante semejanza unitaria. Pero primero la denci on de lo que signica este concepto. Denici on 9.12 Dos matrices A, B P Cnn se dice que son unitariamente semejantes si existe una matriz unitaria U P Cnn tal que B  U AU . Si A, B P Rnn y existe una matriz ortogonal P P Rnn tal que B  P T AP entonces se dice que A y B son ortogonalmente semejantes. Teorema 9.13 (Teorema de Schur) Si A P Fnn entonces A es unitariamente semejante a una matriz triangular superior. Los valores propios de A son los elementos diagonales de dicha matriz triangular.

9.3 Semejanza Unitaria

191

Recordemos que F  R o C. El teorema dice que tanto si A es real como compleja existe una matriz unitaria U P Cnn tal que U AU  T con T triangular superior. De la propia demostraci on del teorema se desprender a que si A es real y sus valores propios son todos reales entonces U tambi en puede tomarse real y, por lo tnato, ortogonal. Sin embargo, si A tiene valores propios complejos no reales entonces U es necesariamente compleja. Demostraci on.- La demostraci on es por inducci on sobre n. Si n  1 no hay nada que probar porque A  ras ya es triangular. Suponemos entonces que el teorema nn est a demostrado para matrices de orden hasta n 1. Sea y 1 P pAq. Sea  APC  u un vector propio unitario de A asociado a 1 y U  u U1 una matriz unitaria. As , el espacio generado por las columnas de U1 es u K . Entonces U AU

  u Au u AU1 u A u U1  Au U AU1 U1 U1 1

Como Au  1 u y u es un vector de norma eucl dea 1, u Au  1 . Y como Au  1 U u  0. Por lo tanto, si ponemos B  U AU y U1  u K , U1 1 1 c  u AU1 , se tiene que   1 c . U AU  0 B Ahora, B es de tama no pn 1qpn 1q por lo que aplicando la hip otesis de inducci on p n1qpn1q se tiene que existe una matrix unitaria V P C tal que V BV  T1 es una matriz triangular superior. Entonces


1 0 1 0 U AU 0 V 0 V

1 a 0 T1

 T,
 

1 0 donde a  c V , es una matriz triangular superior. Teniendo en cuenta que que detpIn Aq  detpIn T q 
n

0 V es una matriz unitaria y que, por consiguiente, A y T son semejantes, se concluye


i 1

los elementos diagonales de T . Esto termina la demostraci on del teorema. Una consecuencia importante del Teorema de Schur es el siguiente resultado Corolario 9.14 El conjunto de las matrices complejas de tama no n n con valores nn propios distintos es denso en C .

 p tiiq; i.e., los valores propios de A son

192

El a lgebra de los valores propios

Im

t77 +e7

t66=t77 e+ t 6 66

e4+t44 t55 + e5 t33=t44=t55 e3+t33

e2+ t22 t11= t22 e1+t11

Re

Figura 9.1: Distintos elementos para la diagonal de E T . El radio de cada disco es menor que 1{2 n Demostraci on.- Hay que probar que dada A P Cnn y dado 0 existe una matriz 1 nn A PC con todos sus valores propios distintos tal que }A A1 } en alguna norma. Usaremos la norma de Frobenius. Por el Teorema de Schur existe una matriz unitaria U P Cnn tal que U AU  T  rtij s. Tal y como se muestra en la Figura 9.1 se pueden escoger n n umeros complejos e1 , . . . , en tales que: (a) |ei | ,y n1{2

(b) t11 e1 , t22 e2 , . . . , tnn en sean todos n umeros distintos De esta forma, si E  Diagpe1 , . . . , en q entonces T E es triangular superior con los n umeros t11 e1 , t22 e2 , . . . , tnn en en la diagonal; siendo estos n umeros sus 1 valores propios. Ahora, si A  U pA E qU y teniendo en cuenta que la norma de Frobenius es unitariamente invariante, resulta que

}A A1}F  }U T U U pE T qU }F }U EU }F  }E }F 
2 2 1{2   p|e1|2 |en|2q1{2 n n

9.3 Semejanza Unitaria

193

que es lo que se quer a demostrar. Este resultado nos muestra una vez m as que s olo es razonable intentar calcular num ericamente los valores propios de matrices diagonalizables y que con alt sima probabilidad los valores propios que puedan devolver los algoritmos van a ser todos distintos. Por otra parte, si A P Rnn es real se desear a poder reducir A a forma triangular usando matrices ortogonales reales; i.e., usando aritm etica real que es m as barata desde el punto de vista del c alculo. Ahora bien, una matriz real puede tener valores propios complejos aunque estos deben aparecer en pares conjugados. Esto es debido a que detpIn Aq se factoriza en R en factores lineales o cuadr aticos; los primeros corresponden a ra ces reales y los segundos tienen ra ces complejas pero ambas conjugadas, debido a que los coecientes de los factores son reales. As pues, no es posible obtener una matriz triangular realizando transformaciones ortogonales sobre una matriz real si esta tiene valores propios complejos. A lo m as que podemos aspirar es a obtener una matriz triangular por bloques con bloques diagonales de tama no 2 2 a lo m as. Teorema 9.15 (Teorema de Schur real) Si A P Rnn , existe una matriz ortogonal P P Rnn tal que P T AP  T , con T una matriz cuasi triangular superior. Es decir, T es una matriz triangular superior por bloques con bloques diagonales de tama no 1 1 o 2 2. Los valores propios de A son los valores propios de los bloques diagonales de T . Los bloques de tama no 1 1 corresponden a valores propios de A reales y los de tama no 2 2 a sus valores propios complejos conjugados. Demostraci on.- Se hace por inducci on sobre n como en el caso complejo. Si n  1 no hay nada que demostrar as que supondremos demostrado el teorema para matrices de tama no menor o igual que n 1. Sea A P Rnn y un valor propio de A. Si P R entonces admite un vector propio, u, real y unitario. Que sea real es consecuencia de que es soluci on del sistema pIn Aqx  0, siendo In A una matriz de n umeros reales y las soluciones de los sistemas se obtienen mediante operaciones sin salir del cuerpo. As Au  u y se procede como en el caso del teorema de Schur complejo. es tambi Si es un n umero complejo entonces en valor propio. Y si u es un vector s. En efecto, propio de A asociado a , u es un vector propio de A asociado a
 su su  u sA s  Au s Au

194

El a lgebra de los valores propios

Pongamos uR

s . Sea siendo imaginaria. As uR , uI P Rn1 y uR , uI  u, u  i la unidad  r r U  uR uI y U  QR su factorizaci on QR real (i.e., Q es real con columnas r ortonormales y R es Im Q  uR , uI y podemos escoger una matriz Q  real) As r es real y ortogonal. Ahora tal que U  Q Q

s u  u 2

uI

s u  u2 i

U T AU

  T T r QT r  Q AQ Q AQ A Q Q T T T r r AQ Q r AQ r Q Q

Pongamos B  QT AQ y observemos que B P R22 porque Q P Rn2 . As AQ  QB T T r r r y Q AQ  Q QB  0 porque las columnas de Q y Q son ortonormales. Por lo tanto   T r B Q A Q U T AU  r T AQ r 0 Q
r T AQ r P Rpn2qpn2q , aplicamos la hip Como Q otesis de inducci on a esta matriz como en el caso complejo. s. En efecto, como u y u s son Falta demostrar que los valores propios de B son y vectores propios asociados a valores propios distintos, son linealmente   independienr  uR uI  QR resulta tes. Y es f acil ver que tambi en uR y uI lo son. Y como U que R es invertible. As

AQR  A uR uI Ahora bien AuR


AuR AuI .

  


uu s s  u u A 2 2 2 1 spuR iuI qq  ppuR iuI q 2 RepquR ImpquI .

1 2

squR ip quI q  pp

De la misma forma AuI A uR uI




 ImpquR RepquI . Entonces 




AuR AuI

uR uI

Repq Impq Impq Repq .

9.4 Vectores propios a la izquierda

195

Como B  QT AQ resulta que AQR  QBR  QRR1 BR y QR consiguiente   Repq Impq 1 R BR  Impq Repq
s como valores propios. y esta matriz tiene y

uR uI . Por

9.4.

Vectores propios a la izquierda

A los vectores propios, tal y como han sido denidos, se les suele llamar vectores propios a la derecha. La raz on es que, en ocasiones, se usan tambi en vectores propios a la izquierda y es necesario distinguirlos. Denici on 9.16 Si A P Fnn y 0 es un valor propio de A, se dice que un vector no nulo y P Cn1 es un vector propio a la izquierda de A asociado al valor propio 0 si y A  y 0 . El subespacio propio a la izquierda de A asociado a 0 es el conjunto de vectores propios por la izquierda junto con el vector 0. Debe observarse que los valores propios de A y A est an relacionados mediante s conjugaci on. Es decir, 0 P pAq si y s olo si 0 P pA q. Como, adem as, conjugando y trasponiendo se tiene que y A  y 0
s0 y, Ay 

el siguiente resultado se sigue de forma inmediata. Proposici on 9.17 y P Cn1 es un vector propio a la izquierda de A asociado al valor propio 0 si y s olo si es un vector propio a la derecha de A asociado al valor s0 . propio Si la matriz A es diagonalizable; o incluso, si 0 es un valor propio simple de A aunque A no sea diagonalizable, entonces en su forma can onica de Jordan el bloque

196

El a lgebra de los valores propios

correspondiente a 0 es de tama no 1 1. Por lo tanto, si


     0   

...

     0   

T 1 AT

J 

..

0 . . . 0 . . . 0

.. .

...

y 0 est a en la posici on pi, iq de J entonces

A  y yi 0 i

y Axi

 0 xi ,

la i- esima la de T 1 y xi la i- esima columna de T . Como T 1 T es la siendo yi matriz identidad se sigue que y x  1. Sin embargo, si 0 es un valor propio con un bloque de Jordan de tama no mayor que 1 este producto escalar es cero. Para verlo basta considerar el caso en el que A es de la forma Jn p0 q. En este caso, un vector  T 1 0 0 propio por la derecha de A es e  y un vector propio por la izquierda 1   es en  0 0 1 .
Qu e pasa, nalmente, si 0 es semisimple pero no simple?. En este caso hay m as de un bloque de Jordan de A asociado a 0 , pero todos ellos son de tama no 1 1; i.e., las mutiplicidades algebraicas y geom etricas de 0 son iguales y mayores que 1. Hay vectores propios a la izquierda y a la derecha cuyo producto escalar es 1, pero los hay tambi en que son ortogonales. El producto escalar entre los vectores propios por la izquierda y la derecha de un valor propio juega un papel fundamental en el an alisis del condicionamiento del problema de calcular los valores propios de una matriz. Los vectores propios a la izquierda se pueden usar para proporcionar otra forma de construir una forma de Schur de una matriz. El proceso ser a el siguiente (se detalla nn s olo el caso complejo, el real ser a similar): Si A P C y P pAq sea u P Cn1 un vector propio a la izquierda de A de norma eucl dea 1 asociado a . Con este vector se construye una matriz unitaria U que tiene el vector u como u ltima columna: U Entonces U AU

U1 u .
 

AU1 U Au   U1 U1 1 U u A  . 1 u u AU1 u Au

9.5 Matrices unitariamente diagonalizables

197

Pero u Au  u u  y u AU1 ortonormales a u. As U AU

 

u U1

0 porque las columnas de U1 son




AU1 U Au U1 1 0

AU1 para obtener una matriz triangular. y aplicamos el proceso de inducci on a U1

9.5.

Matrices unitariamente diagonalizables

Hemos visto que toda matriz compleja es unitariamente semejante a una matriz triangular (teorema de Schur). Algunas tienen la propiedad m as fuerte de ser semejantes a una matriz diagonal. Son las matrices normales. Las introducimos, sin embargo, de otra forma. Denici on 9.18 Una matriz A P Cnn se dice que es normal si conmuta con su traspuesta conjugada. Es decir, si AA  A A. Con esta denici on vemos que las matrices unitarias y las matrices herm ticas son ejemplos de matrices normales. En efecto, si U P Cnn es unitaria entonces U U  U U  In . Y is H P Cnn es herm tica entonces H  H y toda matriz conmuta consigo misma. Veamos ahora que las matrices normales as denidas son precisamente las que son unitariamente diagonalizables.

Teorema 9.19 Una matriz es normal si y s olo si es unitariamente diagonalizable. Demostraci on.- Si A P Cnn es unitariamente diagonalizable entonces U AU con U

D

P Cnn unitaria y D  Diagp1, . . . , nq. Entonces A  U DU y


A
s  U DU  U DU

198

El a lgebra de los valores propios

En consecuencia

s U DU A A  U DU

s  U DDU

s son diagonales, conmutan. Es decir, Y como D y D

s A A  U DDU
y A es normal.

s  U DU U DU s  AA ,  U DDU

Rec procamente, por el teorema de Schur para cada A P Cnn existe una matriz unitaria U P Cnn tal que U AU  T , una matriz triangular superior. Si A es normal entonces A A  AA y esto equivale a que T T  T T . Veamos, por inducci on sobre el tama no de T , n, que esto s olo es posible si T es diagonal. Si n  1 no hay nada que demostrar. Supongamos la propiedad demostrada para matrices de tama no a lo m as n 1 y sea T una matriz triangular superior tal que T T  T T . Pongamos   t11 t 12 T  0 T22 Entonces
s t T  11 

t12

0 T22

Por una parte

  | t11 |2 t 12 t12 t12 T22 TT  T22 t12 T22 T


22

Y por otra T T

t11 |2  t|11 t12

Para que estas dos matrices sean iguales debe suceder que t 12 t12 }t12}2 y } t }  0 si y s o lo si t  0. En consecuencia 12 2 12 2 T

T22 T22

s t11 t 12

 0. Pero t 12 t12 

t11 0 0 T22

 T T22 . Aplicando la hip y T T  T T si y s olo si T22 T22 otesis de inducci on a T22 22 conclu mos que T22 , y por lo tanto T , son diagonales.
Este resultado (que las matrices normales sean unitariamente diagonalizables) se conoce con el nombre de Teorema espectral para las matrices normales. Y este, a

9.6 Teor a de Perturbaci on

199

su vez, se expresa diciendo que una matriz A P Fnn es normal si y s olo si se puede escribir en la forma A con v1 ,. . . , vn vectores ortonormales. Se trata, en efecto, de otra forma de escribir U AU V  U entonces V es unitaria y
 
n i 1

i vi vi

 Diagp1, . . . , nq porque si


 

v1 1     . .. V Diagp1 , . . . , n qV   .  v1 . .  vn n n vn v . 1 v1 v1 n

vn

Hay dos tipos de matrices normales especialmente importantes: las matrices unitarias y las matrices herm ticas (ortogonales y sim etricas en el caso real). Las matrices unitarias (ortogonales) son las matrices normales cuyos valores propios est an en la circunferencia unidad (i.e., tienen m odulo 1). Y las matrices herm ticas (sim etricas) son las matrices unitarias cuyos valores propios son n umeros reales. SE deja como ejercicio probar ambas caracterizaciones.

9.6.

Teor a de Perturbaci on

El Teorema de Bauer-Fike (Teorema 9.10) es un ejemplo t pico de un resultado de perturbaci on cuantitativa de valores propios. Es decir, es un resultado sobre c omo var an los valores propios de una matriz al someterla a una perturbaci on aditiva (peque na, habitualmente). Hay muchos otros resultados de este tipo (v ease por ejemplo [24]), pero en esta secci on nos centraremos en lo que se conoce como perturbaci on cualitativa. En particular estudiaremos la continuidad y diferenciabilidad de los valores propios como funciones de la matriz. El objetivo nal es encontrar una expresi on simple para el n umero de condici on del problema de calcular un valor propio de una matriz.

200

El a lgebra de los valores propios

9.6.1.

Continuidad de los valores propios

En el Ejemplo 9.9 hemos visto que, en general, la Forma de Jordan de una matriz no depende continuamente de esta. Este hecho implica que peque nos cambios en la matriz dada pueden resultar en grandes modicaciones en su Forma de Jordan. Esto no signica que no sea posible calcular num ericamente la forma de Jordan de ciertas matrices (de hecho lo es) pero el dise no de cualquier algoritmo con este prop osito deber a tener en cuenta este problema de falta de continuidad y en particular el hecho de que el conjunto de matrices simples es denso en Fnn (Corolario 9.14). Tanto este Corolario como el Ejemplo 9.9 reejan que el problema estriba en la preservaci on de los tama nos de los bloques de Jordan por peque nas perturbaciones. Ahora nos proponemos mostrar que es ah y s olo ah donde est an las dicultades te oricas. Es decir, el objetivo es demostrar que los valores propios de una matriz dependen continuamente de la matriz, y que en el caso de ser simples lo hacen diferenciablemente. Este resultado nos permitir a denir el n umero de condici on del problema de calcular valores propios simples. El problema que queremos abordar es el de calcular los valores propios de cada matriz A P Fnn . La primera dicultad que nos encontramos para plantear la funci on que dene este problema es cu al es su conjunto de llegada. El conjunto de partida est a claro: Fnn (F  R o C) pero hay una peque na dicultad para denir correctamente el conjunto de llegada. Por ejemplo, los valores propios de la matriz A


1 3 0 2

son tanto p1, 2q como p2, 1q. En otras palabras, mirando pAq como una n-tupla de n umeros complejos (posiblemente repetidos), esta est a determinada salvo una permutaci on de sus componentes. Esto nos conduce a considerar en el conjunto Cn la siguiente relaci on de equivalencia:

p1, . . . , nq  p1, . . . , nq i  piq, i  1, . . . , n


para alguna permutaci on P n , el grupo de permutaciones de orden n. Al correspondiente conjunto cociente lo representamos como Cn {. As el problema de calcular los valores propios de una matriz queda denido por la aplicaci on: f : Fnn Cn { r  rp1 , . . . , n qs A ;

9.6 Teor a de Perturbaci on

201

donde pAq  p1 , . . . , n q son los valores propios de A en alg un orden. A los elementos de Cn { los llamaremos n-tuplas desordenadas de n umeros complejos. Nuestro objetvo es demostrar que f es una funci on continua. Para ello debemos dotar a Cn { de una topolog a. Lo m as natural es considerar en Cn la topolog a n habitual (la derivada de cualquier norma) y en C { la correspondiente topolog a cociente; es decir, la topolog a m as na que hace que la proyecci on can onica : Cn Cn { r  rp1 , . . . , n qs  p1 , . . . , n q ;

sea una funci on continua. En otras palabras U n C abierto.

Cn{ abierto si y s olo si 1 pU q

Otra forma de dotar a Cn { de una topolog a es a trav es de una m etrica. Para n r , r P C { se dene la distancia de emparejamiento optimo entre estas dos n-tuplas desordenadas de la siguiente forma:
r rq  m n m dp, ax |j
n 1 j n

p j q |

ry r, resdonde p1 , . . . , n q y p1 , . . . , n q son dos representantes cualesquiera de pectivamente, y n es el grupo sim etrico de orden n (i.e., el grupo de permutaciones de orden n). r r y Es f acil demostrar que dp, rq no depende de los representates elegidos para r. Tambi en se puede demostrar que d es, en efecto, una m etrica para Cn { y que la topolog a cociente y la derivada de esta m etrica son las misma; es decir, que un n subconjunto de C { es abierto en la topolod a cociente si y s olo si es abierto en la topolog a derivada de la distancia de emparejamiento optimo. No lo haremos aqu y se deja como ejercicio (v ease [1, Ex. VI.I.1]).

Necesitamos ahora analizar de cerca el polinomio caracter stico de una matriz A. Recordemos que pA pq  detpIn Aq. Un an alisis minucioso de este determinante revela (v ease por ejemplo el Teorema 4.11.2 de [14]) que si pA pq  n a1 n1 an1 an entonces ak

1 i1 ... ik n

p1qk det Api1 : ik , i1 : ik q

donde Api1 : ik , i1 : ik q es la submatriz principal de A formada por las las y columnas i1 , . . . , ik . En particular, a1  trpAq y an  p1qn det A. Esta representaci on

202

El a lgebra de los valores propios

Im

Im

n ceros de f= n ceros de f+g


Re

33

32 3(triple) 31

12

1
1(doble) 11 Re

z |f(z)|>|g(z)|

23 21 24 2(cuadruple) 22

Figura 9.2: Interpretaci on del Teorema de Rouch e

Figura 9.3: Valores propios de A E en las bolas disjuntas centradas en los valores propios de A con igual multiplicidad

expl ta de pA pq es importante porque muestra que los coecientes del polinomio caracter stico de una matriz son funciones continuas de esta. Veremos enseguida que esta propiedad es crucial para demostrar que los valores propios, que son las ra ces del polinomio caracter stico, son funciones continuas de la matriz. Para lograr este objetivo haremos uso de un importante resultado sobre funciones anal ticas de una variable compleja (ver Figura 9.2): Lema 9.20 (Teorema de Rouch e) Sean f y g dos funciones anal ticas en el interior y sobre un contorno cerrado simple C. Si |f pz q| |g pz q| en todo punto de entonces las funciones f y f g tienen el mismo n umero de ceros, contando sus multiplicidades, dentro de . Ahora podemos demostrar que los valores propios son funciones continuas de la matriz. Teorema 9.21 La aplicaci on f : Fnn Cn { r  rp1 , . . . , n qs A ; que a cada matriz le asocia la n-tupla desordenada de sus valores propios (contando multiplicidades) es una funci on continua cuando en Fnn se considera la topolog a n habitual y en C { la derivada de la distancia de emparejamiento optimo.

9.6 Teor a de Perturbaci on

203

Demostraci on.- Sea } } una norma en Fnn . Debemos demostrar que @ 0 r} y r es la n-tupla desordenada de valores propios de existe tal que si }A A r r entonces dp, A rq . Supongamos jado un 0 y denotemos por i1 ,. . . ,is los valores propios distintos de A. Sea mj la multiplicidad algebraica de ij , j  1, . . . , s. Sea B pij q la bola con centro en ij y radio . Tomamos de modo que y que las bolas B pij q sean disjuntas dos a dos (v ease la Figura 9.3). Nuestro objetivo es demostrar que existe r} entonces en el interior de cada un n umero real positivo tal que si }A A r (v bola B pij q hay exactamente mj valores propios (quiz a repetidos) de A ease de r en nuevo la Figura 9.3). As pues, la distancia de ij a los mj valores propios de A B pij q es menor que . Esto implica que hay una forma de emparejar los valores r (existe una permutaci propios de A y A on ) tal que m ax |j pj q | . Es decir,

polinomial

q , que es lo que se quiere demostrar. Sea pA pq  n a1 n1 an1 an el polinomio caracter stico de A y sea j on la circunferencias que forma la frontera de la bola B pi q. Consideremos la funci
r r d ,
j

1 j n

g : C C n n1 z ; z a1 z an1z an

Para este n umero j 0 existe j 0 tal que si |ak bk | j para k  1, . . . , n y hpz q  z n b1 z n1 bn1 z bn entonces |g pz q hpz q| j para todo z P j . En efecto,

Esta es una funci on anal tica que no se anula en ning un punto de j y que tiene en el interior de cada j un u nico cero de multiplicidad mj . Como j es compacto y g es una funci on continua g alcanza en j su m nimo que es distinto de cero porque, como acabamos de decir, g no se anula en j . Sea j  m n |g pz q| 0.
z j

|gpzq hpzq| |z| |a1 b1||z|


n

n 1

|an1 bn1||z| |an bn| j




n k 0

|z |k

Como j es compacto, la funci on

n k 0

Escogiendo 0 j {Mj conclu mos que |g pz q hpz q| j . Por consiguiente, si ponemos q pz q  hpz q g pz q resulta que |q pz q| j  m n |g pz q| |g pz q| para todo z P j . Por el Teorema de Rouch e, g pz q y g pz q q pz q  hpz q tienen el mismo n umero de ceros en el interior de j . Es decir, hpz q tiene mj ceros en el interior de B pij q.
z j

|z |k

alcanza su m aximo en j , digamos Mj .

204

El a lgebra de los valores propios

 1m n . Por la continuidad de los coecientes del polinomio j s j r} y p rpq  caracter stico respecto de la matriz, existe 0 tal que si }A A A r, entonces |ak bk | n b1 n1 b1 b0 es el polinomio caracter stico de A r est para k  1, . . . , n. En conclusi on, para j  1, . . . , s, mj valores propios de A an en el interior de B pi q, que es lo que se quer a demostrar.
Sea, nalmente,
j

Corolario 9.22 El conjunto de matrices simples de Fnn es abierto Demostraci on.- Es una consecuencia inmediata del Teorema 9.21. En efecto, sea A una matriz con valores propios simples 1 ,. . . , n y sea 0 tal que B pi qXB pi q  H para i  j . De acuerdo con la demostraci on del Teorema 9.21 existe un ta que si r r }A A} entonces A tiene un u nico valor propio en cada B pi q. En consecuencia, r A es simple. Esto demuestra que el conjunto de matrices simple es abierto.

9.6.2.

Localizaci on de los valores propios

Tal y como hemos comentado en la introducci on de esta secci on, nuestro objetivo nal es calcular el n umero de condici on de los valores propios de una matriz. Veremos que los valores propios simples son funciones diferenciables y para ello utilizaremos un resultado auxiliar que es importante en s mismo porque sirve para localizar aproximadamente los valores propios de una matriz, es el llamado Teorema de Gerschgorin:

Teorema 9.23 (Teorema de Gerschgorin) Sea A

P Cnn y i 

n j 1 j i

1, . . . , n. Entonces todos los valores propios de A est an localizados en la uni on de los n discos:
n i 1

 

|aij |, i 

tz P C : |z aii| iu : GpAq.

Adem as, si la uni on de k de estos n discos forma una regi on conexa que es disjunta de los restantes n k discos, entonces en dicha regi on hay precisamente k valores propios de A.

9.6 Teor a de Perturbaci on

205

Demostraci on.- Sea un valor propio de A y x un vector propio asociado a . Pongamos x  rxi s y sea xp la componente no nula de x da mayor m odulo: |xp | |xi |, i  1, . . . , n. Como Ax  x tenemos que: xp que es equivalente a xp p app q 

 rAxsp 

n j 1

apj xj

n j 1 j p

 

apj xj .

La desigualdad triangular nos permite concluir que

|xp|| app| 

n apj xj j 1 j p

n j 1 j p

 

|apj xj | 

n j 1 j p

 

|apj ||xj |

|xp|

n j 1 j p

 

|apj |  |xp|p

As pues, | app | p para alg un p; es decir, est a en el disco cerrado con centro en app y radio p . Puesto que no sabemos qu e p corresponde a cada valor propio (salvo que conozcamos un vector propio asociado, que es tanto como conocer el propio valor propio, y entonces no estar amos interesados en localizarlo porque lo conocer amos exactamente), s olo podemos concluir que cada valor propio est a en la uni on de todos los posibles discos. Esto es GpAq. Para demostrar la segunda parte escribimos A  D C con D  Diagpa11 , . . . , ann q y por lo tanto C es la misma matriz que A salvo que los elementos diagonales son todos cero. Para t P r0, 1s denimos B ptq  D tC , de forma que B p0q  D y B p1q  A. Observamos que i ptq  por lo que GpB ptqq 
n n j 1 j i

 

|bij ptq| 

n j 1 j i

 

|taij |  ti
n

i 1

tz P C : |z biiptq| iptqu  tz P C : |z aii| tiu


i 1

206

El a lgebra de los valores propios

Por simplicidad vamos a suponer que la regi on conexa que es uni on de k discos y disjunta de los restantes es la formada por los primeros k discos. Denotemos a esta regi on por Gk , i. e. Gk : y por Gc k
k

i 1

tz P C : |z aii| iu

 GpAq Gk su complementario respecto de GpAq. As Gk X Gc k  H. Est a claro que en Gk hay k valores propios de Ap0q  D y los restantes n k est an . Vamos a demostrar que esto mismo sucede para todo A p t q con t P r 0 , 1 s. en Gc k Tomando un 0 para que la uni on de los discos Dpaii , q est e en Gk para i  para i  k 1 , . . . , n , por la continuidad de los valores propios, 1, . . . , k y en Gc k resulta que existe un 0 tal que si }E } entonces Ap0q E tiene k valores propios en Gk y n k en Gc k . En particular existe un t0 0 tal que para t P r0, t0 q, k valores propios de Aptq est an en Gk y n k en Gc k . Si t0 1 ya hemos terminado. Si no, para probar que Aptq tiene k valores propios en Gk y n k en Gc k para todo t P r0, 1s procedemos por contradicci on. Podemos suponer que existe t1 P rt0 , 1s tal que Aptq tiene k valores propios en Gk y n k en Gc k para t P r0, t1 q y Apt1 q tiene menos de k valores propios en Gk y m as de n k en Gc es; es decir, si k . Si fuera al rev Apt1 q tuviera menos de n k valores propios en Gc y m a s de k en G a k se proceder k
de forma similar. Veamos que esto conduce a una contradicci on. En efecto, sean 1 , . . . , s los valores propios no repetidos de Apt1 q en Gk y s1 , . . . , r los que est an en Gc k . Sea 0 un n umero real tal que la uni on de los discos Dpi , q est a en Gk para i  1, . . . , s y en Gc para i  s 1 , . . . , r . Tal y como hemos razonado m as arriba, por la continuidad k de los valores propios, existe un t 0 tal que Apt1 tq tiene en
r i s 1 s

menos de k valores propios en Gk y m as de n k en Gc on k ; lo que es una contradicci porque t1 t t1 y para t t1 la suposici on es que Aptq tiene exactamente k valores propios en Gk y n k en Gc k.

valores propios como Apt1 q y lo mismo en

Dpi , q. Es decir, Apt1 tq tiene

i 1

Dpi , q tantos

Lo siguiente es un ejemplo de aplicaci on del Teorema de Gerschgorin

9.6 Teor a de Perturbaci on

207

Ejemplo 9.24 La siguiente matriz A




1 104 104 2

puede verse como una perturbaci on de la matriz Diagp1, 2q. Sus valores propios pueden calcularse a mano: 1 108 y 2 108 . Qu e resultado nos proporciona el Teorema de Gerschgorin? Seg un este teorema, los valores propios de A deben estar en el intervalo r1 104 , 1 104 s y r2 104 , 2 104 s. Por qu e en la recta real? El Teorema de Gerschgorin garantiza que hay un valor propio en la bola de centro 1 y radio 104 y otro en la de centro 2 y el mismo radio. Pero A es real de modo que si sus valores propios fueran complejos deber an ser conjugado uno del otro y no podr a uno estar en una bola y otro en la otra. Por lo tanto deben ser reales.

El teorema de Gerschgorin en el ejemplo anterior nos da una idea de que los valores propios de A est an pr oximos a 1 y 2 pero la precisi on es escasa. Hay resultados que mejoran el resultado de este teorema pero no proseguiremos en esa direcci on. El lector interesado puede consultar los libros [12, 26], por ejemplo.

9.6.3.

Diferenciabilidad de los valores propios simples

Podemos ahora afrontar el problema de la diferenciabilidad de los valores propios. Veremos que los valores propios simples son funciones diferenciales de la matriz. Cuando los valores propios no son simples esta propiedad de diferenciabilidad puede fallar. Consideremos, por ejemplo, la siguiente matriz n n 1 ... ...     A  .  . . 1 0
n El polinomio caracter stico de esta matriz es de modo que A tiene como ? n on valores propios las n ra ces complejas de :  . es diferenciable como funci de pero 1 d n 1  n d

208

El a lgebra de los valores propios

que es 8 en  0 y para n 2. En otras palabras no es diferenciable en  0 cuando n 2. Esto no signica que no puedan calcularse los n umero de condici on de valores propios m ultiples, sino que no se puede hacer usando la diferencial. Centraremos nuestra atenci on en los valores propios simples. El primer problema a la hora de hablar de la diferenciabilidad de los valores propios simples es el de denir de forma adecuada una funci on que asocie a una matriz un valor propio simple. Esto lo podemos hacer localmente con ayuda del teorema de continuidad de los valores propios. En efecto, este teorema nos asegura que si 0 es un valor propio simple de A P Fnn y 0 es cualquier n umero real para el que las bolas con centro en los valores propios de A y radio son disjuntas dos a dos, r P B pAq resulta que en la bola entonces existe un n umero real 0 tal que si A r. Esto nos permite denir localmente, en el B p0 q hay un u nico valor propio de A entorno de una matriz A con un valor propio simple 0 , una funci on que asocia a cada matriz de dicho entorno el u nico valor propio simple que tiene en el entorno jado de 0 : f : B pAq B p0 q (9.2) r0 r A ; Con esta notaci on tenemos el siguiente resultado Teorema 9.25 Sea A P Fnn , 0 un valor simple de A. Existen bolas abiertas B pAq y B p0 q tales que la funci on denida en (9.2) es diferenciable en todo B pAq. Adem as, si x, y son vectores propios de A, por la derecha e izquierda respectivamente, r A con A r P B pAq entonces asociados a 0 y E  A
r0

Ex  0 yy Op}E }2q. x

(9.3)

Demostraci on: Para probar que f es diferenciable, supongamos que hemos demostrado la propiedad (9.3) para el valor propio simple 0 de A. Esto signica que para A tE P B pAq se tiene que f pA tE q f pAq t Por lo tanto Ex  yy Op|t|}E }2q. x Ex  yy x

l m

f pA tE q f pAq t0 t

9.6 Teor a de Perturbaci on

209

y esto signica que f es diferenciable y f 1 pAqpE q  es la diferencial de f en A. As pues s olo debemos demostrar (9.3). Supongamos para ello que J  T 1 AT es la forma de Jordan de A del Teorema 9.8. En realidad, nos interesa considerar una leve variaci on de esta forma cl asica de Jordan. Se trata de lo siguiente. Supongamos que z  0 es un n umero complejo y que Jn pq es un bloque de Jordan. Denamos 1 Jn Dz diere de Jn en que Dz  Diagpz, z 2 , . . . , z n q. Esta matriz es invertible y Dz los elementos en la subdiagonal superior son todos iguales a z en vez de ser todos iguales a 1. Este procedimiento para un bloque de Jordan se puede generalizar a cualquier matriz en forma de Jordan de modo que podemos suponer que la matriz J  T 1 AT de m as arriba es la forma de Jordan de A con {3 en vez de 1 en la superdiagonal. Dado que es un n umero tal que las bolas centradas en los valores propios de A y radio son disjuntas dos a dos, la distancia de 0 a cualquier otro valor propio de A es mayor que . Adem as, como x, y son vectores propios de A por la derecha e izquierda, podemos suponer que el elemento en la posici on p1, 1q de J es 0 , que x es la primera columna de T y que y es la primera la de T 1 . Si no x en ser a un valor propio de A fuera as podr mos sustituir x por x1  que tambi y x por la derecha asociado a 0 y tendr mos que y x1  1, que es lo que se necesita.
rAE Sea E una matriz tal que A

y Ex yx

P BpAq y

r  T 1 pA E qT J

a la i- Si denotamos por yi esima la de T 1 y por xj a la j - esima columna de T r resulta que el elemento en la posici on pi, j q de J es
r J ij

 yiExj yiAxj  yiExj Jij .

As pues, si ponemos
r J 11 r J ii

ij

 yiExj , tenemos que


11 ,

Ax1 y Ex1  0  y1 1

 yiAxi yiExi  i

ii

si i 1,

210

El a lgebra de los valores propios

r J ii1 r J ij

 Jii1 yiExi1 
ij

ii 1

si Jii1

ii 1

si Jii1

0

1

 Jij yiExj 

en cualquier otro caso.


r 1 es semejante a  DJD 
1n 2n

r Ahora, si  0 y D  Diagp, 1, . . . , 1q resulta que J r y tiene la siguiente forma: J

0  1  r J .   .  . 1

11 21

2 . . .

12 22

...

n1

n2

. . .

   

nn

r  A E, J ry J r Los valores propios de A son los mismos cualquiera que sea  0. r Vamos a usar el Teorema de Gerschgorin para localizar los valores propios de J en el disco de centro 0 11 . El radio de este disco est a acotado por pn 1q siendo  m axt| ij | : 1 i, j nu. Los dem as discos de Gerschgorin est an centrados en i ii y sus radios est an acotados por

pn 3q . 3

(9.4)

Nuestro objetivo es encontrar n umeros reales 0 y (que depender a de ) tales que el disco de centro 0 11 y radio pn 1q sea disjunto de los discos con centro en i ii y radio la cantidad de (9.4). En estas condiciones el Teorema de Gerschgorin asegurar a que en el disco con centro en 0 11 y radio ||p| 12 | | 1n |q s olo r habr a un valor propio de J ; i.e. de A E . El radio de este disco nos permitir a valorar la distancia entre 0 y ese valor propio de A E . Veremos que esa distancia se corresponde con la expresi on (9.3). Para que los discos en cuesti on sean disjuntos es suciente que la suma de sus radios sea menor que la distancia entre los correspondientes centros; es decir,

| 0
Ahora bien

11

pn 3q . i ii| pn 1q 1 3

| 0

11

i ii| |0 i| 2 2 .

9.6 Teor a de Perturbaci on

211

Y basta elegir y

0 para que
1 3 pn 1q pn 4q

y en particular basta con que 1 3 pn 1q n

porque 0. Procedemos ahora a manipular esta desigualdad. En primer lugar es equivalente a pn 1q2 n 3 ya (9.5) n2 2 n  2 n 2 2 3 6 Recordemos que buscamos un n umero real 0. Con esto en mente, para que se verique (9.5), basta encotrar y positivos de forma que n 0 y n2 6 0. La segunda desigualdad depende de y . Buscamos un n umero real 2 y positivo que depende para el que se cumpla que n2 0. Vista como 2 una inecuaci on en el discriminante es 2 4 que ser a positivo si y s olo si 16n 2 Si
2

4n 
2

2 4

16n 2

1. 
4 para ver mediante una simple

cumple esta condici on, basta escoger sustituci on que n2 0. 2 En conclusi on, si cumple

16n 2 4 n 0 y 1 y tomamos  resulta 2 6 que se verica la desigualdad (9.5). Ahora bien, estas dos condiciones sobre son equivalentes a " * 0 m n , ? . (9.6) 6n 4 n

212

El a lgebra de los valores propios

4 , el disco con centro en 0 11 y radio pn 1q tendr a intersecci on vac a con lo discos de centro i ii y radio el n umero de (9.4). Por lo tanto, si cumple esta condici on y 

Exj . As Finalmente, hemos denido  m axt ij : 1 i, j nu y ij  yi pues 1 9 | ij | }yi}2}xj }2}E }2 }T }2}T }2}E }2 donde }}2 es la norma espectral. Pongamos
 m n , ? 6n 4 n y sea
" *

0 un n umero real tal que

, . m n 1 }T } 2 }T }2 Si }E }2 entonces A E P B pAq y  1 m ax t| ij |u }T 1 }2 }T }2 }E }2 i,j n Con este y  4 , en el disco de centro 0 y Ex y radio pn 1q hay un u nico r  A E . Pero, valor propio de A 1q 2 pn 1q  4pn  Op}E }2 2 q  O p}E } q,
2

"

debido a la equivalencia de normas. En conclusi on


r0

Ex  0 yy Op}E }2q x

tal y como se deseaba demostrar.

9.6.4.

El n umero de condici on de los valores propios simples

Una vez que sabemos que los valores propios simples de una matriz son funciones diferenciables de esta, podemos calcular f acilmente el n umero de condici on absoluto. En efecto, sabemos que para A P Fnn el n umero de condici on del problema de calcular el valor propio simples 0 es p0 q  }f 1 pAq}

9.6 Teor a de Perturbaci on

213

siendo f la funci on denida en (9.2) y f 1 pAq la matriz Jacobiana de f . Ahora bien, el Teorema 9.25 nos da una expresi on para la diferencial de f : f 1 pAqpE q  y Ex yx

donde y y x son vectores propios por la izquierda y derecha de A asociados a 0 . Tomaremos valores propios normalizados; es decir, }x}2  }y }2  1. Escribiendo esta diferencial m as formalmente (como aplicaci on lineal): f 1 pAq : Fnn E

C y Ex yx

la matriz Jacobiana, que seguimos denotando como f 1 pAq, es la matriz de esta aplicaci on lineal cuando se toman las bases can ocicas. Es decir, es una matriz 1 n2 que identic andola con una matriz n n, la pi, j q- esima componente es y Eij x yx

y, en consecuencia, escrita la matriz Jacobiana 1 n2 en forma de matriz n n: B 1 T  y1 x yx  y x yx .

siendo Eij la matriz cuyos elementos son todos cero excepto el de la posici on pi, j q que es 1. As y Eij x  y i xj

La norma eucl dea de la matriz Jacobiana 1 n2 corresponde a la norma de Frobenius de B . Es decir, 1 2 }f 1pAq}2 tr 2  }B }F  trpB B q  x yy x donde hemos usado que y y

xy yx

 |y1x|2 tr

xx

 }y}2 2  1. Pero, tr xx  trpxx q  1 porque trpxx q  |x1 |2 |xn |2  1. Por lo tanto


2 p0 q  }f 1 pAq}2

 |y 1 x| .

214

El a lgebra de los valores propios

Finalmente, como y y x son unitarios |y x| forman y y x. Consecuentemente 2 p0 q  1 | y x|

 cos siendo el a ngulo agudo que  sec

La interpretaci on de este resultado es clara: el problema de calcular un valor propio simple de una matriz est a mal condicionado cuando los vectores propios por la izquierda y derecha son casi perpendiculares, mientras que cuando son colineales o casi colineales est a bien condicionado. En particular si un valor propio tiene asociado un bloque de Jordan de tama no mayor que 1, entonces los vectores propios por la derecha e izquierda son ortogonales (v ease la Secci on 9.4) y su n umero de condici on es 8, lo que concuerda con el ejemplo visto al comienzo de la Secci on 9.6.3. Por el contrario, si A es normal, entonces es unitariamente diagonalizable: U AU  D y los valores propios por la izquierda y por la derecha de A para el mismo valor propio coinciden. Es decir, y x  x x  1 y el problema de calcular valores propios simples est a perfectamente condicionado. De hecho la expresi on (9.3) proporciona, en este caso, una relaci on directa de la perturbaci on en A y la perturbaci on en 0 :
r0 0 | |x Ex| Op}E }2 q }E }2 Op}E }2 q | donde hemos usado que por la desigualdad de Cauchy-Schwarz |x Ex| }x}2 }Ex}2  }Ex}2 y por la compatibilidad de la norma eucl dea y la espectral }Ex}2 }E }2 }x}2  }E }2. No obstante, este resultado tambi en es una consecuenca directa del Teorema

de Bauer-Fike.

Cap tulo 10

El problema de valores propios

10.1.

Introducci on

El objetivo de este cap tulo es estudiar los algoritmos m as importantes para calcular los valores propios de matrices generales; es decir, matrices que no son sim etricas o herm ticas. Los algoritmos que veremos aqu son aplicables tambi en a matrices sim etricas y herm ticas pero para estas hay, adem as, otros algoritmos espec cos. En Algebra Lineal Num erica se suele hablar de algoritmos directos y de algoritmos iterativos para distinguir entre los algoritmos que producen el resultado deseado tras un n umero nito de iteraciones (algoritmos directos como los de Gauss o QR) y aquellos que tienen como objetivo la construcci on de una sucesi on de objetos que converge al resultado deseado. Como veremos enseguida hay una raz on muy poderosa para que los algoritmos para el c alculo de valores y vectores propios sean del segundo tipo. Y siendo las cosas as se habla de m etodos directos e iterativos para el c alculo de valores y vectores propios con un signicado diferente a los anteriores. Los primeros buscan obtener todos los valores propios y (opcionalmente) los vectores 215

216

El problema de valores propios

propios; es decir, la forma de Schur de la matriz. Los m etodos iterativos tratan de calcular un valor propio seleccionado y un vector propio, y de forma reiterada llegar a encontrar, si es posible, todos ellos. El algoritmo QR es el paradigma de los m etodos directos y el M etodo de las Potencias el de los m etodos iterativos. En este Cap tulo trataremos los m etodos iterativos.

10.2.

El m etodo de las potencias

El objetivo del m etodo de las potencias es calcular un vector propio de una matriz dada A P Fnn . Es extremadamente simple: Dado un vector no nulo x P Fn se construye la sucesi on tAk xu, k  1, 2, . . .. Esta sucesi on de vectores puede no converger a un vector, pero frecuentemente la sucesi on de los subespacios generados por sus elementos,t Ak x u, s . Recordemos que para cada valor propio no hay un vector propio determinado un vocamente, sino todo un subespacio de ellos (exceptuando el vector cero que no es un vector propio). Por lo tanto, lo que nos interesa es buscar un subespacio propio de A y despu es escoger un vector propio particular; por ejemplo, un vector propio unitario. As pues, debemos estudiar la convergencia de subespacios y no de vectores propiamente.

10.2.1.

Convergencia de subespacios

En primer lugar, al conjunto de subespacios de Fn de dimensi on d se le llama Grassmanniana o Variedad de Grassman, y se representa mediante el s mbolo Grd pFn q: Grd pFn q  tS

Fn : S subespacio de dimensi on du

Para poder hablar de convergencia de subespacios, debemos dotar a Grd pFn q de una estructura topol ogica. Hay dos formas cl asicas de hacerlo que producen la misma topolog a: denir una distancia entre subespacios, llamada distancia gap, o identicar el conjunto de subespacios de dimensi on d con un conjunto cociente de matrices y denir en este la topolog a cociente. Aunque la primera forma de proceder es m as apropiada para el an alisis num erico porque proporciona cotas cuantitativas en el an alisis del error, es tambi en la m as larga. Como, adem as, no haremos un an alisis del error muy riguroso, adoptaremos la segunda aproximaci on, que es m as r apida.

10.2 El m etodo de las potencias

217

n Dado un subespacio S de dimensi on d en F  y dada una  base tx1 , . . . , xd u, llamaremos matriz base de S a la matriz X  x1 xd . Las matrices base de los subespacios de dimensi on d tienen la particularidad de ser matrices de tama no n d y de rango d. Y toda matriz con estas propiedades genera un subespacio de dimensi on d. Pero puede haber m as de una matriz n d de rango d que genere el mismo subespacio: todas las matrices base deben estar relacionadas mediante una matriz de cambio de base. Es decir, X1 , X2 P Fnd generan el mismo subespacio de dimensi on d si y s olo si rang X1  rang X2  d y existe una matriz invertible P P Fdd tal que X1  X2 P . Ahora bien, la relaci on X1  X2 si y s olo si existe P P Fdd tal que X1  X2 P es una relaci on de equivalencia en el conjunto Mn,d pFq de las matrices n d de rango d con elementos en F. Y cada subespacio de dimensi on d puede identicarse con una clase de equivalencia. As , identicaremos

Grd pFn q 
M

Mn,d pFq Gld pFq

n,d donde Gl representa el conjunto de clases de equivalencia por la relaci on que d pFq acabamos de denir. En concecuencia, dada una matriz X P Mn,d pFq denotaremos por X P Grd pFq el subespacio generado por las columnas de X .

pFq

Ahora, Mn,d pFq es un conjunto abierto de Fnd que podemos considerar dotado de la topolog a relativa. En este caso, U Mn,d pFq es abierto en Mn,d pFq si lo es en Fnd . Con esta topolog a en Mn,d pFq podemos dotar a Grd pFn q de la topolog a Mn,d pFq cociente en Gld pFq : Si : Mn,d pFq X

GrdpFnq X

es la proyecci on can onica, U Grd pFn q es abierto si y s olo si 1 pU q es abierto en Mn,d pFq. As pues, la topolog a de Grd pFn q es la topolog a m as na que hace de una aplicaci on continua. Tenemos adem as Lema 10.1 es una aplicaci on abierta. Demostraci on.- Hay que probar que si U Mn,d pFq es abierto entonces pU q es abierto en Grd pFn q. Y, de acuerdo con la denici on de la topolog a denida n 1 en Grd pF q, esto signica que p pU qq es abierto en Mn,d pFq. Ahora bien, Y P

218

El problema de valores propios

1 p pU qq si y s olo si Y P pU q; y esto equivale a que alguna matriz X P U . Por lo tanto, 1 p pU qq  tXP : X

Y  X para

P U y P P GldpFqu

Para demostrar que 1 p pU qq es abierto tenemos que ver que si X P 1 p pU qq existe un r 0 tal que si }X Y } r entonces Y P 1 p pU qq. Tomamos, como norma, cualquier norma de matriz y sea X P 1 p pU qq. Entonces XP P U para alguna matriz P P Gld pFq. Como U es abierto, existe s 0 tal que si }XP Z } s entonces Z P U . Sea s 0r }P } y supongamos }X Y } r. Como }XP Y P } }X Y }}P } resulta que }XP Y P } s; por lo que Y P P U . Es decir, Y P 1 p pU qq tal y como se deseaba demostrar. Hay algunas propiedades topol ogicas importantes de Grd pFn q que utilizaremos pero que no vamos a demostrar. Son las siguientes:
n,d pFq es el subconjunto de Mn,d pFq de matrices cuyas columnas son (i) Si M ortonormales y Ud pFq representa el grupo matrices unitarias (ortogonales si n,d pFq{Ud pFq son F  R) de tama no d d entonces Mn,d pFq{ Gld pFq y M n,d pFq est homeomorfos. Se entiende que M a dotado de la topolog a relativa n,d pFq{Ud pFq es el conjunto cociente de como subconjunto de Mn,d pFq y M clases de matrices con columnas ortonormales que son matriz base del mismo n,d pFq est espacio vectorial. Es decir, Q1 , Q2 P M an relacionadas si y s olo si existe U P Ud pFq tal que Q2  Q1 U . El espacio cociente Mn,d pFq{Ud pFq se supone dotado con la correspondiente topolog a cociente. n,d pFq{Ud pFq son homeomorfos se puede La prueba de que Mn,d pFq{ Gld pFq y M obtener como consecuencia de que los factores Q y R en la factorizaci on QR de A (recordemos que por ser A de rango completo es u nica) son funciones continuas de A.

(ii) Si V

n,d pFq entonces M r1 p rpV qq  tQZ : Q P V y Z P Ud pFqu,

r es una aplicaci y se demuestra igual que en el Lema 10.1 que on abierta.

10.2 El m etodo de las potencias

219

(iii) Ya hemos dicho que a Grd pFn q se le puede dotar de una estructura de espacio m etrico con la llamada m etrica gap. Somos ahora un poco m as precisos en n este punto: Dados dos subespacios S1 , S2 P Grd pF q se dene la distancia gap entre S1 y S2 como pS1 , S2 q  }P1 P2 }2 siendo Pi la proyecci on ortogonal sobre Si . Esta denici on es una generalizaci on de un hecho bastante natural para subespacios de dimensi on 1. Si dim S1  dim S2  1 entonces S1  x y S2  y , digamos, con x  0, y  0. En este caso resulta (aunque no es trivial demostrarlo) que }P1 P2 }2  sen siendo el a ngulo agudo que forman x, y . Es claro que en este caso pS1 , S2 q  sen dene una m etrica. En cualquier caso, Grd pFn q con la topolog a derivada de la m etrica gap y los espacios cocientes Mn,d pFq{ Gld pFq y Mn,d pFq{Ud pFq son homeomorfos. La demostraci on de este resultado tampoco es trivial. (iv) Como todo espacio m etrico es Hausdor, Grd pFn q es Haussdor.
n,d pFq es cerrado y acotado; por lo tanto com(v) Se demuestra f acilmente que M pacto (por ser subespacio de Fnd y F  R o C). Como la proyecci on can onica n,d pFq r:M
n,d F M Ud F

pq n p q es continua, Grd pF q es compacto.

El siguiente resultado muestra que la convergencia de sucesiones de subespacios puede estudiarse a partir de la convergencia de matrices bases de los mismos. Teorema 10.2 Sea tSk uk0,1,2,... Grd pFn q una sucesi on de subespacios y S P Grd pFq. Sea X P Mn,d pFq una matriz base de S y, para k  0, 1, 2, . . . Xk una matriz base de Sk . Entonces Sk S si y s olo si para cada k  0, 1, 2, . . . existe una matriz invertible d d Pk tal que Xk Pk X . Demostraci on.- La demostraci on es elemental. Supongamos Sk S y sea UX un entorno abierto de X . Como es abierta VS  pUX q es un entorno abierto de S y como Sk S , existe un n umero natural N tal que si k N entonces Sk P VS . Dado que VS  pUX q, para cada k N existe una matriz Yk P UX tal que Sk  Yk . Es decir, para cada k N existe una matriz invertible Pk tal que Xk Pk P UX . Esto signica que Xk Pk X .

220

El problema de valores propios

El rec proco se demuestra igual. Si VS es un entorno abierto de S entonces UX  1 pVS q es un entorno abierto de X . Si existen matrices invertibles Pk tales que Xk Pk X entonces existe un entero positivo N 0 tal que si k N se tiene que Xk Pk P UX pero VS  pUX q. Por lo tanto, para k N se tiene que Sk  pXk Pk q P VS . Es decir, Sk S .
r es abierta, la demostraci Usando que on del siguiente resultado es igual que la del Teorema 10.2

Teorema 10.3 Sea tSk uk0,1,2,... Grd pFn q una sucesi on de subespacios y S P n,d pFq una matriz base ortonormal de S y, para k  0, 1, 2, . . . Grd pFq. Sea Q P M Qk una matriz base ortonormal de Sk . Entonces Sk S si y s olo si para cada k  0, 1, 2, . . . existe una matriz unitaria d d Zk tal que Qk Zk Q.

Con estos resultados sobre convergencia de subespacios podemos probar el siguiente resultado fundamental: Teorema 10.4 Sea X P Mn,d pFq y A P Fnn una matriz tal que rangpAk X q  d para todo k  1, 2, . . .. Si la sucesi on de subespacios t Ak X u converge, lo hace a un subespacio S P Grd pFn q que es A-invariante. Demostraci on.- Supongamos que Ak X S . Como rangpAk X q  d para cada k 0 el subespacio Ak X P Grd pFn q. Ahora bien, Grd pFn q es un espacio compacto y Hausdor, por lo tanto cerrado. Si Ak X converge debe hacerlo a un subespacio de Grd pFn q. Veamos que, adem as, este debe ser A-invariante. En efecto, como para k  0, 1, 2, . . . Ak X es una matriz base de Ak X aplicando el Teorema 10.2, para cada k  0, 1, 2, . . . existe una matriz invertible Pk tal que AK XPk Y , donde Y es una matriz base de S . Dado que A es lineal, y por lo tanto continua, ApAK XPk q AY . Aplicando de nuevo el Teorema 10.2 deducimos que Ak1 X AY . Pero por hip otesis Ak1 X Y . Como Grd pFq es Haussdorf, el l mite es u nico. Por lo tanto, AY  Y  S . Ahora es f acil deducir que AS S . En efecto, si x P S entonces x  Y y Ax  AY P AY  S.

10.2 El m etodo de las potencias

221

10.2.2.

El algoritmo del m etodo de las potencias

Aplicamos el Teorema 10.4 al m etodo de las potencias.

Corolario 10.5 Sea A P Fnn y x P Fn un vector no nulo. Si la sucesi on de subespacios Ak x converge a un subespacio y no nulo entonces y es un vector propio de A.

Demostraci on.- En primer lugar, si Ak x y con y  0 entonces Ak x  0 para todo k  1, 2, . . .. Por el Teorema 10.4 y es A-invariante, lo cual signica que Ay P y . Es decir, Ay  y para alg un P F. Por lo tanto, y es un vector propio de A asociado al valor propio .

Ak x converge a un subespacio no nulo y entonces y es vector propio real


asociado a un valor propio real. De forma similar se demuestra

N otese que de acuerdo con la demostraci on del corolario, si A y x son reales y

Corolario 10.6 Sea A P Fnn y q P Fn un vector unitario. Si la sucesi on de subesk A q pacios }Ak q}2 converge a un subespacio y no nulo entonces y es un vector propio unitario de A.

Este resultado es la base del m etodo de las potencias cuya primera versi on es la siguiente:

222

El problema de valores propios

M etodo de las Potencias (Primera Versi on) Dada A P Rnn Paso 1: El jase x0 P Fn1 (F  R o C) x0 Paso 2: q0  }x0}2 Paso 2: for j  0, 1, 2, 3, . . . hasta convergencia xj 1  Aqj xj 1 (vector propio unitario aproximado) q j 1  xj 1 j 1  q Aqj 1 (valor propio aproximado) j 1 end for. Antes de analizar la convergencia de este algoritmo conviene hacer algunas observaciones: 1. En primer lugar, el algoritmo construye la sucesi on de vectores unitarios: q0 , q1 , q2 , . . . donde Aqi1 qi  }Aqi1}2 , i  1, 2, . . . Es muy f acil ver que qi A q0  }A iq }
i

.
*

0 2

Ak q0 Es decir, el algoritmo construye la sucesi on }Ak q0}2 del Corolario 10.6. Por lo tanto, si esta sucesi on converge lo hace a un vector propio unitario de A. No obstante, esta sucesi on puede no converger y sin embargo s hacerlo la sucesi on Ak q0 de subespacios }Ak q0}2 . Esto es lo importante. En tal caso, de acuerdo con el Corolario 10.6, obtendremos un subespacio propio de A como l mite. 2. Se usa provisionalmente la expresi on hasta convergencia para indicar que, en caso de que la sucesi on de subespacios converja, la rutina for se realizar a un n umero suciente de veces. M as adelante estudiaremos un criterio de terminaci on de esta rutina.

"

10.2 El m etodo de las potencias

223

3. El algoritmo calcula vectores unitarios qj que cuando qj q proporcionan un vector propio unitario, q , de A. Por eso llamamos vectores propios aproximados a los vectores qj .

Aqj que es un n umero en F. Si qj fuera un 4. Con cada vector qj se calcula qj a un valor propio exacto. En efecto: vector propio exacto entonces qj Aqj ser
Aqj

 qj qjAqj  qjqj 

porque qj es unitario. Si qj es un vector pr oximo a un vector propio entonces umero pr oximo a un valor propio de A. j  qj Aqj es, por continuidad, un n Por eso le llamamos valor propio aproximado. Adem as, si A es real y x0 es real, entonces todo se realiza en aritm etica real. Es decir, los vectores y valores propios aproximados calculados son reales. 5. A un cuando la sucesi on qj no converja, si qj converge lo hace a un subespacio propio y los vectores qj seguir an siendo vectores propios aproximados. j converger En consecuencia, si qj converge, la sucesi on a a un valor propio de A. Es decir, si el algoritmo converge (en el sentido que qj converge) se obtiene un vector propio unitario y un valor propio tan aproximados como se quiera (dentro de la aritm etica en punto otante que se utilice) de A. Pero dado que los vectores propios pueden cambiar de direcci on, los criterios para terminar el algoritmo deber an tener en cuenta tanto a los vectores propios como a los valores propios.

10.2.3.

An alisis de la convergencia del m etodo de las potencias

La cuesti on ahora es establecer condiciones sucientes lo m as amplias posible sobre A y q para poder asegurar que qk converge. El siguiente teorema es el resultado fundamental: Teorema 10.7 Sea q0 P Fn un vector unitario y A P Fnn una matriz diagonalizable con 1 , . . . , n como valores propios. Sea tv1 , . . . , vn u una base de vectores propios unitarios de A (Avi  i vi y }vi }2  1, i  1, . . . , n) y supongamos que q0  1 v1 n vn . Supongamos tambi en que

|1| |2| |3| |n|

(10.1)

224

El problema de valores propios

Entonces qj v1 si y s olo si 1  0. M as a un, en tal caso, para j 0, 1, 2, . . . existen n umeros complejos zj de m odulo 1 tales que

}zj qj v1}2 
Recu erdese que la expresi on }zj qj

2 j O .
1

v1}2 


2 j O signica que para j sucien 1 j 2 K .
1

temente grande existe una constante positiva K tal que

}zj qj v1}2

Por lo tanto, la segunda parte del Teorema nos dice que, cuando " *hay convergencia, 2 j esta se produce a la misma velocidad a la que la sucesi on converge a 0. 1 Demostraci on.- Es f acil ver que si Avi  i vi entonces Aj vi  j i vi y, en consecuencia, j Aj q0  1 Aj v1 n Aj vn  1 j 1 v1 n n vn . Si 1 As j
j  0, como 1  0 porque |1| |2| 0, podemos denir j  }A q0j}2 .

 0 y recordando que qj 
j qj

Aj q0 }Aj q0}2 tenemos que 2 1

1 1

 v1

2 1

v2

n 1

n 1

vn .

(10.2)

2 Como por hip otesis 1

1, tenemos concluimos que qj v1 .

que l m j qj
j

v1 . Por el Teorema 10.2

Rec procamente, supongamos qj v1 . Por el Teorema 10.2 existen n umeros j tales que j qj v1 . Sea P la proyecci on sobre v1 a lo largo de v2 , . . . , vn . Entonces P pj qj q P v1  v1 . Pero P pj qj q  j j j j j j j j v v q  P p A q q  P p v 1 2 2 n n 0 1 1 2 n }Aj q0}2 }Aj q0}2 }Aj q0}2 11v1.

10.2 El m etodo de las potencias

225

j 1 j on sobre v1 j }A q0}2 1v1 v1. Como v1  0 debe ser 1  0. A la proyecci a lo largo de v2 , . . . , vn se le llama proyecci on espectral sobre el subespacio propio v1 . As Para demostrar la segunda parte del teorema partimos de la expresi on (10.2) y ponemos
j
j
j 2 2 3 3 n n xj  v2 v3 vn . 1 1 1 1 1 1 Entonces, teniendo en cuenta que }vi }2
j 2 2 v2 1 j 1 2 2
1 1

}xj }2 
La sucesi on

} }

j 3 3 v3 2 1 j 1 3 3
1 2

 1,

} }
1 2

j n n vn 2 1 1 j n n

} }2 

2
1

j 3 3
1 2

j n n
1 2

}qj }2  }v1}2  1. M as a un,

Adem as, la norma es una funci on continua, de modo que l m |j |


j

es mon otona decreciente (o mejor, no creciente) y acotada superiormente. Sea K una cota superior (por ejemplo, K puede tomarse el elemento de la sucesi on correspondiente a j  0). As j 2 . }xj }2 K 1 Por otra parte, como j qj  v1 xj y l m xj  0 tenemos que l m j qj  v1 .
j

 1 dado que

||j | 1|  } }  1 j }Aj q0}2 |1j1|  | | |11|  } }2 }1j1v1}2 |1j1| 1 j }Aj q0 1j1v1}2  }xj }2. |11| As , para j  0, 1, 2, . . . 1 }xj }2 |j | 1 }xj }2 .

j A q0 2 1 j 1 1 1 j A q0

226

El problema de valores propios

y como xj 0, para j sucientemente grande 1 }xj }2 0. Supondremos de ahora en adelante que j es sucientemente grande como para que se cumpla esta condici on. j Ahora si zj  |j | entonces |zj |  1 y zj qj

1 1 p v1 xj q pv1 xj q  |j | 1 } xj } 2

} xj } 2 1 1 v1 xj . 1 }xj }2 1 }xj }2

Por lo tanto, teniendo en cuenta que }v1 }2

 1, }xj }2 }zj qj v1}2 1 2 } xj } 2 Para j sucientemente grande 1 }xj }2 1 , por lo que 2 }zj qj v1}2 4}xj }2.
j 2 mos que K , conclu
1

Finalmente, como }xj }2

}zj qj v1}2

j 2 4K
1

para j sucientemente grande, tal y como se deseaba demostrar. La condici on suciente de convergencia del Teorema 10.7 requiere que la matriz A tenga un valor propio dominante en m odulo y que para el vector inicial x0 la componente de este en la direcci on del subespacio propio asociado a dicho valor propio dominante sea no nula. Ambas condiciones son gen ericas (es decir, casi todas las matrices y vectores las cumplen). Ya sabemos que el conjunto de las matrices que tienen valores propios distintos es abierto y denso, de modo que la condici on de tener un valor propio dominante en m odulo es gen erica salvo que la matriz sea real y tenga valores propios complejos. Esta situaci on la analizamos enseguida. En el supuesto de que la matriz dada tenga un valor propio dominante en m odulo, la elecci on de un vector x0 que no tenga componente nula en la direcci on del correspondiente subespacio propio no presenta problemas. Pr acticamente cualquier vector cumple esta condici on. Pensemos, por ejemplo, en la siguiente situaci on: sabemos que alguien 2 ha dibujado dos vectores linealmente independientes en R con origen en p0, 0q pero desconocemos qu e vectores son. Qu e posibilidades tenemos de dar un vector que sea colineal con uno de ellos? Convendremos inmediatamente que es muy improbable

10.2 El m etodo de las potencias

227

que escogido un vector al azar, este sea colineal con uno de los vectores dados. De la misma forma, si escogemos x0 al azar es casi seguro que su componente en la direcci on del subespacio propio asociado al valor propio dominante sea no nula. Una buena pr actica consiste en no tomar x0 un vector con estructura (por ejemplo, x0  p1, 0, . . . , 0q) sino al azar. Si la matriz tiene valores propios complejos a un cuando sus valores propios sean distintos pueden tener igual m odulo. esto es claro si la matriz es real con valores propios complejos, pero puede suceder, incluso, con matrices complejas. Por ejemplo, la matriz A = 1.0000 + 1.0000i 0 0 - 1.0000i

0 + 2.0000i 1.0000 - 1.0000i -3.0000

0 0 1.0000

tiene como valores propios: >> eig(A) ans = 1.0000 1.0000 + 1.0000i 1.0000 - 1.0000i Aplicando el m etodo de las potencias con vector >> x0=rand(3,1) x0 = 0.8147 0.9058 0.1270 produce 4 subsucesiones de valores propios que parecen estabilizarse en los valores 1.0000 - 0.6119i, 1.5931 - 0.2490i, 1.0000 - 0.1563i, 0.4069 - 0.2490i

228

El problema de valores propios

Veamos que este no es un hecho casual. Supongamos que A es diagonalizable y que |1|  |2| |3| . Supongamos tambi en que 1  2 y que las componentes, 1 y 2 , de x en las direcciones de los vectores propios v1 y v2 no son cero. Supongamos nalmente que 1  ei 2 , 0 2 . Entonces Ak x  k 2

eik 1 v1 2 v2 3

3 2

v3 n

n 2

vn

Recordemos ahora que en el m etodo de las potencias la convergencia que se analiza es la de los subespacios generados por los vectores propios aproximados, Teorema 10.7, y no la de los vectores mismos. As pues, si existe un n umero racional p  t{( s 2 k on de subespacios A x tal que  p entonces hay t subsucesiones en la sucesi que convergen, cada una de ellas, a los subespacios generados por los vectores e
2ksi t

1 v1 2 v2 ,
2i 4

 1, . . . , t.

En el ejemplo de arriba 1 i  e

p1 iq, de modo que  24 y t  4.

Hay otros casos en los que no cumpli endose la condici on (10.1) todav a se puede asegurar la convergencia. Recordemos que A es diagonalizable y supongamos que 1 es un valor propio semisimple pero 1  2   r |r1 | con r n o 1   n con |n | 0 (el caso A diagonalizable y i  0 para i  1, . . . , n implica que A  0). En estas condiciones Ak x  k 1

r i 1

i vi

n i r 1

i 1

vi

siendo x1  1 v1 r vr la proyecci on de x sobre el subespacio v1 , . . . .vr a lo largo de vr1 , . . . , vn . Como el valor propio 1 es semisimple de multiplicidad r, resulta que v1 , . . . .vr  Kerp1 In Aq. Por lo tanto, si la proyecci on de x sobre Kerp1 In Aq a lo largo de vr1 , . . . , vn no es cero, para k  0, 1, 2, . . . existen 1 escalares k  k (n otese que 1  0 porque o bien |1 |n | 0 o 1   n 1 con |n |
r i 1

0) tales que k Ak x

valor propio 1 .

i vi

P Kerp1In Aq, de modo que este es un vector propio de A asociado al

i 1

i vi . Es decir,

Ak x

i 1

i vi

. Pero

10.2 El m etodo de las potencias

229

Un u ltimo aspecto a considerar es el de la velocidad de convergencia cuando esta se da. Tal y como comentamos antes de la demostraci on del Teorema 10.7, la segunda parte de este nos indica que cuando se dan las condiciones de convergencia, la velocidad a la que los subespacios Aj x0 convergen al subespacio propio correspondiente al valor propio de mayor m odulo j es aproximadamente la misma que 2 la velocidad de convergencia de la sucesi on oximo . Si el cociente |2 |{|1 | es pr 1 a 1 debemos esperar una convergencia lenta y cuanto m as peque no sea esta raz on, la convergencia ser a m as r apida. En cualquier caso se trata de una raz on de convergencia lineal porque depende del cociente |2 |{|1 | y no de su cuadrado, o su cubo, etc. Cuando se pretende calcular un u nico valor y vector propio, el m etodo de las potencia puede ser una primer algoritmo para conseguir en unas pocas iteraciones un vector y un valor propio aproximados que puedan servir como valores iniciales para otros m etodos que convergen m as r apidamente.

10.2.4.

Criterios de terminaci on del algoritmo

Recordemos que al escribir el algoritmo fuimos muy imprecisos sobre cuando deber a terminar. Dec amos que se ejecutar a un bucle para calcular los sucesivos vectores unitarios propios aproximados y los correspondientes valores propios aproximados hasta la convergencia(cuando la haya). Ahora vamos a ser m as precisos. Un posible criterio de nalizaci on del algoritmo podr a ser cuando la distancia entre dos subespacios pr oximos propios aproximados sea menor que una cantidad previamente especicada. Para ello bastar a almacenar los vectores propios aproximados calculados en dos pasos sucesivos, digamos qj y qj 1 , y calcular la distancia entre ellos utilizando la m etrica gap. Esto es sencillo porque sabemos que si Xj  qj y Xj 1  qj 1 entonces pXj , Xj 1 q  }PXj

PX }2
j 1

siendo PX la proyecci on ortogonal sobre X . Ahora bien como qj y qj 1 son unitarios PXj

 qj qj

y PX j 1

 qj1qj1.

As pues, s olo habr a que modicar el algoritmo para que se ejecutara el c alculo de qj hasta que }qj qj qj 1 qj 1 }2 fuera menor que una cantidad previamente especicada.

230

El problema de valores propios

Nosotros, sin embargo, utilizaremos otro criterio para terminar el algoritmo de las potencias y todos los que se derivan de el. Este criterio tiene su fundamento en el siguiente resultado: Proposici on 10.8 Sea A P Fnn , x P Cn un vector unitario y P C. Sea r Ax x. Existe una matriz E P Cnn tal que E F  }r}2 y pA E qx  x.

Podemos interpretar este resultado como una especie de estabilidad hacia atr as. En efecto, esta proposici on dice que los valores-vectores propios aproximados de A son valores-vectores propios exactos de matrices pr oximas a A. Demostraci on.- La matriz E que se necesita es de rango 1: E

 rx

Teniendo en cuenta que x es unitario tenemos que

porque r

 Ax x. Adem as 2 }E }2 F  trpEE q  trprx xr q  trprr q  }r }2 ,

pA E qx  Ax rxx  Ax r  x

que es lo que se quer a demostrar. Debe observarse que el error relativo de tomar A E por A es

}E }F  }r}2 }A}F }A}F

El c alculo del residuo r es muy f acil en el proceso que dene el algoritmo de las E }F potencias y consideraremos obtenida la convergencia cuando el error relativo } }A}F sea menor que una cantidad predeterminada. Es decir, cuando hayamos calculado r tan pr un valor-vector propio exactos de una matriz A oxima a A como necesitemos. Dado que puede no haber convergencia, habr a que tomar las precauciones necesarias por si el error relativo nunca alcanza a ser menor que la cantidad prejada. En conclusi on, jaremos un 0 y un n umero m aximo de iteraciones y el algoritmo terminar a cuando el error relativo sea menor que o cuando se sobrepase el n umero de iteraciones m aximo. Con todo esto en mente, la versi on nal del algoritmo de las potencias es la siguiente:

10.3 El m etodo de iteraci on inversa

231

M etodo de las Potencias (Versi on Final) Datos: A P Fnn , x0 P Fn , 0 e itermax Objetivo: calcular un par p, xq valor-vector propio aproximado de A. x x0 }x0}2 res=1 iter=0 normA=}A}F while res normA e iter itermax y  Ax (siguiente potencia)  x y (valor propio aproximado) res=}y x}2 (residuo) y (normalizaci on) x }y}2 iter=iter+1 end while

10.3.

El m etodo de iteraci on inversa

El objetivo del m etodo de iteraci on inversa es mejorar la velocidad de convergencia del m etodo de las potencias y posibilitar la obtenci on de un valor-vector propio que no se tenga que corresponder necesariamente con el valor propio dominante. Se parte de la siguiente observaci on: si 0 es un valor propio de A P Fnn y ppq  d d1 pd pd1 p1 p0 es un polinomio cualquiera entonces pp0q es un valor propio de la matriz ppAq  pd Ad pd1 Ad1 p1 A p0 In . En efecto, si v es un vector propio de A para 0 entonces Av Por lo tanto ppAqv

 0v y Aj v  j0v.

 pdAdv pd1Ad1v p1Av p0v  d1  pd d 0 v pd1 0 v p1 0 v p0 v   pp0qv. Es decir, v es tambi en vector propio de ppAq para pp0 q. Se prueba de forma similar que si ppAq es invertible entonces pp0 q1 es valor propio de ppAq1 y v es vector

232

El problema de valores propios

propio de esta matriz para dicho valor propio:

 pp0qv v  pp0qppAq1v pp0q1v  ppAq1v. En particular si R pAq entonces In A es invertible y 0 P pAq si y s olo si 1 P ppIn Aq1q. Por lo tanto, si 1,. . . ,n son los valores propios de A 0 entonces los valores propios de pIn Aq1 son
ppAqv 1 1  , . . . n
1

1 

El m etodo de iteraci on inversa es el m etodo de las potencias aplicado a la matriz pIn Aq1 para alg un n umero . A este n umero se le suele llamar desplazamiento o precondicionamiento y se suele usar para aumentar la velocidad de convergencia del m etodo de las potencias y para obtener un valor-propio particular de la matriz A cuando se tiene un cierto conocimiento de ellos. Veamos como se hace. Supongamos r0  i de A (por que por el medio que sea conocemos un valor propio aproximado ejemplo con una o dos cifras decimales de precisi on) pero i no tiene por qu e ser el r0 de modo que  i y es muy valor propio dominante de A. Tomamos  diferente de los dem as valores propios de A. Esto signica que

( signica mucho mayor) para todo valor propio j de A distinto de i . Si aplicamos el m etodo de las potencias a pIn Aq1 tenemos que si |2 | |3 | k 2 |n| entonces la velocidad de convergencia ser a del orden de , tanto 1 m as grande cuanto m as pr oximo est e a i . En estas condiciones el m etodo de 1 las potencias aplicado directamente a pIn Aq proporcionar a, supuesto que converja, un valor-vector propio de esta matriz; digamos, 1 y v1 . Pero, tal y como hemos visto m as arriba v1 ser a tambi en un vector propio de A para i y podemos Av1 . usar este vector propio para calcular directamente el valor propio de A: i  v1 En otras palabras, modicaremos el m etodo de las potencias para, haciendo uso de los vectores propios unitarios aproximados qj , obtener valores propios aproximados Aqj . de A en la forma qj Hay otra modicaci on en la implementaci on del m etodo de iteraci on inversa respecto del de las potencias. El primer paso en el algoritmo del m etodo de las potencias

| 1 | 

1 i

j 

1 j

10.3 El m etodo de iteraci on inversa

233

consiste en calcular qj 1  Aqj . Si lo aplicamos directamente a la matriz pIn Aq1 habr a que hacer qj 1  pIn Aq1 qj . En vez de calcular la inversa, lo que se hace es resolver el sistema pIn Aqqj1  qj . Ambas operaciones son te oricamente equivalentes pero la segunda requiere menos operaciones. De hecho, gen ericamente In A admite una descomposici on LU que conviene calcular de una vez por todas y usar s olo sustitusci on hacia delante y hacia atr as para resolver el sistema pIn Aqqj 1  qj . En nuestra implementaci on del algoritmo, y puesto que practicaremos con MATLAB, dejaremos que sea este quien se encargue de resolver este sistema. Para ello usaremos la orden qj 1  pIn Aqzqj . Se podr a argumentar que en cualquier caso la mariz In A est a tanto m as cerca de ser singular cuanto m as cerca de un valor propio exacto de A, y que esto hace que los errores de redondeo se magniquen tanto si se calcula la inversa como si se resuelve el sistema. En efecto es as y a pesar de todo, el algoritmo converge. Por qu e? La respuesta a esta cuesti on est a en el an alisis del error en el algoritmo que se emplee para resolver los sistemas linales. Si este algoritmo es estable hacia atr as (como por ejemplo lo es para casi todas las matrices el de la eliminaci on gaussiana), la soluci on calculada para el sistema (pIn Aqy  x es la soluci on exacta de alg un sistema pIn A E qy  x conde el error relativo }E }F {}A}F es del orden del epsilon de la m aquina. Si el valor-vector propio (exacto) que estamos buscando est a bien condicionado, ser a muy parecido al de pIn A E q y la sucesi on de valores-vectors propios calculados seguir a convergiendo hacia una valor-vector propio de In A. Dicho de otra manera m as intuitiva, la mayor parte de las veces la propagaci on del error juega a nuestro favor porque cuando est a muy cerca de un valor propio de A, el vector y se calcula, en efecto, de manera inexacta pero, tal y como vimos en la demostraci on del Teorema 10.7, 2 n 1 v1 v2 pIn Aqk q0  p k k 1 q p 2q p nqk vn. Esto signica que cuanto m as pr oximo est e a 1 mayor ser a la componente de k pIn Aq q0 en la direcci on de v1 , de manera que los errores en el redondeo redundan en una potenciaci on de la direcci on en la que queremos que converjan los subespacios propios aproximados. De hecho, si y 1 son casi iguales, una sola iteraci on nos proporciona un vector que es ya casi un vector propio porque la proyecci on espectral

234

El problema de valores propios

de este sobre el subespacio v2 , . . . , vn proyecci on espectral sobre v1 .

es insignicante en comparaci on con la

En resumen, el algoritmo para el m etodo de iteraci on simult anea es el siguiente:

M etodo de Iteraci on Inversa (Primera Versi on) Datos: A P Fnn , x0 P Fn , , 0 e itermax Objetivo: calcular un par p, xq valor-vector propio aproximado de A. x x0 }x0}2 res=1 iter=0 normA=}A}F while res normA e iter itermax y  pIn Aqzx ( pA In qy  x) y x (vector propio unitario aproximado) }y } 2  x Ax (valor propio aproximado) res=}x Ax}2 (nuevo residuo) iter=iter+1 end while

Hay algunas mejoras que se pueden introducir en el algoritmo a n optimizar el n umero de operaciones evitando sucesivas multiplicaciones de A por x, que es la parte m as costosa. Concretamente, en la notaci on del algoritmo representamos con el mismo s mbolo x dos n umeros diferentes en las dos primeras l neas del bucle while. Vamos a mantener el s mbolo x para el primero; i.e. y
p su actualizaci y con x on:

 pIn Aq1x
p x

y }y}2 . .

De esta forma

pIn Aqy  x p pIn Aqx }y} }y}


2

10.4 El m etodo del cociente de Rayleigh

235

Pongamos w

 }yx}

. Entonces
p Ax px p pIn Aqx p x p pIn Aqx px p w. x

con Finalmente el residuo es r

 x p Ax p  pIn Aqx p x p  w x p.

Con todo esto en mente el algoritmo de iteraci on inversa queda como sigue:

M etodo de Iteraci on Inversa (Versi on Final) nn n Datos: A P F , x0 P F , , 0 e itermax Objetivo: calcular un par p, xq valor-vector propio aproximado de A. x x0 }x0}2 res=1 iter=0 normA=}A}F while res normA e iter y  pIn Aqzx x w }y}2 y x }y}2  x w  res=}w x}2 iter=iter+1 end while

itermax

10.4.

El m etodo del cociente de Rayleigh

El m etodo del cociente de Rayleigh es exactamente igual que el de iteraci on inversa pero con un desplazamiento que var a en cada iteraci on. La cuesti on es c omo elegir

236

El problema de valores propios

el desplazamiento para hacer que el residuo sea lo m as peque no posible en cada iteraci on? La respuesta es sencilla porque se trata de calcular la soluci on de un problema de m nimos cuadrados lineal. Recordemos que el residuo es r

 }x Ax}

donde y x son el valor y vector unitario propios aproximados que se calculan en cada iteraci on. Puesto que es un valor propio aproximado (que est a variando en cada iteraci on) bien podemos hacer uso de el en cada iteraci on. La pregunta es cu al es el valor de que hace m nimo el residuo? Nos preguntamos por el problema de hallar m n }x Ax}2 Debe observarse que en este problema la matriz de coecientes es x (n 1) y el vector de t erminos independientes es Ax (tambi en n 1). Recordemos que una forma resolver el problema de m nimos cuadrados m nyPFn }By c}2 con B P Fmn y c P Fm1 es resolviendo el sistema de ecuaciones normales: B By0  B c. En nuestro caso el sistema de ecuaciones normales es x x0 Por lo tanto 0 es el n umero que minimiza el residuo. Denici on 10.9 Para A n umero
F

 xAx

Ax  xx x

P Fnn se llama cociente de Rayleigh de A en x P Fn al


Rpxq  x Ax x x

As pues, lo que hemos demostrado m as arriba es Teorema 10.10 Si A P Fnn y x P Fn entonces el cociente de Rayleigh de A en x es el n umero donde se alcanza el m nimo del residuo }x Ax}2 . Es decir m n }x Ax}2
F

 }Rpxqx Ax}2.

10.4 El m etodo del cociente de Rayleigh

237

En la pr actica, el algoritmo del cociente de Rayleigh consiste en sustituir por en el algoritmo de iteraci on inversa iniciando el primer desplazamiento con el cociente de Rayleigh de la matriz dada en el vector inicial elegido. N otese que puesto que los vectores propios aproximados son unitarios, el denominador en el cociente de Rayleigh es siempre 1.

M etodo del cociente de Rayleigh Datos: A P Fnn , x0 P Fn , 0 e itermax Objetivo: calcular un par p, xq valor-vector propio aproximado de A. x x0 }x0}2  x Ax res=1 iter=0 normA=}A}F while res normA e iter y  pIn Aqzx x w }y}2 y x }y}2  x w  res=}w x}2 iter=iter+1 end while

itermax

Aunque en esta forma de implementar el algoritmo no lo parezca, resulta que  Rpxq en cada iteraci on. Para verlo basta deshacer los cambios que hicimos en el algoritmo de iteraci on inversa. En efecto, al igual que en aquel caso denotamos con p los valores actualizados y con x y los que entran en la iteraci py x on. Debemos p p ver que  Rpx pq  x p Ax p. Para ello, en la iteraci on  . Entonces
p

x y pIn Aqy  }y   y }2 }y }2 yy y y Ay p Ax p.  y yy  x yy

x p w

238

El problema de valores propios

En los ejercicios veremos que, en general, la convergencia del m etodo del cociente de Rayleigh sigue siendo lineal, pero si la matriz es sim etrica es, al menos, cuadr atica. Ello es debido al siguiente resultado, que se conoce con el nombre de propiedad estacionaria de los vectores propios de las matrices sim etricas. Teorema 10.11 Sea A P Rnn una matriz sim etrica. Entonces p0 , x0 q es un valorvector propio de A si y s olo si x0 es un punto estacionario o cr tico de Rpxq y Rpx0 q  0 . Esto es, Rpx0 q  0 y Rpx0 q  0 donde Rpxq es el gradiente de Rpxq.

Demostraci on: Debemos demostrar que p0 , x0 q es un valor-vector propio de A si xT Ax B R p x0 q  0, i  1, . . . , n y Rpx0 q  0 . En el caso real Rpxq  T . y s olo si B xi x x Bp xT Axq T Calculamos primero Bxi y luego haremos lo mismo con x x. En primer lugar x Ax 
T n j,k 1

ajk xj xk ,

n n BpxT Axq  aik xk aji xj . B xi j 1 k1 Como A es sim etrica, aji  aij y entonces n BpxT Axq  2 aij xj  2pAxqi B xi j 1

as que

siendo pAxqi la i- esima componente del vector Ax. De la misma forma xT x 


n j 1

x2 j y

BpxT xq  2x . i B xi

10.5 El algoritmo QR con desplazamiento expl cito

239

Por lo tanto

BR  2pxT xqpAxqi 2pxT Axqxi  2 pAxq xT Ax x


 i i B xi pxT xq2 xT x xT x 2 2 pp Axqi Rpxqxi q  T pAx Rpxqxqi  xT x x x

donde pAx Rpxqxqi q es la i- esima componente del vector Ax Rpxqx. Ahora es claro que Rpx0 q  0 y Rpx0 q  0 si y s olo si Ax0 0 x0  0; i.e., p0 , x0 q es un valor-vector propio de A. Tal y como hab amos anunciado una consecuencia interesante de este Teorema es Corolario 10.12 Si para una matriz sim etrica A y un vector q0 el algoritmo del cociente de Rayleigh converge, lo hace, a partir de un cierto momento, cuadr aticamente. Demostraci on: Ya sabemos que si el algoritmo del cociente de Rayleigh converge, lo hace a un valor-vector unitario propios, p0 , x0 q, de A. Es decir, el algoritmo produce una secuencia pk , k qk q de valores-vectores propios aproximados de A que converge a p0 , x0 q. Pero k  Rpk qk q y desarrolando Rpxq en serie de Taylor alrededor de x0 tenemos que Rpxq Rpx0 q  Rpx0 qpx x0 q Op}x x0 }2 q  Op}x x0 }2 q por ser x0 un vector propio de A. Esto implica que para k sucientemente grande Rpk qk q Rpx0 q  Op}qk x0 }2 q. Como qk converge a x0 linealmente (al menos), el residuo converge a cero, a partir de ese k sucientemente grande, cuadr aticamente (al menos).

10.5.

El algoritmo QR con desplazamiento expl cito

Todos los algoritmos tienen como objetivo u ltimo reducir una matriz dada A P Fnn , a una forma de Schur (real o compleja) para extraer de ah la informaci on correspondiente a los valores y vectores propios. La nalidad de los que hemos visto

240

El problema de valores propios

hasta ahora era obtener un vector propio unitario (siempre que se den las condiciones apropiadas) y a partir de ah , usando el cociente de Rayleigh, el correspondiente valor propio. Este es el primer paso para obtener la forma de Schur compleja porque, tal y como mostramos en la demostraci on del Teorema de Schur, una vez  obtenidos,  r digamos p1 , q1 q, se puede construir una matriz unitaria, digamos Q  q Q , para la que   1 b Q AQ  . 0 B A continuaci on se aplica el algoritmo correspondiente a B y as sucesivamente. Este proceso de ir aplicando el algoritmo a matrices cada vez m as peque nas se llama deaci on. Si se dan las condiciones apropiadas (valores propios con m odulos diferentes y proyecci on espectral no nula sobre los correspondientes subespacios propios) el resultado de este proceso de deaci on es una matriz triangular superior unitariamente semejante a A; i.e., una forma de Schur de A. El algoritmo QR comparte el mismo objetivo: reducir A a una forma de Schur. La forma en que este proceso se lleva a cabo, sin embargo, parece no tener nada que ver con los algoritmos que hemos visto hasta ahora. Esta es la primera versi on del algoritmo QR con desplazamiento expl cito:

Dada A P Fnn A0  A for k  0, 1, 2, . . . hasta convergencia El jase un desplazamiento k Calc ulese la descomposici on QR de Ak k In : Ak k In Revi ertanse los factortes: Ak1  Rk Qk k In end for

 Qk Rk

En resumen, el algoritmo construye una sucesi on de matrices tAk u a partir de una dada A  A0 calculando la factorizaci on QR de Ak k In (para un k que se elige expl tamente en cada paso) y deniendo la siguiente matriz de la sucesi on, Ak1 , multiplicando los factores Q y R al rev es y a nadi endo el desplazamiento. Por qu e hacer tal cosa produce algo signicativo en relaci on con el c alculo de los valores y vectores propios de A? La historia empieza con John Francis y Eva Kublanovskaya que lo desarrollaron independientemente hacia 1959 en Inglaterra y la extinta Uni on Sovi etica. Se tard o muchos a nos, sin embargo, en comprenderlo bien. La raz on de por

10.5 El algoritmo QR con desplazamiento expl cito

241

qu e este algoritmo calcula valores y vectores propios de A es, esencialmente, porque es una forma elegante de implementar el algoritmo del cociente de Rayleigh y, cuando se toma desplazamiento k  0 (algoritmo QR a secas, sin desplazamiento), entonces calcula las mismas matrices que el algoritmo de iteraci on simult anea (u ortogonal) que es una generalizaci on del algoritmo de las potencias. En este curso s olo veremos la relaci on entre el algoritmo QR con desplazamiento expl cito y el del cociente de Rayleigh. Pero antes de nada es importante observar que todas las matrices en la sucesi on tAk u que construye el algoritmo son unitariamente semejantes. Lema 10.13 Las matrices Ak que construye el algoritmo QR con desplazamiento expl cito son todas unitariamente semejantes. Demostraci on: Para un k  0, 1, 2, . . . arbitario, supongamos dada Ak y veamos que Ak1 es unitariamente semejante a Ak . Esto demuestra que todas las matrices de la sucesi on son unitariamente semejantes. Sea Ak k In  Qk Rk la factorizaci on QR de Ak k In . Ak1

 

Rk Qk k In  Q k pAk k In qQk k In Q A Q Q Q k k k k In  Qk Ak Qk , k k k

pRk  Q k pAk k In q

por lo que Ak1 y Ak son unitariamente semejantes. Este Lema tiene una consecuencia importante: Para cada k

 1, 2, . . . Ak  Q k1 Ak1 Qk1  Qk1 Qk2 Ak2 Qk2 Qk1   Qk1 Q0 A0 Q0 Qk1

Es decir, el algoritmo QR no s olo proporciona una sucesi on de matrices unitariamente semejantes a A sino que nos da tambi en la matriz unitaria que conecta A con cada una de las matrices de la sucesi on: es el producto de los factores Q en la factorizaci on QR de Ak k In . Si para alg un valor de k la matriz Ak es (casi) una forma de Schur de A tendremos adem as la matriz unitaria que convierte A en dicha (casi) forma de Schur.

10.5.1.

El algoritmo QR y el cociente de Rayleigh

Para ver que el algoritmo QR converge en las mismas condiciones que el algoritmo del cociente de Rayleigh vamos a ver que ambos son esencialmente lo mismo. En

242

El problema de valores propios

realidad el algoritmo QR aplica el m etodo del cociente de Rayleigh para calcular vectores propios por la izquierda en vez de hacerlo para calcular vectores propios por la derecha. C omo ser a el m etodo del cociente de Rayleigh en este caso? Igual que el ya visto pero operando con vectores las: Dada A, un vector la inicial x 0 el algoritmo del cociente de Rayleigh consta de 4 pasos para j  1, 2, . . .: 1. Elegir un desplazamiento j , que es el cociente de Rayleigh de la iteraci on anterior,

pA j In q  x , 2. Resolver el sistema yj j 1
3. Normalizar xj

 }yyj}

(vector propio aproximado por la izquierda), y

j 2

4. Calcular el nuevo cociente de Rayleigh j ximado)

 x j Axj (nuevo valor propio apro-

Cuando el algoritmo converge lo hace a un valor-vector propio unitario por  la iz p q quierda p, q q de A. Con este q podemos formar una matriz unitaria Q  Q de forma que (v ease la Secci on 9.4 del Cap tulo 9 sobre vectores propios por la izquierda)   B b Q AQ  0 Ahora proceder amos por deaci on aplicando el algoritmo por las a B y as sucesivamente. Supongamos ahora que hacemos una sola iteraci on del algoritmo del cociente de Rayleigh por las con vector inicial x0  en . El desplazamiento inicial ser a e n Aen

 .

Sea q el vector unitario que obtenemos al aplicar esta iteraci on (quitamos los sub ndices porque s olo hablamos de una iteraci on y por comodidad): q

A In q1  }eenppA I q1}
n n

(10.3)
2

Analicemos una iteraci on del algoritmo QR con el mismo desplazamiento Calculamos la descomposici on QR de A In : A In

 e n Aen .

 QR.

10.5 El algoritmo QR con desplazamiento expl cito

243

Entonces y

 RpA Inq1

r . Este vector es unitario Ahora bien, e ltima la de Q . Denot emosla por q n Q es la u y acabamos de ver que 1 r  rnn e q n pA In q .
De aqu deducimos (recordamos que los elementos diagonales de R son n umeros reales positivos) 1 rnn  }enpA Inq1}2 , y en consecuencia, comparando con (10.3) q  q. En palabras: la u ltima la de la matriz Q en la factorizaci on QR de A In con  e Ae coincide con el vector propio por la izquierda unitario aproximado, q , de n n A que calcula el m etodo del cociente de Rayleigh cuando se emplea e n como vector inicial en la primera iteraci on . Es decir,
r q Q Q  

e nQ

1  r e pA I q1 .  e nn n n n RpA In q

(10.4)

r  El valor propio aproximado que nos proporciona el cociente de Rayleigh ser a q Aq y el residuo (recordemos que estamos calculando vectores propios por la izquierr . Estos c da) r  q A q alculos concluyen la iteraci on del m etodo del cociente de Rayleigh.

Respecto al algoritmo QR con desplazamiento, la segunda y u ltima etapa consiste en calcular la siguiente matriz en la sucesi on revirtiendo los factores Q y R de la factorizaci on QR de A y sumando el desplazamiento:
p  RQ In A

 QpA InqQ In  QAQ.


r q A Q  

Escribiendo Q como en (10.4)


p A  r Q 

r AQ r Q r Aq Q r q Aq q AQ

244

El problema de valores propios

r y q A  r q r . Por ello, teniendo en cuenta que q es Ahora bien, q Aq  r, ortogonal a todas las columnas de Q r Q r  r Q r q r  r Q r q AQ

r es la soluci el Teorema 10.10. De acuerdo con este Teorema, on del problema de m nimos cuadrados consistente en calcular el n umero complejo, , que hace m nima la distancia q q A. Es decir, r q A}2  m }r}2  }q n }q q A}2 . P C

r }2  }r Q r }2  r Q rQ r r. }qAQ (10.5) 2 2 r }2  }r }2 . Para ello debemos recordar Nuestro objetivo es demostrar que }q AQ

r q A P pIm q qK o equivalentemente q r  0. Es caso, debe suceder que r  q r . Con esto en mente, podemos demostrar que }q AQ r }2  }r }2 . En decir, r P Im Q efecto, por (10.5) r }2  r Q rQ r r, }qAQ 2 rQ r es la proyecci r y r P Im Q r ; por lo tanto Q rQ r r pero Q on ortogonal sobre Im Q r }2  r r  }r }2 tal y como dese abamos demostrar. En denitiva y }q AQ 2 2 p A  r AQ r Q r Aq Q r r q AQ 

Recordemos tambi en (Teorema 8.3 del Cap tulo 7) que para el problema de m nimos K cuadrados m n } By c } , y es una soluci o n si y s o lo si By c P p Im B q . En nuestro 2 0 n
y C

r

r es el residuo del algoritmo del cociente r }2  }r }2 siendo r   q A q y }q AQ de Rayleigh aplicado por las a la matriz A con vector inicial e on n . En conclusi

Teorema 10.14 Para una matriz A P Fnn el algoritmo QR con desplazamiento expl to k  e on de matrices tAk uk0 tales que si pan Ak en produce  una sucesi  p kq p kq p kq p kq ra k  0, 1, 2, . . ., an  an1 ann1 ann es la u ltima la de Ak , Ak  Q es la u ltima la de Qk1 entonces pann , qn q es el valork1 Ak1 Qk1 y qn vector propio unitario por la izquierda aproximados que produce el algoritmo del cociente a Ak1 con vector inicial e as la norma del n . Adem   de Rayleigh aplicado p kq p kq vector an1 ann1 es igual a la norma del residuo producido por el algoritmo del cociente de Rayleigh.

pk1q

pkq pk1q

10.5 El algoritmo QR con desplazamiento expl cito

245

Este resultado nos indica que si el algoritmo del cociente de Rayleigh converge para cito el la matriz A con vector inicial e n entonces usando como desplazamiento expl elemento en la posici on pn, nq de la matriz obtenida en cada iteraci on, el algoritmo QR con estos desplazamientos produce una sucesi on de matrices que converge a una matriz con la forma


B c 0

siendo un valor propio de A. Adem as , el vector formado por los elementos diagonales de la u ltima la de la matriz producida en cada iteraci on tiene la misma norma que el residuo producido por el algoritmo del cociente de Rayleigh. Podemos usar como criterio para terminar el proceso iterativo que la norma de este vector sea menor que una cantidad previamente especicada. Una vez obtenido un vector sucientemente peque no sustituir amos los elementos no diagonales de la u ltima la por cero y proceder amos a deactar la matriz hasta obtener, si hay convergencia, una matriz en forma de Schur. El proceso, adem as, produce las matrices unitarias de paso. El algoritmo en cada etapa ser a el siguiente:

Una etapa del algoritmo QR Datos: A P Fnn , 0 e itermax Objetivo: Obtener una matriz T , semejante a A, cuyos elementos en la u ltima la sean todos cero excepto el de la diagonal, y la matriz unitaria de semejanza Q. normA=}A}F T  A, Q  In d  T pn, 1 : n 1q, iter=0 while }d}2 normA e iter itermax s  T pn, nq (desplazamiento) T sIn  Q1 R1 (factorizaci on QR de T sIn ) T  R1 Q1 sIn (revertimos los factores) d  T pn, 1 : n 1q (nuevos elementos no diagonales) Q  QQ1 (actualizamos la matriz unitaria de paso) iter=iter+1 end while

246

El problema de valores propios

if iteritermax T pn, 1 : n 1q  0 end if

(para que quede bonito)

10.5.2.

An alisis de la velocidad de convergencia del algoritmo QR

Para analizar la velocidad de convergencia del algoritmo QR vamos a determinar pk1q pk q una cota de }an }2 en t erminos de }an }2 . Para no arrastrar los sub ndices todo p el rato, vamos a poner A  Ak y A  Ak1 . La notaci on ser a similar al referirnos a los diversos elementos y matrices relacionados con Ak y Ak1 . As , pondremos p A In  QR y A In  RQ. Consideremos A, Q y R particionadas como sigue: A In Entonces


B In1 h g


P f e




S r 0

 QR.


(10.6)

p In A

p p In1 B h p p g

S r 0



P f . e

(10.7)

p en funci El objetivo es acotar g on de g .

En primer lugar, como Q es unitaria, la norma de cada una de sus las y columnas 2 2 2 es 1. En particular, }e}2 2 | |  }f }2 | | , de donde concluimos que

}e}2  }f }2.
Por otra parte, en (10.6)

 eS. Suponiendo que S es no singular y  }S 1 }2 , tenemos que }e}2 }g}2.


Ahora como Q es unitaria, despejando R en (10.6) obtenemos


S r 0

P e f



B In1 h . g

10.5 El algoritmo QR con desplazamiento expl cito

247

De aqu sacamos que  f h p q. Como | | 1, }e}2 y, por la desigualdad de Cauchy-Schwarz, |f h| }f }2 }h}2 :

 }f }2, }e}2 }g}2

|| }g}2}h}2 | |. p  e . Poniendo todo junto y teniendo en cuenta, Finalmente de (10.7) obtenemos g otra vez, que }e}2 }g }2 conclu mos p}2 2 }h}2 }g }2 }g 2 | |}g }2 ,
o, con los sub ndices restaurados,
2 }gk1}2 k }hk }2}gk }2 2 k |k k |}gk }2 .

Notemos nalmente que para todo k  1, 2, . . . }hk }2 }A}2 . En efecto, todas las matrices Ak que se van construyendo mediante el algoritmo QR son unitariamente semejantes (Ak1  Q k Ak Qk ), de modo que }Ak }2  }A}2 . Pero
2 2 2 2 2 2 }hk }2 2 }hk }2 ||  }Ak en }2 }Ak }2 }en }2  }Ak }2 . En conclusi on, existe un n umero real 0 tal que }hk }2 para todo k  1, 2, . . .. 2 }gk1}2 k }gk }2 2 k |k k |}gk }2 .

Entonces

(10.8)

Lo primero que sugiere esta expresi on es, tal y como ya hemos deducido al comparar los algoritmos QR y cociente de Rayleigh, que el desplazamiento apropiado en cada iteraci on es k  k porque esta elecci on proporciona una cota de gk1 en t erminos del cuadrado de }gk }2 . En tal caso, la cota queda
2 }gk1}2 k }gk }2 2 Vamos a suponer que existe un n umero real 0 tal que para todo k  1, 2, . . . 1 } . }Sk 2

Se puede demostrar que, de hecho, esta propiedad es verdadera para valores de gk sucientemente peque nos. En estas condiciones

}gk1}2 2}gk }2 2.

248

El problema de valores propios

1 } As pues, cuando el algoritmo QR converge a un valor propio simple y }Sk 2 para todo k , la norma de gk1 est a acotada por una cantidad que es proporcional al cuadrado de la norma de gk . Se dice que la sucesi on t}gk }2 u converge cuadr aticamente, al menos, a cero. 1 } se cumple para valores de g Tal y como ya hemos dicho la condici on }Sk 2 k sucientemente peque nos, as que no podemos decir que la convergencia es siempre cuadr atica. Al principio puede no serlo, pero llegar a un momento en el que lo ser a con seguridad. Se dice que la convergencia del algoritmo QR es localmente cuadr atica.
La convergencia cuadr atica es muy conveniente porque, una vez que empieza, es muy r apida. Para hacernos una idea, si 2  1 y }g0 }2  101 , entonces

}g1}2 102 }g2}2 104 }g3}2 108 }g4}2 1016

Cuatro iteraciones bastan para reducir el error por debajo de la unidad de redondeo para la doble precisi on. Si A fuera herm tica, entonces tambi en lo ser an cada una de las Ak (Recordemos que Ak  Qk1 Ak1 Qk1 ). En particular tendr amos que hk  gk , de modo que podemos reemplazar por }gk }2 y la acotaci on ser a

}gk1}2 2}gk }3 2.

Este tipo de convergencia se llama c ubica. Observaciones 10.15 El an alisis de la convergencia que hemos hecho es local; esto es, se supone que gk es sucientemente peque no (o, equivalentemente, k sucientemente pr oximo a un valor propio). No hay teoremas para la convergencia global del algoritmo QR aplicables a cualquier matriz. El comportamiento t pico del algoritmo parece ser el siguiente: se consumen unas cuantas iteraciones en las que la convergencia puede ser muy lenta o parecer, incluso, que no hay convergencia y en un momento dado emp` eza la convergencia de manera muy r apida. Para el c alculo de los siguientes valores propios se necesitan cada vez menos iteraciones. La raz on de esta u ltima caracter stica del comportamiento del algoritmo QR se puede explicar, al menos parcialmente, por la relaci on entre este algoritmo y el del m etodo de iteraci on ortogonal o simult anea que no abordaremos en este curso.

10.6 Consideraciones nales

249

10.6.

Consideraciones nales

Hay muchas m as cosas que decir sobre el algoritmo QR. En particular, su relaci on con el algoritmo de iteraci on simult anea, que es una generalizaci on del m etodo de las potencias, es muy importante porque sirve para establecer condiciones sucientes de convergencia. Otro aspecto importante es la relaci on entre el algoritmo QR y la reducci on a forma Hessenberg y, en general, la implementaci on pr actica del algoritmo QR (algoritmo QR con desplazamiento impl cito). Tambi en es importante la elecci on de los desplazamientos y la reducci on a forma de Schur real cuando la matriz es real. Gen ericamente las matrices complejas tienen valores propios distintos en m odulo, pero esto no es verdad para las matrices reales en las que cuando aparecen valores propios complejos estos vienen conjugados a pares. Es por eso que la reducci on a forma de Schur real es tan importante para estas matrices. De vez en cuando surgen tipos de matrices para las que el algoritmo QR con los desplazamientos conocidos no converge. Lo habitual en tales casos es a nadir nuevos desplazamientos a la lista de los ya conocidos. Sin embargo, por ahora no hay un algoritmo universal eciente para todas las matrices. Finalmente, los algoritmos para el c alculo de los valores propios no terminan con el algoritmo QR aunque este sea el algoritmo de prop osito general que m as se utiliza. Para matrices con estructura existen algoritmos especiales. Por ejemplo, para matrices sim etricas o herm ticas que son unitariamente diagonalizables adem as del algoritmo QR existen otros que aprovechan la estructura de estas matrices. Otro caso es el de las matrices con muchos elementos iguales a cero (sparse matrices en ingl es). Los algoritmos para el c alculo de valores propios han sido y sigue siendo un campo de mucha actividad investigadora.

250

El problema de valores propios

Cap tulo 11

El problema sim etrico de valores propios

11.1.

Introducci on

El u nico algoritmo de prop osito general que se usa en la pr actica para calcular todos los valores propios y, opcionalmente, los vectores propios de matrices densas y no sim etricas es el algoritmo QR. Para matrices sim etricas (o herm ticas) hay una variedad de algoritmos que en algunos casos ofrecen mayor exibilidad y eciencia. Trataremos exclusivamente el caso real (sim etrico) y analizaremos cuatro de estos algoritmos. En esta introducci on comentaremos las propiedades del algoritmo QR cuando se aplica a matrices sim etricas. El m etodo de Jacobi se discutir a en los problemas y dedicaremos sendas secciones a los m etodos de bisecci on y divide y vencer as. Hay que decir, en primer lugar, que los algoritmos QR, divide y vencer as y el m etodo de bisecci on se aplican una vez se ha reducido la matriz sim etrica a forma Hessenberg; 251

252

El problema sim etrico de valores propios

el m etodo de Jacobi no. Debe notarse que si A P Rnn es sim etrica y Q P Rnn es ortogonal, entonces QT AQ tambi en es sim etrica. Por lo tanto, si H  QT AQ es una forma Hessenberg de A entonces H es tridiagonal. Esto signica que en el proceso de reducci on de A a forma Hessenberg, la estructura sim etrica de la matriz se mantiene y los ceros se van creando en posiciones sim etricas. En otras palabras, una vez hechos ceros por debajo de la posici on pk 1, k q: Rpk 1 : n, k q  Rpk 1 : n, k q 2uuT Rpk 1 : n, k q se puede poner Rpk, k 1 : nq  Rpk 1 : n, k qT

sin tener que operar por columnas. Ahora, las operaciones por columnas s olo habr a que hacerlas sobre la submatriz Rpk 1 : n, k 1 : nq: Rpk 1 : n, k 1 : nq  Rpk 1 : n, k 1 : nq 2Rpk 1 : n, k 1 : nquuT .
4 3 n3 en el caso general a  3 n en el Esto reduce el n umero de operaciones de  10 3 14 3 8 3 sim etrico , sin formar expl citamente la matriz Q. Y de  3 n a  3 n , formando expl citamente la matriz Q.

Una vez reducida la matriz sim etrica A a forma tridiagonal, el algoritmo QR encuentra todos los valores propios y, opcionalmente, todos los vectores propios de A. Si este algoritmo se implementa ecientemente es, en la actualidad, el m etodo pr actico m as r apido para calcular todos los valores propios de una matriz sim etrica, y una vez reducida esta a forma tridiagonal s olo necesita Opn2 q ops. Dado que la 4 3 umero de ops para calcular reducci on a forma tridiagonal requiere  3 n ops, el n los valores propios es insignicante para valores sucientemente grandes de n. Ahora bien, si se requieren tambi en los vectores propios, el algoritmo QR precisa del orden de 6n3 ops (en promedio). En tal caso, es el algoritmo m as r apido para matrices de tama no peque no, alrededor de n  25, y es el que corre por debajo del comando eig de MATLAB. Para matrices de tama nos mayores que 25 el algoritmo QR es superado por el algoritmo divide y vencer as que analizaremos m as adelante. Para concluir esta introducci on recordemos que las matrices herm ticas son unitariamente diagonalizables y sus valores propios son n umeros reales. Esto hace que los valores propios se comporten bien respecto a peque nas perturbaciones de la matriz (v ease el teorema de Bauer-Fike, Teorema 9.10 en la Lecci on 9). No estudiaremos aqu la teor a de perturbaci on de los valores propios de matrices herm ticas pero hacemos la observaci on de que los valores propios simples de las matrices herm ticas

11.2 El algoritmo divide y vencer as

253

est an bien condicionados. En efecto, si A es herm tica entonces A  A y si x es un vector propio por la derecha asociado al valor propio entonces x es vector propio por la izquierda asociado al mismo valor propio. Ello se deduce de que Ax  x x A  x A

 pAxq  pxq  x

porque P R. As pues el n umero de condici on (absoluto) de es (v ease la ??) 1 pq  x x 1  }x }2  1,


2

porque para calcular el n umero de condici on de se toman vectores propios unitarios.

11.2.

El algoritmo divide y vencer as

Este algoritmo se basa en el siguiente principio: el problema de calcular los valores propios de una matriz tridiagonal sim etrica, se puede subdividir en dos de tales problemas de la mitad de tama no; cada uno de estos, a su vez, en otros dos de la mitad de tama no; y as sucesivamente. Este algoritmo supone la mejora m as importante en el c alculo num erico de los valores propios desde la d ecada de 1960. Fu e presentado por Cuppen en 1981 y es un m etodo que duplica la velocidad del algoritmo QR si lo que se quiere es calcular tanto los valores como los vectores propios. Daremos s olo las ideas esenciales sin entrar en los detalles de implementaci on. Hay que decir, no obstante, que para implementar este algoritmo de manera eciente y estable, los detalles son importantes ya que no se consigue plena estabilidad a menos que se implemente de manera correcta. Esta cuesti on no fu e comprendida del todo hasta pasada una d ecada desde el descubrimiento de Cuppen. Sea T P Rnn , n 2, una matriz sim etrica, tridiagonal e irreducible en el sentido de que todos los elementos que est an en la super y subdiagonal son distintos de 0. En caso contrario, el problema se puede deactar y reducir a dos problemas de menor tama no.

254

El problema sim etrico de valores propios

Para cualquier k tal que 1 k


   b1             

n, podemos escribir T

de la siguiente forma:
              

a1

b1 ... ...

... ak1 bk1 bk1 ak bk b k ak 1 b k 1 .. . bk 1 .. .

.. ..

. bn1 bn1 an

  b1            

a1

b1 .. . ...

              

..

           

           

ak1 bk1 bk1 ak bk

ak 1 b k b k 1 ... bk 1 .. .

bk b k bk b k

... .. . bn1 bn1 an

    0   1 bk   0 1   0 . . .

0 .  . .

T1 0 0 T2

0 1 1 0

T1 0 0 T2

bk vvT .

0 Esta expresi on de T , T

T1 0 0 T2

bk vvT ,

(11.1)

nos indica que toda matriz tridiagonal se puede escribir como la suma de de una matriz diagonal por bloques, con dos bloques diagonales que son tridiagonales, y una correcci on de rango 1. El algoritmo divide y vencer as procede de la siguiente forma. Supongamos que para

11.2 El algoritmo divide y vencer as

255

cualquier divisi on de T de la forma (11.1), sabemos c omo calcular los valores propios de T a partir de los de T1 y T2 (este problema lo analizaremos m as abajo). Entonces: 1. Se divide la matriz T como en (11.1) con k aproximadamente.

 n{2; es decir, en dos mitades

2. Procedemos recursivamente de la misma forma, subdividiendo las matrices T1 y T2 en dos mitades cada una, las cuales son subdivididas a su vez en dos mitades y as sucesivamente. Para cada subdivisi on, se calculan los valores propios de la matriz subdividida a partir de los bloques diagonales de las subdivisiones y las correspondientes correcciones de rango 1. 3. Paramos cuando lleguemos a bloques diagonales de tama no 1 1 o cuando lleguemos a matrices de tama no sucientemente peque no como para que sea m as r apido o econ omico calcular los valores propios de los bloques diagonales mediante el algoritmo QR. LAPACK, librer a de programas de Algebra Lineal en la que se basan las funciones de MATLAB, utiliza n  25 como tama no m nimo para parar las subdivisiones y pasar a calcular los valores propios con el algoritmo QR sim etrico. De esta manera, el problema de calcular los valores propios de una matriz tridiagonal se reduce al de calcular los valores propios de una matriz 1 1 (o de tama no sucientemente peque no) m as una colecci on de matrices de rango 1. En este programa hay un problema que hemos mencionado y no hemos dicho como resolver: conocidos los valores propios de T1 y T2 c omo calculamos los valores propios de T ? Vamos a responder ahora a esta cuesti on crucial. Para ello supongamos que disponemos de la informaci on espectral de T1 y T2 ; es decir, de sus valores propios y de vectores propios ortonormales: T1

 Q1D1QT 1,


T2

 Q2D2QT 2,


siendo D1 y D2 diagonales y Q1 y Q2 matrices ortogonales (ser an unitarias en el caso complejo). Entonces T

 

T1 0 Q1 D1 QT 0 1 T bk vv T  T bk vv 0 T 0 Q D Q 2 2 2    
 T 2  Q1 0 D1 0 1 T bk uu Q 0 Q2 D2 0 QT 2

256

El problema sim etrico de valores propios

donde

u

bk uuT son ortogonalmente semejantes, hemos reducido D2 el problema al c alculo de los valores propios de una matriz diagonal m as una correcci on de rango 1. Pongamos bm  y D  DiagpD1 , D2 q (por simplicidad notacional) y calculemos los valores propios de S  D uuT . Para ello formamos su matriz caracter stica I S  I D uuT . Esta es una matriz polinomial en la indeterminada . Es decir, es una matriz cuyos elementos est an en Rrs, el anillo de los polinomios cuyos coecientes son n umeros reales y la indeterminada es . Tambi en es una matriz con elementos en el cuerpo de fracciones Rpq del anillo Rrs; esto es, el cuerpo de fracciones racionales: cocientes de polinomios de Rrs tales que los denominadores no son el polinomio 0. El determinante de I D uuT ser a un polinomio, y ser a el mismo polinomio tanto si lo calculamos en el cuerpo Rpq como si lo calculamos en el anillo Rrs. Ahora bien, hacer las operaciones en el cuerpo Rpq nos permite mayor exibilidad. Concretamente, la matriz I D tiene inversa en Rpq (pero no en Rrs) de modo que operando en Rpq podemos escribir:
Como T y S D1 detpI

0 QT 1 v 0 QT 2


q1k , q21

q1 k q21

u ltima columna de QT 1,  primera columna de QT 2.

D uuT q   

detppI DqpI pI Dq1 uuT qq  detpI Dq detpI pI Dq1 uuT q 


r i 1

p diq detpI pI Dq1uuT q.

(11.2)

donde estamos suponiendo que D

 Diagpd1, . . . , dr q es de tama no r r.

Pongamos w  pI Dq1 u y recordemos que en el Problema 4 de la Lecci on 7 se T T ped a demostrar que si A  I xy entonces detpAq  1 y x (all se demostr o para matrices de n umeros reales o complejos, pero la misma demostraci on sirve para matrices sobre cualquier cuerpo). Por lo tanto

pI Dq1uuT q  detpI wuT q  1 uT w  1 uT pI Dq1u. Ahora bien, suponiendo que D es de tama no r r:


detpI
  u pI Dq1 u  u1
T

  ur  

1 d1

1 d2

...
1 dr

   u1  .   .  . 

ur

i 1

 di

u2 i

11.2 El algoritmo divide y vencer as

257

por lo que detpI A la ecuaci on 1

pI Dq1uuT q  1
r

i 1

 di

u2 i

i 1

 di
r

u2 i

0
u2 i ,

se le llama ecuaci on secular de S . Denotando f pq : 1 conclu mos que, por (11.2), detpI

i 1

 di
r

Sq  

detpI
r i 1

D uuT q  p diqf pq 

p diq

i 1

 di

i 1 u2 i

(11.3) .

Las siguientes observaciones sobre esta identidad son importantes: Observaciones 11.1 que 1. La expresi on en (11.3) es, en efecto, un polinomio por
r

di i1 y as , detpI 2. Si uk
r

u2 i

r i 1

j i r

p dj q p dj q
u2 i,

j 1

Sq 

r i 1

i 1j i

 

 0 para alg un k entonces p dk q se puede sacar factor com un en 2 p dj qui , y por lo tanto  dk es una valor propio de S .

2 u2 k u k 1 dk

p di q

r i 1j i

 

p dj qu2 i

(11.4)

3. Del mismo modo, si hay dos elementos diagonales de D que se repiten, digamos dk  dk1 para alg un k , entonces f pq  1

i k,k 1

y, por (11.3),  dk ser a, de nuevo, un valor propio de S .

 di

u2 i

258

El problema sim etrico de valores propios

1 Figura 11.1: Gr aca de f pq  1 1

,8 ,6 0,4 ,5 0 0 0 1 2 3 ,5 5

4. Teniendo en cuenta (11.4) y que podemos escribir f pq  r


i 1

r i 1

p diq

p diq

r i 1j i

 

p dj qu2 i

conclu mos que los valores propios de S son los ceros (ra ces del numerador) de f pq. En la Figura 11.1 se muestra el aspecto (para n  5 y 0) de la gr aca de una funci on f pq asociada a una ecuaci on secular con valores concretos de ui y di . En ella se aprecian varias propiedades interesantes: 1. La recta y  1 es una as ntota horizontal y las rectas  di son as ntotas verticales. Estas son las ra ces del denominador de la funci on racional f pq y se les llama los polos de f pq. 2. Como f 1 pq  u2 i y hemos escogido 0, la funci on es decreciente 2 i1 p di q en todos los intervalos en los que est a denida.
r

3. Como consecuencia de lo anterior, los valores propios de S (que son, recordemos, los ceros de f pq ; i. e., los puntos en los que f pq corta el eje de abscisas) se entrelazan con los de D quedando el m as peque no de S a la izquierda del m as peque no de D. Esto es debido a que 0. Si fuera 0 entonces f pq

11.2 El algoritmo divide y vencer as

259

ser a creciente, y el mayor valor propio de S quedar a a la derecha del mayor valor de la diagonal de D. 4. En la gr aca de la Figura 11.1 todos los valores de di son diferentes. Si dos de ellos se repitieran, digamos dk  dk1 , entonces f pdk q  0 tal y como se ha puesto de maniesto en el item 2 de las Observaciones 11.1. En otras palabras, f colapsar a a un punto en dk . Dado que f pq es mon otona (creciente o decreciente) y derivable en cada intervalo pdi, di1q, se podr a, en principio, aplicar el m etodo de Newton para calcular la ra z

de f en ese intervalo (recordemos que s olo hay una). En la pr actica se usa una variante del m etodo de Newton que se adapta mejor a la gr aca de f pq en cada subintervalo, pero no vamos a entrar en los detalles. Lo que merece la pena destacar es que, en la pr actica, esta variante del m etodo de Newton converge en un n umero acotado de etapas por valor propio. Dado que evaluar f pq y f 1 pq cuesta Oprq ops, calcular un valor propio cuesta Oprq ops y, por lo tanto, encontrar los r valores propios de D uuT cuesta Opr2 q ops. Tambi en es f acil el c alculo de los vectores propios. En primer lugar, hemos visto en las Observaciones 11.1 que si uk  0 para alg un k , entonces dk es una valor propio de S  D uuT . Esto lo hicimos analizando la ecuaci on secular, pero tambi en se deduce directamente de la forma de la matriz S . En efecto, si uk  0, la k - esima T columna y la k - esima la de uu son nulas. Por ello, esta misma la y columna de dk I S son tambi en nulas. As pues, detpdk I S q  0, indicando que dk es un valor propio de S , y si ek es el k - esimo vector can onico, entonces pdk I S qek  0. Es decir, ek es un vector propio unitario asociado al valor propio dk . Cuando dk  dk1 sabemos tambi en que este n umero es valor propio de S . Sin entrar en detalles, se puede demostrar que existe una matriz ortogonal Q (en realidad una reexi on de Householder o una rotaci on de Givens en el plano ek , ek1 ) tal T que QDQ  D y la k 1- esima componente Qu es cero. Entonces si z  Qu, tenemos que QpD uuT qQT  D zz T son ortogonalmente semejantes, zk1  0 y ek1 es un vector propio de D zz T . Por lo tanto , QT ek1 es un vector propio de S asociado al valor propio dk1  dk . Se puede ver tambi en que formar el vector T Q ek1 tiene un coste de Op1q ops. En lo sucesivo podemos suponer (despu es de deactar la matriz S si fuera necesario) que todos los elementos diagonales de D son distintos dos a dos. En estas condiciones tenemos:

260

El problema sim etrico de valores propios

Proposici on 11.2 Si es un valor propio de D uuT , entonces pIr Dq1 u es un vector propio asociado a . Adem as calcular este vector propio cuesta Oprq ops. Demostraci on.- Calculemos pD uuT qpI

Dq1u: pD uuT qpI Dq1u  pI D I uuT qpI Dq1u   u pI Dq1u uruT pI Dq1us  pdado que 1 uT pD I q1u  f pq  0q  u pI Dq1u u   pI Dq1u. Puesto que Ir D es diagonal, para calcular pIr Dq1 u hay que hacer r restas,
r divisiones y r multiplicaciones. Su coste es 3r ops.

Evaluar la f ormula de esta Proposici on para los r valores propios de D uuT costar a 2 Opr q ops. Desafortunadamente, esta f ormula para el c alculo de los vectores propios no es estable porque para dos valores propios muy pr oximos una implementaci on directa de esta f ormula puede producir una p erdida de ortogonalidad de los vectores propios calculados num ericamente. Cost o m as de 10 a nos conseguir una alternativa num ericamente estable de este algoritmo. No discutiremos aqu los detalles. He aqu el algoritmo divide y vencer as para calcular los valores y vectores propios de una matriz tridiagonal sim etrica T . La entrada es la matriz T y la salida matrices D y Q tales que D es diagonal Q es (casi) ortogonal y QDQT (casi) la descomposici on espectral de T ; i.e. QT T Q es (casi) D. El algoritmo utiliza otra funci on que usando una variante del m etodo de Newton calcula los valores y vectores propios (ortogonales) de las sucesivas matrices D uuT . Hemos omitido los detalles que hacen este c alculo estable de modo que el algoritmo no es operativo. Lo presentamos como resumen de lo discutido hasta aqu . Hay otro aspecto importante que tampoco estudiaremos y que es fundamental para comprender la velocidad a la que este algoritmo converge: la deaci on. Ya hemos dicho que cuando uk  0 o dk  dk1 para alg un k , entonces dk es valor propio de D uuT y el correspondiente vector propio es f acilmente calculable y, por lo tanto, la matriz se puede deactar. En la pr actica la deaci on se realiza cuando uk es sucientemente peque no o cuando dk y dk1 son sucientemente parecidos. Este importante aspecto tampoco se hace expl cito en el algoritmo. De hecho se realiza dentro de la funci on diagupdate que no se hace expl cita. Para una exposici on m as detallada de los aspectos no cubiertos aqu pueden consultarse [5] o [23] y sus referencias.

11.2 El algoritmo divide y vencer as

261

El algoritmo se llama a s mismo (es recursivo) por lo que le daremos un nombre (DivVenc ) y usaremos el formato de MATLAB para la llamada: [D Q] = DivVenc(T). Emplearemos el mismo criterio con la funci on diagupdate.

Algoritmo Divide y Vencer as Nombre de la funci on: DivVenc etrica y tridiagonal y un tama no m nimo, tmin para calcular Datos: T P Rnn sim la descomposici on espectral de las matrices de menor tama no con el algoritmo QR. Objetivo: Obtener una matriz D, ortogonalmente semejante a A, y la matriz ortogonal de semejanza Q. n=tama no de T if n tmin Calcula D y Q con el algoritmo QR else s  tn{2u T1  T p1 : s, 1 : sq T1 ps, sq  T ps, sq T ps, s 1q [D1 , Q1 ]=DivVenc(T1 ) T2  T ps 1 : n, s 1 : nq T2 p1, 1q  T2 p1, 1q T ps, s 1q [D2 , Q2 ]=DivVenc(T2 ) D  DiagpD1 , D2 q T s1 q  ps,   
T Q1 p:, sq u ltima columna de QT 1 Recordemos que u  u primera columna de QT QT 2 2 p:, 1q p p rD, Qs diagupdatepD, , uq p p1 : s, :q Qp1 : s, :q  Q1 Q p ps 1 : n, :q Qps 1 : n, :q  Q2 Q end if Para evaluar el coste del algoritmo, analizamos el coste de cada nivel de recurrencia. Por conveniencia supondremos que el tama no de la matriz original T es n  2m . De este modo tendremos m niveles de recurrencia: T se divide en dos (21 bloques); cada bloque en otros dos (22 bloques); cada uno de ellos en otros dos (23 bloques), etc. En todos los niveles debemos resolver el mismo problema (calcular los valores y vectores

262

El problema sim etrico de valores propios

propios de la matriz correspondiente) pero con tama nos que van disminuyendo por mitades. As , en el primer nivel debemos resolver un problema con un coste, digamos n , C pnq. En el segundo, 2 problemas con un coste de C 2 cada uno. En el tercero, 4 con un coste cada uno de C n . Y as sucesivamente. En total: 4

 C pnq 21C p21nq 22C p22nq 2mC p2mnq. Basta, entonces, con determinar el valor de la funci on C pnq. El trabajo se realiza en
Ctotal las sentencias:
p Q p s diagupdatepD, , uq, rD, p p1 : s, :q, y Qp1 : s, :q  Q1 Q p ps 1 : n, :q Qps 1 : n, :q  Q2 Q

Ya hemos visto que la primera de ellas es de coste Opn2 q, mientras que cada multi3 n2 ops. Considerando las dos multiplicaciones plicaci on cuesta n 2 C pnq  n3 n2 Entonces Ctotal

 n3
3

ops.

 

n3 n3 n3 2 3 22 6 2 2 1 1 1 3 n 2 4 4 43

23 n  9 2
n3 4 3 1  n. 1{4 3

As pues, el coste total del c alculo de todos los valores propios y todos los vectores 4 3 propios de una matriz tridiagonal sim etrica T P Rnn es  3 n una gran mejora, si n es grande, respecto al algoritmo QR cuyo coste es (calculando los vectores propios)  6n3. Teniendo en cuenta que la reducci on a forma tridiagonal es  8 n3 , la mejora 3 3 3 es de  9n (para QR) a  4n (para divide y vencer as ); un poco menos de la mitad de operaciones.

11.3.

El m etodo de bisecci on

El m etodo de bisecci on es de gran importancia pr actica para el c alculo de algunos valores propios de una matriz sim etrica. Una vez que la matriz ha sido reducida

11.3 El m etodo de bisecci on

263

a forma tridiagonal, es el algoritmo que habitualmente se usa cuando no se desea calcular todos los valores propios sino s olo un subconjunto del total. Por ejemplo, mediante este m etodo se puede calcular el 10 % de los valores propios m as grandes o los 30 valores propios m as peque nos, o los valores propios que se encuentran en un determinado intervalo, etc. Una vez calculados los valores propios deseados, los correspondientes vectores propios pueden obtenerse aplicando una sola etapa del algoritmo de iteraci on inversa. El coste t pico de encontrar k valores propios, con la matriz en forma tridiagonal, es Opknq. El m etodo de bisecci on para calcular los valores propios es muy parecido al m etodo con el mismo nombre para encontrar los ceros de una funci on en un determinado intervalo. Recordemos que este m etodo consiste en lo siguiente: Dada una funci on real f pxq de variable real y un intervalo ra, bs en el que se sabe que f paq y f pbq tienen distinto signo, se trata de ir subdividiendo el intervalo en mitades y calculando los signos de f en los l mites de cada subintervalo. Se va llevando cuenta de los subintervalos en los que se mantienen los signos distintos, los cuales se vuelven a subdividir. Y as sucesivamente hasta que se alcanzan subintervalos arbitrariamente peque nos en los que la funci on cambia de signo en sus extremos y consecuentemente, en su interior hay al menos un cero de la funci on. Se podr a aplicar este m etodo al polinomio caracter stico detpIn T q de la matriz tridiagonal. Claro, este polinomio como tal no se deber a calcular expl citamente (eso ser a car simo desde el punto de vista computacional) sino que lo que se har a es calcular detpIn T q con igual a los extremos de los intervalos en los que se calcula el valor del polinomio. Es decir, si pT pq  detpIn T q y se quiere saber el valor de pT pq en  a, no se calcula pT pq y se sustituye  a en la expresi on obtenida sino que se calcula directamente detpaIn T q. Esto se puede hacer a partir de la factorizaci on LU con pivoteo parcial, 3 pero el coste de cada evaluaci on ser a de orden Opn q. Por lo tanto, no ser a efectivo. Lo que hace interesante y efectivo al m etodo de bisecci on son las propiedades que se esconden detr as de las matrices tridiagonales sim etricas (o herm ticas) y que no son inmediatamente obvias. Haremos aqu una descripci on del m etodo y sus fundamentos, pero no haremos completamente expl cito el pseudoc odigo del algoritmo. De hecho los algoritmos m as efectivos est an basados en la llamada ley de inercia de Sylvester, que supone una aproximaci on diferente a la que se adoptar a aqu . Supongamos que A P Rnn es una matriz sim etrica y sea B P Rpn1qpn1q la submatriz de A obtenida al suprimir una la y las misma columna. Entonces B sigue siendo sim etrica. Si 1 pAq n pAq y 1 pB q n1 pB q son los valores propios (recordemos que son n umeros reales) de A y B , estos n umeros cumplen la

264

El problema sim etrico de valores propios

siguiente propiedad (habitualmente asociada al nombre de Cauchy): 1 pAq 1 pB q 2 pAq 2 pB q 3 pAq n1 pAq n1 pB q n pAq (11.5) Es decir, los valores propios de A y de cualquiera de sus submatrices principales de un orden menos, se entrelazan. Una demostraci on de esta propiedad puede encontrarse por ejemplo en [12]. Ahora bien, si la matriz A es triangular irreducida (i.e., sus elementos en las sub y s uper diagonales son todos distintos de cero) entonces este entrelazamiento es estricto. Esta propiedad puede demostrarse de la siguiente manera. Sea


A

a1 b 1  b 1 a2 
   

b2 a3 .. . ... .. . bn1 bn1 an

b2

     

y denotemos con Ar  Ap1 : r, 1 : rq la submatriz de A formada por sus r primeras las y columnas, r  1, . . . , n. Sea pr pq  detpIr Ar q el polinomio caracter stico de Ar . Podemos expresar este polinomio en funci on de pr1 pq  detpIr1 Ar1 q y pr2 pq  detpIr2 Ar2 q. En efecto, desarrollando detpIr Ar q por su u ltima columna obtenemos: pr pq  p ar qpr1 pq b2 r1 pr2 pq. Y para que esta expresi on se pueda aplicar a r (11.6)

 1, 2, . . . , n, pondremos p0pq  1.

Ahora, Ar y Ar1 no pueden tener ning un valor propio en com un porque si tal cosa ocurriera y fuera tal valor propio, tendr amos que pr pq  pr1 pq  0. Dado que br2  0, se sigue de (11.6) que pr2 pq  0. Del mismo modo, como pr1 pq  pr2 pq  0 y br3  0, deducimos que pr3 pq  0. En denitiva, pr pq  pr1 pq   p1 pq  0. Pero p2 pq  p a2 qp1 pq b1 con b1  0, de modo que p1 pq y p2 pq no pueden tener una ra z com un. Hemos demostrado de hecho una propiedad m as fuerte:

11.3 El m etodo de bisecci on

265

Proposici on 11.3 Sean A1 , A2 ,. . . , An  A denidas como m as arriba a partir de pkq pkq una matriz A P Rnn que es sim etrica y tridiagonal irreducida. Sean 1 2 pkkq los valores propios de Ak , k  1, . . . , n. Entonces j

pk1q pkq pk1q , j j 1

 1, . . . , n,

 1, 2, . . . , k 1.

(11.7)

Una consecuencia inmediata de la esta Proposici on (11.3) es que todos los valores propios de Ak son distintos (propiedad que ya vimos en los ejercicios del Cap tulo 9). Esta propiedad de entrelazamiento estricto es la que hace posible calcular el n umero exacto de valores propios en un intervalo. En primer lugar, observemos que si alg un bi  0 entonces el problema puede ser deactado dividiendo el problema de calcular los valores propios de A en el mismo problema pero en dos submatrices de menor orden. Supondremos a partir de ahora que A es tridiagonal sim etrica e irreducida. Veamos en un ejemplo c omo se puede calcular el n umero de valores propios negativos a partir de (11.7). Consideremos la matriz 1 1 A  0 0


0 0 1 1 3 0 1

0 0  1 . 4 det A4

Los determinantes de las submatrices Ak son: det A1

 1,

det A2

 1,

det A3

 4,

 det A  17.

(11.8)

Recordemos ahora que el determinante de una matriz es el producto de sus valores propios. Por lo tanto, A1 no tiene valores propios negativos. Como det A2  1 p2q p1q p2q p1q p2q p2q y 1 1 2 y 1  1 deducimos que 1 1 y por lo tanto 2 0. Es decir, A2 tiene un valor propio negativo. Un razonamiento similar con A3 nos p2q p3q p3q p2q conduce a que 0 2 3 , y como det A3 0 y 1 1 1 debe ser p3q 2 0. Finalmente, el cambio de signo de det A3 a det A4 indica que A4 debe tener p4q p4q p3q p3q p4q p3q 2 valores propio negativos porque 1 1 2 2 0 y 0 3 4 . p4q Como det A4 0 necesariamente 3 0. En denitiva, los cambios de signo en la secuencia (11.9) nos indican el n umero de valores propios negativos que se van a nadiendo a las sucesivas submatrices. El n umero de cambios de signos en la secuencia completa nos da el n umero de valores propios negativos en la matriz A. Este es un resultado general:

266

El problema sim etrico de valores propios

Para cualquier matriz sim etrica tridiagonal irreducida A P Rnn , el n umero de valores propios negativos es igual al n umero de cambios de signo en la secuencia: 1, det A1 , det A2 , . . . , det An

 det A.

Puede suceder, por supuesto, que alguno de estos determinantes sea cero (incluyendo det A  0). En tal caso, se debe entender como cambio de signo cualquier transici on de o 0 a , o de o 0 a , pero no de o a 0. Si lo que se quiere es saber cu antos valores propios de A son menores que un n umero determinado, digamos a, basta calcular los valores propios negativos de la matriz B  A aIn . En efecto, por una parte 0 P pAq si y s olo si 0 a P pA aIn q y por otra, 0 a 0 si y s olo si 0 a. Finalmente, el n umero de valores propios de A en el intervalo ra, bq es el n umero de valores propios de A menores que b menos el n umero de valores propios de A menores que a. Esto nos conduce a la u ltima observaci on que completa la descripci on del algortimo de bisecci on: si calculamos el determinante detpAk Ik q desarroll ondolo por los los elementos de la u ltima columna obtenemos: detpAk Ik q  pak q detpAk1 Ik1 q b2 k1 detpAk2 Ik2 q. Si ponemos pk pq  detpAk Ik q (i.e., pk pq es el polinomio caracter stico de Ak pero con los signos de los coecientes cambiados) y convenimos que p1 pq  0 y p0 pq  1, entonces pk pq  pak qpk1 pq b2 k1 pk2 pq, k

 1, 2, . . . , n.

Como el n umero de valores propios de A menores que a es el n umero de cambios de signo en la secuencia 1, detpA1 aI1 q, detpA2 aI2 q, . . . , detpAn aIn q  detpA aIn q, el n umero de valores propios de A menores que a es tambi en el n umero de cambios de signo en la secuencia p0 paq, p1 paq, p2 paq, . . . , pn paq. (11.9)

Tal y como hemos convenido, se debe entender que si pk paq  0 entonces pk paq tiene el signo opuesto de pk1 paq.

11.3 El m etodo de bisecci on

267

Debe observarse que los polinomios pk pq no se forman nunca. Lo que se hace es evaluarlos en los puntos deseados y contar el n umero de cambios de signo sobre la marcha (multiplicando los valores consecutivos seg un se van obteniendo, por ejemplo). El coste de evaluar todos los polinomios es Opnq. Si llamamos contnegval(A,x,tol) al algoritmo que nos cuenta, mediante este procedimiento de conteo de cambios de signo, el n umero de valores propios menores que x, el siguiente algoritmo nos permitir a calcular los valores propios de A en el inetvalo ra, bq hasta una tolerancia, tol, dada. El algoritmo produce una lista, lista, de subintervalos rx, y q que contienen ny nx valores propios siendo nx el n umero de valores propios menores que x ( y lo mismo para ny ). Algoritmo de Bisecci on Nombre de la lista: lista Datos: T P Rnn sim etrica y tridiagonal, un intervalo ra, bq y una tolerancia tol. Objetivo: Obtener los valores propios de T en ra, bq con una tolerancia tol. na =contnegvalpT, aq nb =contnegvalpT, bq if na  nb Coloca ra, na , b, nb s en la lista while lista no vac a Quita rx, nx , y, ny s de la lista if y x tol print hay ny nx valores propios en rx, y q else z  px y q{2 nz contnegvalpT, z q if nz nx Coloca rx, nx , z, nz s en la lista end if if ny nz Coloca rz, nz , y, ny s en la lista end if end if end while else print No hay valores propios en ra, bq end if

268

El problema sim etrico de valores propios

La convergencia del algoritmo es lineal. Dado que, tal y como se ha dicho, el coste de cada evaluaci on en contnegval es Opnq, el coste total con tol= M es Opn logp M qq ops para encontrar un valor propio con una precisi on relativa de M . Si s olo se necesita un n umero peque no de valores propios, supone una buena mejora respecto a las Opn2 q ops que usa el algoritmo QR (todo ello supuesto que A ya est a en forma tridiagonal). En un ordenador con varios procesadores, se pueden calcular varios valores propios simult aneamente trabajando los procesadores en paralelo.

Cap tulo 12

M etodos Iterativos

12.1.

Introducci on

En este u ltimo Cap tulo dejamos el territorio cl asico y bien conocido de los m etodos directos para adentrarnos en el menos explorado pero de gran actualidad de los m etodos iterativos. Los algoritmos de Gauss (factorizaci on LU y sus derivados) o los de factorizaci on QR son m etodos directos en los que los algoritmos terminan despu es de un n umero nito de etapas. Los vistos hasta ahora para calcular valores propios se incluyen tambi en en esta categor a aunque para calcular valores y vectores propios de matrices tenemos que usar, necesariamente, algoritmos basados en la realizaci on de iteraciones. No obstante, como la experiencia nos muestra que estos algoritmos proporcionan (casi siempre) soluciones sucientemente aproximadas en un n umero nito de iteraciones, se les considera algoritmos directos. Los llamados m etodos iterativos proporcionan, por lo general, s olo parte de las soluciones despu es de un n umero de iteraciones que suele interrupir el propio usuario cuando considera que ha alcanzado los objetivos deseados. Se suelen aplicar a matrices de grandes dimensiones para las que o bien no se pueden aplicar los m etodos directos por su 269

270

M etodos Iterativos

alto coste, o bien porque s olo se precisa informaci on parcial de las soluciones. Estas matrices de grandes dimensiones suelen tener la propiedad de ser dispersas, t ermino que proviene de la traducci on del ingl es sparse matrices, y que se usa para referirse a matrices con una gran cantidad de elementos iguales a cero (lo opuesto a matriz dispersa es matriz densa). Estas matrices dispersas frecuentemente aparecen en la discretizaci on de ecuaciones diferenciales o integrales al usar modelos de elementos nitos o diferencias nitas. Por ejemplo, una discretizaci on de diferencias nitas de una ecuaci on en derivadas parciales puede traducirse en una matriz de dimensi on m  105 con s olo  10 elementos no nulos por la. Los algoritmos iterativos s olo requieren la capacidad de calcular Ax para cualquier x. Este producto, de realizarse todas las operaciones involucradas, tendr a un coste de 2 Opm q ops. Si la matriz es dispersa, puede lograrse en con un n umero mucho menor de operaciones; por ejemplo Opmq. M as a un, la forma de calcular este producto puede variar grandemente dependiendo del problema que se tenga entre manos. La suposici on es que se deja en manos del usuario la forma en que se realizan estas multiplicaciones matriz-vector, y el programador se centra en el dise no del algoritmo propiamente. Se usan m etodos iterativos tanto para calcular valores y vectores propios (Ax  x) como para resolver sistemas lineales (Ax  b). En el primer caso el objetivo suele ser conseguir un subconjunto de valores y vectores propios realizando un n umero limitado de iteraciones para obtener algunos valores propios de inter es con suciente aproximaci on. En la resoluci on de sistemas lineales, los m etodos iterativos se usan cuando m etodos como la eliminaci on gaussiana o la factorizaci on QR requieren demasiado tiempo o espacio. En contraste con los m etodos directos, los m etodos iterativos no produce, por lo general, la respuesta exacta (incluso en ausencia de errores de redondeo) despu es de un n umero nito de pasos, sino que en cada iteraci on disminuyen el error en una cierta proporci on. Las iteraciones se interrumpen cuando el error es menor que un umbral prejado por el usuario. El n umero de iteraciones para obtener ese umbral depende frecuentemente de las propiedades espectrales de la matriz A. Por ejemplo, el m etodo Gradiente Conjugado garantiza la soluci on de un sistema lineal con una matriz herm tica denida positiva r apidamente si los valores propios de A est an juntos unos de otros y alejados del cero. De forma similar, el m etodo de Lanczos garantiza el c alculo r apido de ciertos valores propios de una matriz herm tica si dichos valores est an bien separados del resto del espectro (y si el vector inicial que comienza la iteraci on es sucientemente gen erico). El objetivo general es desarrollar m etodos que decrezcan mucho el error en cada

12.2 El m etodo de Arnoldi

271

iteraci on y con la menor cantidad de trabajo posible en cada una de ellas. Estudiaremos aqu unos pocos m etodos y sin alcanzar profundidad. Nos centraremos en m etodos basados en la idea de proyectar un problema m-dimensional en un subespacio de Krylov de dimensi on mucho menor. Dada una matriz A P Fmm y un vector b P Fn1 , la secuencia de Krylov asociada es b, Ab, A2 b, A3 b,. . . (que en la forma producto matriz-vectro ser a: b, Ab, ApAbq, ApApAbqq,. . . ) . Los correspondientes subespacios de Krylov son los subespacios generados por este tipo de vectores. Por ejemplo, Kj pA, bq  b, Ab, A2 b, . . . , Aj 1 b .

es un subespacio de Krylov asociado a pA, bq de orden j . N otese que este subespacio puede tener dimensi on menor que j . Los m etodos que analizaremos en este cap tulo se resumen en la siguiente tabla: Ax  b A  A A  A CG GMRES Ax  x Lanczos Arnoldi

GC signica Conjugate Gradiente y GMRES Generalized Minimal Residual. En todos estos m etodos, el resultado de proyectar sobre los subespacios de Krylov es que el problema con la matriz original se reduce a una secuencia de problemas con matrices de dimensiones n  1, 2, 3, . . .. Cuando A es herm tica, las matrices reducidas son tridiagonales, mientras que en el caso no herm tico, tienen forma Hessenberg. As el m etodo de Arnoldi, por ejemplo, aproxima valores propios de matrices muy grandes calculando los valores propios de ciertas matrices Hessenberg de tama nos cada vez m as grandes. Este es el primer m etodo que estudiaremos.

12.2.

El m etodo de Arnoldi

En la Lecci on 10 vimos c omo reducir una matriz A P Fmm a forma Hessenberg superior por medio de reexiones de Householder. Hay otra forma de proceder. La idea que est a detr as es la siguiente. Para calcular la factorizaci on QR de una matriz

272

M etodos Iterativos

A vimos que hab a dos procedimientos bien distintos: realizar sobre las las de A transformaciones unitarias (reexiones de Householder o rotaciones de Givens) o bien emplear el m etodo de Gram-Schmidt que consiste en ir trabajando con las columnas de A para producir, columna a columna, una base ortonormal del espacio generado por las columnas de A. El proceso de reducci on de A a forma Hessenberg es el an alogo a la factorizaci on QR con reexiones de Householder, mientras que el m etodo de Arnoldi es el an alogo del proceso de Gram-Schmidt: se trata de ir produciendo, una a una, columnas ortonormales que permitan expresar la matriz A, respecto a las bases que estas columnas forman, en forma Hessenberg. La mec anica de este procedimiento se expone a continuaci on. Una reducci on completa de A a forma Hessenberg mediante semejanza unitaria se escribir a Q AQ  H , o equivalentemente, AQ  QH . Ahora bien, cuando A es muy grande (m enorme o innito) el c alculo de una reducci on completa es impensable. En lugar de ello, trabajaremos con n columnas (n m) de las matrices AQ y QH . r n la Sea Qn la submatriz m n de Q formada por sus n primeras columnas; y sea H submatriz de H formada por las n 1 primera ls y n primeras columnas. Es decir, h11 h12 h  21 h22  ... ... r Hn     0 hn,n1


h1n . . . hnn hn1,n

Qn

q1 q2

qn ,

   .  

(12.1)

Entonces, de AQ  QH obtenemos AQn . . . de H son cero. M as expl citamente:

r n porque las las n 1, n 2,  Qn1H

A q1 q 2

qn

q 1 q2

qn

h11 h12 h 21 h22   ... qn1 


 

... hn,n1

h1n . . . hnn hn1,n

      

(12.2)

O, equivalentemente,

 h1k q1 h2k q2 hkk qk hk1k qk1, k  1, 2, . . . , n. (12.3) En palabras, cada qk1 , k  1, . . . , n, satisface una recurrencia de k 1 sumandos
Aqk que involucran al propio vector y sus predecesores en la secuencia de Krylov.

12.2 El m etodo de Arnoldi

273

El m etodo de Arnoldi es una iteraci on de tipo Gram-Schmidt que implementa (12.3) a partir de un vector escogido por el usuario. El algoritmo es muy simple y se puede implementar en MATLAB con unas pocas l neas de c odigo:

Algoritmo de Arnoldi Dato: A P Fmm y un entero n, 0 n m Objetivo: Forma Hessenberg parcial, pn 1q n, de A y la correspondiente Q, m pn 1q. b  arbitario b q1  }b}2 for k  1 : n v  Aqk for j  1 : k v hjk  qj v  v hjk qj end for hk1k  }v }2 v q k 1  hk1k end for

Si analizamos de cerca este algoritmo observamos lo siguiente: comenzamos con un vector b (no nulo) pero escogido como uno quiera y lo normalizamos. Entonces b  q1 . A continuaci on, multiplicamos Aq1 de modo que b, Ab  q1 , Aq1 . En la siguiente etapa, el objetivo es encontrar q2 de modo que b, Ab  q1 , Aq1  q1 , q2 y tq1 , q2 u sea un sistema ortonormal de vectores; i.e., una base Aq1 y v  Aq1 h11 q1 . Se ortonormal de b, Ab . Para ello, se calcula h11  q1 v calcula entonces h21  }v }2 y q2  }v}2 que es un vector unitario y ortogonal a q1 porque

q q1 2
Adem as,

v q  1 pq pAq h q qq  1 pq Aq h q  0.  |v1} pq1 |v} 1 1 11 1 |v} 1 1 11


2 2 2

Aq1

 h11q1 v  h11q1 }v}2 }vv}  h11q1 h21q2,


2

274

M etodos Iterativos

lo que demuestra que q1 , Aq1  q1 , q2 salvo que h21  0; es decir, salvo que Aq1 P q1 o equivalentemente, Ab P b . En tal caso, el proceso de Arnoldi quedar a interrumpido. Esta situaci on no se ha contemplado en el algoritmo tal y como lo hemos expuesto dado que supondremos que b, Ab,. . . , An1 b son linealmente independientes. Una vez calculados q1 y q2 se procede a calcular q3 y hk2 , k forma: v

 1, 2, 3, de la misma

Aq2 v  Aq2 h12 q1 h22  q Aq2  Aq2 h12  q1 2 v v  Aq2 h12q1 h22q2 h32  }v}2 q3  }v} .
2

Y se prosigue as sucesivamente de modo que si para j  1, . . . , n, Kj pA, bq  j 1 b, Ab, . . . , A b es el subespacio de Krylov asociado a pA, bq de dimensi on k , entonces Kj pA, bq  b, Ab, . . . , Aj 1 b  q1 , q2 , . . . , qj , siendo tq1 , q2 , . . . , qn u una base ortonormal del subespacio Kn pA, bq.

La semejanza con el algoritmo cl asico de Gram-Schmidt es evidente. De hecho, en aritm etica exacta, el algoritmo de Arnoldi ser a equivalente a aplicar el proceso de Gram-Schmidt a la matriz de Krylov (para un n dado) Kn

b Ab A2 b

An1 b

para obtener Kn  Qn Rn . Esta matriz Qn ser a la misma que la producida por el m etodo de Arnoldi. La diferencia (muy importante) es que en el proceso de Arnoldi no se forman expl citamente ni la matriz Kn ni la matriz Rn . Hacerlo producir a un algoritmo inestable porque, como ya sabemos, las sucesivas potencias de b, Ab, A2 b, etc. se aproximan (salvo productos por constantes) a un vector propio de A. Es decir, a medida que n aumenta, las columnas de Kn tienden a estar cada vez m as juntas, a ser m as linealmente dependientes, haciendo de Kn para n grande, una matriz mal condicionada. En la Lecci on ?? que el algoritmo cl asico de GramSchmidt puede producir matrices Qn que est an muy lejos de ser ortogonales cuando se aplica a matrices mal condicionadas. Sin embargo, la idea de que los vectores b, Ab, A2 b, etc. converjan (de nuevo salvo producto por constantes) a un vector propio, nos indica que en Kn debe haber buena informaci on sobre los valores propios de A de mayor m odulo (recordemos que esto es lo que hace el m etodo de las potencias). De hecho, el m etodo de Arnoldi para

12.2 El m etodo de Arnoldi

275

calcular (algunos) valores propios de A procede de la siguiente manera: En cada paso n, o cada cierto n umero de pasos, se van calculando los valores propios de r n la u las sucesivas matrices Hessenberg Hn que se obtienen al quitar a H ltima la. Estos valores propios se calculan mediante m etodos est andar como el algoritmo QR, por ejemplo. Lo que sucede habitualmente es que con algunos de estos n umeros se pueden formar subsucesiones que convergen r apidamente; muy a menudo de forma lineal produciendo un nuevo d gito de exactitud en cada nueva etapa y lo hacen hacia los valores propios m as grandes en m odulo. Una pregunta perfectamente leg tima es qu e tienen que ver los l mites de estas sucesiones con los valores propios de A. En lo que sigue intentaremos explicarlo. Tal y como hemos dicho, una vez jado n m, el m etodo de Arnoldi calcula matrices Qn y Qn1 con columnas ortonormales, tales que AQn
r n como en (12.1) y Qn1 con H rn.  Qn1H  

Qn qn1 . Se sigue entonces que

Q n Qn1


In 0

es una matriz n pn 1q. Por lo tanto, si h11 h12 h  21 h22 Hn   ...  0


r tenemos que Q n Qn1 Hn

...

h1n

  , . . . 

hn,n1 hnn

rn,  Hn y por lo tanto, como AQn  Qn1H

Hn

 Q n AQn .

(12.4)

Cu al es el signicado de esta identidad? Desde luego no signica que A y Hn son semejantes (ni tan siquiera son del mismo tama no). Analizamos a continuaci on su sign1 nicado. Consideremos el subespacio de Krylov Kn pA, bq  b, Ab, . . . , A b  q1 , . . . , qn (para simplicar la notaci on lo denotaremos con Kn ). Si este subespacio es A-invariante; es decir, si para todo v P Kn sucede que Av P Kn , entonces, en particular Aqn P Kn y por (12.3) Aqn

 h1nq1 h2nq2 hnnqn hn1nqn1.

276

M etodos Iterativos

Como Aqn P q1 , . . . , qn , conclu mos que hn1n  0.  Por otra nadimos  parte, si a m m r columnas a Qn para formar una matriz unitaria Q  Qn Q P F , entonces Q AQ y A ser an unitariamente semejantes y tendr an los mismos valores propios. Pero Q AQ 
   r Q Q n n AQn Qn AQ r A  Q Q n r r AQn Q r AQ r Q Q   

r Hn Q n AQ . r AQ r 0 Q

(12.5)

r AQn  0 se debe a que todas las columnas de AQn est La identidad Q an en Kn r y las columnas de Q son ortogonales a las de Qn , que forman una base ortonormal de Kn . En este caso, el signicado exacto de la expresi on Hn  Q n AQn es que Hn es la matriz de la aplicaci on lineal determinada por A restringida a Kn en la base q1 , . . . , qn . Adem as, de (12.5) conclu mos que todos los valores propios de Hn son valores propios de A. Tal y como ya hemos mencionado, estos valores propios se calculan aplicando, por ejemplo, el algoritmo QR a la matriz Hn . C omo se calcular an vectores propios de A asociados a esos valores propios? Como, en este caso hh1n  0, tenemos que AQn  Qn Hn . Por lo tanto, si x0  0 es un vector propio de Hn asociado al valor proprio 0 , entonces

Hn x0

 0x0 AQnx0  QnHx0  Qn0x0  0Qnx0.

Es decir, Qn x0 es un vector propio de A asociado a 0 . En conclusi on, que Kn sea un subespacio A-invariante es muy deseable porque en tal caso es f acil obtener valores y vectores propios de A a partir de los de Hn (recordemos de nuevo que ser an los de mayores m odulos). Pero qu e pasa si no lo es? cu al es r el signicado de (12.4) en este caso? De (12.2) (AQn  Qn1 Hn ) obtenemos Qn Q n AQn
r  QnQ n Qn1 Hn  Qn Hn .

Esto signica que Hn es la matriz de la aplicaci on Qn Q n A en la base q1 , q2 , . . . , qn de Kn . Ahora bien, Qn Qn es la proyecci on ortogonal sobre Kn , de modo que Qn Q nA es la aplicaci on lineal obtenida al componer la restricci on de A a Kn seguida de la proyecci on ortogonal sobre este subespacio: Kn
A|Kn QQ Fm Kn

Este tipo de proyecciones aparecen en varios sitios de la matem atica aplicada y num erica. Son conocidos como procedimientos de Rayleigh-Ritz. No en vano, de

12.2 El m etodo de Arnoldi

277

(12.3) se deduce que los elementos diagonales de Hn son hii cocientes de Rayleigh de A respecto a cada qi .

 qiAqi; es decir, los

Debe notarse que cuando Kn es A-invariante entonces Ax P Kn para todo x P Kn , y as QQ Ax  Ax @x P Kn . Es decir, QQ A|Kn  A|Kn . Por otra parte, si Kn no es A-invariante entonces hn1n  0 y una simple cuenta nos permite escribir: (12.6) AQn  Qn Hn hn1n qn1 eT n. Los valores propios de Hn no son exactamente valores propios de A, pero si hn1n es peque no, todav a podemos esperar que si p, y q es un par valor-vector propio de Hn , entonces p, Qn y q sea un par valor-vector propio aproximado de A. Esta esperanza se basa en dos resultados de distinta naturaleza. El primero nos da una estimaci on del residuo }AQny Qny}2. Proposici on 12.1 Supongamos que se han realizado n iteraciones de  Arnoldisobre A con un vector inicial arbitrario b para generar matrices Qn1  Qn qn1 , con r n  Hn hn1n en1 eT . Sea p, y q un par valor-vector columnas ortonormales, y H n propio de Hn y pongamos w  Qn y . Entonces si yn es la n- esima componente de y , se tiene }Aw w}2  |hn1n| |yn|. Demostraci on.- Se trata de hacer unas cuentas muy simples teniendo en cuenta (12.6):

 AQny Qny  AQny QnHny  hn1nqn1eT n y  hn1n yn qn1 . Y como }qn1 }2  1 }Aw w}2  |hn1n| |yn|,
que es lo que se quer a demostrar. Esta Proposici on nos dice que si hn1n  0 o yn  0 entonces p, Qn y q es un par valor-vector propio de una matriz A E con }E }F  |hn1n | |yn | (Proposici on 10.8de la Lecci on 10). No obstante, a un cuando hn1n no sea peque no, el factor yn puede hacer que el residuo sea peque no. La experiencia pr actica muestra que esto sucede muy frecuentemente. A los n n umeros:

Aw w

tj u  t valores propios de Hnu

278

M etodos Iterativos

se les llama los valores propios estimados de Arnoldi y tambi en los valores de Ritz de A respecto de Kn .

12.2.1.

El m etodo de Arnoldi y la aproximaci on polinomial

El segundo resultado que nos permite esperar que los valores propios de Hn sean valores propios aproximados de algunos valores propios de A est a basado en la relaci on del m etodo de Arnoldi con la soluci on de un problema de aproximaci on polinomial. Supongamos, por el momento, que Kn  b, Ab, . . . , An1 b es A-invariante y dim Kn  n; i.e., los vectores b, Ab,. . . , An1 b son linealmente independientes. Como Kn es A-invariante y An1 b P Kn , se sigue que An b  ApAn1 bq P Kn . El rec proco tambi en es cierto: si An b P Kn entonces Kn es A-invariante. En efecto, x P Kn si y s olo si x  c1 b c2 Ab cn An1 b, de modo que Ax  c1 Ab c2 A2 b cn An b.

Por lo tanto, si An b P Kn entonces Ax P Kn . Ahora bien, An b P Kn si y s olo si

An b  x0 b x1 Ab xn1 An1 b. Si llamamos q pq al polinomio q pq  n xn1 n1 x1 x0 , tenemos q pAqb  An b xn1 An1 b X1 Ab x0 b  0. Resulta que, como veremos, las ra ces de q pq son valores propios de A. M as espec camente, q pq es el polinomio caracter stico de Hn . Para verlo recordemos que Hn es la matriz de la restricci on de A a Kn en la base de Kn denida por las columnas de Qn . Ahora bien, dado que estamos suponiendo que dim Kn  n, los vectores b, Ab,. . . , An1 b forman tambi en una base de Kn . C omo es la matriz de la restricci on de A a Kn en esta base? Para responder a esta pregunta basta saber cu al es la matriz B P Fnn para la que se cumple A b Ab


An1 b

b Ab

An1 b B.

12.2 El m etodo de Arnoldi

279

En otras palabras, las componentes de la j - esima columna de B son los coecientes de ApAj 1 bq en la base tb, Ab, . . . , An1 bu. Es decir, bj  ej 1 , j  1, 2, . . . , n 1 y como ApAn1 bq  An b  x0 b x1 Ab xn1 An1 b resulta que bn Por lo tanto




x0 x1

xn1 T .
0 x0
 

 1 . . .  0

0 ...

0 x1   . .. .. . . . . . . .  .  . . . 0 xn2 0 1 xn1

Es decir, B es una matriz compa nera del polinomio q pq  n xn1 n1 x1 x0 . Como B y Hn son semejantes (porque son dos matrices de la misma aplicaci on lineal en distintas bases), q pq es el polinomio caracter stico de Hn . Cuando Kn no es A-invariante, entonces An b R b, Ab, . . . , An1 b y no hay ning un polinomio q pq de grado n tal que q pAqb  0. Nos podemos entonces preguntar por el polinomio p de grado n que hace m nima la norma }ppAqb}2 . Si cuando Kn es A invariante las ra ces del polinomio que cumple q pAqb  0 nos da valores propios exactos de A, parece razonable pensar que cuando Kn no sea A-invariante, las ra ces del polinomio que minimiza }ppAqb}2 nos dar a informaci on sobre valores propios aproximados de A. Resulta que, al igual que cuando Kn es A-invariante, el polinomio de grado n que minimiza }ppAqb}2 es el polinomio caracter stico de Hn . Para verlo, enunciamos con claridad el problema y su soluci on. Recordemos que un polinomio m onico es un polinomio cuyo coeciente principal (el correspondiente al monomio de mayor grado) es 1.

280

M etodos Iterativos

Problema de aproximaci on polinomial Sea P n  tppq P Frs : ppq m onico y de grado nu. Encontrar el polinomio pn tal que }pnpAqb}2  m n }ppAqb}2. n
p P

P Pn

Teorema 12.2 Si dim Kn  n existe un u nico polinomio pn pq que soluciona el problema de aproximaci on polinomial; es decir, }pn pAqb}2  m n }ppAqb}2. Concren
p P

tamente, tal polinomio es el polinomio caracter stico de Hn .

Demostraci on.- El problema de aproximaci on polinomial es en realidad un problema de m nimos cuadrados. En efecto, si p P P n entonces ppAqb

  

1 An b y0 b y1 Ab yn b 1 An y0     y1   An b b Ab An1 b  .   . . 

A b T y,
n

yn1

Veamos que este polinomio es el polinomio caracter stico de Hn .


y F

 b Ab An1b , y  y0 y1 yn1 T . r}2  m En consecuencia }pn pAqb}2  m n }ppAqb}2 si y s olo si }An b T y n }An b pPP y PF T y }2 donde pn pAqb  An bT y r. Es decir, pn pq  n y rn1 n1 y r1 y r0 . Ahora bien, dado que dim Kn  n tenemos que rank T  n y por lo tanto la soluci on del n problema de m nimos cuadrados m n }A b T y }2 tiene soluci on u nica (Teorema 8.3 y PF de la Lecci on 8). As pues, hay un u nico pn P P n tal que }pn pAqb}2  m n }ppAqb}2 . pPP
T
n n 1 n 1 n

donde

r la u Denotemos con y nica soluci on del problema m n }An b T y }2 . Por el Teorema n1

8.3 de la Lecci on 8, y r es la soluci on del problema m n }An b T y }2 si y s olo si n 1


r P pIm T qK A b Ty
n y PF K  Kn . Como las columnas de Qn forman una base ortonormal

12.2 El m etodo de Arnoldi

281

de Kn tenemos que

K r P Kn An b T y

n n r. rq  0 Q Q n pA b T y n A b  Qn T y

(12.7)

Por otra parte, Hn  Q on lineal Qn Q n AQn es la matriz de la aplicaci n A|Kn cuando en Kn se toma como base las columnas ortonormales de la matriz Qn . Recordemos que Qn Q n A|Kn : Kn Kn es la restricci on de A a Kn seguida de la proyecci on ortogonal sobre este subespacio. Si ahora tomamos como base de Kn las columnas de la matriz T , la matriz de a la matriz B que verica Qn Q n A|Kn en esta nueva base ser Qn Q n AT Pero Qn Q n AT

 T B.
An1 b An b


Como Ab, A2 b,. . . An1 b son vectores de Kn tenemos que


j j Qn Q n A b  A b,

 QnQ n

Ab A2 b

 1, . . . , n 1,

y por (12.7)
r P Kn . As porque T y pues

n r  Ty r Qn Q n A b  Qn Qn T y

Qn Q n AT

 

Ab A2 b

b Ab

An1 b An b 0  . 1 . .  . . . .. An1 b  .
 0

T

r e2 e3  en y 0 y r0 

r1  0 y  . .. . . . . . .  .  .. . 0 y rn2  rn1 1 y

rn1 n1 y r1 y r Es decir, B es una matriz compa nera del polinomio n y 0 y n n este polinomio es p pq. Como B y Hn son semejantes, conclu mos que p pq es el polinomio caracter stico de Hn , tal y como se deseaba demostrar.

Este resultado explica, al menos en parte, la convergencia de los valores propios de las sucesivas matrices Hn hacia valores propios de A (los de mayor m odulo como se

282

M etodos Iterativos

ha visto m as arriba) a medida que el n umero de iteraciones, n, aumenta. Si Kn es A-invariante para alg un n, entonces la correspondiente Hn tiene n valores propios que son valores propios exactos de A. Para este valor n resulta que el polinomio caracter stico de Hn cumple pn pAqb  0. Y si Kn no es A-invariante pn pAqb hace m nimo el valor }ppAqb}2 para todos los posible polinomios m onicos de grado n. No hay hay polinomio mejor que este (una vez jado b) para encontrar informaci on sobre valores propios aproximados de A. Las ra ces de este polinomio son los valores propios de Hn y, por consiguiente, los valores de Ritz de A. Debe notarse la dependencia respecto del vector b en todo el proceso. Este vector ha sido escogido arbitrariamente. Una buena estrategia para seleccionar b podr a producir que los valores de n para los que Kn es A-invariante fueran peque nos respecto de la tam no de la matriz A. O, jado un valor concreto de n, tal elecci on podr a hacer que el valor del m n }ppAqb}2 fuera tan peque no como se pudiera desear. n
p P

Este tipo de problemas es objeto de investigaci on en la actualidad.

12.3.

El m etodo de Lanczos

El m etodo de Lanczos es el de Arnoldi aplicado a matrices herm ticas. En este caso cada Hn es herm tica y Hessenberg; por lo tanto, tridiagonal. Si escribimos las ecuaciones correspondientes a (12.2) y (12.3) para el caso herm tico obtendr amos


A q1 q2

qn

q1 q2

q n q n 1 
  

 

1 1  1 2 2  2 3 .. .

. . . .. . n1

     (12.8) n1   
n

tres sumandos. Para conseguir el algoritmo de Lanczos basta hacer expl cito el bucle interno for j

 k1qi k qk k1iqk1, k  1, 2, . . . , n, (12.9) respectivamente. As los k 1 sumandos del m etodo de Arnoldi quedan reducidos a
Aqk

1:k v hjk  qj

12.3 El m etodo de Lanczos

283

v  v hjk qj end for del algoritmo de Arnoldi. Concretamente,

Algoritmo de Lanczos Dato: A P Fmm y un entero n, 0 n m Objetivo: Forma tridiagonal parcial, pn 1q n, de A y la correspondiente Q, m pn 1q.

0  0, q0  0 b  arbitario b q1  }b}2 for k  1 : n v  Aqk T v k  qk v  v k 1 q k 1 k q k k  }v }2 v qk1  k end for

Por lo dem as, todo lo dicho para el m etodo de Arnoldi es de aplicaci on para el de Lanczos.

284

M etodos Iterativos

Bibliograf a
[1] R. Bathia, Matrix analysis. Springer, New York, 1997. [2] S. L. Campbell, C. D. Meyer, Generalized Inverses of Linear Transformations. New York: Dover, 1991. [3] F. Chatelin: Eigenvalues of Matrices. Wiley, New York, 1995. [4] B. N. Datta, Numerical Linear Algebra and Applications. Brooks/Cole Publishing Company. Pacic Grove. 1995. [5] J. W. Demmel, Applied Numerical Linear Algebra. SIAM. Philadelhia, 1997. [6] F. R. Gantmacher, The Theory of Matrices. 2 vols. Chelsea, New York, 1959. Reeditado por AMS Chelsea Publishing, Providence, 1998. [7] C. F. Gauss, Theory of the Combination of Observations Least Subject to Errors. Part One, Part Two, Supplement. Society for Industrial and applied Mathematics, Philadelphia, PA, USA, 1995. Translated from the Latin originals (18211828) by G. W. Stewart. [8] C. Goldberg, What every computer scientist should know about oating-point arithmetic. ACM Computing Surveys, 23 (1), 548, 1991. [9] G. H. Golub, Ch. F. van Loan, Matrix Computations. SIAM, Philadelphia, 1996. [10] J. F. Grcar, How ordinary elimination became Gaussian elimination. Historia Mathematica, 38 (2), 163218, 2011. [11] N. J. Higham, Accuracy and Stability of Numerical Algorithms. SIAM, Philadelphia, 2002. 251

252

BIBLIOGRAF IA

[12] R. Horn, Ch. R. Johnson, Matrix Analysis. Cambridge University Press. New York, 1985. [13] R. Horn, Ch. R. Johnson, Topics in Matrix Analysis. Cambridge University Press. New York, 1991. [14] P. Lancaster, M. Tismenetsky, The Theory of Matrices. Academic Press, New York, 1985. [15] L. Lay-Yong, S. Kangshen, Methods of solving linear equations in traditional China. Historia Mathematica, 16 (2), 107122, 1989. [16] C. C. MacDuee, The Theory of Matrices. Chelsea, New York, 1946. [17] M. Marcus, Matrices and MATLAB: A Tutorial. Prentice-Hall. Englwood Clis, New Jersey. 1993. [18] B. D. McCulloough, H. D. Vinod. The numerical reliability of econometric software. Journal of Economic Literature, 37, 633665, 1999. [19] C. B. Moler, Numerical Computing with MATLAB. SIAM. Philadelphia, 2004. [20] G. W. Stewart, Gauss, statistics, and Gaussian elimination. J. Comput. Graph. Statist., 4 (1), 111, 1995. [21] G. W. Stewart, Afternotes on Numerical Analysis. SIAM. Philadelhia, 1996. [22] G. W. Stewart, Afternotes goes to Garduate School. Lectures on Advanced Numerical Analysis. SIAM. Philadelhia, 1998. [23] G. W. Stewart, Ji-guang Sun, Matrix Perturbation Theory. Academic Press, 1990. [24] LL. N. Trefethen, D. Bau, Numerical Linear Algebra. SIAM. Philadelhia, 1997. [25] R. Varga, Gerschgorin and his cicles. Springer, New York, 2004.

Anda mungkin juga menyukai