Erratum to: Minimizing total tardiness on parallel machines with preemptions
- 589 Downloads
- 1 Citations
Abstract
In this note, we correct a mistake which was made in the paper “Minimizing Total Tardiness on Parallel Machines with Preemptions” (see J Schedul 15:193–200, 2012).
Keywords
Parallel machines Total tardiness Preemptions NP-hardnessIntroduction
Corrected proof
In this section, we show that problem \(P\mid \text{ pmtn}\mid \sum T_j\) is NP-hard, i.e., we consider the problem of scheduling \(n\) jobs on \(m\) machines \(\{1,\ldots ,m\}\) with preemptions to minimize the total tardiness value \(\sum _{j=1}^n T_j\). Thus, for each job \(j\), we know in advance its processing time \(p_j\) and its due date \(d_j.\)
The proof is obtained by a reduction from PARTITION: Given a set of positive integers \(a_1,\ldots , a_k, b\) with \(\sum _{i=1}^k a_i = 2b.\) Does there exist a subset \(I\subseteq \{ 1, \ldots , k\}\) such that \(\sum _{i\in I} a_i =b\)?
PARTITION is ordinary NP-hard (Karp 1972), and it can be shown that it remains so under the assumption that \(3k<b/2\). To see this, it is sufficient to replace \(a_1,\ldots , a_k, b\) by \(6k a_1,\ldots , 6k a_k, 6k b.\)
-
the class of \(a\)-jobs comprises \(k\) jobs with processing times \(a_i\) and due dates \(d_i=L\) for \(i=1,\ldots , k;\)
-
the class of \(ba\)-jobs comprises \(k\) jobs with processing times \(9b^3+a_i b^2 - a_i\) and due dates \(d_i=L-a_i\) for \(i=1,\ldots , k;\)
-
the class of \(b\)-jobs comprises \(k-1\) jobs with processing times \(b^3\) and due dates \(b^3.\)
- 1.
we schedule each \(ba\)-job \(i\), \(i=1,\ldots , k,\) with processing time \(9b^3+a_ib^2-a_i\) for \(9b^3-a_i\) time units in the interval \([b^3,L-a_i]\) on machine \(i\), and each \(ba\)-job \(i, i=1,\ldots , z,\) for \(a_ib^2\) time units in the interval \([L,L+a_ib^2]\) on machine \(i\);
- 2.
we schedule each \(a\)-job \(i\), \(i=1,\ldots , k,\) with processing time \(a_i\) for \(a_i\) time units in the interval \([L-a_i,L]\) on machine \(i\);
- 3.
we schedule each \(b\)-job \(i, i=1,\ldots , k-1,\) with processing time \(b^3\) for \(b^3\) time units in the interval \([0,b^3]\) on machine \(i\); and
- 4.we schedule the remaining parts of the \(ba\)-jobs \(i, i=z+1,\ldots , k,\) in the interval \([0,b^3]\) on machine \(k,\) see Fig. 1.Fig. 1
Scheduling the jobs for the given partition
Since, before step 4, machine \(k\) is idle for the time interval \([0,b^3]\) and \(\sum _{i=z+1}^n a_ib^2 = b^3\) holds, step 4 completes the construction of a feasible schedule.
Next, we show that, if there exists a schedule for which \(\sum T_j\le b^3+b\) holds, then PARTITION has a solution. Consider a schedule, say \(s\), with \(\sum T_j\le b^3+b\).
The \(b\)-jobs have to be scheduled within the time interval \([0,2b^3+b],\) since otherwise inequality \(\sum T_j> b^3+b\) holds. Thus, after \(L\) only \(a\)-jobs and \(ba\)-jobs can be scheduled.
All \(a\)-jobs have to be scheduled before their due dates, i.e., before the time \(L=10b^3\). To see this, consider a \(ba\)-job, say \(f\), with the maximal completion time \(C_f\) among all \(ba\)-jobs. There are two cases:
Case 1. If there is an \(a\)-job scheduled (partially or completely) within the interval \([C_f,+\infty [,\) one can switch this part of the \(a\)-job with the \(ba\)-job \(f\) scheduled within the interval \([2b^3+b,9b^3].\) The value \(\sum T_j\) does not increase.
Case 2. However, if there are no \(a\)-jobs scheduled within the interval \([C_f,+\infty [,\) take any \(a\)-job processed within the interval \([L,C_f[\) for some time, say for \(\Delta \) time units. Denote this part of the \(a\)-job by \(a_\Delta .\) Now one can take the part of the \(ba\)-job \(f\) processed within the interval \([2b^3+b,9b^3]\) for \(\Delta \) time units. Denote this part of the job by \(f_\Delta .\) Finally, one can replace \(f_\Delta \) by \(a_\Delta ,\) and schedule \(f_\Delta \) in the interval \([C_f,C_f+\Delta ]\). The value of \(\sum T_j\) does not increase.
As a result, we obtain a new schedule, say \(s^{\prime }\), where all \(a\)-jobs are processed before \(L\) and the completion time of the \(ba\)-job \(f\) is \(C_f+X,\) where \(X\) is the total amount of the processing of \(a\)-jobs, scheduled after \(L\) in \(s\). Since the completion times are known for all jobs, the schedule \(s^{\prime }\) can be constructed without applying the described transformation, but using a network flow model (Horn 1974) with a vertex for each job and for each completion time.
Thus, after the time \(L=10b^3\), only \(ba\)-jobs can be scheduled. Denote this set of jobs by \(A,\) i.e., \(A=\{ i \mid i \text{ is} \text{ a} ba{\text{-job} \text{ and} } C_i\ge L\}\). Denote by \(l_i\) the total length of a \(ba\)-job \(i,\) scheduled after \(L\).
Moreover, since the sum of all processing times is \(10b^3k+b^3,\) we have \(\sum _{i\in A} l_i\ge b^3\) and therefore, all \(b\)-jobs have to be scheduled not in the interval \([0, 2b^3+b]\) but in the interval \([0, b^3+b].\)
Thus, within the interval \([b^3+b,10b^3]\), only \(ba\)-jobs and \(a\)-jobs can be scheduled. Since the total length of the \(a\)-jobs is \(2b,\) it follows that each \(ba\)-job has to be processed in the interval \([b^3+b,10b^3]\) for at least \(9b^3-3b\) time units and thus, inequality \(l_i\le p_i-9b^3+3b\) holds, and since \(p_i=9b^3+a_ib^2-a_i,\) we obtain the inequality \(l_i\le a_ib^2+3b-a_i,\) i.e., \(l_i\le a_ib^2+3b\) holds.
Hence, we obtain \(\sum _{i=1}^z a_i = b,\) i.e., the set of \(ba\)-jobs completed after time point \(L\) defines the solution for PARTITION.
Remarks
In Kravchenko and Werner (2012), the polynomial transformation from PARTITION to the problem \(P\mid r_j, p_j=p, \text{ pmtn}\mid \sum T_j\) substantially used the decision version of the problem \(P\mid \text{ pmtn}\mid \sum T_j.\) In fact, the decision version of the problem \(P\mid \text{ pmtn}\mid \sum T_j\) was polynomially reduced to the decision version of the problem \(P\mid r_j, p_j=p, \text{ pmtn}\mid \sum T_j.\) In the corrected proof, we changed the decision version of the problem \(P\mid \text{ pmtn}\mid \sum T_j.\) However, it is easy to see that the new decision version of the problem \(P\mid \text{ pmtn}\mid \sum T_j\) can be polynomially transformed to the problem \(P\mid r_j, p_j=p, \text{ pmtn}\mid \sum T_j\) using the same scheme given in Kravchenko and Werner (2012).
Thus, both problems \(P\mid \text{ pmtn}\mid \sum T_j\) and \(P\mid r_j, p_j=p, \text{ pmtn}\mid \sum T_j\) are NP-hard.
References
- Horn, W. A. (1974). Some simple scheduling algorithms. Naval Research Logistics Quarterly, 21, 177–185.CrossRefGoogle Scholar
- Karp, R. M. (1972). Reducibility among combinatorial problems. In R. E. Miller & J. W. Thatcher (Eds.), Complexity of computer computations (pp. 85–103). New York: Plenum Press.CrossRefGoogle Scholar
- Kravchenko, S. A., & Werner, F. (2012). Minimizing total tardiness on parallel machines with preemptions. Journal of Scheduling, 15, 193–200.CrossRefGoogle Scholar
- Prot, D., Bellenguez-Morineau, O., & Lahlou, C. (2012). A note on the paper “Minimizing total tardiness on parallel machines with preemptions” by Kravchenko and Werner (2012). Journal of Scheduling doi: 10.1007/s10951-012-0283-z.
