La Programación No Lineal

3
La programación no lineal Generalidades sobre la programación no lineal Muchas aplicaciones industriales de optimización implican una modelización que se aproxima más a la física. En optimización del diseño por ejemplo, se optimizan meta-modelos o espacios de respuesta que provienen de un modelo estadístico, que no son lineales. Así mismo, la optimización topológica o la optimización de forma recurren a modelos no lineales y además de tamaño muy grande, como en este ejemplo. Formalmente, un programa matemático no lineal se enuncia: Min f(x) g j (x) <=0 j = 1,…,m x vector de números reales que representan las variables de decisión Las técnicas para resolver los problemas matemáticos y los resultados de los algoritmos de optimización dependen de la naturaleza de la función objetivo y de las restricciones. La programación lineal trata los casos en los que f(x) y g j (x) son lineales. El algoritmo del Simplex o los métodos del punto interior permiten resolver problemas de gran tamaño (algunos con miles o millones de variables y decenas de miles de restricciones). La programación cuadrática trata el problema en el que la función objetivo f(x) es cuadrática, y las restricciones g j (x) son lineales. Existen algoritmos eficaces para tratar este caso particular, por ejemplo en las problemáticas de optimización de carteras financieras. La programación estocástica y la optimización robusta tratan situaciones en las que algunos parámetros son variables aleatorias o imprecisas (marco de la optimización robusta).

description

La Programación No Lineall

Transcript of La Programación No Lineal

Page 1: La Programación No Lineal

La programación no lineal  Generalidades sobre la programación no lineal

Muchas aplicaciones industriales de optimización implican una modelización que se aproxima más a la física. En optimización del diseño por ejemplo, se optimizan meta-modelos o espacios de respuesta que provienen de un modelo estadístico, que no son lineales. Así mismo, la optimización topológica o la optimización de forma recurren a modelos no lineales y además de tamaño muy grande, como en este ejemplo.

Formalmente, un programa matemático no lineal se enuncia:Min f(x)gj(x) <=0 j = 1,…,mx vector de números reales que representan las variables de decisión

 

Las técnicas para resolver los problemas matemáticos y los resultados de los algoritmos de optimización dependen de la naturaleza de la función objetivo y de las restricciones.

La programación lineal trata los casos en los que f(x) y gj(x) son lineales. El algoritmo del Simplex o los métodos del punto interior permiten resolver problemas de gran tamaño (algunos con miles o millones de variables y decenas de miles de restricciones).

La programación cuadrática trata el problema en el que la función objetivo f(x) es cuadrática, y las restricciones gj(x) son lineales. Existen algoritmos eficaces para tratar este caso particular, por ejemplo en las problemáticas de optimización de carteras financieras.

La programación estocástica y la optimización robusta tratan situaciones en las que algunos parámetros son variables aleatorias o imprecisas (marco de la optimización robusta).

La programación dinámica es un método útil para los casos en los que una solución óptima se divide en sub-soluciones optimales (propiedad utilizada por ejemplo para buscar los caminos más cortos en los gráficos) y de caminos más cortos con restricciones (algoritmos utilizados en los métodos de generación de columnas para resolver sub-problemas asociados en componentes como LP-ShiftPlanner).

La programación no lineal analiza la problemática general en la que el objetivo f(x) o las restricciones gj(x) (o los dos) son funciones no lineales.

 

La mayoría de los métodos de programación no lineales utilizan el concepto de gradiente de las funciones f(x) y gj(x) para calcular direcciones de descenso, es decir de mejora de la función objetivo.

Page 2: La Programación No Lineal

Cuando las funciones son convexas (caso por ejemplo de la programación lineal continua), los algoritmos de descensos convergen hacia un óptimo global. En general, estos algoritmos y los software correspondientes convergen solamente hacia un óptimo local. Siempre que sea posible, es importante ejecutar estos algoritmos a partir de varias soluciones iniciales diferentes con el fin de seleccionar la mejor solución entre todas las encontradas.

Una problemática no lineal con restricciones puede convertirse en un problema sin restricciones con la ayuda del multiplicador de Lagrange: este método consiste en efecto en introducir en la función objetivo variables de holgura y un coste que aumenta cuando disminuye la desviación (es decir, restricción saturada).

 

Solver e implementación informática

Existen varios solver para resolver problemas de programación no lineal.EURODECISION ha probado los siguientes:

OPT++ FSQP KNITRO FAIPA GLPK LPSOLVE Coin-OR: IPOpt, OBOE