The open vehicle routing problem with driver nodes and time

The open vehicle routing problem with driver nodes and
time deadlines
D Aksen1, Z Özyurt1 and N Aras2∗
1
Koç University, İstanbul, Turkey; and 2Boğ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: [email protected]
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 xij equals 1 if node
j is visited immediately after node i by a vehicle, 0 otherwise. The continuous variable ui 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 ai. The
demand of customer i is qi and the uniform vehicle capacity is Q. The distance between nodes i and j is cij
while the traveling time between them is shown by tij. For the purpose of simplicity, the velocity of
vehicles is assumed to be constant and equal to 1.0, thus tij = cij for each arc (i,j). The service time at
customer node i is denoted by sti. TDi 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 max {TDi + sti + tij } to avoid any scaling
( i , j )∈I \{ 0}
problem in the model.
minimize z =
∑ c0 j x0 j + ∑ ∑ cij xij + ∑ ∑ cij xij
j∈IC
subject to:
i∈IC j∈IC
i≠ j
∑
i∈I \{0}
x0i = d
(1)
i∈IC j∈ID
(2)
4
∑
∀i∈I \{0}
(3)
∀i∈IC
(4)
ui − u j + Q xij + ( Q − qi − q j ) x ji ≤ Q − q j
∀(i,j)∈IC, i≠j
(5)
qi ≤ ui ≤ Q
∀i∈IC
(6)
a j ≤ ai + sti + tij + (1 − xij ) M
∀i∈IC, ∀j∈I \{0}, i≠j
(7)
a j ≥ ai + sti + tij − (1 − xij ) M
∀i∈IC, ∀j∈I \{0}, i≠j
(8)
ai ≤ TDi
∀i∈ I \{0}
(9)
j∈IC ∪{0}
i≠ j
∑
j∈I \{0}
i≠ j
x ji = 1
xij = 1
a0 = 0
xij ∈ {0,1}
ai ≥ 0
(10)
∀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 x0j 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, x0j 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 xij’s and to the
2
nonnegativity of ai’s. The formulation in (1)–(11) has exactly n 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
∑ ⎣⎡ D(r ) + pcVc (r ) + p tVt (r )⎦⎤
where D(r) denotes the
r =1
total distance traveled on route r, d is the number of routes (drivers), Vc denotes overload (total demand of
customers in route r – vehicle capacity), Vt denotes the total tardiness in route r, pc and pt 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:
∑
probi =
j∈{1,2,3}
j ≠i
2 ×
∑
num j
j∈{1,2,3}
num j
∀i ∈ {1, 2,3}
(12)
In this formula, probi is the probability of choosing move i, where i is one of the three move operators,
and numj denotes the total number of times move j is used so far in the previous iterations. As numi
increases, probi decreases. Computing probi 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 aNI 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 Gap = 100 ×
Best_OTS − CPLEX
CPLEX
. Consequently, a negative gap is in
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 (zBest and zAvg), 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.
: number of neighbors generated using ith move, where i = 1,2,3.
numi
probi
: probability of selecting ith 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 numi := 1 (i =1,2,3).
While (num_iter ≤ max_iter) and (num_nonimp_iter ≤ max_nonimp_iter) do
Update probi’s according to the formula in (12).
num_neigh := 0.
While (num_neigh ≤ size_neigh) do
Select one of the move operators with probabilities probi (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.
numk := numk + 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, SpringerVerlag, 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
n
A and B
Time
Restriction
Explanation
# of values
Values
Number of customers.
5
For TB-1 problems:
For TB-2 problems:
10, 15, 20, 25, 30
100, 200, 300, 400, 500
Pair of coefficients used for the number
of drivers d.
2
For TB-1 problems:
For TB-2 problems:
A=9 and B={1,2}
A=20 and B={0,10}
Type of time constraints.
3
i. No time restrictions.
ii. A standard maximum route duration.
iii. A standard maximum route duration and
customer-specific time deadlines on arrivals.
pdf of qi
Probability density function of demand.
2
i. Normal with µ = 20 and σ 2 = 36
ii. Unit demand (for TB-1 problems only.)
W×H
Dimensions of the rectangular problem
space (width and height).
1
W = 300, H = 250
(x0,y0)
Coordinates of the depot at the center of
the problem space.
1
(x0,y0) = (0,0)
R
The inner rim thickness of the problem
space in which driver locations are
dispersed randomly.
1
R = 50
K1, K2,
K3, K4
Coefficients to be used in vehicle
capacity, maximum route duration and
time deadline parameters, respectively.
1
K1 = 1.2, K2 = 1.0, K3 = 1.0, K4 = 1.5
Customer service times.
1
sti = 0 ∀i∈IC
Initial random number seed.
5
82, 325, 1283, 1789, 2005
sti
SEED
16
Table 2
Parameter
Explanation
d
Number of drivers.
Q
Vehicle capacity.
Formula
⎢ n ⎥+B
⎢⎣ A ⎥⎦
⎡ ∑ i qi ⎤
q =⎢
⎥ , qmax = max { qi },
i
⎢ d ⎥
d=
Q = K 1 × max{ q , qmax }
MaxDur
TDi
⎡
⎢
⎤
⎥
Maximum route duration
for each driver.
MaxDur = ⎢K 2 × max{ a NI
j }⎥
Time deadline for customer i.
TDi = ⎡⎢K
× aiNI
j∈ID
⎤⎥ , K ∈ U(K3, K4)
17
Table 3
Option
Explanation
Value
ITERLIM
Simplex algorithm iteration limit applied per node of the
search tree.
1.0e7 if n ≥ 25,
1.0e6 otherwise.
NODELIM
Maximum number of nodes solved before the algorithm
terminates, without reaching optimality.
500,000
OPTCR
Relative optimality criterion for a MIP problem.
0.5% if n ≥ 25,
0.05% otherwise.
RESLIM
Solution time limit for the MIP solver.
4 hours if n ≥ 25,
3 hours otherwise.
SCAIND
TRELIM
Modified, more aggressive scaling method that can produce
improvements on some problems.
Maximum space in memory for the branch and cut tree.
1
1,536 megabytes
18
Table 4
Number of
Customers Problems solved
Proven optimal
solutions
Normal
Terminations
completions 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
Initial
Solution
% Avg. % Max.
Gap a Gap b
c
MaxDur Problems
d
NCplex
NBest_OTS
% Avg. % Max.
Gap
Gap
TD Problems
NCplex
NBest_OTS
% Avg. % Max.
Gap
Gap
NCplex
NBest_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
NBest_OTS is the number of times Best_OTS leads CPLEX, while NCplex is the number of times Cplex finds a better total distance
value than Best_OTS.
20
Table 6
OTS in 20 runs for each problem
n
D
No.Prob.
10
2
3
15
20
25
30
GAMS/Cplex
Average Std.Dev. of
CPU time (s) CPU times
Avg. zCplex
Average Std.Dev. of
CPU time (s) CPU times
Avg. zBest
Avg. zAvg
10
828.14
828.26
1.95
0.41
828.14
1.30
2.30
10
960.34
961.22
1.83
0.55
960.34
1.24
0.78
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
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
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
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
Number of times
Best_OTS > CPLEX
Number of times
Best_OTS < CPLEX
0.0
0
0
0.0
0.0
0
0
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
n
No.
Prob.
10
20
0.0
15
20
20
Average Gap Maximum Gap
21
Table 7
OTS in 20 runs for each problem
n
d
No.Prob.
10
2
15
20
25
30
GAMS/Cplex
Average Std.Dev. of
CPU time (s) CPU times
Avg. zCplex
Average Std.Dev. of
CPU time (s) CPU times
Avg. zBest
Avg. zAvg
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
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
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
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
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
Number of times
Best_OTS > CPLEX
Number of times
Best_OTS < CPLEX
0.0
0
0
0.0
0.0
0
0
20
0.0
0.0
0
3
25
20
–1.7
0.0
0
14
30
20
–4.3
3.6
2
16
100
–1.2
3.6
2
33
n
No.
Prob.
10
20
0.0
15
20
20
Cum. Res.
Average Gap Maximum Gap
22
Table 8
OTS in 20 runs for each problem
n
d
No.Prob.
10
2
15
20
25
30
GAMS/Cplex
Average Std.Dev. of
CPU time (s) CPU times
Avg. zCplex
Average Std.Dev. of
CPU time (s) CPU times
Avg. zBest
Avg. zAvg
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
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
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
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
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
Number of times
Best_OTS > CPLEX
Number of times
Best_OTS < CPLEX
0.0
0
0
0.0
0.0
0
0
20
0.0
0.0
0
2
25
20
–0.5
0.0
0
7
30
20
–3.4
0.0
0
16
100
–0.8
0.0
0
25
n
No.
Prob.
10
20
0.0
15
20
20
Cum. Res.
Average Gap Maximum Gap
23
Table 9
NoTC problems
n
d No.Prob.
Avg. zBest
Avg. zAvg
MaxDur problems
Avg. CPU
time (s) Std.Dev.
Avg. zBest
Avg. zAvg
TD problems
Avg. CPU
time (s) Std.Dev.
Avg. zBest
Avg. zAvg
Avg. CPU
time (s) Std.Dev.
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
24
Table 10
NoTC problems
MaxDur problems
Choice
Classical
%(Choice
Classical –
Best_OTS)
Avg.
Avg.
zCW-LPO
Avg.
zNI-LPO
zBest_OTS
2293.78
2394.77
2526.54
CW-LPO
4.22
7.84
3192.83
3462.19
3605.76
CW-LPO
CW-LPO
12.08
3395.75
3858.99
3976.39
5074.21
CW-LPO
10.72
4351.15
4878.31
4778.50
5084.62
CW-LPO
8.93
4359.54
5397.74
5959.78
6648.67
CW-LPO
9.43
400 20
5218.52
5894.28
6236.98
CW-LPO
30
6225.98
6844.45
7271.28
500 25
6025.26
6530.11
35
7067.51
7475.66
Avg.
Avg.
zBest_OTS
5
zCW-LPO
Avg.
zNI-LPO
Choice
Classical
%(Choice
Classical –
Best_OTS)
2547.92
infeasible
2773.65
NI-LPO
8.14
7.78
3291.70
infeasible
3883.54
NI-LPO
15.24
CW-LPO
12.00
3619.62
infeasible
4525.36
NI-LPO
20.01
5118.32
CW-LPO
10.81
4497.69
infeasible
5811.55
NI-LPO
22.61
4753.74
5146.23
CW-LPO
8.29
4532.38
infeasible
5727.61
NI-LPO
20.87
5390.13
5959.78
6631.91
CW-LPO
9.56
5605.75
infeasible
7252.67
NI-LPO
22.71
11.46
5207.87
5894.28
6259.36
CW-LPO
11.65
5392.95
infeasible
6900.38
NI-LPO
21.85
CW-LPO
9.04
6225.70
6844.45
7252.87
CW-LPO
9.04
6412.03
infeasible
7583.49
NI-LPO
15.45
7125.86
CW-LPO
7.73
6034.14
6530.11
7135.71
CW-LPO
7.60
6247.30
infeasible
7779.04
NI-LPO
19.69
8279.73
CW-LPO
5.46
7070.31
7475.66
8279.73
CW-LPO
5.42
7232.79
infeasible
8970.87
NI-LPO
19.37
Average
Gap:
8.65
Average
Gap:
8.64
zCW-LPO
Avg.
zNI-LPO
Choice
Classical
2291.06
2381.93
2502.54
CW-LPO
15
3190.74
3462.19
3605.76
200 10
3392.92
3858.99
20
4355.59
300 15
%(Choice
Classical –
Best_OTS)
TD problems
Avg.
Avg.
zBest_OTS
3.81
CW-LPO
3966.00
4878.31
4351.89
25
n
d
100
No. Feas.
Solv. Prob.
50
50
50
50
50
50
50
0
50
Average
Gap:
18.59
25
Table 1
Randomized generation scheme of test problems in TB-1 and TB-2
Table 2
Calculation of several problem parameters
Table 3
GAMS/Cplex options in the mathematical models
Table 4
Indicators for the capability of GAMS/Cplex on TB-1 test problems
Table 5
The effect of initial solution on the problems of TB-1
Table 6
Performance comparison between OTS and Cplex 9.0 on the NoTC problems in TB-1
Table 7
Performance comparison between OTS and Cplex 9.0 on the MaxDur problems in TB-1
Table 8
Performance comparison between OTS and Cplex 9.0 on the TD problems in TB-1
Table 9
Results of OTS for TB-2 problems with 20 runs each
Table 10 Comparison of the best OTS results with classical heuristics on TB-2 problems
26