El documento describe el problema de programación entera y dos métodos para resolverlo: redondeo y ramificar y acotar. El problema maximiza una función objetivo sujeta a restricciones, requiriendo que las variables sean valores enteros. El método de ramificar y acotar divide el problema en subproblemas al imponer nuevas restricciones sobre las variables no enteras.
1. Investigación de Operaciones 5. Programación Entera
Realizado por: Br. Osmaly Flores Bello -106-
TEMA 5
PROGRAMACIÓN ENTERA
1.- ASPECTOS BÁSICOS
En muchos problemas prácticos, las variables de decisión alcanzan un sentido
solo si adquieren valores enteros:
- Asignación de hombres o máquinas a actividades.
- Determinación de necesidades de mano de obra.
Un problema de Programación Entera consisten en un modelo matemático que
tiene una función objetivo lineal y restricciones lineales, pero que requiere que
algunas variables (o todas) estén restringidas a tener valores enteros. Puede
hablarse entonces de P.L.E. Pura o Mixta.
Aunque se han creado varios algoritmos para resolver problemas de P.L.E.,
ninguno de ellos es totalmente confiable desde el punto de vista de cálculo,
sobre todo cuando el número de variables se incrementa.
A diferencia de la P.L. donde problemas con miles de restricciones y miles de
variables pueden resolverse en un tiempo razonable, la experiencia de cálculo
en P.L.E. permanece imprecisa.
Esta dificultad de cálculo presente en la P.L.E. ha motivado la búsqueda de
otros medios para resolver este tipo de problemas.
El más utilizado es resolver el problema como un modelo de P.L. continuo (sin
restricciones de valores enteros) y luego “redondear” la solución óptima a los
valores enteros factibles mas cercanos.
2. Investigación de Operaciones 5. Programación Entera
Realizado por: Br. Osmaly Flores Bello -107-
Este método no garantiza una Solución Óptima Entera y hasta podría generar
soluciones infactibles.
Las técnicas utilizadas para resolver este tipo de problemas son:
- El Algoritmo de Ramificar y Acotar.
- El Algoritmo de Planos de Corte.
- El Algoritmo Fraccional.
- El Algoritmo mixto.
2.- PROBLEMA RESUELTO
Maximizar : Z = 2X + 3Y
S.A : 5X + 7Y 35
4X + 9Y 36
X 0
Y 0
2.1.- MÉTODO DE REDONDEO
Se resuelve el modelo como si no existiera la condición de entero, por medio del
Método Simplex o el Método Gráfico.
Para este ejercicio, como existen 2 variables, se puede resolver el problema por
medio del Método Gráfico.
5X + 7Y = 35
4X + 9Y = 36
X = 0
Y = 0
R1 = (0,0) = 0 35 si satisface
R2 = (0,0) = 0 36 si satisface
3. Investigación de Operaciones 5. Programación Entera
Realizado por: Br. Osmaly Flores Bello -107-
Puntos extremos
X Y
-------- -------
1 0.0 0.0
2 0.0 4.0
3 3.7 2.3
4 7.0 0.0
Solución Óptima
X = 3.7
Y = 2.3
Z = 14.4
Conociendo el resultado, se construye la siguiente tabla, para empezar a tantear la
posible solución, manteniendo un rango por encima y uno por debajo de la los puntos
obtenidos del método gráfico.:
SO
4. Investigación de Operaciones 5. Programación Entera
Realizado por: Br. Osmaly Flores Bello -108-
X Y Z R1 R2
4 3 41 43 INFACTIBLE
4 2 14 34 34 FACTIBLE
3 3 36 / INFACTIBLE
3 2 12 29 30 FACTIBLE
Según el cuadro se puede escoger como Solución Óptima cuando X = 4, Y = 2 y Z =
14 ya que el problema es de maximización.
2.2.- MÉTODO DE RAMIFICAR Y ACOTAR
En este algoritmo se procede a resolver el modelo utilizando el Método Simplex,
tantas veces sea necesario. Consiste en seleccionar una de las variables no enteras y
aproximarlas a un número entero por encima y por debajo y realizar nuevamente el
método simples con esas dos restricciones nuevas. Se repiten estos pasos hasta
encontrar las soluciones enteras de las variables.
Para resolver el Método Simplex se puede emplear el cualquier Programa
Computarizado que nos permita facilitar los cálculos. Para la solución de este problema
se utilizó el Programa Dennis and Dennis, del cual se obtuvieron los siguientes
resultados:
TABLEAU NUMBER 1
C(j) ¦ 2 3 0 0
BASIC VAR ¦ X Y S1 S2 RHS
------------------------------------------------------------
0 S1 ¦ 5 7 1 0 35
0 S2 ¦ 4 9 0 1 36
------------------------------------------------------------
Z ¦ 0 0 0 0 0
C-Z ¦ 2 3 0 0
5. Investigación de Operaciones 5. Programación Entera
Realizado por: Br. Osmaly Flores Bello -109-
TABLEAU NUMBER 2
C(j) ¦ 2 3 0 0
BASIC VAR ¦ X Y S1 S2 RHS
------------------------------------------------------------
0 S1 ¦ 1.889 0 1 -.778 7
3 Y ¦ .444 1 0 .111 4
------------------------------------------------------------
Z ¦ 1.333 3 0 .333 12
C-Z ¦ .667 0 0 -.333
TABLEAU NUMBER 3
C(j) ¦ 2 3 0 0
BASIC VAR ¦ X Y S1 S2 RHS
------------------------------------------------------------
2 X ¦ 1 0 .529 -.412 3.706
3 Y ¦ 0 1 -.235 .294 2.353
-----------------------------------------------------------
Z ¦ 2 3 .353 .059 14.471
C-Z ¦ 0 0 -.353 -.059
AFTER 2 ITERATIONS,
THIS SOLUTION IS OPTIMAL:
VARIABLE QUANTITY REDUCED COST
----------- ----------- -----------------
X 3.706 0
Y 2.353 0
OPTIMAL Z = 14.471
Con estos resultados se puede ramificar bien sea por X o por Y. Si es por X, las
dos nuevas restricciones serían X 3 ; X 4. si es por Y, las dos nuevas restricciones
serían Y 2 ; Y 3.
6. Investigación de Operaciones 5. Programación Entera
Realizado por: Br. Osmaly Flores Bello -110-
ÁRBOL DE SOLUCIONES
X = 3.706
Y = 2.353
Z = 14.471
X = 3
Y = 2.667
Z = 14
X = 4
Y = 2.143
Z = 14.429
INFACTIBLE
X = 4.2
Y = 2
Z = 14.4
X = 5
Y = 1.429
Z = 14.286
X = 4
Y = 2
Z = 14
INFACTIBLE
X = 5.6
Y = 1
Z = 14.2
X = 6
Y = 0.714
Z = 14.143
X = 5
Y = 1
Z = 13
INFACTIBLE
X = 7
Y = 0
Z = 14
X 3 X 4
Y 2 Y 3
X 4 X 5
Y 1 Y 2
Y 0 Y 1
X 5 X 6
7. Investigación de Operaciones 5. Programación Entera
Realizado por: Br. Osmaly Flores Bello -111-
ÁRBOL DE MODELOS
MAX: Z = 2X + 3Y
SUJETO A:
5X + 7Y 35
4X + 9Y 36
X;Y 0
MAX: Z = 2X + 3Y
SUJETO A:
5X + 7Y 35
4X + 9Y 36
X 3
X;Y 0
MAX: Z = 2X + 3Y
SUJETO A:
5X + 7Y 35
4X + 9Y 36
X 4
X;Y 0
MAX: Z = 2X + 3Y
SUJETO A:
5X + 7Y 35
4X + 9Y 36
X 4
Y 2
X;Y 0
MAX: Z = 2X + 3Y
SUJETO A:
5X + 7Y 35
4X + 9Y 36
X 4
Y 3
X;Y 0
MAX: Z = 2X + 3Y
SUJETO A:
5X + 7Y 35
4X + 9Y 36
X = 4
Y 2
X;Y 0
MAX: Z = 2X + 3Y
SUJETO A:
5X + 7Y 35
4X + 9Y 36
X 5
Y 2
X;Y 0
MAX: Z = 2X + 3Y
SUJETO A:
5X + 7Y 35
4X + 9Y 36
X 5
Y 1
X;Y 0
MAX: Z = 2X + 3Y
SUJETO A:
5X + 7Y 35
4X + 9Y 36
X 5
Y = 2
X;Y 0
MAX: Z = 2X + 3Y
SUJETO A:
5X + 7Y 35
4X + 9Y 36
X = 5
Y 1
X;Y 0
MAX: Z = 2X + 3Y
SUJETO A:
5X + 7Y 35
4X + 9Y 36
X 6
Y 1
X;Y 0
MAX: Z = 2X + 3Y
SUJETO A:
5X + 7Y 35
4X + 9Y 36
X 6
Y 0
X;Y 0
MAX: Z = 2X + 3Y
SUJETO A:
5X + 7Y 35
4X + 9Y 36
X 6
Y = 1
X;Y 0