no lineal

69
11. PROGRAMACION NO-LINEAL 11.1 Introducción y ejemplos 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

Upload: claudio-aballay

Post on 01-Jul-2015

251 views

Category:

Documents


4 download

TRANSCRIPT

11. PROGRAMACION NO-LINEAL

11.1 Introducción y ejemplos

11.2 Propiedades básicas de los problemas deprogramación no-lineal

11.3 Problemas de optimización no restringida

11.4 Problemas de optimización con restricciones deigualdad

11.5 Problemas con restricciones de igualdad y desigualdad.

11.6 Métodos de optimización restringida

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.

11.1 Introducción y ejemplos

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:

PRODUCTO RETORNO (M$, miles de pesos)

Producto 1 10.000 50.0x1

Producto 2 7.500 75.0x2

Producto 3 9.000 60.0x3

Producto 4 15.000 30.0x4

En este ejemplo:En este ejemplo:xxii es la cantidad de recursos asignados al producto es la cantidad de recursos asignados al producto ii, con , con i=1,2,3,4. i=1,2,3,4.

El siguiente modelo provee una asignación de estos El siguiente modelo provee una asignación de estos recursos, de modo de maximizar las utilidades, recursos, de modo de maximizar las utilidades, considerando una inversión anual no superior a los de M$ considerando una inversión anual no superior a los de M$ 75.00075.000

Máx Máx

10.000x10.000x110.5 0.5 + 7.500x+ 7.500x22

0.75 0.75 + 9.000x+ 9.000x330.6 0.6 + 15.000x+ 15.000x44

0.30.3

s.a. x x11+x+x22+x+x33+x+x44 ≤≤ 75.000 75.000 xi ≥0; i=1,2,3,4,5.

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)

1

2

y

y

my

1x 2x mx

Algunas elecciones posibles:

i) h (x) =

ii) h (x) =

iii) h (x) =

iv) h (x) =

v) h (x) =

vi) h (x) =

221 xaxaao ++

21axaao+

xaeao 1

xaeaxaao 321 ++

)ln(1 xaao +

xaao 1+

¿Cómo elegir los coeficientes ¿Cómo elegir los coeficientes aaii en la función en la función h(x)h(x) que que aproxima o ajusta los datos observados?aproxima o ajusta los datos observados?

Se define una función de error: Se define una función de error: e (x) = g(x)–h(x)e (x) = g(x)–h(x)

Una elección posible de los coeficientes Una elección posible de los coeficientes aaii resulta de resulta de minimizar la suma ponderada de los errores al cuadrado en minimizar la suma ponderada de los errores al cuadrado en cada uno de los datos , es decir:cada uno de los datos , es decir:

Min F (aMin F (aoo,a,a11,...,a,...,ann) =) =

m ( )( )∑=

−i

ixhiyiw1

2

que da origen a un problema de programación no-lineal sin que da origen a un problema de programación no-lineal sin restricciones.restricciones.

Si escogemos Si escogemos ww11=...=w=...=wmm=1=1 y y h(x)=h(x)= , la solución del , la solución del problema corresponde a la recta de la regresión lineal.problema corresponde a la recta de la regresión lineal.

xaao 1+

1

2

Y

Y

mY

1X 2X mX

h(x)= xaao 1+

∑=

=

m

imiy

oa

1∑= ∑

=

=

m

im

iix

ixiya

1

1

2

*

1

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:

30

40

30 80

Puerto B

Puerto C

Puerto A

Si denotamos por Si denotamos por xx e e yy las respectivas coordenadas de la las respectivas coordenadas de la refinería que se debe instalar, una posible elección es refinería que se debe instalar, una posible elección es aquella que resulta de minimizar la cantidad total de tubería aquella que resulta de minimizar la cantidad total de tubería necesaria para conectar la refinería con los puertos, dada necesaria para conectar la refinería con los puertos, dada por:por:

Min f ( x,y ) =Min f ( x,y ) =

La solución óptima calculada por el solver de Excel es:La solución óptima calculada por el solver de Excel es:

xx**==30,8052225 yy**== 37,8900128

2)30(2)80(2)40(2)30(2)0(2)0( −+−+−+−+−+− yxyxyx

30

30

40

80

Puerto B

Puerto C

Puerto A

Refinería

d) Optimización de carteras de inversiónSe 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.

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.

T),,.........3,2,1( nrrrrr =

.,....,2,1.;,....,2,1)( njniijQ === σ

iiσijσ j)(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áxn n n

.,.....2,1.0

1..

1 1 1

niixix

asi i j

jxixijKixir

=≥∑ =

∑=

∑=

∑=

− σ

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

Name Avg Return( monthly, pet) Std Deviation Pet of Optimal PortfolioCoca cola CO 2,885 6,574 48,6Exxon Corp 1,647 4,939 13,7Texaco Inc 1,869 6,381 16,6Bond 0,407 0 21

Makeup of Optimal Portfolio

Avg Return( monthly, pet) 2,03Std Deviation 4,02

Pet of Optimal Portfolio 27,2

Optimal Portfolio Statistics

48.6%

13.7%

16.6%

21.0%

Coca -Cola

Exxon Corp.

Texaco Inc.

Bond

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 Min ƒ(x)ƒ(x)

s.a.s.a. x x ∈∈ D D ⊆⊆ IR IRnn

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= D= {{x x ∈∈ IR IRn n / g/ gii(x) = b(x) = bii i=1,...,m; h i=1,...,m; hjj(x) (x) ≤≤ d djj j=1,...,l } j=1,...,l }

Decimos que x* ∈ D es un mínimo global o solución óptima del problema P) ssi:

ƒ(x*) ƒ(x*) ≤≤ ƒ(x) ƒ(x) para todopara todo x x ∈∈ D D

Por otra parte, decimos que x^x^ ∈ D es un mínimo local del problema P) ssi:

ƒ(x^) ƒ(x^) ≤≤ ƒ(x) ƒ(x) para todopara todo x x en una vecindad deen una vecindad de x^ x^

(x (x ∈∈ D D ∩∩ B(x^, B(x^, ∈∈))))

Min ƒ(x)= (x-1)(x-2)(x-3)(x-4)(x-5)s.a 1≤x≤5

x

ƒ(x)

Mínimos locales: x=1, x^ y x*Solución óptima y minimo global x*

x*

x^1 2 3 4 5

Existen resultados que garantizan la existencia y unicidad de la solución de un problema de programación no lineal.

Teorema 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.

TeoremaTeorema. 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.

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.

Si la desigualdad anterior se cumple de manera estricta, decimos que ƒ es estrictamente convexa.

Definición. Definición. Decimos que Decimos que ƒ: IRƒ: IRnn→→IR IR es una función es una función

convexa ssiconvexa ssi::

ƒ(λƒ(λx + (1-x + (1-λλ)y ) )y ) ≤≤ λ냃(x) + (1-(x) + (1-λλ))ƒƒ(y)(y)

para todo x,y ∈ D (x≠y) con λ ∈ [0,1]

Lineal a trozos

x y

ƒ(x)ƒ(x)

ƒ(y)ƒ(y)

Adicionalmente, se tiene el siguiente resultado

TeoremaTeorema. Si ƒ ƒ es una función dos veces es una función dos veces continuamente diferenciables, las siguientes continuamente diferenciables, las siguientes afirmaciones son equivalentes:afirmaciones son equivalentes:

i)i)ƒ ƒ es una función convexaes una función convexa

ii)ii)ƒ(x) ƒ(x) ≥≥ ƒ(y) + ƒ(y) + ∇∇ ƒ ƒTT(y)(x-y) (y)(x-y) para dos puntos para dos puntos cualesquieracualesquiera x x ee y. y.

iii)iii)La matriz hessiana de las segundas derivadas La matriz hessiana de las segundas derivadas parciales de parciales de ƒƒ, denotada en lo que sigue por , denotada en lo que sigue por DD2 2 ƒ(x),ƒ(x), es es semi positiva definida para todosemi positiva definida para todo x. x.

Por otra parte, también podemos caracterizar si un conjunto cualquiera es convexo o no, de acuerdo a la siguiente:

DefiniciónDefinición. D ⊆ IRn, un conjunto no vacío, es convexo ssi λλx + (1-x + (1-λλ) y ) y ∈∈ D D, para todo x ∈ D, y ∈ D con λ ∈ [0,1].

xy

Es convexo

x

y

No es convexo

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)ƒ(x)

s.as.a h hjj(x) (x) ≤≤ d djj j=1,2,...,lj=1,2,...,l

Con Con ƒ(x) ƒ(x) y y hhjj(x)(x), para j=1,2,..,l, funciones convexas , para j=1,2,..,l, funciones convexas

definen un problema convexo, pues el dominio de definen un problema convexo, pues el dominio de factibilidad es la intersección de los conjuntos factibilidad es la intersección de los conjuntos convexos convexos DDj j = { x = { x ∈∈ IR IRnn ⁄⁄ h hjj(x) (x) ≤≤ d djj } }, para j=1,2,..,l., para j=1,2,..,l.

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 es una función estrictamente convexa estrictamente convexa x*x* es la única solución óptima. es la única solución óptima.

La principal dificultad en los problemas de La principal dificultad en los problemas de programación no lineal es que incluyen restriciones no programación no lineal es que incluyen restriciones no lineales de igualdad como lineales de igualdad como g(x)=bg(x)=b y el conjunto de y el conjunto de puntos puntos { x{ x∈∈IRIRnn : g(x)=b} : g(x)=b} generalmente no es convexo generalmente no es convexo cuando cuando g(x)g(x) es una función no lineal cualquiera. Por lo es una función no lineal cualquiera. Por lo tanto no todos los problemas de programación no lineal tanto no todos los problemas de programación no lineal son convexos y esto hace más difícil garantizar que la son convexos y esto hace más difícil garantizar que la solución encontrada por un solver sea una solución solución encontrada por un solver sea una solución óptima del problema. óptima del problema.

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

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.

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.

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

11.3 Problemas de optimización no restringida

En esta sección consideraremos un problema

P) Min ƒ(x)P) Min ƒ(x) con x con x ∈∈ IR IRnn

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.

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 es una función continuamente diferenciable y x^x^ ∈∈ IRIRnn es un mínimo local de P), entonces: es un mínimo local de P), entonces: ∇ƒ∇ƒ(x^) = 0(x^) = 0..

Teorema (condiciones necesarias de segundo orden). Si ƒ ƒ es una función dos veces continuamente es una función dos veces continuamente diferenciable y diferenciable y x^x^ ∈∈ IR IRnn es un mínimo local de P), es un mínimo local de P), entonces:entonces:

∇ƒ∇ƒ(x^) = 0(x^) = 0 y y DD2 2 ƒƒ(x^)(x^) es semi positiva definida. es semi positiva definida.

Dado lo anterior, no todos los puntos x x ∈∈ IR IRn n que que satisfacen las propiedades mencionadas son mínimos satisfacen las propiedades mencionadas son mínimos locales de la función, sin embargo existen resultados locales de la función, sin embargo existen resultados que proveen condiciones necesarias y suficientes para que proveen condiciones necesarias y suficientes para que un punto sea un mínimo local.que un punto sea un mínimo local.

Teorema (Teorema (condiciones suficientes de segundo ordencondiciones suficientes de segundo orden).). Sea Sea ƒƒ una función dos veces continuamente una función dos veces continuamente diferenciable en diferenciable en x^x^. Si . Si ∇ƒ∇ƒ(x^)=0(x^)=0 y y DD2 2 ƒƒ(x^)(x^) es positiva es positiva definida, entonces definida, entonces x^x^ es un mínimo local estricto. es un mínimo local estricto.

Teorema.Teorema. Sea Sea ƒƒ una función convexa continuamente una función convexa continuamente diferenciable, entonces diferenciable, entonces x^x^ es un mínimo global ssi es un mínimo global ssi ∇ƒ∇ƒ(x^)=0(x^)=0..

Ejemplo. Considere la función:

ƒƒ(x(x11,x,x22) = 3 x) = 3 x1122 + x + x22

33 - 3/2 x - 3/2 x2222

su gradiente y matriz Hessiana corresponden a:su gradiente y matriz Hessiana corresponden a:

DD2 2 ƒƒ(x) = (x) = 66 00

00 6x6x22 - 3 - 3

∇ƒ(x) = 6 x1

3x22 - 3 x2

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

DD2 2 ƒƒ(x) = (x) = 66 00

00 6x6x22 - 3 - 3

sólo es positiva definida en x* = (0,1), de modo que x* es un mínimo local del problema.

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).

Decimos que un vector d ƒƒ IRn es una dirección de descenso de la función ƒƒ en el punto en el punto x^x^ ssi la derivada ssi la derivada direccional de direccional de ƒƒ en en x^x^ en la dirección en la dirección dd, es negativa:, es negativa:

x1

x2

Z=10 Z=20

x^

∇ƒ∇ƒ(x)(x)

- - ∇ƒ∇ƒ(x)(x)

d

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^.

Algoritmo general de descenso

1 Considere un punto inicial 1 Considere un punto inicial x=x°x=x°. Hacer . Hacer k=0k=0. .

2 Escoger una dirección de descenso 2 Escoger una dirección de descenso ddkk..

3 Realizar una búsqueda lineal que seleccione un 3 Realizar una búsqueda lineal que seleccione un paso paso ααkk tal que: tal que:

g(g(ααkk) = ) = ƒ(xƒ(xkk + + ααkkddkk) < ) < ƒ(xƒ(xkk) = g(0)) = g(0)

4 Hacer 4 Hacer xxk+1k+1 = x = xkk + + ααkkddkk..

5 Hacer un test de convergencia. Si converge stop. 5 Hacer un test de convergencia. Si converge stop. En caso contrario, hacer En caso contrario, hacer k=k+1 k=k+1 y volver a 2.y volver a 2.

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:

x

Método del descenso más pronunciado

En este método, también conocido como método del En este método, también conocido como método del gradiente o método de Cauchy, dado la actual gradiente o método de Cauchy, dado la actual aproximación xaproximación xkk, la dirección de descenso se escoge , la dirección de descenso se escoge como:como:

dk = -∇ƒ(xk)

Ejemplo.Considerar el problema:Ejemplo.Considerar el problema:

222211

4411 ))(())22(( −−++−−

221.. IR∈

xx

as

xxxxxxMinMin

que resolvemos usando el método del descenso más que resolvemos usando el método del descenso más pronunciado a partir del punto pronunciado a partir del punto xx11

0 0 = 0, x= 0, x2200 = 3 = 3..

αk∇ƒ(xk)ƒ(xk)Iteración k

0.0620.062(-44.00,24.00)(-44.00,24.00)(0.00,3.00)(0.00,3.00)52.0052.00

11

0.240.24(0.73,1.28)(0.73,1.28)(2.70,1.51)(2.70,1.51)0.340.34

22

0.110.11(0.80,-0.48)(0.80,-0.48)(2.52,1.20)(2.52,1.20)0.090.09

33

0.310.31(0.18,0.28)(0.18,0.28)(2.43,1.25)(2.43,1.25)0.040.04

44

(0.05,0.08)(0.05,0.08)(2.28,1.15)(2.28,1.15)0.0070.007

88

0.130.13(0.15,-0.08)(0.15,-0.08)(2.30,1.14)(2.30,1.14)0.0090.009

77

0.360.36(0.08,0.12)(0.08,0.12)(2.33,1.18)(2.33,1.18)0.010.01

66

0.120.12(0.30,-0.20)(0.30,-0.20)(2.37,1.16)(2.37,1.16)0.020.02

55

Otra elección posible para la dirección de descenso Otra elección posible para la dirección de descenso es la que usa el:es la que usa el:

Método de Newton

Aquí el vector dAquí el vector dkk se calcula como la solución del se calcula como la solución del siguiente sistema de ecuaciones:siguiente sistema de ecuaciones:

D2ƒ(x)dk=- ∇ ƒ(x)

Sin embargo, a pesar de ser un método más eficiente Sin embargo, a pesar de ser un método más eficiente que el anterior respecto de su rápidez de que el anterior respecto de su rápidez de convergencia, requiere en cada iteración el cálculo de convergencia, requiere en cada iteración el cálculo de las segundas derivadas parciales y la resolución de las segundas derivadas parciales y la resolución de un sistema de ecuaciones. Además, un sistema de ecuaciones. Además, ddkk está está garantizada que es una dirección de descenso sólo si garantizada que es una dirección de descenso sólo si DD22ƒ(xƒ(xkk)) es positiva definida. es positiva definida.

Al aplicar el método al ejemplo anterior se tiene:Al aplicar el método al ejemplo anterior se tiene:

∇ƒ(xk)ƒ(xk)Iteración k

(-44.00,24.00)(-44.00,24.00)(0.00,3.00)(0.00,3.00)52.0052.00

11

(-9.39,-0.04)(-9.39,-0.04)(0.67,0.33)(0.67,0.33)3.133.13

22

(-2.84,-0.04)(-2.84,-0.04)(1.11,0.56)(1.11,0.56)0.630.63

33

(-0.80,-0.04)(-0.80,-0.04)(1.41,0.70)(1.41,0.70)0.120.12

44

(0.0003,-0.04)(0.0003,-0.04)(1.83,0.91)(1.83,0.91)0.00090.0009

77

(-0.07,0.00)(-0.07,0.00)(1.74,0.87)(1.74,0.87)0.0050.005

66

(-0.22,-0.04)(-0.22,-0.04)(1.61,0.80)(1.61,0.80)0.020.02

55

11.4 Problemas de optimización con restricciones de igualdad

El problema que se desea abordar consiste en:El problema que se desea abordar consiste en:

P) Min. f(x)P) Min. f(x)

s.a. gs.a. g11(x) = b(x) = b11

gg22(x) = b(x) = b22

gg m m(x)= b(x)= bn n mm≤≤nn

DefiniciónDefinición. Decimos que . Decimos que x x ∈∈ IR IRnn un punto regular de las un punto regular de las restricciones del problema P) ssi:restricciones del problema P) ssi:

son vectores l.i.son vectores l.i.

)ˆ(),.....,ˆ(2),ˆ(1

,...,1i)(i

xmgxgxg

mi =bxg

∇∇∇=

Para presentar algunos resultados teóricos, que permiten el Para presentar algunos resultados teóricos, que permiten el cálculo de mínimos locales, se introdujo la definición cálculo de mínimos locales, se introdujo la definición anterior que se relaciona con el cumplimiento de ciertas anterior que se relaciona con el cumplimiento de ciertas condiciones de regularidad del problema.condiciones de regularidad del problema.

A continuación, introducimos la función lagrangeana del A continuación, introducimos la función lagrangeana del problema P):problema P):

m

ib

i

xigixfx )

1

)(()(),( λλ −∑=

+=L

Donde representa el vector de los Donde representa el vector de los multiplicadores de lagrange.multiplicadores de lagrange.

Los siguientes resultados teóricos establecen ciertas Los siguientes resultados teóricos establecen ciertas propiedades que satisface un mínimo local, las cuales propiedades que satisface un mínimo local, las cuales muestran, en particular, que dicho punto es un punto muestran, en particular, que dicho punto es un punto estacionario de la función lagrangeana.estacionario de la función lagrangeana.

tm ),....,2,1( λλλλ =

Teorema (Condiciones necesarias de primer ordenCondiciones necesarias de primer orden)::

Sean Sean f(x)f(x) y y gg11(x),..., g(x),..., gmm(x),(x), funciones continuamente funciones continuamente

diferenciales y sea diferenciales y sea xx ^̂ un mínimo local que además es un un mínimo local que además es un punto regular de las restricciones de P), entonces existe un punto regular de las restricciones de P), entonces existe un

vectorvector λλ^ ^ ∈∈ IRIRmm,, de multiplicadores de Lagrange tales que: de multiplicadores de Lagrange tales que:

0

1

)ˆ()ˆ()ˆ( =∑=

∇+∇=∇m

i

xigixf,x̂x λ̂λL

TeoremaTeorema((Condiciones necesarias y suficientes de segundo Condiciones necesarias y suficientes de segundo ordenorden).). Sean f,g Sean f,g11,g,g22,...,g,...,gmm funciones dos veces continuamente funciones dos veces continuamente diferenciables y sea diferenciables y sea x^ x^ ∈∈ IR IRnn un punto regular de las un punto regular de las restricciones de P) que junto conrestricciones de P) que junto con λλ^ ^ ∈∈ IR IRmm, satisfacen:, satisfacen:

es una matriz positiva definida entonces es una matriz positiva definida entonces x^x^ es un mínimo es un mínimo local de P).local de P).

∑=

+=m

iXigDixfDxL

1 )ˆ(2ˆ)ˆ(2)ˆ,ˆ( λλ

=∑=

∇+∇=∇m

i

xigixfxx 01

)ˆ(ˆ)ˆ()ˆ,ˆ( λλL

Ejemplo: Min. Min. s.a.s.a.

Buscamos Buscamos xx** usando las condiciones de Optimalidad: usando las condiciones de Optimalidad: ; m=1

así::

22

1

421

22

21

IRx

xxx

xx

=++

+=)( 22 xxxf =+= 4)( xxxh

=20

02)(2 xfD

21

=∇ )2,2()(21

xxxf T

=

00

00)(2 xhD

211

( )=∇ 11)(1

xh T

Luego las condiciones de primer orden son:Luego las condiciones de primer orden son:

( Factibilidad)( Factibilidad)

Resolviendo el sistema : xResolviendo el sistema : x11=x=x22=2; λ=2; λ11=-4, luego por =-4, luego por

existencia de la solución óptima de P) se tiene:existencia de la solución óptima de P) se tiene:

xx11=2 x=2 x22=2=2 es la solución óptima. es la solución óptima.

0421

012

2

011

2

=−+

=+

=+

xx

x

x

λ

λ

De todos modos las condiciones de segundo orden se De todos modos las condiciones de segundo orden se cumplen : cumplen :

Notar que en Notar que en x*x* se tiene: se tiene:

2,0

20

02

00

00

00

22)*( IR*xxL ∈∀≥=+=

λ

TT

m

i

xih

ixf

))( −=−−

∑=

∇=∇−

1(1444

)

1

*(*)*( λ

Por último consideramos un problema general de Por último consideramos un problema general de optimización:optimización: P) Min. f(x)P) Min. f(x) s.a. s.a.

En este caso decimos que es un punto regular de las En este caso decimos que es un punto regular de las restricciones del problema ssi:restricciones del problema ssi:

vectores l.ivectores l.i

11.5 Problemas con restricciones de igualdad y desigualdad.

.,..,2,1,)(

.,....,2,1,)(

ljdxh

mibxg

jj

ii==

==

==∈

jdxjhjJj )ˆ(/

∇∇∇+∇ xjhxmgxgxg ),ˆ(),ˆ(),..,ˆ(2)ˆ(1

=≤ ljjdxjh .,...,1,)ˆ(

== miibxig .,...,1,)ˆ(

Teorema(condiciones necesarias de primer orden de Karush-Kuhn-Tucker (KKT)).

Suponga que las funciones f, g1,g2 ,...,gm,h1,...,hl son continuamente diferenciables. Sea un punto regular de P) y mínimo local del problema, entonces existen multiplicadores de lagrange: y

:0,...,02

,01

,,....,1≥≥≥

luuu

mλλ

01

)ˆ()ˆ(1

)ˆ( ==

∇+∇∑=

+∇ ∑l

J

xjhjuxig

m

i ixf λ

ljj

dxj

hj

u ,....,2,1,0))(( ==−

11.6 Métodos de Optimización Restringida

a) Método de activación de restricciones

Este método se aplica en esta descripción a problemas que sólo poseen restricciones de desigualdad.

La idea es que si el problema no restringido tiene una solución óptima que no satisface una parte de las restricciones, se considera k restricciones como de igualdad y se resuelve este problema restringido hasta llegar a un conjunto de restricciones activas cuya solución también satisface las restricciones omitidas.

1 Resuelva el problema no restringido. Si el óptimo 1 Resuelva el problema no restringido. Si el óptimo satisface todas las restricciones STOP, en caso satisface todas las restricciones STOP, en caso contrario, hacer contrario, hacer k=1k=1 e ir al paso 2. e ir al paso 2.

2 Activar cualquiera 2 Activar cualquiera kk restricciones y hallar una solución restricciones y hallar una solución que satisfaga las condiciones de optimalidad KKT. Si la que satisfaga las condiciones de optimalidad KKT. Si la solución resulta factible para las restantes restricciones solución resulta factible para las restantes restricciones STOP. Sino, active otro conjunto de k restricciones y STOP. Sino, active otro conjunto de k restricciones y repita el paso. Si se han tomado todos los conjuntos de repita el paso. Si se han tomado todos los conjuntos de k restricciones sin hallar solución factible ir al paso 3.k restricciones sin hallar solución factible ir al paso 3.

3 Si 3 Si k=Lk=L (# total de restricciones) no existe solución (# total de restricciones) no existe solución factible. En caso contrario, hacer factible. En caso contrario, hacer K= K+1K= K+1 e ir a paso 2. e ir a paso 2.

Ejemplo. Consideremos el problema:

Min (2x1 – 5)2 + (2x2 – 1)2

s.a. x1 + 2x2 ≤ 2

x1, x2 ≥ 0

El problema no restringido tiene como solución a

~

2/1~2/5

2

1==

x

x

Obtenida al resolver ∇ƒ(x) = 0

Claramente, este punto no satisface la restricción h1(x1,x2) = x1 + 2x2 ≤ 2.

Consideramos entonces activa la restricción, esto es resolvemos:

2),(

0),(),(

211

211121=

=∇+∇

xxh

xxhxxf µ

Cuya solución es

5/12ˆ

10/1ˆ

5/1110/22ˆ

1

2

1

−=−=

==

µx

x

que no satisface x2 ≥ 0

Continuando con el método, si sólo se activa x1= 0 se llega al mínimo local:

x1 = 0 x2 = ½ µ2=0 µ1=0 µ3=0

Notar que otro mínimo local se tiene con x1 + 2x2 ≤ 2 y x2 = 0 activas, obteniéndose x1 = 2, x2 = 0.

b) b) Método de Frank - Wolfe

Este método permite la resolución de un problema Este método permite la resolución de un problema cuya función objetivo es una función convexa no-lineal cuya función objetivo es una función convexa no-lineal y cuyas restricciones son todas lineales. Este método y cuyas restricciones son todas lineales. Este método reemplaza la función objetivo por una secuencia de reemplaza la función objetivo por una secuencia de funciones lineales que la aproximan, dando así origen funciones lineales que la aproximan, dando así origen a una secuencia de problemas de programación lineal.a una secuencia de problemas de programación lineal.

Si xk es la actual aproximación a la solución óptima del problema

P) Minƒ(x)

s.a. Ax = b

x ≥ 0

Entonces la expansión en serie de Taylor en torno a x=xk, a saber ƒ(x) = ƒ(xk) + ∇ƒ(xk)(x – xk), permite aproximar el problema P) por el problema lineal

PLk) Min ƒ(xk) + ∇ƒ(xk)(x – xk)

s.a. Ax = b

x ≥ 0

o equivalentemente, eliminando los términos constantes, considerar el problema:

PLk) Min ∇ƒ(xk)x

s.a. Ax = b

x ≥ 0

Si xLPk denota la solución óptima de PLk), este punto no

necesariamente es cercano a xk de modo que es necesario proponer un punto que resulte de hacer una minimización unidimensional en el segmento que une xk con xLP

k.

Todo lo anterior se resume en el siguiente algoritmo:

0 Escoger un punto inicial factible x0. Hacer k = 1.

1 Evaluar C= ∇ƒ(xk-1)

2 Hallar la solución óptima xLPk del siguiente problema

linealMin CT xs.a. Ax = b

x ≥ 0

3 Para la variable α ∈ [0,1], se define

g(α) = ƒ(xk-1 + α [xLPk – xk-1])

Usar algún procedimiento de minimización unidimensional para hallar un αk que aproxime la solución de Min { g(α) / α ∈ [0,1]}

4 Hacer 4 Hacer xk = xk-1 + αk (xLPK – xk-1)

5 Si se satisface el criterio de parada del método, 5 Si se satisface el criterio de parada del método, STOP. En caso contrario, hacer STOP. En caso contrario, hacer k = k + 1 y volver al y volver al paso 1.paso 1.

Ejemplo.

0,

623..

825

21

21

2221

21

≥≤+

−+−

xx

xxas

xxxxMin

(5/6,7/6)(5/6,7/6)

(0,2)(0,2)

xxkk

(2,0)(2,0)

(0,3)(0,3)

xxLPLPkk ααkk∇∇ƒƒ(x(xk-1k-1))XXk-1k-1Iteración Iteración

kk

2/32/3(-5,-8)(-5,-8)(0,0)(0,0)11

5/125/12(-5,0)(-5,0)(0,2)(0,2)22

Direcciones electrónicas en Programación no Lineal

•Preguntas de consulta frecuente en Programación No Lineal:

•Servidor NEOS, guía de software de Programación No Lineal:

•Servidor Neos, ejemplo de carteras de inversión:

•Guía de software de Programación No Lineal en revista OR&MS Today (INFORMS Magazine)

http://www-unix.mcs.anl.gov/otc/Guide/faq/nonlinear-programming-faq.html

http://www-fp.mcs.anl.gov/otc/Guide/SoftwareGuide/Categories/unconstropt.htmlhttp://www-fp.mcs.anl.gov/otc/Guide/SoftwareGuide/Categories/constropt .html

http://www-fp.mcs.anl.gov/otc/Guide/CaseStudies/port/index.html

http://lionhrtpub.com/software-surveys.shtml