Advanced Single Machine Models (Deterministic)
Algorithm 4.4.5 Finding Optimal Tour for TSP) Step 1
b3
b2 b1
a(3)
a(2)
a(1) b3
b2 b1
a(3)
a(2)
a(1) Fig. 4.7Situation in Example 4.4.4
lower node is of Type I and of Type II if its lower node is of Type II. From the previous arguments it is easy to deduce that if the swaps I(j, j+ 1) of Type I are performed in decreasing order of the node indices, followed by swaps of Type II in increasing order of the node indices, a single tour is obtained without changing anycΦ∗I(j, j+ 1) involved in the swaps. The following algorithmsums up the entire procedure in detail.
Algorithm 4.4.5 (Finding Optimal Tour for TSP)
90 4 Advanced Single Machine Models (Deterministic) j+ 1in another (breakties arbitrarily).
Insert the undirected arcAj,j+1 into the graph and
repeat this step until all components in the undirected graph are connected.
Step 5.
Divide the arcs selected in Step 4 into two groups.
ThoseAj,j+1 for which aφ∗(j)≥bj go in Group 1;
the remaining go in Group 2.
Step 6.
Find the largest indexj1 such that Aj1,j1+1 is in Group 1.
Find the second largestj2, and so on.
Find the smallest indexk1 such that Ak1,k1+1 is in Group 2.
Find the second smallestk2, and so on.
Step 7.
The optimal tourΦ∗∗ is constructed by applying the following sequence of interchanges to the permutationΦ∗:
Φ∗∗=Φ∗I(j1, j1+1)I(j2, j2+1)...I(jl, jl+1)I(k1, k1+1)I(k2, k2+1)...I(km, km+1).
||
The total cost of the resulting tour may be viewed as consisting of two components. One is the cost of the unrestricted permutation mappingΦ∗before the interchanges are performed. The other is the additional cost caused by the interchanges.
That this algorithmactually leads to the optimal tour can be shown in two steps. First, a lower bound is established for the total cost of an arbitrary permutation mapping. Second, it is shown that this lower bound, in case the permutation mapping represents an actual tour, is greater than or equal to the total cost of the tour constructed in the algorithm. These two steps then prove the optimality of the tour of the algorithm. As this proof is somewhat intricate the reader is referred to the literature for its details.
A careful analysis of the algorithmestablishes that the overall running time is bounded byO(n2).
Example 4.4.6 (Finding Optimal Tour for TSP) Consider 7 cities with the parameters given below.
cities 0 1 2 3 4 5 6 bj 1 15 26 40 3 19 31 aj 7 16 22 18 4 45 34
Step 1. Reordering the cities in such a way that bj ≤ bj+1 results in the ordering below and theφ∗(j) below:
cities 0 1 2 3 4 5 6 bj 1 3 15 19 26 31 40 aφ∗(j) 4 7 16 18 22 34 45 φ∗(j) 1 0 2 6 4 5 3
Step 2.Formthe undirected graph with j connected φ∗(j). Nodes 0 and 1 have to be connected with one another; nodes 3 and 6 have to be connected with one another; nodes 2, 4 and 5 are independent (each one of these three nodes is connected with itself).
Step 3.Computation of the interchange costscΦ∗I(j, j+ 1) gives cΦ∗I(0,1) = 0
cΦ∗I(1,2) = 2(15−7) = 16 cΦ∗I(2,3) = 2(18−16) = 4 cΦ∗I(3,4) = 2(22−19) = 6 cΦ∗I(4,5) = 2(31−26) = 10 cΦ∗I(5,6) = 2(40−34) = 12
Step 4.The undirected arcs A1,2, A2,3, A3,4 and A4,5 are inserted into the graph.
Step 5.The four arcs have to be partitioned into the two groups. In order to determine this, eachbj has to be compared to the correspondingaφ∗(j).
arcs bj aφ∗(j) Group A1,2 b1= 3 aφ∗(1)=a0= 7 1 A2,3 b2= 15 aφ∗(2)=a2= 16 1 A3,4 b3= 19 aφ∗(3)=a6= 18 2 A4,5 b4= 26 aφ∗(4)=a4= 22 2
Step 6.j1= 2,j2= 1, k1= 3 and k2= 4.
Step 7.The optimal tour is obtained after the following interchanges.
Φ∗∗=Φ∗I(2,3)I(1,2)I(3,4)I(4,5).
So the optimal tour is
0→1→6→3→4→5→2→0.
92 4 Advanced Single Machine Models (Deterministic)
The cost of this tour is
3 + 15 + 5 + 3 + 8 + 15 + 8 = 57 ||
In practice, when the setup times have an arbitrary structure, the myopic Shortest Setup Time (SST) firstrule is often used. This rule implies that when- ever a job is completed, the job with the smallest setup time is selected to go next. This SST rule is equivalent to theNearest Neighbour rule for the TSP.
Applying the SST rule to the instance in Example 4.4.6 results in the tour 0→1→2→6→3→4→5→0.
The associated cost is
3 + 13 + 3 + 5 + 3 + 8 + 24 = 59.
This tour is not optimal.
Even though the SST rule usually leads to reasonable schedules, there are instances where the ratio
Cmax(SST)−n j=1pj
Cmax(OP T)−n j=1pj
is quite large. Nevertheless, the SST rule is often used as an integral component within more elaborate dispatching rules (see Section 14.2).
4.5 Job Families with Setup Times
Considern jobs that belong to F different job families. Jobs from the same family may have different processing times, but they can be processed one after another without requiring any setup in between. However, if the machine switches over fromone family to another, say fromfamilyg to family h, then a setup is required. If the setup time is sequence dependent, it is denoted by sgh. If the setup time depends only on the family that is about to start, it is denoted bysh. If it does not depend on either family, it is denoted bys. In what follows, sequence dependent setup times satisfy the so-called triangle inequality, i.e.,sf g+sgh≥sf h for any three familiesf, g,andh. (The reverse inequality would not make sense, since one always would do then two setups instead of the single longer setup.) If the very first job to be processed in the sequence belongs to familyh, then the setup at time 0 iss0h.
This section does not consider the makespan objective, since it has already been discussed in a fair amount of detail in the previous section. This section does cover the total weighted completion time objective, the maximum lateness objective, and the number of tardy jobs objective.
Consider the problem1| fmls, sgh |
wjCj. Before describing a backward dynamic programming procedure for this problem it is necessary to establish some properties of optimal schedules. Any schedule consists ofF subsequences of jobs that are intertwined with one another and each subsequence corresponds to one family. The next result focuses on the subsequences in optimal schedules.
Lemma 4.5.1. In an optimal schedule for 1 | fmls, sgh |
wjCj jobs from the same family are ordered according to WSPT.
Proof. Consider an optimal sequence σ∗ = σ1, j, σ2, k, σ3, where jobs j and k are from the same family and σ1, σ2 and σ3 are arbitrary partial sequences.
The partial sequenceσ2 does not contain any job fromthe family that jobs j andkbelong to. It suffices to show that ifwj/pj< wk/pk, then either sequence σ=σ1, k, j, σ2, σ3or sequenceσ=σ1, σ2, k, j, σ3has a smaller total weighted completion time. It can be shown that, because of the triangle inequality that applies to setup times, the interchanges yielding sequencesσ andσreduce the total setup time (subsequenceσ3starts in sequenceσ as well as in sequenceσ earlier than in sequenceσ∗). The setup times can therefore be ignored.
It is possible to replace two consecutive jobs u and v in a sequence by a single composite job r with processing time pr = pu +pv and weight wr = wu+wv. This increases the total weighted completion time of the sequence by an amount wupv. Replacing the partial sequence σ2 in σ∗, σ and σ by an accordingly defined composite job , changes all three objective values by the same constant (independently from the position ofσ2in the sequence). So, substituting a partial sequence with a composite job changes the overall cost only by a constant; comparisons of the schedules based on the values of the objective function will yield the same result.
Now it is easy to see (through a standard adjacent pairwise interchange argument), that since jobkhas a higher priority than jobj, either the composite job,has a higher priority than jobj implying thatσ is better thanσ∗ or the composite job , has a lower priority than job k implying that σ is better
thanσ∗.
In order to describe a backward dynamic programming procedure, some no- tation has to be introduced. Letng denote the number of jobs from family g.
Let (j, g) refer to job j fromfamily g, j = 1, . . . , ng; it has a processing time pjg and a weightwjg. Without loss of generality one can assume that
w1g
p1g ≥ w2g
p2g ≥ · · · ≥wng,g png,g
for allg= 1, . . . , F.
LetV(q1, . . . , qF, h) denote the minimum total weighted completion time of schedules that contain jobs (qg, g), . . . ,(ng, g) forg= 1, . . . , F where job (qh, h) fromfamilyhis the first one to be processed starting at time 0. In other words, V(q1, . . . , qF, h) defines the minimum total weighted completion time among all schedules that contain for each family g, g = 1, . . . , F, allng−qg+ 1 lowest
94 4 Advanced Single Machine Models (Deterministic) priority jobs (qg, g), . . . ,(ng, g) and that starts at time 0 with a batch of jobs fromfamilyh. Note thatqh≤nh, and that the setup for the batch of jobs of familyhat the start of the schedule is not included.
A backward dynamic programming algorithm can now be described as fol- lows.
Algorithm 4.5.2 (Minimizing the Total Weighted Completion Time)