Curso de investigación de operaciones http://www.luciasilva.8k.com/5.5.htm Unidad III Teoría de la Dualidad. III.1 FORMULACIÓN DEL PROBLEMA DUAL La Teoría de la Dualidad es una de las herramientas que ha venido a proporcionar mayor potencia al desarrollo y a la aplicación de modelos de Programación Lineal. (J. L. Mora). Permite además agilizar el logro de soluciones óptimas, verifica ala adecuación del modelo respecto a la realidad que representa, constata la factibilidad del modelo con las restricciones estimadas y comprueba cuan viable resulta cierta solución. El problema de programación lineal primario expresado en forma matricial se visualiza a continuación de manera primaria y dual: PRIMO DUAL sujeto a: sujeto a: Tomando en cuenta que para toda Forma 1. Si el problema está expresado en forma canónica (que es el problema primario o primal), tenemos que: Max Z = C x s.a. Ax b 1 Se define el problema dual estructurado de la siguiente forma: PROBLEMA PRIMARIO Elemento Dimensión Elemento x Vector columna con n elementos Vector de variables de actividades primarias C Vector renglón con n componentes Vector de precios unitarios del problema primario b Vector columna con m componentes Vector de recursos disponibles del primario A Matriz de m x n Matriz de coeficientes tecnológicos z Escalar Función objetivo del primario PROBLEMA DUAL Elemento Y Dimensión Característica Vector columna con m componentes Vector de variables de actividades duales Transpuesta del vector C de n componentes Vector de recursos disponibles dual Transpuesta del vector renglón b de m componentes Vector de precios unitarios del dual Matriz transpuesta de A de nxm Matriz de coeficientes tecnológicos del problema dual 2 G Escalar Función objetivo dual Forma 2. Si en el problema primario se observan las restricciones de tipo: Mín Z = C x s.a. Ax b Se puede reescribir de la forma: Max Z = - C x s.a. – A x -b El problema dual queda: Forma 3. Si se observa que el problema primario está expresado: 3 Máx z = C x s.a. A x = b Que puede expresarse como: Max Z = C x s.a. A x Ax b b ó Max Z = C x s.a. Ax b -Ax -b El problema dual estará descrito por: para "y" sin restricción de signo. Si se aplica la definición de dualidad, asociado con el vector dual W, con las restricciones primarias A x b , y el vector dual V para -A x -b, se tiene: factorizando tenemos: 4 determinando a la resta de vectores duales (W-V) igual al vector Y, tenemos Y= W-V, para lo cual a. si W > V b. si W = V c. si W < V Y>0 Y= 0 Y<0 de donde sin restricción de signo para Y. Forma 4. Si el problema primario está expresado por: Max Z = C x s.a. A x b ó -A x -b En forma dual se tendrá: 5 III. 2 CORRESPONDENCIA PRIMAL-DUAL. Si se busca max Z = C x, se desprende la relación del problema primario y la correspondencia que hay con el dual. PRIMARIO DUAL Maximizar Minimizar Minimizar Maximizar Restricción i Variable i Restricción i = Variable i no restringida Variable i 0 Restricción i Variable j Restricción j 0 0 Variable j no restringida Variable j 0 Restricción j = Restricción j 0 Tomando las consideraciones anteriores, en el problema primal, si el objetivo es: 6 Max Z =C x s.a. A x b los valores colocados en tablas, tendrán la forma: Z Variables originales Variables de holgura Zo 1 -C 0 0 0 A 1 b Se convertirá en la siguiente iteración: Z Variables originales Variables de holgura Zo 1 0 El problema dual será: Con todo lo anterior, se resolverá el siguiente problema: Max Z = 7 Sujeto a las siguientes restricciones. TABLA I / SIMPLEX Entra Zo Eo E1 0 -2 -1 0 0 0 0 3 5 1 0 15 0 6 2 0 1 24 E2 Sale Existen valores negativos en la base, (-2, -1), luego entonces, la función de optimalidad no se cumple, identificando que: Saldrá de la base , como se visualiza seguidamente: Resulta en el traslape de fila y columna ( 6 ), la conveniencia de hacerlo con coeficiente =1, multiplicando la fila E2 por 1/6, para tener la fila pivotal F.P. 1 1/3 0 1/6 4 Haciendo las operaciones de renglón, que nos dará la columna unitaria, con –3FP + E1, y 2FP + Eo, obtenemos la siguiente tabla TABLA II / SIMPLEX Entra 8 Zo Z Eo E1 0 0 -1/3 0 1/3 8 0 0 4 1 -1/2 3 0 1 1/3 0 1/6 4 E2 Sale Tenemos una solución básica no óptima , no satisface la condición de optimalidad, existe aún, un valor negativo en la base (-1/3), para localizar quien sale de la base, hacemos Indica que sale de la base, para dar su lugar a , para hacer en el traslape de fila y columna (4), coeficiente igual a uno , para tener la nueva fila pivotal (FP), hacer ¼ E1.. Luego entonces tenemos que la fila pivotal será: 0 1 1/4 - 3/4 1/3 La columna unitaria se genera, efectuando -1/3FP + E2 , y 1/3FP + Eo, los valores que dan origen están en la tabla siguiente. TABLA III / SIMPLEX Zo Z Eo 1 0 0 1/12 0.29 33/4 E1 0 0 1 1/4 -1/8 3/4 0 1 0 -1/12 5/24 15/4 E2 Se observa que se cumple con la condición de optimalidad ≥0, y que el vector de soluciones óptimas contiene elementos mayores iguales que cero, que satisface el conjunto de restricciones a las que está sujeta la función objetivo, por lo tanto tenemos la solución por el método simplex dada por: 9 Con Zo = = 8.25 Ahora, el problema dual estará descrito por: La relación del problema primo con el problema dual es: La solución óptima del primo = Solución óptima del dual Max z = Mín G De donde es la solución óptima dual. La solución óptima del primo tiene Para las variables de holgura 10 , en las variables Tomando en consideración, que por cada , existe una variable Dual , que quiere decir . Para esto tenemos que: SOLUCIÓN ÓPTIMA DEL SOLUCIÓN ÓPTIMA DEL PROBLEMA PRIMAL PROBLEMA DUAL III. 3 INTERPRETACIÓN ECONÓMICA DE LAS VARIABLES DUAL. La solución óptima de las variables dual, observadas en el ejemplo anterior (III.2), donde 11 III. 2 CORRESPONDENCIA PRIMAL-DUAL. Si se busca max Z = C x, se desprende la relación del problema primario y la correspondencia que hay con el dual. PRIMARIO DUAL Maximizar Minimizar Minimizar Maximizar Restricción i Variable i Restricción i = Variable i no restringida Variable i 0 Restricción i Variable j 0 Restricción j 0 0 Restricción j = Variable j no restringida Variable j Restricción j 0 Tomando las consideraciones anteriores, en el problema primal, si el objetivo es: Max Z =C x s.a. A x b los valores colocados en tablas, tendrán la forma: Z Variables originales Variables de holgura Zo 1 -C 0 0 0 A 1 b 12 Se convertirá en la siguiente iteración: Z Variables de holgura Variables originales Zo 1 0 El problema dual será: Con todo lo anterior, se resolverá el siguiente problema: Max Z = Sujeto a las siguientes restricciones. TABLA I / SIMPLEX Entra Zo Eo 0 -2 -1 0 0 0 13 E1 0 3 5 1 0 15 0 6 2 0 1 24 E2 Sale Existen valores negativos en la base, (-2, -1), luego entonces, la función de optimalidad no se cumple, identificando que: Saldrá de la base , como se visualiza seguidamente: Resulta en el traslape de fila y columna ( 6 ), la conveniencia de hacerlo con coeficiente =1, multiplicando la fila E2 por 1/6, para tener la fila pivotal F.P. 1 1/3 0 1/6 4 Haciendo las operaciones de renglón, que nos dará la columna unitaria, con –3FP + E1, y 2FP + Eo, obtenemos la siguiente tabla TABLA II / SIMPLEX Entra Z Eo E1 Zo 0 0 -1/3 0 1/3 8 0 0 4 1 -1/2 3 0 1 1/3 0 1/6 4 E2 Sale Tenemos una solución básica no óptima , no satisface la condición de optimalidad, existe aún, un valor negativo en la base (-1/3), para localizar quien sale de la base, hacemos 14 Indica que sale de la base, para dar su lugar a , para hacer en el traslape de fila y columna (4), coeficiente igual a uno , para tener la nueva fila pivotal (FP), hacer ¼ E1.. Luego entonces tenemos que la fila pivotal será: 0 1 1/4 - 3/4 1/3 La columna unitaria se genera, efectuando -1/3FP + E2 , y 1/3FP + Eo, los valores que dan origen están en la tabla siguiente. TABLA III / SIMPLEX Z Zo Eo 1 0 0 1/12 0.29 33/4 E1 0 0 1 1/4 -1/8 3/4 0 1 0 -1/12 5/24 15/4 E2 Se observa que se cumple con la condición de optimalidad ≥0, y que el vector de soluciones óptimas contiene elementos mayores iguales que cero, que satisface el conjunto de restricciones a las que está sujeta la función objetivo, por lo tanto tenemos la solución por el método simplex dada por: Con Zo = = 8.25 Ahora, el problema dual estará descrito por: 15 La relación del problema primo con el problema dual es: La solución óptima del primo = Solución óptima del dual Max z = Mín G De donde es la solución óptima dual. La solución óptima del primo tiene , en las variables Para las variables de holgura Tomando en consideración, que por cada , existe una variable Dual . Para esto tenemos que: SOLUCIÓN ÓPTIMA DEL SOLUCIÓN ÓPTIMA DEL PROBLEMA PRIMAL PROBLEMA DUAL 16 , que quiere decir