Académique Documents
Professionnel Documents
Culture Documents
PROGRAMACION BINARIA
INTRODUCCION
Existen numerosas aplicaciones de programación entera en la que el problema incluye cierto número de
decisiones sí o no interrelacionadas. En situaciones de este tipo, las únicas dos elecciones posibles son sí o
no. Por ejemplo, ¿Debe emprenderse un determinado proyecto?, ¿Debe hacerse cierta inversión de
capital? ¿Debe ubicarse la planta de producción en un determinado lugar?
Debido a que estos problemas involucran sólo dos posibilidades, este tipo de decisiones se pueden
representar mediante variables de decisión restringida a sólo dos valores, 0 y 1. De esta forma, la i-ésima
decisión sí o no se puede representar por xi , tal que
1 si la decisión i es sí
xi =
0 si la decisión i es no
Las variables de este tipo se llaman binaria (o variables 0-1). En consecuencia, algunas veces se hace
referencia a los problemas de programación entera que contienen sólo variables binarias como
problemas de programación entera binaria (PEB o PB) o problemas 0-1 de programación entera.
Análisis de la inversión
¿Debe preferirse cierto proveedor?
¿Debe agregarse una nueva línea de producción?
Asignaciones
¿Debe ubicarse a cierto operario en determinado puesto de trabajo?
¿Debe asignarse cierto tipo de avión a una ruta en particular?
2
INVESTIGACION DE OPERACIONES II
EJEMPLOS
EJEMPLO 1
Una joven pareja Carlos y Sara quieren dividir las principales tareas del hogar (ir de compras, cocinar,
lavar platos y lavar ropa) entre los dos, de manera que cada uno tenga dos obligaciones y que el tiempo
total para hacer estas tareas sea el mínimo. La eficiencia en cada una de las tareas difiere entre ellos; la
siguiente tabla proporciona el tiempo que cada uno necesita para cada tarea:
Modelo:
VARIABLES:
ij : Se realiza o no la actividad i por j, (i =A,B,C,D) (j =1:Carlos, 2:Sara)
FUNCION OBJETIVO:
MIN = 4.5*A1 + 7.8*B1 + 3.6*C1 + 2.9*D1 + 4.9*A2 + 7.2*B2 + 4.3*C2 + 3.1*D2;
RESTRICCIONES:
A1+B1+C1+D1=2;
A2+B2+C2+D2=2;
A1+A2=1;
B1+B2=1;
C1+C2=1;
D1+D2=1;
@BIN(A1);@BIN(B1);@BIN(C1);@BIN(D1);
@BIN(A2);@BIN(B2);@BIN(C2);@BIN(D2);
3
INVESTIGACION DE OPERACIONES II
EJEMPLO 2
Un entrenador pretende elegir la alineación inicial para su equipo de basquetbol. Su equipo consta de 9
jugadores que están calificados (con una escala de 1: malo, 2: regular y 3: excelente) de acuerdo con su
manejo del balón, disparos, rebotes y habilidades en recuperación del balón. Las posiciones en la que a
cada jugador se le permite jugar y las capacidades del jugador son las siguientes:
Dominio de Recuperación
Jugador Posición Disparos Rebote
balón de balón
1 D 3 3 1 3
2 C 2 1 3 2
3 D-O 2 3 2 2
4 O-C 1 3 3 1
5 D-O 3 3 3 3
6 O-C 3 1 2 3
7 D-O 2 2 2 1
8 O-C 1 2 2 3
9 D-C 3 1 3 2
D: Defensiva, C: Central, O: Ofensiva
El equipo inicial de cinco jugadores tiene que satisfacer las condiciones siguientes:
Por lo menos 3 miembros deben ser capaces de jugar en la posición defensiva, por lo menos 2
elementos deben ir en la posición ofensiva y al menos uno estará en la posición central.
El nivel promedio de dominio de balón, disparos y rebotes de los jugadores en la
alineación inicial tiene que ser por lo menos de 2.
Debe empezar el jugador 2 o el jugador 3, pero no ambos.
Si es que el jugador 4 empezara a jugar, entonces el jugador 6 no puede jugar (podrían no entrar
ambos o entrar solamente el jugador 6)
Si el jugador 1 inicia, entonces los miembros 4 y 9 también deben jugar; si no, alguno de éstos
últimos o ambos podrían entrar.
Dadas estas restricciones, el entrenador desea maximizar la capacidad del equipo inicial en recuperación
del balón. Formule un PEB que ayude al entrenador a escoger a su equipo inicial.
Modelo matemático:
!VARIABLES:
Xi = Ingresa o no el jugador i al equipo inicial, donde (i=1,2,3,4,5,6,7,8,9)
FUNCION OBJETIVO;
MAX = 3*X1 + 2*X2 + 2*X3 + X4 + 3*X5 + 3*X6 + X7 + 3*X8 + 2*X9;
!(Maximizar capacidad de recuperar el balón);
!RESTRICCIONES;
X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 = 5; !(5 jugadores);
X1 + X3 + X5 + X7 + X9 >= 3; !(posición defensiva);
X3 + X4 + X5 + X6 + X7 + X8 >= 2; !(posición ofensiva);
X2 + X4 + X6 + X8 + X9 >= 1; !(posición central);
(3*X1+2*X2+2*X3+X4+3*X5+3*X6+2*X7+X8+3*X9)/5 >= 2; !(nivel promedio de dominio);
(3*X1+X2+3*X3+3*X4+3*X5+X6+2*X7+2*X8+X9)/5 >= 2; !(nivel promedio de disparos);
(X1+3*X2+2*X3+3*X4+3*X5+2*X6+2*X7+2*X8+3*X9)/5 >= 2; !(nivel promedio de rebote) ;
X2 + X3 = 1; !(jugador 2 ó 3 inicia);
X4 + X6 <= 1; !(jugador 4 inicia, entonces jugador 6 no juega);
2*X1 <= X4 + X9; !(jugador 1 inicia, jugadores 4 y 9 también inician);
@BIN(X1);@BIN(X2);@BIN(X3);@BIN(X4);@BIN(X5);@BIN(X6);@BIN(X7);@BIN(X8);@BIN(X9);