El algoritmo de optimización más simple y fundamental es definitivamente la búsqueda ingenua. Fácil de codificar, óptimo global garantizado, garantía de por vida de esperar problemas complejos.
La primera aceleración es usar el gradiente, también conocido como primeras derivadas, también conocido como pendiente, para determinar en qué dirección disminuye su función. Esto se llama descenso más empinado. Fácil de codificar, mínimo local garantizado, más eficiente que el método ingenuo.
La próxima aceleración es el método de Newton, que utiliza gradientes y segundas derivadas, también conocidas como curvaturas. Puede o no converger para problemas complejos, pero si lo hace, lo hará de forma cuadrática.
- Si solo quiero escribir algoritmos y lógica, y no quiero molestarme con la interfaz de usuario y la codificación frontal, ¿qué tipo de posición de software me conviene más?
- ¿Qué es una explicación intuitiva de los algoritmos de gradiente proximal?
- ¿Existe un algoritmo para resolver el problema de la mochila 0/1 acotada multidimensional en PTIME?
- ¿Cómo calcula YouTube el algoritmo mencionado a continuación?
- ¿Cuáles son las ventajas de desarrollar algoritmos de PNL frente al uso de API?
Esas son las bases de todos los demás algoritmos. Los otros algoritmos son solo ajustes de lo anterior.
Nota: mi respuesta se refiere a algoritmos basados en gradiente para funciones continuas.