You are on page 1of 15

International Journal of of Industrial Engineering Research International JournalIndustrial Engineering Research and Development (IJIERD), ISSN 0976 – 6979

(Print), ISSN 0976 and Development – 6987(Online)ISSN 0976 –1,6979(Print) (2011), © IAEME (IJIERD), Volume 2, Issue May - October ISSN 0976 – 6987(Online) Volume 2 ©IAEME Issue 1, May – October (2011), pp. 80-94 © IAEME, http://www.iaeme.com/ijierd.html

IJIERD

A HYBRID TABU SEARCH FOR A VEHICLE ROUTING PROBLEM WITH DOUBLE TIME WINDOWS FOR THE DEPOT AND MULTIPLE USE OF VEHICLES: CASE OF FUEL DELIVERY
Issam Nouaouri, Gilles Goncalves and Daniel Jolly Laboratoire de Génie Informatique et d’Automatique de l’Artois (LGI2A), Université Lille Nord de France, Univ-Artois, 62400, Béthune, France, +33 (0) 6 21 28 57 45, nouaouri.issam@gmail.com ABSTRACT We address in this paper a distribution real case problem facing the fuel supplying companies. The cost of acquiring vehicles is often more significant than the routing cost. The goal is to minimise the number of required vehicles. We deal with a vehicle routing problem with double time windows for the depot and multiple use of vehicles (VRPDM). There is a single depot with double time windows, the first window is for travelling and the second one (smaller) is for loading vehicles. The problem consists of designing and assigning routes to vehicles while considering time windows and capacity constraints. To solve this problem a hybrid tabu search based approach is proposed with a new heuristic for scheduling and assignment routes to vehicles. The computational results are reported for a set of 70 instances with 100 clients, and compared to those of evolutionary approach. Keywords: Fuel delivery; Multiple use of vehicles; Double time windows; Hybrid Tabu search; Heuristics 1. INTRODUCTION In many case, practical distribution problem can be formulated as a vehicle routing problem (VRP). The VRP has been introduced by Dantzig and Ramser in 1959 (Dantzig et Ramser J.H., 1959) which deals with the delivery of goods from a central depot to a set of nodes, representing customers or suppliers, and using a non restricted number of homogeneous fleet of vehicles. Each node is visited by just one vehicle. In the general case, the main goal of the VRP problem is to generate the optimal routes or minimise the number of vehicles so as to meet customer demands and satisfy capacity and time constraints at minimum travel cost (Dondo, M´endez&Cerd´a, 2003). However, transport operators in the real world face specific distribution problems. In this paper we deal with specific case of Vehicle Routing Problem with Multiple use of Vehicles (VRPM). In the general VRPM, each vehicle is assigned to multiple

80

International Journal of Industrial Engineering Research and Development (IJIERD), ISSN 0976 – 6979(Print), ISSN 0976 – 6987(Online) Volume 2, Issue 1, May - October (2011), © IAEME

delivery routes; this case is possible when we have a short length delivery routes. The main goal is to minimise the number of required vehicles while minimising the total cost of vehicle routes (Taillard E. and al., 1996). We address a distribution real case problem of Oil Company that subcontracts vehicles. Each vehicle must deliver fuel to customers. There is a single depot with double time windows. The first window is for travelling and according to the length of delivery routes; a vehicle can make one or several routes. Inside the first window, there is a second time window (smaller than the first window), for loading vehicles in fuel. Otherwise, each used vehicle, during a time horizon involves significant cost. Therefore, in order to minimise the total cost of delivery routing, the company has to minimise the number of required vehicles. This specific case so called “Vehicle Routing Problem with Double time windows for the depot and Multiple use of vehicles” (VRPDM) introduced by (Gabouj H.S. and Darmoul S., 2003). The VRPDM is a combination between a variant of Vehicle Routing Problem with Time Windows (VRPTW) (Solomon M.M., 1987) and the VRPM. To solve this combinatorial optimisation problem (Gabouj H.S. and Darmoul S., 2003) developed an evolutionary algorithm. A chromosome is represented as an integer string of length N (number of customers). Each gene in the string node number pre-assigned to the customer. The gene values are sequentially inserted into a route considering the capacity of vehicle (Cmax) and travel time (Tmax) constraints. Once routes are designed, several of them are assigned to the same vehicle. The authors developed Heuristic, so called Scheduling Vehicle Routes Algorithm (SVRA), based on two stages. After a classification of routes (short and length routes), in the first stage a vehicle is assigned a long duration route. The available time is filled with short duration routes. This procedure is repeated until there is no more long duration. In the second stage a vehicle is assigned to the first route from the remaining ones. The available time is filled with other routes. This procedure is repeated until there are no more routes. To the best of our knowledge, the VRPDM has been addressed in the literature only by (Gabouj H.S. and Darmoul S., 2003). Nevertheless, the literature review shows that few works address VRPM. In the case of single objective (Fleischmann B., 1990) (Taillard E. and al., 1996) (Zhao Q-H. and al., 2002) or multi-objective optimisation (Lin C.K.Y. and Kwok R.C.W., 2005), authors deal with approaches based on two main stages: (1) designing vehicle routes and (2) assigning them to available vehicles. The initial vehicle routes are built using heuristics like “Nearest Insertion” (Rosenkrantz D.J and al., 1977), “saving” algorithm of Clarke and Wright (Clarke G. and Wright J.W., 1964) and tabu algorithm (Taillard E., 1993). Then, the vehicle routes are improved by using tabu search (Fleischmann B., 1990), (Zhao Q-H. and al., 2002), (Alonso and al., 2007) and (Lin C.K.Y. and Kwok R.C.W., 2005) except in (Taillard E. and al., 1996) where authors proposed an enumerative algorithm. Designed vehicle routes are assigned with “bin packing” approach (Taillard E. and al., 1996) (Zhao QH. and al., 2002). The industrial requirements create a new combination between a variant of VRPM and Multi-depot Vehicle Routing Problem (MDVRP). MDVRP is a generalisation of Single-depot Vehicle Routing Problem (SDVRP) in which multiple vehicles start from multiple depots and return to their original depots. (Chan Y. and al., 2001) and (Chan Y., 2005) tackle MDVRP with multiple use of vehicles. Stochastic demands have been addressed by (Chan Y. and al., 2001).

81

International Journal of Industrial Engineering Research and Development (IJIERD), ISSN 0976 – 6979(Print), ISSN 0976 – 6987(Online) Volume 2, Issue 1, May - October (2011), © IAEME

Other works combined VRPM with time windows (Brandão J. and Mercer A., 1997) (Campbell A.M. and Savelsbergh M, 2004). (Azi N. and al., 2007) addressed the Vehicle Routing Problem with Time Windows for customers (VRPTW) and using single vehicle. (Jagannathan, 2011) study vehicle routing problem with cross docks that involves a distribution network consisting of retailers, suppliers and cross docks. Retailers and suppliers have each one a time window. Author uses heterogeneous fleet and expected demands. However, (Campbell A.M. and Savelsbergh M., 2005) tackle the case of multiple use o f vehicles with dynamic customer demands. Thus, demand arriving in real time might be rejected or accepted in certain time window. In this paper, we have developed a hybrid Tabu search approach to solve The VRPDM, with a new heuristic for assigning delivery routes to vehicles. The rest of this paper is organized as follows. We describe in section 2 the real case we address, the constraints and the mainly goal of the problem. Section 3 presents the hybrid Tabu search approach. Section 4 the experimental results is presented and finally the conclusion remarks is given in Section 5.

2. PROBLEM DESCRIPTION
This section describes the notation and features that are common through this paper N total number of customers. T set of vehicle routes T = {T(1),...,T(K)}. s given solution after assigning routes T to vehicle Ci customer i V (k) volume carried on route T(k). Tmax driver maximum working day hours Cmax vehicle capacity k S 0 loading time of route T(k) at the depot C0

tij Si ϑi α tik

travelling time from Ci to Cj. service time at customer Ci. volume request by Ci loading and service time standard of quantity equals to Cmax

arrival time at customer Ci using route T(k ). D (k ) dur ation of route T(k ). DDm (k ) start date of route T(k ) assigning to vehicle m. [e0 , l0l ] time window for loading vehicles in the depot. [e0 , l0 r ] time window for returning back of vehicles to the depot (l0l < lor)

We are interested on distribution real case problem of Oil Company. We focused on designing and scheduling routes within a given planning period to cover known customer demands ϑi and travelling time tij from (Ci to Cj) ; (i, j = 0,1,...,N and i ≠ j), C0 represent the depot. Customers do not have any time
82

International Journal of Industrial Engineering Research and Development (IJIERD), ISSN 0976 – 6979(Print), ISSN 0976 – 6987(Online) Volume 2, Issue 1, May - October (2011), © IAEME

window. The vehicles are homogeneous and having a certain capacity Cmax and a driver maximum working day hours Tmax. However the depot has double time windows. The first window [e0, lor] is for travelling and according to the length of delivery routes; a vehicle can make one or several travels. Inside the first window, there is a second time window [e0, lor], for loading vehicles in fuel. Vehicles can leave the depot at time e0, at the earliest and returning to the depot at time lor, at the last. However, the depot is open to load vehicles between e0 and lol.
Window for travelling Window for loading

e0

l 0l

l 0r

Figure 1. Double time windows for the depot

The mathematical model has been proposed at (Gabouj H.S. and Darmoul S., 2003). The duration D(k ) of route T(k ) is defined by:
D(k ) =

i , j∈T k i≠ j

∑( t)

ij

+ S 0k +

∑S
i∈T (k )

i

(1)

Loading time of vehicle route T(k ) and service time at customer Ci are given by (2) and (3)

k S0 =

αV (k )
Cmax

(2)

Si =

αϑi
Cmax

(3)

The goal is to minimise the number of required vehicles

3. A TABU SEARCH APPROACH FOR THE VRPDM
Tabu search, introduced by Glover (Glover F., 1986), is a procedure that uses an initial solution as a starting basis for seeking improved solutions by searching different neighbourhoods. Let s be the solution that satisfy all constraints, and N(s) is the set of neighbourhoods of s. 83

International Journal of Industrial Engineering Research and Development (IJIERD), ISSN 0976 – 6979(Print), ISSN 0976 – 6987(Online) Volume 2, Issue 1, May - October (2011), © IAEME

The current solution could be deteriorated during iterations. In order to avoid cycling, a memory structure is implemented so called tabu list. It maintains a list of the movements that were used (inserted and removed of customers in the current route) in the recent past. A movement is considered tabu when all the movements involved are tabu in the current iteration. These movements are illustrated at section 3.3. By the use of an aspiration criterion, the tabu moves can still be chosen if this leads to a feasible solution that is the best found so far in the search. 3.1. Resolution steps This article deals with approach based on two stages: (1) Designing vehicle routes that satisfy all constraints and customers demands. We obtain an initial solution for tabu search by the use of « Nearest Insertion » (NI) heuristic (Rosenkrantz D.J and al., 1977). (2) Assigning routes to vehicles. In fact, a solution s is obtained when all the routes are assigned to vehicles. Therefore the quality of the solution depends closely on routes designing and assigning heuristic. The solutions are evaluated according to its cost function F which is the sum of used vehicles costs (according to the number of vehicles) and the total travel time costs (Gabouj H.S. and Darmoul S., 2003).

F = L1 .M + L2 .

tij

(4)

i , j∈T ( k ) i≠ j

With L1 the cost of one required vehicle, L2 the cost of one kilometer, and M the total number of required vehicles. Once we defined the neighbourhood characteristics and developed a heuristic for obtaining an initial solution, the proposed approach finds out (for each iteration) the best current neighbourhood solution. The tabu search stopped when some criteria have been satisfied. We retail the proposed approach in the next sections.

3.2. Algorithm of assigning routes to vehicles
In (Gabouj H.S. and Darmoul S., 2003), the SVRA engages another vehicle once the planning of the current vehicle is full. The proposed procedure assigns the long duration routes to the first vehicles and the short duration routes to the last vehicles. This method doesn’t guarantee balance between used vehicles. Furthermore, the first and the last vehicles don’t take advantage of two time windows for loading and returning back of vehicles to the depot. Thus, we propose a new assigning and scheduling vehicle routes algorithm. We compute the minimal number of vehicles (m0) that could achieve all routes. In this algorithm we consider the set of m0 vehicles in the same time.

84

International Journal of Industrial Engineering Research and Development (IJIERD), ISSN 0976 – 6979(Print), ISSN 0976 – 6987(Online) Volume 2, Issue 1, May - October (2011), © IAEME

∑ D(k )
m0 =
k =1

K

(5)

Tmax

Let ϕ be a set of vehicle routes (K) in decreasing order of their duration. In the first stage, the heuristic starts to assign, one by one, m0 routes ∈ ϕ to m0 vehicles. These routes are scheduled at the end of time window [e0 , l0 r ] in order to exploit very well the work day of required vehicles. In the second stage, the heuristic assigns the first route from the remaining ones to the vehicle that has the largest available time. If the heuristic can’t assign the route to any available vehicles, it engages a new vehicle. This procedure is repeated until there are no more routes. The proposed heuristic is given by the algorithm (A1).
Algorithm (A1)
STEP 1

Given T, construct a set ϕ of vehicle routes in decreasing order of their duration
STEP2

Compute the minimal number of vehicles m0 Assign, one by one, m0 routes ∈ ϕ to m0 vehicles. Schedule routes at the end of time window [e0, lor]. Compute for each route T(k ) assigned to vehicle m its start date: DDm (k ) = l0l − max(0 , (D(k ) − (l0 r − l0l ))) (6) Compute for each vehicle m assigned its available time: ∆T (m ) = min(Tmax − D(k ), DDm (k ) − e0 ) (7) Assign the first route from the remaining ones (T(k) ∈ ϕ ) to the vehicle m (among m0 vehicles) that has the largest available time ∆T(m). If ∆T(m) ≥ D(k ) , assign T(k ) to vehicle m : DDm (k ) = ∆T (m ) − D(k ) and ∆T (m ) = DDm (k ) Else m0 = m0 + 1 , assign T(k ) to m = m0 and schedule route at the end of time window [e0,lor] Compute DDm (k ) and ∆T (m ) according to equations (6) and (7)
STEP5 STEP4 STEP 3

Let s be the scheduled and the assigned routes ∈ T to vehicle m, and m0 the number of required vehicles.

The proposed heuristic increases the exploitation of vehicle’s time windows and so decreases the number of the required vehicles. The next example illustrates the proposed procedure. We consider the following vehicle routes with Tmax = 10h , Cmax = 29m3 , e0 = 8h , l0l = 14 h and l 0 r = 18 h .
85

International Journal of Industrial Engineering Research and Development (IJIERD), ISSN 0976 – 6979(Print), ISSN 0976 – 6987(Online) Volume 2, Issue 1, May - October (2011), © IAEME

Table 1. Duration and volume carried on vehicle routes

Routes D(k ) (h) 3 V (k ) (m )

T (1)

T (2)

T (3)

T (4)

T (5)

6 10

4 7

3 8

2 5

1 7

According to equation (5) m0=2. The procedure (A1) starts to list routes ∈ T in decreasing order of their duration ϕ = {T (1),T (2),T (3),T (4),T (5)} . Then, T(1) and T(2) are assigned to vehicles 1 and 2 with DD1 (1) = 12h and DD2 (2) = 14h (figure 2).
Sens d’affectation Way of assigning

m =1
e0
l0l

T(1)
l 0r

m=2
e0
l0l

T(2)
l 0r

Figure 2. assigning of T(1) and T(2) to vehicles

and ϕ = {T (3),T (4),T (5)} . In this case, ∆T (2) > ∆T (1) and D ( 3) < ∆T ( 2 ) . Therefore T(3) is assigned to the vehicle 2 with DD2 (3) = 11h and ∆T (2) = 3h .
∆T (1) = 4h ,
∆T ( 2) = 6h

For ϕ = {T (4 ),T (5)} we have ∆T (1) > ∆T (2 ) and D(4) < ∆T (1) , then T(4) is assigned to the vehicle 1 with DD1 (4) = 10h and ∆ T (1) = 2 h (figure 3).
m =1
e0

T(4)
l0l

T(1)
l 0r

m=2
e0

T(3)
l0l

T(2)
l 0r

Figure 3. assigning of T(3) and T(4) to vehicles

For ϕ = {T (5)} , we have ∆T (2) > ∆T (1) and D(5) < ∆T (2) , then T(5) is assigned to the vehicle 2 with DD2 (5) = 10h and ∆T (5) = 2h (figure 4).
m =1
e0

T(4)
l0l

T(1)
l 0r

o

m=2
e0

T(5)
o Figure

T(3)
l 0l

T(2)
l 0r

4. assigning of T(5) to vehicle 2

86

International Journal of Industrial Engineering Research and Development (IJIERD), ISSN 0976 – 6979(Print), ISSN 0976 – 6987(Online) Volume 2, Issue 1, May - October (2011), © IAEME

3.3 The neighbourhood search
Let T = {T (1) ,K, T ( K )} be the vehicle routes that represent the solution s. A neighbour solution s’ is created after a movement achieved in T . This movement consists of exchanging clients between two routes. For each route T(k)∈ T and for each customer Ci ∈ T(k ), q neighbour nodes (don’t belong to route T(k)) is searched . q is a parameter fixed randomly. We note ins ∈ T(k') (with k' ≠ k ) the neighbourhood having the biggest number of occurrences. Therefore ins is a candidate for insertion in the route T(k ). It is the nearest neighbour to the set of nodes belonging to T(k). We define sup as the candidate for removing from the route T(k ). It is the customer whose maximises the loading (V (k ) + ϑins − ϑsup ) of vehicle without violating the capacity ( Cmax ) and travel time ( Tmax ) constraints. Then, ins and sup are moved from their initial routes and inserted respectively in T(k) and T(k''), with k' ' ≠ k . If there are several choices of k’’, we keep the route that will have, after insertion of sup in T(k''), the biggest load while considering time and capacity constraints. The visiting order of customers for T(k'') is defined by the heuristic « Nearest Insertion ». The corresponding routes after movement are given by: T'(k ) = T(k )− {sup}∪{ins} ; T'(k') = T(k')− {ins} and T'(k'') = T(k'')∪{sup}. Therefore the obtained solution s’ is given by: T − {T(k ),T(k'),T(k'')}∪{T'(k ),T'(k'),T'(k'')} The following example illustrates the presented movements and neighbourhood search: Let 1, 2, 3 and 4 be the customers belonging to route T(k ) (table 2). Table 3 shows the nearest q-neighbours from nodes 0, 1, 2, 3 and 4 (q=5).
Table 2. Customers demand

Customers

1 6

2 7

3 8

4 5

ϑi ( m3)

Table 3. The nearest q- neighbours

nodes
N. 5 Neighbours

0 3 6 2 1 4

1 4 2 6 2 4

2 2 3 4 0 6

3 1 3 0 6 4

4 13 12 6 5 1

87

International Journal of Industrial Engineering Research and Development (IJIERD), ISSN 0976 – 6979(Print), ISSN 0976 – 6987(Online) Volume 2, Issue 1, May - October (2011), © IAEME

The customer 6 ∈ T(k') has the biggest number of occurrence, so C6 is a candidate for insertion ins = 6. Let’s suppose that ϑ6 = 5m 3 and Cmax = 29m3 , the candidate for removing is given by :
sup = arg  max V (k ) + ϑ6 − ϑ sup  = 4  sup∈T (k )   

(

)

The customer 4 ∈ T (k ) would be replaced by the customer 6 ∈ T (k' ) . It is the customer whose maximises the loading (V ( k ) + ϑ6 − ϑsup ) of vehicle without violating the capacity ( Cmax ) and travel time ( Tmax ) constraints.

3.4 The Tabu list
In each iteration we move from a solution s to a neighbour solution better than s. In this case, the movement will be forbidden during p iterations. The Tabu list maintains a list of movements that were used (inserted and removed) in the past. A movement is considered tabu when the movements involved are tabu in the current iteration. In fact, the couple (sup ∈ T (k ), ins ∈ T (k' )) is memorised in the Tabu list LT. The insertion of ins in T(k) and sup in T(k') are forbidden during p iterations.

3.5 The aspiration criterion
The aspiration criterion we use overrides the tabu status of a movement if this leads to a better solution (having the minimum cost function F) than the best found so far. This aspiration criterion is fluently used in the literature (Araujo Q.C. and al., 2006). For each iteration, we note TA(s) the set of solutions of V(s) obtained using tabu movements.

3.6 Proposed Algorithm
* Let s be the best current solution and Nbmax is the maximal number of iterations. The following algorithm (A2) describes the proposed approach based on Tabu search.

88

International Journal of Industrial Engineering Research and Development (IJIERD), ISSN 0976 – 6979(Print), ISSN 0976 – 6987(Online) Volume 2, Issue 1, May - October (2011), © IAEME

Algorithm (A2) STEP 1: Initialisation Let s0 be the initial solution: the first routes are generated by the heuristic (NI), and assigned to the vehicles by the algorithm (A1).

s = s0 ; F = F (s ) ; s* = s0 ; F * = F (s* ) ; iter = 0 ; LT = ∅ ; TA(s) = ∅
Repeat
STEP 2: Neighbourhood search

Let s' be the best solution found in V (s ) . If s '∈ TA(s ) and F (s' ) ≥ F (s * ) then s ' = arg[min (F (s ' '), s ' '∈ V (s ) − TA( s ) )]
STEP 3: Update of the tabu list

The insertion of ins in T(k) and sup in T(k') are forbidden during p iterations: LT = LT ∪ {(sup ∈ T (k ),ins ∈ T (k' ))} . Remove from LT the non tabu movement.
STEP 4: Update of the best solution

Let's s = s ' . If (F (s ) < F (s* )) then s = s , iter = iter + 1 Until stopping criteria is reached ( iter = Nbmax )
*

4. COMPUTATIONAL TESTING
The tabu search algorithm was applied to 70 instances including seven real data sets which involve 100 customers and seven volume ranges Dϑminϑmax (D0105, D0110, D0115, D0120, D0125, D0129). These problems instances were presented in (Gabouj H.S. and Darmoul S., 2003). Each problem instance is labeled CNDϑminϑmax meaning that the number of customers is equal to N and the volume demands are within [ϑmin,ϑmax]. The algorithm has been coded in C++ using Microsoft Visual 6.0, and the tests described here have been run on a Dell computer with a 1.7 GHz Pentium(R). Several preparatory tests have been done in order to define the values of the parameters q and L (length of tabu list), according to the number of visited customers (Table 4). For each instance, the maximum number of iterations is limited to 104 (stopping criteria).
Table 4. Values of the parameters q and L

N 10, 20 30, 40 50, 60 70, 80 90, 100

q 5 7 9 11 15

L 5 9 12 19 29

89

International Journal of Industrial Engineering Research and Development (IJIERD), ISSN 0976 – 6979(Print), ISSN 0976 – 6987(Online) Volume 2, Issue 1, May - October (2011), © IAEME

We compare our results given by the tabu search approach with the results of evolutionary approach (Gabouj H.S. and Darmoul S., 2003). Table 5 shows the minimum number of vehicles given by Tabu search approach ( mT ) and evolutionary approach ( m E ). m* is the lower bound 0 computed by the equation 5. The CPU(s) is the time to found the minimum number of vehicles over the 20 runs.

Table 5: The minimum number of vehicles given by Tabu search approach and evolutionary approach
CNDϑminϑmax
C10D0105 C10D0110 C10D0115 C10D0120 C10D0125 C10D0129 C10D2029 C20D0105 C20D0110 C20D0115 C20D0120 C20D0125 C20D0129 C20D2029 C30D0105 C30D0110 C30D 0115 C30D0120 C30D0125 C30D0129 C30D2029 C40D0105 C40D0110 C40D0115 C40D0120 C40D0125 C40D0129 C40D2029 C50D0105 C50D0110 C50D0115 C50D0120 C50D0125 C50D0129 C50D2029

mE
1 1 2 2 2 2 3 2 2 2 3 3 3 5 2 2 3 4 5 5 7 3 3 4 5 6 7 11 3 4 5 6 7 8 13

mT
1 1 2 2 2 2 3 1 2 2 3 2 3 5 2 2 3 3 4 4 7 2 2 4 5 5 6 10 3 4 4 6 7 7 11

m* 0
1 1 1 2 2 2 3 1 2 2 3 2 3 4 2 2 2 3 4 4 7 2 2 4 5 5 6 9 3 4 4 5 7 7 10

CPU(s)
0 0 0 0.4 0.1 3 0 18 0 0.2 0.4 42.8 0 0 5.1 25.8 0.2 60.3 28.4 21 0 54.2 67.7 48.9 0 73.0 3.2 0 0 74.9 89.5 4 0 71.9 0

CNDϑminϑmax
C60D0105 C60D0110 C60D0115 C60D0120 C60D0125 C60D0129 C60D2029 C70D0105 C70D0110 C70D0115 C70D0120 C70D0125 C70D0129 C70D2029 C80D0105 C80D0110 C80D0115 C80D0120 C80D0125 C80D0129 C80D2029 C90D0105 C90D0110 C90D0115 C90D0120 C90D0125 C90D0129 C90D2029 C100D0105 C100D0110 C100D0115 C100D0120 C100D0125 C100D0129 C100D2029

mE
3 4 5 7 8 8 15 3 5 6 8 9 10 17 4 6 7 9 10 12 20 4 6 8 10 12 14 23 4 7 8 11 13 15 25

mT
3 4 5 7 8 8 13 3 5 5 8 8 9 15 3 5 7 9 10 11 18 4 6 7 10 11 14 20 4 6 8 11 12 14 22

m* 0
3 4 5 6 8 8 11 3 5 5 8 7 9 15 3 4 6 9 9 11 16 3 6 7 10 11 13 20 4 6 8 11 12 14 21

CPU(s)
37.2 267.9 534 0 44.4 0.9 2.0 347.1 0.3 1.7 0 0 1.3 2.3 0 0 0.5 196.4 1.5 5.6 3.1 0 0.9 0 164.8 269.4 1.4 0 0 0.6 2.1 2.2 1.5 7.5 0

In the table 6 we compute for each instance, the gap PE (%) between the minimum number of vehicles (mT) given after 20 running of the tabu approach, and the minimum number of vehicles (mE) given by the evolutionary approach.

90

International Journal of Industrial Engineering Research and Development (IJIERD), ISSN 0976 – 6979(Print), ISSN 0976 – 6987(Online) Volume 2, Issue 1, May - October (2011), © IAEME

m E − mT PE = ⋅ 100 min m E , mT

(

)

(8)

For the instances haven the same number of customers (N), we compute the average of gaps PE .
Table 6: Comparison between Tabu search approach and evolutionary approach
CNDϑminϑmax
C10D0105 C10D0110 C10D0115 C10D0120 C10D0125 C10D0129 C10D2029 C20D0105 C20D0110 C20D0115 C20D0120 C20D0125 C20D0129 C20D2029 C30D0105 C30D0110 C30D 0115 C30D0120 C30D0125 C30D0129 C30D2029 C40D0105 C40D0110 C40D0115 C40D0120 C40D0125 C40D0129 C40D2029 C50D0105 C50D0110 C50D0115 C50D0120 C50D0125 C50D0129 C50D2029

PE (% )
0 0 0 0 0 0 0 100 0 0 0 50 0 0 0 0 0 33.3 25 25 0 50 50 0 0 20 16.7 10 0 0 25 0 0 14.3 18.2

PE (% )

CNDϑminϑmax
C60D0105 C60D0110 C60D0115 C60D0120 C60D0125 C60D0129 C60D2029 C70D0105 C70D0110 C70D0115 C70D0120 C70D0125 C70D0129 C70D2029 C80D0105 C80D0110 C80D0115 C80D0120 C80D0125 C80D0129 C80D2029 C90D0105 C90D0110 C90D0115 C90D0120 C90D0125 C90D0129 C90D2029 C100D0105 C100D0110 C100D0115 C100D0120 C100D0125 C100D0129 C100D2029

PE (% )
0 0 0 0 0 0 15.4 0 0 20 0 12.5 11.1 13.3 33.3 20 0 0 0 9.1 11.1 0 0 14.3 0 9.1 0 15 0 16.7 0 0 8.3 7.1 13.6

PE (% )

0

2.2

21.4

8.0

11.9

10.5

20.9

5.5

8.2

6.5

Tables 5 and 6 compare the best result obtained by the evolutionary approach with the results obtained by the tabu search approach that we developed. We observe a superiority of tabu search approach over the 70 instances. In fact, the number of vehicles given by the tabu search is always lower or equal to the number of vehicles obtained by the evolutionary approach.

91

International Journal of Industrial Engineering Research and Development (IJIERD), ISSN 0976 – 6979(Print), ISSN 0976 – 6987(Online) Volume 2, Issue 1, May - October (2011), © IAEME

Furthermore, we obtain a better occupancy of vehicles in 41.43% of cases. It is about 29 instances. The corresponding gaps vary between 7.1% and 100%. The average of gaps is 23%. This improvement is shown by a total gain of 37 vehicles comparing to the evolutionist approach. The table 5 shows also that our approach reaches the lower bound in 77.14% of cases. The improvements are given by the techniques for designing vehicle routes and the assigning algorithm used in tabu search approach. Nevertheless, the instances haven demands in the interval [20, 29] (CND2029) allow us to evaluate the contribution of assigning algorithm. In fact, the big demand of these instances imposes to vehicles to visit one customer. Then, the same vehicle routes are obtained by the tabu search and evolutionary approaches. The computational results given by this particular case shows a high superiority of the assigning algorithm developed in this article. The results prove a better occupancy of vehicles in 70% of instances with a maximum gap of 18.2%. Finally, we observe that the computing time were generally low. It is lower than 1 minute in 84% of instances and it doesn’t exceed 534 seconds over all instances.

5. CONCLUSION
In this paper we developed a tabu search approach for a vehicle routing problem with double time windows for the depot and multiple use of vehicles. We addressed a distribution real case problem of Oil Company. The goal is to minimise the number of required vehicles. Each vehicle must deliver fuel to oil stations. There is a single depot with double time windows. The first window is for travelling and according to the length of delivery routes; a vehicle can make one or several travels. Inside the first window, there is a second time window (smaller), for loading vehicles in fuel. The proposed approach is based on a tabu search with aspiration criterion and a new heuristic for scheduling and assigning routes to vehicles. The heuristic computes a minimum number of vehicles and then assigns and schedules simultaneously routes to vehicles in order to maximise the exploitation of their work days. Computational results are reported for a set of 100 customers with 7 volume ranges and 70 test problems. We compared our results with the evolutionary approach introduced by (Gabouj H.S. and Darmoul S., 2003). We observed a superiority of tabu search approach over the 70 instances and we obtained a better solution in 41.43% of cases with a gain of 37 vehicles. Therefore we minimise deeply the transportation cost of the company. Our proposed tabu search approach represents an improvement over heuristics developed for the same problem. Therefore it would be interesting to extend our approach to more complex problems such as VRPDM with customer time window and heterogeneous fleet of vehicles.

92

International Journal of Industrial Engineering Research and Development (IJIERD), ISSN 0976 – 6979(Print), ISSN 0976 – 6987(Online) Volume 2, Issue 1, May - October (2011), © IAEME

REFERENCES
1. Dantzig and Ramser J.H. (1959), The truck dispatching problem, Management Science, Vol. 6, pp. 80-91. 2. Dondo R., Méndez C. A. and Cerdá J. (2003), An optimal approach to the multiple-depot heterogeneous vehicle routing problem with time window and capacity constraints, Lat. Am. appl. res. Vol.33, No.2 Bahía Blanca abr./jun. 3. Taillard E., Laporte G. and Gendreau M. (1996), Vehicle Routing with Multiple Use of Vehicles, The Journal of the Operational Research Society Vol. 47, No. 8, pp. 1065-1070. 4. Gabouj H.S. and Darmoul S. (2003), A Hybrid Evolutionary Approach for a Vehicle Routing Problem with Double Time Windows for the Depot and Multiple Use of Vehicles, Studies in Informatics and Control, Vol. 12, No. 4, pp. 253-268. 5. Solomon, M.M. (1987). “Algorithms for the Vehicle Routing and Scheduling Problems with Time Window Constraints.” Operations Research 35, 254−265. 6. Fleischmann B. (1990), The vehicle routing problem with multiple use of vehicles, Working Paper, Fachbereich Wirtschaftswissenschaften, Universita¨t Hamburg, Germany. 7. Zhao Q-H., Wang S-Y,. Lai K-K. and Xia G-P. (2002), A Vehicle Routing Problem with Multiple Use of Vehicles, AMO – Advanced Modeling and Optimization, Vol. 4, No.3. 8. Lin C.K.Y. and Kwok R.C.W. (2005), Multi-objective metaheuristics for a location-routing problem with multiple use of vehicles on real data and simulated data, European Journal of Operational Research. 9. Rosenkrantz D.J. (1977), Stearns R.E, Lewis P. M, An Analysis of Several Heuristics for the Traveling Salesperson Problem, SIAM Journal of Computing. Vol.6, pp. 563-58. 10. Clarke G. and Wright J.W. (1946), Scheduling of vehicles from a central depot to a number of delivery points, Operations Research, Vol. 12, pp. 568-581. 11. Taillard E. (1993), Parallel Iterative Search Methods for Vehicle Routing Problems, Networks, Vol. 23, pp 661-676. 12. Alonso,F., Alvarez, M.J. and Beasley, J.E., (2007), “A Tabu Search Algorithm for the Periodic Vehicle Routing Problem with Multiple Vehicle Trips and Accessibility Restrictions”, Journal of the Operational Research Society, Vol.59, pp. 963-976. 13. Chan Y., Carter W. and Burnes M.D. (2001), A multiple-depot, multiplevehicle, location-routing problem with stochastically processed demands, Computers and Operations Research, Vol. 28, pp. 803-826. 14. Chan Y. (2005), The Multiple Depot, Multiple Traveling Salesmen FacilityLocation Problem : Vehicle Range, Service Frequency, and Heuristic Implementations, Mathematical and Computer Modelling, Vol. 41, pp.10351053.

93

International Journal of Industrial Engineering Research and Development (IJIERD), ISSN 0976 – 6979(Print), ISSN 0976 – 6987(Online) Volume 2, Issue 1, May - October (2011), © IAEME

15. Brandão J. and Mercer A. (1997), A Tabu Search Algorithm for the Multi-Trip Vehicle Routing and Scheduling Problem, European Journal of Operational Research, Vol. 100, pp. 180-197. 16. Campbell A.M. et Savelsbergh M. (2004), Efficient insertion heuristics for vehicle routing and scheduling problems, Transportation Science, Vol. 38, pp. 369–378. 17. Azi N., Gendreau M. and Potvin J-Y. (2007), An exact algorithm for a singlevehicle routing problem with time windows and multiple routes, European Journal of Operational Research, Vol.178, pp.755-766. 18. Jagannathan A. K. R. (2011), Vehicle Routing With Cross Docks, Split Deliveries, and Muliple Use of Vehicles, thesis Auburn University. 19. Campbell A.M. and Savelsbergh M. (2005), Decision support for consumer direct grocery initiatives, Transportation Science, Vol. 39, pp. 313–327. 20. Glover F. (1986), Future paths of integer programming and links to artificial intelligence, Computers and Operations Research, Vol. 13, pp. 533-549. 21. Araujo Q.C. Wolfler-Calvo R., Ould-Louly M.A. (2006), Développement de Méthodes Heuristiques pour le 2-Voyageurs de commerce péripatétique, 6ème Conférence Francophone de MOdélisation et SIMulation - MOSIM’06.

94