Skip to main content
Log in

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

  • Published:
Journal of Scheduling Aims and scope Submit manuscript

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.

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.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11

Similar content being viewed by others

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.

    Article  Google 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.

    Article  Google Scholar 

  • Akturk, M. S., & Ozdemir, D. (2000). An exact approach to minimizing total weighted tardiness with release dates. IIE Transactions, 32, 1091–1101.

    Article  Google 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.

    Article  Google 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.

    Article  Google 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.

    Article  Google Scholar 

  • Calinescu, G., Fernandes, C., Kaul, H., & Zelikovsky, A. (2012). Maximum series-parallel subgraph. Algorithmica, 63(1–2), 137–157.

    Article  Google 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.

    Article  Google 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.

    Article  Google 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.

    Article  Google 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.

    Article  Google Scholar 

  • Fisher, M. L. (1981). The Lagrangian relaxation method for solving integer programming problems. Management Science, 27(1), 1–18.

    Article  Google 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.

    Article  Google 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.

    Article  Google 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.

    Article  Google 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.

    Article  Google 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.

    Article  Google 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.

    Article  Google Scholar 

  • Kinable, J., Wauters, T., & Vanden Berghe, G. (2014). The concrete delivery problem. Computers & Operations Research, 48, 53–68.

    Article  Google Scholar 

  • Lawler, E. L. (1973). Optimal sequencing of a single machine subject to precedence constraints. Management Science, 19(5), 544–546.

    Article  Google Scholar 

  • Lawler, E. L. (1977). A pseudopolynomial algorithm for sequencing jobs to minimize total tardiness. Annals of Discrete Mathematics, 1, 331–342.

    Article  Google Scholar 

  • Lawler, E. L. (1978). Sequencing jobs to minimize total weighted completion time subject to precedence constraints. Algorithmic Aspects of Combinatorics, 2, 75–90.

    Article  Google 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.

    Book  Google 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.

    Article  Google Scholar 

  • Nemeth, G., Lovrek, I., & Sinkovic, V. (1997). Scheduling problems in parallel systems for telecommunications. Computing, 58, 199–223.

    Article  Google 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.

    Article  Google 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.

    Article  Google 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.

    Article  Google 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.

    Article  Google 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.

    Article  Google 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.

    Article  Google 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.

  • 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.

    Article  Google 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.

    Article  Google 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.

    Article  Google 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.

    Article  Google 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.

    Article  Google Scholar 

  • Valdes, J., Tarjan, R., & Lawler, E. (1982). The recognition of series parallel digraphs. SIAM Journal on Computing, 11(2), 298–313.

    Article  Google 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.

    Article  Google 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.

    Article  Google Scholar 

Download references

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.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Morteza Davari.

Appendix: Proofs

Appendix: Proofs

Proof of Lemma 1

Consider the set of constraints (10). For each \((i,j) \in A\), the following inequalities hold:

$$\begin{aligned}&x_{i1} + \dots + x_{in} \le 1 - x_{j1} = x_{j2}+ \dots + x_{jn} \\&x_{i2} + \dots + x_{in} \le 1 - x_{j1} -x_{j2} = x_{j3}+\dots + x_{jn} \\&\quad \quad \quad \quad \quad \quad \quad \quad \quad \vdots \\&x_{i(n-1)} + x_{in} \le 1 - x_{j1} - \dots - x_{j(n-1)} = x_{jn} \\&x_{in} \le 1 - x_{j1} - \dots - x_{jn} = x_{j1}+\dots + x_{jn} -1 \\ \end{aligned}$$

By adding the above inequalities, we obtain

$$\begin{aligned} x_{i1} + 2 x_{i2} + 3 x_{i3}&+ \dots + n x_{in} \le \\&x_{j1} + 2 x_{j2} + 3 x_{j3} + \dots + n x_{jn} - 1. \end{aligned}$$

This is exactly the associated constraint in the set of constraints (5). As a result, the solution space of the LP relaxation of ASF\(^{\prime }\) is included in that of ASF. To show that the inclusion is strict, consider the following fractional values for the decision variables corresponding with a couple \((i,j)\in A\): \(x_{i1}=x_{i5}=0.5\) and \(x_{j4}=1\). These values can be seen to respect the weak but not the strong formulation. \(\square \)

Proof of Theorem 1

Since \(1||\sum w_j T_j\) is a relaxation of \(1|\beta |\sum w_j T_j\), the optimal value of \(I^{\prime }\) and any valid lower bound for this optimal value is considered as a valid lower bound for \(I\). \(\square \)

Proof of Theorem 2

The following equality holds:

$$\begin{aligned} \mathrm {TWT}^*(I) =&\sum _{j \in \mathcal {T}}{w_j (C_j(S^*) - d_j)} \\ =&\sum _{j \in N}{w_j (C_j(S^*) - d_j)} \\&- \sum _{j \in \mathcal {E}}{w_j (C_j(S^*) - d_j)} = \sum _{j \in N}{w_j C_j(S^*)} \\&- \sum _{j \in N}{w_j d_j} + \sum _{j \in \mathcal {E}}{w_j (d_j - C_j(S^*))}. \end{aligned}$$

Recall that \(\bar{lb}_{I^{{\prime }{\prime }}}\) is a valid lower bound on the value \(\sum _{j \in N}{w_j C_j(S^*)}\) and \(lb^E\) is a valid lower bound on the value \(\sum _{j \in \mathcal {E}}{w_j (d_j - C_j(S^*))}\). \(\square \)

Proof of Theorem 3

We argue that

$$\begin{aligned} \mathrm {LB}_0 = L_0(\lambda _\mathrm{PV}) = \hat{L}_1(\lambda _{\mathrm{PV}},\mu _0) \le \hat{L}_1(\lambda _{\mathrm{TPA}},\mu _{\mathrm{TPA}})\\ \le L_1(\lambda _{\mathrm{TPA}},\mu _{\mathrm{TPA}}) = \mathrm {LB}_1. \end{aligned}$$

The first inequality follows from Theorem 3 in van de Velde (1995), where it is shown that TPA generates a series of monotonically increasing lower bounds. The second inequality corresponds with Theorem 1. \(\square \)

Proof of Theorem 4

\(\mathrm {LB}_1({\text {NO}})\) is obtained by solving \(\mathrm {LR}_{\mathrm{P}_1}\) with \(A^{\prime }=\emptyset \) and \(A^{{\prime }{\prime }} = A\), so with the same multipliers the problem associated with \(\mathrm {LB}_1({\text {NO}})\) is a relaxation of the problem associated with \(\mathrm {LB}_1({\text {VSP}})\). The multipliers are updated with TPA in both cases, and will indeed be the same for a given \(k_{\max }\), so the theorem holds. \(\square \)

Proof of Theorem 5

We introduce \(g_{B_i}(\lambda ,\mu ,S)\) as follows:

$$\begin{aligned} g_{B_i}(\lambda ,\mu ,S) = \sum \limits _{j \in B_i}^{}{(w_j - \lambda _j) T_{j}} + \sum \limits _{j \in B_i}^{}{\lambda _j (C_j - d_j)}+ \\ \sum \limits _{j \in B_i}^{}{\sum _{k \in \mathcal {Q}_j} {\mu _{jk} (C_j + p_k - C_k)}}. \end{aligned}$$

Let \(S_1^*\) be an optimal solution to \(\mathrm {LB}^*_1\) and \({S_2^*} = ({S_{B_1}^*},\dots ,{S_{B_\kappa }^*})\) an optimal solution to \(\mathrm {LB}^*_2\). The following result is derived.

$$\begin{aligned}&\mathrm {LB}^*_1 = g(\lambda ^*,\mu ^*,S_1^*) \le g(\lambda ^*,\mu ^*,{S_2^*}) \\&= \sum _{i=1}^{\kappa }{g_{B_i}(\lambda ^*,\mu ^*,S^*_{B_i})} \le \sum _{i=1}^{\kappa } {g_{B_i}(\lambda _{B_i}^*,\mu _{B_i}^*,S^*_{B_i})} = \mathrm {LB}^*_2. \end{aligned}$$

\(\square \)

Proof of Theorem 6

If \(\min _{\pi \in \varPi _\mathcal {A}} \{C_{\max }(\sigma _B|\pi )\} \) is greater than \(\max _{j\in \mathcal {A}}{\{\bar{\delta _j}\}}\) then at least one job in \(\mathcal {A}\) cannot be scheduled before its deadline and the schedule \((\sigma _B,\sigma _E)\) is not feasible. \(\square \)

Proof of Theorem 7

If \(\tau _2^{\prime } = 0\), then \(\varGamma _{jk}(t,\tau _1,\tau _2) = \hat{\varGamma }_{jk} (t,\tau _1,\tau _2,\tau _2^{\prime })\) and the theorem holds based on Jouglet et al. (2004). If \(\tau _2^{\prime } > 0\), all jobs in \(\mathcal {B}\) are shifted to the left at least \(\tau _2^{\prime }\) units. Also, \(\tau _2\) equals zero because no job is shifted to the right. For all jobs \(i \in \mathcal {B}^{\prime }\) we have \(C_i(S_1) \ge C_i(S_1^{\prime }) \ge d_i\). Consequently, \(\tau _2^{\prime } \sum _{i \in \mathcal {B}^{\prime }}{w_i} \ge 0\) is a lower bound for the gain of rescheduling jobs in \(\mathcal {B}\). The value \(w_j \max \{0,t+p_j-d_j\} - w_j \max \{0,\hat{r}_j+p_j-d_j\}\) equals the gain of rescheduling job \(j\) and the value \(w_k \max \{0,\hat{r}_k+p_k-d_k\}- w_k \max \{0,t+\tau _1+p_k-d_k\}\) equals the gain of rescheduling job \(k\). By adding lower bounds for rescheduling gains of all jobs in \(U = \mathcal {B}\cup \{j,k\}\), a lower bound for the gain of interchanging jobs \(j\) and \(k\) is obtained. \(\square \)

Proof of Theorem 8

We examine under which conditions the jobs belonging to the set \(U = \mathcal {B} \cup \{j,k\}\) do not violate any of their deadlines and/or precedence constraints. Precedence constraints are not violated because jobs \(j,k \in E_B\) are deliberately chosen such that \(\mathcal {Q}_k \cap \mathcal {Q}_j = \mathcal {Q}_k\) and job \(j\) does not violate its deadline simply because \(C_j(S_1^{\prime }) \le C_j(S_1) \le \bar{\delta }_j\).

Condition 1 ensures that job \(k\) does not violate its deadline. We argue that \(t = st_j(S_1) \le \bar{\delta }_j - p_j\). If \(\bar{\delta }_j - p_j \le \bar{\delta }_k - \tau _1 - p_k\) holds, then we infer \(C_k(S_1^{\prime }) = t+\tau _1+p_k \le \bar{\delta }_k\). Also, if \(\varPsi \le \hat{\delta }_k\), then all unscheduled jobs including \(j\) and \(k\) are completed at or before \(\hat{\delta }_k\). Note that \(\hat{\delta }_k\) is preferred over \(\bar{\delta }_k\) because \(\bar{\delta }_k \le \hat{\delta }_k\), thus condition 1 is less violated, and the inequality \(\varPsi \le \hat{\delta }_k\) also implies \(C_k(S_1^{\prime }) \le \bar{\delta }_k\).

Condition 2 verifies that no job in \(\mathcal {B}\) violates its deadline. On the one hand, if \(\tau _2 = 0\), then no job in \(\mathcal {B}\) is shifted to the right, which means \(C_i(S_1^{\prime }) \le C_i(S_1) \le \bar{\delta }_i\) for each job \(i \in \mathcal {B}\). On the other hand, if \(\tau _2 > 0\) and \(\varPsi \le \min _{i \in \mathcal {B}}\{\hat{\delta }_i\}\), then for all jobs \(i \in \mathcal {B}\) we conclude: \(C_i(S_1^{\prime }) \le \varPsi \le \min _{i \in \mathcal {B}}\{\hat{\delta }_i\} \le \hat{\delta }_i\). Again, \(\hat{\delta }_i\) is preferred over \(\bar{\delta }_i\) because of the same reasoning as for the preference of \(\hat{\delta }_k\) over \(\bar{\delta }_k\). \(\square \)

Proof Lemma 4

Let \(f\) have a global minimum at value \(t^*\). Depending on the values of the parameters \(\alpha ,\beta ,a\), and \(b\), the function \(f\) behaves differently. We discuss four possible cases for the parameter combinations to prove this lemma (see also Fig. 12). In the two first cases, we assume that \(\alpha \ge \beta \). Case (a): in this case, \(a \le b\), and then \(f\) is constant on interval \([u,a]\) and is increasing on interval \([a,v]\), as shown in Fig. 12a. Case (b): \(a > b, f\) is constant on interval \([u,b]\), decreasing on interval \([b,a]\) and increasing on interval \([a,v]\), in line with Fig. 12b. The following results are valid for these two cases: 1- If \(u \le a \le v\) then \(t^* = a\). 2- If \(a < u, t^* = u\) because \(f\) is always increasing on interval \([u,v]\). 3- If \(a > v, t^* = v\) because \(f\) is always decreasing on interval \([u,v]\). We conclude that \(t^* = \min \{\max \{a,u\},v\}\) for the first two cases.

In the next two cases, we assume that \(\alpha < \beta \). Case (c): \(a < b, f\) is constant for \([u,b]\), increasing for \([b,a]\) and decreasing for \([a,v]\), as shown in Fig. 12c. In this case, \(t^*\) equals either \(u\) or \(v\). On the one hand, if \(\alpha (b - \max \{a,u\}) \ge (\beta - \alpha )(\max \{v,b\}-b) \Rightarrow \alpha (\bar{v} - \bar{u}) \ge \beta (\bar{v} - b)\) then \(f(v) \ge f(u)\) is inferred and \(t^* = u\) is concluded. On the other hand, if \( \alpha (\bar{v} - \bar{u}) < \beta (\bar{v} - b)\) then \(t^* = v\) is concluded. Case (d): \(a \ge b, f\) is constant for \([u,b]\) and decreasing for \([b,v]\); see Fig. 12d. We find that \(t^*\) equals \(v\) for this case. \(\square \)

Fig. 12
figure 12

Four possible cases for the parameter combinations in the proof of Lemma 4

Proof of Theorem 9 and Theorem 10

Similar to the proof of Theorem 8. \(\square \)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Davari, M., Demeulemeester, E., Leus, R. et al. Exact algorithms for single-machine scheduling with time windows and precedence constraints. J Sched 19, 309–334 (2016). https://doi.org/10.1007/s10951-015-0428-y

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10951-015-0428-y

Keywords

Navigation