Multi-Oeration Multi-Machine Scheduling Weizhen Mao he College of William and Mary, Williamsburg VA 3185, USA Abstract. In the multi-oeration scheduling that arises in industrial engineering, each job contains multile tasks (oerations) that require execution in different shos. It is assumed that in each sho there is only one machine to erform the required oerations. In this aer, a arallel model of multi-oeration scheduling is roosed, in which multile machines are available in each sho to erform the same tye of oerations. A multi-machine oen-sho scheduling roblem is studied in detail. 1 Introduction Multi-oeration scheduling as a research area is motivated by questions that arise in industrial manufacturing, roduction lanning, and comuter control. Consider a large automotive garage with secialized shos [?]. A car may require the following work: relace exhaust system, align wheels, and tune u. hese three tasks may be carried out in any order. However, since the exhaust system, alignment, and tune-u shos are in different buildings, it is imossible to erform two tasks for a car simultaneously. When there are many cars requiring services at the three shos, it is desirable to construct a service schedule that takes the least amount of total time. he examle above is in fact a secial case of the traditional multi-oeration scheduling [?,?], where m shos S 1,...,S m rovide different tyes of services to n jobs J 1,...,J n. Each sho S i contains exactly one machine M i that does the actual work. Each job J j contains m tasks j1,..., jm, with the required rocessing times j1,..., jm, resectively. ask ji must be executed by machine M i in sho S i, and no two tasks of the same job can be executed simultaneously. In addition, each machine can only execute one task at any time. he scheduling is called oen-sho scheduling (O) if the order in which a job asses through the shos is immaterial, flow-sho scheduling (F) if each job has the same sho ordering, e.g. (S 1,...,S m ), and job-sho scheduling (J) if the jobs may have different sho orderings. Multi-oeration scheduling roblems are otimization roblems and include various arameters. o define such roblems, we use the three-field classification α β γ [?], where α describes the sho and machine environment, β describes the job and task characteristics, and γ describes the otimality criteria. he automotive garage examle can be denoted by O3 C max, which is a three-sho (m = 3) oen-sho scheduling roblem of minimizing the maximum comletion time (makesan). he above multi-oeration model assumes that there is only one machine in each sho to execute tasks. However, this is certainly not the case in the arallel rocessing environment, where more than one machine (rocessor) are available to erform a certain tye of oerations. his motivates us to define the following multi-oeration 33
multi-machine model. Suose that there are m shos S 1,...,S m and n jobs J 1,...,J n. Sho S i consists of k i machines M i1,...,m iki to erform the same tye of oerations. Job J j consists of m tasks j1,..., jm to be executed on any machine in S 1,...,S m, resectively. he machines in a sho work in arallel, and deending on the secific environment, they may be identical (P), having the same seed, or uniform (Q), having different but fixed seeds, or unrelated (R), having different seeds for different tasks. A multi-oeration multi-machine scheduling roblem can also be defined by the α β γ classification. For instance, if the first field is OmPk, then the roblem is an oen-sho scheduling roblem, where there are m shos, each having k identical arallel machines. he automotive garage examle can be modified to include the arallel rocessing concet by having more than one worker (machine) in each of the three secialized shos. As in the traditional scheduling roblems, a multi-oeration multi-machine schedule can be nonreemtive or reemtive. We say that a schedule is nonreemtive if the execution of any task can not be interruted, and that a schedule is reemtive if the execution of a task can be interruted and be resumed later on. A reemtive schedule is desired when there is no enalty for an interrution. Since very few multi-oeration scheduling roblems can be solved in olynomial time, adding the multi-machine environment makes the resulting multi-oeration multi-machine scheduling even more difficult. In this aer, we study an oen-sho scheduling roblem with two shos and k identical arallel machines in each sho to minimize the makesan. We organize the aer as follows. In Section, we give an NP-comleteness roof of the nonreemtive version. In Section 3, we resent an efficient algorithm for the reemtive version. We conclude in Section 4. Nonreemtive Scheduling he roblem of interest in this section is the nonreemtive oen-sho scheduling of n jobs in two shos each with k identical machines to minimize the makesan. It is denoted by OPk C max. heorem 1. OPk C max is NP-comlete even when k =. Proof Consider the corresonding decision roblem, in which given a bound B, we are asked whether there is a multi-oeration multi-machine schedule with makesan C max B. his decision roblem of OP C max is certainly in NP. Now we show that it can be olynomially reduced from the NP-comlete PARIION [?]. Given any instance of PARIION, A = {a 1,a,...,a n } (ositive integers), we construct an instance of the decision roblem, in which there are n jobs J 1,...,J n. Each job J j consists of two tasks j1 and j with rocessing times a j and ε, resectively, where 0 ε 1 min j{a j }. Assume that there are two shos S 1 and S and that each sho S i has two identical machines M i1 and M i. ask j1 can be executed by machines M 11 and M 1 only, while task j by machines M 1 and M only. Finally, let B = j a j. We next show that there exists A A such that a j A a j = j a j if and only if there is a nonreemtive schedule with C max B for the instance defined. If there is A A with a j A a j = j a j, without loss of generality assume that A = {a 1,...,a h }. 34
A feasible schedule with C max B of the instance can be constructed by scheduling tasks 11,..., h1 on machine M 11 and the remaining tasks (h+1)1,..., n1 on machine M 1. Let s j1 and f j1 be the starting time and finishing (comletion) time of task j1 in sho S 1. As for each task j that must be executed in sho S, if f j1 + ε B, then schedule j in interval [ f j1, f j1 + ε] on either M 1 or M, otherwise schedule j in interval [s j1 ε,s j1 ] on either M 1 or M. See Fig. 1 for an examle. S S 1 M 11 M M M 1 1 11 1 31 41 51 61 71 0 B 4 7 1 3 5 6 0 B Fig. 1. A feasible schedule with C max B If there is a feasible schedule with C max B = j a j for the instance, the maximum comletion time of tasks in S 1 must be j a j. Since the schedule is nonreemtive, we define A = {a j j1 is executed by M 11 }. herefore, a j A a j = j a j. Q.E.D. he NP-comleteness of OPk C max indicates that no olynomial-time algorithm for the roblem is likely to be found and that research should focus on designing fast and good aroximation algorithms. 3 Preemtive Scheduling he roblem of interest in this section is the reemtive oen-sho scheduling of n jobs in two shos each with k identical machines to minimize the makesan. It is denoted by OPk mtn C max. We give an O(n ) algorithm for the roblem. Let i = 1,, j = 1,...,n, and l = 1,...,k. Let ji be the rocessing time of task ji of job J j. Note that task ji must be scheduled, with reemtion allowed, on any machine M il in sho S i. Define C = max{ k j j1, k j j,max j { j1 + j }}. C is obviously a lower bound on the makesan of any reemtive schedule. If we can construct a schedule with makesan C, the schedule must be otimal. able 1 shows an instance and its corresonding C. We first construct a schedule for tasks j1 in S 1 using McNaughton s wra-around rule [?]: just fill the machines successively, scheduling the tasks in any order and slitting a task whenever the bound C is met. he schedule in Fig. is one for tasks j1 in the examle given in able 1. Let C max (1) be the makesan of the schedule constructed, then C (1) max C and C (1) max < C only when j j1 < C. 35
able 1. An inatance of OP mtn C max k = 1 P J 1 J J 3 J 4 J 5 k j ji S 1 3 4 1 6 S 1 1 4 5 j1 + j 4 4 5 3 6 C = 6 M 11 11 1 31 S 1 M 1 31 41 51 0 1 3 4 5 6 Fig.. A feasible schedule for S 1 We next construct a schedule for tasks j in S with makesan C () max C. o do so, we need to know whether a task can be scheduled in a time interval. Let us consider the interval (0,C) in the schedule for S 1 constructed in the revious ste. We say that t (0,C) is a turning oint if at time t at least one machine in S 1 changes its status from executing to idling or from executing a task to executing another task. Assume that there are h 1 turning oints t 1 < < t h 1 in (0,C). Clearly, h 1 n. Let t 0 = 0 and t h = C. We define an interval I r = (t r 1,t r ] for r = 1,...,h. Let D r be the set of indices of the jobs whose tasks may be scheduled in interval I r in S. Clearly, n k D r n. Let B j be the set of indices of the intervals in which j may be scheduled. Clearly, B j h and r B j (t r t r 1 ) = C j1. For the examle given in Fig., I 1 = (0,], D 1 = {,4,5}, and B 1 = {,3,4,5}. Let x r j be the length of time in I r that j of J j is being executed by any machine in S. If we can determine x r j for all r and j satisfying x r j = 0 for j D r, (1) r B j x r j = j for j = 1,...,n, () j D r x r j k(t r t r 1 ) for r = 1,...,h, (3) then we have a schedule for tasks j in S with C () max C. Constraint (1) ensures that j1 and j do not overla, constraint () ensures that the total amount of time for which j is rocessed is the required rocessing time j, and constraint (3) ensures that the total amount of time used in I r on all k machines is no larger than that available. We use the following algorithm to determine x r j for j D r. For notational simlicity, let δ r = j D r x r j k(t r t r 1 ). 1. x r j j C j1 (t r t r 1 ) for r = 1,...,h and j D r ;. while there exists I with δ > 0 36
3. locate I q with δ q < 0; 4. define 0 ε j x j for j D D q such that j D D q ε j = min{δ, δ q }; 5. x j x j ε j for j D D q ; 6. x q j x q j + ε j for j D D q ; o rove the correctness of the algorithm, we wish to show that constraints () and (3) are satisfied by the final values of x r j comuted. Consider the initial values of x r j in line 1. For each j = 1,...,n, r B j x r j = j C j1 r B j (t r t r 1 ) = j. In each iteration of the while loo, r B j x r j remains to be j since every time the value of some x j is decreased (line 5), the value of some x q j is increased by the same amount (line 6). herefore, constraint () is satisfied. As for constraint (3), if the while loo terminates eventually, then we must have δ r 0, hence by definition j D r x r j k(t r t r 1 ) for r = 1,...,h, which is constraint (3). Before we show that the loo always terminates, we need Lemmas?? and?? to justify lines 3 and 4, resectively. Lemma 1. At the beginning of each iteration of the while loo, if there exists I with δ > 0 (line ), then there exists I q with δ q < 0 (line 3). Proof Suose not, we must have r δ r > 0. So r j D r x r j k r (t r t r 1 ) = j j kc > 0, and hence C < 1 k j j. his is imossible. Q.E.D. Lemma. In each iteration of the while loo, if there exist I and I q with δ > 0 and δ q < 0, then there exist 0 ε j x j for j D D q such that j D D q ε j = min{δ, δ q } (line 4). Proof It is sufficient to show that j D s D r x s j δ s for any s with δ s > 0 and any r s. Let w b sr and δ b s be the values of j D s D r x s j and δ s, resectively, at the end of the b th iteration of the while loo. We wish to show that w b sr δ b s for each b. We induct on b. When b = 0, w 0 sr and δ 0 s are defined by the initial values of x s j (line 1). So w 0 sr = (t s t s 1 ) j j D s D r C j1 and δ 0 s = (t s t s 1 )( j j D s C j1 k). Since D s D s D r k and j C j1 1, then j j D s D r C j1 j j D s C j1 k. herefore, w 0 sr δ 0 s. Assume that w b 1 sr δ b 1 s for any s with δ b 1 s > 0 and any r s. Now consider b. Suose that I is the interval with δ b 1 > 0 chosen in line in the b th iteration and that I q is the interval with δ b 1 q < 0 chosen in line 3 in the b th iteration. After we move a total of min{δ b 1, δ b 1 q } from I to I q, we have w b q = w b 1 q w b r = w b 1 r w b sr = w b 1 sr min{δ b 1, δ b 1 q j D D q D r ε j w b 1 r } and δ b = δ b 1 min{δ b 1 min{δ b 1, δ b 1 q, δ b 1 and δ b s = δ b 1 s for any s with δ b s > 0 and any r s. q }. } for any r,q. So in summary, w b sr δ b s for any s with δ s > 0 and any r s. Q.E.D. Let d be the number of intervals I r with δ r 0 before the while loo is executed. We then have d h n+1. In each iteration, d is decreased by at least 1. So the loo must 37
terminate eventually. Constraint (3) is satisfied. It is clear that once we have all the x r j for r = 1,...,h and j = 1,...,n satisfying constraints (1), (), and (3), a schedule with C () max C for tasks j in S can be constructed easily. We have the following theorem. heorem. OPk mtn C max is solvable in O(n ) time. 4 Conclusions In this aer, we introduced a arallel model for multi-oeration scheduling, and studied a two-sho oen-sho scheduling roblem with multile identical machines available in each sho. We roved the NP-comleteness for the nonreemtive version and gave an efficient algorithm for the reemtive version. he multi-machine multi-oeration scheduling is a better and more ractical model than the traditional multi-oeration scheduling since it catures the essence of arallel rocessing that is being emloyed in various asects of industrial engineering. We wish that this aer will rovide a starting oint for future research in this area. References 1. Coffman, E. G. Jr.: Comuter and Job Sho Scheduling heory. John Wiley and Sons, New York (1976). Garey, M. R., Johnson, D. S.: Comuters and Intractability: A guide to the theory of NPcomleteness. Freeman, San Francisco (1979) 3. Gonzalez,., Sahni, S.: Oen sho scheduling to minimize finish time. J. ACM 3 (1976) 665 679 4. Lawler, E. L., Lenstra, J. K., Rinnooy Kan, A. H. G., Shmoys, D. B.: Sequencing and scheduling: Algorithms and comlexity. Handbooks in Oerations Research and Management Science, Volume 4: Logistics of Production and Inventory, S. C. Graves, A. H. G. Rinnooy Kan and P. Zikin, ed., North-Holland (1990) 5. McNaughton, R.: Scheduling with deadlines and loss function. Management Sci. 6 (1959) 1 1 38