• No se han encontrado resultados

3.3. Número de condición de una matriz.

N/A
N/A
Protected

Academic year: 2021

Share "3.3. Número de condición de una matriz."

Copied!
5
0
0

Texto completo

(1)

3.3.

umero de condici´

on de una matriz.

Consideremos el sistema Ax = b, de soluci´on u. Queremos controlar qu´e cambios se producen en la soluci´on cuando hacemos peque˜nos cambios en las componentes de b o de A. Empecemos por tomar un cambio ∆b enb. Entonces la soluci´on cambiar´a a u+ ∆u, y se tiene

A(u+ ∆u) = b+ ∆b, A∆u= ∆b.

Por tanto, el cambio en la soluci´on se estima enA−1∆b. Si tomamos una norma vectorial y la norma matricial subordinada, entonces

k∆uk ≤°°A−1°°k∆bk.

Por otro lado, kbk ≤ kAk kuk, de donde 1 kuk

kAk

kbk. Medimos el error relativo, y obtenemos k∆uk kuk ≤ kAk ° °A−1°°k∆bk kbk .

As´ı, la variaci´on en el error relativo de la soluci´on est´a asociada a la cantidadkAk kA−1k. Definici´on 3.3.1. Seak·k una norma matricial subordinada yAuna matriz inversible. Entonces el n´umero

cond(A) =kAk°°A−1°°

se denomina n´umero de condici´on o condicionamiento de la matriz A respecto a k·k.

No hay problema en extender la definici´on a cualquier norma matricial. Consideremos ahora cambios en la matriz A.

Teorema 3.3.2. Sea k·knorma matricial subordinada, A matriz inversible yb 6=0. Si

Au=b,(A+ ∆A)(u+ ∆u) = b entonces k∆uk ku+ ∆uk cond(A) k∆Ak kAk . Demostraci´on. De Au=b llegamos a

(2)

Entonces

k∆uk ≤°°A−1°°k∆Ak ku+ ∆uk, k∆uk

ku+ ∆uk cond(A) k∆Ak

kAk .

Teorema 3.3.3. Sea k·k norma matricial subordinada,A matriz inversible y k∆Ak< 1/kA−1k. Si (A+ ∆A)(u+ ∆u) = b+ ∆b entonces k∆uk kuk cond(A) 1cond(A)k∆kAAkk µ k∆bk kbk + k∆Ak kAk. Demostraci´on. [BF98, p.468].

Proposici´on 3.3.4. Sea k·k norma matricial subordinada y A una matriz inversible. Entonces

1. cond(A)1.

2. cond(A) = cond(A−1).

3. cond(λA) = cond(A) para todo λ∈K− {0}. Demostraci´on. Como la norma es subordinada,

1 =kIk=°°AA−1°°≤ kAk°°A−1°°= cond(A). Por otro lado,

cond(A) =kAk°°A−1°°=°°A−1°°kAk= cond(A−1). Si λ es no nulo, entonces

cond(λA) = kλAk°°(λA)−1°°=|λ| kAk¯¯λ−1¯¯°°A−1°°= cond(A).

Proposici´on 3.3.5. Sea A una matriz inversible. Entonces

cond2(A) = s

λn(A∗A)

λ1(A∗A)

dondeλn(A∗A), λ1(A∗A)son,respectivamente, los autovalores mayor y menor de la

(3)

Demostraci´on. ComoAes regular, la matrizA∗Aes hermitiana y sus autovalores reales son todos positivos. Si w∈V, no nulo, entonces

wAAw=kAwk2 2 >0

porque A es inversible. Siλ es autovalor de A∗A, con v autovector asociado, entonces 0<vAAv=λkvk2

2 de donde λ >0. Sabemos que

kAk22 =ρ(A∗A) = λ n(A∗A) y ° °A−1°°2 2 =ρ((A −1)A−1) = ρ(A−1(A−1)) =ρ((AA)−1) = 1 λ1(A∗A) .

Lema 3.3.6. SeaAmatriz hermitiana no singular, con autovaloresλ1 ≤λ2 ≤. . .≤λn.

Entonces

cond2(A) = λn

λ1 .

Demostraci´on. Recordemos queρ(A−1) = 1

λ1. Entonces

cond2(A) =kAk2°°A−1°°2 =ρ(A)ρ(A−1) = λn λ1 .

Nota 3.3.7. Sea k·k norma matricial subordinada y A matriz hermitiana. Entonces

cond(A) = kAk°°A−1°°ρ(A)ρ(A−1) = cond 2(A).

Entonces, para matrices hermitianas, cond2 es el menor de todos.

Lema 3.3.8. Si U es unitaria y A es una matriz arbitraria, entonces cond2(A) = cond2(UA) = cond2(AU) = cond2(U∗AU), es decir, cond2 es invariante por

transfor-maciones unitarias, y cond2(U) = 1.

Demostraci´on.

Nota 3.3.9. 1. El n´umero de condici´on de una matriz es siempre un n´umero mayor que 1, por lo que el sistema Ax=b estar´a tanto mejor condicionado cuanto m´as pr´oximo a 1 est´e dicho cond(A).

2. Si A es una matriz unitaria, el sistema estar´a siempre bien condicionado respecto a cond2.

(4)

Ejemplo 3.3.10. Consideremos el sistema Ax=b con A =     10 7 8 7 7 5 6 5 8 6 10 9 7 5 9 10    ,b=     32 23 33 31    

y supongamos que tenemos una variaci´on en b dada por

∆b=     0,1 0,1 0,1 0,1    .

La soluci´on exacta del sistema es

u=     1 1 1 1    

mientras que la del sistema alterado Ax=b+ ∆b es

u+ ∆u=     9,2 12,6 4,5 1,1    .

Para la norma k·k2 calculamos los errores relativos y tenemos k∆uk2

kuk2 8,2,

k∆bk2

kbk2 0,003. Esto era de esperar porque cond2(A)2984,1.

Nota 3.3.11. El c´alculo del n´umero de condici´on a partir de la definici´on implica a la inversa de la matriz, por lo que no es un buen m´etodo. En la pr´actica, se suele calcular como subproducto del proceso de resoluci´on de un sistema. Tambi´en se suelen dar cotas a kA−1k

Nota 3.3.12. Una regla del pulgar”sobre la influencia del n´umero de condici´on sobre la validez de la soluci´on es la siguiente. Supongamos que se usa eliminaci´on gaussiana con pivoteo parcial sobre un sistema bien escalado Ax = b con aritm´etica de t-d´ıgitos en coma flotante. Supongamos tambi´en que no hay otras fuentes de error. Entonces, si cond(A) es del orden de 10p, la soluci´on calculada es precisa con tp d´ıgitos

sig-nificativos. En otras palabras, esperamos una p´erdida de unos p d´ıgitos. Por ejemplo, consideremos el siguiente sistema:

,835x +,667y =,168 ,333x +,266y =,067.

(5)

Entonces A−1 = µ 266000 667000 333000 835000 ¶ ,kAk1 = 1,168,kA−1k 1 = 1502000, cond1(A) = 17543361,7×106.

El valor de cond1(A) no es tan importante como su orden de magnitud. Lo anterior indica que el cambio relativo en la soluci´on puede ser del orden de un mill´on de veces el cambio relativo en A. As´ı, si usamos eliminaci´on gaussiana con 8 d´ıgitos para resolver el sistema, ´unicamente podemos esperar t−p = 86 = 2 d´ıgitos significativos. Esto no significa que podamos tener suerte y alcancemos mayor precisi´on.

Referencias

Documento similar