# Exact algorithms for single-machine scheduling with time windows and precedence constraints

- 744 Downloads
- 1 Citations

## Abstract

We study a single-machine scheduling problem that is a generalization of a number of problems for which computational procedures have already been published. Each job has a processing time, a release date, a due date, a deadline, and a weight representing the penalty per unit-time delay beyond the due date. The goal is to schedule all jobs such that the total weighted tardiness penalty is minimized and both the precedence constraints as well as the time windows (implied by the release dates and the deadlines) are respected. We develop a branch-and-bound algorithm that solves the problem to optimality. Computational results show that our approach is effective in solving medium-sized instances, and that it compares favorably with existing methods for special cases of the problem.

### Keywords

Single-machine scheduling Branch and bound Mixed-integer programming## Notes

### Acknowledgments

We are very grateful to professor Shunji Tanaka from Kyoto University for providing us with the benchmark instances and the code of the SSDP algorithm that were used in Sect. 8.5.1, and to professor Yunpeng Pan from South Dakota State University for sending us the instances examined in Sect. 8.5.2.

### References

- Abdul-Razaq, T. S., & Potts, C. N. (1988). Dynamic programming state-space relaxation for single-machine scheduling.
*Journal of the Operational Research Society*,*39*(2), 141–152.CrossRefGoogle Scholar - Abdul-Razaq, T. S., Potts, C. N., & Van Wassenhove, L. N. (1990). A survey of algorithms for the single machine total weighted tardiness scheduling problem.
*Discrete Applied Mathematics*,*26*, 235–253.CrossRefGoogle Scholar - Akturk, M. S., & Ozdemir, D. (2000). An exact approach to minimizing total weighted tardiness with release dates.
*IIE Transactions*,*32*, 1091–1101.CrossRefGoogle Scholar - Akturk, M. S., & Ozdemir, D. (2001). A new dominance rule to minimize total weighted tardiness with unequal release dates.
*European Journal of Operational Research*,*135*(2), 394–412.CrossRefGoogle Scholar - Artigues, C., Demassey, S., & Neron, E. (2007).
*Resource-constrained project scheduling: Models, algorithms, extensions and applications*. London: ISTE.Google Scholar - Bein, W., Kamburowski, J., & Stallmann, M. (1992). Optimal reduction of two-terminal directed acyclic graphs.
*SIAM Journal on Computing*,*21*(6), 1112–1129.CrossRefGoogle Scholar - Belouadah, H., Posner, M. E., & Potts, C. N. (1992). Scheduling with release dates on a single machine to minimize total weighted completion time.
*Discrete Applied Mathematics*,*36*(3), 213–231.CrossRefGoogle Scholar - Calinescu, G., Fernandes, C., Kaul, H., & Zelikovsky, A. (2012). Maximum series-parallel subgraph.
*Algorithmica*,*63*(1–2), 137–157.CrossRefGoogle Scholar - Christofides, N., Alvarez-Valdes, R., & Tamarit, J. M. (1987). Project scheduling with resource constraints: A branch and bound approach.
*European Journal of Operational Research*,*29*, 262–273.CrossRefGoogle Scholar - Conway, R. W., Maxwell, W. C., & Miller, L. W. (1967).
*Theory of Scheduling*. Reading, MA: Addison Wesley.Google Scholar - Debels, D., & Vanhoucke, M. (2007). A decomposition-based genetic algorithm for the resource-constrained project-scheduling problem.
*Operations Research*,*55*(3), 457–469.CrossRefGoogle Scholar - Demeulemeester, E., Vanhoucke, M., & Herroelen Rangen, W. (2003). A random network generator for activity-on-the-node networks.
*Journal of Scheduling*,*6*, 13–34.CrossRefGoogle Scholar - Dyer, M. E., & Wolsey, L. A. (1990). Formulating the single machine sequencing problem with release dates as a mixed integer program.
*Discrete Applied Mathematics*,*26*(23), 255–270.CrossRefGoogle Scholar - Fisher, M. L. (1981). The Lagrangian relaxation method for solving integer programming problems.
*Management Science*,*27*(1), 1–18.CrossRefGoogle Scholar - Garey, M. R., & Johnson, D. S. (1979).
*Computers and intractability: A guide to the theory of NP-completeness*. New York: W. H. Freeman.Google Scholar - Gordon, V., Potapneva, E., & Werner, F. (1997). Single machine scheduling with deadlines, release and due dates.
*Optimization*,*42*(3), 219–244.CrossRefGoogle Scholar - Graham, R. L., Lawler, E. L., Lenstra, J. K., & Rinnooy Kan, A. H. G. (1979). Optimization and approximation in deterministic sequencing and scheduling: A survey.
*Annals of Discrete Mathematics*,*5*, 287–326.CrossRefGoogle Scholar - Hariri, A. M. A., & Potts, C. N. (1983). An algorithm for single machine sequencing with release dates to minimize total weighted completion time.
*Discrete Applied Mathematics*,*5*(1), 99–109.CrossRefGoogle Scholar - Held, M., & Karp, R. M. (1962). A dynamic programming approach to sequencing problems.
*Journal of the Society for Industrial and Applied Mathematics*,*10*(1), 196–210.CrossRefGoogle Scholar - Hoogeveen, J. A., & van de Velde, S. L. (1995). Stronger Lagrangian bounds by use of slack variables: Applications to machine scheduling problems.
*Mathematical Programming*,*70*, 173–190.Google Scholar - Ibaraki, T., & Nakamura, Y. (1994). A dynamic programming method for single machine scheduling.
*European Journal of Operational Research*,*76*(1), 72–82.CrossRefGoogle Scholar - Jouglet, A., Baptiste, P., & Carlier, J. (2004).
*Handbook of scheduling: Algorithms, models and performance analysis, chap. 13*., Branch and bound algorithms for total weighted tardiness Boca Raton, FL: CRC Press.Google Scholar - Keha, A. B., Khowala, K., & Fowler, J. W. (2009). Mixed integer programming formulations for single machine scheduling problems.
*Computers & Industrial Engineering*,*56*, 357–367.CrossRefGoogle Scholar - Kinable, J., Wauters, T., & Vanden Berghe, G. (2014). The concrete delivery problem.
*Computers & Operations Research*,*48*, 53–68.CrossRefGoogle Scholar - Lawler, E. L. (1973). Optimal sequencing of a single machine subject to precedence constraints.
*Management Science*,*19*(5), 544–546.CrossRefGoogle Scholar - Lawler, E. L. (1977). A pseudopolynomial algorithm for sequencing jobs to minimize total tardiness.
*Annals of Discrete Mathematics*,*1*, 331–342.CrossRefGoogle Scholar - Lawler, E. L. (1978). Sequencing jobs to minimize total weighted completion time subject to precedence constraints.
*Algorithmic Aspects of Combinatorics*,*2*, 75–90.CrossRefGoogle Scholar - Lenstra, J. K., Rinnooy Kan, A. H. G., & Brucker, P. (1977).
*Studies in integer programming*(Vol. 1, pp. 343–362)., Complexity of machine scheduling problems. Annals of discrete mathematics Amsterdam: Elsevier.CrossRefGoogle Scholar - McMahon, G. B., & Lim, C. J. (1993). The two-machine flow shop problem with arbitrary precedence relations.
*European Journal of Operational Research*,*64*(2), 249–257.CrossRefGoogle Scholar - Nemeth, G., Lovrek, I., & Sinkovic, V. (1997). Scheduling problems in parallel systems for telecommunications.
*Computing*,*58*, 199–223.CrossRefGoogle Scholar - Nessah, R., & Kacem, I. (2012). Branch-and-bound method for minimizing the weighted completion time scheduling problem on a single machine with release dates.
*Computers & Operations Research*,*39*(3), 471–478.CrossRefGoogle Scholar - Pan, Y. (2003). An improved branch and bound algorithm for single machine scheduling with deadlines to minimize total weighted completion time.
*Operations Research Letters*,*31*(6), 492–496.CrossRefGoogle Scholar - Pan, Y., & Shi, L. (2005). Dual constrained single machine sequencing to minimize total weighted completion time.
*IEEE Transactions on Automation Science and Engineering*,*2*(4), 344–357.CrossRefGoogle Scholar - Pinedo, M. L. (2008).
*Scheduling: Theory, Algorithms, and Systems*. Berlin: Springer.Google Scholar - Posner, M. E. (1985). Minimizing weighted completion times with deadlines.
*Operations Research*,*33*, 562–574.CrossRefGoogle Scholar - Potts, C. N. (1985). A lagrangean based branch and bound algorithm for single machine sequencing with precedence constraints to minimize total weighted completion time.
*Management Science*,*31*(10), 1300–1311.CrossRefGoogle Scholar - Potts, C. N., & Van Wassenhove, L. N. (1983). An algorithm for single machine sequencing with deadlines to minimize total weighted completion time.
*European Journal of Operational Research*,*12*(4), 379–387.CrossRefGoogle Scholar - Potts, C. N., & Van Wassenhove, L. N. (1985). A branch and bound algorithm for the total weighted tardiness problem.
*Operations Research*,*33*(2), 363–377.Google Scholar - Shirazi, B. A., Kavi, K. M., & Hurson, A. R. (Eds.). (1995).
*Scheduling and load balancing in parallel and distributed systems*. Los Alamitos: IEEE Computer Society Press.Google Scholar - Sule, D. R. (2007).
*Production planning and industrial scheduling: Examples, case studies and applications*. Boca Raton: CRC Press.Google Scholar - Talla Nobibon, F., & Leus, R. (2011). Exact algorithms for a generalization of the order acceptance and scheduling problem in a single-machine environment.
*Computers & Operations Research*,*38*(1), 367–378.CrossRefGoogle Scholar - Tanaka, S., & Fujikuma, S. (2012). A dynamic-programming-based exact algorithm for general single-machine scheduling with machine idle time.
*Journal of Scheduling*,*15*, 347–361.CrossRefGoogle Scholar - Tanaka, S., Fujikuma, S., & Araki, M. (2009). An exact algorithm for single-machine scheduling without machine idle time.
*Journal of Scheduling*,*12*, 575–593.CrossRefGoogle Scholar - Tanaka, S., & Sato, S. (2013). An exact algorithm for the precedence-constrained single-machine scheduling problem.
*European Journal of Operational Research*,*229*(2), 345–352.CrossRefGoogle Scholar - Tang, L., Xuan, H., & Liu, J. (2007). Hybrid backward and forward dynamic programming based Lagrangian relaxation for single machine scheduling.
*Computers & Operations Research*,*34*(9), 2625–2636.CrossRefGoogle Scholar - Valdes, J., Tarjan, R., & Lawler, E. (1982). The recognition of series parallel digraphs.
*SIAM Journal on Computing*,*11*(2), 298–313.CrossRefGoogle Scholar - van de Velde, S. L. (1995). Dual decomposition of a single-machine scheduling problem.
*Mathematical Programming*,*69*(1–3), 413–428.Google Scholar - van den Akker, J., Diepen, G., & Hoogeveen, J. (2010). Minimizing total weighted tardiness on a single machine with release dates and equal-length jobs.
*Journal of Scheduling*,*13*, 561–576.CrossRefGoogle Scholar - Xu, J., & Parnas, D. (1990). Scheduling processes with release times, deadlines, precedence and exclusion relations.
*IEEE Transaction on Software Engineering*,*16*(3), 360–369.CrossRefGoogle Scholar