Dynamic Scheduling of a Semiconductor Production Line Based on a Composite Rule Set

Various factors and constraints should be considered when developing a manufacturing production schedule, and such a schedule is often based on rules. This paper develops a composite dispatching rule based on heuristic rules that comprehensively consider various factors in a semiconductor production line. The composite rule is obtained by exploring various states of a semiconductor production line (machine status, queue size, etc.), where such indicators as makespan and equipment efficiency are used to judge performance. A model of the response surface, as a function of key variables, is then developed to find the optimized parameters of a composite rule for various production states. Furthermore, dynamic scheduling of semiconductor manufacturing is studied based on support vector regression (SVR). This approach dynamically obtains a composite dispatching rule (i.e., parameters of the composite dispatching rule) that can be used to optimize production performance according to real-time production line state. Following optimization, the proposed dynamic scheduling approach is tested in a real semiconductor production line to validate the effectiveness of the proposed composite rule set.


Introduction
A semiconductor manufacturing system is a dynamic system that is subject to various uncertainties (e.g., machine failures, arrival of new urgent jobs, and the modification of job due times).When unexpected events occur, a previously "optimal" schedule may no longer be optimal, and can even become infeasible.Scheduling in response to real-time events has been defined as "dynamic scheduling" [1].
Dynamic scheduling of manufacturing systems is often rule based, with a given rule selected based on the needs of the production environment [2].Some researchers have been studying dynamic scheduling based on a machine learning approach whereby a system acquires scheduling knowledge through training with optimized scheduling samples.This knowledge is then applied to obtain scheduling rules which may be utilized to obtain a feasible real-time schedule.For example, Shiue et al. [3] proposed a self-organizing map-based multiple scheduling rule selection mechanism.Tsai et al. [4] put forward a radio frequency identification (RFID)-based real-time scheduling system for an automated semiconductor manufacturing plant.This system selected features for training samples and established a dynamic scheduling model based on a support vector machine (SVM).Olafsson et al. [5] suggested a dynamic scheduling strategy selection method based on a genetic algorithm (GA) and decision tree.Ma et al. [6] and Qiao et al. [7] used a binary particle swarm optimization combined with a support vector machine (BPSO-SVM) and a k-nearest neighbors (KNN) algorithm to realize dynamic scheduling for a semiconductor manufacturing system.These methods provide simple and effective heuristics for selecting real-time scheduling rules for a manufacturing system.These heuristics tend to have a local perspective, in that they ignore such broader issues as information of a manufacturing system, such as job due times and equipment load.However, production scheduling in practice must consider a variety of different performance criteria and constraints, e.g., cost, job completion times, job due dates, process requirements, and limitations.This means that a global information-based dispatching rule is needed, and dynamic scheduling for a manufacturing system is implemented by adjusting key parameters of rules.Li et al. [8] used a back propagation (BP) neural network, a binary regression model and a particle swarm optimization to study samples, thereby obtaining a self-adaptive scheduling model to meet the dynamic scheduling needs; Lee et al. [9] used a real-time dispatching approach integrating autonomy and coordination, in which an advanced dispatching rule was determined based on global information.Once the triggering events occur, the parameters of dispatching rules would be dynamically adjusted.The scheduling structure of this approach is stable, but choosing key parameters is difficult.
Due to the complexity and multiple process constraints of a semiconductor production line, if using advanced dispatching rules for scheduling, global information needs to be taken into account and those results can prove to be computationally demanding; while using simple rules for scheduling, the optimization is ineffective.Therefore, the use of improved simple rules is suggested for semiconductor production scheduling [10][11][12].Chen [13] fused the earliest due date (EDD) and fluctuation smoothing rule for mean cycle time (FSMCT) into a new scheduling rule in a nonlinear way for optimizing mean cycle time and maximum lateness.Dabbas et al. [14] use a linear combination with relative weights to combine multiple dispatching rules into a single rule.Both of them suggested combining single rules into a composite rule, but how to obtain the parameter (weights) of the composite rule in real time according to the state of the manufacturing system, was not elaborated.
This paper proposes a simple and feasible composite dispatching rule and applies it to the scheduling of a semiconductor production line for simultaneous optimization of multiple performance measures.The rest of this paper is organized as follows: In Section 2, the composite dispatching rule is presented.A framework for a dynamic scheduling algorithm is described in Section 3. In Section 4, the dynamic scheduling method with the proposed composite dispatching rule is studied in detail.A case study for the production of 5-inch and 6-inch wafers is presented in Section 5. Finally, some concluding remarks are presented in Section 6.

Composite Dispatching Rule
A simple heuristic dispatching rule is often sought to assess job attributes (due date, process time, etc.) and to make decisions to meet some performance targets of a manufacturing system (energy, cost, throughput, etc.).A composite rule considers, and dynamically integrates, several simple dispatching rules to optimize multiple objectives simultaneously.In particular, the rule seeks out the best sequence in which a set of jobs is processed.That is, by applying the composite rule, an integrated priority P i of job i can be determined using the priority p k,i of job i based on a single rule R k (k = 1, 2, . . ., K), which in turn defines the job sequence.

Priority Based on a Single Rule
Suppose that job i is in a machine buffer waiting to be processed.When using rule R k to sort jobs, the priority p k,i of job i is determined by the job attribute related to rule R k , and 0 ≤ p k,i ≤ 1, where the greater the value of p k,i , the higher the processing priority for job i.There are two scenarios:

•
Scenario I: The greater the value of the job attribute, given by α, the higher the job processing priority.For example, the job attribute "waiting time in buffer" is used to determine the job processing sequence when applying the dispatching rule "first-in first-out (FIFO)".For a job, the longer the waiting time in the buffer, the higher the job processing priority.In this case, the priority is determined by rule R k : • Scenario II: The smaller the value of the job attribute (α), the higher the job processing priority.For example, the job attribute "due date" is used to determine the job processing sequence when applying the dispatching rule "earliest due date (EDD)".For a job, the earlier the job's due date, the higher the processing priority.In this case, the priority is determined by rule R k : where α i is the value of attribute α of job i, and α max and α min are the maximum and the minimum values of attribute α of jobs waiting to be processed.

Integrated Priority Based on a Composite Rule
Integrated priority, as determined by a composite rule, is defined as follows: a composite rule is a linear combination of two or more single rules, with each rule having an associated weight.Suppose ω k (k = 1, 2, . . ., K) is the weight for rule R k in the composite rule.Then, the integrated priority of job i is: where K is the number of single rules in the composite rule and When applying a composite rule to scheduling, the integrated priority P i of job i waiting for processing is determined according to Equation (3).The greater the integrated priority, the earlier job i is to be processed.Changing the weights in Equation (3) will lead to a different integrated priority, thus a different job sequence.In an application, manufacturing performance can be improved by optimizing the weights in a composite rule.

Learning Based Dynamic Scheduling
The proposed approach to solve dynamic scheduling problems follows these steps: (i) analyze historical data on the production state, scheduling decisions, and resulting performance through machine learning; and (ii) build a model that uses the machine learning results to find the best scheduling decision for a given production state and scheduling objectives.The framework of the proposed learning-based dynamic scheduling method is shown in Figure 1.
The framework can be divided into three modules.The modules are (a) a sample generation module that creates sample production states and finds the best decision for each performance criterion of interest; (b) an offline learning (or training) module that uses the sample data to develop a scheduling library, i.e., a set of scheduling models, with each scheduling model giving optimal scheduling decisions based on the system state for a specified scheduling objective; and (c) an online module that uses the scheduling model for decision-making.Since historical data only provide manufacturing system performance for the scheduling decision taken, to develop data that can be used for training purposes a simulation model is required in order to predict system performance when alternative decisions are implemented.Here, a discrete event simulation model is used, which is based on the actual configuration and behavior of a semiconductor production line.Historical data from an actual line on job sizes, arrival times, machine breakdowns, etc., were described statistically, and used to characterize key simulation inputs.For each simulation trial, all possible decisions were evaluated, and values for the performance criteria of interest were noted.Thus, for every production state, the performance evaluation for every performance criterion is available for every decision.
The offline learning module builds a scheduling model for each scheduling objective based on training data, where each dataset includes production states and the corresponding best decision for the specified objective, which can be obtained by exercising the simulation model.The offline learning module can greatly reduce the time consumed for scheduling.The online scheduling module selects a scheduling model from the scheduling model library according to the scheduling requirements of users, and outputs an optimal scheduling decision by inputting real-time state data from the semiconductor production line.
A data record in the sample base consists of the production line state (S), scheduling decision (D), and performance (P), given as {S, D, P}. S represents the current state of the production line, the working area, the machines and the jobs as obtained from historical data; D is the composite scheduling rule applied, and P is the recorded performance of the given production line found by applying the scheduling decision and running the simulation model for a scheduling period.
For the development of the discrete event simulation model for the semiconductor production system, please refer to Ye [15].The discussion here is focusing on the second module, i.e., offline learning.
Appl.Sci.2017, 7, 1052 4 of 10 learning module can greatly reduce the time consumed for scheduling.The online scheduling module selects a scheduling model from the scheduling model library according to the scheduling requirements of users, and outputs an optimal scheduling decision by inputting real-time state data from the semiconductor production line.
A data record in the sample base consists of the production line state (S), scheduling decision (D), and performance (P), given as { , , }. S represents the current state of the production line, the working area, the machines and the jobs as obtained from historical data; D is the composite scheduling rule applied, and P is the recorded performance of the given production line found by applying the scheduling decision and running the simulation model for a scheduling period.
For the development of the discrete event simulation model for the semiconductor production system, please refer to Ye [15].The discussion here is focusing on the second module, i.e., offline learning.

Generation of Training Data from Sample Base
Since running the discrete event simulation model is time consuming (e.g., each simulation run takes more than 30 minutes for a production line with more than 200 steps and 800 machines when processing 80,000 wafers), it is infeasible to search for an optimal scheduling decision (i.e., weights in a composite rule) using the search algorithm for a production state.To address this, response surface methodology (RSM) is used here.If a model for the response surface exists as a function of the weights/parameters, values may be selected to optimize the composite rule.Such an approach involves three steps: (i) running trials of a "process" that depends on several variables (securing "experimental" data); (ii) statistical modeling of the experimental data to secure a predicted response surface [16]; and (iii) using the predicted response surface to select variable settings that optimize a response.Here, the weights, ( = 1, 2, … , ), are the variables of interest and the

Generation of Training Data from Sample Base
Since running the discrete event simulation model is time consuming (e.g., each simulation run takes more than 30 min for a production line with more than 200 steps and 800 machines when processing 80,000 wafers), it is infeasible to search for an optimal scheduling decision (i.e., weights in a composite rule) using the search algorithm for a production state.To address this, response surface methodology (RSM) is used here.If a model for the response surface exists as a function of the weights/parameters, values may be selected to optimize the composite rule.Such an approach involves three steps: (i) running trials of a "process" that depends on several variables (securing "experimental" data); (ii) statistical modeling of the experimental data to secure a predicted response surface [16]; and (iii) using the predicted response surface to select variable settings that optimize a response.Here, the weights, ω i (i = 1, 2, . . ., k), are the variables of interest and the response is a multi-objective measure corresponding to the scheduling objective.It is desired to find the levels of the weights that optimize the response, Y.A number of trials are performed using different weights (variable settings) for each production state.The performance of the composite rule is evaluated for each trial to obtain a response.A second-order model (shown in Equation ( 4)) is then developed for the response as a function of the variables/weights: where β ( β0 , β i and βij ) are estimated parameters.Once the experimental data have been obtained, the form shown in Equation ( 4) is fit to the data to obtain the predicted response surface.Then, the combination of weight values, ω * i (i = 1, 2, . . ., k), which optimize production performance may be obtained via calculus from Equation ( 4).This set of weight values provides the optimal composite scheduling rule.In this paper, we use design expert software to find the optimal weight for a production state, and then we build the optimal ample base.

Development of Scheduling Models
A scheduling decision here is a composite scheduling rule and can be represented by the weights of simple heuristic scheduling rules (w i ∈ [0, 1] and w i ∈ R).The scheduling model needs to determine the weights according to the production line state, which is different to selecting a scheduling rule from a defined rule set.The scheduling problem then becomes a regression problem as the training datasets cannot cover all the possible production line states.Support vector regression (SVR) is used to build the scheduling model due to its high regression accuracy and its high generalization ability, even when used for problems with a small sample size.Assuming there is a sample set {(x i , y i )|x i ∈ R m , y i ∈ R n , i = 1, 2, . . ., N }, the nonlinear mapping, Φ(x), of input, x, is built and then the regression function is generated as follows: where ω * and b are the weight vector and bias or offset, respectively.The quadratic program is used to solve the problem and minimize the loss function as shown in the Equation ( 6) [17].
We can obtain the optimal Lagrange multipliers α i and α * i , then acquire the linear regression function in a high-dimensional space, as shown in Equation ( 7), where K(x i , x) is the kernel function.Campbell et al. [18] provide more detail on the SVR method.
For the scheduling of a semiconductor production line, the input vector x i = (x i,1 , x i,2 , . . . ,x i,m ) T is a set of production feature values that describe production state; the output vector y i = (y i,1 , y i,2 , . . . ,y i,n ) T is a set of rule weights of a given scheduling decision in Equation (3).Based on a sample set {(x i , y i )|x i ∈ R m , y i ∈ R n , i = 1, 2, . . ., N }, a regression function can be obtained as shown in Equation (7).So, a composite scheduling rule can be represented by vector f (x) for any given production state, x.
Given the background provided above for developing a regression model for the scheduling decision, our attention now shifts to outlining the stepwise procedure for creating a dynamic scheduling model.There are four steps to building a dynamic scheduling model of a semiconductor production line using SVR.
Step 1: Normalizing sample data.For one production feature, x i,j of j-th element of x-th data record for example, the normalized equation is shown as follows: x N i,j = x i,j − x min i,j x max i,j − x min i,j , where x max i,j and x min i,j are the maximum and minimum values of x i,j (j = The penalty factor C and the variance γ of the kernel function are selected to achieve the highest regression accuracy of the model through cross-validation.Based on this, a SVR-based scheduling model is created.When the performance of several SVR models is the same or similar, the one with the smallest C value is chosen to reduce the complexity of the algorithm.
Step 4: Evaluating the model.The created model is evaluated with test set TE 2 .If the prediction accuracy is in the error range as defined by experience, the model is the one needed; otherwise, return to step 3 and retrain the scheduling model.
Once the scheduling model is established, the focus may shift to evaluating the performance of the model, and there are many ways to evaluate the accuracy of the created scheduling model.Here, mean square error (MSE) is used to evaluate the mean error of the scheduling model, which is acquired through Equation ( 9): where L is the number of the samples in test set TE 2 , ti is the predicted weight value and t i is the real weight value.

Case Study
The proposed method using optimized composite rules has been tested on a real semiconductor production line, which produces 5-inch and 6-inch wafers in Shanghai.There are more than 800 machines, and the average amount of WIP (work in process) is up to 80,000 pieces in the line.With the help of a self-developed scheduling simulation system (FabSimSys, software copyright number from China: 2011SR066503) and expert design v8.0 software, this paper uses the real line production data to obtain sample data.

Production Features Set
Following Ma's work [19], 67 production features were selected for analysis and study.One feature selected was the amount of WIP (work in process) and others are a distribution of machine number and bottleneck machine number.Utilizing these features, it is possible to describe the state of both the jobs and the machines for every location on the production line.

Design of Composite Rule
Several lot attributes were selected to build the composite rule, and are considered when dispatching lots.Based on industry research, the selected attributes are (i) the priority of a lot (Priority); (ii) the remaining number of steps in a lot (RemainingStep); and (iii) the process time constraint.The process time constraint limits the time between two or more production steps for a lot (Q-Time is a parameter, and if a manufacturing process exceeds it, the lot needs to be reworked or scrapped).These attributes reflect the lot urgency, the degree of completeness, and process constraints.The integrated priority is determined by three attributes.Based on the priorities of the three attributes of lot i (P P,i , P R,i , P Q,i ) and the weights of the three attributes (ω P , ω R and ω Q ), the integrated priority P i for lot i is calculated (see Equation (10)).The integrated priority is then used for dispatching the lot.

.3. Selection of Performance Indicators
In order to optimize the operation of the semiconductor production line, long-term and short-term performance indicators need to be considered as a whole in the research.Based on the specific application, five performance indicators were selected as the optimization objectives for scheduling: mean cycle time of total lots (MCT), total wafer movement amount (MOV), amount of work in process (WIP), production rate (PR) and overall equipment efficiency (OEE) [20].Among them, MCT and PR are long-term performance indicators, and MOV, WIP and OEE are short-term performance indicators.

Parameter Settings of the Experiment
As has been noted, the inputs of the scheduling model are the production features of the semiconductor production line.In order to improve the output accuracy of the model, it is necessary to reduce the number of inputs by reducing the number of production features; this can be achieved by using the genetic algorithm (GA) [19].The parameters of the genetic algorithm are set as follows: population size is 100, maximum evolution generation is 100 generations, crossover probability is 0.8, and mutation probability is 0.05.
The parameters of the SVR algorithm are set as follows: the maximum and minimum values of the penalty parameter C are C max = 32 and C min = 0; The maximum and minimum values of the variance parameter γ in the kernel function are γ max = 32 and γ min = 0.

Experiment Results and Data Analysis
Following the application of the genetic algorithm to reduce the number of production features, there are only eight production features left.They are WIP_5 (WIP number in 5-inch), PoBW_DF, PoBW_LT, PoBW_DE, PoBW_WT (proportion of WIP in diffusion area, lithography area, dry etching area, wet cleaning area to WIP), NoBL (number of hot lots in the system), NoBL_DF and NoBL_LT (proportion of hot lots in diffusion area and lithography area).Using the eight attributes, different scheduling methods are applied in the operation of the production line and these production performances are recorded and analyzed.
For most semiconductor production applications, the diffusion area and lithography area are usually the focus of scheduling, because a diffusion machine is a batch processing unit in which two or more lots are organized to be processed together, while a lithography machine is a bottleneck unit, since it is very expensive.Thus, the dynamic scheduling method proposed in this paper and traditional heuristic rules are applied to these two working areas, with FIFO applied to the other working areas.
In the experiment, 100 samples were collected and used (as described before).Of these, 80 samples were randomly selected as training samples, and the other 20 samples were used as test samples.The simulation model was initialized based on the sample data.Different scheduling rules were used to run the model for a scheduling period and the production performance was recorded at the end of each scheduling period.Taking indicator "MOV" as an example, Table 1 provides the scheduling results of 10 samples randomly selected from the test samples using different scheduling rules.
In Table 1, columns of 2, 3, and 4 are the results of applying traditional heuristic rules (for example, GR_SPT means the diffusion area uses a GR, or general rule which is an empirical composite rule considering several dispatching factors (e.g., priority, the remaining number of steps and Q-time) in the production line, and the lithography area uses a SPT, or shortest processing time, rule).LS is an abbreviation for least slack, listed as GR_LS in column 3. Column 5 is the result of optimized composite rules whose weights are determined by response surface methodology, and column 6 is the result of applying the proposed scheduling method in this paper.The better operation of the production line is associated with the larger indicator "MOV" under the same or near same conditions of other production indicators.In the randomly selected 10 samples in Table 1, when compared with a single heuristic scheduling rule, the dynamic scheduling method proposed in this paper is more likely to produce an optimal MOV, and it can get a better average MOV.Therefore, the dynamic scheduling method proposed in this paper is effective in terms of "MOV" indicator.Because the learning sample is collected according to overall performance of five indicators, some records show that traditional heuristic rules are better than the optimized composite rule (its weights determined by RSM) and dynamic scheduling method in terms of the "MOV" indicator.However, overall, the proposed dynamic scheduling method is better than using traditional heuristic rules.
In order to evaluate the overall production performance of the semiconductor production line, the average of each performance indicator for the 20 test samples when using the different scheduling methods was determined.These results are shown in Table 2.
values are normalized, multiplied by their weights and added together.For simplicity, it is assumed that they have equal weight (i.e., weight = 0.2 for each indicator), a condition that was also applied for the previous sample generation.Once these conditions are applied, a comprehensive value can be obtained that reflects a variety of production performances.Those values are given in Table 2.
The normalization process is as follows: for a performance indicator, the maximum value is set to "1", the minimum value is set to "0", and the other value is set to between "0" and "1" depending on its position between the maximum value and the minimum value.That is, all the performance indicators are normalized.The comprehensive value is the weighted sum of normalized value.The greater the comprehensive value, the better the overall performance will be.Table 3 shows that among the four scheduling methods (GR_GR, GR_SPT, GR_LS and the proposed scheduling method), the value for the proposed scheduling method is the largest, and that for the traditional heuristic rule, GR_LS is the next largest.Therefore, considering the overall optimization of the five production performance indicators, the dynamic scheduling method proposed in this paper represents a significant improvement over simple heuristic rules in most circumstances, with a slight loss of comparable productivity in some instances.When applying a single heuristic rule, the scheduling rule does not change with the state of the production line.In other words, it does not consider whether the applied scheduling rules match the current state of the production line or not, while the dynamic scheduling method considers it.As a result, the overall performance is worse than that provided by the dynamic scheduling method.

Conclusions
Often in industry, a simple dispatching rule cannot meet actual production demand.To improve production, a composite dispatching rule is proposed that considers various factors.This rule can change rule parameters dynamically to meet the requirements of different production states of a production line.One way to realize dynamic scheduling in an actual semiconductor production line is to use a machine learning method.Such a method obtains dynamic scheduling knowledge from optimized scheduling samples, and then utilizes the appropriate dispatching rules, which can be selected to optimize the performance of the production line according to its state.For this purpose, a dynamic scheduling method based on SVR was studied.A real time optimal scheduling strategy was obtained using this method.This method was tested on a 5-inch and 6-inch semiconductor production line.The experimental results show that using a scheduling method based on composite rules gives an obvious improvement in production performance when compared with a single heuristic rule.

Figure 1 .
Figure 1.The framework of a dynamic scheduling system for a semiconductor production line.

Figure 1 .
Figure 1.The framework of a dynamic scheduling system for a semiconductor production line.
1, • • • , m) in the sample set.Step 2: Creating the training sample set and the test sample set.There is a total of N optimal samples in the sample set, from which we randomly build training set TE 1 and test set TE 2 , respectively accounting for 4/5 and 1/5 of the total sample.Step 3: Training a SVR-based scheduling model.Use training set TE 1 to train a SVR-based scheduling model with the radial basis function (RBF) kernel, which is K

Table 1 .
Performance indicator "MOV" (in step) under different scheduling methods.
MOV: total wafer movement amount; RSM: response surface methodology.

Table 3 .
Normalized value and comprehensive value of the five performance indicators under different scheduling methods.