Sei sulla pagina 1di 6

TECNOLÓGICO NACIONAL DE MÉXICO

Instituto Tecnológico de la Laguna

PROGRAMACIÓN ENTERA

PRESENTA:
ROLANDO MARTÍNEZ AGUILAR
NÚMERO DE CONTROL: M1713043

PROFESOR:
DRA. ALEJANDRA OLVERA WILLES

TORREÓN, COAHUILA, MARZO 2018


Un modelo de programación entera es un modelo que tiene restricciones y una función objetivo
idénticas a las formuladas por la PL. La única diferencia es que una o más de las variables de
decisión tienen que tomar un valor entero en la solución final. Existen tres tipos de problemas
de programación entera:

1. Los problemas de programación entera pura son casos donde se requiere que todas las
variables tengan valores enteros.
2. Los problemas de programación entera mixta son casos en los cuales se requiere que algunas
variables de decisión, aunque no todas, tengan valores enteros.
3. Los problemas de programación entera cero-uno son casos especiales donde todas las
variables de decisión deben tener valores de solución enteros de 0 o 1.

La solución de un problema de programación entera es mucho más difícil de resolver que un


problema de PL. El tiempo de solución requerido para resolver algunos de ellos suele ser
extenso aun con la computadora más veloz.

Un programa lineal sólo con enteros, como su nombre lo indica, se trata de un modelo en el
cual se requiere que todas las variables de decisión tengan valores enteros. Por ejemplo
𝑀𝑖𝑛 6𝑥1 + 5𝑥2 + 4𝑥3
𝑠. 𝑎. 108𝑥1 + 92𝑥2 + 58𝑥3 ≥ 576
7𝑥1 + 18𝑥2 + 22𝑥3 ≥ 83
𝑥1 , 𝑥2 , 𝑥3 ≥ 0 𝑦 𝑒𝑛𝑡𝑒𝑟𝑜𝑠

es un modelo de ese tipo. Sin las restricciones adicionales de que x1, x2, x3 sean enteros (es
decir, las condiciones de integralidad), se trataría de un modelo de PL.

Un modelo donde solamente algunas de las variables están restringidas a valores enteros y
otras que pueden asumir cualquier número no negativo (es decir, cualquier valor continuo) se
conoce como programa lineal con enteros mixtos (PLEM). Por ejemplo, supongamos que en
el modelo anterior sólo x1 y x2 tuvieran que ser variables enteras y que x3 no tuviera esa
restricción. En algunos modelos, las variables enteras están restringidas a los valores 0 o 1.
Esos modelos se llaman binarios o programas lineales con enteros 0–1. Estos modelos son
particularmente importantes porque las variables 0–1 pueden usarse para representar
decisiones sobre dicotomías (decisiones sí/no).3

Ejemplo 1. En una oficina se necesita para cada d´ıa de la semana el n´umero de


trabajadores/as a tiempo completo de la siguiente tabla:
Cada trabajador/a debe trabajar cinco días seguidos y descansar dos. El problema es determinar el
número de trabajadores/as que entran a trabajar cada día de la semana para garantizar el
funcionamiento de la oficina. El objetivo es hacer frente a las necesidades de la oficina contratando
un número mínimo de trabajadores/as.

Para plantear un modelo lineal definimos las variables de decisión xj : número de trabajadores/as
que entran a trabajar el día j = 1, . . ., 7. Para cada día de la semana se tiene una restricción que
garantiza que el número de trabajadores/as que están trabajando ese día satisfacen las necesidades
de la oficina. El modelo lineal es

Ejemplo 2. El problema de la mochila. Una mochila con capacidad de 12 kg se quiere llenar con
objetos de peso y valor fijado. En la siguiente tabla se da el peso y el valor de cada uno de los
cuatro objetos.

Se debe elegir que objetos se meten en la mochila para maximizar su valor. Para plantear un
modelo lineal se definen las siguientes variables de decisión.
El modelo lineal es

Un planteamiento similar se puede dar para los modelos tipo mochila con más restricciones, por
ejemplo, considerando el volumen de los objetos.

Ejemplo 3. En una región en la que hay 6 ciudades se quiere construir la cantidad mínima de
estaciones de manera que haya una estación a no más de 30 minutos de cada ciudad. El tiempo
para ir de una ciudad a otra se da en la siguiente tabla:

Variables de decisión:

El modelo lineal es

Cada restricción está asociada a una ciudad y asegura que dicha ciudad tiene una estación a no
más de 30 minutos. Por ejemplo, la primera restricción asegura que hay al menos una estación a
no más de 30 minutos de la ciudad 1.
MÉTODO PURO DE GOMORY

El algoritmo puro de Gomory es una variación del método fraccional de Gomory, al igual que
este método la matriz A debe ser entera. Además debe cumplir las condiciones para aplicar el
método dual simplex (optimalidad inicial y al menos un negativo en la solución):

Condición de optimalidad

Valor de variable básica < 0.

Definición: Un vector es lexicográficamente positivo si el primer componente diferente de cero


es positivo. Cuando un vector X es lexicográficamente positivo se escribe X}0.

Ejemplo:
X= (0. 3, -2, 9) X = 0
X = (0,0,-3,12) X no es 0
Definición: un vector X es lexicográficamente 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 lexicográficamente mayor que Y
X - Y = 0, por tanto Y es lexicográficamente mayor que X.
Y – X = (1, -1, 4)

Los pasos del método son:


1) Elige la XBi más negativa. Se designa a esa fila con r. Si el método dual simplex genera un
pivote -1, aplicar el método dual simplex. Si no continuar con el método.
2) Elige aquella columna no-básica con arj<0 que sea lexicográficamente 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 método
dual simplex sobre el entero. Si el resultado es XB≥0 entonces se tiene la solución óptima, si no
ir al paso 1.
1.

Potrebbero piacerti anche