A SURVEY OF SINGLE MACHINE SCHEDULING ... - Semantic Scholar

4 downloads 983 Views 466KB Size Report
sive review of minimizing the (weighted) number of tardy (late) jobs. This review evaluates .... could solve 50-job problems using a few seconds of computer time.
JOURNAL OF INDUSTRIAL AND MANAGEMENT OPTIMIZATION Volume 10, Number 1, January 2014

doi:10.3934/jimo.2014.10.219 pp. 219–241

A SURVEY OF SINGLE MACHINE SCHEDULING TO MINIMIZE WEIGHTED NUMBER OF TARDY JOBS

Muminu O. Adamu Department of Mathematics, University of Lagos Akoka, Yaba, Lagos, Nigeria

Aderemi O. Adewumi School of Mathematics, Statistics & Computer Science University of Kwazulu-Natal Private Bag X5400, Durban, 4000, South Africa

(Communicated by T. C. Edwin Cheng) Abstract. This paper presents a review of single machine scheduling to minimize the weighted number of tardy jobs. The problem involves processing n jobs on a single machine, each having processing time pj and due date dj . The aim is to schedule the jobs to meet their due date. A job is tardy if the completion time of job j is Cj > dj and on-time otherwise. This paper assesses works done to minimize the weighted number of tardy jobs by providing an extensive review of authors, methods and techniques used. Finally, the possible direction for future research is presented.

1. Introduction. The review of scheduling problems has been considered in several literatures. None to the best of our knowledge have considered the comprehensive review of minimizing the (weighted) number of tardy (late) jobs. This review evaluates the production scheduling of the performance measure to minimize the weighted number of tardy jobs on a single machine. A number of review articles provide detailed records of particular aspect of scheduling. Van der Akker and Hoogeveen [134] gave a survey of the problem of minimizing the total number of late jobs. They concentrated mostly on exact algorithms and their correctness proofs. Jain and Meeran [64], considered deterministic job shop scheduling: past, present and future. Allahverdi et al [5] surveyed scheduling problems with setup times or cost. Senthilkumar and Narayanan [118] reviewed single machine scheduling problem with uniform parallel machines. Mathirajan and Sivakumar [97] considered the review, classification and simple meta-analysis on scheduling of batch processors in semiconductor. Kravchenko and Werner [76] presented a survey on parallel machine problems with equal processing times. Cheng et al [30] considered a survey on machine scheduling problems in which the processing time of a task is dependent on its starting time in a schedule. Shabtay and Steiner [122] reviewed scheduling with controllable processing times. A survey of scheduling problems with availability constraints motivated by preventive maintenance 2010 Mathematics Subject Classification. Primary: 90Bxx, 90Cxx; Secondary: 90C59, 68W25, 62L20, 90B35, 90B36, 68T20, 53C35. Key words and phrases. Single machine, Just-In-Time, Scheduling, batching, precedence constraint.

219

220

MUMINU O. ADAMU AND ADEREMI O. ADEWUMI

was considered by Ma et al [94]. Some other reviews on scheduling are Potts and Wassenhove [110], Albers and Brucker [3], Webster and Baker [137], Brucker et al [21], Potts and Kovalyor [109], Baptiste [12], Cheng et al [32], Yang and Liao [138], Allahverdi et al [4], Baker and Scudder [8], and Cheng and Gupta [31]. Both static and dynamic problems for minimizing the (weighted) number of tardy (late) jobs are presented. In a static problem a certain number of jobs are available simultaneously and are scheduled in a shop that is idle; where no other jobs will arrive until all are completely scheduled [Conway et al [35], French [47]]. In a dynamic problem, the jobs arrive intermittently in an unpredictable manner and arrivals will continue indefinitely into the future. The classification of this problem is described by three types of information: the jobs and operations to be processed, the number and types of machines in the shop and the constraints and conditions to be considered. In using three parameters, we follow Graham et al [50] notation α|β|γ. Other authors, notably Conway et al [35], Lawler et al [83], Lenstra [88] and Rinnooy [113] introduced further parameters. The α field describes the shop (machine) environment (the flow pattern and the number of machines), i.e. 1-Single machine, F-Flow Shop P,Q,R parallel machines (P: Identical machines; Q: Uniform machines; R: Unrelated machines), J-Job Shop and O-Open shop. β the constraints on the jobs; they include the following, preemption, release time, setup, batching precedence, etc. and γ the scheduling criteria (i.e. minimize the (weighted)Pnumber P of tardy P (late) jobs and Pthe (weighted) number of early and tardy jobs Uj , wj Uj , (Uj + Vj ) and (uj Uj + vj Vj ). This survey is organized as follows. The various constraints on the jobs not restricted to release time, setup, batching, etc are reviewed in the subsequent sections. The paper is concluded with suggestions for possible future work. 2. Problem formulation. The single machine scheduling problem involves processing n jobs (numbered 1, 2, 3, · · · , n) with or without interruption (preemption) on a single machine which can handle only a job at a time. Job j (j = 1, 2, 3, · · · , n) can be available at time zero or at a release date, rj . Each job requires positive integer processing time, pj and a positive integer due date, dj , where pj ≤ dj . The aim is to schedule all jobs to meet their due dates, i.e. to minimize the (weighted) number of tardy (late) jobs. A job is tardy (late) if the completion time of job j is Cj ≥ dj . At other instance, each job j has a non-negative weight wj which is the penalty incurred if it is completed after its due date, dj . According to Moore [102], scheduling jobs according to the earliest due date order provides an optimal or near optimal solution to the problem of minimizing the number of late jobs (i.e. d1 < · · · < dn ). A job is early when Cj ≤ dj ; otherwise if Cj > dj the job is tardy (late). M’Hallah and Bulfin [95] gave a general formulation for the problem to minimize the weighted number of tardy jobs with release time. For ease of discussion, they P maximized the weighted number of on-time jobs represented by 1|rj | wj (1 − Uj ). Let rj be the release time of job j, Ci be the completion time of the job in position i, and xij be one if job j is in position i and on-time, and zero otherwise. If job j is not on time, it is not included P in the schedule, and xij = 0, i = 1, 2, · · · , n. The mathematical model of 1|r | wj (1 − Uj ) is j P P P (1|rj | wj (1 − Uj )M ax.wne =)M ax.wne = i=1,n j=1,n wj xij X − Ci + (pj + rj )xij ≤ 0, i = 1, · · · , n (1) j=1,n

SINGLE MACHINE SCHEDULING: SURVEY

X

− Ci + Ci−1 +

pj xij ≤ 0, i = 1, · · · , n

221

(2)

j=1,n

− Ci −

X

dj xij ≤ 0, i = 1, · · · , n

(3)

j=1,n

X

xij ≤ 1, i = 1, · · · , n

(4)

xij ≤ 1, j = 1, · · · , n

(5)

j=1,n

X j=1,n

xij ∈ {0, 1}, i = 1, · · · , n; j = 1, · · · , n (6) Ci ≥ 0, i = 1, · · · , n (7) The objective, wne, maximizes the sum of the weights of all on-time jobs. The n type (1) constraints state that the completion time of the job in position i is greater than or equal to its release time plus its processing time. In this case, the machine will be idle until job i is released. There are (n − 1) type (2) constraints. They state that the completion time of the job in position i is greater than or equal to the completion time of the job in position i − 1 plus the processing time of the job in position i. In this case, the job in position i must wait for the machine to become free. The n type (3) constraints imply that a job scheduled in position i has its completion time no greater than its due date if it is on-time. Constraints (4) insure that a job is assigned to at most one position. Similarly, the n constraints (5) insure that a position is filled by at most one job. A position may not be filled since not all jobs are on-time; thus the inequality. Constraints (6) force a job to be either on-time in some position or tardy. P P 3. 1| | Uj and 1| | wj Uj problems. Moores [102] article was among the earliest to consider scheduling to minimize the number late jobs on a single machine. He gave an O(n log n) algorithm (sometimes known as Hudgson’s Algorithm) that solves the problem optimally. This procedure was simplified by Emmons [45]. In the note of Sturm [131], he gave a simpler proof of optimality based on the inductive principle on Hudgson’s algorithm solving this problem. Maxwell [98] proposed an integer programming formulation for the problem and, exploiting the special structure of the Simplex Tableau. For the weighted number of tardy jobs, where the jobs have different weights, the problem is known to be NP-hard, even when the jobs all have common due date (Karp [71]). Lawler and Moore [78] derived P a pseudo polynomial dynamic programming algorithm which takes O(n min{ j pj , maxj {dj }}) time. Sahni [117] P P also proposed an algorithm that takes O(n min{ j pj , j wj , maxj {dj }}) time. A branch and bound algorithm was also presented by Villarreal and Bulfin [135] using a dominance theorem and two lower bounding procedures. Their algorithms could solve 50-job problems using a few seconds of computer time. The dominance theorem helped to reduce the size of the problem; resulting in a fast search for the optimal solution to the problem. Tang [132] went further by using some newly introduced dominance rules between jobs to solve up to 85 jobs with a branch and bound method. Potts and Wassenhove [111] proposed an O(nlogn) algorithm for solving the linear programming problem obtained by relaxing the integrality constraints in a zero-one programming formulation of the problem. This linear programming lower bound was used in a reduction algorithm that eliminates jobs from the problem. A

222

MUMINU O. ADAMU AND ADEREMI O. ADEWUMI

branch and bound algorithm that uses lower bounds with a dynamic programming algorithm were used to solve up to 1000 jobs. M’Hallah and Bulfin [96] in their paper proposed a heuristic and an exact algorithm for solving the weighted number of late jobs. The algorithm uses branch and bound with bounds obtained from a surrogate knapsack. They were able to solve jobs of 2500 to optimality in a few seconds with the heuristics in most instances. The exact solution was able to solve to optimality 2500 jobs in about 6 minutes while more difficult instances were solved in about 12 minutes. P 4. 1|d¯j | wj Uj problem. Given a set of jobs N = {1, 2, · · · , n}, with weights, processing times, due dates and deadlines as wj , pj , dj and d¯j respectively, for all j ∈ N . The objective is to schedule the jobs such that Cj ≤ d¯j for all the jobs completion times, Cj , j ∈ N and the number of tardy jobs is minimized. Preemption is or is not allowed and all jobs are available from time zero; with the assumption that dj ≤ d¯j , for all j ∈ P N . This problem is known to be NP hard even if wj = 1 for all j ∈ N (i.e. 1|d¯j | Uj ), Lawler [80]. Hariri and Pott [55] proposed an exact algorithm for solving instances up to 300 jobs of this problem. Baptiste et al [15] proposed an exact method based on a compact Integer Linear Programming (ILP) formulation that allows 30,000 jobs to be solved to optimality. Lin and Cheng [92] considered a relocation problem where they proved the problem to be NP hard when all the jobs have the same tardy weight and same resource requirement. They proposed a dynamic programming algorithm with pseudo-polynomial computational time for minimizing the weighted number of tardy jobs under a common due date.

5. 1|rj |

P

Uj and 1|rj |

P

wj Uj problems.

P 5.1. 1|rj | Uj problem. Lenstra et al [88] showed the problem is NP hard. Dauz`ere-P´er`es [39] proposed a lower bound based on the relevance of a MixedInteger Linear Programming formulation. A heuristic was then presented and its effectiveness was computationally studied by comparison with the lower bound. Baptiste et al [16] presented lower bounds based on Lagrangian relaxation, efficient elimination rules together with strong dominance relation were also used to reduce the search space. They used a branch and bound exploiting these techniques to solve optimally instances with up to 200 jobs. M’Hallah and Bulfin [95] used branch and bound with surrogate relaxation resulting in a multiple-choice knapsack. They got better results compared with Baptiste et al [16]. Ourari et al [105] used an original mathematical Integer Programming Formulation where they showed how both good quality lower and upper bounds can be computed. They compared their experiments with Baptiste et al [16] which demonstrated the efficiency of their approach. In the special case where the release and due dates of the jobs are similarly ordered, i.e. ri < rj =⇒ di ≤ dj , Kise et al [73] proposed a dynamic programming algorithm that runs in O(n2 ). Proofs to support their solution were given. Li et al [90] gave a counter example to show that the proof by Kise et al [73] for solving their problem was incorrect. Under the same assumption, Lawler [80] presented an O(n log n) time algorithm for solving the problem.

SINGLE MACHINE SCHEDULING: SURVEY

223

P 5.2. 1|rj | wj Uj problem. For the general weighted case of the above problem, several literatures are available. Sevaux and Dauz`ere-P´er`es [120] presented the first meta-heuristic for NP-Hard one-machine scheduling problem. A generic algorithm for large instances was proposed and computational experiments performed. Dauz`ere-P´er`es and Sevaux [40] derived an original mixed integer linear programming formulation by relaxing some constraints. They gave a Langrangean relaxation algorithm which gives both lower and upper bounds. They solved more than 100 jobs. Peridy et al [107] showed that a short term scheduling memory approach can be used to strengthen a time-indexed Langragean relaxation. They proposed a branch and bound algorithm using this lower bound to solve to optimality up to 100 jobs. A branch and bound that uses surrogate relaxation resulting in a multiple-choice knapsack was used by M’Hallah and Bulfin [95] to solve the above problem. It solved all previously unsolved instances in the shortest time. They compared the branch and bound to those of Peridy et al [107] and Sadykov [115]. Sadykov [116] presented a branch and check algorithm where a relaxed integer programming formulation is solved by branch and bound and infeasible solutions are cut off using infeasibility cuts. Instances up to 140 jobs were solved to optimality. P P 6. 1|rj , pmtn| Uj and 1|rj , pmtn| wj Uj problems. There are n types of jobs with length pj time, preemption is allowed (i.e. units of the same job do not have to appear contiguously in the schedule), each job with weights wj , and the cost criteria count the (weighted) number of tardy jobs. Hochbaum and Shamir [57] gave algorithms which require O(n log n) and O(n2 ) steps for the unweighted and weighted problems, respectively. The proofs of optimality of their algorithms were presented. Lawler [81] proposed a strongly polynomial algorithm for the preemptive problem with time and space bounds of O(n3 k 2 ) and O(nk 2 ), where k is the number of distinct release dates. If the release dates are distinct, then O(n5 ) and O(n3 ). The time and space bounds of O(n4 ) and O(n2 ) were proposed by Baptiste [11] for the same problem using a dynamic programming algorithm. For the weighted case, Garey and Johnson [48] showed it to be NP hard. Lawler [81] provided a pseudopolynomial in the sum W of the weights of the jobs using bounds O(nk 2 W 2 ) and O(k 2 W ). P P 7. 1|rj , pj = p| Uj and 1|rj , pj = p| wj Uj problems. In this problem, we are given n jobs with release times and due dates. All the jobs have the same processing time p. The objective is to find the non-preemptive schedule that minimizes the (weighted) number of tardy jobs. Carlier [24] claimed to solve this problem in O(n3 log n) time algorithm. However, Chrobak et al [34] showed that this algorithm is indeed very wrong by giving an instance on which it produced a sub-optimal schedule. Chrobak et al [34] modified Baptiste [10] O(n7 ) time algorithm for solving the unweight case of the problem. Baptiste [10] proposed a dynamic programming algorithm of time O(n7 ) to solve the weighted case of this problem. Diepen et al [42] showed that using ILP for solving the LP-relation we can solve the same weighted problem. P P 8. 1|rj , pj = p, pmtn| Uj and 1|rj , pj = p, pmtn| wj Uj problems. Lawler [82] described an O(n log n) time algorithm for solving the unweighted case of the problem. For the weighted case, Baptiste [10] proposed when preemptive is allowed, a

224

MUMINU O. ADAMU AND ADEREMI O. ADEWUMI

O(n10 ) time algorithm for solving the problem using a polynomial dynamic programming algorithm. Baptiste [14] went further to improve the time complexity to O(n4 ) using dynamic programming algorithm. 9. Scheduling with batch setup times. Let there be a set of N independent jobs available at time zero that requires no preemptive processing P in the machine. The jobs belong to F different families f having Nf jobs (so that 1≤f ≤F Nf = N ). Job j of the family f has a processing time pf j , a due date df j and a weight wf j . A setup time Sf is incurred whenever the machine changes over to the processing of a family f job from a job that belongs to another family. In addition, let Cf j be the completion time of job j in family f in same schedule. Then the job is early if Cf j ≤ df j , i.e. Uf j = 0 and tardy if Cf j > df j i.e. Uf j = 1. For the item availability model jobs are ready once they are complete, without having to wait until the completion of other jobs in their families (batches). The standard notations for P batches; i.e. minimizing the (weighted) number of tardy jobs are P given as 1|Sf | Uf j and 1|Sf | wf j Uf j . For the family or batch availability jobs are processed in families (batches) which requires setup time S, and every job’s completion time is the completion time of the last job in its family. • On a serial batching machine, the length of a batch equals the sum of the processing times of its jobs. When a new batch starts, a constant setup time S occurs. • On a parallel batching machine, there are at most b jobs per batch and the length of a batch is the largest processing time of its jobs. The standard P notations for P minimizing the (weighted) number of tardy jobs are given as 1|S| Uj and 1|S| wj Uj . P For the arbitrary number of families, the problem 1|Sf | Uf j is NP hard (Bruno and Downey [23]). A dynamic programming algorithm with complexity O(F 2 N F +1 ) time was given by Monma and Potts [101] for solving this problem. This algorithm is polynomially bounded in the number of jobs, but exponential in the number of families. Crauwels et al [37] presented some heuristic techniques for solving this problem. Crauwels et al [36] presented a branch and bound with lower bounds derived P by relaxing either the set up times or the due dates. For the 1|Sf , df2j = df | Uf j problem, Rote and Woeginger [114] have shown its solvable in O(N ). P For the weighted case, 1|S| wj Uj , Hochbaum and Landy [56] proposed a dynamic programming algorithm. Brucker and Kovalyov [19] also presented another dynamic programming algorithm for the same problem, which was converted into a Fully Polynomial Time Approximation scheme (FPTAS) with complexity O(n3 /ε + n3 log n). P P Erel and Ghosh [46] proposed for the 1|Sf , df j = df | wf j Uf j a O(N min{ f Sf P P P P + f j pf j , maxf {df }, f j wf j }) pseudo polynomial dynamic programming algorithm solution. They also gave a O(N 2 max{log N, 1/ε}) FPTAS which delivers a solution within (1 + ε) times the optional solution for any ε > 0. When jobs with different processing times cannot be processed concurrently on a batch processing machine, batch scheduling with incompatible job families is brought about. Jolai [67] proved that minimizing the number of tardy jobs with incompatible job families on a single batch processing machine is NP hard with respect to id-encoding. Liu and Zhang [93] proved that this problem is strongly unary NP hard. They also developed a dynamic programming algorithm for this problem.

SINGLE MACHINE SCHEDULING: SURVEY

225

Gupta and Ho [51] considered scheduling two job classes and setup times to minimize the number of tardy jobs by proposing some algorithms to solve this problem. The batch processing machine is called an unbounded batch processing machine when up to B (B ≥ n) jobs can be processed simultaneously. For a batch of jobs, the processing time of the batch is equal to the largest processing time among the P jobs in the batch. The unbounded batch scheduling problem, 1|B ≥ n| wj Uj is shown to be NP hard in the ordinary sense by Brucker et al [21]. Ren et al [112] proposed a FPTAS to solve the unbounded batch scheduling problem with time O(n2 (1 + 2gn/ε))2 . Let there be N jobs ready at time zero. The jobs belong to F customers each of which has nj (1 ≤ j ≤ F ) orders. Let pij be processing time, Cij the completion time, dij the due date and wij the weight. A job is on time when Cij ≤ dij and tardy if otherwise. That is, Uij = 0 if Cij ≤ dij and Uij = 1 otherwise. The completion time of each job is equal to the completion time of the batch. When the delivery cost for a batch is considered in the problem given as D, then, the aim is to minimize the total delay P costs for tardy jobs and the total delivery costs for batches. This is shown as 1| | wj Uj + Dj qj , where wj is the weight for each job and its value is given by delay cost for the job, and q the total number of batches. Hall and Potts [52] introduced the suppliers problem of minimizing the sum of P the weighted number of late jobs and batch delivery costs 1| | (wj Uj +Dj qj ). Hall and Potts [52] and Hall [54] gave a pseudo-polynomial solution for this problem. Steiner and Zhang [128] presented a pseudo-polynomial algorithm for the optimal solution of this problem. The problem is NP hard in the ordinary sense. Mazdeh et al [99] presented a meta-heuristic method based on Simulated Annealing and the performance was examined versus exact solutions. Hall and Potts [53] also simplified the assumption that late jobs are delivered in a separate batch at the end of the schedule where they provided efficient algorithms for the problem. Steiner and Zhang [128, 129] considered the above problem with batch setup time to minimize the sum of the weighted number of late P P jobs and the delivery costs 1|Sf | (wj Uj + Dj qj ) and 1|Sf − batch, separate| (wj Uj + Dj qj ). They proposed a pseudo-polynomial algorithm for the case where late jobs are delivered separately and showed that it becomes polynomial for the special cases when jobs have equal weights and equal delivery cost or equal processing times and equal setup times. Huang and Zhang [60] addressed a one-machine batching problem to minimize the weighted number of delayed jobs. They proved a special case where all job processing times and weights are the same to be polynomially solvable. They also developed fast heuristics for solving the general case.

10. Scheduling with precedence. Let there be n jobs J1 , J2 , · · · , Jn to be scheduled on a single machine with each job ready for processing at time zero and uninterrupted processing time, pj for j = 1, 2, · · · , n. The machine performs one job at a time. If the completion time of job j i.e. Cj > dj then it is tardy otherwise, it is early. The penalty for tardiness Uj = 1 and Uj = 0 otherwise, while, wj is the weight when job is tardy. Precedence constraints are represented by partially ordered set (poset) P defined on n points u1 , u2 , · · · , un . If ui is less than uj in P , denoted by ui

pj Uj = Vj = 0 otherwise 0 otherwise Let uj ≥ 0 and vj ≥ 0 be the weights for scheduling job j (j ∈ N ) and for any job j, [aj , dj ] is the time interval job must be completed and on time i.e. aj is the earliest due date P and dj the latest due date of the job j. The standard notation is given as 1| | {uj Uj + vj Vj }. Lann and Mosheiov [77] worked extensively on this standard problem and other P special cases. For the 1| | (Uj + Vj ) problem, using Moores Algorithm, they proposed an optimal O(n log n) time algorithm for solving the problem. They also P gave O(n2 ) time complexity for the 1| | (U +V j j ) problem with windows that solves P it to optimality. The 1|| wj (Uj + Vj ) problem where the weights are symmetric, they gave a dynamicP programming algorithm of time complexity of O(n2 ). For the general problem 1| | (uj Uj + vj VP j ), they gave a dynamic programming algorithm of running time O(N max{Dmax , Pj }) and proposed two heuristics for solving P large instances. The 1|pmtn| (U j + Vj ) is solvable in O(n log n), 1|pmtn, pj = P 1| (uj Uj + vj Vj ) is also solvable in O(n2 ) time. Li et al [89] solved the general case when the start time and due dates are agreeable, i.e. if ai < aj then di ≤ dj for all i, j ∈ N . The problem was shown to be NP complete in the strong sense where heuristics and dynamic programming algorithms were proposed for the problem. Adamu and Abass [1] considered the same problem as Li et al [89].

SINGLE MACHINE SCHEDULING: SURVEY

227

Yeung et al [140] considered minimizing the weighted number of early and tardy jobs with a common due window involving location penalty. They showed the problem is NP complete in the ordinary sense and proposed a dynamic programming based pseudo-polynomial algorithm. 12. Dynamic and stochastic scheduling problems. Most of the literatures have concentrated on deterministic problems. Few literatures considered the dynamic and stochastic model problems. Most of the actual production systems are dynamic in nature. Some of the relevant literature on our objective are given below. Pinedo [108] considered the optimal policy for the single machine problem with exponential processing time and a common due date, which is a random variable with an arbitrary distribution, for minimizing the expected weighted number of tardy jobs. The case when due dates are independent and exponentially distributed was considered by Boxma and Frost [18]. Jung et al [69] proposed rules and efficient optimal algorithms for the number of β-tardy jobs. De et al [41] considered minimizing the expected weighted number of tardy jobs when the processing times follow general random variables but the common job due date is exponentially distributed. Jang [66] and Jang and Klein [65] proposed a dynamic scheduling policy based on a myopic heuristic to minimize the expected number of tardy jobs when the processing times of the jobs are stochastic with a common due date. Seo et al [119] also considered the same problem using mathematical programming models. Baluk [9] evaluated the scheduling of normally distributed jobs with different due dates for the objective of minimizing the number of tardy jobs under chance constraints. Kise and Ibaraki [72] proved that this is NP complete. Soroush [126] considered the problem of minimizing the expected total weighted number of early and tardy jobs. He gave conditions under which the problem is solvable. Hoogeveen et al [59] investigated the problem of scheduling to maximize the number of early jobs on a single machine with Preemption-Restart model. They proved that the shortest remaining processing time (SRPT) rule yields an on-line algorithm with competitive ratio 12 . 13. Bi-Criteria scheduling. Scheduling in real life applications generally involve optimization of more than one objective function. These criteria are often conflicting in nature and are quite complex. There are basically two approaches to address the bi-criteria problems : (i) The criteria are optimized sequentially by first optimizing the primary criteria and then the secondary criterion subject to the value obtained for the primary criterion. (ii) Simultaneously both criteria are optimized, this is also known as Pareto optimality. Nagar et al [103] provided literature survey on multiple and bicriteria scheduling problems. Chen and Bulfin [27] studied complexity of various single machine multicriteria scheduling problems. Some who reviewed bicriteria scheduling problems are Yen and Wan [139], Lei [85] and Hoogeveen [58]. Some ofP criterion scheduling problems considered in literature are total completion time Cj maximum tardiness, PTmax = max{Tj }, Maximum weighted tardiness, max{wj TjP }, total tardiness Tj , maximum earliness, EmaxP= max{Ej }, total flow time, FP, total weighted resource consumption, V = vj Uj , total P weighted tardiness, wj Tj , number of late jobs, Uj , weighted number of late

228

MUMINU O. ADAMU AND ADEREMI O. ADEWUMI

P P jobs, wj Uj , weighted earliness, wj Ej , total weighted earliness, wj Ej , maximum lateness, Lmax . 13.1. Primary and secondary criteria objective. Extending the notation of Graham et al [50], let 1| |γ2 |γ1 denote the single machine bi-criteria problem, where γ1 is the primary criterion and γ2 is the secondary criterion. Vairaktarakis and Lee [133] and Duffuaa et al [44] studied independently the single machine scheduling problem to the total tardiness subject to minP minimize P imal number of tardy jobs, i.e. 1| | Tj | Uj . They proposed several dominance properties of optimal solutions and developed heuristics and branch and bound algorithm that take advantage of the properties to solve the problem. The single machine problem to minimize total weighted earliness P subject P to no tardy jobs was studied by Chand and Schneeberger [25], i.e. 1| | wj Ej | Uj . This problem is NP hard and they proposed heuristics and a dynamic programming algorithm for solving it. Pathumnakul and Egbelu [106] further considered the same problem and proposed a heuristic algorithm based on local optimality conditions. Wan and Yen [136] considered a single machine bicriteria scheduling problem of minimizingP the totalPweighted earliness subject to minimum number of tardy jobs, i.e. 1| | wj Ej | Uj . They developed a heuristic algorithm and an exact branch and bound approach that could optimally solve 30 jobs problems in at most 17410.3s. Karasakal and Koksalan [70] studied two single machine bi-criteria scheduling problems: one to minimize flow time and maximize earliness and, second to minimize total flow time and number of tardy jobs. They proposed Simulated Annealing approach for solving them. Koksalan and Keha [74] used Genetic Algorithms for solving these problems. Chang and Su [26] considered minimizing the number of tardy jobs subject to P maximum lateness, i.e. 1| | Uj |Lmax . They developed an exact branch and bound procedure to optimally solve the problem with ready times for instances up to 50 jobs. Huo et al [63] considered bi-criteria scheduling problems involving the number of tardy jobs and maximum weighted tardiness. They gave NP hardness proofs for scheduling each of them as criterion while the other as secondary Pthe primaryP criterion, i.e. 1| | max{wj Tj }| Uj and 1| | Uj | max{wj Tj } and proposed heuristics P for solving them. Huo P P etPal [62] proved NP hardness of the two problems 1| | Cj | Uj and 1| | Tj | Uj . That is, minimizing of the total completion time subject to number of late jobs and minimizing the total tardiness subject to the number of late jobs on a single machine. The problem of minimizing the summation of the weighted earliness and tardiness subject to the number P of tardy jobs on Pa single machine was studied by Chen and Sheen [28], i.e., 1| | (uj Ej + vj Tj )| Uj . They provided an P optimal algorithm solution. Lee and Vairaktarakis [84] showed the 1| |Emax | Uj problem to be strongly NP hard. Azizoglu et al [7] provided dominance properties for this same problem and developed two heuristics algorithms for it. Ben-Daya and Raouf [17] considered the problem of minimizing the mean tardiness for P a single machine problem subject to minimum number of tardy jobs, i.e. 1| |T¯| Uj . They proposed a branch and bound to solve it. Shabtay and Steiner [123, 124] studied a flexible framework where both job processing times and due dates are decision variables to be determined by the scheduler. The problem they considered has common due date assignment and a convex resource consumption function. The problems 1|dj = d unknown, conv |Z|V, 1|dj = d

SINGLE MACHINE SCHEDULING: SURVEY

229

unknown, conv |V |Z and 1|dj = d unknown, conv|#(V |Z) are shown to be NP hard, where Z is scheduling criterion which includes (weighted) penalties for tardy jobs and the cost of due date assignment and V the second criterion is the total resource consumption cost. The last problem (1|dj = d unknown, conv|#(V |Z)) is to identify the set of Pareto optimal schedules (points) (V, Z), where a schedule S with V = V (S) and Z = Z(S) is called Pareto Optimal (or efficient) if there does not exist another schedule S 0 such that V (S 0 ) ≤ V (S) and Z(S 0 ) ≤ Z(S) with at least one of these inequalities being strict. For the 1|dj = d unknown, conv|F (Z, V ) problem, Shabtay and Steiner [122] provided linear time optimization algorithm. 13.2. Simultaneous criteria objective. Daniels and Sarin [38] considered the single machine model of joint sequencing and resource allocation. The number of tardy jobs being the sequencing criterion. In this problem, the processing time of every job was linearly related to the amount of resource allocated to the job. Theoretical results for constructing the trade-off curve between the number of tardy jobs and the total amount of allocated resource was provided. Cheng et al [29] considered the above problem and proved the complexity of the problem to be NP hard. They provided a pseudo-polynomial dynamic programming algorithm for constructing the trade-off curve. Aryanezhad et al [6] addressed the problem of both minimizing total weighted tardiness and weighted number of tardy jobs. They used Genetic Algorithm to solve P the problem (1| | (αj Tj + wj Uj )). Nelson et al [104] provided branch and bound for the bicriteria problems of minimizing mean flow time and number of tardy jobs, number of tardy jobs and maximum tardiness and lastly, mean flow time and maximum tardiness. They also provided two heuristics for the first problem and one for the second. They also developed a branch and bound approach for the three-criterion problem of minimizing mean flow time, number of tardy jobs, and maximumPtardiness that could optimally solve problems with up to 20 jobs (1| |F, Uj , 1| | Uj , max{Tj }, 1| |F, max{Tj }). Kondakci and Bekirglu [75] addressed minimizing P the total flow time and number of tardy jobs problem in the single machine (1| | F, Uj ). They proved some properties of efficient solutions and presented an exact branch and bound based on three properties to solve the problem optimally. Koksalan and Keha [74] considered the problem of minimizing the flow time and number of tardy jobs on a single machine. They used Genetic Algorithm to solve the problem. Azizoglu et al [7] proved strongly NP hardness for the problem P of minimizing the maximum earliness and number of tardy jobs, i.e., 1| |Emax , Uj . They proposed a heuristic algorithm to solve it. Jolai et al [68] presented a Genetic Algorithm for the problem and proposed a heuristic for generating an initial population. Molaee et al [100] studied the problem to minimize maximum earliness and number of tardy jobs on a single machine. They proposed an heuristic P and a branch and bound algorithms for solving this problem, i.e., 1| | max{Ej }, Uj . 14. Other problems. Cheng et al [33] considered the feasibility model of multiagent scheduling on a single machine, where each agents objective function is to minimize the total weighted number of tardy jobs. This problem was shown to be NP complete in general. When the number of agents is fixed, they proposed a pseudo-polynomial time for interval weights and solved in polynomial time when the weights are units. Agnetics et al [2] considered a type of the above problem with

230

MUMINU O. ADAMU AND ADEREMI O. ADEWUMI

several agents, minimizing a certain cost function, which depends on the completion times of its jobs only. The cost functions are maximum of regular functions, number of late jobs and total weighted completion time. They gave several polynomial time solvable special cases. The problem to determine the optimal due dates and the processing sequence simultaneously to minimize cost for weighted number of tardy jobs, due date assignment and earliness penalties was considered by Li et al [91]. The actual processing time of a job is a linear function of its starting time. Dondeti and Mohanty [43] considered the single machine scheduling problem in which the machine experiences the effect of learning or fatigue. They proved when the machine works at a variable rate; the Moore-Hudgons algorithm yields the minimum number of tardy jobs. They proposed also a dynamic programming recursion as well as the maximum-weighted network path algorithm for solving their problem. Huang et al [61] addressed the single machine scheduling problem to minimize the weighted number of late jobs and crashed jobs. They used dominance conditions to develop a branch and bound algorithm for the problem. Computational results and proofs of relevant theorems were given. 15. Further future research. There are several open problems that their complexities are not known (Brucker and Knust [22]) that P still need to be proven. Some of P them are: 1|Chains, pj = 1, pP − batch, rj | Uj , 1|prec., pj = p, p − batch, rj | wj Uj , and1|prec., p−batch, rj | Uj . Several combinations of constraints for several problems can still be considered. Better heuristics and Metaheuristics could be proposed for existing solutions to these problems already considered, i.e. (batching, chains, bicriteria, etc). Where pseudo-dynamic programming algorithms are proposed, polynomial algorithms should evolve. Exact solutions to NP-hard and NP-complete problems could be improved to solve more instances better than what are found in literatures. 16. Conclusion. This paper considered the review of literate on minimizing the (weighted) number of tardy jobs on single machine. This paper has provided a critical and comprehensive overview of research trend in this area. Various nomenclature, scheduling objectives, constraints and solution techniques used so far are reported and classified. Further research directions in this area are also highlighted.

P

Uj

1|ri < rj ⇒ di ≤ dj |

1|rj |

wj Uj

wj Uj

P

P

¯ 1|d|

1| |

Problem P 1| | Uj

P

Uj

NP hard

NP hard

NP hard

Complexity O(n log n) Polynomially Solvable

Lawler [80]

Kise et al [73]

Ourari et al [105]

Baptiste et al [16]

Lawler [80] Hariri and Potts [55] Baptiste et al [15] Lenstra et al [88] Dauz`ere-P´er`es [39]

M’Hallah and Bulfin [96]

Sahni [117] Villarreal and Bulfin [135] Tang [132] Potts and Wassenhove [111]

References Moore [102] Sturm [131] Maxwell [98] Karp [71] Lawler and Moore [78]

Table 1. Single Machine Scheduling Problems

NP hard Branch and Bound Branch and Bound NP-hard in the strong sense Lower Bound with Heuristics to Compare Dominance Rule & Branch and Bound. Lower and Upper Bounds, MIP Formulation Dynamic programming algorithm with O(n2 ) time O(n log n) algorithm

Approach/Result Algorithm and Proof Proof of Optimality Proof of Optimality Proof of NP hard Dynamic P Program O(n min{ j Pj , max{dj }}) Dynamic P programming Algorithm P O(n min{ j Pj , j wj , max, {dj }}) Dominance, Branch & Bound Dominance, Branch & Bound O(n log n), Branch & Bound and Dynamic Program Branch and Bound

SINGLE MACHINE SCHEDULING: SURVEY 231

1|rj , nested, P mtn|

P Uj

P 1|rj , Pj = P, P mtn| P Uj 1|rj , Pj = P, P mtn| wj Uj

wj Uj

P

1|rj , Pj = P |

wj Uj

P

1|rj , P mtn|

Uj

Uj

P

1|rj , P mtn|

P

wj Uj

P

1|rj , P mtn|

1|rj , Pj = P |

Uj

wj Uj

P

P

1|rj , P mtn|

1|rj |

Dynamic Programming Algorithm LP-relations with column generation Polynomial Algorithm Dynamic Programming Algorithm Dynamic Programming Algorithm Polynomial Algorithm

O(n7 )

Lawler [81] Baptiste [11] Garey and Johnson [48] Lawler [81]

O(n5 ) O(n4 ) NP hard O(n3 w2 )

Lawler [82] Baptiste [10] Baptiste et al [14] Lawler [81]

O(n log n) O(n10 ) O(n4 ) O(n log n)

Diepen et al [42]

Baptiste [10]

Chrobak et al [34]

Carlier [24]

Hochbaum ad Smamir [57]

O(n2 ) polynomially solvable

Strongly NP-hard Genetic Algorithm Langrangean Relation algorithm Branch and Bound Branch and Bound Branch and Check algorithm Proof of Optimality and Algorithm Proof of Optimality and Algorithm Dynamic Programming Algorithm Dynamic Programming Algorithm NP Hard Dynamic Programming Algorithm Dynamic Programming Algorithm Dynamic Programming Algorithm

Lenstra et al [88] Sevaux and Dauz`ere-P´er`es [120] Dauz`ere-P´er`es and Sevaux [40] Peridy et al [107] M’Hallah and Bulfin [95] Sadykov [116] O(n log n) polynomially solvable Hochbaum ad Smamir [57]

NP-hard in the strong sense

232 MUMINU O. ADAMU AND ADEREMI O. ADEWUMI

Steiner and Zhang [129, 128] Brucker and Kovalyov [19] Hochbaum and Landy [56] Brucker et al [21] Brucker et al [21] Brucker et al [21]

NP hard O(n3 ) O(n4 ) O(n3 ) Binary NP hard Unary NP hard

1|Sp − batch|

P 1|Sp − batch, separate| (wj Uj +Dj qj ) P 1|S − batch| Uj P 1|S − batch, P wj Uj j = P| P 1|P − batch| P Uj 1|P − batch| wj UP j 1|P − batch, b < n| Uj

Mazdeh et al [99] Steiner and Zhang [129, 128]

Brucker et al [21] Ren et al [112] Hall and Potts [52, 53] Hall [54], Steiner and Zhang [128]

Erel and Ghosh [46]

NP hard

P (wj Uj + Dj qj )

wj Uj

Polynomially Solvable O(N 2 ) P P P O(N min{ f Sf + f j Pf j , P P maxf {df }, f j wf j }) NP hard in ordinary sense O(n2 (1 + 2gn/ε))2 NP hard in ordinary sense

Monma and Potts [101]

O(F 2 N F +1 ) Crauwels et al [37] Crauwels et al [36] Rote and Woeginger [114]

Brucker et al [20] Brucker et al [20] Hochbaum and Landy [56] Brucker and Kovalyov [19] Bruno and Downey [23]

Unary NP-hard O(n log n) NP hard O(n3 /ε + n3 log n) NP hard

P (wj Uj + Dj qj )

1| |

P

wj Uj

P

1|Sf , df j = df |

1|B ≥ n|

Uj

Uf j

P

P

1|Sf , df j = df |

1|Sf |

P 1|rj , Pj = P, P mtn| wj Uj P 1|rj ,P Pj = P | wj Uj 1|S| wj Uj

Pseudo Polynomial dynamic programming algorithm Proof NP hard FPTAS Pseudo polynomial Dynamic programming algorithms Simulated Annealing Dynamic Programming Algorithm Dynamic Programming Algorithm Polynomial Algorithm Polynomial Algorithm Polynomial Algorithm NP hardness NP hardness

Proof of NP-hard Polynomial Algorithm Developed Dynamic Programming Algorithm Dynamic Programming Algoritnm Dynamic Programming Algoritnm Heuristics Branch and Bound Polynomial Algorithm

SINGLE MACHINE SCHEDULING: SURVEY 233

P wj Uj

Uj

NP hard

P

P

1| |

Tj |

NP complete

P (uj Uj + vj Vj + L(d))|

1| |

O(n log n) O(n2 ) P O(n max{Dmax , P }) O(n log n) O(n2 ) NP complete

NP hard in strong sense

P 1| | P(Uj + Vj ) 1| | P(Uj + Vj ) with time windows 1| | (ujP Uj + vj Vj ) 1|P mtn| (Uj +P Vj ) 1|P mtn, Pj = 1| (uj UP j + vj Vj ) 1|Agreeable due dates| (uj Uj + vj Vj )

Uj

Dynamic Programming Algorithm Dynamic Programming Algorithm Pseudo-polynomial using Dynamic programming algorithm Proof of NP-Hardness

Proof of NP-Hardness Proof of NP-Hardness Proof of NP-Hardness Dynamic Programming Algorithm Lann and Mosheiov [77] Polynomial Time Algorithm Lann and Mosheiov [77] Polynomial Time Algorithm Lann and Mosheiov [77] Polynomial Time Algorithm Lann and Mosheiov [77] Polynomial Time Algorithm Lann and Mosheiov [77] Polynomial Time Algorithm Li et al [89] Dynamic Programming Algorithm Adamu and Abass [1] Heuristic Algorithm Yeung et al [140] Dynamic Programming Algorithm Vairaktarakis and Lee [133] Dominance Rules Duffuaa et al [44] Heuristics and Branch and Bound

Garey and Johnson [49] Lenstra and Rinnooy [86] Lenstra and Rinnooy [86] Lenstra and Rinnooy [86] Steiner [130] Steiner [130]

Baptiste [14]

NP hard

NP hard in strong sense NP hard in strong sense NP hard in strong sense O(n5 )

P

Baptiste [12]

Baptiste [12]

Solvable in polynomial time

Solvable in polynomial time

P hline 1|Chains, Pj = 1| UjP 1|Chains, Pj = 1, S − batch| UjP 1|P rec, Pj = 1, dj = |D(Uj )| + k| P Uj 1|Pj = 1, chains, dj = |D(Uj )| + k| wj Uj

1|P rec., Pj = 1|

1|P − batch, b < n, rj , P pj = p| wj Uj P 1|P − batch, rj , | wj Uj

1|S − batch, rj , Pj = P |

234 MUMINU O. ADAMU AND ADEREMI O. ADEWUMI

wj Ej |

P Uj

P P

Uj

1| | max{Ej },

1| |Emax , Uj

NP hard NP hard NP hard NP hard O(n3 ) NP hard NP hard NP hard NP hard NP hard NP hard NP hard NP hard NP hard

hard hard hard hard hard hard

P 1|T¯| = Uj 1|dj = dunknown, conv|Z|V 1|dj = dunknown, conv|V |Z 1|djP = dunknown, conv|#(V, Z) P 1| | P wj Ej | Uj 1| | (αj Tj + wj Uj ) ¯ , Uj 1| |FP 1| | Uj , max{Tj } ¯ , max{Tj } 1| |FP P 1| | F, Uj

NP NP NP NP NP NP

NP hard

NP hard NP hard

P | Uj |Lmax P | max{w Uj j Tj }| P | P Uj | max{w T j j} P | P Cj | P Uj | P Tj | U Pj | wj Ej | Uj

P

P P 1| | (uj E Pj + vj Tj )/ Uj 1| |Emax | Uj

1| 1| 1| 1| 1| 1|

1| | Heuristics and Dynamic Programming Algorithm Pathumnakul and Egbelu [106] Heuristics Algorithm Chang and Su [26] Branch & Bound Algorithm Huo et al [63] Proof of NP hardness Huo et al [63] Proof of NP hardness Huo et al [63] Proof of NP hardness Huo et al [63] Proof of NP hardness Wan and Yen [136] Heuristic and Branch and Bound Algorithm Chen and Sheen [28] Optimal Algorithm Lee and Vairaktarakis [84] Proof of NP Hardness Azizoglu et al [7] Heuristic Algorithm Ben-Daya and Raouf [17] Branch and Bound Shabtay and Steiner [123] Proof of NP Hardness Shabtay and Steiner [123] Proof of NP Hardness Shabtay and Steiner [123] Proof of NP Hardness Wan and Yen [136] Branch and Bound Aryanezhad et al [6] Genetic Algorithm Nelson et al [104] Branch and Bound Nelson et al [104] Branch and Bound Nelson et al [104] Branch and Bound Kondakci and Bekirglu [75] Branch and Bound Koksalan and Keha [74] Genetic Algorithm Azizoglu et al [7] NP hardness Proof and Heuristic Jolai et al [68] Genetic Algorithm Azizoglu et al [7] Heuristic Molaee et al [100] Branch and Bound

Chand and Schneeberger [25]

SINGLE MACHINE SCHEDULING: SURVEY 235

236

MUMINU O. ADAMU AND ADEREMI O. ADEWUMI

REFERENCES [1] M. O. Adamu and O. Abass, Scheduling agreeable jobs on a single machine to minimize weighted number of early and tardy jobs, Journal of Applied Science and Technology, 12 (2007), 12–17. [2] A. Agnetics, D. Pacciarelli and A. Pacific, Multi-agent single machine scheduling, Annals of Operations Research, 150 (2007), 3–15. [3] S. Albers and P. Brucker, The complexity of one machine batching problem, New frontiers in the theory and practice of combinatorial optimization: Applications in manufacturing and VLSI design (Ankara, 1990). Discrete Applied Mathematics, 47 (1993), 87–107. [4] A. Allahverdi, J. N. D. Gupta and T. Aldowaisan, A review of scheduling research involving setup considerations, OMEGA The International Journal of Management Science, 27 (1999), 219–239. [5] A. Allahverdi, C. T. Ng, T. C. E. Cheng and M. Y. Kovalyov, A survey of scheduling problems with setup times or costs, European Journal of Operational Research, 187 (2008), 985–1032. [6] M. B. Aryanezhad, A. Jabbarzadeh and A. Zareei, Combination of genetic algorithm and lpmetric to solve machine bi-criteria scheduling problem, Proceedings of IEEF IEEM, (2009), 1915–1919. [7] M. Azizoglu, M. Koksalan and S. K. Koksalan, Scheduling to minimize maximum earliness and number of tardy jobs where machine idle time is allowed, Journal of Operational Research Society, 54 (2003), 661–664. [8] K. R. Baker and G. D. Scudder, Scheduling with earliness and tardiness penalties: A review , Operations Research, 38 (1990), 22–36. [9] S. J. Baluk, Scheduling to minimize the number of late jobs when set-up and processing times are uncertain, Management Science, 19 (1973), 1283–1288. [10] P. Baptiste, Polynomial time algorithms for minimizing the weighted number of late jobs on a single machine with equal processing times, Journal of Scheduling, 2 (1999), 245–252. [11] P. Baptiste, An O(n4 ) algorithm for preemptive scheduling of a single machine to minimize the number of late jobs, Operations Research Letters, 24 (1999), 175–180. [12] P. Baptiste, Batching identical jobs, Mathematical Methods of Operations Research, 52 (2000), 355–367. [13] P. Baptiste, P. Brucker, S. Knust and V. G. Timkovsky, Ten notes on equal processing time scheduling, 40R, 2 (2004), 111–127. [14] P. Baptiste, M. Chrobak and C. Durr, Preemptive scheduling of equal-length jobs to maximize weighted throughput, Operational Research Letters, 32 (2004), 258–264. [15] P. Baptiste, F. D. Croce, A. Grosso and V. Tkindt, Sequencing a single machine with due dates and deadlines: An ilp-based approach to solve very large instances, Journal of Scheduling, 13 (2010), 39–47. [16] P. Baptiste, L. Peridy and E. Pinson, A branch and bound to minimize the number of late jobs on a single machine with release time constraints, European Journal of Operational Research, 144 (2003), 1–11. [17] M. Ben-Daya, S. O. Duffuaa and A. Raouf, Minimizing mean tardiness subject to unspecified minimum number tardy for a single machine, European Journal of Operational Research, 89 (1996), 100–107. [18] O. J. Boxma and F. G. Forst, Minimizing the expected weighted number of tardy jobs in stochastic flow shops, Operations Research Letters, 5 (1986), 119–126. [19] P. Brucker and M. Y. Kovalyov, Single machine batch scheduling to minimize the weighted number of late jobs, Mathematical Methods of Operations Research, 43 (1996), 1–8. [20] P. Brucker and S. A. Kravchenko, Scheduling equal processing time jobs to minimize the weighted number of late jobs, Journal of Mathematical Modeling and Algorithms, 5 (2006), 143–165. [21] P. Brucker, A. Gladky, H. Hoogeveen, M. V. Kovalyov, C. N. Potts, T. Tautenhahn and S. L. Van De Velde, Scheduling a batching machine, Journal of Scheduling, 1 (1998), 31–54. [22] P. Brucker and S. Knust, Complexity results for scheduling problems, http://www. informatik.uni-osnabrueck.de/knust/class/. [23] J. Bruno and P. Downey, Complexity of task sequencing with deadlines, set-up times, and changeover costs, SIAM Journal of Computing, 7 (1978), 393–404. [24] J. Carlier, Problemes dordonnancement dures gales, QUESTIO, 5 (1981), 219–228.

SINGLE MACHINE SCHEDULING: SURVEY

237

[25] S. Chand and H. Schneeberger, Single machine scheduling to minimize weighted earliness subject to no tardy jobs, European Journal of Operational Research, 34 (1988), 221–230. [26] P. C. Chang and L. H. Su, Scheduling n jobs on one machine to minimize the maximum lateness with a minimum number of tardy jobs, Computers and Industrial Engineering, 40 (2001), 349–360. [27] C. L. Chen and R. L. Bulfin, Complexity of single machine multicriteria scheduling problems, European Journal of Operational Research, 70 (1993), 115–125. [28] W. Y. Chen and G. J. Sheen, Single machine scheduling with multiple performance measures: Minimizing job-dependent earliness and tardiness subject to the number of tardy jobs, International Journal of Production Economics, 109 (2007), 214–229. [29] T. C. E. Cheng, Z. L. Chen and C. L. Li, Single machine scheduling with trade-off between number of tardy jobs and resource allocation, Operations Research Letters, 19 (1996), 237– 242. [30] T. C. E. Cheng, Q. Ding and B. M. T. Lin, A concise survey of scheduling with timedependent processing times, European Journal of Operational Research, 152 (2004), 1–13. [31] T. C. E. Cheng and M. Gupta, Survey of scheduling research involving due date assignment, European Journal of Operational Research, 38 (1988), 156–166. [32] T. C. E. Cheng, J. N. D. Gupta and G. Wang, A review of flowshop scheduling research with setup times, Production and Operations Management, 9 (2000), 262–282. [33] T. C. E Cheng, C. T. Ng and J. J Yuan, Multi-agent scheduling on a single machine to minimize total weighted number of tardy jobs, Theoretical Computer Science, 362 (2006), 273–281. [34] M. Chrobak, C. Drr, W. Jawor, L. Kowalik and M. Kurowski, A note on scheduling equal length jobs to maximize throughput, Journal of Scheduling, 9 (2006), 85–87. [35] R. W. Conway, W. L. Maxwell and L. W. Miller, “Theory of Scheduling,” Addison-Wesley, Reading, Mass.-London-Don Mills, Ont., 1967. [36] H. A. Crauwels, C. N. Potts, D. V. Oudheusden and L. N. Wassenhove, Branch and bound algorithms for single machine scheduling with batching to minimize the number of late jobs, Journal of Scheduling, 8 (2005), 161–177. [37] H. A. J. Crauwels, C. N. Potts and L. N. Van Wessenhove, Local search heuristics for single machine scheduling with batching to minimize the number of late jobs, European Journal of Operational Research, 90 (1996), 200–213. [38] R. L. Daniels and R. K. Sarin, Single Machine Scheduling with Controllable Processing Times and Number of Jobs tardy, Operations Research, 37 (1989), 981–984. [39] S. Dauz` ere-P´ er` es, Minimizing late jobs in the general one machine scheduling problem, European Journal of Operational Research, 81 (1995), 134–142. [40] S. Dauz` ere-P´ er` es and M. Sevaux, Using lagrangean relaxation to minimize the weighted number of late jobs on a single machine, Naval Research Logistics, 50 (2003), 273–288. [41] P. De, J. B. Ghosh and C. E. Wells, On the minimization of the weighted number of tardy jobs with random processing times and deadlines, Computer and Operations Research, 18 (1991), 457–463. [42] G. Diepen, J. M. V. Akker and J. A. Hoogeveen, Minimizing total weighted tardiness on a single machine with release dates and equal length jobs, Institute of Information and Computing Sciences, Utrecht University Technical Report. UU-CS-054 (2005). [43] V. R. Dondeti and B. B. Mohanty, Impact of learning and fatigue factors on single machine scheduling with penalties for tardy jobs, European Journal of Operational Research, 105 (1998), 509–524. [44] S. O. Duffuaa, A. Raouf, M. Ben-Daya and M. Makki, One machine scheduling to minimize mean tardiness with minimum number of tardy, Production Planning and Control, 8 (1997), 226–230. [45] H. Emmons, A simplified algorithm for sequencing n jobs on one machine to minimize the number of late jobs, Technical Report, No. 51, Dept of Operations Research, Cornell University, Ithaca, N.Y., 1958. [46] E. Erel and J. B. Ghosh, Batch scheduling to minimize the weighted number of tardy jobs, Computers and Industrial Engineering, 53 (2007), 394–400. [47] S. French, “Sequencing and Scheduling: An Introduction to the Mathematics of the Job Shop,” Ellis Harwood, England, 1982.

238

MUMINU O. ADAMU AND ADEREMI O. ADEWUMI

[48] M. R. Garey and D. S. Johnson, “Computers and Intractability, A Guide to the Theory Of NP Completeness,” A Series of Books in the Mathematical Sciences. W. H. Freeman and Co., Freeman, San Francisco, 1979. [49] M. R. Garey and D. S. Johnson, Scheduling tasks with nonuniform deadlines on two processors, Journal of ACM 23 (1976), 461–467. [50] R. L. Graham, E. L. Lawler, T. K. Lenstra and A. H. G. Rinnooy Kan, Optimization and approximation in deterministic sequencing and scheduling: A survey, Annals of Discrete Mathematics., 5 (1979), 287–326. [51] J. N. D. Gupta and J. C. Ho, Scheduling with two job classes and setup times to minimize the number of tardy jobs, International Journal of Production Economics, 42 (1995), 205–216. [52] N. G. Hall and C. N. Potts, Supply chain scheduling: Batching and delivery, Operations Research, 51 (4) (2003), 566–584. [53] N. G. Hall and C. N. Potts, The coordination of scheduling and batch deliveries, Annals of Operations Research, 135 (2005), 41–64. [54] N. G. Hall, “Private Communication,” 2006. [55] A. M. A Hariri and C. N. Potts, Single machine scheduling with deadlines to minimize the weighted number of tardy jobs, Management, 40 (1994), 1712–1719. [56] D. S. Hochbaum and D. Landy, Scheduling with batching: Minimizing the weighted number of tardy jobs, Operations Research Letters, 16 (1994), 79–86. [57] D. S. Hochbaum and R. Shamir, Minimizing the number of tardy job units under release time constraints, Discrete Applied Mathematics, 28 (1990), 45–57. [58] H. Hoogeveen, Multicriteria scheduling, European Journal of Operational Research, 167 (2005), 592–623. [59] H. Hoogeveen, C. N. Potts and G. J. Woeginger, On-line scheduling on a single machine: Maximizing the number of early jobs, Operational Research Letters, 27 (2000), 193–197. [60] W. Huang and F. Zhang, One machine batching problem with due dates to minimize the weighted number of delayed jobs, 1997. Unpublished paper. [61] W. Huang, S. Li and G. Tang, A single machine scheduling problem to minimize the weighted number of late jobs and crashed jobs, International Journal of Operations and Quantitative Management, 4 (1998), 151–164. [62] Y. Huo, J. Y. T. Leung and H. Zhao, Complexity of two-dual criteria scheduling problems, Operations Research Letters, 35 (2007), 211–220. [63] Y. Huo, J. Y. T. Leung and H. Zhao, Bi-criteria scheduling problems: Number of tardy jobs and maximum weighted tardiness, European Journal of Operational Research, 177 (2007), 116–134. [64] A. S. Jain and S. Meeran, Deterministic job shop scheduling: Past, present and future, European Journal of Operational Research, 113 (1999), 390–434. [65] W. Jang and C. M. Klein, Minimizing the expected number of tardy jobs when processing times are normally distributed, Operations Research Letters, 30 (2002), 100–106. [66] W. Jang, Dynamic scheduling of stochastic jobs on a single machine, European Journal of Operational Research, 138 (2002), 518–530. [67] F. Jolai, Minimizing number of tardy jobs on a batch processing machine with incompatible job families, European Journal of Operational Research, 162 (2005), 184–190. [68] F. Jolai, M. Rabbani, S. Amalnick, A. Dabaghi, M. Dehghan and M. Y. Parast, Genetic algorithm for bi-criteria single machine scheduling problem of minimizing maximum earliness and number of tardy jobs, Applied Mathematics and Computation, 194 (2007), 552–560. [69] Y. S. Jung, H. Nagasawa and N. Nishiyama, Extension of deterministic scheduling to stochastic scheduling, Osaka Prefecture University Education and Research Archives, 40 (1991), 265–274. [70] E. K. Karasakal and M. Koksalan, A simulated annealing approach to bicriteria scheduling problems on a single machine, Journal of Heuristics, 6 (2000), 311–327. [71] R. M. Karp, Reducibility among combinatorial problems, Complexity of Computer Computations (Proc. Sympos., IBM Thomas J. Watson Res. Center, Yorktown Heights, N.Y., 1972), pp. 85–103. Plenum, New York, 1972. [72] H. Kise and T. Ibaraki, On balut’s algorithm and np-completeness for a chance-constrained scheduling problem, Management Science, 29 (1983), 384–388. [73] H. Kise, T. Ibaraki and H. Mine, A solvable case of the one machine scheduling problem with ready and due times, Operations Research, 26 (1978), 121–126.

SINGLE MACHINE SCHEDULING: SURVEY

239

[74] M. Koksalan and A. B. Keha, Using genetic algorithms for single machine bicriteria scheduling problems, European Journal of Operational Research, 145 (2003), 543–556. [75] S. K. Kondakci and T. Bekirglu, Scheduling with bicriteria: Total flowtime and number of tardy jobs, International Journal of Production Economics, 53 (1997), 91–99. [76] S. Kravchenko and F. Werner, Parallel machine problems with equal processing times: A survey, J. Sched. 14 (2011), 435–444. [77] A. Lann and G. Mosheiov, Single machine scheduling to minimize the number of early and tardy jobs, Computers and Operational Research, 23 (1996), 769–781. [78] E. L. Lawler and J. M. Moore, A functional equation and its applications to resource allocation and sequencing problems, Management Science, 16 (1969), 77–84. [79] E. L. Lawler, Sequencing to minimize the weighted number of tardy jobs, Rev. Francaise Automat. Recherche Operationnelle, 10 (1976), 27–33. [80] E. L. Lawler, Scheduling a single machine to minimize the number of late jobs, Report CSD-83-139, EECS Dept., University of California, Berkeley, 1983. [81] E. L. Lawler, A dynamic programming algorithm for preemptive scheduling of a single machine to minimize the number of late jobs, Annals of Operations Research, 26 (1990), 125– 133. [82] E. L. Lawler, Knapsack-like scheduling problems, the moore-hudgson algorithm and the tower of sets property, Mathl. Comput. Modelling, 20 (1994), 91–106. [83] E. L. Lawler, J. K Lenstra, A. H. G. Rinnooy Kan and D. B. Shmoys, Sequencing and scheduling: Algorithms and complexity, In: S.C. Graves, A.H.G. Rinnooy Kan and P.H. Zipkin (Eds), Logistics of Production and Inventory, Handbooks in Operations Research and Management Science, 4, North-Holland, Amsterdam, 1993,445–522. [84] C. Y. Lee and G. L. Vairaktarakis, Complexity of single machine hierarchical scheduling: A survey, Complexity in Numerical Optimization, 19 (1993), 269–298. [85] D. Lei, Multi-objective production scheduling: A survey, International Journal of Advance Manufacturing Technology, 43 (2009), 926–938. [86] J. K. Lenstra and A. H. G. Rinnooy Kan, Complexity results for scheduling chains on a single machine, European Journal of Operational Research, 4 (1980), 270–275. [87] J. K. Lenstra, “Production Scheduling,” Mathematisch Centrum, Amsterdam, 1977. [88] J. K. Lenstra, A. H. G. Rinnooy Kan and P. Brucker, Complexity of machine scheduling problems, Annals of Discrete Mathematics, North-Holland, Amsterdam, 1 (1977), 343–362. [89] C. L. Li, T. C. E. Cheng and Z. L. Chen, Single machine scheduling to minimize the weighted number of early and tardy agreeable jobs, Computers and Operations Research, 22 (1995), 205–219. [90] S. Li, Z. L. Chen and G. Tang, A note on the optimality proof of the kise-ibaraki-mine algorithm, Operations Research, 58 (2010), 508–509. [91] S. Li, C. T. Ng and J. Yuan, Scheduling deteriorating jobs with CON/SLK due date assignment on a single machine, International Journal of Production Economics, 131 (2011), 747–751. [92] B. M. T. Lin and T. C. E. Cheng, Minimizing the weighted number of tardy jobs and maximum tardiness in relocation problem with due dates constraints, European Journal of Operational Research, 116 (1999), 183–193. [93] L. Liu and F. Zhang, Minimizing number of tardy jobs on a batch processing machine with incompatible job families, ISECS International Colloquium on Computing, Communication, Control and Management, 3 (2008),277–280. [94] Y. Ma, C. B. Chu and C. R. Zuo, A survey scheduling with deterministic machine availability constraints, Computers and Industrial Engineering, 58 (2010), 199–211. [95] R. M’Hallah and R. L. Bulfin , Minimizing the weighted number of tardy jobs on a single machine with release dates, European Journal of Operational Research, 176 (2007), 727–744. [96] R. M’Hallah and R.L. Bulfin, Minimizing the weighted number of tardy jobs on a single machine, European Journal of Operational Research, 145 (2003), 45–56. [97] M. Mathirajan and A. J. Sivakumar, A literature review, classification and simple metaanalysis on scheduling of batch processors in semi-conductor, International Journal of Advance Manuf. Technology, 29 (2006), 990–1001. [98] W. L. Maxwell, On sequencing n jobs on one machine to minimize the number of late jobs, Management Science, 16 (1970), 295–297.

240

MUMINU O. ADAMU AND ADEREMI O. ADEWUMI

[99] M. M. Mazdeh, A. Hamidinia and A. Karamouzian, A mathematical model for weighted tardy jobs scheduling problem with a batched delivery system, International Journal of Industrial Engineering Computations, 2 (2011), 491–498. [100] E. Molaee, G. Moslehi and M. Reisi, Minimizing maximum earliness and number of tardy jobs in the single machine scheduling problem, Computers and Mathematics with Applications, 60 (2010), 2909–2919. [101] C. L. Monma and C. N. Potts, On the complexity with batch set-up times, Operations Research, 37 (1989), 798–804. [102] J. M. Moore, An n job, one machine sequencing algorithm for minimizing the number of late jobs, Management Science, 15 (1968), 102–109. [103] A. Nagar, J. Haddock and S. Heragu, Multiple and bicriteria scheduling: A literature survey, European Journal of Operational Research, 81 (1995), 88–104. [104] R. T. Nelson, R. K. Sarin and R. L. Daniels, Scheduling with multiple performance measures: The one machine case, Management Science, 32 (1986), 464–479. [105] S. Ourari, C. Briand and B. Bouzouia, A MIP approach for the minimization of the number of late jobs in single machine scheduling, Journal of Math. Modeling and Algorithms. To appear, 2009. [106] S. Pathumnakul and P. J. Egbelu, Algorithm for minimizing weighted earliness penalty in single machine problem, European Journal of Operational Research, 161 (2005), 780–796. [107] L. Peridy, E. Pinson and D. Rivreau, Using short-term memory to minimize the weighted number of late jobs on a single machine, European Journal of Operational Research, 148 (2003), 591–603. [108] M. Pinedo, stochastic scheduling with release dates and due dates, Operations Research, 31 (1983), 559–572. [109] C. N. Potts and M. V. Kovalyov, Scheduling with batching: A review , Fifteenth EURO Summer Institute. Production Scheduling: Deterministic, Stochastic and Fuzzy Approaches (Saint Vincent, 1997). European Journal of Operational Research, 120 (2000), 228–249. [110] C. N. Potts and V. Wassenhove, Integrating scheduling with batching and lot-sizing: A review of algorithms and complexity, Journal of Operations Research Society, 43 (1992), 395–406. [111] C. N. Potts and V. Wassenhove, Algorithms for scheduling a single machine to minimize the weighted number of late jobs, Management Science, 34 (1988), 843–858. [112] J. Ren, Y. Zhang, X. Zhang and G. Sun, Approximation algorithms for minimizing the weighted number of tardy jobs on a batch machine, Combinatorial optimization and applications, Springer, Berlin, 2009, 403–410. [113] A.H.G. Rinnooy Kan, “Machine Scheduling Problems: Classification, Complexity and Computations,” Nijhoff, The Hague, 1976. [114] G. Rote and G. J. Woeginger, Minimizing the number of tardy jobs on a single machine with batch setup time, ACTA Cybernetica, 13 (1998), 423–429. [115] R. Sadykov, A hybrid branch and cut for the one dimensional machine scheduling problem, Lecture notes in Computer Science, 3011 (2004), 409–414. [116] R. Sadykov, A branch and check algorithm for minimizing the weighted number of late jobs on a single machine with release dates, European Journal of Operational Research, 189 (2008), 1284–1304. [117] S. K. Sahni , Algorithms for scheduling independent tasks, Journal of Assoc. Comput. Mach, 23 (1976), 116–127. [118] P. Senthilkumar and S. Narayanan, Literature review of single machine scheduling problem with uniform parallel machines, Intelligent Information Management, 2 (2010), 457–474. [119] D. K. Seo, C. M. Klein and W. Jang, Single machine stochastic scheduling to minimize the expected number of tardy jobs using mathematical programming models, Computers and Industrial Engineering, 48 (2005), 153–161. [120] M. Sevaux and S. Dauz` ere-P´ er` es, Genetic algorithms to minimize the weighted number of late jobs on a single machine, Meta-heuristics in combinatorial optimization. European Journal of Operational Research, 151 (2003), 296–306. [121] D. Shabtay and G. Steiner, A survey of scheduling with controllable processing times, Discrete Applied Mathematics, 155 (2007), 1643–1666. [122] D. Shabtay and G. Steiner, Optimal due date assignment and resource allocation to minimize the weighted number of tardy jobs on a single machine, Manufacturing and Service Operations Management, 9 (2007), 332–350.

SINGLE MACHINE SCHEDULING: SURVEY

241

[123] D. Shabtay and G. Steiner, Bicriteria models to minimize the total weighted number of tardy jobs with convex controllable processing times and common due date assignment, Proceedings Multidisciplinary International Conference on Scheduling: Theory and Applications, 2009, 301–310. [124] D. Shabtay and G. Steiner, A bicriteria approach to minimize the total weighted number of tardy jobs with convex controllable processing times and assigning due dates, Journal of Scheduling, 14 (2011), 455–469. [125] A. H. Sharary and N. Zaguia, Minimizing the number of tardy jobs in single machine sequencing, Discrete Mathematics, 117 (1993), 215–223. [126] H. M. Soroush, Minimizing the weighted number of early and tardy jobs in a stochastic single machine scheduling problem, European Journal of Operational Research, 181 (2007), 266–287. [127] G. Steiner and R. Zhang, Minimizing the total weighted number of late jobs with late deliveries in two-level supply chains, in “Proceedings of the 3rd Multidisciplinary International Conference on Scheduling: Theory and Application,” Paris, France, 2007, 447–454. [128] G. Steiner and R. Zhang, Minimizing the weighted number of late jobs with batch setup times and delivery costs on a single machine, Multiprocessor Scheduling: Theory and Applications, Itech Education and Publishing, Vienna, 2007, 85–98. [129] G. Steiner and R. Zhang, Approximation algorithms for minimizing the total weighted number of late jobs with late deliveries in two-level supply chains, Journal of Scheduling, 12 (2009), 565–574. [130] G. Steiner, Minimizing the number of tardy jobs with procedence constraints and agreeable due dates, Models and algorithms for planning and scheduling problems (Loveno di Menaggio, 1993). Discrete Applied Mathematics, 72 (1997), 167–177. [131] L. B. J. M. Sturm, A simple optimality proof of moore’s sequencing algorithm, Management Science, 17 (1970), 116–118. [132] G. Tang, A new branch and bound algorithm for minimizing the weighted number of tardy jobs, Annals of Operations Research, 24 (1990), 225–232. [133] G. L. Vairaktarakis and C. Y. Lee, The single machine scheduling to minimize total tardiness subject to minimum number of tardy jobs, IIE Transactions, 27 (1995), 250–256. [134] M. Van der Akker and H. Hoogeveen, Minimizing the number of tardy jobs, in J. Y.-T. Leung (Ed), Handbook of Scheduling: Algorithms, Models, and Performance Analysis. Boca Raton: Chapman and Hall/CRC, 2004. [135] F. J. Villarreal and R. L. Bulfin, Scheduling a single machine to minimize the weighted number of tardy jobs, IE Transactions, 15 (1983), 337–343. [136] G. Wan and B. P. C. Yen, Single machine scheduling to minimize total weighted earliness subject to minimal number of tardy jobs, European Journal of Operational Research, 195 (2009), 89–97. [137] S. Webster and K. R. Baker, Scheduling groups of jobs on a single machine, Operations Research, 43 (1995), 692–703. [138] W. H. Yang and C. J. Liao, Survey of scheduling research involving setup times, International Journal of Systems Sciences 30 (1999), 143–155. [139] B. P. C. Yen and G. Wan, Single machine bicriteria scheduling: A survey, Industrial Engineering: Theory, Applications and Practice, 10 (2003), 222–231. [140] W. K. Yeung, C. Oguz and T. C. E. Cheng, Minimizing weighted number of early and tardy jobs with a common due window involving location penalty, Annals of Operations Research, 108 (2001), 33–54.

Received January 2012; 1st revision October 2012; 2nd revision March 2013. E-mail address: [email protected] E-mail address: [email protected]

Suggest Documents