Heurística para un problema de camiones en la vida real y.docx

Embed Size (px)

Citation preview

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

AbstractoEn 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 branch-and-price (sucursal y-precio) HFTTRPTW.

En este Paper se propone un codicioso heuristic multi-start para un sitio dependienteHFTTRP 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 matemticaUn 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:

- El nmero de tiendas, remolque-tiendas, camiones-tiendas y lugares de transbordo

- 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,

-El conjunto de todos los vehculos, vehculos con remolque, sin remolque, con refrigerador

-El coste fijo de la utilizacin del vehculo k

-La capacidad total del vehculo k, Capacidad de su remolque, la capacidad de su camin

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

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

-El tiempo para dejar remolque y hacer la transferencia de carga en la location i para vehculo k

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

- Los primeros y ltimos tiempos preferidos de distribucin a la tienda i (Ventana de tiempo flexibles),

-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 En el cual es la primera tienda visitada por el camin antes de la tienda donde se deja el remolque, esta demanda ser igual a:

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 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.

- Es igual a 1, si la entrega dividida por vehculo a la Tienda i trmino antes de la entrega por el vehculo 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 Y es igual a 1 si 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 camiones-rutasdeben contener el deposito (vrtice 0).Restriccin (7) requiere que si un vehculo visita una location, entonces tiene que viajar desde su location a otra locationRestricciones (2) - (8) juntas determinan restricciones bsicas sobre las principales variables. En primer lugar se requiere la variable segura para ser mayor que cero, de modo que cada tienda recibe su demanda. A continuacin, hace que las correspondientes variables y 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 sea igual a 1 (cada vehculo usado sale del depsito en su ruta), y para todas las tiendas j las correspondiente variables y 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 cabo durante su tiempo de servicio y se acaba, antes de su hora de cierre.Para conocer las ubicaciones de transbordo donde no hay tiempo de servicio y el desacoplamiento de remolque y el tiempo de la transferencia de carga es tomado en cuenta por separado mediante el parmetro Restriccin (11) requiere que cualquier vehculo que se desplaza desde el depsito, a un remolque-tienda o un lugar de transbordoi 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.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 tienda j, en el que un remolque no se deja () No se puede iniciar el servicio en la locacin j antes de dejar la locacin i ms el tiempo de viaje entre estas locaciones.

En el caso o o (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 remolque ( ) A un remolque-tienda o un lugar de transbordo j donde se deja el remolque) No puede llegar a la ubicacin j antes de haber dejado la locacin i ms el tiempo de viaje entre estas locaciones. En el caso o o (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 ) no puede dejar este lugar con el remolque antes dejar la locacin i ms el tiempo de viaje entre estas locaciones. En el caso o o (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 remolque-tienda o en una locacin de transbordo i ) 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 , dedicado a la transferencia de carga y desacoplamiento del remolque y el tiempo de viaje entre estas locaciones.

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