Tabu search variants for the mix fleet vehicle routing problem

Size: px
Start display at page:

Download "Tabu search variants for the mix fleet vehicle routing problem"

Transcription

1 Journal of the Operational Research Society (2002) 53, #2002 Operational Research Society Ltd. All rights reserved /02 $ Tabu search variants for the mix fleet routing problem NA Wassan 1 * and IH Osman 2 1 University of Kent at Canterbury, Canterbury, UK; and 2 American University of Beirut, Beirut, Lebanon The Mix Fleet Vehicle Routing Problem (MFVRP) involves the design of a set of minimum routes, originating and terminating at a central depot, for a fleet of heterogeneous s with various capacities, fixed s and variable s to service a set of customers with known demands. This paper develops new variants of a tabu search meta-heuristic for the MFVRP. These variants use a mix of different components, including reactive tabu search concepts; variable neighbourhoods, special data memory structures and hashing functions. The reactive concept is used in a new way to trigger the switch between simple moves for intensification and more complex ones for diversification of the search strategies. The special data structures are newly introduced to efficiently search the various neighbourhood spaces. The combination of data structures and strategic balance between intensification and diversification generates an efficient and robust implementation, which is very competitive with other algorithms in the literature on a set of benchmark instances for which some new best-known solutions are provided. Journal of the Operational Research Society (2002) 53, doi: =palgrave.jors Keywords: mix fleet routing problem; heterogeneous fleet; routing; local search; heuristics; meta-heuristics; tabu search; variable neighbourhood search Introduction The Mix Fleet Vehicle Routing Problem (MFVRP) is a variant of the well known Vehicle Routing Problem (VRP) and can be defined as follows. Let G ¼ðN; AÞ be an undirected network where N ¼f0;...; ng is the set of nodes and A ¼fði; jþ; i; j 2 Ng is the set of arcs. Node 0 represents the depot at which the fleet of s is located, while the remaining nodes correspond to customers. Each customer i has a non-negative demand q i. There are a number of types. Each of type t is characterised by its capacity Q t, its fixed F t and its variable per distance unit a t. Each pair of customers i and j is associated with a distance d ij and their travel by a of type t is c ij ¼ d ij a t. Each route must start and terminate at the depot; the total demand of a route must not exceed the capacity of the assigned to it and each customer must be visited exactly once. The objective of the MFVRP is to determine the optimal mix of heterogeneous s and their associated set of feasible routes that minimises the total variable and fixed subject to and customer restrictions. The MFVRP is a theoretically challenging and practically important problem. It generalises the classical routing problem as it includes the strategic decision on the *Correspondence: NA Wassan, Canterbury Business School, University of Kent at Canterbury, Kent CT2 7PE, UK. N.A.Wassan@ukc.ac.uk fleet composition. Therefore, it is NP-hard. Furthermore, the MFVRP has been used to model many realistic applications including the grocery stores delivery problem, 1 the pet food and flour delivery problem, 2 and the mail collection problem. 3 In the literature, there are three MFVRP variants. First, the standard version is introduced by Golden et al. 4 It uses the same value for the variable s, regardless of the type, and also has an unlimited number of s of each type. Second, Salhi et al 5 study the effect of neglecting the variable s in the standard version and consider the variable s to be dependent on the type. Finally, Taillard 6 extends the second version by adding restrictions on the number of available s of each type t and set it equal to some constant m t instead of being unlimited. Due to the complexity of the MFVRP, some attempts have been made to formulate it using mixed integer linear programming. 4,5,7,8 But no exact algorithm for the MFVRP has ever been developed. On the other hand, several approximation algorithms have been proposed. These can be classified into classical heuristics and recent meta-heuristics. 9 The classical heuristics include the saving-based algorithms 4,5,10,11 which are modifications of the well known Clarke and Wright 12 savings procedure; the two-step composite algorithms such as the giant tour (GT) algorithm, 4 the lowerbound based algorithm 7 and the two-step heuristic; 8 the local search descent procedures. 13,14 Recently, the MFVRP has attracted the attention of the meta-heuristic researchers. Osman and Salhi 13 propose a

2 NA Wassan and IH Osman Mix fleet routing problem 769 short-term memory tabu search using 1-interchange neighbourhood. Ochi et al 15 present a hybrid meta-heuristic which uses parallel genetic algorithms and scatter search. Han and Cho 16 present a meta-heuristic based on threshold accepting and great deluge approaches. Taillard 6 develop a heuristics-column generation method based on an adaptive memory tabu search procedure. Finally, Gendreau et al 17 develop a tabu search approach by incorporating several strategies, diversifying the search by including a fleet change mechanism, and then embedding procedures. We refer to the comprehensive bibliographies 9,18 on routing and meta-heuristics. Laporte et al 19 stress that the time has probably come to concentrate on the development of faster and more robust algorithms. The determination of fleet sizes is also shown to be of practical importance in the recent paper by Sherali and Maguire. 20 In this paper, we aim to develop an efficient and robust tabu search meta-heuristic to determine the best composition of the fleet of s. The remaining parts of the paper are organised as follows. First, the TS components including the neighbourhood mechanisms and data structures are described. Second, our computational experience is reported. Last we conclude with remarks and discussion on further research. Tabu search meta-heuristic Tabu search belongs to the recent class of approximate methods called meta-heuristics. 21 It has had widespread success in attacking a variety of practical combinatorial optimisation problems. The basic TS meta-heuristic uses an aggressive guiding strategy to direct any local search procedure to carry out the exploration of the solution space in order to avoid getting trapped in local optima. When a local optimum is encountered the aggressive strategy moves to the best solution in the whole neighbourhood even if it may cause a deterioration in the objective value. To prevent the search from returning to previously visited solutions, TS uses memory structures to store attributes of the recently accepted solutions in a tabu list. Selected attributes that are stored in the tabu list are designated tabu-active and solutions that contain tabu-active elements are designated tabu. An attribute remains tabu-active for a duration of tt value, known as a tabu tenure before it is made not tabu-active. The TS algorithm continues its search for a total number of iterations before it is terminated. We refer to the books for more details on TS theory and applications. Our TS meta-heuristic requires the definition of (i) an initial solution S; (ii) a neighbourhood mechanism to generate the set of neighbouring solutions N ðsþ; (iii) data management structures for efficient storage and retrieval of generated information and (iv) the set of components for the TS algorithm. Initial solution Salhi and Rand 25 generate a good initial solution for the VRP using a modification of the saving values, S ij, of Clarke and Wright 12 as follows: S ij ¼ c 0i þ c 0j gc ij where g is a saving multiplier. The VRP procedure is adopted to get an initial solution for the MFVRP quickly and further improve it by our TS algorithms. For each of type t, several initial solutions are produced using different values for the savings multiplier g taken from the range of ½0; 2Š, by tenths. The best of initial solution is then selected from all the generated ones after considering all the types. A heterogeneous fleet is reassigned, if possible, to the best generated set of routes in the initial solution in order to reduce the total fixed and variable s. Neighbourhood generation mechanism Let S ¼fR 1 ;...; R p ;...; R v g be a given MFVRP solution where v is the associated total number of s of all types. A neighbourhood generation mechanism specifies the set of operators that can be applied to S to generate moves to another solution S 0 in the neighbourhood of S; NðSÞ. For our implementation, we adapt the l-interchange mechanism introduced in Osman 26 for routing and grouping problems as follows. Given a pair of route sets ðr p ; R q Þ in S, a l- interchange move interchanges a subset S p of size js p jl from R p with another subset S q of size js q jl from R q to generate two new route sets R 0 p and R 0 q. The new routes could take the forms of R 0 p ¼fR p S p g[s q and R 0 q ¼fR q S q g[s p. It should be noted that the way of selecting the subsets S p and S q and reconnecting the broken segments of the associated routes would generate a different number of moves. Depending on the sizes of S p and S q we would have one of the following processes. First, if any of the sizes is zero, then we would have a shift process which shifts one non-empty subset from one route to another. Second, if both subsets are not empty, we would have an exchange process which exchanges the two subsets between the routes. The exchange process combines two shift processes simultaneously to generate compound moves that cannot be generated by consecutively applying any of the shift processes alone due to capacity=time restrictions. The size of the l-interchange neighbourhood is a function of the integer value of l. It is determined by the set of all possible solutions which are generated sequentially by considering all possible vðv 1Þ=2 combinations of pair of routes, ie ðr 1 ; R 2 Þ;...; ðr v 1 ; R v Þ. The sequential search of the neighbourhood has an advantage over the random sampling approach which may miss good improving solutions due to capacity=time restrictions. In addition, with a proper design of data structures, the whole neighbourhood

3 770 Journal of the Operational Research Society Vol. 53, No. 7 rather than a subset of it can be searched efficiently without sacrificing the quality of the solution. Finally, the l-interchange mechanism was successfully implemented for many routing, location and assignment problems Moreover, it has generalised many successful neighbourhood mechanisms such as the Or-opt, 33 2-opt*, 34 the CROSS exchange 35 and the chain-exchange. 36 In this study, we are going to examine four neighbourhood mechanisms generated by the l-interchange operators to study the effectiveness of simple moves and more complicated compound moves. These mechanisms are explained as follows: (i) 1-interchange mechanism uses two processes. The shift process is based on the ð1; 0Þ and ð0; 1Þ operators whereas the interchange process is based on the ð1; 1Þ operator. The ð1; 0Þ operator shifts a single customer from route R p to R q whereas the ð0; 1Þ operator shifts one single customer from R q to R p. The ð1; 1Þ operator attempts to exchange one customer from each route simultaneously to generate a compound move. For instance in Figure 1, customer (b) is taken out from the route and its predecessor and successor customers (a) and (c) are reconnected, and then it is re-inserted in the best position along each arc in the different routes. (ii) 2-interchange mechanism uses all the operators in (i) in addition to the following extra operators: the ð2; 0Þ and ð0; 2Þ shift operators and the ð1; 2Þ; ð2; 1Þ and ð2; 2Þ exchange operators. The extra shift and exchange operators basically work in the same way as in the 1-interchange mechanism. However, the extra operators attempt to shift or exchange any two consecutive or non-consecutive customers between routes. For instance in Figure 1, the ð2; 1Þ operator could exchange two non-consecutive customers (b and e) or consecutive (c and d) with a single customer from another route. (iii) 2-consecutive-node interchange mechanism is the restricted neighbourhood of the 2-interchange mechanism where only two-consecutive customers are considered by the ð2; 0Þ; ð0; 2Þ shift and the ð1; 2Þ; ð2; 1Þ; ð2; 2Þ exchange operators. The 2-consecutive-node neighbourhood is worthwhile as it still includes the 1-interchange neighbourhood in (i). (iv) Variable-node interchange mechanism considers variable sizes of consecutive nodes in the shift or exchange processes. In Figure 1, let R p be the route consisting of six customers, numbered from a to f with the depot duplicated Figure 1 Illustrations of some l-interchange moves. at its start and at the end, and let b and e be the two customers selected from this route in a 2-interchange move. Then the chain defined by b as its starting customer and e as its ending customer can be shifted to or exchanged with another chain from a different route, and the sequence of all customers including b and e can be removed, and a and f be reconnected by the dashed line as indicated in the lower side of the figure. In this case, the generated move can be viewed as a shift or exchange move of four customers generated by a l-interchange operator or a chain identified by its two ending points (b and e) and hence a special case of 2- interchange but with a different reconnection of customers than that considered in (ii). It should be noted that we always add an extra empty dummy route to be considered with the other non-empty routes in all the above generation mechanisms. The reason is that the shift operators may reduce the total number of the routes but would not allow for increases. A strategic oscillation is implemented to find the best number of s v through the extra dummy route and the shift operators if deemed beneficial. Data management structures TS meta-heuristic is an iterative search process that selects the best move from the whole neighbourhood space. The identification of such a move can be very expensive for large instances. Hence creating data management structures (DMS) to achieve a good speed-up is proved to be highly successful in the literature, including DMS 13,26 which were developed to manage information using two levels of memories for the 1-interchange neighbourhood. The first level stores the information about the routes and their s, capacities and customers, whereas the second level is used to identify the best move from a candidate list. The DMS advantage is that they are only initialised at the first iteration where all the moves in the whole neighbourhood are scanned and the best moves are stored in appropriate matrices. They are then updated carefully to reflect the changes made from one iteration to another while making proper use of any unchanged information. In particular, after performing a TS move, there are normally two routes involved and the others remain unchanged. Hence 2 ðv 1Þ pairs of routes may contain improved moves and need to be re-evaluated. In the case of adding a dummy route or removing an existing one, the DMS has to be reinitialised to reflect the new changes. In this paper, we extend the 1-interchange DMS and develop new ones for the different neighbourhood mechanisms (ii) (iv) using three levels of memory structures. Level-1 DMS record the information regarding the routes including s, distances, capacities and their customers. Three types of matrices are used: CAP-W, DIS-W and GAIN-W of dimensions v n to store for each route, the

4 NA Wassan and IH Osman Mix fleet routing problem 771 capacity, the distance, and the gain in distance without a customer or a subset of customers that are involved in the shift or exchange operators. The recorded values do not need to be recalculated, but only updated for the two routes involved in the performed move. Level-2 DMS store the information regarding the best insertion places for customers during the shift ð0; 1Þ; ð1; 0Þ; ð2; 0Þ and ð0; 2Þ operators. This level of DMS uses a matrix BEST-I of dimensions n 3v. For each customer, its best insertion in each route of the v routes is attempted. Each insertion can be identified by the additional insertion distance, the predecessor and successor customers in the given route. The stored information in Level-1 and 2 matrices are then used in the evaluation of moves generated by the exchange ð1; 1Þ; ð1; 2Þ; ð2; 1Þ and ð2; 2Þ operators. It should be noted that the evaluation of moves generated by any operators considers the utilisation of appropriate types, which may be different than the current ones if deemed beneficial. We shall illustrate special cases for evaluating moves by the 1-interchange operators. Similar ways can be applied to evaluate generated moves by the other neighbourhood mechanisms. Let R p and R q be two given routes involved in the exchange of process of customers i 2 R p with j 2 R q. Let c and e be the predecessor and successor of the best insertion of customer j in route R p, and f and g be the predecessor and successor of the best insertion of customer i in route R q. During the exchange process, the customers to be exchanged between the given pair of routes can be checked to see whether any of them is already recorded as a predecessor or a successor in any shift move as follows. Case 1. If neither of the out-going customers i nor j from ðr p ; R q Þ, is identical to the predecessors or successors of the best insertion positions of each other, then the exchange move is evaluated from the recorded information as if they were moved simultaneously using two independent shifts. Case 2. If only the out-going customer i from R p is identical to the predecessor or successor of the best insertion of customer j from R q, then the best insertion of customer j has to be re-defined in R p. In addition, since the recorded information on customer i do not involve j, they are used in the exchange move evaluation to R q. Case 3. If both of the out-going customers i and j of a given pair of routes ðr p ; R q Þ are identical to the recorded predecessors or successors of each other during the best insertion of shift moves, then both routes need to be redefined to find the new insertion values. In the case of re-calculation, only three positions are considered, ie, the position of out-going customer and its predecessor and successor positions. The reason is that the best insertion is more likely to be in the same area of previous best insertion positions, and would save a lot of computation time. Level-3 DMS store the candidate list of best moves for each of the vðv 1Þ=2 pair of routes. It consists of two matrices. The first matrix is of a dimension v v where the upper triangle records the best move values for each ðr p ; R q Þ pair of routes. Such a move has the highest evaluation among all moves that are sequentially and systematically generated by all the shift and exchange operators operated on the given pair of routes. The lower triangle stores the positional indices Y of the associated moves. The second matrix is of a dimension ½vðv 1Þ=2ŠA. The parameter A represents the number of columns for recorded attributes of an interchange move. The value of A can be increased or decreased depending on the necessary attributes to be stored. In this study, a maximum value of A ¼ 12 is used. The positional index Y provides the links between the two matrices and it is very essential when updating and retrieving parts of the candidate list. In the case of the variablenode interchange move, the move is sufficiently identified by its two-end customers, ie its first and last customers in the various DMS. Tabu search components In addition to defining the neighbourhood mechanisms and their appropriate DMS, the success of our TS algorithm depends on the setting of the following special components. Tabu list uses a short term memory to record some attributes of performed moves in order to determine their future tabu status. The tabu list takes the form of a matrix TABS of dimension n v. Selected attributes of recently performed moves are stored in TABS for a duration of tt iterations. The attributes to store depend on the type of operators which generates the performed move and the level of accuracy needed to identify it. For instance, a 2-interchange (2- consecutive) move can be determined for its two customers i and j ð i þ 1Þ taken from route R p to be shifted or exchanged with the other two customers l and s ðl þ 1Þ from R q. For such a move, TABS is set as follows: TABSð p; iþ ¼TABSð p; jþ ¼tt and TABSðq; lþ ¼ TABSðq; sþ ¼tt. Avariable-node move is determined by its beginning and ending customers i and j from R p to be shifted or exchanged with another variable chain with respective starting and ending customers l and s from R q, the middle nodes are not stored in TABS list and the storage of such moves is done in a similar way to the 2-interchange move. Tabu restrictions are criteria to define the status of a tabu move. There are a few guidelines for choosing good tabu restrictions in the literature. The following tabu restrictions are used in our implementation: a 2-interchange (or 2- consecutive) move is considered tabu if customers i and j and customers l and s are returning back to R p and R q, respectively. Similarly, a variable-node move is considered tabu if the two-end customers of each chain are returned back to their previous routes, ie the middle customers of each chain are allowed to return individually. Aspiration criterion and stopping rule: the aspiration criterion overrides the tabu status of a tabu-active move and make it

5 772 Journal of the Operational Research Society Vol. 53, No. 7 admissible if the move leads to a new best solution. Our TS algorithm is terminated after performing a total number, T itr ¼ 200 n, of iterations on each instance. Tabu tenure schemes Tabu tenure schemes are ways to determine and control the change in the tabu tenure, tt value. We have implemented a number of schemes from the literature in addition to designing a few of our own. These are explained as follows: (i) TS scheme 23 (F-tabu) is one of the earliest approach which uses a fixed tt value during the entire search. (ii) Robust TS scheme 37 (Rb-tabu) uses randomly selected tt values from a given range. During the search, the tt value is periodically changed after performing m iterations, where m is also a randomly chosen number from a given range. (iii) Periodic TS scheme 26,38 (P-TS) changes periodically the tt values in a systematic and cyclic way from small, medium to large values. The TS algorithm performs m iterations at each tt value before it is re-assigned another value. (iv) Reversed deterministic TS scheme (Rd-tabu) is a new proposed scheme which changes and reverses the tt values during the search. This was motivated by the work 13 which uses a series of predefined fixed tt values, where ½tt ¼ n=pš and p is taking a different value from 2 7 for each single run. The Rd-tabu scheme dynamically changes the tt values during the search process. tt takes a series of values computed by dividing the problem size n systematically by p, after every m iterations, ie tt ¼ n=p and m ¼ T itr=n p, where T itr is total number of iterations to be performed. Initially, p takes the value of 9 and then decreases by one after performing m iterations. Upon reaching a value of 1, it is then restarted from 9 and the search is continued until the algorithm is terminated. In this way, we are able to control the diversification by using small values of p and the intensification by using larger values of p. (v) Reactive TS scheme (RTS-O) is considered to be the most promising among the different tabu search schemes in the literature. It was proposed by Battiti and Tecchiolli 39 to provide a balance between diversification and intensification search strategies using two different mechanisms. These mechanisms rely on detection of repeated solutions. The first mechanism provides a diversification of the search by executing a large number of random moves in order to escape the domain of the chaotic attractor whenever REP solutions have been repeated CHAOS times. The second mechanism provides a dynamic control of the tabu tenure values using the number of iterations between repeated solutions. The tabu tenure value is increased if a repeated solution is detected and it is decreased slowly over time if there was no repetition. 27,32 The components of RTS are next explained. (I) Hashing functions. RTS requires a method to determine if a solution has been previously visited, and if so, how long ago. Two methods are used to store representative information on visited solutions. These are the Unordered Linear Arrays (ULS) and the Hash Function Search (HFS) methods. 40 Both methods require a code, Sr, to be calculated for each solution. For our MFVRP, Sr is set to the sum of (overall routes) the product of the customer index x j and the total number of customers in its corresponding route jr p j: Sr ¼ Pv P x j jr p j p¼1 x j 2R p (a) The unordered linear search (ULS). Our ULS procedure uses a single array ULS of dimension equals to the maximum number of iterations to be performed. Once a given solution is accepted, its Sr value is computed and then stored in the next empty entry in the ULS array. To check the existence of a given value, the ULS starts the search from the beginning of the array until the end of it. (b) The hashing function search (HFS). The HFS procedure has a different mechanism to store and check repeated solutions than ULS. For each solution, its Sr value is computed and then divided by the largest prime number smaller than the total number of iterations T itr to be performed. HFS uses a matrix of dimensions T itr 10, where the first column is to store a KEY for each solution and the other columns are to store Sr values. It can happen that more than one solution have the same key, hence collisions might happen. To avoid such collision, the extra columns are needed. The HFS procedure provides a quick way to identify the existence of repeated solutions and sketched as follows: Step 1: Initialise HFS matrix to zero. Set PRIME ¼ T itr 3, REMD ¼ MODðSr; PRIMEÞ; and KEY ¼ REMD PRIME þ 1: Step 2: (a) Set r ¼ 1, {Column index}. (b) If fhfs ðkey; rþ 6¼0g Then r ¼ r þ 1. (c) Repeat (b) until HFSðKEY; rþ ¼0 and set HFSðKEY; rþ ¼Sr. (II) The RTS-O procedural steps. Step 0: Initialisation of RTS parameters Note that this step can also be done with other tabu search parameters initialisation. tt ¼ 1 an initial tabu tenure value; Repetition ¼ 0 Chaotic ¼ 0 a repetition counter; a constant limit to the often-repeated sets;

6 NA Wassan and IH Osman Mix fleet routing problem 773 REP ¼ 3 a counter for often-repeated solutions; CHAOS ¼ 3 the maximum allowed number of often-repeated sets; INCREASE ¼ 1:1 a percentage increase for the tabu tenure value; DECREASE ¼ 0:9 a percentage decrease for the tabu tenure value; MOVAVG ¼ 0 a moving average for the detected repetitions; LastChange ¼ 0 the number of iterations since the last change in tabu tenure value; GapRept ¼ 0 the gap between two consecutive repetitions; GapMax ¼ 50 a constant used to compare with GapRept to get the moving average MOVAVG; LasTimeRept ¼ 0 the iteration number when last time an identical solution was noticed; CurTimeRept ¼ 0 the iteration number of the most recent repetition; TABSð:;:Þ¼0 the tabu list matrix. Step 1: {Compute the Sr value for the accepted solution} If {Sr is found in the ULS=HFS hashed array} Then, GapRept ¼ CurTimeRept LasTimeRept; and Repetition ¼ Repetition þ 1 Else, add Sr to the ULS=HFS hashed array, and go to Step 4. Step 2: {Check for repetition} If frepetition > REPg Then, Repetition ¼ 0, and Chaotic ¼ Chaotic þ 1. Else, go to Step 3. If fchaotic > CHAOSg Then, Chaotic ¼ 0, and go to step 5 for diversification Else, go to Step 3. Step 3: {Increase the tabu tenure value} If fgaprept < GapMaxg Then MOVAVG ¼ 0:1 GapRept þ 0:9 MOVAVG; tt ¼ tt INCREASE; LastChange ¼ 0; and go to Step 6: Else, go to Step 4. Step 4: {Decrease the tabu tenure value} If flastchange > MOVAVGg Then tt ¼ tt DECREASE; and LastChange ¼ 0: Else, LastChange ¼ LastChange þ 1, and go to Step 6. Step 5: {the escape procedure} (i) Select a neighbourhood mechanism for the diversification moves. (ii) Set the current and best escape solutions to S, ie S c ¼ S and S b ¼ S. (iii) Set Escp itr ¼ w n, an iteration number to be performed, w is a parameter set to 2. (iv) Choose the best admissible solution, S 0 from the candidate list of NðS c Þ. (v) If fcðs 0 Þ < CðS b Þg Then, update S b ¼ S 0 and S c ¼ S 0 Else, S c ¼ S 0. (vi) Repeat step (iv) and (v) until Escp itr iterations are performed. (vii) Return to the main program by setting S ¼ S b (if found) or S ¼ S c. Step 6: Stop RTS procedure. For the escape procedure in Step 5, two strategies are used. Strategy I: the main TS algorithm uses the 1-interchange neighbourhood, whereas the ð0; 2Þ; ð2; 0Þ and ð2; 2Þ operators of the 2-consecutive-node mechanism are used for generating moves for the escape procedure. Strategy II: the main TS algorithm uses the 1-interchange mechanism and the ð0; 2Þ; ð2; 0Þ and ð2; 2Þ operators of the 2-consecutive-node mechanism, whereas the other ð1; 2Þ; ð2; 1Þ operators are used for the escape diversification procedure. It should be noted that our RTS scheme is different than that in the literature. First, a number of random moves 39 were generated for diversification from that of intensification s neighbourhood. However, in our implementation, more complex moves are strategically generated for diversification, that are different from those simple moves used for intensification in the main algorithm. It is like generating some global complex moves for diversification while using local simple moves for intensification. It is a kind of variable neighbourhood search strategy. 41 Second, we have used different values for computing the RTS parameters. The general TS-MFVRP procedure The generic steps of the TS procedure are as follows: Step 1: Generate an initial solution The initial solution S is obtained as indicated at the start of the paper. Set the current best solution S best ¼ S and set C itr ¼ 0 (current iteration counter). Step 2: Tabu search initialisation Set the appropriate values for the parameters of the chosen tabu tenure scheme. Set the total number of iterations T itr, and B iter ¼ 0 (best iteration counter). Set the tabu list matrix and other data structure matrices to zero. Step 3: Initialisation of data structures Perform one complete cycle of search using the predefined neighbourhood mechanism to initialise the three levels of data structures for move evaluations and selections.

7 774 Journal of the Operational Research Society Vol. 53, No. 7 Step 4: Scan of data structures Scan Level-3 data structure to find the best admissible solution S 0 from its candidate list. Set the current solution S to S 0 and C itr ¼ C itr þ 1. Apply 2-opt and 3-opt arc exchange heuristics as a post-optimiser to S. Step 5: Update of tabu search scheme Update the components of tabu list and its associated components of the selected TS scheme. When reactive TS scheme is used, all TABS and hashed entries are initialised to zero before the call of escape mechanism. Step 6: Special update of data structures Update Level-1 data structures based on the two changed routes of the accepted solution. Update strategically the candidate list of solutions in Level-3 data structure. If a new dummy route is added or an existing route is deleted then update the whole matrices of all levels of the data structures by performing a new cycle of search. Step 7: Update of the best solution If fcðsþ < CðS best Þg Then, set S best ¼ S and B itr ¼ C itr. Step 8: Termination If fc itr ¼ T itrg Then, Stop, and report S best and Bst itr, Else go to Step 4. It should be noted that in the above general procedure one can generate many TS variants. Each TS variant depends on the selection of the neighbourhood mechanism, the tabu restrictions to determine the tabu status of moves, the tabu tenure schemes. Hence a class of TS variants can be emerged, the best TS variant will be determined empirically as shown in the section on computational experience. Computational experience Computational experiments are reported using two sets of instances from the literature. The first set contains 20 instances 4 with sizes varying from customers. The second set consists of 8 instances, 6 with sizes varying from customers. The characteristic of the second set is that the fixed s in the first set is replaced by variable s. The developed algorithms are coded in Fortran 77, and run on a Sun Sparc server 1000 with 50 MHz processor (10 Mflop=s) under the Solaris 2.3 operating system. We report the performance of machines in terms of Mflop=s (millions of floating-point operations completed per second) using the benchmark results in Dongarra 42 The following abbreviations are used in our tables of results: No: Serial number of the instance. NB: instances better or equal to published solutions. RPD: Relative Percentage Deviation above the best known solution. ARPD: Average of RPDs for a set of instances. RPI: Relative Percentage Improvement over initial solution. ARPI: Average of RPIs over the set of instances. SD: Standard deviation. Size: Size of the instance. TimeT: Total CPU time in seconds to stop. TimeB: CPU time to best in seconds. Avg-TimeB: Average TimeB over the set of instances where RPI ¼fðinitial solution heuristic solutionþ=initial solutiong 100; and RPD ¼fðheuristic solution best-known solutionþ=best-known solutiong100: In the following, the effects of various TS components on the performance of the TS meta-heuristic are initially investigated in Tables 1 and 2 using a total of 100 n iterations per run on each instance of the first data set. The best implementation and parameter settings are then identified and used for reporting our computational results in Tables 3 5 using a total of 200 n iterations per run on each instance. Table 1 Statistical figures for TS variants with and without data structures Without any DMS With all DMS but no Level-2 With all DMS Avg-TimeB ARPD SD Table 2 Computational results of four neighbourhood mechanisms l ¼ 1 l ¼ 2 2-consecutive Variable-node Avg-TimeB ARPI ARPD SD

8 NA Wassan and IH Osman Mix fleet routing problem 775 Table 3 Comparison of different tabu search schemes using the 2-consecutive node No Size I.Sol F-tabu TimeB Rd-tabu TimeB Rb-tabu TimeB RTS-O TimeB RTS-M TimeB RTS-F TimeB Avg-TimeB ARPD SD F-tabu: Fix tabu search. Rd-tabu: Reverse deterministic tabu search. Rb-tabu: Robust tabu search method. RTS-O: Reactive Tabu Search (Battiti and Tecchiolli s version). RTS-M: Reactive Tabu Search (Our modified version). RTS-F: Reactive Tabu Search (with best parameter settings). Table 4 Comparison of the different results with our overall best solutions No Size Osman and Salhi 13 TimeT Taillard 6 TimeT Gendreau et al 17 TimeB Liu and Shen 11 Our Best TimeB TimeT NB

9 776 Journal of the Operational Research Society Vol. 53, No. 7 Table 5 Comparative results for the 8 instances with variable s No Size Taillard 6 TimeT Gendreau et al 17 TimeB Our Best TimeB TimeT NB The effect of data management structure The general TS algorithm is implemented with simple settings of TS components with the 1-interchange mechanism in Step 3, and different DMS levels in Step 6 resulting in three TS implementations, namely Without any DMS levels, With all levels but without Level-2 and With all DMS levels. All three implementations use a fixed TS scheme with tt ¼ 11 which is chosen after making several trials in the range of ½2; 20Š. The computational results of these implementations are reported in Table 1. The With all DMS levels implementation has achieved a huge reduction factor of 8.2 in terms of CPU seconds over the Without any levels one. The price for such a reduction is a slight deterioration in the ARPD value. However, the deterioration does not always occur as it may also be an improvement as can be seen in the Without Level-2 implementation. The reason is that the approximate re-evaluation of insertions in Level-2 DMS may lead to different search paths than that would have been generated by the implementation without any DMS. Hence, the With all DMS will be used in our different implementations and more savings in terms of CPU time would be expected with more complex neighbourhood mechanisms and a longer number of iterations. The effect of neighbourhood mechanism The main TS algorithm is implemented with the Rd-tabu scheme to study the effect of the different neighbourhood mechanisms, namely (i) (iv), on the performance of the TS algorithm. The Rd-tabu scheme is selected as it is one of the best performing TS schemes, as will be shown later. The computational results of the four implementations are reported in Table 2. It can be seen that the 1-interchange mechanism is able to provide a good relative percentage improvement of 4.38 within a short CPU time. Moreover both of the 2-interchange and the 2-consecutive-node interchange mechanisms improve the ARPD value of the 1- interchange mechanism, and are more robust with better standard deviations. This kind of result is expected as the two neighbourhoods include the 1-interchange mechanism as a subset. However, the unstable results are mostly produced by the variable-node interchange mechanism with its highest SD value and CPU time. The highest standard deviation is due to the poor performance on problems 2 and 3 and early convergence on some other problems. However, it should be mentioned that with this neighbourhood four best solutions are found for instances of large sizes, namely problems 7, 13, 18 and 20. One possible remedy could be to run the 1-interchange mechanism for a number of iterations followed by the variable-node mechanism. Note that all the four tested implementations use all levels of data management structures. Taking into account both the quality of solution and CPU time, it can be deduced that the 2-consecutive-node mechanism is the one to be considered for the rest of our experiments. The effect of TS schemes First, the F-tabu, Rb-tabu, Rd-tabu and the original reactive implementation (RTS-O) schemes are compared. Next, a discussion on implementation issues is presented. For the comparison, the settings of the F-tabu and Rd-tabu schemes are explained in the text whereas the settings of Rb-tabu are obtained after several trials. Rb-tabu scheme found better results when the tt values are randomly varied for the Rbtabu scheme in the range [1 24] after every M iterations, where M was randomly chosen from the range [12 48]. The RTS-O procedure uses the original 39 settings with an escape mechanism based on random repositioning of two customers by swapping their positions within their respective routes in Step 5 (i). The number of repositioning is random proportional to the moving average, MOVAVG, of the gaps between recently encountered repetitions. The computational results from these schemes are reported in Table 3, from which the followings would be observed. First, the introduction of the 2-consecutive mechanism produces improved solutions over the 1-interchange mechanism while using a higher CPU time regardless the embedded TS schemes. Second, our reverse

10 NA Wassan and IH Osman Mix fleet routing problem 777 deterministic Rd-tabu, which uses a dynamic control procedure for setting the tt values, outperformed the random and fixed schemes. Last, the RTS-O scheme are the worst among the classical scheme in terms of ARPD and SD values. This performance may be due to the random moves used for the escape diversification mechanism, despite the good embedded procedure which invokes the diversification mechanism. The unexpected results invited us to investigate the effect of different settings for the RTS-O scheme. Different trials are conducted to find the best values for the CHAOS, INCREASE, DECREASE, MOVAVG and Escp itr parameters that control the tt values and the number of iterations to be performed at each call for diversification. A modification is introduced in which every repetition is counted instead of often-repeated solutions. Better results are found when all kinds of repetitions are counted with the following settings: CHAOS ¼ 3; INCREASE ¼ 1:1; DECREASE ¼ 0:8; MOVAVG ¼ 0:1 GapRept þ 0:7 MOVAVG and Escp itr ¼ 2 n. Another modification is introduced in which the random repositioning of customers is replaced by a deterministic approach which generates more complex moves for the diversification procedure with an escape from the current solution instead from the best found solution. To investigate this new diversification strategy, the set of 2-consecutive-node operators is split into three sub-groups of operators: the 1-interchange, i.e. G1 ¼ð1; 0Þ; ð0; 1Þ and ð1; 1Þ; G2 ¼ð0; 2Þ; ð2; 0Þ and ð2; 2Þ and G3 ¼ð1; 2Þ and ð2; 1Þ. Two reactive TS implementations (RTS-M and RTS-F) are then derived. Both use the above settings for the TS parameters but differ in the implemented neighbourhood mechanism for the main algorithm and for the diversification procedure. RTS-M uses G1 in the main algorithm with G2 for diversification (strategy I) while RTS-F uses G1 and G2 in the main with G3 for diversification (strategy II). The results from these two modifications are reported in the last four columns of Table 3. It can be seen that the new diversification mechanism produces an improvement over the classical RTS-O scheme. Moreover, new best known solutions are found during the search process. In a single experiment on the set of 20 instances, out of a total of 261 improved solutions, 50 used the escape mechanism process, which is about 19% of total improvement. Hence it is not sufficient to have a good dynamic control of the tabu tenure without a proper diversification to obtain good results. This can also be demonstrated by comparing the results of Rd-tabu and Rb-tabu that use the 2-consecutive-node mechanism in their main algorithms without diversification versus RTS-M and RTS-F that use some subsets of the 2-consecutive-node operators in the main and some operators for diversification. The last point in our investigation is the effect of hashing techniques on the CPU time for the RTS schemes. There is a less significant advantage in using HFS over ULS techniques. The reason the CPU time for ULS is so close to HFS time is due to the early detection of the repetition of moves before searching the whole array since we are only counting all repetition rather the often-repeated moves. Generally, the usage of HFS is advisable although collisions have been noticed during the search. The introduction of extra columns to store=retrieve overflows would not take extra CPU times because of a small number of collisions. Comparison of the computational results We report in Table 4 results corresponding to the first set of 20 instances with fixed s and no variable s. The results are from left to right as follows. The results 13 in column 2 are the best reported from a single tabu search with 1-interchange mechanism with a corresponding total CPU time in seconds to stop in column 3 on a Vax 4500 machine (5.5 Mflop=s). The results 6 in column 4 are the best solutions from five different runs. Each run generates a large number of routes using a tabu search approach, and then it selects the final set of routes by solving a set-partitioning problem. The corresponding average total CPU times in seconds per run are reported in column 6 on a Sun Sparc 10 workstation with 50 MHz (10 Mflops). The results in column 7 are the best solutions from ten different runs. The corresponding average CPU times in seconds to best per instance are reported in column 8 on a Sun Spark 10 (50 Mhz). The results 11 in column 9 are the best of different runs without reporting CPU time on Pentuim 233 Mhz personal computer. The last three column are our best solutions from 5 different runs. These runs are obtained from the RTS-F algorithm by setting the total number of diversification iterations Escp itr to take one value from the set 1 n;...; 5 n for each run. The corresponding average of distances are , , , , and , respectively. It can be seen that the best setting value for Escp itr is 2 n, with which most of the best solution values are obtained and a few best solutions are found with higher diversification iterations. For an unknown reason, there were no results reported for the set of instances of size 12 and 30 by Taillard 6 and Gendreau et al. 17 The bold values are either the best known or new best values obtained by the compared algorithms. The full sequences of new solutions are provided in the Appendix. The results presented in Table 4, indicate that our algorithm always generates better results than the others that are tested on the whole 20 instances. It is also very competitive with those algorithms 6,17 with incomplete results. In general, our reactive algorithm obtains 15 better or equal solution values, including 6 new best-known solution values. In cases, where the best-known solutions are not obtained, good solutions are generated with smaller numbers of routes, eg the solutions for problems 17 and 18 use 7 and 16 routes as compared to the published numbers of 8 and 17, respectively. In addition to the solutions, the

11 778 Journal of the Operational Research Society Vol. 53, No. 7 CPU time to best (TimeB) and the total CPU time (TimeT) are also reported in the tables. It is becoming very difficult to compare algorithms as it is not only the speed of the CPU that indicates the performance cache, main memory, size of instances and compiler also play a role. The reported Mflop=s are provided to help in giving a rough idea of the computational requirement of each algorithm. It seems that the Osman and Salhi algorithm is the fastest while the others use more CPU time on comparable machines. The extra CPU time may be justifiable by the high quality of the obtained solutions. Under the same settings of RTS parameters used for the first data set, we tested our RTS algorithm on a second data set of 8 instances with variable s. Since our RTS algorithm is quite robust, only two runs are executed on this set. The solution values are provided in Table 5. We compare our best solution values with Taillard 6 and Gendreau et al 17 that use several runs similar to the first data set. The computational results in Table 5 shows that our RTS algorithm produces better results than Taillard, 6 but it is comparable to that of Gendreau et al. 17 It should be mentioned that, for problem 20, we have obtained two best-known solutions. The first solution is with a value of using 13 s whereas the second one is of value using 12 s. The above observation demonstrates the flexibility of our RTS algorithm and the choice it can give to a fleet manager to decide between using a fixed fleet size or optimising it. Finally it is surprising to notice a complimentary scenario in which each algorithm succeeds in finding best-known solutions for instances where the other fails. There is no obvious explanation for the above scenario other than the combinatorial nature of the problems and a further investigation is needed. Conclusion We have described several variants of TS meta-heuristic for the mix fleet routing problem. The effects of the data memory structures, the neighbourhood mechanisms, the tabu search schemes on the quality of solution and computational requirements are investigated. In fact, the investigation in this paper has provided a grounding in the essential ideas of tabu search that facilitates the creation of other successful applications. First, the new way of using reactive tabu is shown to be better than its classical approach. The classical approach uses a number of random moves for diversification from the same neighbourhood of intensification. We have used different and deterministic moves for diversification like variable neighbourhood search. In fact, the repetition of solutions concept of reactive tabu search is used to provide a strategic switch between the 1-interchange operators for intensification and the more complex 2-consecutive-interchange operators for diversification. Second, it was a common belief that, if one uses a large neighbourhood, one would obtain good solutions at a high CPU time. We show that it is not the large neighbourhood that gives good results, but it is how you are strategically splitting the neighbourhood and how efficiently you are searching it. Third, the combination of data structures, hashing functions and the strategic balance between diversification and intensification generate an efficient and robust implementation with a speed-up factor of more than 8. Such a speed-up is very essential if we need our algorithm to be used in commercial packages. Finally, the flexibility of our implementation suggests that they can be easily adopted for several other location, routing and scheduling problems. The competency can clearly be seen from the computational experience where the developed algorithm proved to be efficient not only in terms of CPU time saving but also it performed equally well and provided new best-known solutions for instances proposed in the literature. These contributions are a step in the right direction and stimulate further research. 32 Appendix Solutions with fixed (Golden et al 4 instances) Here solutions for problems 17 and 18 with smaller number of routes are also provided with best-known solutions. Problem Problem 2 Solution : Solution : 722

12 NA Wassan and IH Osman Mix fleet routing problem 779 Problem Problem 8 Solution : 7273 Load customers Route Problem 9 Solution : Problem 10 Solution : Solution : 2355 Problem Problem 12 Solution : Problem Solution : Problem 17 Solution : Solution :

13 780 Journal of the Operational Research Society Vol. 53, No. 7 Problem Problem 19 Solution : Solution : Solutions with variable (Taillard 6 instances) Here solutions for problems 14 and 18 with smaller number of routes are also provided with best-known solutions. Problem 14 Variable Problem 16 Solution : Variable Problem 18 Solution : Variable Solution :

14 NA Wassan and IH Osman Mix fleet routing problem 781 Acknowledgements The authors would like to thank the editor and the three referees for their valuable comments that improved the quality of the paper. References Problem 19 Variable Problem 20 Solution : Variable Solution : Semet F and Taillard ED (1993). Solving real-life routing problems efficiently using tabu search. Annal Opns Res 41: Rochat Y and Semet F (1994). A tabu search approach for delivering pet food and flour in Switzerland. J Opl Res Soc 45: Mechti R, Poujade S, Roucairol C and Lemarie B (1999). Global and local moves in tabu search: a real-life mail collecting application. In: Voss S, Martello S, Osman IH and Roucairol C (eds). Meta-heuristics: Advances and Trends in Local Search Paradigms for Optimisation. Kluwer: Boston, pp Golden B, Assad A and Levy L (1984). The fleet size and mix routing problem. Comput Opns Res 1: Salhi S, Sari M, Sadi D and Touati N (1992). Adaptation of some fleet mix heuristics. OMEGA 20: Taillard ED (1999). A heuristics column generation method for the heterogeneous fleet routing problem. RAIRO 33: Gheysens F, Golden B and Assad A (1986). A new heuristic for determining fleet size and composition. Math Program Study 26: Ronen D (1992). Allocation of trips to trucks operating from single terminal. Comput Opns Res 19: Osman IH and Laporte G (1996). Metaheuristics: a bibliography. Annal Opl Res 63: Desrochers M and Verhoog TW (1991). A new heuristic for the fleet size and mix routing problem. Comput Opns Res 18: Liu FH and Shen SY (1999). The fleet size and mix routing problem with time windows. J Opl Res Soc 50: Clarke G and Wright GW (1964). Scheduling of s from a central depot to a number of delivery points. Opns Res 12: Osman IH and Salhi S (1996). Local search strategies for the mix fleet routing problem. In: Rayward-Smith VJ, Osman IH, Reeves CR and Smith GD (eds). Modern Heuristic Search Methods. Wiley: Chichester, pp Salhi S and Rand GK (1993). Incorporating routing into the fleet composition problem. Eur J Opl Res 66: Ochi LS, Vianna DS, Drummond LMA and Victor AO (1998). A parallel evolutionary algorithm for the routing problem with heterogeneous fleet. Future Generation Comput Syst 14: Han AF and Cho Y-J (1999). Generic intensification and diversification search on the fleet size and mix routing problem. In: Rebeiro CC and Hansen P (eds). MIC 99-Third Metaheuristics International Conference. Kluwer: Boston, pp Gendreau M, Laporte G, Musaraganyi C and Taillard ED (1999). A tabu search heuristic for the heterogeneous fleet routing problem. Comput Opns Res 26: Laporte G and Osman IH (1995). Routing problems: a bibliography. Annal Opns Res 61: Laporte G, Gendreau M, Potvin J-Y and Semet F (2000). Classical and modern heuristics for the routing problem. Int Trans Opl Res 7: Sherali HD and Maguire LW (2000). Determining rail fleet sizes for shipping automobiles. Interfaces 30: Osman IH (1995). An introduction to meta-heuristics. In: Lawrence M and Wilsdon C (eds). Operational Research Society Tutorial. Operational Research Society: Birmingham, pp Osman IH and Kelly JP (1996). Metaheuristics: Theory and Applications. Kluwer: Boston. 23 Glover G and Laguna M (1997). Tabu Search. Kluwer: Boston. 24 Voss S, Martello S, Osman IH and Roucairol C (1999). Metaheuristics: Advances and Trends in Local Search Paradigms for Optimisation. Kluwer: Boston.

15 782 Journal of the Operational Research Society Vol. 53, No Salhi S and Rand GK (1987). Improvements to routing heuristics. J Opl Res Soc 38: Osman IH (1993). Metastrategy simulated annealing and tabu search algorithms for the routing problem. Annal Opns Res 41: Chiang WC and Russell RA (1997). A reactive tabu search meta-heuristic for the routing problem with time windows. INFORMS J Comput 9: Thangiah SR, Potvin JYand Sun T (1996). Heuristic approaches to routing with back-hauls and time windows. Comput Opns Res 23: Thangiah SR, Osman IH, Vinayagamoorth R and Sun T (1993). Genetic algorithms for the routing problems with time deadlines. Am J Math Mngt Sci 13: Osman IH and Christofides N (1994). Capacitated clustering problems by hybrid simulated annealing and tabu search. Int Trans Opl Res 1: Osman IH (1995). Heuristics for the generalised assignment problem: simulated annealing and tabu search approaches. OR Spektrum 17: Osman IH and Wassan NA. A reactive tabu search metaheuristic for the routing problem with back-hauls. J Scheduling, to appear. 33 Or I (1976). Travelling salesman-type combinatorial problems and their relation to the logistics of regional blood banking. Doctoral dissertation, Northwestern University. 34 Potvin JY and Rousseau JM (1995). An exchange heuristic for routing problems with time windows. J Opl Res Soc 46: Taillard ED, Badeau F, Gendreau M, Guertin F and Potvin J (1997). A tabu search heuristic for the routing problem with soft time windows. Transport Sci 31: Fahrion R and Wrede M (1990). On a principle of chainexchange for -routing problems (1-VRP). J Opl Res Soc 41: Taillard ED (1993). Parallel iterative search methods for routing problems. Networks, 23: Laguna M and Glover F (1993). Bandwidth packing: a tabu search approach. Mngt Sci 39: Battiti R and Tecchiolli G (1994). The reactive tabu search. ORSA J Comput 6: Juliff P (1990). Program Design, 3rd edn. Prentice-Hall: Sydney. 41 Mladenovic N and Hansen P (1997). Variable neighbourhood search. Comput Opns Res 24: Dongarra JJ (2001). Performance of various computers using standard linear equations software. Computer Science Department, University of Tennessee, CS http== org=benchmark=performance.ps Received February 2000; accepted December 2001 after one revision

Solving the Vehicle Routing Problem with Multiple Trips by Adaptive Memory Programming

Solving the Vehicle Routing Problem with Multiple Trips by Adaptive Memory Programming Solving the Vehicle Routing Problem with Multiple Trips by Adaptive Memory Programming Alfredo Olivera and Omar Viera Universidad de la República Montevideo, Uruguay ICIL 05, Montevideo, Uruguay, February

More information

Cost Models for Vehicle Routing Problems. 8850 Stanford Boulevard, Suite 260 R. H. Smith School of Business

Cost Models for Vehicle Routing Problems. 8850 Stanford Boulevard, Suite 260 R. H. Smith School of Business 0-7695-1435-9/02 $17.00 (c) 2002 IEEE 1 Cost Models for Vehicle Routing Problems John Sniezek Lawerence Bodin RouteSmart Technologies Decision and Information Technologies 8850 Stanford Boulevard, Suite

More information

A Scatter Search Algorithm for the Split Delivery Vehicle Routing Problem

A Scatter Search Algorithm for the Split Delivery Vehicle Routing Problem A Scatter Search Algorithm for the Split Delivery Vehicle Routing Problem Campos,V., Corberán, A., Mota, E. Dep. Estadística i Investigació Operativa. Universitat de València. Spain Corresponding author:

More information

Transportation Research Part E

Transportation Research Part E Transportation Research Part E 45 (2009) 434 445 Contents lists available at ScienceDirect Transportation Research Part E journal homepage: www.elsevier.com/locate/tre An effective genetic algorithm for

More information

A tabu search procedure based on a random Roulette diversification for the weighted maximal planar graph problem

A tabu search procedure based on a random Roulette diversification for the weighted maximal planar graph problem Computers & Operations Research 33 (2006) 2526 2546 www.elsevier.com/locate/cor A tabu search procedure based on a random Roulette diversification for the weighted maximal planar graph problem Ibrahim

More information

Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows

Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows TECHNISCHE UNIVERSITEIT EINDHOVEN Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows Lloyd A. Fasting May 2014 Supervisors: dr. M. Firat dr.ir. M.A.A. Boon J. van Twist MSc. Contents

More information

An Iterated Local Search heuristic for the Heterogeneous Fleet Vehicle Routing Problem

An Iterated Local Search heuristic for the Heterogeneous Fleet Vehicle Routing Problem J Heuristics manuscript No. (will be inserted by the editor) An Iterated Local Search heuristic for the Heterogeneous Fleet Vehicle Routing Problem Puca Huachi Vaz Penna Anand Subramanian Luiz Satoru Ochi

More information

Adaptive Memory Programming for the Vehicle Routing Problem with Multiple Trips

Adaptive Memory Programming for the Vehicle Routing Problem with Multiple Trips Adaptive Memory Programming for the Vehicle Routing Problem with Multiple Trips Alfredo Olivera, Omar Viera Instituto de Computación, Facultad de Ingeniería, Universidad de la República, Herrera y Reissig

More information

Un algorithme génétique hybride à gestion adaptative de diversité pour le problème de tournées de véhicules et ses variantes

Un algorithme génétique hybride à gestion adaptative de diversité pour le problème de tournées de véhicules et ses variantes Un algorithme génétique hybride à gestion adaptative de diversité pour le problème de tournées de véhicules et ses variantes Thibaut VIDAL LOSI et CIRRELT Université de Technologie de Troyes et Université

More information

Research Paper Business Analytics. Applications for the Vehicle Routing Problem. Jelmer Blok

Research Paper Business Analytics. Applications for the Vehicle Routing Problem. Jelmer Blok Research Paper Business Analytics Applications for the Vehicle Routing Problem Jelmer Blok Applications for the Vehicle Routing Problem Jelmer Blok Research Paper Vrije Universiteit Amsterdam Faculteit

More information

Solving the Vehicle Routing Problem with Genetic Algorithms

Solving the Vehicle Routing Problem with Genetic Algorithms Solving the Vehicle Routing Problem with Genetic Algorithms Áslaug Sóley Bjarnadóttir April 2004 Informatics and Mathematical Modelling, IMM Technical University of Denmark, DTU Printed by IMM, DTU 3 Preface

More information

Two objective functions for a real life Split Delivery Vehicle Routing Problem

Two objective functions for a real life Split Delivery Vehicle Routing Problem International Conference on Industrial Engineering and Systems Management IESM 2011 May 25 - May 27 METZ - FRANCE Two objective functions for a real life Split Delivery Vehicle Routing Problem Marc Uldry

More information

Clustering and scheduling maintenance tasks over time

Clustering and scheduling maintenance tasks over time Clustering and scheduling maintenance tasks over time Per Kreuger 2008-04-29 SICS Technical Report T2008:09 Abstract We report results on a maintenance scheduling problem. The problem consists of allocating

More information

PLAANN as a Classification Tool for Customer Intelligence in Banking

PLAANN as a Classification Tool for Customer Intelligence in Banking PLAANN as a Classification Tool for Customer Intelligence in Banking EUNITE World Competition in domain of Intelligent Technologies The Research Report Ireneusz Czarnowski and Piotr Jedrzejowicz Department

More information

The Problem of Scheduling Technicians and Interventions in a Telecommunications Company

The Problem of Scheduling Technicians and Interventions in a Telecommunications Company The Problem of Scheduling Technicians and Interventions in a Telecommunications Company Sérgio Garcia Panzo Dongala November 2008 Abstract In 2007 the challenge organized by the French Society of Operational

More information

Waste Collection Vehicle Routing Problem Considering Similarity Pattern of Trashcan

Waste Collection Vehicle Routing Problem Considering Similarity Pattern of Trashcan International Journal of Applied Operational Research Vol. 3, o. 3, pp. 105-111, Summer 2013 Journal homepage: www.ijorlu.ir Waste Collection Vehicle Routing Problem Considering Similarity Pattern of Trashcan

More information

Fifty Years of Vehicle Routing

Fifty Years of Vehicle Routing Fifty Years of Vehicle Routing by Gilbert Laporte Canada Research Chair in Distribution Management HEC Montréal Vehicle Routing Problem Depot m (or at most m) identical vehicles based at the depot n customers

More information

New Exact Solution Approaches for the Split Delivery Vehicle Routing Problem

New Exact Solution Approaches for the Split Delivery Vehicle Routing Problem New Exact Solution Approaches for the Split Delivery Vehicle Routing Problem Gizem Ozbaygin, Oya Karasan and Hande Yaman Department of Industrial Engineering, Bilkent University, Ankara, Turkey ozbaygin,

More information

Local Search Algorithms for Vehicle Routing Problems of a Chain of Convenience Stores

Local Search Algorithms for Vehicle Routing Problems of a Chain of Convenience Stores Journal of Industrial and Intelligent Information Vol. 3, No. 3, September 2015 Local Search Algorithms for Vehicle Routing Problems of a Chain of Convenience Stores Yuwadee Prakaiphetkul and Pisut Pongchairerks

More information

A hybrid ACO algorithm for the Capacitated Minimum Spanning Tree Problem

A hybrid ACO algorithm for the Capacitated Minimum Spanning Tree Problem A hybrid ACO algorithm for the Capacitated Minimum Spanning Tree Problem Marc Reimann Marco Laumanns Institute for Operations Research, Swiss Federal Institute of Technology Zurich, Clausiusstrasse 47,

More information

The Trip Scheduling Problem

The Trip Scheduling Problem The Trip Scheduling Problem Claudia Archetti Department of Quantitative Methods, University of Brescia Contrada Santa Chiara 50, 25122 Brescia, Italy Martin Savelsbergh School of Industrial and Systems

More information

The Second International Timetabling Competition (ITC-2007): Curriculum-based Course Timetabling (Track 3)

The Second International Timetabling Competition (ITC-2007): Curriculum-based Course Timetabling (Track 3) The Second International Timetabling Competition (ITC-2007): Curriculum-based Course Timetabling (Track 3) preliminary presentation Luca Di Gaspero and Andrea Schaerf DIEGM, University of Udine via delle

More information

An ant colony optimization for single-machine weighted tardiness scheduling with sequence-dependent setups

An ant colony optimization for single-machine weighted tardiness scheduling with sequence-dependent setups Proceedings of the 6th WSEAS International Conference on Simulation, Modelling and Optimization, Lisbon, Portugal, September 22-24, 2006 19 An ant colony optimization for single-machine weighted tardiness

More information

VEHICLE ROUTING AND SCHEDULING PROBLEMS: A CASE STUDY OF FOOD DISTRIBUTION IN GREATER BANGKOK. Kuladej Panapinun and Peerayuth Charnsethikul.

VEHICLE ROUTING AND SCHEDULING PROBLEMS: A CASE STUDY OF FOOD DISTRIBUTION IN GREATER BANGKOK. Kuladej Panapinun and Peerayuth Charnsethikul. 1 VEHICLE ROUTING AND SCHEDULING PROBLEMS: A CASE STUDY OF FOOD DISTRIBUTION IN GREATER BANGKOK By Kuladej Panapinun and Peerayuth Charnsethikul Abstract Vehicle routing problem (VRP) and its extension

More information

High-performance local search for planning maintenance of EDF nuclear park

High-performance local search for planning maintenance of EDF nuclear park High-performance local search for planning maintenance of EDF nuclear park Frédéric Gardi Karim Nouioua Bouygues e-lab, Paris fgardi@bouygues.com Laboratoire d'informatique Fondamentale - CNRS UMR 6166,

More information

A Constraint Programming based Column Generation Approach to Nurse Rostering Problems

A Constraint Programming based Column Generation Approach to Nurse Rostering Problems Abstract A Constraint Programming based Column Generation Approach to Nurse Rostering Problems Fang He and Rong Qu The Automated Scheduling, Optimisation and Planning (ASAP) Group School of Computer Science,

More information

Adaptive Memory Search for Boolean Optimization Problems

Adaptive Memory Search for Boolean Optimization Problems Adaptive Memory Search for Boolean Optimization Problems Lars M. Hvattum Molde College, 6411 Molde, Norway. Lars.M.Hvattum@himolde.no Arne Løkketangen Molde College, 6411 Molde, Norway. Arne.Lokketangen@himolde.no

More information

Variable neighbourhood search in commercial VRP packages: evolving towards self-adaptive methods

Variable neighbourhood search in commercial VRP packages: evolving towards self-adaptive methods Variable neighbourhood search in commercial VRP packages: evolving towards self-adaptive methods Kenneth Sörensen 1, Marc Sevaux 2, and Patrick Schittekat 1,3 1 University of Antwerp 2 University of South

More information

The Student-Project Allocation Problem

The Student-Project Allocation Problem The Student-Project Allocation Problem David J. Abraham, Robert W. Irving, and David F. Manlove Department of Computing Science, University of Glasgow, Glasgow G12 8QQ, UK Email: {dabraham,rwi,davidm}@dcs.gla.ac.uk.

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms

More information

A Reactive Tabu Search for Service Restoration in Electric Power Distribution Systems

A Reactive Tabu Search for Service Restoration in Electric Power Distribution Systems IEEE International Conference on Evolutionary Computation May 4-11 1998, Anchorage, Alaska A Reactive Tabu Search for Service Restoration in Electric Power Distribution Systems Sakae Toune, Hiroyuki Fudo,

More information

HYBRID GENETIC ALGORITHMS FOR SCHEDULING ADVERTISEMENTS ON A WEB PAGE

HYBRID GENETIC ALGORITHMS FOR SCHEDULING ADVERTISEMENTS ON A WEB PAGE HYBRID GENETIC ALGORITHMS FOR SCHEDULING ADVERTISEMENTS ON A WEB PAGE Subodha Kumar University of Washington subodha@u.washington.edu Varghese S. Jacob University of Texas at Dallas vjacob@utdallas.edu

More information

Performance Tuning for the Teradata Database

Performance Tuning for the Teradata Database Performance Tuning for the Teradata Database Matthew W Froemsdorf Teradata Partner Engineering and Technical Consulting - i - Document Changes Rev. Date Section Comment 1.0 2010-10-26 All Initial document

More information

Solution of Linear Systems

Solution of Linear Systems Chapter 3 Solution of Linear Systems In this chapter we study algorithms for possibly the most commonly occurring problem in scientific computing, the solution of linear systems of equations. We start

More information

VEHICLE ROUTING PROBLEM

VEHICLE ROUTING PROBLEM VEHICLE ROUTING PROBLEM Readings: E&M 0 Topics: versus TSP Solution methods Decision support systems for Relationship between TSP and Vehicle routing problem () is similar to the Traveling salesman problem

More information

Online vehicle routing and scheduling with continuous vehicle tracking

Online vehicle routing and scheduling with continuous vehicle tracking Online vehicle routing and scheduling with continuous vehicle tracking Jean Respen, Nicolas Zufferey, Jean-Yves Potvin To cite this version: Jean Respen, Nicolas Zufferey, Jean-Yves Potvin. Online vehicle

More information

Scheduling Shop Scheduling. Tim Nieberg

Scheduling Shop Scheduling. Tim Nieberg Scheduling Shop Scheduling Tim Nieberg Shop models: General Introduction Remark: Consider non preemptive problems with regular objectives Notation Shop Problems: m machines, n jobs 1,..., n operations

More information

A hierarchical multicriteria routing model with traffic splitting for MPLS networks

A hierarchical multicriteria routing model with traffic splitting for MPLS networks A hierarchical multicriteria routing model with traffic splitting for MPLS networks João Clímaco, José Craveirinha, Marta Pascoal jclimaco@inesccpt, jcrav@deecucpt, marta@matucpt University of Coimbra

More information

Generating Personnel Schedules in an Industrial Setting Using a Tabu Search Algorithm

Generating Personnel Schedules in an Industrial Setting Using a Tabu Search Algorithm Generating Personnel Schedules in an Industrial Setting Using a Tabu Search Algorithm Pascal Tellier 1 and George White 2 1 PrairieFyre Software Inc., 555 Legget Dr., Kanata K2K 2X3, Canada pascal@prairiefyre.com

More information

A Comparison of General Approaches to Multiprocessor Scheduling

A Comparison of General Approaches to Multiprocessor Scheduling A Comparison of General Approaches to Multiprocessor Scheduling Jing-Chiou Liou AT&T Laboratories Middletown, NJ 0778, USA jing@jolt.mt.att.com Michael A. Palis Department of Computer Science Rutgers University

More information

A Simultaneous Solution for General Linear Equations on a Ring or Hierarchical Cluster

A Simultaneous Solution for General Linear Equations on a Ring or Hierarchical Cluster Acta Technica Jaurinensis Vol. 3. No. 1. 010 A Simultaneous Solution for General Linear Equations on a Ring or Hierarchical Cluster G. Molnárka, N. Varjasi Széchenyi István University Győr, Hungary, H-906

More information

A Library of Local Search Heuristics for the Vehicle Routing Problem

A Library of Local Search Heuristics for the Vehicle Routing Problem A Library of Local Search Heuristics for the Vehicle Routing Problem Chris Groër 1 Oak Ridge National Laboratory, 1 Bethel Valley Rd, Oak Ridge, TN 37831 cgroer@gmail.com Bruce Golden R.H. Smith School

More information

Integer Factorization using the Quadratic Sieve

Integer Factorization using the Quadratic Sieve Integer Factorization using the Quadratic Sieve Chad Seibert* Division of Science and Mathematics University of Minnesota, Morris Morris, MN 56567 seib0060@morris.umn.edu March 16, 2011 Abstract We give

More information

Lancaster University Management School Working Paper 2009/021. Vehicle Routing and Scheduling with Time Varying Data: A Case Study

Lancaster University Management School Working Paper 2009/021. Vehicle Routing and Scheduling with Time Varying Data: A Case Study Lancaster University Management School Woring Paper 2009/021 Vehicle Routing and Scheduling with Time Varying Data: A Case Study Will Maden, Richard William Eglese and Daniel Blac The Department of Management

More information

Optimising Patient Transportation in Hospitals

Optimising Patient Transportation in Hospitals Optimising Patient Transportation in Hospitals Thomas Hanne 1 Fraunhofer Institute for Industrial Mathematics (ITWM), Fraunhofer-Platz 1, 67663 Kaiserslautern, Germany, hanne@itwm.fhg.de 1 Introduction

More information

Evolutionary Detection of Rules for Text Categorization. Application to Spam Filtering

Evolutionary Detection of Rules for Text Categorization. Application to Spam Filtering Advances in Intelligent Systems and Technologies Proceedings ECIT2004 - Third European Conference on Intelligent Systems and Technologies Iasi, Romania, July 21-23, 2004 Evolutionary Detection of Rules

More information

The Gravity Model: Derivation and Calibration

The Gravity Model: Derivation and Calibration The Gravity Model: Derivation and Calibration Philip A. Viton October 28, 2014 Philip A. Viton CRP/CE 5700 () Gravity Model October 28, 2014 1 / 66 Introduction We turn now to the Gravity Model of trip

More information

Scheduling Breaks in Shift Plans for Call Centers

Scheduling Breaks in Shift Plans for Call Centers Scheduling Breaks in Shift Plans for Call Centers Andreas Beer Johannes Gärtner Nysret Musliu Werner Schafhauser Wolfgang Slany Abstract In this paper we consider a real-life break scheduling problem for

More information

How To Encrypt Data With A Power Of N On A K Disk

How To Encrypt Data With A Power Of N On A K Disk Towards High Security and Fault Tolerant Dispersed Storage System with Optimized Information Dispersal Algorithm I Hrishikesh Lahkar, II Manjunath C R I,II Jain University, School of Engineering and Technology,

More information

Tabu Search Heuristics for the Vehicle Routing Problem

Tabu Search Heuristics for the Vehicle Routing Problem Tabu Search Heuristics for the Vehicle Routing Problem Jean-François Cordeau and Gilbert Laporte Canada Research Chair in Distribution Management and GERAD École des Hautes Études Commerciales 3000 chemin

More information

Analysis of an Artificial Hormone System (Extended abstract)

Analysis of an Artificial Hormone System (Extended abstract) c 2013. This is the author s version of the work. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purpose or for creating

More information

An Efficient Algorithm for Solving a Stochastic Location-Routing Problem

An Efficient Algorithm for Solving a Stochastic Location-Routing Problem Journal of mathematics and computer Science 12 (214) 27 38 An Efficient Algorithm for Solving a Stochastic LocationRouting Problem H.A. HassanPour a, M. MosadeghKhah a, M. Zareei 1 a Department of Industrial

More information

Parallel CLM starting solutions comparison *

Parallel CLM starting solutions comparison * 4 th International Conference on Industrial Engineering and Industrial Management XIV Congreso de Ingeniería de Organización Donostia- San Sebastián, September 8 th -10 th 2010 Parallel CLM starting solutions

More information

Vehicle routing in a Spanish distribution company: Saving using a savings-based heuristic

Vehicle routing in a Spanish distribution company: Saving using a savings-based heuristic Original Article Vehicle routing in a Spanish distribution company: Saving using a savings-based heuristic Alex Grasas a, *, Jose Caceres-Cruz b, Helena R. Lourenc o a, Angel A. Juan b and Mercè Roca c

More information

IE 680 Special Topics in Production Systems: Networks, Routing and Logistics*

IE 680 Special Topics in Production Systems: Networks, Routing and Logistics* IE 680 Special Topics in Production Systems: Networks, Routing and Logistics* Rakesh Nagi Department of Industrial Engineering University at Buffalo (SUNY) *Lecture notes from Network Flows by Ahuja, Magnanti

More information

Index Selection Techniques in Data Warehouse Systems

Index Selection Techniques in Data Warehouse Systems Index Selection Techniques in Data Warehouse Systems Aliaksei Holubeu as a part of a Seminar Databases and Data Warehouses. Implementation and usage. Konstanz, June 3, 2005 2 Contents 1 DATA WAREHOUSES

More information

TABU SEARCH FOR OPTIMIZATION OF MILITARY SUPPLY DISTRIBUTION. A Thesis. presented to. the Faculty of. California Polytechnic State University

TABU SEARCH FOR OPTIMIZATION OF MILITARY SUPPLY DISTRIBUTION. A Thesis. presented to. the Faculty of. California Polytechnic State University TABU SEARCH FOR OPTIMIZATION OF MILITARY SUPPLY DISTRIBUTION A Thesis presented to the Faculty of California Polytechnic State University In Partial Fulfillment of the Requirements for the Degree Master

More information

An Evaluation of Self-adjusting Binary Search Tree Techniques

An Evaluation of Self-adjusting Binary Search Tree Techniques SOFTWARE PRACTICE AND EXPERIENCE, VOL. 23(4), 369 382 (APRIL 1993) An Evaluation of Self-adjusting Binary Search Tree Techniques jim bell and gopal gupta Department of Computer Science, James Cook University,

More information

A tabu search heuristic for the vehicle routing problem with time windows and split deliveries

A tabu search heuristic for the vehicle routing problem with time windows and split deliveries A tabu search heuristic for the vehicle routing problem with time windows and split deliveries Sin C. Ho Dag Haugland Abstract The routing of a fleet of vehicles to service a set of customers is important

More information

CS 2112 Spring 2014. 0 Instructions. Assignment 3 Data Structures and Web Filtering. 0.1 Grading. 0.2 Partners. 0.3 Restrictions

CS 2112 Spring 2014. 0 Instructions. Assignment 3 Data Structures and Web Filtering. 0.1 Grading. 0.2 Partners. 0.3 Restrictions CS 2112 Spring 2014 Assignment 3 Data Structures and Web Filtering Due: March 4, 2014 11:59 PM Implementing spam blacklists and web filters requires matching candidate domain names and URLs very rapidly

More information

STUDY OF PROJECT SCHEDULING AND RESOURCE ALLOCATION USING ANT COLONY OPTIMIZATION 1

STUDY OF PROJECT SCHEDULING AND RESOURCE ALLOCATION USING ANT COLONY OPTIMIZATION 1 STUDY OF PROJECT SCHEDULING AND RESOURCE ALLOCATION USING ANT COLONY OPTIMIZATION 1 Prajakta Joglekar, 2 Pallavi Jaiswal, 3 Vandana Jagtap Maharashtra Institute of Technology, Pune Email: 1 somanprajakta@gmail.com,

More information

Contributions to Gang Scheduling

Contributions to Gang Scheduling CHAPTER 7 Contributions to Gang Scheduling In this Chapter, we present two techniques to improve Gang Scheduling policies by adopting the ideas of this Thesis. The first one, Performance- Driven Gang Scheduling,

More information

A COOL AND PRACTICAL ALTERNATIVE TO TRADITIONAL HASH TABLES

A COOL AND PRACTICAL ALTERNATIVE TO TRADITIONAL HASH TABLES A COOL AND PRACTICAL ALTERNATIVE TO TRADITIONAL HASH TABLES ULFAR ERLINGSSON, MARK MANASSE, FRANK MCSHERRY MICROSOFT RESEARCH SILICON VALLEY MOUNTAIN VIEW, CALIFORNIA, USA ABSTRACT Recent advances in the

More information

Glossary of Object Oriented Terms

Glossary of Object Oriented Terms Appendix E Glossary of Object Oriented Terms abstract class: A class primarily intended to define an instance, but can not be instantiated without additional methods. abstract data type: An abstraction

More information

Group Testing a tool of protecting Network Security

Group Testing a tool of protecting Network Security Group Testing a tool of protecting Network Security Hung-Lin Fu 傅 恆 霖 Department of Applied Mathematics, National Chiao Tung University, Hsin Chu, Taiwan Group testing (General Model) Consider a set N

More information

Hybrid Heterogeneous Electric Fleet Routing Problem with City Center Restrictions

Hybrid Heterogeneous Electric Fleet Routing Problem with City Center Restrictions Hybrid Heterogeneous Electric Fleet Routing Problem with City Center Restrictions Gerhard Hiermann 1, Richard Hartl 2, Jakob Puchinger 1, Thibaut Vidal 3 1 AIT Austrian Institute of Technology 2 University

More information

Iterated Local Search for the Generator Maintenance Scheduling Problem

Iterated Local Search for the Generator Maintenance Scheduling Problem MISTA 25 Iterated Local Search for the Generator Maintenance Scheduling Problem Ahmad Almakhlafi Joshua Knowles Abstract We consider the task of devising an effective metaheuristic for a variant of the

More information

APPENDIX 1 USER LEVEL IMPLEMENTATION OF PPATPAN IN LINUX SYSTEM

APPENDIX 1 USER LEVEL IMPLEMENTATION OF PPATPAN IN LINUX SYSTEM 152 APPENDIX 1 USER LEVEL IMPLEMENTATION OF PPATPAN IN LINUX SYSTEM A1.1 INTRODUCTION PPATPAN is implemented in a test bed with five Linux system arranged in a multihop topology. The system is implemented

More information

Home Page. Data Structures. Title Page. Page 1 of 24. Go Back. Full Screen. Close. Quit

Home Page. Data Structures. Title Page. Page 1 of 24. Go Back. Full Screen. Close. Quit Data Structures Page 1 of 24 A.1. Arrays (Vectors) n-element vector start address + ielementsize 0 +1 +2 +3 +4... +n-1 start address continuous memory block static, if size is known at compile time dynamic,

More information

Search Heuristics for Load Balancing in IP-networks

Search Heuristics for Load Balancing in IP-networks Search Heuristics for Load Balancing in IP-networks Mattias Söderqvist Swedish Institute of Computer Science mso@sics.se 3rd March 25 SICS Technical Report T25:4 ISSN 11-3154 ISRN:SICS-T--25/4-SE Abstract

More information

CSE 4351/5351 Notes 7: Task Scheduling & Load Balancing

CSE 4351/5351 Notes 7: Task Scheduling & Load Balancing CSE / Notes : Task Scheduling & Load Balancing Task Scheduling A task is a (sequential) activity that uses a set of inputs to produce a set of outputs. A task (precedence) graph is an acyclic, directed

More information

Memory Allocation Technique for Segregated Free List Based on Genetic Algorithm

Memory Allocation Technique for Segregated Free List Based on Genetic Algorithm Journal of Al-Nahrain University Vol.15 (2), June, 2012, pp.161-168 Science Memory Allocation Technique for Segregated Free List Based on Genetic Algorithm Manal F. Younis Computer Department, College

More information

Evaluation of Complexity of Some Programming Languages on the Travelling Salesman Problem

Evaluation of Complexity of Some Programming Languages on the Travelling Salesman Problem International Journal of Applied Science and Technology Vol. 3 No. 8; December 2013 Evaluation of Complexity of Some Programming Languages on the Travelling Salesman Problem D. R. Aremu O. A. Gbadamosi

More information

A framework for simulation-based optimization of business process models

A framework for simulation-based optimization of business process models Simulation A framework for simulation-based optimization of business process models Farzad Kamrani 1, Rassul Ayani 1 and Farshad Moradi 2 Simulation: Transactions of the Society for Modeling and Simulation

More information

Fast Sequential Summation Algorithms Using Augmented Data Structures

Fast Sequential Summation Algorithms Using Augmented Data Structures Fast Sequential Summation Algorithms Using Augmented Data Structures Vadim Stadnik vadim.stadnik@gmail.com Abstract This paper provides an introduction to the design of augmented data structures that offer

More information

D-optimal plans in observational studies

D-optimal plans in observational studies D-optimal plans in observational studies Constanze Pumplün Stefan Rüping Katharina Morik Claus Weihs October 11, 2005 Abstract This paper investigates the use of Design of Experiments in observational

More information

A CENTROID-BASED HEURISTIC ALGORITHM FOR THE CAPACITATED VEHICLE ROUTING PROBLEM

A CENTROID-BASED HEURISTIC ALGORITHM FOR THE CAPACITATED VEHICLE ROUTING PROBLEM Computing and Informatics, Vol. 30, 2011, 721 732 A CENTROID-BASED HEURISTIC ALGORITHM FOR THE CAPACITATED VEHICLE ROUTING PROBLEM Kwangcheol Shin Department of Computer Science Korea Advanced Institute

More information

I. GROUPS: BASIC DEFINITIONS AND EXAMPLES

I. GROUPS: BASIC DEFINITIONS AND EXAMPLES I GROUPS: BASIC DEFINITIONS AND EXAMPLES Definition 1: An operation on a set G is a function : G G G Definition 2: A group is a set G which is equipped with an operation and a special element e G, called

More information

TABU SEARCH. Fred Glover Manuel Laguna

TABU SEARCH. Fred Glover Manuel Laguna TABU SEARCH Fred Glover Manuel Laguna Abstract This article explores the meta-heuristic approach called tabu search, which is dramatically changing our ability to solve a host of problems in applied science,

More information

GRASP and Path Relinking for the Matrix Bandwidth Minimization *

GRASP and Path Relinking for the Matrix Bandwidth Minimization * GRASP and Path Relinking for the Matrix Bandwidth Minimization * Estefanía Piñana, Isaac Plana, Vicente Campos and Rafael Martí Dpto. de Estadística e Investigación Operativa, Facultad de Matemáticas,

More information

Residential waste management in South Africa: Optimisation of vehicle fleet size and composition

Residential waste management in South Africa: Optimisation of vehicle fleet size and composition Residential waste management in South Africa: Optimisation of vehicle fleet size and composition by Wouter H Bothma 26001447 Submitted in partial fulfillment of the requirements for the degree of Bachelors

More information

Chapter 10: Network Flow Programming

Chapter 10: Network Flow Programming Chapter 10: Network Flow Programming Linear programming, that amazingly useful technique, is about to resurface: many network problems are actually just special forms of linear programs! This includes,

More information

Efficiency of algorithms. Algorithms. Efficiency of algorithms. Binary search and linear search. Best, worst and average case.

Efficiency of algorithms. Algorithms. Efficiency of algorithms. Binary search and linear search. Best, worst and average case. Algorithms Efficiency of algorithms Computational resources: time and space Best, worst and average case performance How to compare algorithms: machine-independent measure of efficiency Growth rate Complexity

More information

Vehicle routing problem with time windows and a limited number of vehicles

Vehicle routing problem with time windows and a limited number of vehicles European Journal of Operational Research 148 (2003) 559 569 Discrete Optimization Vehicle routing problem with time windows and a limited number of vehicles Hoong Chuin Lau a, *, Melvyn Sim b, Kwong Meng

More information

FUZZY CLUSTERING ANALYSIS OF DATA MINING: APPLICATION TO AN ACCIDENT MINING SYSTEM

FUZZY CLUSTERING ANALYSIS OF DATA MINING: APPLICATION TO AN ACCIDENT MINING SYSTEM International Journal of Innovative Computing, Information and Control ICIC International c 0 ISSN 34-48 Volume 8, Number 8, August 0 pp. 4 FUZZY CLUSTERING ANALYSIS OF DATA MINING: APPLICATION TO AN ACCIDENT

More information

Chapter 5 Linux Load Balancing Mechanisms

Chapter 5 Linux Load Balancing Mechanisms Chapter 5 Linux Load Balancing Mechanisms Load balancing mechanisms in multiprocessor systems have two compatible objectives. One is to prevent processors from being idle while others processors still

More information

MINIMIZING STORAGE COST IN CLOUD COMPUTING ENVIRONMENT

MINIMIZING STORAGE COST IN CLOUD COMPUTING ENVIRONMENT MINIMIZING STORAGE COST IN CLOUD COMPUTING ENVIRONMENT 1 SARIKA K B, 2 S SUBASREE 1 Department of Computer Science, Nehru College of Engineering and Research Centre, Thrissur, Kerala 2 Professor and Head,

More information

A Hybrid Algorithm for the Fleet Size and Mix Vehicle Routing Problem

A Hybrid Algorithm for the Fleet Size and Mix Vehicle Routing Problem International Conference on Industrial Engineering and Systems Management IESM 2011 May 25 - May 27 METZ - FRANCE A Hybrid Algorithm for the Fleet Size and Mix Vehicle Routing Problem Anand SUBRAMANIAN

More information

Network (Tree) Topology Inference Based on Prüfer Sequence

Network (Tree) Topology Inference Based on Prüfer Sequence Network (Tree) Topology Inference Based on Prüfer Sequence C. Vanniarajan and Kamala Krithivasan Department of Computer Science and Engineering Indian Institute of Technology Madras Chennai 600036 vanniarajanc@hcl.in,

More information

IMPROVING PERFORMANCE OF RANDOMIZED SIGNATURE SORT USING HASHING AND BITWISE OPERATORS

IMPROVING PERFORMANCE OF RANDOMIZED SIGNATURE SORT USING HASHING AND BITWISE OPERATORS Volume 2, No. 3, March 2011 Journal of Global Research in Computer Science RESEARCH PAPER Available Online at www.jgrcs.info IMPROVING PERFORMANCE OF RANDOMIZED SIGNATURE SORT USING HASHING AND BITWISE

More information

Solving a New Mathematical Model for a Periodic Vehicle Routing Problem by Particle Swarm Optimization

Solving a New Mathematical Model for a Periodic Vehicle Routing Problem by Particle Swarm Optimization Transportation Research Institute Iran University of Science and Technology Ministry of Science, Research and Technology Transportation Research Journal 1 (2012) 77-87 TRANSPORTATION RESEARCH JOURNAL www.trijournal.ir

More information

Kent Business School. Working Paper Series. A Multi-Objective Heuristic Approach for the Casualty Collection Points Location Problam

Kent Business School. Working Paper Series. A Multi-Objective Heuristic Approach for the Casualty Collection Points Location Problam Kent Business School Working Paper Series ISSN 1748-7595 (Online) A Multi-Obective Heuristic Approach for the Casualty Collection Points Location Problam Tammy Drezner and Zvi Drezner California State

More information

PART IV Performance oriented design, Performance testing, Performance tuning & Performance solutions. Outline. Performance oriented design

PART IV Performance oriented design, Performance testing, Performance tuning & Performance solutions. Outline. Performance oriented design PART IV Performance oriented design, Performance testing, Performance tuning & Performance solutions Slide 1 Outline Principles for performance oriented design Performance testing Performance tuning General

More information

Analysis of a Production/Inventory System with Multiple Retailers

Analysis of a Production/Inventory System with Multiple Retailers Analysis of a Production/Inventory System with Multiple Retailers Ann M. Noblesse 1, Robert N. Boute 1,2, Marc R. Lambrecht 1, Benny Van Houdt 3 1 Research Center for Operations Management, University

More information

A Genetic Algorithm Approach for Solving a Flexible Job Shop Scheduling Problem

A Genetic Algorithm Approach for Solving a Flexible Job Shop Scheduling Problem A Genetic Algorithm Approach for Solving a Flexible Job Shop Scheduling Problem Sayedmohammadreza Vaghefinezhad 1, Kuan Yew Wong 2 1 Department of Manufacturing & Industrial Engineering, Faculty of Mechanical

More information

A Study of Crossover Operators for Genetic Algorithm and Proposal of a New Crossover Operator to Solve Open Shop Scheduling Problem

A Study of Crossover Operators for Genetic Algorithm and Proposal of a New Crossover Operator to Solve Open Shop Scheduling Problem American Journal of Industrial and Business Management, 2016, 6, 774-789 Published Online June 2016 in SciRes. http://www.scirp.org/journal/ajibm http://dx.doi.org/10.4236/ajibm.2016.66071 A Study of Crossover

More information

Good FORTRAN Programs

Good FORTRAN Programs Good FORTRAN Programs Nick West Postgraduate Computing Lectures Good Fortran 1 What is a Good FORTRAN Program? It Works May be ~ impossible to prove e.g. Operating system. Robust Can handle bad data e.g.

More information

A Study of Local Optima in the Biobjective Travelling Salesman Problem

A Study of Local Optima in the Biobjective Travelling Salesman Problem A Study of Local Optima in the Biobjective Travelling Salesman Problem Luis Paquete, Marco Chiarandini and Thomas Stützle FG Intellektik, Technische Universität Darmstadt, Alexanderstr. 10, Darmstadt,

More information

Resource Allocation Schemes for Gang Scheduling

Resource Allocation Schemes for Gang Scheduling Resource Allocation Schemes for Gang Scheduling B. B. Zhou School of Computing and Mathematics Deakin University Geelong, VIC 327, Australia D. Walsh R. P. Brent Department of Computer Science Australian

More information

The QOOL Algorithm for fast Online Optimization of Multiple Degree of Freedom Robot Locomotion

The QOOL Algorithm for fast Online Optimization of Multiple Degree of Freedom Robot Locomotion The QOOL Algorithm for fast Online Optimization of Multiple Degree of Freedom Robot Locomotion Daniel Marbach January 31th, 2005 Swiss Federal Institute of Technology at Lausanne Daniel.Marbach@epfl.ch

More information