Skip to main content
Log in

The Longest Processing Time rule for identical parallel machines revisited

  • Published:
Journal of Scheduling Aims and scope Submit manuscript

Abstract

We consider the \(P_m || C_{\max }\) scheduling problem where the goal is to schedule n jobs on m identical parallel machines \((m < n)\) to minimize makespan. We revisit the famous Longest Processing Time (LPT) rule proposed by Graham in 1969. LPT requires to sort jobs in non-ascending order of processing times and then to assign one job at a time to the machine whose load is smallest so far. We provide new insights into LPT and discuss the approximation ratio of a modification of LPT that improves Graham’s bound from \(\left( \frac{4}{3} - \frac{1}{3m} \right) \) to \(\left( \frac{4}{3} - \frac{1}{3(m-1)} \right) \) for \(m \ge 3\) and from \(\frac{7}{6}\) to \(\frac{9}{8}\) for \(m=2\). We use linear programming to analyze the approximation ratio of our approach. This performance analysis can be seen as a valid alternative to formal proofs based on analytical derivation. Also, we derive from the proposed approach an \(O(n \log n)\) time complexity heuristic. The heuristic splits the sorted job set in tuples of m consecutive jobs (\(1,\dots ,m; m+1,\dots ,2m;\) etc.) and sorts the tuples in non-increasing order of the difference (slack) between largest job and smallest job in the tuple. Then, given this new ordering of the job set, list scheduling is applied. This approach strongly outperforms LPT on benchmark literature instances and is competitive with more involved approaches such as COMBINE and LDM.

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

References

  • Abolhassani, M., Chan, T. H., Chen, F., Esfandiari, H., Hajiaghayi, M., Hamid, M., et al. (2016). Beating ratio 0.5 for weighted oblivious matching problems. In P. Sankowski & C. Zaroliagis (Eds.), 24th Annual European symposium on algorithms (ESA 2016) (Vol. 57, pp. 3:1–3:18).

  • Alon, N., Azar, Y., Woeginger, G. J., & Yadid, Y. (1998). Approximation schemes for scheduling on parallel machines. Journal of Scheduling, 1, 55–66.

    Article  Google Scholar 

  • Blocher, J. D., & Sevastyanov, D. (2015). A note on the coffman-sethi bound for LPT scheduling. Journal of Scheduling, 18, 325–327.

    Article  Google Scholar 

  • Chen, B. (1993). A note on LPT scheduling. Operation Research Letters, 14, 139–142.

    Article  Google Scholar 

  • Chen, B., Potts, C. N., & Woeginger, G. J. (1999). A review of machine scheduling: Complexity, algorithms and approximability. In D. Z. Du & P. M. Pardalos (Eds.), Handbook of combinatorial optimization: Volume 1–3. New York: Springer.

    Google Scholar 

  • Chimani, M., & Wiedera, T. (2016). An ILP-based proof system for the crossing number problem. In P. Sankowski & C. Zaroliagis (Eds.), 24th annual European symposium on algorithms (ESA 2016) (Vol. 57, pp. 29:1–29:13).

  • Coffman, E. G, Jr., Garey, M. R., & Johnson, D. S. (1978). An application of bin-packing to multiprocessor scheduling. SIAM Journal on Computing, 7, 1–17.

    Article  Google Scholar 

  • Coffman, E. G, Jr., & Sethi, R. (1976). A generalized bound on LPT sequencing. Revue Francaise d’Automatique Informatique, Recherche Operationelle Supplement, 10, 17–25.

    Google Scholar 

  • Della Croce, F., Pferschy, U., & Scatamacchia, R. (2018). Approximation results for the incremental knapsack problem. In Combinatorial algorithms: 28th international workshop, IWOCA 2017, Springer lecture notes in computer science (Vol. 10765, pp. 75–87).

  • Dosa, G. (2004). Graham example is the only tight one for P \(||\) Cmax (in Hungarian). Annales Univ Sci Budapest, 47, 207–210.

    Google Scholar 

  • Dosa, G., & Vizvari, A. (2006). The general algorithm lpt(k) for scheduling identical parallel machines. Alkamazott Matematikai Lapok, 23(1), 17–37. (in Hungarian).

    Google Scholar 

  • Fischetti, M., & Martello, S. (1987). Worst-case analysis of the differencing method for the partition problem. Mathematical Programming, 37, 117–120.

    Article  Google Scholar 

  • França, P. M., Gendreau, M., Laporte, G., & Müller, F. (1994). A composite heuristic for the identical parallel machine scheduling problem with minimum makespan objective. Computers & Operations Research, 21, 205–210.

    Article  Google Scholar 

  • Frangioni, A., Necciari, E., & Scutellà, M. G. (2004). A multi-exchange neighborhood for minimum makespan parallel machine scheduling problems. Journal of Combinatorial Optimization, 8, 195–220.

    Article  Google Scholar 

  • Frenk, J. B. G., & Rinnooy Kan, A. H. G. (1987). The asymptotic optimality of the LPT rule. Mathematics of Operations Research, 12, 241–254.

    Article  Google Scholar 

  • Garey, M. R., & Johnson, D. S. (1979). Computers and intractability. New York: W. H. Freeman.

    Google Scholar 

  • Graham, R. L. (1969). Bounds on multiprocessors timing anomalies. SIAM Journal on Applied Mathematics, 17, 416–429.

    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. In P. L. Hammer, E. L. Johnson, & B. H. Korte (Eds.), Discrete optimization II, annals of discrete mathematics (Vol. 5, pp. 287–326).

  • Gupta, J. N. D., & Ruiz-Torres, A. J. (2001). A listfit heuristic for minimizing makespan on identical parallel machines. Production Planning & Control, 12(1), 28–36.

    Article  Google Scholar 

  • He, Y., Kellerer, H., & Kotov, V. (2000). Linear compound algorithms for the partitioning problem. Naval Research Logistics (NRL), 47(7), 593–601.

    Article  Google Scholar 

  • Hochbaum, D. S. (Ed.). (1997). Approximation Algorithms for NP-hard Problems. Boston: PWS Publishing Co.

    Google Scholar 

  • Hochbaum, D. S., & Shmoys, D. B. (1987). Using dual approximation algorithms for scheduling problems theoretical and practical results. Journal of the ACM, 34, 144–162.

    Article  Google Scholar 

  • Iori, M., & Martello, S. (2008). Scatter search algorithms for identical parallel machine scheduling problems. In Metaheuristics for scheduling in industrial and manufacturing applications (pp. 41–59).

  • Jansen, K. (2010). An eptas for scheduling jobs on uniform processors: Using an milp relaxation with a constant number of integral variables. SIAM Journal on Discrete Mathematics, 24, 457–485.

    Article  Google Scholar 

  • Jansen, K., Klein, K. M., & Verschae, J. (2017). Improved efficient approximation schemes for scheduling jobs on identical and uniform machines. In Proceedings of the 13th workshop on models and algorithms for planning and scheduling problems (MAPSP 2017) (pp. 77–79).

  • Karmarkar, N., & Karp, R. M. (1982). The differencing method of set partitioning. Technical Report UCB/CSD 82/113, University of California, Berkeley.

  • Lee, C. Y., & Massey, J. D. (1988). Multiprocessor scheduling: Combining LPT and MULTIFIT. Discrete Applied Mathematics, 20(3), 233–242.

    Article  Google Scholar 

  • Leung, J., Kelly, L., & Anderson, J. H. (2004). Handbook of scheduling: Algorithms, models, and performance analysis. Cambridge: CRC Press, Inc.

    Google Scholar 

  • Michiels, W., Korst, J., Aarts, E., & van Leeuwen, J. (2007). Performance ratios of the Karmarkar–Karp differencing method. Journal of Combinatorial Optimization, 13(1), 19–32.

    Article  Google Scholar 

  • Mireault, P., Orlin, J. B., & Vohra, R. V. (1997). A parametric worst-case analysis of the LPT heuristic for two uniform machines. Operations Research, 45(1), 116–125.

    Article  Google Scholar 

  • Paletta, G., & Ruiz-Torres, A. J. (2015). Partial solutions and multifit algorithm for multiprocessor scheduling. Journal of Mathematical Modelling and Algorithms in Operations Research, 14(2), 125–143.

    Article  Google Scholar 

  • Pinedo, M. L. (2016). Scheduling: Theory, algorithms, and systems (5th ed.). Berlin: Springer.

    Book  Google Scholar 

Download references

Acknowledgements

The authors wish to thank an anonymous referee for pointing out the works on the LPT rule by Dosa (2004) and Dosa and Vizvari (2006). This work has been partially supported by “Ministero dell’Istruzione, dell’Università e della Ricerca” Award “TESUN-83486178370409 finanziamento dipartimenti di eccellenza CAP. 1694 TIT. 232 ART. 6.”

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Federico Della Croce.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendix: Proof of Proposition 6

Appendix: Proof of Proposition 6

Proof

The relevant cases involve instances with \(2m + 2 \le n \le 3m\), where LPT schedules the critical job in third position on a machine. Also, notice that each non-critical machine must process at most three jobs to contradict the claim; otherwise, the results of Lemma 1 hold for \(k \ge 4\). In addition, an optimal solution must assign at most three jobs to each machine. Otherwise, we would have \( C_{m}^*({\mathcal {J}}) \ge \sum \nolimits _{j=n-3}^{n} p_j \implies p_n \le \frac{C_{m}^*({\mathcal {J}})}{4}\) which induces a \(\left( \frac{5}{4} - \frac{1}{4m}\right) \) performance guarantee according to expression (3) (with \(j^\prime = n\)).

Considering the above requirements for both LPT schedule and the optimal solution, we introduce different LP formulations which consider appropriate bounds on the completion times of the machines as well as on the optimal makespan according to the number of jobs and machines involved. We analyze two macro-cases defined by the two different LP modelings.

  • Case a): \(n = 3m ~(m=3 ~ n=9; m=4 ~ n=12);\)

  • Case b): \(2m+2 \le n \le 3m - 1 ~(m=3 ~ n=8; m=4 ~ n=10,11).\)

1.1 Case a)

Since \(n=3m\), an optimal solution must process exactly three jobs on each machine to contradict the claim. This implies a lower bound on the optimum equal to \(p_1 + p_{(3m-1)} + p_{3m}\) as well as that condition \(p_1 \le 2p_{3m}\) must hold (otherwise \(p_{n} \le \frac{C_{m}^*({\mathcal {J}})}{4}\)). Given the last condition, LPT couples jobs \(1,2,\dots ,m\), respectively, with jobs \(2m,(2m-1),\dots ,(m+1)\) on the machines. A valid upper bound on \(C_{m}^{LPT}({\mathcal {J}})\) is hence given by \(p_1 + p_{(m+1)} + p_{3m}\). In order to evaluate the worst-case LPT performance, we introduce a simple LP formulation with nonnegative variables \(p_j\) (\(j=1,\dots ,n\)) related to job processing times and variable opt which again represents \(C_{m}^*({\mathcal {J}})\). As in model (8)–(16), we minimize the value of \(C_{m}^*({\mathcal {J}})\) after setting w.l.o.g. \(C_{m}^{LPT}({\mathcal {J}})=1\). The following LP model is implied:

$$\begin{aligned} \text {minimize}\quad&opt \end{aligned}$$
(64)
$$\begin{aligned} \text {subject to}\quad&\sum \limits _{j=1}^{3m} p_j \le m\cdot opt \end{aligned}$$
(65)
$$\begin{aligned}&p_1 + p_{(3m -1)} + p_{3m} - opt \le 0 \end{aligned}$$
(66)
$$\begin{aligned}&p_1 - 2p_{3m} \le 0 \end{aligned}$$
(67)
$$\begin{aligned}&p_1 + p_{(m + 1)} + p_{3m} \ge 1 \end{aligned}$$
(68)
$$\begin{aligned}&p_{(j + 1)} - p_j \le 0 \quad j=1, \dots , 3m - 1; \end{aligned}$$
(69)
$$\begin{aligned}&p_j \ge 0 \quad j=1, \dots , 3m; \end{aligned}$$
(70)

Constraints (65)–(70) represent the above-specified conditions together with the sorting of the jobs by decreasing processing time (constraint (69)). Solving model (64)–(70) by means of an LP solver (e.g., CPLEX) provides the optimal solution value of opt for any value of m. More precisely, we have \(opt=0.8571\dots =\frac{6}{7}\) for \(m=3\) and \(opt=0.8421\dots =\frac{16}{19}\) for \(m=4\). The claim is showed by the corresponding upper bounds \(\frac{1}{opt}\) on the ratio \(\frac{C_{m}^{LPT}({\mathcal {J}})}{C_{m}^*({\mathcal {J}})}\) which are equal to \(\frac{7}{6}\) for \(m=3\) and to \(\frac{19}{16} (< \frac{11}{9})\) for \(m=4\).

1.2 Case b)

As said above, LPT assigns three jobs to the critical machine. The possible values of n and m also imply that there is a non-critical machine in the LPT solution which schedules three jobs. As in Case a), we introduce an LP formulation which reconsiders model (8)–(16). For the target non-critical machine loading three jobs, we distinguish the processing time of the last job assigned to the machine, represented by a nonnegative variable \(p^{\prime }\), from the contribution of the other two jobs, represented by nonnegative variable \(t^{\prime }\). Variables \(t_{c},t^{\prime \prime }, opt\) have the same meaning as in model (8)–(16).

First notice that \(p^{\prime } \ge p_{(n-1)}\) holds as the critical job is n and that neither job \(n-1\) nor job n can contribute to the value of \(t^{\prime }\). Also, in any LPT schedule both \(t_{c}\) and \(t^{\prime }\) are given by the sum of two jobs where the first job is between job 1 and job m. The following relations straightforwardly hold:

$$\begin{aligned} t_{c} \le p_1 + p_{(m+1)}; ~ t^{\prime } \ge p_m + p_{(n-2)} \end{aligned}$$

Considering these conditions and the reasoning applied to model (8)–(16), we get the following LP model:

$$\begin{aligned} \text {minimize}\quad&opt \end{aligned}$$
(71)
$$\begin{aligned} \text {subject to}\quad&\sum \limits _{j=1}^{n} p_j - m\cdot opt \le 0 \end{aligned}$$
(72)
$$\begin{aligned}&(t_{c} + p_n) + (t^{\prime } + p^{\prime }) + t^{\prime \prime } - \sum \limits _{j=1}^{n} p_j = 0 \end{aligned}$$
(73)
$$\begin{aligned}&t_{c} - (t^{\prime } + p^{\prime }) \le 0 \end{aligned}$$
(74)
$$\begin{aligned}&(m-2)t_{c} - t^{\prime \prime } \le 0 \end{aligned}$$
(75)
$$\begin{aligned}&t_{c} + p_n = 1 \end{aligned}$$
(76)
$$\begin{aligned}&p_{(n-1)} - p^{\prime } \le 0 \end{aligned}$$
(77)
$$\begin{aligned}&p_m + p_{(n-2)} - t^{\prime } \le 0 \end{aligned}$$
(78)
$$\begin{aligned}&t_{c} - (p_1 + p_{(m+1)}) \le 0 \end{aligned}$$
(79)
$$\begin{aligned}&p_{(j + 1)} - p_j \le 0 \quad j=1, \dots , n - 1; \end{aligned}$$
(80)
$$\begin{aligned}&p_j \ge 0 \quad j=1, \dots , n; \end{aligned}$$
(81)
$$\begin{aligned}&t_{c}, t^{\prime }, t^{\prime \prime }, p^{\prime }, opt \ge 0 \end{aligned}$$
(82)

Model (71)–(82) constitutes a backbone LP formulation for all subcases analyzed in the following.

1.2.1 \(P_m || C_{\max }\) instances with \(m=4\), \(n=11\)

To contradict the claim, an optimal solution must assign three jobs to three machines and two jobs to one machine. Assume first that the optimal solution processes the first three jobs on two machines. Since the optimal solution must schedule at least five jobs on two machines, a valid lower bound on \(C_{m}^*({\mathcal {J}})\) is equal to one half of the sum \((p_1 + p_2 + p_3 + p_{10} + p_{11})\). Thus, we can add constraint

$$\begin{aligned} opt \ge \frac{p_1 + p_2 + p_3 + p_{10} + p_{11}}{2} \end{aligned}$$

to model (71)–(82). The corresponding LP optimal solution gives an upper bound on ratio \(\frac{C_{m}^{LPT}({\mathcal {J}})}{C_{m}^*({\mathcal {J}})}\) equal to \(\frac{1}{opt} = \frac{11}{9}\).

Likewise, should the optimal solution schedule the first three jobs on three different machines, a valid lower bound on \(C_{m}^*({\mathcal {J}})\) would correspond to the following constraint

$$\begin{aligned} opt \ge \frac{p_1 + p_2 + p_3 + p_7 + p_8 + p_9 + p_{10} + p_{11}}{3} \end{aligned}$$

since the optimal solution has to process at least eight jobs on three machines. If we add the last constraint to model (71)–(82), the LP optimal solution yields again a value of \(\frac{1}{opt}\) equal to \(\frac{11}{9}\).

1.2.2 \(P_m || C_{\max }\) instances with \(m=4\), \(n=10\)

An optimal solution assigns either three jobs to three machines and one job to the other machine, or three jobs to two machines and two jobs to the others. We again distinguish whether the optimal solution processes the first three jobs either on two or three machines. In the first case, since two machines must process at least four jobs in an optimal solution, a valid lower bound on \(C_{m}^*({\mathcal {J}})\) is equal to one half of the sum \((p_1 + p_2 + p_3 + p_{10})\). The optimal objective value of model (71)–(82) after adding constraint

$$\begin{aligned} opt \ge \frac{p_1 + p_2 + p_3 + p_{10}}{2} \end{aligned}$$

provides an approximation ratio equal to \(\frac{1}{opt} = \frac{11}{9}\). In the second case, as three machines must necessarily process at least seven jobs, we can add to the LP model the following constraint which represents a valid lower bound on \(C_{m}^*({\mathcal {J}})\):

$$\begin{aligned} opt \ge \frac{p_1 + p_2 + p_3 + p_7 + p_8 + p_9 + p_{10}}{3} \end{aligned}$$

From the corresponding LP optimal solution, we get again \(\frac{1}{opt}=\frac{11}{9}\).

1.2.3 \(P_m || C_{\max }\) instances with \(m=3\), \(n=8\)

We have to address the case where an optimal solution assigns two jobs to a machine and three jobs to the other two machines. This implies relations \(C_{m}^*({\mathcal {J}}) \ge p_1 + p_8\) and \(C_{m}^*({\mathcal {J}}) \ge \frac{p_1 + p_2 + p_6 + p_7 + p_8}{2}\) and the corresponding constraints to be added to model (71)–(82):

$$\begin{aligned} opt \ge p_1 + p_8; ~ opt \ge \frac{p_1 + p_2 + p_6 + p_7 + p_8}{2} \end{aligned}$$

For the solution provided by LPT, we now analyze all possible assignments of the jobs which can give \(t^{\prime }\). LPT separately schedules the first three jobs and job 4 with job 3 on the third machine. It immediately follows that if the target non-critical machine is the first one, then it must necessarily process job 6 as second job, i.e., \(t^{\prime } = p_1 + p_6\). Instead, if the non-critical machine is the second machine, then \(t^{\prime }\) must be contributed by \(p_2\) and \(p_5\), i.e., \(t^{\prime } = p_2 + p_5\). To show this, first notice that the assignment \(t^{\prime } = p_2 + p_6\), which also implies \(p^{\prime } = p_7\) as well as having job 5 with job 3 and 4, cannot occur, as it would prevent the critical machine from scheduling three jobs. Also, job 7 cannot be scheduled as second job on such non-critical machine. Eventually, a third possibility is to have \(t^{\prime } = p_3 + p_4\). Solving model (71)–(82) with the constraints related to the three possible assignments of \(t^{\prime }\) provides the following upper bounds on ratio \(\frac{C_{m}^{LPT}({\mathcal {J}})}{C_{m}^*({\mathcal {J}})}\):

$$\begin{aligned}&t^{\prime } = p_1 + p_6 \implies \frac{1}{opt} = \frac{15}{13} \left( < \frac{7}{6} \right) ; \\&t^{\prime } = p_2 + p_5 \implies \frac{1}{opt} = \frac{7}{6}; \\&t^{\prime } = p_3 + p_4 \implies \frac{1}{opt} = \frac{7}{6}. \end{aligned}$$

Putting together all the stated results, we get the claim. \(\square \)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Della Croce, F., Scatamacchia, R. The Longest Processing Time rule for identical parallel machines revisited. J Sched 23, 163–176 (2020). https://doi.org/10.1007/s10951-018-0597-6

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10951-018-0597-6

Keywords

Navigation