Dualidad

15
INTRODUCCIÓN Dado un problema de programación lineal, denominado problema primal, existe otro problema de programación lineal, denominado problema dual, íntimamente relacionado con él. Se dice que ambos problemas son mutuamente duales. Bajo ciertas hipótesis, los problemas primal y dual dan lugar al mismo valor óptimo de la función objetivo, y por tanto se puede resolver indirectamente el problema primal resolviendo el problema dual. Además nos permite utilizando el algoritmo dual del simplex el resolver problemas que por la forma estándar nos serían irresolubles. Además permite facilitar otros cálculos como los de las variables artificiales.

description

Dado un problema de programación lineal, denominado problema primal, existe otro problema de programación lineal, denominado problema dual, íntimamente relacionado con él. Se dice que ambos problemas son mutuamente duales.Bajo ciertas hipótesis, los problemas primal y dual dan lugar al mismo valor óptimo de la función objetivo, y por tanto se puede resolver indirectamente el problema primal resolviendo el problema dual.Además nos permite utilizando el algoritmo dual del simplex el resolver problemas que por la forma estándar nos serían irresolubles. Además permite facilitar otros cálculos como los de las variables artificiales.

Transcript of Dualidad

Page 1: Dualidad

INTRODUCCIÓN

Dado un problema de programación lineal, denominado problema primal, existe

otro problema de programación lineal, denominado problema dual, íntimamente

relacionado con él. Se dice que ambos problemas son mutuamente duales.

Bajo ciertas hipótesis, los problemas primal y dual dan lugar al mismo valor

óptimo de la función objetivo, y por tanto se puede resolver indirectamente el

problema primal resolviendo el problema dual.

Además nos permite utilizando el algoritmo dual del simplex el resolver

problemas que por la forma estándar nos serían irresolubles. Además permite

facilitar otros cálculos como los de las variables artificiales.

Los autores

Page 2: Dualidad

OBJETIVOS

Mostrar la resolución de los problemas duales respecto a los primales se

justifica dada la facilidad que se presenta dados problemas donde el

número de restricciones supere al número de variables.

Dar a conocer las ventajas que presenta es que dado a que el número

de restricciones y variables entre problema dual y primal es inverso.

Ver cómo se pueden resolver gráficamente problemas que presenten

dos restricciones sin importar el número de variables.

Page 3: Dualidad

1. DUALIDAD

El dual es un problema de Programación lineal (PL) que se obtiene

matemáticamente de un modelo primal de PL dado. Los problemas dual y

primal están relacionados a tal grado, que la solución símplex óptima de

cualquiera de los dos problemas conduce en forma automática a la solución

óptima del otro. 

El  método símplex además de resolver un problema de PL llegando a una

solución óptima nos ofrece más y mejores elementos para la toma de

decisiones. La  dualidad y el análisis de sensibilidad son potencialidades de

éste método. 

El concepto de dualidad indica que para cada problema de PL hay una

asociación y una relación muy importante con otro problema de

programación lineal, llamado precisamente dual.

 La relación entre el problema dual y su asociado, es decir el

problema original llamado primal, presenta varias utilidades:

Aporta elementos que aumentan sustancialmente la compresión de la

PL.

El análisis de dualidad es una herramienta útil en la solución de

problemas de PL,  por ejemplo: más restricciones que variables.

El problema dual tiene interpretaciones e informaciones importantes

que muestran que los análisis marginales están siempre involucrados

implícitamente al buscar la solución óptima a un problema de PL. 

Page 4: Dualidad

2. ALGORITMO DUAL DEL SIMPLEX

El algoritmo dual del simplex será utilizado cuando se llegue mediante el

método clásico del simplex a la siguiente situación:

- Alguna componente de la solución es menor que cero.

- Para todas las variables no básicas el último renglón son mayores o

iguales que cero.

También es útil cuando la introducción de variables artificiales complica

demasiado el problema.

Con este algoritmo podemos encontrarnos varias circunstancias:

- En el último renglón todos los valores son positivos (no varía conforme a

la situación inicial) y los valores negativos de la solución han desaparecido.

Es entonces cuando encontramos la solución óptima.

- Si en el último renglón tiene valores negativos la solución no es óptima.

Si la solución tiene valores negativos el problema no tiene

solución.

Si la solución no tiene valores negativos para obtener la solución

óptima se utilizará el método clásico del simplex.

- Si además de tener una componente negativa tenemos que los elementos

de su fila asociada no son también negativos tenemos que no hay solución

al problema.

El método de resolución es muy similar al del simplex con las siguientes

diferencias:

La variable básica que sale es la que posee un valor negativo

más alto.

En este caso la prueba para encontrar la variable que entra es la

siguiente:

Page 5: Dualidad

3. CONVERSIÓN DE UN PROBLEMA PRIMAL A DUAL

Un problema dual se formula de un problema primal de la siguiente forma: 

Si el primal es un problema de maximización su dual será un problema

de minimización y viceversa.

Los coeficientes de la función objetivo del problema primal se convierten

en los coeficientes del vector de la disponibilidad en el problema dual.

Los coeficientes del vector de disponibilidad del problema original se

convierten en los coeficientes de la función objetivo (vector de costo o

precio) en el problema dual.

Los coeficientes de las restricciones en el problema primal, será la

matriz de los coeficientes tecnológicos en el dual.

Los signos de desigualdad del  problema dual son contrarios a los del

primal.

Cada restricción en un problema corresponde a una variable en el otro

problema. Si el primal tiene m restricciones y n variables, el dual tendrá

n restricciones y m variables. Así, las variables Xn del primal se

convierte en nuevas variables Ym en el dual.

Page 6: Dualidad

4. TEORÍA DE LA DUALIDAD4.1. PROBLEMA PRIMAL Y PROBLEMA DUAL

Cada problema de programación lineal lleva asociado un problema

“dual” con el que prácticamente está muy relacionado.

Para calcular el problema dual, partimos del problema de programación

lineal expresado de la forma siguiente (habitual en todos nuestros

problemas):

- Maximizar la función objetivo: Z = c1x1 + c2x2 +…+ cnxn

- Poner las restricciones en la forma siguiente:

a11x1 + a12x2 +… + a1nxn <= b1

a21x1 + a22x2 +… + a2nxn <= b2

am1x1 + am2x2 +… + amnxn <= bm

El problema dual va a definirse de la siguiente forma:

- Minimizar una función Z’ con unas variables distintas a Z y con los

coeficientes derechos de las restricciones como coeficientes. Quedaría

como sigue:

Z = b1y1 + b2y2 +…+ bnyn

El problema dual tiene tantas variables como inecuaciones el

sistema de restricciones del problema primal.

Los coeficientes de la función objetivo del dual son los términos

independientes de las restricciones del primal.

- Las restricciones quedarían de la forma siguiente:

a11y1 + a21y2 +… + am1yn >= c1

a22y1 + a22y2 +… + am2yn >= c2

Page 7: Dualidad

a1my1 + a2my2 +… + amnyn >= cn

El sistema de restricciones del dual tiene tantas inecuaciones

ligadas por el signo “>=” como variables tiene el primal.

Los coeficientes de las inecuaciones del sistema de restricciones

del problema dual son los mismos que los del sistema de

restricciones del problema primal cambiando filas por columnas.

Los términos independientes de las inecuaciones del sistema de

restricciones del dual son los términos de la función objetivo del

primal.

Un ejemplo de transformación primal/dual sería el que sigue:

Page 8: Dualidad

Para hallar la correspondencia entre ambos problemas se suele utilizar la tabla

primal-dual o de Tucker. En ella se puede observar el problema primal por filas,

es decir verticalmente. Por columnas, es decir horizontalmente, se observa el

problema dual.

Para el ejemplo anterior tendríamos lo siguiente:

Page 9: Dualidad

5. PROPIEDADES BÁSICAS

Dada la relación existente entre el problema dual y el primal se pueden

enumerar las siguientes propiedades que nos permitirán el uso de esta

dualidad para resolver diferentes aspectos de los problemas de

optimización.

5.1. Propiedad de la dualidad débil: Cualquier solución factible en el

primal tiene un valor menor o igual que una solución factible en el dual.

Matemáticamente: cX <= Yb. Siempre se cumple porque el valor máximo

factible de Z es igual al valor mínimo factible de Z’.

5.2. Propiedad de la dualidad fuerte: Si X e Y son respectivamente

soluciones factibles del problema primal y del dual y se cumple que

cX=Yb entonces X e Y son soluciones a ambos problemas. En

conclusión, en las óptimas ambas soluciones son iguales.

5.3. Propiedad de las soluciones complementarias: En cada

iteración, el simplex determina una solución FEV X del primal, y una

solución complementaria Y del dual. En cada paso se obtienen variables

básicas para el primal, y los valores de las variables de holgura son las soluciones del dual complementarias óptimas. Éstas se forman

con los elementos correspondientes situados en la última fila y en las

columnas que están asociadas a las variables de holgura.

Cuando se está resolviendo el problema primal, el problema dual es no

factible. Sólo se vuelve factible cuando se halla la solución óptima.

5.4. Propiedad de las soluciones complementarias óptimas: En la

tabla simplex final, se obtiene la solución óptima x* del primal, y se

obtiene la solución óptima complementaria y* del dual, y en este punto

ambas son factibles.

c x* = y*b

Page 10: Dualidad

Los valores de yi* se denominan precios sombra para el problema

primal.

5.5. Propiedad de la simetría: Para cualquier problema, el dual del dual

es el primal.

La solución del problema dual corresponderá a los valores del último

renglón de las variables de holgura

6. TEOREMA DE EXISTENCIA

Las relaciones entre el primal y el dual se pueden establecer en tres puntos:

1. Si un problema tiene soluciones factibles y función objetivo acotada,

entonces el otro también y los valores de la función objetivo en el óptimo

son iguales.

2. Si uno de los problemas tiene soluciones factibles y función objetivo

no acotada, entonces el otro es no factible.

3. Si un problema no tiene soluciones factibles, entonces el otro no tiene

soluciones factibles o tiene la función objetivo no acotada.

El Teorema de Existencia se enunciaría como sigue: Dados un par de

problemas duales, una y sólo una de las siguientes afirmaciones es verdadera:

- Ninguno de los dos problemas posee soluciones factibles.

- Uno de los problemas no tiene solución factible y el otro sí, pero no

posee solución óptima.

- Los dos problemas poseen solución óptima.

Esto puede resumirse diciendo que entre dos problemas duales únicamente se

pueden dar las siguientes alternativas:

1. Ambos poseen soluciones factibles, entonces los valores de las

funciones objetivo Z y Z’ son 2 conjuntos de números. El punto P la

solución simultánea de los problemas dual y primal.

Page 11: Dualidad

2. La función Z no alcanza un máximo, por lo tanto no existe una

solución óptima para el problema dual (no hay punto P).

3. La función objetivo dual Y no está acotada inferiormente y por esto no

hay punto P. El problema primal no tendrá solución óptima.

4. No hay conjunto de soluciones factibles para Z ni para Y, entonces

ninguno de esos dos problemas tiene soluciones factibles.

A partir de las cuatro alternativas podemos establecer dos reglas prácticas:

1. Todo problema de programación lineal puede resolverse aplicando el

algoritmo del simplex a su problema dual asociado.

2. Los lemas de la dualidad son claves en la resolución de algunos

problemas (Ej. Si X e Y son soluciones de un problema dual y primal

correspondiente y cX =Yb, X e Y serán óptimos).