Tema 6: Aproximación. TEMA 6: APROXIMACIÓN. 6.1.- INTRODUCCIÓN. Nos ocuparemos en este capítulo del concepto y métodos de la aproximación de funciones, en sus dos modalidades de aproximación discreta y aproximación continua. Se pondrá mayor énfasis en los métodos de aproximación lineal, pero se considerarán también casos característicos de aproximación no lineal, todos ellos enmarcados en el método de los mínimos cuadrados que protagoniza el desarrollo del capítulo por ser el de mayor interés e importancia para la práctica de la ingeniería. En muchos problemas de ingeniería es necesario trabajar a menudo con conjuntos de datos experimentales (x1,y1),..., (xN,yN), donde las abscisas {xk} (distintas entre sí) representan la variable independiente, y las ordenadas {yk} la medida realizada. Interesa entonces determinar la función y = f (x) que mejor se aproxime a los datos, proceso matemático que se denomina aproximación discreta en consonancia con el número finito N de puntos (xi,yi) que se utilizan como datos de partida. En ocasiones la representación gráfica de los datos puede ser fuente de información que nos permita elegir el tipo de función f que mejor se ajusta a los mismos; pero también puede ocurrir que, conociendo suficientemente el fenómeno físico en estudio, dispongamos de un modelo matemático y de la forma de la función f que lo describe, a falta de mayor concreción en parámetros físicos del modelo o, simplemente, de mayor precisión en las medidas tomadas por limitaciones instrumentales y humanas. En ambos casos, lo que queda es hallar los valores más adecuados de los M parámetros {cj (j = 1,...,M)} que definen la función matemática f (x,c1,...,cM) que mejor aproxima el cumplimiento de las N condiciones estipuladas: yi = f (xi,c1,...,cM) (i = 1,...,N) (1) Estas condiciones representan un sistema algebraico de ecuaciones lineales que habrá que resolver para determinar los parámetros {cj (j = 1,...,M)}. Ejemplo 1: Se trata de ajustar los 3 coeficientes de la función polinómica de grado 2: f (x) = c1 + c2x + c3x2 a un conjunto de 5 datos (puntos) disponibles (xi,yi) (i = 1,...,5). Las ecuaciones (1) indican que la curva y = f (x) debe pasar por los 5 puntos (xi,yi) definidos como datos para este ejemplo. En este caso las ecuaciones (1) se particularizan en el siguiente sistema lineal de 5 ecuaciones y 3 incógnitas {c1, c2, c3}: 1 1 1 1 1 x1 x2 x3 x4 x5 x12 y1 2 x2 c1 y2 x32 c2 y3 Ac b x42 c3 y4 y x52 5 que en formato matricial en lo que sigue representaremos en la forma: A c b, indicando con A la matriz de coeficientes, c el vector de incógnitas y b el vector término independiente. 71 Tema 6: Aproximación. Obsérvese que el sistema está sobredeterminado porque tiene mayor número de ecuaciones que de incógnitas; por tanto, en general, no existirá solución, y de ahí el signo utilizado en lugar del habitual =. Ello quiere decir que resolveremos el sistema rectangular de ecuaciones de manera aproximada buscando el mejor (o menos malo) conjunto de incógnitas {c1, c2, c3}; el significado de mejor y el método de resolución son aspectos a desarrollar a lo largo del capítulo. El significado geométrico de la solución es el adelantado al plantear el problema: al calcular {c1, c2, c3} estaremos definiendo el polinomio de grado 2 que mejor se acerca a los 5 puntos proporcionados como datos. Una conclusión importante del comentario anterior es que en este capítulo dedicado a la aproximación de funciones, indirectamente también abordamos la resolución, en sentido aproximado, de sistemas lineales de ecuaciones rectangulares para los que en general no existe solución; efectivamente, será muy útil en muchas aplicaciones prácticas definir un vector único que verifique un sistema de ecuaciones sobredeterminado de manera aproximada óptima (en el sentido de los mínimos cuadrados, como veremos). Obsérvese también que de existir sólo 3 puntos como dato, el sistema estaría determinado y el polinomio calculado pasaría exactamente por los 3 puntos; habríamos resuelto entonces un problema de interpolación que está incluido (cuando N = M) en el problema más general de aproximación discreta. Ello no quiere decir que el problema general de aproximación (N > M) carezca de interés; al contrario, normalmente en los problemas de ajuste de los datos experimentales interesa que N > M para atenuar y filtrar posibles errores o imprecisiones. La aproximación discreta y la interpolación de funciones son conceptos cercanos pero en el primero no se exige como en el segundo que la función aproximante verifique exactamente los datos discretos del problema; esta diferencia evita las dificultades observadas en la interpolación de grandes cantidades de datos, especialmente si éstos muestran algún tipo de ruido o perturbación proveniente de los errores experimentales. En otras ocasiones puede ser conveniente aproximar en un intervalo dado [a,b] una función continua f *(x) en vez de un conjunto discreto de puntos (xi,yi), mediante otra función f (x) de una familia o clase de funciones que comparten alguna característica que facilita el trabajo matemático, por ejemplo polinomios, funciones racionales, polinomios trigonométricos, etc. Estaremos entonces ante el concepto de aproximación continua, que será objeto de estudio en los apartados finales del capítulo. Común a ambos tipos de aproximación, discreta o continua, es el carácter lineal o no lineal de la misma, que definiremos a continuación, como paso previo al desarrollo del capítulo; así, diremos que un método de aproximación es lineal si la función aproximante f (x,c1,...,cM) es lineal en los parámetros {cj (j = 1,...,M)}; y no lineal en el caso contrario. Ejemplo 2: El ajuste polinomial mediante la función f (x) = c1 + c2x + c3x2 + ··· + cnxn1 es un problema de aproximación lineal, porque un polinomio es lineal en sus coeficientes, aunque no lo es en general en la variable independiente x. Sin embargo, el ajuste exponencial mediante la función f ( x ) c1e c2 x c3e c4 x c2 n 1e c2 n x es un problema de aproximación no lineal. 72 Tema 6: Aproximación. 6.2.- APROXIMACIÓN DISCRETA. ¿Cómo se determina la mejor aproximación f (x) que pase cerca (no por cada uno) de los N puntos dato (xk,yk)? Para responder esta pregunta hay que considerar los errores (también llamados desviaciones) que se definen a continuación: ek = f (xk) yk (k 1,...,N) Hay varias normas (formas de medir estos errores) que podemos usar para medir la distancia entre la curva y = f (x) y los datos. Las más utilizadas son: Error máximo: E ( f ) max f ( xk ) yk Error medio: E1 ( f ) 1 k N Error cuadrático medio: E2 ( f ) 1 N 1 N f (x ) y N k 1 f ( xk ) yk N k 1 k k 2 Ejemplo 3: Vamos a comparar el error máximo, el error medio y el error cuadrático medio de la aproximación lineal y = f (x) = 8.6 1.6 x con respecto al conjunto de datos (1,10), (0,9), (1,7), (2,5), (3,4), (4,3), (5,0) y (6,1). En la siguiente tabla se representan estos datos, el error absoluto y el error cuadrático en cada punto: xk 1 0 1 2 3 4 5 6 yk 10.0 9.0 7.0 5.0 4.0 3.0 0.0 1.0 f (xk) = 8.61.6 xk 10.2 8.6 7.0 5.4 3.8 2.2 0.6 1.0 Suma: |ek| 0.2 0.4 0.0 0.4 0.2 0.8 0.6 0.0 2.6 ek2 0.04 0.16 0.00 0.16 0.04 0.64 0.36 0.00 1.40 Los errores se calculan a partir de los valores f (xk) y ek: E( f ) = max{0.2, 0.4, 0.0, 0.4, 0.2, 0.8, 0.6, 0.0} = 0.8 E1( f ) = 2.6 / 8 = 0.325 E2( f ) = (1.4 / 8)1/2 0.41833 Podemos ver que el error máximo E( f ) es el mayor de los tres. Si el error en un punto es grande, entonces el valor de este error es el que determina E( f ). El error medio E1( f ) es simplemente la media aritmética de los valores absolutos de los errores en los puntos; se usa a menudo porque es fácil de calcular. El error cuadrático medio E2( f ) se usa muy a menudo porque es fácil de minimizar y porque considera la naturaleza aleatoria de los errores. La función mejor aproximación es aquélla que minimiza la función error y, por tanto, dependerá de la norma elegida para la definición del mismo. Con las normas definidas, serían tres las funciones de aproximación óptimas que podríamos calcular, pero la que corresponde a la tercera norma, el error cuadrático medio, es la elección más utilizada en Ingeniería, y se denomina aproximación mínimo-cuadrática. 73 Tema 6: Aproximación. 6.3.- APROXIMACIÓN DISCRETA MÍNIMO-CUADRÁTICA: CASO LINEAL. Dados N puntos {(xk,yk) (k = 1,...,N)} con abscisas distintas, y M funciones linealmente independientes { fj (x) (j = 1,...,M)}, se trata de encontrar M coeficientes {cj} tales que la función f (x) definida como la combinación lineal f ( x) c j f j ( x) M j 1 minimice la suma de los cuadrados de los errores cometidos en cada punto: E c1 , c2 , , cM f ( xk ) yk N k 1 2 M c j f j x k yk k 1 j 1 N 2 es decir, E = N [E2( f )]2. Minimizar E es equivalente a minimizar E2( f ), y para que la magnitud escalar E alcance un mínimo relativo para un conjunto dado de valores de los parámetros {c1,..., cM}, es necesario que se verifiquen las condiciones E / ci = 0 para i = 1, 2,..., M. Calculando estas derivadas e igualando a cero se obtiene un sistema de ecuaciones lineales cuya solución es {cj}. En efecto, N M E 0 2 c j f j xk yk fi xk ci k 1 j 1 c j f j xk fi xk yk fi xk N M N k 1 j 1 k 1 y permutando los signos de sumatorio queda el siguiente sistema de ecuaciones en cj: f M j 1 N k 1 N ( x ) f ( x ) c fi ( xk ) yk j k i k j k 1 (i 1, 2, ..., M ) (2) que reciben el nombre de ecuaciones normales o ecuaciones normales de Gauss. A pesar de su carácter aproximado, la solución obtenida mediante mínimos cuadrados alisa (filtra) los errores aleatorios de los datos y permite captar la tendencia de fondo mostrada por el fenómeno medido. Precisamente, el método fue desarrollado por Gauss para calcular las órbitas celestes de planetas y cometas. Las órbitas elípticas de estos cuerpos quedan determinadas por cinco parámetros, es decir, en principio, por cinco observaciones de su posición. Sin embargo, debido a la imprecisión de los instrumentos de medida y del factor humano, el cálculo de una órbita a partir de tan solo 5 observaciones es escasamente fiable, y la solución correcta se obtiene mediante el ajuste por mínimos cuadrados de numerosas observaciones. Obsérvese que hemos pasado del sistema rectangular de ecuaciones (1) de dimensión NM al sistema final cuadrado de dimensiones MM ; todo ello queda mejor reflejado si de manera equivalente reproducimos el proceso seguido en forma matricial como en el Ejemplo 1. Entonces el sistema de ecuaciones (1) es equivalente a: c M j 1 j f j ( xi ) yi (i 1,..., N ) 74 aij f j ( xi ) Ac b bi yi Tema 6: Aproximación. En la fila genérica i se establece que la función f (x) verifica (aproximadamente) el dato (xi,yi). Las dimensiones de la matriz de coeficientes A y del vector b son NM y N1 respectivamente, y estaremos tratando con un sistema lineal de ecuaciones rectangular sobredeterminado si, como ocurre en general, N > M. Para obtener la solución de mínimos cuadrados del sistema rectangular A c b definiremos el vector residuo y minimizaremos el cuadrado de su norma euclídea: r b Ac ; r 2 r Tr (b Ac)T (b Ac) b Tb 2c T AT b c T AT Ac 2 anulando las derivadas con respecto a los parámetros c, para obtener: 2 AT b 2 AT Ac 0 AT Ac ATb (3) Éste es un sistema de M ecuaciones con M incógnitas (matriz de coeficientes ATA de dimensión MM ) que se conoce como sistema de ecuaciones normales. Si el rango de la matriz A es M (las columnas de A son linealmente independientes), el sistema de ecuaciones obtenido es no singular y tiene solución única. Efectivamente, entonces A c representa un vector del espacio generado por las columnas de A (dimensión M en general; el plano en la figura) que en el caso habitual del método de los mínimos cuadrados (N > M ) no incluye al vector b de dimensión N. Por tanto en lugar de una solución exacta buscaremos el vector A c (del espacio generado por las columnas de A) más cercano a b (en la norma euclídea); entonces, este vector A c deberá coincidir con la proyección ortogonal de b en el espacio columna de A (el plano), como se muestra en la figura: b r = bAc Ac Figura 1. Por tanto, el vector residuo r = b A c será perpendicular al espacio columna de A, y se verificará la condición de ortogonalidad (producto escalar nulo) de todos los vectores columnas de A con el vector (columna) r; en formato matricial: 0 AT r AT (b Ac) AT Ac AT b que es el mismo sistema de ecuaciones normales obtenido anteriormente. Ejemplo 4: Resolver numéricamente el Ejemplo 1 (ajuste cuadrático a 5 puntos) con arreglo a los siguientes valores numéricos: x y –1.0 1.0 –0.5 0.5 0.0 0.0 Resolución: El sistema de ecuaciones sobredeterminado será: 75 0.5 0.5 1.0 2.0 Tema 6: Aproximación. 1 1.0 1.0 1.0 1 0.5 0.25 c1 0.5 Ac 1 0.0 0.0 c2 0.0 b 1 0.5 0.25 c3 0.5 1 1.0 1.0 2.0 El sistema de ecuaciones normales: AT A c AT b 1 1.0 1.0 1 1 1 1 1 0.5 0.25 5.0 0.0 2.5 1 AT A 1.0 0.5 0.0 0.5 1.0 1 0.0 0.0 0.0 2.5 0.0 1.0 0.25 0.0 0.25 1.0 1 0.5 0.25 2.5 0.0 2.125 1 1.0 1.0 1.0 1 1 1 1 0.5 4.0 1 AT b 1.0 0.5 0.0 0.5 1.0 0.0 1.0 1.0 0.25 0.0 0.25 1.0 0.5 3.25 2.0 0.086 c 0.40 1.4 Tiene como solución: f ( x ) 0.086 0.4 x 1.4 x 2 y por tanto: 6.3.2.- Aproximación polinomial. Es un caso particular de la aproximación discreta mínimo-cuadrática lineal que ya ha sido tratado en alguno de los ejemplos; veremos aquí su formulación y características específicas. Cuando en el método general descrito se tienen de nuevo N puntos, pero se utilizan M funciones { fj (x) = xj (j = 0,1, .., M1)}, la función aproximante f (x) será un polinomio de grado menor o igual que M1: f ( x ) c0 c1 x c2 x 2 cM 1 x M 1 c j x j M 1 j 0 Entonces, procediendo análogamente al caso anterior: E f ( xk ) y k N k 1 y minimizando E: 2 M 1 j c j xk yk E (c0 , ..., cM 1 ) k 1 j 0 2 N N M 1 i E j 0 2 c j xk y k x k ci k 1 j 0 N i c yk xk j j 0 k 1 k 1 x M 1 N k j i aij 76 (i 0,1,..., M 1) (4) Tema 6: Aproximación. Obsérvese que la matriz de coeficientes de este sistema es simétrica, pues aij = aji; además, aij es cte. para i+j = cte., con lo que también son iguales todos los elementos alineados perpendicularmente a la diagonal principal. 6.3.2.1.- Aproximación polinómica lineal. Determinación de la recta de regresión. Se trata del caso particular en que el grado del polinomio es 1 y el número de coeficientes a determinar es M = 2. La recta de regresión o recta óptima en (el sentido de los) mínimos cuadrados es la de ecuación y = f (x) = Ax + B que minimiza el error cuadrático medio E2( f ). Recordemos que la cantidad E2( f ) será mínima si lo es el valor E = N [E2( f )]2; en este caso: E N [ E2 ( f )]2 Axk B yk N 2 k 1 valor que puede visualizarse geométricamente como la suma de los cuadrados de las distancias verticales desde los puntos hasta la recta. Particularizando a este caso las fórmulas generales para polinomios (4), los coeficientes de la recta de regresión resultan ser la solución del siguiente sistema lineal de ecuaciones normales: N N 2 N xk A xk B yk xk k 1 k 1 k 1 N N x A N B yk k k 1 k 1 (5) Recuérdese que el sistema de ecuaciones normales también puede obtenerse matricialmente según (3). 6.3.2.2.- Aproximación polinómica cuadrática. Eligiendo como función de aproximación un polinomio de grado 2, y M = 3 coeficientes a determinar, la parábola óptima en el sentido de los mínimos cuadrados: y = f (x) = Ax2 + Bx + C se determina sustituyendo los coeficientes A = c3, B = c2 y C = c1 en el sistema de ecuaciones normales (4): N N 4 N 3 N 2 x A x B x C yk xk2 k k k k 1 k 1 k 1 k 1 N N 3 N 2 N xk A xk B xk C yk xk k 1 k 1 k 1 k 1 N N N xk2 A xk B N C yk k 1 k 1 k 1 (6) y resolviendo el sistema de 3 ecuaciones para las incógnitas A, B y C. Obsérvense las simetrías en la matriz de coeficientes, y recuérdese que el sistema de ecuaciones normales también puede obtenerse matricialmente según (3). 77 Tema 6: Aproximación. Ejemplo 5: En el Ejemplo 4 se ha desarrollado en formato matricial un caso de ajuste polinomial de segundo grado a 5 datos determinados; puede ahora repetirse el mismo ejemplo con arreglo a las fórmulas obtenidas en (6) y comprobar la igualdad de los resultados obtenidos. 6.3.2.3.- Inconvenientes de la aproximación polinomial. Ortogonalización. Si los datos no muestran una naturaleza polinomial, puede ocurrir que la curva resultante presente oscilaciones grandes. Este fenómeno, llamado oscilación polinomial, se hace más pronunciado conforme aumenta el grado del polinomio, y por esta razón no se suelen usar polinomios de grado seis o mayor a no ser que se sepa que la función de la que provienen los datos es un polinomio. Por otra parte el sistema de ecuaciones normales es un sistema mal condicionado, que se ve muy afectado por los errores de redondeo. De hecho, se puede demostrar que, al formar el sistema de ecuaciones normales, el número de condición de la matriz A de coeficientes original (que empeora sensiblemente al aumentar el grado del polinomio de aproximación) queda elevado al cuadrado en la matriz de coeficientes ATA resultante. cond( AT A) [cond( A)]2 6.4.APROXIMACIÓN DISCRETA MÍNIMO-CUADRÁTICA: CASOS NO LINEALES. 6.4.1.- El ajuste exponencial: y Ce Ax . Lo mismo que en el caso anterior, en muchos procesos, como por ejemplo los de desintegración radiactiva, los datos experimentalmente obtenidos siguen exponenciales decrecientes. Supongamos de nuevo que queremos aproximar N puntos (xk,yk) mediante una función exponencial de la forma y = CeAx, donde los parámetros a determinar son C y A. Se trata de una aproximación no lineal en el coeficiente A; el método de los mínimos cuadrados consiste en minimizar la función: E ( A, C ) Ce Axk yk N k 1 2 Para ello hallamos las derivadas parciales de E(A,C) respecto de A y C: N E 0 2 Ce Axk yk Ce Axk xk A k 1 N E 0 2 Ce Axk y e Axk k C k 1 y tras simplificar se obtiene el siguiente sistema de ecuaciones normales: N N 2 Axk C x e xk yk e Axk 0 k k 1 k 1 N N C e2 Axk y e Axk 0 k k 1 k 1 78 (7) Tema 6: Aproximación. que es un sistema algebraico no lineal de ecuaciones cuya resolución no es inmediata como en los casos lineales, sino que se obtiene a través de un proceso iterativo. Para evitar esta dificultad se puede utilizar el procedimiento de linealización de los datos que se describe a continuación. 6.4.2.- Linealización de los datos. Muchos casos en los que se desea ajustar los datos a una curva no lineal en sus parámetros, pueden transformarse en un problema de aproximación lineal mediante adecuados cambios de variable. Veamos a continuación algunos casos. 6.4.2.1.- Linealización de los datos para y Ce Ax . Sean N datos (xk,yk) a los que queremos ajustar una curva exponencial de la forma: y = CeAx Tomando logaritmos: ln(y) = ln(C) + A x Cambio de variable: Ecuación linealizada (B = ln(C)): Y = ln(y), X=x Y = AX+B Los datos originales (xk,yk) se han transformado en (Xk,Yk) = (xk,ln(yk)); el problema ahora es calcular la recta de regresión de los puntos (Xk,Yk), para lo que planteamos las correspondientes ecuaciones normales definidas en (5): N N 2 N X A X B Yk X k k k k 1 k 1 k 1 N N X A N B Yk k k 1 k 1 Éste es un sistema de ecuaciones lineal más sencillo de resolver que el sistema no lineal correspondiente a los datos iniciales no transformados. Calculados A y B, se obtiene el parámetro original C = eB, y con ello la función a determinar y = CeAx. Este procedimiento minimiza el error cuadrático calculado en las variables X, Y (es decir, el de la recta Y = A X + B respecto a los puntos (Xk,Yk)), pero, tras deshacer el cambio, el error cuadrático de la exponencial y = CeAx respecto a los datos (xk,yk) originales no es el mínimo. No obstante, la diferencia suele ser pequeña, lo cual permite utilizar a menudo el proceso de linealización por ser computacionalmente más sencillo. 6.4.2.2.- Otros casos de linealización. La técnica de linealización mostrada en el apartado anterior se puede emplear en otros casos de aproximación no lineal a funciones tales como y = A ln(x) + B o y = A/x + B. El tipo de función de aproximación se puede elegir a la vista de la representación gráfica del conjunto de datos. Una vez elegida dicha función, si ésta es no lineal en los parámetros que la definen, hay que realizar el cambio de variables adecuado de manera que las nuevas variables se relacionen linealmente. La siguiente tabla muestra algunos de los cambios más utilizados. 79 Tema 6: Aproximación. Función: y = f (x) A y B x D y xC 1 y A x B x y A x B y A ln( x) B y C e Ax Linealización: Y = AX + B 1 y A B x 1 D y (x y) C C 1 A x B y 1 1 A B y x y A ln( x) B ln( y ) A x ln(C ) Cambios 1 X ; Yy x X xy; Y y X x; Y 1 y 1 1 X ; Y x y X ln( x ); Y y X x ; Y ln( y ) Ejemplo 6: La siguiente tabla proviene de un aparato de medida que sólo da hasta las centésimas: x 2 2.5 3 3.5 4 y 0.12 0.11 0.09 0.09 0.08 Una teoría física subyacente postula que los datos provienen de una función de la forma: y 1 A ln x B ( A, B ctes.) Es Vd. el investigador #1 tratando de determinar los coeficientes físicos A, B. Se le pide: a) Deducir el sistema de ecuaciones normales de la recta de regresión. b) Linealizar los datos de la tabla mediante un cambio de variables apropiado X = X(x), Y = Y(y). c) Calcular los coeficientes A1, B1 que minimizan el error cuadrático en los datos linealizados. d) Calcular dicho error cuadrático EY,1 en los datos linealizados (error cuadrático en Y). e) Calcular el correspondiente error cuadrático Ey,1 tras deshacer el cambio de variables (en y). A continuación un segundo investigador, #2, que ha estado trabajando en el mismo problema, llega muy ufano con un papel en la mano: A2 = 5.80689272067113 ; B2 = 4.19652914545741 Se pide: f) Antes de hacer ningún cálculo, ¿desecharía Vd. esos coeficientes directamente al ver que no coinciden con los suyos, que ya son óptimos –suponiendo operaciones correctas y sin errores de redondeo–, o por el contrario creería Vd. posible que el otro investigador haya dado con unos coeficientes A2, B2 aún mejores que los suyos, al menos en algún sentido? Justificar la respuesta. g) Calcular el error cuadrático Ey,2 (en y) análogo a Ey,1 pero usando A2, B2 en lugar de A1, B1, y compararlos. Si Ey,2 < Ey,1 , explicar cómo habrá podido llegar a su resultado el investigador #2 (es decir, qué ecuaciones habrá podido plantear y qué algoritmos habrá podido usar para resolverlas). h) ¿Es posible que venga un tercer investigador con otros parámetros en la mano que reduzcan aún más el error cuadrático en y ? Para responder con solvencia, sustituir A2, B2 en las ecuaciones del apartado g) y ver si las cumplen (ocho cifras significativas serán suficientes). Resolución: a) Datos: Recta de regresión: (xk,yk) (k = 1,...,N) y = Ax+B 80 Tema 6: Aproximación. E ( A, B ) A xk B yk N Error cuadrático: k 1 N E 2 A xk B y k xk 0 A k 1 Para minimizar E: N E 2 A x B y 0 k k B k 1 y b) x y X = ln x Y = 1/y X2 XY (A1X +B1 – Y)2 y1 = 1/(A1ln x+B1) y2 = 1/(A2ln x+B2) (y1 – y)2 (y2 – y)2 [1] [2] [3] [4] yex = 1/(6 ln x + 4) (y1 – yex)2 (y2 – yex)2 1 A ln x B 2 0.12 0.69314718 8.3333333 0.48045301 5.7762265 0.02424175 0.12228473 0.12163141 5.2200053e-06 2.661502e-06 -1.6729399e-05 -2.4135421e-05 -2.3681293e-05 -3.4164884e-05 0.1225658 7.8996385e-08 8.7307535e-07 2 1 A ln x B ; y 2.5 0.11 0.91629073 9.0909091 0.83958871 8.3299157 0.17811472 0.10511991 0.10507147 2.3815252e-05 2.4290379e-05 4.9856304e-05 5.441101e-05 4.9411822e-05 5.3925921e-05 0.10528816 2.8306043e-08 4.6951859e-08 N N 2 N x A x B y k xk k k k 1 k 1 k 1 N xk A k 1 N B yk N (8) k 1 Y 1 y Y AX B X ln x 3 0.09 1.0986123 11.111111 1.206949 12.206803 0.25718904 0.094304276 0.094553234 1.8526793e-05 2.073194e-05 -4.4721586e-05 -4.0707342e-05 -4.2054003e-05 -3.8279203e-05 0.094413784 1.1992068e-08 1.9446204e-08 3.5 0.09 1.252763 11.111111 1.5694151 13.919589 0.17248452 0.086757179 0.087174919 1.0515889e-05 7.981082e-06 2.6895703e-05 2.1469108e-05 3.0577554e-05 2.4408092e-05 0.08683135 5.5013681e-09 1.1803966e-07 4 0.08 1.3862944 12.5 1.9218121 17.32868 0.030454874 0.081132698 0.081655371 1.2830058e-06 2.7402544e-06 -1.5301021e-05 -1.1037354e-05 -1.0336217e-05 -7.4560043e-06 0.081183551 2.5859993e-09 2.2261431e-07 Sumas 15 0.49 5.3471075 52.146465 6.0182178 57.561214 0.6624849 – – 5.9360944e-05 5.8405157e-05 1.0503209e-19 2.3547516e-19 3.9178625e-06 -1.5660787e-06 – 1.2738186e-07 1.2801274e-06 c) Sustituyendo en (8) con X, Y en lugar de x, y –tomando los valores en negrita: A1 5.9840841 6.0182178 A 5.3471075 B 57.561214 5 B 52.146465 5.3471075 A B1 4.0297847 d) De la tabla, en la suma de la fila (A1Xk +B1 – Yk)2: EY,1 = 0.6624849 Este error es mínimo en la variable linealizada Y. e) De la tabla, en la suma de la fila (y1 – y)2: Ey,1 = 5.9360944e-05 f) Es posible que los parámetros A2, B2 del otro investigador sean mejores en la variable y (sin linealizar), aunque le habrá costado bastante trabajo conseguirlos. Los parámetros A1, B1 minimizan el error en Y, pero sólo estarán cerca de minimizar el error en y –que es lo que interesa al fin y al cabo–. g) De la tabla, en la suma de la fila (y2 – y)2: Ey,2 = 5.8405157e-05 ¡El error cuadrático es menor! El investigador #2 habrá empezado también linealizando los datos, y a los valores de A, B los habrá llamado A1, B1; a partir de ahí habrá ido mejorando la aproximación mediante el método de Newton hasta llegar a A2, B2. En concreto habrá intentado minimizar la función e: 81 Tema 6: Aproximación. 5 e 1 ln xk 2 yk 0 2 2 5 A ln xk B 1 A k 1 A ln xk B yk min e( A, B ) 5 1 1 k 1 A ln xk B e 2 yk 0 2 B k 1 A ln xk B A ln xk B (9) Éste es un sistema no lineal; el método de Newton requiere entonces, partiendo de A1, B1, calcular analíticamente el jacobiano, que en este caso tiene la forma 2e A2 J 2 e AB 2e AB 2e B 2 y evaluarlo y utilizarlo reiteradamente para calcular incrementos de A y de B hasta un criterio de parada, que puede ser el cumplimiento de (9) con errores menores que cierta tolerancia, o una diferencia entre dos valores consecutivos de e también menor que cierta tolerancia. h) Si A2, B2 cumplen (9), son la solución óptima en y. Por tanto, rellenando en la tabla la fila [1] según: 1 ln xk 2 A ln x B yk 2 k 2 A2 ln xk B2 [1] y su suma a la derecha, y rellenando la fila [2] según 1 1 2 A ln x B yk 2 k 2 A2 ln xk B2 [2] y su suma a la derecha, resulta que ambas sumas son prácticamente cero (del orden de 1019). Por tanto no es posible que venga otro investigador con resultados mejores. Nótese que si hacemos lo mismo con A1, B1 (filas [3] y [3]): 1 ln xk 2 A ln x B yk 1 k 1 A1 ln xk B1 1 1 2 A ln x B yk 1 k 1 A1 ln xk B1 [3] [4] las sumas, a la derecha, aún distan de ser cero (son del orden de 106). 6.5.- APROXIMACIÓN CONTINUA LINEAL. Dada la función f *(x) continua en un intervalo [a,b], y dadas M funciones { fj (x), j = 1,...,M} continuas y linealmente independientes en dicho intervalo, se trata de encontrar M coeficientes {cj} tales que la función f (x) definida como la combinación lineal: f ( x) c j f j ( x) M j 1 (10) sea la mejor aproximación a la función f *(x), es decir, minimice la función error e(x) = f *(x) f (x) La mejor aproximación dependerá de la norma utilizada para medir la función error; las más utilizadas son: 82 Tema 6: Aproximación. 1) f La norma infinito (L): max f ( x) a x b y entonces obtendremos la mejor aproximación uniforme, o aproximación minimax. 2) La norma euclídea (L2): f 2 b a f ( x)2 dx y entonces obtendremos la mejor aproximación mínimo cuadrática. En la práctica de la ingeniería, la importancia de la aproximación continua es menor que la de la aproximación discreta; sin embargo su conocimiento es muy constructivo desde el punto de vista teórico por lo que supone de sistematización en el tratamiento de las funciones y por la interpretación geométrica que conlleva. Como paso previo, es conveniente reconocer la estructura del proceso de aproximación lineal que nos ocupa; en esta estructura abstracta trataremos a las funciones como vectores. De hecho sabemos que, por ejemplo, un polinomio de grado n puede ser considerado como un vector definido por la lista de sus n+1 coeficientes; y también, en apartados anteriores hemos tratado listas de valores de funciones como vectores. Si consideramos el conjunto de funciones continuas en un intervalo: C 0 [a, b] { f :[a, b] / f es continua} es inmediato comprobar que se verifica la siguiente propiedad: f , g C0 f g C0 , R que es característica de los espacios vectoriales. Nota: Recordemos que, en el caso general, para que un conjunto V dotado de la operación interna + y el producto · por un escalar –perteneciente a un cuerpo K– tenga estructura de espacio vectorial, es necesario que (V,+) sea un grupo abeliano y que f, g V ; , K se cumpla: a) ·f V ; b) ·( f + g) = · f + ·g ; c) ( ) · f = ·( ·f ) ; y d) 1·f = f. El cumplimiento de todos estos axiomas se pueden comprobar con detalle en el caso que nos ocupa, de las funciones continuas en un intervalo cerrado [a,b]. El conjunto de funciones continuas en un intervalo es un espacio vectorial, y sus elementos pueden tratarse algebraicamente como vectores. Entonces, el problema de la aproximación lineal de una función continua definido en (10) consiste en encontrar, en el subespacio vectorial de C0[a,b] generado por la base { fj (x), j = 1,...,M}, el vector (función) más cercano (a menor distancia) al vector (función a aproximar) f * C0[a,b]. En este contexto, observamos que las consideraciones de tipo geométrico asociadas al concepto de espacio vectorial de funciones pueden ser muy útiles para encontrar o recordar resultados importantes de la teoría de aproximación y de otros aspectos de la teoría de funciones. Volviendo a la utilidad de la aproximación continua, mencionaremos a continuación un ejemplo donde la aproximación continua es más apropiada que la interpolación; se trata del diseño de librerías informáticas para el cálculo de funciones como las suministradas en los lenguajes de programación Fortran o C; en este caso, es importante que la aproximación sea igualmente precisa en todos los puntos del dominio de aproximación (para todos los argumentos posibles de la función), pero no es esencial que algunos de los valores aproximados coincidan con los valores exactos de la función. Lo más apropiado en esos casos es minimizar la 83 Tema 6: Aproximación. desviación máxima en el intervalo entre la función y la aproximación, y esto se consigue con la norma infinito, es decir, con la aproximación uniforme o minimax. Sin embargo, cabe decir que en general la aproximación mínimo cuadrática es la más utilizada en la práctica, y en ella centraremos nuestra atención en lo que queda del capítulo. 6.6.- APROXIMACIÓN CONTINUA MÍNIMO-CUADRÁTICA. Hasta ahora hemos considerado el conjunto de funciones continuas C0[a,b] como un espacio vectorial de dimensión infinita, y la mejor aproximación a uno cualquiera de sus elementos (funciones) desde un subespacio vectorial de dimensión finita, como el elemento (función) de este último a menor distancia de la función aproximada. Para ello, al concepto de espacio vectorial de funciones hemos añadido el concepto de norma, que nos permite evaluar la distancia entre funciones. En el método de los mínimos cuadrados utilizamos la norma euclídea para definir la distancia entre elementos a minimizar; está norma está asociada con un producto interno (la norma infinito no lo está) y todo producto interno permite introducir además del concepto de longitud (norma) de un vector, el concepto de ángulo (ortogonalidad) entre vectores. Definiremos ahora el producto interno o producto escalar de dos funciones f y g como: ( f ,g )= f (x )g (x)dx b (11) a En el caso discreto el producto escalar utilizado ha sido: ( f ,g ) f (xi )g (xi ) M (12) i 1 A partir del producto escalar (11) se define: f f ,f 1) La norma euclídea de una función f : 2) La ortogonalidad de dos funciones f y g cuando se verifica: 2 ( f,g) = 0 Entonces la solución del problema de la aproximación lineal mínimo cuadrática no es más que la generalización del conocido hecho geométrico en 2 ó 3 dimensiones que dice: la distancia más corta desde un punto (extremo del vector y) hasta un subespacio (recta o plano) es la longitud del vector entre el punto y el subespacio, que es perpendicular al subespacio, como se indica en la Figura 2. yf * error e x1 f1 f (mejor aproximación a f *) x2 f2 Figura 2. 84 Tema 6: Aproximación. Esto quiere decir que el vector error e = f * f es ortogonal al subespacio generado por la base { fj (x), j = 1,...,M}; esta sencilla observación geométrica nos permitirá generar las ecuaciones normales de la aproximación lineal mínimo cuadrática continua. Todo ello queda plasmado en los siguientes puntos: 1) Cuando { fj (x), j = 1,...,M} son linealmente independientes, la aproximación mínimo cuadrática a la función f * tiene solución única: f ( x) c j f j ( x) M j 1 donde los coeficientes {cj, j = 1,...,M} satisfacen las ecuaciones normales. 2) La solución está caracterizada por que la función error e = f * f es ortogonal a todas las funciones de base { fj (x), j = 1,...,M}. Es decir, M * f i ( x), c j f j ( x) f ( x) 0 (i 1,..., M ) j 1 Desarrollando esta expresión, en virtud de la propiedad de linealidad del producto escalar, obtenemos el sistema de ecuaciones normales que debe resolverse para hallar los coeficientes {cj, j = 1,...,M} de la aproximación: ( f1 , f1 )c1 ( f1 , f 2 )c2 ... ( f1 , f M )cM ( f1 , f * ) * ( f 2 , f1 )c1 ( f 2 , f 2 )c2 ... ( f 2 , f M )cM ( f 2 , f ) ... ( f , f )c ( f , f )c ... ( f , f )c ( f , f * ) M M M M M M 1 1 2 2 y de manera más compacta ( f ( x), f M j 1 i j ( x )) c j ( f i , f * ) (i 1,...., M ) (13) 3) Un caso especial importante ocurre cuando las funciones { fj(x), j = 1,...,M} forman una base ortogonal; entonces el sistema de ecuaciones es diagonal y los coeficientes pueden calcularse con mayor sencillez a través de las fórmulas: cj ( f j , f *) ( f j, f j) ( j 1,...., M ); o bien c j ( f j , f * ) ( j 1,...., M ) (14) correspondiendo las segundas al caso de que la base sea ortonormal. Estos coeficientes se denominan coeficientes ortogonales (Fourier generalizados) y generan la expansión ortogonal (desarrollo en serie de Fourier generalizada) de una función continua g(x) cualquiera: g ( x ) ( f j , g ) f j ( x) (con base ortogonal) j 1 que para ciertas bases (infinitas) converge a la función g(x) en el intervalo y en el sentido mínimo cuadrático si g verifica condiciones sencillas de continuidad. 85 Tema 6: Aproximación. ( f , g) f M 4) Una serie de Fourier truncada j 1 j j ( x) es por tanto la mejor aproximación mínimo cuadrática a la función g(x) en el subespacio generado por la base (ortonormal) { fj (x), j = 1,...,M}. Los sistemas ortogonales son ventajosos no sólo porque simplifican los cálculos, sino fundamentalmente porque evitan los problemas asociados al mal condicionamiento característico de las ecuaciones normales asociadas a bases cualesquiera no ortogonales. Siempre es posible ortogonalizar una base finita cualquiera de un subespacio vectorial; el método más conocido para ello se denomina método de Gram-Schmidt, y tiene una interpretación geométrica muy útil para describirlo y recordarlo: supongamos 3 vectores linealmente independientes {x1,x2,x3} que no son ortogonales pero constituyen una base del espacio 3D; procederemos en los 3 pasos siguientes: 1) Normalizar el primer vector x1 (dividiendo por su módulo o norma) para obtener el vector unitario x̂1 = x1 / ||x1||. 2) Proyectar el segundo vector x2 sobre el primero x1 y restar el vector proyección del propio vector x2, para obtener el vector y2 x2 ( x2 , xˆ1 ) xˆ1 . Este vector y2 es ortogonal al primer vector x1 por construcción (es la parte del segundo vector x2 ortogonal al primero). Normalizaremos ahora el vector y2 para obtener el vector unitario x̂2 = y2 / ||y2||, que es ortogonal a x̂1 . 3) Proyectar el tercer vector x3 sobre el plano formado por xˆ1 y xˆ2 (también x1 y x2) y restar la proyección del propio vector x3 para obtener el vector y3 x3 ( x3 , xˆ1 ) xˆ1 ( x3 , xˆ2 ) xˆ2 . Este vector y3 es ortogonal al plano formado por xˆ1 y xˆ2 por construcción (es la parte del tercer vector x3 ortogonal al plano); normalizaremos ahora el vector y3 para obtener el vector unitario x̂3 = y3 / ||y3||, que es ortogonal a xˆ1 y xˆ2 . Hemos obtenido así una base ortonormal { xˆ1 , xˆ2 , xˆ3 } a partir de una base cualquiera { x1, x2, x3 }. La generalización de este proceso a una base de dimensión finita cualquiera es inmediata. Si lo aplicamos a la base común del subespacio vectorial de polinomios de grado n, {1, x, x2,..., xn}, obtendremos diversas familias de polinomios ortogonales según el intervalo considerado y la función de peso w(x) del producto escalar. Si ampliamos la definición del producto escalar: ( f ,g )= w( x) f (x)g (x)dx ; w( x ) 0 x [ a , b ] b a y aplicamos a {1, x, x2,..., xn} el proceso de ortogonalización de Gram-Schmidt, obtendremos: Los polinomios de Legendre, si a = 1, b = 1 y w(x) = 1. Los polinomios de Chebyshev, si a = 1, b = 1, y w(x) = (1x2)1/2. Los polinomios de Chebyshev de 2ª especie, si a = 1, b = 1 y w(x) = (1x2)1/2. Los polinomios de Jacobi, si a = 1, b = 1 y w(x) = (1x) (1+x) (, > 1). Polinomios de Laguerre, si a = 0, b = y w(x) = x ex ( > 1). Polinomios de Hermite, si a = , b = y w( x ) e x . 2 86 Tema 6: Aproximación. Obsérvese para finalizar, que todos los conceptos expuestos en este apartado en relación con la aproximación lineal continua incluyen en una sola teoría a los conceptos desarrollados en apartados anteriores para la aproximación lineal discreta; así, para reproducir los conceptos del ajuste de funciones a datos experimentales bastará con considerar el producto escalar (12) en vez del producto escalar (11). 87 Tema 6: Aproximación. 6.7.- EJERCICIOS 1.— Hallar el polinomio que mejor se ajuste a los datos de la tabla siguiente utilizando la técnica de mínimos cuadrados. x y 1 4 2 7 3 9 4 10 5 9 6 7 7 4 4 36 9 Sol.: p2 ( x ) x x2 7 7 14 2.— Encontrar la recta que mejor se ajusta a los datos de la siguiente tabla x y 0 2 1 4 2 3 3 6 4 5 5 7 6 9 7 8 Sol.: p1 ( x ) 9 13 x 4 14 3.— Dada la siguiente tabla de datos, obtenida experimentalmente, hallar la constante g que relaciona las variables t y d (d gt2/2). t d 0.2 0.1960 0.4 0.7850 0.6 1.7665 0.8 3.1405 1.0 4.9075 Sol.: g 9.8146 4.— Ajustar los datos de la tabla siguiente mediante una parábola por el método de mínimos cuadrados. Determinar el error mínimo cuadrático. xi yi 0.00 0.25 0.5 0.75 1.00 1.0000 1.2840 1.6487 2.1170 2.7183 Nota: trabajar con cuatro cifras decimales y redondeo simétrico. Sol: p2(x) = 1.0052 + 0.8634 x + 0.8446 x2 5.— Dada la siguiente tabla: x y 1 7 2 9 3 11 Encontrar una curva por el procedimiento de mínimos cuadrados que se ajuste a los datos, de las siguientes formas: a) y = ax b) y = ax + b Sol: a) y 4.142857 x b) y 2 x + 5 6.— Dada la tabla xi yi 1.00 5.10 1.25 5.79 1.50 6.53 1.75 7.45 2.00 8.46 utilizar la técnica de mínimos cuadrados para obtener un ajuste de estos valores. Nota: Trabajar con cinco cifras decimales y redondeo simétrico. Sol: f ( x ) 3.07243 e 0.50573 x 88 Tema 6: Aproximación. 7.— Hallar la parábola que mejor se ajuste a los siguientes datos: x y 1 2 2 4 3 6 4 8 Sol: p2(x) = 2x 8.— a) Encontrar una curva de la forma y 1 Ax B por el procedimiento de mínimos cuadrados que se ajuste a los datos de la tabla xi yi -1 6.62 0 3.94 1 2.17 2 1.35 3 0.89 b) Obtener el error cuadrático medio cometido por el ajuste anterior al aproximar los valores yi por la curva y. Nota: Trabajar con cuatro cifras decimales y redondeo simétrico. Sol: y 1 0.3028 0.2432 x Error cuadrático medio del ajuste: 4.5622 9.— Repetir el ejercicio anterior, trabajando con dos cifras decimales y redondeo simétrico, para los datos xi yi 0 1.01 1 0.34 2 0.20 3 0.14 Nota: Trabajar con 4 cifras decimales y redondeo simétrico para calcular los errores. Sol: y 1 0.94 2.05x Error cuadrático medio del ajuste: 0.0255 10.— Repetir el ejercicio número 8 trabajando con dos cifras decimales y redondeo simétrico con los datos de la tabla xi f (xi) 1 3 2 20 3 87 4 100 Sol: y 1 0.35 0.1x Error cuadrático medio mínimo: 0.0742 Error cuadrático medio del ajuste: 69.031 11.— Cuando el crecimiento de una población está acotado por un valor constante L sigue una curva logística que tiene la forma y ( x) L 1 B e Ax Se pide: 89 Tema 6: Aproximación. a) Realizar un cambio de variable que transforme la función y(x) en una expresión lineal en x. (Tener en cuenta que L/y – 1 = B eAx.) b) Utilizar los datos de una población, dados por la tabla Año xk yk (millones) 1800 -10 5.3 1850 -5 23.2 1900 0 76.1 1950 5 152.3 para encontrar una curva logística y(x) correspondiente a L = 800 (millones), aplicando mínimos cuadrados sobre la función transformada del apartado a). Calcular el error cuadrático medio cometido. c) Estimar la población en el año 2000. Nota: trabajar con dos cifras decimales y redondeo simétrico. 12.—Aproximar la función f (x) = ln(x) por una recta en el intervalo [1,2]. Sol: 0.6822-0.6371 13.— Encontrar la aproximación polinómica de mínimos cuadrados de grado 1 de f (x) en el intervalo indicado: a) f (x) = x3 – 1 en [0,2] b) Sol: a) p1(x) = –13/5 + 18x/5 90 f (x) = cos( x) en [0,1] b) p1(x) = 12/2 (1–2x) Tema 6: Aproximación. TEMA 6: APROXIMACIÓN. 6.1.6.2.6.3.- 71 INTRODUCCIÓN. 71 APROXIMACIÓN DISCRETA. 73 APROXIMACIÓN DISCRETA MÍNIMO-CUADRÁTICA: CASO LINEAL. 74 6.3.2.- Aproximación polinomial. 76 6.4.- APROXIMACIÓN DISCRETA MÍNIMO-CUADRÁTICA: CASOS NO LINEALES. 6.4.1.- El ajuste exponencial: y Ce Ax . 6.4.2.- Linealización de los datos. 78 78 79 6.6.- 84 6.5.- APROXIMACIÓN CONTINUA LINEAL. 82 6.7.- EJERCICIOS 88 APROXIMACIÓN CONTINUA MÍNIMO-CUADRÁTICA. 91