Optimization is a method for systematically improving system performance or resource allocation to achieve desired outcomes.Un alpinista ve ante sí tres crestas, pero no necesita la más alta, sino el paso más bajo. La optimización busca matemáticamente el mínimo (o máximo) de una función objetivo, un indicador numérico de la calidad de la solución. Las restricciones definen la región factible: no se puede caminar por el aire ni con una pendiente superior a 45 grados. La programación lineal trabaja con pendientes rectas, donde la respuesta se encuentra en un vértice. Para colinas suaves se utiliza el descenso de gradiente. Si el paisaje está surcado por barrancos y rocas, entran en juego los algoritmos evolutivos: lanzan toda una multitud de alpinistas virtuales, y las rutas más exitosas se cruzan y mutan. Así se encuentra el camino en espacios multidimensionales donde no se puede dibujar un mapa. Cuando el paso se vuelve más pequeño que un milímetro, la búsqueda se detiene: se ha conquistado el paso.
Sus raíces se remontan al cálculo de variaciones de los siglos XVII y XVIII, pero la etapa moderna comenzó en los años 1940 con la creación de la programación lineal y el método símplex. El desarrollo de la optimización no lineal en los años 1960 aportó los métodos de penalización y gradientes conjugados. En los años 1980 aparecieron los algoritmos de punto interior, que revolucionaron la resolución de problemas a gran escala. Hoy, la optimización es la base de todas las tecnologías de aprendizaje automático.
La mayoría de los algoritmos construyen una secuencia de puntos que convergen al mínimo. El descenso de gradiente avanza en dirección opuesta al gradiente. En el aprendizaje automático, el gradiente de la función de pérdida se calcula sobre un subconjunto aleatorio de datos (lote), lo que permite optimizar miles de millones de parámetros. La regularización añade penalizaciones por complejidad para evitar el sobreajuste. Para problemas con restricciones se utiliza el método del gradiente reducido o la programación cuadrática secuencial. La optimización global emplea métodos bayesianos y búsqueda con árboles de decisión.
Los navegadores GPS trazan rutas, las aerolíneas elaboran horarios de vuelos y los ingenieros calculan formas aerodinámicas: todo esto es trabajo de los algoritmos de optimización.
El problema del viajante —visitar 100 ciudades por la ruta más corta— tiene más combinaciones que átomos en el universo. Pero los optimizadores inteligentes encuentran una solución en segundos.
| x | variable | Input sequence — sequence |
| n | variable | Index of output element — index |
| i | variable | Left endpoint of interval — index |
| j | variable | Right endpoint of interval — index |
| k | variable | Summation index — index |
| \sup | operador | Takes the least upper bound of a set — supremum |
| \sum_{k=i}^j | operador | Adds terms from index i to j — finite summation |
| f | variable | objective function value — objective function value |
| g | variable | primary objective function — primary objective function |
| h | variable | penalty function — penalty function |
| λ | variable | penalty weight — penalty weight |
| \theta_k | variable | Parameter vector at iteration k — parameter vector |
| \theta_{k+1} | variable | Updated parameter vector at iteration k+1 — parameter vector |
| \alpha_k | variable | Learning rate (step size) at iteration k — tasa de aprendizaje |
| f(\theta_k) | variable | Objective function evaluated at \theta_k — objective function |
| \nabla_\theta | operador | Computes the vector of partial derivatives with respect to each parameter — gradient operator |
| Ψ | variable | Wave function — función de onda |
| t | variable | Time — tiempo second |
| τ | variable | Time step — time step second |
| e^{τW} | operador | Applies the evolution operator for the W part — exponential operator |
| e^{τT} | operador | Applies the evolution operator for the T part — exponential operator |
| g | variable | function whose growth is being bounded |
| n | variable | input size parameter |
| O | operador | asymptotic upper bound up to constant factor — big o notation |
















