Optimización matemática
Definición
En matemáticas, ciencias de la computación e investigación de operaciones, optimización matemática o programación matemática , optimización de ortografía alternativa , es la selección de un mejor elemento (con respecto a algún criterio) de algún conjunto de alternativas disponibles.
En el caso más simple, un problema de optimización consiste en maximizar o minimizar una función real eligiendo sistemáticamente los valores de entrada desde dentro de un conjunto permitido y calculando el valor de la función. La generalización de la teoría y técnicas de optimización a otras formulaciones constituye un área grande de matemática aplicada. De manera más general, la optimización incluye encontrar los valores "mejores disponibles" de alguna función objetivo dado un dominio definido (o entrada), que incluye una variedad de diferentes tipos de funciones objetivas y diferentes tipos de dominios.
Problemas de optimización
Un problema de optimización se puede representar de la siguiente manera:
- Dado: una función de algún conjunto a los números reales
- Buscado: un elemento tal que para todos ("minimización") o tal que para todos ("maximización").
Dicha formulación se llama un problema de optimización o un problema de programación matemática (un término que no está directamente relacionado con la programación de computadoras, pero que todavía se usa, por ejemplo, en la programación lineal - ver Historial a continuación). Muchos problemas teóricos y del mundo real se pueden modelar en este marco general. Los problemas formulados con esta técnica en el campo de la física y la visión por computadora pueden referirse a la técnica como minimización de la energía, al hablar del valor de la función como la representación de la energía del sistema que se modela.
Típicamente, es algún subconjunto del espacio euclidiano , a menudo especificado por un conjunto de restricciones , igualdades o desigualdades que los miembros tienen que satisfacer. El dominio de se llama el espacio de búsqueda o el conjunto de opciones , mientras que los elementos de se denominan soluciones candidatas o soluciones factibles .
La función se denomina, de diversas maneras, una función objetivo , una función de pérdida o función de costo (minimización), una función de utilidad o función de adecuación (maximización) o, en ciertos campos, una función de energía o energía funcional . Una solución factible que minimiza (o maximiza, si ese es el objetivo) la función objetivo se llama una solución óptima .
En matemáticas, los problemas de optimización convencionales generalmente se expresan en términos de minimización.
Un mínimo local se define como un elemento para el que existen algunos tales que
- para todos donde la expresión se mantiene;
es decir, en alguna región alrededor de todos los valores de la función son mayores o iguales que el valor en ese elemento. Los máximos locales se definen de manera similar.
Mientras que un mínimo local es al menos tan bueno como cualquier elemento cercano, un mínimo global es al menos tan bueno como cualquier elemento factible. Generalmente, a menos que tanto la función objetivo como la región factible sean convexas en un problema de minimización, puede haber varios mínimos locales. En un problema convexo, si hay un mínimo local que es interior (no al límite del conjunto de elementos factibles), también es el mínimo global, pero un problema no convexo puede tener más de un mínimo local que no todos necesitan ser mínimos globales
Una gran cantidad de algoritmos propuestos para resolver problemas no convexos, incluida la mayoría de los solucionadores disponibles en el mercado, no son capaces de distinguir entre soluciones óptimas locales y soluciones óptimas a nivel mundial, y tratarán las primeras como soluciones reales al problema original. La optimización global es la rama de las matemáticas aplicadas y el análisis numérico que se ocupa del desarrollo de algoritmos determinísticos que son capaces de garantizar la convergencia en tiempo finito a la solución óptima real de un problema no convexo.
Notación
Los problemas de optimización a menudo se expresan con notación especial. Aquí hay unos ejemplos:
Valor mínimo y máximo de una función
Considere la siguiente notación:
Esto denota el valor mínimo de la función objetivo , al elegir x del conjunto de números reales . El valor mínimo en este caso es , que ocurre en .
Del mismo modo, la notación
pregunta por el valor máximo de la función objetivo 2 x , donde x puede ser cualquier número real. En este caso, no hay tal máximo ya que la función objetivo no tiene límites, por lo que la respuesta es "infinito" o "indefinido".
Argumentos de entrada óptimos
Considere la siguiente notación:
o equivalente
Esto representa el valor (o valores) del argumento x en el intervalo que minimiza (o minimiza) la función objetivo x + 1 (el valor mínimo real de esa función no es lo que el problema solicita). En este caso, la respuesta es x = -1, ya que x = 0 es inviable, es decir, no pertenece al conjunto factible.
Similar,
o equivalente
representa el par (o pares) que maximiza (o maximiza) el valor de la función objetivo , con la restricción añadida de que x se encuentra en el intervalo (de nuevo, el valor máximo real de la expresión no importa). En este caso, las soluciones son los pares de la forma (5, 2kπ) y (-5, (2k + 1) π), donde k varía en todos los enteros.
arg min y arg max a veces también se escriben argmin y argmax , y representan argumento del mínimo y argumento del máximo .
Historia
Fermat y Lagrange encontraron fórmulas basadas en cálculo para identificar óptimas, mientras que Newton y Gauss propusieron métodos iterativos para avanzar hacia un óptimo.
El término "programación lineal" para ciertos casos de optimización se debió a George B. Dantzig, aunque gran parte de la teoría había sido introducida por Leonid Kantorovich en 1939. (La programación en este contexto no se refiere a la programación de computadoras, sino a partir del uso del programa por los militares de los Estados Unidos para referirse a los programas de entrenamiento y logística propuestos, que eran los problemas que Dantzig estudió en ese momento). Dantzig publicó el algoritmo Simplex en 1947, y John von Neumann desarrolló la teoría de la dualidad en el mismo año.
Otros investigadores importantes en la optimización matemática incluyen lo siguiente:
- Aharon Ben-Tal
- Richard Bellman
- Roger Fletcher
- Ronald A. Howard
- Fritz John
- Narendra Karmarkar
- William Karush
- Leonid Khachiyan
- Bernard Koopman
- Harold Kuhn
- László Lovász
- Arkadi Nemirovski
- Yurii Nesterov
- Boris Polyak
- Lev Pontryagin
- James Renegar
- R. Tyrrell Rockafellar
- Cornelis Roos
- Naum Z. Shor
- Michael J. Todd
- Albert Tucker
Subcampos principales
- La programación convexa estudia el caso cuando la función objetivo es convexa (minimización) o cóncava (maximización) y el conjunto de restricciones es convexo. Esto puede verse como un caso particular de programación no lineal o como generalización de programación cuadrática lineal o convexa.
- La programación lineal (LP), un tipo de programación convexa, estudia el caso en el que la función objetivo f es lineal y las restricciones se especifican utilizando solo desigualdades lineales y desigualdades. Tal conjunto de restricciones se denomina poliedro o politopo si está delimitado.
- La programación de cono de segundo orden (SOCP) es un programa convexo e incluye ciertos tipos de programas cuadráticos.
- La programación semidefinida (SDP) es un subcampo de optimización convexa donde las variables subyacentes son matrices semidefinidas. Es una generalización de la programación cuadrática lineal y convexa.
- La programación cónica es una forma general de programación convexa. LP, SOCP y SDP se pueden ver como programas cónicos con el tipo de cono apropiado.
- La programación geométrica es una técnica mediante la cual las restricciones objetivas y de desigualdad expresadas como posinomios y restricciones de igualdad como monomios pueden transformarse en un programa convexo.
- La programación de enteros estudia los programas lineales en los que algunas o todas las variables están obligadas a asumir valores enteros. Esto no es convexo, y en general es mucho más difícil que la programación lineal regular.
- La programación cuadrática permite que la función objetivo tenga términos cuadráticos, mientras que el conjunto factible debe especificarse con desigualdades lineales y desigualdades. Para formas específicas del término cuadrático, este es un tipo de programación convexa.
- La programación fraccional estudia la optimización de las relaciones de dos funciones no lineales. La clase especial de programas fraccionarios cóncavos se puede transformar en un problema de optimización convexa.
- La programación no lineal estudia el caso general en el cual la función objetivo o las restricciones o ambas contienen partes no lineales. Esto puede ser o no un programa convexo. En general, si el programa es convexo afecta la dificultad de resolverlo.
- La programación estocástica estudia el caso en el que algunas de las restricciones o parámetros dependen de variables aleatorias.
- La programación robusta es, al igual que la programación estocástica, un intento de capturar la incertidumbre en los datos subyacentes al problema de optimización. Objetivos de optimización robustos para encontrar soluciones que sean válidas en todas las realizaciones posibles de las incertidumbres.
- La optimización combinatoria se refiere a problemas donde el conjunto de soluciones factibles es discreto o puede reducirse a uno discreto.
- La optimización estocástica se usa con mediciones de funciones aleatorias (ruidosas) o entradas aleatorias en el proceso de búsqueda.
- La optimización de dimensiones infinitas estudia el caso cuando el conjunto de soluciones factibles es un subconjunto de un espacio de dimensión infinita, como un espacio de funciones.
- Heurística y metaheurística hacen pocas suposiciones o ninguna sobre el problema que se optimiza. Por lo general, la heurística no garantiza la necesidad de encontrar una solución óptima. Por otro lado, las heurísticas se utilizan para encontrar soluciones aproximadas para muchos problemas de optimización complicados.
- Restricción de restricciones estudia el caso en el cual la función objetivo f es constante (esto se usa en inteligencia artificial, particularmente en razonamiento automatizado).
- La programación de restricciones es un paradigma de programación en el que las relaciones entre variables se expresan en forma de restricciones.
- La programación disyuntiva se usa cuando al menos una restricción debe cumplirse, pero no todas. Es de uso particular en la programación.
- El mapeo espacial es un concepto para el modelado y la optimización de un sistema de ingeniería para la precisión del modelo de alta fidelidad (fina) que explota un modelo sustitutivo grueso o sustituto físicamente adecuado.
En una serie de subcampos, las técnicas están diseñadas principalmente para la optimización en contextos dinámicos (es decir, la toma de decisiones en el tiempo):
- Cálculo de variaciones busca optimizar una acción integral sobre un espacio a un extremo variando una función de las coordenadas.
- La teoría del control óptimo es una generalización del cálculo de variaciones que introduce políticas de control.
- La programación dinámica estudia el caso en el que la estrategia de optimización se basa en dividir el problema en subproblemas más pequeños. La ecuación que describe la relación entre estos subproblemas se llama ecuación de Bellman.
- La programación matemática con restricciones de equilibrio es donde las restricciones incluyen desigualdades variacionales o complementariedades.
Optimización multiobjetivo
Agregar más de un objetivo a un problema de optimización agrega complejidad. Por ejemplo, para optimizar un diseño estructural, uno desearía un diseño ligero y rígido. Cuando dos objetivos entran en conflicto, se debe crear una compensación. Puede haber un diseño más liviano, un diseño más rígido y una infinidad de diseños que comprometen el peso y la rigidez. El conjunto de diseños de compromiso que no se pueden mejorar según un criterio sin dañar otro criterio se conoce como el conjunto de Pareto. La curva creada que representa el peso frente a la rigidez de los mejores diseños se conoce como frontera de Pareto.
Se considera que un diseño es "óptimo de Pareto" (equivalentemente, "eficiente de Pareto" o en el conjunto de Pareto) si no está dominado por ningún otro diseño: si es peor que otro en algunos aspectos y no mejor en ningún aspecto, entonces está dominado y no es Pareto óptimo.
La elección entre las soluciones de "óptimo de Pareto" para determinar la "solución favorita" se delega al responsable de la toma de decisiones. En otras palabras, la definición del problema como optimización multiobjetivo indica que falta información: se dan objetivos deseables, pero las combinaciones de los mismos no se evalúan entre sí. En algunos casos, la información que falta se puede derivar mediante sesiones interactivas con el responsable de la toma de decisiones.
Los problemas de optimización multiobjetivo se han generalizado aún más en problemas de optimización de vector donde el orden (parcial) ya no está dado por el orden de Pareto.
Optimización multimodal
Los problemas de optimización a menudo son multimodales; es decir, poseen múltiples buenas soluciones. Todos podrían ser globalmente buenos (el mismo valor de función de costo) o podría haber una combinación de soluciones globalmente buenas y localmente buenas. Obtener todas (o al menos algunas de) las soluciones múltiples es el objetivo de un optimizador multimodal.
Las técnicas de optimización clásicas debido a su enfoque iterativo no funcionan satisfactoriamente cuando se utilizan para obtener múltiples soluciones, ya que no se garantiza que se obtengan soluciones diferentes incluso con diferentes puntos de partida en múltiples ejecuciones del algoritmo. Los algoritmos evolutivos, sin embargo, son un enfoque muy popular para obtener múltiples soluciones en una tarea de optimización multimodal.
Clasificación de puntos críticos y extremos
Problema de viabilidad
El problema de la satisfacibilidad , también llamado problema de viabilidad , es solo el problema de encontrar cualquier solución factible sin tener en cuenta el valor objetivo. Esto se puede considerar como el caso especial de optimización matemática donde el valor objetivo es el mismo para cada solución, y por lo tanto cualquier solución es óptima.
Muchos algoritmos de optimización deben comenzar desde un punto factible. Una forma de obtener dicho punto es relajar las condiciones de viabilidad utilizando una variable de holgura; con suficiente holgura, cualquier punto de partida es factible. Luego, minimice esa variable floja hasta que la holgura sea nula o negativa.
Existencia
El teorema del valor extremo de Karl Weierstrass establece que una función continua de valor real en un conjunto compacto alcanza su valor máximo y mínimo. De manera más general, una función semicontinua inferior en un conjunto compacto alcanza su mínimo; una función semicontinua superior en un conjunto compacto alcanza su máximo.
Condiciones necesarias para la optimalidad
Uno de los teoremas de Fermat establece que el óptimo de problemas no restringidos se encuentra en puntos estacionarios, donde la primera derivada o el gradiente de la función objetivo es cero (ver prueba de la primera derivada). En general, pueden encontrarse en puntos críticos, donde la primera derivada o gradiente de la función objetivo es cero o no está definida, o en el límite del conjunto de opciones. Una ecuación (o conjunto de ecuaciones) que establece que la (s) primera (s) derivada (s) es (n) cero (s) en un óptimo interior se denomina 'condición de primer orden' o un conjunto de condiciones de primer orden.
El método de multiplicador de Lagrange se puede encontrar con los problemas de igualdad limitada. El óptimo de problemas con restricciones de igualdad y / o desigualdad se puede encontrar usando las 'condiciones de Karush-Kuhn-Tucker'.
Condiciones suficientes para la optimalidad
Mientras que la primera prueba derivativa identifica puntos que pueden ser extremos, esta prueba no distingue un punto que es un mínimo de uno que es un máximo o uno que no es ninguno. Cuando la función objetivo es doblemente diferenciable, estos casos pueden distinguirse verificando la segunda derivada o la matriz de segundas derivadas (llamada la matriz de Hesse) en problemas no restringidos, o la matriz de segundas derivadas de la función objetivo y las restricciones llamadas las fronteras Hessian en problemas limitados. Las condiciones que distinguen los máximos, o los mínimos, de otros puntos estacionarios se llaman 'condiciones de segundo orden' (ver 'Segunda prueba derivada'). Si una solución candidata cumple con las condiciones de primer orden,
Sensibilidad y continuidad de optima
El teorema de la envolvente describe cómo cambia el valor de una solución óptima cuando cambia un parámetro subyacente. El proceso de cálculo de este cambio se llama estática comparativa.
El teorema máximo de Claude Berge (1963) describe la continuidad de una solución óptima en función de los parámetros subyacentes.
Cálculo de optimización
Para problemas no restringidos con funciones doblemente diferenciables, se pueden encontrar algunos puntos críticos al encontrar los puntos donde el gradiente de la función objetivo es cero (es decir, los puntos estacionarios). De manera más general, un subgrado de cero certifica que se ha encontrado un mínimo local para problemas de minimización con funciones convexas y otras funciones Lipschitz locales.
Además, los puntos críticos se pueden clasificar usando la definición de la matriz de Hesse: si el Hesiano es positivo definido en un punto crítico, entonces el punto es un mínimo local; si la matriz de Hesse es negativa definida, entonces el punto es un máximo local; finalmente, si es indefinido, entonces el punto es algún tipo de punto de silla de montar.
Los problemas limitados a menudo pueden transformarse en problemas sin restricciones con la ayuda de los multiplicadores de Lagrange. La relajación lagrangiana también puede proporcionar soluciones aproximadas a problemas restringidos difíciles.
Cuando la función objetivo es convexa, cualquier mínimo local también será un mínimo global. Existen técnicas numéricas eficientes para minimizar las funciones convexas, como los métodos del punto interior.
Técnicas de optimización computacional
Para resolver problemas, los investigadores pueden usar algoritmos que terminan en un número finito de pasos, o métodos iterativos que convergen a una solución (en una clase específica de problemas) o heurísticos que pueden proporcionar soluciones aproximadas a algunos problemas (aunque sus iteraciones no necesitan converger).
Algoritmos de optimización
- Algoritmo Simplex de George Dantzig, diseñado para programación lineal.
- Extensiones del algoritmo simplex, diseñado para programación cuadrática y para programación fraccional lineal.
- Variantes del algoritmo simplex que son especialmente adecuadas para la optimización de la red.
- Algoritmos combinatorios
- Algoritmos de optimización cuántica
Métodos iterativos
Los métodos iterativos utilizados para resolver problemas de programación no lineal difieren según si evalúan Hesse, degradados o solo valores de función. Si bien la evaluación de Hessians (H) y gradientes (G) mejora la tasa de convergencia, para las funciones para las cuales estas cantidades existen y varían lo suficientemente bien, tales evaluaciones aumentan la complejidad computacional (o costo computacional) de cada iteración. En algunos casos, la complejidad computacional puede ser excesivamente alta.
Un criterio principal para los optimizadores es simplemente el número de evaluaciones de funciones requeridas, ya que a menudo esto ya es un gran esfuerzo de cálculo, por lo general mucho más esfuerzo que dentro del optimizador mismo, que principalmente tiene que operar sobre las N variables. Los derivados proporcionan información detallada para tales optimizadores, pero son aún más difíciles de calcular, por ejemplo, aproximar el gradiente toma al menos N + 1 evaluaciones de funciones. Para las aproximaciones de las segundas derivadas (recogidas en la matriz de Hesse) el número de evaluaciones de funciones es del orden de N². El método de Newton requiere derivadas de segundo orden, por lo que para cada iteración el número de llamadas de función es del orden de N², pero para un optimizador de gradiente puro simple es solo N. Sin embargo, los optimizadores de gradiente necesitan generalmente más iteraciones que el algoritmo de Newton.
- Métodos que evalúan Hessians (o Hessians aproximado, usando diferencias finitas):
- El método de Newton
- Programación cuadrática secuencial: un método basado en Newton para problemas restringidos de pequeña y mediana escala . Algunas versiones pueden manejar problemas de grandes dimensiones.
- Métodos de punto interior: esta es una gran clase de métodos para la optimización restringida. Algunos métodos de punto interior usan información de (sub) gradiente y otros requieren la evaluación de Hesse.
- Métodos que evalúan gradientes, o gradientes aproximados de alguna manera (o incluso subgradientes):
- Métodos de descendencia coordinada: Algoritmos que actualizan una sola coordenada en cada iteración
- Métodos de gradiente de conjugado: métodos iterativos para problemas grandes. (En teoría, estos métodos terminan en un número finito de pasos con funciones objetivo cuadráticas, pero esta terminación finita no se observa en la práctica en computadoras de precisión finita).
- Descenso de gradiente (alternativamente, "descenso más empinado" o "ascenso más pronunciado"): un método (lento) de interés histórico y teórico, que ha renovado el interés por encontrar soluciones aproximadas de enormes problemas.
- Métodos de subgrado: un método iterativo para grandes funciones locales de Lipschitz utilizando gradientes generalizados. Siguiendo a Boris T. Polyak, los métodos de proyección de subgrado son similares a los métodos de gradiente conjugado.
- Método de descenso del paquete: un método iterativo para problemas de tamaño pequeño-mediano con funciones locales de Lipschitz, particularmente para problemas de minimización convexa. (Similar a los métodos de gradiente conjugado)
- Método elipsoide: un método iterativo para pequeños problemas con funciones objetivo cuasiconvexo y de gran interés teórico, particularmente en el establecimiento de la complejidad de tiempo polinomial de algunos problemas de optimización combinatoria. Tiene similitudes con los métodos Cuasi-Newton.
- Método de gradiente condicional (Frank-Wolfe) para la minimización aproximada de problemas especialmente estructurados con restricciones lineales, especialmente con redes de tráfico. Para problemas generales no restringidos, este método se reduce al método de gradiente, que se considera obsoleto (para casi todos los problemas).
- Métodos cuasi-Newton: métodos iterativos para problemas medianos y grandes (p. Ej., N <1000).
- Método de aproximación estocástica de perturbación simultánea (SPSA) para la optimización estocástica; usa una aproximación de gradiente aleatorio (eficiente).
- Métodos que evalúan solo los valores de función: si un problema es continuamente diferenciable, los gradientes pueden aproximarse usando diferencias finitas, en cuyo caso se puede usar un método basado en gradiente.
- Métodos de interpolación
- Métodos de búsqueda de patrones, que tienen mejores propiedades de convergencia que la heurística de Nelder-Mead (con simplices), que se enumeran a continuación.
Convergencia global
De manera más general, si la función objetivo no es una función cuadrática, muchos métodos de optimización utilizan otros métodos para garantizar que alguna subsecuencia de iteraciones converja a una solución óptima. El primer y aún popular método para asegurar la convergencia se basa en búsquedas de línea, que optimizan una función a lo largo de una dimensión. Un segundo método cada vez más popular para garantizar la convergencia utiliza regiones de confianza. Tanto las búsquedas de línea como las regiones de confianza se usan en métodos modernos de optimización no diferenciable. Por lo general, un optimizador global es mucho más lento que los optimizadores locales avanzados (como BFGS), por lo que a menudo se puede construir un optimizador global eficiente iniciando el optimizador local desde diferentes puntos de partida.
Heurística
Además de los algoritmos (terminación finita) y los métodos iterativos (convergentes), existen heurísticos. Una heurística es cualquier algoritmo que no está garantizado (matemáticamente) para encontrar la solución, pero que sin embargo es útil en ciertas situaciones prácticas. Lista de algunas heurísticas conocidas:
- Algoritmo memético
- Evolución diferencial
- Algoritmos evolutivos
- Relajación dinámica
- Algoritmos genéticos
- Hill climbing con rearranque aleatorio
- La heurística simplicial de Nelder-Mead: una heurística popular para la minimización aproximada (sin gradientes de llamada)
- Optimización de Enjambre de partículas
- Búsqueda cuco
- Algoritmo de búsqueda gravitacional
- Optimización de colonias de abejas artificiales
- Recocido simulado
- Túnel estocástico
- Búsqueda Tabu
- Optimización de búsqueda reactiva (RSO) implementada en LIONsolver
Aplicaciones
Mecánica
Los problemas en la dinámica rígida del cuerpo (en particular, la dinámica corporal rígida articulada) a menudo requieren técnicas de programación matemática, ya que se puede ver la dinámica rígida del cuerpo como un intento de resolver una ecuación diferencial ordinaria en una variedad de restricciones; las restricciones son varias restricciones geométricas no lineales, como "estos dos puntos siempre deben coincidir", "esta superficie no debe penetrar en ningún otro", o "este punto siempre debe estar en algún lugar de esta curva". Además, el problema de calcular las fuerzas de contacto puede resolverse resolviendo un problema de complementariedad lineal, que también puede verse como un problema de QP (programación cuadrática).
Muchos problemas de diseño también se pueden expresar como programas de optimización. Esta aplicación se llama optimización de diseño. Un subconjunto es la optimización de la ingeniería, y otro subconjunto reciente y creciente de este campo es la optimización del diseño multidisciplinar, que, si bien es útil en muchos problemas, se ha aplicado en particular a problemas de ingeniería aeroespacial.
Este enfoque puede aplicarse en cosmología y astrofísica.
Economía y Finanzas
La economía es lo suficientemente cerca vinculada a la optimización de los agentes que una definición influyente describe relacionado con lo anterior la economía en tanto ciencia como el "estudio del comportamiento humano como una relación entre fines y medios escasos" con usos alternativos. La teoría de la optimización moderna incluye la teoría de optimización tradicional, pero también se superpone con la teoría de juegos y el estudio del equilibrio económico. Los códigos del Journal of Economic Literature clasifican la programación matemática, las técnicas de optimización y los temas relacionados bajo JEL: C61-C63.
En microeconomía, el problema de maximización de la utilidad y su problema dual, el problema de la minimización del gasto, son problemas de optimización económica. En la medida en que se comporten de manera coherente, se supone que los consumidores maximizan su utilidad, mientras que se supone que las empresas maximizan sus ganancias. Además, los agentes a menudo son modelados como aversos al riesgo, por lo que prefieren evitar el riesgo. Los precios de los activos también se modelan utilizando la teoría de la optimización, aunque las matemáticas subyacentes se basan en la optimización de procesos estocásticos más que en la optimización estática. La teoría del comercio internacional también utiliza la optimización para explicar los patrones comerciales entre las naciones. La optimización de las carteras es un ejemplo de optimización multiobjetivo en economía.
Desde la década de 1970, los economistas han modelado las decisiones dinámicas a través del tiempo utilizando la teoría del control. Por ejemplo, los modelos de búsqueda dinámica se utilizan para estudiar el comportamiento del mercado de trabajo. Una distinción crucial es entre modelos determinísticos y estocásticos. Los macroeconomistas construyen modelos dinámicos de equilibrio general estocástico (DSGE) que describen la dinámica de toda la economía como resultado de las decisiones de optimización interdependientes de los trabajadores, los consumidores, los inversores y los gobiernos.
Ingenieria Eléctrica
Algunas aplicaciones comunes de técnicas de optimización en ingeniería eléctrica incluyen el diseño de filtros activos, reducción de campo de dispersión en los sistemas de almacenamiento de energía magnéticos superconductores, diseño mapeo espacial de las estructuras de microondas, antenas de teléfonos móviles, el diseño basado en el electromagnetismo. la optimización del diseño electromagnéticamente validado de componentes de microondas y antenas ha hecho un amplio uso de un modelo y el mapeo espacial metodologías sustitutas física basado en o empíricos adecuados desde el descubrimiento de mapeo espacial en 1993.
Ingeniero civil
La optimización ha sido ampliamente utilizada en ingeniería civil. Los problemas de ingeniería civil más comunes que se resuelven mediante la optimización son el corte y el relleno de carreteras, el análisis del ciclo de vida de las estructuras y las infraestructuras, la nivelación de recursos y la optimización del calendario.
La investigación de operaciones
Otro campo que usa extensamente técnicas de optimización es la investigación de operaciones. La investigación operativa también utiliza modelos y simulaciones estocásticas para respaldar una mejor toma de decisiones. Cada vez más, la investigación operativa usa programación estocástica para modelar decisiones dinámicas que se adaptan a los eventos; tales problemas se pueden resolver con optimización a gran escala y métodos de optimización estocástica.
Ingeniería de control
La optimización matemática se usa en muchos diseños modernos de controladores. Los controladores de alto nivel como el control predictivo del modelo (MPC) o la optimización en tiempo real (RTO) emplean la optimización matemática. Estos algoritmos se ejecutan en línea y determinan valores para variables de decisión, tales como aperturas de estrangulamiento en una planta de proceso, resolviendo iterativamente un problema de optimización matemática que incluye restricciones y un modelo del sistema a controlar.
Geofísica
Las técnicas de optimización se usan regularmente en problemas de estimación de parámetros geofísicos. Dado un conjunto de medidas geofísicas, por ejemplo, registros sísmicos, es común resolver las propiedades físicas y las formas geométricas de las rocas y fluidos subyacentes.