A half-product based approximation scheme for agreeably weighted completion time variance Jinliang Cheng a and Wieslaw Kubiak b Faculty of Business Administration Memorial University of Newfoundland St. John s, NF, Canada, A1B 3X5 a Jim Cheng@jdedwards.com b wkubiak@mun.ca Abstract A recent INFORMS Journal on Computing paper presents a fully polynomial time approximation scheme for minimizing the completion time variance with agreeable weights on a single machine. This paper presents a much faster scheme for this problem. Keywords: scheduling; fully polynomial time approximation scheme; weighted completion time variance; agreeable weights, half-products. 1 Introduction Logistics, that is the activities required to manage the flow of goods, information and money between consumers and suppliers, in just-in-time systems is governed by a simple yet fundamental rule which is to schedule jobs, for instance customer orders, as close as possible to their assigned due dates. As jobs often compete for completion at the same common due date a schedule is needed to set the sequence in which the jobs receive all resources for their Correspondence to: Wieslaw Kubiak. 1
completion, for instance a machine. The schedule, however, must ensure that all jobs are treated as equally as possible given their length and relative importance. To achieve this goal a weighted completion time variance, which is equivalent to weighted squared deviation about a common unrestrictive due date, has been suggested in the literature, see Merten and Muller [8], Kanet [4], and Cai [3], as an objective function for scheduling to capture the equality. The weighted completion time variance problem has been introduced by Merten and Muller [8] who motivated the variance performance measure by computer file organization problems where it is important to provide uniform response time to users. Kanet [4] later argued that the measure is applicable to any service and manufacturing setting where it is desirable to provide jobs or customers with approximately the same level of service. In the weighted completion time variance (WCTV) problem, there are n nonpreemptive jobs to be scheduled for processing on a single machine. Associated with job j are an integer processing time p j > 0 and an integer weight w j 0. All jobs are independent, available at time 0, and indexed such that p 1 p 2... p n. Then, the problem is to find a schedule s that minimizes the weighted completion time variance, n wctv(s) = w j (C j C) 2, (1) j=1 where C j is the completion time of job j in s, C is the mean weighted completion time of s, n C = 1/W w j C j, (2) j=1 and W = n j=1 w j is the sum of weights. Kubiak [5] has shown that WCTV is NP-hard for equal weights. However, it remains open whether the general WCTV problem is strongly NP-hard. Cai [3] has introduced a special case of WCTV with agreeable weights, the AWCTV problem. There, we have that p i < p j implies w i w j for all i, j. Therefore, for AWCTV, we have p 1 p 2... p n and w 1 w 2... w n. (3) The introduction of the agreeable weights case of WCTV has been motivated by the study of other scheduling problems with agreeable weights by Lawler, 2
for instance by his study of the weighted number of tardy jobs on a single machine, see Blazewicz et al [2] for details. Our goal in this paper is to find an algorithm producing a schedule within a given relative error from an optimal one. More precisely, for a given ε > 0 (relative error), schedule s is called an ε-schedule if wctv(s) wctv(s ) ε wctv(s ), where s is an optimal schedule. An algorithm {H ε } is called a fully polynomial time approximation scheme (FPTAS) for AWCTV if it finds an ε-schedule for any ε > 0 and any instance of AWCTV and does so in time which is polynomial in n, log p n, log w 1, and 1/ε. Cai [3] derives an approximation scheme for AWCTV. This scheme becomes fully polynomial when the weights are polynomially bounded in the number of jobs n. Woeginger [9] shows a fully polynomial time approximation scheme running in O(log 5 (max{p n, w 1, n, 1/ε})n 5 /ε 5 ) time. In this paper, we propose a more efficient fully polynomial time approximation scheme running in O(log(max{p n, w 1, n})n 4 /ε) time. An O(n 2 /ε) fully polynomial time approximation scheme has been recently obtained by Kubiak et. al. [7] for WCTV with equal weights. Our approach is as follows. We first reformulate the AWCTV problem as a minimization of (0,1) quadratic program following the main idea of Kubiak [6]. The program has a special form, called half-product. The half product is a pseudo-boolean quadratic function of the following form f(x) = 1 i<j n a i b j x i x j c i x i, where vectors c = (c 1,..., c n ), a = (a 1,..., a n ) 0, and b = (b 1,..., b n ) 0 are integer. Badics and Boros [1] propose an O(log(max{p n, w 1, n})n 2 /ε) fully polynomial time approximation scheme for minimization of any halfproduct. We then prove that an ε/(4n 2 1)-solution to the half-product minimization is an ɛ-solution to the original AWCTV problem, thus obtaining an O(log(max{p n, w 1, n})n 4 /ε) fully polynomial time approximation scheme for AWCTV. 2 V -shaped property and notation Cai [3] shows that any optimal schedule for AWCTV is V -shaped, i.e., jobs, if any, prior to the shortest job are scheduled in nonincreasing order of their processing times, while jobs, if any, after the shortest job are scheduled in 3
nondecreasing order of their processing times. This property is crucial for our reduction of AWCTV to a half-product. Without loss of generality we assume that schedules start at time zero and that there is no idle time in the schedules. Cai also shows bounds on the distances between weighted mean flow time and job completion times in optimal schedules. These bounds will be used to prove a polynomial in n relationship between the accuracy of a fully polynomial time approximation scheme for the half-product and the accuracy of a fully polynomial time approximation scheme for AWCTV. The following lemma summarizes the two results of Cai. Lemma 1 (Cai [3]) Any optimal sequence (s(1), s(2),..., s(n)) of AWCTV must be V-shaped, and the following holds C s(j) C + p s(j) /2, j = 1,..., i 1, and C s(j) C + p s(j) /2, j = i + 1,..., n where s(i ) = 1 is the shortest job. Our reduction uses the following notation: s - a sequence of n jobs. i - the position of the shortest job in s, i.e., s(i ) = 1. V - the set of all V -shaped sequences of n jobs, i.e., V = {s : p s(i) p s(i+1) for 1 i < i and p s(i) p s(i+1) for i i < n}. C s(i) = 1 j i p s(j) - the completion time of the job in position i in s. wcost(s) = 1 j n w s(j) (C s(j) C s(i )) 2 - the weighted cost of s measured with respect to the completion time of the shortest job. (s) = 1 j n w s(j) (C s(j) C s(i )) - the weighted deviation imbalance of s with respect to the completion time of the shortest job. C = 1 j n w s(j) C s(j) /W - the weighted mean flow time of s. wctv(s) = 1 j n w s(j) (C s(j) C) 2 - the weighted completion time variance of s. e s = C s(i ) C s(1) - the maximum early deviation from C s(i ) in s. l s = C s(n) C s(i ) - the maximum late deviation from C s(i ) in s. Owing to Lemma 1 and the fact that no optimal schedule includes idle time, the AWCTV problem can be formulated as follows: (AW CT V ) min {wctv(s)}. s V 4
3 A half-product for AWCTV In this section, we show a half-product for AWCTV. We begin with Lemma 2 which relates the weighted completion time variance wctv(s) with wcost(s) and (s) for a sequence s V. wcost(s) represents total weighted squared deviation of s from the completion time of job 1. The completion time of job 1 may not coincide with the mean weighted completion time of s. In fact, the distance between the completion time of job 1 and the mean weighted completion time of s equals (s) /W. We obtain the weighted completion time variance of s by subtracting 2 (s)/w from wcost(s). Lemma 2 For any sequence s V, Proof First, Then, wctv(s) = 1 j n = 1 j n = C = 1 j n wctv(s) = wcost(s) 2 (s)/w. (4) 1 j n = [ + 2 (s)/w 1 j n w s(j) C s(j) /W w s(j) (C s(j) C s(i )) + W C s(i )]/W = C s(i ) + (s)/w. w s(j) (C s(j) C) 2 w s(j) (C s(j) C s(i ) (s)/w ) 2 w s(j) (C s(j) C s(i )) 2 2 (s)/w = wcost(s) 2 (s)/w. 1 j n w s(j) (C s(j) C s(i )) + We replace the set V of all V -shaped sequences of the jobs (1, 2,..., n) by a set of vectors in { 1, 1} n, where x { 1, 1} n corresponding to s is defined as follows: { 1 if job i appears before job 1 in s, x i = 1 otherwise, 5
for i = 2, 3,..., n. We assume that x 1 = 1. Lemmas 3, 4, 5 and 6 derive the half product for AWCTV. We begin with a simple observation in Lemma 3. Lemma 3 For s V, e s = h α s and l s = h + α s, where h = ( p i )/2 and α s = ( x i p i )/2. Lemma 4 For s V, wcost(s) = 1/4 +1/2 1 j<i n +1/2 w i (P 2 i + θ i ) (W i+1 p i + w i P i )p j x i x j (P i w i + δ i+1 )p i x i, where P i = 1 j i p i, θ i = 1 j i p 2 j, for i = 1, 2,..., n, and δ i = i j n w j p j, W i = i j n w j for i = 1, 2,..., n + 1. Proof For n > 1, let t be a sequence s without job n. In s, job n may appear either at the beginning, and therefore before job 1, or at the end, and therefore after job 1. In the former case, wcost(s) adds w n e 2 t, where e t is maximum early deviation in t, to wcost(t). In the latter case, wcost(s) adds w n (l t +p n ) 2, where l t is maximum late deviation in t, to wcost(t). From Lemma 3, we have e t = P n /2 α t p n /2 and l t + p n = P n /2 + α t + p n /2. Thus, we have wcost(s) = Since x 2 n = 1, we get { wcost(t) + wn (P n /2 + x n α t + x n p n /2) 2 if n 2, 1/2p 2 1w 1 + 1/2p 2 1w 1 x 1 if n = 1. wcost(t) + w n (Pn/4 2 + θ n /4 + 1 j<i n 1 p i p j /2x i x j wcost(s) = +(p n + P n x n )/2 1 p i x i + P n p n x n /2) if n 2, 1/2p 2 1w 1 + 1/2p 2 1w 1 x 1 if n = 1. An induction on n completes the proof. 6
Lemma 5 For s V, 2 (s) = 1/4[ +2 1 j<i n +2δ 1 where P i, δ i, W i are as in Lemma 4. (W i+1 p i + w i P i ) 2 + δ 2 1 (W i+1 p i + w i P i )(W j+1 p j + w j P j )x i x j (W i+1 p i + w i P i )x i ], Proof For n > 1, let t be a sequence s without job n. In s, job n may appear either at the beginning, and therefore before job 1, or at the end, and therefore after job 1. In the former case, the imbalance (s) changes by w n e t, where e t is maximum early deviation in t. In the latter case, the imbalance (s) changes by w n (l t + p n ), where l t is maximum late deviation in t. From Lemma 3, we have e t = α t + p n /2 P n /2 and l t + p n = α t + p n /2 + P n /2. Thus, we have { (t) + wn (α (s) = t + p n /2 + x n P n /2) if n 2, 1/2p 1 w 1 + 1/2p 1 w 1 x 1 if n = 1. By induction on n we get and 2 (s) as claimed. (s) = 1/2( (W i+1 p i + w i P i )x i + δ 1 ) Lemma 6 For n 2, we have W wctv(s) = H + E(x)/2 where E(x) = β i γ j x i x j + e i x i, (5) and 2 j<i n 2 i n β i = W i+1 p i + w i P i, γ j = W j p j w j P j, for 1 j < i n, e i = W p i (P i w i + δ i+1 ) δ 1 β i W i = 1 j i w j, P i, for i = 1, 2,..., n, and δ i, W i, for i = 1, 2,..., n + 1, are as in Lemma 4. Moreover, γ 1 = 0, e 1 = 0 and H = W/4 w i (Pi 2 + θ i ) 1/4( (W i+1 p i + w i P i ) 2 + δ1) 2 is a constant independent of s. 7
Proof The first part follows immediately from Lemmas 2, 4, and 5. γ 1 = 0 since W 1 = w 1 and P 1 = p 1. We shall omit a simple proof that e 1 = 0. Because γ 1 = 0 and e 1 = 0, E(x) does not depend on x 1. Now, we change the space of solution from { 1, 1} n to {0, 1} n by setting y = (x+e)/2, where e is a unit n-dimensional vector. Lemma 7 For n 2, we have W wctv(s) = D G(x) where G(x) = 2 j<i n β i γ j y i y j 2 i n e i y i (6) where y i y j = y i y j +y i y j and y i = 1 y i, for i = 2,..., n and some constant D = H + 1/2 2 j<i n β i γ j independent of s. Proof By replacing x i by 2y i 1, for i = 2,..., n, in (5) we get x i x j = 1 2y i y j and the lemma follows. The following theorem is a simple corollary from Lemma 7 which also gives the required half-product. Theorem 1 For n 2, we have W wctv(s) = D + F (y) where F (y) = 2β i γ j y i y j g i y i, (7) and for i = 2,..., n. y i = g i = β i 2 j<i n 2 j<i γ j + γ i i<j n 2 i n β j e i, { 0 if job i appears before job 1 in s, 1 otherwise, We need to observe here that all β i s are positive, which immediately follows from their definition, and also all γ j s are nonnegative, which follows from Observation 1 below. This proves that F (y) is a half-product, [1]. Observation 1 0 γ i 1 γ i, for 2 i < n 1. 8
Proof γ i γ i 1 = (W i p i w i P i ) (W i 1 p i 1 w i 1 P i 1 ) = W i 1 (p i p i 1 ) + P i 1 (w i 1 w i ) 0, because p i p i 1 and w i 1 w i hold for 2 i n, and γ 1 = 0. By Theorem 1, the V-shaped sequence s of jobs in wctv(s) can be replaced by a corresponding vector y from {0, 1} n, therefore, both notations, i.e. wctv(s) and wctv(y) will be used in the following sections. 4 A fully polynomial time approximation scheme for AWCTV Badics and Boros [1] derive a fully polynomial time approximation scheme for minimizing any half-product. Their scheme applied to F (y) gives the following theorem. Theorem 2 (Badics and Boros [1]) Let Q = 2 2 i n β i, and let y be an optimal solution to the problem of minimizing F (y). Then one can find in O(n 2 log Q/ε) time a solution y for which for every fixed 0 < ε 1. F (y) F (y ) ε F (y ) (8) The solution y of Theorem 2 that satisfies (8) will be referred to as the ε-approximate solution or just ε-solution for simplicity. We shall show in Lemmas 8, 9, and 10 that an ε-solution for F (y) is a (4n 2 1)ε-solution for wctv(y). This will be achieved by showing a lower bound for wctv(y) which is greater than or equal to D/(W 4n 2 ), where D is the difference between W wctv(y) and F (y), see Lemma 7. Lemma 8 Let y 0 be an ε-solution to the problem of minimizing F (y). If F (y ) c(n) W wctv(y ) for some polynomial c(n), then y 0 is a c(n) ε- solution to the problem of minimizing wctv(y). 9
Proof We have W wctv(y 0 ) W wctv(y ) = F (y 0 ) F (y ) ε F (y ) ε c(n) W wctv(y ). Lemma 9 For any y, we have 0 < LB wctv(y), where LB = 2 i n w i p 2 i 1/4. Proof Consider a schedule s. We assume that job 1 has at least one predecessor and at least one successor in s. Otherwise all jobs are either before job 1 or after it and the lemma obviously holds. Let job i be the immediate predecessor of job 1 and let job j be the immediate successor of job 1 in s. Then, from Lemma 1 we have C i p i /2 C C j p j /2. (9) Consider the contribution wctv(k + 1) = w k+1 (C k+1 C) 2 made by job k + 1 (k = n 1,..., 1) to wctv(y) of s. We show that for each k = 1,..., n 1 wctv(k + 1) + wctv(k) w k+1 p 2 k/2. (10) Consider the following six cases. Case 1: job k + 1 appears after job j; Case 2: jobs k + 1 and k appear before job i; Case 3: job k + 1 appears before job 1 and job k after job j; Case 1 : job k + 1 = j;case 2 : jobs k + 1, k appear before job 1 and k = i; Case 3 : k + 1 appears before job 1 and k = j. Cases 1, 2 and 3 complement Cases 1, 2 and 3, respectively. Case 1: From (9) we have C k+1 C p k+1. Then wctv(k + 1) w k+1 p 2 k+1 w k+1 p 2 k, since p k+1 p k. Case 2: From (9) we have C C k+1 p k. Then wctv(k + 1) w k+1 p 2 k. Case 3: From (9) we have C k C p k. Then wctv(k) w k p 2 k w k+1 p 2 k, 10
since w k+1 w k. For other cases, we need the following simple observation min {w l x 2 + w k (p k x) 2 } = w l w k p 2 0 x p k k/(w l + w k ). (11) Case 1 : Consider the following two subcases: a) C C 1 ; b) C > C 1. a) We have C k+1 C p k+1. Then b) Let x = C C 1, then By (11) wctv(k + 1) w k+1 p 2 k+1 w k+1 p 2 k. wctv(k + 1) + wctv(k) w k x 2 + w k+1 (p k+1 x) 2. wctv(k + 1) + wctv(k) w k+1 w k p 2 k+1/(w k+1 + w k ) w k+1 p 2 k+1/2 w k+1 p 2 k/2. Case 2 : Consider the following two subcases: a) C C k ; b) C < C k. a) We have C C k+1 p k. Then b) Suppose x = C k C, then By (11) wctv(k + 1) w k+1 p 2 k. wctv(k + 1) + wctv(k) w k x 2 + w k+1 (p k x) 2. wctv(k + 1) + wctv(k) w k+1 w k p 2 k/(w k+1 + w k ) w k+1 p 2 k/2. Case 3 : Consider two subcases for C: a) C C 1 ; b) C > C 1. a) We have b) Suppose x = C C 1, then wctv(k) w k p 2 k w k+1 p 2 k. wctv(k + 1) + wctv(k) w k+1 x 2 + w k (p k x) 2. 11
By (11) wctv(k + 1) + wctv(k) w k+1 w k p 2 k/(w k+1 + w k ) w k+1 p 2 k/2. Therefore the inequalities in (10) hold, and finally we have 2wctv(y ) = 2 wctv(i) = wctv(1) + 2 i n which completes the proof. 1 w i p 2 i 1/2, Lemma 10 We have 0 < D/W 4n 2 LB. (wctv(i + 1) + wctv(i)) + wctv(n) Proof First consider sequence s = (n,..., 2, 1) with jobs n,..., 2 sequenced in this order before job 1, thus y 2 =... = y n = 0. Consequently, F (y) = 0 and W wctv(y) = D. For any number d the following holds w i (C i C) 2 w i (C i d) 2, since the right hand side of the inequality as a function of a single variable d attains minimum for d = C. By setting d = C 1 for sequence s we obtain D/W w i (C i C 1 ) 2 = 2 i n n 2 2 i n w i (p i 1 +... + p 1 ) 2 w i p 2 i 1 = 4n 2 LB. Lemma 11 We have c(n) = 4n 2 1. Proof By Lemmas 9 and 10, F (y ) = W wctv(y ) D D W LB (4n 2 1)W LB (4n 2 1)W wctv(y ), 12
for non-positive W wctv(y ) D. This difference, however, is never positive as shown by Badics and Boros [1]. Therefore we have c(n) = 4n 2 1. Theorem 3 There is an FPTAS for AWCTV running in O(log(max{p n, w 1, n})n 4 /ε) time. Proof We proceed as follows. Given ε, run the fully polynomial time approximation scheme of Badics and Boros [1] for F (y) with required accuracy ε/(4n 2 1). By Theorem 2, this procedure runs in time O(log(max{p n, w 1, n})n 4 /ε), and by Lemmas 8 and 11, it yields an ε-solution for AWCTV. 5 Conclusions We presented a fully polynomial time approximation scheme for agreeably weighted completion time variance problem on a single machine. The scheme offers a speed up of at least O(n log 4 (max{p n, w 1, n})/ε 4 ) over the scheme proposed in [9], thus giving a better accuracy faster. Its complexity relies on the lower bound given in Lemma 9, and obviously any strengthening of the bound would render the scheme more efficient. To our knowledge, the bound from Lemma 9 is the tightest available at the moment. It is worth noticing that a much stronger bound resulting in a constant c in Lemma 8 was used in [7] to derive an O(n 2 /ε) scheme for the problem with equal weights. We conjecture that a scheme with better worst case performance is impossible for the problem with equal weights. Acknowledgment This research has been supported by NSERC Grant OGP0105675, and by KBN Grant. We would like to thank anonymous referees for their constructive comments that resulted in an improved paper. References [1] T. Badics and E. Boros. (1998). Minimization of half-products, Mathematics of Operations Research, 23, 649-660. 13
[2] J. Blazewicz, K.H. Ecker, E. Pesch, G. Schmidt, and J. Weglerz, (1996). Scheduling Computer and Manufacturing Processes Springer Verlag (3rd edition). [3] X. Cai. (1995). Minimization of agreeably weighted variance in single machine systems, European Journal of Operational Research 85, 576-592. [4] J.J. Kanet (1981). Minimizing variation of flow time in single machine systems, Management Science 27, 1453-1459. [5] W. Kubiak. (1993). Completion time variance minimization on a single machine is difficult, Operations Research Letters 14, 49-59. [6] W. Kubiak. (1995). New results on the completion time variance minimization, Discrete Applied Mathematics 58, 157-168. [7] W. Kubiak, J. Cheng and M.Y. Kovalyov. (2002). Fast fully polynomial approximation schemes for minimizing completion time variance, European Journal of Operational Research 137, 303-309. [8] A.G. Merten and M.E. Muller. (1972). Variance minimization in single machine sequencing problems, Management Science 18,518-528. [9] G.J. Woeginger. (1999). An Approximation Scheme forminimizing Agreeably Weighted Variance on a Single Machine, INFORMS Journal on Computing 11, 211-216. 14