Viswanathan and Mathur
4.3 Performance of the scheduling heuristic
Next, we took the comparison one step further. We replaced the unrealistic denition of the minimal cycle time based on the vehicle frequency constraint by our more realistic denition based on the required travel times. In the solutions for the 10 test problems, the maximal distance a vehicle travels is 616 km per period. Therefore, we restored our original denition of the minimal cycle time, using a vehicle speed of 616 km per period and solved the same instances again. Table 4.21 shows the results of these test. It turns out that for all out of these instances, a solution can be found that is cheaper than the
`optimum' reported by Sindhuchao et al., with an average improvement of 4%.
Table 4.21: `Optimal' cost vs. improved solutions
`Optimum' Solution Gap
1 2778.1 2722.4 -2.01%
2 2645.8 2590.2 -2.10%
3 2598.6 2597.1 -0.06%
4 2761.2 2533.7 -8.24%
5 2726.0 2678.0 -1.76%
6 2699.3 2492.0 -7.68%
7 2526.7 2435.7 -3.60%
8 2426.2 2366.8 -2.45%
9 2577.2 2507.4 -2.71%
10 2825.5 2580.7 -8.66%
Avg 2656.5 2550.4 -3.99%
4.3 Performance of the scheduling heuristic
In this section, the best-t insertion heuristic for scheduling regular distribution patterns under driving time restrictions is evaluated. Similar experiments as those reported in this section can be conducted for the other variants of the scheduling problem, but are not reported here.
Although the problem of cyclically scheduling regular distribution patterns under driving time restrictions is NP-hard, a branch-and-bound algorithm is used for evaluating the heuristic. For the branch-and-bound algorithm, Con-straint (4.1) is added to the model given in Table 2.13. This conCon-straint explicitly species the equidistance constraint on the X-variables that is implicit in the original model through Constraints (2.57) and (2.58). The constraints states that (i) if the l'th iteration of tour i is made on day t, then the (l + 1)'th iteration is made TkCi days later, and (ii) if the l'th iteration of tour i is not made on day t, then the (l + 1)'th iteration is not made TkCi days later.
Xilt = Xi;l+1t+TSki 8<
:
i = 1::n l = 1::ki 1
t = 1::lTkSi (4.1)
However, the above constraint is non-linear because the variable TS is used as an index. But since we know that TS is an integer multiple of the base cycle time B between TMIN and TMAX, a linear version of the constraint can be written as follows.
Xilt
TMAXX=B m=TMIN=B
Xi;l+1t+mkiB 8<
:
i = 1::n l = 1::ki 1
t = 1::lTMAXki (4.2) Adding Constraint (4.2) to the model helps in reducing the calculation times for the branch-and-bound procedure. To evaluate the proposed heuristic, a set of 100 randomly generated instances is created, for which the optimal solution is determined and then compared to the heuristic solution. To further speed up the branch-and-bound algorithm that gives the optimal solution, the heuristic is used as an initial solution.
The test instances are generated as follows. First, the number of tours n is gen-erated randomly between 3 and 20. Then, the tour frequencies kiare generated randomly from the set of frequencies f1; 2; 3; 4; 6; 8g and the tour durations TDi
are generated randomly between 1 and 8 hours. Frequencies of 5 and 7 are not considered because this would increase the base cycle time dramatically, mak-ing the schedules very sparse, which is very unrealistic. Customer demand rates are not considered in the experiments, such that the maximal cycle time TMAX is not dened and a feasible schedule can be found for all instances. In the branch-and-bound algorithm, the cycle time that is found by the insertion heuristic is used as TMAX.
The heuristic procedure and the branch-and-bound algorithm are both imple-mented in Microsoft Visual C++, the latter by building the model with ILOG Concert Technology and solving the model using the ILOG Cplex solver.
Table 4.22 shows the results of our computational experiments. For all in-stances i, the number of tours n and the base cycle time B in that instance are displayed. Then, the cycle time that the heuristic solution approach returns (Sol) and the optimal cycle time found by the branch-and-bound algorithm (Opt) are reported. The nal column displays the gap between the heuristic and the optimal solution. This gap is dened as the dierence between both, divided by the base cycle time B. The gap thus reports how many times the cycle time was increased above the optimum in the heuristic.
Our insertion heuristic nds the optimal solution for 79 out of 100 instances.
For 20 instances, the gap is 1, meaning that the heuristic had to increase
4.3 Performance of the scheduling heuristic 107
Table 4.22: Computational results for the 100 test instances
i n B Sol Opt Gap i n B Sol Opt Gap
the cycle time once too much before nding a feasible solution. For only one instance, number 92, the heuristic solution is two times the base cycle time
above the optimum. Note that the instances for which the heuristic does not nd the optimum are instances with a relatively large number of tours. Instance 43 is marked with an asterisk because the branch-and-bound could not prove the optimality even after 12 hours.
4.4 Conclusion
This chapter proves the value of our modelling and solution approach. First, the design of experiments shows that our solution approach is highly generic and exible in nding cost trade-os for problem instances with widely varying characteristics. Next, the comparison to two approaches found in the literature shows that (i) the solutions we obtain are very close to optimality, and (ii) the existing heuristic solution approaches from the literature are outperformed by our approach that uses the more general routing concept of distribution patterns. Finally, another set of experiments shows the eectiveness of the best-t insertion heuristic for regular scheduling under driving time restrictions.