La dualidad en la Programación Lineal Su utilidad en el Análisis Económico-Financiero MANUEL GÓMEZ DIAZ Universidad de Santiago de Compostela Departamento de Economía Financiera y Contabilidad El planteamiento de un problema típico de maximización en la Programación Lineal puede ser el siguiente: Maximizar: x1 s-a,, x+ +0 x<b Z=c1 x, •c2x2 + ...~cx sujeto a a~ x1 + a12x,~... ~a; ~ 2 —nn x,=O;x2=O x=O Si formamos las matrices: a a,~ a,, 1n xI a,n ~ - A . b= b,I -I — .1 0ní a, h~, (ni x ti) J (nix 1) o o 0= x o (nx 1) (nx 1) e,... e~j (1 xn) podemos expresar el problema así: Cuadenios de Estudios Empresariales. n~ 6, Servicio de Publicaciones 0CM. Madrid i996. 188 Manuel Gómez Díaz Máx. Z=CX AX=b X=O (Se dice forma abreviada, matricial o canónica) Para resolver un problema de PL. por el método Simplex, habremos de convertir previamente en igualdades todas las desigualdades (inecuaciones existentes) utilizando el conocido procedimiento de las variables de holgura: . 2+. aíxí+aaxz+ s-a x +x . . . .+tii2X a,¡xí+%x .. . +a~¡tnxn .* x,,,, . matricíalmente se expresa: [A fl siendo: 1 matriz identidad (¡u x u) matriz de las variables de holguía (ni x 1) En el caso en que las desigualdades tuviesen sentido inverso (=),la matriz de la izquierda sería: LA..-fl y para obtener una primera solución básica se uti- lizarían variables artificiales. NaTACiÓN MATR1CL4L DE JA SOLUCIÓN DE UN PROBLEMA LINEAL Supondremos que los m primeros vectores de la matriz A (columnas) for- man un programa base y la solución es óptima. 489 La dualidad en la Programación Lineal Hacemos las siguientes particiones en las matrices: al’ a,2 ... a,, ¡ a £12 21 a1 a2 C = [C,, i C~] = a,,, [c~e2 ... ... a a,,, a o,,, c,,,,~... e,,] según nuestro anterior supuesto, la solución óptima es: Z=CX=[C,, AX=b = [xl =c x +c x st C,jx [+1 [3 /V] x = EX,, + B/~ o np” ; y como X,, on,,n tenemos: z=c x 4,, EX1, = b JA DUALIDAD “A todo problema lineal, llamado primal, le corresponde otro que denominamos dual. Entre ambos existen una serie de relaciones y propiedades importantes”. programa primal (D1) programa dual 190 Manuel Gó,nez l),az Para un análisis sistemático de la dualidad dividiremos su estudio en cinco partes perfectamente diferenciadas: 1) PLANTEAMIENTO 2) RELACIONES ENTRE PRIMAL Y DUAL (Teoremas) 3) RESOLUCIÓN DEL DUAL 4) SIGNIFICACIÓN ECONÓMICA DEL DUAL. 5) PRINCIPALES APLICACIONES EN ECONOMíA PJANTEAMIENTO DEL PROGRAMA DUAL Podemos enunciar las siguientes relaciones entre un problema primal (P1) y su dual a) El dual tiene tantas restricciones como variables existen en el primal. b) El dual tiene tantas variables como restriccIones existen en el primal. e) Los coeficientes de la función objetivo del programa primal son los términos independientes (con su signo) de las restricciones del dual. d) Los términos independientes de las restricciones del programa primal (con su signo), son los coeficientes de la función objetivo del programa dual. e) La matriz de coeficientes de las restricciones del programa dual es igual a la traspuesta de la matriz de coeficientes de las restricciones del pri- mal. f) A un programa primal de maximización, le corresponde un dual de mini- mización y viceversa. g) El dual de un dual es su primal. h) El sentido de la desigualdad o la igualdad de las restricciones del dual es dependiente de la amplia casuística que puede haber en la presentación del primal. Lo mismo puede decirse del signo de las variables duales. A continuación abordaremos este problema y se extraerán las reglas de general aplicación para plantear correctamente el dual, sea cual fuere la presentación del primal; pero antes haremos un breve recordatorio matemático que creemos de interés. Maximizar Zequivale a minimizar -z y minimizar Zequivale a maximizar -Z. EJEMPLOS: 1) Máx. Z 3x, + 5x, + 6x, equivale a: Mín.-Z=-3x1-5x,-6x3 191 La dualidad en la Programación Lineal 2) Mm. Z = + 3x, + equivale a: Máx.-Z=-2x-3x.,-x3 Por otra parte: AX=b equivale a -AX=-b AX = fi equivale a -¡LV = -b AX= b equivale a: AX=b AX = b Definimos como estmctura canónica en la programación lineal y le llamamos problema primal (P1) a la siguiente: Máx. Z = CX lix = b X=O Existe otra estructura, asociada a la anterior, que llamamos problema dual (13,) y tiene la siguiente forma: Mm. G br y t Y=Cr A Y=O = Algunos autores denominan a las anteriores formas ‘problemas duales simétricos”, en contraposición con los “asimétricos” o aquellos en que las restricciones aparecen con el signo igual, es decir: AX b. ELEMENTOS DEL PROBLEMA DUAL Y Vector columna de VARIABLES DUALES, (m — 1) CT Vector columna de RECURSOS DUALES, (n 1) bT Vector fila de PRECIOS O RENDIMIENTOS DUALES (1 ni) A1 Matriz traspuesta. COEFICIENTES TECNOLÓGICOS DUALES (n x ni) O Escalar. VALOR DE LA FUNCION OBJETIVO DUAL — - —l 192 Manuel Gómez Díaz El problema primal puede presentarse como máximo o como mínimo y tanto las restricciones como las variables con distintos signos; como quiera que el dual es una aplicación del primal, según se presente éste así resultará aquél. Si partimos de un primal en forma abreviada, al considerar máximo y mínimo, así como los diferentes signos de variables y restricciones, llegaremos a 1 8 formas diferentes: Máx.Z=CX Mín.Z=CX (2) 2 x 3 x3 = ÁX~b X~0 AX~ b X no restringida en signo AX~-b (3) X~=O (3) 18 combinaciones diferentes Si, además, tenemos en cuenta que dentro del bloque AX puede haber cualquier número de ecuaciones y de inecuaciones en ambos sentidos y que cada una de las variables x~, independientemente de las otras, puede tomar los valores =(1; ~ =O, o ser no restringida en signo, el problema resulta más complejo. Trataremos, pues, de establecer una metodología básica para llegar en cualqu ier caso, de forma inequívoca, al planteamiento del dual y, al tiempo, deducir unas reglas generales, de obligado cumplimiento, para alcanzar directamente el mismo objetivo. Hemos definido anteriormente el problema dual como una aplicación del primal en su forma canónica, es decir: (Pa): Máx. Z AX=b X=O — CX (D,): Mm. G b’ Y ,4’Y=C1 Y=O por lo tanto, cualquiera que sea la forma en que se presente el primal habremos de transformarlo ‘correctamente’ en otro equivalente que tenga la forma canónica. Luego, la aplicación correspondiente nos llevará sin dificultad al dual. Para conseguir lo primero utilizaremos las propiedades matemáticas recordadas anteriormente y, cuando sea necesario, también recurriremos a cambios de variables. 193 La dualidad en la Programación Lineal DIVERSAS FORMAS DEL PRIMAL-DUAL Casos de Máximo 1) (P1): Máx.ZCX LV =b (D1): Mm. O X=O br Y = AT Y=U Y=O 2) (P1): Máx. Z CX AX =b x =o Forma canónica: Máx. 7= CX -AX=-b T W (D1): Mm. O ~Ar W> X=O -b = CT W=O y haciendo Y = W - Min~ O = A’ Y=CF Y=O 3) (P 1): Máx. 7 ¡LX = X=O b = CX bT Y 194 Manuel Gómez Díaz Forma canoníca: Máx. Z AX = b AX=b X=O = CX Máx. 7 CX; AX = b —AX=-b X=O [+]~ Máx. 7= CX X=O (Di): Mm. G [Ar [b ~ -br] = Ar} _ =C’ [W] W=O V>O Mm. O br y T Ar W Ar V> C = bT W - - ¡‘>0 vsi hacemos Y”~ Mm. O = br y Ar Y=U Y: no restringida en signo, depende de los valores de 11 4) (Pr): Máx.Z = CX lix =b X=O Forma canónica: X=-R MáX.Z=-CR -AR =b R=O (D 1): Mm. O = br Y ~Ar Y=~Cr Y=O ó bien: La dualidad en la Programación Lineal Mm. G 195 = br Y ArY=CT Y=O 5) (Pr): Máx.Z = CX ¡LX = b X=O Forma canónica: X= -R Máx.Z=-CR -AR =b R=0 Mix. Z Al? = -CR =-b R=O (D1): Miii. O Ar w> = ~br W ~Cr W=O haciendo -Y = W Mm. O = b’ Y ~Ar Y> ~Cr A’ Y=Cr y~O 196 Manuel Gómez Diaz 6) (P1): Mix. Z AX = = CX b X=o Forma canónica: Máx. 7 = CX AX =b AX>b -AX=-b X=O Haciendo X = -R Máx.Z=-CR -Al? =b Al? = -b l?=O (Di): Mm. G = Lb r TA _ brjIWI.~brwbrv -C It -A rW+A rí,>~c [-A I~>0 Mm. G = A’ (V-W) br (PV > - V) -c~ ; A~ (PV-U) W=0;V=O y haciendo Y Mía. G = PV Y - br Y Arr =U no restringida en signo =Cr 197 La dualidad en la Programación Lineal 7) (P1): Máx. 7 = CX lix = b ~sorestringida en signo Forma canónica: x=x’-r’; Mix. 7 = ; - X” Mix. z=[C (A =0;X’ =0 C (X’ X’) A (X’- X’) X’ =O X’ =b =O -C1[f~ -AII[fj=b X’=0 ‘ (D1): Mm. O br PV = [ [iA] [w]= W=0 T PV Mm. O = h [iAVr][§jj ;A rw0 = PV=O Mm. O = br PV ArW= CF ¡1/=0 198 Manuel Gómez Díaz 8) (P 1): Máx. Z CX lix = b X no restringida en signo Forma canoníca: X=X.-X,-.X’>O x.’>O Máx.Z=C(X’-X”) X’=0 X”>O Máx. Z=[C [-A A] —C} [f’j~-b [f’~] (Da): Mm. G -U PV [w]= [~iir] w=o Mm. O = rwl [-A LA -U w = [Cj L<’i rwJ W= O y haciendo PV Mm. O = FA [-A FYJ bt Y = Y=O ó bien: Mm. O = b’ Y Ar Y Y=O = Cr = - Y 199 La dualidad en la Programación Lineal 9) (P,): Máx. 7 ¡IX = CX = b X no restringida en signo Forma canónica: x’ >0 X”>O x=r-r’; Máx.Z=C(X’-X’ A(X~X”)=b 21>0 o bien: Máx.7=C(X’-X’) X’=0, 21” Máx. 7 = [C -Cl =0 [f~ 21>0 (D): Mm. G =[b T ~bT] [PV] ¡7=0, 7=0 Min.G=bFW~b~ 7= b~(W-V) Arw~Ar 7> Cr ~AT¡7 + Ar 7=~Cr Mm. G = br AT(W Pfl =Cr (¡7- 7) - AT(W~ v)=~Cr ¡7=0;7=0,y haciendo Y=¡V-7 200 Manuel Gómez Díaz Mm. O bt = >7 A’ Y=CT A~ Y=Cr no restringida en signo O lo que es lo mismo: Mm. O = br Y ¡IT Y=C’ no restringida en signo Casos de Mínimo 1) (P1): Min.Z=CX ¡IX =b X =O Forma canónica: Mix. ¡IX -Z=-CX s b X =O (D1): Mm. -G br PV AY ¡7 =~U = ¡7=0 y haciendo ¡7 = - Y Mm. ~G=~bry ~¡Ií Y> -U Y = O; o lo que es lo mismo: Mix. O = ¡IT Y=Cr Y=O br y La dualidad en la Programación Lineal 2) (Pi): Mm. 7 = 201 CX AX =b X= O (Dr): Máx. G AT =CF Y=O 3) (Pi): Mm. 7 AX = = CX b X=O Forma canónica: Mix. -Z=-CX ¡IX =b ¡IX =b X= O Mix. -7= -CX ¡IX =b -¡IX =-b 21=0 es decir: Máx.-7=-CX [IÁ]rr]=[t] X=O br y 202 Manad Gómez Díaz Mio. —G =[b ~ —b ¡7>0 Mm. -G 1[’¡.?j=b ‘(W-J’3 7>0 = b’ (¡7- ¡9 AuW~ATV>~CT;Ar(W~ P9>-CT ¡7>0 V>0 y haciendo 7- ¡7 Y = Mm. -G = -bT y 7> ~Cr y~ no restringida en signo ~¡IT 6 bien: Mix. G = br > AT 7=C’ Y: no restringida en signo ) (P 1): Mm. 7 CX ¡LX =b 27=0 Forma canónica: hacemosX’-R Mm. 7 -Al? - -CI? =b R=0 Mix. -7=CR -AR =b R=O 203 La dualidad en la Programación Lineal (03: Mm. G br ¡7 t PV> C’ -A = ¡7=0 y haciendo Y = -PV Mín.-G-b’Y ¡IT Y=U Y =0, o lo que es lo mismo: Mix. O = b’ Y ¡It Y=CF Y=O 5) (P 1): Mm. 7 CX ¡IX = b X=O Forma canónica: hacemos X Mm. 7 = -2? -CI? = -¡IR =b R=0 Mix. Al? -z = CI? =-b I?=0 (Di): Mm. oT -h’ Y AY =C Y =~; o lo que es lo mismo: = Mix. O bt y ¡Ir 7=C’ = Y=O 204 Manuel Gómez Díaz 6) (P,): Mm. 7 CX = b ¡IX X= O Forma canónica: hacemos X Mm. 7 -AB = -R -CI? = b = I?=O Máx. -¡IR -z = CI? = CI? =b AB =-b R=0 ó sea: Mix. -Z I?=O (D 1) : Mio. —G [b —b = [—.1’ .á 1 [~j=[C ¡7=0 V>O iKl r] es decir: Mío. -G ~¡Ií = b’jW- U) (PV - ¡9> Cr ¡7>0 V=O y haciendo Y = -(¡7 - U) b ‘U 205 La dualidad en la Programación Lineal Mm. -G -bT AT Y=CT >1 Y no restringida en signo O lo que es lo mismo: Máx. G b’ y’ Ar Y=U no restringida en signo 7) (Pi): Mm. Z = CX ¡IX = b X no restringida en signo Forma canónica: XX’-X’j X’>0 X”=0 Mín.ZC(X’-X”) A (X’-X’ ) =b 27’> 0; Mm. z=[z [A —A] -c}[f1 kYil=[b] X=0 X’VO Mix. [A -A] -z -[o -o] [fI [fj=[& 21=0:X”=0 206 Manuel Gómez Diaz. Mm. ~GtbTW r¡IT1 {w]=[j1i] W=O o sea: Ps-Fn. ~~C=bTW FA’ 1>F<’i ;A rwc PV L-A’wYLC’i W=O y haciendo el cambio Y Min.-G = -¡7 - br Y = .jTy> ~Cr 1Ty< Y =O Cc o lo que es le mismo Mix. O = bT y AT Y=CF ¡It Y=C’ Y =O, que equivale a: Máx. ~1F Y=O O b y La dualidad en la Programación Lineal 207 8) (P1): Mm. Z = CX ¡IX =b 21 no restringida en signo Forma canónica: X21’-X”; 21’ =0.21”=0 Mín.Z=C(X’-21’j X’=O; X”=0 Mix. -Z=-C(X’-Xfl -A(X’-X”) 21’> 0 S-b 21”> 0 Mix. -Z = [-C C] [Íj [—A A] [f4=[-bl 21>0 ; Mm. -G = ~bFY [~;] w= Y=0 Mm. -G = -b ~Y = Y=O o lo que es lo mismo: 208 Manuel Gómez Díaz Máx. G = br JI ¡Ity~ Cr ¡IT y’~ Y=O o sea: Mix. G b’ Y=CF = ¡It Y=O 9) (J-’~): Mm. 7 = CX ¡IX = b 21 no restringida en signo X=X’-X”; X’=O. X”=O Mín.7C(X’-X”) X’>0 o bien: X’=0 Mix. -Z=-C(21’-X”) 21’> 0 ‘ X” =O o en forma matricial: Mix. X’=O; JI La dualidad en la Programación Lineal Mm. —G 209 = [b T —b [¡~j= [-g;] ¡7=0; V=O Mm. ~G=br W~br V bT(W- AT W~ArV>~Cr ~ATPVA~ATV=Cr ¡7=0;V=0 Mm. ~Gbr(W~¡9 AT (¡7- ¡9 > At (¡1/- ¡9 < -U haciendo V - W = Y y Mmn.~G~bTY ~Ar y>CI.Ary>Cr ¡It Y<~CrAtY>Ct no restringida en signo o lo que es lo mismo: Mix. G = b’ Y Ar yc~ no restringida en signo 210 Manuel Gómez L>íaz CONCLUSIONES Podemos representar así las distintas soluciones anteriores: CASOS DE MAÁ7MO Signos primal Signos dual -- ‘/: >-‘‘ V.: =•‘ CASOS DE MINIMO Signos primal Signos dual - =0 ~=0 <0 =0 No restr. — — y.: =— - No restr. — =0 =0 Rs>’ ~/.: = Rs” V.: < =0 - =0 ..-. — No restr. V.: > O V:Norestr. =0 =0 V.: No restr. =~O No restr. V.: No resto No restr. < No resir. — - V.: No resto 1?.:> - V.: No restr. -- -- Rs” V.: No resto Claves: R. (restricciones) V. (variables) No resto (no restricción en signo) >< Distinto sentido Mismo sentido O,stinto sentido No restr. No restr. ~y< Mismo sentido La dualidad en la Programación Lineal 211 REGJAS OBTENIDAS Cada restricción primal da lugar a una variable dual, por lo que habrá tantas variables duales como restricciones primales. Y) Cada variable primal da lugar a una restricción dual, por lo que habrá tantas restricciones duales como variables primales. 3~) A la función objetivo primal Mdx. Z, se corresponde una función objetivo dual Mhz. G y a cada función objetivo primal Mía. X, se corresponde una dual Mdx. (3. (Añadimos que los signos de los coeficientes de las respectivas variables duales serán los de los “oportunos” vectores del primal, con independencia de que en el óptimo dichas variables deban tomar valores mayores que cero, menores que cero o ser libres en signo)’. 4~) Casos en que el primal es un máximo: a) Cada restricción del primal determina una variable dual de signo (sentido) contrario al suyo, y si aquélla es igualdad, la variable dual resultante es no restringida en signo (libre). 3) Restr. (P,) = variab. (Da) =0 Restr. (P,) =—~ variab. (D,) =O Restr. (Pi) igualdad variab. (D,) no restringida en signo —‘ b) Cada variable primal determina una restricción dual del mismo signo (sentido) y si aquélla es no restringida en signo, la restricción dual resultante es una igualdad. Variab. (Pa) =O — restr. (13,) = Variab. (P1) —~ restr. (Da) = =O Variab. (Pi) no restr. —~ restr. igualdad 5a)cNasos en que el primal es un máximo: a) Cada restricción del primal determina una variable dual del mismo signo (sentido), y si aquélla es una igualdad, la variable dual resultante es no restringida en signo (libre). La forma ‘SIMÉTRICA’ de la dualidad es la quc se obtiene a partir de un programa primal en su forma canón ca. Algunos autores en los desarrollos que hemos hecho anteriormente no hacen el cambio de variable, por e¡emplo W = -Y, para que la formulación dcl programa solución quede con signos positivos. En tal casola vadable que para nosotros aparece al tina> como “menor que cero”, según ellos aparecerá como ‘mayor quc cero” y sus respectivos coeficicntcs en la función objetivo y en la matriz A irán prcecdidos dcl signo menos. Volveremos a referirnos a ello con mayor extensión. Manuel Gómez Díaz 2>2 Restr. (P1) variab. =— Restr. (P1) = variab. (O~) =O —---* Restr. (P1) igualdad (Di) =O variab. (Da) no restringida en signo —. b) Cada variable primal deterínina una restricción dual de signo (sentido) contrario, y si aquélla es no restringida en signo, la restricción dual correspondiente es una igualdad. Variab. (P1) =O — restr. (Di) > Variab. (E) =O —~ restr. Variab. (E1) no restr. — (~) < restr. igualdad Creemos oportuno hacer las siguientes matizaciones para la correcta aplicación de las anteriores reglas: En toda La casuística tratada hemos considerado como de única naturaleza las restricciones que componían el ‘bloque”: AX =b es decir, que todas tenían igual signo (sentido de la desigualdad, en su caso); sín embargo, la realidad puede —y de hecho lo hace— ofrecer pluralidad de signos en un mismo problema. En tal caso, a cada grupo “homogéneo” de restrícciones (AX =b; AX=b ó AX < b) le aplicaremos las reglas conocidas con índependencia del otro grupo u otros dos, con los que haremos lo mismo. Demostración: Máx. 7 = CX ¡I’X=b’ Forma canónica: Mix. Z = CX =27=b’ X= O -¡I X =-b” 27=0 La dualidad en la Programación Lineal en forma matricial: Mix. 7= CX Fbi Al A 121< ¡—b A Ib AJ [—b Li ‘4 J¡ X=O [ PV Dual: Mía. G =[b’T ~b”T b”’T —b”’i 1 ¡71 31 ¡71 [¡71 ‘¡7’ 3l =CT I¡71 [¡7J 1 4 ¡7>0 ¡7>0’ Min.G ¡1’3, =0 ¡74—>0 ~ ~ W~=O: ¡7,=0; ¡73=0; ¡74=0 y haciendo: wI Y! = w 3-w4=y3 A~ty+ATy,+¡I~~>ty3=Cr y! =o Y2 =0 Y3: no restringida en signo 213 214 Manuel Gómez Díaz Resolución con la aplicación de las reglas br Y 1) Mix.Z=CX ______• Mm. O 2) Tres restr. primal —* Tres variables duales — Y no restr. 3 3) Una variab. prim. que: Mm. G = = Una restr. dual del mismo signo —> U’ Y~ + U’ ¡I’Ty +¡I”Ty Y! O Y. + = b”’ ‘Y3 +¡I’’’Y3=&. =O 72=0 73: no restringida en signo RELACIONES ENTRE PRIMAL Y DUAL (Teoremas) Teorema de la dualidad “Si un problema primal (dual) tiene una solución óptima finita, su correspondiente dual (primal) tiene una solución óptima finita y los extremos de tales funciones lineales son iguales”, es decir: (E,) (~) Máx.Z = Min.G Mín.Z = MáX.G DEMOSTRACIÓN Definiciones 7 = Vector fila de los rendimientos indirectos: {Z~Z2 215 La dualidad en la Programación Lineal ¡7 = Vector fila de los rendimientos marginales: Vector 21= Iii 11 r = = fila siendo ... 21.J el vector columna de los coeficientesde la combinaciónlineal equivalente de [P~P2 Base óptima del primal P,] Solución óptima del primal por lo tanto: P=BX;¡I=BX;X=B14 270 “fi’ b ; b = 11210 0 f(X’)”Mix. Z=Q21 7=QX”C 0B-A ¡7=C-Z=C-C0B<A y si estamos en el miximo: ¡7=0 ,osea: ¡7 C C0 21= C = - - C011 -l A =0 lo que implica: C021=C0B’A=C 216 Manuel Gómez Díaz Sea Y0 = yOT [Y=) una solución del dual, por lo que: Definimos Y’ = — [yO YO ..~ C 0 E y postmultiplicando por A: Y’¡I =C0BIA=C0X=C por lo que Y’ A =C, o bien A’ 1 Y ~ s.j ‘=ua., y~’.”’I’JA AM .-i,,.,1 ., ‘0” = ~ 1’ W =U ‘““Y”~’t~ de restricciones ni’ Yprimer > O bloquecraíírcln hinmnie de —. —~ - restricciones del dual2, por lo que Y’ es una solución del dual. Valor de la función objetivo dual para la solución Y: G = bT Y= yT b = C 0 fi> b = C, ~O = Máx. 7 así, pues, para la ecuación Y’, el valor de la función objetivo dual es igual al óptimo de/primal (). Por otra parte, ¡IX =b y WY’ b, de donde G y =Y’ AX para cualesquiera 21 e como Y’ A =C, postmultiplicando por X, tenemos Y’ AX =CX=Z (cualquiera), fIV¾~t(fl con tu que ct. u •u que ea iu iii¡3’HU,j ~ 7 ~J Y’), ~ el valor de la función objetivo dual es siempre mayor que el de la función objetivo ~j primal (**) De la síntesis de los enunciados (*) y (~“‘), se deriva que de no existir soluciones acotadas en un primal y en su dual, los valores que toma la función objetivo de cada uno en los óptimos, son las mismas. 2 C~, 8 es el vector de los rendimientos indirectos de las variables unitarias (generalmente de holgura> en una solución óptima de un máximo, en donde todos tos rendimientos marginales son nulos o negativos, por lo que estén o no en la base, dichas variables tendrán rendimienlos indirectos no negativos. La dualidad en la Programación Lineal 217 Tendremos, no obstante, que hacer una matización. Nuestro anterior desarrollo se ha basado en tomar el primal como un problema de máximo; sin embargo, si lo tomamos como un mínimo, los enunciados (*) y (**) han de invertirse pero, lógicamente, la intersección de ambos lleva a la misma sínte515~. 0 br y c, 270 (1’)--- Mix. 4 ~0 210 Yo 1 (P)--- Miii. Comportamientos posibles de un par de problemas Primal-Dual Programa dual factible Ambas soluciones óptimas Programa dual no acotado Programa dual infactible Programa primal no acotado Ambos no tienen solución Teorema de la holgura complementaria A) Este teorema fija las condiciones ‘necesarias y suficientes” para que dos soluciones X e Y sean óptimas, respectivamente, dc (P 1) y (D1). B) En segundo lugar, permite establecer unas relaciones entre las variables primales, duales y las de holgura, en el óptimo, de relevantes implicaciones economicas. ‘At hacer extensivo el teorema de la dualidad al caso del Dual Asimétrico, siguiendo el mismo desarrollo que hacemos con el simétrico, no podremos demostrar que C<~B =0pero, teniendo en cuenta que en esle caso Y es libre en signo, e,s condición suficiente para ser solución del problema que Y’ A = C0B ‘=C. 218 Manuel Gómez L)íaz Podemos enunciarlo del siguiente modo: Sean: (P,) Máx. 7 CX ¡IX =b 27=0 (Da) Mm. G —~ =‘ b’ Y ¡ItJI=C’ O si ~0 e Y0 son soluciones, respectivamente, JI> la condición necesaria y suficiente para que sean óptimas es: Y>t (b - ¡IX>) 2701 (¡Ir Yo - O o> C) DEMOSTK-l CIÓN Al ser 270 e Y0 soluciones de (E>) y (13,), se cumple: AX0=b ; ATY0>C’ 21=0 Y>0obien: b - ¡I)<0> A~ Y0 - Q C’> O y si multiplicamos la primera por Y y la segunda por X ~‘, no se afecta el sentido de la desigualdad: II Y>’ (b > O = - ¡LV) N” (A’ Y> C’) =O 0’ (1> .4270) ~~0T M+ N Y ~~Yotb~Y~ A 270t - (¡IT 220+xot Y> - U) > O ¡IT yO 2707 (“=0 (los términos 2 y 3 son iguales) 07 ~-x~’ cí=brYo~cV>o MI-N= En el caso de un problema ydual simétrico, el enunciado sería: V <AY - 1,) = O, K’ <C’½Xl = O y su demostración similar a la que hacemos para el primer caso. La dualidad en la Programación Lineal 219 Sabemos que 7 CX ~ ; J Y0 (3, y como se demostró en el teorema anterior: (3=7 en el óptimo, tenemos que: — — Al + N r br = GV - = o Como hemos partido del supuesto M =y N =0, necesariamente sucederá que: Ma Y0T(b ¡I270) - =0 U) O c.q.d. Este teorema, denominado ‘de la holgura complementaria”, tiene un relevante significado económico, que más adelante analizaremos. Sus implicaciones inmediatas son: 1) Y0>O implica A210=b 2)AXO <b implica Y0 3)X0>0 4) ¡It }~0> implica C’ implica = A’ Y0 270 = O = U O Otra forma de expresar estas conclusiones es ¡a siguiente: ~ Y0 1 =0 Y%0 ;~,,±2 ; 0+ Y%±~ = O ; Y 221% = O ; es decir: “Cuando en un óptimo una variable de holgura del primal (dual) alcance un valor positivo, la variable dual (primal) correspondiente a la restricción a que pertenezca aquélla será igual a cero”. O también, “cuando en un óptimo una variable del primal (dual) alcance un valor positivo, la variable de holgura dual (primal) que pertenece a la restricción asociada a aquélla tomará el valor cero A pesar de la gran importancia económica de este teorema, es verdadera- mente “infrecuente’, por parte de los tratadistas, reparar en que tal como se ha demostrado y enunciado resulta incompleto, hasta el punto de dar pie para cuestionar prácticamente todo su valor 220 Manuel Gó,nez Díaz El que un producto de dosfactores no negativos sea cero implica, sin lugar a dudas, que si uno es positivo el otro es cero, pero no queda excluida la posibilidad de que ambos sean cero. En este caso, el contenido explicativo del teorema se disiparía, lo mismo que buena parte de sus implicaciones económicas, Si queremos recuperar su valor pleno, tendremos que demostrar que tal posibilidad no es posible, es decir: (b 2qy0) (A’ Y> + Y> =O - - U) -i- 210=0 DEMOSTRACIÓN Sea el siguiente sistema de desigualdades: b - ¡IX = O ¡II Y-CT=O -Y’ b + Cx =O las dos primeras corresponden a las restricciones (E 1) y (D1), Máx. y Mm., respectivamente, y la tercera, según ya conocemos, se da en el caso inverso (Mm. y Máx.). Si multiplicamos en las dos primeras a (b) y (CT) por una variable (t), las desigualdades siguen cumpliéndose con tal que esta última alcance el valor adecuado; es decir: AX =O ¡Ir Y-tC’=O tb - -Y~b+CX>0 siendo Y>0X=O;t=O sistema que también puede expresarse asi: K; ~[fl ~A La matriz de coeficientes es “antisimétrica”, o sea: M MT y, partiendo de un Lema de “Minkowsky y Fargas”, se llega a un teorema matemático cuyo enunciado es: “Dadas las desigualdades AX =(1 X < O donde A es una matriz antisimétrica A AT), hay una solución X que cumple: — ( — ~4X~X>0 La dualidad en la Programación Lineal 221 que, aplicado al caso que nos ocupa, resulta: O ¡I -b T ‘ 1 -0’] Vi +VI>o es decir: -¡IX + tb * Y> O A ‘Y-C’t>-X>O -b ‘y~CX~t>O puede suceder que t> O ó t 0, supongamos que se da lo primero. Si dividimos poz (í) cada inecuación, el sistema sigue cumpliéndose: —A t A — + b _ - C + y haciendo l=x 1 1t 1 * t -b 5T >0 — 1>0 1 ‘Li ~CX >1>0 = 1 (las tres mayores que cero). el sistema inicial quedaría: b -¡IX =O ¡Ir y’~~r>~ -b’ 1’’ + CX’ =O Las dos primeras inecuaciones del sistema corresponden a las respectivas restricciones (Pa) y (13,) (Mix., Mm.) y la tercera es típica cuando el primal es Mínimo 222 Manuel Gómez Díaz y el dual Máximo, por lo que para darse las tres simultáneamente esta última se verificará como igualdad, lo que sólo sucede en el óptimo. Asi pues: 21’ Y’ y si tal conclusión la llevamos a 0’) 2= 0 = Y de la página anterior, sustituyendo y — porXty 5 Y — por Y ) llegamos a: 1 (b - kV0) + O ~A’ Y0 - C ) + X0> O quedando así demostrado el Teorema de la holgura complementaria en los dos sentidos, o sea: u... y cuando la variable de holgura del primal (dual) es cero, la correspondiente variable dual (primal) es positiva, etc.’. Y0> RELACIONES QUE EXISTEN EN LA SOLUCIÓN ÓPTIMA ENTRE LAS VARIABLES DEL DUAL (PRIMAL) Y LOS VALORES DE LOS RENDIMIENTOS DIRECTOS Y MARGINALES DEL PRIMAL (DUAL) Definición: Llamaremos variables duales estructurales a las generadas directamente por las restricciones del primal, es decir: y variables de holgura duales a las: y, oportunamente, podremos decir lo mismo de las variables del primal. Con anterioridad hemos demostrado que en el óptimo se cumple que: Más. 7= Mm. G ~0 210 = b7 Y0 La dualidad en la Programación Lineal y como 21 11 -‘ 223 b, sustituyendo, C08 11% E 3=Y9Tb b=b’Y’ -l = yOT sabemos que: C 0B -JA c0n-tj J}=[COR’ =zn+l z n+2 z 2’ z :~ zn+,fl] n,,n Estamos, pues, en condiciones de hacer el siguiente enunciado: 1) “Si el primal es un máximo canónico (problema simétrico), las variables duales estmcturales son iguales en valor a los rendimientos indirectos dc las variables de holgura (o de otras con vectores unitarios, si las hubiere). Y si el primal es un mínimo (igualmente en el caso simétrico), las respectivas variables duales estructurales son iguales a los rendimientos indirectos de las varíabies de holgura del primal cambiados de signo, con la excepción de ser del mismo signo las correspondientes con posibles variables primales unitarias y positivas”. Así pues: Y1 =Zn+l Y2=Zn+2 ‘ Yjj<Z,p~q~j Por otra parte, si el primal es: Máx. 7 ¡IX =b 21=0 = CX Esta segunda parte del enunciado no ha sido demostrada, pero resulta evidente al tener en cuenta que las variables de holgura del mínimo considerado se corresponden con vectores unitarios negativos. 224 Manuel Gómez Díaz su dual desarrollado será: a~, Y+a 1 21 Y~ 2 •a ‘ a~ 1<-a 22 Y,+. . . Y-Y -r“‘2 ka,», Y <Y “e »~1~~ también puede expresarse de la forma: Y a>, a,> a —I 0 ... O a,, a,2 a, 0 -l ... O a>, a, ... a —1 Y, Yo’ Y Y o lo que es igual: y operando: ¡IT y Y’ A - íY~ - Y’,, = = U C c c 225 La dualidad en la Programación Lineal y como sabemos que en el óptimo yT — C0 11 -l C0 B -t A - Y’,, C, 11 - C -~ A = = C Y>,, por lo tanto: lo que permite hacer el siguiente enunciado: 2) “En el óptimo, si el primal es un máximo canónico (simét.) las variables de holgura del dual toman el valor de los rendimientos marginales —cambiados de signo— de las variables estructurales del primal. Y si en el mismo caso simétrico, el primal es un mínimo, las variables de holgura del dual 6. tomarán el valor de los mismos rendimientos del primal, pero con su signo” El caso de duales asimétricos Sea el primal: Máx. 7 ¡IX = 2= CX b 27=0 su dual será: Mm. O = b’ Y A’ Y =Cr Y: libre en signo Máx. 7 = CX AX = b X O su dual será:Mín. G ATY_ CT — bT y 6 Esta segunda parte es evidente si t enemos en cuenta que, en tal caso, e’ dual será un máximo y las variables de holgura positivas. Manuel Gómez Díaz 226 Las restricciones del dual pueden expresarse: Y a” a>, a,, a’ Y, a 1 a,,, .l O Y Y‘‘‘~1 a,» Y [¡I’;ÍJ A’Y~JY 6 -C’ o bien: Y ¡I+1”,=C y teniendo en cuenta qtte en el optimo (3, 21 = (3, E b (3, /3 -I = 1< y ~ = Y b y sustituimos Y por su valor: (3,11< A + JI 2= (3 o sea: Y,,’ »C’—C,B’A=W es decir, en el óptimo: y =WY 2 =W 2, Y st,, =~M~ cl. e, e La dualidad en la Programación Lineal 227 Si el primal es: Máx. 7= CX ¡IX = b 21=0 el dual será: Mm. G = b> Y A>,Y=U Y: no restringida y como las variables de holgura tienen, en este caso, vectores unitarios negativos, siguiendo el anterior desarrollo obtenemos: Y~’ ~=C?0B ‘¡I -(3222 -w es decir: = -W> ; 2= ~ Y~ =-W, Finalmente, en los problemas asimétricos, tanto si el primal es un mínimo como si es un máximo, no existen variables de holgura primales (Xm+í Xm+2 Xm+n), por lo que no tiene sentido hablar de rendimientos indirectos ni marginales de las mismas. Consecuentemente, los valores de las variables duales estructurales no podrán relacionarse con los rendimientos de aquéllas como hemos hecho en (1), podremos, sin embargo, relacionarlos con tales rendimientos correspondientes a posibles variables estructurales del primal que tuviesen asociados vectores unitarios en la matriz A. (En el análisis de la significación económica de la “Dualidad” volveremos sobre estos detalles). Manuel Gómez Díaz 22R BIBLIOGRAFÍA BUEFA, ES.; DvER, J.S.: Ciencias de la Administración e investigación de Operaciones. México: Limusa. CHARNES, A. CorWER, W.W.: Managemení Models and Industrial Applic’ations of Linear Programming. Nueva York: Wiley. GAss, SI.: Programación Lineal. México: CECSA. KAUI<MANN, A.: Métodos y modelos de la investigación de operaciones. México: CECSA. Lt.EWELLYN, R.W.: Programación Lineal. PRAWDA, i.W.: ROMAKINE, Barcelona: Marconiho. Métodos y modelos de investigación de operaciones. México: Ml.: Elémenís dalgébre linénire el de programation linéaire. Limusa. París: Fyrolles. SUÁREZ SUÁREz. AS.: Aplicaciones económicas de la programación lineal. diana de Publicaciones. B.U.F., Gua-