Вы находитесь на странице: 1из 14

Heurstica para un problema de camiones en la vida real y el enrutamiento de

remolque.

Abstracto
En este paper proponemos un multi-Start heurstico de un ambicioso problema
de camin y remolque para la vida real. El problema de enrutamiento considerado
depende de una flota y de camiones con ventanas de tiempo cortas y largos y
mltiples entregas. Este problema surge en la entrega de mercancas en un
depsito a las tiendas de una gran compaa de ventas al por menor. Hay
alrededor de 400 tiendas y 100 vehculos para un almacn. Nuestra heurstico se
basa en la insercin insatisfecha secuencial de un cliente a una ruta con una
mejora adicional de la solucin. Los experimentos computacionales se llevan a
cabo para los datos de la vida real. Tambin proporcionamos una formulacin de
programacin lineal entera mixta para la descripcin precisa y clara del problema.
1. Introduccin
Los problemas de logstica de transporte de la vida real son muy diferentes a los
problemas clsicos de enrutamiento de vehculos.
En este trabajo consideramos uno de estos problemas de la vida real que se
plantean en la entrega de mercancas en un depsito a las tiendas de una gran
compaa de ventas al por menor.
El problema de enrutamiento considerado depende de una flota de camiones y
remolques con ventanas de tiempo cortas y largos y mltiples entregas.
El problema consiste en minimizar el coste total de la entrega de los pedidos
realizados por las tiendas.
Un vehculo y un tiempo de servicio dependen de una tienda para ser servido.
Algunas tiendas se pueden servir solamente por vehculos de tamao pequeo,
algunos - Slo por un camin sin remolque, algunos - por un vehculo con un
refrigerador, etc

Adems, una tienda puede tener dos partes en su orden: una que necesita un
refrigerador y otra que no lo hace. En consecuencia, una flota heterognea de
vehculos contiene diferentes tipos de vehculos y los gastos de viaje dependern
del vehculo y su estado (si se viaja con un remolque o sin l). Cada vehculo tiene
tambin un fijo costo pas si este vehculo se utiliza para la entrega. Cada
vehculo usado hace slo una ruta.

Las tiendas que se pueden visitar solamente por un camin sin remolque se
llaman camiones-tiendas.

Para servir dichas tiendas en un camino-tren puede dejar su remolque ya sea en


un lugar de transbordo o en un remolque- tienda (una tienda que puede servirse
de un remolque). Un camin sin remolque puede visitar varias tiendas, incluyendo
remolque-tiendas tambin, pero luego debe volver a tomar su remolque. Cuando
un remolque se deja a un remolque-tienda, esta tienda se sirve de este (el
remolque) y, al mismo tiempo el camin de visita varios camiones-tiendas. En este
caso una transferencia de carga puede ser necesario, o bien si no hay suficientes
bienes en el camin para servir a estos camiones-tiendas (transferencia de carga
de un camin), o si no hay suficientes bienes en el remolque para servir a este
remolque-tienda (transferencia de carga de un remolque).
Una ventana de tiempo fijo (hard) est definida por los tiempos de apertura y
cierre de una tienda. Ventanas de tiempo fijos (hard) no pueden ser modificados
(violated). Cada tienda tiene tambin una ventana de tiempo flexible (soft)
definiendo horas preferidas de la entrega. Ventanas de tiempo flexibles (soft)
pueden ser cambiadas (violated), pero el nmero total de cambios es limitado.
Lugares de transbordo slo tienen ventanas de tiempo fijos (hard). Si una orden de
una tienda es ms grande que la mxima capacidad permitida de vehculo,
entonces se divide entre el mnimo nmero de vehculos requeridos. Una orden
ms pequea se puede dividir entre dos vehculos, pero el nmero de tales
divisiones es limitado. Slo una de las divisiones de entrega es requerida para
satisfacer la ventana flexible de una tienda, todos los dems deben solamente
satisfacer la ventana fija.
Uno de los primeros trabajos dedicados al problema camin y el remolque de
enrutamiento pertenece a Semet y Taillard (1993). Estos autores sugieren un
algoritmo tab-bsqueda para un problema de una flota heterognea de
camiones en la vida real y el enrutamiento de remolque con ventanas de tiempo
fijas. Entregas divididas no estn permitidas y un remolque puede dejarse
solamente en un remolque-tienda en este problema. Un Cluster-Primero ruta
-segundo Heuristic es desarrollado por Semet(1995) para un problema similar,
pero sin ventanas de tiempo. El autor tambin proporciona una formulacin de
programacin entera para este problema. En los papers de Semet y Taillard (1993)
y Drexl (2011) el problema de enrutamiento camin y remolque es considerado en
las formulaciones muy cerca al nuestro. En particular, en estas formulaciones de
camiones y remolques que pueden tener diferentes capacidades, gastos de viaje,
los tiempos de viaje y los remolques son estrictamente ligados a sus camiones, de
modo que un camin no puede viajar con el remolque de otro camin. Tales
formulaciones pueden ser llamadas como Heterogeneous Fleet Truck (Camin de
Flota Heterognea
)
y Trailer Routing Problem(Problema de enrutamiento de Remolque

) (HFTTRP) and HFTTRP con Time Windows (ventanas Tiempo


) (HFTTRPTW).
Una serie de documentos consideraran el problema de enrutamiento camin y el
remolque en una formulacin ms simple con una flota homognea de los
vehculos, en los que todos los camiones y todos los remolques son idnticos.
Esta formulacin se suele llamar en la literatura simplemente como camiones y
remolques Routing Problem(Truck and Trailer Routing Problem) (TTRP). Los
trabajos sobre la TTRP pertenecen a autores Chao (2002), Scheuerer (2006), Lin
et al. (2009, 2010, 2011), Villegas et al. (2011a, b). Chao (2002) sugiere un
algoritmo tabu-bsqueda del TTRP. Scheuerer (2006) desarroll dos heursticas
constructivas y un algoritmo tabu-bsqueda del TTRP. Lin et al. (2009, 2010)
introdujo un recocido simulador heurstico eficiente para la TTRP y ms tarde Lin
et al. (2011) aplicaron una heurstica similar para el TTRP con ventanas de tiempo
(Time Windows) (TTRPTW). Villegas et al. (2011a) propuso un hbrido GRASP /
VNS heursti para el TTRP y ms tarde Villegas et al. (2011b) combina este
heurstic con una formulacin set-partitioning para la TTRP.
Hoff (2006), Hoff y Lokketangen (2007) desarroll un algoritmo tabu-bsqueda del
multi-depsito HFTTRP que surge en el acopio de leche. Caramia y Guerriero
(2010a, b) sugirieron una ruta segundos multi-arranque clster primero bsqueda
local tercio heurstica para un mparecido HFTTRP para la recogida de leche. Drexl
(2011) desarroll una formulacin entera de programacin y un algoritmo branchand-price (sucursal y-precio) HFTTRPTW.

En este Paper se propone un codicioso heuristic multi-start para un sitio


dependiente
HFTTRP con ventanas de tiempo flexibles y fijas y entregas divididas
Para nuestro conocimiento una formulacin tan general nunca ha sido considerada
en la literatura. Nuestro heurstico se basa en un procedimiento de insercin
codicioso similar a los procedimientos de insercin sugeridas por Solomon (1987).
Tambin aplicamos un procedimiento simple de mejora, que trata de mover con
anticipacin las entregas en ruta para evitar retrasos.
El paper est organizado de la siguiente manera. En la siguiente seccin
ofrecemos una programacin lineal entera mixta formulada para el problema
considerado. En la seccin 3 se presenta una descripcin detallada de nuestro
algoritmo junto con su pseudo-cdigo. Experimentos computacionales para casos
de la vida real que contienen hasta 400 pedidos y 100 vehculos se dan en la
Seccin 4

2. Formulacin matemtica
Un grfico orientado para el problema considerado se denota como G (V, A)
Donde V es el conjunto de vrtices, y A=VxVmes el conjunto de arcos. El conjunto
de vrtices se divide en 4 subconjuntos, incluyendo el depsito (vrtice 0),
remolque-tiendas, camiones-tiendas y lugares de transbordo. El vrtice de
depsito tambin tiene una copia en el lugar de transbordo, por lo que cualquier
vehculo puede dejar su remolque directamente en el depsito y luego tomar un
neto camin-ruta. Abajo vamos a usar el trmino "location"(lugar) para cualquier
vrtice que representa una tienda o un lugar de trasbordo (cualquier vrtice i V \
{0}).
La entrada del problema est dada por los siguientes parmetros:

n ,n ,n

- El nmero de tiendas, remolque-tiendas, camiones-tiendas

y lugares de transbordo

V 1={1, , n1 }

V 2={ n 1+1, , n1 +n2 }

V 3= { n+1, ,n+ n3 }

V ={0 } V 1 V 2 V 3

- El depsito
-El conjunto de remolque-tiendas,

-El conjunto de camiones-tiendas,


-El conjunto de lugares de transbordo,

-El conjunto de todas las posibles

ubicaciones de ruta,

K , K 1, K2 , K

-El conjunto de todos los vehculos, vehculos con

remolque, sin remolque, con refrigerador

fk

-El coste fijo de la utilizacin del vehculo k

Qk ,Q K , QK

-La capacidad total del vehculo k, Capacidad de su

remolque, la capacidad de su camin

qi , qi

-La demanda total de tienda i, Su demanda cuando necesita un

refrigerador

si

-El tiempo de servicio de la demanda total de tienda i para

vehculo k

r ki

-El tiempo para dejar remolque y hacer la transferencia de carga

en la location i para vehculo k

OPi , CLi

-El tiempo de apertura y cierre de la location i (Ventana de

tiempo fijo),

er i , i

- Los primeros y ltimos tiempos preferidos de distribucin a la

tienda i (Ventana de tiempo flexibles),

kl

kl

Cij ,t ij

-El costo, el tiempo de arco(i, j) para vehculo k con remolque

(l=1) O sin (l=2),

-El nmero mximo de modificaciones(violated) de las ventanas


de tiempo flexibles

-El nmero mximo de tiendas con entregas divididas excluyendo


divisiones inevitables

Los siguientes booleanos, enteros, fraccionarios y variables se utilizan en el


modelo lineal entero mixto de programacin sugerido:

La demanda atendida por el camin de vehculo k en un camin de


subtour comenzando en la primera tienda en este subtour y terminando en la
tienda i; por ejemplo, para subtour j 0 , j 1 , , j p , i , , j 0 En el cual j 1 es la
primera tienda visitada por el camin antes de la tienda
remolque, esta demanda ser igual a:

j= j 1> , , j ,i q j y
k
d i =
p

j0

donde se deja el

k
j

v ki {0,1}

Es igual a 1, si el vehculo k no se utiliza para la tienda i, o comience

el servicio en i fuera de ventanas flexibles


v i {0,1} Es igual a 1, si la ventana flexible de la tienda de i es modificada
(violated),

- Es igual a 1, si la entrega para la tienda i se divide, aunque su


demanda total pueda ser entregada por un solo vehculo.

k2
- Es igual a 1, si la entrega dividida por vehculo
a la Tienda
i trmino antes de la entrega por el vehculo k 1 para el comienzo de esta
tienda.
La formulacin completa de programacin lineal entera mixta se presenta a
continuacin.

Funcin objetiva:

La demanda y la capacidad de las restricciones:

Los viajes y flujo conservacin restricciones:

Ventanas de tiempo Fijas .restricciones:

Ventanas de tiempo Flexibles .restricciones:

Divisin de nmero de entregas .restricciones:

Divisin de tiempo de entregas .restricciones

Capacidad de Camin Subtour, restricciones:

Refrigerador, restricciones:

El objetivo de la funcin (1) del problema es minimizar el costo Total incluyendo gastos
de viaje y los costos fijos de los vehculos utilizados en las rutas. Restricciones
de demanda y capacidad (2)-(4) garantizan que la demanda total es entregada
a cada tienda y cada vehculo est cargado no ms de su capacidad.

Restricciones (3) requiere que las variables

ZK

Y ZK

es igual a 1 si

Y ki >0

Las restricciones de los viajes y conservaciones de flujo (5) y (8) garantizan que
cada viaje de remolque y cada camin de Sub recorrido es un ciclo, y cada
recorrido de remolque incluye el depsito.
Restriccin (5) requiere que cualquier camin-tienda no puede no puede recibir la
visita de un vehculo con remolque.
Restriccin (6) requiere que cada ruta, incluyendo restricciones netas camionesrutas deben contener el deposito (vrtice 0).
Restriccin (7) requiere que si un vehculo visita una location, entonces tiene que
viajar desde su location a otra location
Restricciones (2) - (8) juntas determinan restricciones bsicas sobre las principales
K
variables. En primer lugar se requiere la variable segura Y i
para ser mayor
que cero, de modo que cada tienda recibe su demanda. A continuacin, hace que
K
las correspondientes variables z i y Z k sea igual a 1, lo que significa que los
vehculos correspondientes son usados en la solucin. En su turno que causa que

la correspondiente variable

il

X 0 j sea igual a 1 (cada vehculo usado sale del

depsito en su ruta), y para todas las tiendas j las correspondiente variables


il
kl
X ij y X ji son igual a 1 (cada tienda atendida por el vehculo correspondiente
debe ser visitada y luego dejada por su vehculo). Como resultado de ello, debido
a estas restricciones todas las tiendas se servirn en la solucin y cada vehculo
usado podr hacer una ruta cclica que pasara a travs del depsito. Pero junto
con este tipo de rutas este podra hacer Tambin una serie de rutas cclicas
disjuntas, cubriendo todas las tiendas que debe servir.
A fin de evitar este tipo de soluciones A fin de evitar este tipo de soluciones y
requerimientos, cada vehculo usado hace un cclico recorrido de remolque y
varios sub recorridos cclicos de Camin empezando y terminando en uno de los
principales puntos de recorrido, utilizamos las restricciones tiempo de ventana (9)
- (15).
Restricciones de ventanas de tiempo fijas (9)-(15), garantizan de que cada ruta se
inicia desde el depsito (vrtice 0) a cada cliente se sirve antes de su tiempo de
apertura y el servicio se termina antes de su hora de cierre.

Restricciones (9) requieren que cada vehculo sale del depsito en el tiempo 0.
Los primeros dos restricciones (10) requieren que cualquier, vehculo llega a
cualquier ubicacin y comienza la descarga en una tienda o deja el remolque en
un lugar de transbordo no antes que el tiempo de apertura de esta ubicacin.
Las Siguiente dos restricciones (10) requieren que el servicio en el lugar se lleva a
k
cabo durante su tiempo de servicio S i y se acaba, antes de su hora de cierre.
Para conocer las ubicaciones de transbordo donde no hay tiempo de servicio
S ki =0 y el desacoplamiento de remolque y el tiempo de la transferencia de
carga es tomado en cuenta por separado mediante el parmetro

Rki

Restriccin (11) requiere que cualquier vehculo que se desplaza desde el


depsito, a un remolque-tienda o un lugar de transbordo
i para un remolque-tienda una locacin de transbordo j no puede iniciar el
servicio en la locacin j antes de dejar la locacin i ms el tiempo de viaje
entre estas locaciones.

k1

t ij

K1

X IJ =0

En caso

(El vehculo no est viajando desde i a j), Esta restriccin se

transforma en una desigualdad que siempre es correcta, debido a la constante


"big-M".
Restriccin 12 requiere que cualquier camin sin remolque viaje de la tienda i a la
k
k
tienda j, en el que un remolque no se deja ( ui =u j =0 ) No se puede iniciar el
servicio en la locacin j antes de dejar la locacin i ms el tiempo de viaje

k2

t ij

entre estas locaciones.

En el caso

X KIJ2=0

uki =1

k
o u j =1

(el camin no est viajando de i a j o el

triler se deja en una tienda i o en una tienda j) Esta restriccin se transforma en


una desigualdad que es siempre correcta.

Restriccin (13) requiere que cualquier vehculo que se desplaza desde el


depsito, a un remolque-tienda o un lugar de transbordo i, donde este no deja su
k
remolque
( ui =0 ) A un remolque-tienda o un lugar de transbordo j donde
k

u j =1
se deja el remolque
) No puede llegar a la ubicacin j antes de haber

dejado la locacin i ms el tiempo de viaje


caso

K1

X IJ =0

ui =1

o u j =o

t ijk1 entre estas locaciones. En el

(el vehculo no est viajando de i a j o el

triler dejando la locacin i o no est dejando la locacin j) esta restriccin se


transforma en una desigualdad que es siempre correcta.
Esta restriccin de llegada a tiempo es necesaria slo para remolque-tiendas
donde el remolque se deja para la descarga y al mismo tiempo el camin hace un
sub recorrido.
Para este tipo de tiendas de descarga del remolque puede comenzar mucho ms
tarde que el tiempo de llegada (arribo) con el fin de satisfacer la ventana de tiempo
flexible , pero el camin no espera aqu y de inmediato viaja a la tienda de al lado,
para e comenzar el tiempo de servicio que es controlado por la restriccin (15)
Restriccin (14) requiere que cualquier camin que viaja desde la tienda i para un
remolque-tienda o una locacin de transbordo j donde se debe dejar el triler

u j =1
) no puede dejar este lugar con el remolque antes dejar la locacin i ms

el tiempo de viaje

t ijk2 entre estas locaciones. En el caso

X KIJ 2=0

uki =1

ukj =0
(el vehculo no est viajando de i a j o el triler dejado la tienda i o no est dejando
la locacin j) esta restriccin se transforma en una desigualdad que es siempre
correcta.
Restriccin (15) requiere que cualquier camin que deje un remolque en un
k
remolque-tienda o en una locacin de transbordo i ui =1 ) y viajar a la tienda j no
puede comenzar el servicio en la locacin j , sin antes haber llegado a la locacin i, ms
el tiempo

ri

, dedicado a la transferencia de carga y desacoplamiento del

remolque y el tiempo de viaje

k2

ti j

entre estas locaciones.

3. Descripcin Algoritmo
En esta seccin le ofrecemos una descripcin de nuestro algoritmo. Utilizamos
multi-arranque la insercin aleatoria codiciosos
heurstico. El algoritmo principal es bastante simple. Generamos muchas
soluciones de una manera codiciosa y elegir la mejor
uno en el trmino de la funcin objetivo, es decir la que tiene el menor costo

Вам также может понравиться