El ajuste de curvas [1] [2] es el proceso de construir 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 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, "ajustar" 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 incluir ambos ejes de desplazamiento de un punto de la curva. Los ajustes geométricos no son populares porque normalmente 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 que se ajuste una función de la forma y = f ( x ) .
La ecuación polinómica de primer grado.
es una recta 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 el orden de la ecuación se aumenta a un polinomio de segundo grado, se obtiene lo siguiente:
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 suelen agregarse 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 podrían agregarse restricciones de orden superior, como "el cambio en la tasa de curvatura". Esto, por ejemplo, sería útil en el diseño de una carretera en forma de trébol para comprender la tasa de cambio de las fuerzas aplicadas a un automóvil (ver tirón ), a medida que sigue la hoja de trébol, y 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 solo 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 éstas 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 aún se puede ejecutar a través de esas restricciones. No es seguro un ajuste exacto 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 polinómica y obtener una coincidencia exacta:
Que el grado de la curva polinomial sea mayor que el necesario para un ajuste exacto no es deseable por todas las razones enumeradas anteriormente para polinomios de alto orden, 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) limitado 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 tanto para el software como para los humanos. Por esta razón, normalmente es mejor elegir un grado tan bajo como sea posible para una coincidencia exacta de todas las restricciones, y quizás un grado incluso más bajo, si un ajuste aproximado es aceptable.
En determinados casos, también se pueden utilizar otros tipos de curvas, como funciones trigonométricas (como el seno y el coseno).
En espectroscopia, los datos pueden equiparse con funciones gaussianas , lorentzianas , de Voigt y 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 mediante 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 cifra azul se obtuvo mediante una regresión sigmoidea de datos medidos en tierras agrícolas. Se puede observar que inicialmente, es decir, con baja salinidad del suelo, el rendimiento del cultivo se reduce lentamente al aumentar la salinidad del suelo, mientras que posteriormente la disminución progresa 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 determinados 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 seno y 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 deben compararse 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 efectivo ajustar cada una de sus coordenadas como una función separada de la longitud del arco ; Suponiendo que los puntos de datos se puedan ordenar, se puede utilizar la distancia de la cuerda . [22]
Coope [23] aborda el problema de intentar encontrar el mejor ajuste visual de un 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 puede resolverse sin utilizar métodos numéricos iterativos y, por tanto, es mucho más rápido que las técnicas anteriores.
La técnica anterior se extiende a elipses generales [24] agregando un paso no lineal, lo que da como resultado un método que es rápido pero que encuentra elipses visualmente agradables con orientación y desplazamiento arbitrarios.
Tenga en cuenta que si bien esta discusión fue 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, típicamente 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 ajustar 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 de análisis estadístico y numérico , así como en la Categoría: Software de regresión y ajuste de curvas .