Anda di halaman 1dari 10

INSTITUTO TECNOLÓGICO DE CHIHUAHUA

INSTITUTO TECNOLÓGICO DE CHIHUAHUA V.UNIDAD.PROGRAMACIÓN LINEAL ENTERA Materia: Investigación de operaciones. Maestra: Arturo Caballero Burgos. Alumnas:

V.UNIDAD.PROGRAMACIÓN LINEAL ENTERA

Materia: Investigación de operaciones. Maestra: Arturo Caballero Burgos. Alumnas:

Miriam Carrasco Fernández.

Teresa Yusalen Robledo Méndez.

Fecha de entrega: 10 de diciembre de 2013

ALGORITMO DE GOMORY O FRACCIONARIO

Es un método de programación lineal entera en el cual el requisito es que todos los coeficientes y la contante del segundo miembro de cada restricción deben ser enteros. Se logra multiplicando ambos lados de la restricción original por el mínimo común múltiplo.

Metodología del método 1. Resolver el problema primal, si la solución es entera, corresponde a la óptima

para el problema.

  • 2. Seleccionar las fracciones y escoger aquella que tenga la mayor parte fraccionaria tomando las ecuaciones completas.

  • 3. Se separan la parte entera, es decir, quedarse solamente con la parte fraccionaria tomando el mínimo común múltiplo.

  • 4. Se elige un renglón fuente. La variable z también es entera y la ecuación z puede elegir como renglón fuente.

  • 5. Se resuelve por medio del método simplex. Luego de encontrar una solución óptima para el primal; se define una nueva ecuación de restricción llama de corte fraccional y después se pasa a dual simplex, para quitarle la infactibilidad al sistema.

  • 6. Si la nueva solución después de realizar el dual-simplex es entera esta será la solución optima, de no ser así se vuelve a agregar un corte fraccional hasta obtener una solución entera.

Desventajas

Errores de redondeo pueden proporcionar la solución óptima entera equivocada.

El tiempo empleado para encontrar la solución optima es muy grande.

Ventajas

Sirve para resolver cualquier problema PLEB y PLEG.

Ejemplo

MAX Z= 8X 1 + 5X 2 Restricciones

1X 1 + 1X 2 ≤ 6

9X 1 + 5X 2 ≤ 45

X 1 , X 2 ≥ 0

Estandarización 1X 1 +

1X 2 +S 1

= 6

=0

 

9X 1 + 5X 2 Z - 8X 1 - 5X 2

+ S 2 =45

Se introduce a un tableado simplex.

0 Cj 8 5 0 0 CB VB b X1 X2 S1 S2 0 S1 6
0
Cj
8
5
0 0
CB
VB
b
X1
X2
S1
S2
0
S1
6
1
1
1
0
0
S2
45
9
5
0
1
0
Z
0
-8
-5
0
0
Variable que entra a la base: X1, Variable que sale de la base: S2
CB
VB
b
X1
X2
S1
S2
0
S1
1
0
4/9
1 -1/9
8
X1
5
1
5/9
0
1/9
0
Z
40
0
-5/9
0
8/9

Variable que entra a la base: X2, Variable que sale de la base: S1

CB VB b X1 X2 S1 S2 5 X2 9/4 0 1 9/4 -1/4 8 X1
CB
VB
b
X1
X2
S1
S2
5
X2
9/4
0
1
9/4
-1/4
8
X1
15/4
1
0
-5/4
1/4
0
Z
165/4
0
0
5/4
3/4
Solución Óptima Única para el problema primal
X 1 = 15/4
X 2 = 9/4
S 1 = 0
S 2 =0
Z= 165/4

Pero para el problema no nos sirve la respuesta, ya que las variables de decisión tienen valores fraccionarios.

1.-X 1 - 5/4 S 1 + 1/4 S 2 = 15/4 2.-(1 + 0) X 1 + (2 + 3/4) S 1 + (0 + 1/4) S 2 = (3 + 3/4) 3.-3/4 S 1 + 1/4 S 2 = 3/4 Nueva ecuación

4.-3/4 S 1 + 1/4S 2

 Variable que entra a la base: X2, Variable que sale de la base: S1 CB

3/4 Nueva restricción

5.- 3/4 S 1 1/4 S 2 + S 3 = 3/4 Ecuación a introducir al sistema

A continuación se aplica el dual simplex, con el objetivo de quitarle la infactibilidad al sistema.

CB VB b X1 X2 S1 S2 S3 5 X2 9/4 0 1 9/4 -1/4 0
CB
VB
b
X1
X2
S1
S2
S3
5
X2
9/4
0
1
9/4
-1/4
0
8
X1
15/4
1
2
-5/4
1/4
0
0
S3
-3/4
0
0
-3/4
-1/4
1
0 Z 165/4 0 0 5/4 3/4 0  Variable que se vuelve no básica: S3,
0
Z
165/4
0
0
5/4
3/4
0
Variable que se vuelve no básica: S3, Variable que se vuelve básica: S2
CB
VB
b
X1
X2
S1
S2
S3
5
X2
0
0
1
0
-1
3
8
X1
5
1
0
0
2/3
-5/3
0
S1
1
0
0
1
1/3
-4/3
0
Z
40 0
0
0
1/3
5/3

Solución optima del problema

 X1=5  X2=0  S1=0  S2=1  S3=0  Z=40
X1=5
X2=0
S1=0
S2=1
S3=0
Z=40

RAMIFICACIÓN Y ACOTAMIENTO

Como al resolver un modelo por método Simplex, casi siempre las soluciones son no enteras, se aproximan los valores no enteros de cada variable y se vuelve a resolver hasta encontrar una solución entera que satisfaga todas las condiciones.

VENTAJA: Sirve para todos los modelos PLEB y PLEG

DESVENTAJAS:

Tiempo: Toma tiempo resolver un solo modelo por método Simplex. Pero eso es solo en el mejor caso. En el peor caso no se puede determinar cuántos modelos se resuelven por método Simplex hasta llegar a una solución entera. Valor menor al óptimo: El valor que se obtiene por el método de ramificación y acotamiento casi siempre es menor al valor obtenido en el método Simplex para el caso no entero.

PRODECIMIENTO

1) Se tiene un modelo de programación lineal entera.

RAMIFICACIÓN Y ACOTAMIENTO Como al resolver un modelo por método Simplex, casi siempre las soluciones son

2) Escoja un criterio de selección del subproblema a resolver. Ese criterio será utilizado en toda la resolución por ramificación y acotamiento. Se tienen dos criterios:

  • a) Subproblema más reciente: Escoger siempre nodo correspondiente al último modelo resuelto.

  • b) Mejor cota: Escoger el nodo con el valor mayor de la cota. Si los dos nodos empatan en la cota, escoger uno arbitrariamente.

Para este caso, se escogió el criterio de mayor cota.

3)

Escoja un criterio de selección de la variable no entera a acotar. Se tienen 3 criterios:

  • a) Orden natural: Desde la primera hasta la última variable de decisión, encontrar la primera ocurrencia de valor no entero y acotarla.

  • b) Valor con la parte decimal más cercana a 0.5. Si 2 o más variables empatan en tener la parte decimal más cercana a 0.5, escoger una arbitrariamente.

  • c) Variable que participa en la mayor cantidad de restricciones. Si 2 o más variables empatan en participar en la mayor cantidad de restricciones, escoger una arbitrariamente.

Para este caso, se escogió el criterio de “Orden Natural”.

Se resuelve el modelo por método Simplex tratándolo como si fuera un modelo de programación lineal no entera. Para ello se deben agregar las restricciones Xi > 0 y Xi < 1 i. La solución obtenida al modelo resultante para el caso del modelo de arriba es: X1 = 5/6, X2=1, X3=0, X4=1, Z* = 16 ½.

4) Se crea un nodo enumerado con un cero y al lado de él se anota:

  • a) El último valor óptimo PLEB o PLEG encontrado. Como en este caso no se ha encontrado una solución PLEB al modelo de arriba, se coloca z* = ∞.

  • b) Los valores de la solución obtenida en el modelo. En este caso, se debe

anotar: x (5/ 6,1,0,1)

  • c) El valor de z obtenido con

x . En este caso es 16 ½

  • d) La cota, la cuál es el valor de z redondeado hacia abajo.

0
0
z* = ∞. x  (5/ 6,1,0,1)
z* = ∞.
x
 (5/ 6,1,0,1)

5)

Si la solución es entera, la resolución termina aquí. Si no, se toma la variable cuyo valor sea no entero. En este caso, X1 = 5/6. Luego se dibujan 2 arcos

desde

el

nodo 0.

El peso

de

uno

de

los arcos,

si

el modelo

es

PLEG es

la

restricción “Xj < TRUNC (Xj)” y el del otro arco es la restricción “Xj > ROUND

(Xj)”, donde Xj es la variable que contiene el valor no entero, TRUNC redondea

el valor

numérico de la

variable hacia abajo

y ROUND

redondea el valor

numérico hacia arriba. En el caso de los modelos PLEB, el peso de uno de los

arcos es “Xj = 0” y el del otro arco es “Xj = 1”.

d) La cota, la cuál es el valor de z redondeado hacia abajo. 0 z* =

6)

Luego se crean 2 nodos 1 y 2, cada uno al final de cada arco en el orden deseado. Para cada nodo se debe modificar el modelo del punto 2, agregándole a éste la restricción del arco correspondiente y resolviendo el modelo resultante. Usted puede empezar por el nodo que usted desee.

En este caso, se creó un nodo 2 al final del arco izquierdo y se modificó

En este caso, se creó un nodo 2 al final del arco izquierdo y se modificó el modelo relajado original, agregándole la restricción X1 = 1 y obteniéndose el resultado indicado al lado del nodo 2. El mismo paso se siguió con el nodo 1, agregándose la restricción X1 = 0.

7) Dependiendo del criterio utilizado será el valor de la solución definitiva a la resolución del modelo. En este caso, si se hubiera escogido el criterio del subproblema más reciente y se hubiese resuelto el modelo del nodo 1 al final, o si la solución al modelo del nodo 2 fuese imposible, la resolución terminaría aquí y se dejaría z* = 9. Pero como se escogió el criterio de mejor cota, estamos forzados a continuar desde el nodo 2. Nótese también que para el nodo 2, existen 2 valores de la solución que empatan en ser las más lejanas del entero. Si se hubiese escogido el criterio de la variable con el valor más lejano del entero, estaríamos forzados a escoger arbitrariamente cuál acotar. Si se hubiese escogido el criterio de la variable que participa en la mayor cantidad de restricciones, hubiésemos tenido que escoger a la variable X4, por estar en más restricciones que X2. Pero como se escogió el criterio del orden natural, tendremos que acotar la variable X2.

8) Volver al paso 4 y repetir (respetando la numeración y al padre de cada nodo) hasta encontrar la primera solución entera que satisfaga todos los criterios escogidos.

ADVERTENCIA: En el caso de PLEG, mientras se ramifica, se puede llegar a un ciclo dependiendo

ADVERTENCIA: En el caso de PLEG, mientras se ramifica, se puede llegar a un ciclo dependiendo de la situación. Estos ciclos no son infinitos a menos que quien esté resolviendo decida escoger nuevamente el mismo camino.