Computers & Industrial Engineering 113 (2017) 859–870
Contents lists available at ScienceDirect
Computers & Industrial Engineering journal homepage: www.elsevier.com/locate/caie
Two new approaches for a two-stage hybrid flowshop problem with a single batch processing machine under waiting time constraint Tsui-Ping Chung a,⇑, Heng Sun a, Ching-Jong Liao b a b
College of Mechanical Science and Engineering, Jilin University, Changchun, China Department of Industrial Management, National Taiwan University of Science and Technology, Taipei, Taiwan
a r t i c l e
i n f o
Article history: Received 28 April 2016 Received in revised form 17 November 2016 Accepted 25 November 2016 Available online 29 November 2016 Keywords: Hybrid flowshop scheduling Batch processing machine Artificial immune
a b s t r a c t This paper investigates a two-stage hybrid flowshop problem with a single batch processing machine in the first stage and a single machine in the second stage. In this problem, each job has an individual release time and they are grouped into several batches. The batch processing machine can process a batch (limited number) of jobs simultaneously. To be more practical, the waiting time between the batch processing machine and the single machine is restricted in the two-stage hybrid flowshop problem. The objective is to minimize the makespan. To the best of our knowledge, few study researches the problem which is common in many real-life applications. Two immunoglobulin-based artificial immune system (IAIS) algorithms are developed to solve the problem which is NP-hard. The proposed IAIS algorithms provide different encoding and decoding ways to solve the problem. To verify proposed IAISs, comparisons with existing algorithms are made. Two lower bounds are also proposed to test solution quality. Computational results have shown that the proposed IAIS algorithms for the two-stage hybrid flowshop problem are quite stable and efficient. Ó 2016 Elsevier Ltd. All rights reserved.
1. Introduction In this paper, a two-stage hybrid flowshop scheduling problem with a single batch processing machine in the first stage and a single machine in the second stage is considered. The proposed problem is inspired in a testing house of semiconductor. The backend process of testing house is composed of two major operations including baking and packing. In the baking operation, several lots of IC chips, i.e., jobs, with individual corresponding sizes, release time and processing time are grouped into a batch and processed in an oven. Since the oven has a limited capacity, the sum of job sizes in the batch, i.e., batch size, should be equal or less than the oven’s capacity. The latest job release time in the batch will be the earliest batch starting time and the largest job processing time in the batch is the batch processing time. The baking operation cannot be interrupted until the current batch is finished. Then the batch is released to the packing operation. Each job in the batch should be packed separately. Since IC chips are easy to get wet, customers require a limited waiting time between baking and packing operations to avoid reworking in the baking operation. The goal of baking and packing operations in the testing house is ⇑ Corresponding author at: Department of Industrial Engineering, Jilin University, Nanling Campus, No. 5988, Ren-min Street, Changchun 130025, China. E-mail address:
[email protected] (T.-P. Chung). http://dx.doi.org/10.1016/j.cie.2016.11.031 0360-8352/Ó 2016 Elsevier Ltd. All rights reserved.
to increase machine efficiency. The proposed problem is NP-hard since the problem proposed by Lee (1999) with a single batch processing machine is known to be NP-hard. Scheduling, as a decision-making process, plays an important role in most manufacturing and production systems. Pinedo (2015) gave the definition of scheduling which is to deal with the allocation of resources to tasks over given time periods and its goal is to optimize one of more objectives. Thus, providing a good schedule is very important. The proposed problem is quite common in the practice, such as steel, glass and can manufacturing. In the steel or glass factories, the waiting time after heating is limited to assure of enough high temperature to shape. There will also be a limited waiting time before the can packing process in order to prevent the exposure in air and then obtain a good product. Therefore, it is necessary to solve the proposed problem. Now the literature related to the hybrid flowshop problem with batch processing is reviewed. Xuan and Tang (2007) establish an integer programming model and propose a batch decoupling based on Lagrangian relaxation algorithm for a hybrid flowshop problem with batch processing machine in the last stage. Oulamara (2007) deals with the problem of job scheduling in a no-wait flowshop with two batch processing machines. Amin-Naseri and Beheshti-Nia (2009) study the problem of parallel scheduling in a hybrid flowshop environment with minimizing makespan. Three
860
T.-P. Chung et al. / Computers & Industrial Engineering 113 (2017) 859–870
heuristic algorithms and a three dimensional genetic algorithm (3DGA) are developed to give near optimal solutions. Bellanger and Oulamara (2009) develop several heuristics with the worst cases analysis for the hybrid flowshop problem where there are several batch processing machines in the second stage. They also present a polynomial time approximation scheme (PTAS) algorithm. Gong, Tang, and Duin (2010) consider a two-stage flowshop scheduling problem where the first machine is a batch processing machine subject to the blocking constraint and the second machine is a general machine. When solved with a heuristic priority rule, the worst case ratio with the minimum makespan is 2. Su and Chen (2010) provide a two-machine flowshop scheduling problem where there is a batch processing machine followed by a discrete machine. A heuristic algorithm is presented to minimize the makespan, and a branch and bound algorithm is to test the presented algorithm. Yao, Zhao, and Zhang (2012) propose several combinational heuristic algorithms for a two-stage hybrid flowshop scheduling problem in which a batch processing machine is followed by a single processing machine. Costa, Cappadonna, and Fichera (2014) address the makespan minimization problem for a hybrid flowshop with parallel batching system. A mixed integer linear programming model is presented and a properly developed smart decoding-based genetic algorithm (SGA) is used to solve the problem. Li, Meng, Liang, and Zhao (2015) develop a heuristicsearch genetic algorithm (HSGA) for sequencing and batch formatting aiming at minimizing the makespan and total weighted tardiness. For the job size and release time constraints in the batch processing problem, Chou, Chang, and Wang (2006) propose two versions of hybrid GA to minimize makespan for a single batch processing machine dynamic scheduling problem. Kashan, Karimi, and Jenabi (2008) investigate the scheduling problem of the parallel identical batch processing machines. They propose a Hybrid Genetic Heuristic (HGH) to minimize the makespan and compare their HGH with a Simulated Annealing (SA) algorithm. Xu, Chen, and Li (2012) provide a single batch processing machine problem. An Ant Colony Optimization (ACO) algorithm based on a constructive heuristic is proposed. For the waiting time constraint in the batch processing problem, Su (2003) proposes a two-stage flowshop problem with a limited waiting time constraint where a batch processing machine is in the first stage and a single machine is in the second stage. A heuristic algorithm and a mixed integer program are proposed. This problem is similar with the proposed problem but without considering job release time constraint. Fu, Sivakumar, and Li (2012) consider a flowshop scheduling problem with batch processing machine and limited buffer. The objective is to minimize the mean completion time. A lower bound and two heuristics are developed. To the best of our knowledge, there is no previous work in the literature of scheduling has dealt with the single batch machine in first stage and a single machine in the second stage scheduling problem of this kind. In addition, most of researchers mainly focus on the division of the batch in the batch processing scheduling problem but without considering limited waiting time constraint which is common and need to be taken seriously in many reallife applications. Therefore, it is necessary to study the proposed problem. Now the literature related to the algorithms for hybrid flowshop problem with batch processing is reviewed. Mathirajan and Sivakumar (2006) propose a literature review of metaheuristics on the batch processing machine scheduling in semiconductor. Genetic algorithm (GA) is applied by many authors for solving flowshop problem with the batch processing machine
(Amin-Naseri and Beheshti-Nia (2009), Luo, Huang, Zhang, Dai, and Chen (2009), Chiang, Cheng, and Fu (2010), Li et al. (2015), Malve and Uzsoy (2007), Kashan et al. (2008), Chou et al. (2006), Costa et al. (2014)). Liao and Huang (2011) propose a Tabu search algorithm for the two machine flowshop problem with batch processing machines. Xu et al. (2012) provide an ACO algorithm and a useful heuristic in the batch processing problem. Damodaran, Rao, and Mestry (2013) propose a particle swarm optimization (PSO) algorithm for investigating scheduling batch processing machines. The key point of metaheuristics for solving batch processing problem is encoding and decoding method. It is because that job sequencing and batch forming will be considered together. Costa, Cappadonna, and Fichera (2013) propose a two-phase metaheuristic to make use of a dual problem encoding for solving a constrained hybrid flow shop scheduling problem. A regular permutation encoding and an m-stage permutation encoding for improving the algorithm strength are developed in the paper. Three procedures are proposed in their solution decoding, including sequencing and job allocation, penalty function computation and solution repair algorithm. In this paper, two new immunoglobulin-based artificial Immune system (IAIS) algorithms will be developed to solve the proposed problem better and one of them will be compared with PSO algorithm by Damodaran et al. (2013), while the other will be compared with another type of PSO algorithm called DPSO by Liao, Tseng, and Luarn (2007). Given that PSO algorithm proposed by Damodaran et al. (2013) and DPSO cannot obtain the solution in large-size problem, so a basic variable neighborhood search (VNS) algorithm proposed by Hansen and Mladenovic´ (2001) which has pretty good performance in many combination optimization is also used to test our proposed algorithm. The remainder of this paper is organized as follows. In the next section, the two-stage hybrid flowshop problem is defined and a mixed integer programming model and two lower bounds are provided. In Section 3, the structure of IAIS algorithm is described. Two IAIS algorithms, named sequence-based and batch-based IAIS algorithms are proposed in Section 4. Computational results for comparisons of IAIS and other algorithms are shown in Section 5. Finally, conclusions and future research directions are given in Section 6. 2. Problem description There are n jobs to be processed in the first stage and then in the second stage. The first stage contains a batch processing machine and the second stage has a single machine. The processing times of job j in the first and second stages are p1j and p2j , respectively. Each job has a release time r j and a corresponding size sj . The capacity of the batch processing machine is up to B and the sum of the job sizes in a batch b must be less than or equal to B. The batch processing time in the first stage is equal to the maximal processing time of the jobs in this batch. The waiting time is restricted by W. A single machine in the second stage can process no more than one job at time. There are some assumptions for this flowshop scheduling. (1) Each job need to be processed in the same order in first stage and second stage. (2) The jobs belong to same batch is processed in second stage one by one, and the processing time of jobs in second stage is known and deterministic. (3) The capacity of the batch is known and fixed. (4) Jobs are not preemptive. (5) Buffer storage between stages is unlimited.
T.-P. Chung et al. / Computers & Industrial Engineering 113 (2017) 859–870
(6) The idleness is allowed for machines. 2.1. A mixed integer programming model The proposed problem is formulated as a Mixed Integer Programming (MIP) model. Xu et al. (2012) provide a MIP model to formulate a single batch processing machine problem to minimize makespan. This study extends their model to a two-stage hybrid flowshop problem. Some notations are defined before formulating the model. Let P b ; Sb and C b be the processing time, starting time, and completion time of last job in batch b, respectively. The decision variable xjb is defined as
xjb ¼
1 if job j is assigned to batch b 0
otherwise
Then, the proposed problem can be formulated as the following MIP model:
ð1Þ
MinimizeC max s:t:
861
where C max ¼ maxfC b g; b ¼ 1; . . . ; k. The objective function is to minimize the makespan. Constraint (2) ensures that job j is assigned to only one batch. Constraint (3) shows that the capacity of batch processing machine is less than or equal to a value B. Constraint (4) is the processing time of batch b. Constraints (5) and (6) indicate the starting time of batch b in the first stage. Constraints (7) and (8) determine the completion time of last job in batch b. Constraint (9) guarantees that the waiting time of each job is limited in a value W. Constraint (10) defines the maximum completion time. There is an easy example of 6 jobs whose information is shown in Table 1 to illustrate the problem. Given a possible assignment: batch 1 = (job 1, job 5), batch 2 = (job 3, job 6), batch 3 = (job 4) and batch 4 = (job 2). We can get the C max ¼ 73 þ 10 þ 16þ 19 þ 9 þ 24 þ 2 þ 17 ¼ 170 for this assignment which is shown in a Gantt chart in Fig. 1. If the assignment of jobs or the sequence of batches are changed, the C max will make corresponding change, so it is important to select Appropriate method to form the batch and sequence the batch formed, which is what our proposed algorithm mainly focus on. 2.2. Lower bounds
k X xjb ¼ 1 j ¼ 1; . . . ; n
ð2Þ
b¼1 n X
xjb sj 6 B b ¼ 1; . . . ; k
ð3Þ
j¼1
Pb P xjb p1j j ¼ 1; . . . ; n b ¼ 1; . . . ; k Sb P xjb rj
ð4Þ
j ¼ 1; . . . ; n b ¼ 1; . . . ; k
ð5Þ
Sb P Sb1 þ Pb1 b ¼ 2; . . . ; k n X xjb p2j b ¼ 1; . . . ; k C b P Sb þ P b þ
ð6Þ ð7Þ
j¼1 n X xjb p2j
C b P C b1 þ
b ¼ 2; . . . ; k
ð8Þ
j¼1
WP
n X xjb p2j
b ¼ 1; . . . ; k
ð9Þ
j¼1
C max P C b
b ¼ 1; . . . ; k
ð10Þ
Two lower bounds, LB1 and LB2 , are developed. The final lower bound is determined by LB ¼ maxðLB1 ; LB2 Þ, which will be compared with the solution from the proposed algorithm for validation. Xu et al. (2012) provide a lower bound and prove its validity. We extend their lower bound to develop a new lower bound (LB1 ). An additional lower bound (LB2 ) is also proposed. The jobs based on ascending order of their release times are indexed. Job n is the job with the longest release time. The lower bound of Xu et al. (2012) is MLB ¼ maxj2Sj ;k2Sk frn þ p1n ; rj þ p1j þ p1n ; minðr n þ maxðp1k ; p1n Þ; rk þ p1k þ p1n Þg where Sj ¼ fjjrj þ p1j > rn ; sj þ sn > Bg and Sk ¼ fkjrk þ p1k > r n ; sk þ sn 6 Bg. Due to the similarity between our problem in the first stage and Xu et al. (2012), only if added the processing time of jobs in the second stage based on MLB, can we get an expanded lower bound LB1 which is defined as follows.
LB1 ¼ maxfr n þ p1n þ p2n ; minðr j þ p1j þ p2j þ p2n ; r j þ p1j j2Sj
þ p1n þ p2n Þg
where Sj ¼ fjjr j þ p1j > r n ; sj þ sn > Bg. It is noted that our proposed problem is a little different from Xu et al. (2012), in our problem, the jobs belonging to same batch have the same start time which is no less than the latest job release time in the batch in the first stage, and the largest job processing time in the batch is the batch processing time. The baking operation cannot be interrupted until the current batch is finished. minðr n þ maxðp1k ; p1n Þ; r k þ p1k þ p1n Þ and Sk ¼ fkjr k þ p1k > r n ; sk þ sn 6 Bg of MLB means the jobs in the same
Table 1 An example of the problem. Job
rj
sj
P1j
P2j
1 2 3 4 5 6
73 12 83 8 53 11
9 32 9 34 30 12
10 1 28 24 5 11
16 17 9 2 19 24
b1
b2
b3 b4
Stage 1 73 Stage 2
ð11Þ
10
28 24 J1 J5 J3
1 J6 J4 J2
16 19 9
24 2 17
Fig. 1. Gantt chart of the example.
862
T.-P. Chung et al. / Computers & Industrial Engineering 113 (2017) 859–870
batch is able to have different start time in the first stage, so there is no need to take Sk into consideration. Property 1. There exists an optimal schedule where jobs of the batch are consecutively sequenced in the second stage.
the problems whose string of encoding method is a job sequence. However, in the proposed problem, the string can be grouped into job sequence and batch number. Two extended IAIS will be developed in the next section. 4. The proposed extended IAIS algorithms
Proof. Su (2003) proves the same property in her problem when jobs are available at time zero. For the proposed problem with job release time, Property 1 is also useful because the release time of each batch is determined by the job with the longest release time in the batch. Thus, each job can be consecutively sequenced in the second stage. According to Property 1, if the single machine in the second stage is a bottleneck machine, that is to say when the jobs in a batch are released from single batch machine, they need to be processed after the jobs in former batch have been processed in the single machine, so any feasible sequence is optimal. Thus, a lower bound LB2 can be given as follows.
LB2 ¼ minfr j þ p1j g þ j2n
X p2j
ð12Þ
j
3. The IAIS algorithm An immunoglobulin-based AIS (IAIS) algorithm proposed by Chung and Liao (2013) is an immune based algorithm which is inspired in the nature immune system. The function of the nature immune system for human beings is to defend their bodies from invasion by other organisms. Antibodies which come from the B cells of the immune system bind and disable the antigens, so that the antigens are destroyed easily by the immune system. The nature immune system is very complex and fathomless, and the new phenomenon is discovered day by day. IAIS is more related to the natural immune system than other immune based algorithms. Because most immune based algorithms mainly focused on clonal selection and affinity maturation, while IAIS takes the diversity of the immunoglobulin which is a key point to bind the antigens into consideration in addition. The diversity of the immunoglobulin in the immune system can be separated into three parts, somatic recombination, somatic hypermutation and isotype switching. The process of somatic recombination is generated in the immune system where different combinations of genes encode different pure antibodies. When the B cells meet an antigen, the sequence of pure antibodies’ gene is changed by the process of somatic hypermutation and new antibodies called IgM are produced. Then, three types of isotype switching are proposed to generate IgG, IgE and IgA based on IgM in order to make the antibodies more powerful. Thus, in IAIS, a structure based on diversity of antibodies is proposed as follows. Step 1. Generate a population of A antibodies. Step 2. For each antibody, somatic recombination and hypermutation are used. If the new objective function is smaller than the old one, replace the antibody; otherwise, repeat C times to use isotype switching to produce a new antibody (IgG, IgE, or IgA). If the new objective function is smaller than the old one, replace the antibody. Step 3. Eliminate antibodies except the best antibody in the population and generate the new antibodies to replace the eliminated ones. Step 4. If the stopping criterion is reached, stop; otherwise, go to Step 2. The structure of IAIS is easy to understand and has been proved its efficiency by Chung and Liao (2013) where IAIS can only solve
In the proposed algorithm, there are three main aspects should be considered: (1) how to sequence the jobs (2) how to form batches and (3) how to sequence the batches formed. The three aspects will influence the quality of the proposed algorithm. These three aspects can be solved by different encoding and decoding methods, thus, according to these three aspects, sequence-based IAIS (SBIAIS) and batch-based IAIS (BBIAIS) based on the structure of IAIS are developed and the structure of the two IAISs are shown in Fig. 2. The function of Common, SBIAIS and BBIAIS structures are discussed in the following subsections. 4.1. Common structure The following processes, Somatic recombination, Somatic hypermutation, IgG of Isotype switching and Elimination, are the common structures used in SBIAIS and BBIAIS. The details of the processes are as follows. 4.1.1. Pure antibody of Somatic recombination A number D of n jobs are randomly selected in each antibody and the sequence of antibody with the best objective function in the current generation is used to be a standard string. Those selected jobs in the antibody should follow the sequence of the standard string to rearrange its sequence. The function is to limit the searching area in order to decrease the computational time 4.1.2. IgM of Somatic hypermutation The inverse mutation is used here. For a sequence s, let i and j be randomly selected two positions in the sequence. A neighbor of s is obtained by inversing the sequence of jobs between i and j positions when ji jj P 1. 4.1.3. IgG of Isotype switching The pairwise mutation is used. For a sequence s, let i and j be randomly selected two positions in the sequence. A neighbor of s is obtained by swapping these two jobs. 4.1.4. Elimination Delete antibodies except the best antibody of the current generation. The new antibodies are generated to replace the deleted ones. 4.2. SBIAIS In SBIAIS, there are encoding and decoding methods in the Population generation. 4.2.1. Encoding method Each possible schedule is considered as an antibody which is represented by a string with n jobs. The n elements of each string are the job numbers. 4.2.2. Decoding method It contains three steps as follows. Step 1 (sequencing jobs). For each string of an antibody, a random value is given. The sequence of string, named a list, is
T.-P. Chung et al. / Computers & Industrial Engineering 113 (2017) 859–870
863
Fig. 2. The flow chart of the two IAISs.
arranged by the increasing order of the random value. After executing A times, a new population is generated. Those strings are accepted as antibodies of the IAIS.
Step 2 (grouping the jobs into batches). The unscheduled job at the head of the list is selected and placed in the first batch with the following two constraints:
864
T.-P. Chung et al. / Computers & Industrial Engineering 113 (2017) 859–870
Constraint 1 Constraint 2
The sum of the job sizes in the current batch must be less than or equal to B. The sum of the job processing times of the batch in the second stage must be less than or equal to W.
If it does not satisfy one of the two constraints, a new batch is created. The procedure is repeated until all jobs have been assigned to a batch. Step 3(sequencing batches formed). Sequence the batches by the earliest release time (ERT) order. After the process of Isotype switching, three immunoglobulin based antibodies, IgA, IgE and IgG are produced. IgA and IgE are considered as follows while IgG is described in the Common structure. 4.2.3. IgA of Isotype switching The insertion mutation is used. For a sequence s, let i and j be randomly selected a job and a position in the sequence. A neighbor of s is obtained by inserting job i to position j. 4.2.4. IgE of Isotype switching The swap-insertion mutations are used here. For a sequence s, let i and j be randomly selected two positions in the sequence. A new sequence s is obtained by swapping i and j. Then, let i and j be randomly selected a job and a position in the sequence. A neighbor of s is obtained by inserting job i to position j. 4.3. BBIAIS In BBIAIS, there are encoding and decoding methods in the Population generation. 4.3.1. Encoding method The n elements of the strings are changed from job numbers to batch numbers, where each job belongs to a batch. Those strings are accepted as antibodies. Suppose a possible assignment: batch 1—jobs 2, 3, 4, 5 and batch 2—jobs 1, 6, and then the string can be represented as [2, 1, 1, 1, 1, 2]. 4.3.2. Decoding method It also contains three steps as follows. Step 1 (sequencing jobs). Sequence the jobs by the earliest release time (ERT) order. Step 2 (grouping the jobs into batches). There is a random number u Uð1; 100Þ and a fixed value F. The unscheduled job at the head of the ERT order is selected and placed in the first batch with the following three constraints:
Constraint 1 Constraint 2 Constraint 3
The sum of the job sizes in the current batch must be less than or equal to B. The sum of the job processing times of the batch in the second stage must be less than or equal to W. u > F.
If it does not satisfy one of the three constraints, a new batch is created. The procedure is repeated until all jobs have been assigned to a batch. Step 3(sequencing batches formed). Sequence the batches by the earliest release time (ERT) order. After the process of Isotype switching, three immunoglobulin based antibodies, IgA, IgE and IgG are produced. The processes of Isotype switching are not so similar with that of SBIAIS and then IgA and IgE are renamed as IgA’ and IgE’ in BBIAIS to distinguish that. IgA’ and IgE’ are considered as follows while IgG is described in the Common structure. 4.3.3. IgA’ of Isotype switching An index value is given to each job calculated by r j =b. The job with the smallest value is assigned to batch b 1, if b > 1. The job with the largest value is assigned to batch b þ 1. 4.3.4. IgE’ of Isotype switching For an antibody, let i be a randomly selected position in the sequence. There is a random number u Uð1; 100Þ and a fixed value G. If u < G, let i be assigned to batch b þ 1; otherwise, to batch b 1. It is noted that the processes of Somatic recombination, Somatic hypermutation and Isotype switching in BBIAIS may lead to produce infeasible antibodies. Before the objective function is calculated, the antibody should be corrected if the current antibody is infeasible. The correction is to make the schedule that satisfies the constraints. If the current batch size is over B, the job with smallest job size in the current batch is rearranged to the next batch. The same method is also used for the correction of the constraint where the sum of job processing times of the current batch in the second stage is over W. 4.4. Summary In this section, sequence-based IAIS (SBIAIS) and batch-based IAIS (BBIAIS) are proposed, and the two IAISs have the similar structures. But both of them have individual ways to solve the proposed problem especially for sequencing jobs, grouping the jobs into batches and sequencing batches formed. Encoding and decoding methods (Population generation) and some mutation methods (Isotype switching) are proposed to avoid falling into local optimum and decrease the computational time in the two IAISs. It is noted that IgA’ and IgE’ are proposed to improve the disadvantage by limiting the number of jobs in a batch to replace insertion (IgA) and swap-insertion (IgE) mutation methods. 5. Computational results In this section, the computational results are presented. On an Intel Core 2 CPU (3.0 GHz) with 2.0 GB RAM, all the algorithms were coded in C++ except that the Mixed Integer Programming (MIP) model was coded in ILOG OPL Studio 3.5. There are two different job size problems, small-size and large-size problems, are provided for evaluating the proposed algorithms. 5.1. Small-size problem The instances based on Xu et al. (2012) are proposed where random problem instances are generated by n, r j , p1j , p2j , sj , W and B. n ¼ 10; 20; 50 is generated where p1j is generated by the uniform
865
T.-P. Chung et al. / Computers & Industrial Engineering 113 (2017) 859–870
distribution Uð8; 48Þ and p2j is generated by O1 ¼ Uð1; 25Þ or O2 ¼ Uð1; 40Þ. The size of jobs sj is generated by S1 ¼ Uð1; 30Þ or S2 ¼ Uð15; 35Þ. The release time of jobs rj is generated by the uniform distribution ½0; LBXu where LBXu is proposed in Xu et al. (2012). The waiting time and batch size are restricted by W ¼ 40 and B ¼ 40. There are 12 combinations and each combination has 5 instances. Each instance is named as JXSXOX-X. For example, J2S2O1-5 means 20-jobs, size of jobs generated by S2 ¼ Uð15; 35Þ, p2j generated by O1 ¼ Uð1; 25Þ, and 5th instance of this combination. Since the encoding methods of PSO(D) by Damodaran et al. (2013) and DPSO(L) by Liao et al. (2007) are similar with that of BBIAIS and SBIAIS respectively, the two existing algorithms are used as comparisons. A basic variable neighborhood search (VNS) algorithm proposed by Hansen and Mladenovic´ (2001) is also used to test two IAIS algorithms. Preliminary tests of proposed IAIS algorithms in two experiments were conducted to find the good parameter settings: A ¼ 10, D ¼ bn=4c, C ¼ 10 and F ¼ 10, and G ¼ 50 in BBIAIS, while the parameters of PSO(D) by Damodaran et al. (2013) and DPSO (L) from Liao et al. (2007) are described in Table 2 where the parameters of DPSO(L) are renewed since the elder ones by Liao et al. (2007) has lower performance in the proposed problem.
Table 2 The parameters of PSO(D) and DPSO(L). Parameters
PSO(D)
DPSO(L)
V max V min
4 4 0.975 0.25 0.75 0.9–0.4
4 4 1 1 2 0.9
a
c1 c2 w
For MLP model, each instance is run once and the limited CPU time is within 1800 s. In the following tables, the results obtained by MLP model are recorded in the column of ‘‘CPLEX”. In addition, each of the instances was run 10 times to obtain the best C max . The average CPU time is simplified to ‘‘time” in tables for all algorithms, and the unit of all CPU time is second. The stopping criterion for all algorithms is that the run time is limited to 1800 s or 2000 consecutive iterations with no improvement of the objective function. The performance of the algorithms is calculated as Eq. (13).
Gap ¼
C Hmax LB 100 LB
ð13Þ
where C Hmax is the value of the objective function generated by the respective algorithm H, i.e., CPLEX, PSO(D), DPSO(L), BBIAIS, and SBIAIS, and LB is the lower bound proposed in Section 3. After executing the experiments, the results are shown in Tables 3–5. There are some observations as follows. In Tables 3–5, it is observed that the average Gaps of BBIAIS and SBIAIS are 9.32 and 10.50 while those of PSO(D), DPSO(L) and VNS are 16.72, 12.41 and 11.83. The average computational times of BBIAIS, SBIAIS, PSO(D), DPSO(L) and VNS are 10.99, 5.32, 6.45, 26.12 and 10.77 s. It is noted that CPLEX only can solve the problem when n ¼ 10. When n is increased, the average Gaps of BBIAIS and SBIAIS are decreased while those of PSO(D) are increased. The average Gaps of DPSO(L) for n ¼ 10; 20; 50 are 13.32, 10.50 and 13.42. The average Gaps of VNS for n ¼ 10; 20; 50 are 13.32, 9.84 and 12.32. Although BBIAIS and PSO(D) have the same encoding method, called batch-based, the computational results in Tables 3–5 have shown that the structure of BBIAIS is better than PSO(D). In Table 3, both of BBIAIS and CPLEX with average Gap of 10.81 can reach the best C max for all instances, while the average Gap of PSO(D) is 12.93. The average computational times of BBIAIS and PSO(D) are 0.93 and 0.22 s. In Tables 4 and 5, the average Gaps of BBIAIS are
Table 3 Computational results of VNS, BBIAIS, PSO(D), SBIAIS, DPSO(L) and CPLEX ðn ¼ 10Þ. Batch-based VNS
PSO(D)
SBIAIS
DPSO(L)
CPLEX
Instance
LB
C max
Gap
Time
C max
Gap
Time
C max
Gap
Time
C max
Gap
Time
C max
Gap
Time
C max
Gap
Time
J1S1O1-1 J1S1O1-2 J1S1O1-3 J1S1O1-4 J1S1O1-5 Ave.
145 250 204 236 234
164 274 204 246 291
13.10 9.60 0.00 4.24 24.36 10.26
0.24 0.22 0.19 0.21 0.20 0.21
161a 266 204 246 283
11.03 6.40 0.00 4.24 20.94 8.52
0.72 1.10 0.69 0.76 0.90 0.83
173 266 204 274 294
19.31 6.40 0.00 16.10 25.64 13.49
0.20 0.20 0.20 0.20 0.21 0.20
164 274 204 246 291
13.10 9.60 0.00 4.24 24.36 10.26
0.55 0.53 0.55 0.54 0.55 0.54
164 274 204 246 291
13.10 9.60 0.00 4.24 24.36 10.26
2.26 2.44 2.22 2.32 2.28 2.3
161 266 204 246 283
11.03 6.40 0.00 4.24 20.94 8.52
11.86 5.22 75.44 1.95 0.31 18.96
J1S2O1-1 J1S2O1-2 J1S2O1-3 J1S2O1-4 J1S2O1-5 Ave.
250 288 261 322 274
308 288 315 412 285
23.20 0.00 20.69 27.95 4.01 15.17
0.26 0.28 0.25 0.28 0.28 0.27
289 288 315 409 285
15.60 0.00 20.69 27.02 4.01 13.46
0.87 0.81 0.79 1.03 0.84 0.87
292 288 315 409 285
16.80 0.00 20.69 27.02 4.01 13.70
0.22 0.22 0.22 0.22 0.23 0.22
308 288 315 412 285
23.20 0.00 20.69 27.95 4.01 15.17
0.48 0.28 0.46 0.36 0.35 0.39
308 288 315 412 285
23.20 0.00 20.69 27.95 4.01 15.17
2.44 2.48 2.39 2.53 2.53 2.47
289 288 315 409 285
15.60 0.00 20.69 27.02 4.01 13.46
3.67 2.17 0.36 1.63 0.59 1.68
J1S1O2-1 J1S1O2-2 J1S1O2-3 J1S1O2-4 J1S1O2-5 Ave.
200 282 256 242 235
219 324 273 274 300
9.50 14.89 6.64 13.22 27.66 14.38
0.20 0.25 0.25 0.23 0.23 0.23
219 315 259 274 300
9.50 11.70 1.17 13.22 27.66 12.65
0.78 1.31 1.05 0.93 0.96 1.01
219 317 272 287 309
9.50 12.41 6.25 18.60 31.49 15.65
0.20 0.24 0.23 0.21 0.22 0.22
219 324 273 274 300
9.50 14.89 6.64 13.22 27.66 14.38
0.51 0.49 0.54 0.55 0.61 0.54
219 324 273 274 300
9.50 14.89 6.64 13.22 27.66 14.38
2.24 2.38 2.39 2.43 2.34 2.36
219 315 259 274 300
9.50 11.70 1.17 13.22 27.66 12.65
213.44 26.09 65.08 4.66 0.84 62.02
J1S2O2-1 J1S2O2-2 J1S2O2-3 J1S2O2-4 J1S2O2-5 Ave.
283 299 261 352 304
330 299 306 457 315
16.61 0.00 17.24 29.83 3.62 13.46
0.28 0.28 0.24 0.28 0.29 0.27
298 299 305 415 313
5.30 0.00 16.86 17.9 2.96 8.60
0.97 0.91 0.92 1.23 0.95 1.00
298 299 305 420 313
5.30 0.00 16.86 19.32 2.96 8.89
0.22 0.22 0.23 0.22 0.24 0.23
330 299 306 457 315
16.61 0.00 17.24 29.83 3.62 13.46
0.39 0.28 0.48 0.36 0.29 0.36
330 299 306 457 315
16.61 0.00 17.24 29.83 3.62 13.46
2.48 2.49 2.4 2.53 2.55 2.49
298 299 305 415 313
5.30 0.00 16.86 17.90 2.96 8.60
1.53 0.98 0.34 1.48 0.59 0.98
13.32
0.25
10.81
0.93
12.93
0.22
13.32
0.46
13.32
2.41
10.81
20.91
Agg a
Sequence-based
BBIAIS
Bold means getting better solution than other algorithms.
866
T.-P. Chung et al. / Computers & Industrial Engineering 113 (2017) 859–870
Table 4 Computational results of VNS, BBIAIS, PSO(D), SBIAIS and DPSO(L) ðn ¼ 20Þ. Batch-based VNS
Sequence-based
BBIAIS
PSO(D)
SBIAIS
DPSO(L)
Instance
LB
Cmax
Gap
Time
Cmax
Gap
Time
Cmax
Gap
Time
Cmax
Gap
Time
Cmax
Gap
Time
J2S1O1-1 J2S1O1-2 J2S1O1-3 J2S1O1-4 J2S1O1-5 Ave.
407 361 384 366 373
445 391 471 414 378
9.34 8.31 22.66 13.11 1.34 10.95
2.14 1.73 2.14 2.28 1.77 2.01
434 391 460 414 374
6.63 8.31 19.79 13.11 0.27 9.62
4.09 2.69 3.52 2.89 3.40 3.32
499 452 542 509 428
22.60 25.21 41.15 39.07 14.75 28.55
1.23 1.23 1.35 1.22 1.22 1.25
445 391 468 412 373
9.34 8.31 21.88 12.57 0.00 10.42
1.95 2.00 2.75 2.16 2.43 2.26
445 393 491 419 383
9.34 8.86 27.86 14.48 2.68 12.64
10.02 11.25 10.18 10.25 12.26 10.79
J2S2O1-1 J2S2O1-2 J2S2O1-3 J2S2O1-4 J2S2O1-5 Ave.
431 548 565 548 562
506 585 620 566 620
17.40 6.75 9.73 3.28 10.32 9.50
1.57 1.85 1.66 1.84 1.78 1.74
506 585 617 566 609
17.40 6.75 9.20 3.28 8.36 9.00
2.50 2.68 3.92 2.74 3.94 3.16
534 585 658 568 618
23.90 6.75 16.46 3.65 9.96 12.14
1.37 1.36 1.36 1.38 1.37 1.37
506 585 620 566 620
17.40 6.75 9.73 3.28 10.32 9.50
1.81 1.25 1.49 1.10 1.34 1.40
506 585 620 566 620
17.40 6.75 9.73 3.28 10.32 9.50
8.76 8.41 8.16 8.44 8.33 8.42
J2S1O2-1 J2S1O2-2 J2S1O2-3 J2S1O2-4 J2S1O2-5 Ave.
476 476 466 401 401
519 492 511 453 440
9.03 3.36 9.66 12.97 9.73 8.95
1.95 2.07 2.33 2.65 2.22 2.24
514 492 507 442 440
7.98 3.36 8.80 10.22 9.73 8.02
5.13 2.96 3.66 3.91 2.69 3.67
544 535 595 500 487
14.29 12.39 27.68 24.69 21.45 20.10
1.13 1.30 1.32 1.35 1.31 1.28
519 492 511 449 440
9.03 3.36 9.66 11.97 9.73 8.75
1.92 2.05 2.15 2.22 1.97 2.06
522 502 511 453 448
9.66 5.46 9.66 12.97 11.72 9.89
9.34 11.35 11.74 10.85 12.09 11.07
J2S2O2-1 J2S2O2-2 J2S2O2-3 J2S2O2-4 J2S2O2-5 Ave.
515 585 595 536 557
590 622 665 577 610
14.56 6.32 11.76 7.65 9.52 9.96
1.79 1.85 1.75 1.88 1.79 1.81
590 596 647 572 610
14.56 1.88 8.74 6.72 9.52 8.28
2.25 2.51 2.67 2.57 2.86 2.57
618 596 703 598 637
20.00 1.88 18.15 11.57 14.36 13.19
1.36 1.36 1.38 1.38 1.37 1.37
590 622 665 577 610
14.56 6.32 11.76 7.65 9.52 9.96
1.40 1.23 1.25 0.98 1.38 1.25
590 622 665 577 610
14.56 6.32 11.76 7.65 9.52 9.96
8.29 8.40 8.28 8.48 8.34 8.36
9.84
1.95
8.73
3.18
18.50
1.32
9.66
1.74
10.50
9.66
Agg
CPLEX cannot obtain any feasible solution within 1800 s. Bold means getting better solution than other algorithms.
Table 5 Computational results of VNS, PSO(D), SBIAIS and DPSO(L) ðn ¼ 50Þ. Batch-based VNS
Sequence-based
BBIAIS
PSO(D)
SBIAIS
DPSO(L)
Instance
LB
Cmax
Gap
Time
Cmax
Gap
Time
Cmax
Gap
Time
Cmax
Gap
Time
Cmax
Gap
Time
J3S1O1-1 J3S1O1-2 J3S1O1-3 J3S1O1-4 J3S1O1-5 Ave.
837 650 908 717 772
1045 769 1058 939 927
24.85 18.31 16.52 30.96 20.08 22.14
24.41 27.56 24.49 27.16 23.44 25.41
953 739 965 850 844
13.86 13.69 6.28 18.55 9.33 12.34
49.52 43.37 46.73 37.65 26.60 40.77
1245 833 1190 1102 1021
48.75 28.15 31.06 53.70 32.25 38.78
15.34 14.60 15.05 14.52 15.88 15.08
924 698 977 847 845
10.39 7.38 7.60 18.13 9.46 10.59
22.06 18.87 17.23 23.43 19.98 20.31
1028 781 1086 971 939
22.82 20.15 19.60 35.43 21.63 23.93
80.84 64.05 77.96 74.68 75.68 74.64
J3S2O1-1 J3S2O1-2 J3S2O1-3 J3S2O1-4 J3S2O1-5 Ave.
1226 1252 1316 1366 1185
1452 1286 1402 1473 1267
18.43 2.72 6.53 7.83 6.92 8.49
31.96 45.92 33.23 25.23 25.70 32.41
1439 1291 1380 1456 1267
17.37 3.12 4.86 6.59 6.92 7.77
28.78 23.54 24.07 15.13 14.44 21.19
1501 1331 1486 1527 1363
22.43 6.31 12.92 11.79 15.02 17.37
17.52 17.04 17.25 17.51 17.14 28.78
1452 1253 1390 1473 1267
18.43 0.08 5.62 7.83 6.92 7.78
8.79 17.87 9.85 6.24 8.07 10.16
1467 1301 1405 1473 1280
19.66 3.91 6.76 7.83 8.02 9.24
71.64 68.15 90.74 48.31 48.14 65.40
J3S1O2-1 J3S1O2-2 J3S1O2-3 J3S1O2-4 J3S1O2-5 Ave.
1055 975 1145 1007 1110
1180 999 1217 1095 1128
11.85 2.46 6.29 8.74 1.62 6.19
32.30 24.50 27.81 33.72 22.59 28.18
1104 999 1204 1059 1110
4.64 2.46 5.15 5.16 0.00 3.48
51.64 27.40 24.15 29.05 24.87 31.42
1240 1051 1336 1191 1165
3.12 4.86 6.59 6.92 7.77 13.05
23.54 24.07 15.13 14.44 21.19 16.82
1096 999 1206 1057 1110
3.89 2.46 5.33 4.97 0.00 3.33
20.36 9.84 18.10 18.34 15.28 16.38
1209 1007 1223 1101 1128
14.60 3.28 6.81 9.33 1.62 7.13
82.05 60.50 74.45 74.26 49.25 68.10
J3S2O2-1 J3S2O2-2 J3S2O2-3 J3S2O2-4 J3S2O2-5 Ave.
1221 1272 1321 1361 1212
1503 1444 1446 1475 1307
23.10 13.52 9.46 8.38 7.84 12.34
30.93 42.63 47.30 26.14 25.20 34.44
1456 1404 1426 1458 1278
19.25 10.38 7.95 7.13 5.45 10.03
25.76 26.22 28.14 16.86 13.50 22.10
1502 1442 1509 1497 1374
23.01 13.36 14.23 9.99 13.37 14.79
17.97 17.81 17.92 17.44 17.80 17.79
1503 1444 1438 1475 1307
23.10 13.52 8.86 8.38 7.84 12.34
7.73 9.53 9.43 6.38 7.81 8.18
1519 1477 1455 1475 1307
24.41 16.12 10.14 8.38 7.84 13.38
52.22 67.53 68.69 48.50 47.88 56.96
12.32
30.11
8.41
28.87
18.73
17.82
8.51
13.76
13.42
66.28
Agg
Bold means getting better solution than other algorithms.
respectively 8.73 and 8.41 while those of PSO(D) are 18.50 and 18.73 when n = 20 and n = 50. The average computational times of BBIAIS are 3.18 and 28.87 s while those of PSO(D) are respec-
tively 1.32 and 17.82 s when n = 20 and n = 50. Even though the average computational times of BBIAIS are more than those of PSO(D), the average Gaps of BBIAIS are much less than those of
867
T.-P. Chung et al. / Computers & Industrial Engineering 113 (2017) 859–870
In Table 6–8, it is observed that the average Gaps of BBIAIS and SBIAIS are 22.02 and 14.83. The average computational times of BBIAIS and SBIAIS are 1256.47 and 1041.30 s. The average Gaps and average computational time of VNS is 29.67 and 1293.89 s. When n is increased, the average Gaps of BBIAIS, SBIAIS and VNS are increased. For n ¼ 100, it is observed that the average Gaps of BBIAIS and SBIAIS are 4.92 and 4.07 while those of PSO(D) and DPSO(L) are 17.18 and 11.16. The average computational times of BBIAIS, SBIAIS, PSO(D) and DPSO(L) are 183.91, 78.58, 125.33 and 254.08 s, respectively. The average Gaps and average computational time of VNS is 10.53 and 281.66 s. It is noted that PSO(D) and DPSO(L) cannot obtain the solution when n > 200 due to the coding limitation which most PSO algorithms have. For n ¼ 250, SBIAIS with the average Gap of 15.09 performs better than BBIAIS with that of 28.01 and VNS with that of 38.35, while the average computational times of SBIAIS, BBIAIS and VNS are 1319.49, 1785.51 and 1800 s. For n ¼ 500, the average Gaps of SBIAIS, BBIAIS and VNS are 25.34, 33.14 and 40.12, while the average computational times of SBIAIS, BBIAIS and VNS are 1725.90, 1800.00 and 1800 s. It is noted that the Gap becomes larger. It may be because the performance of lower bound is getting worse as n is increased. The results on small and large size instances are summarized in Table 9. As we can see that the average Gap of BBIAIS and SBIAIS are 15.67 and 12.67 which are smaller than 20.75 of VNS in all instances, and the computational time BBIAIS and SBIAIS are 633.73 s and 523.32 s which are less than 652.33 s of VNS in all instances. The average Gap of PSO(D) is biggest than other algorithms despite of its pretty less computational time, and as we can see that BBIAIS and SBIAIS both perform better than DPSO(L). In small-size problem, BBIAIS has smallest Gap of 9.32 than other algorithms, computational time of SBIAIS is 5.32 s which is less than other algorithms. In large-size problem, it is obvious that SBIAIS performs better than other algorithms in Gap and computational time.
PSO(D). Thus, BBIAIS has better performance than PSO(D) when n = 20 and n = 50. Although both of DPSO(L) and SBIAIS have the same encoding method which is called sequence-based, SBIAIS has better performance than DPSO(L). In Table 3, SBIAIS and DPSO(L) have the same average Gap of 13.32 while the average computational time of SBIAIS is 0.46 s less than that of DPSO(L) of 2.41. In Tables 4 and 5, the average Gaps of SBIAIS are 9.66 and 8.51 while those of PSO (D) are 10.50 and 13.42. The average computational times of BBIAIS are 1.74 and 13.76 s while those of PSO(D) are 9.66 and 66.28 s. Thus, SBIAIS performs better than DPSO(L) when n = 20 and n = 50. VNS has a same average Gap of 13.32 with SBIAIS but bigger than BBIAIS of 10.81 for n ¼ 10, while VNS has less average computational time than SBIAIS and BBIAIS. For n ¼ 20, VNS has bigger average Gap of 9.84 than 8.73 of BBIAIS and 9.66 of SBIAIS, the average computational times of VNS is 1.95 s which is less than 3.18 s of BBIAIS but more than 1.74 s of SBIAIS. For n ¼ 50, VNS has the bigger average Gap and more average computational time than SBIAIS and BBIAIS. Since BBIAIS and SBIAIS have the same structure, both of them should be compared with each other. For n ¼ 10, BBIAIS with average Gap of 10.81 is better than SBIAIS with that of 13.32, while the average computational times of BBIAIS and SBIAIS are 0.93 and 0.46 s. For n ¼ 20 and 50, the same trend are obtained as n ¼ 10. BBIAIS performs better than SBIAIS but with larger computational time for small-size problems. 5.2. Large-size problem In order to evaluate proposed algorithms in large-size problem, the combination of n ¼ 100; 250 and 500 are applied according to the same method of small-size problem. After executing the experiments, the results are shown in Tables 6–8. There are some observations as follows.
Table 6 Computational results of VNS, BBIAIS, PSO(D), SBIAIS and DPSO(L) ðn ¼ 100Þ. Batch-based VNS
Sequence-based
BBIAIS
PSO(D)
SBIAIS
DPSO(L)
Instance
LB
Cmax
Gap
Time
Cmax
Gap
Time
Cmax
Gap
Time
Cmax
Gap
Time
Cmax
Gap
Time
J4S1O1-1 J4S1O1-2 J4S1O1-3 J4S1O1-4 J4S1O1-5 Ave.
1503 1555 1441 1469 1680
1957 1915 1953 1909 2023
30.21 23.15 35.53 29.95 20.42 27.85
185.43 245.72 154.90 146.00 245.31 195.47
1700 1668 1682 1640 1804
13.11 7.27 16.72 11.64 7.38 11.22
321.08 296.25 234.86 411.82 275.55 304.62
2202 2109 2188 2126 2221
46.51 35.63 51.84 44.72 32.20 42.18
108.31 109.73 112.01 110.58 108.61 110.23
1678 1664 1653 1590 1776
11.64 7.01 14.71 8.24 5.71 8.92
124.50 142.80 123.74 119.23 126.39 128.04
1970 1918 1970 1913 2075
31.07 23.34 36.71 30.22 23.51 28.45
267.90 236.16 293.09 290.80 258.71 269.69
J4S2O1-1 J4S2O1-2 J4S2O1-3 J4S2O1-4 J4S2O1-5 Ave.
2543 2632 2543 2492 2589
2748 2656 2574 2596 2699
8.06 0.91 1.22 4.17 4.25 3.72
289.01 199.41 185.01 325.95 350.27 269.93
2667 2656 2574 2543 2633
4.88 0.91 1.22 2.05 1.70 2.15
181.65 67.43 75.59 93.26 108.03 86.08
2808 2678 2632 2765 2737
10.42 1.75 3.50 10.96 5.72 6.47
130.01 134.11 129.94 130.25 127.19 130.37
2627 2656 2574 2543 2622
3.30 0.91 1.22 2.05 1.27 1.36
118.11 29.99 29.03 63.93 94.86 54.45
2781 2656 2574 2634 2704
9.36 0.91 1.22 5.70 4.44 3.07
276.53 174.86 169.96 233.92 257.75 209.12
J4S1O2-1 J4S1O2-2 J4S1O2-3 J4S1O2-4 J4S1O2-5 Ave.
2008 2139 2075 2287 1846
2193 2156 2151 2287 2123
9.21 0.79 3.66 0.00 15.01 5.74
227.50 290.72 224.91 221.56 413.10 275.56
2096 2146 2091 2287 1985
4.38 0.33 0.77 0.00 7.53 2.60
311.18 158.89 159.53 117.30 271.69 176.85
2294 2247 2265 2434 2309
14.24 5.05 9.16 6.43 25.08 11.99
123.88 126.79 122.33 132.15 128.08 127.34
2067 2139 2090 2287 1951
2.94 0.00 0.72 0.00 5.69 1.60
107.21 49.87 70.66 38.98 99.94 64.86
2175 2155 2149 2287 2166
8.32 0.75 3.57 0.00 17.33 5.41
248.15 284.01 306.75 164.02 241.51 249.07
J4S2O2-1 J4S2O2-2 J4S2O2-3 J4S2O2-4 J4S2O2-5 Ave.
2531 2632 2543 2522 2614
2872 2656 2611 2666 2647
13.47 0.91 2.67 5.71 1.26 4.81
444.44 266.91 279.89 558.51 378.56 385.66
2784 2646 2611 2629 2643
10.00 0.53 2.67 4.24 1.11 3.71
223.05 103.05 88.26 100.69 139.23 107.81
2872 2694 2641 2806 2860
13.47 2.36 3.85 11.26 9.41 8.07
134.83 134.40 134.37 135.56 132.54 134.22
2749 2656 2611 2638 2646
8.61 0.91 2.67 4.60 1.22 2.35
72.90 28.16 36.93 43.19 72.81 45.27
2899 2656 2611 2697 2754
14.54 0.91 2.67 6.94 5.36 3.97
301.97 176.92 214.66 317.16 382.47 272.80
10.53
281.66
4.92
183.91
17.18
125.33
4.07
78.58
11.16
254.08
Agg
Bold means getting better solution than other algorithms.
868
T.-P. Chung et al. / Computers & Industrial Engineering 113 (2017) 859–870
Table 7 Computational results of two IAISs and VNS ðn ¼ 250Þ. SBIAIS
BBIAIS
VNS
Instance
LB
Cmax
Gap
Time
Cmax
Gap
Time
Cmax
Gap
Time
J5S1O1-1 J5S1O1-2 J5S1O1-3 J5S1O1-4 J5S1O1-5 Ave.
3339 3427 3539 3527 3278
3729 3779 3924 3720 3719
10.46 9.31 9.81 5.19 11.86 9.33
1395.25 1315.29 1291.96 1506.67 1691.42 1440.12
4018 3998 4074 4099 3982
20.34 16.66 15.12 16.22 21.48 17.96
1800.00 1800.00 1800.00 1800.00 1800.00 1800.00
4629 4697 4709 4603 4655
38.63 37.06 33.06 30.51 42.01 36.25
1800.00 1800.00 1800.00 1800.00 1800.00 1800.00
J5S2O1-1 J5S2O1-2 J5S2O1-3 J5S2O1-4 J5S2O1-5 Ave.
3300 3277 3328 3275 3139
5343 5663 5461 5359 5253
38.24 42.13 39.06 38.89 40.24 39.71
1800.00 1770.23 1719.30 1729.49 1756.63 1755.13
5627 6002 5756 5656 5466
70.52 83.16 72.96 72.70 74.13 74.69
1800.00 1800.00 1800.00 1800.00 1800.00 1800.00
6116 6416 6157 5996 5977
85.33 95.79 85.01 83.08 90.41 87.92
1800.00 1800.00 1800.00 1800.00 1800.00 1800.00
J5S1O2-1 J5S1O2-2 J5S1O2-3 J5S1O2-4 J5S1O2-5 Ave.
5035 5193 4943 5298 5181
5076 5221 4966 5298 5182
0.81 0.54 0.46 0.00 0.02 0.37
590.00 547.96 575.47 298.39 443.26 491.02
5092 5225 5004 5328 5192
1.13 0.62 1.23 0.57 0.21 0.75
1693.42 1761.55 1760.10 1800.00 1761.01 1755.22
5202 5269 5122 5402 5368
3.32 1.46 3.62 1.96 3.61 2.79
1800.00 1800.00 1800.00 1800.00 1800.00 1800.00
J5S2O2-1 J5S2O2-2 J5S2O2-3 J5S2O2-4 J5S2O2-5 Ave.
4908 5478 4926 4866 5342
5697 6005 5701 5485 5752
13.85 8.78 13.59 11.29 7.13 10.93
1564.12 1457.55 1675.89 1675.39 1585.45 1591.68
6054 6355 6044 5828 5994
23.35 16.01 22.70 19.77 12.21 18.81
1800.00 1800.00 1800.00 1800.00 1734.12 1786.82
6446 6764 6502 6163 6340
31.34 23.48 31.99 26.65 18.68 26.43
1800.00 1800.00 1800.00 1800.00 1800.00 1800.00
15.09
1319.49
28.01
1785.51
38.35
1800.00
Agg.
Bold means getting better solution than other algorithms.
Table 8 Computational results of two IAISs and VNS ðn ¼ 500Þ. SBIAIS
BBIAIS
VNS
Instance
LB
Cmax
Gap
Time
Cmax
Gap
Time
Cmax
Gap
Time
J6S1O1-1 J6S1O1-2 J6S1O1-3 J6S1O1-4 J6S1O1-5 Ave.
6719 6598 6637 6563 6655
7891 7685 7949 7969 7820
17.44 16.47 19.77 21.42 17.51 18.52
1800.00 1800.00 1800.00 1800.00 1800.00 1800.00
8783 8593 8846 8734 8792
30.72 30.24 33.28 33.08 32.11 31.89
1800.00 1800.00 1800.00 1800.00 1800.00 1800.00
9496 9125 9539 9640 9462
41.33 38.30 43.72 46.88 42.18 42.48
1800.00 1800.00 1800.00 1800.00 1800.00 1800.00
J6S2O1-1 J6S2O1-2 J6S2O1-3 J6S2O1-4 J6S2O1-5 Ave.
6367 6824 6671 6570 6859
11,635 10,753 11,335 10,993 11,185
82.74 57.58 69.91 67.32 63.07 68.12
1800.00 1800.00 1800.00 1800.00 1800.00 1800.00
12,279 11,512 11,941 11,570 11,819
92.85 68.70 79.00 76.10 72.31 77.79
1800.00 1800.00 1800.00 1800.00 1800.00 1800.00
12,859 12,093 12,569 12,265 12,442
101.96 77.21 88.41 86.68 81.40 87.13
1800.00 1800.00 1800.00 1800.00 1800.00 1800.00
J6S1O2-1 J6S1O2-2 J6S1O2-3 J6S1O2-4 J6S1O2-5 Ave.
10,312 10,425 10,246 10,731 10,304
10,314 10,447 10,283 10,733 10,342
0.02 0.21 0.36 0.02 0.37 0.20
1447.92 1181.90 1613.00 1551.66 1723.60 1503.61
10,617 10,558 10,491 10,761 10,528
2.96 1.28 2.39 0.28 2.17 1.82
1800.00 1800.00 1800.00 1800.00 1800.00 1800.00
11,003 10,680 10,832 11,028 10,829
6.70 2.45 5.72 2.77 5.10 4.55
1800.00 1800.00 1800.00 1800.00 1800.00 1800.00
J6S2O2-1 J6S2O2-2 J6S2O2-3 J6S2O2-4 J6S2O2-5 Ave.
10,263 10,152 10,044 10,317 10,497
12,103 11,400 11,783 11,580 11,858
17.93 12.29 17.31 12.24 12.97 14.55
1800.00 1800.00 1800.00 1800.00 1800.00 1800.00
12,976 12,017 12,341 12,251 12,479
26.43 18.37 22.87 18.75 18.88 21.06
1800.00 1800.00 1800.00 1800.00 1800.00 1800.00
13,222 12,704 13,005 12,749 13,079
28.83 25.14 29.48 23.57 24.60 26.32
1800.00 1800.00 1800.00 1800.00 1800.00 1800.00
25.34
1725.90
33.14
1800.00
40.12
1800.00
Agg.
Bold means getting better solution than other algorithms.
It seems that BBIAIS performs better than SBIAIS in the quality of solution for solving the small-size problem while SBIAIS performs better than BBIAIS for solving the large-size problem. In order to compare the performance of BBIAIS and SBIAIS accurately, two hypothesis tests are used in the paper. Since the size of a sample is 10, Anderson-Darling test is chosen to make sure the data following a normal distribution or not. In Anderson-Darling test, P-
values for all problems are less than 0.05, so the data do not follow a normal distribution. Mann-Whitney test, a non-parametric test, is used in the research to evaluate the performance of the proposed algorithm. In the first hypothesis test, the null hypothesis H0 assumes that lBBIAIS P lSBIAIS in small-size problems and the alternative hypothesis H1 assumes that lBBIAIS < lSBIAIS with a significance level of
869
T.-P. Chung et al. / Computers & Industrial Engineering 113 (2017) 859–870 Table 9 Summary of comparison. Small-size problem
Large-size problem
Average of all
n = 10
n = 20
n = 50
Average
n = 100
n = 250
n = 500
Average
Agg Gap
VNS BBIAIS PSO(D) SBIAIS DPSO(L)
13.32 10.81 12.93 13.32 13.32
9.84 8.73 18.50 9.66 10.5
12.32 8.41 18.73 8.51 13.42
11.83 9.32 16.72 10.50 12.41
10.53 4.92 17.18 4.07 11.16
38.35 28.01 / 15.09 /
40.12 33.14 / 25.34 /
29.667 22.023 / 14.833 /
20.75 15.67 / 12.67 /
Agg time
VNS BBIAIS PSO(D) SBIAIS DPSO(L)
0.25 0.93 0.22 0.46 2.41
1.95 3.18 1.32 1.74 9.66
30.11 28.87 17.82 13.76 66.28
10.77 10.99 6.45 5.32 26.12
281.66 183.91 125.33 78.58 254.08
1800 1785.51 / 1319.49 /
1800 1800 / 1725.9 /
1293.9 1256.5 / 1041.3 /
652.33 633.73 / 523.32 /
/ Means that DPSO(L) and PSO(D) cannot obtain solutions. Bold means getting better solution than other algorithms.
Table 10 Mann-Whitney test of BBIAIS and SBIAIS algorithms ðn ¼ 50Þ. BBIAIS
SBIAIS
Significant?
Instance
Min
Max
Min
Max
p 6 ð0:05Þ
J3S1O1-1 J3S1O1-2 J3S1O1-3 J3S1O1-4 J3S1O1-5 J3S2O1-1 J3S2O1-2 J3S2O1-3 J3S2O1-4 J3S2O1-5 J3S1O2-1 J3S1O2-2 J3S1O2-3 J3S1O2-4 J3S1O2-5 J3S2O2-1 J3S2O2-2 J3S2O2-3 J3S2O2-4 J3S2O2-5
953 739 965 850 844 1439 1291 1380 1456 1267 1104 999 1204 1059 1110 1456 1404 1426 1458 1278
970 763 1007 883 881 1454 1315 1397 1457 1268 1160 1000 1208 1079 1133 1472 1427 1455 1468 1279
924 698 977 847 845 1452 1253 1390 1473 1267 1096 999 1206 1057 1110 1503 1444 1438 1475 1307
955 732 1004 863 887 1453 1258 1391 1474 1268 1111 1000 1211 1066 1128 1504 1445 1439 1476 1308
N N Y N N Y N Y Y Y N Y Y N N Y Y N Y Y
p-value
0.0309
0.0007 0.0008 0.0500 0.0500 0.0500 0.0370
0.0000 0.0001 0.0000 0.0000
Table 11 Mann-Whitney test of BBIAIS and SBIAIS algorithms ðn ¼ 100Þ. Instance
J4S1O1-1 J4S1O1-2 J4S1O1-3 J4S1O1-4 J4S1O1-5 J4S2O1-1 J4S2O1-2 J4S2O1-3 J4S2O1-4 J4S2O1-5 J4S1O2-1 J4S1O2-2 J4S1O2-3 J4S1O2-4 J4S1O2-5 J4S2O2-1 J4S2O2-2 J4S2O2-3 J4S2O2-4 J4S2O2-5
BBIAIS
SBIAIS
Significant?
Min
Max
Min
Max
p 6 ð0:05Þ
1700 1668 1682 1640 1804 2667 2656 2574 2543 2633 2096 2146 2091 2287 1985 2784 2646 2611 2629 2643
1799 1721 1735 1713 1857 2728 2657 2575 2544 2655 2171 2154 2149 2288 2047 2831 2647 2612 2661 2692
1678 1664 1653 1590 1776 2627 2656 2574 2543 2622 2067 2139 2090 2287 1951 2749 2656 2611 2638 2646
1744 1694 1719 1640 1826 2646 2657 2575 2570 2632 2087 2154 2091 2288 2000 2786 2657 2612 2648 2678
Y Y Y Y Y Y Y Y Y Y Y Y Y Y N Y N Y Y N
p-value
0.0095 0.0561 0.0032 0.0001 0.0070 0.0001 0.0500 0.0500 0.0500 0.0001 0.0001 0.0001 0.0001 0.0150 0.0002 0.0500 0.0145
870
T.-P. Chung et al. / Computers & Industrial Engineering 113 (2017) 859–870
0.05. P-values for n ¼ 10; 20 are 0.00 while for n ¼ 50 are uncertain and partial hypothesis test results are shown in Table 10. We can see that there is 11 Y of 20 instances, so there is totally 51 Y of 60 instances in small-size problems indicating that we should admit the H0 assumes that lBBIAIS P lSBIAIS . Thus, BBIAIS performs better than SBIAIS in the quality of solution for solving the smallsize problem. In the second hypothesis test, the null hypothesis H0 assumes that lSBIAIS P lBBIAIS in large-size problems and the alternative hypothesis H1 assumes that lSBIAIS < lBBIAIS with a significance level of 0.05. P-values for n ¼ 250; 500 are 0.00 while for n ¼ 100 are uncertain and partial hypothesis test results are shown in Table 11. We can see that there is 17 Y of 20 instances, so there is totally 57 Y of 60 instances in large-size problems indicating that we should admit the H0 assumes that lSBIAIS P lBBIAIS . Thus, SBIAIS performs better than BBIAIS for solving the large-size problem. According to the computational results, BBIAIS and SBIAIS are proved efficient where BBIAIS has better performance than other algorithms in the small-size problem while SBIAIS performs better than BBIAIS in the large-size problem. 6. Conclusions and future researches In this paper, a two-stage hybrid flowshop problem with the objective function of minimizing the makespan have been proposed, which is a NP-hard problem. A MIP model is developed to define the proposed problem and two lower bounds are developed to be compared with the solution from the proposed algorithms for validation. The sequence-based IAIS (SBIAIS) and batch-based IAIS (BBIAIS) have been developed based on the structure of IAIS to solve the proposed problem. Two IAISs have different encoding way and local search method. To evaluate the performance of proposed IAISs, existing algorithms have been used as comparisons. Computational results have shown that sequence-based and batch-based IAIS algorithms are quite efficient. This paper researches a hybrid flowshop scheduling problem which is common in many real-life applications. Some new ways of forming batch and mutation are applied in the algorithms for solving the problem. Future research may be conducted to exploit the effectiveness of proposed IAISs to other scheduling problems, such as flowshop with multiple batch processing machines with various constraints and objectives. Acknowledgements This work was supported by National Natural Science Foundation of China No. 61304216. References Amin-Naseri, M. R., & Beheshti-Nia, M. A. (2009). Hybrid flow shop scheduling with parallel batching. International Journal of Production Economics, 117(1), 185–196. Bellanger, A., & Oulamara, A. (2009). Scheduling hybrid flowshop with parallel batching machines and compatibilities. Computers & Operations Research, 36(6), 1982–1992.
Chiang, T.-C., Cheng, H.-C., & Fu, L.-C. (2010). A memetic algorithm for minimizing total weighted tardiness on parallel batch machines with incompatible job families and dynamic job arrival. Computers & Operations Research, 37(12), 2257–2269. Chou, F.-D., Chang, P.-C., & Wang, H.-M. (2006). A hybrid genetic algorithm to minimize makespan for the single batch machine dynamic scheduling problem. The International Journal of Advanced Manufacturing Technology, 31(3–4), 350–359. Chung, T.-P., & Liao, C.-J. (2013). An immunoglobulin-based artificial immune system for solving the hybrid flow shop problem. Applied Soft Computing, 13(8), 3729–3736. Costa, A., Cappadonna, F. A., & Fichera, S. (2013). A dual encoding-based metaheuristic algorithm for solving a constrained hybrid flow shop scheduling problem. Computers & Industrial Engineering, 64(4), 937–958. Costa, A., Cappadonna, F. A., & Fichera, S. (2014). A novel genetic algorithm for the hybrid flow shop scheduling with parallel batching and eligibility constraints. The International Journal of Advanced Manufacturing Technology, 75(5–8), 833–847. Damodaran, P., Rao, A. G., & Mestry, S. (2013). Particle swarm optimization for scheduling batch processing machines in a permutation flowshop. The International Journal of Advanced Manufacturing Technology, 64(5–8), 989–1000. Fu, Q., Sivakumar, A. I., & Li, K. (2012). Optimisation of flow-shop scheduling with batch processor and limited buffer. International Journal of Production Research, 50(8), 2267–2285. Gong, H., Tang, L., & Duin, C. (2010). A two-stage flow shop scheduling problem on a batching machine and a discrete machine with blocking and shared setup times. Computers & Operations Research, 37(5), 960–969. Hansen, P., & Mladenovic´, N. (2001). Variable neighborhood search: Principles and applications. European Journal of Operational Research, 130(3), 449–467. Kashan, A. H., Karimi, B., & Jenabi, M. (2008). A hybrid genetic heuristic for scheduling parallel batch processing machines with arbitrary job sizes. Computers & Operations Research, 35(4), 1084–1098. Lee, C.-Y. (1999). Minimizing makespan on a single batch processing machine with dynamic job arrivals. International Journal of Production Research, 37(1), 219–236. Li, D., Meng, X., Liang, Q., & Zhao, J. (2015). A heuristic-search genetic algorithm for multi-stage hybrid flow shop scheduling with single processing machines and batch processing machines. Journal of Intelligent Manufacturing, 26(5), 873–890. Liao, L.-M., & Huang, C.-J. (2011). Tabu search heuristic for two-machine flowshop with batch processing machines. Computers & Industrial Engineering, 60(3), 426–432. Liao, C.-J., Tseng, C.-T., & Luarn, P. (2007). A discrete version of particle swarm optimization for flowshop scheduling problems. Computers & Operations Research, 34(10), 3099–3111. Luo, H., Huang, G. Q., Zhang, Y., Dai, Q., & Chen, X. (2009). Two-stage hybrid batching flowshop scheduling with blocking and machine availability constraints using genetic algorithm. Robotics and Computer-Integrated Manufacturing, 25(6), 962–971. Malve, S., & Uzsoy, R. (2007). A genetic algorithm for minimizing maximum lateness on parallel identical batch processing machines with dynamic job arrivals and incompatible job families. Computers & Operations Research, 34(10), 3016–3028. Mathirajan, M., & Sivakumar, A. (2006). A literature review, classification and simple meta-analysis on scheduling of batch processors in semiconductor. The International Journal of Advanced Manufacturing Technology, 29(9–10), 990–1001. Oulamara, A. (2007). Makespan minimization in a no-wait flow shop problem with two batching machines. Computers & Operations Research, 34(4), 1033–1050. Pinedo, M. (2015). Scheduling. Springer. Su, L.-H. (2003). A hybrid two-stage flowshop with limited waiting time constraints. Computers & Industrial Engineering, 44(3), 409–424. Su, L.-H., & Chen, J. C. (2010). Sequencing two-stage flowshop with nonidentical job sizes. The International Journal of Advanced Manufacturing Technology, 47(1–4), 259–268. Xu, R., Chen, H., & Li, X. (2012). Makespan minimization on single batch-processing machine via ant colony optimization. Computers & Operations Research, 39(3), 582–593. Xuan, H., & Tang, L. (2007). Scheduling a hybrid flowshop with batch production at the last stage. Computers & Operations Research, 34(9), 2718–2733. Yao, F. S., Zhao, M., & Zhang, H. (2012). Two-stage hybrid flow shop scheduling with dynamic job arrivals. Computers & Operations Research, 39(7), 1701–1712.