Available online at www.sciencedirect.com
Omega 32 (2004) 353 – 359 www.elsevier.com/locate/dsw
Scheduling two-component products on parallel machines Wen-Hua Yang∗ Department of Business Administration, Chaoyang University of Technology, 168 GiFeng E. Road, Wufeng, Taichung County 413 Taiwan Received 23 October 2002; accepted 26 January 2004
Abstract We consider a scheduling problem in which N products are processed on M identical parallel machines. Each product comprises two components. Because the components of a product are processed in a -xed order, one is conveniently called as -rst-component and the other is as second-component. First-components are fabricated in batches, each of which is initiated with a set-up. As for second-components, they are manufactured individually. Two components of a product are restrictedly processed on the same machine. A product is completed when both its two components have been completed and are available. We propose two heuristics to build up near-optimal schedules with respect to minimizing the total completion time of products. The performances of both heuristics are compared with a lower bound. Especially, within the experimental range, one heuristic not only dominates over the other all the time but also is much more timesaving. ? 2004 Elsevier Ltd. All rights reserved. Keywords: Two-component product; Scheduling; Setup
1. Introduction This study tackles the scheduling problem of component fabrication for N two-component products on M identical parallel machines. Baker [1] makes a pioneering investigation on the single-machine scheduling problem of two-component products. In Baker’s problem, each product comprises two components. One is a common component, which is of a similar type for all products; the other is a unique component, which depends on the particular requirements of the product. Common components are fabricated in batches and each batch is initiated with a setup. On the other hand, the setup for a unique component depends on its associated product. Thus, each unique component is assumed to have an associated processing time that includes the relevant setup time. In general, products are made through a two-stage production process, where the -rst stage fabricates all required components and then, the second stage assembles ∗
Fax: +886-4-23742331. E-mail address:
[email protected] (W.-H. Yang).
0305-0483/$ - see front matter ? 2004 Elsevier Ltd. All rights reserved. doi:10.1016/j.omega.2004.01.005
components into products. Under assuming the -rst stage as a bottle-neck, Baker focuses his study on this stage with a view to minimizing the total completion time of products on a common facility. The completion time of a product is de-ned as the time when both its common and unique components have been completed and are available. The same as Baker’s model, this paper is proposed to focus on the stage of component fabrication. Nevertheless, we extend Baker’s single machine model to identical parallel machines, each of which is capable of the production for these two types of components. To limit the complexity of our problem, we impose the constraint that the two components of a product have to be processed on the same machine. This constraint can be found in the banking practices. For instance, a loan case in banking requires two major operations to implement in a prescribed order: the -rst is to evaluate its mortgaged objectives, which are real estates in general; the second is to make a formal report on the evaluation result as well as -nancial data. Due to the centralization of credit audit works in banking, a loan case received by one branch is assigned to one of multiple managers in the credit audit center. In consideration of operating
354
W.-H. Yang / Omega 32 (2004) 353 – 359
requirements, these two steps are constrained to execute by the same manager and in a -xed order. Since the assigned manager needs to take some traveling time visiting the sites of mortgaged real estates, the batching of some loan cases in a neighborhood to evaluate contiguously is economic. Then, the round-traveling time could be regarded as the setup time initiated for these loan cases. Given the consideration of operation eHciency, the center of credit audit is often designed to locate in the place that keeps the almost same distance to each of its responsible branches. Allahverdi et al. [2] and Yang and Liao [3] provide the survey papers on the scheduling problems with setup times and the applications of setup times in scheduling problems. Summarizing from these survey papers, a series of researches succeeding Baker’s study take into account the various combinations of the following characteristics: Batch availability vs. item availability: Because common components are manufactured in batches, it is referred to as batch availability if no component in a batch is available until all components in this batch are completed; otherwise, it is item availability. Agreeable products: Products are called agreeable if the sequence of products in a non-decreasing order of processing times of their common components is agreeable to that of their unique components. A general case for Baker’s model is concerned with multiple-component products. Similar to the multiplecomponent product problem, a “customer order” model is discussed by Julien and Magazine [4] and Yang and Liao [5]. In their models, each order comprises multiple jobs of several types and then, jobs are scheduled with the objective to minimize the total completion time of customer orders. On the other hand, some references take into consideration both stages of component fabrication and assembly, which is the so-called two-stage assembly Mowshop problem. For this problem, Lee et al. [6] address a 3-machine assembly Mowshop system, where the -rst stage includes two parallel machines and each of them is dedicated to one type of component. Once the two components of a product are completed at the -rst stage, they are fed into a single machine at the second stage for their assembly into a product. Potts et al. [7] and Hariri and Potts [8] independently explore its extension to multiple-component products. Noticeably, the distinction between the above m-machine assembly Mowshop problem and our problem is that we assume each of parallel machines at the -rst stage can process all types of components. Furthermore, we also do not consider the second stage due to viewing the -rst stage as a bottleneck. Another research made by Cheng and Wang [9] assumes each of the two stages includes a single facility so that the machine at the -rst stage is common for producing both types of components. All of these two-stage assembly Mowshop problems focus on the optimality criterion of makespan minimization. To apply some parallel-machine literature in our problem, we brieMy review the following references; however,
it is noti-ed in advance that their concerned jobs are neither two-component nor multiple-component products. Under the assumptions of item availability for jobs and sequence-independent setup times for batches, Webster [10] considers the problem of weighted deviation minimization about a common due date, and Webster and Azizoglu [11] present two dynamic programming algorithms to minimize the total weighted completion time of jobs. For the same problem but subject to batch availability and a constant setup time, Cheng et al. [12] develop a dynamic programming algorithm to minimize the total completion time of jobs. Since two components of a product in our problem are restrictedly processed by the same machine and in a -xed order. Thus, for convenience, we call these two types of components as the -rst-component and the second-component, respectively. The conditions of agreeable products and batch availability are hold in our problem. To minimize the total completion time of products on m identical parallel machines, we need to determine simultaneously the optimal batching of products, the optimal assignment of batches to machines, and the optimal batch sequence on each machine. The rest of the paper is organized as follows. In the next section, we give a formal description of the problem and extend the work in Cheng et al. [12] to our problem. In Section 3, our problem is solved by two heuristics, one of which is an application of Cheng et al. [12] and the other is an application of CoNman et al. [13]. The result of computational tests for these two heuristics is summarized in Section 4. In the -nal section, this paper ends with a summary of known results for this two-component product model, together with some concluding remarks. 2. Preliminaries There are N products to be processed on M identical parallel machines. Each product consists of two components, which are processed in a -xed order so that one is conveniently called as -rst-component and the other is second-component. First-components are processed in batches with the assumption of batch availability. The setup time incurred by a batch is a constant S. For convenience of illustration, the products whose -rst-components are included in a batch are simpli-ed to the products in a batch. Second-components are processed individually. Whenever a batch of -rst-components is completed on a machine, their associated second-components are processed contiguously on the same machine and in the same sequence as the -rst-components are. So, the completion time of a product is de-ned as the completion time of its second-component. With the condition of agreeable products, the sequence of products in the shortest processing time (SPT) order represents an ordering of the products such that the -rst-components and the second-components both appear in a non-decreasing order of their processing times. For
W.-H. Yang / Omega 32 (2004) 353 – 359
Machine 1
S
Machine 2
S
Machine 3
S
The symbol
p(1,1,1)
p(2,1,1)
p(3,1,1)
p(1,1,2)
p(1,1,3)
q(1,1,1) q(1,1,2)
p(2,1,2) q(2,1,1)
p(3,1,2)
q(3,1,1)
355
q(1,1,3)
q(2,1,2)
q(3,1,2)
…
S
…
S
…
S
means the completion of one product. Fig. 1. An illustrative example of three-machine problem.
a given schedule, let (l; i; j) denote the product index of the jth -rst-component completed in the ith batch on machine l, and let the processing time for the -rst-component and second-component of product (l; i; j) be referred to as p(l; i; j) and q(l; i; j) , respectively. The number of batches on machine l is denoted by l and the number of products in the ith batch on machine l is denoted by l; i . With these notations, an illustrative example of three-machine problem is given as Fig. 1. Additionally, we de-ne the mean processing time of the ith batch on machine l as Tl; i =
S+
l; i
k=1 (p(l; i; k)
l; i
+ q(l; i; k) )
:
Cheng et al. [12] present three lemmas for their problem, which focuses on the completion times of jobs. Some of their lemmas can be applied to our problem. Lemma 1. There exists an optimal schedule that satis7es the conditions (1) On each machine, products are processed in the SPT order and any two consecutive batches on machine l satisfy l; i+1 ¿ l; i for i = 1; 2; : : : ; l − 1. (2) On each machine, batches are processed in the shortest mean processing time (SMPT) order. The proof for condition (1) is similar to Lemma 1 in Cheng et al. As for the other condition, it can be proved by pairwise interchanging. The next lemma is similar to Lemma 3 in Cheng et al. Lemma 2. In the case that all 7rst-components have identical processing times, there exists an optimal schedule with the following structure, where u denotes the largest integer no greater than N=M and w = N − uM . (1) Each of the 7rst w machines processes total u + 1 products. (2) Each of the remaining M − w machines processes total u products.
Without consideration of -rst-components, an optimal schedule for second-components can be constructed through the procedure that they are -rst sequenced in the SPT order and then, each machine takes turns at receiving one component at a time. This schedule, called “natural schedule”, makes the number of second-components on each machine coincide with conditions (1) and (2) of Lemma 2. It means this optimal schedule for second-components is also optimal for -rst-components. So, this case is a polynomial-solvable problem.
3. The proposed heuristics The total completion time of products in our problem can be formulated as l; i l m F= Wl; i S + p(l; i; j) l=1 i=1
+
l l; i m
j=1
(Wl; i − j + 1)q(l; i; j) ;
(1)
l=1 i=1 j=1
l where Wl; i = k=i l; k for l=1; 2; : : : ; M and i =1; 2; : : : ; l . The -rst part of the right side in (1) is a contribution from -rst-components and the second part is from second-components. Our -rst heuristic gives priority to the minimization for total completion time of -rst-components. Comparatively, minimizing the total completion time of second-components acquires a priority in our second heuristic. According to the above deduction, the formal description of our two heuristics is given below. 3.1. Heuristic I This heuristic lightly amends the backward dynamic programming algorithm in Cheng et al. [12] to promote its eHciency. At -rst, all products are sequenced in the SPT
356
W.-H. Yang / Omega 32 (2004) 353 – 359
order. The following additional notations are made for the recursion function of Heuristic I:
Table 1 The speci-cation of experimental factors
pk = the processing time for the -rst-component of the
Notation De-nition
Experimental values
N M PT1
20, 26, 32, 38, 44, 50 3, 4, 5 I = (11; 20); II = (21; 30);
kth product: n = (n1 ; : : : ; nM ); the non-increasing rank of the number of products on each machine;
PT2a
i:e:; n1 ¿ · · · ¿ nM ¿ 0: Fi (n) = total completion time of products
STa
in an optimal schedule for product i; i + 1; : : : ; N subject to n and M
Total number of jobs Total number of machines The range for generating -rst component processing time The range for generating second component processing time The range for generating a constant setup time
III = (31; 40) I = PT1 − 10; II = PT1; III = PT1 + 10 I = PT1; II = PT1 + 10; III = PT1 + 20
a PT2 (ST) depends on PT1; for example, if PT1=(11, 20) and PT2=PT1+10, it means PT2=(21, 30).
nm = N − i + 1 for 0 6 i 6 N:
m=1
The Recursion Fi (n) =
min l; j l=1;:::;M i¡j6min{i+nl ;N }
nl
S+
j−1
pk
+ Fj (n ) ;
k=i
where n is obtained by -rst updating nl by nl − (j − i) and next, re-sequencing nm for m = 1; : : : ; M in a non-increasing order; i.e., suppose n = (n1 ; : : : ; nM ), then M 0 6 nM 6 nM −1 6 · · · 6 n1 6 N − j + 1 and n = N − j + 1. m=1 m For product i; i + 1; : : : ; N , the recursion function feels like minimizing the total completion time of their -rst-components by simultaneously determining the -rst-components included in the -rst batch as well as the machine processing this -rst batch. We formulate the computation by beginning with FN +1 (0) = 0. Afterwards, through the recursion, we systematically increase the arguments of n until M we search an m=1 nm = N . Finally, optimal value F ∗ among all F1 (n) with M m=1 nm = N and then, backtrack its corresponding optimal solution. During the tracing, it is necessary to additionally record the index of machines associated with each nm ∈ n for m = 1; : : : ; M . The time complexity of this algorithm equals O(MN M +1 ). After exploiting this algorithm to assign, sequence, and batch -rst-components, a series of second-components of which -rst-components are in the same batch are scheduled to succeed this batch in a manner that they are processed in the same order as their -rst-components are. Consequently, the total completion time of products can be calculated.
a “natural scheduling” of products minimizes the second part of the right side in (1), we assign products to the earliest available machine in the SPT order. After products on each machine are decided, we next apply the algorithm of CoNman et al. [13] to batch their -rst-components. The time complexity of this heuristic is O(N log(N=M )). Compared with Heuristic I, this heuristic is much more timesaving. 4. Computational experience To compare these two heuristics, they are coded in C++ language and are executed on a PC with a Pentium IV CPU. The experimental factors are speci-ed as Table 1. It is noted in Table 1 that factors ST and PT2, the range for generating a constant setup time of batches and the range for the processing times of second-components, depend on PT1 (the range for the processing time of -rst-components). All of the processing times and setup times are randomly generated from a uniform distribution over the speci-ed ranges. For each combination of experimental factors, 10 tests are made. The computational times required by Heuristic I (H1) and Heuristic II (H2) are outlined in Table 2, which supports Heuristic II is much more timesaving than Heuristic I. According to Eq. (1), we can deduce the following equation: l; i l m min Wl; i S + p(l; i; j) l=1 i=1
3.2. Heuristic II In this heuristic, the work to minimize the total completion time of second-components is executed -rst. Because
+
l l; i m l=1 i=1 j=1
j=1
(Wl; i − j + 1)q(l; i; j)
W.-H. Yang / Omega 32 (2004) 353 – 359
357
Table 2 Computational times of heuristics (in s.) M
N
H1 (avg.)
3
20 26 32 38 44 50
0.93 1.00 1.00 2.04 5.00 9.07
4
20 26 32 38 44 50
5
20 26 32 38 44 50
H1(max.)
H2 (avg.)
H2(max.)
1.00 1.00 1.00 3.00 5.00 10.00
0.00 0.00 0.00 0.00 0.00 0.00
0.00 0.00 0.00 0.00 0.00 0.00
1.00 2.00 7.00 20.93 57.37 138.15
1.00 2.00 7.00 22.00 58.00 152.00
0.00 0.00 0.00 0.00 0.00 0.00
0.00 0.00 0.00 1.00 0.00 0.00
1.00 6.04 27.59 111.96 384.70 1159.59
1.00 7.00 28.00 115.00 387.00 1163.00
0.00 0.00 0.00 0.00 0.00 0.00
0.00 0.00 0.00 0.00 0.00 1.00
Table 3 Performance deviations of heuristics for factors M and N (in percent) N
M 3
4
H1(avg.)
H2(avg.)
5
H1
H2
H1
H2
H1
H2
20 26 32 38 44 50
0.197 0.167 0.159 0.148 0.126 0.123
0.130 0.099 0.077 0.067 0.057 0.047
0.353 0.216 0.276 0.183 0.222 0.166
0.021 0.155 0.025 0.105 0.020 0.076
0.467 0.290 0.253 0.226 0.242 0.256
0.001 0.141 0.157 0.138 0.075 0.018
0.339 0.224 0.229 0.186 0.197 0.182
0.051 0.132 0.087 0.103 0.051 0.047
Avg.
0.153
0.080
0.236
0.067
0.289
0.088
0.226
0.078
¿ min
l m
+ min
Wl; i S +
l=1 i=1
l l; i m
l=1 i=1 j=1
l; i j=1
p(l; i; j)
(Wl; i − j + 1)q(l; i; j)
:
The -rst part of right side in the above equation is minimized by Heuristic I and the second part is minimized by Heuristic II. So, we design a lower bound LB, which is the sum of total completion time of -rst-components in Heuristic I and total completion time of second-components in Heuristic II.
Suppose TCTP(I) and TCTP(II) denote the total completion time of products scheduled by Heuristic I and scheduled by Heuristic II, respectively. In each test, the performance deviations of TCTP(I) and TCTP(II) from LB are computed as follows: TCTP(I) − LB DEV(I) = × 100%; LB TCTP(II) − LB × 100%: LB Table 3 summarizes the deviations in respect of each combination of factors M (the number of machines) and N (the number of products). Within the experimental ranges of DEV(II) =
358
W.-H. Yang / Omega 32 (2004) 353 – 359
Table 4 Performance deviations of heuristics for factors PT1 and PT2 (in percent) PT2
PT1 I
II
H1(avg.)
H2(avg.)
III
H1
H2
H1
H2
H1
H2
I II III
0.424 0.361 0.302
0.165 0.124 0.099
0.214 0.185 0.161
0.073 0.061 0.053
0.146 0.127 0.114
0.048 0.043 0.038
0.262 0.224 0.193
0.095 0.076 0.063
Avg.
0.363
0.129
0.187
0.063
0.129
0.043
0.226
0.078
H1(avg.)
H2(avg.)
Table 5 Performance deviations of heuristics for factors PT1 and ST (in percent) ST
PT1 I
II
III
H1
H2
H1
H2
H1
H2
I II III
0.232 0.374 0.482
0.097 0.128 0.163
0.138 0.197 0.225
0.053 0.061 0.074
0.094 0.138 0.155
0.039 0.043 0.046
0.155 0.236 0.288
0.063 0.078 0.095
Avg.
0.363
0.129
0.187
0.063
0.129
0.043
0.226
0.078
factors M and N , Heuristic II always dominates over Heuristic I in the matter of deviations. On average, Heuristic I seems to have decreasing deviations with increasing N , although this trend is not clear for the cases of M = 4 and 5. Besides, with the increase of factor M , Heuristic I has increasing deviations. However, we conservatively make no remark for Heuristic II because there exists no clear pattern. For all combinations of factors in Tables 4 and 5, Heuristic II also brings smaller deviations than Heuristic I does. Both heuristics lead to a consistent pattern of decreasing deviations with increasing PT1. In addition, Table 4 exhibits the deviations of both heuristics are decreasing with increasing PT2. As for another factor ST, Table 5 leads to a conclusion opposite to the trend of deviations with the increase of factor PT2 in Table 4. Anyway, all of these experiment outcomes consistently support Heuristic II is dominant over Heuristic I no matter in respect of their required running times or their solution qualities. It may be because the batching of -rst components needs to take into account the processing times of second components. In consequence, the key point for our problem is to optimally determine the second-components processed on each machine. This also implies a good heuristic for our problem is to -rst determine the products processed on each machine and then, -nd the optimal batching of those -rst-components on each machine.
5. Conclusions In this study, a scheduling problem with two-component products on identical parallel machines is examined. In view of special processing constraints in banking, two components of a product are manufactured on the same machine and in a -xed order. Furthermore, -rst-components are fabricated in batches with batch availability. Under the assumption of a constant setup time with each batch, we propose two heuristics subject to minimizing the total completion times of -rst-components and second-components, respectively. Through a series of simulation experiments, we -nd Heuristic II not only requires much less computational time but also establishes near-optimal schedules with higher performances than Heuristic I. This outcome enhances the applicability of Heuristic II to the practices. Several issues about the scheduling problem of two-component or multiple-component product problem are worthy of future researches. For instance, if the constraint that two components of a product are processed in a -xed order is relaxed, a model with item availability in replacement of batch availability can be further examined. Since a credit manager in banking is similar to a machine in manufacturing, it is reasonable to assume managers unidentical. Then, this extension model falls under the category of unidentical parallel-machine scheduling problems. Another
W.-H. Yang / Omega 32 (2004) 353 – 359
extended model is to take into account the second stage of assembling components into products. Acknowledgements This Research was supported in part by National Science Council of Taiwan under grant NSC 90–2218–E–324–006. The author also wishes to express her thanks to the anonymous referees for helpful comments and suggestions. References [1] Baker KR. Scheduling the production of components at a common facility. IIE Transactions 1988;20:32–5. [2] Allahverdi A, Gupta JND, Aldowaisan T. A review of scheduling research involving setup considerations. Omega, International Journal of Management Sciences 1999;27: 219–39. [3] Yang WH, Liao CJ. Survey of scheduling research involving setup times. International Journal of System Science 1999;30:143–55. [4] Julien FM, Magazine MJ. Scheduling customer orders— An alternative production scheduling approach. Journal of Manufacturing and Operations Management 1990;3: 177–99.
359
[5] Yang WH, Liao CJ. Batching and sequencing of jobs with order availability at a single facility. International Journal of System Science 1998;29:13–20. [6] Lee CY, Cheng TCE, Lin BMT. Minimizing the makespan in the 3-machine assembly-type Mowshop scheduling problem. Management Sciences 1993;39:616–25. [7] Potts CN, Sevast’janov SV, Strusevich VA, Van Wassenhove LN, Zwaneveld CM. The two-stage assembly scheduling problem: complexity and approximation. Operational Research 1995;43:346–55. [8] Hariri AMA, Potts CN. A branch and bound algorithm for the two-stage assembly scheduling problem. European Journal of Operational Research 1997;103:547–56. [9] Cheng TCE, Wang G. Scheduling the fabrication and assembly of components in a two-machine Mowshop. IIE Transactions 1999;31:135–43. [10] Webster ST. The complexity of scheduling job families about a common due date. Operational Research Letter 1997;20: 65–74. [11] Webster ST, Azizoglu M. Dynamic programming algorithms for scheduling parallel machines with family setup times. Computers & Operations Research 2001;28:127–37. [12] Cheng TCE, Chen ZL, Kovalyov MY, Lin BMT. Parallel-machine batching and scheduling to minimize total completion time. IIE Transactions 1996;28:953–6. [13] CoNman Jr. EG, Yannakakis M, Magazine MJ, Santos C. Batch sizing and job sequencing on a single machine. Annals of Operational Research 1990;16:135–47.