Beruflich Dokumente
Kultur Dokumente
Profesores: Dr. Carlos Obreque Nez; Sr. Gonzalo Baeza Villa; Dr. Rodrigo Linfati Medina
Fecha de exposicin oral del avance: mircoles 29 de noviembre de 2017
Fecha de entrega del informe final: mircoles 6 de diciembre de 2017
Formato del informe: Formato de artculo cientfico
Alumnos por grupo: 3 (mximo)
La cadena de suministro se puede dividir de manera simplificada en: Red de abastecimiento y Red de
distribucin. Las redes de abastecimiento comprenden desde los proveedores hasta el inicio del proceso
productivo y la red de distribucin desde la finalizacin del proceso de produccin hasta la entrega de
producto a los clientes. Cabe hacer notar que los clientes no necesariamente son los consumidores del
producto terminado, pueden ser distribuidores mayoristas, minoristas o incluso grandes superficies. De
hecho, como sabe, en muchos casos el producto terminado de una cadena de suministro no es ms que el
inicio de otra.
1
El problema del transporte en una red de distribucin aqu consiste en una empresa productora de un cierto
producto que posee N plantas localizadas en distintos puntos geogrficos de la zona. La empresa vende su producto
a M clientes, los cuales tienen una demanda semanal que tiene que ser abastecida completamente. Los clientes
pueden ser abastecidos directamente desde una o ms plantas o bien desde una o ms bodegas. Las bodegas son
arrendadas y tienen un costo fijo que es independiente de la cantidad de unidades que pueden recibir y despachar.
Hay K bodegas disponibles para arrendar en el mes. Cada planta tiene una capacidad mxima de produccin
mensual, que no puede ser excedida bajo ninguna circunstancia. De igual modo, cada bodega puede recibir y
distribuir mensualmente una cierta cantidad de unidades del producto.
Objetivo del trabajo: Resolver el problema del transporte en una red de distribucin, aplicado al contexto local,
usando AMPL y Solvers comerciales.
Objetivos especficos:
Requisitos:
1. La informacin debe ser real, y no sacada de otros trabajos similares. Usted debe obtener la
informacin desde fuentes primarias.
2. En caso de existir trabajos iguales (posible copia), se realizar una interrogacin oral a los
integrantes de los grupos afectados, siendo la calificacin de sta la nota de su tarea.
3. El tamao de la instancia ser de: al menos 2 plantas; entre 3 y 5 bodegas y al menos 5 clientes.
B1 C1
P1 C2
B2 C3
P2 C4
B3 C5
2
Anexo 1: Modelo propuesto
Parmetros
N = Nmero de plantas
M = Nmero de clientes
K = Nmero de bodegas
cij = costo unitario de transporte desde la planta i al cliente j
bkj = costo unitario de transporte desde la planta i a la bodega k
d kj = costo unitario de transporte desde la bodega k al cliente j
Fk = costo del arriendo mensual de la bodega k
h j = demanda mensual del cliente j
CMPi = Capacidad mxima de produccin de la planta i
CMAk = Capacidad mxima de almacenamiento de la bodega k
Variables de decisin
xij : Unidades enviadas mensualmente desde la planta i al cliente j, i 1, , N y j 1, ,M
yik : Unidades enviadas mensualmente desde la planta i a la bodega k, i 1, , N y k 1, ,K
wkj : Unidades enviadas mensualmente desde la bodega k al cliente j, k 1, , K y j 1, ,M
1 Si se arrienda la bodega k
fk k 1, ,K
0 Si no
N M N K K M K
Minimizar Z cij xij bik yik d kj wkj Fk f k
i 1 j 1 i 1 k 1 k 1 j 1 k 1
Sujeto a:
M K
yik wkj
i 1 j 1
k 1, ,K
N K
xij wkj h j
i 1 k 1
j 1, ,M
N
y
i 1
ik CMAk f k k 1, ,K
3
Opciones de lugares a recorrer:
1. Fbrica de papel, bodegas, instituciones educacionales (colegios, liceos, universidades, etc)
2. Plantas agrcolas, bodegas, restaurantes
3. Bancos, sucursales, clientes
A continuacin se muestran los datos para una instancia de prueba. Se consideran 2 plantas, 3 bodegas y
5 clientes. En la tabla que sigue se muestran los costos de distribucin en [$/unidad], las demandas de
los clientes, las capacidades mximas de produccin de las plantas, las capacidades mximas de
almacenamiento de las bodegas y los costos de arriendo de las bodegas.
Bodegas Clientes
B1 B2 B3 C1 C2 C3 C4 C5 Capacidad
P1 8 1 7 5 6 5 7 3 1100
P2 7 1 1 7 8 7 5 9 1900
B1 8 6 5 7 9 1000
B2 1 1 7 1 9 700
B3 7 8 1 9 1 1000
Costo 40 10 10
Demanda 700 400 700 600 600
B1 C1 700
400
1100 P1
400
300 C2 400
300 400
B2
300 C3 700
1900 P2 600 700
1000
C4 600
B3
300
C5 600
4
Proyecto-2017.dat
# Nmero de plantas # Costo del arriendo mensual de la bodega k
param N:= 2; param F:=
1 40
# Nmero de clientes 2 10
param M:= 5; 3 10;
# Costo unitario de transporte desde la planta i a la bodega k # Capacidad mxima de produccin de la planta i
param b: 1 2 3:= param CMP:=
1 8 1 7 1 1100
2 7 1 1; 2 1900;
# Costo unitario de transporte desde la bodega k al cliente j # Capacidad mxima de almacenamiento de la bodega k
param d: 1 2 3 4 5:= param CMA:=
1 8 6 5 7 9 1 1000
2 1 1 7 1 9 2 700
3 7 8 1 9 1; 3 1000;
Proyecto-2017.mod
# Optimizacin del transporte en una red de distribucin
param N; # Nmero de plantas
param M; # Nmero de clientes
param K; # Nmero de bodegas
param c {1..N,1..M}; # Costo unitario de transporte desde la planta i al cliente j
param b {1..N, 1..K}; # Costo unitario de transporte desde la planta i a la bodega k
param d {1..K, 1..M}; # Costo unitario de transporte desde la bodega k al cliente j
param F {1..K}; # Costo del arriendo mensual de la bodega k
param h {1..M}; # demanda mensual del cliente j
param CMP {1..N}; # Capacidad mxima de produccin de la planta i
param CMA {1..K}; # Capacidad mxima de almacenamiento de la bodega k
minimize Costo: sum{i in 1..N, j in 1..M} c[i,j]*x[i,j] + sum{i in 1..N, k in 1..K} b[i,k]*y[i,k] +
sum{k in 1..K, j in 1..M} d[k,j]*w[k,j] + sum{k in 1..K} F[k]*f[k];
subject to
Produccion_Maxima {i in 1..N}: sum{j in 1..M} x[i,j] + sum{k in 1..K} y[i,k] <= CMP[i];
Balance {k in 1..K}: sum{i in 1..N} y[i,k] = sum{j in 1..M} w[k,j];
Demanda {j in 1..M}: sum{i in 1..N} x[i,j] + sum{k in 1..K} w[k,j] = h[j];
Capacidad_Bodega {k in 1..K}: sum{i in 1..N} y[i,k] <= CMA[k] * f[k];
5
Proyecto-2017.run
option solver cplex;
model Proyecto-2017.mod;
data Proyecto-2017.dat;
solve Proyecto;
display Costo;
for{i in 1..N}
for{ j in 1..M } {
if x[i,j] != 0 then
printf "x[%2d, %2d]= %7.1f\n", i,j, x[i,j];
};
printf "\n";
for{i in 1..N}
for{ k in 1..K } {
if y[i,k] != 0 then
printf "y[%2d, %2d]= %7.1f\n", i,k, y[i,k];
};
printf "\n";
for{k in 1..K}
for{ j in 1..M } {
if w[k,j] != 0 then
printf "w[%2d, %2d]= %7.1f\n", k,j, w[k,j];
};
printf "\n";
for{k in 1..K}
if f[k] != 0 then
printf "f[%2d]= %d\n", k, f[k];
Proyecto-2017.txt
CPLEX 12.7.1.0: optimal integer solution; objective 9320
7 MIP simplex iterations
0 branch-and-bound nodes
Costo = 9320
x[ 1, 1]= 400.0
x[ 1, 5]= 300.0
x[ 2, 4]= 600.0
y[ 1, 2]= 400.0
y[ 2, 2]= 300.0
y[ 2, 3]= 1000.0
w[ 2, 1]= 300.0
w[ 2, 2]= 400.0
w[ 3, 3]= 700.0
w[ 3, 5]= 300.0
f[ 2]= 1
f[ 3]= 1