1 / 69

11. PROGRAMACION NO-LINEAL

11.1 Introducción y ejemplos. 11. PROGRAMACION NO-LINEAL. 11.2 Propiedades básicas de los problemas de programación no-lineal. 11.3 Problemas de optimización no restringida. 11.4 Problemas de optimización con restricciones de igualdad.

Download Presentation

11. PROGRAMACION NO-LINEAL

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 11.1 Introducción y ejemplos 11. PROGRAMACION NO-LINEAL 11.2 Propiedades básicas de los problemas de programación no-lineal 11.3 Problemas de optimización no restringida 11.4 Problemas de optimización con restricciones de igualdad 11.5 Problemas con restricciones de igualdad y desigualdad. 11.6 Métodos de optimización restringida GIO

  2. 11.1 Introducción y ejemplos A esta clase de problemas de optimización pertenecen todos aquellos problemas en los cuales la función objetivo y/o las restricciones son funciones no-lineales de las variables de decisión. En particular, la programación no-lineal provee una manera de abordar el no cumplimiento del supuesto de proporcionalidad de la programación lineal, permitiendo la programación de economías o deseconomías a escala y/o retornos crecientes o decrecientes a escala. GIO

  3. PRODUCTO RETORNO (M$, miles de pesos) 10.000 Producto 1 0 . 50 x1 7.500 Producto 2 0 . 75 x2 0 . 60 x3 Producto 3 9.000 0 . 30 x4 Producto 4 15.000 a) Rendimientos decrecientes a escala. Una compañía vende cuatro productos diferentes, el retorno que provee cada producto es una función de la cantidad de recursos asignados a la promoción y venta de cada producto, según la siguiente tabla: GIO

  4. En este ejemplo: xi es la cantidad de recursos asignados al producto i, con i=1,2,3,4. El siguiente modelo provee una asignación de estos recursos, de modo de maximizar las utilidades, considerando una inversión anual no superior a los de M$ 75.000 Máx 10.000x10.5 + 7.500x20.75 + 9.000x30.6 + 15.000x40.3 s.a. x1+x2+x3+x4 75.000 xi 0; i=1,2,3,4,5. GIO

  5. y m y 2 y 1 x x x 1 2 m b) Aproximación y ajuste de curvas. Supongamos que se tiene un conjunto de datos correspondientes a una determinada función y=g(x) (desconocida), digamos (x1,y1), (x2,y2),..., (xm,ym) y se desea aproximar g(x) por una función h(x) GIO

  6. + a a x o 1 + + + a a x a x 2 o 1 2 a a a x 2 o 1 a x a e 1 o + + a x a a x a e 3 o 1 2 + a a ln( x ) o 1 Algunas elecciones posibles: • h (x) = • h (x) = • h (x) = • h (x) = • h (x) = • h (x) = GIO

  7. m 2 ( ( ) ) - å w y h x i i i = i 1 ¿Cómo elegir los coeficientes aien la función h(x) que aproxima o ajusta los datos observados? Se define una función de error: e (x) = g(x)–h(x) Una elección posible de los coeficientes ai resulta de minimizar la suma ponderada de los errores al cuadrado en cada uno de los datos , es decir: Min F (ao,a1,...,an) = GIO

  8. + + a a a a x x o o 1 1 Y m æ ö Y 2 ç ÷ ç ÷ m y m y * x ç ÷ æ ö i Y i i = 1 a å = å a ç ÷ o ç ÷ m m ç 1 = è x 2 ç ÷ ø i 1 = å i 1 i ç ÷ X X X 1 2 m è ø = i 1 que da origen a un problema de programación no-lineal sin restricciones. Si escogemos w1=...=wm=1 y h(x)= , la solución del problema corresponde a la recta de la regresión lineal. h(x)= GIO

  9. Puerto B 40 Puerto C 30 Puerto A 80 30 c) Localización de instalaciones Una compañía petrolera desea construir una refinería que recibirá suministros desde tres instalaciones portuarias, cuyas coordenadas se muestran en la siguiente figura: GIO

  10. 2 2 2 2 2 2 - + - + - + - + - + - ( x 0 ) ( y 0 ) ( x 30 ) ( y 40 ) ( x 80 ) ( y 30 ) Si denotamos por x e y las respectivas coordenadas de la refinería que se debe instalar, una posible elección es aquella que resulta de minimizar la cantidad total de tubería necesaria para conectar la refinería con los puertos, dada por: Min f ( x,y ) = La solución óptima calculada por el solver de Excel es: x*=30,8052225y*=37,8900128 GIO

  11. Puerto B 40 Puerto C 30 Refinería Puerto A 80 30 GIO

  12. d) Optimización de carteras de inversión Se desea obtener una cartera de inversiones en base a distintos instrumentos (acciones, pagarés, bonos, etc.). La cartera elegida deberá reflejar un compromiso entre los retornos de los instrumentos elegidos y el riesgo asociado a cada uno de ellos, de hecho es natural esperar que a mayor retorno haya un mayor riesgo y también que exista cierta correlación entre los retornos de los distintos instrumentos de la cartera. GIO

  13. T = r ( r , r , r ,......... , r ) n 1 2 3 s s ¹ ij ii (i j) = s Q ( ) = = ij i 1 , 2 ,...., n .; j 1 , 2 ,...., n . A continuación se formula un modelo para obtener una cartera de inversión de un tomador de decisiones averso al riesgo, con un vector de retornos que tiene una distribución normal con media: matriz de covarianza: donde denota la desviación estándar del retorno del instrumento i y donde es la covarianza de los retornos del instrumento i con el j. GIO

  14. n n n - s r x K x x å å å i i ij i j = = = i 1 i 1 j 1 s . a . = x 1 å i ³ = x 0 . i 1 , 2 ,..... n . i Sea xi el porcentaje de inversión del instrumento i en la cartera, con i=1,2,...n, las variables de decisión del modelo y sea K una constante de aversión al riesgo. El siguiente modelo(propuesto por Markowitz, Premio Nobel de Economía 1991), combina ambos elementos presentes en una decisión de esta naturaleza: Máx GIO

  15. Usando el ejemplo del servidor Neos para una cartera con tres acciones y un bono tenemos: Selected value of K is 10.00 Risk less rate of return (monthly) is 0.00407 GIO

  16. 21.0% Coca -Cola Exxon Corp. 48.6% Texaco Inc. 16.6% Bond 13.7% GIO

  17. 11.2 Propiedades básicas de los problemas de programación no-lineal De manera general, un problema de optimización considera la resolución de un problema como el que sigue: P) Min ƒ(x) s.a. x  D  IRn Donde ƒ: IRn IR es una función comúnmente continua y diferenciable, y D es el dominio de factibilidad del problema, generalmente dado por: D= {x  IRn / gi(x) = bi i=1,...,m; hj(x)  dj j=1,...,l } GIO

  18. Decimos que x* D es un mínimo global o solución óptima del problema P) ssi: ƒ(x*)  ƒ(x)para todo x  D Por otra parte, decimos que x^ D es un mínimo local del problema P) ssi: ƒ(x^)  ƒ(x)para todo x en una vecindad de x^ (x  D  B(x^, )) GIO

  19. Minƒ(x)= (x-1)(x-2)(x-3)(x-4)(x-5)s.a 1x5 ƒ(x) x* x 1 2 3 4 5 x^ Mínimos locales: x=1, x^ y x* Solución óptima y minimo global x* GIO

  20. Existen resultados que garantizan la existencia y unicidad de la solución de un problema de programación no lineal. Teorema (Weiertrass). Si ƒ es una función continua y D es un conjunto no vacío cerrado y acotado de IRn, entonces P) tiene solución óptima. Teorema. Si ƒ es una función continua y D es un conjunto cerrado no vacío y además ƒ cumple que: lim|x|+ƒ(x) = +, entonces P) tiene solución óptima. GIO

  21. Por su parte, la unicidad de la solución óptima se puede garantizar sólo bajo ciertas condiciones muy especiales. De igual modo es posible garantizar si un mínimo local es un mínimo global del problema. Para esto se requiere saber si el problema P) es un problema convexo, esto es si la función objetivo es convexa y el conjunto D de puntos factibles es un conjunto convexo. GIO

  22. ƒ(y) ƒ(x) x y Definición. Decimos que ƒ: IRnIR es una función convexa ssi: x + (1-)y ) (x) + (1-)(y) para todox,y  D (xy) con   [0,1] Si la desigualdad anterior se cumple de manera estricta, decimos que ƒ es estrictamente convexa. Lineal a trozos GIO

  23. Adicionalmente, se tiene el siguiente resultado • Teorema. Si ƒ es una función dos veces continuamente diferenciables, las siguientes afirmaciones son equivalentes: • ƒ es una función convexa • ƒ(x)  ƒ(y) +  ƒT(y)(x-y) para dos puntos cualesquiera x e y. • La matriz hessiana de las segundas derivadas parciales de ƒ, denotada en lo que sigue por D2 ƒ(x), es semi positiva definida para todo x. GIO

  24. y y x x Por otra parte, también podemos caracterizar si un conjunto cualquiera es convexo o no, de acuerdo a la siguiente: Definición. D  IRn, un conjunto no vacío, es convexo ssi x + (1-) y  D, para todo x  D, y  D con   [0,1]. No es convexo Es convexo GIO

  25. Así por ejemplo, si h(x) es una función convexa el conjunto D = { x  IRn h(x)  d } es convexo para cualquier escalar real d. También es posible demostrar que la intersección de conjuntos convexos es un conjunto convexo. De aquí que por ejemplo el problema P) Minƒ(x) s.a hj(x)  dj j=1,2,...,l Con ƒ(x) y hj(x), para j=1,2,..,l, funciones convexas definen un problema convexo, pues el dominio de factibilidad es la intersección de los conjuntos convexos Dj = { x  IRn  hj(x)  dj }, para j=1,2,..,l. GIO

  26. Teorema. Si P) es un problema convexo y x* es un mínimo local de P) entonces x* es un mínimo global o solución óptima de P), si además, ƒ es una función estrictamente convexa x* es la única solución óptima. La principal dificultad en los problemas de programación no lineal es que incluyen restriciones no lineales de igualdad como g(x)=b y el conjunto de puntos { xIRn : g(x)=b} generalmente no es convexo cuando g(x) es una función no lineal cualquiera. Por lo tanto no todos los problemas de programación no lineal son convexos y esto hace más difícil garantizar que la solución encontrada por un solver sea una solución óptima del problema. GIO

  27. Como puede verse en el siguiente ejemplo, que resolveremos gráficamente, la geometría de los problemas también cambia respecto de lo observado en programación lineal. Consideremos el siguiente problema: Min (x1 - 3)2 + (x2 - 4)2 s.a. x1 + x2 5 x1 - x2  5/2 x1  0, x2  0 GIO

  28. GIO

  29. La solución óptima x* de este problema se alcanza el punto x1* = 2, x2* = 3 correspondiente al único punto de la curva de nivel que tiene el menor valor y que intersecta la región de puntos factibles. Notar que la solución ya no corresponde a un vértice del dominio de factibilidad del problema, aún cuando todavía esta solución se alcanza en la frontera de dicho conjunto. GIO

  30. Sin embargo, esto último, a diferencia de lo que ocurre en programación lineal, no siempre se produce. Si por ejemplo el problema es ahora: Min (x1 - 2)2 + (x2 - 2)2 s.a x1 + x2 5 x1 - x2  5/2 x1  0, x2  0 La solución cambia a lo representado en la siguiente figura, donde la solución óptima se alcanza en x1* = 2, x2* = 2, ahora perteneciente al interior del dominio de factibilidad del problema. GIO

  31. GIO

  32. Gráficamente, también podemos observar la presencia de divesos mínimos locales en un problema no lineal. GIO

  33. 11.3 Problemas de optimización no restringida En esta sección consideraremos un problema P) Min ƒ(x) con x  IRn A esta clase de problemas pertenece por ejemplo el problema de aproximación y ajuste de curvas. Sin embargo, la principal razón para su estudio radica en la extensión de las ideas y métodos para esta clase de problemas a los problemas de optimización restringida. GIO

  34. A continuación se resumen algunos resultados teóricos para esta clase de problemas: Teorema (condiciones necesarias de primer orden).Si ƒ es una función continuamente diferenciable y x^ IRn es un mínimo local de P), entonces: (x^) = 0. Teorema (condiciones necesarias de segundo orden). Si ƒ es una función dos veces continuamente diferenciable y x^ IRn es un mínimo local de P), entonces: (x^) = 0 y D2 (x^) es semi positiva definida. GIO

  35. Dado lo anterior, no todos los puntos x  IRn que satisfacen las propiedades mencionadas son mínimos locales de la función, sin embargo existen resultados que proveen condiciones necesarias y suficientes para que un punto sea un mínimo local. Teorema (condiciones suficientes de segundo orden). Sea  una función dos veces continuamente diferenciable en x^. Si (x^)=0 y D2 (x^) es positiva definida, entonces x^ es un mínimo local estricto. Teorema. Sea  una función convexa continuamente diferenciable, entonces x^ es un mínimo global ssi (x^)=0. GIO

  36. (x) = 6 x1 3x22 - 3 x2 D2 (x) = 6 0 0 6x2 - 3 Ejemplo. Considere la función: (x1,x2) = 3 x12 + x23 - 3/2 x22 su gradiente y matriz Hessiana corresponden a: GIO

  37. D2 (x) = 6 0 0 6x2 - 3 De modo que hay dos posibles candidatos, x^ =(0,0)T y x* = (0,1)T, que satisfacen las condiciones necesarias de primer orden, sin embargo sólo es positiva definida en x* = (0,1), de modo que x* es un mínimo local del problema. GIO

  38. La mayor parte de los algoritmos de optimización para abordar esta clase de problemas pertenecen a la clase de algoritmos generales de descenso que reducen el cálculo de un mínimo local a una secuencia de problemas de búsqueda lineal (o búsqueda unidimensional). GIO

  39. x2 (x) d x^ - (x) Z=20 Z=10 x1 Decimos que un vector d  IRn es una dirección de descenso de la función  en el punto x^ ssi la derivada direccional de  en x^ en la dirección d, es negativa: GIO

  40. Consideremos además la función unidimensional (en una variable) g() = (x^ +  d) donde  es un escalar real llamado el tamaño del paso. Esta función da el valor f cuando uno se mueve a partir del punto x^ en la dirección d un cierto paso . Claramente, si g’(0)= T(x^)d<0, es posible escoger un paso ^ tal que: g() = (x^ + ^d) < (x^) = g(0) esto es, que reduzca el valor de la función respecto del valor actual en x^. GIO

  41. Algoritmo general de descenso • 1 Considere un punto inicial x=x°. Hacer k=0. • 2 Escoger una dirección de descenso dk. • 3 Realizar una búsqueda lineal que seleccione un paso k tal que: • g(k) = ƒ(xk + kdk) < ƒ(xk) = g(0) • 4 Hacer xk+1 = xk + kdk. • 5 Hacer un test de convergencia. Si converge stop. En caso contrario, hacer k=k+1 y volver a 2. GIO

  42. En paso 5, los criterios más usuales de convergencia son que:  (xk)    (xk+1) - (xk)/ (1+(xk))   para un cierto número L de valores consecutivos de k, y donde  es una tolerancia dada de error, por ejemplo =10-4. Existen varios métodos para escoger una dirección de descenso, uno de ellos es: GIO

  43. Método del descenso más pronunciado En este método, también conocido como método del gradiente o método de Cauchy, dado la actual aproximación xk, la dirección de descenso se escoge como: dk = -(xk) GIO

  44. - + - 4 2 Min ( x 2 ) ( x x ) 1 1 2 æ ö x ç ÷ 1 Î IR 2 s . a . ç ÷ x è ø 2 Ejemplo.Considerar el problema: que resolvemos usando el método del descenso más pronunciado a partir del punto x10 = 0, x20 = 3. GIO

  45. Iteración k ƒ(xk) ƒ(xk) k 1 (0.00,3.00) 52.00 (-44.00,24.00) 0.062 2 (2.70,1.51) 0.34 (0.73,1.28) 0.24 3 (2.52,1.20) 0.09 (0.80,-0.48) 0.11 4 (2.43,1.25) 0.04 (0.18,0.28) 0.31 5 (2.37,1.16) 0.02 (0.30,-0.20) 0.12 6 (2.33,1.18) 0.01 (0.08,0.12) 0.36 7 (2.30,1.14) 0.009 (0.15,-0.08) 0.13 8 (2.28,1.15) 0.007 (0.05,0.08) GIO

  46. Otra elección posible para la dirección de descenso es la que usa el: Método de Newton Aquí el vector dk se calcula como la solución del siguiente sistema de ecuaciones: D2ƒ(x)dk=-  ƒ(x) Sin embargo, a pesar de ser un método más eficiente que el anterior respecto de su rápidez de convergencia, requiere en cada iteración el cálculo de las segundas derivadas parciales y la resolución de un sistema de ecuaciones. Además, dk está garantizada que es una dirección de descenso sólo si D2ƒ(xk) es positiva definida. GIO

  47. Iteración k ƒ(xk) ƒ(xk) 1 (0.00,3.00) 52.00 (-44.00,24.00) 2 (0.67,0.33) 3.13 (-9.39,-0.04) 3 (1.11,0.56) 0.63 (-2.84,-0.04) 4 (1.41,0.70) 0.12 (-0.80,-0.04) 5 (1.61,0.80) 0.02 (-0.22,-0.04) 6 (1.74,0.87) 0.005 (-0.07,0.00) 7 (1.83,0.91) 0.0009 (0.0003,-0.04) Al aplicar el método al ejemplo anterior se tiene: GIO

  48. g i = 1 ,..., m = i ( x ) b i Ñ Ñ Ñ ˆ ˆ ˆ g ( x ), g ( x ),....., g ( x ) m 1 2 11.4 Problemas de optimización con restricciones de igualdad El problema que se desea abordar consiste en: P) Min. f(x) s.a. g1(x) = b1 g2(x) = b2 g m(x)= bn mn Definición. Decimos que x  IRn un punto regular de las restricciones del problema P) ssi: son vectores l.i. GIO

  49. m l = + l - ( x , ) f ( x ) ( g ( x ) b ) å L i i i = 1 i Para presentar algunos resultados teóricos, que permiten el cálculo de mínimos locales, se introdujo la definición anterior que se relaciona con el cumplimiento de ciertas condiciones de regularidad del problema. A continuación, introducimos la función lagrangeana del problema P): GIO

  50. t l = l l l ( , ,...., ) m 2 1 Donde representa el vector de los multiplicadores de lagrange. Los siguientes resultados teóricos establecen ciertas propiedades que satisface un mínimo local, las cuales muestran, en particular, que dicho punto es un punto estacionario de la función lagrangeana. GIO

More Related