FACULT ACULTAD DE INGENIERIA INGENIERI A EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL INGENIERÍA INDUSTRIAL EN PROCESOS DE AUTOMA AUTOMATIZACIÓN TIZACIÓN
Investigación Operativa
Profesor: Rosa Galleguillos Pozo M.Sc. Ingeniería Industrial
Unidad temática 3: Algoritmo Simplex
3.2 Ejercicios EJEMPLO N°1. La empresa “LL” fabrica dos tipos de cinturones: el modelo de lujo y el modelo regular. Para cada tipo se requiere una yarda cuadrada de piel. Se necesita una hora de mano de obra calificada para un cinturón regular, y para un cinturón de lujo se requieren dos horas. Se dispone cada semana de cuarenta yardas cuadradas de piel y sesenta hora de mano de obra calificada. Cada cinturón regular aporta 3 USD a la utilidad, y cada cinturón de lujo, 4USD. Plantee el modelo de PL que maximice las utilidades.
Variables: X1= Unidades de cinturones de lujo a fabricar por semana X2= Unidades de cinturones de regulares a fabricar por semana
3.2 Ejercicios EJEMPLO N°1. La empresa “LL” fabrica dos tipos de cinturones: el modelo de lujo y el modelo regular. Para cada tipo se requiere una yarda cuadrada de piel. Se necesita una hora de mano de obra calificada para un cinturón regular, y para un cinturón de lujo se requieren dos horas. Se dispone cada semana de cuarenta yardas cuadradas de piel y sesenta hora de mano de obra calificada. Cada cinturón regular aporta 3 USD a la utilidad, y cada cinturón de lujo, 4USD. Plantee el modelo de PL que maximice las utilidades. Clase 16 Variables: X1= Unidades de cinturones de lujo a fabricar por semana X2= Unidades de cinturones de regulares a fabricar por semana
max= 4X1 + 3X2 Restricciones: S.A.: X1 + X2 ≤ 40 2X1 + X2 ≤ 60 X1 , X2 ≥ 0
3.2 Ejercicios EJEMPLO N°1. S.A.: X1 + X2 ≤ 40 2X1 + X2 ≤ 60 X1 , X2 ≥ 0
Se define para cada restricción una variable de holgura S1 que es la cantidad de recursos sin usar en la restricción: X1 + X2 + S1 = 40 S1 ≥ 0 De igual manera: 2X1 + X2 + S2 = 60 S2 ≥ 0
max= 4X1 + 3X2 S.A.: X1 + X2 + S1 = 40 2X1 + X2 + S2 = 60 X1 , X2 , S1 , S2 ≥ 0
Z= 140 X1=20 X2= 20
3.2 Ejercicios EJEMPLO N°2. max= 7X1 + 10X2 Restricciones: S.A.: 7X1 + 7X2 ≤ 49 10X1 + 5X2 ≤ 50 X1 , X2 ≥ 0
3.2 Ejercicios EJEMPLO N°2.
Equivalente:
max= 7X1 + 10X2 Restricciones: S.A.: 7X1 + 7X2 ≤ 49 10X1 + 5X2 ≤ 50 X1 , X2 ≥ 0
R1 R2 F.O
S.A.: 7X1 + 7X2 + h1 = 49 10X1 + 5X2 + h2 = 50 X1 , X2 , h1 , h2 ≥ 0
X1
X2
h1
h2
7
7
1
0
49
10
5
0
1
50
-7
-10
F.O.: 7*0 + 7*10 = 70 F.O = 70
LD
div
49/7=7 50/5=10
X2
R'1 R'2 F.O'
X1
X2
h1
h2
LD
1
1
1/7
0
7
5
0
-5/7
1
15
3
0
Al quedar estos valores negativos se detiene operación.
div
no la
3.2 Ejercicios EJEMPLO N°3. max= 8X1 + 7X2 Restricciones: S.A.: 4X1 + 3X2 ≤ 40 2X1 + 5X2 ≤ 30 X1 , X2 ≥ 0
3.2 Ejercicios EJEMPLO N°3.
Equivalente: Max= - 8X1 -7X2 S.A.: 4X1 + 3X2 + h1 = 40 2X1 + 5X2 + h2 = 30 X1 , X2 , h1 , h2 ≥ 0
max= 8X1 + 7X2 Restricciones: S.A.: 4X1 + 3X2 ≤ 40 2X1 + 5X2 ≤ 30 X1 , X2 ≥ 0
R1 R2 F.O
X2
h1
h2
LD
div
4
3
1
0
40
40/4=10
2
5
0
1
30
30/2=15
-8
-7
0
0
X2
h1
h2
LD
1
0
5/14
-3/4
55/7
0
1
-1/7
2/7
20/7
F.O'' 0
0
13/7
2/7
0
R''2
X1
R'1 R'2 F.O'
X1 R''1 X2
X1
X1
X2
h1
h2
LD
1
3/4
1/4
0
10
10/(3/4)=13,3
0
7/2
-1/2
1
10
10/(7/2)=2,8
0
-1
2
0
div
F.O.:8X1 + 7X2 8*(55/7) + 7*(20/7) F.O.: 82,85
Al quedar estos valores no negativos se detiene la
div 9
3.2 Ejercicios EJEMPLO N°4. max= 50X1 + 40X2 Restricciones: S.A.: 4X1 + 2X2 ≤ 16 X1 + 2X2 ≤ 8 X1 , X2 ≥ 0
3.2 Ejercicios EJEMPLO N°4.
Equivalente: Max= - 50X1 -40X2 S.A.: 4X1 + 2X2 + h1 = 16 X1 + 2X2 + h2 = 8 X1 , X2 , h1 , h2 ≥ 0
max= 50X1 + 40X2 Restricciones: S.A.: 4X1 + 2X2 ≤ 16 X1 + 2X2 ≤ 8 X1 , X2 ≥ 0 X1
X2
h1
h2
LD
R1
4
2
1
0
16
16/4=4
R2
1
2
0
1
8
8/1=8
F.O -50
X2
div X1
-40
X1
X2
h1
h2
LD
R''1
1
0
1/3
-1/3
8/3
R''2
0
1
-1/6
2/3
8/3
F.O''
0
0
X1
X2
h1
h2
LD
R'1
1
1/2
1/4
0
4
4/(1/2)
R'2
0
3/2
-1/4
1
4
4/(3/2)
F.O' 0
-15
div
OPTIMO
Al quedar estos valores en cero se tiene un resultado optimo.
F.O.:50X1 + 40X2 50*(8/3) + 40*(8/3) F.O.: 240
div
1 1
3.2 Ejercicios EJEMPLO N°5 Una importante empresa tecnológica fabrica dos tipos de computadores, los computadores “A” tipo servidor para principalmente empresas, y los computadores “B” tipo laptot para todo tipo de clientes. Se sabe que para fabricar un computador tipo “A” se necesitan 6 hrs/hombre para armado y otras 3 hrs/hombre para testing y para fabricar un computador tipo “B” se necesitan 2hrs/hombre para armado y 1 hrs/hombre para testing. Por otra parte, armar y dejar listo para la venta un computador tipo “A” tiene un costo de $1.200 USD, y para un computador tipo “B” un costo de $200 USD. Por demanda, mensualmente la empresa no puede fabricar más de 50 computadores tipo “A” y más de 120 computadores tipo “B”. La empresa vende los computadores tipo “A” por $2.000 USD que incluye por un año un servicio de atención y resolución de fallas que eventualmente pudiese sufrir el computador, pero obliga al cliente a pagar $600 USD extras. Para la empresa este servicio tiene un costo total de $300 USD. Los computadores tipo “B” se venden por $800 USD y no incluye ningún tipo de servicio extra. Considerando que mensualmente se dispone de un presupuesto de $80.000 USD y 800 hrs/hombre para la fabricación y testing de los computadores, se requiere determinar la cantidad de computadores tipo “A” y “B” que deben ser fabricados para maximizar la utilidad.
2 1
3.2 Ejercicios EJEMPLO N°5 Definición del modelo Variables de decisión XA = Cantidad de computadores del tipo A XB = Cantidad de computadores del tipo B Función objetivo Max z: ((2000+(600/12)) – (1200+(300/12)) XA + (800-200) XB Max z: 825 XA + 600 XB Restricciones S.A.: 9XA + 3XB ≤ 800 (restricción de tiempo de fabricación) (1200 + (300/12)) XA + 200 XB ≤ 80000 (restricción de costos) XA ≤ 50 ; XB ≤ 120 (restricción de demanda) XA , XB ≥ 0 (naturaleza de las variables)
3 1
3.2 Ejercicios EJEMPLO N°5
Algoritmo Simplex
Equivalente Max z: - 825 XA - 600 XB Restricciones S.A.: 9XA + 3XB + h1 = 800 1225XA + 200XB + h2 = 80000 XA + 0XB + h3 = 50 0XA + XB + h4 = 120 XA , XB , h1 , h2 , h3 , h4 ≥ 0 (naturaleza de las variables)
3.2 Ejercicios EJEMPLO N°5
Primer Tableau XA
XB
h1
h2
h3
h4
LD
div
R1
9
3
1
0
0
0
800
R2
1225
200
0
1
0
0
80000
R3
1
0
0
0
1
0
50
50 120
R4
0
1
0
0
0
1
120
FO
-825
-600
0
0
0
0
0
800/9 80000/1225
Segundo Tableau XA
XB
h1
h2
h3
h4
LD
R1'
0
3
1
0
-9
0
350
R2'
0
200
0
1
-1225
0
18750
R3'
1
0
0
0
1
0
50
R4'
0
1
0
0
0
1
120
FO'
0
-600
0
0
825
0
41250
R1’= R3’ * -9 + R1 R2’= R3’ * -1225 + R2 R3’= R3 R4’= R4 FO’= R3’ * 825 + FO
div 350/3 18750/200 120/1
Algoritmo Simplex Ejemplo N°5 tercer Tableau XA
XB
h1
h2
h3
h4
LD
R1''
0
0
1
-3/200
75/8
0
275/4
R2''
0
1
0
1/200
-49/8
0
375/4
R3''
1
0
0
0
1
0
50
R4''
0
0
0
-1/200
49/8
1
105/4
FO''
0
0
0
3
-2850
0
97500
R1’’= R2’’ * -3 + R1’ R2’’= R2’/200 R3’’= R3’ R4’’= R2’’ * -1 + R4’ FO’’= R2’’ * 600 + FO’
div
22/3 50 30/7
Algoritmo Simplex Ejemplo N°5 cuarto Tableau XA
XB
h1
h2
h3
h4
LD
R1'''
0
0
1
R2'''
0
1
0
-9/1225
0
-75/49
200/7
0
0
1
120
R3'''
1
0
0
1/200
0
-8/49
320/7
R4'''
0
0
0
-1/1225
1
8/49
30/7
FO'''
0
0
0
33/49
0
22800/49
76800/7
div
22/3 50 30/7
R1’’’= R4’’’ * (-75/8) + R1’’ R2’’’= R4’’’ * (49/8) + R2’’ R3’’’= R3’’ – R4’’’ R4’’’= R4’’ * (8/49) FO’’’= R4’’’ * 2850 + FO’’ Obteniendo los valores para XA y XB XA = 320/7 XB = 120 Max z: 825 XA + 600 XB Max z = 109714
¿Se cumplen los supuestos de la programación lineal?
3.2 Ejercicios Se utiliza para restricciones ≥ o =.
resolver
Algoritmo Simplex Dos Fases las
Como regla general podemos decir que las variables que se utilizan consideran los siguientes escenarios en las restricciones: ≤ → H ≥ → - E + A = → A • • •
Sean: H : variable de holgura E : variable de exceso A : variable auxiliar
Fase I: se considera un problema auxiliar al que se le agregan variables auxiliares a las restricciones del problema de manera de una solución básica factible. Luego se resuelve por Simplex un problema que considera como F.O la suma de las variables auxiliares. Si el valor óptimo es cero, pasar a la Fase II, en caso contrario, no existe solución factible.
• • •
Si el valor óptimo es cero, seguir a la Fase II, en caso contrario, no existe solución factible.
Fase II: Resolver por Simplex el problema original a partir de la solución básica factible inicial hallada en la Fase I
Algoritmo Simplex Ejemplo N°6 (Dos Fases) Cómo se configura el primer tableau? Max 2X1 + X2 S.a 10X1 + 10X2 ≤ 9 10X1 + 5X2 ≥ 1 X1; X2 ≥ 0
Min A 10X1 + 10X2 + H1 = 9 10X1 + 5X2 – E + A = 1 X1; X2; H1; E; A ≥ 0
≤ → H
•
≥ → -
E+A = → A
•
•
Algoritmo Simplex Ejemplo N°6 (Dos Fases) Cómo se configura el primer tableau? Max 2X1 + X2 S.a 10X1 + 10X2 ≤ 9 10X1 + 5X2 ≥ 1 X1; X2 ≥ 0
Min A 10X1 + 10X2 + H1 = 9 10X1 + 5X2 – E + A = 1 X1; X2; H1; E; A ≥ 0
Se debe agregar H1 como variable de holgura de la restricción 1, E como variable de exceso de la restricción 2 y A variable auxiliar para poder comenzar la Fase 1.
Luego, se debe hacer 0 el costo reducido de A, obteniendo la siguiente tabla inicial para hacer el uso de Simplex.
≤ → H
•
≥ → -
E+A = → A
•
•
X1
X2
H1
E
A
10
10
1
0
0
9
10
5
0
-1
1
1
0
0
0
0
1
0
X1
X2
H1
E
A
10
10
1
0
0
9
10
5
0
-1
1
1
-10
-5
0
1
0
-1
Algoritmo Simplex Ejemplo N°6 (Dos Fases) Se escoge X1 como variable que entra a la base al tener el costo reducido más negativo. Posteriormente, mediante el criterio del mínimo cuociente se selecciona la variable que sale de la base: Min {9/10; 1/10} = 1/10, A sale de la base:
X1
X2
H1
E
A
10
10
1
0
0
9
10
5
0
-1
1
1
-10
-5
0
1
0
-1
X1
X2
H1
E
A
0
5
1
1
-1
1
1/2
0
-1/10
1/10
0
0
0
0
1
8
1/10 0
Se obtiene la solución óptima de la Fase I, con valor óptimo cero. Luego iniciamos la Fase II del método tomando X1 y H1 como variables básicas iniciales.
Algoritmo Simplex Ejemplo N°6 (Dos Fases) FASE 2: Resolver por Simplex el problema original a partir de la solución básica factible inicial hallada en la Fase I. X1
X2
H1
E
0
5
1
1
1
1/2
0
-1/10
-2
-1
0
0
8
1/10 0
Hacemos cero los costos reducidos de las variables básicas: X1
X2
H1
E
0
5
1
1
1
1/2
0
-1/10
0
0
0
-1/5
8
1/10 1/5
Algoritmo Simplex Ejemplo N°6 (Dos Fases) E entra a la base. Por el criterio del mínimo cuociente, el pivote se encuentra en la fila 1, por tanto H1 sale de la base: X1
X2
X3
X4
0
5
1
1
1
1
1/10
0
0
1
1/5
0
Donde la solución óptima es: X1=9/10 X2=0 Con valor óptimo V(P) = 9/5.
8
9/10 9/5