Documentos de Académico
Documentos de Profesional
Documentos de Cultura
(Libro) Regresión Por Mínimos Cuadrados PDF
(Libro) Regresión Por Mínimos Cuadrados PDF
n n n
m x b1 y
i 1 i 1 i 1
n n n
m x b x yx
2
i 1 i 1 i 1
m
x y n xy
x n x2 2
b
x xy y x 2
x n x
2 2
Por:
MsC. Luís Antonio Bautista Hernández
luisantonio.bautista@gmail.com
Octubre de 2009
INTRODUCCIÓN
Con este documento pretendo mostrar a los docentes acostumbrados atrabajar con el
papel milimetrado, logarítmico y semilogarítmico que las herramientas computacionales
actuales permiten realizar el mismo trabajo incluso de una manera mas precisa. De otra
parte se plantea la posibilidad de abordar el problema de la regresión al caso
multivariable.
El entorno de Matlab presenta una ventana de historial donde se almacenan todas las
instrucciones ejecutadas y una ventana de comandos donde se digitan las instrucciones a
realizar. La ventana de comandos se identifica mediante un título (Command Window)
y presenta un signo (>>) que indica al usuario que se encuentra dispuesto a ejecutar
alguna orden.
A manera de guía se muestra enseguida una lista de órdenes con pequeños ejemplos que
podrá comprobar mediante el software.
Nota:
En este documento las líneas de órdenes de Matlab se encuentran en cuadros
sombreados dispuestas de tal manera que el usuario puede copiar las órdenes y proceder
a pegarlas en Matlab 7.0, para luego ser ejecutadas y verificar su validez.
1,2 REGRESIÓN LINEAL SIMPLE
La regresión lineal simple es el caso mas conocido por la literatura en la cual se supone
que los datos de laboratorio presentan una gráfica de comportamiento lineal como se
muestra en la figura.
X Y
x1 y1
x2 y2
x3 y3
…
xn yn
Para este caso se supone que debe existir una ecuación de la forma y m( x ) b .
Se espera que la recta que mejor se ajuste a los datos sea la que presente una menor
desviación a partir de los datos de laboratorio.
La técnica de regresión parte del hecho de que los coeficientes desconocidos de la recta
apropiados serán los que generen en total el menor error de desviación entre los datos de
laboratorio y la recta teórica.
Para cada dato la desviación está dada por la expresión: e m( x ) b y , de tal
modo que para la totalidad de los datos se determina el error total como la suma de los
errores parciales para cada experimento.
n
E m( x i ) b y i , sin embargo este método no es empleado en la realidad
i 1
ya que de hacerlo se incurre en el hecho de que un error positivo se anule con un error
negativo lo cual indicaría falsamente que no hay error. Para resolver esta dificultad los
matemáticos decidieron sumar el cuadrado de cada uno de los errores parciales a lo que
n
i 1
valores de (m) y (b) que mejor se ajusten serán los que hagan que el error cuadrático
total sea el menor posible por lo que se trata de un problema de optimización en varias
variables para lo cual se propone que las derivadas parciales con respecto a las variables
desconocidas del error cuadrático total se hagan cero así:
2 n
E m(x i ) b yi 2 0
m m i1
2 n
E m(x i ) b yi 2 0
b b i1
n n n
m x i b1 y i
i 1 i 1 i 1
n n n
m x b x i y i x i
2
i
i 1 i 1 i 1
m
x y n xy b
x xy y x 2
x n x 2 2
x n x
2 2
Ejemplo:
Durante un experimento se recolectaron los siguientes datos numéricos
correspondientes a las variables (x) y (y).
X Y
1 -2
2 0.1
3 2.5
4 4.7
5 6.5
6 9.8
7 11
8 14
9 16
10 20
20
15
10
-5
1 2 3 4 5 6 7 8 9 10
Se puede observar visualmente que los datos presentan un comportamiento lineal por lo
que se propone una ecuación de de la forma: y m( x ) b
Los coeficientes (m) y (b) se determinan mediante las siguientes ecuaciones:
m
x y n xy b
x xy y x 2
x n x
2 2
x n x
2 2
X Y XY X2
1.0000 -2.0000 -2.0000 1.0000
2.0000 0.1000 0.2000 4.0000
3.0000 2.5000 7.5000 9.0000
4.0000 4.7000 18.8000 16.0000
5.0000 6.5000 32.5000 25.0000
6.0000 9.8000 58.8000 36.0000
7.0000 11.0000 77.0000 49.0000
8.0000 14.0000 112.0000 64.0000
9.0000 16.0000 144.0000 81.0000
10.0000 20.0000 200.0000 100.0000
X Y XY X2
1.0000 -2.0000 -2.0000 1.0000
2.0000 0.1000 0.2000 4.0000
3.0000 2.5000 7.5000 9.0000
4.0000 4.7000 18.8000 16.0000
5.0000 6.5000 32.5000 25.0000
6.0000 9.8000 58.8000 36.0000
7.0000 11.0000 77.0000 49.0000
8.0000 14.0000 112.0000 64.0000
9.0000 16.0000 144.0000 81.0000
10.0000 20.0000 200.0000 100.0000
15
10
-5
1 2 3 4 5 6 7 8 9 10
En la gráfica puede apreciarse visualmente que la ecuación obtenida es una muy buena
aproximación.
Ejemplo:
Durante un experimento se obtuvo la siguiente tabla de datos:
y -5 -4 -3 -2 -1 0 1 2 3 4 5
y -50 -32 -20 -9 -2 2.5 4 2 -2 -9 -21
10
-10
-20
-30
-40
-50
-5 -4 -3 -2 -1 0 1 2 3 4 5
i 1
Ahora se proponen las derivadas de la sumatoria.
2
n
E 2 ax i2 bx i c y i x i2 0
a i 1
2
n
E 2 ax i2 bx i c y i x i 0
b i 1
2
n
E 2 ax i2 bx i c y i 0
c i 1
-10
-20
-30
-40
-50
-5 -4 -3 -2 -1 0 1 2 3 4 5
Solución:
Se visualizan diferentes combinaciones de las variables aplicando el logaritmo a cada
una de ellas, para este caso se consideran cuatro combinaciones así: L vs T, ln(L) vs T,
L vs ln(T) y ln(L) vs ln(T).
L vs T
2.6
2.4
2.2
1.8
1.6
1.4
1.2
0.8
0 0.5 1 1.5
ln(L) vs T
2.6
2.4
2.2
1.8
1.6
1.4
1.2
0.8
0.5
-0.5
0 0.5 1 1.5
Ln(L) vs Ln(T)
1
0.5
-0.5
-2.5 -2 -1.5 -1 -0.5 0 0.5
2.6
2.4
2.2
1.8
1.6
1.4
1.2
0.8
0 0.5 1 1.5
Nota Importante:
En técnicas de linealización eliminar valores negativos.
Debe tenerse en cuenta que si a los datos a los cuales se les va a aplicar las técnicas de
linealización presentan valores negativos, se recomienda eliminarlos antes de aplicar
logaritmos. La perdida de alguna información no afectará notablemente la ecuación de
regresión siempre y cuando no se presente perdida de mucha información.
Ejemplo
Durante un experimento se presentaron los siguientes datos. Determine la relación
matemática entre las variables.
x -7 -3 1 2 3 5 6 8 9 10
y 0.1346 0.6815 3.45 5.175 7.7625 17.4656 26.1984 58.9465 88.4197 132.6296
x=[-7 -3 1 2 3 5 6 8 9 10];
y=[0.1346 0.6815 3.45 5.175 7.7625 17.4656 26.1984 58.9465 88.4197 132.6296];
plot(x,y,'r.');
title('x vs y');grid;
120
100
80
60
40
20
0
-8 -6 -4 -2 0 2 4 6 8 10
x 1 2 3 5 6 8 9 10
y 3.45 5.175 7.7625 17.4656 26.1984 58.9465 88.4197 132.6296
120
100
80
60
40
20
0
1 2 3 4 5 6 7 8 9 10
figure;plot(x,y,'r.');title('x vs y');grid;
figure;plot(log(x),y,'r.');title('Ln(x) vs y');grid;
figure;plot(x,log(y),'r.');title('x vs Ln(y)');grid;
figure;plot(log(x),log(y),'r.');title('Ln(x) vs Ln(y)');grid;
Ln(x) vs y
140
120
100
80
60
40
20
0
0 0.5 1 1.5 2 2.5
x vs Ln(y)
5
4.5
3.5
2.5
1.5
1
1 2 3 4 5 6 7 8 9 10
Ln(x) vs Ln(y)
5
4.5
3.5
2.5
1.5
1
0 0.5 1 1.5 2 2.5
Se observa que la relación (x) vs (ln(y)) presenta un comportamiento lineal por lo que
se propone el cambio de variables: x 2 x , y 2 ln( y) y se propone la expresión de
regresión correspondiente: y 2 a ( x 2 ) b
x2=x;y2=log(y);
A=[sum(x2) size(x2,2) sum(y2);sum(x2.*x2) sum(x2) sum(x2.*y2)];
B=rref(A);
a=B(1,3);b=B(2,3);
x2 n a y 2
x2
2 x 2 b x 2 y 2
x2 n y 44 8 24.5037
=
320 44 166 .3968
2
x2 x2 x y
2 2 2
Se grafica la ecuación de regresión final y para ello se define un nuevo vector para las
(x) y un nuevo vector para las (y) que contenga mas información de modo que la gráfica
resultante parezca continua.
xt=-7:0.1:10;
yt=eval(vectorize('2.3*(1.5^xt)'));
plot(x,y,'ro');
hold on;
plot(xt,yt);title('x vs y');grid;
x vs y
140
120
100
80
60
40
20
0
-8 -6 -4 -2 0 2 4 6 8 10
Se observa finalmente que la curva obtenida se ajusta muy bien a los datos
proporcionados.
1,5 REGRESIÓN LINEAL MULTIVARIABLE.
La regresión lineal multivariable es muy común en la mayoría de fenómenos que
involucran problemas físicos o químicos.
i 1
Paso seguido se plantean las derivadas parciales del error cuadrático.
E 2 n
2 a 1x1i a 2 x 2i a 3 x3i a n xn i y i x1i 0
a 1 i 1
E 2 n
2 a 1x1i a 2 x 2i a 3 x3i a n xn i y i x 2i 0
a 2 i 1
E 2 n
2 a 1x1i a 2 x 2i a 3 x3i a n xn i y i x3i 0
a 3 i 1
…
E 2 n
2 a 1x1i a 2 x 2i a 3 x3i a n xn i y i xn i 0
a n i 1
n n
a x1 x1 a
i 1
1 i i 2 x 2i x1i a 3 x3i x1i a n xn i x1i y i x1i
i 1
n n
a x1 x 2
i 1
1 i i a 2 x 2i x 2i a 3 x3i x 2i a n xn i x 2i y i x 2i
i 1
n n
a x1 x3
i 1
1 i i a 2 x 2i x3i a 3 x3i x3i a n xn i x3i y i x3i
i 1
…
n n
a x1 xn
i 1
1 i i a 2 x 2i xn i a 3 x3i xn i a n xn i xn i y i xn i
i 1
Ejemplo.
Durante un experimento se obtuvieron los siguientes datos:
x 1 2 3 4 5 6 7 8 9
y 2 5 4 7 6 8 4 6 1
z 1.55 4.35 7.15 9.95 12.75 15.55 18.35 21.15 23.95
a x b y cn z
a x b xy c x zx
2
a xy b y 2 c y yz
xy
y 2 y yz 215 247 43 621.85
La eliminación gaussiana es:
1 0 0 0. 5
0 1 0 2. 3
0 0 1 1.25
Lo que corresponde a la función: z 0.5x 2.3y 1.25
X Y Z
1.0000 2.0000 1.5500
2.0000 5.0000 4.3500
3.0000 4.0000 7.1500
4.0000 7.0000 9.9500
5.0000 6.0000 12.7500
6.0000 8.0000 15.5500
7.0000 4.0000 18.3500
8.0000 6.0000 21.1500
9.0000 1.0000 23.9500
%%Ingreso de datos:
x=[1 2 3 4 5 6 7 8 9];
y=[2 5 4 7 6 8 4 6 1];
z=[1.55 4.35 7.15 9.95 12.75 15.55 18.35 21.15 23.95];
%%Se visualizan los datos en el espacio.
plot3(x,y,z,'r.');title('x,y vs z');
x,y vs z
25
20
15
10
0
8
6 10
8
4 6
2 4
2
0 0
Ahora se emplea la herramienta de rotado en tres dimensiones (Rotate 3D) cuyo icono
se indica . Luego de girar mediante el Mouse es posible encontrar una vista que
indica efectivamente los datos tienen un comportamiento lineal como se muestra
enseguida.
x,y vs z
25
20
15
10
5
0
0 5
1 2 3 4 5 6 7 8 10
9
El anterior método depende de la destreza del usuario para girar la gráfica en el espacio
hasta encontrar un comportamiento lineal, sin embargo hay otra forma mas precisa de
lograr el mismo cometido como se indica enseguida.
Premisa:
Si un grupo de puntos en tres dimensiones se encuentran sobre un plano, entonces la
visual que parte desde uno de estos puntos y se dirige hacia otro de los puntos dados
resulta en una vista en la cual todos los puntos se visualizan a lo largo de una línea.
Ahora mediante la orden de consulta (get) se observan las propiedades de los ejes del
sistema de coordenadas de la gráfica actual (gca = get current axes).
get(gca)
Resultado obtenido:
ActivePositionProperty = outerposition
ALim = [0 1]
ALimMode = auto
AmbientLightColor = [1 1 1]
Box = off
CameraPosition = [-12.9097 -14.5639 233.815]
CameraPositionMode = manual
CameraTarget = [5 4.5 20]
CameraTargetMode = auto
CameraUpVector = [0.689042 0.704539 2.97463]
CameraUpVectorMode = manual
CameraViewAngle = [15.5298]
CameraViewAngleMode = auto
CLim = [0 1]
CLimMode = auto
Color = [1 1 1]
CurrentPoint = [ (2 by 3) double array]
ColorOrder = [ (7 by 3) double array]
DataAspectRatio = [1.42857 1 5.71429]
……..
Puede observarse que hay dos propiedades que soporta la gráfica: CameraPosition y
CameraTarget. Mediante estas dos variables es posible controlar la visualización de los
datos en tres dimensiones.
Si modificamos los valores de las variables (CameraPosition) y (CameraTarget)
mediante la orden (set) de tal manera que (CameraPosition) coincida con un punto de la
gráfica y (CameraTarget) coincida con otro punto de la gráfica.
Como resultado se puede observar una vista de los datos desde la cual estos se
visualizan en línea recta como se muestra enseguida.
Vista resultante.
1,6 REGRESIÓN MULTIVARIABLE NO LINEAL.
Durante un experimento se obtuvo la siguiente tabla de datos.
X Y Z
0.1000 1.3000 0.0250
0.2000 4.5000 0.1087
0.3000 2.3000 0.2658
0.4000 1.5000 0.5135
0.5000 2.6000 0.8720
0.7000 3.1000 2.0190
0.8000 4.2000 2.8661
0.9000 1.4000 3.9425
1.3000 2.5000 11.4779
2.0000 2.7000 48.6680
Recomendación.
Se recomienda que por cada gráfica se utilice la herramienta de rotado hasta hacer
coincidir dos puntos, de esta manera si hay comportamiento lineal este quedará en
evidencia inmediatamente.
100
80
60
40
20
0
0
0.5
1 1
2
1.5 3
4
2 5
100 ln(x),y vs z
80
60
40
20
0
1
5
-2.5 -2 -1.5 -1 -0.5 0 0.5 1
x,ln(y) vs z
100
80
60
40
20
0
0
0.5
0
0.5 1
1
1.5
1.5
2 2
x,y vs ln(z)
6
-2
-4
0
6 1 1.5 2
0 0.5
ln(x),ln(y) vs z
100
80
60
40
20
0
0
0.5
1.5
2 0.5 1
-2.5 -2 -1.5 -1 -0.5 0
ln(x),y vs ln(z)
-1
-2
-3
0
2
4 1
-0.5 0 0.5
6 -2 -1.5 -1
-2.5
x,ln(y) vs ln(z)
6
-2
-4
0
2 1.5 2
0 0.5 1
ln(x),ln(y) vs ln(z)
-1
-2
-3 2
-3 -2 -1 0 1
1 0
Se concluye que la relación ln(x), y, ln(z) presenta un comportamiento lineal.
Resultado obtenido.
x y z zt (z-zt)
0.1000 1.3000 0.0679 0.0679 -0.0000
0.2000 4.5000 3.9045 3.9045 0.0000
0.3000 2.3000 1.4059 1.4059 0.0000
0.4000 1.5000 1.2836 1.2836 -0.0000
0.5000 2.6000 5.0137 5.0137 -0.0000
0.7000 3.1000 14.9032 14.9032 -0.0000
0.8000 4.2000 48.6592 48.6592 0.0000
0.9000 1.4000 5.9790 5.9790 -0.0000
1.3000 2.5000 31.1842 31.1842 0.0000
2.0000 2.7000 87.1873 87.1873 0.0000
Nota Importante.
Debe recordarse que en las técnicas de linealización antes de aplicar logaritmos deben
eliminarse las filas que contengan datos negativos.
1,7 REGRESIÓN POR MÍNIMOS CUADRADOS EN VARIABLE
CONTINUA.
Es otra técnica muy utilizada en la cual se busca un polinomio que se aproxima a otro.
b
Para resolver el problema se propone la integral. I (f g) 2 dx , el polinomio que
a
I I I I
0, 0, 0 , …, 0 para la cual se tiene un total de (n+1)
a 0 a 1 a 2 a n
ecuaciones con (n+1) incógnitas.
Ejemplo.
Dada la función f ( x ) e x , continua en el intervalo 1 x 3 , proponga el polinomio
de grado tres de la forma. g(x) a 0 a 1 x a 2 x 2 a 3 x 3 que mejor se aproxime.
20
18
16
14
12
10
2
1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3
x
t x
t1 x1
t2 x2
t3 x3
: :
: :
tn xn
Se propone la suma de los cuadrados de las desviaciones para cada uno de los datos.
n
E 2 (a 0 a 1Sen(t ) a 2Sen(2t ) b1Cos(t ) b 2 Cos(2t ) x ) 2
i 1
Para minimizar la suma se plantean las derivadas de la sumatoria con respecto a cada
una de las variables desconocidas.
E 2 n
2 (a 0 a 1Sen(t ) a 2Sen(2t ) b1Cos(t ) b 2 Cos(2t ) x ) 0
a 0 i 1
E 2 n
2 (a 0 a 1Sen(t ) a 2Sen(2t ) b1Cos(t ) b 2 Cos(2t ) x )Sen(t ) 0
a 1 i 1
E 2 n
2 (a 0 a 1Sen(t ) a 2Sen(2t ) b1Cos(t ) b 2 Cos(2t ) x )Sen(2t ) 0
a 2 i 1
…
E 2 n
2 (a 0 a 1Sen(t ) a 2Sen(2t ) b1Cos(t ) b 2 Cos(2t ) x )Sen(nt ) 0
a n i 1
E 2 n
2 (a 0 a 1Sen(t ) a 2 Sen(2t ) b1Cos(t ) b 2 Cos(2t ) x )Cos(t ) 0
b1 i 1
E 2 n
2 (a 0 a 1Sen(t ) a 2Sen(2t ) b1Cos(t ) b 2 Cos(2t ) x )Cos(2t ) 0
b 2 i 1
…
E 2 n
2 (a 0 a 1Sen(t ) a 2Sen(2t ) b1Cos(t ) b 2 Cos(2t ) x )Cos(nt ) 0
b n i 1
n n n n
a 0 1 a 1 Sen(t ) a 2 Sen(2t ) a n Sen(nt )
i 1 i 1 i 1 i 1
n n n n
b1 Cos(t ) b 2 Cos(2t ) b n Cos(nt ) x
i 1 i 1 i 1 i 1
n n n n
a 0 Sen(t ) a 1 Sen 2 (t ) a 2 Sen(t )Sen(2t ) a n Sen(t )Sen(nt )
i 1 i 1 i 1 i 1
n n n n
b1 Sen(t )Cos(t ) b 2 Sen(t )Cos(2t ) b n Sen(t )Cos(nt ) Sen(t ) x
i 1 i 1 i 1 i 1
n n n n
a 0 Sen(2t ) a 1 Sen(2t )Sen(t ) a 2 Sen(2t )Sen(2t ) a n Sen(2t )Sen(nt )
i 1 i 1 i 1 i 1
n n n n
b1 Sen(2t )Cos(t ) b 2 Sen(2t )Cos(2t ) b n Sen(2t )Cos(nt ) Sen(2t ) x
i 1 i 1 i 1 i 1
:
:
n n n n
a 0 Cos(nt ) a 1 Cos(nt )Sen(t ) a 2 Cos(nt )Sen(2t ) a n Cos(nt )Sen(nt )
i 1 i 1 i 1 i 1
n n n n
b1 Cos(nt )Cos(t ) b 2 Cos(nt )Cos(2t ) b n Cos(nt )Cos(nt ) Cos(nt ) x
i 1 i 1 i 1 i 1
n Sen(t) Sen(2t)
Cos(t) Cos(2t)
x
Sen(t ) Sen(t)Sen(t) Sen(t)Sen(2t) Sen(t)Cos(t) Sen(t)Cos(2t)
xSen(t)
Sen(2t )
Sen(2t)Sen(t) Sen(2t)Sen(2t) xSen(2t)
Sen(2t)Cos(t) Sen(2t)Cen(2t)
Cos(nt ) Cos(nt)Sen(t) Cos(nt)Sen(2t) Cos(nt)Cos(t) Cos(nt)Cos(2t) xCos(nt)
Paso seguido se resuelve el sistema de ecuaciones y finalmente se define el polinomio
de interpolación.
Ejemplo.
Durante un experimento se obtuvo la siguiente tabla de datos.
t 0 0.5 1 1.5 2 2.5 3 3.5 4
y 0 0.4809 1.5889 2.601 2.9985 2.8429 2.6149 2.6897 2.9516
%Ingreso de datos.
t=0:0.5:4;
y=[0 0.4809 1.5889 2.6010 2.9985 2.8429 2.6149 2.6897 2.9516];
%Planteamiento de la matriz ampliada del sistema de ecuaciones.
A=[size(t,2) sum(cos(t)) sum(cos(2*t)) sum(y);sum(cos(t)) sum(cos(t).*cos(t))
sum(cos(2*t).*cos(t)) sum(y.*cos(t));sum(cos(2*t)) sum(cos(t).*cos(2*t))
sum(cos(2*t).*cos(2*t)) sum(y.*cos(2*t))];
%Eliminación Gaussia del sistema de ecuaciones.
B=rref(A)
%Interpretación de resultados
a=B(1,4);b=B(2,4);c=B(3,4);
yt=a+b*cos(t)+c*cos(2*t);
[t' y' yt'];
Resultados obtenidos
9 1.3088 1.3328 18.7684 1 0 0 2
1.3088 5.1664 0.3374 9.0977 → 0 1 0 1.3
1.3328 0.3374 4.4644 0.0208 0 0 1 0.7
t y' yt
0 0 -0.0000
0.5000 0.4809 0.4809
1.0000 1.5889 1.5889
1.5000 2.6010 2.6010
2.0000 2.9985 2.9985
2.5000 2.8429 2.8429
3.0000 2.6149 2.6149
3.5000 2.6897 2.6897
4.0000 2.9516 2.9516
Si queremos podemos generar una tabla con mayor cantidad de datos de modo que se
pueda visualizar la función obtenida y compararla con los datos de laboratorio.
%Ingreso de datos.
t=0:0.5:4;
y=[0 0.4809 1.5889 2.6010 2.9985 2.8429 2.6149 2.6897 2.9516];
%Nueva tabla de datos.
tt=0:0.01:4;
yt=2-1.3*cos(tt)-0.7*cos(2*tt);
plot(t,y,'r.');
hold on
plot(tt,yt,'b--');
3.5
2.5
1.5
0.5
0
0 0.5 1 1.5 2 2.5 3 3.5 4
Dada la función f(x) periódica con periodo (T) definida en el intervalo –T/2≤x≤T/2 se
propone la función de aproximación de la forma:
Para estimar el valor de los coeficientes: a0, a1, a2, ···,an, b1, b2···bn , se plantea la
integral:
T/2
I (f g )
2
dx , luego se plantean las ecuaciones de la forma:
T / 2
dI dI dI dI dI
0, 0, 0 , …, 0, 0 ,….
da 0 da1 da 2 db1 db2
Para hacer más breve la demostración se propone:
T / 2 T / 2
f
T/2
I 2
2f (a 0 a 1sen(x ) b1 cos(x )) (a 0 a 1sen(x ) b1 cos(x )) 2 dx
T / 2
dI
0;
da 0
T/2 T/2 T/2 T/2
2
T / 2
fdx 2a 0 dx 2a
T / 2
1
T / 2
sen(x )dx 2b1 cos(x)dx 0
T / 2
dI
0;
da1
T/2 T/2 T/2 T/2
2 fsen(x )dx 2a 0 sen(x )dx 2a 1 sen (x )dx 2b1 sen(x ) cos(x )dx 0
2
T / 2 T / 2 T / 2 T / 2
dI
0
db1
T/2 T/2 T/2 T/2
2 f cos(x )dx 2a 0 cos(x)dx 2b cos (x )dx 2a 1 sen(x ) cos(x )dx 0
2
1
T / 2 T / 2 T / 2 T / 2
Todas las ecuaciones se pueden simplificar por (2) y se obtiene el sistema de ecuaciones
siguiente:
T/2 T/2 T/2 T/2
a0 dx a
T / 2
1
T / 2
sen(x )dx b1
T / 2
cos(x )dx fdx
T / 2
T/2 T/2 T/2 T/2
Para evaluar estas integrales se deben tener en cuenta las siguientes identidades
trigonométricas:
1 Cos(2A) 1 Cos(2A)
sen 2 A , cos2 A
2 2
cos(A B) cos(A B)
senAsenB ,
2
cos(A B) cos(A B) sen(A B) sen(A B)
cos A cos B , senA cos B ,
2 2
T/2 T/2
T/2 T/2
T / 2 T / 2
2 2
T/2 T/2
1 1
cos (nx )dx dx (T) T / 2
2
T / 2 T / 2
2 2
T/2
2
T T/ 2
b1 f ( x ) cos(x )dx
f ( x ) a 0 a n sen(nx ) b n cos(nx ) , tal que:
n 1 n 1
T/2 T/2 T/2
1 2 2
a 0 f ( x )dx , a n f ( x )sen(nx )dx , b n f ( x ) cos(nx )dx
T T / 2 T T / 2 T T / 2
Ejemplo.
Dada la función de onda cuadrada siguiente.
1 si 0 x 3
f (x)
T6
Determine su aproximación de Fourier.
0 si 3 x 0
f (x)
1 si 0 x 3
Resultado obtenido.
2 2
g( x ) 1 / 2 Sen( x ) Sen(x )
3 3
0.8
0.6
0.4
0.2
-0.2
-3 -2 -1 0 1 2 3
x
1,9 REGRESIÓN MULTIVARIABLE EN VARIABLE CONTINUA
(METODO GENERALIZADO)
Dada una función f(x), se trata de encontrar otra función g(x) que se aproxima lo mejor
posible a la función original en el intervalo a≤x≤b. De tal modo que g(x)≈f(x) en el
intervalo propuesto.
Para estimar los coeficientes c1,c2, …., cn que hacen que g(x) sea la mejor
aproximación a f(x), se plantea la expresión siguiente.
Se propone la integral.
b
I (f g) 2 dx
a
I b 2 b b 2
a (f )dx 2 a (fg)dx a (g )dx
ck ck ck ck
b 2
(f )dx 0 puesto que no depende de ( c k )
c k a
La integral
b b
La integral a (fg)dx a f (c1g1 ( x ) c2g 2 ( x ) c3g3 ( x ) cn g n ( x ))dx
ck ck
b
a f ( x )(c1g1 ( x ) c2g 2 ( x ) c3g 3 ( x ) cn g n ( x ))dx a f ( x )g k ( x )dx
b
ck
La integral.
b 2 b
a (g )dx a (c1g1 ( x ) c2g 2 ( x ) c3g 3 ( x ) cn g n ( x )) dx
2
ck ck
Se desarrollan solo las expresiones que contienen el factor ( c k ) debido a que en las
restantes la derivada parcial se anula, luego se obtiene lo siguiente:
b
a (2c1ck g1g k 2c2ck g 2g k 2c3ck g 3g k ck ck g k g k 2cn ck g n g k )dx
ck
ck a a a a a
b b b b b
c1 (g1g1 )dx c 2 (g 2g1 )dx c3 (g 3g1 )dx c n (g n g1 )dx f ( x )(g1 )dx
a a a a a
b b b b b
c1 (g1g 2 )dx c 2 (g 2g 2 )dx c3 (g 3g 2 )dx c n (g n g 2 )dx f ( x )(g 2 )dx
a a a a a
b b b b b
c1 (g1g 3 )dx c 2 (g 2g 3 )dx c3 (g 3g 3 )dx c n (g n g 3 )dx f ( x )(g 3 )dx
a a a a a
:
b b b b b
c1 (g1g n )dx c 2 (g 2g n )dx c3 (g 3g n )dx c n (g n g n )dx f ( x )(g n )dx
a a a a a
Este sistema de ecuaciones se puede expresar como una ecuación matricial así:
b g g dx
g g dx c f (g )dx
b b b
a 1 1 g g dx g g dx
b
1 2 1 3 1 n 1
a a a a
b
1
b b b
a g 2g1dx g g dx g g dx g g dx c f (g )dx
b
2 2 2 3 2 n 2 2
a a a a
b b b b c
a g 3g1dx g g dx g g dx g g dx f (g )dx
b
3 2 3 3 3 n
3
3
a a a a
b c b
a n n n f (g n )dx
b b b
g n g1dx a n 2 a n 3
g g dx g g dx g g dx
a a
b g g dx b b
b f (g )dx
b
a 1 1 a g1g 2dx a a
g1g 3dx
g1g n dx c1 a 1
b b b b b
a g 2g1dx a g 2g 2dx a g 2g3dx a g 2g n dx c2 a f (g 2 )dx
b b b b c b
a g 3g1dx a g3g 2dx a g3g3dx a g3g n dx 3 a f (g3 )dx
b c b
a g n g 2dx a g n g3dx a g n g n dx n a f (g n )dx
b b b
g n g1dx
a
Esta es la forma generalizada y se puede probar que se ajusta para cualquier caso.
T / 2dx
T/2
T/2
T/2
T/2
T/2
sen(x )dx sen(2x )dx Cos(nx )dx
f ( x )dx
T / 2 T / 2 T / 2 T / 2
T/2
T / 2 sen(x )dx
T/2
T/2
sen(x )sen(2x )dx sen(x )Cos(nx )dx f ( x )sen(x )dx
T/2 T/2
sen (x )dx
2
T / 2 T / 2 T / 2 T / 2
T/2
T / 2 sen(2x )dx T / 2
T/2
T / 2
T/2
T / 2
T/2
T / 2 f (x)sen(2x)dx
T/2
sen ( x )sen ( 2x ) dx sen 2
( 2 x ) dx sen ( 2 x ) Cos( nx ) dx
T/2
Cos(nx )dx T / 2 Cos(x)sen(x)dx T / 2 Cos(nx)sen(2x)dx T / 2 Cos (nx)dx T / 2 f (x)Cos(nx)dx
T/2 T/2 T/2 T/2
2
T / 2
Se resuelven cada una de las integrales y se obtiene le siguiente expresión:
T/2
T 0 0 0 T / 2
f ( x )dx
T / 2 f (x )sen(x )dx
T/2
0 T/2 0 0
0 T/2
T / 2 f ( x )sen(2x )dx
T/2
0 0
0 0 0 T / 2 T/2
T / 2 f ( x )Cos(nx )dx
1 T/2
T T / 2
f ( x )dx
1 0 0 0
2 T / 2
T T / 2
0 0 f ( x )sen ( x ) dx
0 1
0 0 1 0 2 T/2
T T / 2
f ( x )sen(2x )dx
0 0 0 1
2 T/2
T T / 2
f ( x ) Cos ( n x ) dx
T/2
f ( x )dx
T T / 2 e
nxi
0 0
T/2
0 0 0 T 0 e ( n 1) xi f ( x )dx
T / 2
0 0 0 0 T / 2 e 0xi f ( x )dx
T / 2
T 0 0 0 T / 2 e nxi f ( x )dx
T / 2
Solución:
Puesto que se trata de un polinomio de aproximación de grados tres, se trata de un
conjunto de polinomios de la forma: B={1 x x2 x3} de tal modo que el polinomio de
aproximación g(x) se define como a0+a1x+a2x2+a3x3=g(x)