El ajuste de curvas [1] [2] es el proceso de construcción de una curva o función matemática que se ajuste mejor a una serie de puntos de datos , [3] posiblemente sujeta a restricciones. [4] [5] El ajuste de curvas puede implicar interpolación , [6] [7] donde se requiere un ajuste exacto a los datos, o suavizado , [8] [9] en el que se construye una función "suave" que se ajusta aproximadamente a los datos. Un tema relacionado es el análisis de regresión , [10] [11] que se centra más en cuestiones de inferencia estadística como cuánta incertidumbre está presente en una curva que se ajusta a datos observados con errores aleatorios. Las curvas ajustadas se pueden utilizar como ayuda para la visualización de datos, [12] [13] para inferir valores de una función cuando no hay datos disponibles, [14] y para resumir las relaciones entre dos o más variables. [15] La extrapolación se refiere al uso de una curva ajustada más allá del rango de los datos observados, [16] y está sujeta a un grado de incertidumbre [17] ya que puede reflejar el método utilizado para construir la curva tanto como refleja los datos observados.
Para el análisis algebraico-lineal de datos, "ajuste" generalmente significa tratar de encontrar la curva que minimice el desplazamiento vertical ( eje y ) de un punto de la curva (por ejemplo, mínimos cuadrados ordinarios ). Sin embargo, para aplicaciones gráficas y de imágenes, el ajuste geométrico busca proporcionar el mejor ajuste visual; lo que generalmente significa tratar de minimizar la distancia ortogonal a la curva (por ejemplo, mínimos cuadrados totales ), o de lo contrario incluir ambos ejes de desplazamiento de un punto de la curva. Los ajustes geométricos no son populares porque generalmente requieren cálculos no lineales y/o iterativos, aunque tienen la ventaja de un resultado más estético y geométricamente preciso. [18] [19] [20]
Lo más común es ajustar una función de la forma y = f ( x ) .
La ecuación polinómica de primer grado
es una línea con pendiente a . Una línea conectará dos puntos cualesquiera, por lo que una ecuación polinómica de primer grado es un ajuste exacto a través de dos puntos cualesquiera con coordenadas x distintas.
Si se aumenta el orden de la ecuación a un polinomio de segundo grado, se obtiene el siguiente resultado:
Esto ajustará exactamente una curva simple a tres puntos.
Si se aumenta el orden de la ecuación a un polinomio de tercer grado, se obtiene lo siguiente:
Esto encajará exactamente en cuatro puntos.
Una afirmación más general sería decir que se ajustará exactamente a cuatro restricciones . Cada restricción puede ser un punto, un ángulo o una curvatura (que es el recíproco del radio de un círculo osculador ). Las restricciones de ángulo y curvatura se añaden con mayor frecuencia a los extremos de una curva y, en tales casos, se denominan condiciones finales . Con frecuencia, se utilizan condiciones finales idénticas para garantizar una transición suave entre curvas polinómicas contenidas dentro de una única spline . También se podrían añadir restricciones de orden superior, como "el cambio en la tasa de curvatura". Esto, por ejemplo, sería útil en el diseño de tréboles de carreteras para comprender la tasa de cambio de las fuerzas aplicadas a un coche (véase tirón ), a medida que sigue el trébol, y para establecer límites de velocidad razonables, en consecuencia.
La ecuación polinómica de primer grado también podría ser un ajuste exacto para un único punto y un ángulo, mientras que la ecuación polinómica de tercer grado también podría ser un ajuste exacto para dos puntos, una restricción de ángulo y una restricción de curvatura. Son posibles muchas otras combinaciones de restricciones para estas y para ecuaciones polinómicas de orden superior.
Si hay más de n + 1 restricciones ( siendo n el grado del polinomio), la curva polinómica puede seguir realizándose a través de esas restricciones. No es seguro que se ajuste exactamente a todas las restricciones (pero podría suceder, por ejemplo, en el caso de un polinomio de primer grado que se ajuste exactamente a tres puntos colineales ). Sin embargo, en general, se necesita algún método para evaluar cada aproximación. El método de mínimos cuadrados es una forma de comparar las desviaciones.
Se dan varias razones para obtener un ajuste aproximado cuando es posible simplemente aumentar el grado de la ecuación polinomial y obtener una coincidencia exacta:
El grado de la curva polinómica es mayor que el necesario para un ajuste exacto, lo que no es deseable por todas las razones mencionadas anteriormente para los polinomios de orden superior, pero también conduce a un caso en el que hay un número infinito de soluciones. Por ejemplo, un polinomio de primer grado (una línea) restringido por un solo punto, en lugar de los dos habituales, daría un número infinito de soluciones. Esto plantea el problema de cómo comparar y elegir una sola solución, lo que puede ser un problema para el software y también para los humanos. Por este motivo, normalmente es mejor elegir un grado lo más bajo posible para una coincidencia exacta en todas las restricciones, y quizás un grado incluso más bajo, si un ajuste aproximado es aceptable.
También se pueden utilizar, en ciertos casos, otros tipos de curvas, como funciones trigonométricas (como el seno y el coseno).
En espectroscopia, los datos pueden ajustarse con funciones gaussianas , lorentzianas , de Voigt y funciones relacionadas.
En biología, ecología, demografía, epidemiología y muchas otras disciplinas, el crecimiento de una población , la propagación de enfermedades infecciosas, etc. se pueden ajustar utilizando la función logística .
En agricultura, la función sigmoidea logística invertida (curva S) se utiliza para describir la relación entre el rendimiento de los cultivos y los factores de crecimiento. La figura azul se elaboró mediante una regresión sigmoidea de datos medidos en tierras agrícolas. Se puede observar que inicialmente, es decir, cuando la salinidad del suelo es baja, el rendimiento de los cultivos se reduce lentamente a medida que aumenta la salinidad del suelo, mientras que después la disminución avanza más rápidamente.
Si no se puede postular una función de la forma , todavía se puede intentar ajustar una curva plana .
En ciertos casos, también se pueden utilizar otros tipos de curvas, como secciones cónicas (arcos circulares, elípticos, parabólicos e hiperbólicos) o funciones trigonométricas (como el seno y el coseno). Por ejemplo, las trayectorias de los objetos bajo la influencia de la gravedad siguen una trayectoria parabólica cuando se ignora la resistencia del aire. Por lo tanto, tendría sentido hacer coincidir los puntos de datos de la trayectoria con una curva parabólica. Las mareas siguen patrones sinusoidales, por lo que los puntos de datos de mareas deberían coincidir con una onda sinusoidal, o la suma de dos ondas sinusoidales de diferentes períodos, si se consideran los efectos de la Luna y el Sol.
Para una curva paramétrica , es eficaz ajustar cada una de sus coordenadas como una función separada de la longitud del arco ; suponiendo que los puntos de datos se pueden ordenar, se puede utilizar la distancia de la cuerda . [22]
Coope [23] aborda el problema de intentar encontrar el mejor ajuste visual del círculo a un conjunto de puntos de datos 2D. El método transforma elegantemente el problema normalmente no lineal en un problema lineal que se puede resolver sin utilizar métodos numéricos iterativos y, por lo tanto, es mucho más rápido que las técnicas anteriores.
La técnica anterior se extiende a elipses generales [24] añadiendo un paso no lineal, lo que da como resultado un método rápido, pero que encuentra elipses visualmente agradables con orientación y desplazamiento arbitrarios.
Tenga en cuenta que, si bien este debate se realizó en términos de curvas 2D, gran parte de esta lógica también se extiende a superficies 3D, cada parche de las cuales está definido por una red de curvas en dos direcciones paramétricas, normalmente llamadas u y v . Una superficie puede estar compuesta por uno o más parches de superficie en cada dirección.
Muchos paquetes estadísticos como R y software numérico como gnuplot , GNU Scientific Library , Igor Pro , MLAB , Maple , MATLAB , TK Solver 6.0, Scilab , Mathematica , GNU Octave y SciPy incluyen comandos para realizar ajustes de curvas en una variedad de escenarios. También hay programas escritos específicamente para realizar ajustes de curvas; se pueden encontrar en las listas de programas estadísticos y de análisis numérico , así como en Categoría:Software de regresión y ajuste de curvas .