Skip to main content
Log in

Rescheduling due to machine disruption to minimize the total weighted completion time

  • Published:
Journal of Scheduling Aims and scope Submit manuscript

Abstract

We investigate a single machine rescheduling problem that arises from an unexpected machine unavailability, after the given set of jobs has already been scheduled to minimize the total weighted completion time. Such a disruption is represented as an unavailable time interval and is revealed to the production planner before any job is processed; the production planner wishes to reschedule the jobs to minimize the alteration to the originally planned schedule, which is measured as the maximum time deviation between the original and the new schedules for all the jobs. The objective function in this rescheduling problem is to minimize the sum of the total weighted completion time and the weighted maximum time deviation, under the constraint that the maximum time deviation is bounded above by a given value. That is, the maximum time deviation is taken both as a constraint and as part of the objective function. We present a pseudo-polynomial time exact algorithm and a fully polynomial time approximation scheme.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

Notes

  1. There is an error in the \((1 + \epsilon )\)-approximation algorithm, for which the claimed running time \(O(n^3 \log {W} /\epsilon )\) is flawed (Liu and Lin 2017).

  2. We remark that our algorithm differs from the exact algorithm in Liu et al. (2017), though both of \(O(n^2 T_1)\) time.

  3. In the entire paper, we examine only feasible partial schedules for the prefixes of the WSPT job sequence \(\pi ^* = (J_1, J_2, \ldots , J_n)\); these partial schedules can always be completed into feasible full schedules.

  4. In fact, W can be any upper bound on the optimal total weighted completion time of all the n jobs.

References

  • Aytug, H., Lawley, M. A., McKay, K., Mohan, S., & Uzsoy, R. (2005). Executing production schedules in the face of uncertainties: A review and some future directions. European Journal of Operational Research, 161, 86–110.

    Article  Google Scholar 

  • Bean, J. C., Birge, J. R., Mittenthal, J., & Noon, C. E. (1991). Matchup scheduling with multiple resources, release dates and disruptions. Operations Research, 39, 470–483.

    Article  Google Scholar 

  • Clausen, J., Hansen, J., Larsen, J., & Larsen, A. (2001). Disruption management. OR/MS Today, 28, 40–43.

    Google Scholar 

  • Graham, R. L., Lawler, E. L., Lenstra, J. K., & Kan, R. (1979). Optimization and approximation in deterministic sequencing and scheduling: A survey. Annuals of Discrete Mathematics, 5, 287–326.

    Article  Google Scholar 

  • Hall, N. G., Liu, Z., & Potts, C. N. (2007). Rescheduling for multiple new orders. INFORMS Journal on Computing, 19, 633–645.

    Article  Google Scholar 

  • Hall, N. G., & Potts, C. N. (2004). Rescheduling for job unavailability. Operations Research, 58, 746–755.

    Article  Google Scholar 

  • Hall, N. G., & Potts, C. N. (2004). Rescheduling for new orders. Operations Research, 52, 440–453.

    Article  Google Scholar 

  • Herroelen, W., & Leus, R. (2005). Project scheduling under uncertainty: Survey and research potentials. European Journal of Operational Research, 165, 289–306.

    Article  Google Scholar 

  • Hoogeveen, H., Lenté, C., & T’kindt, V. (2012). Rescheduling for new orders on a single machine with setup times. European Journal of Operational Research, 223, 40–46.

    Article  Google Scholar 

  • Lee, C.-Y. (1996). Machine scheduling with an availability constraint. Journal of Global Optimization, 9, 395–416.

    Article  Google Scholar 

  • Liu, Z., & Lin, G. (2017). Personal communication.

  • Liu, Z., Lu, L., & Qi, X. (2017). Cost allocation in rescheduling with machine unavailable period. European Journal of Operational Research,. https://doi.org/10.1016/j.ejor.2017.09.015.

    Article  Google Scholar 

  • Liu, Z., & Ro, Y. K. (2014). Rescheduling for machine disruption to minimize makespan and maximum lateness. Journal of Scheduling, 17, 339–352.

    Article  Google Scholar 

  • Luo, W., Luo, T., Goebel, R., Lin, G. (2017). On rescheduling due to machine disruption while to minimize the total weighted completion time. CoRR, abs/1701.07498

  • Qi, X., Bard, J. F., & Yu, G. (2006). Disruption management for machine scheduling: The case of SPT schedules. International Journal of Production Economics, 103, 166–184.

    Article  Google Scholar 

  • Vieira, G. E., Herrmann, J. W., & Lin, E. (2003). Rescheduling manufacturing systems: A framework of strategies, policies, and methods. Journal of Scheduling, 6, 39–62.

    Article  Google Scholar 

  • Wang, D., Liu, F., & Jin, Y. (2017). A multi-objective evolutionary algorithm guided by directed search for dynamic scheduling. Computers & Operations Research, 79, 279–290.

    Article  Google Scholar 

  • Wang, D., Liu, F., Wang, Y., & Jin, Y. (2015). A knowledge-based evolutionary proactive scheduling approach in the presence of machine breakdown and deterioration effect. Knowledge Based Systems, 90, 70–80.

    Article  Google Scholar 

  • Yang, J., Qi, X., & Yu, G. (2005). Disruption management in production planning. Naval Research Logistics, 52, 420–442.

    Article  Google Scholar 

  • Yin, Y., Cheng, T. C. E., & Wang, D.-J. (2016). Rescheduling on identical parallel machines with machine disruptions to minimize total completion time. European Journal of Operational Research, 252, 737–749.

    Article  Google Scholar 

  • Yin, Y., Wang, Y., Cheng, T. C. E., Liu, W., & Li, J. (2017). Parallel-machine scheduling of deteriorating jobs with potential machine disruptions. Omega, 69, 17–28.

    Article  Google Scholar 

  • Yuan, J. J., & Mu, Y. (2007). Rescheduling with release dates to minimize makespan under a limit on the maximum sequence disruption. European Journal of Operational Research, 182, 936–944.

    Article  Google Scholar 

  • Zhao, Q., & Yuan, J. J. (2013). Pareto optimization of rescheduling with release dates to minimize makespan and total sequence disruption. Journal of Scheduling, 16, 253–260.

    Article  Google Scholar 

  • Zweben, M., Davis, E., Daun, B., & Deale, M. J. (1993). Scheduling and rescheduling with iterative repair. IEEE Transactions on Systems, Man and Cybernetics, 23, 1588–1596.

    Article  Google Scholar 

Download references

Acknowledgements

All authors were supported by NSERC Canada. Additionally, W.L. was supported by K. C. Wong Magna Fund in Ningbo University, the China Scholarship Council (Grant No. 201408330402), and the Ningbo Natural Science Foundation (2016A610078); T.L. was supported by NSF China (Grant Nos. 71701162 and 71371129); G.L. was supported by NSF China (Grant Nos. 61471124 and 61672323).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Guohui Lin.

Additional information

This work was partially supported by NSERC Canada, NSF China and CSC China.

Appendices

A Proof of Lemma 2.1

Proof

By contradiction, assume \((J_i, J_j)\) is the first pair of jobs for which \(J_i\) precedes \(J_j\) in \(\pi ^*\), i.e., \(p_i/w_i \le p_j/w_j\), but \(J_j\) immediately precedes \(J_i\) in the earlier schedule of \(\sigma ^*\). Let \(\sigma '\) denote the new schedule obtained from \(\sigma ^*\) by swapping \(J_j\) and \(J_i\). If \(C_j(\sigma ') \ge C_j(\pi ^*)\), then \(C_i(\sigma ') \ge C_i(\pi ^*)\) too, and thus \(\Delta _j(\sigma ', \pi ^*) \le \Delta _i(\sigma ', \pi ^*) < \Delta _i(\sigma ^*, \pi ^*)\) due to \(p_j > 0\); if \(C_j(\sigma ') < C_j(\pi ^*)\) and \(C_i(\sigma ') \le C_i(\pi ^*)\), then \(\Delta _i(\sigma ', \pi ^*) \le \Delta _j(\sigma ', \pi ^*) < \Delta _j(\sigma ^*, \pi ^*)\) due to \(p_i > 0\); lastly if \(C_j(\sigma ') < C_j(\pi ^*)\) and \(C_i(\sigma ') > C_i(\pi ^*)\), then \(\Delta _i(\sigma ', \pi ^*) < \Delta _i(\sigma ^*, \pi ^*)\) and \(\Delta _j(\sigma ', \pi ^*) < \Delta _j(\sigma ^*, \pi ^*)\). That is, \(\sigma '\) is also a feasible reschedule.

Furthermore, the weighted completion times contributed by \(J_i\) and \(J_j\) in \(\sigma '\) is no more than those in \(\sigma ^*\), implying the optimality of \(\sigma '\). It follows that, if necessary, after a sequence of job swappings, we will obtain an optimal reschedule in which the jobs in the earlier schedule are in the same order as they appear in \(\pi ^*\). This proves the part (a).

For the second part (b) of the lemma, similarly by contradiction we assume \((J_i, J_j)\) is the first pair of jobs for which \(J_i\) precedes \(J_j\) in \(\pi ^*\), i.e., \(p_i/w_i \le p_j/w_j\), but \(J_j\) immediately precedes \(J_i\) in the later schedule of \(\sigma ^*\). Let \(\sigma '\) denote the new schedule obtained from \(\sigma ^*\) by swapping \(J_j\) and \(J_i\). If \(C_j(\sigma ') \ge C_j(\pi ^*)\), then \(C_i(\sigma ') \ge C_i(\pi ^*)\) too, and thus \(\Delta _j(\sigma ', \pi ^*) \le \Delta _i(\sigma ', \pi ^*) < \Delta _i(\sigma ^*, \pi ^*)\) due to \(p_j > 0\); if \(C_j(\sigma ') < C_j(\pi ^*)\) and \(C_i(\sigma ') \le C_i(\pi ^*)\), then \(\Delta _i(\sigma ', \pi ^*) \le \Delta _j(\sigma ', \pi ^*) < \Delta _j(\sigma ^*, \pi ^*)\) due to \(p_i > 0\); lastly if \(C_j(\sigma ') < C_j(\pi ^*)\) and \(C_i(\sigma ') > C_i(\pi ^*)\), then \(\Delta _i(\sigma ', \pi ^*) < \Delta _i(\sigma ^*, \pi ^*)\) and \(\Delta _j(\sigma ', \pi ^*) < \Delta _j(\sigma ^*, \pi ^*)\). That is, \(\sigma '\) is also a feasible reschedule.

Furthermore, the weighted completion times contributed by \(J_i\) and \(J_j\) in \(\sigma '\) is no more than those in \(\sigma ^*\), implying the optimality of \(\sigma '\). If follows that, if necessary, after a sequence of job swappings we will obtain an optimal reschedule in which the jobs in the earlier schedule are in the same order as they appear in \(\pi ^*\). \(\square \)

B Proof of Lemma 2.2

Proof

Item (a) is a direct consequence of Lemma 2.1, since the jobs in the earlier schedule are in the same order as they appear in \(\pi ^*\), which is the WSPT order. That is, for the job \(J_j\) in the earlier schedule of \(\sigma ^*\), if all the jobs \(J_i\), for \(i = 1, 2, \ldots , j-1\), are also in the earlier schedule, then \(C_j(\sigma ^*) = C_j(\pi ^*)\); otherwise, \(C_j(\sigma ^*) < C_j(\pi ^*)\).

For item (b), assume the machine idles before processing the jobs \(J_{j_1}\) and \(J_{j_2}\), with \(J_{j_1}\) preceding \(J_{j_2}\) in the earlier schedule. We conclude from Lemma 2.1 and item (a) that if \(\Delta _{j_2} < \Delta _{j_1} \le \Delta _{\max }\) (or \(\Delta _{j_1} < \Delta _{j_2} \le \Delta _{\max }\), respectively), then moving the starting time of the job \(J_{j_2}\) (\(J_{j_1}\), respectively) one unit ahead will maintain the maximum time deviation and decrease the total weighted completion time, which contradicts the optimality of \(\sigma ^*\). It follows that we must have \(\Delta _{j_1} = \Delta _{j_2}\); in this case, if there is any job \(J_j\) with \(j_1< j < j_2\) in the later schedule, it can be moved to the earlier schedule to decrease the total weighted completion time, which again contradicts the optimality of \(\sigma ^*\). Therefore, there is no job \(J_j\) with \(j_1< j < j_2\) in the later schedule, which together with \(\Delta _{j_1} = \Delta _{j_2}\) imply that the machine does not idle before processing the job \(J_{j_2}\).

Item (c) is clearly seen for the same reason used in the last paragraph, that firstly their time deviations have to be the same, and secondly if this time deviation is less than \(\Delta _{\max }\), one can then move their starting time one unit ahead to decrease the total weighted completion time while maintaining the maximum time deviation, thus contradicting the optimality of \(\sigma ^*\).

Item (d) is implied by Item (c), given that all the job processing times are positive.

Let the job in the earlier schedule right after the idle time period be \(J_j\). clearly, there is a job \(J_a\) with \(S_a(\pi ^*) < S_j(\sigma ^*)\) in the later schedule of \(\sigma ^*\), due to the machine idling. The time deviation for \(J_a\) is \(\Delta _a > T_2 - S_a(\pi ^*)\). If \(S_j(\pi ^*) < T_2\), then \(\Delta _{\max } = \Delta _j< T_2 - S_j(\sigma ^*)< T_2 - S_a(\pi ^*) < \Delta _a\), a contradiction. This proves item (e) that \(S_j(\pi ^*) \ge T_2\).

Item (f) is clearly seen from Lemma 2.1 and the optimality of \(\sigma ^*\), that if the machine idles then it can start processing the jobs after the idling period earlier to decrease the total weighted completion time, while maintaining or even decreasing the maximum time deviation.

From item (f) and the second part of Lemma 2.1, we see that the deviation times of the jobs in the later schedule are non-increasing. Therefore, item (g) is proved. \(\square \)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Luo, W., Luo, T., Goebel, R. et al. Rescheduling due to machine disruption to minimize the total weighted completion time. J Sched 21, 565–578 (2018). https://doi.org/10.1007/s10951-018-0575-z

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10951-018-0575-z

Keywords

Navigation