Unbounded parallel batch scheduling with job ... - Semantic Scholar

3 downloads 27341 Views 228KB Size Report
Feb 2, 2008 - Keywords: Parallel batch scheduling; Job delivery; Heuristic; Worst-case performance ... E-mail address: [email protected] (L. Lu).
Operations Research Letters 36 (2008) 477–480 www.elsevier.com/locate/orl

Unbounded parallel batch scheduling with job delivery to minimize makespan Lingfa Lu ∗ , Jinjiang Yuan Department of Mathematics, Zhengzhou University, Zhengzhou, Henan 450052, People’s Republic of China Received 10 May 2006; accepted 20 January 2008 Available online 2 February 2008

Abstract We consider unbounded parallel batch scheduling with job delivery to minimize makespan. When the jobs have identical size, we provide a polynomial-time algorithm. When the jobs have non-identical sizes, we provide a heuristic with a worst-case performance ratio 7/4. c 2008 Published by Elsevier B.V.

Keywords: Parallel batch scheduling; Job delivery; Heuristic; Worst-case performance ratio

1. Introduction Unbounded parallel batch scheduling problem with job delivery to minimize makespan can be described as follows. There are n jobs J1 , . . . , Jn . Each job J j has a processing time p j . All jobs are processed in batches by an unbounded parallel batch machine, where the processing time of a batch is equal to the longest processing time of the jobs in it. The finished jobs will be delivered to a single customer by a capacitated vehicle. Each job J j has also a size s j which represents the physical space J j occupies when it is loaded in the vehicle. Only one vehicle of capacity z is employed to deliver the jobs. That is, the total physical space of jobs loaded into the vehicle is not allowed to exceed z. We assume that s j ≤ z for each job J j . The jobs delivered together in one shipment are defined as a delivery batch. The one-way transportation time between the machine and the customer is a constant t. T = 2t is used to denote the time needed for a round of delivery. The makespan of a schedule π , denoted by Cmax (π ), is the time instant by which the vehicle returns to the machine after all jobs being delivered to the customer. The problem is to find a schedule with minimum makespan. Parallel batch scheduling model has received much attention. Lee et al. [11] introduced the problem with the ∗ Corresponding author.

E-mail address: [email protected] (L. Lu). c 2008 Published by Elsevier B.V. 0167-6377/$ - see front matter doi:10.1016/j.orl.2008.01.006

restriction that the number of the jobs in each batch is bounded by a number b. This bounded model is motivated by the burnin operations in semiconductor manufacturing. [1] provided an extensive discussion of the unbounded version of the parallel batch scheduling. Recent developments on this topic can be found at [2]. In addition, [5,7,12] presented new complexity results and approximation algorithms for the parallel batch scheduling problem subject to release dates. Machine scheduling problem with job delivery has been widely discussed over the last decade. [4,6,9,14,15] have considered several batch delivery scheduling problem with due dates’ related measures. Lee and Chen [10] have considered another coordination of production scheduling and transportation (subject to delivery time and vehicle capacity) to minimize the makespan without considering delivery cost. This problem has been extended by [3] by considering the situation where each job might occupy a different amount of physical space in a vehicle. In this paper, we consider the unbounded parallel batch scheduling problem with job delivery to minimize makespan. When all jobs have identical size, we provide a polynomial-time algorithm. When the jobs have non-identical sizes, we show that this problem is strongly NP-hard and provide a heuristic with a worst-case performance ratio 74 . Specially, the heuristic has the best possible worst-case performance ratio 32 when jobs have agreeable processing times and sizes.

478

L. Lu, J. Yuan / Operations Research Letters 36 (2008) 477–480

2. The problem with identical-size jobs In this section, we assume that all jobs have identical size s. Then there are at most c = b sz c jobs in any delivery batch. For simplicity, the problem discussed in this section will be denoted by P1 . Re-index all jobs such that p1 ≤ p2 ≤ · · · ≤ pn . Let u = n − cq, where q = bn/cc. Then we have 0 ≤ u ≤ c − 1. Lemma 2.1. For problem P1 , there exists an optimal schedule satisfying the following conditions. (1) Jobs are processed in the order of non-decreasing processing times. (2) Jobs are delivered in the order of non-decreasing completion times on the machine. (3) If u > 0, then there are q + 1 delivery batches. The first delivery batch contains u jobs, and each of the other delivery batches contains exactly c jobs. (4) If u = 0, then there are q delivery batches, and each delivery batch contains exactly c jobs. (5) Jobs assigned to each delivery batch are contained in the same processing batch. (6) From the departure time of the first delivery batch, the vehicle is always busy until it finishes delivering the last delivery batch to the customer and returns to the machine. Proof. (1) Assume that B1 , . . . , Bx , . . . , B y , . . . , Bb is the batch processing sequence on the machine in an optimal scheduling π ∗ , where 1 ≤ x < y ≤ b. The idle times can be deleted by shifting some processing batches left with the optimality being kept. Furthermore, if there are two jobs Ji ∈ Bx , J j ∈ B y such that pi > p j , we can shift job J j from B y to Bx with the optimality being kept. A finite number of repetitions of this procedure yields an optimal schedule of the required form. (2) It can be proved by a pair-wise interchange argument in two delivery batches. (3) and (4) Let π ∗ be any optimal schedule that satisfies (1) and (2). If a delivery batch, with exception of the first delivery batch, contains less than c jobs, we can always fill the delivery with more jobs from earlier delivery batches without increasing the objective value. (5) Let π ∗ be any optimal schedule that satisfies (1)–(4). If there is a delivery batch D j such that the jobs in D j are processed in k > 1 processing batches. Then, we can put all jobs in D j into the longest processing batch which contains some jobs in D j . Clearly, this does not increase the departure time of any delivery batch. Then, it is still optimal. (6) Let π ∗ be any optimal schedule that satisfies (1)–(5). If the vehicle has some idle times, then we can delay the departure times of some delivery batches such that, from the departure time of the first delivery batch, the vehicle is always busy until it finishes delivering the last delivery batch to the customer and returns to the machine.  Let h = q if u = 0, and h = q + 1 if u > 0. By Lemma 2.1, there is an optimal schedule π ∗ of P1 such that: (a) if u > 0, then the delivery batches are given by D1 = {J1 , . . . Ju }, and D j = {J( j−2)c+u+1 , . . . J( j−1)c+u } for 2 ≤

j ≤ q + 1; if u = 0, then D j = {J( j−1)c+1 , . . . , J jc } for 1 ≤ j ≤ q; (b) for each i with 1 ≤ i ≤ h, the jobs in Di are contained in the same processing batch; and furthermore, (c) the departure time δk of each delivery batch Dk is given by δk = C ∗ − (h − k + 1)T , where C ∗ is the optimal makespan of problem P1 . It remains to determine the processing batches and the departure times of each delivery batch. We consider the following more general problem. Problem SP1. Consider an arbitrary instance of the unbounded parallel batch scheduling with job delivery. Suppose that (A1 , A2 , . . . , A g ) is a partition of the jobs J1 , J2 , . . . , Jn . Suppose further that the total size (or number if the jobs are of unit size) of the jobs in each Ai is bounded by the capacity of the vehicle. We require that, for each i with 1 ≤ i ≤ g, Ai acts as a delivery batch, the jobs in Ai are contained in the same processing batch, and further more, the delivery batches are delivered in the order (A1 , A2 , . . . , A g ). Let C1∗ be the optimal makespan of problem SP1. Then, by the same logic as used in the proof of Lemma 2.1(6), the property (c) for P1 still holds for SP1, i.e., there is an optimal schedule for SP1 such that the departure time δk of each delivery batch Ak is given by δk = C1∗ − (g − k + 1)T . Denote by ρk the processing completion time of Ak on the machine. Then we have ρk ≤ δk for 1 ≤ k ≤ g. We can consider each Ak as a new job with processing time p(Ak ) and δk = C1∗ − (g − k + 1)T as the deadline of Dk . Since C ∗ is not given in advance, we further define the due date of each new job Ak as dk = δk − C ∗ = −(g − k + 1)T . The objective is to minimize maximum lateness. The later problem, called the dual problem of SP1, will be denoted by DSP1. Lemma 2.2. Let L max be the optimal maximum lateness of DSP1. Then we have L max = C1∗ . Furthermore, an optimal batch schedule of DSP1 corresponds to an optimal solution of SP1. Proof. Let π ∗ be an optimal solution of the problem SP1 such that the departure time of Ak is δk = C1∗ − (g − k + 1)T ., 1 ≤ k ≤ g. Since the jobs in each delivery batch are contained in the same processing batch, we also treat π ∗ as a schedule of DSP1. Then, for each k with 1 ≤ k ≤ g, we have L k (π ∗ ) = ρk (π ∗ )+(g −k +1)T ≤ δk +(g −k +1)T = C1∗ . Since L max is the optimal maximum lateness of DSP1, we have L max ≤ C1∗ . Conversely, suppose that π is an optimal schedule of DSP1. Then, we have Ck (π ) + (g − k + 1)T ≤ L max for 1 ≤ k ≤ g, where Ck (π ) is the completion time of Ak in π. Now, we process the delivery batches A1 , . . . , A g according to the schedule π and delivery each Ak at time L max − (g − k + 1)T ≥ Ck (π ). The resulting schedule for SP1 is exactly L max . Since C1∗ is the optimal makespan of the problem SP1, we have C1∗ ≤ L max . Consequently, L max = C ∗ , and an optimal batch schedule of DSP1 corresponds to an optimal solution of SP1. 

479

L. Lu, J. Yuan / Operations Research Letters 36 (2008) 477–480

The above discussion means that, in O(n) time, the problem SP1 is transformed into the unbounded parallel batch machine scheduling problem with g jobs to minimize maximum lateness. For the unbounded parallel batch scheduling with g jobs to minimize maximum lateness, Brucker et al. [1] have presented an O(g 2 )-time dynamic programming algorithm. Then we conclude that Lemma 2.3. The problem SP1 can be solved in O(n 2 ) time. Since P1 is a subproblem of SP1, P1 can be solved in O(n 2 ) time. 3. The problem with non-identical-sizes jobs In this section, each job J j has a non-identical size s j . The considered problem will be denoted by P2 . When p j = 0 for 1 ≤ j ≤ n, the strongly NP-hard bin-packing problem [8] is a subproblem of the problem P2 . Thus, P2 is strongly NP-hard. Then a heuristic method is justifiable. We have the following result. Lemma 3.1. Suppose that D1∗ , . . . , Dh∗∗ are the delivery batches in an optimal schedule of P2 . Then there is an optimal schedule π ∗ of P2 such that (1) The jobs in each delivery batch are contained in the same processing batch. (2) The delivery batches are processed in the order of nondecreasing processing times. (3) The batches are delivered in order of non-decreasing completion times on the machines. Proof. By considering the h ∗ delivery batches as h ∗ new jobs of unit sizes to be delivered by a vehicle of unit capacity, the result follows from Lemma 2.1.  First, we give an FF-LPT rule for solving the delivery batch partition problem. Note that the FF-LPT rule is based on the job sizes s j and the vehicle capacity z. FF-LPT rule: 1. Sort the jobs such that p1 ≥ p2 ≥ · · · ≥ pn . 2. Assign the job J1 to D1 . 3. When the jth job J j is considered, assign it to the lowest indexed batch such that the total job size of the corresponding batch does not exceed z. If J j cannot be put into any present batch, then we open a new batch and assign it to the new batch. The following heuristic is proposed for the problem P2 . Heuristic H Step 1: Assign jobs to delivery batches by the FF-LPT rule. Let h be the number of delivery batches obtained by the FFLPT rule. Then the resulting delivery batches are denoted by D1 , . . . , D h . Step 2: Let SP2 be an instance of SP1 with the order of delivery batches being (Dh , Dh−1 , . . . , D1 ). Solve SP2. The resulting optimal schedule and optimal makespan of SP2 are denoted by π and C H , respectively. Step 3: Output π and C H . We have the following two observations about the heuristic H .

Observation 1. p(D1 ) ≥ p(D2 ) ≥ · · · ≥ p(Dh ). Observation 2. For 1 ≤ k ≤ h, Dk is the (h − k + 1)th delivery batch. Let C ∗ be the optimal makespan of P2 . Suppose that there are h ∗ delivery batches in a certain optimal solution for P2 . Let h ∗L be the number of batches if jobs are assigned to batches by an optimal bin-packing method rather than by the FF-LPT rule used in step 1. Then we have h ∗L ≤ h ∗ . To bound the performance of heuristic H , we use two results from SimchiLevi [13]. Lemma 3.2 ([13]). h ≤ 74 h ∗L . We say that the jobs have agreeable processing times and sizes if pi ≥ p j implies si ≥ s j . In this version, the FFLPT rule becomes the well-known FFD rule for the bin-packing problem. Hence, we have Lemma 3.3 ([13]). When jobs have agreeable processing times and sizes, we have h ≤ 23 h ∗L . Theorem 3.4.

CH C∗

≤ 47 .

Proof. Suppose to the contrary that C H > 74 C ∗ . Let π ∗ be an optimal schedule of P2 . Suppose that there are h ∗ delivery batches D1∗ , . . . , Dh∗∗ in π ∗ . We re-index the delivery batches such that p(D1∗ ) ≥ · · · ≥ p(Dh∗∗ ). By Lemma 3.1, there is an optimal schedule of P2 such that, for 1 ≤ k ≤ h ∗ , Dk∗ is exactly the (h ∗ −k +1)th delivery batch. Let SP3 be the instance of SP1 with the order of delivery batches being (Dh∗∗ , Dh∗∗ −1 , . . . , D1∗ ). Then we have C3∗ = C ∗ , where C3∗ is the optimal makespan of SP3.  Claim 1. p(D ∗j ) ≥ p(Db 7 ( j−1)c+1 ) for j = 1, . . . , h ∗ . 4

Proof. We only considerSthe S set of jobs S = {Ji : pi > p(D ∗j )}. Then S ⊆ D1∗ · · · D ∗j−1 . Thus, by Lemma 3.2, the jobs in S can be assigned in b 74 ( j − 1)c delivery batches. Then we have p(D ∗j ) ≥ p(Db 7 ( j−1)c+1 ). This completes the 4 proof of Claim 1.  Since h ≤ b 74 h ∗ c, by Claim 1, there is an integer m with 1 ≤ m ≤ h ∗ such that p(D ∗j ) ≥ p(Db 7 ( j−1)c+1 ) ≥ · · · ≥ p(Db 7 jc ) 4 4 ∗ ) ≥ p(D for j = 1, . . . , m − 1, and p(Dm b 7 (m−1)c+1 ) ≥ · · · ≥ 4

p(Dh ), where h ≤ b 47 mc. Now we define an instance SP4 of SP1 as follows: There are h delivery batches D10 , . . . , Dh0 which are delivered in the order 0 Dh0 , Dh−1 , . . . , D10 . For j = 1, . . . , m − 1, if b 74 ( j − 1)c + 1 ≤ 7 k ≤ b 4 jc, p(Dk0 ) = p(D ∗j ); if b 47 (m − 1)c + 1 ≤ k ≤ h, ∗ ). p(Dk0 ) = p(Dm Claim 2. Let C4∗ be the optimal makespan of SP4. Then C4∗ > 7 ∗ 4C . Proof. Otherwise, there exists a schedule σ of SP4 such that Cmax (σ ) ≤ 74 C ∗ . Then the processing completion time of each delivery batch Dk0 is estimated by Ck (σ ) ≤ 47 C ∗ − kT ,

480

L. Lu, J. Yuan / Operations Research Letters 36 (2008) 477–480

1 ≤ k ≤ h. Note that, by Claim 1, we have p(Dk ) ≤ p(Dk0 ) for 1 ≤ k ≤ h. This means that, we can process D1 , . . . , Dh according to the schedule δ and deliver Dk at 47 C ∗ − kT for 1 ≤ k ≤ h. Hence, there is a schedule for P2 with delivery batches D1 , . . . , Dh and makespan 74 C ∗ . Since C H > 74 C ∗ , this contradicts the fact that C H is the optimal makespan under the constraint that delivery batches are D1 , . . . , Dh . The proof of Claim 2 is completed. 

Unless P = N P, it is impossible to have a polynomial heuristic for the bin-packing problem with a worst-case performance ratio less than 23 (Simchi-Levi, [13]). Since the bin-packing problem is a special case of problem P2 , it is impossible to design a polynomial heuristic for P2 with a worstcase performance ratio bound less than 32 unless P = N P. Thus, Heuristic H has the best bound when the jobs have agreeable processing times and sizes.

Let DSP4 be the dual problem of SP4. Then the due date of Dk0 is defined by −kT in DSP4, 1 ≤ k ≤ h. By Lemma 2.2, we have C4∗ = L ∗max , where L ∗max is the minimum maximum lateness of DSP4. Note that there may be some jobs (delivery batches in SP4) which have the same processing time. It does not change the optimal value of DSP4 if, for the jobs with the same processing time, we exclude some of them which have larger due dates. Hence, we define a new problem obtained from DSP4 as follows.

Acknowledgments

Problem DSP5. There are m jobs (delivery batches) D 0 7 , . . . , b4c

D0 7

b 4 (m−1)c

, Dh0 which are processed on an unbounded parallel

batch machine. For j = 1, . . . , m − 1, p(D 0 7 ) = p(D ∗j ) b 4 jc

and the due date of D 0 7

b 4 jc

is −b 74 jcT . Furthermore, p(Dh0 ) =

∗ ) and the due date of D 0 is −hT . The objective is to p(Dm h minimize maximum lateness.

Let L 0max be the minimum maximum lateness of DSP5. Then we have L 0max = L ∗max = C4∗ > 74 C ∗ . Assume that σ ∗ is an optimal schedule of SP3. Let Ck (σ ∗ ) be the processing completion time of Dk∗ in σ ∗ . Then we have Ck (σ ∗ ) ≤ C ∗ − kT for 1 ≤ k ≤ h ∗ since L max (S P3) = C ∗ . Now we stretch σ ∗ by 74 times to obtain a new scheduling σ . Let Ck (σ ) be the completion time of Dk∗ in δ. Then, we have Ck (δ) = 47 Ck (δ ∗ ) ≤ 74 (C ∗ − kT ) ≤ 74 C ∗ − b 74 kcT . Note that ∗ ). p(D 0 7 ) = p(D ∗j ) for j = 1, . . . , m−1 and p(Dh0 ) = p(Dm b 4 jc

∗ By ignoring the delivery batches Dm+1 , . . . , Dh∗∗ in SP3 and treating each remaining delivery batch as a job, we obtain a schedule of DSP5 such that each job (delivery batch) has a lateness at most 47 C ∗ . This contradicts the fact that L 0max = L ∗max > 74 C ∗ . The result follows. 

Theorem 3.5. When the jobs have agreeable processing times H and sizes, CC ∗ ≤ 23 . Proof. Similar to the proof of Theorem 3.4 (just replace by 23 ). 

7 4

This research was supported by NSFC (10671183) and NFSC-RGC (70731160633). The authors are grateful to the anonymous referee for the helpful comments. References [1] P. Brucker, A. Gladky, H. Hoogeveen, M.Y. Kovalyov, C.N. Potts, S.L. van de Velde, Scheduling a batching machine, J. scheduling 1 (1998) 31–54. [2] P. Brucker, S. Knust, Complexity results for scheduling problem, http://www.mathematik.uniosnabrueck.de/reseach/OR/class/, 2006. [3] Y.-C. Chang, C.-Y. Lee, Machine scheduling with job delivery coordination, Eur. J. Oper. Res. 158 (2004) 470–487. [4] Z.-L. Chen, Scheduling and common due date assignment with earliness–tardiness penalties and batch delivery costs, Eur. J. Oper. Res. 93 (1996) 49–60. [5] T.C.E. Cheng, Z.H. Liu, W.C. Yu, Scheduling jobs with release dates and deadlines on a batching processing machine, IIE Trans. 33 (2001) 685–690. [6] T.C.E. Cheng, V.S. Gordon, M.Y. Kovalyov, Single machine scheduling with batch deliveries, Eur. J. Oper. Res. 94 (1996) 277–283. [7] X. Deng, Y.Z. Zhang, Minimizing mean response time for batch processing systems, Lecture Notes on Computer Science 1627 (1999) 231–240. [8] M.R. Garey, D.S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness., Freeman, San Francisco, CA, 1979. [9] J.W. Herrmann, C.-Y. Lee, On scheduling to minimize earliness and batch delivery costs with a common due date, Eur. J. Oper. Res. 70 (1993) 272–288. [10] C.-Y. Lee, Z.-L. Chen, Machine scheduling with transportation considerations, J. Scheduling 4 (2001) 3–24. [11] C.-Y. Lee, R. Uzsoy, L.A. Martin-Vega, Efficient algorithms for scheduling semiconductor burn-in operations, Oper. Res. 40 (1992) 764–775. [12] Z.H. Liu, J.J. Yuan, T.C.E. Cheng, On scheduling an unbounded batch machine, Oper. Res. Lett. 31 (2003) 42–48. [13] D. Simchi-Levi, New worst-case results for the bin-packing problem, Nav. Res. Logistics 41 (1994) 579–585. [14] X. Yang, Scheduling with generalized batch delivery times, IIE Trans. 32 (2000) 735–741. [15] J.J. Yuan, A note on the complexity of single-machine scheduling with a common due date, earliness–tardiness, and batch delivery costs, Eur. J. Oper. Res. 94 (1996) 203–205.