Sei sulla pagina 1di 57

Modelo Binarios Puros

Programación Entera Binaria


Lógica Binaria

Una introducción al uso de las variables binarias


El problema de asignación
La potencia de un foco
Al desconocer la potencia que consume un foco, esta
puede ser representada con una variable; por ejemplo
«X»

Donde «X» representa «la potencia consumida por un


foco»

Sabemos que la variable «X» puede tomar diversos


valores; desde 0 (cero) hasta ∞ (infinito).

Por tanto podemos decir que la variables «X» es del tipo


«continua»

Así tendríamos:

Si X = 50, significa que la potencia consumida es de 50 W.

X puede oscilar desde 0 a ∞


La condición de un foco
En la diapositiva anterior vimos que la variable «X» podía
representar «la potencia consumida por un foco», en caso
esta sea desconocida…

Pero que pasaría si lo que se desconoce no es su potencia,


sino su condición; es decir no sabemos si está encendido
o apagado?.

¿Es posible representar la condición de un foco en


variables?
Variable Binaria
La respuesta es sí.

Por ejemplo para estos casos donde las decisiones son


dicotómicas (es decir SI o NO, Blanco o Negro, Derecha o
Izquierda, Acepto o Rechazo, etc.), es posible utilizar la
variables de tipo binarias.

Y=0 Las variables binarias son aquellas que se rigen bajo el


sistema BINARIO (0, 1)

Así tendríamos:

Si Y = O, significa que la condición del foco es APAGADA.

Si Y = 1, significa que la condición del foco es ENCENDIDA.

Y=1 La variable «Y» no puede asumir otro valor más que 0 o 1


Lógica Binaria
X1 = 0

X1 + X2 + X3 + X4 = 2

X2 = 0 El recuadro de la derecha ilustra 4 focos, cada uno


identificado con una variable binaria, que
representa su condición (encendido o apagado).
X3 = 1 El recuadro de arriba también ilustra 4 focos, pero
para fines de estudio han sido ocultos con un
manto amarillo. Las variables X1, X2, X3 y X4 son
binarias, y representan la condición de cada uno de
X4 = 0 los focos ocultos.

¿Para cada uno de los recuadros, indique cuántos


focos están encendidos?
Lógica Binaria
X1 = 0

X1 + X2 + X3 + X4 = 2

X2 = 0 Para el recuadro de la izquierda la respuesta es 1, y


es fácil saberlo, pues las imágenes estaban
mostradas.
X3 = 1 Para el recuadro superior a pesar de que los focos
estaban ocultos, si hemos logrado dar con la
repuesta correcta. Cabe ahora preguntarnos,
¿cómo es que llegué a esa conclusión?
X4 = 0
La respuesta es muy simple, utilice una lógica
binaria.
Atención

• La variables binarias, siendo estas


0 o 1, finalmente son numerales,
pudiendo ser utilizados con las
operaciones aritméticas de suma,
resta, multiplicación y división.
Operaciones Aritméticas

X1 Potenciometro
25 Watts

Cada uno de los focos de izquierda consume


X2 potencia cuando está encendido.
50 Watts
El potenciometro registra la potencia consumida
acumulada por los cuatro focos.

X3 Las variables X1, X2, X3 y X4 son binarias, y


75 Watts
representan la condición de cada uno de los focos
(encendido – apagado)
X4 ¿Es posible representar matemáticamente el
100 Watts consumo de la potencia acumulada?
Operaciones Aritméticas

X1 Potenciometro
25 Watts

Sí Potencia Acumulada = PA, entonces


X2
50 Watts PA = 25.X1 + 50.X2 + 75.X3 + 100.X4

PA puede llegar a ser CERO, si X1; X2; X3 y X4 son


iguales a CERO; es decir todos los focos apagados.
X3
75 Watts
También puede llegar a ser 25, si solo el foco 1 está
encendido; es decir X1 = 1; X2 = X3 = X4 = 0.
X4 O también puede ser igual 250 si todos los focos
100 Watts están encendidos. (X1 = X2 = X3 = X4 = 1)
Preguntas de Aplicación
• ¿un proyecto debe ser aceptado SI o NO?
• ¿un operario realizará un trabajo SI o No?
• ¿un proveedor debe ser contratado SI o NO?
Modelos PEB
• Modelo de Asignación
– Completa e Incompleta

• Modelo Binario Puro


– Mochilero,

• Modelo Binario Mixto


– Cargo Fijo, etc.
Se puede usar variables binarias cuando..

• ¿debe emprenderse un proyecto?


• ¿debe hacerse cierta inversión?
• ¿debe elegirse cierto lugar para instalar una fabrica?
• ¿debe cierta operación permanecer abierta?
• ¿debe cierta ruta seleccionarse?
• ¿debe seleccionarse cierto camión?
• ¿debe cierta actividad comenzar en un momento
dado?
• ¿debe venderse cierto activo en un periodo dado?
• Además de los problemas de decisión
Modelo del Mochilero
Modelo del Mochilero: problema de optimización

• El problema de la mochila, es un problema de optimización,


que busca maximizar el uso de un ÚNICO espacio, del que se
disputan varios elementos, con diferentes caracteres como
son: peso, volumen, funcionalidad, etc.
• La elección debe buscar maximizar la utilización, y la selección
de entre el conjunto de elementos, lo hará con base a su
utilidad y características.
Modelo del Mochilero: problema de de optimización

Variable de decisión:
• ¿cuál o cuales objetos (objetos, personas, etc)
se cargarán dentro de la bolsa (equipo, etc)?
Función Objetivo
• Maximizar la utilidad de la carga
Restricciones
• Capacidad volumétrica, peso; etc, de la bolsa.
Notación Compacta en Lingo

Sets:
Elementos /1..e/: X, funcionalidad, umdecarga;
!donde “X”: es la varibale binaria de decisión;
End set
!Función Objetivo;
@SUM(elementos(i): X(i)*funcionalidad(i));
!Restricciones;
@SUM(X(i)*umdecarga(i))<=capacidaddemochila;
@for (elementos(i):@BIN(X(i));
end
Decisión del Mochilero
Caso: doctora de Juguetes
•Proponer un modelo, que
incluya: los elementos, las
variables, los caracteres a
considerar para la elección del
kit de atención de la Dra. De
juguetes.
Caso: mochila de emergencia
•Proponer un modelo, que
incluya: los elementos, las
variables, los caracteres a
considerar para la elección del
kit de emergencia a utilizar en
un sismo.
Modelo de Presupuesto de Capital
¿Emprender o no un proyecto?
Modelo matemático
Proyectos excluyentes e incluyentes
• Los proyectos 1 y 2 son incluyentes, quiere decir que si uno de ellos va, el
otro también. Y de manera viceversa, si un no va, el otro tampoco.

La representación matemática sería X 1 = X2


• Los proyectos 3 y 4 son excluyentes, quiere decir que si uno de ellos va, el
otro no. Adicionalmente se dice:
– De todas maneras debe ir uno de ellos
La representación matemática sería X 1 + X2 = 1

– No necesariamente debe ir uno de ellos.


La representación matemática sería X 1 + X2 ≤ 1
Modelo de cobertura
Modelo de cobertura
Modelo de cobertura: Problema de Optimización

30

LOS SERVIDORES La política EL SERVICIO


de servicio
Modelo de cobertura: Modelo Matemático

Variable de decisión:
• ¿cuál o cuales servidores va atender el (los)
servicios?
Función Objetivo
• La menor cantidad de servidores (o recursos) para
atender los servicios 30
Restricciones
• La política de servicio para cada servicio (cliente)
Caso: ¿Instalar o no teléfonos de Seguridad?
Caso: ¿Instalar o no teléfonos de Seguridad?
Caso: ¿Instalar o no teléfonos de Seguridad?
Caso: ¿Ubicar o no un vigilante?
Caso: ¿Ubicar o no un vigilante?
• Variables de decisión:
Xi = 1; se ubica un vigilante en la puerta “i”
Xi = 0; No se ubica un vigilante en la puerta “i”
i = 1, 2, … , 9
• Función Objetivo:
Minimizar X1 + X2 + X3 + X4 + X5 + X6 + X7 +X8 +X9
• Restricciones:
X1+X2+X3+X4 ≥ 1 (SalaTut)
X2+X9 ≥ 1 (SalaCultura)
X9+X8 ≥ 1 (SalaEsfinge)
X3+X5 ≥ 1 (SalaJeroglificos)
X5+X6 ≥ 1 (SalaEgipto)
X6 ≥ 1 (SalaPiramide)
X7+X8 ≥ 1 (SalaDioses)
X7+X4 ≥ 1 (SalaAnubis)

• Solución óptima:
La solución óptima lo conforman los vigilantes en las puertas: 3, 6, 7 y 9
Caso: ¿Construir o no una estación?
Caso: ¿Optar o no por una ruta?
Caso: ¿Optar o no por una ruta?
Elección del Comité
Modelo matemático
• Variables de decisión:
Xi = 1; el nominado “i” forma parte del comité
Xi = 0; el nominado “i” NO forma parte del comité
i = a, b, c, d, e, f, g, h, i, j
• Función Objetivo:
Minimizar X1 + X2 + X3 + X4 + X5 + X6 + X7 +X8 +X9 + X10
• Restricciones:
X1+X2+X3+X4+X5 ≥ 1 (al menos una mujer)
X6+X7+X8+X9+X10 ≥ 1 (al menos un hombre)
X1+X2+X3+X10 ≥ 1 (al menos un estudiante)
X5+X6 ≥ 1 (al menos un administrativo)
X4+X7+X8+X9 ≥ 1 (al menos un profesor)
• Solución óptima:
La solución óptima lo conforman: c, d y f
Proyecto Ciudad Segura
Caso: Proyecto Ciudad Segura
Ante el incremento de la delincuencia, y la
inseguridad ciudadana, inclusive en el circuito
turístico de la ciudad, el alcalde y el director de
operaciones de la policía ha convenido en establecer
una Política de Seguridad:
“Por lo menos un policía en la esquina de mi
cuadra”.
Proponga la distribución de policías en la ciudad,
que cumpla la política de seguridad con la menor
cantidad de los mismos.
Modelo del Vendedor Viajero
El recorrido (en minutos)
Variables

X(ij): decidir la ruta del colegio “i” al colegio “j”

F.O: Min Suma (X(i,j) * Tiempo (i,j))


Restricciones
sudoku
Sudoku 4 x 4: Resolverlo
Sudoku 4 x 4: Reglas

Cada Casillero, tiene una posición

1 2 3 4

4
Sudoku 4 x 4: Reglas

4 3 2 1
Cada Casillero, tiene 04 opciones
Sudoku 4 x 4: Reglas
En cada región no se pueden repetir los números
Sudoku 4 x 4: Reglas
En cada columna no se pueden repetir los números
Sudoku 4 x 4: Reglas
En cada fila no se pueden repetir los números
Sudoku 4 x 4:
• Cada casillero tiene una posición; por ejemplo el número 4 del ejemplo presentado, está en la posición: 1
vertical, 4 horizontal. El número 1 está en la posición: 3 vertical, 3 horizontal.
• Además cada casillero tiene 4 opciones: puede ser 1, 2, 3 o 4.
• Por ejemplo para el casillero ubicado en la posición: 3 horizontal, 4 vertical (pintado de color amarillo), se
puede representar a través de cuatro variables:
- X341; Sí X341 = 1, entonces el número 1 irá en el casillero amarillo.
Sí X341 = 0, entonces el número 1 NO irá en el casillero amarillo.

vertica
- X342; Sí X342 = 1, entonces el número 2 irá en el casillero amarillo.
Sí X342 = 0, entonces el número 2 NO irá en el casillero amarillo.

l
- X343; Sí X343 = 1, entonces el número 3 irá en el casillero amarillo.
Sí X343 = 0, entonces el número 3 NO irá en el casillero amarillo.
horizontal
- X344; Sí X344 = 1, entonces el número 4 irá en el casillero amarillo.
Sí X344 = 0, entonces el número 4 NO irá en el casillero amarillo.
• Sí cada casilla tiene 4 opciones, entonces el sudoku completo tendrá 64 variables ( = 4 x 16 ).
• Además en cada casillero solo puede asumir una opción; por tanto…

X341 + X342 +X343 +X344 = 1


vertica
Sudoku 4 x 4:

l
• Para el cubo 2 x 2 identificado de color amarillo. Se encuentran las variables: horizontal
Casillero 3Horizontal, 3Vertical : X331; X332; X333; X334.
Casillero 3Horizontal, 4Vertical : X341; X342; X343; X344.
Casillero 4Horizontal, 4Vertical : X341; X342; X343; X344.
Casillero 4Horizontal, 3Vertical : X341; X342; X343; X344.
• Además en cada cubo de 2 x 2, no se pueden repetir los números; por tanto:
X341 + X441 +X431 + X331 = 1 (solo puede haber UN número UNO)
X342 + X442 +X432 + X332 = 1 (solo puede haber UN número DOS)
X343 + X443 +X433 + X333 = 1 (solo puede haber UN número TRES)
X344 + X444 +X434 + X334 = 1 (solo puede haber UN número CUATRO)
• Recordemos además que para el casillero 3Horizontal, 3Vertical el dato ya está definido; Por tanto
los valores de las variables serían:
X331 = 1; X332 = X333 = X334 = 0.

• Lo que hace deducir que X341 = X441 = X431 = 0


vertica
Sudoku 4 x 4:

l
horizontal
• En cualquiera de las líneas verticales, como por ejemplo la de color amarillo, o en cualquiera de
las horizontales, no se pueden repetir los números.
• Por tanto, y para la vertical 4, por ejemplo, tenemos:
X141 + X241 +X341 + X441 = 1 (solo puede haber UN número UNO)
X142 + X242 +X342 + X442 = 1 (solo puede haber UN número DOS)
X143 + X243 +X343 + X443 = 1 (solo puede haber UN número TRES)
X144 + X244 +X344 + X444 = 1 (solo puede haber UN número CUATRO)
• Recordemos además que para el casillero 1Horizontal, 4Vertical el dato ya está definido; Por tanto
los valores de las variables serían:
X141 = X143 = X144 = 0; X142 = 1.

• Lo que hace deducir que X141 = X143 = X144 = 0

• En un modelo genérico serían en total : 64 restricciones y 64 variables


- 1 por casillero; ósea 16
- 4 por cubo 2 x2; ósea 16
- 4 por cada vertical; ósea 16
- 4 por cada horizontal; ósea 16
Sudoku 9 x 9

Potrebbero piacerti anche