Sei sulla pagina 1di 4

AJUSTE MINIMOS CUADRADOS CON MATLAB

Prof. Oscar Tinoco G.

El Mtodo de ajuste por Mnimos Cuadrados sirve para encontrar una funcin y = f(x, 1, 2, . . . , m), en la que habr que calcular los parmetros 1, 2, . . . , m. Esta funcin debe ser la que se ajuste lo mejor posible a una tabla de valores que relaciona las dos variables x e y obtenida experimentalmente: Ejemplo: Dada la tabla de valores, xi 1 2 3 4 yi 2,1 4,3 6 7,8 Encontrar la funcin de la forma y = ax + b que mejor se ajuste a los datos. Como se trata de una funcin polinmica se puede hacer directamente. Introducimos primero la tabla de valores en dos variables: >>xi=[1 2 3 4] >>yi=[2.1 4.3 6 7.8] El comando a utilizar es polyfit(xi,yi,k), donde k es el grado del polinomio que queremos obtener. Por lo Tanto, para obtener una recta k = 1: >>c=polyfit(xi,yi,1) Que nos da como resultado los coecientes de la recta: c= 1.8800 0.3500 Es decir, que la recta que hemos encontrado es, y = 1,88x + 0,35 Para representar la informacin obtenida grcamente: Primero dibujamos la tabla de valores, por ejemplo:

De esta forma conseguimos que dibuje slo los puntos, con asteriscos o con cualquier otro formato. Para dibujar la recta, lo hacemos como para dibujar cualquier funcin. Generamos una tabla, (que llamaremos con un nombre diferente de xi para no borrar la tabla de los datos del problema):

>>plot(xi,yi,r*) De esta forma conseguimos que dibuje slo los puntos, con asteriscos o con cualquier otro formato. Para dibujar la recta, lo hacemos como para dibujar cualquier funcin. Generamos una tabla, (que llamaremos con un nombre diferente de xi para no borrar la tabla de los datos del problema): >>xp=linspace(1,4,20); Para para calcular los valores de xp en la recta y = 1,88x + 0,35 podemos utilizar el comando polyval que evala el polinomio utilizando los coecientes, que tenamos en la variable c: >>yp=polyval(c,xp); >>hold on % para mantener el dibujo anterior Y, por ltimo, >>plot(xp,yp)

Ejercicio 1 Mediante el Mtodo de Mnimos Cuadrados, elegir una funcin cuadrtica del tipo f(x) = ax2 + bx + c para los valores de x e y dados por la siguiente tabla xi 7 8 9 10 11 12 13 yi 7,4 8,4 9,1 9,4 9,5 9,5 9,4 Calcular la funcin f(x). Representar la funcin obtenida junto a los datos de la tabla con una banda alrededor de la grca de f(x), dentro de la cual se encuentren los puntos de la tabla a un nivel del 95 %.

Consideremos los datos del Ejercicio 1.1 referidos al censo de Estados Unidos. Para determinar la curva

de mejor ajuste, basta escribir un archivo de funcin S.m como el que aparece a continuacin (obsrvese que se ha considerado como instante inicial t0 el primer valor del vector t de los tiempos):

Despus, basta utilizar la orden fminsearch adecuadamente: >> p = fminsearch(S,*3.9, 170, 0.5+) p= 3.9974 202.2683 0.0310

Ejercicio: Representar grficamente el ajuste de datos para este ejemplo.

Forma analtica:

Potrebbero piacerti anche