The open vehicle routing problem with driver nodes and time deadlines

Similar documents
A Tabu Search solution algorithm

Adaptive Large Neighborhood Search

Two models of the capacitated vehicle routing problem

Vehicle Routing Heuristic Methods

Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem

A simulated annealing algorithm for the vehicle routing problem with time windows and synchronization constraints

6 ROUTING PROBLEMS VEHICLE ROUTING PROBLEMS. Vehicle Routing Problem, VRP:

A Computational Study of Bi-directional Dynamic Programming for the Traveling Salesman Problem with Time Windows

Improving on the initial solution heuristic for the Vehicle Routing Problem with multiple constraints

6. Tabu Search. 6.3 Minimum k-tree Problem. Fall 2010 Instructor: Dr. Masoud Yaghini

Multiple Depot Vehicle Routing Problems on Clustering Algorithms

A Steady-State Genetic Algorithm for Traveling Salesman Problem with Pickup and Delivery

Solving Large Aircraft Landing Problems on Multiple Runways by Applying a Constraint Programming Approach

Computational Complexity CSC Professor: Tom Altman. Capacitated Problem

Open Vehicle Routing Problem Optimization under Realistic Assumptions

Metaheuristic Development Methodology. Fall 2009 Instructor: Dr. Masoud Yaghini

Using Column Generation for the Pickup and Delivery Problem with Disturbances

Crew Scheduling Problem: A Column Generation Approach Improved by a Genetic Algorithm. Santos and Mateus (2007)

A robust enhancement to the Clarke-Wright savings algorithm

Variable Neighborhood Search for Solving the Balanced Location Problem

An Open Vehicle Routing Problem metaheuristic for examining wide solution neighborhoods

Regensburger DISKUSSIONSBEITRÄGE zur Wirtschaftswissenschaft

An Efficient Heuristic for the Multi-Vehicle One-to-One Pickup and Delivery Problem with Split Loads

Adjusted Clustering Clarke-Wright Saving Algorithm for Two Depots-N Vehicles

Improved K-Means Algorithm for Capacitated Clustering Problem

A Heuristic Based on Integer Programming for the Vehicle Routing Problem with Backhauls

A Study of Neighborhood Structures for the Multiple Depot Vehicle Scheduling Problem

A Course on Meta-Heuristic Search Methods for Combinatorial Optimization Problems

Variable Neighborhood Search for the Dial-a-Ride Problem

Optimization Techniques for Design Space Exploration

A tabu search based memetic algorithm for the max-mean dispersion problem

Simple mechanisms for escaping from local optima:

Optimal tour along pubs in the UK

Branch-price-and-cut for vehicle routing. Guy Desaulniers

Column Generation Method for an Agent Scheduling Problem

The Service-Time Restricted Capacitated Arc Routing Problem

Heuristic Search Methodologies

Modeling and Solving Location Routing and Scheduling Problems

Metaheuristic Optimization with Evolver, Genocop and OptQuest

Construction of Minimum-Weight Spanners Mikkel Sigurd Martin Zachariasen

Vehicle Routing for Food Rescue Programs: A comparison of different approaches

Dynamic Vehicle Routing Using Hybrid Genetic Algorithms

A Tabu Search Heuristic for the Generalized Traveling Salesman Problem

An Innovative Metaheuristic Solution Approach for the Vehicle Routing Problem with Backhauls

A Development of Hybrid Cross Entropy-Tabu Search Algorithm for Travelling Repairman Problem

Integer Programming Chapter 9

A sequential insertion heuristic for the initial solution to a constrained vehicle routing problem

An Improved Hybrid Genetic Algorithm for the Generalized Assignment Problem

A Row-and-Column Generation Method to a Batch Machine Scheduling Problem

6. Tabu Search 6.1 Basic Concepts. Fall 2010 Instructor: Dr. Masoud Yaghini

A Bi-directional Resource-bounded Dynamic Programming Approach for the Traveling Salesman Problem with Time Windows

Reload Cost Trees and Network Design

Large Neighborhood Search For Dial-a-Ride Problems

A Note on the Separation of Subtour Elimination Constraints in Asymmetric Routing Problems

Assignment 3b: The traveling salesman problem

An ILS Algorithm for the Team Orienteering Problem with Variable Profit

5. Computational Geometry, Benchmarks and Algorithms for Rectangular and Irregular Packing. 6. Meta-heuristic Algorithms and Rectangular Packing

LEAST COST ROUTING ALGORITHM WITH THE STATE SPACE RELAXATION IN A CENTRALIZED NETWORK

Proceedings of the 2012 International Conference on Industrial Engineering and Operations Management Istanbul, Turkey, July 3 6, 2012

Solution Methods for the Multi-trip Elementary Shortest Path Problem with Resource Constraints

3 No-Wait Job Shops with Variable Processing Times

Using a Divide and Conquer Method for Routing in a PC Vehicle Routing Application. Abstract

A SWEEP BASED ALGORITHM FOR THE FLEET SIZE AND MIX VEHICLE ROUTING PROBLEM

An Efficient Heuristic Algorithm for Capacitated Lot Sizing Problem with Overtime Decisions

56:272 Integer Programming & Network Flows Final Exam -- December 16, 1997

Travelling salesman problem using reduced algorithmic Branch and bound approach P. Ranjana Hindustan Institute of Technology and Science

ON THE SOLUTION OF TRAVELING SALESMAN UNDER CONDITIONS OF SPARSENESS A THESIS. Presented. The Faculty of the Division of Graduate

Improved methods for the Travelling Salesperson with Hotel Selection

MVE165/MMG630, Applied Optimization Lecture 8 Integer linear programming algorithms. Ann-Brith Strömberg

Complete Local Search with Memory

A Relative Neighbourhood GRASP for the SONET Ring Assignment Problem

GRASP. Greedy Randomized Adaptive. Search Procedure

A GRASP with restarts heuristic for the Steiner traveling salesman problem

A Hybrid Genetic Algorithm for the Distributed Permutation Flowshop Scheduling Problem Yan Li 1, a*, Zhigang Chen 2, b

A Clustering Approach to the Bounded Diameter Minimum Spanning Tree Problem Using Ants. Outline. Tyler Derr. Thesis Adviser: Dr. Thang N.

A Meta-heuristic Applied for a Topologic Pickup and Delivery Problem with Time Windows Constraints

Obstacle-Aware Longest-Path Routing with Parallel MILP Solvers

Overview of Tabu Search

Tabu search and genetic algorithms: a comparative study between pure and hybrid agents in an A-teams approach

An Extension of the Multicut L-Shaped Method. INEN Large-Scale Stochastic Optimization Semester project. Svyatoslav Trukhanov

DM204 - Scheduling, Timetabling and Routing

Branch-and-Cut and GRASP with Hybrid Local Search for the Multi-Level Capacitated Minimum Spanning Tree Problem

CHAPTER 5 ANT-FUZZY META HEURISTIC GENETIC SENSOR NETWORK SYSTEM FOR MULTI - SINK AGGREGATED DATA TRANSMISSION

3 INTEGER LINEAR PROGRAMMING

Algorithms and Experimental Study for the Traveling Salesman Problem of Second Order. Gerold Jäger

Methods and Models for Combinatorial Optimization Heuristis for Combinatorial Optimization

Hybrid ant colony optimization algorithm for two echelon vehicle routing problem

Rich Vehicle Routing Problems Challenges and Prospects in Exploring the Power of Parallelism. Andreas Reinholz. 1 st COLLAB Workshop

Comparison of TSP Algorithms

Fundamentals of Integer Programming

PICKUP AND DELIVERY WITH TIME WINDOWS: ALGORITHMS AND TEST CASE GENERATION. School of Computing, National University of Singapore, Singapore

A SIMULATED ANNEALING ALGORITHM FOR SOME CLASS OF DISCRETE-CONTINUOUS SCHEDULING PROBLEMS. Joanna Józefowska, Marek Mika and Jan Węglarz

A Comparative Study of Tabu Search and Simulated Annealing for Traveling Salesman Problem. Project Report Applied Optimization MSCI 703

Assigning Judges to Competitions Using Tabu Search Approach

Outline of the module

Travelling Salesman Problem. Algorithms and Networks 2015/2016 Hans L. Bodlaender Johan M. M. van Rooij

Search for an Immobile Entity on a Unit Graph: A Mathematical Programming Approach

Effective Local Search Algorithms for the Vehicle Routing Problem with General Time Window Constraints

Two approaches. Local Search TSP. Examples of algorithms using local search. Local search heuristics - To do list

A column generation algorithm for the team orienteering problem with time windows

Transcription:

The open vehicle routing problem with driver nodes and time deadlines D Aksen 1, Z Özyurt 1 and N Aras 2 1 Koç University, İstanbul, Turkey; and 2 Boğaziçi University, İstanbul, Turkey In this paper we consider a variant of the open vehicle routing problem in which vehicles depart from the depot, visit a set of customers and end their routes at special nodes called driver nodes. A driver node can be the home of the driver or a parking lot where the vehicle will stay overnight. The resulting problem is referred to as the open vehicle routing problem with driver nodes (OVRP-d). We consider three classes of OVRP-d: with no time constraints, with a maximum route duration, and with both a maximum route duration as well as time deadlines for visiting customers. For the solution of these problems, which are not addressed previously in the literature, we develop a new tabu search heuristic. Computational results on randomly generated instances indicate that the new heuristic exhibits a good performance both in terms of the solution quality and computation time. Keywords: vehicle routing; open vehicle routing; tabu search; heuristics; time deadlines 1. Introduction and background The single depot vehicle routing problem (VRP) is defined as determining a set of routes for a fleet of vehicles based at the depot so as to satisfy the demand of geographically dispersed customers at the minimum total traveling cost. The open vehicle routing problem (OVRP) is a variant of the VRP in which vehicles are not required to return to the depot. In those cases where the vehicles have to return to the depot, they follow exactly the same path they used when coming from the depot, but this time they visit the customers in the reverse order. This implies that the routes in the OVRP consist of Hamiltonian paths originating at the depot and terminating at one of the customers as opposed to the VRP in which the routes are Hamiltonian cycles. In other words, the shortest Hamiltonian path problem (HPP) with a fixed source node has to be solved for each vehicle in the OVRP. The shortest HPP is known to be NP-hard since an instance of the HPP can be converted to an instance of the traveling salesperson problem that is known to be NP-hard (Reinelt, 1991). Consequently, the OVRP is also a difficult problem. The OVRP has received in the literature relatively less attention than the VRP. The problem is first described in a paper by Schrage (1981) without any solution attempt. Bodin et al. (1983) address the express airmail distribution in the USA and solve two separate routing problems, one for the delivery and another one for the pick-ups using a modified Clarke-Wright savings algorithm. Sariklis and Powell Correspondence: Necati Aras, Boğaziçi University, Department of Industrial Engineering, Bebek, 34342 İstanbul, Turkey. E-mail: arasn@boun.edu.tr 1

(2000) propose a classical heuristic method to solve a symmetric OVRP that does not include maximum route length restrictions. In the first phase of their algorithm customers are assigned to clusters. This phase includes the formation of the initial clusters as well as balancing the clusters by reassigning those customers that are last added to their respective clusters. In the second phase, the routing subproblem is considered which is based on generating probably infeasible minimum spanning tree solutions and converting them into feasible ones. Tarantilis and Kiranoudis (2002) consider a real-life fresh meat distribution problem and formulate it as a multi-depot OVRP. The problem is solved by a metaheuristic method referred to as list-based threshold accepting (LBTA) algorithm in which the threshold values used in the acceptance or rejection of the new solutions are generated by the characteristics of the solution space of the problem and stored in a list. In another paper, Tarantilis et al. (2004) propose a decision support system to solve the OVRP which employs a metaheuristic algorithm called BoneRoute. BoneRoute is based on the concept of adaptive memory first introduced by Rochat and Taillard (1995) to solve the VRP. In this technique, a pool of OVRP solutions is stored in an adaptive memory that is dynamically updated during the procedure. Sequences of nodes referred to as bones are extracted periodically from the pool of the solutions in the adaptive memory and are used to produce new solutions. Brandão (2004) also studies the OVRP with maximum route length and capacity constraints and solves it using a tabu search algorithm in which neighborhood solutions are generated by insert and swap moves. The most notable feature of the algorithm is the strategic oscillation concept which allows the acceptance of infeasible solutions as new solutions. This is done by multiplying the total excess load of vehicles and the total overtime of routes by a penalty parameter and putting these terms into the objective function. A further paper that focuses on the OVRP is due to Tarantilis et al. (2005) in which the authors solve the problem by implementing the LBTA algorithm they proposed for the solution of the multi-depot OVRP (Tarantilis and Kiranoudis, 2002). The tabu search (TS) heuristic by Fu et al. (2005) solves the OVRP with the vehicle capacity and maximum route length constraints. Initial solutions are generated randomly as well as by the farthest first heuristic that constructs new routes from the farthest unrouted customer to the depot. The rationale behind this heuristic is that the farthest customers from the depot have to be placed at the end of a route. The neighborhood structure that consists of four different types of moves is mentioned to be the distinctive feature of the tabu search heuristic. As is the case in the paper by Brandão (2004), infeasible solutions are also accepted by including penalty terms in the objective function. Later, Fu et al. (2005) provide a corrigendum which corrects some errors in the code of their algorithm. While some of the previously reported best results in the original paper have not been achieved, a few others have been improved. The most recent papers that address the OVRP are due to Li et al. (2006) and Pisinger and Ropke (2006). Li et al. (2006) use a record-to-record travel heuristic, a deterministic variant of simulated annealing, to solve the OVRP and present computational results on benchmark instances as well as on a 2

set of eight randomly generated large-scale instances ranging in size from 200 to 480 customers. Pisinger and Ropke (2006) apply an adaptive large neighborhood search heuristic in which at each iteration the current solution is partially destroyed and then repaired by choosing among several removal and insertion heuristics. As opposed to the aforementioned papers which apply heuristic methods to the OVRP, Letchford et al. (2006) present an exact optimization method based on the branch-and-cut algorithm. The importance of this work lies in the fact that it helps assess the solution quality of existing heuristic methods. All the above-mentioned papers assume that the last customer visited on its route by a vehicle can be any customer. In this paper we consider a variant of the OVRP in which each vehicle route terminates at a driver node other than customer locations. The driver nodes, which are assumed to be fixed a priori, can be the home of the driver or a parking lot where the vehicle will stay overnight. As a consequence, in the OVRP with driver nodes (OVRP-d), we have to solve an HPP with two fixed nodes, i.e., the depot and the driver node. The school bus routing problem is actually a good example for the OVRP with driver nodes. In the morning a bus departs from the driver node, picks up the pupils (customers) to take them to the school. In the afternoon, the itinerary is reversed. Li and Fu (2002) address the school bus routing problem in the context of a case study and formulate it as a multi-objective optimization problem. The various objectives are the minimization of the number of buses and the total traveling time of the pupils as well as balancing the loads and travel times of the buses. The authors propose a heuristic solution procedure and assess its performance on a real-life instance by comparing their solution with another one developed manually. An important difference from our work is that in the school bus routing problem considered by Li and Fu (2002) pupils are picked up or dropped off at predetermined points which do not necessarily coincide with their home. Because of this aggregation and limited bus capacity, it assumed that pupils at the same point can be picked up or dropped off by several buses, whereas in our work each customer is visited by a single vehicle. Apart from the driver nodes, the incorporation of time deadlines is another difference between our study and the OVRP literature. Besides the vehicle capacity and maximum route duration (route length) constraints, this adds a further restriction to the OVRP-d such that each customer must be visited before his corresponding time deadline. This is an important aspect since nowadays customer expectations have become more restrictive and delivery time is one of the measures of quality of service (QoS) guarantees. To the best of our knowledge, there is no published work on this variant of OVRP. For the solution of the OVRP-d we develop a new tabu search heuristic that we call Open Tabu Search (OTS). It makes use of three move operators in generating the solutions in the neighborhood of the current solution. These are 1-0 move, 1-1 exchange move, and 2-Opt move corresponding to the special cases of more general string cross, string exchange, and string relocation operations discussed in Van Breedam (1994). The initial solutions required by the OTS heuristic are generated with two methods: a nearest insertion heuristic and a modified version of Clarke-Wright parallel savings algorithm. We carry out extensive computer experiments to assess the performance of our heuristic in terms of solution quality 3

and computation time. To this end, we randomly generate two sets of test problems. The first set includes small instances ranging in size from 10 to 30 customers and from 2 to 5 drivers. These are also solved with the mixed integer programming (MIP) solver Cplex 9.0 to provide a benchmark for the performance comparison of OTS. The second set is composed of relatively large instances ranging in size from 100 to 500 customers and from 5 to 35 drivers. The instances in this set cannot be handled by Cplex within a reasonable amount of time. To solve the instances in both sets, we also employ two classical heuristic techniques followed by local improvement heuristics which are constructed from move operators. These two techniques are in fact identical with the initial solution generating methods of OTS. On the basis of abundant experimentation results, we conclude that our heuristic can quickly find high quality solutions to the OVRP-d. The remainder of the paper is organized as follows. Section 2 includes the formulation of the OVRP-d as a MIP problem. The details of the new tabu search heuristic OTS are given in Section 3. Section 4 includes the computational results. Finally, we present some concluding remarks in Section 5 about the problem and its solution methodology. 2. A mathematical model for OVRP-d We formulate a mixed integer programming (MIP) model for the problem, and use the MIP solver Cplex 9.0 of the optimization suite GAMS 21.7 to solve it. Cplex solutions, if they can be obtained for a given problem, serve as a reliable benchmark in assessing how well OTS performs. There are three sets in the model: IC, ID and I, where IC = {1,, n} is the set of n customers; ID = {n+1,, n+d} is the set of d drivers each assigned to a vehicle; and I = IC ID {0} is the set of all nodes inclusive of the depot. The model s decision variables and parameters are as follows. The binary decision variable x ij equals 1 if node j is visited immediately after node i by a vehicle, 0 otherwise. The continuous variable u i is a positive weight associated with each customer i bounded between his demand and the vehicle capacity. The arrival time of a vehicle at node i is represented by the nonnegative continuous decision variable a i. The demand of customer i is q i and the uniform vehicle capacity is Q. The distance between nodes i and j is c ij while the traveling time between them is shown by t ij. For the purpose of simplicity, the velocity of vehicles is assumed to be constant and equal to 1.0, thus t ij = c ij for each arc (i,j). The service time at customer node i is denoted by st i. TD i is the time deadline (latest arrival time of a vehicle) at node i, i I \{0}. Finally, M stands for the Big-M number. It is set to problem in the model. max { TD + st + t } to avoid any scaling ( i, j) I\{0} i i ij (1) minimize z = c0 x0 + c x + c x j j ij ij ij ij j IC i IC j IC i IC j ID i j subject to: x0i = d (2) i I\{0} 4

1 i I \{0} (3) x ji = j IC {0} i j xij = 1 i IC (4) j I\{0} i j u u + Qx + ( Q q q ) x Q q (i,j) IC, i j (5) i j ij i j ji j q u Q i IC (6) i i a a + st + t + (1 x ) M i IC, j I \{0}, i j (7) j i i ij ij a a + st + t (1 x ) M i IC, j I \{0}, i j (8) a j i i ij ij TD i I \{0} (9) i i 0 0 a = (10) x ij i {0,1} a 0 i I, j I (11) The objective function in (1) of the above formulation shows the total distance traveled by d vehicles. Note that variables x 0j for j ID do not appear in (1) in order to allow the model to detect and discard a redundant driver j. For such a driver j, x 0j is set to 1 by the model without inflating the objective value. This way, the constraint in (2) ensuring that as many vehicles be dispatched from the depot as the number of drivers will be satisfied too. Constraints in (3) state that at each node other than the depot there should be exactly one entering arc coming either from a customer node or from the depot. These constraints, together with the ones in (4), provide also the degree balance for customer nodes IC. The next two sets of constraints in (5) and (6) are lifted Miller-Tucker-Zemlin (MTZ) subtour elimination constraints for the VRP first proposed by Desrochers and Laporte (1991), corrected later by Kara et al. (2005). In an OVRP with driver nodes they only apply to customer nodes and also account for the vehicle capacity limit. The definition of arrival time variables and time deadline constraints are given in (7) (10). Time begins to elapse with the synchronized departure of vehicles from the depot; hence the arrival time of the depot is set equal to zero. Finally, the last constraint pertains to the binary restrictions on x ij s and to the nonnegativity of a i s. The formulation in (1) (11) has exactly n 2 MTZ inequalities in lieu of the exponential number of traditional subtour elimination or connectivity constraints. In spite of their use, the solution of the model with a general purpose MIP solver such as Cplex takes prohibitively long once the problem size exceeds 30 customers. Hence, we need efficient heuristics to tackle large sized instances of OVRP-d. 3. Tabu search implementation Tabu search (TS) is a meta-heuristic algorithm that guides the local search to prevent it from being trapped in premature local optima and cycling. Moves that cause a return to previously visited solutions are prohibited throughout a certain number of iterations for this purpose. The algorithm starts with an initial solution. At each iteration, a neighborhood of solutions is generated for the current solution. The best one from this neighborhood is picked as the current solution depending on a number of criteria. 5

Certain attributes of previous solutions are kept in a tabu list which is updated at the end of each iteration. The selection of the best solution in the neighborhood is done such that it does not adopt any of the tabu attributes. Best feasible solution so far (incumbent) is updated if the current solution is both feasible and better than the incumbent. The procedure continues until one or more stopping criteria are fulfilled. The characteristics of the tabu search heuristic OTS proposed for OVRP-d can be stated as follows. 3.1. Initial solution We make use of the following methods in order to find an initial (starting) solution that will be fed as an input to the OTS heuristic. Nearest insertion method (NI) In this greedy heuristic method, we first construct as many routes as the number of drivers. Each route initially consists of the depot and a driver node. Customers are then inserted into these routes one by one, starting from the first one. At each step, all possible insertion positions are examined for the current customer node. It is inserted at the position which is feasible with respect to capacity and time constraints, and yields the least additional traveling cost. The resulting routing plan depends on the sequence of customer insertions. In a given instance of OVRP-d, it is possible that none of the insertion positions for a customer satisfies both capacity and time deadline constraints although the instance actually has a feasible solution. In this case, we first try to find for that customer the capacity-feasible position that yields minimum tardiness. If such a position cannot be found, the route with minimum total demand is selected and the customer is inserted in that route at the position that yields minimum additional distance. Since infeasible solutions are allowed in OTS, it can start with an infeasible solution. It is expected, but not guaranteed that feasibility will be restored during the TS iterations. Clarke-Wright parallel savings algorithm (CW) This algorithm is proposed by Clarke and Wright (1964) for the single depot capacitated VRP. It can solve a problem with 1000 nodes in one second on a fast desktop PC. Furthermore, it can be implemented without using advanced data structures. Therefore it still remains popular to date. In this algorithm, first a dedicated route is formed for each customer. Savings that will be obtained by merging two routes are calculated for all pairs of routes. Then, routes are merged starting with the pair that yields the highest savings. The algorithm is repeated until none of the remaining mergers is feasible. In OVRP-d, routes have to terminate at a driver node, and there has to be only one driver per route. We modify the merging function of the original CW to detect and reject illegal mergers. We also modify the distance matrix by assigning a very large number representing infinity to the arcs that would create illegal routes. In order to differentiate between mergers, we add also the Euclidean length of that arc to the large number. The distance matrix is modified as follows. Customer-depot distances are set to infinity plus Euclidean length, for a vehicle is not to return to the depot from a customer node. Driver-customer distances are also infinity plus Euclidean length, because a vehicle is not allowed to travel from a driver node to any customer node. The same is true for the driver-driver distances as well. Finally, driver-depot 6

distance is set to zero to assure that a vehicle returns to the depot from a driver node without increasing the objective value. Since the number of drivers in the problem is fixed, in some cases the algorithm may not find a feasible solution although one exists. As in the case of NI, also CW may end up with an infeasible solution. OTS iterations are expected but not guaranteed to fix this infeasibility. 3.2. Evaluation of solutions The objective of the problem is to minimize the total traveling distance. In OTS we apply strategic oscillation by admitting infeasible solutions where infeasible solutions are penalized in proportion to the violations of capacity and time constraints. The penalty terms are added to the objective value of an infeasible solution. This penalty is intended to prevent the algorithm from spending too much time with exploring the infeasible regions of the search space. Every 10 iterations, the number of feasible and infeasible solutions visited are compared. If the number of feasible solutions exceeds that of infeasible solutions, penalty terms are divided by a factor of 1.5; otherwise penalty terms are multiplied by 1.5. The purpose of dynamically adjusting penalty coefficients is to keep the search procedure around the boundary of feasible and infeasible regions. Since good solutions are expected near this boundary, exploring this region is likely to provide better solutions. The objective value for a solution is obtained by d r= 1 D() r + pcvc() r + ptvt() r where D(r) denotes the total distance traveled on route r, d is the number of routes (drivers), V c denotes overload (total demand of customers in route r vehicle capacity), V t denotes the total tardiness in route r, p c and p t denote the penalty coefficients for overload and total tardiness in a route, respectively. After generating the initial solution depot-driver distances are reset to zero to guarantee that a redundant route, which comprises only the depot and a driver, does not increase the objective function value. 3.3. Neighborhood structure and tabu attributes We use three move operators to generate a neighborhood for the current solution. A pictorial description of these moves can be found in the paper by Tarantilis and Kiranoudis (2002). For each move we use two pilot nodes: 1. 1-0 move: One of the pilot nodes is taken from its current position and inserted after the other one. 2. 1-1 exchange: Two pilot nodes are swapped. 3. 2-Opt move: For two pilot nodes in the same route, the arcs emanating from these are removed. Two arcs are added one of which connects the pilot nodes, and the other connects their successor nodes. If the pilot nodes are in different routes, then the route segments following them are swapped preserving the order of nodes succeeding the pilots on each segment. 7

Since all routes are to end with a driver node, the pilot nodes of a 1-1 exchange cannot be a customer and a driver node. Moreover, a driver node cannot be moved by 1-0 exchange either, since this causes an illegal route. Before the generation of each neighboring solution we choose one of the move operators with probability inversely proportional to the number of times that move is used in previous iterations. Then we randomly pick two nodes from the problem. At the end of every iteration, the probabilities of choosing the moves are updated according to the following formula: j {1,2,3} j i num probi = i {1, 2, 3} 2 num j {1,2,3} j j (12) In this formula, prob i is the probability of choosing move i, where i is one of the three move operators, and num j denotes the total number of times move j is used so far in the previous iterations. As num i increases, prob i decreases. Computing prob i values like this helps the dynamic balance among the selection frequencies of moves. The size of the neighborhood generated in an iteration depends on the number of customer nodes in the problem. Since the number of possible neighboring solutions increases rapidly with the number of nodes, for problems with many customers more neighboring solutions are generated at each iteration. Besides neighborhood generation, we incorporate also a local search with these moves into OTS as a tool of local post optimization (LPO). A series of LPO operations are to be applied to the current solution at the end of every 100 iterations if it is feasible, and also to the incumbent whenever it is updated. This helps the intensification of tabu search on the given problem. We determine the sequence of LPO operations according to the results of extensive experimentation. We do not apply LPO to the initial solution which is found either by NI or by CW. We rather start OTS directly with the plain NI or CW initial solution. In the application of LPO, all customers are set one by one as the first pilot node. For a certain pilot node, the second pilot node is chosen such that the related move yields highest improvement in total distance without causing any infeasibility. The tabu list of OTS is updated at the end of each iteration. Tabu attributes of a solution generated by a move can be stated as follows. 1-0 move: If node i is inserted after node j, the position of i cannot be changed by the same move while it is tabu-active. 1-1 exchange: If nodes i and j are swapped, they cannot be swapped again while they are tabu-active. 2-Opt move: If 2-Opt move is applied to nodes i and j, the move cannot be applied again to the same nodes while they are tabu-active. At each iteration tabu tenure is selected randomly between 5 and 15 iterations. In some cases, namely if the so-called aspiration criterion is satisfied, a move can be executed although its attributes are tabu-active. Aspiration criterion is considered to be satisfied if the total distance resulting from the move is better than the incumbent s objective value. 8

3.4. Stopping criteria OTS terminates when one of two stopping criteria is satisfied. First is the total number of iterations performed. Second criterion is the maximum permissible number of iterations during which the best feasible or best infeasible solution does not improve. Both values are determined based on the problem size. 4. Computer experiments and results 4.1. Random problem generation In order to study the OVRP-d extensively, we have first created two random test beds. The problems therein are divided equally into three classes with respect to time constraints; the first class is unconstrained (NoTC), the second class has only maximum route duration constraints (MaxDur), and the third class is subject to both maximum route duration and individual time deadline constraints (TD). The first test bed (TB-1) comprises 300 problems with customers and drivers ranging from 10 to 30 and from 2 to 5, respectively. The second test bed (TB-2) has 150 problems with 100 through 500 customers and 5 through 35 drivers. Further details of the random problem generation are given in Table 1. Formulae used in the calculation of several problem parameters are provided in Table 2. Among these, the maximum route duration and individual time deadlines are derived from the arrival times a NI in the nearest insertion (NI) solution to the equivalent problem without time restrictions. These arrival times are multiplied with a random number between K3 and K4. Since K3 is set to one, a customer s time deadline in a given TD problem can be equal to his arrival time in the NI solution of the associated NoTC problem. Since K2 also equals one, the maximum of the drivers arrival times found by the NI heuristic to the NoTC problem becomes the maximum route duration value in the associated MaxDur and TD problems. <Insert Table 1 about here> <Insert Table 2 about here> 4.2. GAMS models All codes have been written in ANSI C, compiled and executed in Microsoft Visual Studio.NET on a 3.20 GHz Intel Xeon server with 2 GB RAM. We have constructed a GAMS model for each problem in TB-1, and solved it on the same platform to optimality where possible using the general-purpose MIP solver Cplex 9.0. Each test problem s solution time designated by RESOURCE USAGE in the GAMS output file and its optimal or best feasible objective value found by Cplex make a benchmark for our tabu search heuristic OTS. In GAMS models, the accuracy obtained by the employed solver is controlled by a number of options. A relative optimality criterion (OPTCR) can be set for the MIP master problem determining when the solver should terminate its branch-and-bound (or branch-and-cut) procedure. OPTCR is defined 9

as the ratio ( BP BF ) / (1.0e 10 + BF ) where BF is the objective function value of the current best integer solution while BP is the best known (current) lower bound in case of minimization. The solver stops trying to improve upon the integer solution BF when this ratio drops below the specified value. The options used in our GAMS models are explained in Table 3. How well Cplex performs on the problems of TB-1 with these options is revealed in Table 4. As the problem size increases from 10 towards 30 customers, both the number of normal completions within the resource limits and the number of proven optimal solutions drop drastically, while the number of failures to find a feasible solution to the given problem rises from zero to seven. <Insert Table 3 about here> <Insert Table 4 about here> 4.3. Experiments with algorithmic parameters TB-1 problems serve as a workbench due to their relatively fast solvability. We have experimented to observe the effect of different LPO sequences applied to the incumbent and to the current solution. The neighborhood size, the bounds in stopping criteria, and the effect of initial solution quality have been tested on TB-1 too. The following algorithmic parameters of OTS have been adjusted in accordance with the empirical findings of tests on TB-1. Note that after their adjustment the algorithmic parameters have been adopted also for the experiments with TB-2. Initial solution We use the CW and NI methods to generate initial solutions to the problems in TB-1. For each individual problem in TB-1, we make 20 OTS runs starting with a different random number seed. We take the best objective value (Best_OTS) of 20 random runs as a remedy against the probabilistic character of OTS. It is then benchmarked with the objective value of the Cplex solution (CPLEX). The average and maximum gaps between Best_OTS and CPLEX and the number of times each solution outperforms the other are computed. Here, a gap is defined as Best_OTS CPLEX Gap = 100. Consequently, a negative gap is in CPLEX favor of OTS. OTS runs on a given problem are conducted first with the CW initial solution, then with the NI initial solution. The results of (6000 2) runs are summarized in Table 5. We observe that on the average the initial solution obtained by NI turns out a slightly better final result, particularly with respect to the maximum gap and the number of times Cplex outperforms OTS. Therefore, NI has been adopted as the standard method of initial solution generation also during the experiments with TB-2. <Insert Table 5 about here> 10

LPO sequence applied to the incumbent solution Seven sequences of LPO operations which are to be applied to the incumbent solution whenever it is updated have been tested on TB-1. They consist of different combinations of iterative local improvement (LPO) heuristics with either of the 1-0 move, 1-1 exchange, and 2-Opt operators. Out of seven sequences, the one built from 1-1 exchange, 2-Opt, 1-0 move and one more time 2-Opt operators produce the least total distances in the final OTS solutions. LPO sequence applied to the current solution At the end of every 100 iterations; the current solution provided that it is feasible is subjected to LPO with the purpose of intensification of tabu search. For this, we have tested three sequences of LPO operations out of which the one built from the 1-0 move followed by the 2-Opt lead to the least total distances in the final OTS solutions. Neighborhood size and bounds in stopping criteria The neighborhood size is defined as the number of candidate solutions explored in the neighborhood of the current solution. This number equals 200 + 2(n+d) when n 50; otherwise it equals 200 + 4(n+d). The bound on the total number of iterations performed is set to 15000 + 35(n+d). The maximum number of iterations in which the best feasible or best infeasible solution (incumbent) does not improve is bounded by 4000 + 10(n+d). OTS iterations stop as soon as one of the two bounds is reached. We have observed that increasing the neighborhood size or the bounds in stopping criteria delays the completion of iterations; however, it does not bring about a noticeable improvement to the OTS solutions. 4.4. Benchmark results of OTS on TB-1 and TB-2 The new heuristic OTS for OVRP-d has been run with 20 different initial random number seeds on each problem in TB-1. This yields 2000 runs for every time restriction class. The results have been aggregated into 10 subsets of 10 problems in Tables 6 8 where each subset corresponds to a unique (n, d) combination. The best and the average total distances obtained at the end of 20 runs for a given problem have been averaged further for each subset. Average solution times have also been computed for that subset. In addition, the standard deviation of solution times is provided to give an idea about the robustness of the new heuristic. Finally, average objective values of Cplex solutions, their solution times as well as standard deviations on these times have been provided. The second part of the tables aggregates the results one more time over the number of drivers, and recapitulates the benchmarking between OTS and Cplex. <Insert Table 6 about here> <Insert Table 7 about here> <Insert Table 8 about here> 11

The same procedure is followed in testing and reporting OTS on TB-2. GAMS models have been skipped because of the prohibitively long CPU time requirement of Cplex for problems with more than 30 customers. The aggregated results are reported in Table 9. When we look at the figures in the tables closely, we can make the following observations. (i) In TB-1, as the problem size, i.e. n and d increase, the robustness of the OTS method for OVRP-d with or without time constraints diminishes. This situation emerges as the growing discrepancy between the best and average objective values (z Best and z Avg ), and as the increasing standard deviation of CPU times. In TB-2, a more severe increase is observed in the standard deviations as n and d increase. For the same n value, when additional 10 drivers are added to the problem, the running time of OTS increases. Also the variation in the CPU times of 20 random runs rises with the exception of TD problems. (ii) Both the average CPU times and the standard deviations of these deteriorate also for the GAMS/Cplex 9.0 solver as the problem size grows. Moreover, the quality of Cplex solutions does not match that of the best OTS solutions in any of the time restriction classes. Surprisingly, Cplex finds a better total distance value than OTS in five of the biggest NoTC and MaxDur problems in TB-1 (n = 30). However, even then the maximum gap between OTS and Cplex does not exceed 3.6%. (iii) OTS seems to perform better in the MaxDur class of TB-1. In this class, the average gap between the best OTS solutions and equivalent Cplex solutions is 1.2%, while this average gap amounts to 0.9% and 0.8% in the other two classes. <Insert Table 9 about here> 4.5. Classical heuristics and OTS The performance of the classical heuristics CW and NI is compared with OTS on larger sized TB-2 problems by solving five instances for each (n, d) combination. The classical heuristics are supplemented with the same sequence of LPO heuristics as the one applied to the incumbent during the OTS iterations. This is indicated by the suffix LPO attached to the names CW and NI in Table 10. The column with the header Choice Classical refers to the better of the CW-LPO and NI-LPO methods for the pertinent (n, d) combination. The last column under each time constraint class shows the average percent gap between that method and OTS. It is equal to 8.65%, 8.64%, and 18.59% for NoTC, MaxDur, and TD classes, respectively. The outcomes validate the benefit of the new metaheuristic OTS for the OVRP-d as a viable alternative to CW-LPO and NI-LPO. The only superiority of the classical methods appears to be their speed. The longest CPU times are 0.50 and 0.70 seconds by NI-LPO and CW-LPO, respectively. <Insert Table 10 about here> 12

Between the classical heuristics CW-LPO and NI-LPO, the former excels in the solution quality most of the time. In the NoTC and MaxDur classes of TB-2 problems, CW-LPO leads NI-LPO in all 20 (n, d) combinations. In the TD class, the advantage passes to NI-LPO. In fact, CW-LPO does not yield a feasible solution in any of the five instances corresponding to an (n, d) combination. We indicate this in Table 10 with the label infeasible. As shown in the bottom row of the table, all 50 MaxDur problems, but none of the TD problems can be solved by CW-LPO. In the presence of time deadlines, NI-LPO seems to do better. This situation stems from the creation of time deadlines. As explained earlier in Section 4.1, a customer s time deadline in a given TD problem can be equal to his arrival time in the NI solution of the associated NoTC problem. Eventually CW-LPO cannot produce a feasible routing plan in which customers are visited in more or less the same order as in the original NI solution. 5. Concluding remarks In this paper we propose a new tabu search heuristic called OTS for the OVRP-d, a variant of the open vehicle routing problem in which vehicles terminate their routes at driver nodes. We consider three classes within OVRP-d: first, problems without any time constraints (NoTC); second, problems with a maximum route duration (MaxDur); and third, problems with both a maximum route duration and deadlines on arrival times at customers (TD). The performance of OTS is evaluated on two test beds of OVRP-d. The first of these is TB-1 and has 300 small instances with up to 30 customers and 5 drivers. To obtain benchmarks, they are first solved using the MIP solver Cplex 9.0 operating within the optimization suite GAMS 21.7. Then, OTS is implemented on these problems. The second test bed, TB-2, has 150 large instances with up to 500 customers and 35 drivers. However, these can be solved only by OTS and the two classical heuristics considered in this paper, namely Clarke-Wright parallel savings method and nearest insertion method since Cplex becomes inefficient due to the NP-hard nature of the problem. Based on the results, we conclude that the quality of the solutions produced by the new heuristic is higher than that of the classical heuristics for all instances. In particular, on TB-2 the average gaps between the better classical heuristic and OTS amount to 8.65%, 8.64%, and 18.59% for NoTC, MaxDur, and TD classes, respectively. OTS also outperforms Cplex on TB-1. The average gaps become 0.9%, 1.2% and 0.8% in favor of OTS for NoTC, MaxDur, and TD classes, respectively. The efficiency of OTS as measured by the CPU time is also superior. For example, 30-customer 5-driver TD class instances can be solved in 3.46 seconds on average using a present-day desktop PC. The average CPU time required to solve a 500-customer 35-driver problem on the same platform is about 450 seconds. 13

Acknowledgements We would like to thank the editor and two referees for bringing additional relevant references to our attention. Deniz Aksen and Zeynep Özyurt were supported by KÜMPEM, Koç University Migros Professional Training Center. Necati Aras was supported by the Boğaziçi University Research Fund Grant No. 03HA301D. Appendix A. Pseudo Code of the algorithm OTS for OVRP-d Notation num_iter : number of iterations performed. num_neigh : number of neighbors generated in current iterations. num_nonimp_iter : number of iterations through which the best feasible or the best infeasible solution do not improve. num i : number of neighbors generated using i th move, where i = 1,2,3. prob i : probability of selecting i th move for generating next neighboring solution, where i = 1,2,3. max_iter : maximum number of iterations. max_nonimp_iter : maximum number of iterations through which best feasible or best infeasible solution do not improve. size_neigh : number of neighboring solutions to be generated in an iteration. Algorithm OTS Generate an initial solution. If the initial solution is feasible, then set it as the incumbent; otherwise, set it as the best infeasible solution. num_iter:= 0, num_nonimp_iter := 0, and num i := 1 (i =1,2,3). While (num_iter max_iter) and (num_nonimp_iter max_nonimp_iter) do Update prob i s according to the formula in (12). num_neigh := 0. While (num_neigh size_neigh) do Select one of the move operators with probabilities prob i (i =1,2,3). Call this move k. Select two pilot nodes randomly. Generate a neighboring solution with pilot nodes and move k. Update the best neighboring solution if the newly generated neighboring solution is not tabu and better than the best neighboring solution, or if it is tabu, but yields an objective value better than that of the incumbent (aspiration criterion). num_neigh := num_neigh + 1. num k := num k + 1. End While Set the best neighboring solution as the current solution. If the current solution is feasible and also better than the incumbent, then update the incumbent and set num_nonimp_iter = 0. If the current solution is infeasible, but better than the best infeasible solution, then update the best infeasible solution and set num_nonimp_iter = 0. 14

Decrement the tabu durations of all attributes by one. Make the attributes of the best neighboring solution tabu. num_iter := num_iter + 1. num_nonimp_iter := num_nonimp_iter + 1. End While References Bodin L, Golden B, Assad A, Ball M (1983). Routing and scheduling of vehicles and crews: The state of the art. Comput Oper Res 10: 63 211. Brandão J, (2004). A tabu search heuristic algorithm for open vehicle routing problem. Eur J Oper Res 157: 552 564. Clarke G, Wright JW (1964). Scheduling of vehicles from a central depot to a number of delivery points. Oper Res 12: 568 581. Desrochers M and Laporte G (1991). Improvements and extensions to the Miller-Tucker-Zemlin subtour elimination constraints. Oper Res Lett 10: 27 36. Fu Z, Eglese R, Li LYO (2005). A new tabu search heuristic for the open vehicle routing problem. J Oper Res Soc 56: 267 274. Fu Z, Eglese R, Li LYO (2005). Corrigendum to the paper A new tabu search heuristic for the open vehicle routing problem, J Oper Res Soc 56: 267 274. Kara İ, Laporte G and Bektaş T (2004) A note on the lifted Miller Tucker Zemlin subtour elimination constraints for the capacitated vehicle routing problem. Eur J Oper Res 158: 793 795. Letchford E, Lysgaard J, and Eglese RW (2006) A branch-and-cut algorithm for the capacitated open vehicle routing problem. Working paper available at the URL address http://www.hha.dk/~lys/. Li L and Fu Z (2002). The school bus routing problem: a case study. J Oper Res Soc 53: 552 558. Li F, Golden B, and Wasil E (2006). The open vehicle routing problem: algorithms, large-scale test problems, and computational results. Comput Oper Res, to appear. Pisinger D and Ropke S (2006). A general heuristic for vehicle routing problems. Comput Oper Res, to appear. Reinelt G. (1991). The Traveling Salesman: Computational Solutions for TSP Applications, Springer- Verlag, Berlin. Rochet Y and Taillard ED (1995). Probabilistic diversification and intensification in local search for vehicle routing. J Heuristics 1: 147 167. Sariklis D, Powell S (2000). A heuristic method for the open vehicle routing problem. J Oper Res Soc 51: 564 573. Schrage L (1981). Formulation and structure of more complex/realistic routing and scheduling problems. Networks 11: 229 232. Tarantilis CD, Diakoulaki D, Kiranoudis CT (2004). Combination of geographical information system and efficient routing algorithms for real life distribution operations. Eur J Oper Res 152: 437 453. Tarantilis CD, Ioannou G, Kiranoudis CT, Prastacos GP (2005). Solving the open vehicle routing problem via single parameter meta-heuristic algorithm. J Oper Res Soc 56: 588 596. Tarantilis CD, Kiranoudis CT (2002). Distribution of fresh meat. J Food Eng 51: 85 91. Van Breedam A (1994). An analysis of the behavior of heuristics for the vehicle routing problem for a selection of problems with vehicle-related, customer-related, and time-related constraints. PhD thesis, University of Antwerp. 15

Table 1 Parameter Explanation # of values Values n Number of customers. 5 A and B Time Restriction Pair of coefficients used for the number of drivers d. Type of time constraints. 3 pdf of q i Probability density function of demand. 2 W H (x 0,y 0 ) R K1, K2, K3, K4 Dimensions of the rectangular problem space (width and height). Coordinates of the depot at the center of the problem space. The inner rim thickness of the problem space in which driver locations are dispersed randomly. Coefficients to be used in vehicle capacity, maximum route duration and time deadline parameters, respectively. 2 For TB-1 problems: 10, 15, 20, 25, 30 For TB-2 problems: 100, 200, 300, 400, 500 For TB-1 problems: A=9 and B={1,2} For TB-2 problems: A=20 and B={0,10} i. No time restrictions. ii. A standard maximum route duration. iii. A standard maximum route duration and customer-specific time deadlines on arrivals. i. Normal with µ = 20 and σ 2 = 36 ii. Unit demand (for TB-1 problems only.) 1 W = 300, H = 250 1 (x 0,y 0 ) = (0,0) 1 R = 50 1 K1 = 1.2, K2 = 1.0, K3 = 1.0, K4 = 1.5 st i Customer service times. 1 st i = 0 i IC SEED Initial random number seed. 5 82, 325, 1283, 1789, 2005 16

Table 2 Parameter Explanation Formula d Q Number of drivers. Vehicle capacity. MaxDur Maximum route duration for each driver. TD i Time deadline for customer i. n d = + B A qi i q =, qmax = max{ qi }, d i Q = K1 max{ q, qmax } NI MaxDur = K 2 max{ a j } j ID NI TD = K a, K U(K3, K4) i i 17

Table 3 Option Explanation Value ITERLIM NODELIM OPTCR RESLIM Simplex algorithm iteration limit applied per node of the search tree. Maximum number of nodes solved before the algorithm terminates, without reaching optimality. Relative optimality criterion for a MIP problem. Solution time limit for the MIP solver. 1.0e7 if n 25, 1.0e6 otherwise. 500,000 0.5% if n 25, 0.05% otherwise. 4 hours if n 25, 3 hours otherwise. SCAIND Modified, more aggressive scaling method that can produce improvements on some problems. 1 TRELIM Maximum space in memory for the branch and cut tree. 1,536 megabytes 18

Table 4 Customers Problems solved Proven optimal solutions Number of Normal completions Terminations due to node limit Failures to find a feasible integer solution 10 60 34 60 0 0 15 60 9 59 1 0 20 60 1 31 29 1 25 60 0 12 48 3 30 60 0 4 56 7 19

Table 5 NoTC Problems MaxDur Problems TD Problems Initial Solution % Avg. Gap a % Max. Gap b N c Cplex N Best_OTS d % Avg. Gap % Max. Gap N Cplex N Best_OTS % Avg. Gap % Max. Gap N Cplex N Best_OTS CW 0.7 6.6 5 29 1.1 3.6 3 33 0.9 0.0 0 27 NI 0.9 3.6 3 29 1.2 3.6 2 33 0.8 0.0 0 25 a,b This is the gap between the best OTS and Cplex solutions. A negative gap means that Best_OTS outperforms Cplex. c,d N Best_OTS is the number of times Best_OTS leads CPLEX, while N Cplex is the number of times Cplex finds a better total distance value than Best_OTS. 20

Table 6 n D No.Prob. Avg. z Best Avg. z Avg OTS in 20 runs for each problem Average Std.Dev. of CPU time (s) CPU times Avg. z Cplex GAMS/Cplex Average CPU time (s) Std.Dev. of CPU times 10 2 10 828.14 828.26 1.95 0.41 828.14 1.30 2.30 3 10 960.34 961.22 1.83 0.55 960.34 1.24 0.78 15 2 10 909.77 909.81 2.06 0.39 909.77 4.22 5.33 3 10 1026.38 1030.88 2.05 0.51 1026.38 93.91 122.91 20 3 10 1115.56 1115.73 2.46 0.75 1115.77 355.95 277.88 4 10 1188.76 1202.13 2.34 0.74 1189.39 589.31 307.49 25 3 10 1243.54 1244.25 2.69 0.53 1263.20 824.33 512.64 4 10 1346.61 1367.29 2.58 0.55 1361.98 1285.89 169.82 30 4 10 1404.67 1426.86 2.89 0.71 1438.27 1494.98 135.36 5 10 1489.88 1509.57 3.15 1.24 1552.32 1566.73 216.75 n No. Prob. Average Gap Maximum Gap Number of times Best_OTS > CPLEX Number of times Best_OTS < CPLEX 10 20 0.0 0.0 0 0 15 20 0.0 0.0 0 0 20 20 0.0 0.0 0 4 25 20 1.3 0.0 0 11 30 20 3.0 3.6 3 14 Cum. Res. 100 0.9 3.6 3 29 21

Table 7 n d No.Prob. Avg. z Best Avg. z Avg OTS in 20 runs for each problem Average Std.Dev. of CPU time (s) CPU times Avg. z Cplex GAMS/Cplex Average CPU time (s) Std.Dev. of CPU times 10 2 10 828.14 828.14 1.68 0.66 828.14 4.16 8.75 3 10 971.68 971.84 1.52 0.41 971.68 5.82 8.80 15 2 10 909.77 909.77 1.87 0.17 909.77 21.47 37.63 3 10 1026.38 1031.72 2.06 0.52 1026.38 183.68 247.52 20 3 10 1115.56 1115.68 2.30 0.66 1115.67 854.48 687.95 4 10 1188.76 1196.98 2.37 0.57 1189.42 1418.27 771.85 25 3 10 1252.19 1252.70 2.61 0.57 1266.71 1966.08 1122.18 4 10 1346.61 1357.70 2.92 0.90 1384.35 2867.50 417.39 30 4 10 1412.12 1431.15 2.96 0.88 1499.36 4132.21 695.05 5 10 1486.06 1504.51 3.75 1.99 1538.33 4444.48 710.83 n No. Prob. Average Gap Maximum Gap Number of times Best_OTS > CPLEX Number of times Best_OTS < CPLEX 10 20 0.0 0.0 0 0 15 20 0.0 0.0 0 0 20 20 0.0 0.0 0 3 25 20 1.7 0.0 0 14 30 20 4.3 3.6 2 16 Cum. Res. 100 1.2 3.6 2 33 22

Table 8 n d No.Prob. Avg. z Best Avg. z Avg OTS in 20 runs for each problem Average Std.Dev. of CPU time (s) CPU times Avg. z Cplex GAMS/Cplex Average CPU time (s) Std.Dev. of CPU times 10 2 10 871.92 871.92 2.72 1.98 871.92 0.15 0.27 3 10 1007.70 1007.77 2.18 1.61 1007.70 0.27 0.32 15 2 10 970.23 970.23 3.07 2.11 970.24 1.98 3.26 3 10 1133.85 1135.44 2.11 0.64 1133.85 9.52 20.12 20 3 10 1164.61 1164.61 2.39 0.95 1164.61 37.07 44.02 4 10 1287.16 1287.16 3.20 1.99 1243.32 791.67 1038.69 25 3 10 1375.22 1375.22 3.59 1.94 1379.61 2185.65 1192.74 4 10 1508.83 1511.75 3.11 1.08 1468.47 2387.83 1617.21 30 4 10 1536.58 1542.70 3.36 0.94 1516.08 3846.37 1375.81 5 10 1589.71 1598.49 3.46 1.50 1663.56 3926.32 2224.27 n No. Prob. Average Gap Maximum Gap Number of times Best_OTS > CPLEX Number of times Best_OTS < CPLEX 10 20 0.0 0.0 0 0 15 20 0.0 0.0 0 0 20 20 0.0 0.0 0 2 25 20 0.5 0.0 0 7 30 20 3.4 0.0 0 16 Cum. Res. 100 0.8 0.0 0 25 23

Table 9 n d No.Prob. Avg. z Best Avg. z Avg NoTC problems MaxDur problems TD problems Avg. CPU time (s) Std.Dev. Avg. z Best Avg. z Avg Avg. CPU time (s) Std.Dev. Avg. z Best Avg. z Avg Avg. CPU time (s) 100 5 5 2291.06 2329.17 16.72 6.07 2293.78 2334.61 16.53 5.86 2547.92 2570.13 15.18 7.31 15 5 3190.74 3304.09 18.39 9.53 3192.83 3326.77 17.21 9.76 3291.70 3450.30 15.41 6.72 200 10 5 3392.92 3438.74 69.24 20.28 3395.75 3437.94 67.09 21.64 3619.62 3835.79 57.65 21.18 20 5 4355.59 4478.58 102.29 38.49 4351.15 4470.77 102.49 34.83 4497.69 4644.24 66.01 18.39 300 15 5 4351.89 4428.78 178.53 30.21 4359.54 4432.77 180.39 26.60 4532.38 4673.49 143.11 39.91 25 5 5397.74 5500.99 286.99 93.11 5390.13 5498.31 274.60 88.08 5605.75 5813.96 165.78 21.85 400 20 5 5218.52 5302.70 329.71 47.78 5207.87 5305.60 332.53 43.61 5392.95 5563.98 272.25 69.55 30 5 6225.98 6306.70 367.18 54.39 6225.70 6305.87 357.80 53.55 6412.03 6576.44 279.45 38.27 500 25 5 6025.26 6105.73 611.51 113.99 6034.14 6110.43 593.91 103.01 6247.30 6374.12 453.06 96.82 35 5 7067.51 7162.63 798.59 228.12 7070.31 7153.80 762.75 224.24 7232.79 7406.12 450.56 52.92 Std.Dev. 24