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 sibP ImA, 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
puede intentar es buscar un x de forma que el vector
r AxbP Cm,
que se llama residuoo vector residual, sea lo “m´as peque˜no” posible. Lo grande o peque˜no que sea rlo mediremos mediante una norma.El problema de m´ınimos cuadradosconsiste en encontrarxP Cn1 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 FR o C. Dada una matriz A PFmn y un vector b PFm,(m ¥n) encontrar xP
Cn1 para que }Axb}2 sea m´ınimo.
La elecci´on de la norma eucl´ıdea se puede justificar 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 }Axb}2 alcanza su m´aximo absoluto en un m´aximo local,
este m´aximo puede calcularse igualando a cero las derivadas parciales de dicha fun-ci´on. Este proceso conduce a lo que se llaman lasecuaciones normales del problema de m´ınimos cuadrados. Estas ecuaciones nos las encontraremos m´as adelante proce-dentes 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, yiq, i 1, . . . , m, de forma que xi xj para i j, se trata de encontrar un polinomio de grado a lo m´as m1, ppxq a0 a1x am1xm1, que pase por los n
puntos.
Se trata, entonces, de encontrar los coeficientes a0, a1,. . . , am1, para que
ppxiq yi, i1, . . . , m. Esto equivale a resolver el sistema lineal
8.1 El problema de m´ınimos cuadrados 161
cuya matriz de coeficientes es
Axji1 1 x1 x21 x m1 1 1 x2 x22 x m1 2 .. . ... ... . .. ... 1 xm x2m xmm1 Esta es una matriz de Vandermonde cuyo determinante es
detA¹ i j
pxixjq.
Por consiguiente A es invertible y el sistema (8.1) tiene una ´unica soluci´on. En la Figura 8.1 se muestra la gr´afica 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 coeficientes del polinomio de interpolaci´on: c Azb y que da la gr´afica: plot(t, polyval(p,t),a,b,’r*’,’markersize’,10);. El comandopolyval(p,t) devuel-ve un devuel-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 coeficientes del sistema y los coeficientes del polinomio de interpolaci´on en la forma apropia-da. La sentencia zeroaxeshace 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. −6 −4 −2 2 4 6 −3 −2 −1 1 2 3 4 5 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
curva que interprete los datos obtenidos. Como las mediciones se realizan en momen-tos puntuales, tal gr´afica deber´ıa reflejar, salvo que se tengan motivos para pensar lo contrario, una comportamiento suave entre dos datos consecutivos, y no la fluc-tuaci´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 ejem-plo 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 poli-nomio de grado a lo m´asn1¤m1
ppxq a0 a1x an1xn1
tal que }ppxq y}2 sea m´ınimo. Aqu´ı, ppxq es el vector cuyai-´esima componente es
ppxiqy el vector y es el que tiene pori-´esima componenteyi. Ahora bien, si A 1 x1 x21 x n1 1 1 x2 x22 x n1 2 .. . ... ... . .. ... 1 xm x2m xnm1
es la matriz de Vandermonde truncada y c pa0, a1, . . . , an1q es el vector de los
coeficientes de p tenemos que ppxq Ac. As´ı que se trata de hallar un vector c en el que se alcance
m´ın xPCn}
Axy}2.
En la Figura 8.2 se presenta la gr´afica producida por MATLAB del polinomio de grado 7 que mejor se ajusta a los datospai, biqen el sentido de los m´ınimos cuadrados. El problema de m´ınimos cuadrados correspondiente se calcula en el interior de la sentenciaployfit. El resto del c´odigo de MATLAB que se muestra es el mismo que en el apartado anterior.
Una observaci´on final antes de abordar la soluci´on del problema de m´ınimos cua-drados y los algoritmos correspondientes. Una variante del problema de encontrar
8.2 La soluci´on del problema de m´ınimos cuadrados 163 −6 −4 −2 2 4 6 −3 −2 −1 1 2 3 4 5 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´asn1 que mejor se ajusta a una nube dem puntos, pxi, yiq, distribu´ıdos en el plano es el de encontrar la funci´on
φpxq c1φ1pxq c2φ2pxq cnφnpxq,
que mejor se ajusta a una de tales nubes de puntos. Aqu´ıφ1,φ2,. . . ,φnson 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 vectorc donde se alcanza el m´ınimo:
m´ın xPC }
Axy}2,
siendoAP Fmn la matriz cuyo elemento en la posici´onpi, jq esφ
jpxiqy siendoy el vector cuyas componetes son y1, . . . , ym.
8.2.
La soluci´
on del problema de m´ınimos
cuadra-dos
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 ImA cuya distancia ab es m´ınima es la proyecci´on ortogonal deb sobre ImA. Y la distancia m´ınima es la norma del residuo. Esto es lo que nos dice el siguiente Teorema.
b Im A
Ax0 r=Ax0−b
Figura 8.3: La soluci´on del problema de m´ınimos cuadrados Teorema 8.3 SeanAPFmn,
FRoC, yb PFm1, m¥n. SeaPA la proyecci´on ortogonal sobre ImA. Entonces, Ax0 cumple
}Ax0b}2 m´ın
xPFn}
Axb}2
si y s´olo si se cumple cualquiera de las siguientes condiciones que son equivalentes: (i) Ax0 PAb.
(ii) bAx0 P pImAqK.
(iii) AAx0 Ab.
Adem´as, la soluci´on x0 es ´unica si y s´olo si rangAn.
En la demostraci´on se usa el teorema de Pit´agoras: Si x, y P Cn son ortogonales entonces }x y}2
2 }x}22 }y}22. En efecto,}x y}22 px yqpx yq xx y
xy yxxx yy }x}22 }y}22, donde hemos usado quexyyx0 porque x ey son ortogonales.
Demostraci´on.- Todo se basa en la demostraci´on de la idea geom´etrica expuesta m´as arriba:
m´ın xPCn}
Axb}2 }PAbb}2.
Vemaos que esto es as´ı. En efecto
8.3 Algoritmos para calcular la soluci´on del problema de m´ınimos cuadrados 165
porqueAxPAb PImA yPAbb pIPAqb P pImAqK y aplicando el Teorema de Pit´agoras. Por lo tanto, para todo xPCn
}Axb}2 ¥ }PAbb}2.
Pero comoPAb PImA, existex1 PCntal queAx1 PAb; i.e.,}Ax1b}2 }PAbb}2.
Por lo tanto m´ın xPCn}
Axb}2 }PAbb}2, tal y como dese´abamos mostrar.
Ahora, siAx0 es el vector que hace m´ınima la distancia de Ax ab entonces
}PAbb}22 m´ın
xPCn}
Axb}22 }Ax0b}22 }Ax0PAb}22 }PAbb}22.
De aqu´ı deducimos que }Ax0 PAb}2 0; es decir, Ax0 PAb.
S´olo queda demostrar la equivalencia entre las tres condiciones. Por una parte PAb Ax0 ñbAx0 bPAb pIPAqbP pImAqK.
Y sibAx0 P pImAqK entoncesPApbAx0q 0 de modo que PAb PAAx0. Pero
como Ax0 PImA tenemos que PAAx0 Ax0. Esto demuestra la equivalencia entre
las condiciones (i) y (ii).
Finalmente, como pImAqK KerA tenemos que b Ax0 P pImAqK si y s´olo si
ApbAx0q 0; i. e.,AAx0 Ab.
Falta demostrar que la soluci´on del problema de m´ınimos cuadrados es ´unica si y s´olo si rangAn. Ahora bien, rangAn si y s´olo siAAes invertible. Una forma de ver esto es, por ejemplo, la siguiente: rangA n si y s´olo si σnpAq 0. Como los valores singulares de A son las ra´ıces cuadradas positivas de los valores propios de AA, σn 0 si y s´olo si todos los valores propios de AA son distintos de cero; i.e. detpAAq 0. Pero AA es invertible si y s´olo si el sistema AAx Ab tiene soluci´on ´unica.
8.3.
Algoritmos para calcular la soluci´
on del
pro-blema de m´ınimos cuadrados
El Teorema 8.3 nos da las claves para calcular un vectorx0que solucione el problema
ecuaciones normales del problema de m´ınimos cuadrados. Es el sistema que aparece al calcular el m´ınimo local de la funci´on
fpxq }Axb}2.
Es decir, el sistema
Bf Bxip
xq 0, i1, . . . , n
da lugar al sistemaAAx Ab. Como la funci´onf es convexa, alcanza su m´ınimo absoluto en un m´ınimo local.
Para resolver el sistema AAx Ab num´ericamente, tendremos en cuenta la es-tructura especial de la matrizAA: es herm´ıtica (sim´etrica en el caso real). Adem´as es definida positiva porque xAAx }Ax}2 ¡ 0 para x 0. Ahora bien toda
matriz herm´ıtica definida 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´ıti-ca definida positiva. Recordemos que una factorizaci´on de Cholesky de una matriz herm´ıtica definida positiva, A, es una factorizaci´on de la forma
ALL
siendo L una matriz triangular superior. Esta factorizaci´on es especialmente apro-piada 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.
Algoritmo m´ınimos cuadrados via ecuaciones normales DadaAPFmn y dado bP
Fm
1. F´ormense las matrices AA y Ab.
2. Calc´ulese la factorizaci´on de Cholesky deAALL, (chol(A)) 3. Resu´elvase LyAb (z o sustituci´on hacia adelante)
8.3 Algoritmos para calcular la soluci´on del problema de m´ınimos cuadrados 167
Cuando A es herm´ıtica definida 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 AA para conseguir la factorizaci´on de Cholesky deAA en vez del algoritmo de Cholesky. En efecto, si A QR es la factorizaci´on QR reducida de A, entonces
AARQQR RRLL,
donde hemos utilizado queQQIn, por tenerQ columnas ortonormales, y hemos puestoLR. Esto nos muestra que siA es de rango completo, la factorizaci´on de Cholesky de AA es ´unica. 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
sistemaAx0 PAb. Para ello, debemos conseguirPA, que es la proyecci´on ortogonal sobre ImA. Recordemos que PA QQ, donde Q es una matriz cuyas columnas son una base ortonormal de ImA. Recordemos que si A QR es una factorizaci´on QR de A entonces las columnas de Q son una base ortonormal de ImA y, por consiguiente, QQ es la proyecci´on ortogonal sobre ImA.
Algoritmo m´ınimos cuadrados via factorizaci´on QR
Dada APFmn y dado bPFm
1. H´allese la factorizaci´on QR, reducida, de A 2. Calc´ulese Qb.
3. Resu´elvase RxQb (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.
8.3.1.
El problema de m´ınimos cuadrados y la inversa
Moore-Penrose
La inversa generalizada de Moore-Penrose se puede definir como la matriz que solu-ciona el problema de m´ınimos cuadrados. Es decir, de la misma que la soluci´on del sistema Axb esx A1b siempre que A sea invertible, la soluci´on del problema de m´ınimos cuadrados esx0 A:b. Veremos que esto es, en efecto as´ı, y que este
he-cho 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 PAb, siendo PA la proyecci´on ortogonal sobre ImA. Re-cordemos tambi´en que sir rangAyAUΣV es una descomposici´oncompleta deA en valores singulares, entonces las r primeras columnas de U son una base or-tonormal de ImA. (Proposici´on 3.10). Sea Ur la submatriz de U formada por sus r primeras columnas. Como son una base ortonormal de ImA, la matriz UrUr es la proyecci´on ortogonal sobre ImA. Es decir, PAUrUr. As´ı pues, si ponemos
Σ
Σr 0 0 0
entonces el sistema AxPAb es equivalente a Ur
Σr 0
VxUrUrb. Y este sistema es equivalente a Σr 0
VxUrb dado queUrUr Ir. Pongamos cUrb y y Vx. Entonces, AxPAb ô Σr 0 y c.
Si Σr Diagpσ1, . . . , σrq, la soluci´on general de este sistema es
yc1{σ1 c2{σ2 cr{σr yr 1 yn
T
conyr 1,. . . ,yn, n´umeros arbitrarios. Si el rango deAes completo,n, la soluci´on del sistema queda completamente determinada; cosa que ya hab´ıamos demostrado. Pero si rangA n entonces hay infinitas 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 yr 1 yn 0. Finalmente, como y Vx, 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 definitiva, el vector x0 de norma m´ınima que
soluciona el problema de m´ınimos cuadrados es:
x0 V y0 V c1{σ1 c2{σ2 .. . cr{σr 0 .. . 0 Vr c1{σ1 c2{σ2 .. . cr{σr ,
dondeVr es la submatriz de V formada por sus r primeras columnas.
Ahora vamos a “volver hacia atr´as” a fin 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ΣrVr es una descomposici´on reducida de A en valores singulares. En consecuencia
A:VrΣr1Ur es la inversa generalizada o Moore-Penrose deA. Ahora bien, x0 Vr c1{σ1 c2{σ2 .. . cr{σr VrΣr1cVrΣr1Urb,
porquecUrb. As´ı pues, el vector de norma m´ınima que soluciona el problema de m´ınimos cuadrados es
x0 VrΣr1Urb A:b 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.
Algoritmo m´ınimos cuadrados via valores singulares DadaAPFmn y dado bP
Fm
1. Calcular la descomposici´on reducida deA en valores singulares: A UΣV, U P Fmr, V P Fnr y ΣDiagpσ1, . . . , σrq.
2. Calcular cUb.
3. Calcular x VΣ1c. Este es el vector de menor norma que
solu-ciona el problema de m´ınimos cuadrados.
8.4.
El condicionamiento del problema de
m´ıni-mos cuadrados
El condicionamiento del problema de m´ınimos cuadrados es un tema importante por-que tiene implicaciones no triviales en el estudio de la estabilidad de los algoritmos para este problema. Como es habitual analizaremos en detalle el condicionamien-to del problema y estudiaremos la estabilidad de los algoritmos mediante ejemplos significativos.
Recordemos que el problema de m´ınimos cuadrados consiste en lo siguiente (supon-dremos en lo sucesivo que la matriz del sistema tiene rango completo):
DadaAP Fmn de rango completo ym ¥n, y dado bP
Fm,
calcularxPFn para que }Axb}2 sea m´ınima.
(8.2)
Ya sabemos que, en este caso, la soluci´on del problema es ´unica y viene dada por xA:b
donde A:PFnn es la pseudoinversa o inversa generalizada de Moore-Penrose de A (ver 3.6). Adem´as, si yAx es el vector en ImA m´as pr´oximo a b entonces
8.4 El condicionamiento del problema de m´ınimos cuadrados 171
siendo P la proyecci´on ortogonal sobre ImA.
Nuestro objetivo es estudiar el condicionamiento del Problema (8.2) respecto a per-turbacione enA y en b. Es decir, los datos del problema son la matrizA y el vector b. La soluci´on es el vector de coeficientes 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 xo y respecto a peque˜nas perturbaciones en los datos b oA.
El objetivo en esta secci´on es dar un resultado fundamental sobre el condicionamien-to 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
κ2pAq }A}2}A:}2 σ1 σn .
Im A
b
y=Ax=Pb
θ
r=Ax−b
Figura 8.4: El problema de m´ınimos cuadrados.
En segundo lugar, necesitamos el conceto de ´angulo entre dos vectores de Fm. Lo definimos, como es habitual, a partir de la desigualdad de Cauchy-Schwartz: six, y P
Fm entonces
de modo que
1¤ x
y
}x}2}y}2 ¤
1. Se define, entonces el ´angulo, θ, de x,y como
θarc cos x y }x}2}y}2 . Equivalentemente cosθ x y }x}2}y}2 .
En nuestro caso, para calcular el ´angulo deb e ydebemos hacer el producto escalar by bP b. Teniendo en cuenta que P es una proyecci´on (P2 P) ortogonal pP P) resulta que bybP bbP P bbPP b }P b}22 }y}22. As´ı pues cosθ }y}2 }b}2 .
Para el seno usamos la identidad sen2θ1cos2θ:
sen2θ1}y} 2 2 }b}2 2 }b}22 }y}22 }b}2 2 .
Ahora bien, b y b y siendo y y b y ortogonales (y P ImA y b y bP b pImPqbP pImAqK). Por consiguiente, usando el Teorema de Pit´agoras, }b}2
2 }y}22 }by}22 y
senθ }by}2 }b}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:
η }A}2 }x}2 }y}2
}A}2 }x}2
}Ax}2
.
Estos par´ametros tienen el siguiente rango de variaci´on:
8.4 El condicionamiento del problema de m´ınimos cuadrados 173
Todas estas acotaciones son claras excepto, quiz´a, la ´ultima que viene de la siguiente observaci´on: }x}2 }A1Ax}2 ¤ }A1}2}Ax}2, de modo que η ¤ }A}2}A 1} 2}Ax}2 }Ax}2 κ2pAq.
El resultado previo que necesitamos es el siguiente
Lema 8.4 Para APFmn de rango completo n se tiene: }pAAq1A}2 1 σn . (8.3) }pAAq1}2 1 σ2 n (8.4) siendo σ1 ¥ ¥σn los valores singulares de A.
Demostraci´on.- La propiedad (8.4) es una consecuencia inmediata de que los valo-res singulavalo-res deA son las ra´ıces cuadradas positivas de los valores propios deAA, y de que 1{σn2 es el mayor valor singular depAAq1 (ver Porposiciones 3.12 y 3.16). Para probar la propiedad (8.3) se usa el Teorema SVD para ver que los valores singulares depAAq1A 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 rangA 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 yAxPFn respecto de b es 1
(ii) El n´umero de condici´on del problema de calcular xPFn respecto de b es κ2pAq
ηcosθ. (8.6)
(iii) Sea x˜ la soluci´on del problema de m´ınimos cuadrados relativo a minimizar }pA δAqx˜b}2. Si y˜ pA δAqx˜ y }δA}2 }A}2 σn σ1 entonces }y˜y}2 }y}2 ¤κ2pAq cosθ Op 2q. (8.7)
(iv) En las mismas condiciones del apartado anterior }x˜x}2 }x}2 ¤ κ2pAq κ2pAq2tanθ η Op2q. (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 " }δA}2 }A}2 ,}δb}2 }b}2 * σn σ1
siendo σ1 ¥ ¥σn los valores singulares de A, entonces }x˜x}2 }x}2 ¤ " κ2pAq 1 ηcosθ 1 κ2pAq2tanθ η * Op2q. (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 κ2pAq{η y κ2pAq 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
8.4 El condicionamiento del problema de m´ınimos cuadrados 175
siendoP la proyeccci´on ortogonal sobre ImA. 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 ; bAx es κ }f 1pxq} }fpxq}{}x} }A} }x} }Ax} , (8.10)
En nuestro caso se trata del n´umero de condici´on del problema yP b respecto de b para P dado. Entonces
κpbq }P}2}b}2 }y}2
Como P es una proyecci´on ortogonal P QQ para alguna matriz Q P Fnm con columnas ortonormales. SeaU
Q Qr
una matriz unitaria. Entonces
UP U Q r Q QQ Q Qr In 0 0 0
Por lo tanto, los valores singulares de P son todos iguales a 1 y en particular }P}2 σ1pPq 1
Finalmente, recordemos que cosθ }y}2 }b}2 . En conclusi´on: κpbq }P}2}b}2 }y}2 1 cosθ, tal y como se deseaba demostrar.
(v) En primer lugar definimos E 1
δAy f 1
δb. Por hip´otesis, }δA}2
}A}2
σn σ1
y como }A}2 σ1, tenemos que }δA}2 σn. Por el Teorema 3.18 resulta que rangpA δAq n y consecuentemente rangpA tEq n para todo t P r0, s. Se sigue entonces que el sistema
tiene una ´unica soluci´on para cada t P r0, s. Invertir una matriz es una funci´on diferenciable en los elementos de la matriz. Por lo tantoxes una funci´on diferenciable det enr0, s. Por la definici´on de diferencial
xpq xp0q x1p0q Op2q.
Como xpq x,˜ xp0q x, b0 y senθ1, tenemos que x0 y }x˜x}2 }x}2 }x 1p0q} 2 }x}2 Op2q. (8.12)
Necesitamos una estimaci´on de }x1p0q}2. Para ello calculamos x1p0q en (8.11).
Pri-mero derivamos
EpA tEqxptq pA tEqExptq pA tEqpA tEqx1ptq Eppb tfq pA tEqf, y sustitu´ımos t0 recordando que xp0q x:
EAx AEx AAx1p0q Af Eb. As´ı
x1p0q pAAq1Apf Exq pAAq1EpbAxq. Tomando normas:
}x1p0q}2 ¤ }pAAq1A}2p}f}2 }E}2}x}2q }pAAq1}2}E}2}bAx}2.
Por una parte, }E}2
1
}δA}2 ¤ }A}2. Y de la misma forma }f}2 ¤ }b}2. Tambi´en }A}2 }A}2, as´ı que }x1p0q}2 ¤ }pAAq1A}2p}A}2}x}2 }b}2q }pAAq1}2}A}2}bAx}2 ¤ ¤ }pAAq1A} 2}A}2 }b}2 }A}2 }x}2 }pAAq1} 2}A}22 }bAx}2 }A}2 .
Por otra parte, por el Lema 8.4, }pAAq1A}2}A}2 κ2pAq y }pAAq1}2}A}22
κ2pAq2. Entonces }x1p0q}2 }x}2 ¤κ2pAq }b}2{}Ax}2 }A}2}x}2{}Ax}2 1 κ2pAq2 }bAx}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, η }A}2}x}2 }Ax}2 , cosθ }Ax}2 }b}2 y tanθ }bAx}2 }Ax}2 . En consecuencia }x1p0q}2 }x}2 ¤κ2pAq 1 ηcosθ 1 κ2pAq2 tanθ η sustituyendo en (8.12) }x˜x}2 }x}2 ¤ " κ2pAq 1 ηcosθ 1 κ2pAq2tanθ η * Op2q, tal y como se quer´ıa demostrar.
8.5.
Estabilidad de los algoritmos para el
proble-ma 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 obli-gatorias 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 fac-torizaci´onQR, se utilizar´an los tres algoritmos vistos en las Lecciones 6 y 7; es decir, los algoritmos cl´asico y modificado de Gram-Schmidt y el algoritmo de Householder. A trav´es de dicho experimento se comprobar´a que los algoritmos basados en la reso-luci´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 dem mu-cho mayores quen, el coste operacional sensiblemente menor que el m´etodo basado en la factorizaci´on QR mediante reflexiones 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 modificado 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
hacia atr´as (ver [11, Sec 20.3]). Finalmente, los algoritmos basados en la factoriza-ci´onQR mediante reflexiones 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 reflexiones de Hou-seholder 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 atr´as: para cada A P Fmn (m ¥ n y rangA n) existe una perturbaci´on δA tal que
}δA}
}A} OpMq y la soluci´on xpproducida por el algoritmo satisface
}pA δAqpxb}2 m´ın
xPFn}p
A δAqxb}2.
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 ´unica y el ´unico algoritmo completamente estable es el basado en la descomposici´on deAen valores singulares.