Está en la página 1de 21

Mdulo:

Unidad: IV

Semana: 8

INVESTIGACIN DE OPERACIONES I

CHAMBERGO GARCIA,
ALEJANDRO

Programacin lineal entera

Programacin Lineal Entera


III.2. Resolucin de problemas de P. E.
Supongamos que tenemos el siguiente problema
de programacin lineal:
PL)

Max

cTx

s.a.

Ax=b
x0

Pero todas o una parte de las variables deben


restringir su valor a nmeros enteros, dando origen
a un problema de Programacin Entera (puro) o de
Programacin Entera- Mixta, respectivamente.

Programacin Lineal Entera


III.2. Resolucin de problemas de P. E.
Por ejemplo:
PLE) Max
s.a.

cTx
Ax=b
x 0, xj entero

El problema PL) corresponde a la relajacin


continua del problema PLE), que resulta de
eliminar las condiciones de integralidad de las
variables de decisin en PLE).

Programacin Lineal Entera


III.2. Resolucin de problemas de P. E.
El valor ptimo de PL) provee slo una
cota superior del valor ptimo de PLE).
Notar sin embargo, que si la solucin
ptima de PL) cumple con la integralidad de
los valores requiridos, entonces esta
solucin es tambin solucin ptima de
PLE).

Programacin Lineal Entera


III.2. Resolucin de problemas de P. E.
Ejemplo
PLE) Max x2
s.a. - 2x1 + 2x2 1
2x1 + x2 7
x1 0, x2 0

enteros

Programacin Lineal Entera


III.2. Resolucin de problemas de P. E.
x2

2x1 + x2 7

- 2x1 + 2x2 1

.
.
. .

.
.

.
.

.
3.5

x1

Programacin Lineal Entera


III.2. Resolucin de problemas de P. E.

Notar que en el ejemplo la solucin ptima puede


ser hallada por simple enumeracin de todas las
soluciones factibles. Aqu las soluciones ptimas
son:
x1* = 1
x2* = 1

x1* = 2
x2* = 1

Esta
alternativa
de
enumeracin
queda
naturalmente restringida a problemas muy
pequeos.

Programacin Lineal Entera


III.2. Resolucin de problemas de P. E.
Alternativamente, podemos resolver la relajacin
continua asociada al problema PLE). Si la solucin
ptima de la relajacin continua da una solucin
entera, esa es la solucin ptima no solo del
problema lineal sino que tambin lo es del
problema lineal entero.
En el ejemplo, la solucin de la relajacin continua
es:
x1 = 3/2
x2 = 2

Programacin Lineal Entera


III.2. Resolucin de problemas de P. E.
A partir de esta ltima solucin podemos
redondear o truncar los valores que no salieron
enteros, obteniendo respectivamente en el
ejemplo:
x1 = 2
x1 = 1
x2 = 2
x2 = 2
las cuales no son soluciones factibles de PLE), de
modo que desde el punto de vista de una
resolucin numrica no es suficiente con resolver
la relajacin continua.

Programacin Lineal Entera


III.2. Resolucin de problemas de P. E.
Todava podran resultar soluciones factibles de
PLE), pero no neceasariamente ptimas. Por
ejemplo:
PLE) Max
s.a.

f(x1, x2) = x1 + 5x2


x1 + 10x2 10
x1 1
x1 0, x2 0 enteros

Programacin Lineal Entera


III.2. Resolucin de problemas de P. E.
Solucin ptima de PL)
x1 = 1

f(1,9/10)=5,5

x2 = 9/10
Redondeando o truncando los valores
x1 = 1 infactible

x1 = 1

x2 = 1

x2 = 0

f(1,0)=1

Pero la solucin ptima de PLE) es:


x1 = 0;

x2 = 1;

v(PLE) = 5

Programacin Lineal Entera


III.3. Mtodo de Branch and Bound.
Consideremos el siguiente problema de
programacin entera:
PLE) Max 21x1 + 11x2
s.a. 7x2 + 4x2 13
x1 0
x2 0
x1, x2 enteros

Programacin Lineal Entera


III.3. Mtodo de Branch and Bound.
Consideremos inicialmente la resolucin de
la relajacin continua de PLE), que consiste
en eliminar las condiciones de integralidad.

Programacin Lineal Entera


III.3. Mtodo de Branch and Bound.
x2
3

x2 = 3

3/2
2

x2 = 2

21x1+11x2=39
1

x2 = 1
13/7 sol. relajada

x1 = 1

21x1+11x2

x1
x1 = 2

7x1+4x2=13

Programacin Lineal Entera


III.3. Mtodo de Branch and Bound.
Descripcin del
(maximizacin)

mtodo

Branch

and

Paso 0
Hacer P0), la relajacin continua de PLE)
Fijar la cota inferior del v(PLE) en -.

Bound

Programacin Lineal Entera


III.3. Mtodo de Branch and Bound.
Paso1
Seleccionar un problema no resuelto, Pi)
Resolver Pi) como problema de programacin
lineal.

Agotar este problema, usando:


(i) que se encontr una solucin entera
(ii) que el problema resulta infactible

(iii) que el problema no provee un valor mejor que


la actual cota del valor ptimo v(PLE).

Programacin Lineal Entera


III.3. Mtodo de Branch and Bound.
Si el problema Pi) resulta agotado y da solucin
entera, mejorar el valor de la cota inferior de
v(PLE).

Si todos los problemas estn agotados, parar.


Solucin ptima de PLE), la solucin entera
asociada a la actual cota inferior de v(PLE), si
existe (si no existe entonces PLE) es infactible)
Si el problema no est agotado pasar al paso 2.

Programacin Lineal Entera


III.3. Mtodo de Branch and Bound.
Paso 2
Seleccionar una variable xj= j, cuyo valor en la
solucin ptima de Pi) no de entero.

Eliminar la regin correspondiente a


j < j < j + 1
Crear dos nuevos problemas de programacin
lineal que incorporen a Pi) dos restricciones
mutuamente excluyentes: xj j, xj j +1 una
en cada problema y volver al paso 1.

Programacin Lineal Entera


III.3. Mtodo de Branch and Bound.
P0
x1 = 1
x2 = 3/2
z = 37.5
x21
x1 = 1
x2 = 1
z = 32

P11

x11

P1

x1 = 13/7
x2 = 0
z = 39
x12

P2
x22

P12

infactible
x1 = 5/7
x2 = 2
z = 37
x11

x1 = 0
x2 = 13/4 P
P122
121
z = 35.75
infactible
x24
x23
x1 = 0
P1212
x2 = 3 P1211
z = 33
infactible

P0) Relajacin continua


-< z 39
P1) Max 21x1 + 11x2
s.a. 7x1 + 4x2 13
x1 1
x1 0
x2 0
P2) Max 21 x1 + 11x2
s.a. 7x1 + 4x2 13
x1 1
x2 1
x1 0
x2 0
De donde 32 z 39

Solucin ptima
x1* = 0; x2* = 3; z = 33

GRACIAS