Clase No. 10:
Cálculo del determinante de una matrizCálculo de la inversa de una matriz
Sistemas sobredeterminados ysubdeterminados
MAT–251 Dr. Alonso Ramírez ManzanaresDepto. de MatemáticasUniv. de Guanajuatoe-mail: [email protected]: http://www.cimat.mx/salram/met_num/
Dr. Joaquín Peña AcevedoCIMAT A.C.e-mail: [email protected]
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 siguientemanera:
• Por la fórmula de Cramer,
detA =n∑
j=1
(−1)ja1j detA1j,
donde A1j es la matriz que resulta al eliminar la primera fila de A y suj-ésima columna.
• Por una suma sobre todas las permutaciones σ de los índices de lascolumnas,
detA =∑
σsgn(σ) a1σ1a2σ2 ...anσn
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 siguientemanera:
• Por la fórmula de Cramer,
detA =n∑
j=1
(−1)ja1j detA1j,
donde A1j es la matriz que resulta al eliminar la primera fila de A y suj-ésima columna.
• Por una suma sobre todas las permutaciones σ de los índices de lascolumnas,
detA =∑
σsgn(σ) a1σ1a2σ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
detA = detL detU.
Por ser L y U matrices triangulares, se debe tener que su determinante esigual al producto de los elementos de la diagonal.
detL = 1 y detU = u11u22 · · ·unn.
Por lo tanto,
detA = u11u22 · · ·unn.
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
detA = detL detU.
Por ser L y U matrices triangulares, se debe tener que su determinante esigual al producto de los elementos de la diagonal.
detL = 1 y detU = u11u22 · · ·unn.
Por lo tanto,
detA = u11u22 · · ·unn.
Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 3 / 16
Notación
S =
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
sk,1 sk,2 · · · sk,k−1 sk,k sk,k+1 · · · sk,nsk+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−1L−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
0> srr s>r,r+1
0 0 Sr+1,r+1
U1,r−1 u1,r U1,r+1
0> urr u>r,r+1
0 0 Ur+1,r+1
=
Ir−1 0 00> 1 00 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 srrurr = 1 y S1,r−1u1,r + s1,rurr = 0:
srr = 1/urrs1,r = −srrS1,r−1u1,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
Supongamos que A = LU. Entonces
A−1 =U−1L−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
0> srr s>r,r+1
0 0 Sr+1,r+1
U1,r−1 u1,r U1,r+1
0> urr u>r,r+1
0 0 Ur+1,r+1
=
Ir−1 0 00> 1 00 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 srrurr = 1 y S1,r−1u1,r + s1,rurr = 0:
srr = 1/urrs1,r = −srrS1,r−1u1,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
Supongamos que A = LU. Entonces
A−1 =U−1L−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
0> srr s>r,r+1
0 0 Sr+1,r+1
U1,r−1 u1,r U1,r+1
0> urr u>r,r+1
0 0 Ur+1,r+1
=
Ir−1 0 00> 1 00 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 srrurr = 1 y S1,r−1u1,r + s1,rurr = 0:
srr = 1/urrs1,r = −srrS1,r−1u1,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−1L−1 = SL−1. Debemos tener TL = S. Separamoslas matrices en los siguientes bloques:
�
Tr−1 tr Tr+1�
Lr−1,1 0 0l>r,1 1 0>
Lr+1,1 lr+1,r Lr+1,r+1
=�
Sr−1 sr Sr+1�
donde tr ,sr ∈ Rn, lr+1,r ∈ R(n− r), Tr+1 ∈ R(n−r)×(n−r).
Tenemos que tr +Tr+1lr+1,r = sr , es decir,
tr = sr − Tr+1lr+1,r para r = n− 1,n− 2, ...,1.
Lo único que hay que notar es que
tn = 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−1b.
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−1b.
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).
∇(c>x) = c
∇(x>Ax) = (A+A>)x
De lo anterior se sigue que el gradiente del error
E(x) = ‖Ax−b‖22es
∇E(x) = 2A>Ax− 2A>b
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) = ‖Ax−b‖22es
∇E(x) = 2A>Ax− 2A>b
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) = ‖Ax−b‖22es
∇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.
Por ello, tiene sentido calcularla solución de de mínimoscuadrados,
minx‖Ax−b‖2.
que está dada por
A>Ax = A>b
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 calcularla solución de de mínimoscuadrados,
minx‖Ax−b‖2.
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 dedatos es menor que el número de variables que hay que calcular.
• Si el sistema es consistente, entonces el sistema tiene una infinidad desoluciones.
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
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 dedatos es menor que el número de variables que hay que calcular.
• Si el sistema es consistente, entonces el sistema tiene una infinidad desoluciones.
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 menornorma de todas ellas. Es decir, la que es solución del problema
min1
2‖x‖22 sujeta a Ax = b.
Usamos la norma Euclidiana para poder dar una expresión algebraica de lasolució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ónLagrangiana del problema de minimización
L(x,λ) =1
2‖x‖22 − λ>(Ax−b)
donde λ ∈ Rm es vector de multiplicadores de Lagrange.
L(x,λ) =1
2x>x− λ>(Ax−b)
Tenemos que ∇L(x,λ) = x−A>λ. De donde
x = A>λAx = b
�
=⇒ x = A>(AA>)−1b
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ónLagrangiana del problema de minimización
L(x,λ) =1
2‖x‖22 − λ>(Ax−b)
donde λ ∈ Rm es vector de multiplicadores de Lagrange.
L(x,λ) =1
2x>x− λ>(Ax−b)
Tenemos que ∇L(x,λ) = x−A>λ. De donde
x = A>λAx = b
�
=⇒ x = A>(AA>)−1b
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ónLagrangiana del problema de minimización
L(x,λ) =1
2‖x‖22 − λ>(Ax−b)
donde λ ∈ Rm es vector de multiplicadores de Lagrange.
L(x,λ) =1
2x>x− λ>(Ax−b)
Tenemos que ∇L(x,λ) = x−A>λ. De donde
x = A>λAx = b
�
=⇒ x = A>(AA>)−1b
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
0 20 40 60 80 100
−1.
0−
0.5
0.0
0.5
1.0
Indice del componente
x i
0 5 10 15 20 25 30
−15
−10
−5
05
10
Indice del componente
b i
Calculamos la solución de norma mínima x∗ = A>(AA>)−1b.
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∗
0 20 40 60 80 100
−1.
0−
0.5
0.0
0.5
1.0
Indice del componente
x i
0 20 40 60 80 100
−1.
0−
0.5
0.0
0.5
1.0
Indice del componente
x i
Tenemos que ‖Ax∗ −b‖ = 2.37× 10−14.x∗ es solución del problema, pero puede ser muy diferente del vector x quegeneró 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∗
0 20 40 60 80 100
−1.
5−
1.0
−0.
50.
00.
51.
0
Indice del componente
x i
Debemos tener que z ∈ null(A):
‖Az‖ = 2.76× 10−14.
La solución de mínima norma frecuentemente es el punto de arranque devarios algoritmos que tratar de estimar x.
Joaquín Peña (CIMAT) Métodos Numéricos (MAT–251) 10.09.2012 16 / 16