Está en la página 1de 26

Clase No.

10:

Cálculo del determinante de una matriz


Cálculo de la inversa de una matriz
Sistemas sobredeterminados y
subdeterminados
MAT–251 Dr. Alonso Ramírez Manzanares
Depto. de Matemáticas
Univ. de Guanajuato
e-mail: alram@ cimat.mx
web: http://www.cimat.mx/salram/met_num/

Dr. Joaquín Peña Acevedo


CIMAT A.C.
e-mail: joaquin@ cimat.mx

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 1 / 16


Cálculo del determinante de una matriz

Sea A = [aij ] ∈ Rn×n . Podemos calcular el determinante de la siguiente


manera:

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 2 / 16


Cálculo del determinante de una matriz

Sea A = [aij ] ∈ Rn×n . Podemos calcular el determinante de la siguiente


manera:
• Por la fórmula de Cramer,
n
X
det A = (−1)j a1j det A1j ,
j=1

donde A1j es la matriz que resulta al eliminar la primera fila de A y su


j-ésima columna.

• Por una suma sobre todas las permutaciones σ de los índices de las
columnas,
X
det A = sgn(σ) a1σ1 a2σ2 ...anσn
σ

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 2 / 16


Cálculo del determinante usando LU

Si A = LU, de las propiedades del determinante tenemos que

det A = det L det U.

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 3 / 16


Cálculo del determinante usando LU

Si A = LU, de las propiedades del determinante tenemos que

det A = det L det U.


Por ser L y U matrices triangulares, se debe tener que su determinante es
igual al producto de los elementos de la diagonal.

det L = 1 y det U = u11 u22 · · · unn .


Por lo tanto,

det A = u11 u22 · · · unn .

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 3 / 16


Notación

 
s11 s12 ··· s1,k−1 s1k s1,k+1 ··· s1n
 .. .. .. .. .. .. 
 . . ··· . . . ··· . 
 
sk−1,1 sk−1,2 ··· sk−1,k−1 sk−1,k sk−1,k+1 ··· sk−1,n 
 
S=
 sk,1 sk,2 ··· sk,k−1 sk,k sk,k+1 ··· sk,n 
sk+1,1 sk+1,2 ··· sk+1,k−1 sk+1,k sk+1,k+1 ··· sk+1,n 
 
 . .. .. .. .. .. 
 .. . ··· . . . ··· . 
sn,1 sn,2 ··· sn,k−1 sn,k sn,k+1 ··· sn,n

– ™
S1,k−1 S1,k S1,k+1
Sk,k−1 Sk,k Sk,k+1

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 4 / 16


Inversa de la factorización LU
Supongamos que A = LU. Entonces

A−1 = U−1 L−1


Primero calculamos U−1 . Sea S la matriz inversa de U. Entonces SU = I.
Escribiendo esto por bloques de submatrices, tenemos

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 5 / 16


Inversa de la factorización LU
Supongamos que A = LU. Entonces

A−1 = U−1 L−1


Primero calculamos U−1 . Sea S la matriz inversa de U. Entonces SU = I.
Escribiendo esto por bloques de submatrices, tenemos

    
S1,r−1 s1,r S1,r+1 U1,r−1 u1,r U1,r+1 Ir−1 0 0
> > > >   >
 0 srr sr,r+1  0 urr ur,r+1 =0 1 0 
  

0 0 Sr+1,r+1 0 0 Ur+1,r+1 0 0 Ik+1

donde S1,r−1 , U1,r−1 ∈ R(r−1)×(r−1) , s1,r , u1,r ∈ Rr−1 .

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 5 / 16


Inversa de la factorización LU
Supongamos que A = LU. Entonces

A−1 = U−1 L−1


Primero calculamos U−1 . Sea S la matriz inversa de U. Entonces SU = I.
Escribiendo esto por bloques de submatrices, tenemos

    
S1,r−1 s1,r S1,r+1 U1,r−1 u1,r U1,r+1 Ir−1 0 0
> > > >   >
 0 srr sr,r+1  0 urr ur,r+1 =0 1 0 
  

0 0 Sr+1,r+1 0 0 Ur+1,r+1 0 0 Ik+1

donde S1,r−1 , U1,r−1 ∈ R(r−1)×(r−1) , s1,r , u1,r ∈ Rr−1 .

Se debe tener que srr urr = 1 y S1,r−1 u1,r + s1,r urr = 0:

srr = 1/ urr
s1,r = −srr S1,r−1 u1,r

para r = 2, 3, ..., n − 1.

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 5 / 16


Inversa de la factorización LU (Cont.)

Ahora calculamos T = U−1 L−1 = SL−1 . Debemos tener TL = S. Separamos


las matrices en los siguientes bloques:

0 0
 
L
—  r−1,1
>
0>  = Sr−1 sr Sr+1
”  ” —
T r−1 t r T r+1  lr,1 1
Lr+1,1 lr+1,r Lr+1,r+1
donde t r , sr ∈ Rn , lr+1,r ∈ R( n − r), T r+1 ∈ R(n−r)×(n−r) .

Tenemos que t r + T r+1 lr+1,r = sr , es decir,

t r = sr − T r+1 lr+1,r para r = n − 1, n − 2, ..., 1.


Lo único que hay que notar es que

t n = sn .

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 6 / 16


Consideraciones

Para resolver el sistema de ecuaciones

Ax = b
Tenemos varias alternativas. Dentro de ellas:
Calcular la inversa de A y hacer x = A−1 b.
Aplicar alguna factorización de A.
Usar un método iterativo.
¿ En que casos conviene uno u otro método?

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 7 / 16


Matrices rectangulares

Sea A una matriz m × n y b un vector de dimensión m. Tenemos que para

Ax = b

si m > n, el sistema es sobredeterminado.


si m < n, el sistema es subdeterminado.
Para matrices cuadradas, m = n, si A es no singular, la solución es única,

x = A−1 b.
Para matrices rectangulares, hay que analizar cada caso.

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 8 / 16


Gradientes de formas lineales y cuadráticas

Sean c, x ∈ Rn , y A ∈ Rn×n .
Queremos calcular ∇(c> x) y ∇(x > Ax).

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 9 / 16


Gradientes de formas lineales y cuadráticas

Sean c, x ∈ Rn , y A ∈ Rn×n .
Queremos calcular ∇(c> x) y ∇(x > Ax).

∇(c> x) = c

∇(x > Ax) = (A + A> )x


De lo anterior se sigue que el gradiente del error

E(x) = kAx − bk22


es

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 9 / 16


Gradientes de formas lineales y cuadráticas

Sean c, x ∈ Rn , y A ∈ Rn×n .
Queremos calcular ∇(c> x) y ∇(x > Ax).

∇(c> x) = c

∇(x > Ax) = (A + A> )x


De lo anterior se sigue que el gradiente del error

E(x) = kAx − bk22


es

∇E(x) = 2A> Ax − 2A> b

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 9 / 16


Sistemas sobredeteminados

Sea A ∈ Rm×n con m > n.

En general, el sistema Ax = b puede no tener solución.

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 10 / 16


Sistemas sobredeteminados

Sea A ∈ Rm×n con m > n.

En general, el sistema Ax = b puede no tener solución.

Por ello, tiene sentido calcular


la solución de de mínimos
cuadrados,

min kAx − bk2 .


x

que está dada por

A> Ax = A> b

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 10 / 16


Sistema subdeteminado

Sea A ∈ Rm×n . Si m < n, entonces el sistema Ax = b es subdeterminado.

• Este tipo de sistemas aparecen en problemas en donde el número de


datos es menor que el número de variables que hay que calcular.
• Si el sistema es consistente, entonces el sistema tiene una infinidad de
soluciones.

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 11 / 16


Sistema subdeteminado

Sea A ∈ Rm×n . Si m < n, entonces el sistema Ax = b es subdeterminado.

• Este tipo de sistemas aparecen en problemas en donde el número de


datos es menor que el número de variables que hay que calcular.
• Si el sistema es consistente, entonces el sistema tiene una infinidad de
soluciones.

Tenemos que las soluciones del sistema lineal son de la forma

x = y + z,
donde Ay = b y Az = 0.

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 11 / 16


Soluciones de mínima norma

Supongamos que el sistema Ax = b es consistente.

De todas las posibles soluciones, queremos la solución que tiene la menor


norma de todas ellas. Es decir, la que es solución del problema

1
min kxk22 sujeta a Ax = b.
2

Usamos la norma Euclidiana para poder dar una expresión algebraica de la


solución.

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 12 / 16


Cálculo de la solución de mínima norma

Supongamos que A es de rango completo. Construimos la función


Lagrangiana del problema de minimización

1
L(x, λ) = kxk22 − λ> (Ax − b)
2
donde λ ∈ Rm es vector de multiplicadores de Lagrange.

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 13 / 16


Cálculo de la solución de mínima norma

Supongamos que A es de rango completo. Construimos la función


Lagrangiana del problema de minimización

1
L(x, λ) = kxk22 − λ> (Ax − b)
2
donde λ ∈ Rm es vector de multiplicadores de Lagrange.

1
L(x, λ) = x > x − λ> (Ax − b)
2
Tenemos que ∇L(x, λ) = x − A> λ. De donde

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 13 / 16


Cálculo de la solución de mínima norma

Supongamos que A es de rango completo. Construimos la función


Lagrangiana del problema de minimización

1
L(x, λ) = kxk22 − λ> (Ax − b)
2
donde λ ∈ Rm es vector de multiplicadores de Lagrange.

1
L(x, λ) = x > x − λ> (Ax − b)
2
Tenemos que ∇L(x, λ) = x − A> λ. De donde

x = A> λ

=⇒ x = A> (AA> )−1 b
Ax = b

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 13 / 16


Ejemplo de solución de mínima norma (I)
Consideremos una matriz A de tamaño 30 × 100 que tiene rango completo.
Definimos x de la siguiente manera, y fijamos b = Ax.

x b
1.0

10
0.5

5
0
0.0

bi
xi

−5
−0.5

−10
−1.0

−15

0 20 40 60 80 100 0 5 10 15 20 25 30

Indice del componente Indice del componente

Calculamos la solución de norma mínima x∗ = A> (AA> )−1 b.

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 14 / 16


Ejemplo de solución de mínima norma (II)

x∗ x y x∗
1.0

1.0
0.5

0.5
0.0

0.0
xi

xi
−0.5

−0.5
−1.0

−1.0
0 20 40 60 80 100 0 20 40 60 80 100

Indice del componente Indice del componente

Tenemos que kAx ∗ − bk = 2.37 × 10−14 .


x ∗ es solución del problema, pero puede ser muy diferente del vector x que
generó al vector b.

Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 15 / 16


Ejemplo de solución de mínima norma (III)
z = x − x∗

1.0
0.5
0.0
xi

−0.5
−1.0
−1.5

0 20 40 60 80 100

Indice del componente

Debemos tener que z ∈ null(A):

kAzk = 2.76 × 10−14 .

La solución de mínima norma frecuentemente es el punto de arranque de


varios algoritmos que tratar de estimar x.
Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 16 / 16

También podría gustarte