Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
DEFINICIONES Sea (P) el siguiente problema de programacin lineal: (P) Min cTx / Ax = b x u 0, donde c Rn, b Rm y A es una matriz de rango completo mxn con n>m. Sea la regin factible S = { x Rn, / Ax = b, x u 0 } y su interior relativo: S0 = { x Rn, / Ax = b, x >0 }
Sea (D) el problema dual asociado a (P): (D) Max bTw / ATw +z = c, z u 0, donde las variales z Rm son las variables de holgura Sea cualquier par (x,z) donde x S y (w,z) es una solucin factible para (D) para algn w Rm, se define el gap de dualidad (() como: (= cTx - bTw = xTz TEO: Un par de soluciones primal (x) y dual (z) factibles son ptimas sii cuando una de estas soluciones factibles tiene una holgura estrictamente positiva, el valor de la variable asociada en el dual es cero, o sea: xTz = 0 = (
AB
ANB cTNB-cTBA-1BANB
costo reducido= c- PTA
0
PT= cTB*A-1B
Forma tableau:
Clculo de costos reducidos Gap de dualidad Ubicacin de la inversa de la base y frmula recurrente Variables duales en el tableau Simplex, holguras duales como costos reducidos Soluciones primales y duales factibles Interpretacin dual
SIMPLEX REVISTO Sea el problema (P), con una matriz A de mxn, consideremos un paso genrico del simplex, sean:
B la base elegida en ese paso XB un vector bsico y PB la solucin dual cB el vector de costos asociado a la base
Algoritmo:
Calcular XB resolviendo: B.XB=b Calcular PB resolviendo PB .B= cB Calcular los costos reducidos c=cj- PTaj j. Si cj u 0 j fin Encontrar s / cs < 0 y seleccionar xS para entrar en la base Calcular AS resolviendo: B.AS=AS Si AS < 0 fin Pivoteo: encontrar r = br / ars= min{bi / ais, con ais >0. Borrar de la base B a r e incluir AS. Ir al comienzo
NOTAS: Normalmente todos los vectores , se obtienen a partir del correspondiente vector calculado en el paso anterior y actualizndolo. En el mtodo simplex revisto en lugar de calcular B-1 explcitamente, se calcula como el producto de una secuencia de matrices pivot. El inconveniente es que los errores se acumulan y se recomienda que cada un cierto nmero de iteraciones se calcule B-1 desde el tableau original. Para el clculo de B-1 desde el tableau original se puede usar la descomposicin LU o la factorizacin de Cholesky.
Ejemplo:
Sea el siguiente PL: Max x1+2x2 / -x1+2x2+x3 -x1+ x2+ x4 x1- 4x2+ x1,x2,x3,x4,x5u0
1. 2. 3. 4.
x5
=4 =1 =4
Resolver grficamente Sea {2,3,5} los ndices de la base inicial, encontrar la solucin de base inicial correspondiente. Calcular las ganancias marginales, mostrar que la solucin de base anterior no es ptima. Resolver por simplex revisto
x2
Funcin objetivo (max)
x1
SIMPLEX DUAL
Comienza con una base dual factible, pero primal infactible y recorre soluciones duales factibles adyacentes Criterio de optimalidad: cuando se encuentra una solucin primal y dual factible. Algoritmo: Mientras la solucin primal sea no factible:
Elegir i/ bi<0 Si aij u0 j=1..n, entonces problema no factible, fin. Eleccin de la columna s a entrar en la base: elegir s/ -(cs/ars)=mnimo{- cj/arj, j/ arj<0} Pivoteo como en el primal
fin mientras
PRIMITIVO- DUAL
DEF: Problema restringido asociado al primal, dada una solucin dual P : Min 1Ty / Ax+y=b, con xi=0 i P xu0, yu0 donde P= {i / PTAi=ci } = ndices de holguras duales nulas
NOTA: Este problema es similar al planteado para resolver la fase 1 del simplex (slo figuran las columnas de A cuya holgura dual sea nula)
TEO: (Optimalidad primal-dual) Sea P una solucin factible dual y (x,y=0) factible para el problema restringido asociado al primal, entonces (x, P) son soluciones ptimas para el primal y el dual.
Observaciones:
1- E u0 2- El algoritmo se detiene cuando encuentra la primera solucin bsica factible primal (y dual factible) o el primal es no factible. 3- Si w=0 entonces fin, se encontr solucin ptima. 4- Hay un nmero finito de combinaciones de variables para construir las posibles soluciones bsicas y el objetivo dual es creciente de una iteracin a otra, entonces, si no hay degeneracin, se alcanza el ptimo en un nmero finito de pasos. 5- Se elige E / haya la mxima cantidad posible de ceros en z1 6- Cmo cambia el conjunto P?: Si xj >0, c1j=0 y z1j=0 entonces salvo que la fase 1 la retire, la variable sigue estando en la base en la iteracin siguiente. 7- Uso del mtodo: es eficiente cuando una solucin dual factible inicial puede ser calculada fcilmente y cuando un algoritmo eficiente de fase 1 puede ser aplicado al problema restringido. Ejemplo: problema del transporte y flujos en redes.
Interpretacin geomtrica DEF: una solucin dual es no degenerada si las holguras duales tienen al menos n-m componentes no nulas Problema perturbado: sea b(I)= b+(I , I 2,... I m)T, el problema perturbado (PI) correspondiente a (P) es: (PI) Min cTx / Ax = b(I), x u 0, TEO 1: dado un vector b Rm existe un nmero positivo I1>0 tal que cuando 0< I < I1 el problema perturbado (PI) es primal no degenerado TEO 2: Si B es una base factible para (PI) cuando I es arbitrariamente pequeo, entonces B es una base factible para (P) DEF: orden lexicogrfico positivo( L> 0): un vector se dice lexico positivo si su primera componente no nula es positiva. TEO 3: B es una base factible para (PI) para I suficientemente pequeo sii (B-1.b B-1) L>0
Idea bsica: trabajar con (PI) en forma implcita (sin poner un valor explcito a I ) desde (P) de forma de asegurarnos que no habr degeneracin en (PI). Se elige el pivote para conservar el orden lexicogrfico positivo: en la eleccin del pivote se sustituye el mnimo por el lxico mnimo
1. 2.
Encontrar i / min ( b i / a is ) / a is " 0 , si el mnimo es nico, i entonces i es la fila pivote y fin, si no j=1. _ Si hay empate, encontrar i / alcanza el