Sunteți pe pagina 1din 34

INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA

INGENIERÍA INDUSTRIAL

-INTEGRANTES DEL EQUIPO


CÓRDOBA CORTÉS AMAYRANI
DE LA ROSA MONTIEL YESSENIA
HERNÁNDEZ VÁZQUEZ CHRISTIAN EMILIO
LÓPEZ OLIVARES BETZAIDA BERENICE
QUIRÓZ CASTILLO JOSÉ MIGUEL
SANTES FONSECA ELIZABETH

-MATERIA
INVESTIGACIÓN DE OPERACIONES I

-PROFESORA
ING. ILSE ARIADNA BERNAL MAR

IV SEMESTRE “A”

FECHA DE ENTREGA: 5 DE JUNIO DE 2014


INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

ÍNDICE

ÍNDICE .............................................................................................................................1

UNIDAD 4 – PROGRAMACIÓN ENTERA .......................................................................2

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

4.1.1. INTRODUCCIÓN. ...............................................................................................2

4.1.2. CASOS DE APLICACIÓN. ..................................................................................5

4.2. DEFINICIÓN Y MODELOS DE PROGRAMACIÓN ENTERA Y BINARIA.................9

4.2.1. DEFINICIÓN .......................................................................................................9

4.2.2. DESCRIPCIÓN DEL MÉTODO.........................................................................10

4.2.3. EL MODELO PEB .............................................................................................11

4.3. MÉTODO DE GOMORY .........................................................................................16

4.4. MÉTODO DE BIFURCACIÓN Y ACOTAMIENTO ..................................................25

CONCLUSIÓN ...............................................................................................................32

BIBLIOGRAFÍA ..............................................................................................................33

PROGRAMACIÓN ENTERA 1
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

UNIDAD 4 – PROGRAMACIÓN ENTERA


4.1. INTRODUCCIÓN Y CASOS DE APLICACIÓN.

4.1.1. INTRODUCCIÓN.
Es frecuente al tener que resolver problemas en los cuales las soluciones tienen que ser
valores enteros como por ejemplo: números de unidades a producir por máquina, número
de máquinas necesarias, etc. Parte del problema de la programación entera radica en la
diferencia esencial que existe la programación lineal y la entera, en la programación lineal
se maximiza o minimiza una función sobre una región de factibilidad convexa, mientras
que al usar los métodos de programación entera se maximiza una función sobre una
región de factibilidad que generalmente no es convexa. De tal manera que la
programación entera tiene más complicaciones que la programación lineal. En este tema
se presenta un tipo de problemas formalmente similares a los problemas de
Programación Lineal, ya que en su descripción solo se establecen expresiones lineales.
Sin embargo no responden a problemas lineales ya que algunas (o todas) las variables
del problema toman valores que no están en un conjunto continuo. Por ejemplo, pueden
ser variables que toman valores 0 o 1(binarias), o variables que toman valores enteros
no negativos (0, 1,2,...), etc. Tras introducir el tipo de problemas se dedica un importante
apartado para presentar las posibilidades de modelado que esta herramienta
proporciona: problemas binarios, problemas de carga, problemas con restricciones
condicionales o con dicotomías, etc. Tras dedicar una parte importante del tema a
presentar estas herramientas de modelado y a plantear numerosos problemas con ellas
se procede a mostrar dos métodos de resolución. Uno de ellos dedicado a problemas en
los que todas las variables son binarias y otro para problemas generales. Ambos métodos
tienen en común que desarrollan un proceso de enumeración que permite comprobar
explícita o implícitamente todas las soluciones del problema hasta encontrar la óptima, y
entran dentro del tipo de métodos de ramificación y acotación.

En algunos casos se requiere que la solución óptima se componga de valores enteros


para algunas de las variables. La resolución de este problema se obtiene analizando las

PROGRAMACIÓN ENTERA 2
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

posibles alternativas de valores enteros de esas variables en un entorno alrededor de la


solución obtenida considerando las variables reales. Muchas veces la solución del
programa lineal truncado está lejos de ser el óptimo entero, por lo que se hace necesario
usar algún algoritmo para hallar esta solución de forma exacta. El más famoso es el
método de “Ramificación y Acotación” o “Branch and Bound” por su nombre en inglés. El
método de Ramificación y Acotación, parte de la adición de nuevas restricciones para
cada variable de decisión (acotar) que al ser evaluado independientemente (ramificar)
lleva al óptimo entero.

La programación entera se divide en 3 tipos de modelos:

 Programación Entera Pura: Todas las variables de decisión tienen valores enteros.
 Programación Entera Mixta (PEM): Algunas de las variables de decisión tienen
valores enteros. Las demás cumplen con la suposición de divisibilidad.
 Programación Entera Binaria (PEB): Utiliza variables binarias.

PROGRAMACIÓN ENTERA 3
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

• Método gráfico.
• Método de plano de
Métodos corte.
de solución • Métodos de Lang-
Doing.
• Enumeración implícita.

• Lingo/Lindo
Herramientas • Excel
computacio-
nales • Mpl/Cplex
• TORA

• Puro
Tipos de
• Binario
modelos
• Mixto

• Wagner
Origen • Manner
• Gomory

PROGRAMACIÓN ENTERA 4
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

4.1.2. CASOS DE APLICACIÓN.


A continuación se presenta la variedad de problemas que caen dentro de la programación
entera y binaria:

a) Todos los problemas de programación lineal, donde las actividades, por su


estructura deben ser no-divisibles, son programas enteros. Por ejemplo problemas
de producción de automóviles, prendas de vestir, etc. ¿Qué significado tendría la
producción de 577.83 automóviles?

b) Todos los problemas de transporte, asignación y redes de optimización. Este tipo


de problemas son enteros y dada la estructura tan especial de estos problemas,
tienen métodos de solución propios.

c) Problemas de secuenciación. Este tipo de problemas aunque son fáciles de


formular, resultan bastantes difíciles de resolver. Se supone por ejemplo en el caso
de un taller que puede efectuar un solo tipo de trabajo a la vez (orden i ), el que se
tiene contratado a entregar en días, a partir de una cierta fecha base, y que
además tiene una gran duración de trabajo de ( > 0) días y al cuales asocian
una multa de pesos por día de retrasos después de los días estipulados. Se
supone que el taller recibe n órdenes de trabajo en la fecha base. ¿Cuál debe ser
el orden de secuenciación de trabajos que minimice el costo penal total?

d) El problema del agente viajero. Este problema concierne en un agente viajero que
saliendo de una terminal de ciudad debe visitar una sola vez n-1 ciudades
diferentes, y regresar al punto de partida. Si el costo de dirigirse a la ciudad j desde
la ciudad i es ( ≠ ), se debe terminar la secuencia de visita de ciudades,
tal que el costo total asociado sea el mínimo. Este problema se presentó por

PROGRAMACIÓN ENTERA 5
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

primera vez en 1960, en un artículo de Miller, Tucker, Zemling, pero hay una
variedad de métodos que resuelven el problema dependiendo del tamaño de n, el
número de ciudades.

e) Problema tipo mochila. Este tipo de problemas de optimización de carácter entero


puede darse en dos versiones. En la primera se proporciona un cierto espacio con
determinado volumen o capacidad, y este debe ser llenado con objetos de valor y
volumen o capacidades especificados. El problema consiste en llenar ese espacio
con el conjunto de objetos más valioso, sin exceder los límites físicos de dicho
espacio. La segunda versión consiste en dividir a un objeto en varias porciones de
diferente valor, el problema consiste en encontrar la división de mayor valor.

f) Problemas de inversión. Se supone por ejemplo que el organismo Nacional


Financiera S.A., tiene que escoger una alternativa en cada uno de tres proyectos
de inversión. El primer proyecto está relacionado con la construcción de partes de
generadores eléctricos. El segundo proyecto con el ensamblado de esas partes
de generadores eléctricos y el tercer proyecto con la distribución y venta de los
generadores eléctricos incluyendo a su posible exportación. Cada proyecto tiene
una serie de alternativas. Asociadas a cada alternativa se tiene calculado el valor
presente del retorno total de la inversión (en millones de pesos), el número de
empleos que se generan y el flujo de inversión (en millones de pesos) que se
necesitan para los próximos 5 años. Las restricciones del sistema son que no hay
capacidad económica para generar más de 10 mil empleos y que los flujos
máximos de capital son 700 millones en el año 1, 300 millones en el año 2, 150
millones respectivamente en los años 3,4 y 5. ¿Qué alternativas conviene
seleccionar de los proyectos I, II y III a fin de maximizar el ingreso total neto anual?

PROGRAMACIÓN ENTERA 6
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

g) Problemas con costos fijos. Todos los problemas que en su función de costo
influyen un costo fijo del siguiente tipo
0 , si = 0,

0 ≤ ≤ , j=1,2,…n
Costo total para la variable =f ( )=
+ , si > 0

pertenece al grupo de problemas enteros. Este tipo de costos aparecen


frecuentemente en problemas de transportes, inventarios, localización de plantas,
distribución geográfica de electores, etc.

h) Problemas de cubrimiento y partición de un conjunto. Este tipo de modelos de


carácter entero se ha utilizado en problemas de acceso de información,
programación de entrega de paquetería por transporte terrestre, distribución
política electoral, problemas matemáticos de coloración y programación de
horarios de tripulación aéreos, ferrocarrileros, terrestres y marítimos.

i) Dicotomías y problemas de aproximación. Una dicotomía ocurre en un programa


matemático cuando se tienen condiciones de tipo esta restricción o la otra
restricción, pero no ambas. Este tipo de condiciones se pueden representar por
medio de una estructura entera.

j) Balance de líneas de producción. Este tipo de problemas consisten en decidir qué


actividades deben se desempeñadas por cada trabajador, a medida que un
producto se desplaza por una línea de producción. El objetivo consiste en

PROGRAMACIÓN ENTERA 7
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

minimizar el número de trabajadores (o estaciones de trabajo o actividades) en


función de una tasa de producción.

k) Asignación cuadrática. Este tipo de problemas apareció en los problemas de


localización, existe un conjunto de n posibles lugares en donde se piensa construir
n plantas industriales m<n. sea el costo unitario de transporte de lugar i al lugar

j y sea el volumen que se debe transferir de la planta industrial k a la planta

industrial p.

PROGRAMACIÓN ENTERA 8
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

4.2. DEFINICIÓN Y MODELOS DE PROGRAMACIÓN ENTERA Y


BINARIA

4.2.1. DEFINICIÓN
El modelo de programación entera es sencillamente la programación lineal solo que con
la característica de que la programación entera tiene una restricción de que todas las
variables sean valores enteros a este tipo de modelos se les llama programación entera
pura.

Esto nos quiere decir que la metodología para resolver los problemas de programación
entera es prácticamente el mismo que para hacer la programación lineal.

La programación entera mixta (PEM) se ocupa solo cuando algunas de las variables
deben ser enteros y la suposición de divisibilidad se cumple para el resto.

Esto se da cuando algunos datos deben ser enteros como la cantidad de personal dentro
de una empresa ya que no se pueden asignar 2.5 empleados se deben redondear a 3
pero dentro del mismo modelo se asigna el salario ya que puede ser $2000.50 a estos
modelos se les reconoce por (PEM).

Las programaciones enteras binarias son aquellas donde incluyen decisiones de si o no


que están interrelacionadas. En las decisiones de este tipo solo hay 2 posibles respuestas
a este tipo de decisiones se les puede representar mediante variables de decisión
restringidas a 2 valores, por ejemplo 0 y 1, así la j-ésima decisión si o no se puede
representar por , tal que:

˂1 si la decisión j es si o 0 si la decisión j es no.

A este tipo de problemas de programación entera binaria también se les conoce como
problemas 0-1 de programación entera.

PROGRAMACIÓN ENTERA 9
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

4.2.2. DESCRIPCIÓN DEL MÉTODO


Lo primero que se debe saber, es que al ser las decisiones de Si o No, todas las variables
de decisión tienen la forma binaria. La representación de lo anterior queda así:

Cuando al escoger una opción, no se nos permite escoger otra, se dice que ambas son
mutuamente excluyentes, esta restricción se representa como la sumatoria de ambas ≤
1, ya que eso indica que entre ambas puede haber solo 1 (solo una de las 2) o 0 (ninguna
de ellas).

+ ≤1

En el caso en que una opción solo se pueda escoger habiendo elegido otra con
anterioridad, se dice que son contingentes o condicionales, esta restricción se representa
poniendo que la variable dependiente es ≤ a la variable independiente, de la siguiente
manera:

=
=

Pero para colocar lo anterior como restricción válida para modelación, se debe igualar a
0.

− ≤0

Como paso final para modelar se ponen las restricciones ≤ 1 y ≥ 0 para indicar que solo
entre esos valores pueda estar la optimización.

≤1

≥0

PROGRAMACIÓN ENTERA 10
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

Donde:

j= Número de variables de decisión.

Ejemplo:

A continuación se presenta un problema del cual se hará el modelaje y se darán los pasos
para desarrollarlo en programación entera binaria.

La CALIFORNIA MANUFACTURING COMPANY analiza la posibilidad de llevar a cabo


una expansión mediante la construcción de una nueva fábrica ya sea en Los Ángeles o
en San Francisco, o tal vez en ambas ciudades. También piensa en construir, a lo sumo,
un nuevo almacén, pero la decisión sobre el lugar en donde lo instalará está restringida
a la ciudad donde se construya la nueva fábrica. En la cuarta columna de la tabla 1 se
muestra el valor presente neto —rendimiento total que toma en cuenta el valor del dinero
en el tiempo— de cada alternativa. En la última columna se proporciona el capital que
se requiere —incluido el valor presente neto— para las respectivas inversiones, donde
el capital total disponible es de 10 millones de dólares. El objetivo es encontrar la
combinación factible de alternativas que maximice el valor presente neto total.

4.2.3. EL MODELO PEB

Aún cuando este problema se puede resolver con un simple razonamiento - construir
fábricas en ambas ciudades, pero ningún almacén—, se formulará como ejemplo.

Sea:

Z= valor neto de estas decisiones.

Si se hace la inversión para construir una instalación dada —de manera que la variable
de decisión correspondiente tenga valor de 1—, el valor neto estimado de estas
inversiones aparece en la cuarta columna de la tabla. Si la inversión no se hace —y, por
tanto, la variable de decisión es igual a 0—, el valor presente neto es 0.

PROGRAMACIÓN ENTERA 11
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

TABLA 1 Datos del ejemplo de la California Manufacturing Co.

Variable de Valor
Número de Pregunta Si o No decisión presente Capital
decisión neto requerido
1 ¿Construir la fábrica $9 millones $6 millones
en Los Ángeles?
2 ¿Construir la fábrica $5 millones $3 millones
en San Francisco?
3 ¿Construir el $6 millones $5 millones
almacén en Los
Ángeles?
4 ¿Construir el $4 millones $2 millones
almacén en San
Francisco?

Entonces, con unidades de millones de dólares, la F.O queda:

Z=9x1 +5x2 +6x3 +4x4.

La última columna de la tabla indica el capital que se gastará en las cuatro instalaciones,
y dice que no puede exceder a 10 millones de dólares. Entonces, la primera restricción
sería:

6x1 +3x2 +5x3 +2x4 10.

Como las últimas dos decisiones representan alternativas mutuamente excluyentes —


la compañía quiere construir cuando mucho un almacén nuevo—, se necesita la
restricción

+ ≤1

PROGRAMACIÓN ENTERA 12
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

Aún más, las decisiones 3 y 4 son contingentes —o condicionales— porque dependen


de las decisiones 1 y 2, respectivamente (la compañía consideraría la construcción de
un almacén en determinada ciudad sólo si la nueva fábrica va a estar ahí). Por tanto, en
caso de tomar la decisión 3, se requiere que x3 = 0 si x1 = 0. Esta restricción sobre x3
(cuando x1 = 0) se impone al agregar la restricción

De manera similar, el requerimiento de que x4 = 0 si x2 = 0 se impone con la restricción:

Por tanto, después de escribir de nuevo estas dos restricciones para que todas las
variables queden en el lado izquierdo, el modelo completo de PEB es

Maximizar Z= 9 +5 +6 + 4

s.a

6 +3 +5 + 2 ≤ 10

+ ≤1

- + + ≤0

- + ≤0

≤1

≤0

es entera , para j = 1, 2 ,3 ,4.

PROGRAMACIÓN ENTERA 13
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

De manera equivalente las 3 últimas líneas de este modelo se puede sustituir por una
sola restricción.

es binaria para j= 1, 2 ,3 ,4

Excepto por su tamaño pequeño, este ejemplo representa muchas aplicaciones reales
de programación entera en las que las decisiones básicas que se toman son del tipo sí
o no.

Al igual que el segundo par de decisiones de este ejemplo, muchos grupos de decisiones
sí o no son mutuamente excluyentes, tales que sólo una decisión de ese grupo puede
ser sí. Cada grupo requiere una restricción que obligue a la suma de las variables
binarias correspondientes a ser igual a 1 si exactamente una decisión de ese grupo
debe ser sí, o menor o igual a 1 (si cuando mucho una decisión de ese grupo puede ser
sí).

En ocasiones, las decisiones del tipo sí o no son decisiones contingentes, es decir,


dependen de decisiones anteriores. Se dice que una decisión es contingente respecto
a otra si se permite que sea si sólo si la otra es sí. Esta situación ocurre cuando una
decisión contingente implica una acción que sigue a otra y que se vuelve irrelevante, o
imposible, si la otra decisión es no. La forma de la restricción que se obtiene se ilustra
en la cuarta y quinta restricciones del ejemplo.

Punto óptimo

=1

=0

=0

=0

PROGRAMACIÓN ENTERA 14
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

X1 X2 X3 X4 S1 S2 S3 S4 S5 BFS
Z(max) 0 4 3 5 0 0 0 0 9 9
S1 0 -3 -1 -4 1 0 0 0 -6 4
S2 0 0 1 1 0 1 0 0 0 1
S3 0 1 2 1 0 0 1 0 1 1
S4 0 -1 0 1 0 0 0 1 0 0
X1 1 1 1 1 0 0 0 0 1 1

Función objetivo en el punto óptimo 9.

Igual que en el ejemplo de la California Manufacturing Co., con frecuencia los


administradores enfrentan decisiones de sí o no. Por tanto, la programación entera
binaria (PEB) se usa de manera considerable como ayuda para tomar estas decisiones.

PROGRAMACIÓN ENTERA 15
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

4.3. MÉTODO DE GOMORY


Publicado en 1958 por Ralph Gomory, el método de Gomory mejor conocido como
Algoritmo de Plano de Corte, es un método que permite encontrar soluciones óptimas
enteras en aquellos problemas de programación lineal que tienen soluciones
fraccionarias o con decimales. Se basa con los “planos cortantes” (o corte) que es una
nueva restricción funcional que reduce la región factible del relajamiento de PL sin
eliminar soluciones factibles del problema de PE original. Podemos decir que este método
es una base de nuevas técnicas que permiten de igual manera encontrar una solución
óptima entera de un problema de PL, un ejemplo, el “método de ramificación y
acotamiento” que lo veremos más adelante.

El método de Gomory se inicia en la solución óptima continua. Se agregan restricciones


especiales (los cortes) al espacio de soluciones para que produzcan un punto extremo
óptimo entero. La desventaja de este método, es que resulta muy ineficiente para resolver
problemas enteros de tamaño medio. Estos métodos generan en cada iteración una
restricción y una variable extra. Sin embargo, su ventaja es que ilustran lo que se
pretende hacer con la región de factibilidad de problemas entero, para lograr la solución
del mismo. Comenzaremos con un ejemplo práctico para su mejor entendimiento.
Ejemplo:
Maximizar Z = 7 + 10
Sujeto a
− +3 ≤6

7 + ≤ 35

, ≥ 0 y enteros.

Lo resolveremos directamente por el método SIMPLEX. Por lo tanto:


MaximizarZZ= =7 7 + +1010 + + + +
Maximizar
Sujetoa a
Sujeto
−− + +3 3 + + = =6 6

7 7 + + + + = =3535

, , , , , , ≥ ≥0 0y yenteros.
enteros.

PROGRAMACIÓN ENTERA 16
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

Tablas SIMPLEX

10 Solución

-1 3 1 0 6

7 1 0 1 35

0 0 0 0

- 7 10 0 0

Pivoteamos el renglón , hacemos el cambio de 10 por y nos queda:

10 Solución

10 −1 3 1 1
3
0 2

22 0 −1 3 1 33
3

− 10 3 10 10
3
0

- 31 0 − 10 3 0
3

PROGRAMACIÓN ENTERA 17
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

Pivoteamos el renglón , hacemos el cambio de 7 por y nos queda:

10 Solución

0 1 7 1 7
22 22 2=

1 0 − 1 22 3
22
9
2=

7 10 63 31
22 22

- 0 0 − 63 22 − 31 22 133
2=

La solución óptima es Z= , = , = , = 0, = 0.

Gráfica:

Observamos que nuestras soluciones óptimas no son números enteros, para esto, si bien
es donde proseguimos con el método de Gomory. En base a la información que nos arroja
nuestra tabla óptima, podemos reescribirla de la siguiente manera.

1
Z + 63 22 + 31 22 = 66 2 (ecuación Z)
1
+ 7 22 + 1 22 =3 2 (ecuación )
1
- 1 22 + 3 22 =4 2 (ecuación )

PROGRAMACIÓN ENTERA 18
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

Una vez que tenemos la información de la tabla ordenada en las ecuaciones anteriores,
debemos escoger una de estas ecuaciones, con la condición de que siempre el lado
derecho sea fraccionario. En caso del ejemplo, las 3 ecuaciones cumplen con la
condición.
La ecuación de restricción que elijamos, será nuestra fila origen (o renglón de fuente),
con la cual generaremos un corte.

Paso 1: Factorizamos todos los coeficientes no enteros de la ecuación en un valor entero


y un componente fraccionario, siempre y cuando el componente fraccionario sea
estrictamente positivo.
De la ecuación Z, nos queda como resultado

9 1
Z + (2 + ) + (1 + ) = (66 + )
22 2
Paso 2: Los componentes enteros los moveremos al lado izquierdo y los componentes
fraccionarios al lado derecho. Obtenemos:

19 9 1
Z +2 +1 – 66 = − − + (1)
22 22 2
Como y son no negativas y todas las fracciones son positivas por construcción, el
lado derecho debe satisfacer la siguiente desigualdad:

19 9 1
− − + ≤ (2)
22 22 2

Paso 3: Ahora, como el lado izquierdo de la ecuación (1), es un valor entero por
construcción, el lado derecho también debe de ser entero. Por lo tanto deducimos que
(2) puede ser reemplazada con una desigualdad:

19 9
− − 22 + ≤ 0
22

PROGRAMACIÓN ENTERA 19
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

Este resultado de justifica porque un valor entero menor que una fracción positiva
necesariamente debe ser ≤ 0.
La última desigualdad es el corte deseado, y representa una condición necesaria
(más no suficiente) para obtener una solución entera. Esta desigualdad se conoce como
corte fraccionario porque todos sus coeficientes son fracciones.
Antes de demostrar cómo se implementa el corte fraccionario en la tabla óptima,
se demostrará como también podremos construir los cortes a partir de las otras 2
ecuaciones de restricción.
1
Ecuación : − 1 22 + 3 22 =4 2

Factorizando la ecuación se obtiene:

21 3 1
+ (−1 + 22 ) + (0 + 22) = (4 + 2)

Por lo tanto, nuestro corte asociado es:

21 3 1
− − + ≤0
22 22 2

Ecuación : + 7 22 + 1 22 =3

Factorizando la ecuación se obtiene:

7 1 1
+ (0 + 22 ) + (0 + 22) = (3 + 2)

PROGRAMACIÓN ENTERA 20
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

Por lo tanto, nuestro corte asociado es:


7 1 1
− − + ≤0
22 22 2

Cualquiera de estos tres cortes puede usarse en la primera iteración del método de
Gomory. Seleccionando arbitrariamente el corte generado con la ecuación , podemos
rescribir en forma de ecuación como:
7 1 1
− − + = − ; ≥0
22 22 2

Paso 4: Esta restricción se agrega a la tabla óptima de PL, como se muestra:

10 Solución

0 1 7 1 0
22 22

1 0 − 1 22 3
22
0

0 0 − 7 22 − 1 22 1

- 0 0 − 63 22 − 31 22 0 =

Paso 5: La tabla es óptima pero no factible. Para esto, aplicamos el método simplex dual,
para recuperar la factibilidad.
Para encontrar que columna es la que “entra” y que fila “sale”, dividiremos el renglón
- entre el renglón , y tomaremos el valor absoluto más pequeño y esa será nuestra

PROGRAMACIÓN ENTERA 21
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

fila que “entra”. Después, tomaremos el renglón que acabamos de agregar y será nuestro
renglón pivote.

10 Solución

0 1 7 1 0
22 22

1 0 − 1 22 3
22
0

0 0 − 7 22 − 1 22 1

- 0 0 − 63 22 − 31 22 0 =

*Resultado 0 0 9 31 0
de la división
*valor más
pequeño.

Paso 6: Ahora que ya tenemos nuestra fila que sale y columna que entra, comenzamos
a pivotear por el método SIMPLEX, y obtenemos la siguiente tabla de optimidad:

10 Solución

0 1 0 1 1
11

1 0 0 1 −1 7
7

0 0 1 −1 7 − 22 7

- 0 0 0 − 1 11 16
7

PROGRAMACIÓN ENTERA 22
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

Observamos que nuestras soluciones siguen siendo fraccionarias con excepción de la


primera, pero esto no significa que el problema esté terminado, puesto que todas nuestras
soluciones deben de ser enteras. Gráfica de la tabla con el primer corte:

Paso 7: Regresamos al paso 4, agregando un segundo corte a esta última tabla óptima,
de la misma manera que agregamos el primer corte, sólo que en este caso, como ya
elegimos la ecuación , podemos elegir la ecuación como nuestro corte.
Nuestra tabla quedaría de la siguiente manera:

10 Solución

0 1 0 1 1 0
11

1 0 0 1 −1 7 0
7

0 0 1 −1 7 − 22 7 0

0 0 1 1 −6 7 1 −
7

- 0 0 0 − 1 11 16
7
0

PROGRAMACIÓN ENTERA 23
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

Resolvemos de la misma manera que cuando agregamos el primer corte, y nos quedaría
la siguiente tabla:

10 Solución

0 1 0 0 1 0

1 0 0 0 -1 1 4

0 0 1 0 -4 1 1

0 0 0 1 6 -7 4

0 0 0 0 3 7 58

Observamos en nuestra tabla y todas nuestras soluciones así como nuestro punto
óptimo, nos arroja números enteros. Por lo tanto el Método de Gomory se detiene y el
problema estar terminado.

Gráfica de la tabla óptima anterior.

PROGRAMACIÓN ENTERA 24
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

4.4. MÉTODO DE BIFURCACIÓN Y ACOTAMIENTO


En 1960, Ailsa H. Land y Alison G. Doig, presentan el algoritmo Land-Doig. El nombre de
bifurcación y acotamiento (o bien, ramificación y acotamiento y en inglés “Branch and
Bound”) se lo dan posteriormente Little, Murty, Sweeney, Karel. Más tarde, el algoritmo
fue modificado por Dakin, haciéndolo de manera más general.

El método de bifurcación y acotación que es muy elegante y simple, redondea y acota


variables enteras, resultantes de la solución de los problemas lineales correspondientes.
Este proceso de acotamiento y redondeo se hace de una manera secuencial lógica
heurística que permite eliminar con anticipación un buen número de soluciones factibles
alejadas del optimo a medida que se intera. De tal suerte que si una variable entera ,
j=1, … , n está acotada entre un límite inferior entero , j=1,…n y un límite superior entero
, j=1,…,n el proceso de bifurcación y acotación solo analiza un número muy pequeño
de todas las posibles soluciones.

El método de bifurcación y acotamiento, se presenta a continuación con una serie de


pasos, que después serán demostradas por medio de un ejemplo.

Paso 1: Resuélvase el problema entero por medio del método simplex de la programación
lineal. Si la solución es entera, pare, se ha conseguido la solución óptima. Si no, continúe
en el paso 2.

Paso 2: Escójase arbitrariamente una variable entera cuyo resultado en el paso 1 sea
fraccional e igual a .

Paso 3: Resuélvase un par de nuevos de problemas, similares al problema anterior, pero


uno con la restricción adicional ≤ , mientras que el otro tendrá la restricción adicional

Paso 4: De los programas lineales resueltos en el paso 3, inclúyase en el análisis a seguir,


solo aquellos programas cuya solución (entera o fraccional) sea mejor (mayor en el caso

PROGRAMACIÓN ENTERA 25
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

de maximización y menos en el caso de minimización) a cualquiera de las soluciones


enteras conocidas.

Paso 5: Selecciónese aquel programa lineal que tenga el máximo (en el caso de
minimización el mínimo) valor de la función objetivo. Si las variables enteras tienen valor
entero, se ha convertido en la solución óptima. Si no, regresa al paso 2 con la estructura
del problema lineal resuelto en este paso.

Ejemplo:

Problema (0). Max Z= 5 + 2 + +


Max Z= 5 + 2 Sujeto a
Sujeto a 2 + 2 + = 9
2 + 2 ≤9 3 + + = 11
3 + ≤ 11 , , , ≥0
, ≥0

Paso 1: Resolvemos por método SIMPLEX, y obtendremos la siguiente tabla.

-Iteración 1 del problema (0).

Solución
0 1 0.75 -0.5 1.25
1 0 -0.25 0.5 3.25
0 0 0.25 1.5 18.75

PROGRAMACIÓN ENTERA 26
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

Tenemos nuestras soluciones óptimas con valores todos decimales, por lo tanto,
nuestro problema no esta resuelto. Los valores como nos indica la tabla son =
. y = . .

Paso 2: Se escoge arbitrariamente el valor de = . y con este valor crearemos dos


nuevas restricciones para dos nuevos subproblemas del problema principal (0). A esto es
lo que llamamos ramificación, puesto que en nuestro “árbol” (red conectada que no tiene
ciclos), por cada problema tendremos dos subproblemas y estos a su vez otros dos
subproblemas hasta que encontremos nuestra solución óptima entera.

Para crear los subproblemas, notemos que el valor = . se encuentra entre los
valores enteros 1 y 2. Por lo tanto, estos nuevos valores son los que tendrán cada
restricción en los subproblemas. Nos quedarían de la siguiente manera.



Subproblema (1)

Max Z= 5 + 2 + + Max Z= 5 + 2 + + +
Sujeto a Sujeto a

2 + 2 + = 9 2 + 2 + =9

3 + + = 11 3 + + = 11

≤1 + =1

, , , ≥0 , , , , ≥0

PROGRAMACIÓN ENTERA 27
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

Subproblema (2)

Max Z= 5 + 2 + + Max Z= 5 + 2 + + +
Sujeto a Sujeto a
2 + 2 + = 9 2 + 2 + =9
3 + + = 11 3 + + = 11
≥2 − =2

, , , ≥0 , , , , ≥0

Paso 3: Resolvemos por método SIMPLEX los subproblemas (1) y (2), y obtendremos
las siguientes tablas óptimas.

Subproblema (1)

Solución
0 -1.33 1 -0.67 0.33
1 -0.33 0 0.33 3.33
0 0.33 0 1.67 18.67

Subproblema (2)

Solución
0 -2 -1.5 1 1.5
1 1 0.5 0 2.5
0 3 2.5 0 16.5

Paso 4: Como no ha habido ninguna solución entera en todo el proceso, se incluyen


ambas tablas óptimas en el análisis.

PROGRAMACIÓN ENTERA 28
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

Paso 5: Debido a que nuestro problema es maximización, la mejor función objetivo hasta
el momento corresponde a la tabla del subproblema (1) (Z= 18.67, = . , = . )
y como son soluciones no enteras regresamos al paso 2. La estructura seleccionada es
el subproblema (1).

-Iteración 2.

Paso 2: De manera arbitraria, de la estructura (1) se escoge la variable = . y de


este se obtienen dos nuevas restricciones para para los nuevos subproblemas. Lo
realizamos de la misma manera que utilizamos anteriormente, y nuestros subproblemas
quedarían de esta manera:

Del subproblema (1), se ramifica el subproblema (3):

Max Z= 5 + 2 + + Max Z= 5 + 2 + + + +
Sujeto a
Sujeto a
2 + 2 + = 9
3 + + = 11 2 + 2 + =9
≤1 3 + + = 11
≤3 + =1
, , , ≥0 + =3
, , , , , ≥0

PROGRAMACIÓN ENTERA 29
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

Y el subproblema (4):

Max Z= 5 + 2 + + Max Z= 5 + 2 + + +
Sujeto a +
Sujeto a
2 + 2 + = 9
3 + + = 11 2 + 2 + =9
≤1 3 + + = 11
≥4 + =1
, , , ≥0 − =4
, , , , , ≥0

Paso 3: Aplicando de nuevo el método SIMPLEX a cada programa, se obtienen las


soluciones óptimas al problema lineal correspondiente al subproblema (3). La estructura
del subproblema (4) no tiene solución factible y por lo tanto no se incluye en las tablas
óptimas a analizar.

Subproblema (3):

Solución
-2 -2 1 0 1
-3 -1 0 1 1
5 2 0 0 17
Paso 4: Por ser una solución entera se incluye en el análisis.

Paso 5: Por ser el mejor valor de la función objetivo y además, ser entero, es la solución
óptima, por lo tanto:

Z= 17, = , = , = , =

PROGRAMACIÓN ENTERA 30
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

Por último, para poder visualizar de mejor manera el proceso, como se mencionaba con
anterioridad, utilizaremos una representación gráfica constituida por una red con
estructura de “árbol”.

Z= 18.75, = 3.25 , = 1.25,


=0 =0

≤1 ≥2

Z= 18.67, = 3.33
, = 1, = 0.33
=0

Z= 16.5, = 2.5 , = 2, =0
= 1.5

≤3 ≥4

Z= −∞ Problema inconsistente
Z= 17, =3, = 1, =1
=1

 Solución óptima

PROGRAMACIÓN ENTERA 31
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

CONCLUSIÓN

En este trabajo hemos abarcado los distintos tipos de metodologías que se


requieren para dar solución a los métodos de programación entera, programación
entera binaria, programación mixta, método de Gomory, así como método de
ramificación y acotación.

Dentro de las definiciones de cada uno de los métodos se muestran de manera


clara y concisa, así como el sistema que se debe llevar a cabo para resolverlos de
una manera eficiente y óptima.

Se obtuvieron las ideas precisas de como poder modelar los distintos tipos de
problemas que se dan en industrias, transportes y cualquier problema donde se
requiera una optimización de los recursos o disminución de costos.

Se muestran distintos ejemplos de cada uno de estos métodos y se da una serie


de características únicas de estos que diferencian a uno de otro, así, como un paso
a paso de cada ejemplo en su ejecución para dar como resultado la optimización
de estos casos muestras. Si bien, el presente trabajo muestra las herramientas
necesarias para dar solución a los problemas PEB y PE para poder identificar el
mejor método para solucionarlos.

PROGRAMACIÓN ENTERA 32
INSTITUTO TECNOLÓGICO SUPERIOR DE POZA RICA 4°
INVESTIGACIÓN DE OPERACIONES I Semestre
“A”

BIBLIOGRAFÍA

Hillier Frederick S., Lieberman Gerald J., INVESTIGACION DE OPERACIONES, 7°


edición, McGRAW-HILL, México, 2002.

Taha Hamdy A, INVESTIGACION DE OPERACIONES, 9° edición, Pearson Educación,


México, 2012.

Prawda Witenberg Juan, MÉTODOS Y MODELOS DE INVESTIGACION DE


OPERACIONES Vol. 1 Modelos determinísticos, Limusa Noriega Editores, México, 1999.

Gallagher Charles A., Watson Hugh J., MÉTODOS CUANTITATIVOS PARA LA TOMA
DE DECISIONES EN ADMINISTRACIÓN, McGRAW-HILL,

Winston Wayne L., INVESTIGACION DE OPERACIONES, Aplicaciones y Algoritmos, 4°


edición, Cengage Learning Editores, México, 2005.

PROGRAMACIÓN ENTERA 33

S-ar putea să vă placă și