Tengo un problema de optimización con estas propiedades:
- La función objetivo no es barata de calcular. Puede ser evaluada hasta alrededor de 10^4 veces en la optimización.
- Hay un montón de óptimos locales.
- Los valores altos se agrupan en torno al máximo, por lo que el problema es algo convexo.
- Las soluciones se limitan a una hipercaja conocida.
- El gradiente es desconocido, pero intuitivamente, la función es suave.
- Es una función de hasta 50 variables. Los gráficos de abajo son ejemplos del caso especial 2D.
Nelder-Mead se atasca mucho en el optimo local. Por encima de tres variables, no hay posibilidad de usar la fuerza bruta. He mirado en los algoritmos genéticos, pero parecen requerir muchas evaluaciones de la función objetivo.
¿Qué tipo de algoritmo debería buscar?