FACULTAD DE INGENIERÍA
DEPTO. INGENIERÍA INDUSTRIAL
APUNTE
PROGRAMACION
MATEMATICA
2011
UNIVERSIDAD DE ANTOFAGASTA
FACULTAD DE INGENIERÍA
DEPTO. INGENIERÍA INDUSTRIAL
INDICE
Página
Experimentación
Realidad Matemática
Validación
1
CAPÍTULO I: PROGRAMACIÓN NO LINEAL
Sabiendo que f (x) es de clase C1, se puede representar esta condición en otros
términos. Al aplicar el teorema de Taylor se tiene, cerca de x*, que:
f ( x* x ) f ( x * ) f ' ( x * ) x o( x )
entonces
o( x )
0, cuando x 0
x
Si x 0, haciendo que x 0:
f ' ( x* ) 0
1
f (x* x) f (x* ) f ' (x* ) x f ' ' (x* ) x 2 o( x )
2
2
Donde:
o( x 2 )
0, cuando x 0
x2
y utilizando
1
f (x* x) f (x* ) f ' (x* ) x f ' ' (x* ) x 2 o( x )
2
Entonces
1
f (x* x) f (x* ) f ' ' (x* ) x 2 o( x )
2
se obtiene que:
f (x* x) f ( x * ), x 0
La ecuación anterior es suficiente para asegurar que x* es un máximo local. Hay que
tener cuidado cuando f ' ' ( x * ) 0 , si es así y f ' ' ' ( x * ) 0 , se dice que x* es un punto
de inflexión, como se ilustra en la siguiente figura (en este caso, la función f (x) esta
sobre un intervalo [a,b]):
f(x)
[ ] x
máximo mínimo máximo
a inflexión b
(local) (local) (global)
3
*
En un punto de inflexión f ' ' ( x ) 0
En un mínimo local f ' ' ( x * ) 0
En un máximo local f ' ' ( x * ) 0
Ejemplo:
Se tiene el siguiente problema
max
f ( x) x( x 3) 2
Desarrollo:
Primero se analiza las condiciones de primer orden:
f ' ( x* ) 0
f ' ( x * ) ( x 3) 2 x(2( x 3)) x 2 6 x 9 2 x 2 6 x 3x 2 12 x 9 x2 4x 3 0
f ' ( x * ) ( x 3)( x 1) 0
x1* 3
*
x 2 1
Con lo anterior, se obtuvo dos puntos óptimos, pero son ambos máximos (mínimos) o
máximo-mínimo (mínimo-máximo). Para determinarlo, se analiza ahora la condición
de segundo orden:
f ' ' ( x * ) ( )0
f ' ' ( x* ) 2 x 4
f ' ' ( x1* ) 2 x1* 4 2 * 3 4 2 0 mínimo local
* *
f ''(x ) 2x2 2 4 2 *1 4 2 0 máximo local
De esta manera, existe un máximo local estricto en x2*=1 con una valor de f(1)=4.
Además, existe una mínimo local estricto en x1*=3 con una valor de f(3)=0. En la figura
siguiente se ve este caso:
4
f(x)
f(x)=x(x-3)2
0 x
1 3
máximo mínimo
(local) (local)
Similar al caso unidimensional, asumamos que existe un máximo local y es x*, luego,
cerca de x* se debe cumplir que:
f ( x * h x) f ( x * )
T
Con h , h 0 y suficientemente pequeño y x ( x1 , , x n ) una dirección
cualquiera en n . Esta condición nos dice que si nos movemos en torno a x*, el valor
de la función f evaluada en x* debe ser mayor. Supongamos primero que f ( x) C 1 y
utilizando serie de Taylor en torno a h = 0, tenemos que:
f ( x* )
f ( x * h x) f ( x * ) h x o( h )
x
Entonces,
o( h)
0, cuando h 0
h
5
Se puede resumir que:
f ( x* )
h x o( h) 0
x
Si h 0, , entonces:
f ( x* ) o( h)
x 0
x h
f (x* )
Como 0 , al remplazarlo en la serie de Taylor, tenemos que:
x
1 2 T 2 f ( x* )
h x 2
x o( h 2 ) 0
2 x
6
Donde h 0 , se tiene que x* es un máximo local si cumple que
2
T f ( x* ) n
x x 0, x
x2
Son condiciones suficientes para que x* sea un máximo local, lo cual implica que
cumple que
f ( x * ) f ( x * h x)
para h suficientemente pequeño y cualquier dirección x arbitraria.
Ejemplo
Sea
f ( x1, x 2) x1 ( x1 3) 2 5 x22
Desarrollo:
Analicemos las condiciones de primer orden para nuestro problema:
f ( x* )
0
x
x1' 1
f ( x1 ) ( x1 3) 2 2 x1 ( x1 3) ( x1 3)( x1 1)
x1'' 3
f ( x2 ) 10 x2 0
7
Pero falta efectivamente definir si son máximos, mínimos o de inflexión. Para
resolverlo, analicemos el Hessiano:
2
f 6 x1 12 0
2
x 0 10
6 0
H (1,0)
0 10
6 0
H (3,0)
0 10
Como los dos autovalores son negativos, implica que el Hessiano es definida
negativa, condición necesaria y suficiente de segundo orden para el punto (1,0) y, por
lo tanto, es un máximo local.
H (3,0) I 0
6 0 0
0
0 10 0
6 0 2
(6 )( 10 ) 0 ( 60 6 10 ) ( 6)( 10) 0
0 10
1 6 2 10
En este caso, como los dos autovalores tienen signos alternos, implica que el
Hessiano es indefinido, condición necesaria y suficiente de segundo orden para el
punto (1,0) no sea un óptimo, es decir, este punto se conoce como punto silla.
8
1.3.- NOCIONES BÁSICAS DE CONVEXIDAD
Las nociones de conjunto convexo y funciones convexas nos proporcionan una
interpretación geométrica a las condiciones de segundo orden derivadas
anteriormente y nos permite desarrollar consideraciones sobre máximos globales.
Geométricamente, el set es convexo si para cada par de puntos arbitrarios del set, la
línea que los une también pertenece al set, veamos gráficamente un set convexo y no
convexo:
x2
x1
x2
x1
9
En cambio, una función cóncava es de la siguiente forma:
f(x)
De esta manera, la definición de: una función f definida en el set convexo se dice
cóncava, si para cada x1 y x2 y 0 1
1 2
f ( x (1 ) x ) f ( x1 ) (1 ) f ( x 2 )
10
De esta manera, se tiene el siguiente resultado: sea f cóncava definida en el set
convexo . El conjunto de puntos en los cuales f alcanza sus máximos es
convexo y todo máximo local de f es un máximo global.
x x
Otro resultado importante es: sea f una función cóncava (convexa) definida en el set
convexo cerrado y acotado . El valor mínimo (máximo) de f sobre está en un
borde del set . En otras palabras, una función cóncava definida en el set convexo
puede tener su valor máximo en el interior o en el borde de , pero su valor mínimo
siempre estará en el borde.
f(x)
x
x** x*
x*:máximo
x**:mínimo
11
1.4.- OPTIMIZACIÓN MULTIVARIABLE: RESTRICCIONES DEL TIPO
IGUALDAD
Las variables de decisión están restringidas a un cierto set de de oportunidades de
n
X . De esta manera, el set de oportunidades esta caracterizada por el conjunto
de restricciones de la forma:
g j ( x1 ,...,xn ) a j , j 1..m
Para derivar las condiciones necesarias de primer orden, supongamos que existe un
óptimo local x* ( x1* , x2* ) y que, cerca de x*, se puede expresar x2 en función de x1, a
partir de la restricción única existente, es decir: x2 = h(x1).
12
Reemplazando la ecuación anterior en la función objetivo, nos queda:
max
f ( x1 , h( x1 ) F ( x1 )
dh
Pero como obtenemos en valor de , utilizando la siguiente relación:
dx1
g ( x1 , h( x1 )) a
En que las derivadas están evaluadas en x*, entonces se puede generalizar para
nuestro caso:
f dg
0, i 1,2
xi dxi
13
Finalmente, las condiciones necesarias de primer orden son:
f dg
0, i 1,2
xi dxi
g(x1 ,x2 ) a
f(x1,x2)=c
(curva de nivel)
x1
g(x1,x2)=a
Óptimo restringido
Óptimo no restringido
14
Entonces, las condiciones de primer orden son:
L f dg
0, i 1,2
xi xi dxi
L
a g(x1 ,x2 ) 0
Dónde:
g
0 , evaluado en x*
x2
Ejemplo:
min
f ( x1 , x2 ) 2 x1 x1 x2 3x2
s.a :
x12 x2 3
6
f(x1,x2)=2x1+x1x2+3x2=c
(curva de nivel)
5
g(x1,x2)=x12+x2=3
2
3 -1 32 x1
-11 -10 -9 -8 -7 -6 -5 -4 -3 -2 1 3 4 5
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
15
De la gráfica, se puede apreciar que no existe un mínimo local para este caso.
2 x2 2 x1 (3 x1 ) 2 x2 6 x1 2 x12 0
2
x2 2x 1 6 x1 2
16
proceder de manera análoga al caso bidimensional, es decir, transformar el problema
con restricciones en uno sin restricciones.
De esta manera hi son de clase Cp, entonces el problema se reduce a uno sin
restricciones con (n-m) variables, es decir:
max
f ( x 1 , h( x 1 ) F (x1 )
h
Donde las derivadas están evaluadas en x*, y es una matriz de orden m (n m)
x1
17
Las restricciones se pueden rescribir:
g ( x 1 , h( x 1 )) a
g
Como x* es un punto regular, la matriz cuadrada de orden m, es no singular, así:
x2
1
h g g
x1 x2 x1
De esta manera, al igual que el caso bidimensional L(x, ) se le conoce como función
de Lagrange y vector de multiplicadores de Lagrange. Así, las condiciones de primer
orden del problema general:
max
f x1 , x2 ,, xn
s.a. :
g1 x1 , x 2 ,, x n a1
g m x1 , x2 ,, xn am
con : m n
18
Se pueden rescribir a las condiciones de primer orden del problema no restringido
max
m
L( x1 , x2 , , xn , 1 , 2 , , m) f ( x1 , x2 , , xn ) j (a j g j ( x1 , x2 , , xn ))
j 1
generando el siguiente sistema:
L f m dg j
j 0, i 1,, n
xi xi j 1 dxi
L
aj g j (x1 ,, xn ) 0, j 1,, m
j
Con lo anterior, sólo identificamos el punto óptimo x*, falta efectivamente determinar si
es un punto mínimo o máximo, es decir, evaluar las condiciones de segundo orden
para este problema, entonces al igual que el caso bidimensional, la matriz relevante
es el Hessiano de la función de Lagrange. En este caso, si x* es un máximo local para
nuestro problema, entonces:
f x* h x f x*
Para todos los desplazamientos que deben satisfacer las restricciones. Es decir, x
debe ser tal que j = 1,…,m cumpla con
g j ( x* ) n g j ( x* )
x xi 0
x i 1 xi
Por lo tanto, una condición suficiente para que x* sea un óptimo local es que x*
cumpla con las condiciones de primer orden y el Hessiano del lagrangiano, evaluado
en ese punto, efectivamente sea negativo definido para todos los desplazamientos
posibles, es decir:
2
T L( x * , )
x x 0
x2
Por ende:
f x* h x f x*
lo cual nos permite concluir que x* es un máximo local.
19
Ejemplo
max
f ( x1 , x2 ) x1 x2
sa :
g ( x1 , x2 ) x12 x22 1
Desarrollo
La gráfica se presenta en la siguiente figura, para visualizar donde esta el punto
máximo:
x2
f(x1,x2)=x1x2
1 (curva de nivel)
x1
-2 -1 1 2
g(x1,x2)=x12+x22=1
-1
-2
20
x2
2 x1
x2 x 22
x1 2x2 ( ) x1 0
2 x1 x1
x 22 x12
1 1
x12 x1
2 2
21
entonces
2
T L( x * , ) 1 1 x1
x x x1 x2 ( x1 x2 ) x1 ( x1 x2 ) x2 0
x2 1 1 x2
Además, x debe cumplir que:
g j ( x* ) n
g j ( x* )
x xi 0
x i1
xi
g ( x* ) g ( x* ) 2 2
x1 x2 2 x1 x1 2 x2 x2 2 x1 2 x2 2 ( x1 x2 ) 0
x1 x2 2 2
x2 x1
Este mismo análisis (se deja para a cargo del alumno) se puede efectuar con los tres
puntos restantes, donde:
Xa es un mínimo local estricto.
Xb es un mínimo local estricto
Xd es un máximo local estricto.
22
Geométricamente
x2 ( x1 , x 2 | g1 ( x1 , x 2 ) b1
x1 ( x1 , x2 | g1 ( x1 , x2 ) b1
Eje X2
Eje X1
y
g j x1 ,, xn bj
esta restricción se puede rescribir como:
g j x1 ,, xn y j b j
yj 0
23
En el primer caso, la variable yj se le conoce como variable de holgura y el en
segundo caso se le conoce como variable de exceso. Recordemos que si yj = 0, para
algún valor de x*, se dice que la restricción es activa en dicho punto, es decir:
g j x1 ,, xn b j
g2(x)=b2
x0
Eje X2
g1(x)=b1
Eje X1
Para derivar condiciones necesarias de primer orden para un máximo local, sólo se
consideran las restricciones activas en el punto en cuestión asociado al problema
particular. Al conocer cuales restricciones son activas en el punto óptimo x*, nuestro
problema volvería a ser un problema con restricciones de igualdad y podríamos
emplear el Método de Lagrange.
24
tanto, las condiciones necesarias que se derivarán en este tipo de problema serán
más complicadas que los métodos anteriormente vistos (su desarrollo no es muy
complejo mas allá del desarrollo matemático asociado). En los puntos siguientes
veremos esta situación y como llegaremos a resolverlos.
Esto se traduce a:
max
f x
s.a :
x 0,
Para obtener un punto máximo, podremos distinguir tres casos especiales, las cuales
caracterizan las condiciones necesarias para nuestro óptimo:
Caso 1:
f(x)
x* x
25
Caso 2:
f(x)
x* x
Caso 3:
f(x)
x* x
26
o bien, de manera resumida:
f ' ( x* ) 0,
* *
x f ' (x ) 0,
Lo anterior, se puede resumir en las siguientes 2n+1 condiciones que debes satisfacer
necesariamente un máximo local x* para este problema
f (x* )
0
x
f (x* ) *
x 0
x
x 0
Finalmente, teniendo presente las condiciones primera y última, ésta puede rescribir
como:
f (x* ) *
xi 0, i 1, , n
xi
27
Ejemplo:
Sea
max
f ( x1 , x2 ) x12 x1 x2 x1 x2
sa :
x1 0, x2 0
Desarrollo
Las condiciones de primer orden
f ( x* )
0
x
f ( x* )
2 x1 1 x2 0
x1
f ( x* )
1 x1 0
x2
f ( x* ) *
x 0
x
f ( x* )
x1 ( 2 x1 1 x2 ) x1 0
x1
f ( x* )
x2 ( 1 x1 ) x2 0
x2
x1 , x2 0
x1 0 x2 0
f ( x* )
2 x1 1 x2 0 1 0
x1
f ( x* )
1 x1 0
x2
f ( x* )
x1 ( 2 x1 1 x2 ) x1 0
x1
f ( x* )
x2 ( 1 x1 ) x2 0
x2
28
x1 0 x2 0
f ( x* )
2 x1 1 x2 0 0 1 x2 0 x2 1
x1
f ( x* )
1 x1 0 1 0
x2
f ( x* )
x1 ( 2 x1 1 x2 ) x1 0 0 0
x1
f ( x* )
x2 ( 1 x1 ) x2 0 x2 0
x2
x1 0 x2 0
f ( x* ) 1
2 x1 1 x2 0 2 x1 1 0 0 x1
x1 2
f ( x* )
1 x1 0 x1 1
x2
f ( x* ) 1
x1 ( 2 x1 1 x2 ) x1 0 2 x1 1 0 0 x1
x1 2
f ( x* )
x2 ( 1 x1 ) x2 0 0 0
x2
1
Finalmente, en este caso el punto x1 x 2 0 cumplen con todas las ecuaciones
2
expuestas, por lo tanto, este punto es un máximo local.
29
Transformemos nuestras restricciones en igualdades, es decir, con la adición del
vector holguras y T y1 ,, ym , con y j 0, j 1,, m , entonces:
g ( x) y b
o
y b g ( x)
Y 0, x 0
Por lo cual, las condiciones de primer orden serían al caso ya expuesto de resolver
sólo el Lagrangiano. Sin embargo, como adicionamos las condición de no negatividad,
tanto para el vector x y el vector y, esto se modifica conforme a lo discutido en el
apartado anterior. Entonces, las condiciones de primer orden para un máximo local
serían:
L f g
0
x x x
L f g
x x 0
x x x
x 0
L
b g ( x) y 0
L
0
L
y y 0
y 0
30
Podemos apreciar que es libre y la condición de primer orden sólo requiere que la
derivada parcial del Lagrangiano con respecto a este vector sea nula. Ahora,
realicemos el siguiente reemplazo y b g(x) , por lo cual, las condiciones se pueden
rescribir como:
L f g
0
x x x
L f g
x x 0
x x x
x 0
L
0 (no necesaria)
L
0
y
L
y (b g ( x)) 0
y
b g ( x) 0
Ahora, será posible derivar las condiciones necesarias y suficientes de segundo orden
para un máximo local x*, asociado a nuestro problema. Para lograrlo, sería necesario
considerar sólo las restricciones activas y, por lo tanto, las consideraciones efectuadas
en el caso de igualdad, también acá son válidas. Pero analicemos un caso especial, el
cual asegura la suficiencia de las condiciones de KKT, cuando se cumplen ciertos
supuestos de convexidad presentes en el modelo considerado. Se puede apreciar que
si gj(x) son funciones convexas y f(x) es cóncava, entonces las condiciones de KKT
también son suficientes. Sabemos que gj(x) es convexa, el conjunto
x | g ( x) b, x 0 es convexo, luego:
X x | g ( x) b, x 0
En que el punto regular x* satisface las condiciones de KKT. Pero de las condiciones
de KKT, tenemos:
f ( x* ) g ( x* )
x x
31
Como gj es convexa y g j C1
*
g j (x* )
g j ( x) g j (x ) (x x* )
x
x X , j 1,, m , luego se tiene que:
g j (x* )
(x x* ) 0
x
Ejemplo:
Sea:
max
f ( x1 , x2 ) 8 x12 10 x22 12 x1 x2 50 x1 80 x2
sa :
x1 x2 1
8 x12 x22 4
x1 0, x2 0
Desarrollo:
Construyamos el Lagrangiano:
max
L( x1 , x2 , 1 , 2 ) 8 x12 10 x22 12 x1 x2 50 x1 80 x2 1 (1 x1 x2 ) 2 (4 8 x12 x22 )
Donde las condiciones de KKT son las siguientes:
L
a 16 x1 12 x2 50 1 16 2 x1 0
x1
L
b 20 x2 12 x1 80 1 2 2 x2 0
x2
L L
c x1 x2 ( 16 x1 12 x2 50 1 16 2 x1 ) x1 ( 20 x2 12 x1 80 1 2 2 x2 ) x2 0
x1 x2
d x1 0, x2 0
L
e 1 x1 x2 0
1
L
f 4 8 x12 x22 0
2
32
L L
g 1 2 (1 x1 x2 ) 1 (4 8 x12 x22 ) 2 0
1 2
h 1 0, 2 0
Ahora, al igual que en el punto anterior, procederemos por tanteo para encontrar el
punto óptimo.
Supongamos que x1 0 x2 0
L L
g 1 2 (1 x1 x2 ) 1 (4 8 x12 x22 ) 2 0 2
1
1 0 2 0
1 2 4
h 1 0, 2 0
L L
c x1 x2 ( 16 x1 12 x2 50 1 16 2 x1 ) x1 ( 20 x2 12 x1 80 1 2 2 x2 ) x2 0
x1 x2
0 0
d x1 0, x2 0
L
e 1 x1 x2 0 1 0
1
L
f 4 8 x12 x22 0 4 0
2
L
a 16 x1 12 x2 50 1 16 2 x1 0 0 50
x1
L
b 20 x2 12 x1 80 1 2 2 x2 0 0 80
x2
Supongamos que x1 0 x2 0 :
L
a 16 x1 12 x2 50 1 16 2 x1 0 12 x2 50 1 0
x1
L
b 20 x2 12 x1 80 1 2 2 x2 0 20 x2 80 1 2 2 x2 0
x2
L L
c x1 x2 ( 16 x1 12 x2 50 1 16 2 x1 ) x1 ( 20 x2 12 x1 80 1 2 2 x2 ) x2 0
x1 x2
20 x2 80 1 2 2 x2 0
d x1 0, x2 0
33
L
e 1 x1 x2 0 1 x2 0
1
L
f 4 8 x12 x22 0 4 x22 0
2
L L
g 1 2 (1 x1 x2 ) 1 (4 8 x12 x22 ) 2 0 (1 x2 ) 1 (4 x22 ) 2 0
1 2
h 1 0, 2 0
34
Gráficamente, se puede ver este análisis:
x2
RSF
2
x1
-2 -1 2 1 2
2 2
-1
-2
35
36