NAG: Optimización sin derivadas para la rutina de ajuste de datos
- Detalles
- Categoría: NAG
- Visto: 8147
Calibrar los parámetros de modelos complejos para ajustar las observaciones del mundo real es uno de los problemas más comunes que se encuentran en la industria (finanzas, simulaciones multifísicas, ingeniería, etc).
Considérese un proceso que es observado en los instantes de tiempo ti y medido con resultados yi, para i=1,2,…,m. Además, se considera que el proceso se comporta de acuerdo con un modelo numérico ϕ(t,x) donde x son parámetros del modelo. Dado el hecho que las medidas pueden ser imprecisas y que el proceso puede no seguir exactamente el modelo, es beneficioso encontrar parámetros del modelo x de forma que el error del ajuste del modelo a las medidas se minimice. Esto se puede formular como un problema de optimización en el que cada x son las variables de decisión y la función objetivo es la suma de errores cuadráticos del ajuste de cada medida individual, de forma que:
(1)
NAG introduce, en Mark 26.1, un resolvedor sin derivadas basado en modelos (e04ff) capaz de aprovechar la estructura de los problemas de calibración. Forma parte de la NAG Optimization Modelling Suite que simplifica significativamente la interfaz del resolvedor y las rutinas relacionadas.
Optimización sin derivadas para problemas de mínimos cuadrados
Para resolver un problema de mínimos cuadrados (1) la mayoría de algoritmos estándar de optimización como Gauss–Newton requieren derivadas del modelo o sus estimadores.
Pueden calcularse mediante:
- La escritura explícita de las derivadas
- Diferenciación algorítmica (véanse las herramientas NAG AD)
- Diferencias finitas (bumping),
Si las derivadas exactas son fáciles de calcular entonces es preferible utilizar métodos basados en las derivadas.
Sin embargo, escribir las derivadas explícitamente o aplicar métodos AD puede ser imposible si el modelo es una caja negra.
La alternative, estimar las derivadas mediante diferencias finitas, puede convertirse rápidamente en algo impracticable o computacionalmente costoso al presentar varias inconvenientes:
- Caro, una evaluación del gradiente requiere al menos n+1evaluaciones del modelo;
- Impreciso, el tamaño de las perturbaciones del modelo h influye en gran medida en la calidad de las estimaciones de la derivada y no es fácil de escoger;
- Sensible al ruido, si el modelo está sujeto a algunas aleatoriedades (p. ej. simulaciones de Monte Carlo) o se calcula con poca precisión para ahorrar tiempo de cálculo entonces las estimaciones de diferencias finitas serán muy imprecisas;
- Pobre uso de evaluaciones del modelo, cada evaluación se utiliza únicamente para un elemento de un gradiente y la información se descarga en cuanto tan pronto el gradiente ya no es útil para el resolvedor.
Estos problemas pueden ralentizar en gran medida la convergencia del resolvedor de optimización o incluso impedirla completamente.
En estos casos, el uso de un resolvedor sin derivadas es la opción preferible ya que:
- Es capaz de alcanzar la convergencia con muchas menos evaluaciones de la función;
- Es más robusta respecto al ruido en las evaluaciones del modelo.
Ilustración de un caso de prueba ruidoso:
Considérese el siguiente problema sin contornos donde ϵ es algún ruido uniforme aleatorio en el interval [−ν,ν] y ri son los residuos de la función de test de Rosenbrock (m=n=2):
Vamos a resolver este problema con un método de Gauss–Newton combinado con diferencias finitas (e04fc) y l nuevo resolvedor sin derivadas (e04ff).
En la siguiente tabla presentamos el número de evaluaciones del modelo necesario para alcanzar un punto dentro de 10−5 de la solución real para varios niveles de ruido ν (la no convergencia se marca con ∞).
El número de evaluaciones del objetivo requeridas para alcanzar un punto dentro de 10−5 de la solución
En este ejemplo, el nuevo resolvedor sin derivadas en menos costoso en términos de evaluaciones del modelo y mucho más robusto respecto al ruido.
Referencias
- Powell M J D (2009) The BOBYQA algorithm for bound constrained optimization without derivatives Report DAMTP 2009/NA06 University of Cambridge http://www.damtp.cam.ac.uk/user/na/NA_papers/NA2009_06.pdf (link externo)
- Zhang H, CONN A R and Scheinberg k (2010) A Derivative-Free Algorithm for Least-Squares Minimization SIAM J. Optim. 20(6)3555–3576