SPLINES UN MÉTODO PARA AJUSTAR CURVAS NO LINEALES IRENE SÁNCHEZ GUEVARA* INTRODUCCIÓN Uno de los problemas en economía y administración consiste en determinar el comportamiento de la variable demanda de un bien a través del tiempo o con respecto a la variable precio, con el objeto de hacer planeaciones y toma de decisiones. El planteamiento del problema es: Dada una tabla de datos x y xl y, Xn Yn Donde la variable x puede ser el tiempo o el precio de un bien y la demanda. Y una gráfica (x-y) y x Se desea obtener f(x). Profesora-investigadora del Departamento de Política y Cultura, uAM-Xochimilco. 31 Reflexiones Finisec ulares : las Matemáticas en las Ciencias Sociales ANTECEDENTES Los métodos de suavizamiento Cuando se cuenta con un conjunto de observaciones hechas cronológicamente en intervalos de tiempo fijos (a este conjunto se le denominará serie de tiempo económica), los procedimientos usuales para determinar el comportamiento de la variable demanda son: promedios móviles, suavizamiento exponencial, y Winters. La construcción de modelos con estos métodos se basa en descubrir un patrón de comportamiento de los datos en el pasado y extrapolar para hacer predicciones futuras. Los métodos de promedios móviles, suavizamiento exponencial y Winters resuelven el problema parcialmente porque solo generan otra tabla de datos en los mismos intervalos, sin embargo sus cálculos en principio son fáciles, pero lo importante es que en general van construyendo el nuevo dato por "pedazos", es decir toman un subconjunto de datos y obtiene el nuevo dato. Los promedios móviles simples toman un subconjunto de datos y obtiene el promedio para la observación posterior. Los PM dobles o lineales construyen rectas sobre un conjunto de datos y las van uniendo, lo que da un "movimiento', es decir trata de ajustar los datos a una funcional que corresponde a un conjunto de rectas. Dato calculado a partir de la recta que paso por los tres datos originales y X 32 Irene Sánchez Guevara Los de suavizamiento exponencial hacen una combinación lineal entre el dato pasado y un pronóstico pasado para obtener el dato calculado actual, para lo cual usa un parámetro (x. Y3 f3 -a- 1 2 3 f4 =ay3+(1-a)f3 4 Estos dos conjuntos de métodos son útiles cuando se trata de comportamiento constantes o con tendencia, pero si se trata de datos que además presenten estacionalidad, un método adecuado será el de Winters que además de generar las tendencias genera índices estacionarios utilizando tres parámetros. En la siguiente gráfica se muestra un ejemplo de una serie cuyos datos tienen un comportamiento claramente estacional, observe que el método winters sólo construye otro conjunto discreto de datos y no es posible tener cálculos para medidas intermedias lo cual representa una carencia importante cuando se quiere estudiar las ciclicidades. y ! _ • x Método de Winters 33 Reflexiones Finiseculares: las Matemáticas en las Ciencias Sociales Estos modelos son de prueba y error debido a que la elección de los parámetros es subjetiva, lo cual constituye otra de sus desventajas, ya que el proceso para obtener el mejor modelo consiste en proponer parámetros, calcular los errores y haces análisis de error y así la facilidad de los cálculos desaparece totalmente al convertirse en un problema combinatorio. Un esquema del proceso que se sigue en estos procesos es el siguiente: Da tos ^X1 t y T Elección del Modelo ¿Patrón de comportamiento' y Cálculos x o t 1 y 1 ¡(.r Análisis del error No ¿Aceptable? >------------------ - 34 Irene Sánchez Guevara AJUSTE POLINOMIAL Cuando lo que se quiere es obtener la relación funcional entre el precio de un bien y su demanda, una de las técnicas más utilizadas es la de mínimos cuadrados que consiste en: Dada una tabla de observaciones: X y xi Yi xn Yn Donde "x" es el precio, "y" la demanda. La gráfica es la siguiente: Se desea obtener el olinomio: Y= x p No+Nlx+fl2 Matricialmente 2 +..+Nkxk +E Y= X/3 +E 35 Reflexiones Finiseculares : las Matemáticas en las Ciencias Sociales MÍNIMOS CUADRADOS Y para obtener la estimación del vector de coeficientes R se aplica la técnica mínimos cuadrados: Mínj(y - 9¡)2 Mín = 1 e2 XXb = Xy b = (XX)-'X'y Donde: yx2 1 X= Ex] b= y= I: xK La validación del modelo recae en las pruebas de hipótesis para probar independencia y normalidad n los errores y: E(b)=,8i Además de hacer el análisis de varianza y correlación. Sin embargo, la mayor desventaja está en la inestabilidad de los cálculos de la inversa de la matriz XTX 36 Irene Sánchez Guevara Los SPLINES Para ajustar una curva a un conjunto de datos grande que no presenta un patrón de comportamiento lineal o constante, sino que presenta un patrón estacionario por ejemplo y además con tendencia exponencial, y que además deseamos tener una función continua para poder obtener datos intermedios (sobre todo cuando se estudian las ciclicidades), ya hemos visto que los métodos de suavizamiento o los de mínimos cuadrados no son muy adecuados, entonces en este trabajo hacemos la propuesta de utilizar las funciones spline. El alisamiento o suavizamiento con funciones spline reconstruye una función a partir de un conjunto discreto de datos utilizando las ideas de los métodos de suavizamiento y la técnica de mínimos cuadrados. La definición técnica de las funciones spline es: Dados los nodos (puntos) T:x1<x2<...<x„ (n_2p-1), por una función spline natural de orden 2p-1 y con nodos T, entenderemos una función de clase C2P-2 en todo R tal que: a) Es polinomial de grado no mayor que 2p-1 en [xi, xi-1], i= 1, 2 ...,n-1 b) Es polinomial de grado no mayor que p-1 en (-oo,x1) y (x,,,oo) Esta definición nos dice que por cada par de nodos se construye un polinomio de grado p-1 y que se une `lisamente" en cada nodo interior. En este trabajo utilizaremos splines naturales cúbicas, es decir, por cada par de nodos se contruye un polinomio cúbico, y en cada nodo la primera y segunda derivada coinciden, logrando una funcional suave en todo el dominio. LA TÉCNICA DE SUAVIZAMIENTO CON SPLINE CÚBICA El problema de suavizamiento constituye en encontrar una función que pueda interpolar; es decir, "pasar" por los nodos o solo seguir la tendencia de ellos y consiste en 37 Reflexiones Finiseculares: las Matemáticas en las Ciencias Sociales Donde: Hallar S, (x) tal que : Mín ^A [f] _ O, [s, feCP (a,b ) La primer parte de la funcional corresponde a los mínimos cuadrados, la segunda es la minimización del área de la curva ; es decir es la parte suavizadora y 1 es el parámetro de alisamiento, un número real y positivo que si vale cero se obtiene la función s(x) para interpolar, mientras que si tiende a infinito se obtendrá la recta mínimos cuadrados, w son los pesos que podrían corresponder a las desviaciones estándar de la variable y. 2 [f=^ f(x^)-yr 2+a J[21 (t)t rr i=1 uw1 Las condiciones del mínimo deben cumplir con: fN 0 en [xi,xi +1 1i=1,n-1 f"(xl f"(xm) o f "(x¡) - f "(xi) = 0, i = 2, n -1, k = 0,1,2 x f m( i) fM(xn ) 38 fm(xi) f(x n) -yn 8n (x45 - y` 2 Irene Sánchez Guevara sp(x)= al +bi(x- xi) +ci(x-xi)2 +di(x-xi)3 para x E [xi, xi_1 ] ¡=1,n-1, p= 1 2,1 El mínimo corrresponde al spline natural cúbico s(x) (QTD2Q+pT)c=PQTy Después de derivar y aplicar las condiciones del mínimo se obtiene los coeficientes del spline a = y - p-1D2QC bi = Aa, - cihi - dihil di = 3 AC` hi = [xi+1 - xi] t i Matriz tridiagonal T Donde: tii=2(hi-hi1) i=1,...,m-2 para ¡ =1,..., m-3 ti+li = tii+l = h3, tij = 0 en cualquierotro caso D = diagonawl, w2,... , wn LL Matriz Q Donde: 1 1 1 qi +li =---hi hi+1 1 qi +2 iqi• = 0 hi+2 y i=1,...,m-2 en otro caso 39 Reflexiones Finiseculares: las Matemáticas en las Ciencias Sociales Como se puede observar el cálculo fuerte está en la solución del sistema (1), pero debido a que las matrices son tridiagonales, la solución es muy estable desde el punto de vista numérico. El cálculo del parámetro de alisamiento, que recordemos es uno de los problemas de los métodos de suavizamieno, ese se hace mediante una función de discrepancia.' El algoritmo para esta técnica es el siguiente: Algoritmo o Entrada (Cs>o:p>o) 1 Calculo del vector c 1.1 Resolución del sistema (Q`D'Q +PkTF=PkQ`Y 1.2 Cálculo de la función de discrepancia 1.2.1 v = pk'c 1.2.2 t0(Pk) = v 'Q`D2Qv 2 Para 1_>1 se prueba convergencia 2.1 I(p(pk)-Csl«, 2. 2 j & -Pk-II«2 _ ¿ Existe convergencia ? Sí, ir a 5; No, ir a 3 3 Resolución del sistema: (Q`DZQ + pkT)avP = Tv Y se calcula (P'(Pk) = 2v`Q`D2Q P ' Ver Sánchez Guevara, Irene, Alisamiento de Datos. Teoría y métodos numéricos. Avances de investigación , núm. 16, UAM, DCSH , Política y Cultura, México, 1991. 40 Irene Sánchez Guevara 4 Cálculo del parámetro Pk+l - Pk + rP(Pk ) 9, V k regresar al paso 1 5 Cálculo de los coeficientes Spline a=Y-Pk'D2Qc d . =AC' 3h; i = l m- 1 d.=AC, - i=1m-1 3h; 6 Fin Observar que solo se hizo un cálculo del sistema : (Q`D2Q)+PkT) Se hizo un programa para probar el algoritmo , el siguiente es el diagrama del programa 41 Reflexiones Finiseculares : las Matemáticas en las Ciencias Sociales Alisa Lee: Datos .y cota Alisi n t 42 Alisa 1 cálculo de coeficien te spline Impresión Opciones 1. Otras evaluaciones 2. Cambio de Cs 3. Oro conjunto de. datos 4. Terminar Irene Sánchez Guevara EJEMPLO Considere el siguiente conjunto de datos que corresponde a los pagos mensuales de teléfono de los últimos dos años de una compañía Mes t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 Pago y 362 385 432 341 382 409 498 387 473 513 582 474 544 582 681 557 628 707 773 592 627 725 854 661 Gráfica 1 Después de introducir los datos en el programa alisa, nos da una cota máxima de 82,300 aproximadamente, con lo que se tendría la recta de mínimos cuadrados. Así con una cota de 80,000 se tiene un ajuste a una recta de mínimos cuadrados. 43 Reflexiones Finiseculares: las Matemáticas en las Ciencias Sociales Mes t 1 Pago 362 yea l cota=80,000 datos alisados cota= 80,000 369.04 2 3 4 5 6 7 8 9 10 11 12 13 385 432 341 382 409 498 387 473 513 582 474 544 376.48 383.35 390.48 401.22 416.14 433.59 452.20 473.65 496.40 518.00 538.22 560.22 14 15 16 17 582 681 557 628 583.70 606.30 626.34 646.05 300 18 19 20 21 22 707 773 592 627 725 663.95 676.80 685.80 697.53 712.77 100 23 24 854 661 726.27 734.57 900 ♦ '' 800 700 • ♦ 600 ♦ ♦ ' • ♦ 500 $ 400 200 0 0 10 20 30 mes Gráfica 2 Si se elige la cota de 40,000, se reproduce con un mínimo error los datos de la tabla, sólo que ahora se tiene una función continua. A continuación se presenta los cálculos y las gráficas con dos cotas diferentes: 44 Irene Sánchez Guevara Pago 362 385 432 341 382 409 498 387 y cal Cs=80,000 369.04 376.48 383.35 390.48 401 . 22 416.14 433.59 452. 20 y cal con Cs=40,000 361.80 385.60 430.90 342.16 381.10 410.19 496.20 388.70 473 473.65 471.80 513 582 474 544 582 681 557 628 707 773 592 627 725 496.40 518.00 538.22 560.22 583.70 606.30 626.34 646.05 663.95 676.80 685.80 697.53 712.77 514.12 580.44 475.60 542.80 583.34 679.14 558.64 627.10 707.98 771.24 593.62 626.16 726.05 854 726.27 852.65 661 734. 57 661.57 Gráfica 3 45 Reflexiones Finiseculares: las Matemáticas en las Ciencias Sociales CONCLUSIONES La técnica de suavizamiento o alisamiento con funciones Spline toma las ventajas de los métodos de suavizamiento y el procedimiento presentado calcula automáticamente el parámetro de alisamiento, es más eficiente que la interpolación polinomial global porque los cálculos matriciales son más eficientes, además genera una función sobre todo el intervalo de observación con lo que se pueden obtener cálculos intermedios. En este trabajo se presentó la técnica solo para una variable, en trabajos posteriores se presentará para varias variables. El algoritmo se implementó en lenguaje FORTRAN, posteriormente se hará la programación con MATLAB. 46 REFERENCIAS BIBLIOGRÁFICAS Ahlberg; Nilson Walsh. The Theory Of Splines And TheirApplications, Mathematics in Science and Engineering, vol 38, Academic Press, N.Y. 1967. Makridakis, Wheelwright, McGee. Forecasting Methods and Applications, 2°Ed. Wiley, 1983. Reinsh, C. H. Smoothing by Sline Funtions, Number. Math. lo 1967. pp. 177-183. Sánchez G. I. Alisamiento de datos teoría y métodos numéricos, col. Avances de Investigación núm. 16, UAM-X, México. 47