Programación Lineal Entera
Un modelo de programación lineal que
no acepta soluciones fraccionales.
En este caso, la formulación es similar a
la de un problema general de
programación lineal, pero con la
restricción de que:
Pueden ser de diferentes tipos:
Soluciones enteras
Soluciones binarias (0, 1)
Soluciones mixtas
Solución
Relajación: suponer que el modelo no tiene
restricciones de integralidad en la solución en
la solución
En este caso la solución general contendrá todas
las posibles soluciones enteras
Es la mejor solución que se pueda obtener y
cualquier solución entera no podrá ser mejor que
ésta
La solución puede ser una aproximación por
redondeo
Puede que no sea factible y seguramente no será
Rama y Acotamiento
Introducido originalmente por Land y Doig en
1960
Consiste en un proceso de búsqueda secuencial
Enumera implícitamente la mayoría de las posibles
soluciones del problema que se está resolviendo
Divide el conjunto de posible soluciones en
subconjuntos
Para cada subconjunto, tanto los límites de la
función objetivo como el criterio de factibilidad se
utilizan como criterios para limitar la solución
Algoritmo general
1. Encontrar un límite máximo de la función objetivo,
dado por la solución óptima relajada.
2. Definir dos subconjuntos tales que
d + 1 ≤ x
k≤ d
donde d es una constante definida por el entero
menor de la solución para x
k3. Para cada solución defina una nueva solución óptima.
Un subconjunto podrá ser eliminado del proceso si:
- Su solución no es factible - Existe una mejor solución
4. El proceso se detiene cuando se encuentra una
Ejemplo
Se tiene el siguiente problema
Max.: x = 4x
1
+ 11x
2
Sujeto a:
2x
1
– x
2
≤ 4
2x
1
+ 5x
2
≤ 16
- x
1
+ 2x
2
≤ 4
x
1
y x
2
≥ 0 y enteras
x1 ≤ 1 X1 ≥ 2
El problema de asignación
Supóngase que se tienen n centros de trabajo
y n posibles asignaciones, cada una de las
cuales puede ser realizada por cualquiera de
los n centros de trabajo.
Supóngase además que existe un costo
asociado Ci,j que resulta de asignar un
trabajo i a un centro de trabajo j.
En este caso, la asignación de cada trabajo se
realizará solamente a un solo centro de tal
manera que el costo total de la asignación de
los trabajos sea mínimo.
cosa
otra
0
j
centro
a
asigna
se
i
trabajo
si
1
X
n
...,
2,
1,
i
1
X
n
...,
2,
1,
j
1
X
:
.
a
.
s
X
C
Z
.
min
j , i j j i, i j , i i j j , i j , iFormulación general
Solución
Método SIMPLEX o programación
entera binaria
Método fila columna – o método
Algoritmo del Método Húngaro
1. Reducción de filas: Restar el costo más bajo de cada fila a cada uno
de los elementos de dicha fila.
2. Reducción de columnas: Restar el costo más bajo de cada columna a
cada uno de los elementos de dicha columna. La matriz resultante se conoce como matriz reducida de costos.
3. Cubrir ceros: Cubrir todos los ceros de la matriz reducida de costos
con el mínimo número de líneas horizontales y verticales. Si el número de líneas es igual a n, se tiene una solución óptima, la que resulta en función a los ceros de la matriz. En caso contrario, seguir con el paso 4.
4. Crear nuevos ceros: De la matriz cubierta generada en el paso
anterior, encuentre el elemento más pequeño no cubierto. Restar dicho elemento a todos los elementos no cubierto de la matriz y sumarlo a todos los elementos en las intersecciones. Los demás elementos permanecen sin cambio. Regresar al paso 3.
Ejemplo
La administración de cierto restaurante ha
decidido dirigir diferentes clientes a diferentes
áreas de servicio. La administración sabe que
las diferentes combinaciones de
cliente/mesero hacen variar los costos de
servicio a causa de las características del
cliente y las habilidades de los diferentes
meseros. A continuación se tiene la
Costo por mesero
Costo de Meseros
Cliente
1
2
3
1
12.90
11.90
12.10
2
15.30
15.50
14.30
3
11.90
13.90
13.00
El Problema de Transporte
Busca optimizar la satisfacción de
demandas de destinos a través de
oferta de orígenes.
Se optimiza en base a:
Distancias
Tiempos
Costos
Formulación general
Optimizar
i
j
c
i,j
x
i,j
Sujeto a:
i
c
i,j
x
i,j
≤ O
i
fuentes i = 1, 2, …, n
j
c
i,j
x
i,j
≤ D
j
destinos j = 1, 2, …, m
Solución
Por medio de P. L. utilizando Simplex
Algoritmo de transporte
Tableau inicial
Solución Inicial
Prueba de optimalidad
Redistribución de envíos
Ejemplo
Fuente
Cantidad
Chiriquí
2500
Azuero
1250
Darién
850
Coclé
1000
Destino
Cantidad
Panamá
1980
Colón
750
Puerto
Balboa
1000
Puerto
Cristóbal
1870
Ejemplo - Costo
De/A:
Panamá Colón
Balboa
Cristóbal
Chiriquí
50
55
50
55
Azuero
40
48
39
42
Darién
15
25
18
26
Formulación Estándar
Minimizar 50x1,1 + 55x1,2 + … + 25x4,3 + 29x4,4 Sujeto a: x1,1 + x1,2 + … + x1,4 ≤ 2500 . . . . . . . . . x4,1 + x4,2 + … + x4,4 ≤ 1000 x1,1 + x2,1 + … + x4,1 ≤ 1980 . . . . . . . . . x + x + … + x ≤ 1870Fuentes
Destinos
Ejemplo Algoritmo de Transporte:
Tableau Inicial
Ejemplo Algoritmo de Transporte:
Red
El problema de trasbordo
Normalmente los bienes no son
transportados directamente de su
fuente a destino final
Se utilizan puntos intermedios
(depósitos o bodegas)
El modelo puede aproximarse a un
problema de flujo mínimo con nodos
intermedios
Ejemplo
Para el caso anterior del ejemplo de
transporte, supóngase que se añade un
centro de trasbordo, con una capacidad
de almacenar hasta 3,500 unidades.
Supóngase además que el costo de
estibar, consolidar y embarcar el producto
para ser enviado es de B/.5.00 por
tonelada. Los otros costos asociados se
presentan a continuación:
Ejemplo - capacidades
Fuente
Cantidad
Chiriquí
2500
Azuero
1250
Darién
850
Coclé
1000
Destino
Cantidad
Panamá
1980
Colón
750
Puerto Balboa
1000
Puerto
Cristóbal
1870
Depósito Cantidad
Entradas
3500
Salidas
3500
Ejemplo - Costo
De/A: Panamá Colón Balboa Cristóbal Entrada Salida
Chiriquí 50 55 50 55 20 Azuero 40 48 39 42 18 Darién 15 25 18 26 30 Coclé 22 28 25 29 10 Entrada 5 Salida 15 20 15 20
Chiriquí Azuero Darién Coclé Entrada Salida Panamá Colón Balboa Cristóbal
Formulación estándar
Minimizar 50x1,1 + 55x1,2 + … + 25x4,3 + 29x4,4+ 20x1,5+ 18x2,5+… +10x4,5 + 5x5,6 + 15x6,1 + 20x6,2 + … + 20x6,5 Sujeto a: x1,1 + x1,2 + … + x1,4 + x1, 5≥ 2500 . . . . . . . . . . . . x4,1 + x4,2 + … + x4,4 + + x4, 5 ≥ 1000 X1,5 + x2,5 + x3,5 + x4,5 ≥ 3500 x5,,6 ≤ 3500 X1,5 + x2,5 + x3,5 + x4,5 = X6,1 + x6,2 + x6,3 + x6,4 Equilibrio de flujo x1,1 + x2,1 + … + x4,1 ≥ 1980 . . . . . . . . . . . . x1,4 + x2,4 + … + x4,4 ≥ 1870Fuentes
Destinos
Restricción de flujoFormulación del problema de flujo
mínimo:
Considere una red dirigida y conectada,
donde esta incluye al menos un nodo
de oferta y otro de demanda:
La variable de decisión será:
Formulación General:
Incluye la siguiente información:
cij: es el costo de enviar una unidad a través del arco i j
uij: les la capacidad del arco i j
bi: es el flujo generado en el nodo i
El valor de bi depende de la naturaleza del nodo :
bi > 0, si i es un nodo de oferta
bi < 0, si i es un nodo de demanda
bi = 0, si i es un nodo de trasbordo
El objetivo es minimizar el costo total de enviar el suministro
disponible a través de la red a fin de satisfacer una demanda dada.
Una condición necesaria para la factibilidad de estos problemas es que:
En otras palabras, el flujo total generado en los nodos de suministro debe ser igual a la demanda total