Vous êtes sur la page 1sur 44

La programacin entera es

una extensin de la
programacin lineal que
resuelve problemas que
requieren soluciones enteras.



Un modelo de programacin entera es un modelo que
contiene restricciones y una funcin objetivo idnticas a las
formuladas por programacin lineal.

La nica diferencia es que una o mas de las variables de
decisin tienen que tomar un valor entero en la solucin
final.

Existen tres tipos de modelos de Programacin Entera:

1. Programacin Entera Pura


2. Programacin Entera Mixta


3. Programacin Entera Binaria
Pura
Mixta
Binaria

son casos en los que se
requiere que todas las variables tengan valores enteros.

son casos en los que se
requiere que algunas pero no todas las variables de
decisin tengan valores enteros.

son casos especiales
en los que se requiere que todas las variables de decisin
deben tener valores de solucin enteros de 0 o 1.

MTODO DE RAMIFICACIN Y ACOTAMIENTO.
MTODO DE PLANO CORTANTE
MTODO DE ENUMERACIN IMPLCITA
CERO UNO.

PROGRAMACION ENTERA
END
En un problema de Programacin Entera con frecuencia
hay un nmero finito de soluciones factibles posibles.
Entonces, es posible (tericamente) enumerar y
evaluar cada una de las soluciones enteras factibles con
el fin de encontrar el ptimo.

Lo ms frecuente es el uso del Mtodo De
Ramificacin y Acote en el que solamente es necesario
una enumeracin parcial, si se aplica sistemticamente,
en el hallazgo de una solucin ptima entera. El mtodo
de Ramificacin y Acote es una tcnica para el logro de
esto, ya que va eliminado conjuntos de soluciones bajo
consideracin
EL MTODO DE RAMIFICACIN Y
ACOTACIN
Ejemplo:

max Z = 5 X1 + 3 X2 + X3

s.a. : X1 + X2 + X3 6
3 X1 + X2 + 4 X3 9
X1 1
X2 1
X3 4

X1 + X2 + X3 0 y enteros
X1 = 0 X1 = 1
X2 = 0 X2 = 1 X2 = 0 X2 = 1
X3 = 0 1 2 3 4 0 1 2 3 4 0 1 2 3 4 0 1 2 3 4
Minimizacin
Considere el siguiente problema de minimizacin de costos:
Minimizar Z=X1+ 3X2+5X3
Sujeto a: X1+X2+X3 6.5
3X1+X2+4X3 9.5
X1
X2
X3
X1, X2, X3 0
1.- Resolver el problema como uno de programacin lineal ignorando la restriccin
entera. Si la solucin satisface la restriccin entera, tenemos una solucin optima
para el problema de programacin entera. La solucin por programacin lineal es:

x1 = 1,
x2 = 2,
x3 = 3.5

Z = 24.5 Como no es un solucin entera necesitamos particionar el
conjunto de soluciones
Seleccione una variable para
Ramificar. Esta divide el conjunto
de soluciones posibles en dos
conjuntos. Seleccione una de las
ramas (seleccionar Uno de los
subconjuntos) para Nuevo anlisis.
resolver el problema Programacin
apropiado.
Determinar una solucin entera
Factible. Esta solucin da una
Cota superior inicial para el Costo
mnimo
El costo de la solucin obtenida en
el paso Uno se convierte en la
nueva cota inferior del costo Para
todas las Soluciones de la rama
que est siendo Investigada.
A
A
Compare la Cota inferior del Paso 2 con la
actual cota superior del costo mnimo
(el ms bajo costo obtenido por una
solucin entera) para las ramas hasta
aqu investigadas.

(a) Si la cota inferior excede a la actual
superior, entonces elimine esta rama
de las dems consideraciones.

(b) Si la cota inferior es menor que la cota
superior actual y adems es solucin
entera, entonces se convierte en la
nueva o actual cota superior.
Todas
las ramas
han sido
investigadas?
La solucin entera de costo mnimo es
la solucin entera factible asociada
con la cota superior ms actual.
Iteracin 0
Paso 1:
Ramificacin
Paso 2:
Acote
Paso 3:
Comparacin
Y
Eliminacin
No
Si
Paso 4:
Terminacin
4
X1 = 0.5, x2 = 2, X3 = 4
Costo Z = 26.5
Solucin no entera: Rama
Cota Superior = 27
Solucin
no factible
5
X1 = 0
6
X1 =
X1 = 1, X2 = 2, X3 = 4
Costo Z = 27
Solucin entera: tambin
solucin optima ya que no
hay mas ramas para
investigar
Cota Superior = 27
Solucin
optima
Max: Z=X1+5X2+7X3+3X4
Sujeto a
7x1+3x2+2x3+4x4 <=15
8x1+2x2+3x3+5x4 <=17
1x1 <=4
1x2 <=4
1x3 <=1
1x4 <=1

x1, x2, x3, x4 Todos Enteros.
Maximizacin
Solucion por PL
X1 = 0, x2 = 4, X3 = 1
x4 = 0.25
Utilidad Z = 27.75
Solucin no entera: Rama
Solucion PL
X1 = 1, X2 = 2, X3 = 1
X4 = 0
Utilidad Z = 18
Solucin entera
Solucion PL
X1 = 0, x2 = 3, X3 = 1
x4 = 1
Utilidad Z = 25.00
Solucin entera
Solucion PL
X1 = 0, X2 = 4, X3 = 1
X4 =0
Utilidad Z = 27.00
Solucin entera
Solucion PL
X1 = 0.14, x2 = 4, X3 = 1
x4 = 0
Utilidad Z = 27.14
Solucin entera
X1 =0 1<= x1 <=4
X4=0 X4=1
Solucin
Entera
Optima
VOLVER
EL MTODO DE PLANO CORTANTE O
ALGORITMO DE GOMORY
Igual que en el algoritmo de Ramificacin y Acotamiento, el
algoritmo de plano cortante tambin empieza en la solucin ptima de la
Programacin Lineal.

Sin embargo, en vez de utilizar la Ramificacin y Acotamiento,
modifica el espacio de la solucin aadiendo sucesivamente restricciones
especialmente construidas (llamadas cortes).

Ejemplo:
Maximizar Z = 7x1 + 10x2
Sujeto a: -x1 + 3x2 6
7x1 + x2 35
x1, x2 0 y entero
DESARROLLO ALGEBRAICO
Paso 1
Resolver el problema primal, si la solucin es entera, corresponde a la ptima
para el problema de Programacin Lineal Entera.
Paso 2
Seleccionar decimales y escoger aquel que tenga la mayor parte
fraccionaria tomando las ecuaciones completas.
Luego de encontrar una solucin ptima para el primal, por Simplex
y despus de agregarle la primera nueva ecuacin al sistema se pasa a
Dual Simplex, para quitarle la infactibilidad al sistema.
Paso 3
Se separan la parte entera, es decir, quedarse solamente con la parte
fraccionaria.
Nota:
VOLVER
Standarizando:
Maximizar Z = 7x1 + 10x2 + 0x3 + 0x4
Sujeto a: -x1 + 3x2 + x3 = 6
7x1 + x2 + x4 = 35
x1, x2, x3, x4 0 y entero
Maximizar Z = 7x1 + 10x2
Sujeto a: -x1 + 3x2 6
7x1 + x2 35
x1, x2 0 y entero
EJEMPLO
Resolucin:
Cj 7 10 0 0
Ck Xk bi X1 X2 X3 X4
0
0
X3
X4
6
35
-1
7
3
1
1
0
0
1
Zj 0 0 0 0 0
Cj Zj 7 10 0 0
Cj 7 10 0 0
Ck Xk bi X1 X2 X3 X4
10
0
X2
X4
2
33
-1/3
22/3
1
0
1/3
-1/3
0
1
Zj 20 -10/3 10 10/3 0
Cj - Zj 31/3 0 -10/3 0
PRIMERA TABLA SIMPLEX
SEGUNDA TABLA SIMPLEX
Elemento Pivote
Elemento Pivote
Cj 7 10 0 0
Ck Xk bi X1 X2 X3 X4
10
7
X2
X1
7/2
9/2
0
1
1
0
7/22
-1/22
1/22
3/22
Zj 133/2 7 10 63/22 31/22
Cj - Zj 0 0 -63/22 -31/22
La solucin ptima es: X1 = 9 / 2
X2 = 7 / 2
X3 = 0
X4 = 0
Z = 133 / 2


TERCERA TABLA SIMPLEX
Desarrollaremos cortes a partir del regln de la fuente X1; y del rengln de la
fuente x2.

Rengln X1: X1 1/22 X3 + 3/22 X4 = 9/2

Se divide en factores enteros y fraccionales, siempre y cuando el componente
fraccional sea estrictamente positivo.

X1 + ( -1 + 21/22) X3 + (0 + 3/22) X4 = (4 + 1/2)

Luego:

X1 X3 - 4 = -21/22 X3 3/22 X4 +
Informacin de la tabla simplex ptima:
Ecuacin X2: X2 + 7/22 X3 + 1/22 X4 = 7/2
Ecuacin X1: X1 1/22 X3 + 3/22 X4 = 9/2
Se obtiene:


Se selecciona arbritariamente el corte generado del rengln X2:

-7/22 X3 1/22 X4 -

-7/22 X3 1/22 X4 + S1 = - (Corte I)

Esta restriccin se aade como una restriccin secundaria a la tabla simplex
ptima.
Debido a que X3 Y X4 son no negativos entonces el lado izquierdo debe
satisfacer:
Ecuacin X2: X2 + 7/22 X3 + 1/22 X4 = 7/2
A partir del rengln fuente 2:

-21/22 X3 3/22 X4 + 0


-7/22 X3 1/22 X4 + 0

Cj 7 10 0 0 0
Ck Xk bi X1 X2 X3 X4 S1
10
7
0
X2
X1
S1
7/2
9/2
-1/2
0
1
0
1
0
0
7/22
-1/22
-7/22
1/22
3/22
-1/22
0
0
1
Zj 133/2 7 10 63/22 31/22 0
Cj - Zj 0 0 -63/22 -31/22 0
-7/22 X3 1/22 X4 + S1 = - Aadiendo el corte:
La tabla smplex es ptima, pero no factible. Aplicamos el mtodo simplex dual para
recuperar la factibilidad, lo que nos da:

Cj 7 10 0 0 0
Ck Xk Bi X1 X2 X3 X4 S1
10
7
0
X2
X1
X3
3
32/7
11/7
0
1
0
1
0
0
0
0
1
0
1/7
1/7
1
-1/7
-22/7
Zj 62 7 10 0 1 9
Cj Zj 0 0 0 -1 -9
X1 X2 X3 X4 S1
Zj

7

10 63/22 31/22

0
S1 0 0 -7/22 -1/22 1

COCIENTE - - -9 -31 -
Elemento pivote
TABLA SIMPLEX DUAL
La ltima solucin todava es de no enteros en X1 Y X3.
Entonces seleccionamos X1 como el rengln fuente

X1 + 1/7 X4 1/7 S1 = 32/7
X1 + (0 + 1/7) X4 (-1 + 6/7) S1 = (4 + 4/7)

El corte asociado es:

-1/7 X4 6/7 S1 + 4/7 0
-1/7 X4 6/7 S1 -4/7
-1/7 X4 6/7 S1 + S2 = -4/7 , S2 0 (Corte II)
X2 =
X1 =
X3 =
Z =
3
32/7
11/7
62
Solucin obtenida:
Cj 7 10 0 0 0 0
Ck Xk Bi X1 X2 X3 X4 S1 S2
10
7
0
0
X2
X1
X3
S2
3
32/7
11/7
-4/7
0
1
0
0
1
0
0
0
0
0
1
0
0
1/7
1/7
-1/7
1
-1/7
-22/7
-6/7
0
0
0
1
Zj 62 7 10 0 1 9 0
Cj - Zj 0 0 0 -1 -9 0
Aadiendo el Corte II:
-1/7 X4 6/7 S1 + S2 -4/7 , S2 0
Aplicando el mtodo dual simplex:
X1 X2 X3 X4 S1 S2
Zj

7

10 0 1 9 0
S2 0 0 0 -1/7 -6/7

1
COCIENTE - - - -7 -63/7 -
Elemento pivote
Cj 7 10 0 0 0 0
Ck Xk bi X1 X2 X3 X4 S1 S2
10
7
0
0
X2
X1
X3
X4
3
4
1
4
0
1
0
0
1
0
0
0
0
0
1
0
0
0
0
1
1
-1
-4
6
0
1
1
-7
Zj 58 7 10 0 0 3 7
Cj - Zj 0 0 0 0 -3 -7
TABLA SIMPLEX DUAL
La solucin ptima (X1 = 4, X2 = 4, Z = 58) es toda entera.
VOLVER

Problema de la mochila imaginemos que queremos
ir a una excursin y que solo tenemos una mochila
que soporta cierta cantidad de volumen entonces
cada objeto que introducimos ocupa un volumen
dentro de la mochila y cada uno de ellos nos provee
una utilidad o beneficio. El problema est cuando
debemos seleccionar cul de estos objetos
selecciona para llevar a cabo el hecho de llevarlo en
la mochila y hacer q nuestro beneficio sea el
mximo sin pasar el lmite de la mochila
PROBLEMA DE LA MOCHILA

Vous aimerez peut-être aussi