Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
El problema del ajuste de datos; es decir, descubrir una funcion matematica 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 medicion), es un problema clasico y ha supuesto un reto
para la comunidad matematica desde su planteamiento por Gauss y Legendre hacia
1800.
159
160 El Problema de Mnimos Cuadrados
r Ax b P Cm,
que se llama residuo o vector residual, sea lo mas peque no posible. Lo grande
o pequeno que sea r lo mediremos mediante una norma. El problema de mnimos
cuadrados consiste en encontrar x P Cn1 para que el vector residuo tenga la menor
norma eucldea posible. Su formulacion precisa sera la siguiente:
Ejemplo 8.1 El ejemplo mas tpico de ajuste de datos por mnimos cuadrados es
el calculo 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 mas m 1, ppxq a0 a1 x am1 xm1 , que pase por los n
puntos.
ppxi q yi , i 1, . . . , m.
5 Figura 8.1:
4
a=-5:5;
3
A=fliplr(vander(a));
b=[0 0 0 1 1 1 0 0 0 0 0];
c=Azb;
2
1
p=flipud(c);
6 4 2 2 4 6 t=linspace(-5.05,5.05);
1
plot(t, polyval(p,t),a,b,r*,...;
2 markersize,10);
3 zeroaxes
curva que interprete los datos obtenidos. Como las mediciones se realizan en momen-
tos puntuales, tal grafica debera reflejar, salvo que se tengan motivos para pensar
lo contrario, una comportamiento suave entre dos datos consecutivos, y no la fluc-
tuacion que muestra el polinomio de interpolacion de nuestro ejemplo. Quiza un
polinomio de menor grado pueda mostrar un mejor comportamiento. Tal polinomio
no pasara por algunos de los puntos. Pero la medicion de todo proceso real conlleva
errores que podran explicar tal fenomeno.
Ejemplo 8.2 (Ajuste por mnimos 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 mnimos cuadrados.
Siguiendo los mismos pasos que en el ejemplo anterior lo que buscamos es un poli-
nomio de grado a lo mas n 1 m 1
ppxq a0 a1 x an1 xn1
tal que }ppxq y }2 sea mnimo. 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
1 x1 x21 x1n1
1 x x22 x2n1
A .. ..
2
.. . . ..
. . . ..
1 xm xm xm
2 n1
Una observacion final antes de abordar la solucion del problema de mnimos cua-
drados y los algoritmos correspondientes. Una variante del problema de encontrar
8.2 La solucion del problema de mnimos cuadrados 163
5 Figura 8.2:
4 a=-5:5
3
A=fliplr(vander(a))
2
b=[0 0 0 1 1 1 0 0 0 0 0];
p=polyfit(a,b,7);
1
t=linspace(-5.3,5.3);
6 4 2 2 4 6 plot(t, polyval(p,t),a,b,r*,...
1 markersize,10);
2 axis([-6 6 -3 5]);
3 zeroaxes
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 combinacion 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 mnimo:
mn }Ax y }2 ,
P
x C
8.2. La soluci
on del problema de mnimos cuadra-
dos
r=Ax0b
b Im A
Ax
0
}PAb b}22 xmn }Ax b}22 }Ax0 b}22 }Ax0 PA b}22 }PA b b}22 .
PCn
Finalmente, como pIm AqK Ker A tenemos que b Ax0 P pIm AqK si y solo si
A pb Ax0 q 0; i. e., A Ax0 A b.
El Teorema 8.3 nos da las claves para calcular un vector x0 que solucione el problema
de mnimos cuadrados. En primer lugar, el sistema A Ax A b recibe el nombre de
166 El Problema de Mnimos Cuadrados
Teniendo en cuenta todo esto podemos dar un primer algoritmo para la resolucion
del problema de mnimos cuadrados.
A A R Q QR R R LL ,
ulese Q b.
2. Calc
con yr 1 ,. . . , yn , n
umeros arbitrarios. Si el rango de A es completo, n, la solucion del
sistema queda completamente determinada; cosa que ya habamos demostrado. Pero
si rang A n entonces hay infinitas soluciones del problema de mnimos cuadrados.
Entre ellas, se suele escoger la solucion de norma mnima. Y esta es la que se consigue
haciendo yr 1 yn 0. Finalmente, como y V x, tenemos que x V y.
8.3 Algoritmos para calcular la solucion del problema de mnimos cuadrados 169
c1 {1
c2 {2
..
c1 {1
. c {
x0 V y0 V cr {r Vr .. ,
2 2
.
0
.
..
cr {r
Ahora vamos a volver hacia atras a fin de recuperar la solucion del problema
en terminos de los datos originales: A y b. Recordemos, antes de nada, que con
las notaciones introducidas A Ur r Vr es una descomposicion reducida de A en
valores singulares. En consecuencia
A: Vr r 1Ur
es la inversa generalizada o Moore-Penrose de A.
Ahora bien,
c1 {1
c {
x0 Vr .. Vr 1
r c Vr r Ur b,
2 2 1
.
cr {r
Este proceso, ademas, nos proporciona un algoritmo para calcular la solucion del
problema de mnimos cuadrados en el caso mas general.
170 El Problema de Mnimos Cuadrados
2. Calcular c U b.
x A: b
y P b,
8.4 El condicionamiento del problema de mnimos cuadrados 171
b r=Axb
y=Ax=Pb
Im A
de modo que
1 }x}x }yy} 1.
2 2
Equivalentemente
cos }x}x }yy} .
2 2
sen2 1
}y}22 }b}22 }y}22 .
}b}22 }b}22
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 Pitagoras,
}b}22 }y}22 }b y}22 y
sen
}b y }2
}b} 2
En tercer lugar, para cualquier norma inducida }Ax} }A} }x}. Necesitaremos una
medidad de lo lejos o cerca que esta }y } }Ax} de su maximo valor posible:
1 pAq 8 0 {2 1 pAq
8.4 El condicionamiento del problema de mnimos cuadrados 173
}pAAq1A}2 1 . (8.3)
n
}pAAq1}2 12 (8.4)
n
Demostraci on.- La propiedad (8.4) es una consecuencia inmediata de que los valo-
res singulares de A son las races cuadradas positivas de los valores propios de A A,
y de que 1{n2 es el mayor valor singular de pA Aq1 (ver Porposiciones 3.12 y 3.16).
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.
(i) El n
umero de condicion del problema de calcular y Ax P Fn respecto de b es
1
. (8.5)
cos
174 El Problema de Mnimos Cuadrados
Op2 q.
}x}2 2
(8.8)
2 pAq2 tan
*
Op2 q.
}x}2 2
cos
1
(8.9)
Q
U P U
QQ Q Q n
r I 0
r
Q 0 0
}P }2 1pP q 1
Finalmente, recordemos que cos
}y}2 . En conclusion:
}b}2
pbq
}P }2}b}2 1 ,
}y}2 cos
pA tE q pA tE qxptq pA tE q pb tf q (8.11)
176 El Problema de Mnimos Cuadrados
tiene una u nica solucion para cada t P r0, s. Invertir una matriz es una funcion
diferenciable en los elementos de la matriz. Por lo tanto x es una funcion diferenciable
de t en r0, s. Por la definicion de diferencial
Necesitamos una estimacion de }x1 p0q}2 . Para ello calculamos x1 p0q en (8.11). Pri-
mero derivamos
E Ax A Ex A Ax1 p0q A f E b.
As
x1 p0q pA Aq1 A pf Exq pAAq1E pb Axq.
Tomando normas:
2 pAq2
}b Ax}2{}Ax}2 .
}x}2 2
}A}2}x}2{}Ax}2 1
}A}2}x}2{}Ax}2
8.5 Estabilidad de los algoritmos para el problema de mnimos cuadrados 177
}x1p0q}2 pAq 1
2 pAq2
tan
}x}2 2
cos
1
sustituyendo en (8.12)
2 pAq2 tan
*
Op2 q,
}x}2 2
cos
1
hacia atras (ver [11, Sec 20.3]). Finalmente, los algoritmos basados en la factoriza-
cion QR mediante reflexiones de Householder y valores singulares son estables hacia
atras para sistemas en los que A es una matriz de rango completo. A continuacion
se enuncian los teoremas que lo hace explto.
Teorema 8.6 Supongamos que el problema de mnimos cuadrados con una matriz
A de rango completo se resuelve mediante el algoritmo QR por reflexiones de Hou-
seholder o mediante la descomposicion en valores singulares en un ordenador que
cumple los axiomas (5.2) y (5.4) de la Leccion 5. Este algoritmo es estable hacia
atras: para cada A P Fmn (m n y rang A n) existe una perturbacion A tal
que
}A} Op q
}A} M
}pA Aqx
p b}2 mn }pA
xPFn
Aqx b}2 .