1-02-Asignación - Laboratorio de Comunicaciones Digitales

Anuncio
Optimización de Redes
Problemas de asignación
Juan Nehuen Gonzalez Montoro
Dr. Jorge M. Finochietto
14 de abril de 2015
LCD
EFN
UNC
Laboratorio de Comunicaciones Digitales
Facultad de Ciencias Exactas, Físicas y Naturales
Universidad Nacional de Córdoba, Argentina
Outline
1 Problema de asignación
2 Problema del empaquetado
Optimización
2 / 18
Problema de asignación
Definición
Dado un conjunto de N items y M contenedores, si cada item tj tiene
un peso wj asociado ¿Cuál es la asignación de items a los
contenedores que minimiza el peso máximo acumulado?
Optimización → Problema de asignación
3 / 18
Problema de asignación
Supongamos entonces que tenemos:
{t1 , t2 , ..., tN } un conjunto de items que deben ser repartidos.
M contenedores.
wj el peso asociado al item tj
Optimización → Problema de asignación
4 / 18
Problema de asignación
Lo que buscamos es la forma de repartir los items en los diferentes
contenedores de manera que el peso acumulado en cada contenedor
sea el menor posible.
Optimización → Problema de asignación
5 / 18
Problema de asignación
Lo que buscamos es la forma de repartir los items en los diferentes
contenedores de manera que el peso acumulado en cada contenedor
sea el menor posible.
Optimización → Problema de asignación
6 / 18
PA - Formulación ILP
Datos de entrada:
N : Cantidad de items
M : Cantidad de contenedores
wj : Peso del item tj con 1 ≤ j ≤ N
Optimización → Problema de asignación
7 / 18
PA - Formulación ILP
Datos de entrada:
N : Cantidad de items
M : Cantidad de contenedores
wj : Peso del item tj con 1 ≤ j ≤ N
Variables :
xij =
1 Si el item j es asignada al contenedor i.
0
Caso contrario.
con i = 1, 2, ..., M
Optimización → Problema de asignación
8 / 18
PA - Formulación ILP
Cada item debe ser asignado a un único contenedor, teniendo en
cuenta la definción de xij podemos establecer la primera restricción:
m
X
xij = 1
i=1
Esta restricción es válida gracias a la restricción 0 ≤ xij ≤ 1,
asegurando además que todos los items sean asignados.
Optimización → Problema de asignación
9 / 18
PA - Formulación ILP
Ahora necesitamos buscar la manera de expresar “El máximo peso
acumulado en un contenedor”.
Para el contenedor i el peso acumulado es:
N
X
xij wj
j=1
Si creamos una nueva variable Wmax cuyo significado sea el máximo
peso acumulado, podemos afirmar que el peso acumulado en cada
contenedor está acotado por Wmax .
N
X
xij wj ≤ Wmax
∀i ∈ {1, 2, ..., M}
j=1
Optimización → Problema de asignación
10 / 18
PA - Formulación ILP
Finalmente si planteamos como función objetivo minimizar Wmax:
Formulación ILP del problema de asignación
Minimizar:
z = Wmax
Sujeto a:
M
X
xij = 1
∀j ∈ {1, 2, ..., N}
i=1
N
X
xij wj ≤ Wmax
∀i ∈ {1, 2, ..., M}
j=1
0 ≤ xij ≤ 1,
0 ≤ Wmax
xij ∈ Z; Wmax ∈ R
Optimización → Problema de asignación
11 / 18
Formato de archivos IBM LP
1
Maximize
2
obj : 2 x2 + 3 x3
Subject To
c1 : x2 + x3 - x1 <= 20
c2 : - 3 x2 + x3 + x1 <= 30
Bounds
0 <= x1 <= 40
All other variables are >= 0.
General
x1
x2
x3
3
4
5
6
7
8
9
10
11
12
Optimización → Problema de asignación
12 / 18
Problema del empaquetado
Definición
Dados N items asignar cada item a un contenedor de forma que el
peso total de cada contenedor no exceda c (la capacidad máxima de
los contenedores)y el número de contenedores utilizados sea mı́nimo.
Optimización → Problema del empaquetado
13 / 18
Problema del empaquetado
Definición
Dados N items asignar cada item a un contenedor de forma que el
peso total de cada contenedor no exceda c (la capacidad máxima de
los contenedores)y el número de contenedores utilizados sea mı́nimo.
Optimización → Problema del empaquetado
14 / 18
Problema del empaquetado
Este problema se diferencia del anterior en que el número de
contenedores (de capacidad finita) utilizados es variable, como
máximo se utilizaran tantos contenedores como items. supongamos
que tenemos:
N : Cantidad de items
wj : Peso del item j con 1 ≤ j ≤ N
c : Capacidad de los contenedores
Debemos mantener la restricción de que cada item puede ser asignado
a un solo contenedor:
N
X
xij = 1
∀j ∈ 1, 2, ..., N
i=1
Optimización → Problema del empaquetado
15 / 18
Problema del empaquetado
En segundo lugar necesitamos restringir el contenido de cada
contenedor a su capcidad c:
N
X
wj xij ≤ c
j=1
El objetivo de este problema es minimizar la cantidad de contenedores
utilizados, por lo que es necesario incluir una nueva variable yi que
nos indique si el contenedor i está siendo utilizado, donde 0 ≤ i ≤ N.
1 Si el contenedor i contiene al menos un item.
yi =
0
Si el contenedor se encuentra vacio.
Optimización → Problema del empaquetado
16 / 18
Problema del empaquetado
Es posible modificar la restricción de capacidad para incluir la variable
yi :
N
X
wj xij ≤ cyi
j=1
De esta manera solo pueden ser asignados items a un contenedor cuya
variable asociada yi esté en 1. Finalmente solo nos queda expresar la
función objetivo.
Minimizar: z =
N
X
yi
i=1
Optimización → Problema del empaquetado
17 / 18
Problema del empaquetado
Formulación ILP del problema del empaquetado
Minimizar:
z=
N
X
yi
i=1
Sujeto a:
N
X
xij = 1
∀j ∈ 1, 2, ..., N
i=1
N
X
wj xij ≤ cyi
∀i ∈ 1, 2, ..., N
j=1
0 ≤ xij ≤ 1, 0 ≤ yi ≤ 1
xij , yi ∈ Z
Optimización → Problema del empaquetado
18 / 18
Descargar