Programacin Cnica
CAPTULO 3
PROGRAMACIN CNICA
La optimizacin matemtica ha sido uno de los campos de investigacin ms
trabajados en los ltimos tiempos. Esto ha dado lugar a grandes avances en poco
tiempo. En concreto se ha avanzado muchsimo en el rea de programacin convexa
desarrollndose algoritmos muy eficientes basados en el mtodo del punto interior para
conos convexos. Unido todo esto a la tremenda progresin de la capacidad de clculo de
los ordenadores, hace que hoy en da se puedan resolver problemas que hace unos aos
resultaban imposibles de abordar.
{
min cT x Ax = b, x , } (3.1)
- Octante positivo
- Cono de Lorentz o de segundo orden
- Cono positivo semidefinido
n
l n = x n / x1
x
i=2
2
i
(3.2)
Pgina 16 de 89
Evaluacin de Cotas Estrictas en Estado Lmite Captulo 3. Programacin Cnica
x1
x2 x3
{
max bT y AT y + s = c, s * ,} (3.3)
donde A, b y c son los mismos parmetros que definen la estructura del problema primal
(3.1). El problema (3.3) es tambin el comnmente llamado problema dual de (3.1),
donde * es el cono dual de , tambin convexo, cerrado y con un interior no vaco.
Pgina 17 de 89
Evaluacin de Cotas Estrictas en Estado Lmite Captulo 3. Programacin Cnica
4. Se asume que al menos uno de los dos problemas, primal o dual, es acotado y
estrictamente factible.
6. Debilidad complementaria: x T ( AT y c) = x T s = 0 .
Con los mtodos de punto interior [23] se encuentra una solucin ptima mientras
nos movemos en el interior del sistema factible, en contrapunto con la restriccin de la
bsqueda en los lmites o contornos. Para evitar que el algoritmo alcance el lmite o
contorno se introduce una funcin barrera a la funcin coste, de esta forma, la funcin
aumenta al infinito cuando alguna de las variables se aproxima al propio contorno. Con
todo esto, en la actualidad, el mtodo de punto interior para un primal-dual es el mtodo
elegido en la mayora de aplicaciones comerciales, gracias a su funcionamiento
excelente en usos a gran escala y, especialmente, con presencia de matrices grandes con
pocos elementos no nulos como es el caso que nos ocupa.
El mtodo del punto interior explota la dualidad del problema, de tal forma que la
bsqueda de direcciones de optimizacin se computan en los espacios factibles primal
y dual. El punto de salida son los problemas primal y dual siguientes a la optimizacin
de la funcin barrera, derivados del primal y el dual:
donde es un parmetro positivo y B , B * son las funciones barrera que evitan que x
y s salgan de sus respectivos conos de restriccin. Para cualquier >0, a partir de (3.4)
y (3.5) obtenemos una nica solucin ptima ( x * ( ) , y * ( ), s * ( ) ), la cual difiere de la
solucin de (3.1) y (3.3), ( x * , y * , s * ). A partir de estos resultados se trata de hacer
tender progresivamente a 0, de forma que cuando sta sea sensiblemente pequea
resulte insignificante en prcticamente todos los puntos, exceptuando aquellos que se
encuentran en el contorno. Cabe destacar, que a medida que decrece, los
minimizadores x( ) y s( ) describen dentro de sus correspondientes espacios
factibles, una trayectoria llamada camino central, el cual se inicia en el centro analtico
(que se corresponde con = ) y finaliza en los valores ptimos x * y s * .
Pgina 18 de 89
Evaluacin de Cotas Estrictas en Estado Lmite Captulo 3. Programacin Cnica
Es importante comentar que existen funciones barrera muy apropiadas para los
conos que estamos considerando. Concretamente cabe destacar un tipo de funciones
barrera que son continuas, tres veces diferenciables y estrictamente convexas,
consiguiendo con ellas resultados eficientes en la resolucin del problema, llamadas
funciones barrera self-concordant. Para cada uno de los conos que se han presentado
anteriormente tenemos una de las anteriores funciones barrera en forma logartmica. Es
una gran ventaja el hecho de que para un programa cnico, siendo el producto
cartesiano de distintos conos, la funcin barrera resultante ser justamente el sumatorio
de cada una de las funciones barrera para cada uno de los mencionados conos.
Ax ( ) = b
A y( ) + s( ) = c
T
(3.6)
x( ) + B ( s ( )) = 0
Ad xk = 0
AT d yk + d sk = 0
(3.7)
d k + k 2 B ( s k ) d k = x k k B ( s k )
x s
r
2
B ( s k ) = i ,k T i ,k
J ni s i , k (3.8)
i =1 ( s ) J ni s
r
4 2
2 B ( s k ) = i ,k T i ,k 2
J ni s i , k ( s i , k ) T J ni i , k T i ,k
J ni (3.9)
(( s ) J ni s )
i =1 ( s ) J ni s
Para finalizar, se considerarn dentro del proceso iterativo que nos ocupa, dos
actualizaciones. Estas sern concretamente las siguientes:
Pgina 19 de 89
Evaluacin de Cotas Estrictas en Estado Lmite Captulo 3. Programacin Cnica
1. Datos de entrada: datos del problema (A,b,c), una solucin factible inicial
z =(x ,y0,s0) y una tolerancia de optimizacin > 0 .
0 0
Dentro de este esquema expuesto, el paso ms costoso es sin lugar a dudas aquel
en que desarrollamos el mtodo de Newton en bsqueda de direcciones de avance. Para
resolver este punto generalmente se hace uso previamente de la ecuacin
complementaria de Schur para la obtencin de la direccin d yk :
M k d yk = Ar k (3.10)
Pgina 20 de 89
Evaluacin de Cotas Estrictas en Estado Lmite Captulo 3. Programacin Cnica
Pgina 21 de 89