Problemas & Soluciones De Ejercicios De Programacion Lineal

22
Exámen de investigación operativa I PROGRAMACIÓN LINEAL 31 DE ENERO DE 2002 PROBLEMA I (Un punto) .- Dado el siguiente programa lineal Min z = 3x 1 + 2x 2 + 5x 3 + x 4 - 6x 5 s.a. x 1 + x 2 + x 3 + x 4 + x 5 12 x 4 + x 5 4 x 1 + x 2 - x 3 0 6x 1 + 3x 2 - x 3 + x 4 - 2x 5 0 x 1 , x 4 , x 5 0 ; x 2 , x 3 sin restricciones determinar el programa dual. Instituto Tecnologico De Pachuca

Transcript of Problemas & Soluciones De Ejercicios De Programacion Lineal

Page 1: Problemas & Soluciones De Ejercicios De Programacion Lineal

Exámen de investigación operativa IPROGRAMACIÓN LINEAL

31 DE ENERO DE 2002

PROBLEMA I (Un punto) .- Dado el siguiente programa lineal

Min z = 3x1 + 2x2 + 5x3 + x4 - 6x5

s.a. x1 + x2 + x3 + x4 + x5 12 x4 + x5 4 x1 + x2 - x3 06x1 + 3x2 - x3 + x4 - 2x5 0x1 , x4 , x5 0 ; x2 , x3 sin restricciones

determinar el programa dual.

Instituto Tecnologico De Pachuca

Page 2: Problemas & Soluciones De Ejercicios De Programacion Lineal

EXÁMEN DE INVESTIGACIÓN OPERATIVA IPROGRAMACIÓN LINEAL

31 DE ENERO DE 2002

PROBLEMA II (Un punto).- Resolver gráficamente el programa lineal

Instituto Tecnologico De Pachuca

Page 3: Problemas & Soluciones De Ejercicios De Programacion Lineal

EXÁMEN DE INVESTIGACIÓN OPERATIVA IPROGRAMACIÓN LINEAL

31 DE ENERO DE 2002

PROBLEMA III (Dos puntos) .- Dado el problema lineal

Min z = 20x1 + 28x2 s.a.4x1 + 3x2 19x2 1x1 , x2 0

determinar su solución mediante el algoritmo del SIMPLEX. Utilizar el método de las dos fases ante la falta de una solución factible básica inicial.

Instituto Tecnologico De Pachuca

Page 4: Problemas & Soluciones De Ejercicios De Programacion Lineal

EXÁMEN DE INVESTIGACIÓN OPERATIVA IPROGRAMACIÓN LINEAL

31 DE ENERO DE 2002

PROBLEMA IV (Un punto).- Resolver el programa lineal del PROBLEMA III, es decir:

Min z = 20x1 + 28x2 s.a.4x1 + 3x2 19x2 1x1 , x2 0

mediante el algoritmo dual.

Instituto Tecnologico De Pachuca

Page 5: Problemas & Soluciones De Ejercicios De Programacion Lineal

EXÁMEN DE INVESTIGACIÓN OPERATIVA IPROGRAMACIÓN LINEAL

31 DE ENERO DE 2002

PROBLEMA V (Tres puntos).- Dado el problema primal expresado a continuación, determinar su problema dual, resolver el primal mediante el algoritmo dual (con los cambios de variable necesarios y la simplificación al máximo despejando precisamente x3 y sustituyendo en el resto del programa) y determinar la solución del programa dual mediante las relaciones de holgura complementaria.

Min z = 2x1 + 3x2 - 5x3

s.a. x1 + x2 - x3 + x4 5

2x1 + x3 4 x2 + x3 + x4 = 6

x1 0 ; x2 , x3 0, x4 no restringida

Instituto Tecnologico De Pachuca

Page 6: Problemas & Soluciones De Ejercicios De Programacion Lineal

EXÁMEN DE INVESTIGACIÓN OPERATIVA IPROGRAMACIÓN LINEAL

31 DE ENERO DE 2002

PROBLEMA VI (Dos puntos) .- Dado el programa lineal

Max z = x1 + x2 s.a. x1 - x2 - 2

5.x1 - 2.x2 5

x1 , x2 0

describir qué ocurre si tras su resolución nos vemos obligados a añadir la restricción

x2 2

Describir igualmente que ocurre si en vez de la restricción anterior hay que tener en cuenta la restricción

x1 1

Instituto Tecnologico De Pachuca

Page 7: Problemas & Soluciones De Ejercicios De Programacion Lineal

UNIVERSIDAD CARLOS III DEPARTAMENTO DE FACULTAD DE CIENCIAS ESTADÍSTICA Y SOCIALES Y POLÍTICAS ECONOMETRÍA

DIPLOMATURA DE ESTADÍSTICA2º CURSO - INVESTIGACIÓN OPERATIVA I

EXAMEN DE 31 DE ENERO DE 2002

SOLUCIÓN DE LOS PROBLEMAS

Prof. José Carlos Ayuso Elvira

Instituto Tecnologico De Pachuca

Page 8: Problemas & Soluciones De Ejercicios De Programacion Lineal

SOLUCIÓN PROBLEMA I

Como el problema planteado es de mínimo, el dual será del tipo Max. Si denominamos por la letra y las variables duales, entonces las variables y1, y3 e y4 serán negativas pues las desigualdades correspondientes en el programa primal son del tipo menor o igual. Por otra parte las restricciones segunda y tercera del dual han de ser del tipo igualdad pues las variables primales correspondientes no están restringidas, mientras que las otras tres restricciones duales serán del tipo menor o igual tal como corresponde a un programa del tipo Max pues las variables primales son positivas o nulas. En definitiva el programa dual será:

Max w = 12.y1 + 4.y2 s.a.y1 + y3 + 6.y4 3y1 + y3 + 3.y4 = 2 y1 - y3 - y4 = 5y1 + y2 + y4 1y1 + y2 - 2y4 -6

y1 , y3 , y4 0 ; y2 0

Instituto Tecnologico De Pachuca

Page 9: Problemas & Soluciones De Ejercicios De Programacion Lineal

SOLUCIÓN PROBLEMA II

La representación gráfica de nuestro problema, en la que las unidades correspondientes al eje horizontal son el doble de grandes que las correspondientes al eje vertical, resulta ser la siguiente:

La región factible resulta ser la delimitada por los vértices A, B, C y D. La solución resulta ser el vértice D, si se tiene en cuenta que el sentido creciente de nuestra función objetivo viene establecido por el vector (1,-1).

El punto D está en la intersección de las restricciones III y IV; en consecuencia es la solución del sistema

2.x1 + x2 = 16-x1 + 2.x2 = 2

de donde se obtiene la solución completa del programa lineal puesto que

x1 = 6x2 = 4s1 = 6s2 = 7s3 = 0s4 = 0z = 2

Instituto Tecnologico De Pachuca

x1

x2

I

II

III

IV

F.O.

A

B C

D

Page 10: Problemas & Soluciones De Ejercicios De Programacion Lineal

SOLUCIÓN PROBLEMA III

El programa lineal no tiene una solución factible básica inicial dado el sentido de las desigualdades. Para obtener una solución factible básica inicial utilizaremos el método de las dos fases introduciendo dos variables artificiales p1 y p2 y tratando de hacer Min z’ = p1 + p2. La tabla simplex de esta Fase I es

x1 x2 s1 s2 p1 p2 SOLMin z’ 0 0 0 0 -1 -1 0p1 4 3 -1 0 1 0 1p2 0 9 0 -1 0 1 1

Como la tabla no tiene el formato correcto para aplicar el simplex, pues no son nulos los coeficientes de las variables básicas en la línea de z, sumamos la segunda y tercera fila a la primera y obtenemos

x1 x2 s1 s2 p1 p2 SOLMin z’ 4 12 -1 -1 0 0 2p1 4 3 -1 0 1 0 1p2 0 9 0 -1 0 1 1

Pivotaremos alrededor del elemento señalado en negrita y en cursiva (notación que utilizaremos en todo el proceso), lo que nos da la tabla

x1 x2 s1 s2 p1 p2 SOLMin z’ 4 0 -1 1/3 0 -4/3 2/3p1 4 0 -1 1/3 1 -1/3 2/3x2 0 1 0 -1/9 0 1/9 1/9

Siguiendo el proceso del algoritmo del simplex obtenemos la tabla

x1 x2 s1 s2 p1 p2 SOLMin z’ 0 0 0 0 -1 -1 0x1 1 0 -1/4 1/12 1/4 -1/12 1/6x2 0 1 0 -1/9 0 1/9 1/9

con la que se finaliza la Fase I al obtener una base factible. Recuperamos nuestro problema sustituyendo en la fila de z’ los coeficientes de la función objetivo original y obtenemos la tabla

Instituto Tecnologico De Pachuca

Page 11: Problemas & Soluciones De Ejercicios De Programacion Lineal

x1 x2 s1 s2 SOLMin z -20 -28 0 0 0x1 1 0 -1/4 1/12 1/6x2 0 1 0 -1/9 1/9

tabla que no se adapta a los requisitos del simplex en los que debe aparecer un cero en la línea de z en las variables básicas. Para lograrlo sumamos a esta fila la segunda multiplicada por 20 y la tercera multiplicada por 28, obteniendo

x1 x2 s1 s2 SOLMin z 0 0 -5 -13/9 58/9x1 1 0 -1/4 1/12 1/6x2 0 1 0 -1/9 1/9

Tabla en la que, siendo la solución factible, ya no se puede pivotar, esto es mejorar la solución con lo que estamos en el óptimo y ha finalizado el proceso del simplex. La solución es por tanto

x1 = 1/6x2 = 1/9s1 = 0s2 = 0z = 58/9

Instituto Tecnologico De Pachuca

Page 12: Problemas & Soluciones De Ejercicios De Programacion Lineal

SOLUCIÓN PROBLEMA IV

Para abordar la resolución del PROBLEMA III mediante el algoritmo dual la tabla inicial sería

x1 x2 s1 s2 SOLMin z -20 -28 0 0 0s1 -4 -3 1 0 -1s2 0 -9 0 1 -1

tabla que representa una solución básica no factible y sobreoptimal pues los coeficientes de la línea de z son todos negativos y el problema es de mínimo. Pivotando obtenemos

x1 x2 s1 s2 SOLMin z 0 -13 -5 0 5x1 0 3/4 -1/4 0 1/4s2 0 -9 0 1 -1

y pivotando nuevamente

x1 x2 s1 s2 SOLMin z 0 0 -5 -13/9 58/9x1 1 0 -1/4 1/12 1/6x2 0 1 0 -1/9 1/9

que representa , por supuesto, la misma solución ya calculada.

Instituto Tecnologico De Pachuca

Page 13: Problemas & Soluciones De Ejercicios De Programacion Lineal

SOLUCIÓN PROBLEMA V

Si denominamos mediante la letra y a las variables duales, el programa dual resulta ser directamente

Max w = 5y1 + 4y2 + 6y3

s.a.y1 + 2y2 2 (pues x1 0)y1 + y3 3-y1 + y2 + y3 -5y1 + y3 = 0 (pues x4 es no restringida)y1 0,y2 0 (pues la segunda relación del primal es del tipo ),y3 no restringida (pues la tercera relación del primal es del tipo =)

Para resolver el problema primal mediante el algoritmo dual haremos x1 = -x5 , además x4 = x6 - x7, quedando el programa

Min z = -2x5 + 3x2 - 5x3 s.a.-x5 + x2 - x3 + x6 - x7 5-2x5 + x3 4 x2 + x3 + x6 - x7 = 6x5 , x2 , x3 , x6 , x7 0

Para simplificar aún más el problema haremos x3 = 6 - x2 - x6 + x7 , quedando el problema tras operar y haciendo z' = z + 30

Min z' (=z+30) = 8x2 - 2x5 + 5x6 - 5x7 s.a.-2x2 + x5 - 2x6 + 2x7 -11 -x2 - 2x5 - x6 + x7 -2 x2 , x5 , x6 , x7 0

Este problema, desde el punto de vista del algoritmo dual, tiene una solución básica no factible, que no es sobreoptimal por lo que habremos de utilizar el método de la restricción artificial, con lo que la tabla quedaría

x2 x5 x6 x7 s1 s2 pMin z' -8 2 -5 5 0 0 0 0s1 -2 1 -2 2 1 0 0 -11s2 -1 -2 -1 1 0 1 0 -2p 1 1 1 1 0 0 1 M

Pivotando sucesivamente

Instituto Tecnologico De Pachuca

Page 14: Problemas & Soluciones De Ejercicios De Programacion Lineal

x2 x5 x6 x7 s1 s2 p SOLMin z' -13 -3 -10 0 0 0 -5 -5Ms1 -4 -1 -4 0 1 0 -2 -11-2Ms2 -2 -3 -2 0 0 1 -1 -2-Mx7 1 1 1 1 0 0 1 M

x2 x5 x6 x7 s1 s2 p SOLMin z' -3 -1/2 0 0 -5/2 0 0 55/2p -2 1/2 2 0 -1/2 0 1 11/2+Ms2 0 -5/2 0 0 -1/2 1 0 7/2x7 -1 1/2 -1 1 1/2 0 0 -11/2

y finalmente obtenemos (pivotando alrededor del elemento negativo para forzar la salida de x7 única forma de lograr la factibilidad)

x2 x5 x6 x7 s1 s2 pMin z' -3 -1/2 0 0 -5/2 0 0 55/2p -4 3/2 0 2 1/2 0 1 -11/2+Ms2 0 -5/2 0 0 -1/2 1 0 7/2x6 1 -1/2 1 -1 -1/2 0 0 11/2

Así pues la solución a nuestro problema actual es

x2 = 0x5 = 0 x6 = 11/2 x7 = 0s1 = 0 s2 = 7/2 p = -11/2 + Mz’ = 55/2

Si tenemos en cuenta los cambios realizados, la expresión para x3 y denominando h1, h2 y h3 las holguras de las ecuaciones primales, obtenemos como solución del programa lineal primal

x1 = -x5 = 0x2 = 0 x3 = 6- x2 - x6 + x7 = 1/2 x4 = x6 - x7 = 11/2 – 0 = 11/2h1 = x1 + x2 - x3 + x4 – 5 = 0 + 0 – 1/2 + 11/2 – 5 = 0h2 = 4 - 2x1 - x3 = 4 – 0 –1/2 = 7/2h3 = 0z = z’ –30 = 55/2 – 30 = -5/2

Denominando ahora como d1, d2, d3 y d4 las holguras del programa dual ha de verificarse que

x1d1 = 0; x2d2 = 0; x3d3 = 0; x4d4 = 0;

Instituto Tecnologico De Pachuca

Page 15: Problemas & Soluciones De Ejercicios De Programacion Lineal

y también que y1h1 = 0; y2h2 = 0; y3h3 = 0;

de donde se obtienen las siguientes consecuencias

y1 = no forzosamente nulo pues h1 = 0y2 = 0 puesto que h2 = 7/2 0y3 = no forzosamente nulo pues h3 = 0d1 = no forzosamente nulo pues x1 = 0d2 = no forzosamente nulo pues x2 = 0d3 = 0 pues x3 = 1/2 0d4 = 0 pues x4 = 11/2 0

Por tanto se cumplirán exactamente las restricciones tercera y cuarta con y2 = 0 verificándose que

- y1 + y3 = -5 y1 + y3 = 0

sistema cuya resolución permite establecer que

y1 = 5/2y2 = 0 y3 = - 5/2d1 = 1/2d2 = 3d3 = 0 d4 = 0 w = z = -5/2

solución completa del programa dual.

Instituto Tecnologico De Pachuca

Page 16: Problemas & Soluciones De Ejercicios De Programacion Lineal

SOLUCIÓN PROBLEMA VI

Dando al programa la forma correcta quedará:

Max z = x1 + x2 s.a. - x1 + x2 2

5.x1 - 2.x2 5

x1 , x2 0

que da lugar a la siguiente tabla del simplex

x1 x2 s1 s2 SOLMax z -1 -1 0 0 0s1 -1 1 1 0 2s2 5 -2 0 1 5

en la que pivotaremos sucesivamente alrededor de los elementos marcados en negrita hasta hallar la solución en la forma que sigue:

x1 x2 s1 s2 SOLMax z -2 0 1 0 2x2 -1 1 1 0 2s2 3 0 2 1 9

x1 x2 s1 s2 SOLMax z 0 0 7/3 2/3 8x2 0 1 5/3 1/3 5x1 1 0 2/3 1/3 3

que es la solución al problema original.

Si hemos de considerar ahora la restricción x2 2 la nueva tabla a considerar al añadir es nueva restricción sería

x1 x2 s1 s2 s3 SOLMax z 0 0 7/3 2/3 0 8x2 0 1 5/3 1/3 0 5x1 1 0 2/3 1/3 0 3s3 0 -1 0 0 1 -2

Esta tabla no se adapta a los requisitos del simplex puesto que en la última casilla de la columna de x2 no aparece un cero así que la transformaremos sumando a la última fila la fila correspondiente a x2, quedando entonces

Instituto Tecnologico De Pachuca

Page 17: Problemas & Soluciones De Ejercicios De Programacion Lineal

x1 x2 s1 s2 s3 SOLMax z 0 0 7/3 2/3 0 8x2 0 1 5/3 1/3 0 5x1 1 0 2/3 1/3 0 3s3 0 0 5/3 1/3 1 3

Esta tabla representa una solución factible básica, que es óptima para el problema transformado pues no puede mejorarse y que coincide con la del problema original, así que podemos afirmar que la nueva restricción no añade nada nuevo al problema.

Si consideramos ahora la restricción x1 1 procederemos de igual forma con lo que la tabla quedará:

x1 x2 s1 s2 s3 SOLMax z 0 0 7/3 2/3 0 8x2 0 1 5/3 1/3 0 5x1 1 0 2/3 1/3 0 3s3 1 0 0 0 1 1

Esta tabla no se adapta a los requisitos del simplex puesto que en la última casilla de la columna de x1 no aparece un cero así que la transformaremos restando a la última fila la fila correspondiente a x1, quedando entonces

x1 x2 s1 s2 s3 SOLMax z 0 0 7/3 2/3 0 8x2 0 1 5/3 1/3 0 5x1 1 0 2/3 1/3 0 3s3 0 0 -2/3 -1/3 1 -2

La tabla representa una solución no factible (s3 = - 2) y sobreoptimal (línea de z toda positiva). Aplicando el algoritmo dual a esta tabla y pivotando alrededor del elemento marcado en negrita obtenemos:

x1 x2 s1 s2 s3 SOLMax z 0 0 1 0 2 4x2 0 1 1 0 1 3x1 1 0 0 0 1 1s2 0 0 2 1 -3 6

Solución diferente a la original lo que significa que la nueva restricción es relevante.

Instituto Tecnologico De Pachuca