Abstract
In the multiprocessor scheduling problem to minimize the total job completion time, an optimal schedule can be obtained by the shortest processing time rule and the completion time of each job in the schedule can be used as a guarantee for scheduling revenue. However, in practice, some jobs will not arrive at the beginning of the schedule but are delayed and their delayed arrival times are given to the decision-maker for possible rescheduling. The decision-maker can choose to reject some jobs in order to minimize the total operational cost that includes three cost components: the total rejection cost of the rejected jobs, the total completion time of the accepted jobs, and the penalty on the maximum tardiness for the accepted jobs, for which their completion times in the planned schedule are their virtual due dates. This novel rescheduling problem generalizes several classic NP-hard scheduling problems. We first design a pseudo-polynomial time dynamic programming exact algorithm and then, when the tardiness can be unbounded, we develop it into a fully polynomial time approximation scheme. The dynamic programming exact algorithm has a space complexity too high for truthful implementation; we propose an alternative to integrate the enumeration and the dynamic programming recurrences, followed by a depth-first-search walk in the reschedule space. We implemented the alternative exact algorithm in C and conducted numerical experiments to demonstrate its promising performance.
Similar content being viewed by others
Data availability
The C programs implementing the DFS-DP algorithm and for random instance generation are available upon request, within the first three years.
Notes
A standard treatment can be applied if the disruption is informed after the job processing has started, see Wang et al. (2018).
We remark that in our general setting a non-delayed job can be rejected for cost recovery purpose, typically when its rejection cost is much lower compared to its completion time if it were kept for processing.
Here 0 serves as the boundary condition; for example, [0] represents the empty set.
In Case 1, no new combination of \(\mathcal{S}\) is involved.
In Case 2, a possibly new combination \((s'_1, \ldots , s'_{i-1}, s''_i, s'_{i+1}, \ldots , s'_m) \in \mathcal{S}\) is involved.
In Case 3, no new combination of \(\mathcal{S}\) is involved.
References
Addis B, Carello G, Grosso A, Tànfani E (2016) Operating room scheduling and rescheduling: a rolling horizon approach. Flex Serv Manuf J 28:206–232
Bartal Y, Leonardi S, Marchetti-Spaccamela A, Sgall J, Stougie L (2000) Multiprocessor scheduling with rejection. In: Proceedings of ACM-IEEE SODA 2000, pp 95–103
Bean JC, Birge JR, Mittenthal J, Noon CE (1991) Matchup scheduling with multiple resources, release dates and disruptions. Oper Res 39:470–483
Cheng Y, Sun S (2007) Scheduling linear deteriorating jobs with rejection on a single machine. Eur J Oper Res 194:18–27
Clausen J, Larsen J, Larsen A, Hansen J (2001) Disruption management—operations research between planning and execution. OR/MS Today 28:40–43
Dahal K, Al-Arfaj K, Paudyal K (2015) Modelling generator maintenance scheduling costs in deregulated power markets. Eur J Oper Res 240:551–561
Garey MR, Johnson DS (1979) Computers and intractability: a guide to the theory of np-completeness. W. H. Freeman and Company, San Francisco
Graham RL, Lawler EL, Lenstra JK, Rinnooy Kan A, Rinnooy Kan A H G (1979) Optimization and approximation in deterministic sequencing and scheduling: a survey. Ann Disc Math 5:287–326
Gupta JND, Ruiz-Torres AJ, Webster S (2003) Minimizing maximum tardiness and number of tardy jobs on parallel machines subject to minimum flow-time. J Oper Res Soc 54:1263–1274
Hall NG, Liu Z, Potts CN (2007) Rescheduling for multiple new orders. INFORMS J Comput 19:633–645
Hall NG, Potts CN (2004) Rescheduling for new orders. Oper Res 52:440–453
Hall NG, Potts CN (2010) Rescheduling for job unavailability. Oper Res 58:746–755
Li D, Lu X (2017) Two-agent parallel-machine scheduling with rejection. Theoret Comput Sci 703:66–75
Liu Z, Lu L, Qi X (2018) Cost allocation in rescheduling with machine unavailable period. Eur J Oper Res 266:16–28
Liu Z, Ro YK (2014) Rescheduling for machine disruption to minimize makespan and maximum lateness. J Sched 17:339–352
Luo W, Jin M, Su B, Lin G (2020) An approximation scheme for rejection-allowed single-machine rescheduling. Comput Indus Eng 146 (Article 106574)
Luo W, Luo T, Goebel R, Lin G (2018) Rescheduling due to machine disruption to minimize the total weighted completion time. J Sched 21:565–578
Manavizadeh N, Goodarzi AH, Rabbani M, Jolai F (2013) Order acceptance/rejection policies in determining the sequence in mixed model assembly lines. Appl Math Model 37:2531–2351
Ou J, Zhong X (2017) Bicriteria order acceptance and scheduling with consideration of fill rate. Eur J Oper Res 262:904–907
Rinnooy Kan AHG (1976) Machine scheduling problems: classification, complexity, and computations. Springer
Shabtay D (2014) The single machine serial batch scheduling problem with rejection to minimize total completion time and total rejection cost. Eur J Oper Res 233:64–74
Unal AT, Uzsoy R, Kiran AS (1997) Rescheduling on a single machine with part-type dependent setup times and deadlines. Ann Oper Res 70:93–113
Wang D, Yin Y, Cheng TCE (2018) Parallel-machine rescheduling with job unavailability and rejection. Omega 81:246–260
Wang D-J, Liu F, Jin Y (2017) A multi-objective evolutionary algorithm guided by directed search for dynamic scheduling. Comput Oper Res 79:279–290
Wu SD, Storer RH, Chang PC (1992) A rescheduling procedure for manufacturing systems under random disruptions. In: Fandel G, Gulledge T, Jones A (eds) New directions for operations research in manufacturing. Springer, Berlin, Heidelberg, pp 292–306
Yin Y, Cheng TCE, Wang D, Wu CC (2016) Improved algorithms for single-machine serial-batch scheduling with rejection to minimize total completion time and total rejection cost. IEEE Trans Syst Man Cybern Syst 46:1578–1588
Yin Y, Cheng TCE, Wang D-J (2016) Rescheduling on identical parallel machines with machine disruptions to minimize total completion time. Eur J Oper Res 252:737–749
Yu G, Argüello M, Song G, McCowan SM, White A (2003) A new era for crew recovery at continental airlines. INFORMS J Appl Anal 33:5–22
Zhang L, Lu L, Yuan J (2010) Single-machine scheduling under the job rejection constraint. Theor Comput Sci 411:1877–1882
Zhang X, Lin W-C, Wu C-C (2021) Rescheduling problems with allowing for the unexpected new jobs arrival. J Comb Optim. https://doi.org/10.1007/s10878-021-00803-4
Zhao Q, Lu L, Yuan J (2016) Rescheduling with new orders and general maximum allowable time disruptions. 4OR 14:261–280
Zweben M, Davis E, Daun B, Deale MJ (1993) Scheduling and rescheduling with iterative repair. IEEE Trans Syst Man Cybern 23:1588–1596
Acknowledgements
The authors are grateful to the handling editor and the reviewers for their helpful comments and suggestions. WL is supported by K. C. Wong Magna Fund in Ningbo University, the Humanities and Social Sciences Planning Foundation of the Ministry of Education (Grant No. 18YJA630077), Zhejiang Provincial Natural Science Foundation (Grant No. LY19A010005), the Ningbo Natural Science Foundation (Grant No. 2018A610198), and the National Natural Science Foundation of China (Grant No. 11971252). RC, AC, GL and AZ are supported by the NSERC Canada. BS is supported partially by the Humanities and Social Science Foundation of Ministry of Education of China (Grant No. 18YJAZH080) and Science and Technology Department of Shaanxi Province (Grant No. 2020JQ-654). AZ is supported by the National Natural Science Foundation of China (Grant Nos. 11971139 and 11771114) and the China Scholarship Council (Grant No. 201908330090).
Author information
Authors and Affiliations
Corresponding authors
Ethics declarations
Interests
The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
A An illustration of the dynamic programming exact algorithm
A An illustration of the dynamic programming exact algorithm
Below is an illustration of executing the dynamic programming exact algorithm on the 10-job instance described in Table 1, for the combination \((s_1, s_2) = (r_\mathcal{D}+13, r_\mathcal{D}) = (63, 50)\). The following Table 4 lists all the transitions from a true state with j to a true state with \(j+1\), for \(j = 0, 1, 2, 3, 6, 7, 8, 9, 10\), in each of which we give every true state a number, and the third column records from which true state and in which case it is first time derived true, except the initial true state. The last column contains additional comments, if any, for possibly better implementations of the exact algorithms (see Sect. 5), and the objective values for those true states \((n; M_1, M_2, P_1, P_2, Z, T, R)\) with \(s_i = \max \{M_i, r_\mathcal{D}\}\) for each machine i.
There are six true states of the form \((10; 63, \cdot , \cdot , \cdot , \cdot , \cdot , \cdot )\) corresponding to six feasible reschedules under the constraint \((s_1, s_2) = (63, 50)\), respectively, and the minimum objective value is 314. One can trace back the optimal reschedule in which the earlier schedule on machine 1 processes the jobs 7, 9, the later schedule on machine 1 is empty, the earlier schedule on machine 2 processes the jobs 1, 2, 3, and the later schedule on machine 2 processes the job 10.
Rights and permissions
About this article
Cite this article
Luo, W., Chin, R., Cai, A. et al. A tardiness-augmented approximation scheme for rejection-allowed multiprocessor rescheduling. J Comb Optim 44, 690–722 (2022). https://doi.org/10.1007/s10878-022-00857-y
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10878-022-00857-y