1 votos

Ajuste de funciones numéricas

En resumen tengo un programa que integra numéricamente una función con múltiples parámetros, y me gustaría ajustarla a unos datos. Ahora bien, si tuviera la forma analítica de la función podría, por supuesto, encontrar el mínimo de mis criterios de ajuste (digamos Chi Cuadrado.) Así que, para los 3 parámetros que me importan, podría simplemente probar un montón de valores para cada parámetro, ¡pero eso podría llevarme una eternidad! La integración tarda al menos 1.2s (mínimo), y si tuviera que probar 10 valores para cada parámetro... Y lo que es más importante, ¡esto no es inteligente! ¿Existe alguna forma sólida de buscar mínimos en una evaluación no analítica?

2voto

Shabaz Puntos 403

Cualquier libro de análisis numérico tendrá una sección sobre minimización multidimensional. Existen varios métodos. El hecho de que no tengas una forma funcional no es importante. Estos métodos sólo llaman a su rutina para evaluar la función (y tal vez el gradiente, si se puede) en varios puntos. Tienen formas inteligentes de elegir los puntos en los que evaluar la función. Secciones 10.4 a 10.7 en Recetas numéricas tiene rutinas en C. Otros tendrán otras favoritas.

2voto

agcala Puntos 111

¿Has oído hablar de la Método Simplex de Nelder y Mead para la minimización de funciones? Inténtalo. Me parece que la cosa que estás buscando. Aquí tiene Aplicación de Python . Pero también puede encontrarlo en C++ , Fortran y otros idiomas... si te interesa buscar en Google.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X