Está en la página 1de 12

INVESTIGACIÓN DE

OPERACIONES

CARRERA DE INGENIERÍA INDUSTRIAL Y COMERCIAL


INVESTIGACIÓN DE
OPERACIONES

MODELO DE ASIGNACIÓN
APLICACIÓN DE UN MODELO BINARIO PURO

CARRERA DE INGENIERÍA INDUSTRIAL Y COMERCIAL


Modelo de Asignación
• Los problemas de asignación implican determinar la
asignación más eficiente de:
– Personas a trabajos (variación en habilidades afecta el
costo de completar un trabajo),
– Máquinas a tareas (distintas eficiencias o tiempos),
– Patrullas policíacas a sectores de la ciudad (resultados),
– Personal de ventas a territorios (resultados, eficacia).
• El objetivo podría ser:
– Minimizar los tiempos de recorridos o costos, o
– Maximizar la eficacia de las asignaciones.
• Una de las principales condiciones de este modelo es
que UN trabajo solo puede ser hecho UNA sola vez.
Caso de aplicación
• El entrenador de un equipo de natación debe asignar
nadadores para la prueba de 200mt postas
combinadas, que irán a las olimpiadas juveniles. Como
muchos de sus mejores nadadores son rápidos en más
de un estilo, no es fácil decidir cuál nadador asignar a
cada uno de los cuatro estilos. Los cinco mejores
nadadores y sus mejores tiempos -en segundos- en
cada estilo son los siguientes:
Carlos Manuel David Anthony Boris
Espalda 37.7 32.9 33.8 37 35.4
Pecho 43.4 33.1 42.2 34.7 41.8
Mariposa 33.3 28.5 38.9 30.4 33.6
Libre 29.2 26.4 29.6 28.5 31.1
Modelo de Asignación (completo)

06 trabajadores 06 trabajos

A cada trabajador le corresponde un trabajo


A cada trabajo le corresponde un trabajador
Modelo de Asignación (completo)

05 máquinas 05 trabajos
A cada máquina le corresponde un trabajo
A cada trabajo le corresponde una máquina
Modelo de Asignación (incompleto)

06 trabajadores 03 trabajos

A cada trabajo le corresponde a lo más un trabajador


A todo trabajador le corresponde un trabajo
Modelo de Asignación (incompleto)

04 trabajadores 06 trabajos

A cada trabajo le corresponde un trabajador


A todo trabajador le corresponde a lo más un trabajo
Ejemplo de Aplicación
Los tres hijos de Joe: Karen, Terry y Paul, desean ganar algún dinero para sus
gastos personales. El señor Joe eligió tres tareas para sus hijos: podar el
césped, pintar la puerta de la cochera y lavar los automóviles de la familia.
Para evitar la competencia anticipada entre los hermanos, les pide que
presenten licitaciones individuales (secretas) por lo que consideren un pago
justo por cada una de tareas. La tabla siguiente resume las licitaciones
recibidas. Los niños respetaran la decisión de su padre con respecto a la
asignación de las tareas.

Podar Pintar Lavar


Se solicita utilizar un modelo de
asignación que permita
Karen $15 $10 $9
minimizar el costo que incurrirá
Terry $9 $15 $10 el Sr. Joe.
Paul $10 $12 $8
Ejemplo de Aplicación: Esquema

Xij
Podar

Pintar

Lavar

Xij = asignación del niño «i» a la tarea «j»


Xij = es una variable binaria
Ejemplo de Aplicación: Modelo
Definición de Variables:

• 𝑋𝑖,𝑗 = 𝑎𝑠𝑖𝑔𝑛𝑎𝑐𝑖ó𝑛 𝑑𝑒𝑙 𝑛𝑖ñ𝑜 𝑖 𝑎 𝑙𝑎 𝑡𝑎𝑟𝑒𝑎 𝑗


• 𝐶𝑜𝑠𝑡𝑜𝑖,𝑗 = 𝑐𝑜𝑠𝑡𝑜 𝑞𝑢𝑒 𝑐𝑜𝑏𝑟𝑎𝑟á 𝑒𝑙 𝑛𝑖ñ𝑜 𝑖 𝑝𝑜𝑟 𝑟𝑒𝑎𝑙𝑖𝑧𝑎𝑟 𝑙𝑎 𝑡𝑎𝑟𝑒𝑎 𝑗

• Función Objetivo:

• 𝑀𝑖𝑛 σ3𝑖=1. σ3𝑗=1 𝐶𝑜𝑠𝑡𝑜𝑖,𝑗 ∗ 𝑋𝑖,𝑗

Restricciones:
• ∀𝑖: σ3𝑗=1 𝑋𝑖,𝑗 = 1; "𝑢𝑛𝑎 𝑡𝑎𝑟𝑒𝑎 𝑒𝑠 𝑟𝑒𝑎𝑙𝑖𝑧𝑎𝑑𝑎 𝑢𝑛𝑎 𝑠𝑜𝑙𝑎 𝑣𝑒𝑧"
• ∀𝑗: σ3𝑖=1 𝑋𝑖,𝑗 = 1; "𝑢𝑛 𝑛𝑖ñ𝑜 ℎ𝑎𝑐𝑒 𝑢𝑛𝑎 𝑠𝑜𝑙𝑎 𝑡𝑎𝑟𝑒𝑎"
• ∀𝑖, ∀𝑗: 𝑋𝑖,𝑗 = 𝐵𝑖𝑛
Solución en Lingo Compacto
! Declaración de Variables;
sets:
Nino /Karen Terry Paul /: Disponibilidad;
Tarea / Podar Pintar Lavar/: Demanda;
NxT(nino, tarea): Costo, X; Podar Pintar Lavar
end sets
! Ingreso de Datos;
Karen 0 1 0
data: Terry 1 0 0
Costo = 15 10 9 9 15 10 10 12 8;
Disponibilidad = 1 1 1; Paul 0 0 1
Demanda = 1 1 1;
end data Z* = 27
! Funcion objetivo;
[MinCosto] min = @sum(NxT(i,j): Costo(i,j)*X(i,j));
! Restricciones;
@for(nino(i): @sum(tarea(j): x(i,j)) = disponibilidad(i));
@for(tarea(j): @sum(nino(i): x(i,j)) = demanda(j));
@for(NxT(i,j) :@BIN(x));
END

También podría gustarte