Scheduling Optimization in Flowline Manufacturing Cell ...

21
mathematics Article Scheduling Optimization in Flowline Manufacturing Cell Considering Intercell Movement with Harmony Search Approach Zhuang Huang and Jianjun Yang * School of Mechanical Engineering and Automation, Beihang University, Beijing 100191, China; [email protected] * Correspondence: [email protected] Received: 16 November 2020; Accepted: 10 December 2020; Published: 14 December 2020 Abstract: Based on the non-permutation property of intercell scheduling in flowline manufacturing cells, a hybrid harmony search algorithm is proposed to solve the problem with the makespan criterion. On the basis of the basic harmony search algorithm, the three key elements of memory consideration, pitch adjustment and random selection are discretized and improved to adapt to the operation-based encoding. To compare the performance, dierent scale cases are generated in both the overall solution and the two-stage solution with the proposed algorithm, the hybrid particle swarm optimization algorithm and the hybrid genetic algorithm. The relative deviation is taken as the performance index. The compared results show that a better solution can be obtained with the proposed algorithm in both the overall solution and the two-stage solution, verifying the superior performance of the proposed algorithm. Keywords: non-permutation; flowline manufacturing cell; intercell scheduling; hybrid harmony search approach 1. Introduction Based on the important idea of management and manufacturing in group technology (GT), cell manufacturing (CM) mainly carries out cell production by grouping similar parts (tasks) and process equipment (machines). In each production cell, several part families are processed on the machines of the cell, and each manufacturing cell works together to form a cell manufacturing system (CMS) [1]. Each cell produces a series of specific products according to the part family. These part families are generally formed according to the processes, machines, tools, etc. In addition to reducing the cost of setup time, the main advantage of CMS is to simplify material flow. Moreover, the professional skills of operators are improved, repetitive work is reduced and production time is shortened, and reports show that material flow and production costs can be reduced. Flowline manufacturing cell scheduling is the application and scheduling of flow shop production mode in the cell manufacturing environment, that is, the task family of each production cell and the tasks within the family are processed through all machines of the cell according to a certain production technology, and a reasonable processing sequence is arranged to make one or some performance achieve the optimal. The common performance indicators include the minimum maximum completion time (makespan) [2], total tardiness [3] and mean flow time [4]. The realization of CMS is divided into three stages: cell formation, cell layout and cell scheduling. As the design stages of CMS, cell formation is to group jobs and machines, and cell layout solves the location layout problem of cells and production machines. As the production planning stage of Mathematics 2020, 8, 2225; doi:10.3390/math8122225 www.mdpi.com/journal/mathematics

Transcript of Scheduling Optimization in Flowline Manufacturing Cell ...

mathematics

Article

Scheduling Optimization in Flowline ManufacturingCell Considering Intercell Movement with HarmonySearch Approach

Zhuang Huang and Jianjun Yang *

School of Mechanical Engineering and Automation, Beihang University, Beijing 100191, China;[email protected]* Correspondence: [email protected]

Received: 16 November 2020; Accepted: 10 December 2020; Published: 14 December 2020 �����������������

Abstract: Based on the non-permutation property of intercell scheduling in flowline manufacturingcells, a hybrid harmony search algorithm is proposed to solve the problem with the makespancriterion. On the basis of the basic harmony search algorithm, the three key elements of memoryconsideration, pitch adjustment and random selection are discretized and improved to adapt to theoperation-based encoding. To compare the performance, different scale cases are generated in boththe overall solution and the two-stage solution with the proposed algorithm, the hybrid particleswarm optimization algorithm and the hybrid genetic algorithm. The relative deviation is taken asthe performance index. The compared results show that a better solution can be obtained with theproposed algorithm in both the overall solution and the two-stage solution, verifying the superiorperformance of the proposed algorithm.

Keywords: non-permutation; flowline manufacturing cell; intercell scheduling; hybrid harmonysearch approach

1. Introduction

Based on the important idea of management and manufacturing in group technology (GT),cell manufacturing (CM) mainly carries out cell production by grouping similar parts (tasks) andprocess equipment (machines). In each production cell, several part families are processed on themachines of the cell, and each manufacturing cell works together to form a cell manufacturingsystem (CMS) [1]. Each cell produces a series of specific products according to the part family.These part families are generally formed according to the processes, machines, tools, etc. In addition toreducing the cost of setup time, the main advantage of CMS is to simplify material flow. Moreover,the professional skills of operators are improved, repetitive work is reduced and production timeis shortened, and reports show that material flow and production costs can be reduced. Flowlinemanufacturing cell scheduling is the application and scheduling of flow shop production mode inthe cell manufacturing environment, that is, the task family of each production cell and the taskswithin the family are processed through all machines of the cell according to a certain productiontechnology, and a reasonable processing sequence is arranged to make one or some performanceachieve the optimal. The common performance indicators include the minimum maximum completiontime (makespan) [2], total tardiness [3] and mean flow time [4].

The realization of CMS is divided into three stages: cell formation, cell layout and cell scheduling.As the design stages of CMS, cell formation is to group jobs and machines, and cell layout solvesthe location layout problem of cells and production machines. As the production planning stage of

Mathematics 2020, 8, 2225; doi:10.3390/math8122225 www.mdpi.com/journal/mathematics

Mathematics 2020, 8, 2225 2 of 21

CMS, cell scheduling plays an important role, mainly deciding the scheduling problem of jobs intra-and intercells.

An important goal of cell manufacturing is to form independent cells. Unfortunately, in manyreal manufacturing systems, it is impossible for completely autonomous manufacturing cells toexist [5]. On the contrary, it is inevitable to process jobs across cells. The statistics of 32 companiesin the United States show that 25.8% to 34.3% of the operations need to be processed in foreigncells [6]. More than 50% of all processing routes need intercell transfers in the Chinese manufacturingindustry [7]. In these CMS, parts that need to be processed in multiple cells are known as exceptionalelements, while the machines that are used by the parts are called bottleneck machines. Besides the factthat exceptional elements may be a result of the cell formation process, there are also some other factors,such as painting and thermal processing, that have to be conducted by a single machine for partsfrom multiple cells, due to the low utilization rate of equipment, machine immobility, toxicity or highinvestment of processing process; thus, a separate equipment is needed for processing [8]. Moreover,exceptional elements are not only produced in the design and application of CMS, but also exist inthe whole process of CMS running. Changes in product design, function and production qualitycan gradually lead to specific parts being processed in machines located in different cells [9]. At theoperation level, the change of workload between cells, such as transferring operations to machineswith low utilization of foreign processing cells, can significantly improve workshop performance [10].Similarly, the transportation of intercells can reduce severe machine failures and prevent productiondefects [11].

Compared with the existing literature, the main contributions of this paper include three aspects:

1. The intercell scheduling problem is solved with non-permutation flow shop cells, aiming tominimize makespan.

2. A hybrid harmony search algorithm (HHS) is proposed. The three key elements ofmemory consideration, pitch adjustment and random selection are improved to adapt to theoperation-based encoding. Moreover, first in first out (FIFO) rules are integrated into the two-stagesolution to deal with the intercell scheduling problem.

3. Compare the performance of the two existing solutions of intercell scheduling, the global solutionand the two-stage solution.

The remainder part of this paper is organized as follows: Section 2 reviews the flowlinemanufacturing cell scheduling and harmony search algorithms. The problem is described in Section 3.Section 4 introduces the proposed improved harmony search algorithm. The analysis of the experimentalresults are reported in Section 5. Finally, Section 6 provides conclusions.

2. Literature Review

A flowline manufacturing cell is a common production layout in the manufacturing industry.The scheduling of flowline manufacturing cells has been studied by many scholars internationally.Neufeld et al. [12] summarized the flow shop group scheduling in detail. Baker [13] studied thetwo-machine flow shop, considering the time lags or sequence-independent setup time. Wemmerlovand Vakharia [14] developed two heuristic programs to solve the part family scheduling of flowlinemanufacturing cells with three or more machines. Skorin-Kapov and Vakharia [15] developed sixtabu search heuristics. And Sridhar and Rajendran [16] developed a genetic algorithm to minimizemakespan for the part scheduling in the flowline manufacturing cell. Logendran et al. [17] andSchaller [18] studied the performance comparison of some hybrid heuristic algorithms for schedulingin the flowline manufacturing cell. Reddy and Narendran [19] proposed a heuristic algorithm forscheduling with sequence-dependent setup time to improve the machine utilization in the flowlinemanufacturing cell. Logendran et al. [20] developed an LN-PT method to minimize the makespan forgroup scheduling in flexible flow shop, considering single and multiple setup times on the machine.Logendran et al. [21] proposed a tabu search algorithm to solve the group scheduling problem in

Mathematics 2020, 8, 2225 3 of 21

flexible flow shop considering sequence dependence. Gupta and Schaller [22] proposed a branchand bound algorithm, which can solve the medium scale problems of flowline manufacturing cellswith sequence-independent setup time. Hendizadeh et al. [23] proposed a tabu search meta heuristicalgorithm to minimize makespan. Venkataramanaian [24] developed a simulated annealing-basedalgorithm to solve three objectives (minimum weighted makespan, total flow time and idle time).Zandieh et al. [25] proposed three meta heuristics based on tabu search, simulated annealing andgenetic algorithm, and applied them to group scheduling problem with a sequence-dependent setuptime. Ying et al. [26] solved the permutation and non-permutation scheduling problems in flowlinemanufacturing cells considering sequence dependent family setup time. Salmasi et al. [27] proposeda mathematical programming model to minimize the total flow time to solve the group schedulingproblem in flow shop.

Although there are a lot of articles on cell formation and cell scheduling, few studies considerthe intercell scheduling problem. In theory, the bottleneck can be eliminated by configuring multiplebottleneck machines (which can be moved among cells), or the exceptional tasks (which need tobe processed by other cells) can be outsourced. However, neither kind of measure, based on theconsideration of manufacturing cost, budget and manufacturing cell space constraints, is realistic.Therefore, in a typical CMS environment, it is very difficult to form independent manufacturing cells.There will always be some bottleneck machines or exceptional tasks that will cause the existence ofintercells, so intercell scheduling is inevitable. Yang and Liao [28] studied the group scheduling ontwo cells with intercell movement, and used branch and bound algorithm and heuristic algorithm tominimize the average flow time. However, this method is limited to two cells, and each part has onlyone operation. Therefore, Solimanpur et al. [29] proposed a two-stage heuristic algorithm SVS to solvethe cell scheduling problem with intercell characteristics. Tavakkoli-Moghaddam et al. [30] consideredthe multi criteria cost function and the sequence dependent setup time, using the discrete searchmethod to sort the cells and the jobs in the cell simultaneously. Mosbah and Dao [31] proposed anExtended Great Deluge (EGD) method to minimize makespan and a multi-criteria objective function.Solimanpur and Elmi [32] proposed a mixed integer linear programming model for the cell schedulingproblem with the goal of minimizing makespan, which was solved by the tabu search algorithm.Neufeld [33] solved the intercell scheduling problem in flowline manufacturing cells, consideringmaterial flow and non-permutation scheduling. Li et al. [34] presented a pheromone-based approach(PBA), using multi-agent, aiming to solve the problem of scheduling with flexible processing routes,and exceptional parts, which need to visit machines located in multiple job shop cells.

Harmony search (HS) is a new intelligent optimization algorithm. By repeatedly adjustingthe solution variables in the memory, the function value converges with the increase of iterations.The algorithm has the advantages of being a simple concept, having fewer adjustable parameters andbeing easy to implement. Compared with the basic genetic algorithm (GA), HS has two advantages:one advantage is to make full use of the existing harmony information in the harmony memory,though information on only two parents is used in GA; the other advantage is that HS considerseach piece of individual information separately, but GA can only design the whole structure ofone individual.

The simulated annealing algorithm is similar to the simulation of physical annealing, the geneticalgorithm is similar to the simulation of biological evolution, and the particle swarm optimizationalgorithm is similar to the simulation of bird swarm, while the HS algorithm simulates the principle ofmusic performance. The HS algorithm is a meta heuristic algorithm proposed by GEEM [35]. It is apopulation-based metaheuristic algorithm. It is inspired by the music creation process. The purposeof the HS algorithm is to let each music player find a better harmony state. Because of its simplicityand ease of application, HS has been successfully used to deal with a large number of optimizationproblems [36–47].

HS is also successfully used to solve the production scheduling problem. For the just in time (JIT)constrained single machine earliness/tardiness scheduling problem, Liu and Zhou [48] proposed a

Mathematics 2020, 8, 2225 4 of 21

hybrid harmony search algorithm to minimize the total earliness/tardiness penalty. Zammori et al. [49]considered more realistic factors in single machine scheduling, proposing a two-stage solution: in thefirst stage, the optimal repair times were calculated to maximize the availability of the machine; in thesecond stage, an improved HS algorithm was used to obtain the approximate optimal maintenancesequence. Zhao et al. [50] proposed a hybrid harmony search algorithm with efficient job schedulingstrategy for permutation of the flow shop scheduling problem. Li et al. [51] proposed a hybrid HSalgorithm to solve the multi-objective flow shop scheduling problem. To minimize the total flowtime, Gao et al. [52] proposed a discrete harmony search algorithm to solve the no-wait flow shopscheduling problem. Yuan et al. [53] applied the HS algorithm to solve the FJSP problem with the goalof minimizing makespan. Maroosi et al. [54] proposed a parallel and distributed HS framework basedon the membrane system to solve the FJSP problem. Gao et al. [55] proposed a Pareto-based groupingHS algorithm to solve the FJSP problem, aiming to minimize makespan and earliness/tardiness penalty.

According to the above review, it can be found that, firstly, there are two solutions to the intercellproblem: one is to decompose it into two subproblems, represented by Zeng et al. [56], and the other isbased on the literature [57] to solve the problem as a whole; however, no one has ever compared theperformance of the two solutions. Secondly, although there are many papers about the harmony searchalgorithm solving production scheduling, few scholars use it to solve intercell scheduling. Thirdly,when harmony search is used to solve discrete production scheduling, it is necessary to discretize theharmony search process; in this process, traditional and efficient encoding methods, such as operationencoding-based methods, simple and effective heuristic rules are rarely used. Therefore, this paperwill solve the flowline manufacturing cell considering intercell move based on the above three aspects.

3. Problem Statement and Formulation

Flow shop is a common form of production layout in manufacturing industry. It can be describedas: each job in the job set J = {1,j, . . . ,N} has the corresponding route, and is processed in turn by themachines in the machine set E = {1,m, . . . M}. The aim of scheduling function is to find the optimal pathfor the job to pass through each machine. It is called a permutation flow shop scheduling (PFS) problemwhen n jobs are processed in the same order on m machines. It is called a non-permutation flow shopscheduling (NPFS) problem when n jobs are processed in a different order on m machines. Due tothe complexity of non-permutation scheduling problems, most studies about flow shop schedulingproblems only considered permutation flow shop scheduling. However, permutation scheduling isnot suitable for the cell scheduling problem. One of the reasons is the existence of intercell processes,which makes the job transport between different cells belong to the cell set C = {1,k, . . . K}, with as aresult that the processing sequence of jobs on each machine cannot be exactly the same. The otherreason is that the intercell machine can only process a part of one job in the job set, which is incompatiblewith the characteristics of the permutation scheduling problem. Therefore, this paper will focus on theflowline manufacturing cell with non-permutation scheduling characteristics. In order to facilitate thedescription of the problem, the following indexes are used.

This paper takes aim at minimizing makespan of a flowline manufacturing cell system.The objective function is shown in formula (1):

Min max(Cji), (1)

There are some related constraints in the practical intercell production scheduling problem.The specific mathematical expression is as follows:

x j′i′m′ − (x jim + P jim) ≥ (1− zmm′)t jkk′ ,∀ j, i, m, k, (2)

where j’ and j all belong to the job set J, i’ and i, are attached to corresponding jobs j’ and j, respectivelyand m and m’ stand for different machines, belonging to machine set E. Formula (2) ensures that further

Mathematics 2020, 8, 2225 5 of 21

processing can be done when the previous process is finished and the corresponding job has been sentto the corresponding cell.

x jimy jit

N∑j′=1

O j∑i′=1

t+P jim∑t′=t

x j′i′my j′i′t′ = 0,∀ j, i, t, m, (3)

where, as explained in Table 1, the variable t in yjit stands for the start time of operation oji, and themeaning of t’ is the same as t, but the range of t’ is [t, t + Pjim]. The meaning of other variables is thesame as in Formula (2). Formula (3) ensures that the same machine can only process one operation at atime.

Table 1. Indices of variables used in problem statement and formulation.

Variables Meanings

J job setE machine setC cell setM number of machinesN number of partsK number of cellsm the index for machines m = 1, . . . Mj the index for jobs j = 1, . . . ,Nk the index for cells k = 1, . . . Ki the sequence number of operations

oji the index for operations oji = 1, . . . OjOj total operation number of jobs

Pjim the processing time of operation oji on machine mtjkk’ the transportation time of job j from cell k to k’Cji the completion time of operation ojixjim = 1, if operation oji is required processing on machine m; 0, otherwiseyjit = 1, if the start time of oji is t; 0, otherwise

zmm’ = 1, if the equipment m and m’ is in the same cell; 0, otherwiseRD relative deviationBi the value gained by each algorithm for each problemB the best solution found by all algorithms

4. The Improved Harmony Search Algorithm

4.1. An Overview of the Harmony Search Algorithm

Each solution in the HS algorithm can be called a harmony and can be expressed by a harmonyvector. The initial solution of the harmony vector is generated randomly and stored in harmonymemory. Then, a new candidate harmony is generated in these existed harmony vectors through threerules, including memory consideration, pitch adjustment and random selection. After that, the valueof the new candidate solution is compared with that of the worst solution in HM. Subsequently,it is determined whether the memory is updated or not with the compared result. In other words,the memory will be updated when the value of the new candidate solution is better than that of theworst solution in HM. The above optimization process is repeated until meeting a specific terminationcondition. The procedure of the basic HS algorithm is shown in Algorithm 1.

HS is a very simple real-code optimization algorithm that can be easily used to solve continuousand discrete optimization problems [58].

Initialization is executed in step (3). The harmony vector is generally represented as ann-dimension real-valued vector, where each dimension denotes a decision variable of the optimizationproblem considered.

Step (4) focuses on improvising a new harmony, which contains the following three rules:

Mathematics 2020, 8, 2225 6 of 21

(1) As shown in step (6) and (7), if r1 < HMCR(Harmony Memory Consideration Rate), the variablein Xnew is selected from the harmony memory by selecting a row randomly.

(2) As shown in steps (8)–(10), if r2 < PAR, the more precise solution will be explored by fine-tuningto find the potential optimal solution.

(3) As shown in step (12), a random variable will be generated within the range.Step (15) is about updating the HM. The memory will be updated when the value of the new

candidate solution is better than that of the worst solution in HM.Steps (4)–(15) are repeated until the termination condition is met.In order to solve the intercell scheduling problem, the basic HS algorithm needs to be improved.

The flow chart of the HHS algorithm is shown in Figure 1. To verify the proposed algorithm, it is appliedto both the overall solution and the two-stage solution. Hereafter, the experiments are developedand compared. Thus, the improved harmony search algorithm will be introduced thoroughly inSections 4.2 and 4.3, from both solution as a whole and two-stage. The improved HS algorithm isachieved with five main steps as follows.

Algorithm 1. The procedure of the basic HS algorithm.

(1). Begin(2). Set the parameters HMS, HMCR, PAR, BW, NI.(3). Initialize the HM and calculate the objective function value of each harmony vector.(4). Improvise a new harmony Xnew as follows:(5). for(v = 1 to n)do(6). If(r1 < HMCR)then(7). Xnew(v) = Xrow(v),where row∈(1, 2, . . . , HMS)(8). If(r2 < PAR)then(9). Xnew(v) = Xnew(v) ± r3 × BW, where r1,r2,r3∈(0,1)(10). endif(11). else(12). Xnew(v) = LBv + r × (UBv − LBv), where r∈(0,1)(13). endif(14). endfor(15). Update the HM as Xw = Xnew, if f(Xnew) < f(Xw)(16). If NI is completed, return the best harmony vector XB in the HM; otherwise, go back to step (4)

Where HMS, HMCR, PAR, BW and NI stand for the Harmony Memory Size, Harmony MemoryConsideration Rate, Pitch Adjustment Rate, Bandwidth of Pitch Adjustment and Number of Iterations,respectively. v is the variable symbol and n is the number of the variable. UBv and LBv representthe upper limit and lower limit of variable v, respectively. The r1, r2, r3 and r are random numbersgenerated between (0,1). Xrow stands for the harmony vector randomly selected from the harmonymemory. Xnew, Xw and XB stand for the new, the worst and the best harmony vector, respectively.

Mathematics 2020, 8, 2225 7 of 21

Mathematics 2020, 8, x FOR PEER REVIEW 7 of 21

Initializing parameters and harmony memory

r1<HMCR

Variables are generated randomly within the

scope of the job

Is the new solution f(Xnew) better than the worst f(Xw) in HM

Update harmony memory

Whether the termination conditions are met

Output result (decode)

NoYes

Yes

No

Select a job from a row in HM randomly

Are all variables generated

Yes

No

adjusted with BW under the condition r2<PAR

Yes

No

No

Figure 1. Flow chart of the HHS.

Step 1. Initialization of each parameter.

HMS: Harmony Memory Size, the size of harmony memory.

HMCR: Harmony Memory Consideration Rate, the probability of taking a harmony from the

existing harmony memory.

PAR: Pitch Adjustment Rate, the probability of fine tuning for the harmony selected.

BW: Tone fine tuning bandwidth, the magnitude of the pitch adjustment.

NI: number of iterations.

Step 2. Initialization of the harmony memory.

From the solution space of X, the number of HMS harmony (understood as population) is

randomly generated on the basis of the operation-based encoding and put into harmony memory,

and the corresponding fitness value f(x) is recorded.

Step 3. Create a new harmony.

Basic HS is designed for continuous function at first, a harmony variable is generated randomly

according to step (9) and step (12) in Table 2. However, this is not suitable for discrete problems.

According to the scheduling problem, a new strategy is proposed in this paper.

A random number r1 is generated between (0,1) and compared with HMCR. If r1 < HMCR, a

harmony variable is selected from the harmony memory, namely, a job j is randomly selected from

the job range [1, N] and this position is the same as it is in the harmony memory. Otherwise, a

harmony variable is generated randomly, that is to say, a job number j is selected randomly from the

job range [1, N], which is not in Xnew, and then put in the blank position.

If the harmony variable is obtained from the harmony memory, it is necessary to judge whether

to pitch adjust or not. A random number r2 is generated between (0,1). If r2 < PAR, a new harmony

variable can be obtained by pitch adjustment with BW; namely, when the random number r2 is less

than 0.5, all operations are moved to the right by one bit. Otherwise, all operations are shifted to the

left by one bit.

Step 4. Update harmony memory.

Evaluating Xnew, that is, f(Xnew). If it is better than f(Xw), which is the worst function value in HM,

Xnew is used to replace the harmony XW in HM.

Step 5. Checking whether the algorithm meets the termination condition.

Repeat step 3 and step 4 until the number of creations (iterations) reaches NI.

Figure 1. Flow chart of the HHS.

Step 1. Initialization of each parameter.HMS: Harmony Memory Size, the size of harmony memory.HMCR: Harmony Memory Consideration Rate, the probability of taking a harmony from the

existing harmony memory.PAR: Pitch Adjustment Rate, the probability of fine tuning for the harmony selected.BW: Tone fine tuning bandwidth, the magnitude of the pitch adjustment.NI: number of iterations.Step 2. Initialization of the harmony memory.From the solution space of X, the number of HMS harmony (understood as population) is randomly

generated on the basis of the operation-based encoding and put into harmony memory, and thecorresponding fitness value f(x) is recorded.

Step 3. Create a new harmony.Basic HS is designed for continuous function at first, a harmony variable is generated randomly

according to step (9) and step (12) in Algorithm 1. However, this is not suitable for discrete problems.According to the scheduling problem, a new strategy is proposed in this paper.

A random number r1 is generated between (0,1) and compared with HMCR. If r1 < HMCR,a harmony variable is selected from the harmony memory, namely, a job j is randomly selected fromthe job range [1, N] and this position is the same as it is in the harmony memory. Otherwise, a harmonyvariable is generated randomly, that is to say, a job number j is selected randomly from the job range[1, N], which is not in Xnew, and then put in the blank position.

If the harmony variable is obtained from the harmony memory, it is necessary to judge whetherto pitch adjust or not. A random number r2 is generated between (0,1). If r2 < PAR, a new harmonyvariable can be obtained by pitch adjustment with BW; namely, when the random number r2 is lessthan 0.5, all operations are moved to the right by one bit. Otherwise, all operations are shifted to theleft by one bit.

Step 4. Update harmony memory.Evaluating Xnew, that is, f(Xnew). If it is better than f(Xw), which is the worst function value in HM,

Xnew is used to replace the harmony XW in HM.Step 5. Checking whether the algorithm meets the termination condition.Repeat step 3 and step 4 until the number of creations (iterations) reaches NI.

Mathematics 2020, 8, 2225 8 of 21

4.2. Solve As a Whole

(1) Initialization

(1) Parameter initialization. HMS = 30, HMCR = 0.9, PAR = 0.2 (for parameter settings, please referto the calibration experiment in Section 5.2).

(2) The harmony memory initialization. The NEH method proposed by Nawaz et al. [59] is one ofthe most effective heuristic methods to solve the flow shop scheduling problem. NEH method has twomain steps. First, the operations are arranged in descending order according to their processing time.Second, the operation sequence is determined by evaluating the scheduling performance according tothe initial sequence of the first step. Assuming that the processing sequence of the first k operation hasbeen determined, the sequence of the k+1 operation is inserted into the k+1 intervals in the currentsequence, in which the sequence with the optimal scheduling result is retained as the current sequenceand enters the next generation. Repeat this step for the remaining operations until all processes havebeen arranged.

(2) Encoding and Decoding

Operation-based encoding has been widely used in the literature to solve the production schedulingproblem; each arrangement is a feasible solution, and it is easy to decode to reduce the complexity ofthe algorithm. Therefore, this paper adopts this method as the expression of the solution.

(3) The structure and adjustment of the new solution

In order to illustrate the solving process, a simple example is given.As shown in Table 2, the case contains three cells, which are represented by three different color

wireframes, namely green, blue and purple. There are 10 jobs, P1–P10, and 6 machines, M1-M6.Each job and each machine belongs to a specific unit. The process route row stands for the processingsequence of each job. For example, the process route of P1 is 1, 4 and 2, which means that P1 will beprocessed by the machine 1, 4 and 2 in turn. The last row stands for the cell number to which thecorresponding job belongs. The last column represents the cell number to which the correspondingmachine belongs. Namely, the jobs P1, P2 and P3 and machines M1 and M2 belong to cell 1, the jobsP4, P5 and P6 and machines M3 and M4 belong to cell 2, the jobs P7, P8, P9 and P10 and machines M5and M6 belong to cell 3. Each cell contains a part, which has certain operation needs to be processedby the intercell, as shown in red font in Table 2. For example, the second process of P1 needs to beprocessed on machine 4 of foreign cell 2, and then returned to cell 1 for processing on machine 2;the first process of P5 needs to be processed on machine 2 of foreign cell 1; the last operation of P9needs to be processed on machine 4 of foreign cell 2 after the completion of the first two operations.

Table 2. A sample example.

MachinesJobs Cell of

MachineP1 P2 P3 P4 P5 P6 P7 P8 P9 P10

M1 7 3 10 1

M2 7 7 2 8 1

M3 9 3 7 2

M4 3 9 5 1 3 2

M5 10 8 4 4 3

M6 9 2 5 6 3

process route 1,4,2 1,2 1,2 3,4 2,3,4 3,4 5,6 5,6 5,6,4 5,6

cell of job 1 1 1 2 2 2 3 3 3 3

The unit of processing time of the jobs is second.

Mathematics 2020, 8, 2225 9 of 21

Because operation-based encoding is used in the algorithm, the method of generating a newharmony in basic HS is not suitable to generate a feasible solution. Therefore, we propose a newgeneration method to modify the original three rules, as shown in Figure 2.

Mathematics 2020, 8, x FOR PEER REVIEW 9 of 21

Because operation-based encoding is used in the algorithm, the method of generating a new

harmony in basic HS is not suitable to generate a feasible solution. Therefore, we propose a new

generation method to modify the original three rules, as shown in Figure 2.

1 2 1 3 2 3 3

2 3 2 3 1 3 1

3 2 3 2 3 1 1

. . .

. . .

Memory Consideration

Pitch adjustment

2 3 2 3 1 3 1

Randomly select job j

1 1

Keep the original position

r2<0.5(PAR)Cycle to the right by BW

1 1

r1<HMCR

r1 HMCRrandom selection

1 3 3 1 3

Repeat the three steps above

1 2 3 2 3 1 3

1 2 1 3 2 3 3

Memory Consideration

Operation based encoding

Figure 2. Three modified rules.

• Memory consideration: when the random number r1 is less than HMCR, a line Xrow is randomly

selected from the memory, and a job j is randomly selected from the job range [1, N]. The job j

in Xrow is placed in the same position index in Xnew. If there are operations on this position,

randomly select the idle position in the remaining position.

• Pitch adjustment: when the random number r2 is less than PAR, the existing elements in Xnew are

adjusted by a cyclic shift. When the random number is less than 0.5, all operations are moved to

the right by one bit. When the random number is greater than 0.5, all operations are shifted to

the left by one bit. The number of bits moved is the parameter BW.

• Random selection: a part number j is selected randomly from the part range [1, N]. If it is not in

Xnew, the blank positions are selected randomly and put in the number of operations in the same

quantity.

(4) Update harmony memory

Take makespan as objective function value to calculate fitness, if the new harmony vector Xnew

scheduling result is better than the worst Xw in the current harmony memory, then Xnew will replace

the harmony Xw in HM.

(5) Inspection termination criteria

Check whether the termination criteria are met. If not, repeat steps (3) and (4) until the maximum

number of iterations is reached.

The final scheduling Gantt chart based on Table 3 is shown in Figure 3. The values inside the

rectangle in all the following Gantt charts stand for the operations of the jobs. For example, the

number 102 represents the second operation of the first job. In addition, different jobs are represented

with different colors, while different operations of the same job are represented with the same color.

The upper numbers on both sides of rectangle represent the start and end time of the operation. The

red wireframe stands for the position of the intercell operation.

Figure 3. The Gantt chart of the HHS algorithm for the overall solution.

Figure 2. Three modified rules.

• Memory consideration: when the random number r1 is less than HMCR, a line Xrow is randomlyselected from the memory, and a job j is randomly selected from the job range [1, N]. The jobj in Xrow is placed in the same position index in Xnew. If there are operations on this position,randomly select the idle position in the remaining position.

• Pitch adjustment: when the random number r2 is less than PAR, the existing elements in Xnew areadjusted by a cyclic shift. When the random number is less than 0.5, all operations are moved tothe right by one bit. When the random number is greater than 0.5, all operations are shifted to theleft by one bit. The number of bits moved is the parameter BW.

• Random selection: a part number j is selected randomly from the part range [1, N]. If it is notin Xnew, the blank positions are selected randomly and put in the number of operations in thesame quantity.

(4) Update harmony memory

Take makespan as objective function value to calculate fitness, if the new harmony vector Xnew

scheduling result is better than the worst Xw in the current harmony memory, then Xnew will replacethe harmony Xw in HM.

(5) Inspection termination criteria

Check whether the termination criteria are met. If not, repeat steps (3) and (4) until the maximumnumber of iterations is reached.

The final scheduling Gantt chart based on Table 2 is shown in Figure 3. The values inside therectangle in all the following Gantt charts stand for the operations of the jobs. For example, the number102 represents the second operation of the first job. In addition, different jobs are represented withdifferent colors, while different operations of the same job are represented with the same color.The upper numbers on both sides of rectangle represent the start and end time of the operation. The redwireframe stands for the position of the intercell operation.

Mathematics 2020, 8, x FOR PEER REVIEW 9 of 21

Because operation-based encoding is used in the algorithm, the method of generating a new

harmony in basic HS is not suitable to generate a feasible solution. Therefore, we propose a new

generation method to modify the original three rules, as shown in Figure 2.

1 2 1 3 2 3 3

2 3 2 3 1 3 1

3 2 3 2 3 1 1

. . .

. . .

Memory Consideration

Pitch adjustment

2 3 2 3 1 3 1

Randomly select job j

1 1

Keep the original position

r2<0.5(PAR)Cycle to the right by BW

1 1

r1<HMCR

r1 HMCRrandom selection

1 3 3 1 3

Repeat the three steps above

1 2 3 2 3 1 3

1 2 1 3 2 3 3

Memory Consideration

Operation based encoding

Figure 2. Three modified rules.

• Memory consideration: when the random number r1 is less than HMCR, a line Xrow is randomly

selected from the memory, and a job j is randomly selected from the job range [1, N]. The job j

in Xrow is placed in the same position index in Xnew. If there are operations on this position,

randomly select the idle position in the remaining position.

• Pitch adjustment: when the random number r2 is less than PAR, the existing elements in Xnew are

adjusted by a cyclic shift. When the random number is less than 0.5, all operations are moved to

the right by one bit. When the random number is greater than 0.5, all operations are shifted to

the left by one bit. The number of bits moved is the parameter BW.

• Random selection: a part number j is selected randomly from the part range [1, N]. If it is not in

Xnew, the blank positions are selected randomly and put in the number of operations in the same

quantity.

(4) Update harmony memory

Take makespan as objective function value to calculate fitness, if the new harmony vector Xnew

scheduling result is better than the worst Xw in the current harmony memory, then Xnew will replace

the harmony Xw in HM.

(5) Inspection termination criteria

Check whether the termination criteria are met. If not, repeat steps (3) and (4) until the maximum

number of iterations is reached.

The final scheduling Gantt chart based on Table 3 is shown in Figure 3. The values inside the

rectangle in all the following Gantt charts stand for the operations of the jobs. For example, the

number 102 represents the second operation of the first job. In addition, different jobs are represented

with different colors, while different operations of the same job are represented with the same color.

The upper numbers on both sides of rectangle represent the start and end time of the operation. The

red wireframe stands for the position of the intercell operation.

Figure 3. The Gantt chart of the HHS algorithm for the overall solution. Figure 3. The Gantt chart of the HHS algorithm for the overall solution.

Mathematics 2020, 8, 2225 10 of 21

4.3. Two-Stage Solution

According to Zeng et al., the problem is divided into two sub-problems, intracell schedulingand intercell scheduling. The so-called intracell scheduling means that the jobs in other cells are notconsidered except for the jobs in the current cell, while the machines in other cells are available. In thissub-problem, the scheduling among cells is independent of each other. Then, the intercell schedulingis carried out according to the result of each cell obtained from the intracell scheduling, which mainlysolves the processing conflict problem between different cell jobs on the same machine at the same time.

(1) Encoding and initialization

Taking cells as interval, the operations in each cell are encoded according to the coding principlebased on the operation as shown in Figure 4, and the way of initialization refers to the NEH methodin the overall solution. In order to better compare the performance of the two methods, the sameparameter settings are used as in the overall solution.

Mathematics 2020, 8, x FOR PEER REVIEW 10 of 21

4.3. Two-Stage Solution

According to Zeng et al., the problem is divided into two sub-problems, intracell scheduling and

intercell scheduling. The so-called intracell scheduling means that the jobs in other cells are not

considered except for the jobs in the current cell, while the machines in other cells are available. In

this sub-problem, the scheduling among cells is independent of each other. Then, the intercell

scheduling is carried out according to the result of each cell obtained from the intracell scheduling,

which mainly solves the processing conflict problem between different cell jobs on the same machine

at the same time.

(1) Encoding and initialization

Taking cells as interval, the operations in each cell are encoded according to the coding principle

based on the operation as shown in Figure 4, and the way of initialization refers to the NEH method

in the overall solution. In order to better compare the performance of the two methods, the same

parameter settings are used as in the overall solution.

{(1,2,1,3,2,3,1)(4,5,6,4,6,5,5)(7,9,10,8,9,8,10,7,9)}

Cell1 Cell2 Cell3

Figure 4. Operation-based encoding in each cell.

(2) The construction and adjustment of the new solution

This part is the same as that in Section 4.2. The new solution can obtain the target value through

intracell and intercell scheduling.

(3) Intracell scheduling

According to the new obtained solution, intracell scheduling is carried out. For the above case,

the scheduling result of each cell is shown in the Figures 5–7, respectively.

Figure 5. Intracell scheduling in cell 1.

Figure 6. Intracell scheduling in cell 2.

Figure 4. Operation-based encoding in each cell.

(2) The construction and adjustment of the new solution

This part is the same as that in Section 4.2. The new solution can obtain the target value throughintracell and intercell scheduling.

(3) Intracell scheduling

According to the new obtained solution, intracell scheduling is carried out. For the above case,the scheduling result of each cell is shown in the Figures 5–7, respectively.

Mathematics 2020, 8, x FOR PEER REVIEW 10 of 21

4.3. Two-Stage Solution

According to Zeng et al., the problem is divided into two sub-problems, intracell scheduling and

intercell scheduling. The so-called intracell scheduling means that the jobs in other cells are not

considered except for the jobs in the current cell, while the machines in other cells are available. In

this sub-problem, the scheduling among cells is independent of each other. Then, the intercell

scheduling is carried out according to the result of each cell obtained from the intracell scheduling,

which mainly solves the processing conflict problem between different cell jobs on the same machine

at the same time.

(1) Encoding and initialization

Taking cells as interval, the operations in each cell are encoded according to the coding principle

based on the operation as shown in Figure 4, and the way of initialization refers to the NEH method

in the overall solution. In order to better compare the performance of the two methods, the same

parameter settings are used as in the overall solution.

{(1,2,1,3,2,3,1)(4,5,6,4,6,5,5)(7,9,10,8,9,8,10,7,9)}

Cell1 Cell2 Cell3

Figure 4. Operation-based encoding in each cell.

(2) The construction and adjustment of the new solution

This part is the same as that in Section 4.2. The new solution can obtain the target value through

intracell and intercell scheduling.

(3) Intracell scheduling

According to the new obtained solution, intracell scheduling is carried out. For the above case,

the scheduling result of each cell is shown in the Figures 5–7, respectively.

Figure 5. Intracell scheduling in cell 1.

Figure 6. Intracell scheduling in cell 2.

Figure 5. Intracell scheduling in cell 1.

Mathematics 2020, 8, x FOR PEER REVIEW 10 of 21

4.3. Two-Stage Solution

According to Zeng et al., the problem is divided into two sub-problems, intracell scheduling and

intercell scheduling. The so-called intracell scheduling means that the jobs in other cells are not

considered except for the jobs in the current cell, while the machines in other cells are available. In

this sub-problem, the scheduling among cells is independent of each other. Then, the intercell

scheduling is carried out according to the result of each cell obtained from the intracell scheduling,

which mainly solves the processing conflict problem between different cell jobs on the same machine

at the same time.

(1) Encoding and initialization

Taking cells as interval, the operations in each cell are encoded according to the coding principle

based on the operation as shown in Figure 4, and the way of initialization refers to the NEH method

in the overall solution. In order to better compare the performance of the two methods, the same

parameter settings are used as in the overall solution.

{(1,2,1,3,2,3,1)(4,5,6,4,6,5,5)(7,9,10,8,9,8,10,7,9)}

Cell1 Cell2 Cell3

Figure 4. Operation-based encoding in each cell.

(2) The construction and adjustment of the new solution

This part is the same as that in Section 4.2. The new solution can obtain the target value through

intracell and intercell scheduling.

(3) Intracell scheduling

According to the new obtained solution, intracell scheduling is carried out. For the above case,

the scheduling result of each cell is shown in the Figures 5–7, respectively.

Figure 5. Intracell scheduling in cell 1.

Figure 6. Intracell scheduling in cell 2. Figure 6. Intracell scheduling in cell 2.

Mathematics 2020, 8, 2225 11 of 21Mathematics 2020, 8, x FOR PEER REVIEW 11 of 21

Figure 7. Intracell scheduling in cell 3.

(4) Intercell scheduling

After the intracell scheduling of each cell, the processing sequence on each device can be

obtained. The core problem of intercell scheduling is to solve the processing sequence of different

jobs on the same equipment, especially to solve the conflict between the intercell operation and the

operation in the current cell.

When there are conflicts, the heuristic rule is one of the common solutions. There are many kinds

of heuristic rules. In this paper, the common first in first out (FIFO) rule is used to deal with the

conflict between intercell operation and the operation in current cell. The FIFO rule is described in

Figure 8, which is a description of the intercell operation processed afterward (a) and before (b)

current cell operation.

S E

S E

S E

S E S E

S E

(a) (b)

Figure 8. The first in first out (FIFO) rule. (a) Description of intercell operation processed afterward

current cell operation; (b) Description of intercell operation is processed forward current cell

operation. Here, represents intercell job, denoted by jintercell, means current cell job,

denoted by jintracell, S is the start processing time of the job in the result of intracell scheduling and E

denotes the end time of job processing in the result of intracell scheduling.

Sintracell and Eintracell represent the start and end time of the job of intracell, respectively. Sintercell and

Eintercell are the start and end time of the job of intercell, respectively.

As shown in the Figure 8a, when Sintercell ≥ Sintracell and Eintracell > Sintercell or Sintercell ≥ Sintracell and Eintracell ≥

Eintercell, the operation in current cell is processed first. In this case, intercell operation jintercell is processed

after jintracell, the affected subsequent operation of jintercell, and in turn, jintracell needs to move back.

As shown in the Figure 8b, when Eintracell ≥ Eintercell and Eintercell > Sintracell or Sintracell > Sintercell and Eintercell

> Eintracell, the intercell operation is processed first. In this case, operation jintracell is processed after jintercell,

the affected subsequent operation need to move back in turn.

It can be seen from Figures 5 and 6 that there is a conflict between operation 102 and operation

402 on the same machine. According to FIFO rule, operation 102 is processed after operation 402, the

result of which is shown in Figure 9. Operations 602 and 503 move backwards by the same distance

in the sequence, as shown in Figure 10, and the moving distance is represented by black wire frame.

Similarly, it can be seen from Figures 5 and 6 that there is a conflict between operation 202 and

intercell operation 501 on the same machine. According to the FIFO rule, operation 202 should be

moved to the appropriate position, as shown in Figure 11. For each cell, the process of searching for

conflicts is repeated several times until no new conflicts occur.

Figure 7. Intracell scheduling in cell 3.

(4) Intercell scheduling

After the intracell scheduling of each cell, the processing sequence on each device can be obtained.The core problem of intercell scheduling is to solve the processing sequence of different jobs on thesame equipment, especially to solve the conflict between the intercell operation and the operation inthe current cell.

When there are conflicts, the heuristic rule is one of the common solutions. There are many kindsof heuristic rules. In this paper, the common first in first out (FIFO) rule is used to deal with theconflict between intercell operation and the operation in current cell. The FIFO rule is described inFigure 8, which is a description of the intercell operation processed afterward (a) and before (b) currentcell operation.

Mathematics 2020, 8, x FOR PEER REVIEW 11 of 21

Figure 7. Intracell scheduling in cell 3.

(4) Intercell scheduling

After the intracell scheduling of each cell, the processing sequence on each device can be

obtained. The core problem of intercell scheduling is to solve the processing sequence of different

jobs on the same equipment, especially to solve the conflict between the intercell operation and the

operation in the current cell.

When there are conflicts, the heuristic rule is one of the common solutions. There are many kinds

of heuristic rules. In this paper, the common first in first out (FIFO) rule is used to deal with the

conflict between intercell operation and the operation in current cell. The FIFO rule is described in

Figure 8, which is a description of the intercell operation processed afterward (a) and before (b)

current cell operation.

S E

S E

S E

S E S E

S E

(a) (b)

Figure 8. The first in first out (FIFO) rule. (a) Description of intercell operation processed afterward

current cell operation; (b) Description of intercell operation is processed forward current cell

operation. Here, represents intercell job, denoted by jintercell, means current cell job,

denoted by jintracell, S is the start processing time of the job in the result of intracell scheduling and E

denotes the end time of job processing in the result of intracell scheduling.

Sintracell and Eintracell represent the start and end time of the job of intracell, respectively. Sintercell and

Eintercell are the start and end time of the job of intercell, respectively.

As shown in the Figure 8a, when Sintercell ≥ Sintracell and Eintracell > Sintercell or Sintercell ≥ Sintracell and Eintracell ≥

Eintercell, the operation in current cell is processed first. In this case, intercell operation jintercell is processed

after jintracell, the affected subsequent operation of jintercell, and in turn, jintracell needs to move back.

As shown in the Figure 8b, when Eintracell ≥ Eintercell and Eintercell > Sintracell or Sintracell > Sintercell and Eintercell

> Eintracell, the intercell operation is processed first. In this case, operation jintracell is processed after jintercell,

the affected subsequent operation need to move back in turn.

It can be seen from Figures 5 and 6 that there is a conflict between operation 102 and operation

402 on the same machine. According to FIFO rule, operation 102 is processed after operation 402, the

result of which is shown in Figure 9. Operations 602 and 503 move backwards by the same distance

in the sequence, as shown in Figure 10, and the moving distance is represented by black wire frame.

Similarly, it can be seen from Figures 5 and 6 that there is a conflict between operation 202 and

intercell operation 501 on the same machine. According to the FIFO rule, operation 202 should be

moved to the appropriate position, as shown in Figure 11. For each cell, the process of searching for

conflicts is repeated several times until no new conflicts occur.

Figure 8. The first in first out (FIFO) rule. (a) Description of intercell operation processed afterwardcurrent cell operation; (b) Description of intercell operation is processed forward current cell operation.

Here,

Mathematics 2020, 8, x FOR PEER REVIEW 11 of 21

Figure 7. Intracell scheduling in cell 3.

(4) Intercell scheduling

After the intracell scheduling of each cell, the processing sequence on each device can be

obtained. The core problem of intercell scheduling is to solve the processing sequence of different

jobs on the same equipment, especially to solve the conflict between the intercell operation and the

operation in the current cell.

When there are conflicts, the heuristic rule is one of the common solutions. There are many kinds

of heuristic rules. In this paper, the common first in first out (FIFO) rule is used to deal with the

conflict between intercell operation and the operation in current cell. The FIFO rule is described in

Figure 8, which is a description of the intercell operation processed afterward (a) and before (b)

current cell operation.

S E

S E

S E

S E S E

S E

(a) (b)

Figure 8. The first in first out (FIFO) rule. (a) Description of intercell operation processed afterward

current cell operation; (b) Description of intercell operation is processed forward current cell

operation. Here, represents intercell job, denoted by jintercell, means current cell job,

denoted by jintracell, S is the start processing time of the job in the result of intracell scheduling and E

denotes the end time of job processing in the result of intracell scheduling.

Sintracell and Eintracell represent the start and end time of the job of intracell, respectively. Sintercell and

Eintercell are the start and end time of the job of intercell, respectively.

As shown in the Figure 8a, when Sintercell ≥ Sintracell and Eintracell > Sintercell or Sintercell ≥ Sintracell and Eintracell ≥

Eintercell, the operation in current cell is processed first. In this case, intercell operation jintercell is processed

after jintracell, the affected subsequent operation of jintercell, and in turn, jintracell needs to move back.

As shown in the Figure 8b, when Eintracell ≥ Eintercell and Eintercell > Sintracell or Sintracell > Sintercell and Eintercell

> Eintracell, the intercell operation is processed first. In this case, operation jintracell is processed after jintercell,

the affected subsequent operation need to move back in turn.

It can be seen from Figures 5 and 6 that there is a conflict between operation 102 and operation

402 on the same machine. According to FIFO rule, operation 102 is processed after operation 402, the

result of which is shown in Figure 9. Operations 602 and 503 move backwards by the same distance

in the sequence, as shown in Figure 10, and the moving distance is represented by black wire frame.

Similarly, it can be seen from Figures 5 and 6 that there is a conflict between operation 202 and

intercell operation 501 on the same machine. According to the FIFO rule, operation 202 should be

moved to the appropriate position, as shown in Figure 11. For each cell, the process of searching for

conflicts is repeated several times until no new conflicts occur.

represents intercell job, denoted by jintercell,

Mathematics 2020, 8, x FOR PEER REVIEW 11 of 21

Figure 7. Intracell scheduling in cell 3.

(4) Intercell scheduling

After the intracell scheduling of each cell, the processing sequence on each device can be

obtained. The core problem of intercell scheduling is to solve the processing sequence of different

jobs on the same equipment, especially to solve the conflict between the intercell operation and the

operation in the current cell.

When there are conflicts, the heuristic rule is one of the common solutions. There are many kinds

of heuristic rules. In this paper, the common first in first out (FIFO) rule is used to deal with the

conflict between intercell operation and the operation in current cell. The FIFO rule is described in

Figure 8, which is a description of the intercell operation processed afterward (a) and before (b)

current cell operation.

S E

S E

S E

S E S E

S E

(a) (b)

Figure 8. The first in first out (FIFO) rule. (a) Description of intercell operation processed afterward

current cell operation; (b) Description of intercell operation is processed forward current cell

operation. Here, represents intercell job, denoted by jintercell, means current cell job,

denoted by jintracell, S is the start processing time of the job in the result of intracell scheduling and E

denotes the end time of job processing in the result of intracell scheduling.

Sintracell and Eintracell represent the start and end time of the job of intracell, respectively. Sintercell and

Eintercell are the start and end time of the job of intercell, respectively.

As shown in the Figure 8a, when Sintercell ≥ Sintracell and Eintracell > Sintercell or Sintercell ≥ Sintracell and Eintracell ≥

Eintercell, the operation in current cell is processed first. In this case, intercell operation jintercell is processed

after jintracell, the affected subsequent operation of jintercell, and in turn, jintracell needs to move back.

As shown in the Figure 8b, when Eintracell ≥ Eintercell and Eintercell > Sintracell or Sintracell > Sintercell and Eintercell

> Eintracell, the intercell operation is processed first. In this case, operation jintracell is processed after jintercell,

the affected subsequent operation need to move back in turn.

It can be seen from Figures 5 and 6 that there is a conflict between operation 102 and operation

402 on the same machine. According to FIFO rule, operation 102 is processed after operation 402, the

result of which is shown in Figure 9. Operations 602 and 503 move backwards by the same distance

in the sequence, as shown in Figure 10, and the moving distance is represented by black wire frame.

Similarly, it can be seen from Figures 5 and 6 that there is a conflict between operation 202 and

intercell operation 501 on the same machine. According to the FIFO rule, operation 202 should be

moved to the appropriate position, as shown in Figure 11. For each cell, the process of searching for

conflicts is repeated several times until no new conflicts occur.

means current cell job, denoted byjintracell, S is the start processing time of the job in the result of intracell scheduling and E denotes theend time of job processing in the result of intracell scheduling.

Sintracell and Eintracell represent the start and end time of the job of intracell, respectively. Sintercell andEintercell are the start and end time of the job of intercell, respectively.

As shown in the Figure 8a, when Sintercell ≥ Sintracell and Eintracell > Sintercell or Sintercell ≥ Sintracell andEintracell ≥ Eintercell, the operation in current cell is processed first. In this case, intercell operation jintercellis processed after jintracell, the affected subsequent operation of jintercell, and in turn, jintracell needs tomove back.

As shown in the Figure 8b, when Eintracell ≥ Eintercell and Eintercell > Sintracell or Sintracell > Sintercell andEintercell > Eintracell, the intercell operation is processed first. In this case, operation jintracell is processedafter jintercell, the affected subsequent operation need to move back in turn.

It can be seen from Figures 5 and 6 that there is a conflict between operation 102 and operation402 on the same machine. According to FIFO rule, operation 102 is processed after operation 402,the result of which is shown in Figure 9. Operations 602 and 503 move backwards by the same distancein the sequence, as shown in Figure 10, and the moving distance is represented by black wire frame.Similarly, it can be seen from Figures 5 and 6 that there is a conflict between operation 202 and intercelloperation 501 on the same machine. According to the FIFO rule, operation 202 should be moved tothe appropriate position, as shown in Figure 11. For each cell, the process of searching for conflicts isrepeated several times until no new conflicts occur.

Mathematics 2020, 8, 2225 12 of 21Mathematics 2020, 8, x FOR PEER REVIEW 12 of 21

Figure 9. The adjustment of intercell operation.

Figure 10. The adjustment of intracell operation.

Figure 11. Repeated adjustment for each cell until no new conflicts occur.

(5) Update harmony memory

This part is the same as that in Section 4.2.

(6) Inspection termination criteria

Repeat steps (2)–(5) for each cell until the termination criteria is met. The final scheduling Gantt

chart is shown in Figure 12.

Figure 12. The Gantt chart of the two-stage solution.

5. Test Cases

5.1. Experimental Design

At present, there are no available standard cases about intercells, so random cases are generated

to verify the performance of the algorithm. According to the existing literature, the number of cells

in the cell manufacturing system is usually small, with an average of 5.9 cells, and each cell has an

average of 6 machines [29]. Therefore, the used number of the cell, machines in the cell and job

Figure 9. The adjustment of intercell operation.

Mathematics 2020, 8, x FOR PEER REVIEW 12 of 21

Figure 9. The adjustment of intercell operation.

Figure 10. The adjustment of intracell operation.

Figure 11. Repeated adjustment for each cell until no new conflicts occur.

(5) Update harmony memory

This part is the same as that in Section 4.2.

(6) Inspection termination criteria

Repeat steps (2)–(5) for each cell until the termination criteria is met. The final scheduling Gantt

chart is shown in Figure 12.

Figure 12. The Gantt chart of the two-stage solution.

5. Test Cases

5.1. Experimental Design

At present, there are no available standard cases about intercells, so random cases are generated

to verify the performance of the algorithm. According to the existing literature, the number of cells

in the cell manufacturing system is usually small, with an average of 5.9 cells, and each cell has an

average of 6 machines [29]. Therefore, the used number of the cell, machines in the cell and job

Figure 10. The adjustment of intracell operation.

Mathematics 2020, 8, x FOR PEER REVIEW 12 of 21

Figure 9. The adjustment of intercell operation.

Figure 10. The adjustment of intracell operation.

Figure 11. Repeated adjustment for each cell until no new conflicts occur.

(5) Update harmony memory

This part is the same as that in Section 4.2.

(6) Inspection termination criteria

Repeat steps (2)–(5) for each cell until the termination criteria is met. The final scheduling Gantt

chart is shown in Figure 12.

Figure 12. The Gantt chart of the two-stage solution.

5. Test Cases

5.1. Experimental Design

At present, there are no available standard cases about intercells, so random cases are generated

to verify the performance of the algorithm. According to the existing literature, the number of cells

in the cell manufacturing system is usually small, with an average of 5.9 cells, and each cell has an

average of 6 machines [29]. Therefore, the used number of the cell, machines in the cell and job

Figure 11. Repeated adjustment for each cell until no new conflicts occur.

(5) Update harmony memory

This part is the same as that in Section 4.2.

(6) Inspection termination criteria

Repeat steps (2)–(5) for each cell until the termination criteria is met. The final scheduling Ganttchart is shown in Figure 12.

Mathematics 2020, 8, x FOR PEER REVIEW 12 of 21

Figure 9. The adjustment of intercell operation.

Figure 10. The adjustment of intracell operation.

Figure 11. Repeated adjustment for each cell until no new conflicts occur.

(5) Update harmony memory

This part is the same as that in Section 4.2.

(6) Inspection termination criteria

Repeat steps (2)–(5) for each cell until the termination criteria is met. The final scheduling Gantt

chart is shown in Figure 12.

Figure 12. The Gantt chart of the two-stage solution.

5. Test Cases

5.1. Experimental Design

At present, there are no available standard cases about intercells, so random cases are generated

to verify the performance of the algorithm. According to the existing literature, the number of cells

in the cell manufacturing system is usually small, with an average of 5.9 cells, and each cell has an

average of 6 machines [29]. Therefore, the used number of the cell, machines in the cell and job

Figure 12. The Gantt chart of the two-stage solution.

5. Test Cases

5.1. Experimental Design

At present, there are no available standard cases about intercells, so random cases are generated toverify the performance of the algorithm. According to the existing literature, the number of cells in thecell manufacturing system is usually small, with an average of 5.9 cells, and each cell has an averageof 6 machines [29]. Therefore, the used number of the cell, machines in the cell and job processed by

Mathematics 2020, 8, 2225 13 of 21

each cell in the paper is shown as Table 3. The processing time of each operation obeys the uniformdistribution of [1,10].

Table 3. The range of random cases.

Cells Machines in Each Cell Parts in Each Cell

3 5 84 6 125 7 206 8 30

The performance index of the algorithm is the relative deviation (RD) defined by Formula (4):

RD = (Bi − B)/B × 100%, (4)

where the value Bi gained by each algorithm for each problem is compared to B, and B stands for thebest solution found by all algorithms.

5.2. Calibration of Algorithmic Parameters

It is very important to set a suitable parameter in the intelligent algorithm. A better solutioncan be obtained with suitable parameters. According to the previous research results, the range ofparameters HMS, HMCR and PAR in the HHS algorithm can be taken as [10,50], [0.8,1] and [0.05,0.25],respectively. In cross experiment, three parameters are equivalent to three factors, and each factorcontains five levels, as shown in Table 4.

Table 4. Factors and their levels.

FactorLevel

1 2 3 4 5

HMS 10 20 30 40 50HMCR 0.8 0.85 0.9 0.95 1

PAR 0.05 0.1 0.15 0.2 0.25

Based on Table 4, the orthogonal table of L25(53) is designed. Then, the objective function iscalculated with the parameters in Table 5 for the case 3 × 5 × 8. Moreover, the obtained data are alsorecorded here.

Table 5. The orthogonal array L25(53) and experimental results of 3 × 5 × 8.

TestFactor

HMS HMCR PAR Value

1 10 0.80 0.05 1112 10 0.85 0.10 1083 10 0.90 0.15 1114 10 0.95 0.20 1045 10 1.00 0.25 1106 20 0.80 0.10 1087 20 0.85 0.15 1058 20 0.90 0.20 1099 20 0.95 0.25 110

10 20 1.00 0.05 10711 30 0.80 0.15 11212 30 0.85 0.20 11213 30 0.90 0.25 108

Mathematics 2020, 8, 2225 14 of 21

Table 5. Cont.

TestFactor

HMS HMCR PAR Value

14 30 0.95 0.05 10915 30 1.00 0.10 11116 40 0.80 0.20 10417 40 0.85 0.25 11018 40 0.90 0.05 10919 40 0.95 0.10 11120 40 1.00 0.15 10821 50 0.80 0.25 10422 50 0.85 0.05 10923 50 0.90 0.10 10824 50 0.95 0.15 10825 50 1.00 0.20 110

Since the Taguchi method has the advantages of less experimental time and having a good effect,it is used in this paper to carry out orthogonal analysis. The obtained main effect of average value andsignal-to-noise ratio is shown in Figure 13. It can be seen that in the case of 3 × 5 × 8, HMS, HMCR andPAR are 20 or 50, 0.8 and 0.2, respectively. Nine groups are randomly selected to repeat the sameorthogonal test, and the final parameters were determined as 50, 0.8 and 0.2, respectively. Each case isiterated for 2500 generations, and the minimum value is taken after 20 cycles.

Mathematics 2020, 8, x FOR PEER REVIEW 14 of 21

15 30 1.00 0.10 111

16 40 0.80 0.20 104

17 40 0.85 0.25 110

18 40 0.90 0.05 109

19 40 0.95 0.10 111

20 40 1.00 0.15 108

21 50 0.80 0.25 104

22 50 0.85 0.05 109

23 50 0.90 0.10 108

24 50 0.95 0.15 108

25 50 1.00 0.20 110

Since the Taguchi method has the advantages of less experimental time and having a good effect,

it is used in this paper to carry out orthogonal analysis. The obtained main effect of average value

and signal-to-noise ratio is shown in Figure 13. It can be seen that in the case of 3 × 5 × 8, HMS, HMCR

and PAR are 20 or 50, 0.8 and 0.2, respectively. Nine groups are randomly selected to repeat the same

orthogonal test, and the final parameters were determined as 50, 0.8 and 0.2, respectively. Each case

is iterated for 2500 generations, and the minimum value is taken after 20 cycles.

(a) (b)

Figure 13. Main effects plot. (a) Description of main effects plot for means; (b) Description of main

effects plot for the SN ratios.

5.3. Experimental Result and Analyses

At present, there are two solutions to solve the intercell scheduling problem: the overall solution

and the two-stage solution. A new strategy is proposed for the HHS algorithm for non-permutation

flowline intercell scheduling. To verify the performances of the proposed strategy, the experiments

are developed for cases in randomly generating different scales, comparing with commonly used

efficient intelligent optimization algorithms: hybrid genetic algorithm (HGA) [60] and hybrid particle

swarm optimization (HPSO) [61]. All calculations are performed using MATLAB R2017a software.

The results of each algorithm for both solutions, overall and two-stage, are shown in Table 7.

Table 7. Experimental result.

Instance

(c × m ×

p)

Two-Stage Solution Overall Solution

SHHS SHGA SHPSO OHHS OHGA OHPSO

Value RD Value RD Value RD Value RD Value RD Value RD

3 × 5 × 8 107 0.00 115 0.07 111 0.04 110 0.03 118 0.10 114 0.07

3 × 5 × 12 148 0.00 177 0.20 160 0.08 157 0.06 162 0.09 151 0.02

3 × 5 × 20 235 0.00 258 0.10 243 0.03 246 0.05 248 0.06 239 0.02

3 × 5 × 30 352 0.01 404 0.15 350 0.00 355 0.01 399 0.14 353 0.01

3 × 6 × 8 123 0.03 123 0.03 121 0.01 122 0.02 124 0.03 120 0.00

3 × 6 × 12 151 0.00 187 0.24 165 0.09 170 0.13 175 0.16 156 0.03

Figure 13. Main effects plot. (a) Description of main effects plot for means; (b) Description of maineffects plot for the SN ratios.

5.3. Experimental Result and Analyses

At present, there are two solutions to solve the intercell scheduling problem: the overall solutionand the two-stage solution. A new strategy is proposed for the HHS algorithm for non-permutationflowline intercell scheduling. To verify the performances of the proposed strategy, the experiments aredeveloped for cases in randomly generating different scales, comparing with commonly used efficientintelligent optimization algorithms: hybrid genetic algorithm (HGA) [60] and hybrid particle swarmoptimization (HPSO) [61]. All calculations are performed using MATLAB R2017a software. The resultsof each algorithm for both solutions, overall and two-stage, are shown in Table 6.

Mathematics 2020, 8, 2225 15 of 21

Table 6. Experimental result.

Instance(c ×m × p)

Two-Stage Solution Overall Solution

SHHS SHGA SHPSO OHHS OHGA OHPSO

Value RD Value RD Value RD Value RD Value RD Value RD3 × 5 × 8 107 0.00 115 0.07 111 0.04 110 0.03 118 0.10 114 0.073 × 5 × 12 148 0.00 177 0.20 160 0.08 157 0.06 162 0.09 151 0.023 × 5 × 20 235 0.00 258 0.10 243 0.03 246 0.05 248 0.06 239 0.023 × 5 × 30 352 0.01 404 0.15 350 0.00 355 0.01 399 0.14 353 0.013 × 6 × 8 123 0.03 123 0.03 121 0.01 122 0.02 124 0.03 120 0.003 × 6 × 12 151 0.00 187 0.24 165 0.09 170 0.13 175 0.16 156 0.033 × 6 × 20 261 0.00 277 0.07 260 0.00 260 0.00 287 0.10 261 0.003 × 6 × 30 385 0.00 421 0.10 384 0.00 391 0.02 455 0.18 391 0.023 × 7 × 8 132 0.02 148 0.15 131 0.02 130 0.01 139 0.08 129 0.003 × 7 × 12 173 0.05 191 0.16 164 0.00 182 0.11 201 0.23 173 0.053 × 7 × 20 286 0.00 301 0.05 286 0.00 296 0.03 321 0.12 296 0.033 × 7 × 30 418 0.00 458 0.10 428 0.02 424 0.01 494 0.18 434 0.043 × 8 × 8 130 0.00 158 0.22 136 0.05 146 0.12 142 0.09 139 0.073 × 8 × 12 186 0.00 218 0.17 188 0.01 204 0.10 221 0.19 202 0.093 × 8 × 20 320 0.00 361 0.13 321 0.00 327 0.02 358 0.12 326 0.023 × 8 × 30 456 0.00 480 0.05 457 0.00 467 0.02 462 0.01 466 0.024 × 5 × 8 112 0.04 119 0.10 109 0.01 112 0.04 112 0.04 108 0.004 × 5 × 12 159 0.07 157 0.05 152 0.02 156 0.05 155 0.04 149 0.004 × 5 × 20 230 0.00 271 0.18 236 0.03 244 0.06 281 0.22 250 0.094 × 5 × 30 344 0.00 377 0.10 359 0.05 343 0.00 401 0.17 358 0.044 × 6 × 8 121 0.12 138 0.28 108 0.00 126 0.17 130 0.20 114 0.064 × 6 × 12 174 0.07 175 0.07 163 0.00 177 0.09 173 0.06 166 0.024 × 6 × 20 263 0.00 293 0.11 272 0.03 267 0.02 293 0.11 276 0.054 × 6 × 30 378 0.00 422 0.12 380 0.01 394 0.04 460 0.22 396 0.054 × 7 × 8 136 0.05 130 0.00 130 0.00 137 0.05 147 0.13 131 0.014 × 7 × 12 181 0.03 201 0.15 175 0.00 196 0.12 206 0.18 190 0.094 × 7 × 20 304 0.03 334 0.13 321 0.08 296 0.00 331 0.12 313 0.064 × 7 × 30 402 0.00 488 0.21 414 0.03 427 0.06 467 0.16 439 0.094 × 8 × 8 138 0.00 166 0.20 142 0.03 150 0.09 149 0.08 146 0.064 × 8 × 12 185 0.00 227 0.23 196 0.06 215 0.16 227 0.23 205 0.114 × 8 × 20 317 0.00 355 0.12 319 0.01 329 0.04 355 0.12 327 0.034 × 8 × 30 446 0.00 506 0.13 447 0.00 465 0.04 516 0.16 464 0.045 × 5 × 8 119 0.06 126 0.13 114 0.02 117 0.04 115 0.03 112 0.005 × 5 × 12 156 0.03 171 0.13 151 0.00 159 0.05 161 0.07 154 0.025 × 5 × 20 242 0.00 286 0.18 248 0.02 257 0.06 275 0.14 263 0.095 × 5 × 30 354 0.00 396 0.12 354 0.00 363 0.03 413 0.17 363 0.035 × 6 × 8 126 0.04 126 0.04 121 0.00 129 0.07 137 0.13 125 0.035 × 6 × 12 165 0.00 182 0.10 171 0.04 167 0.01 192 0.16 173 0.055 × 6 × 20 267 0.00 294 0.10 278 0.04 273 0.02 311 0.16 283 0.065 × 6 × 30 389 0.01 442 0.15 407 0.06 385 0.00 429 0.11 403 0.055 × 7 × 8 141 0.04 147 0.08 138 0.01 139 0.02 145 0.07 136 0.005 × 7 × 12 199 0.08 218 0.18 212 0.15 185 0.00 220 0.19 198 0.075 × 7 × 20 296 0.01 335 0.15 292 0.00 306 0.05 314 0.08 302 0.035 × 7 × 30 443 0.01 458 0.05 450 0.03 438 0.00 463 0.06 445 0.025 × 8 × 8 149 0.03 182 0.26 144 0.00 155 0.08 167 0.16 150 0.045 × 8 × 12 203 0.00 236 0.16 212 0.04 210 0.03 233 0.15 219 0.085 × 8 × 20 318 0.03 354 0.15 335 0.08 309 0.00 363 0.17 326 0.065 × 8 × 30 469 0.01 496 0.07 475 0.02 465 0.00 514 0.11 471 0.016 × 5 × 8 109 0.00 127 0.17 118 0.08 119 0.09 117 0.07 110 0.016 × 5 × 12 152 0.00 184 0.21 153 0.01 162 0.07 183 0.20 161 0.066 × 5 × 20 246 0.00 269 0.09 258 0.05 253 0.03 294 0.20 265 0.086 × 5 × 30 366 0.00 405 0.11 378 0.03 367 0.00 397 0.08 379 0.046 × 6 × 8 130 0.00 154 0.18 131 0.01 131 0.01 137 0.05 132 0.026 × 6 × 12 173 0.00 200 0.16 184 0.06 175 0.01 199 0.15 186 0.086 × 6 × 20 284 0.00 299 0.06 285 0.01 283 0.00 324 0.14 284 0.00

Mathematics 2020, 8, 2225 16 of 21

Table 6. Cont.

Instance(c ×m × p)

Two-Stage Solution Overall Solution

SHHS SHGA SHPSO OHHS OHGA OHPSO

6 × 6 × 30 406 0.00 433 0.07 408 0.00 410 0.01 466 0.15 412 0.016 × 7 × 8 140 0.00 151 0.08 141 0.01 142 0.01 152 0.09 143 0.026 × 7 × 12 199 0.02 214 0.10 205 0.05 195 0.00 221 0.13 201 0.036 × 7 × 20 297 0.00 337 0.13 302 0.02 304 0.02 335 0.13 309 0.046 × 7 × 30 438 0.01 502 0.15 456 0.05 435 0.00 492 0.13 453 0.046 × 8 × 8 152 0.00 174 0.14 159 0.05 152 0.00 167 0.10 159 0.056 × 8 × 12 209 0.02 230 0.12 205 0.00 223 0.09 239 0.17 220 0.076 × 8 × 20 337 0.07 353 0.12 358 0.14 315 0.00 341 0.08 336 0.076 × 8 × 30 489 0.03 503 0.06 500 0.05 475 0.00 513 0.08 486 0.02

averge 0.02 0.13 0.03 0.04 0.14 0.05

The red font means the best value found by all algorithms for each instance.

In the table, SHHS, SHGA and SHPSO are the two-stage solutions for the proposed algorithms,HGA and HPSO. OHHS, OHGA and OHPSO are for the overall solutions for the proposed algorithms,HGA and HPSO.

In order to facilitate the analysis, the above results are displayed in the form of a figure, and thecase is divided into four parts for easy to view, as shown in Figure 14a–d. From the point of viewof overall and two-stage solutions, the makespan values of SHHS, SHGA and SHPSO algorithms inmost cases are significantly better than OHHS, OHGA and OHPSO algorithms in the overall mode.From the point of view of each solution in Table 6, the average relative deviation of the proposed HHSat 0.02 and 0.04 are obviously better than the genetic algorithm and a little better than the particleswarm optimization algorithm.

Mathematics 2020, 8, x FOR PEER REVIEW 16 of 21

6 × 7 × 20 297 0.00 337 0.13 302 0.02 304 0.02 335 0.13 309 0.04

6 × 7 × 30 438 0.01 502 0.15 456 0.05 435 0.00 492 0.13 453 0.04

6 × 8 × 8 152 0.00 174 0.14 159 0.05 152 0.00 167 0.10 159 0.05

6 × 8 × 12 209 0.02 230 0.12 205 0.00 223 0.09 239 0.17 220 0.07

6 × 8 × 20 337 0.07 353 0.12 358 0.14 315 0.00 341 0.08 336 0.07

6 × 8 × 30 489 0.03 503 0.06 500 0.05 475 0.00 513 0.08 486 0.02

averge 0.02 0.13 0.03 0.04 0.14 0.05

The red font means the best value found by all algorithms for each instance.

In the table, SHHS, SHGA and SHPSO are the two-stage solutions for the proposed algorithms,

HGA and HPSO. OHHS, OHGA and OHPSO are for the overall solutions for the proposed

algorithms, HGA and HPSO.

In order to facilitate the analysis, the above results are displayed in the form of a figure, and the

case is divided into four parts for easy to view, as shown in Figure 14a–d. From the point of view of

overall and two-stage solutions, the makespan values of SHHS, SHGA and SHPSO algorithms in

most cases are significantly better than OHHS, OHGA and OHPSO algorithms in the overall mode.

From the point of view of each solution in Table 6, the average relative deviation of the proposed

HHS at 0.02 and 0.04 are obviously better than the genetic algorithm and a little better than the

particle swarm optimization algorithm.

(a)

(b)

0

100

200

300

400

500

mak

esp

an

cases

SHHS SHGA SHPSO OHHS OHGA OHPSO

0

100

200

300

400

500

600

mak

esp

an

cases

SHHS SHGA SHPSO OHHS OHGA OHPSO

Figure 14. Cont.

Mathematics 2020, 8, 2225 17 of 21

Mathematics 2020, 8, x FOR PEER REVIEW 17 of 21

(c)

(d)

Figure 14. Comparison of the algorithms for cases of different sizes. (a)for cases 3 × 5 × 8 to 3 × 8 × 30.

(b) for cases 4 × 5 × 8 to 4 × 8 × 30. (c)for cases 5 × 5 × 8 to 5 × 8 × 30. (d)for cases 6 × 5 × 8 to 6 × 8 × 30.

In order to further study the performance of the two solutions, the computational time is studied.

Taking SHHS and OHHS as examples, the calculation time is shown in Figure 15. It can be seen that

under the same hardware conditions, which is a personal computer with an Intel(R) 4 CPU, 2.60 GHz

and 8 GB of RAM, the calculation time of HHS in the two-stage solution mode is significantly higher

than that in the overall solution mode. From the perspective of algorithm flow, this is mainly because

in SHHS, it is not only necessary to schedule each cell in turn, but also to detect the operation conflict

on the machine where the intercell operation is located. If there is a conflict, the intercell operation or

the corresponding operation in the current cell will be moved according to the rules. In most cases,

the moved operation will cause other operations in the intracell scheduling result are affected directly

or indirectly and need to move in this way many times until there is no conflict. Intercell scheduling

is similar to neighborhood search, so it can get a better solution.

0

100

200

300

400

500

600

mak

esp

an

cases

SHHS SHGA SHPSO OHHS OHGA OHPSO

0

100

200

300

400

500

600

mak

esp

an

cases

SHHS SHGA SHPSO OHHS OHGA OHPSO

Figure 14. Comparison of the algorithms for cases of different sizes. (a) for cases 3 × 5 × 8 to 3 × 8 × 30.(b) for cases 4 × 5 × 8 to 4 × 8 × 30. (c) for cases 5 × 5 × 8 to 5 × 8 × 30. (d) for cases 6 × 5 × 8 to 6 × 8 × 30.

In order to further study the performance of the two solutions, the computational time is studied.Taking SHHS and OHHS as examples, the calculation time is shown in Figure 15. It can be seen thatunder the same hardware conditions, which is a personal computer with an Intel(R) 4 CPU, 2.60 GHzand 8 GB of RAM, the calculation time of HHS in the two-stage solution mode is significantly higherthan that in the overall solution mode. From the perspective of algorithm flow, this is mainly becausein SHHS, it is not only necessary to schedule each cell in turn, but also to detect the operation conflicton the machine where the intercell operation is located. If there is a conflict, the intercell operation orthe corresponding operation in the current cell will be moved according to the rules. In most cases,the moved operation will cause other operations in the intracell scheduling result are affected directlyor indirectly and need to move in this way many times until there is no conflict. Intercell scheduling issimilar to neighborhood search, so it can get a better solution.Mathematics 2020, 8, x FOR PEER REVIEW 18 of 21

Figure 15. Comparison of SHHS and OHHS algorithms in terms of time consumption.

From the view of algorithm, the HHS algorithm has the advantages of simple concept, less

adjustable parameters and easy implementation. Besides, compared with HPSO and HGA, it has two

advantages: one is to make full use of the existing harmony information in the harmony memory; the

other is that HHS considers each piece of individual information separately. From the point of the

solution way, the solution process of the overall scheduling is similar to the ordinary flow shop

scheduling, which only need one scheduling. Whereas in the two-stage solution, it includes intracell

scheduling and intercell scheduling two steps, the solving process of which is equivalent to the

number of times of intracell scheduling and multiple rescheduling, so it takes a long time.

6. Conclusions

In this paper, a hybrid harmony search algorithm is proposed to solve the intercell scheduling

problem of non-permutation flowline manufacturing cells with the makespan criterion. In order to

adopt operation-based encoding, the three key parts of the basic harmony search algorithm are

improved accordingly, including memory consideration, pitch adjustment and random generation.

To confirm the proposed algorithm, the performance is compared with the commonly used particle

swarm optimization algorithm and genetic algorithm by randomly generating different scale cases.

The results show that the proposed algorithm can obtain better solution in the existing overall and

two-stage solutions of intercell scheduling. Moreover, the results of each algorithm in the two-stage

solution mode are better than those in the corresponding overall solution mode. Compared with the

overall scheduling process, the two-stage solution is equivalent to the number of cells in the intracell

scheduling and multiple rescheduling, leading to longer time.

Author Contributions: Conceptualization, J.Y.; Data curation, Z.H.; Investigation, Z.H.; Methodology, Z.H.;

Resources, J.Y.; Supervision, J.Y.; Validation, J.Y.; Visualization, Z.H.; Writing—original draft, Z.H.; Writing—

review and editing, J.Y. All authors have read and agreed to the published version of the manuscript.

Funding: This research received no external funding.

Conflicts of Interest: The authors declare that they have no known competing financial interests or personal

relationships that could have influenced the work reported in this paper.

References

1. Irani, S.A. Introduction to Cellular Manufacturing Systems. In Handbook of Cellular Manufacturing Systems;

John Wiley & Sons, Inc.: Hoboken, NJ, USA, 1999.

2. Laha, D.; Chakraborty, U.K. A constructive heuristic for minimizing makespan in no-wait flow shop

scheduling. Int. J. Adv. Manuf. Tech. 2009, 41, 97–109.

3. Rahimi-Vahed, A.R.; Javadi, B.; Rabbani, M. A multi-objective scatter search for a bi-criteria no-wait flow

shop scheduling problem. Eng. Optimiz. 2008, 40, 331–346.

4. Masood, A; Mei, Y; Chen, G; Zhang, M. Many-objective genetic programming for job-shop scheduling. In

Proceedings of the 2016 IEEE Congress on Evolutionary Computation (CEC), Vancouver, BC, 2016; pp. 209-

216.

0

500

1000

1500

2000

2500

3x5x8

3x5x20

3x6x8

3x6x20

3x7x8

3x7x20

3x8x8

3x8x20

4x5x8

4x5x20

4x6x8

4x6x20

4x7x8

4x7x20

4x8x8

4x8x20

5x5x8

5x5x20

5x6x8

5x6x20

5x7x8

5x7x20

5x8x8

5x8x20

6x5x8

6x5x20

6x6x8

6x6x20

6x7x8

6x7x20

6x8x8

6x8x20

Tim

e (

s)

cases

SHHS OHHS

Figure 15. Comparison of SHHS and OHHS algorithms in terms of time consumption.

Mathematics 2020, 8, 2225 18 of 21

From the view of algorithm, the HHS algorithm has the advantages of simple concept,less adjustable parameters and easy implementation. Besides, compared with HPSO and HGA,it has two advantages: one is to make full use of the existing harmony information in the harmonymemory; the other is that HHS considers each piece of individual information separately. From thepoint of the solution way, the solution process of the overall scheduling is similar to the ordinary flowshop scheduling, which only need one scheduling. Whereas in the two-stage solution, it includesintracell scheduling and intercell scheduling two steps, the solving process of which is equivalent tothe number of times of intracell scheduling and multiple rescheduling, so it takes a long time.

6. Conclusions

In this paper, a hybrid harmony search algorithm is proposed to solve the intercell schedulingproblem of non-permutation flowline manufacturing cells with the makespan criterion. In orderto adopt operation-based encoding, the three key parts of the basic harmony search algorithm areimproved accordingly, including memory consideration, pitch adjustment and random generation.To confirm the proposed algorithm, the performance is compared with the commonly used particleswarm optimization algorithm and genetic algorithm by randomly generating different scale cases.The results show that the proposed algorithm can obtain better solution in the existing overall andtwo-stage solutions of intercell scheduling. Moreover, the results of each algorithm in the two-stagesolution mode are better than those in the corresponding overall solution mode. Compared with theoverall scheduling process, the two-stage solution is equivalent to the number of cells in the intracellscheduling and multiple rescheduling, leading to longer time.

Author Contributions: Conceptualization, J.Y.; Data curation, Z.H.; Investigation, Z.H.; Methodology, Z.H.;Resources, J.Y.; Supervision, J.Y.; Validation, J.Y.; Visualization, Z.H.; Writing—original draft, Z.H.; Writing—reviewand editing, J.Y. All authors have read and agreed to the published version of the manuscript.

Funding: This research received no external funding.

Conflicts of Interest: The authors declare that they have no known competing financial interests or personalrelationships that could have influenced the work reported in this paper.

References

1. Irani, S.A. Introduction to Cellular Manufacturing Systems. In Handbook of Cellular Manufacturing Systems;John Wiley & Sons, Inc.: Hoboken, NJ, USA, 1999.

2. Laha, D.; Chakraborty, U.K. A constructive heuristic for minimizing makespan in no-wait flow shopscheduling. Int. J. Adv. Manuf. Tech. 2009, 41, 97–109. [CrossRef]

3. Rahimi-Vahed, A.R.; Javadi, B.; Rabbani, M. A multi-objective scatter search for a bi-criteria no-wait flowshop scheduling problem. Eng. Optimiz. 2008, 40, 331–346. [CrossRef]

4. Masood, A.; Mei, Y.; Chen, G.; Zhang, M. Many-objective genetic programming for job-shop scheduling.In Proceedings of the 2016 IEEE Congress on Evolutionary Computation (CEC), Vancouver, BC, Canada,24–29 July 2016; pp. 209–216.

5. Wang, S.; Sarker, B.R. Locating cells with bottleneck machines in cellular manufacturing systems. Int. J.Prod. Res. 2002, 40, 403–424. [CrossRef]

6. Wemmerlöv, U.; Hyer, N.L. Cellular manufacturing in the US industry: A survey of users. Int. J. Prod. Res.1989, 27, 1511–1530. [CrossRef]

7. Li, D.; Li, M.; Meng, X.; Tian, Y. A hyperheuristic approach for intercell scheduling with single processingmachines and batch processing machines. IEEE Trans. Syst. Man Cybern. Syst. 2015, 45, 315–325. [CrossRef]

8. Johnson, D.J.; Wemmerlöv, U. Why does cell implementation stop? Factors influencing cell penetration inmanufacturing plants. Prod. Oper. Manag. 2004, 13, 272–289.

9. Tian, Y.; Li, D.; Zhou, P.; Wang, L. Coordinated scheduling of intercell production and intercell transportationin the equipment manufacturing industry. Eng. Optimiz. 2016, 48, 2046–2063. [CrossRef]

10. Ang, C.L.; Willey, P.C.T. A comparative study of the performance of pure and hybrid group technologymanufacturing systems using computer simulation techniques. Int. J. Prod. Res. 1984, 22, 193–233. [CrossRef]

Mathematics 2020, 8, 2225 19 of 21

11. Elleuch, M.; Bach, H.B.; Masmoudi, F.; Maalej, A.Y. Analysis of cellular manufacturing systems in thepresence of machine breakdowns: Effects of intercellular transfer. J. Manuf. Technol. Manag. 2008, 19, 235–252.[CrossRef]

12. Neufeld, J.S.; Gupta, J.N.D.; Buscher, U. A comprehensive review of flowshop group scheduling literature.Comput. Oper. Res. 2016, 70, 56–74.

13. Baker, K.R. Scheduling groups of jobs in the two-machine flow shop. Math. Comput. Model. 1990, 13, 29–36.[CrossRef]

14. Wemmerlov, U.; Vakharia, A.J. Job and family scheduling of a flow-line manufacturing cell: A simulationstudy. IIE Trans. 1991, 23, 383–393. [CrossRef]

15. Skorin-Kapov, J.; Vakharia, A.J. Scheduling a flow-line manufacturing cell: A tabu search approach. Int. J.Prod. Res. 1993, 31, 1721–1734. [CrossRef]

16. Sridhar, J.; Rajendran, C. A genetic algorithm for family and job scheduling in a flowline-base manufacturingcell. Comput. Ind. Eng. 2003, 27, 469–472. [CrossRef]

17. Logendran, R.; Mai, L.; Talkington, D. Combined heuristics for bi-Level group scheduling problems. Int. J.Prod. Econ. 1995, 38, 133–145. [CrossRef]

18. Schaller, J. A comparison of heuristics for family and job scheduling in a flow-line manufacturing cell. Int. J.Prod. Res. 2000, 38, 287–308. [CrossRef]

19. Reddy, V.; Narendran, T.T. Heuristics for scheduling sequence-dependent set-up jobs in flow line cells. Int. J.Prod. Res. 2003, 41, 193–206. [CrossRef]

20. Logendran, R.; Carson, S.; Hanson, E. Group scheduling in flexible flow shops. Int. J. Prod. Econ. 2005,96, 143–155. [CrossRef]

21. Logendran, R.; DeSzoeke, P.; Barnard, F. Sequence-dependent group scheduling problems in flexible flowshops. Int. J. Prod. Econ. 2005, 102, 66–86. [CrossRef]

22. Gupta, J.N.D.; Schaller, J.E. Minimizing flow time in a flow-line manufacturing cell with family setup times.J. Oper. Res. Soc. 2006, 57, 163–176. [CrossRef]

23. Hendizadeh, S.; Faramarzi, H.; Mansouri, S.A.; Gupta, J.N.D. Meta-heuristics for scheduling a flowlinemanufacturing cell with sequence dependent family setup times. Int. J. Prod. Econ. 2008, 111, 593–605.[CrossRef]

24. Venkataramanaiah, S. Scheduling in cellular manufacturing systems: A heuristic approach. Int. J. Prod. Res.2008, 46, 429–449. [CrossRef]

25. Zandieh, M.; Dorri, B.; Khamseh, A.R. Robust metaheuristics for group scheduling with sequence dependentsetup times in hybrid flexible flow shops. Int. J. Adv. Manuf. Tech. 2009, 43, 767–778. [CrossRef]

26. Ying, K.C.; Gupta, J.N.D.; Lin, S.W.; Lee, Z.J. Permutation and non-permutation schedules for the flowlinemanufacturing cell with sequence dependent family setups. Int. J. Prod. Res. 2010, 48, 2169–2284. [CrossRef]

27. Salmasi, N.; Logendran, R.; Skandari, M. Total flow time minimization in a flow shop sequence-dependentgroup scheduling problem. Comput. Oper. Res. 2010, 37, 199–212. [CrossRef]

28. Yang, W.H.; Liao, C.J. Group scheduling on two cells with intercell movement. Comput. Oper. Res. 1996,23, 997–1006. [CrossRef]

29. Solimanpur, M.; Vrat, P.; Shankar, R. A heuristic to minimize makespan of cell scheduling problem. Int. J.Prod. Econ. 2004, 88, 231–241. [CrossRef]

30. Tavakkoli-Moghaddam, R.; Javadian, N.; Khorrami, A.; Gholipour-Kanani, Y. Design of a scattersearch method for a novel multi-criteria group scheduling problem in a cellular manufacturing system.Expert. Syst. Appl. 2010, 37, 2661–2669. [CrossRef]

31. Mosbah, A.B.; Dao, T.M. Optimimization of group scheduling using simulation with the meta-heuristicextended great deluge (EGD) approach. In Proceedings of the 2010 IEEE International Conference onIndustrial Engineering and Engineering Management, Macao, China, 7–10 December 2010; pp. 275–280.

32. Solimanpur, M.; Elmi, A. A tabu search approach for cell scheduling problem with makespan criterion. Int. J.Prod. Econ. 2013, 141, 639–645. [CrossRef]

33. Neufeld, J.S.; Teucher, F.F.; Buscher, U. Scheduling flowline manufacturing cells with inter-cellular moves:Non-permutation schedules and material flows in the cell scheduling problem. Int. J. Prod. Res. 2020,58, 6568–6584. [CrossRef]

34. Li, D.; Wang, Y.; Xiao, G.; Tang, J. Dynamic parts scheduling in multiple job shop cells considering intercellmoves and flexible routes. Comput. Oper. Res. 2013, 40, 1207–1223. [CrossRef]

Mathematics 2020, 8, 2225 20 of 21

35. Geem, Z.W.; Kim, J.H.; Loganathan, G.V. A new heuristic optimization algorithm: Harmony search.Simul. Trans. Soc. Model. Simul. Int. 2001, 76, 60–68.

36. Nazari-Heris, M.A.; Babaei, F.; Mohammadi-Ivatloo, B.; Asadi, S. Improved harmony search algorithmfor the solution of non-linear non-convex shortterm hydrothermal scheduling. Energy 2018, 151, 226–237.[CrossRef]

37. Moon, Y.Y.; Geem, Z.W.; Han, G.T. Vanishing point detection for selfdriving car using harmony searchalgorithm. Swarm. Evol. Comput. 2018, 41, 111–119. [CrossRef]

38. Keshtegar, B.; Hao, P.; Wang, Y.; Li, Y. Optimum design of aircraft panels based on adaptive dynamic harmonysearch. Thin. Wall. Struct. 2017, 118, 37–45. [CrossRef]

39. Kim, Y.H.; Yoon, Y.; Geem, Z.W. A comparison study of harmony search and genetic algorithm for themax-cut problem. Swarm. Evol. Comput. 2019, 44, 130–135. [CrossRef]

40. Alaa, A.; Alsewari, A.A.; Alamri, H.S.; Zamli, K.Z. Comprehensive review of the development of the harmonysearch algorithm and its applications. IEEE Access 2019, 7, 14233–14245.

41. Keshtegar, B.; Mohamed, E.A.B.S. Modified response surface method basis harmony search to predict theburst pressure of corroded pipelines. Eng. Fail. Anal. 2018, 89, 177–199. [CrossRef]

42. Awadallah, M.A.; Al-Betar, M.A.; Khader, A.T.; Bolaji, A.L.; Alkoffash, M. Hybridization of harmony searchwith hill climbing for highly constrained nurse rostering problem. Neural. Comput. Appl. 2017, 28, 463–482.[CrossRef]

43. Al-Betar, M.A.; Awadallah, M.A.; Khader, A.T.; Bolaji, A.L.A.; Almomani, A. Economic load dispatchproblems with valve-point loading using natural updated harmony search. Neural Comput. Appl. 2016,10, 767–781. [CrossRef]

44. Kang, S.; Chae, J. Harmony search for the layout design of an unequal area facility. Expert. Syst. Appl. 2017,79, 269–281. [CrossRef]

45. Awadallah, M.; Khader, A.; Al-Betar, M.; Woon, P. Office-space-allocation problem using harmony searchalgorithm. In Neural Information Processing; Huang, T., Zeng, Z., Li, C., Leung, C., Eds.; Lecture Notes inComputer Science; Springer: Berlin/Heidelberg, Germany, 2012; Volume 7664, pp. 365–374.

46. Choi, Y.H.; Lee, H.M.; Yoo, D.G.; Kim, J.H. Self-adaptive multi-objective harmony search for optimal designof water distribution networks. Eng. Optimiz. 2017, 49, 1957–1977. [CrossRef]

47. Shaffiei, Z.A.; Abas, Z.A.; Yunos, N.M.; Hamzah, A.S.S.S.A.; Abidin, Z.Z.; Eng, C.K. Constrained self-adaptiveharmony search algorithm with 2-opt swapping for driver scheduling problem of university shuttle bus.Arab. J. Sci. Eng. 2018, 44, 3681–3698. [CrossRef]

48. Liu, L.; Zhou, H. Hybridization of harmony search with variable neighborhood search for restrictivesingle-machine earliness/tardiness problem. Inform. Sci. 2013, 226, 68–92. [CrossRef]

49. Zammori, F.; Braglia, M.; Castellano, D. Harmony search algorithm for single-machine scheduling problemwith planned maintenance. Comput. Ind. Eng. 2014, 76, 333–346. [CrossRef]

50. Zhao, F.; Liu, Y.; Zhang, Y.; Ma, W.; Zhang, C. A hybrid harmony search algorithm with efficient jobsequencescheme and variable neighborhood search for the permutation flow shop scheduling problems.Eng. Appl. Artif. Intell. 2017, 65, 178–199. [CrossRef]

51. Li, Y.; Li, X.; Gupta, J.N. Solving the multi-objective flowline manufacturing cell scheduling problem byhybrid harmony search. Expert. Syst. Appl. 2015, 42, 1409–1417. [CrossRef]

52. Gao, K.Z.; Pan, Q.K.; Li, J.Q. Discrete Harmony Search Algorithm for the No-Wait Flow Shop Scheduling Problemwith Total Flow Time Criterion; Springer: Berlin/Heidelberg, Germany, 2011; pp. 683–692.

53. Yuan, Y.; Xu, H.; Yang, J. A hybrid harmony search algorithm for the flexible job shop scheduling problem.Appl. Soft. Comput. 2013, 13, 3259–3272. [CrossRef]

54. Maroosi, A.; Muniyandi, R.C.; Sundararajan, E.; Zin, A.M. A parallel membrane inspired harmonysearch foroptimization problems: A case study based on a flexible job shop scheduling problem. Appl. Soft. Comput.2016, 49, 120–136. [CrossRef]

55. Gao, K.Z.; Suganthan, P.N.; Pan, Q.K.; Chua, T.J.; Cai, T.X.; Chong, C.S. Pareto-based grouping discreteharmony search algorithm for multi-objective flexible job shop scheduling. Inform. Sci. 2014, 289, 76–90.[CrossRef]

56. Zeng, C.; Tang, J.; Yan, C. Job-shop cell-scheduling problem with inter-cell moves and automated guidedvehicles. J. Intell. Manuf. 2015, 26, 845–859. [CrossRef]

Mathematics 2020, 8, 2225 21 of 21

57. Tang, J.; Wang, X.; Kaku, I.; Yung, K.L. Optimization of parts scheduling in multiple cells considering intercellmove using scatter search approach. J. Intell. Manuf. 2010, 21, 525–537. [CrossRef]

58. Tuo, S.; Geem, Z.W.; Yoon, J.H. A New Method for Analyzing the Performance of the Harmony SearchAlgorithm. Mathematics 2020, 8, 1421. [CrossRef]

59. Nawaz, M.; Enscore, E.E.; Ham, I. A heuristic algorithm for the m-machine, n-job flow-shop sequencingproblem. Omega Int. J. Manag. Sci. 1983, 11, 91–95. [CrossRef]

60. Wang, L.; Zhang, L.; Zheng, D.Z. An effective hybrid genetic algorithm for flow shop scheduling with limitedbuffers. Comput. Oper. Res. 2006, 33, 2960–2971. [CrossRef]

61. Liu, B.; Wang, L.; Jin, Y.H. An effective hybrid PSO-based algorithm for flow shop scheduling with limitedbuffers. Comput. Oper. Res. 2008, 35, 2791–2806. [CrossRef]

Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutionalaffiliations.

© 2020 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open accessarticle distributed under the terms and conditions of the Creative Commons Attribution(CC BY) license (http://creativecommons.org/licenses/by/4.0/).