Abstract
A cutting-plane approach is developed for the problem of optimally scheduling jobs with arbitrary precedence constraints on unrelated parallel machines to minimize weighted completion time. While the single machine version of this problem has attracted much research efforts, enabling solving problems with up to 100 jobs, not much has been done on the multiple machines case. A novel mixed-integer programming model is presented for the problem with multiple machines. For this model, many classes of valid inequalities that cut off fractional linear programming solutions are developed. This leads to an increase of the linear programming lower bound from 89.3 to 94.6% of the corresponding optimal solution, and a substantial reduction in the computational time of an optimal branch-and-bound algorithm for this problem. This enables us to report optimal solutions for problem instances with up to 25 jobs and 5 machines, which is more than twice the size of problems for which optimal solutions have been reported in the literature thus far. For a special case of the problem—that of minimizing makespan—application of our model helps solve 18 of 27 previously unsolved problem instances to optimality.
Similar content being viewed by others
References
Afzairad, M., & Rezaeian, J. (2016). Resource-constrained unrelated parallel machine scheduling problem with sequence dependent setup times, precedence constraints and machine eligibility restrictions. Computers and Industrial Engineering, 98, 40–52.
Agarwal, Y. K. (2018). Network loading problem: Valid inequalities from 5-and higher partitions. Computers and Operations Research, 99, 123–134.
Arroyo, J. E. C., & Leung, J. Y.-T. (2017a). An effective iterated greedy algorithm for scheduling unrelated parallel batch machines with non-identical capacities and unequal ready times. Computers and Industrial Engineering, 105, 84–100.
Arroyo, J. E. C., & Leung, J. Y.-T. (2017b). Scheduling unrelated parallel batch processing machines with non-identical job sizes and unequal ready times. Computers and Operations Research, 78, 117–128.
Balas, E. (1985). On the facial structure of scheduling polyhedra. Mathematical Programming Study, 24, 179–218.
Che, A., Zhang, S., & Wu, X. (2017). Energy-conscious unrelated parallel machine scheduling under time-of-use electricity tariffs. Journal of Cleaner Production, 156, 688–697.
Chen, Z.-L., & Powell, W. B. (1999). Solving parallel machine scheduling problems by column generation. INFORMS Journal on Computing, 11(1), 78–94.
Cheng, C.-Y., & Huang, L. W. (2017). Minimizing total earliness and tardiness through unrelated parallel machine scheduling using distributed release time control. Journal of Manufacturing Systems, 42, 1–10.
Coll, P. E., Ribeiro, C. C., & de Souza, C. C. (2006). Multiprocessor scheduling under precedence constraints: Polyhedral results. Discrete Applied Mathematics, 154, 770–801.
Correia, I., Lourenço, L. L., & Saldanha-da-Gama, F. (2012). Project scheduling with flexible resources: Formulation and inequalities. OR Spectrum, 34, 635–663.
de Farias Jr, I. R., Zhoa, H., & Zhao, M. (2010). A family of inequalities valid for the robust single machine scheduling polyhedron. Computers and Operations Research, 37, 1610–1614.
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, 255–270.
Fanjul-Peyro, L., Perea, F., & Ruiz, R. (2017). Models and matheuristics for the unrelated parallel machine scheduling problem with additional resources. European Journal of Operatonal Research, 260, 482–493.
Graham, R. L., Lawler, E. L., Lenstra, J. K., & Rinnoy Kan, A. H. G. (1979). Optimization and approximation in deterministic sequencing and scheduling: A survey. Annals of Discrete Mathematics, 5, 287–326.
Hassan, M. A., Kacem, I., Martin, S., & Osman, I. M. (2016). Unrelated parallel machine scheduling problem with precedence constraints: Polyhedral analysis and branch-and-cut. In Combinatorial optimization: 4th international symposium (Vol. ISCO, pp. 308–319).
Herrmann, J., Proth, J.-M., & Sauer, N. (1997). Heuristics for unrelated machine scheduling with precedence constraints. European Journal of Operational Research, 102, 528–537.
Joo, C. M., & Kim, B. S. (2017). Rule-based meta-heuristics for integrated scheduling of unrelated parallel machines, batches, and heterogeneous delivery trucks. Applied Soft Computing, 53, 457–476.
Kolisch, R., & Sprecher, A. (1997). PSPLIB-a project scheduling problem library: OR software-ORSEP operations research software exchange program. European Journal of Operational Research, 96(1), 205–216.
Kumar, V. S. A., Marathe, M. V., Parthasarathy, S., & Srinivasan, A. (2009). Scheduling on unrelated machines under tree-like precedence constraints. Algorithmica, 55, 205–226.
Liu, C. (2013). A hybrid genetic algorithm to minimize total tardiness for unrelated parallel machine scheduling with precedence constraints. Mathematical Problems in Engineering. Article ID 537127
Liu, C., & Yang, S. (2011). A heuristic serial schedule algorithm for unrelated parallel machine scheduling with precedence constraints. Journal of Software, 6(6), 1146–1153.
Mokotoff, E. (2001). Parallel machine scheduling problems: A survey. Asia-Pacific Journal of Operational Research, 18(2), 193–242.
Mokotoff, E. (2004). An exact algorithm for the identical parallel machine scheduling problem. European Journal of Operational Research, 152.3(2004), 758–769.
Mokotoff, E., & Chrétienne, P. (2002). A cutting plane algorithm for the unrelated parallel machine scheduling problem. European Journal of Operational Research, 141, 515–525.
Nishi, T., & Hiranaka, Y. (2013). Lagrangian relaxation and cut generation for sequence-dependent setup time flowshop scheduling problems to minimise the total weighted tardiness. International Journal of Production Research, 51(16), 4778–4796.
Nishi, T., Hiranaka, Y., & Inuiguchi, M. (2010). Lagrangian relaxation with cut generation for hybrid flowshop scheduling problems to minimize the total weighted tardiness. Computers and Operations Research, 37, 189–198.
Olaguíel, R. S.-V., & Goerlich, J. M. T. (1993). The project scheduling polyhedron: Dimension, facets, and lifting theorems. European Journal of Operational Research, 67, 204–220.
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.
Queyranne, M. (1993). Structure of a simple scheduling polyhedron. Mathematical Programming, 58, 263–285.
Queyranne, M., & Wang, Y. (1991). Single-machine scheduling polyhedra with precedence constraints. Mathematics of Operations Research, 16(1), 1–20.
Schulz, A. S. (1995). Scheduling to minimize total weighted completion time: Performance guarantees of LP-based heuristics and lower bounds. In International conference on integer programming and combinatorial optimization. Springer, Berlin.
Shahvari, O., & Logendran, R. (2017). An Enhanced tabu search algorithm to minimize a bi-criteria objective in batching and scheduling problems on unrelated-parallel machines with desired lower bounds on batch sizes. Computers and Operations Research, 77, 154–176.
Sitters, R. (2017). Approximability of average completion time scheduling on unrelated machines. Mathematical Programming Series A, 161, 135–158.
Smith, W. E. (1956). Various optimizer for single-stage production. Naval Research Logistics Quarterly, 3, 59–66.
Šorić, K. (2000). A cutting plane algorithm for a single machine scheduling problem. European Journal of Operational Research, 127, 383–393.
Szmerekovsky, J. G. (2003). Maximizing project net-present value and minimizing work-in-progress costs in projects. Cleveland, OH: Case Western Reserve University.
Tavakkoli-Moghaddan, R., Taheri, F., Bazzazi, M., Izadi, M., & Sassani, F. (2009). Design of a genetic algorithm for bi-objective unrelated parallel machines scheduling with sequence-dependent setup times and precedence constraints. Computers and Operations Research, 36, 3224–3230.
Woo, Y.-B., Jung, S., & Kim, B. S. (2017). A rule-based genetic algorithm with an improvement heuristic for unrelated parallel machine scheduling problem with time-dependent deterioration and multiple rate-modifying activities. Computers and Industrial Engineering, 109, 179–190.
Acknowledgements
The authors would like to thank the authors of Coll et al. (2006) for sharing problem instances reported in their work. All of the problem instances on which solutions have been reported in our paper have been made available as an online supplement. We also thank the editor and the two anonymous referees whose comments helped improve the contribution of the paper.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendix: More valid inequalities
Appendix: More valid inequalities
In this section, nine different classes of valid inequalities are presented. While inclusion of these inequalities did not help improve \(lb_1\), these inequalities play a significant role in fathoming the branch-and-bound tree quicker; refer to Sect. 5.1 for empirical evidence. Additional notation is now introduced that is needed to describe these inequalities.
1.1 Derived values
\(MinC^k(S)\): a lower bound on the sum of completion times of jobs in set S, all scheduled to be processed on k
\(fthr^{k}(i,j,i^{'})\): directed flowthrough (defined below) on k along \(i\rightarrow j\rightarrow i^{'}\)
\(InActivity^k_j\): \(\sum \nolimits _{i=0,i\ne j}^{N}x^k_{ij}\), denoting the total flow into job j on k.
Flowthrough, \(fthr^{k}(i,j,i^{'})\), denotes a lower bound on the “flow” (as defined by the x variables) originating at i and reaching \(i^{'}\) via j. This is calculated as \(fthr^{k}(i,j,i^{'})=x^k_{ij}-\sum \nolimits _{h=1, h\ne i, h\ne i^{'}}^{N+1}x^k_{jh}\). Intuitively, this captures the “incoming” flow at j from i, reduced by the amount of flow that leaves j but does not go to \(i^{'}\).
1.2 Inequality class 1
Consider machine k and a subset \(S\subseteq {\mathcal {N}}\) of s jobs that complete on k. Then, the following inequality holds:
The validity of the inequality stems from the fact that in an integral solution, the right-hand side of the inequality equals \(MinC^k(S)\) if the jobs in S are scheduled on machine k, and negative otherwise.
Computing \(MinC^k(S)\) is based on the following observation. Given a set of jobs, \(i_1,\ldots ,i_s\), re-indexed if necessary such that \(p^k_{i_1}\le \ldots \le p^k_{i_s}\), a lower bound on the sum of their completion times on machine k is \(p^k_{i_1}+(p^k_{i_1}+p^k_{i_2})+\ldots +(p^k_{i_1}+p^k_{i_2}+\ldots +p^k_{i_s-1}+p^k_{i_s})\).
1.3 Inequality class 2
If h succeeds j in G, then, for a machine k, the following inequality holds:
The validity of the inequality stems from the fact that if h is scheduled to be processed first on k, the right-hand side is 0. The left-hand side of the inequality, \(InActivity^k_j\), cannot be positive as j cannot be scheduled on k as j should complete before h’s start.
1.4 Inequality class 3
Consider triplet \(h, i, j\in {\mathcal {N}}\), each job distinct, and two distinct machines \(k_1\) and \(k_2\). Then, the following inequality holds:
The validity of the inequality follows from the fact that if \(x^{k_1}_{hi}=1\), i is scheduled on \(k_1\) immediately after h. This precludes the possibility of h being scheduled after i, or of j being scheduled after h on \(k_2\) or of h being scheduled after j on \(k_2\). Other cases are similarly proven.
1.5 Inequality class 4
Consider pair \(i,j\in {\mathcal {N}}\), each job distinct, and two distinct machines \(k_1\) and \(k_2\). The following inequality holds:
The validity of this inequality is proven along similar lines to that of Inequality 3.
1.6 Inequality class 5
Consider distinct jobs \(i, j\in {\mathcal {N}}\). Then, the following inequality holds:
The validity of this inequality follows since if i immediately precedes j on a machine k, then neither can j immediately precede i on any machine, nor can i immediately precede j on machine other than k.
1.7 Inequality class 6
Consider \(j\in {\mathcal {N}}\) and k. The following inequality holds:
In a feasible integer solution, the left-hand side is the sum of the completion time of job i that immediately precedes j in a schedule, both on k and the processing time of j. The right-hand side denotes the actual completion time of j on machine k. This proves the validity of the inequality.
1.8 Inequality class 7
Consider the case where \(fthr^k(i,j,i^{'})=1\). In this case, the lower bound on the completion time of \(i^{'}\) can be updated to \(C=max(MinCT^{k}(i^{'}), p^k_{i} + p^{k}_{j} + p^k_{i^{'}})\). Then, for \(h\notin \{i,j,i^{'}\}\), the following inequality holds:
To prove the validity of this inequality, first note that in a feasible solution, the possible values of \(fthr^k(i,j,i^{'})\) can be 1, 0 or \(-\,1\). If \(fthr^k(i,j,i^{'})=1\), then \(V^k_{i^{'}h}=C_{i^{'}} x^k_{i^{'}h}\ge C x^k_{i^{'}h}\). If \(fthr^k(i,j,i^{'})=0\), the right-hand side of the inequality becomes \(MinCT^k(i^{'})-C(1-x^k_{i^{'}h})\). If \(x^k_{i^{'}h}=1\), the inequality simplifies to \(C_{i^{'}}\ge MinCT^k(i^{'})\). If \(x^k_{i^{'}h}=0\), the right-hand side is non-positive and the inequality is trivially true. The case where \(fthr^k(i,j,i^{'})=-1\) follows along similar lines.
1.9 Inequality class 8
Consider i, and j that is either independent of i or succeeds i in G. If \(x^k_{ij}=1\) for some k, then \(V^k_{ij}\ge MinCT(i)\), by virtue of definition of MinCT(i). If, however, j does not immediately succeed i on any machine, \(\sum \nolimits _{k\in {\mathcal {K}}}\sum \nolimits _{i^{'}=1,i^{'}\ne j}^{N+1}x^k_{ii^{'}}=1\). This proves the validity of the following inequality.
1.10 Inequality class 9
Consider distinct \(i,j,i^{'}\in {\mathcal {N}}\) such that \((i,i^{'})\in E\) and \((j,i^{'})\in E\). For machine k, the following inequality holds:
Note that if \(x^k_{ij}=1\), earliest that \(i^{'}\) can start is \(C_i+p^k_j\), proving the validity of the inequality. In the computational tests, a generalized version of this inequality is used. The generalization is the case where \((i,h)\in E\), \((h,i^{'})\in E\), \((j,j^{'})\in E\) and \((j^{'},i^{'})\in E\). In this case, the inequality becomes \(C_i^{'} - C_i \ge P^{min}(i^{'}) + Max\{p^k_j+P^{min}(j^{'}),P^{min}(h)\}x^k_{ij}\). Further generalization is possible by considering predecessors that are 3 or more levels above \(i^{'}\), but computationally that did not provide significantly better improvement.
Rights and permissions
About this article
Cite this article
Venkateshan, P., Szmerekovsky, J. & Vairaktarakis, G. A cutting plane approach for the multi-machine precedence-constrained scheduling problem. Ann Oper Res 285, 247–271 (2020). https://doi.org/10.1007/s10479-019-03212-3
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10479-019-03212-3