Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
04/11/2006 2
Problema : determinar :
– El número de almacenes o plantas.
– La localización para cada uno.
– El tamaño de cada planta o almacén.
Objetivo.
– Suministrar los productos demandados por
un conjunto de clientes.
1
04/11/2006 3
Suposiciones.
– La ubicación de los clientes es conocida.
– Existe un conjunto de localizaciones
potenciales preseleccionadas.
Resolución.
– Técnica Branch & Bound.
– Formulación y procedimiento E. & Ray.
– Problema lineal mixto.
04/11/2006 4
NOTACIÓ
NOTACIÓN:
m : número de clientes
n : número de emplazamientos preseleccionados
Yij : fracció
fracción de demanda del cliente; satisfecha por una planta
situada en j ; i=1,...,m ; j=1,.....,n
dij
Yij =
Di
Xj : 1, si se sitú
sitúa la planta en j
0, en caso contrario
Cij:
Cij: costo de suministrar la demanda completa del cliente i desde
una planta situada en j.
fj:
fj: costo fijo resultante de situar una planta en j
2
04/11/2006 5
FORMULACIÓ
FORMULACIÓN DEL PROBLEMA:
m n n
P0 : MIN Z = ∑ ∑ Cij ⋅ Yij + ∑ fj ⋅ Xj (1)
i =1 j =1 j =1
s.a. ∑ Y ij ≤ m ⋅ X j
i =1
; j=1,...,n (2)
n
∑ Yij = 1 (3)
j =1
Xj = ( 0,1) ∀ j (5)
04/11/2006 6
FORMULACIÓ
FORMULACIÓN DEL PROBLEMA:
RESTRICCIONES :
3
04/11/2006 7
RESOLUCIÓ
RESOLUCIÓN :
Z1
Xk=0
Xk=0
Nodo terminal
Z0
Xj ∈ {0,1} ∀ j
Xk=1
Xk=1
Z2
04/11/2006 8
Conjunto de índices:
k0 = {j / Xj = 0}
k1 = {j / Xj = 1}
k2 = {j / Xj = Xj no asignado}
m n n
m
∑ Yij ≤ 0
i =1
j ∈ k0 (7)
4
04/11/2006 9
∑Yij ≤ m
i =1
j ∈ k1 (8)
∑Yij ≤ m Xj
i =1
j ∈ k2 (9)
Y ij ≥ 0 ∀ i,j (4)
X j = ( 0 ,1 ) j ∈ k2 (5)
04/11/2006 10
∑ ∑ Yij = ∑1 = m
i =1 j =1 i =1
Ademá
Además, si descomponemos :
0
n
5
04/11/2006 11
Ademá
Además :
^
Funció
Función Objetivo Z=Z+ ∑ fj
j ∈k 1
04/11/2006 12
P2
^ m
m
∑ Yij ≤ mXj j ∈ k2
i =1
6
04/11/2006 13
Cómo simplificar P2 :
Observació
Observación 1: Si Yij*,
Yij*, Xj*
Xj* solució
solución mí
mínima factible de P2 y si
todo fj > 0, entonces se van a cumplir las
siguientes relaciones:
m
∑ Yij * ≤ mXj * j ∈ k2 (10)
i =1
Xj*
Xj* < 1 j ∈ k2 (11)
Aplicando la observació
observación 1, P2 a P3, se tiene :
04/11/2006 14
P3
^ m
MIN Z= ∑ ∑ CijYij + ∑ fjXj
i =1 j∈ k 1∪K 2 j∈ k 2
m
∑ Yij ≤ mXj j ∈ k2 (13)
i =1
Yij ∫ 0 j ∈ k1 U k2 ; i = 1,...,m
1 ∫ Xj ∫ 0 j ∈ k2
7
04/11/2006 15
Para simplificar P3 :
Observació
Observación 2 :
0, si j ∈ k1
gj
fj,
fj, si j ∈ k2
Yij,
Yij, Xj soluciones factibles y teniendo en cuenta (13)
1 m m
gj
∑ fjXj = ∑ fj ( m ∑ Xij ) = ∑ ∑ Yij
j ∈k 2 j∈k 2 i =1 i =1 j ∈ k 1∪k 2 m
04/11/2006 16
P3 se simplifica a P4 :
m
^ gj
P4 MIN Z = ∑ ∑ (Cij + )Yij
i =1 j∈ k 1∪k 2 m
Localizar mí
mínimos por fila.
gj gs
αi = min (Cij + ) = Cis + ∀ i = 1,...,m
j ∈ k 1∪k 2 m m
8
04/11/2006 17
solució
solución óptima Yis*
Yis* = 1
Yij*
Yij* = 0 j = s j ∈ k1 U k2
El valor de Xj*
Xj* :
1 m
Xj * = ∑ Yij *
m i =1 j ∈ k2
El valor de la funció
función objetivo en P0 será
será :
^
Z=Z+ ∑ fj
j∈k 1
04/11/2006 18
3 EMPLAZAMIENTOS
5 CLIENTES
4 6 8
3 4 7
Cij = 10 5 7 fj = (5 4 6)
12 8 6
8 4 6
9
04/11/2006 19
1 0 0
1 0 0
Yij = 0 1 0
0 0 1
0 1 0
04/11/2006 20
Z1
X1=0
Z0 26,8
X1=1
Z2
10
04/11/2006 21
1 0
1 0
Yij = 1 0
0 1
1 0
Está
Está asignada la planta 1 ver Cij (Yij,
Yij, nodo 0), luego el problema
se reduce a 3 localizaciones y 3 clientes.
04/11/2006 22
1 0 0
1 0 0
Yij = 0 1 0
0 0 1
0 1 0
Z2 = 19,6 (α
(αi) + 5 (costo f1) + 4 (cliente) + 3 (cliente) = 31,66
Xj = {1 ; 2/3 ; 1/3} no entero : no estamos en un nodo terminal
11
04/11/2006 23
Z1 Z3
X1=0 29,4
Z0 26,8 Z4
X1=1 31,6
Z2
NODO 3 :
k0 = 1, 2 k1 = 0 ; k2 = 3
Xj = {0, 0, 1} Nodo terminal pero no se sabe
si es óptimo
Z3 = 6 + 8 + 7 + 7 + 6 + 6 = 40
04/11/2006 24
NODO 4 : k0 = 1; k1 = 2; k2 = 3
g2 = 0; g3 = 6
Está
Está asignada la planta 2, ver Cij (Yij,
Yij, nodo 1), todos asignados
menos el cliente 4
Z1 Z3 = 40 Terminal
X1=0 29,4
Z0 26,8 Z4 = 31 Terminal
X1=1 óptimo
31,6
Z2
12
04/11/2006 25
COBERTURA
((Covering)
Covering)
04/11/2006 26
Cobertura.
13
04/11/2006 27
Cobertura
2 Tipos de problemas
Cobertura Total
– Tantas instalaciones hagan falta para dar un
buen servicio
Cobertura Parcial
– Restricciones de Inversión (n estaciones) y
minimizar esfuerzo
04/11/2006 28
Criterios de Cobertura.
Orientado a Servicios.
Por ejemplo :
– “Estar a menos de 150 mts. de una estación.”
– “Estar a menos de 5 minutos de ella.”
– “Estar a un costo menor a $ P de ella.”
– Etc.
14
04/11/2006 29
Criterios de Cobertura.
Definició
Definición de un pará
parámetro para indicar si el cliente
está
está cubierto :
0 si el cliente
cliente " i" no está
está c ubierto por
por " j".
j".
α ij = { 1 si el cliente
cliente "i"
"i" está
está cubierto
cubierto por " j".
j".
i : clientes ;
j : estaciones de servicio.
0 si la estació
estación de servicio j no está
está instalada.
Xj = { 1 si la estació
estación de servicio j está
está instalada.
04/11/2006 30
Cobertura Total.
Se asegura que todos los clientes estáestán cubiertos, al mí
mínimo
costo de la instalació
instalación. No hay restricció
restricción presupuestaria.
n
Funció
Función Objetivo : Min Z = ∑Cj⋅Xj
j= 1 Cj : Costo de instalació
instalación
Sujeto a : actualizado
(Inversió
(Inversión + Operació
Operación)
n
(1) ∑ α ij ⋅ X j ≥ 1 (Al menos una estació
estación cubre al cliente “i”.)
j =1
(2) Xj ∈ {0,1} ; j ∈ [1 , n]
15
04/11/2006 31
Cobertura Parcial.
Se busca maximizar la cobertura de los clientes, con un nú
número
limitado de servidores (K).
m
Funció
Función Objetivo : Max Z = ∑
i =1
maxj (αij ⋅ Xj)
Busca evitar la redundancia
Sujeto a :
n
(1) ∑Xj ≤ K (Limitació
(Limitación de recursos.)
j=1
(2) Xj ∈ {0,1} ; j ∈ [1 , n]
04/11/2006 32
n
Funció
Función Objetivo : Min Z =
∑
i=1
min {aij}
∈j T(x)
Sujeto a : T(x) = { j / Xj = 1}
n
(1) ∑Xj ≤ K (Limitació
(Limitación de recursos.)
j=1
16
04/11/2006 33
Enumeración Implícita.
Branch & Bound
Heurísticos
– Una de las técnicas de resolución heurística
es el algoritmo de Ignizio. Es optimizante y
de tipo constructivo. A continuación se
describe en detalle.
Otros :
– Resolución Numérica (Ej : Solver de Excel)
04/11/2006 34
Ignizio.
El algoritmo de Ignizio :
– Es conocido también como el problema de
cobertura parcial generalizada.
– Es un algoritmo de tipo heurístico de alta
confiabilidad (cercana al 96 %).
17
04/11/2006 35
PRESENTACIÓ
PRESENTACIÓN DEL ALGORITMO DE IGNIZIO.
La expresió
expresión Mín a(i,j)
a(i,j) significa que si un cliente i puede
ser atendido por varias instalaciones j, se escogerá
escogerá aquella que este
más cercana al cliente. Cabe señ
señalar que cada cliente se atenderá
atenderá por
un só
sólo almacé
almacén, sin embargo un almacé almacén puede atender a un
sinú
sinúmero de clientes.
04/11/2006 36
La formulació
formulación original del problema es la siguiente:
M1
Min Z = ∑ Min a(i,j)
a(i,j) (1)
i=1 j ∈ T(x)
T(x)
M2
Sujeto a : ∑ X(j)
X(j) < M3 (2)
j=1
X(j)={0,1}
X(j)={0,1} j=1,....., M2 (3)
Donde
T(x)
T(x) = {j / x(j)=1}
x(j)=1}
18
04/11/2006 37
04/11/2006 38
P(i)
P(i) = min a(i,j)
a(i,j)
j ∈ T(x)
T(x)
M1
DTC(s) = ∑ máx {p(i)
DTC(s) p(i) - a(i,s),0}
a(i,s),0} (1)
i=1
19
04/11/2006 39
M1 M1
TC{T(x)} = ∑ min a(i,j)
TC{T(x)} a(i,j) = ∑ P(i)
P(i) (2)
i=1 j ∈ T(x)
T(x) i=1
04/11/2006 40
Si la localizació
localización “s” es eliminada de T(x)
T(x) para dar lugar a un
nuevo conjunto T'(x), el costo del nuevo conjunto de localizaciones
localizaciones es:
M1
TC{T '(x)} = ∑ min a(i,j)
a(i,j) (3)
i=1 j ∈ T '(x)
Si la localizació
localización que tiene el menor valor de ∆TC(s)
TC(s) es la última
asignada, no debe ser eliminada del conjunto T(x),T(x), ya que de hacerse
serí
sería asignada en la siguiente iteració
iteración. Esto es si el mí
mínimo valor de
∆TC corresponde a cualquier localizació
localización que no sea la última, debe
eliminarse de T(x).
T(x).
20
04/11/2006 41
M1
Se calcula C(j) = ∑ a(i,j)
C(j) a(i,j) para j = 1,. . . , M2
i=1
04/11/2006 42
Paso 2 : Selecció
Selección de la segunda ubicació
ubicación
M1
DTC(s) = ∑ máx {p(i)
DTC(s) p(i) - a(i,s),
a(i,s), 0}
i=1
21
04/11/2006 43
Paso 3 : Formació
Formación de las mejores combinaciones
Sea P = P(i),
P(i), donde para cada i = 1,...,M1 se tiene:
P(i)
P(i) = min a(i,j)
a(i,j)
j ∈ T(x)
T(x)
Si ∑ X(s)
X(s) = 2 y M3 = 2, ir al paso 7.
s∈T(x)
T(x)
Si ∑ X(s)
X(s) = 2 y M3 > 2, ir al paso 2. De otra manera ir al paso 4.
s∈T(x)
T(x)
04/11/2006 44
Paso 4 : Formació
Formación de una asignació
asignación.
Sea L = ∑ X(s).
X(s). Entonces T(x)
T(x) = {j(1),.....,j(l
{j(1),.....,j(l)}.
)}.
s ∈ T(x)
T(x)
22
04/11/2006 45
M1
TC(s) = ∑ (min a(i,r)
∆TC(s) a(i,r) - p(i))
p(i))
i=1 r ∈ T(x)
T(x)
r≠s
Si el Mín ∆TC(s)
TC(s) = ∆TC(j(l))
TC(j(l)) ir al paso 6, de otra manera
eliminar del conjunto Q aquella columna a(s) a(s) que tenga el Min
∆TC(s),
TC(s), eliminar “s” de T(x)
T(x) y hacer X(s)=0.
X(s)=0. Definir:
P(i)
P(i) = min a(i,j)
a(i,j) e ir al paso 2.
j ∈ T(x)
T(x)
04/11/2006 46
Paso 6 : Verificació
Verificación.
Si L = ∑ X(s)
X(s) = M3 ir al paso 7, de otra manera ir al paso 2.
s ∈ T(x)
T(x)
Paso 7 : Asignació
Asignación.
min a(i,s).
a(i,s).
s ∈ T(x)
T(x)
23
04/11/2006 47
Localizació
Localización Preseleccionada (j)
1 2 3 4 5 6 7 8
1 32 8 53 19 6 90 43 74
2 54 72 91 87 30 25 10 40
Cliente 3 98 10 7 84 60 8 12 24
(i) 4 3 22 45 60 28 66 85 8
5 20 56 98 5 51 19 28 68
04/11/2006 48
PASO 1
Matriz de coeficientes A(I,J)
A(I,J)
Localizació
Localización Preseleccionada (j)
1 2 3 4 5 6 7 8 P(i)
P(i)
1 32 8 53 19 6 90 43 74 8
Cliente ( i )
2 54 72 91 87 30 25 10 40 72
3 98 10 7 84 60 8 12 24 10
4 3 22 45 60 28 66 85 8 22
5 20 56 98 5 51 19 28 68 56
C(j)
C(j) 207 168 294 255 175 208 178 214 T(x)={2}
T(x)={2}
Min
24
04/11/2006 49
PASO 2
Matriz de coeficientes A(I,J)
A(I,J)
Localizació
Localización Preseleccionada (j)
1 3 4 5 6 7 8 P(i)
P(i)
1 32 53 19 6 90 43 74 8
Cliente ( i )
2 54 91 87 30 25 10 40 72
3 98 7 84 60 8 12 24 10
4 3 45 60 28 66 85 8 22
5 20 98 5 51 19 28 68 56
DTC 73 3 51 49 86 90 46 T(x)={2,7}
T(x)={2,7}
Max
04/11/2006 50
PASO 3 T(x)
T(x) = {2, 7}
P(i)
P(i) = {8, 10, 10, 22, 28}
∑X(s)
X(s) = 2 y M3 > 2 ⇒ Paso 2
PASO 2
Matriz de coeficientes A(I,J)
A(I,J)
Localizació
Localización Preseleccionada (j)
1 3 4 5 6 8 P(i)
P(i)
1 32 53 19 6 90 74 8
Cliente ( i )
2 54 91 87 30 25 40 10
3 98 7 84 60 8 24 10
4 3 45 60 28 66 8 22
5 20 98 5 51 19 68 28
DTC 27 3 23 2 11 14 T(x)={2,7,
T(x)={2,7, 1}
Max
25
04/11/2006 51
PASO 3
T(x)
T(x) = {2, 7, 1}
P(i)
P(i) = {8, 10, 10, 3, 20}
∑X(s)
X(s) = 3 y M3 > 2 ⇒ Paso 4
PASO 4 Obvio
04/11/2006 52
PASO 5
Localizació
Localización (j)
2 7 1 P(i)
P(i)
1 8 43 32 8
Cliente ( i )
2 72 10 54 10
3 10 12 98 10
4 22 85 3 3
5 56 28 20 20
∆TC 26 44 27
Min
26
04/11/2006 53
PASO 2
Matriz de coeficientes A(I,J)
A(I,J)
Localizació
Localización Preseleccionada (j)
2 3 4 5 6 8 P(i)
P(i)
1 8 53 19 6 90 74 32
Cliente ( i )
2 72 91 87 30 25 40 10
3 10 7 84 60 8 24 12
4 22 45 60 28 66 8 3
5 56 98 5 51 19 68 20
DTC 26 5 28 26 5 0 T(x)={7,
T(x)={7, 1, 4}
Max
04/11/2006 54
PASO 3
T(x)
T(x) = {7, 1, 4}
P(i)
P(i) = {19, 10, 12, 3, 5}
∑X(s)
X(s) = 3 y M3 > 2 ⇒ Paso 4
PASO 4 Obvio
27
04/11/2006 55
PASO 5
Localizació
Localización (j)
7 1 4 P(i)
P(i)
1 43 32 19 19
Cliente ( i )
2 10 54 87 10
3 12 98 84 12
4 85 3 60 3
5 28 20 5 5
∆TC 116 57 28
Min
04/11/2006 56
PASO 6 Verificació
Verificación
L = 3; M3 = 5. L ≠ M3 ⇒ Paso 2
PASO 2
Matriz de coeficientes A(I,J)
A(I,J)
Localizació
Localización Preseleccionada (j)
2 3 5 6 8 P(i)
P(i)
1 8 53 6 90 74 19
Cliente ( i )
2 72 91 30 25 40 10
3 10 7 60 8 24 12
4 22 45 28 66 8 3
5 56 98 51 19 68 5
DTC 13 5 13 4 0 T(x)={7,
T(x)={7, 1, 4, 2}
Max
28
04/11/2006 57
PASO 3
T(x)
T(x) = {7, 1, 4, 2}
P(i)
P(i) = {8, 10, 10, 3, 5}
∑ X(s)
X(s) = 4 y M3 > 2 ⇒ Paso 4
PASO 4 Obvio
04/11/2006 58
PASO 5
Localizació
Localización Preseleccionada (j)
7 1 4 2 P(i)
P(i)
1 43 32 19 8 8
Cliente ( i )
2 10 54 87 72 10
3 12 98 84 10 10
4 85 3 60 22 3
5 28 20 5 56 5
∆TC 44 19 15 13
Min
29
04/11/2006 59
PASO 6 Verificació
Verificación
L = 4; M3 = 5. L ≠ M3 ⇒ Paso 2
PASO 2
Matriz de coeficientes A(I,J)
A(I,J)
Localizació
Localización Preseleccionada (j)
3 5 6 8 P(i)
P(i)
1 53 6 90 74 8
Cliente ( i )
2 91 30 25 40 10
3 7 60 8 24 10
4 45 28 66 8 3
5 98 51 19 68 5
DTC 3 2 2 0 T(x)={7,
T(x)={7, 1, 4, 2, 3}
Max
04/11/2006 60
PASO 3
T(x)
T(x) = {7, 1, 4, 2, 3}
P(i)
P(i) = {8, 10, 7, 3, 5}
∑ X(s)
X(s) = 5 y M3 > 2 ⇒ Paso 4
PASO 4 Obvio
30
04/11/2006 61
Localizació
Localización Preseleccionada (j)
7 1 4 2 3 P(i)
P(i)
1 43 32 19 8 53 8
Cliente ( i )
2 10 54 87 72 91 10
3 12 98 84 10 7 7
4 85 3 60 22 45 3
5 28 20 5 56 98 5
∆TC 44 19 15 11 3
Min
04/11/2006 62
PASO 6
Verificació
Verificación
L = 5; M3 = 5. L = M3 ⇒ Paso 7
31
04/11/2006 63
Localizació
Localización T(x)
T(x) = { 7, 1, 4, 2, 3 }
Costo total ∑ P(i)
P(i) = 33 (um
(um))
04/11/2006 64
COMPARACIÓ
COMPARACIÓN CON EL ÓPTIMO MATEMÁ
MATEMÁTICO
Localizaciones : T(x)
T(x) = { 7, 4, 1, 2, 3 }
Costo Total : ∑ P(i)
P(i) = 33 (um
(um))
32
04/11/2006 65
DISTRIBUCI ÓN EN PLANTA
ISTRIBUCIÓN
(Layout)
Capítulo 4
En el próximo archivo
33