Está en la página 1de 9

18-5-2018 Investigación de

Operaciones I
4° Semestre

Presenta:
Ing. Eduardo Franco Austria
1 Investigación de Operaciones I 4° Semestre

Contenido
UNIDAD III. PROGRAMACIÓN ENTERA ........................................................................ 2

3.1. INTRODUCCIÓN Y CASOS DE APLICACIÓN. ..................................................... 2

Introducción .................................................................................................................... 2

Casos de aplicación ......................................................................................................... 2

3.2. DEFINICIÓN Y MODELOS DE PROGRAMACIÓN ENTERA Y BINARIA. ....... 2

Definición ........................................................................................................................ 2

Ejemplos básicos: ............................................................................................................ 3

Programación entera Binaria. .......................................................................................... 4

Ejemplos de Problema de Programación Binaria. ........................................................... 5

3.3. MÉTODO DE CORTE DE GOMORY ....................................................................... 6

3.4. MÉTODO DE BIFURCACIÓN Y ACOTACIÓN ..................................................... 6

Ejemplo: .......................................................................................................................... 7

REFERENCIAS.................................................................................................................. 8

Unidad III. Programación Entera


2 Investigación de Operaciones I 4° Semestre

UNIDAD III. PROGRAMACIÓN ENTERA


3.1. INTRODUCCIÓN Y CASOS DE APLICACIÓN.
Introducción
En esta unidad se presenta otra serie importante de modelos de programación lineal (PL) que
surgen cuando algunas de las suposiciones básicas de PL se vuelven más o menos restrictivas.
Por ejemplo, una suposición de la PL es que las variables de decisión pueden tomar valores
fraccionarios como X1=0.33, X2= 1.57 o bien X3 = 109.4. No obstante, un gran número de
problemas de negocios se resolverían tan solo si las variables tuvieran valores enteros.
Cuando una aerolínea decide cuantos Boeing 757 o 777 a comprar, no se puede colocar un
pedido por 5.38 aviones; se deben pedir 4, 5, 6, 7 o alguna otra cantidad entera (Render, Stair,
Hanna, 2012).

Casos de aplicación
A continuación se presentan algunos artículos que el alumno debe consultar para profundizar
sobre los casos de aplicación del tema que concierne a la unidad.

Hernández J., Hernández S., Goytia, Flores y Segura (2011). Herramienta matemática
para la construcción de horarios. Caso de estudio en el posgrado de una
institución tecnológica mexicana. Ingeniería Industrial; actualidad y nuevas
tendencias. Vol. 2, (7), pp. 51-70.

Arias O. J. y Reyes P. A. J. (2009). Programación Binaria aplicada a sistemas de rutas


de recolección de residuos. Gerencia Tecnológica Informativa. Vol. 8 (21),
pp. 35-42.

Bermúdez C. Y. (2011). Aplicaciones de programación lineal, entera y mixta.


Ingeniería Industrial; actualidad y nuevas tendencias. Vol. 2 (7), pp. 85-104.
Medina V. P. D., Cruz T. E. A. y Restrepo J. H. (2008). Programación de trabajos en
una maquina utilizando un modelo de programación lineal entera. Scientia et
Technica. Vol. XIV (40), pp. 111-116.

Ojeda V. R. (2015). Toma de decisiones en la asignación de personal a horarios de


trabajo empleando programación lineal: el caso de una empresa de atención
telefónica en México. Investigación Administrativa. Vol. 1 (15), pp. 41-54.

3.2. DEFINICIÓN Y MODELOS DE PROGRAMACIÓN ENTERA Y BINARIA.


Definición
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 (Render, Stair, Hanna, 2012):

Unidad III. Programación Entera


3 Investigación de Operaciones I 4° Semestre

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 o binarios 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.

Ejemplos básicos:
 Programación entera pura.
La compañía Harrison Electric, fabrica dos productos, candelabros y ventiladores de techo.
Tanto los candelabros como los ventiladores requieren de un proceso de producción de dos
pasos, que implica cableado y ensamble. Se requiere 2 horas para cablear cada candelabro y
3 para cablear un ventilador de techo. El ensamble final de los candelabros y los ventiladores
requiere de 6 y 5 horas, respectivamente. La capacidad de producción es tal que solamente
están disponibles 12 horas de cableado y 30 horas de ensamble. Si cada candelabro reditúa a
la empresa $7 y cada ventilador $6. ¿Qué cantidad de cada tipo de producto se debe fabricar?
Además, la empresa requiere que por cada candelabro realizado se manufacture la misma
cantidad de ventiladores.

 Programación entera mixta.


Una compañía vende dos productos químicos industriales. El primero, XYLINE, se debe
producir en sacos de 50 libras; en tanto que el segundo, HEXALL, se vende por libras a
granel en seco y, por consiguiente, se puede elaborar en cualquier cantidad, tanto el XYLINE
como el HEXALL se componen de tres ingredientes (A, B y C) como sigue:
Cantidad de
Cantidad por saco de 50 Cantidad por libra de
Ingrediente Ingredientes disponible
libras de XYLINE (lb) HEXALL (lb)
(lbs).
A 30 0.5 2000
B 18 0.4 800
C 2 0.1 200

La compañía vende sacos de 50 libras de xyline en $85 y cualquier cantidad de hexall a $1.5
cada libra. ¿Qué cantidad de cada tipo de producto se debe fabricar?

Unidad III. Programación Entera


4 Investigación de Operaciones I 4° Semestre

Programación entera Binaria.


Las variables binarias 𝑥𝑗 ∈ {0,1} pueden utilizarse para modelar situaciones en las que se
decide que si una acción se realiza 𝑥𝑗 = 1, o si no se realiza 𝑥𝑗 = 0. Un ejemplo típico de
utilización de este tipo de variables es el problema de inversiones, a continuación se muestra
una de sus versiones más simplificadas.
Un inversor dispone de una cantidad b para invertir en n posibilidades de
proyectos/inversiones. Cada posible acción tiene un costo 𝑎𝑗 unidades monetarias y un
beneficio posterior de 𝑐𝑗 unidades monetarias. El inversor debe decidir que inversiones
realizar con el objeto de maximizar el beneficio total.
Para este problema se definen variables 𝑥𝑗 que toman valor 1 cuando se invierte en el proyecto
j y valor 0 cuando no se invierte, con estas variables el problema queda en la siguiente forma:

Este problema puede modificarse incorporando el hecho de que las inversiones no sean de
un solo periodo de tiempo sino que deban realizarse durante varios periodos de tiempo, en
cada uno de los cuales se dispone de una cantidad 𝑏𝑖 unidades monetarias. También puede
modificarse mediante la incorporación de condiciones y restricciones en las inversiones, por
ejemplo:
 Si invierto en el proyecto i entonces debo invertir en el proyecto j. Dicha condición
responde a la ecuación
𝑥𝑖 ≤ 𝑥𝑗

Puede observarse que si 𝑥𝑖 = 1 entonces queda 1 ≤ 𝑥𝑗 con lo que 𝑥𝑗 debe tomar valor
1 y Si 𝑥𝑖 = 0 entonces queda 0 ≤ 𝑥𝑗 con lo que 𝑥𝑗 no está restringida y puede tomar
cualquier de los dos posibles valores 0 ó 1.
 Si invierto en el proyecto i y en el proyecto j. entonces debo invertir en el proyecto k.
dicha condición responde a la ecuación
𝑥𝑖 + 𝑥𝑗 ≤ 1 + 𝑥𝑘

En este caso si 𝑥𝑖 = 𝑥𝑗 = 1 la ecuación queda 2 ≤ 1 + 𝑥𝑘 con lo que 𝑥𝑘 está obligado


a tomar el valor 1 y cualquier otro caso obtenemos 0 ≤ 1 + 𝑥𝑘 0 1 ≤ 1 + 𝑥𝑘 que no
restringen a 𝑥𝑘 .
 Si invierto en el proyecto i o en el proyecto j. entonces debo invertir en el proyecto k.
dicha condición responde a la ecuación

𝑥𝑖 + 𝑥𝑗 ≤ 2𝑥𝑘

Unidad III. Programación Entera


5 Investigación de Operaciones I 4° Semestre

En este caso si 𝑥𝑖 = 1 𝑜 𝑥𝑗 = 1 la ecuación queda 1 ≤ 2𝑥𝑘 que obliga a que 𝑥𝑘 tome


valor (𝑥𝑘 ≥ 0.5 ⟹ 𝑥𝑘 = 1, si ambas toman valor 1 entonces queda 𝑥𝑘 ≥ 1 si ambas
toman valor 0 𝑥𝑘 queda libre pudiendo tomar valores 0 o 1.
Ejemplos de Problema de Programación Binaria.
1.- Una compañía está considerando tres posibles proyectos para mejorar su planta: un nuevo
convertidor catalítico, un nuevo software para controlar las operaciones y la expansión del
almacén. Los requerimientos de capital y las limitaciones del presupuesto en los dos años
siguientes impiden que la firma emprenda todos los proyectos en este momento. El valor
presente neto (el valor futuro del proyecto descontado al del momento actual) de cada uno de
los proyectos, los requerimientos de capital y los fondos disponibles para los dos años
siguientes se presentan en la tabla siguiente:
Proyecto Valor presente neto Año 1 Año 2
Convertidor catalítico $25000 $8000 $7000
Software $18000 $6000 $4000
Ampliación del $32000 $12000 $8000
almacén
Fondos disponibles $20000 $16000
a) Si la empresa desea maximizar el valor presente neto de los proyectos emprendidos,
en ¿qué proyectos deberá invertir la empresa?
b) Suponga que la compañía requiere elegir no más de los tres proyectos, sin importar
los fondos disponibles, ¿Cuál sería la nueva solución?
c) Suponga que la compañía decide que el nuevo convertidor catalítico podría
comprarse tan solo si también se adquiere el nuevo software ¿Cómo se plantearía esta
situación? ¿cuál sería la solución en este escenario?

2.- Una empresa manufacturera desea construir al menos una nueva planta, para lo cual está
considerando tres ciudades: San Luis Potosí, Hidalgo y Querétaro. Una vez que se haya(n)
construido la(s) planta(s), la compañía desea tener suficiente capacidad para producir
anualmente por lo menos 38 000 unidades. Los costos asociados con las ubicaciones se
muestran a continuación:
Sitio Costo fijo anual Costo variable por unidad Capacidad anual
San Luis Potosí $340 000 $32 21 000
Hidalgo $270 000 $33 20 000
Querétaro $290 000 $30 19 000
Como observación para realizar el modelo se tiene que el número de unidades producidas en
la planta de San Luis Potosí será 0 si la planta no se construye, y de no más de 21 000 si se
construye la planta.
a) ¿Qué planta(s) deberá construir la empresa? Resuelva por el método de ramificación
y acotación.

Unidad III. Programación Entera


6 Investigación de Operaciones I 4° Semestre

3.3. MÉTODO DE CORTE DE GOMORY


Este método fue creado por Gomory en 1958y consiste en resolver el problema entero por
programación lineal, y en caso de que la solución no sea entera se irá acortando la región
factible de solución por la inclusión de nuevas restricciones, lo que excluirá las soluciones
no enteras. En este método solo habrá acotamiento de la zona de solución en cada paso hasta
encontrar el óptimo (Izar, 2012; Bronso, 1992).
El procedimiento consiste en los siguientes pasos:

1. Se resuelve el problema planteado por programación lineal. Si la solución es entera,


será la óptima en caso contrario, se va al siguiente paso.
2. De la solución fraccionaria obtenida en el paso anterior, se toma de la tabla simplex
final la ecuación del renglón de la variable de decisión que haya resultado
fraccionaria, en caso de haber varias variables fraccionarias, se aconseja tomar
aquella que este más próxima al valor intermedio (0.5).
3. La ecuación obtenida en el paso anterior se descompone en dos partes: una entera y
la otra fraccionaria. Esta última será una nueva restricción, tomándose como
desigualdad del tipo mayor o igual que cero.
4. Se vuelve a solucionar el problema original, con la adición de la nueva restricción
obtenida en el paso anterior. Esto puede hacerse conforme a lo visto en la unidad de
“análisis de sensibilidad. Si la solución obtenida en este paso es entera, se habrá
resuelto el problema; si es fraccionaria, se repite el procedimiento a partir del paso
número 2.

Nota importante: Una de las desventajas del presente método, es que no garantiza la
convergencia a la solución óptima, aunque si resulta menos laborioso que el método de
Bifurcación y Acotación. Por ello el método más aceptado para problemas de programación
entera es el de bifurcación y acotación.

3.4. MÉTODO DE BIFURCACIÓN Y ACOTACIÓN


Izar (2012) menciona que este método se creó en 1960 por A. H. Land y A. Doig, siendo el
más popular para resolver los problemas de programación entera. Como su nombre lo indica,
consiste en partir del problema original, el cual se irá dividiendo en ramas, cada una de las
cuales va acortando la región factible de solución conservando las soluciones enteras hasta
que se encuentre la solución óptima.
Procedimiento:

1. Se resuelve el problema original de programación lineal, sin limitarse a una solución


entera. Si la solución obtenida es entera, ésta será la óptima para el problema, pero si
es fraccionaria en alguna (s) de las variables de decisión, se continua al paso siguiente.

Unidad III. Programación Entera


7 Investigación de Operaciones I 4° Semestre

2. De las variables de decisión que hayan resultado fraccionarias en el paso anterior, se


toma una de ellas, por decir Xi la cual quedará comprendida entre dos números enteros
consecutivos, los cuales designaremos por K1 y K2, entonces:

𝑘1 ≤ 𝑋𝑖 ≤ 𝑘2
De aquí el problema tendrá su primera ramificación en 2 partes o nuevos
subproblemas, los cuales serán idénticos al problema que les dio origen, añadiendo
una restricción adicional cada uno de ellos, las cuales será:

𝑋𝑖 ≤ 𝑘1 𝑃𝑎𝑟𝑎 𝑙𝑎 𝑃𝑟𝑖𝑚𝑒𝑟𝑎 𝑅𝑎𝑚𝑎

𝑋𝑖 ≥ 𝑘2 𝑃𝑎𝑟𝑎 𝑙𝑎 𝑆𝑒𝑔𝑢𝑛𝑑𝑎 𝑅𝑎𝑚𝑎


Con esto cada rama abarcará una región factible de solución más limitada que la del
problema original, lo cual implica haber dividido éste en 2 subproblemas más
pequeños. En el caso de haber varias variables de decisión fraccionarias que sean
candidatas para efectuar ramificaciones, deberá tomarse aquella que quede más
próxima a la fracción intermedia entre dos enteros consecutivos, es decir, (0.5).

3. Resolver cada rama del paso anterior por medio de programación lineal; de aquí
podemos tener varias posibilidades, por decir:
a) Que la solución encontrada no sea factible. En este caso esta rama ya no se
investiga más.
b) Qué la solución hallada sea entera. En este caso esta solución se convierte en una
COTA que será inferior para problemas de maximización y superior para los de
minimización. Esto viene siendo el proceso de acotación. De esta rama ya no se
prosigue la búsqueda de nuevas opciones.
c) Que la solución encontrada sea fraccionaria. De aquí, esta rama será candidata
para seguir haciendo bifurcaciones, siempre y cuando el valor hallado para la
función objetivo sea mejor que el de alguna cota fijada en una etapa anterior, pues
de no suceder así, ya no se proseguirá la búsqueda y esa cota anterior sería la
solución óptima. Si la búsqueda hubiese continuado y se encontrara una nueva
solución entera cuya función objetivo fuese mejor que la de la cota anterior, dicha
rama tomaría el lugar de la nueva cota en sustitución de la anterior.

Este procedimiento se continuará hasta que ya no haya posibilidades de ramificaciones


posteriores. Con esto tendremos la certeza de que se encontrará la solución entera óptima en
caso de haberla, siendo ésta, la última cota que haya prevalecido como tal hasta el final del
problema.

Ejemplo:
La compañía Harrison Electric, fabrica dos productos, candelabros y ventiladores de techo.
Tanto los candelabros como los ventiladores requieren de un proceso de producción de dos

Unidad III. Programación Entera


8 Investigación de Operaciones I 4° Semestre

pasos, que implica cableado y ensamble. Se requiere 2 horas para cablear cada candelabro y
3 para cablear un ventilador de techo. El ensamble final de los candelabros y los ventiladores
requiere de 6 y 5 horas, respectivamente. La capacidad de producción es tal que solamente
están disponibles 12 horas de cableado y 30 horas de ensamble. Si cada candelabro reditúa a
la empresa $7 y cada ventilador $6.

¿Qué cantidad de cada tipo de producto se debe fabricar? Resuelva por el método de
bifurcación y acotación.

REFERENCIAS
Render B., Stair R. M., Hanna M. E. (2012). Métodos Cuantitativos para los negocios. (11ª
Ed.) Distrito Federal, México. Pearson.
Izar L. J. M. (2012). Investigación de Operaciones (2ª Ed.) Distrito Federal, México. Trillas.

Unidad III. Programación Entera

También podría gustarte