# No-Wait Flexible Flow Shop Scheduling with Due Windows

Authors: Rong-Hwa Huang; Chang-Lin Yang; Shang-Chia Liu
Journal: Mathematical Problems in Engineering
 (2015)

---

## Abstract

To improve capacity and reduce processing time, the flow shop with multiprocessors (FSMP) system is commonly used in glass, steel, and semiconductor production. No-wait FSMP is a modern production system that responds to periods when zero work is required in process production. The production process must be continuous and uninterrupted. Setup time must also be considered. Just-in-time (JIT) production is very popular in industry, and timely delivery is important to customer satisfaction. Therefore, it is essential to consider the time window constraint, which is also very complex. This study focuses on a no-wait FSMP problem with time window constraint. An improved ant colony optimization (ACO), known as ant colony optimization with flexible update (ACOFU), is developed to solve the problem. The results demonstrate that ACOFU is more effective and robust than ACO when applied to small-scale problems. ACOFU has superior solution capacity and robustness when applied to large-scale problems. Therefore, this study concludes that the proposed algorithm ACOFU performs excellently when applied to the scheduling problem discussed in this study.


---

## Body

## 1. Introduction

Just-in-time (JIT) manufacturing is important in industry. JIT scheduling can decrease inventory, resource consumption, and storage needs and optimize delivery time. Managers prefer that product completion time be close to the due date, but achieving this creates a tight time window. The time interval is called thedue window of a job, and the left and right ends of the window are called its starting and finishing times, respectively. If a job is finished before its due window, it must be stored as inventory, which creates an earliness penalty. On the other hand, if a job is finished after its due window, it incurs whatever tardiness penalty is stipulated in the contract [1]. For both firms and customers, these two costs (earliness penalty and tardiness penalty) are disadvantageous. Good scheduling should ensure the product is finished and delivered on time to preserve mutual benefit. This study lists some of the research on due window. Yeung et al. [2] developed a branch and bound algorithm and heuristic to solve the nonpreemptive two-stage flow shop scheduling problem to minimize earliness and tardiness under conditions where a common due window exists. According to the computational result, a strong lower bound is derived for the branch and bound algorithm that can efficiently solve a 15-job problem in approximately 5 minutes. The heuristic is shown to be efficient and effective and can provide a near-optimal solution to a 150-job problem in about 20 seconds. Huang et al. [3] developed two pheromone ant colony optimizations (2PH-ACO) to solve the flexible job shop with due window scheduling problem. This problem aims to minimize the sum of the earliness and tardiness costs. Computational results indicate that 2PH-ACO outperforms ant colony optimization (ACO). Chen and Lee [4] proposed a branch and bound algorithm to solve a parallel machine scheduling problem. All the jobs have a given common due window, and the aim is to optimize the schedule so as to minimize total earliness-tardiness penalty. The computational results show that the proposed algorithm can solve problems involving up to 40 jobs and any number of machines within a reasonable computational time.No-wait flow shop is a popular production system. Because this system relies on continuous production, it is necessary to deploy a continuous production environment. Many industries suffer this constraint, such as the metal melting industry. To prevent deterioration of heated metal, a series of operations must be completed before it cools. Similarly, plastic, silver, and glass molding also require a series of operations before cooling. However, the related literature is scarce, and so further discussion of this topic is necessary. Besides continuity, setup time is another important consideration in such facilities. These considerations significantly increase the problem complexity.The literature on the no-wait flow shop production scheduling problem mostly deals with a single condition, and there have been few integrated discussions dealing with multiple conditions. For the no-wait production scheduling problem, Aldowaisan [5] developed a new heuristic and dominance relations for the two-machine no-wait separate setup flow shop problem, where performance is assessed in terms of total flow time. Schuster and Framinan [6] proposed two local search algorithms to solve the no-wait job shop problem for minimum makespan. Shyu et al. [7] proposed an application of the ACO to a two-machine no-wait flow shop scheduling problem. The problem aims to devise a schedule that minimizes total completion time. Numerical results show that the ACO algorithm performs well and has a small error ratio. Wang and Cheng [8] proposed a heuristic to solve the two-machine flow shop scheduling problem in a no-wait processing environment to minimize maximum lateness. The computational results show that the heuristic can rapidly obtain near-optimal solutions for problems with a realistic scale. Su and Lee [9] studied the scheduling problem where a set of jobs are available for processing in a no-wait and separate setup two-machine flow shop system with a single server. Both the heuristic and the branch and bound algorithms are developed to solve the problem. Computational experiments indicate that the heuristic and branch and bound algorithm outperform existing algorithms in solution quality and number of branching nodes. In parallel machine scheduling research, Pereira Lopes and de Carvalho [10] developed a new branch-and-price optimization algorithm to solve the problem of scheduling n independent jobs on m unrelated parallel machines with sequence-dependent setup times. The computational results show that this approach quickly obtains optimal solutions to large-scale problems. Biskup et al. [11] proposed a new heuristic approach to solve parallel machine scheduling problems and developed heuristic algorithms to minimize total tardiness on identical parallel machines. The computational results show that the proposed approach effectively obtains optimal or near optimal schedules to minimize total tardiness on parallel machines. de Paula et al. [12] proposed a nondelayed relax-and-cut algorithm, based on a Lagrangian relaxation of a time indexed formulation to schedule a set of jobs, on any one of a set of unrelated parallel machines, without preemption. The objective function considered is to minimize total weighted tardiness. Mor and Mosheiov [13] proposed heuristics that comprise an allocation of jobs to the machines (based on LPT for parallel identical machines, and modified LPT for uniform machines) to study due date and due window assignment problems based on flow-allowance with a min-max objective function. Numerical tests indicate that the heuristics produce near optimal schedules, and the average optimality gaps remain minimal. Paul et al. [14] proposed a new scheduling heuristic for multi-item hoist production lines with flexible processing times in the context of an existing industrial application problem. Computational results show that the new heuristic can compete with previous approaches that rely on permutation schedules and works best on problems with uniformly distributed processing times. Owing to the highly efficient way of schedule building, productivity can be increased by at least 20%. Kumar et al. [15] proposed a methodology takes care of all the parameters of the ant colony optimization (ACO) algorithms and also incorporates preventive measures to overcome the difficulties in using the ACO algorithms.Recent research has devoted great effort to no-wait, setup time, and time window problem of flow shop production. However, discussion of multiprocessor flow shop is limited. This study takes the literature as a basis to examine the no-wait due window flow shop with multiprocessors (FSMP) problem in a two-stage flow shop production environment. For schedule optimization, an improved ant colony optimization (ACO) named ant colony optimization with flexible update (ACOFU) is developed and applied. ACO was extensively applied to solve various scheduling problems. To summarize, the problem discussed in this study is very complex and considers various production constraints and objectives. The problem complexity resembles that of a real world production problem. The ACOFU proposed in this study solves the scheduling problem more effectively and helps improve production efficiency.


## 2. Problem Definition

### 2.1. Problems

Consider the following:(1)F2P1,P2nwtSjw1∑j=1nEj+w2∑j=1nTj.This study consideredn jobs with processing time Pij and two stages. F2(P1,P2) represents a two-stage flow shop production environment, with P1 machines in the first stage and P2 machines in the second stage; nwt denotes no-wait production; Sj represents the setup time of job j; w1∑j=1nEj+w2∑j=1nTj denotes the multiple criteria objective, namely, to minimize costs; w1 and w2 represent the weights of the earliness and tardiness, respectively; and Ej and Tj denote the earliness and tardiness of the due window constraint.


### 2.2. Notations

n: total job number;
m: total stage number (in this study m=2);
Q: set of unscheduled jobs;
Pi: number of multiprocessors in stage i;
Jj: job of number j;
Mi: stage of number i;
Mik: machine of number k in stage of number i;
pij: processing time of job Jj on machine Mi;
sij: setup time of job Jj on machine Mi;
Bij: time of job Jj starting processing on machine Mi;
Cij: time of job Jj completing processing on machine Mi;
SBij: beginning of setup time of job Jj on machine Mi;
SEij: completion of setup time of job Jj on machine Mi;
aikl: starting time of processing of job with sequence l on machine Mik;
bikl: completion time of processing of job with sequence l on machine Mik;
eikl: beginning of setup time of job when sequence l is being processed on machine Mik;
fikl: completion of setup time of job when sequence l is being processed on machine Mik;
Cj: completion time of job j;
Ej: earliness of job Jj;
Tj: tardiness of job Jj;
w1: weight factor of Ej;
w2: weight factor of Tj;
Zijkl: a binary variable deciding whether job Jj that is processed on machine Mik of sequence l (Zijkl=0 or 1; Zijkl=1 denotes that job Jj is processed on machine Mik of sequence l, otherwise Zijkl=0).


### 2.3. Mathematical Model

Objective is as follows:(2)Min⁡w1∑j=1nEj+w2∑j=1nTj.
Constraints are as follows:(3)Ej=max⁡Lj-Cj,0,j=1,2,…,n,(4)Tj=max⁡Cj-Uj,0,j=1,2,…,n,(5)Cj=max⁡Cij,SEi+1+pi+1j,i=1,2;j=1,2,…,n,(6)Cij=C2j,j=1,2,…,n,(7)Cij=∑k=1Pm∑l=1QZijkl×bikl,i=1,2;j=1,2,…,n,(8)SEij=∑k=1Pm∑l=1QZijkl×fikl,i=1,2;j=1,2,…,n,(9)bikl=aikl+∑j=1nZijkl×pij,i=1,2;k=1,2,…,pm;l=1,2,…,Q,(10)fikl=eikl+∑j=1nZijkl×sij,i=1,2;k=1,2,…,pm;l=1,2,…,Q,(11)fikl≤aikl,i=1,2;k=1,2,…,pm;l=1,2,…,Q,(12)SBij=∑k=1Pm∑l=1QZijkl×eikl,i=1,2;j=1,2,…,n,(13)Bij=∑k=1Pm∑l=1QZijkl×aikl,i=1,2;j=1,2,…,n,(14)Bij=Ci-1j,i=1,2;j=1,2,…,n,(15)Bi+1j-Bij=pij,i=1,2;j=1,2,…,n,(16)∑k=1Pm∑l=1QZijkl=1,i=1,2;j=1,2,…,n,(17)∑j=1nZijkl≤1,i=1,2;k=1,2,…,pm;l=1,2,…,Q,(18)Zijkl=0or1,i=1,2;k=1,2,…,pm;l=1,2,…,Q.
Equation (2) minimizes total earliness and tardiness.
Equation (3) represents early completion of job j.
Equation (4) represents late completion of job j.
Equation (5) denotes job completion time.
Equation (6) denotes that job completion time equals job completion time during the last stage.
Equation (7) transforms the completion time on machine k, stage i, and sequence l into the completion time of job j in stage i.
Equation (8) transforms the complete setup time on machine k, stage i, and sequence l into the complete setup time of job j in stage i.
Equation (9) transforms the start time on machine k, stage i, and sequence l into that of job j in stage i.
Equation (10) represents the complete setup time on machine k, stage i, and sequence l equals the initial setup time of the job plus the setup time.
Equation (11) suggests that setup time can be separated from processing time.
Equation (12) transforms the start of the setup time on machine k, stage i, and sequence l into the start time of setup of job j in stage i.
Equation (13) transforms the start time of processing on machine k, stage i, and sequence l into the start time of processing of job j in stage i.
Equations (14) and (15) satisfy the no-wait constraint.
Equation (16) limits jobs to being processed only once by a given machine in every stage.
Equation (17) limits processing to a single job on machine k, stage i, and sequence l.
Equation (18) decides whether job Jj is processed on machine Mik at sequence l (Zijkl=0 or 1; Zikjl=1 suggests job Jj is processed on machine Mik at sequence l, otherwise Zijkl=0).


## 2.1. Problems

Consider the following:(1)F2P1,P2nwtSjw1∑j=1nEj+w2∑j=1nTj.This study consideredn jobs with processing time Pij and two stages. F2(P1,P2) represents a two-stage flow shop production environment, with P1 machines in the first stage and P2 machines in the second stage; nwt denotes no-wait production; Sj represents the setup time of job j; w1∑j=1nEj+w2∑j=1nTj denotes the multiple criteria objective, namely, to minimize costs; w1 and w2 represent the weights of the earliness and tardiness, respectively; and Ej and Tj denote the earliness and tardiness of the due window constraint.


## 2.2. Notations

n: total job number;
m: total stage number (in this study m=2);
Q: set of unscheduled jobs;
Pi: number of multiprocessors in stage i;
Jj: job of number j;
Mi: stage of number i;
Mik: machine of number k in stage of number i;
pij: processing time of job Jj on machine Mi;
sij: setup time of job Jj on machine Mi;
Bij: time of job Jj starting processing on machine Mi;
Cij: time of job Jj completing processing on machine Mi;
SBij: beginning of setup time of job Jj on machine Mi;
SEij: completion of setup time of job Jj on machine Mi;
aikl: starting time of processing of job with sequence l on machine Mik;
bikl: completion time of processing of job with sequence l on machine Mik;
eikl: beginning of setup time of job when sequence l is being processed on machine Mik;
fikl: completion of setup time of job when sequence l is being processed on machine Mik;
Cj: completion time of job j;
Ej: earliness of job Jj;
Tj: tardiness of job Jj;
w1: weight factor of Ej;
w2: weight factor of Tj;
Zijkl: a binary variable deciding whether job Jj that is processed on machine Mik of sequence l (Zijkl=0 or 1; Zijkl=1 denotes that job Jj is processed on machine Mik of sequence l, otherwise Zijkl=0).


## 2.3. Mathematical Model

Objective is as follows:(2)Min⁡w1∑j=1nEj+w2∑j=1nTj.
Constraints are as follows:(3)Ej=max⁡Lj-Cj,0,j=1,2,…,n,(4)Tj=max⁡Cj-Uj,0,j=1,2,…,n,(5)Cj=max⁡Cij,SEi+1+pi+1j,i=1,2;j=1,2,…,n,(6)Cij=C2j,j=1,2,…,n,(7)Cij=∑k=1Pm∑l=1QZijkl×bikl,i=1,2;j=1,2,…,n,(8)SEij=∑k=1Pm∑l=1QZijkl×fikl,i=1,2;j=1,2,…,n,(9)bikl=aikl+∑j=1nZijkl×pij,i=1,2;k=1,2,…,pm;l=1,2,…,Q,(10)fikl=eikl+∑j=1nZijkl×sij,i=1,2;k=1,2,…,pm;l=1,2,…,Q,(11)fikl≤aikl,i=1,2;k=1,2,…,pm;l=1,2,…,Q,(12)SBij=∑k=1Pm∑l=1QZijkl×eikl,i=1,2;j=1,2,…,n,(13)Bij=∑k=1Pm∑l=1QZijkl×aikl,i=1,2;j=1,2,…,n,(14)Bij=Ci-1j,i=1,2;j=1,2,…,n,(15)Bi+1j-Bij=pij,i=1,2;j=1,2,…,n,(16)∑k=1Pm∑l=1QZijkl=1,i=1,2;j=1,2,…,n,(17)∑j=1nZijkl≤1,i=1,2;k=1,2,…,pm;l=1,2,…,Q,(18)Zijkl=0or1,i=1,2;k=1,2,…,pm;l=1,2,…,Q.
Equation (2) minimizes total earliness and tardiness.
Equation (3) represents early completion of job j.
Equation (4) represents late completion of job j.
Equation (5) denotes job completion time.
Equation (6) denotes that job completion time equals job completion time during the last stage.
Equation (7) transforms the completion time on machine k, stage i, and sequence l into the completion time of job j in stage i.
Equation (8) transforms the complete setup time on machine k, stage i, and sequence l into the complete setup time of job j in stage i.
Equation (9) transforms the start time on machine k, stage i, and sequence l into that of job j in stage i.
Equation (10) represents the complete setup time on machine k, stage i, and sequence l equals the initial setup time of the job plus the setup time.
Equation (11) suggests that setup time can be separated from processing time.
Equation (12) transforms the start of the setup time on machine k, stage i, and sequence l into the start time of setup of job j in stage i.
Equation (13) transforms the start time of processing on machine k, stage i, and sequence l into the start time of processing of job j in stage i.
Equations (14) and (15) satisfy the no-wait constraint.
Equation (16) limits jobs to being processed only once by a given machine in every stage.
Equation (17) limits processing to a single job on machine k, stage i, and sequence l.
Equation (18) decides whether job Jj is processed on machine Mik at sequence l (Zijkl=0 or 1; Zikjl=1 suggests job Jj is processed on machine Mik at sequence l, otherwise Zijkl=0).


## 3. The ACOFU Procedure

For theF2P1,P2nwtSjw1∑j=1nEj+w2∑j=1nTj scheduling problem, this study proposes a more effective method than conventional ACO, namely, ant colony optimization with flexible update (ACOFU). The following illustrates the development of the proposed algorithm and the steps involved.


### 3.1. Algorithm Principle

ACOFU uses the concept of the state transition rule in ACO and removes the original state transition ruleτ(r,u) of ACO. To solve the due window problem discussed in this study, the performance criterion η(r,u) equals Uj-Lj-1. The principle is to prioritize jobs with a narrower due window to minimize both earliness and tardiness.In ACOFU, artificial ants begin from noder and select the next node s using (19)s=argmax⁡u∈Jkr⁡ηr,uβifq≤q0exploitationSotherwiseexploration,where ηr,u=Uj-Lj-1.0
≤
q
0
≤
1 determines exploitation or exploration behaviors of artificial ants to select the next job; Jk(r) represents the unvisited job set when ant k arrives at job r; S is a random variable based on the probability distribution of (20). Every time an ant is at job r and has to choose the next job, a random number q is selected. If q≤q0, a job with the peak value of ηr,uβ in the set Jk(r) is chosen, and the ant moves to this job. This process is called exploitation. Otherwise, exploration behavior is used; namely, the next job is randomly selected using the probability distribution stated in (20)Pk(r,s)=η(r,s)β∑u∈Jk(r)η(r,u)βIfs∈Jk(r)0otherwise,where Pk(r,s) represents the probability of ant k selecting s in Jk(r) from job r.


### 3.2. Dynamic Update Rules

In each iteration, the ants search are based on the due window informationUj-Lj-1. At the end of each iteration, the routes searched by each ant are compared. The best route identified in this iteration is enhanced using a probability enhancing factor δ, where the probability of the route being selected in the next iteration is increased; additionally, the inferior routes will be reduced by a probability reducing factor ε, as represented in (21)ηr,snew=ηr,s·δthebestselectedsequenceηr,s·εtheotherselectedsequences.From (21), the routes η(r,u) searched in each iteration are updated. Ants thus are inclined to select better routes in the next iteration search, while worse routes are less likely to be repeatedly searched. The dynamic update rule of ACOFU differs from the pheromone update in conventional ACO. In conventional ACO, the lower bound of pheromone deposit is the starting amount of pheromone. However, the dynamic pheromone update involves a larger total update and thus increases the effectiveness of the update.


### 3.3. End of Algorithm

An iteration is defined as the period from all ants commencing their search to the dynamic update. The algorithm ends on completion of a predetermined number of iterations.


## 3.1. Algorithm Principle

ACOFU uses the concept of the state transition rule in ACO and removes the original state transition ruleτ(r,u) of ACO. To solve the due window problem discussed in this study, the performance criterion η(r,u) equals Uj-Lj-1. The principle is to prioritize jobs with a narrower due window to minimize both earliness and tardiness.In ACOFU, artificial ants begin from noder and select the next node s using (19)s=argmax⁡u∈Jkr⁡ηr,uβifq≤q0exploitationSotherwiseexploration,where ηr,u=Uj-Lj-1.0
≤
q
0
≤
1 determines exploitation or exploration behaviors of artificial ants to select the next job; Jk(r) represents the unvisited job set when ant k arrives at job r; S is a random variable based on the probability distribution of (20). Every time an ant is at job r and has to choose the next job, a random number q is selected. If q≤q0, a job with the peak value of ηr,uβ in the set Jk(r) is chosen, and the ant moves to this job. This process is called exploitation. Otherwise, exploration behavior is used; namely, the next job is randomly selected using the probability distribution stated in (20)Pk(r,s)=η(r,s)β∑u∈Jk(r)η(r,u)βIfs∈Jk(r)0otherwise,where Pk(r,s) represents the probability of ant k selecting s in Jk(r) from job r.


## 3.2. Dynamic Update Rules

In each iteration, the ants search are based on the due window informationUj-Lj-1. At the end of each iteration, the routes searched by each ant are compared. The best route identified in this iteration is enhanced using a probability enhancing factor δ, where the probability of the route being selected in the next iteration is increased; additionally, the inferior routes will be reduced by a probability reducing factor ε, as represented in (21)ηr,snew=ηr,s·δthebestselectedsequenceηr,s·εtheotherselectedsequences.From (21), the routes η(r,u) searched in each iteration are updated. Ants thus are inclined to select better routes in the next iteration search, while worse routes are less likely to be repeatedly searched. The dynamic update rule of ACOFU differs from the pheromone update in conventional ACO. In conventional ACO, the lower bound of pheromone deposit is the starting amount of pheromone. However, the dynamic pheromone update involves a larger total update and thus increases the effectiveness of the update.


## 3.3. End of Algorithm

An iteration is defined as the period from all ants commencing their search to the dynamic update. The algorithm ends on completion of a predetermined number of iterations.


## 4. Data Test and Analysis

The software Lingo 9.0 is used to optimize the solutions to the scheduling problem in this paper. This study then compiled ACO and ACOFU with Microsoft Visual C++ 6.0 to solve the problem and performed effectiveness and robustness data tests and comparisons.


### 4.1. Data Generation and Test Environment

This first stage of data generation comprised a small-scale data test to verify algorithm effectiveness and robustness. The second stage involved a large-scale data test. Because Lingo 9.0 required an extensive calculation time, only ACO and ACOFU were implemented to verify effectiveness and robustness. Both parts of the test were executed on a AMD Athlon(tm) 64 X2 Dual Core Processor 5200+ 2.71 GHz with 2.00 GB RAM desktop PC. Comparison and analysis were carried out after program execution.The notations used in this section include number of jobs (n), number of stages (m), number of multiprocessors per stage (P1,P2), and average program execution time (CPU time). To simulate data generation, the processing time of jobs at each stage (Pij) was randomly generated from [1,20], and the setup time (sij) was generated from [1,10]. The due window was generated based on the design of Zheng et al. [16] as [1-TF-DR/2∑i=1mpij*1+M-1*0.3, 1-TF+DR/2∑i=1mpij*1+M-1*0.3]. Table 1 lists the parameters used in due window generation.Table 1
Due window parameters.
Data type
Due date range (DR)
Tardy factor (TF)
I
0.1
0.1
II
0.1
0.5
III
0.5
0.1
IV
0.5
0.5The design of the parameters of ACO was determined by pretests with a certain scale. Parameters were set to facilitate convergence (see Table2), with ten ants per generation and a total of 100 generations.Table 2
Ant system parameters.
Parameter
z
q
0
β
τ
0
ρ
α
Value
10
0.7
2
0.5
0.1
0.1The parameters of ACOFU proposed in this study (see Table3) removed pheromone information in ACO. The probability enhancing factor δ=1.05, and the probability reducing factor ε=0.95. Each generation involved ten ants, and 100 generations were performed.Table 3
ACOFU parameters.
Parameter
z
q
0
β
δ
ε
Value
10
0.5
2
1.05
0.95Based on the small-scale data test, when the number of jobs increased from 10 to 15, Lingo 9.0 required extensive calculation. RAM consumption rapidly increased with problem scale, and errors regarding insufficient memory occurred frequently. Therefore, the small-scale data test had job numbern=5, 10, 15, and 20; stages number m=2; and number of multiprocessors per stage of (2,2) and (5,5) to ensure effective and robust analysis. For large-scale data testing, the job number n=40, 80, 120, 160, and 200; the stage number m=2; and the numbers of multiprocessors per stage were (10,10), (20,20), (30,30), and (40,40). ACO and ACOFU were used for data testing and robustness analysis.


### 4.2. Simulation Test for Small-Scale Effectiveness

According to the test data design of the small-scale problems, four types of tests were implemented on 30 groups of data sets. Weights of the objective function were set, respectively. Tests obtained the average calculation times of Lingo 9.0, ACO, and ACOFU, and comparison of the test results verified the effectiveness and efficiency of the three approaches. Figures1, 2, and 3 summarize three types of objective weights.Figure 1
Total costs of small-scale problems (w1=0.75, w2=0.25).Figure 2
Total costs of small-scale problems (w1=0.5, w2=0.5).Figure 3
Total costs of small-scale problems (w1=0.25, w2=0.75).Figures1, 2, and 3 show that, in small-scale tests, the calculation time of Lingo 9.0 rapidly increased with job number. For job number n=20, insufficient RAM impeded calculation of the optimal solution, and instead the second-optimal solutions were used. The calculation times of ACO and ACOFU were also very efficient, with both being less than one second for small-scale problems. The solutions were also near-optimal, suggesting high effectiveness.In terms of the best approach, ACOFU has the best effectiveness in terms of obtaining optimal solutions, and ACO was less effective. Test results suggest that for three weight combinations (w1=0.75, w2=0.25), (w1=0.5, w2=0.5), and (w1=0.25, w2=0.75), 30 sets of data simulation tests showed that ACOFU was more effective than ACO for four types of data design. This confirms that ACOFU has outstanding and generalized capacity to solve the scheduling problem discussed in this study.The effectiveness improvement of solutions is calculated as (22). Separated in four data types and three objective weights (see Table 4), ACOFU has more than a 25–60% improvement ratio compared to ACO and thus has outstanding effectiveness:(22)Effectivenessimprovement=ACOaverage-IPbest-ACOFUaverage-IPbestACOaverage-IPbest,where IPbest = optimal solution obtained with integer programming.Table 4
Effectiveness improvement of small-scale problems.
Data types
Objective weights
w
1 = 0.75,  w2 = 0.25
w
1 = 0.5,  w2 = 0.5
w
1 = 0.25,  w2 = 0.75
I
39.14%
50.14%
39.14%
II
39.92%
43.59%
39.92%
III
45.19%
66.79%
45.18%
IV
37.77%
26.25%
37.77%


### 4.3. Robustness Simulation Test for Small-Scale Problem

This section generated a data set according to the small-scale problem design and subjected that data set to tests. Optimal solutions were first solved using Lingo 9.0, and then ACOFU and ACO were run on the data set 30 times to verify the algorithm robustness (see Figures4, 5, and 6).Figure 4
Standard deviation curve plot of small-scale problem (w1=0.75, w2=0.25).Figure 5
Standard deviation curve plot of small-scale problem (w1=0.5, w2=0.5).Figure 6
Standard deviation curve plot of small-scale problem (w1=0.25, w2=0.75).Figures4, 5, and 6 show robust data test results of small-scale problems. Regarding calculation time, the results show that after 30 repeated tests with the three approaches, the robustness of ACO and ACOFU had acceptable standard deviation. The standard deviation of ACOFU is smaller than that of ACO, which confirms that ACOFU has better robustness than ACO. The test results show that under three weight combinations (w1=0.75, w2=0.25), (w1=0.5, w2=0.5), and (w1=0.25, w2=0.75), the solution quality of ACOFU exceeds that of ACO for four data types.Equation (23) is used to calculate robustness improvement. Comparison is made using four data types and three weight combinations. Table 5 shows that the robustness improvement ratio of ACOFU is 30% higher than that of ACO, which suggests the proposed ACOFU has excellent robustness:(23)Robustnessimprovement=1-ACOFUvarianceACOvariance.Table 5
Robustness improvement ratio of small-scale problems.
Data type
Weight combination
w
1 = 0.75,  w2 = 0.25
w
1 = 0.5,  w2 = 0.5
w
1 = 0.25,  w2 = 0.75
I
52.77%
47.79%
55.79%
II
38.65%
42.54%
39.58%
III
33.65%
36.66%
33.71%
IV
35.46%
33.50%
36.45%


### 4.4. Effectiveness Simulation Test for Large-Scale Problems

According to the data design of large-scale problems, four types and 30 data sets were tested with three combinations of objective weights. The average solutions and calculation times of ACOFU and ACO were compared to verify the effectiveness and efficiency of the two approaches (see Figures7, 8, and 9).Figure 7
Cost curve of large-scale problems (w1=0.75, w2=0.25).Figure 8
Cost curve of large-scale problems (w1=0.5, w2=0.5).Figure 9
Cost curve of large-scale problems (w1=0.25, w2=0.75).Figures7, 8, and 9 show that ACOFU outperforms ACO in large-scale problems. Test results show that under three combinations of weights (w1=0.75, w2=0.25), (w1=0.5, w2=0.5), and (w1=0.25, w2=0.75), the solution quality of ACOFU exceeds that of ACO in 30 groups of large-scale problem tests. The results remained unchanged for four data types. This shows that ACOFU has outstanding and generalized capacity to solve the proposed scheduling problem in this study.


### 4.5. Robustness Simulation Test of Large-Scale Problems

For operation scheduling problems, the numbers of machines and jobs both influence the problem complexity. If Lingo 9.0 is used to solve large-scale problems, the calculation time increases exponentially despite optimal solutions being obtained. Furthermore, errors may result from insufficient memory. This arrangement becomes inefficient and ineffective for firms competing in an intensive environment. The test data design of large-scale problems thus was limited, with job numbersn=40, 80, 120, 160, and 200, and machine numbers in two stages (10,10), (20,20), (30,30), and (40,40). The experimental design was a 4*5 full factor design, with the objective weight combinations used in a small-scale problem test. ACO and ACOFU were used for large-scale simulation data test and robustness analysis (see Figures 10, 11, and 12).Figure 10
Standard deviation curve of large-scale problems (w1=0.75, w2=0.25).Figure 11
Standard deviation curve of large-scale problems (w1=0.5, w2=0.5).Figure 12
Standard deviation curve of large-scale problems (w1=0.25, w2=0.75).As the results displayed in Figures10, 11, and 12 show, in terms of time-efficiency, higher job number increased prolonged calculation time, while number of machines reduced calculation time. The calculation time of ACOFU slightly exceeded that of ACO because of the time required for the permutation of flexible due window. However, the required calculation time was minimal and did not affect time-efficiency.Regarding robustness, standard deviation was obtained by repeating the calculation 30 times. The standard deviation was acceptable. The standard deviation of ACOFU was smaller than that of ACO, which confirms that ACOFU has excellent robustness and efficiency even when solving large-scale problems. In a competition environment that requires high effectiveness and efficiency, ACOFU is valuable in improving efficiency and capacity and hence is suited for practical applications.Equation (23) illustrates the calculation of robustness improvement. Comparison of variance among the four data types and three combinations of weights (see Table 6) shows that ACOFU has a robustness improvement ratio 20% higher than that of ACO. This proves that ACOFU has superior robustness to ACO when applied to solve large-scale problems.Table 6
Robustness improvement of large-scale problems.
Data type
Weight combination
w
1 = 0.75,  w2 = 0.25
w
1 = 0.5,  w2 = 0.5
w
1 = 0.25,  w2 = 0.75
I
28.65%
36.93%
33.15%
II
26.64%
24.19%
21.65%
III
22.08%
25.67%
24.75%
IV
21.39%
30.64%
29.25%


## 4.1. Data Generation and Test Environment

This first stage of data generation comprised a small-scale data test to verify algorithm effectiveness and robustness. The second stage involved a large-scale data test. Because Lingo 9.0 required an extensive calculation time, only ACO and ACOFU were implemented to verify effectiveness and robustness. Both parts of the test were executed on a AMD Athlon(tm) 64 X2 Dual Core Processor 5200+ 2.71 GHz with 2.00 GB RAM desktop PC. Comparison and analysis were carried out after program execution.The notations used in this section include number of jobs (n), number of stages (m), number of multiprocessors per stage (P1,P2), and average program execution time (CPU time). To simulate data generation, the processing time of jobs at each stage (Pij) was randomly generated from [1,20], and the setup time (sij) was generated from [1,10]. The due window was generated based on the design of Zheng et al. [16] as [1-TF-DR/2∑i=1mpij*1+M-1*0.3, 1-TF+DR/2∑i=1mpij*1+M-1*0.3]. Table 1 lists the parameters used in due window generation.Table 1
Due window parameters.
Data type
Due date range (DR)
Tardy factor (TF)
I
0.1
0.1
II
0.1
0.5
III
0.5
0.1
IV
0.5
0.5The design of the parameters of ACO was determined by pretests with a certain scale. Parameters were set to facilitate convergence (see Table2), with ten ants per generation and a total of 100 generations.Table 2
Ant system parameters.
Parameter
z
q
0
β
τ
0
ρ
α
Value
10
0.7
2
0.5
0.1
0.1The parameters of ACOFU proposed in this study (see Table3) removed pheromone information in ACO. The probability enhancing factor δ=1.05, and the probability reducing factor ε=0.95. Each generation involved ten ants, and 100 generations were performed.Table 3
ACOFU parameters.
Parameter
z
q
0
β
δ
ε
Value
10
0.5
2
1.05
0.95Based on the small-scale data test, when the number of jobs increased from 10 to 15, Lingo 9.0 required extensive calculation. RAM consumption rapidly increased with problem scale, and errors regarding insufficient memory occurred frequently. Therefore, the small-scale data test had job numbern=5, 10, 15, and 20; stages number m=2; and number of multiprocessors per stage of (2,2) and (5,5) to ensure effective and robust analysis. For large-scale data testing, the job number n=40, 80, 120, 160, and 200; the stage number m=2; and the numbers of multiprocessors per stage were (10,10), (20,20), (30,30), and (40,40). ACO and ACOFU were used for data testing and robustness analysis.


## 4.2. Simulation Test for Small-Scale Effectiveness

According to the test data design of the small-scale problems, four types of tests were implemented on 30 groups of data sets. Weights of the objective function were set, respectively. Tests obtained the average calculation times of Lingo 9.0, ACO, and ACOFU, and comparison of the test results verified the effectiveness and efficiency of the three approaches. Figures1, 2, and 3 summarize three types of objective weights.Figure 1
Total costs of small-scale problems (w1=0.75, w2=0.25).Figure 2
Total costs of small-scale problems (w1=0.5, w2=0.5).Figure 3
Total costs of small-scale problems (w1=0.25, w2=0.75).Figures1, 2, and 3 show that, in small-scale tests, the calculation time of Lingo 9.0 rapidly increased with job number. For job number n=20, insufficient RAM impeded calculation of the optimal solution, and instead the second-optimal solutions were used. The calculation times of ACO and ACOFU were also very efficient, with both being less than one second for small-scale problems. The solutions were also near-optimal, suggesting high effectiveness.In terms of the best approach, ACOFU has the best effectiveness in terms of obtaining optimal solutions, and ACO was less effective. Test results suggest that for three weight combinations (w1=0.75, w2=0.25), (w1=0.5, w2=0.5), and (w1=0.25, w2=0.75), 30 sets of data simulation tests showed that ACOFU was more effective than ACO for four types of data design. This confirms that ACOFU has outstanding and generalized capacity to solve the scheduling problem discussed in this study.The effectiveness improvement of solutions is calculated as (22). Separated in four data types and three objective weights (see Table 4), ACOFU has more than a 25–60% improvement ratio compared to ACO and thus has outstanding effectiveness:(22)Effectivenessimprovement=ACOaverage-IPbest-ACOFUaverage-IPbestACOaverage-IPbest,where IPbest = optimal solution obtained with integer programming.Table 4
Effectiveness improvement of small-scale problems.
Data types
Objective weights
w
1 = 0.75,  w2 = 0.25
w
1 = 0.5,  w2 = 0.5
w
1 = 0.25,  w2 = 0.75
I
39.14%
50.14%
39.14%
II
39.92%
43.59%
39.92%
III
45.19%
66.79%
45.18%
IV
37.77%
26.25%
37.77%


## 4.3. Robustness Simulation Test for Small-Scale Problem

This section generated a data set according to the small-scale problem design and subjected that data set to tests. Optimal solutions were first solved using Lingo 9.0, and then ACOFU and ACO were run on the data set 30 times to verify the algorithm robustness (see Figures4, 5, and 6).Figure 4
Standard deviation curve plot of small-scale problem (w1=0.75, w2=0.25).Figure 5
Standard deviation curve plot of small-scale problem (w1=0.5, w2=0.5).Figure 6
Standard deviation curve plot of small-scale problem (w1=0.25, w2=0.75).Figures4, 5, and 6 show robust data test results of small-scale problems. Regarding calculation time, the results show that after 30 repeated tests with the three approaches, the robustness of ACO and ACOFU had acceptable standard deviation. The standard deviation of ACOFU is smaller than that of ACO, which confirms that ACOFU has better robustness than ACO. The test results show that under three weight combinations (w1=0.75, w2=0.25), (w1=0.5, w2=0.5), and (w1=0.25, w2=0.75), the solution quality of ACOFU exceeds that of ACO for four data types.Equation (23) is used to calculate robustness improvement. Comparison is made using four data types and three weight combinations. Table 5 shows that the robustness improvement ratio of ACOFU is 30% higher than that of ACO, which suggests the proposed ACOFU has excellent robustness:(23)Robustnessimprovement=1-ACOFUvarianceACOvariance.Table 5
Robustness improvement ratio of small-scale problems.
Data type
Weight combination
w
1 = 0.75,  w2 = 0.25
w
1 = 0.5,  w2 = 0.5
w
1 = 0.25,  w2 = 0.75
I
52.77%
47.79%
55.79%
II
38.65%
42.54%
39.58%
III
33.65%
36.66%
33.71%
IV
35.46%
33.50%
36.45%


## 4.4. Effectiveness Simulation Test for Large-Scale Problems

According to the data design of large-scale problems, four types and 30 data sets were tested with three combinations of objective weights. The average solutions and calculation times of ACOFU and ACO were compared to verify the effectiveness and efficiency of the two approaches (see Figures7, 8, and 9).Figure 7
Cost curve of large-scale problems (w1=0.75, w2=0.25).Figure 8
Cost curve of large-scale problems (w1=0.5, w2=0.5).Figure 9
Cost curve of large-scale problems (w1=0.25, w2=0.75).Figures7, 8, and 9 show that ACOFU outperforms ACO in large-scale problems. Test results show that under three combinations of weights (w1=0.75, w2=0.25), (w1=0.5, w2=0.5), and (w1=0.25, w2=0.75), the solution quality of ACOFU exceeds that of ACO in 30 groups of large-scale problem tests. The results remained unchanged for four data types. This shows that ACOFU has outstanding and generalized capacity to solve the proposed scheduling problem in this study.


## 4.5. Robustness Simulation Test of Large-Scale Problems

For operation scheduling problems, the numbers of machines and jobs both influence the problem complexity. If Lingo 9.0 is used to solve large-scale problems, the calculation time increases exponentially despite optimal solutions being obtained. Furthermore, errors may result from insufficient memory. This arrangement becomes inefficient and ineffective for firms competing in an intensive environment. The test data design of large-scale problems thus was limited, with job numbersn=40, 80, 120, 160, and 200, and machine numbers in two stages (10,10), (20,20), (30,30), and (40,40). The experimental design was a 4*5 full factor design, with the objective weight combinations used in a small-scale problem test. ACO and ACOFU were used for large-scale simulation data test and robustness analysis (see Figures 10, 11, and 12).Figure 10
Standard deviation curve of large-scale problems (w1=0.75, w2=0.25).Figure 11
Standard deviation curve of large-scale problems (w1=0.5, w2=0.5).Figure 12
Standard deviation curve of large-scale problems (w1=0.25, w2=0.75).As the results displayed in Figures10, 11, and 12 show, in terms of time-efficiency, higher job number increased prolonged calculation time, while number of machines reduced calculation time. The calculation time of ACOFU slightly exceeded that of ACO because of the time required for the permutation of flexible due window. However, the required calculation time was minimal and did not affect time-efficiency.Regarding robustness, standard deviation was obtained by repeating the calculation 30 times. The standard deviation was acceptable. The standard deviation of ACOFU was smaller than that of ACO, which confirms that ACOFU has excellent robustness and efficiency even when solving large-scale problems. In a competition environment that requires high effectiveness and efficiency, ACOFU is valuable in improving efficiency and capacity and hence is suited for practical applications.Equation (23) illustrates the calculation of robustness improvement. Comparison of variance among the four data types and three combinations of weights (see Table 6) shows that ACOFU has a robustness improvement ratio 20% higher than that of ACO. This proves that ACOFU has superior robustness to ACO when applied to solve large-scale problems.Table 6
Robustness improvement of large-scale problems.
Data type
Weight combination
w
1 = 0.75,  w2 = 0.25
w
1 = 0.5,  w2 = 0.5
w
1 = 0.25,  w2 = 0.75
I
28.65%
36.93%
33.15%
II
26.64%
24.19%
21.65%
III
22.08%
25.67%
24.75%
IV
21.39%
30.64%
29.25%


## 5. Conclusion

In an intensified competitive environment, rapidly satisfying customer demand is an important topic for every company. Therefore, the scheduling problem of no-wait flow shop multiprocessor provides a valuable research direction. Because of the growing popularity of the just-in-time (JIT) concept, manufacturers should focus on timely product delivery to avoid inventory and delay costs and to achieve instant production. The measurement criteria used in this study, namely, minimization of inventory and delay costs, are suitable from a practical perspective.The research problem examined in this study is defined asF2P1,P2nwtSjw1∑j=1nEj+w2∑j=1nTj. Each job in each stage has distinct setup and processing times. Under the no-wait constraint, setup time and processing time can be distinguished. The objective measurement is minimization of earliness and tardiness. The mathematical integer programming model and heuristic algorithm were developed to obtain optimal solutions to the proposed scheduling problem. Simulation data test was applied to small- and large-scale problems to verify the method effectiveness and robustness.Although the solution to the flow shop multiprocessor scheduling problem can be obtained through optimal methods, efficiency decreases with increasing problem scale. In such cases obtaining a solution may require several days, which is not time-efficient. Applying heuristic methods through compiling algorithms to obtain near-optimal solutions is more practical. Recently, research has demonstrated that ACO is a very effective means of solving optimization problems. However, ACO is of limited effectiveness in solving the scheduling problem discussed in this study. Accordingly, a new heuristic algorithm “ant colony optimization with flexible update” (ACOFU) is developed to increase solution quality.The results demonstrate that ACOFU is more effective and robust than ACO when applied to small-scale problems; meanwhile, when applied to large-scale problems, ACOFU has superior solution capacity and robustness. Therefore, this study concludes that the proposed algorithm ACOFU performs excellently when applied to the scheduling problem discussed in this study. Further research lies in devising efficient and effective methods to solve the problem with significantly larger numbers of jobs.



---

*Source: 456719-2015-07-27.xml*