#### Abstract

This paper considers an assembly scheduling problem which minimizes the total weighted tardiness. The system consists of multiple manufacturing machines in the first stage and an assembly machine in the second stage. A job is composed of multiple components, each component is manufactured on a dedicated machine in the first stage, and the assembly starts on the assembly machine after the completion of all the components’ manufacturing in the first stage. This paper is to try to find effective and efficient schedules to minimize the total weighted tardiness of jobs. This paper analyzes some solution properties to improve search effectiveness and efficiency. Moreover, some lower-bound procedures are derived, and then four constructive heuristics and a branch-and-bound algorithm are suggested. The performances of the derived algorithms are evaluated through numerical experiments. For the problems with no more than 15 jobs, the branch-and-bound algorithm finds the optimal solutions within 20 minutes, and the performance of the four heuristics seems to be similar. However, for problems with more than 30 jobs, H_{WT} shows the best performance among the four heuristics except for two machines.

#### 1. Introduction

This study considers a two-stage assembly production system, which manufactures components in the first stage and then assembles all the components in the second stage. The assembly can begin after all the components belonging to the product are completed. In the system, two stages are physically located in a series as the components’ production stage and the assembly stage, but the components are produced on the manufacturing machines in parallel.

Framinan et al. [1] and Pan et al. [2] conducted a review paper on the assembly scheduling problem. From the review papers, there are two types of research depending on whether dedicated machines or flexible machines are used for manufacturing components in the first stage. First, the dedicated machine environment represents that each component is processed on a designated machine. Second, the flexible machine environment means that each machine can process all types of components.

This paper considers the first situation with dedicated machines in the first stage. Lee et al. [3] introduced a two-stage assembly scheduling problem with two dedicated manufacturing machines in the first stage and one assembly machine in the second stage. For the makespan minimization, Lee et al. [3] proved that the associated problem is NP-complete, proposed three heuristics based on Johnson's rule, and derived their error bounds. Potts et al. [4] conducted an extension of Lee et al. [3] by considering *m* machines in the first stage and proposed some heuristics using Johnson's rule. Hariri and Potts [5] proposed an effective branch-and-bound algorithm to find optimal solutions. Sun et al. [6] proposed 14 heuristics for the problem of Potts et al. [4]. Tozkapan et al. [7] and Lee [8] considered the total weighted completion minimization in a two-stage assembly scheduling problem and suggested a branch-and-bound algorithm. Framinan and Perez-Gonzalez [9] proposed a metaheuristic algorithm for the total completion minimization in a two-stage assembly scheduling problem. Talens et al. [10] addressed the two-stage multimachine assembly scheduling problem under a situation with several dedicated parallel machines in the first stage and identical parallel machines in the second stage. They proposed two heuristic algorithms for the total completion time minimization.

Allahverdi and Al-Anzi [11] considered the maximum lateness objective in the two-stage assembly scheduling problem and derived a metaheuristic based on particle swarm optimization and tabu search. Allahverdi and Aydilek [12], Ha et al. [13], and Lee and Bang [14] considered the two-stage assembly scheduling problem to minimize the total tardiness with two dedicated machines in the first stage and one assembly machine in the second stage. Allahverdi and Aydilek [12] proposed metaheuristic algorithms, and Ha et al. [13] and Lee and Bang [14] derived a branch-and-bound algorithm. Kazemi et al. [15] investigated a two-stage assembly flowshop scheduling problem with a batched delivery system where there are *m* independent machines at the first stage and multiple assembly machines at the second stage. They proposed some heuristic algorithms so as to minimize the sum of tardiness penalty and delivery costs.

Within the author's knowledge, no studies have addressed the total weighted tardiness objective on an assembly scheduling problem. This paper is to find effective and efficient schedules to minimize the total weighted tardiness of jobs. Section 2 presents the problem description, and Sections 3 and 4 characterize some solution properties to improve search effectiveness and efficiency. Moreover, four constructive heuristics, H_{EDD}, H_{WT}, WSPT_{MAX}, and WSPT_{AVER}, are derived in Section 5, lower-bound procedures are derived in Section 6, and a branch-and-bound algorithm is derived in Section 7. The performance of the proposed algorithms is evaluated through numerical experiments in Section 8.

#### 2. Problem Description

This study has *n* jobs to process and a job consists of *m* components which are processed in the first stage, and the *m* manufactured components are assembled in the second stage. Component *k* (*k* = 1, 2, …, *m*) of each job is processed in dedicated machine *k*, and the processing time *a*_{jk} is required for component *k* of job *j* (*j* = 1, 2, …, *n*, *k* = 1, 2, ..., *m*). In addition, the assembly of job *j* can start in the assembly machine after the completion of all the components, and the required assembly time is *b*_{j} (*j* = 1, 2, ..., *n*). The assembly system in this paper is presented in Figure 1.

It is assumed that more than one job in a machine cannot be processed at the same time, and no preemption is allowed in any processing. The completion time of a job is the completion time of the assembly at the second stage, which is expressed as *C*_{j}. *d*_{j} denotes the due date for job *j*, and then the tardiness value of job *j* is computed as . Thus, the total weighted tardiness of *n* jobs is , where denotes the weight for job *j*.

This paper introduces Property 1 which can reduce the solution space to search, where the permutation schedule means that the production order is the same in all the machines.

*Property 1. *An optimal schedule exists among permutation schedules.

*Proof. *It can be easily shown by a pairwise job interchange augment.

#### 3. Identical Weight Case

Now, we characterize some dominance properties for finding better schedules for the problem. These properties can be used in some heuristic algorithms and a branch-and-bound algorithm. This section considers the situation where all the job weights are identical; that is, .

For the property derivation, assume that jobs *p* and *q* are processed consecutively. Denote by *S* a schedule in which job *p* is processed immediately before job *q*, while *R* denotes a schedule which is identical to *S* but job *q* is processed immediately before job *p*. Moreover, *π* denotes a set of jobs processed before jobs *p* and *q* in *S* and *R*. Some solution properties are presented for jobs *p* and *q* as follows.

*Property 2. *If the following conditions hold, job *q* should be processed immediately before *p*:

*Proof. *We prove that schedule *S* is dominated by *R* under conditions (1) and (2). First, we can easily see that the completion time of job *q* in schedule *R* is smaller than that of job *q* in *S*, so that the relation holds. Condition (1) implies , so that the following relation holds:If condition (2) is satisfied, the earliest start time of a job after jobs *p* and *q* on the assembly machine in *R* is no later than the earliest start time of a job after *p* and *q* in *S*. Therefore, we can conclude that schedule *S* is dominated by schedule *R*.

*Property 3. *If the following conditions hold, job *q* should be processed immediately before *p*:

*Proof. *As we discussed earlier in Property 2, condition (4) implies that the following relation holds:In condition (5), the right-hand-side term means the possible earliest start time after jobs *p* and *q* on the assembly machine. Condition (5) represents that the *q* ⟶ *p* sequence in *R* does not delay the processing of any jobs after jobs *p* and *q*. Therefore, we can conclude that schedule *S* is dominated by schedule *R*.

*Property 4. *If the following conditions hold, job *q* should be processed immediately before *p*:

*Proof. *Remind that the *q* ⟶ *p* sequence is in schedule *R*, while the *p* ⟶ *q* sequence is in schedule *S*. From equations (7) and (8), we can see that the completion times of jobs *q* and *p* in *R* are earlier than the completion times of *p* and *q* in *S*, respectively. Now, the following cases are considered:(i)*Case 1*. and . In this case, both jobs *p* and *q* are completed before each due date, so the following relation holds: From the above equation, we can see that holds.(ii)*Case 2*. and . In this case, both jobs *p* and *q* are tardy, so the following relation holds: (due to conditions (7)–(9))(iii)*Case 3*. and . From the condition, (due to conditions (7) and (9)) .(iv)*Case 4*. and . From the condition, (due to condition (8)) .From cases 1, 2, 3, and 4, we can say that holds.

*Property 5. *If the following conditions hold, job *q* should be processed immediately before *p*:where *t*_{k} represents the completion time of the last-positioned job before jobs *p* and *q* on machine *k*.

The indices *x*, *u*, and represent the machine indices satisfying the following relation:

*Proof. *At first, we try to show . and can be expressed as follows:where denotes the completion time of the job immediately before jobs *p* and *q* on the assembly machine. From condition (15), the following relation is true:Then, in order to prove the relation , we have to show that the holds as follows:From condition (15), the relation is true. Thus, the above equation is true; then,From equations (18) and (20), the following equation holds:From condition (14) and equation (21), we have and . In order to say that schedule *R* is better than schedule *S*, due date should be examined additionally as in the two following cases:(i)Case 1. . Both *p* and *q* are tardy from condition (13), so the following relation holds: From equations (14) and (21), we can see that holds.(ii)Case 2. . From (13) and (14), the following relation holds:From (14), (21), and (32), we can say that holds according to Property 4.

Property 6 is an extension of Schaller [16], dominance property which is applied in this paper.

*Property 6. *If the following conditions hold, job *q* should be processed immediately before *p*:where denotes the number of jobs in the set .

*Proof. *If condition (24) is satisfied, the sum of tardiness of jobs *p* and *q* in *R* is smaller than that of *S*. In condition (25), the right-hand-side term represents the upper limit of the potential tardiness increment of the jobs after *p* and *q*. From condition (25), we can say that schedule S is dominated by schedule *R*.

#### 4. Nonidentical Weight Case

Now, we present some dominance properties for the situation where all the job weights would be nonidentical. Some solution properties are characterized for jobs *p* and *q* as follows.

*Property 7. *If the following conditions hold, job *q* should be processed immediately before *p*:

*Proof. *The proof is the same as in Property 2.

*Property 8. *If the following conditions hold, job *q* should be processed immediately before *p*:

*Proof. *The proof is the same as in Property 3.

*Property 9. *If the following conditions hold, job *q* should be processed immediately before *p*:

*Proof. *The proof can be made in a similar manner in Property 6.

#### 5. Constructive Heuristic Algorithms

This paper proposes four constructive heuristic algorithms. Let *π* denote a partial sequence whose processing order is already assigned. The heuristic algorithms in this paper are based on a scheme which selects one job that has not been yet allocated and attaches it to the end position of the partial sequence *π*. Let denote the completion time of the last-positioned job in *π*.

This paper proposes an EDD (Earliest Due Date) type heuristic. A specific procedure is as follows, where denotes the possible completion time of job *j* when attaching job *j* to the end position of *π*, and thus, , where denotes the completion time of the last-positioned job in machine *k* in *π*.

##### 5.1. Heuristic H_{EDD}

Step 0. , , , for *k* = 1, 2, …, 0 Step 1. Select a job with the smallest due date value for *j* ∉ *π* Step 2. Add the job to the end position of the set *π* Step 3. If , then terminate. Otherwise, go to Step 1

It is true that EDD-type heuristics generally perform well in the scheduling problems associated with the due date objective measures. However, in the total weighted tardiness as in this study, it may be difficult to guarantee the performance of EDD-type heuristics because the schedule must be changed according to the job weight. Therefore, this paper presents another heuristic based on the job weight as follows.

##### 5.2. Heuristic H_{WT}

Step 0. , , , for *k* = 1, 2, …, 0 Step 1. Select a job with the largest weight value for *j* ∉ *π* Steps 2 and 3. The same as in the heuristic H_{EDD}

Heuristic H_{EDD} can be expected to show excellent performance in situations sensitive to the due date parameters, while heuristic H_{WT} can be expected to show better performance in the weight-sensitive situations. However, it can be said that the two heuristics now have limitations in that they do not consider processing times on machines. Now, this study presents two additional heuristics, called WSPT_{MAX} and WSPT_{AVER}, which consider processing times. The first heuristic WSPT_{MAX} calculates the maximum value of the processing times of each job in the first stage and selects a job with the smallest value of the value . The second heuristic WSPT_{AVER} calculates the average value of the processing times of each job in the first stage and selects a job with the smallest value of the value . The two heuristics have an inherent limitation that they do not consider due dates, but they can be said to be very advantageous in that they consider processing times and weights together. If the completion time can be accelerated considering the processing times, it can be said that due date parameters are satisfied as a result. The specific procedures of the two heuristics are presented as follows.

##### 5.3. Heuristic WSPT_{MAX}

Step 0. , , , for *k* = 1, 2, …, 0 Calculate the value for all job *j* Step 1. Select a job with the smallest value for *j* ∉ *π* Steps 2 and 3. The same as in the heuristic H_{EDD}

##### 5.4. Heuristic WSPT_{AVER}

Step 0. , , , for *k* = 1, 2, …, 0 Calculate the value for all job *j* Steps 1, 2, and 3. The same as in the heuristic WSPT_{MAX}

#### 6. A Lower-Bound Procedure

This section proposes a lower-bound procedure to evaluate the performance of the derived heuristic algorithms, and this lower bound can also be used in the branch-and-bound algorithm developed in a later part of this paper. In the following lower bound LB1, [*y*] denotes the *y*-th smallest number in the parameters *a*_{jk}’s, *b*_{j}’s, and ’s.

##### 6.1. Lower-Bound LB1

Step 0. Calculate the *D*_{j} value as follows: for *j* = 1, 2, …, *n*, where Step 1. Calculate *LB*_{1} as , where

In the above lower bound, denotes a lower-bound value of the completion time of any possible *j*-th positioned job:

(*k*) denotes the *k*-th positioned job in any schedule, and then,

To derive a lower-bound value of equation (31), we sequence values in nondecreasing order:

Therefore, we can say that the lower-bound LB_{1} provides a lower bound for the original problem. The complexity order of the lower bound LB_{1} is . Two more lower bounds are derived on Property 10, which was verified by Chu [17] and Kim [18].

*Property 10. *For the *C*_{j} and *d*_{j} values satisfying , then the following relation holds:Based on Property 10, this paper proposes two more lower bounds LB_{2} and LB_{3}. The second lower bound LB_{2} is calculated as follows; we can begin with the fact that the completion time of the first job, *C*_{1}, cannot be larger than the following value under the condition :In inequality (34), the value is the possible earliest starting time of processing, and is the smallest assembly time among all the jobs. From (34), an additional relation for the *x*-th smallest completion time *C*_{x} holds as follows:From (34) and (35), we can derive the second lower bound LB_{2} as follows:Now, we show the process of deriving the third lower bound LB_{3}; we can derive another relation that can replace equation (34) as follows:The value is the possible earliest starting time of processing in the assembly machine. From (37), an additional relation for the *x*-th smallest completion time *C*_{x} holds as follows:From (37) and (38), we derive the second lower bound LB_{3} as follows:

#### 7. A Branch-and-Bound Algorithm

This paper derives a branch-and-bound method to find the optimal solution for medium-size problems. The proposed branch-and-bound algorithm uses depth-first search as a branching rule, which means selecting the lowest node (i.e., the node with the largest partial permutation) in the branching tree when selecting a node. In the case of a tie, the node having the lowest lower bound is selected.

In the B&B algorithm, the initial upper bound is obtained from the minimum value among the four heuristics H_{1}, H_{EDD}, WSPT_{MAX}, and WSPT_{AVER} proposed in Section 5:

This paper uses the largest of the three values LB_{1}, LB_{2}, and LB_{3} as the lower bound for the branch-and-bound algorithm as follows:

##### 7.1. Branch-and-Bound Algorithm

Step 0 (initialization). , , . Calculate the value . Step 1 (lower bound). Calculate . Step 2 (branching). If , then go to Step 4. If , then go to Step 5. Select *k* such as , and Step 3 (dominance properties). If then go to Step 5. If any of Properties 2∼9. holds, then go to Step 5. Go to Step 1. Step 4 (update the upper bound). If the last level of the enumeration tree is reached, the total weighted tardiness WTT is calculated. If , then . Step 5. The current node no longer needs to be searched:

If , then go to Step 2. Otherwise terminate the B&B algorithm.

The optimal solution is UB.

#### 8. Computational Experiments

This section measures the performance of the branch-and-bound algorithms and the heuristic algorithms through various numerical tests. For the test, the generated experimental data is set as follows:(1)The parameters *a*_{jk}, *b*_{j}, and (*j* = 1,…,*n*, *k* = 1,…,*m*) are generated from *U* (1, 100), where *U* (*x*, *y*) represents a uniform distribution with the numbers *x* and *y.*(2)The due dates *d*_{j} (*j* = 1,…,*n*) are generated from , where P denotes a possible lower-bound value of the makespan value:

We conducted computational experiments with the number of jobs *n* in {5, 7, 9, 11, 13, 15} and the number of machines *m* in {2, 4, 6}. The coefficients RDD (relative range of due date) and TF (tardiness factor) are from the values {0.2, 0.5, 0.8} for the due date generation. 20 problems were randomly generated for 162 combinations of jobs and machines and RDD and TF values, and then a total of 3,240 problems were generated.

For the performance evaluation of the proposed branch-and-bound algorithm, the computational experiments are summarized in Table 1. In the table, “the number of nodes” refers to the total number of the generated nodes, and “computational time” refers to the computing time of the branch-and-bound algorithm. From the table, we can see that the optimal solutions were found within 1,200 seconds (CPU) for instances with up to about 15 jobs, and the average number of nodes and computational time of the B&B algorithm do not increase significantly as the number of machines increases. From the fact that the number of nodes and computational time decrease in some cases as the number of machines increases, we can possibly say that the lower-bound mechanism of the B&B algorithm is effective. Moreover, this paper tries to evaluate the performance of the dominance properties in Sections 3 and 4. We can see the performance summary of the B&B algorithm without any dominance properties applied. From the table, the computational time and the average number of search nodes increased significantly when the dominance properties were not applied, and specifically optimal solutions were not found for problems with 15 jobs within 20 minutes. From the comparative experiments, we can say that the dominance properties contribute to the performance of the B&B algorithm.

This paper conducted some experiments to investigate the performance change according to the RDD and TF values. The computational tests are carried out with *n* = 9 and *m* = 2 and are presented in Table 2. For each combination of RDD and TF values from {0.2, 0.5, 0.8}, 20 problems were randomly generated. The performance of the proposed B&B algorithm is summarized in Table 2. From the table, the performance of the B&B algorithm does not seem to fluctuate significantly according to the RDD and TF values.

The performance of four heuristics H_{EDD}, H_{WT}, WSPT_{MAX}, and WSPT_{AVER} are given in Tables 3 and 4. In the table, the term “*error*” means the average error of the associated heuristic compared to the lower-bound value and is defined as follows:where WT (*S*_{H}) is the total weighted tardiness of an obtained solution from a heuristic and LB is a lower-bound value in Section 6; thus, , and WT (*S*_{Worst}) is the largest value among solutions obtained from four heuristics H_{EDD}, H_{WT}, WSPT_{MAX}, and WSPT_{AVER}. The smaller the value *error*, the better the performance of the associated heuristic. 180 instances are solved for each combination of jobs and machines. In the table, NO denotes the number of problems that the associated heuristic found the best solution among four heuristic values. NO value can reach up to 180, but since multiple heuristics can produce the same value, the sum of the NO values of the four heuristics can exceed 180.

From the test result, it seems that H_{EDD} does not show good performance and H_{WT} shows relatively excellent results in the experiments. It may be because algorithms are more sensitive to the job weight fluctuations. Therefore, it can be interpreted to be more advantageous to process high-weight jobs preferentially.

Table 4 shows the performance change of the four heuristics according to the RDD and TF values. The experiment was carried out with the instances of 9 jobs and 2 machines, and 20 problems are solved for combinations of RDD and TF. In the table, NO value can reach up to 20, but the sum of NO values can exceed 20. From Table 4, it can be seen that the performance of the heuristics varies depending on the RDD and TF values. When the value of RDD increases and the value of TF decreases, the performance of H_{EDD} tends to improve. The larger the RDD value, the greater the deviation of the due dates, and the smaller the TF value, the greater the chance of tardy jobs. It can be seen that H_{EDD} heuristic performs better where the problem is more sensitive to due dates.

We conducted computational experiments with large-size jobs from 30 to 270 and the number of machines in {2, 4, 6}. 180 problems were randomly generated for 9 combinations of RDD and TF values, and then a total of 4,860 problems were generated. Table 5 shows the performance summary of the four heuristics. NO value can reach up to 180, but the sum of NO values can exceed 180. From the table, H_{WT} shows the best performance among the four heuristics, while when the number of machines is 2, H_{EDD} performs well.

#### 9. Concluding Remarks

This paper considers a two-stage assembly scheduling problem where there are *m* dedicated machines in the first stage and an assembly machine in the second stage. This paper proposes some solution approaches to establish effective and efficient schedules to minimize the total weighted tardiness measure. In this paper, we develop some dominance properties and lower-bound procedures, derive a branch-and-bound algorithm for finding optimal solutions, and derive four heuristics. Computational tests are performed to evaluate the solution approaches in this paper. For problems with no more than 15 jobs, the B&B algorithm finds optimal solutions within 20 minutes, and the performance of the four heuristics seems to be similar. However, for problems with more than 30 jobs, H_{WT} shows the best performance among the four heuristics, while when the number of machines is two, the performance of H_{EDD} is better.

#### Data Availability

The data used to support the findings of this study are available from the corresponding author upon request.

#### Conflicts of Interest

The authors declare that they have no conflicts of interest.

#### Acknowledgments

This study was supported by research funds from Dong-A University.