Академический Документы
Профессиональный Документы
Культура Документы
1 Categora
Una funcin objetivo a minimizar o maximizar. Esta funcin objetivo, dentro del
problema de optimizacin, recibe el nombre de modelo econmico.
2 Categora
Un conjunto de restricciones de igualdad (ecuaciones), que corresponden a
identidades matemticas impuestas por el diseo, el equipo o el modelo matemtico del
sistema.
3 Categora
Un conjunto de restricciones de desiguladad (inecuaciones), que corresponden a
limitaciones fsicas (o de operacin) impuestas por el diseo, el equipo o el modelo
matemtico del sistema.
Durante el curso utilizaremos la siguiente notacin:
minimizar: f ( x )
sujeto a : h( x ) = 0
: g( x ) 0
funcin objetivo
vector de restricciones independientes de
igualdad.
vector de restricciones independientes de
desigualdad.
en esta notacin:
x = x1 x2 ... xn
T
en
general
es
Caso
Interpretacin
m1 < n nmero de incgnitas es mayor que el nmero de ecuaciones que las relaciona. El
sistema es subdeterminado, o con infinitas soluciones. De ese conjunto de
soluciones, slo una satisface el problema de optimizacin.
m1 = n nmero de incgnitas es igual al nmero de ecuaciones que las relaciona. El
sistema es determinado y slo se requiere resolver el sistema de restricciones de
igualdad. Esta solucin es, por definicin, la solucin del problema de
optimizacin.
m1 > n nmero de incgnitas es menor que el nmero de ecuaciones que las relaciona. El
sistema es sobredeterminado, ningn conjunto de soluciones satisface todas las
retricciones de igualdad. Lo mismo suceder para el problema de optimizacin.
Figura 1.1
Grfica de una funcin objetivo bidimensional
20
18
16
12
10
2
1
3
0
-1
-2
-1
-2
8
6
4
2
0
4
f (x1, x2)
14
-3
-3
-4
-4
x1
Figura 1.2
Restricciones en el plano de nivel x1-x2
4
g3(x)
g4(x)
2
g2(x)
Dominio factible
x2
g5(x)
h1(x)
g1(x)
-2
Curva de soluciones satisfactorias
-4
-4
-3
-2
-1
x1
Ejemplo N 1:
4
se necesitan determinar las condiciones de operacin que maximizarn la recuperacin del
sistema.
R=
minimizar: f ( x ) =
1 2 y1, 2
z1,1
recordamos ahora que, suponiendo que las corrientes alcanzan, las fracciones vaporizadas
pueden escribirse en trminos de las constantes de vaporizacin como:
=
z1
z2
K1 1 1 K2
xi , j =
(K
i, j
zi , j
1 +1
; yi , j =
(K
zi , j Ki , j
i, j
1 +1
Pi sat
Ki =
Ki = Ki ( P, T )
P
de acuerdo con el modelo indicado, tenemos que:
f ( x ) = f y1, 2 , z1,1 , T1 , T2 , P1 , P2
z1,1 = z1,1
h1 = z1,1 z1,1 = 0
P1 = P P1 h2 = P1 P + P1 = 0
P2 = P1 P2
h3 = P2 P1 + P2 = 0
Obviamente tenemos ac ecuaciones y modelos para el clculo de la prdida de carga.
Etapa N 3: Establecer las restricciones de desigualdad.
a. f ( x0 ) existe.
b. lm f ( x ) existe, y es nico aproximndose direccionalmente a x
x x0
c. lm f ( x ) = f ( x0 )
x x0
50
60
40
50
40
f(x)
f(x)
30
20
30
20
10
Punto de discontinuidad
10
0
6
x
10
12
f ( xa + ( 1 ) xb ) f ( xa ) + ( 1 ) f ( xb ) ; 0 1
desde un punto de vista grfico, esto signfica que el hiperplano que une dos puntos de la
funcin evaluada se sita por debajo de la funcin.
Una funcin convexa se define invirtiendo la desigualdad:
f ( xa + ( 1 ) xb ) f ( xa ) + ( 1 ) f ( xb ) ; 0 1
en funciones objetivo unidimensionales, la situacin grfica es la siguiente:
Funcin cncava
Funcin convexa
16
14
12
-2
xa
-4
-6
xb
f(x)
f(x)
10
-8
-10
-12
-14
-16
0
xb
xa
d 2 f
2
dx
f ( x ) = f ( x 0 ) + T f ( x 0 )( x x 0 ) +
T
1
x x 0 ) H( x x 0 )
(
2
2f
x 2
21
f
(
)
H x = x2x1
2M
f
xnx1
2f
x1x2
2f
x22
M
2f
xnx2
2f
...
x1xn
2f
...
x2xn
O
...
2f
xn2
9
recordamos que para funciones diferenciables, se cumple la identidad:
2 f
2 f
xix j x jxi
x Mx > 0 x 0
x Mx < 0 x 0
> 0 para x a 0
x T M x
< 0 para x b 0 ; x b x a
x Mx 0 x 0
x Mx 0 x 0
T
T
Teorema:
10
donde es una constante escalar positiva, que tambin puede ser escrita como:
= x0 x 0
T
puesto que es positivo, tambin debe serlo, por aparecer como multiplicador de una
norma de vectores. Notamos ahora que:
x0 H ( x0 ) x0 = x0 x0 H ( x0 ) x0 = Ix0
T
H I = 0
Esta ltima ecuacin define el problema de los valores caractersticos de una matriz.
Tomando determinante a ambos lados, se obtiene el polinomio caracterstico de la matriz
H, cuyas races son precisamente los valores propios.
Recordamos que el polinomio caracterstico tiene el mismo orden que su matriz
asociada, por tanto el nmero de valores caractersticos corresponde a la dimensin de la
matriz. Como la Hessiana es simtrica, todos sus valores propios son reales.
Corolarios del teorema:
Una funcin es convexa cuando todos los valores propios son mayores o iguales que
cero (Hessiana semidefinida positiva).
Una funcin es estrictamente cncava todos los valores propios son negativos.
Una funcin es cncava cuando todos los valores propios son menores o iguales que
cero.
Cuando una funcin combina simultneamente valores propios negativos y positivos, o
bien, cuando todos los valores propios son nulos, su geometra es silla de montar.
11
f
= 4 x1 + 2 x2 + 7
x1
f
= 2 x1 + 3x2 + 8
x2
12
De las segundas derivadas parciales:
2 f
=4
x12
2 f
=3
x22
2 f
2 f
=
=2
x1x2 x2x1
de esta forma, la Hessiana asociada a f (x) ser:
4 2
H =
2 3
es decir, una matriz de constantes para todos los reales. Calculamos ahora los valores
propios de H:
2 2
4
= 7 + 8 = 0
det H I = det
3
2
13
140
120
80
60
40
3
2
20
1
3
0
-1
-2
-1
-2
f (x1, x2)
100
-3
-3
-4
-4
x1
14
Dominio convexo
xb
xa
x = x a + ( 1 ) x b ( con 0 1)
En el mismo caso anterior, cuando la regin factible de optimizacin es externa a la
elipse, se tendr:
Ejemplo de regin cncava
xa
xb
en este caso, algunos de los puntos de la lnea (hiperplano) que une dos elementos del
dominio, no estan contenidos en el dominio.
Teoremas (topologa matemtica):
15
a U b
16
2. Optimizacin de funciones continuas sin restricciones
tambin hemos indicado que una funcin minimizable en el sentido de las condiciones
expuestas, es aproximable por una expansin de Taylor cuadrtica (o de mayor orden) en
las vecindades del mnimo:
1
f ( x) = f ( x 0 ) + T f ( x 0 ) x + x T H( x 0 ) x
2
x = x x0
(2.1)
f ( x ) = f ( x 0 ) + H ( x 0 ) x = 0 H ( x 0 ) x = f ( x 0 )
(2.2)
( )
( )
H x j x j +1 = f x j
x j +1 = x j + x j +1
(2.3)
17
f ( x1 , x2 ) = 25 x14 + 18 x22 + 23 x1 x2 + 5 x1 + 3 x2 7
para este caso particular, se tiene:
f / x1 5 + 100 x13 + 23 x2 0
=
f ( x ) =
=
f / x2 3 + 23 x1 + 36 x2 0
con la Hessiana respectiva:
300 x12 23
H( x) =
36
23
obviamente ahora la definicin de la Hessiana es variable y depende de x1 ; puesto que la
funcin no es cuadrtica, la Hessiana tampoco es una matriz de elementos constantes.
Figura 2.1: Grfica de la funcin
18
Figura 2.2
Minimizacin de una funcin utilizando la tcnica de Newton
(Sensitividad al punto de partida)
(2.1)
19
f ( x ) = f ( x 0 + t s) = f ( t )
(2.2)
la ecuacin (2.2) indica que al definir una direccin, y conocido un punto inicial de
bsqueda, la funcin multivariable se transforma en una funcin de una sola variable. Esta
situacin es claramente ventajosa, pues minimizar funciones de una dimensin es un
problema ms sencillo. A modo de ejemplo, considrese la proyeccin de f (x) en dos
direcciones distintas, a partir de x T0 = ( 1 1)
88
sT = ( 1 -1 )
66
fs(t)
44
22
sT = ( 1 1 )
-1
20
Al cumplirse la condicin:
( )
( )
( )
15
14
f (x1)
13
f (x)
12
11
f (x2)
f (x4)
10
9
f (x3)
8
7
-2
-1
1
x
21
Si bien la subdivisin del dominio unimodal es completamente arbitraria, existen
tcnicas que permiten seleccionarlo de modo de evaluar la funcin un mnimo de veces,
pues obviamente el nmero de evaluaciones de la funcin incide sobre el tiempo requerido
para la convergencia.
Tcnica de la seccin urea
(2.3)
x=
3 5
5 1
L ; y=
L
2
2
(2.4)
xa ; xb =
3 5
5 1
(
( xd xa ) + xa ; xd
xd xa ) + xa ; xc =
2
2
(2.5)
por cada etapa de reduccin de dominio, la seccin urea contrae el dominio de bsqueda al
50( 5 1) = 61. 8% .
cuando f ( x a ) > f ( x b ) > f ( x c )
se elimina la regin x a x b , revisando los puntos ( xb , xc , xd ) , los que siguen en
proporcin urea, bastando introducir un solo nuevo punto. De lo contrario se elimina la
22
regin x c x d , revisando los puntos ( xa , xb , xc ) , los que siguen en proporcin urea,
bastando introducir un solo nuevo punto.
Ejemplo
Consideremos la minimizacin de la funcin f ( x ) = x ; como se sabe, esta funcin
no es diferenciable en cero, donde presenta un mnimo absoluto:
1. se busca una regin donde la funcin sea convexa, de modo de acotar el mnimo. En
nuestro caso, el mnimo est acotado por -1 < x < 1.
2. se subdivide el dominio de acuerdo a la regla (2.5)
3 5
5 1
(
( xd xa ) + xa = 0.2361
xd xa ) + xa = .2361; xc =
2
2
xa = 1; xd = 1; xb =
2.0
1.5
x
1.0
f (x)
0.5
0.0
regin eliminada
-0.5
xa
xb
xc
xd
-1.0
-1.5
-1.0
-0.5
0.0
0.5
1.0
1.5
xa
xc
xd
xa1 = xa0
xd1 = xc0
xc1 = xb0
f ( xa1 ) = f ( xa0 )
f ( xd1 ) = f ( xc0 )
f ( xc1 ) = f ( xb0 )
3 5 1
( xd xa1 ) + xa1
2
evaluar f ( xb1 )
xb1 =
23
si f ( x a ) > f ( x b ) > f ( x c ) se cumple, entonces se elimina la regin x a x b , los puntos
vuelven a encontrarse en seccin urea de modo que:
xa1 = xb0
xd1 = xd0
xb1 = xc0
f ( xa1 ) = f ( xb0 )
f ( xd1 ) = f ( xd0 )
f ( xb1 ) = f ( xc0 )
5 1 1
( xd xa1 ) + xa1
2
evaluar f ( xc1 )
xc1 =
en cualquiera de los dos casos es posible observar que se requiere solo una nueva
evaluacin por ciclo.
xa
i
0
1
2
3
4
5
6
7
8
9
10
-1.0000
-1.0000
-0.5279
-0.2361
-0.2361
-0.1246
-0.0557
-0.0557
-0.0294
-0.0132
-0.0132
xb
xc
-0.2361
-0.5279
-0.2361
-0.0557
-0.1246
-0.0557
-0.0132
-0.0294
-0.0132
-0.0031
-0.0069
0.2361
-0.2361
-0.0557
0.0557
-0.0557
-0.0132
0.0132
-0.0132
-0.0031
0.0031
-0.0031
xd
1.0000
0.2361
0.2361
0.2361
0.0557
0.0557
0.0557
0.0132
0.0132
0.0132
0.0031
f (xa )
1.0000
1.0000
0.5279
0.2361
0.2361
0.1246
0.0557
0.0557
0.0294
0.0132
0.0132
f (x b )
0.2361
0.5279
0.2361
0.0557
0.1246
0.0557
0.0132
0.0294
0.0132
0.0031
0.0069
f (xc )
0.2361
0.2361
0.0557
0.0557
0.0557
0.0132
0.0132
0.0132
0.0031
0.0031
0.0031
f (xd )
1.0000
0.2361
0.2361
0.2361
0.0557
0.0557
0.0557
0.0132
0.0132
0.0132
0.0031
Por cada ciclo iterativo, la seccin urea contrae el dominio al 61.8%, entonces se
tiene:
(2.6)
(2.7)
24
funcin no tiene porqu ser diferenciable, y que en algunos casos, ni siquiera se requiere
una funcin continua.
Es absolutamente necesario, en todo caso, que la funcin sea convexa en el dominio
inicial, y unimodal (montona) antes y despus del mnimo.
b. Mtodos de interpolacin
Interpolacin cuadrtica
f(x)
f(xa)
f(xc)
f(xb)
a=
xa ( f ( xb ) f ( xc )) + xb ( f ( xc ) f ( xa )) + xc ( f ( xa ) f ( xb ))
( xb xa )( xc xa )( xc xb )
xa2 ( f ( xb ) f ( xc )) + xb2 ( f ( xc ) f ( xa )) + xc2 ( f ( xa ) f ( xb ))
b=
( xb xa )( xc xa )( xc xb )
una cuadrtica como la indicada, tiene punto extremo cuando:
25
(2.8)
la ecuacin anterior es exacta cuando el ajuste procede sobre la cuadrtica, pero puede
proceder iterativamente cuando la ecuacin original no lo es:
x *j +1 = x *j +1 xa , j , xb , j , xc , j
(2.9)
Casos :
Interpolacin cbica
Al igual que en el caso anterior, la base del mtodo es minimizar el ajuste de una
funcin, ahora se trata de un polinomio cbico:
f ( x) = a 3x3 + a 2 x2 + a1x + a 0
(2.10)
dada la evaluacin de 4 puntos de una regin convexa del dominio, los coeficientes
polinmicos se calculan resolviendo el sistema:
xa3 xa2
x3 x2
b3 b2
xc xc
xd3 xd2
xa
xb
xc
xd
1 a3 f a
1 a2 f b
=
1 a1 f c
1 a0 f d
(2.11)
2a 2 4a 22 12a 3a1
df
2
*
= 3a 3x + 2a 2 x + a1 = 0 x =
dx
6a 3
(2.12)
26
d2f
dx2
= 6a 3x* + 2a 2 > 0
(2.13)
x*
f b' + w z
( x xa )
x = xb '
f b f a' + 2w b
*
z=
3( f a f b )
( xb xa )
w = ( z 2 f b' f a' )
(2.14)
+ f b' + f a'
1/ 2
obviamente, los puntos a y b son representativos de una regin convexa para la que si
xa < x b , entonces fa' < 0 y fb' > 0. El requisito de la funcin es la convexidad y la
continuidad.
Mtodos indirectos
(2.15)
1
f ( x ) = f ( x k ) + f ' ( x k )( x x k ) + f '' ( x k )( x x k )2
2
(2.15)
27
x = xk
f ' (xk )
f '' ( x k )
(2.16)
f ' (xk )
f '' ( x k )
(2.17)
Mtodo Quasi-Newton
(2.18)
h
f ( x k + h) f ( x k h)
2 f ( x k + h) 2 f ( x k ) + f ( x k h)
(2.19)
notamos que el mtodo requiere tres evaluciones de la funcin por iteracin. Si el costo de
tiempo de evalucin de la funcin es elevado (por ejemplo, una funcin objetivo resultante
de un clculo no lineal), el mtodo es poco recomendable. Otro aspecto que debe tenerse en
cuenta, es que la frmula (2.19) es una aproximacin, por tanto, de ella no se obtiene el
mnimo exacto, sino que solamente el punto que anula a la primera derivada numrica de la
funcin.
28
g '( x) = f '' ( x)
x k +1 = x k
g( x k )
g'( x k )
la derivada g'(x) puede ser aproximada por una recta que una dos puntos de la curva:
g' ( x k ) =
g ( x k ) g ( x k 1 )
x k x k 1
(2.21)
de esta forma:
x k +1 = x k
g( x k ) x k x k 1
g ( x k ) g ( x k 1 )
(2.21)
g(x)
xk
xk+1
xk-1
g( x k ) x k x k 1
g ( x k ) g ( x k 1 ) +
(2.22)
29
puesto que el mtodo de Newton es el que define todas las bsquedas indirectas, es obvio
esperar que estos mtodos conserven las mismas ventajas y desventajas de la metodologa
materna.
Para todos los mtodos anteriores, fundamentalmente los directos, hemos discutido
que es necesario acotar un dominio donde la funcin tiene caracterstica convexa. En
general, esto no es sencillo cuando la funcin no tiene restricciones, y puede ser comparado
a bajar un cerro en la oscuridad. Sintomticamente, la primera informacin la da la
derivada local de un punto de partida, pues si:
df
> 0 : la funcin es minimizable en el sentido en que x decrece
dx
df
< 0 : la funcin es minimizable en el sentido en que x crece
dx
(2.23)
(2.24)
x k +1 < x k < x k 1
-10
-20
-30
xk-1
xk
xk+1
-40
-3
-2
-1
en este caso, cualquier mtodo podra dar solucin sobre un mnimo falso de la funcin (o
relativo). La metodologa que veremos aqu, permite solucionar el problema matemtico de
30
encontrar un punto estacionario, pero no garantiza si estamos acotando un mnimo relativo
o uno absoluto. Generalmente es conveniente perturbar la solucin de un problema de
minimizacin, para establecer la calidad del punto encontrado. Una tcnica que permite
acotar el mnimo, consiste en utilizar el muestreo:
xk +1 = xk + sgn( f '( x0 )) 2k
(2.25)
31
Captulo #3
Optimizacin de funciones N-Dimensionales
Los mtodos directos se caracterizan por evaluar directamente una funcin para
obtener informacin acerca del mnimo. Es necesario, entonces, definir una estrategia para
que con el mnimo nmero de evaluciones de la funcin, sea posible obtener el punto
ptimo.
32
x1
33
En la medida que el mtodo avanza hacia el mnimo, generalmente ocurrir que la
figura geomtrica pasar por los mismos puntos. Cuando este es el caso, se procede a la
compactacin los lados, por ejemplo, biseccin, hasta una toleracia aceptable para la
presicin del mnimo. Uno de los cdigos ms utilizados en paquetes comerciales de
optimizacin, es el mtodo de Nelder-Mead (1965)1, que toma las ideas expuestas aqu,
pero considera mtodos ms eficientes para la proyeccin del polgono equiltero, como
para su compactacin.
3.2 Mtodos Direccionales
x s = x 0 + qs
( )
(3.2.1)
f s ( x) = f x s = f ( q)
df ( q )
0
dq
d 2 f ( q)
0
dq 2
(3.2.2)
Ejemplo
Considere la funcin:
f ( x1 , x2 ) = 2 x12 + x22 3
1Nelder,
J. and Mead, R., 1965. A Simplex Method for Function Minimization. The Computer Journal,7:308
34
El lugar geomtrico de las variables en la direccin, se calcula por:
1 4
x = x 0 + qs = + q
1 2
x1 = 1 4 q
x2 = 1 2q
f s ( x ) = 2( 1 4q ) + ( 1 2q ) 3
2
= 36q 2 20q
una parbola convexa. Minimizando f en funcin de q, es posible obtener el mnimo
direccional:
dfs
5
= 72 q 20 = 0 q =
dq
18
y el mnimo direccional de f en s es:
1 5 4 1 / 9
x* = + =
1 18 2 4 / 9
Teorema:
35
df ( x (q )) f dx1 f dx2
f dxn
=
+
+L+
dq
x1 dq x2 dq
xn dq
dx1
dq
f
f
f dx2
=
L
xn dq
x1 x2
dxM
n
dq
dx
= T f ( x)
dq
dado que:
x = x 0 + qs
se deduce
dx
=s
dq
df ( x (q ))
dx
= T f ( x (q ))
= T f ( x (q )) s
dq
dq
df ( x (q ))
= 0 = T f ( x * (qmn )) s
dq
ecuacin que indica ortogonalidad. Veamos que esto se verifica para el ejemplo:
f ( x1 , x2 ) = 2 x12 + x22 3
el mnimo direccional encontrado a partir de x 0T = 1 1 en la direccin s T = 4 2 es:
1 / 9
x* =
4 / 9
por tanto:
36
4 x1 4 / 9
f ( x * ) = =
2 x2 8 / 9
y
4
T f ( x * ) s = [ 4 / 9 8 / 9] = 0
2
interpretacin geomtrica del teorema:
x0
x*
37
x0
38
1.0
Y Axis
0.5
0.0
-0.5
-1.0
-1.0
-0.5
0.0
X Axis
0.5
1.0
39
40
41
3.3 Mtodos direccionales directos:
Tcnica de Powell
Hemos demostrado que para funciones exactamente cuadrticas, es posible la
construccin de un conjunto conveniente de direcciones, denominadas direcciones
conjugadas, sin la participacin de derivadas superiores o gradientes. Recordamos en este
punto que, cuando se seleccionan dos puntos de partida xa y x b , y una direccin comn de
minimizacin s , la direccin generada por xa x b es exactamente conjugada a s si la
funcin materna es cuadrtica.
Figura 3.3.1
Generacin de direcciones conjugadas
*
a
*
b
42
j+ 1
mayor progreso) por la direccin global generada en la etapa anterior, de manera que s3
conjugar a s3j .
Figura 3.3.2
Generacin de direcciones conjugadas para el mtodo de Powell
s1 3
1 =x 2
x1 0
x12
0
x10
0
s0
=x
-x
s11 = s01
=s
x11
x02
( s02 )T = [ 0 1 ]
( s01 )T = [ 1 0 ]
x00
x01
mnimo direccional
x10
x10
direccin
s = 1 0 L 0
s = 0 1 L 0
M
x0n 1
M
s = 0 0 L 1
M
x0n
0
1
0
2
0
n
x20
43
que se sita en la recta de la direccin global. Ir a 2.
Etapa k
1. Dado un vector inicial x0k , y un conjunto de "n" direcciones, minimizar en trminos de
todas las direcciones utilizando una tcnica unidimensional directa:
punto inicial
x0k
x1k
direccin
s = 1 0 L 0
s = 0 1 L 0
mnimo direccional
x1k
x2k
M
xnk 1
M
s = 0 0 L 1
M
xnk
k
1
k
2
k
n
k = m x f ( x ik 1 ) f ( x ik )
1 = f3k f1k
2 = ( f 1k 2 f 2k + f 3k )( f 1k f 2k k ) k ( f 1k f 2k )
1
2
44
ambos criterios miden la posibilidad de minimizar la funcin en la direccin global
generada por la etapa.
4.a Si 1 0 o 2 0 , la funcin no ser minimizable en la direccin global asociada a la
k-sima etapa, lo que indica que probablemente la direcciones globales en dos etapas
sucesivas se han hecho colineales. Si este es el caso, entonces para la nueva etapa se
seleccionan:
x0k +1 = x nk
skj +1 = skj
en otras palabras, se eligen las mismas direcciones de la etapa anterior, para una nueva
etapa que se construye sobre el ltimo mnimo direccional anterior.
4.b Si 1 < 0 y 2 < 0 , se procede como sigue:
i ). definir la direccin
s*k = x nk x0k
s*k
de acuerdo al procedimiento descrito aqu, las direcciones globales irn conjugando por
etapa.
5. repetir la etapa "k" hasta que:
x nk x0k <
45
Brent (1973), propone una tcnica similar a la de Powell, pero ms eficiente y con
mayor carga computacional. En el mtodo de Brent se hace un ajuste cuadrtico local de la
funcin, y se utilizan los vectores principales del ajuste. La convergencia de este mtodo es
cuadrtica, an en problemas pobremente condicionados.
La aplicacin del mtodo es sencilla, y aconsejable para aquellos problemas en los que
es muy difcil obtener informacin diferencial.
Ejemplo
f ( x ) = 100( x2 x12 ) + ( 1 x1 )
2
46
47
Etapa
x1
x2
-1.2000
-0.9950
-0.9950
1.0000
1.0000
0.9900
-0.9897
-0.9897
-0.9843
0.9897
0.9794
0.9791
-0.7611
-0.7611
-0.7015
0.5397
0.5792
0.4621
-0.5028
-0.5383
-0.4656
0.2027
0.2725
0.1776
-0.1959
-0.2276
-0.1617
-0.0041
0.0374
-0.0070
0.0850
0.0560
0.1164
-0.0284
-0.0089
-0.0141
0.3432
0.3177
0.3713
0.0893
0.0915
0.1159
0.5739
0.5524
0.5982
0.3081
0.2983
0.3417
0.7733
0.7567
0.7929
0.5841
0.5684
0.6184
sT
[1.0000
[0.0000
1 =
0.0000]
1.0000]
-8.3275
f (x)
24.2000
3.9900
3.9799
2 =
[0.0000
[0.9988
1 =
1.0000]
-0.0488]
-0.0426
3.9693
3.9587
3.9481
2 =
0.0106
0.0107
0.0000
[0.0000
[0.4529
1 =
1.0000]
-0.8915]
-0.4833
3.2570
3.1013
2.9858
2 =
0.1557
0.1155
-0.0174
[0.4529
[0.6082
1 =
-0.8915]
-0.7938]
-0.3740
2.5101
2.3962
2.3014
2 =
0.1139
0.0948
-0.0076
[0.6082
[0.8294
1 =
-0.7938]
-0.5587]
-0.2700
1.6102
1.5280
1.4597
2 =
0.0823
0.0683
-0.0029
[0.8294
[0.9963
1 =
-0.5587]
-0.0863]
-0.1910
0.9642
0.9055
0.8572
2 =
0.0587
0.0483
-0.0010
[0.9963
[0.9099
1 =
-0.0863]
0.4148]
-0.1231
0.5127
0.4745
0.4434
2 =
0.0382
0.0310
-0.0003
[0.9099
[0.7257
1 =
0.4148]
0.6880]
-0.0697
0.2270
0.2051
0.1876
2 =
0.0219
0.0175
-0.0001
[0.7257
[0.5856
1 =
0.6880]
0.8106]
-0.0303
0.0709
0.0610
0.0535
2 =
0.0098
0.0076
0.0000
20.2100
0.0101
-700.7541
Contina..
48
Etapa
x1
x2
10
0.9321
0.9225
0.9444
0.8626
0.8493
0.8877
11
0.9942
0.9989
1.0000
0.9895
0.9977
1.0000
12
1.0000
1.0000
1.0000
1.0000
1.0000
1.0000
sT
[0.5856
[0.4952
1 =
0.8106]
0.8688]
-0.0060
f (x)
0.0084
0.0063
0.0048
2 =
[0.4952
[0.4396
1 =
0.8688]
0.8982]
0.0000
0.0001
0.0000
0.0000
2 =
0.0001
0.0000
0.0000
[0.4952
[0.4396
1 =
0.8688]
0.8982]
0.0000
0.0000
0.0000
0.0000
2 =
0.0000
0.0000
0.0000
0.0022
0.0015
0.0000
49
Figura 3.3.4 : Minimizacin de la funcin f ( x ) = 100( x2 x12 ) + ( 1 x1 )
Trayectoria del mtodo de Powell (1965)
2
x2
x1
50
3.4 Tcnicas indirectas de primer orden
( )
s k = f x k
(3.4.1)
( )
x k + 1 = x k + qs k = x k qf x k
(3.4.2)
(3.4.3)
1Polak,
51
gi +1 = gi i Asi
si +1 = gi +1 + i si
1< i N
(3.4.4)
de modo que:
g i +1 g i = 0
T
(3.4.5)
si +1 A si = 0
T
gi gi +1 = 0 = gi gi i gi Asi i =
T
gi gi
gi Asi
T
T
i
T
i i
si Agi +1
T
si Asi
(3.4.6)
2 1 1
A = 1 3 2
1 2 4
y el vector:
g1 = s1 = 1 1 1
T
52
De (3.4.4) y (3.4.6), se deduce:
T
gi +1 = gi i Asi = gi
gi g i
T
gi Asi
Asi
si +1 = gi +1 + i si = gi +1
si Agi +1
T
si Asi
si
1
1 1 1]1
[
4 1 / 3
2 1 11 1
1
gT g
1
g = g T1 1 As1 = 1
1 3 2 1 = 1 2 = 1 / 3
2
1
3
2 1 11
g As1
1
1
2
4
1
1
3
0
1
[1 1 1] 1 3 21
1 2 4 1
2 1 1 1 / 3
1 1 1] 1 3 2 1 / 3
[
1 7 / 27
1 / 3
s1T Ag
0
1 2 4
2
s2 = g T
s1 = 1 / 3
1 = 11 / 27
2
2 1 11
s1 As1
0
1 2 / 27
[1 1 1] 1 3 21
1 2 4 1
de igual forma, se calcula que:
T
g3 = g2
g 2 g2
T
g2 As2
As2 = 7 / 23 7 / 23 14 / 23
s3 = g3
s2 Ag3
T
2
s As2
es fcil comprobar que los vectores g son mutuamente ortogonales, y los vectores h son
mutuamente conjugantes de la matriz A .
Supongamos conocida una base de vectores g mutuamente ortogonales. Como
veremos a continuacin, de acuerdo con el mtodo de Polack, si conocemos la base de
vectores ortogonales, podramos encontrar el grupo de vectores asociados s mutuamente
conjugantes.
53
gi +1 = gi i Asi con i =
gTi gi
gTi Asi
si +1 = gi +1 + i si con i =
1< i N
sTi Agi +1
sTi Asi
notemos que:
i =
siT Ag
i +1
T
i
s Asi
g T Asi
i +1
T
i
s Asi
gT g
i +1
i +1
T
i
g /i
i
s Asi
gT g
i +1
T
i i
i +1
s Asi
pero:
s Asi =
T
i i
gT g
i
T
g Asi
s Asi =
T
i
gT g
i
( s s ) As
i
siT Asi = g T g
i i 1
entonces:
si +1 = gi +1 +
gTi +1 gi +1
gTi gi
si
(3.4.7)
s1 = g1
La ecuacin (3.4.7) establece que cuando conocemos completamente un conjunto de
vectores ortogonales, sin necesidad de conocer la matriz A , podemos obtener un conjunto
de direcciones asociadas que son mutuamente conjugantes de tal matriz.
Gradiente conjugado (Fletcher and Reeves, 19642 )
(3.4.8)
Fletcher, R. and Reeves, C., 1964. Function Minimization by Conjugate Gradients. Comput. J. , 7:149
54
s1 = f ( x1 ) +
T f ( x1 )f ( x1 )
s0
T f ( x 0 ) f ( x 0 )
(3.4.9)
(3.4.10)
x *k +1 = x *k + qk* s k
x f
df
= i
= sT f ( x ) = 0
dq q
i q i xi
(3.4.11)
de acuerdo con esta, bastar encontrar un gradiente ortogonal a s, pero el gradiente ahora es
explcito.
Ejemplo
considrere la funcin de Rosenbrok en el punto xT0 = 1. 2 1
f ( x ) = 100( x2 x12 ) + ( 1 x1 )
2
400( x2 x12 ) x1 2( 1 x1 )
f ( x ) =
; f ( x 0 ) = 24.2
2
200( x2 x1 )
entonces,
55
215.6
s0 = f ( x 0 ) =
88.0
generalmente ocurrir que las direcciones son bastante variables en magnitud, de modo que
una buena idea es producir una normalizacin de las direcciones:
0.925848
s'0 =
0.377897
as tenemos que:
1.03011
x *1 =
; f ( x *1 ) = 4.1281
1.06934
a partir de este mnimo direccional, podemos calcular el gradiente:
0.67167
f ( x *1 ) =
1.64475
y la direccin conjugada ser:
s1 = f ( x1* ) +
f ( x ) f ( x
)
0.67167
s
=
1.64475 +
T f ( x0 ) f ( x0 ) 0
0.65912
=
1.64987
*
1
*
1
0.67167
1.64475]
1.64475 215.6
88
215.6
[ 215.6 88] 88
[ 0.67167
56
it
x1
x2
f ( x)
0
1
2
3
4
5
10
15
20
25
30
35
40
45
50
55
60
61
62
63
-1.2000
-1.0301
-0.9295
-0.7850
-0.6795
-0.5941
-0.3012
-0.1028
0.0634
0.2249
0.4017
0.6146
0.8978
1.3645
1.4954
1.0128
1.0001
1.0001
1.0001
1.0000
1.0000
1.0693
0.8282
0.5574
0.3895
0.2713
-0.0162
-0.1089
-0.1234
-0.0820
0.0263
0.2444
0.6841
1.7964
2.2397
1.0267
1.0002
1.0002
1.0001
1.0000
24.2000
4.1281
3.8514
3.5319
3.3421
3.2069
2.8367
2.6440
2.4998
2.3577
2.1830
1.9288
1.4982
0.5619
0.2466
0.0003
0.0000
0.0000
0.0000
0.0000
s
2.16E+02
6.84E-01
9.23E+01
1.88E+02
2.45E+02
2.81E+02
3.40E+02
3.53E+02
3.80E+02
4.37E+02
5.27E+02
6.37E+02
6.91E+02
2.71E+02
-2.16E+00
7.04E-02
-2.70E-04
-5.00E-05
-2.96E-02
3.00E-05
s/ s
8.80E+01
-1.64E+00
-1.73E+02
-2.99E+02
-3.39E+02
-3.41E+02
-2.13E+02
-7.91E+01
4.58E+01
2.02E+02
4.43E+02
8.29E+02
1.34E+03
8.68E+02
-5.70E+00
-7.17E-01
1.00E-05
-1.10E-04
-5.65E-02
-4.00E-05
0.9258
0.3849
0.4709
0.5320
0.5858
0.6358
0.8468
0.9758
0.9928
0.9081
0.7658
0.6089
0.4591
0.2976
-0.3549
0.0977
-0.9993
-0.4138
-0.4641
0.6000
Trayectorias de minimizacin
gradiente conjugado
gradiente directo
x2
-1
x1
0.3779
-0.9229
-0.8822
-0.8467
-0.8104
-0.7719
-0.5319
-0.2187
0.1196
0.4188
0.6431
0.7932
0.8884
0.9547
-0.9349
-0.9952
0.0370
-0.9104
-0.8858
-0.8000
57
1
f ( x ) = f ( x 0 ) + T f ( x 0 ) x + x T H x
2
(3.5.1)
f ( x ) = f ( x 0 ) + H x = 0
(3.5.2)
s k +1 = H 1 ( x k ) f ( x k )
(3.5.3)
58
3.5 Tcnicas indirectas de segundo orden
En algunos problemas de optimizacin, existe la posibilidad de evaluar informacin
diferencial de primer y segundo orden para la funcin objetivo. Si se considera una
aproximacin cuadrtica a una funcin, tendremos:
1
f ( x ) = f ( x 0 ) + x T f ( x 0 ) + x T H ( x 0 ) x
2
(3.5.1)
f ( x ) = f ( x 0 ) + H x = 0
(3.5.2)
(3.5.3)
Ejemplo:
considere la cnica
f ( x1 , x2 ) = 6 x12 x1 x2 + 8 x22 3
en el punto xT0 = 1 1 . Determine el mnimo global del sistema.
12 x1 x2 11
=
f ( x 0 ) =
x1 + 16 x2 15
12 1 1 = 11.76
H (x) =
;
1 16 2 = 16.24
luego:
12 1 x1 11
1 16 x = 15
2
como solucin del sistema, se obtiene:
1
1
0
x = = x x0 = x x =
1
1
0
como la Hessiana es estrictamente definida positiva en todo , el mnimo es absoluto.
Notemos que el vector x es una direccin de minimizacin, a partir de un punto inicial.
59
Este simple problema, nos permite advertir todas las caractersticas de un mtodo de
segundo orden:
x = x0 + qs x = s
mtodo
cuadrtico
H 1f ( x0 ) (q = 1)
(3.5.4)
este mtodo no solo entrega la mejor de todas las posibles direcciones, sino que
tambin establece cunto debe avanzarse por esa direccin. En este sentido es posible,
en principio, eliminar las minimizaciones unidimensionales en una direccin.
Tratamiento de funciones no cuadrticas
(3.5.5)
0 +qs
f (x
+q t
s
f(x)
=f(
x)
f(q)
f(
x)
+1/
2
q 2s t
H(x
)
60
0.5
1.0
1.5
en todo caso, cabe mencionar que al disponer de informacin del gradiente, y al verificarse
que la funcin objetivo es continua; hay una gran probabilidad de que un mtodo de
segundo orden pueda adecuarse a las dificultades del problema, y constituirse en la mejor
alternativa de optimizacin.
Evitado de regiones indefinidas de la superficie
61
s k = ( H ( x k ) + I ) f ( x k )
1
(3.5.6)
donde es una constante positiva y no nula cada vez que la Hessiana es indefinida. La
forma de evitar la combinacin de valores propios, es elegir
= m x( k ,0) + 1
(3.5.7)
k =1,n
cuando al menos un valor propio es negativo, deja de ser no nulo. Ahora bien, si el valor
propio es demasiado negativo, entonces:
s k = ( I ) f ( x k ) = f ( x k )
1
(3.5.8)
es decir, el mtodo tiende a lograr una convergencia escalonada del mtodo del gradiente.
An as, esta metodologa logra que el mtodo pueda avanzar hacia mnimos en regiones
indefinidas, esperando una mejor definicin de la Hessiana en el avance del problema.
Ejemplo:
2
0
62.0
200 ( x2 x1 )
50 120
2 + 1200 x12 400 x2 400 x1
(
)
H
x
=
H (x ) =
0
120 200
200
400 x1
de acuerdo con la frmula direccional de segundo orden, podramos encontrar la primera
direccin resolviendo:
11475
38.6
50 120
.
10 4
H0 s0 = f ( x 0 )
s =
s0 =
0.3169
120 200 0 62.0
0.2885
x 1 = x 0 + s0 =
0.0833
siguiendo este mismo esquema en las siguientes etapas, se obtendr:
62
it
x1
x2
0
1
2
3
4
0.3000
0.2885
0.9817
0.9819
0.9999
0.4000
0.0831
0.4832
0.9641
0.9999
sT
-0.0115
0.6932
0.0002
0.0181
0.0001
f (x)
-0.3169
0.4001
0.4809
0.0355
0.0001
10.1000
0.5062
23.0917
0.0003
0.0000
49.28 120
H$ k = Hk + m x{ k ,0} + 1 H$ 0 =
120 299.28
los valores propios asociados a esta nueva matriz sern positivos. En el mtodo de
Marquardt, la generatriz de direcciones es equivalente a la de Newton, pero con una
Hessiana forzada convexa:
49.28 120
38.6
11.8
=
=
H0 s0 = f ( x 0 )
s
s
4.52
0
120 299.28 0 62.0
esta direccin de partida debe ser tratada con una minimizacin direccional, pues no
corresponde a una direccin original del Newton. Consideramos entonces una
minimizacin de la funcin en la parametrizacin:
0.760621
x 1 = x 0 + qs0 x 1 =
0.576441
avanzando con el algoritmo, se obtiene:
it
x1
x2
0
1
2
3
4
0.3000
0.7606
0.9291
0.9397
0.9987
0.4000
0.5764
0.8349
0.8830
0.9939
sT
11.8000
0.1685
0.0106
0.0589
0.0008
4.5200
0.2584
0.0481
0.1109
0.0050
f (x)
248.30
0.85
2.96
0.45
0.68
-98.28
664.82
901.10
908.07
1000.58
10.1000
0.0577
0.0856
0.0036
0.0012
63
Comparando las dos tablas, vemos que el mtodo de Marquardt no reduce las
iteraciones, pero si estabiliza la convergencia del mtodo, situacin deseable en problemas
mal condicionados, con la finalidad de evitar oscilaciones. Las iteraciones 1 y siguientes
corresponden a regiones bien definidas de la Hessiana. El cambio observado en los valores
propios nos da adems una medida de la calidad de la aproximacin cuadrtica. Claramente
el mtodo logra grandes progresos cuando estos valores no cambian mucho, lo que indica
que la aproximacin cuadrtica es buena.
Evitado de grandes diferencias en mnimos por aproximacin cuadrtica y proyeccin
funcional
(3.5.9)
(3.5.10)
f ( x ) = f ( x k + sk )
pt
T f ( x k ) sk
b
=
=
2a
2 f ( x k + sk ) f ( x k ) T f ( x k ) sk
(3.5.11)
este procedimiento puede repetirse hasta alcanzar una precisin deseable en el mnimo
direccional. Obviamente a travs de (3.5.11), q ser distinto al valor unitario si la funcin
no es exactamente cuadrtica. Esta ltima tambin puede utilizarse para decidir si el paso
de Newton es adecuado (q pt 1), pues su construccin es sencilla y depende de
informacin secuencial generada en el proceso de optimizacin.
64
Captulo 4
Programacin Lineal (LP)
Un nmero importante de problemas de optimizacin conduce a funciones objetivo
y restricciones lineales. A modo de ejemplo:
etc.
Crudo #1
Gasolina
US$36/bbl
Kerosene
US$24/bbl
Fuel Oil
US$21/bbl
Residuos
US$10/bbl
US$24/bbl
Refinera
Crudo #2
US$15/bbl
por otro lado, se dispone del siguiente cuadro representativo de los rendimientos para cada
crudo, la limitaciones operativas, y los costos de produccin:
Tabla de datos para el problema
Gasolina
Kerosene
Fuel Oil
Residuos
Costo de procesamiento
(US$/bbl)
capacidad de
produccin (bbl/da)
24000
2000
6000
1.00
x1 :
x2 :
x3 :
x4 :
x5 :
x6 :
bbl/da de Crudo #1
bbl/da de Crudo #2
bbl/da de Gasolina.
bbl/da de Kerosene.
bbl/da de Fuel Oil.
bbl/da de residuos.
costo
costo
M xf ( x ) = M xUtilidad = ventas
materia prima operativo
donde:
ventas = 36 x 3 + 24 x 4 + 21x5 + 10 x 6
costo
= 24 x1 + 15x 2
materia prima
costo
= 0.5x1 + x 2
operativo
x3 24000
x4 2000
x5 6000
por otro lado, puesto que cada variable representa fsicamente a un flujo, estos deben estar
restringidos a ser positivos, es decir,
xi 0 i = 1,6
si adems hubieran restricciones en cuanto a la disponibilidad de materias primas, tambin
sera necesario incluirlas como restricciones.
Siguiendo este problema, vemos que un problema (LP) tiene una forma general:
r
Mn f (x) = ci xi = c x
T
r: nmero de variables
i =1
sujeto a:
r
x = b j Ax = b
ji i
i =1
r
a'
i =1
ki
j = 1,m
m: nmero de restricciones de igualdad.
k = 1,p
p: nmero de restricciones de desigualdad
siempre posible y sencillo, pero no lo es para funciones generales no lineales, como por
ejemplo:
Mn: f ( x) = x 1 + x 2
Sa:
0 = x 1 exp( x 2 ) 4 x 2
donde x2 no puede despejarse en trminos de x1 de la restriccin de igualdad.
En el caso que venimos siguiendo de la refinera, es posible reducir el problema a 2
variables. Anlogamente, es posible convertir un problema de maximizacin en uno
equivalente de minimizacin siguiendo la transformacin:
M x U( x) Mn f ( x) = U( x)
al reemplazar las restricciones de igualdad en la funcin objetivo y en las restricciones de
desigualdad, se obtiene:
Mx U( x) Mn f ( x) = U( x) = 8.1x1 10.8x2
restringido a:
A. Produccin mxima de gasolina:
0.80x1 + 0. 44 x2 24000
B. Produccin mxima de Kerosene
Mn f ( x) = 8.1x1 10.8x2
por tanto:
.
81
f ( x) =
10.8
0 0
H ( x) =
0 0
Figura #1
Curvas de nivel de una funcin objetivo lineal
6e+4
4e+4
f=
f=
2e+4
f=
f=
-2
00
f(x)
00
0
00
00
-1
00
f=
0e+0
-3
00
0
0.0
10
00
00
-2e+4
-2e+4
0e+0
2e+4
4e+4
6e+4
4e+4
(A)
(B)
2e+4
dominio factible
(C)
0e+0
-2e+4
-2e+4
0e+0
2e+4
4e+4
6e+4
Estos problemas aparecen cuando las restricciones son insuficientes para producir el
acotado de la solucin dentro de un dominio factible, por ejemplo:
Mn:
f ( x) = x1 x2
Sujeto a: 3x1 x2 0 (A)
x2 3 (B)
x1 , x2 0
Figura #3
Problema de mltiple solucin
Figura #4
Problema sin solucin acotada
(B)
5
(A)
x2
x2
f decreciente
3
(B)
f creciente
2
(A)
0
0
x1
x1
Restricciones incompatibles.
Figura #5
Problema con restricciones incompatibles
x1
x2
.....
Las dos ltimas categoras sealadas aqu, corresponden a problemas LP mal definidos.
Cabe indicar que todo problema LP correctamente definido conduce a dominios factibles
de tipo convexo, y a superficies definidas (no estrictamente cncavas o convexas, sino ms
bien, cncavas y convexas).
4.2 Determinacin de restricciones de carcter lineal
El objetivo de esta seccin es facilitar el planteamiento de restricciones de carcter
lineal, en problemas productivos relacionados con la Ingeniera Qumica. Cada vez que se
plantea un problema de optimizacin han de tenerse en cuenta:
que hay limitaciones productivas que se alcanzan por lmites fsicos de operacin de los
equipos, por la capacidad de almacenamiento, o bien, por condiciones restrictivas del
mercado.
existen restricciones de seguridad u operabilidad, por ejemplo, hay mezclas que son
explosivas o contaminantes en determinados rangos de composicin, los materiales
sufren fatigas trmicas de acuerdo a su calidad. De la misma forma, la resistencia fsica
de un equipo puede estar limitada a ciertos rangos especficos de presin.
los balances de materia y energa, en general, no son lineales, pero pueden ser
considerados lineales dentro de ciertos rangos, donde es posible plantear una
proximacin afn del problema. Generalmente, el balance de materia puede escribirse
en trminos de rendimiento, que da origen a expresiones lineales.
P = xi Pisat
v
i =1
f ( x ) = ci x i
Mn:
i =1
Sujeto a: a ji xi b j 0 j = 1, p
i =1
xi 0 i = 1, r
r
(4.1)
en esta ltima ecuacin, todos los b j deben ser positivos. El primer paso consiste en
introducir tantas variables de holgura positivas como restricciones haya (p), observando lo
siguiente:
Caso 1
i =1
i =1
a jixi b j a jixi sj = b j
(4.2)
i =1
i =1
a jixi b j a jixi + sj = b j
(4.3)
f ( x) = x1 + x2
2 x1 x2 2
x1 + 3x2 2
x1 x2 4
x1 , x2 0
En el ejemplo, se obtiene:
Mn:
f ( x) = x1 + x2
Sujeto a: 2 x1 + x2 2 (A)
x1 3x2 2 (B)
x1 + x2 4 (C)
x1 , x2 0
Problema original
f ( x ) = x1 + x2
2 x1 + x2 + x3 = 2 (A)
x1 3x2 + x4 = 2 (B)
x1 + x2 + x5 = 4 (C)
x1 , x2 , x3 , x4 , x5 0
Problema aumentado
relacionadas por 3 ecuaciones (el sistema lineal A, B, C), dando lugar a un problema de dos
dimensiones, equivalente al original. Notar que este sistema de 3 ecuaciones en 5 variables,
puede resolverse si se especifican dos variables positivas.
Etapa 2: Encontrar una solucin que se encuentre en uno de los vrtices del
dominio factible.
ntese que las variables de holgura (x3, x4, x5) tambin son positivas y no nulas por tanto la
solucin bsica y factible no se encuentra en ninguna de las restricciones de igualdad (las
variables de holgura son no nulas). Ahora debemos avanzar por los vrtices del dominio
factible, en busca del ptimo.
11
Figura #6
Funcin objetivo a minimizar y su dominio
factible
6
(A)
x2
f decreciente
(C)
(B)
0
0
x1
+ x3
+ x4
+ x5
x2
=2
=2
=4
=0
(A )
( B)
( C)
(*)
12
bj
mn 0 l: variable transformada en no b sica en .a (x 1 )
a jl
por este criterio se busca la restriccin ms desfavorable para el incremento de x1.
Analizando las correspondientes, se concluye:
( A ) : 2 / 2 = 1
( B) : 2 / 1 = 2
( C) : 4 / 1 = 4
la menor positiva corresponde a la restriccin (B). Recordando que x2 = 0, la variable
activa con crecimiento de x1 en (B) es x4, y x1 puede crecer con x2 = 0 hasta el valor 2, en el
que x4 = 0. De esta forma, las nuevas variables no bsicas sern x2 = x4 = 0. Como la
variable de holgura de (B) es nula, buscamos una solucin en la restriccin
correspondiente.
Luego, el criterio de bsqueda es:
a. Escribir la funcin objetivo despejando el cero como sigue
f ( x ) ci x i = 0
i
13
+ x3
+ x4
+ x5
x2
=2
=2
=4
=0
(A )
( B)
( C)
(*)
podemos escribir cada una de las variables bsicas en trminos de variables no bsicas. De
la restriccin ms desfavorable se deduce:
( B) : x1 = 2 + 3x2 x4
puesto que x1 deja de ser no bsica, se reemplaza en el resto de las restricciones:
(A ): 2( 2 + 3x 2 x 4 ) + x 2 + x 3 = 2 x 3 5x 2 + 2 x 4 = 6
x 1 3x 2 + x 4 = 2
( B):
(C):
( 2 + 3x 2 x 4 ) + x 2 + x 5 = 4 x 5 + 4x 2 x 4 = 2
f + ( 2 + 3x 2 x 4 ) x 2 = 0 f + 2 x 2 x 4 = 2
notar que dado que las variables bsicas son x2 = x4 = 0, hemos logrado que la funcin
objetivo adquiera valor -2. Mirando la lnea de la funcin objetivo, convendra incorporar
x2 como una nueva variable bsica, dejando a x4 como no bsica e incorporando a x5 como
la nueva variable no bsica. Ntese tambin que lo nico que hemos hecho aqu es eliminar
las variables bsicas en trminos de variables no bsicas. El mismo procedimiento puede
hacerse en utilizando transformaciones matrizales elementales, lo que introduce la
representacin tabular del LP:
sistema sobredeterminado original
2 x 1 + x 2
x 1 3x 2
x1 + x 2
f ( x) + x 1
14
+ x3
+ x4
+ x5
x2
=2
=2
=4
=0
(A )
( B)
( C)
(*)
x3
x4
x5
x1
x2
x3
x4
x5
-2
[1]
1
1
1
-3
1
-1
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
1
2
2
4
0
fila pivote
columna
pivote
x3
x1
x5
x1
x2
x3
x4
x5
0
1
0
0
-5
-3
4
2
1
0
0
0
2
1
-1
-1
0
0
1
0
0
0
0
1
6
2
2
-2
x3
x1
x5
x1
x2
x3
x4
x5
0
1
0
0
-5
-3
[4]
2
1
0
0
0
2
1
-1
-1
0
0
1
0
0
0
0
1
6
2
2
-2
15
indicacin: siempre el punto pivote debe quedar como [1] despus de las transformaciones
elementales:
x3
x1
x2
x1
x2
x3
x4
x5
0
1
0
0
0
0
1
0
1
0
0
0
0.75
0.25
-0.25
-0.5
1.25
0.75
0.25
-0.5
0
0
0
1
8.5
3.5
0.5
-3
Notar que en la lnea de la funcin objetivo los dos coeficientes alcanzan valores
negativos, esto indica que no es posible obtener mejoramiento en la reduccin de la funcin
objetivo, por lo que tenemos un mnimo. Quedan como variables no bsicas x4 = x5 = 0 .
Como x4 es una variable de holgura asociada a la restriccin (B) y x5 es una variable de
holgura asociada a la restriccin (C), la solucin est en la interseccin de las restricciones
(B) y (C), tal como se aprecia en la figura. Adems, en el punto solucin:
x3 = 8.5
x1 = 3.5
x2 = 0.5
en otras palabras, la restriccin (A) representada por la variable de holgura x3 se cumple,
pero la solucin est en el dominio factible, y no activando la restriccin correspondiente..
4.4 Forma cannica del problema de programacin lineal.
Segn hemos visto, todos los problemas de programacin lineal, una vez incluidas
las variables de holgura para la aplicacin del mtodo Simplex, tienen la forma:
Mn:
Sujeto a:
f ( x ) = c1x1 + c2 x2 +.... + cn x n
a11x1 + a12 x2 +.... + a1n x n = b1
a 21x1 + a 22 x2 +.... + a 2 n x n = b2
M
a m1x1 + a m2 x2 +.... + a mn x n = b m
xi 0 ; b j 0 (i = 1, n ; j = 1, m)
(4.4)
Mn:
Sujeto a:
f =c x
Ax = b
T
x0; b0
16
(4.5)
la dimensin del problema de optimizacin es n-m, que tambin es indicativa del nmero
de variables independientes o no bsicas que deben especificarse para resolver el sistema
de m restricciones de igualdad. Estas variables no bsicas toman el valor nulo para generar
culaquier solucin bsica del LP, sometidas a la condicin de que el resto de las variables
sean positivas. El nmero de soluciones bsicas (no necesariamente factibles) est dado
por:
n
n!
= =
m m!( n m) !
(4.6)
f = x1 + 2 x2
Sujeto a: 3x1 + 4 x2 5
x1 + x2 4
Siguiendo los pasos del Simplex, es decir, la introduccin de variables de holgura,
obtendremos:
Mn:
f = x1 + 2 x2
Sujeto a: 3x1 + 4 x2 x3 = 5 (A)
x1 + x2 + x4 = 4 (B)
xi 0
notamos que la seleccin de x1 y x2 como variables no bsicas (es decir, ambas nulas),
viola en la restriccin (A) la condicin positiva para x3. Esta situacin se debe a que la
solucin no bsica indicada no se encuentra en el dominio factible. En estos casos, es
necesario agregar m nuevas variables de holgura, generando un procedimiento denominado
Fase I - Fase II. En trminos simples, en la Fase I se encuentra una solucin factible para el
problema en trminos de la positividad de sus variables bsicas, y en una segunda etapa, se
parte de la solucin factible para obtener soluciones factibles minimizantes. El algoritmo es
el siguiente:
17
+ x n +1
+ xn + 2
O
+ xn + m
= b1
= b2
M
= bm
w = xn +1 + xn + 2 +.... + xn+1
escribiendo estas variables no bsicas en trminos de variables bsicas, se obtiene:
m
m
18
puesto que las variables bsicas x1 = x2 = 0 conducen a una solucin bsica, pero no
factible, el problema vuelve a aumentarse:
Mn:
f = x1 + 2 x2
Sujeto a: 3x1 + 4 x2 x3 + x5 = 5 (A)
x1 + x2 + x4 + x6 = 4 (B)
xi 0
en la Fase 1, se minimiza la funcin w:
w + 4 x1 + 5x2 x3 + x4 = 9
para la que tenemos la siguiente tabla inicial para la Fase I
x1
x2
x3
x4
x5
x6
3
1
4
4
1
5
-1
0
-1
0
1
1
1
0
0
0
1
0
x2
x3
x4
x5
x6
1
0
0
-0.25
0.25
0.25
0
1
1
0.25
-0.25
-1.25
0
1
0
iteracin 1
x1
0.75
0.25
0.25
w
0
0
1
b
5
4
9
w
0
0
1
b
1.25
2.75
2.75
notar que x4 es variable bsica, por tanto, pese a presentar el mayor coeficiente para w, no
puede ser eliminada como variable no bsica.!
iteracin 2
x1
x2
x3
x4
x5
x6
1
1
0
1
0
0
0
1
0
1
4
0
0
-1
-1
1
4
-1
w
0
0
1
b
4
11
0
19
Mn:
f = x1 + 2 x2
Sujeto a: 3x1 + 4 x2 x3 = 5 (A)
x1 + x2 + x4 = 4 (B)
xi 0
para las variables no bsicas detectadas, se obtiene: x2 = 4 ; x3 = 11. Ambas variables
bsicas son positivas, por lo que tenemos una solucin factible. En la Fase II se minimiza f.
f = x1 + 2( 4 x1 x 4 ) f + x1 + 2 x 4 = 8
x1
x2
x3
x4
1
1
1
1
0
0
0
1
0
1
4
2
f
0
0
1
b
4
11
8
f
0
0
1
b
1.25
2.75
2.50
b
1.67
2.33
1.67
Iteracin 1:
x1
x2
x3
x4
0.75
0.25
1
1
0
0
-0.25
0.25
-0.5
0
1
0
x1
x2
x3
x4
1
0
1.33
-0.33
-0.33
0.33
0
1
f
0
0
-0.67
-0.33
Iteracin 2:
x1
x4
x1 = 1. 67 ; x2 = 0 ; x3 = 0 ; x4 = 2. 33 ; f = 1. 67
20
x2
(B)
1
(A)
f(x)
0
0
x1
21
x1 = x3 x4
x3 0 ; x 4 0
el problema aumentado ser:
Mn:
Sujeto a:
f ( x ) = x3 x 4 + 4 x2
x3 x4 + x2 + x5 = 3 (A)
x3 + x4 + x2 + x6 = 1 (B)
x2 , x3 , x4 , x5 , x6 0
tenemos un total de 5 variables relacionadas por dos ecuaciones, por tanto, una solucin
bsica factible se obtiene al seleccionar 3 variables no bsicas. Por ejemplo:
x2 = x3 = x4 = 0
x2
x3
x4
x5
x6
1
1
-4
1
-1
-1
-1
1
1
1
0
0
0
1
0
0
0
1
3
1
0
Iteracin 1
x5
x4
luego:
x2
x3
x4
x5
x6
2
1
-5
0
-1
0
0
1
0
1
0
0
1
1
-1
0
0
1
4
1
-1
x1 = x3 x4 = 0 1 = 1
x2 = 0
4.7 Sensitividad de la solucin del problema de Programacin lineal
Una de las grandes ventajas del problema de programacin lineal, es que la solucin
ptima puede ser estudiada con gran facilidad, en la tabla de solucin, frente a pequeas
perturbaciones en las restricciones. A modo de ejemplo, consideremos la tabla solucin
para el problema de la refinera:
22
Mn:
f ( x) = 8.1x1 10.8x2
Sujeto a: 0.80x1 + 0. 44 x2 24000 Produccin de Gasolina
0. 05x1 + 0.10x2 2000 Produccin de Kerosene
0.10x1 + 0. 36x2 6000 Produccin de FuelOil
x1 , x2 > 0
cuyo problema aumentado ser:
Mn:
f ( x) = 8.1x1 10.8x2
Sujeto a: 0.80x1 + 0. 44 x2 + x3 = 24000 Produccin de Gasolina
0. 05x1 + 0.10x2 + x4 = 2000 Produccin de Kerosene
0.10x1 + 0. 36x2 + x5 = 6000 Produccin de FuelOil
x0
la tabla de iteraciones convergente para este problema es:
x5
x1
x2
x1
x2
x3
x4
x5
0
1
0
0
0
1
0.14
1.72
-0.86
-4.21
-7.59
13.79
-4.66
-87.52
1
0
0
f
0
0
0
b
896.55
26206.90
6896.55
-286758.5
f
= 4. 66
x3
f
= 87. 52
x4
de donde se deduce que la disminucin unitaria de x3 (aumento de la produccin de
gasolina), disminuye el mnimo en -4.66, y la diminucin unitaria de x4 (aumento de la
23
24