You are on page 1of 5

METODO DE GOMORY

En matemtica, y ms en concreto en optimizacin, el mtodo de los planos de corte es un


procedimiento para encontrar soluciones enteras de un problema lineal. Fue introducido por Gomory.
Funciona resolviendo un programa lineal no entero, despus comprobando si
la optimizacin encontrada es tambin una solucin entera. Si no es as, es aadida una nueva
restriccin que corta la solucin no entera pero no corta ningn otro punto de la regin factible. Esto
se repite hasta que se encuentra la solucin entera ptima .
Interpretacin geomtrica, una restriccin es equivalente a un hiperplano, permitiendo solo soluciones
en uno de los lados del plano.
- METODO FRACCIONAL DE GOMORY :
Este mtodo solo resuelve modelos enteros puros y para resolverlo se siguen los siguientes pasos :
1.- Resolver el modelo donde las variables sean continuas.
2.- Si el resultado es entero, entonces ya se tiene la solucin optima, si no seguir con el mtodo.
3.- Seleccionar el max ( XBi [XBi] ) incluyendo al renglon Zj - Cj , fraccionario y generar un nuevo
corte o nueva restriccin:
(aij [aij])xj (xBi [xBi])
aadir este corte como una nueva restriccin y resolver utilizando el mtodo Dual Simplex; ir al paso
2.
Nota: Z es entero si y solo si los coeficientes de la funcin objetivo son enteros y asi utilizar al renglon
Zj - Cj en la tabla simplex.
- MTODO PURO DE GOMORY:

El algoritmo puro de Gomory es una variacin del mtodo fraccional de Gomory, al igual que este
mtodo la matriz A debe ser entera. Adems debe cumplir las condiciones para aplicar el mtodo dual
simplex (optimalidad inicial y al menos un negativo en la solucin):
1) Condicin de optimalidad
2) Valor de variable bsica < 0.
Definicin: Un vector es lexicogrficamente positivo si el primer componente diferente de cero es
positivo. Cuando un vector X es lexicogrficamente positivo se escribe X}0.
Ejemplo:
X= (0. 3, -2, 9) X = 0
X = (0,0,-3,12) X no es 0
Definicin: un vector X es lexicogrficamente mayor que otro vector Y si X - Y =0
Ejemplo:
X = (0, 3, -2)
Y = (1, 2, 2)
X Y = (-1, 1, -4)
X no es lexicogrficamente mayor que Y
X - Y = 0, por tanto Y es lexicogrficamente mayor que X.
Y X = (1, -1, 4)

Los pasos para resolver el mtodo son:


1) Elige la XBi ms negativa. Se designa a esa fila con r. Si el mtodo dual simplex genera un pivote -1,

aplicar el mtodo dual simplex. Si no continuar con el mtodo.


2) Elige aquella columna no-bsica con arj<0 que sea lexicogrficamente la menor. Se designa una
columna por k. Al primer elemento distinto de cero de dicha columna se le designa por apk(>0) siendo
su fila correspondiente la p.
3) Para la columna arj<0 se calcula el ndice uij = [akj/apk] si es que apj es el primer elemento diferente
de cero en la columna j. De otra manera uj=.
4) Se calcula =max [ !arj! / uj ]para arj<0 y uj.
5) Se deriva el corte:
6) Se anexa este a la tabla junto con su variable de holgura correspondiente y se aplica el mtodo dual
simplex sobre el entero. Si el resultado es XB0 entonces se tiene la solucin ptima, si no ir al paso 1.

PROGRAMACIN LINEAL ENTERA:

Los avances tericos en la resolucin de programacin lineal entera han sido importantes, si bien no se
ha visto correspondido en la eficacia del cmputo. Esto es debido a los errores de redondeo cometidos
en las sucesivas iteraciones y acumulados en el cmputo que realizan los ordenadores.
Un problema de programacin lineal entera es un problema de programacin lineal con la restriccin
adicional de que algunas de las variables deben tomar valores enteros. Cuando todas las variables deben
tomar valores enteros decimos que se trata de un problema de programacin lineal entera puro.
Para la solucin de los mismos nicamente se trataran los dos mtodos, que consideramos ms
representativos y adems pioneros en la resolucin de problemas enteros, como son los mtodos de corte
(algoritmo fraccional de Gomory) y el de ramificacin y acotacin (Branch and Bound).
La Programacin Lineal estndar asume que las variables de decisin son
continuas. Sin embargo, en muchas aplicaciones, los valores fraccionarios pueden
no tener sentido, por ejemplo 9/2 trabajadores. Los problemas de programacin
lineal con enteros son ms difciles de resolver que los de programacin lineal
continua. Por qu no resolver todos los problemas como problemas de
programacin lineal estndar y redondear las respuestas a los enteros ms
cercanos? Desafortunadamente, esto genera dos problemas:
La solucin redondeada puede no ser factible.
El redondeo puede no dar una solucin ptima.
Por lo tanto, el redondeo de resultados de programacin lineal puede
proporcionar respuestas razonables, pero, para garantizar soluciones ptimas,
debemos aplicar programacin lineal con enteros.
Max (Min) z = c1 x1 + c2 x2 + + cn xn
denominada funcin objetivo.
La funcin objetivo se encuentra sujeta a una serie de restricciones:

Resolvemos como un problema de Programacin Lineal. Si sus soluciones son


enteras, sta es la solucin para el problema de programacin lineal entera.
En cualquier problema se verifica que la solucin ptima:
sta relacin se cumple siempre porque cualquier solucin factible para un
problema de PLE es tambin una solucin factible para la su relajacin lineal (PL).
El problema de programacin lineal que se obtiene al omitir
todas las restricciones enteras variables 0-1 se llama relajacin de programacin lineal para la
programacin entera.
Criterio de optimalidad en un problema de PLE: Una
solucin entera factible xF es ptima para el problema de PLE si es solucin ptima de una relajacin
lineal. En tal caso se cumple que:
Zop (PL) = Zop (PLE)=ZF
A menudo, cuando tenemos que plantear un problema de programacin matemtica, se nos presentan
enunciados en los que figura la condicin:

Para implementar esta condicin, se toma una variable binaria, 0-1, y un


valor M suficientemente grande para asegurar el cumplimiento de las restricciones

. adems de las otras restricciones del problema.


|

Podemos ver que si y = 0, la restriccin f(x1, x2,, xn) 0, se cumple. La


restriccin g(x1, x2,, xn)M puede cumplirse, pero no lo sabemos.
Para y= 1, la restriccin f(x1, x2,, xn) M puede cumplirse y g(x1, x2,, xn)
0 se cumple.
ii) si entonces(condicional)
En este tipo de restricciones se desea estar seguro de que se satisface la
restriccin g(x1, x2,, xn) 0 si se satisface la restriccin f(x1, x2,, xn) > 0.
Para implementar el caso anterior, tomando un valor M suficientemente grande, introducimos una
variable binaria, 0-1, y cambiamos los signos en las
desigualdades, dando como resultado la formulacin siguiente:

PROGRAMACIN LINEAL BINARIA :


Existen numerosas aplicaciones de programacin entera en la que el problema incluye cierto nmero
de decisiones s o no interrelacionadas. En situaciones de este tipo, las nicas dos elecciones posibles
son s c no. Por ejemplo, Debe emprenderse un determinado proyecto?, Debe hacerse cierta
inversin de capital? Debe ubicarse la planta de produccin en un determinado lugar? Debido a que
estos problemas involucran slo dos posibilidades, este tipo de decisiones se pueden representar
mediante variables de decisin restringida a slo dos valores. 0 y 1.
Las variables de este tipo se llaman binaria (o variables 0-1). En consecuencia, algunas veces se hace
referencia a los problemas de programacin entera que contienen slo variables binarias como
problemas de programacin entera binaria (PEB o PB) o problemas 0-1 de programacin entera.
EJEMPLO:
Problema Inclusin Costos Fijos: Usted ha sido designado por el gerente de su empresa para decidir
cmo distribuir su trfico telefnico en el prximo mes, seleccionando entre 3 proveedores posibles y
asignando la cantidad de trfico (minutos) que desee en cada caso, es decir, puede repartir el trfico en
1, 2 o 3 proveedores a su antojo y su decisin slo depender de los costos de cada alternativa.
El proveedor 1 cobra un cargo fijo mensual de US$50 y el costo por minuto a red fija es de US$0,02 y
a celular de US$0,12. El proveedor 2 tiene un cargo fijo mensual de US$60, con un costo por minuto
de US$0,015 y US$0,15 a red fija y celular respectivamente. Finalmente el proveedor 3 tiene un cargo
fijo mensual de US$40 con un costo por minuto a red fija de US$0,03 y a celular de US$0,14. Si usted
llama por uno de estos proveedores (aunque hable slo un minuto) deber pagar el cargo fijo. Asuma
que la cantidad de minutos que la empresa consume mensualmente es de 30.000 para red fija y 18.000
para celular. Formule y resuelva un modelo de Programacin Entera que permita decidir cmo
distribuir el trfico telefnico mensual de la forma ms econmica para la empresa.

Dada la Solucin por cualquier mtodo de Programacin Lineal, tenemos:


X1= 30.000, X2, X3 = 0, Y1= 18.000, Y2, Y3 = 0, Z1=1, Z2, Z3 = 0.
Con una Funcin objetivo de Minimizar = $276.050
Lo cual significa que Se debe hacer llamadas solamente con el proveedor 1.

You might also like