Académique Documents
Professionnel Documents
Culture Documents
CESAREO
RAIMUNDEZ
1. n Viable
Regio
Region viable conexa es el conjunto de puntos que obedecen a todas las restric-
ciones simultaneamente. La region viable en los problemas regulares se describe
generalmente en la forma:
x Rn
(x) = cj (x) 0 j D
cj (x) = 0 j I
10
-5
-10
-10 -5 0 5 10
donde g(x, ) = {gi (x) + i }. Calculando los puntos estacionarios de esta aproxi-
macion cuadratica de la Lagrangiana, llegamos a:
2
f + T 2 g 0 g x xk
T
f + T g 2T g(x, ) k +
0 2 2 k = 0
T
g 2 0 k
k
finalmente obteniendose el proceso iterativo
2 1
f + T 2 g 0 g
x x T
= 0 2 2 f + T g 2T g(x, ) k
T
k+1 k g 2 0 k
3. Condiciones de Kuhn-Tucker
Las condiciones de Kuhn-Tucker son condiciones necesarias para caracterizar un
punto estacionario en un problema con restricciones, como punto de mnimo local.
Se enuncian como sigue: Dado un punto estacionario x para que sea un mnimo
local es necesario que se verifique
P
f (x ) + i i gi (x ) = 0
i gi (x ) = 0
gi (x ) 0
i 0
4
CESAREO
RAIMUNDEZ
4. Condiciones de Karush-Kuhn-Tucker
Las condiciones de Karush-Kuhn-Tucker (KKT) son necesarias para que un pun-
to sea optimo local. Es una generalization del metodo de los multiplicadores de
Lagrange, incorporando las restricciones de desigualdad. Sea el problema de opti-
mizacion.
mn f (x) con condiciones gi (x) 0 hj (x) = 0, {i = 1, . . . , m; j = 1, . . . , l}
xRn
5. T n
ecnicas de Transformacio
Si las restricciones gi (X) son funciones explcitas de las variables de decision y
son sencillas puede que sea posible efectuar una transformacion en las variables
independientes de forma que las restricciones sean automaticamente satisfechas,
transformando as un problema con restricciones de desigualdad en uno sin restric-
ciones. As por ejemplo,
OPTIMIZACION CON RESTRICCIONES 5
10
0
10 5 0 5 10
10
g1 (x)
f (x)
g2 (x)
6. n Lineal
Programacio
Hay un captulo muy importante en la optimizacion que trata de los problemas
lineales en la funcion objetivo y lineales tambien en las restricciones. El paradigma
tpico de programacion lineal puede enunciarse como:
n
X
mnx f (x) = c1 x1 + c2 x2 + + cn xn = ci xi
i=1
g1 (x) = a11 x1 + a12 x2 + + a1n xn b1
g2 (x) = a21 x1 + a22 x2 + + a2n xn b2
= .. .. .. .. ..
. . . . .
gm (x) = am1 x1 + am2 x2 + + amn xn bm
modelos con esta estructura se encuentran en diversas areas del conocimiento (in-
geniera, economa, biologa, etc). En este tipo de problemas la solucion siempre se
encuentra en la frontera ya que el gradiente de la funcion objetivo es constante.
f (x) = c1 c2 cn
Cuando 6= la solucion se localiza necesariamente sobre la frontera de . En los
casos mas sencillos (no degenerados) se sit
ua en uno de los vertices del la superficie
poliedrica inmersa en Rn . Estos vertices son los puntos viables (estan contenidos
en) los
m m!
=
n n!(m n)!
OPTIMIZACION CON RESTRICCIONES 7
0 2 4 6 8
f + 1 g1 + 2 g2 = 0
o sea 60 100 + 1 4 2 + 2 2 4 = 0
1 g1 (x ) + 2 g2 (x ) = 0
8
CESAREO
RAIMUNDEZ
x = linprog(c,A,b)
c = -[60 100];
A = [4 2; 2 4; 2 6; -1 0; 0 -1];
b = [32 22 30 0 0];
y la solucion
[x,valor,flag] = linprog(c,A,b)
7. T
ecnicas de Barrera
Las tecnicas de barrera o de penalidad transforman el problema de optimizacion
original en una formulacion alternativa de forma que la solucion al problema con
restricciones se obtiene a traves de la solucion de una secuencia convergente de
problemas de mnimo sin restricciones. As consideremos el problema basico como
m
\
mn F (X) con X (X) = gi (X) 0
i=1
OPTIMIZACION CON RESTRICCIONES 9
25
20
15
10
1 2 3 4
25
20
15
10
1 2 3 4 5
8. n Lineal Secuencial
Programacio
Dado el problema general
gi (x) 0
mn f (x), =
xRn hj (x) = 0
en que las funciones f, gi , hj son suficientemente regulares, se puede plantear el
problema lineal aproximado en cada punto, y progresar a traves de estas aproxi-
maciones, al punto optimo. Para esto, en el punto actual xk se linealiza el modelo
como sigue:
gi (xk ) + gi (xk )(x xk ) 0
mn f (xk ) + f (xk )(x xk ), =
xRn hj (xk ) + hj (xk )(x xk ) = 0
que a
un puede arreglarse en una forma mas conveniente
mn ck x con las restricciones Ak x + bk 0
x
OPTIMIZACION CON RESTRICCIONES 11
donde
ck = 24.6615(xk2 , xk1 )T
0.31631 0.31631
k 2 k k k 2
(x 1 ) x 2 x1 (x2 )
0.0390678(xk1 )2 xk2 0.0130226(xk1 )3
Ak =
0.2 0
0.01 0
0 2
0 0.2
0.95493
1
xk1 xk2
1 0.390678(xk1 )3 xk2
bk =
1
1
1
1
9. n a la Programacio
Introduccio n Cuadra
tica
El problema tpico de programacion cuadratica puede presentarse como:
1 Ax b
mn f (x) = cT x + xT Qx, =
x 2 x 0
Formando la Lagrangiana para el problema tendremos
1
L(x, ) = cT x + xT Qx + T (Ax b)
2
Las condiciones de KKT para el punto de mnimo son:
cT + xT Q + T A 0
Ax b 0
T (Ax b) = 0
x 0
0
Este problema puede ser propuesto como un modelo de programacion lineal, incor-
porando las variables artificiales y, v como sigue:
T T
Qx + A y + c
= 0
Ax + v = b
x 0
0
mn f (x) = y + v, =
x
y 0
v 0
T
x = 0
v = 0
10. n Cuadra
Programacio tica Secuencial
Cualquier problema del tipo
gi (x) 0
mn f (x), =
xRn hj (x) = 0
lo suficientemente regular, puede aproximarse por una expansion de series de Taylor
en una vecindad del punto actual xk , y un problema de programacion cuadratica
equivalente
1
mn fk+1 (x) = f (xk ) + fk (x xk ) + (x xk )T Hk (x xx )
xRn 2
gi (xk ) + gik (x xk ) 0
=
hj (xk ) + hkj (x xk ) = 0
11. n de Matlab
Toolbox de Optimizacio
Matlab nos ofrece un toolbox con metodos para determinacion de mnimos de
funciones con o sin restricciones. Estos metodos pueden ser apoyados en mayor o
menor grado por la informacion sobre la regularidad de las funciones empleadas
para describir el modelo. As, se puede aumentar la eficacia de un metodo, incor-
porando las informaciones de las derivadas (gradiente y hessiana). El ejemplo 4.3
puede resolverse utilizando la funcion fmincon. Esta funcion puede utilizar mas
o menos informacion en la obtencion del resultado final. Las restricciones pueden
darse agrupadas en las clases:
Restricciones lineales (afines) de desigualdad: dadas en la forma A1 x b1 .
Restricciones lineales (afines) de igualdad: dadas en la forma A2 x = b2 .
Restricciones nolineales de desigualdad: dadas en la forma {ci (x) 0}.
Restricciones nolineales de igualdad: dadas en la forma {ej (x) = 0}.
Lmites inferiores y superiores para las variables de decision: dadas en la
forma lb x ub .
La calidad del procedimiento puede aumentarse dandose la informacion de los gra-
dientes de la funcion objetivo y de las restricciones nolineales. En el caso del ejemplo
que sigue, tenemos que: A1 = , b1 = , A2 = , b2 = , lb = , ub = . La inten-
cion de utilizar la informacion de los gradientes, debe informarse en la declaracion
de options.
%------------------------------------------------------
% Punto de partida
%------------------------------------------------------
X0 = 10*(rand(1,2)-0.5*ones(1,2));
options = optimset(LargeScale,off);
options = optimset(options,GradObj,on,GradConstr,on);
%------------------------------------------------------
% No hay restricciones del tipo A x <= b
% No hay restricciones del tipo Ae x = be
% No hay restricciones del tipo l
mite superior x <= ub
% No hay restricciones del tipo l
mite inferion lb <= x
%------------------------------------------------------
lb = [];
ub = [];
A = [];
OPTIMIZACION CON RESTRICCIONES 13
b = [];
Ae = [];
be = [];
[X,fval] = fmincon(@objfungrad,X0,A,b,Ae,be,lb,ub,@confungrad,options)
%------------------------------------------------------------
% Verifica el valor de las restricciones en el punto soluci
on
%------------------------------------------------------------
[c,ceq] = confungrad(X)
c = [g1, g2];
Dc = [Dg1, Dg2];
ceq = [];
Dceq = [];
Referencias
1. Singiresu S. Rao
- Engineering Optimization
- John Wyley & Sons, Inc ISBN 0-471-55034-5.
ETSII - Vigo
E-mail address: cesareo@uvigo.es