A Bottleneck Degree-Based Migrating Birds Optimization Algorithm for the PCB Production Scheduling

To address the printed circuit board shop scheduling problem, a dynamic based on multi-indicator bottleneck degree is proposed to formulate this complex flexible job shop scheduling problem (FJSP). Then, a bottleneck degree-based migrating birds optimization algorithm (MBO) is proposed to tackle this NP-hard problem. Specifically, a multi-indicator assessment model is first developed to obtain the bottleneck degree, and then a two-layer code-decoding structure based on the variable domain structure and the addition of the improved migratory bird algorithm with competitive mechanisms are employed to improve the effectiveness. Finally, the computational experiments demonstrate that the proposed dynamic scheduling approach based on bottleneck degrees and improved migrating bird algorithms can obtain promising results and it outperforms several other algorithms.


I. INTRODUCTION
A printed circuit board (PCB) is an interconnected electronic component utilized in many electronic appliances ranging from simple routers to sophisticated computer systems. Due to a wide variety of manufactured products, most of the PCB factories are operated in make-to-order production mode [1], [2]. For instance, a PCB manufacturing factory located in south China mainly handles orders involving a wide range of diversified and customized products. Each product may have a unique processing route for tens of procedures and there is more than one homogeneous machine for each procedure. All those make the production scheduling within the PCB factory become into a typical flexible job shop scheduling problem [3]- [5].
Due to the wide variety of products, capacity demand for machines changes all the time. Even worse, owing to The associate editor coordinating the review of this manuscript and approving it for publication was Muhammad Zakarya . the shortened production cycle, most products need to be manufactured simultaneously, which adds an extra burden to the core machines. As a result, the current bottleneck of the workshop keeps changing. The number of bottlenecks may change continuously and the degree of bottlenecks is always unknown. To improve the overall efficiency of the workshop, it is necessary to make clear the status of all related machines. On the other hand, limiting the production capacity according to the bottleneck process may lead to overload or fluctuating delays in the execution of some processes, resulting in some order delays. However, to the best of our knowledge, rare literature has been focused on the production scheduling with bottlenecks within PCB factories and hence this paper aims to solve this problem to achieve satisfactory performance [6], [7].
Till now, exhaustive literature has been published on PCB scheduling and they may be partitioned into two categories. The first focuses on the improvement of specific processes via sequencing. For example, Rahmani and Mahdavi [8] VOLUME 8,2020 This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/ developed and validated a three-step scheduling method for inserting or placing components on a PCB by an automated inserter. Sabouni and Logendran [9] considered to minimize the completion time of an important machine in the PCB process using a single-machine scheduling method. Pollett [10] solved the problem of nozzle distribution, part pick and place order. The second category considers the production scheduling in PCB factories. Li [11] proposed an integrated optimization of process planning and scheduling for PCB assembly process. Yan et al. [12] provided a better estimator for production planning and control of PCB assembly, including PCB job grouping, PCB batch-to-production line distribution, batch sequencing, and line load balancing. Obviously, bottlenecks are not considered in the above literature on PCB scheduling.
Although there is now considerable research in the manufacturing field, there is no current research on PCB scheduling that considers bottlenecks. There are three types of bottleneck-oriented production scheduling methods applied in manufacturing.
(1) When there is only one bottleneck in the production system, scheduling is done around the bottleneck with the bottleneck in the system as the core in order to improve the production efficiency of the bottleneck as much as possible [8].
(2) When there are multiple bottlenecks in the production system, usually the multiple bottlenecks are decomposed into multiple single bottleneck scheduling problems, and then each sub-bottleneck problem is solved separately to form a feasible scheduling scheme [13].
(3) Using a dynamic monitoring production system to dynamically evaluate the bottleneck conditions and scheduling according to the dynamic changes in the bottleneck often results in better scheduling results [14].
Traditional bottleneck scheduling methods (the first and second methods above) typically identify bottlenecks based on the production data generated after the production system has been run. After identifying the bottleneck, schedule is done around the bottleneck to maximize the production capacity of the production line. The disadvantage is that the bottleneck situation cannot be grasped in real time, and the resultant value is based on the optimal solution of the identified bottleneck, which is often not the optimal solution [11], [15]. However, regarding the third method: dynamic monitoring production system, it depends on the on-site data and does not bring extra production costs. Meanwhile, since this method considers the dispatch front-end state, it can ensure the schedule feasibility and improve productivity. Therefore, it is necessary to dynamically grasp the real time dynamics of the bottleneck and dynamically schedule the production process to avoid triggering oscillations and instability in the manufacturing system. Accordingly, this paper aims to use the third method to deal with printed circuit board shop scheduling problems.
To tackle the job shop scheduling problem, four types of procedures are proposed: exact, heuristic and meta-heuristic algorithms. Among them, exact algorithms can solve the problems to optimality but they are limited to the smallscaled [16]- [18]. Heuristics are simple to implement and easy to explain but their strongly problem-specific attribute may bring about huge fluctuations following tiny change in production [19], [20]. Meta-heuristic methods, the main research methods of flexible job shop scheduling involve particle swarm optimization (PSO) [21], genetic algorithm (GA) [22], [23], ant colony algorithm (ACO) [24], [25] and other hybrid algorithms. Hasani et al. [26] got genetic algorithms to the problem of scheduling a set of jobs on two parallel machines to minimize the makespan Gao et al. [27] developed a new genetic algorithm hybridized with an innovative local search procedure (bottleneck shifting) for the Flexible job shop scheduling problem. Wang et al. [28] adopted an improved ant colony algorithm to solve the scheduling problem of flexible manufacturing workshop.
Ding and Gu [29] proposed an improved particle swarm optimization algorithm for solving FJSP. Li et al. [30] developed a hybrid artificial bee colony algorithm based tabu search to solve flexible job shop scheduling problems in a modern manufacturing enterprise. Zhu et al. [31] adopted a memetic algorithm for a new low carbon flexible job shop scheduling problem by considering worker learning. Li et al. [32] proposed an improved Jaya algorithm to solve the flexible job shop scheduling problem based on time constraints and energy efficiency.
More recently, among the metaheuristics, migrating birds optimization algorithm (MBO), as a new meta-heuristic algorithm inspired by the V-shaped flight formation of migrating birds, has proved to be effective on energy conservation. This algorithm is unique where the benefit mechanism is utilized to replace the poor-quality solution and accelerate the evolution process greatly. Meanwhile, this algorithm has successfully applied in related combination optimization problems. For instance, Pan applied MBO to mixed flow shop scheduling [33]; Zhang et al. [34] studied the problem of hybrid flow shop hybridizing with lot streaming (HLFS) with the objective of minimizing the total flow time with Migratory bird optimization algorithm; Zhang et al. [35] solved the u-shaped assembly line balance problem and worker assignment problem with MBO; Li et al. [36] applied improved MBO to the mathematical model of robot U-shaped assembly Line Balance problem; Janardhanan et al. [37] solved the problem of assignment and balance of two-sided assembly line workers with migratory bird optimization algorithm. Hence this work aims to extend a new version of MBO to tackle this proposed problem.
In sum, this paper presents two contributions for solving the PCB as follows. 1) This study introduces the concept of the core bottleneck degree of shop scheduling, which effectively solves the problem of rational selection of machines and load distribution. 2) This study proposes a bottleneck degree-based migrating birds algorithm to tackle this PCB problem. In which, a two-layer coding and decoding mechanism, a variable neighborhood structure and a competition mechanism are employed to achieve the proper balance between exploration and exploitation. Computational study demonstrates that the proposed bottleneck degree-based migrating birds optimization (BMBO) has a greater performance compared with six other state-of-the-art algorithms.
The remainder of this paper is organized as follows. Section II presents the problem description and mathematical formulation. Subsequently, the proposed bottleneck degree-based migrating birds optimization algorithm is introduced in Section III. Section IV presents the experimental results and finally Section V concludes this study and suggests several future research directions.

II. PROBLEM STATEMENT AND FORMULATION
Recognizing real-time bottlenecks and correspondingly producing a schedule based on the recognized bottleneck are important for workshop to increase the machine utilization rate and production efficiency simultaneously. Hence, a novel approach is first proposed to discover the potential bottlenecks and to evaluate their bottleneck degree. Then, based on the evaluation, a dynamical scheduling mathematical model is formulated.
As the most popular dynamic scheduling, periodic rescheduling is featured on relative simplicity and reliability with no response to emergencies. Continuous rescheduling can deal with them with future events not foreseen in the overall concept. For the periodic and event-driven scheduling strategy, a scheduling event will be triggered to reschedule immediately when the bottleneck degree of one or more equipment in a production system is greater than 80 (see Table 7). Otherwise, wait until a production cycle is completed before scheduling.

A. EXPLICIT REPRESENTATION OF BOTTLENECKS
In the production system, the production equipment with the largest load is considered as the bottleneck [12]. Pollett [10] defined the equipment with the longest average processing queue wait time as a bottleneck. Roser et al. [38] used equipment duration active time as an indicator to identify instantaneous and average bottlenecks in discrete processing systems. They carried out bottleneck identification with machine load rate as indicator. Pegels and Watrous [39] proposed a method for seeking dynamic identification of bottlenecks with the number of work-in-progress as the object of study. Muthiah and Huang [40] integrated equipment productivity, utilization and quality efficiency trio as an indicator of system bottleneck identification.
Based on the above studies, this study identifies the following four indicators for the establishment of bottleneck degrees: machine utilization, machine capacity load ratio, machine uninterrupted activity time and machine down time.

B. MULTI-INDEX BOTTLENECK RECOGNITION
Provided that all machines in the production system may be bottlenecked, bottleneck degree is coined as an indicator to evaluate quantitatively the workload degree of these machines. The bigger the bottleneck degree, the greater the probability is for the corresponding machine to be bottlenecked. This study selects four attributes for evaluation: machine utilization (X 1 ); machine capacity load rate (X 2 ); uninterrupted activity time (X 3 ); machine down time (X 4 ).
Based on the attributes of a machine, the corresponding values of each machine for all the four attributes are indicated as, , in which l denotes the evaluation index type and l = 1, 2, 3, 4; k denotes the serial number of machines for processing. The bottleneck degree of each machine is calculated by expressions (1-6) by using technique for order performance by similarity to ideal solution (TOPSIS) [41]- [43]. The equation (1) normalizes the given data of all the evaluation indexes to eliminate dimensional differences in different attributes.
Equations (2-3) screen the maximum and minimum scenarios for each evaluation index from obtaining data sets.
Equations (4-5) use the Euclidean norm as a measure of distance, and calculate the distance from any feasible solution y k l to the maximum/minimum values.
Based on the distance from positive and negative ideal solutions, the equation (6) is utilized to obtain the bottleneck degree of each machine w k .
Using the equations (1-6), we can obtain the bottleneck degree of each machine {w k }. Then, the values of bottleneck degrees will be regarded as an input into the scheduling system.

C. MATHEMATICAL FORMULATION
The dynamical PCB scheduling problem based on bottleneck degrees can be characterized by jobs, machines, and bottleneck degrees of these machines. Particularly, each job has one or more operations to be processed according to the given processing route. Each operation can be assigned to more than one optional machine with specific processing time. The goal of dynamical scheduling is to select a suitable machine from the optional set for each operation and determine the VOLUME 8, 2020 sequence of operations on each machine to eliminate potential bottlenecks and achieve higher production efficiency. The main assumptions of this model are first presented as follows.
(1) Each machine can perform at most one operation at a time.
(2) Each operation of a job should be performed exactly once while at most one of them can be performed at a time.
(3) All operations of a job should be performed subject to process route.
(4) Each job can be processed at zero. (5) Interruption is not allowed once an operation of a job starts.
(6) Setup time before performing an operation is included in the processing time.
Indices and Sets: l The evaluation index type, (l = 1,2,3,4) k(k ) : Machines, (k = 1, 2, . . . , K ). Set of available machines for the jth operation of job i and |M ij | ≥ 1. P ijk : Nominal processing time of the jth operation of job i on machine k.
The best result achieved for the objective function.
Variables: X ijk Binary variable. Takes value 1 if the j th operation of job i is allocated to machine k. R iji j k Binary variable. Takes value 1 if on machine k, the j th operation of job i is processed before the j th operation of job i ; and 0 otherwise. S ijk : Continuous variable, start time of the j th operation of job i on machine k. E ijk : Continuous variable, completion time of the j th operation of job i on machine k. C i : Completion time of job i. z 1 , z 2 , z Lp Free variable, objective functions corresponding to bottleneck degree, makespan and linearized weighted objective.
Utilizing the notations above, the dynamical scheduling problem based on bottleneck degrees can be described as follows: With regard to objectives, equation (7) tries to reduce the difference between the maximum and minimum bottleneck degrees to increase the smoothness of work allocation among machines and decrease the severity degree of bottlenecked machines. Equation (8) minimizes the manufacturing cycle time of a batch of jobs, also called makespan. Based on this, equation (10) calculates the normalized combination of these two objective values.
As for constraints, equation (10) requires that each operation of a job is performed exactly once by a machine. Equations (11)(12) determine the sequence of all operations allocated to a machine with the help of its virtual start / end operations. Specifically, except for the virtual end operation, each operation has an immediately following one and similarly, except the virtual start operation, each operation has an immediately preceding one. Equations (13)(14)(15)(16) determine the start times of all operations. Among them, equation (13) declares that if two operations are allocated to a machine, the next one can start after the completion of the previous one. Equation (14) demands the next operation of a job can start after the completion of its previous operation. Equations (15)(16) calculate the completion time of an operation according to the specific processing time by the allocated machine. Equation (17) indicates that a job is completed at the moment of the completion time of its last operation.

D. AN ILLUSTRATED EXAMPLE
Here, this section gives an example to further illustrate PCB. In this example, this study gives a 5 * 5 case with 5 jobs and 5 processes. Each process has at least 2 optional machines for processing. The Table 1 below gives the relevant data of the case. The table gives the jobs, the optional machines corresponding to the jobs in each process and the processing time on the machines, respectively. As per the problem description, Figure 1 gives the scheduling Gantt chart for the case and Figure 2 gives the scheduling Gantt chart for the case based on the bottleneck degree.  The rectangular part of the graph shows the machining operation of the job, which can only be sent to the next machining process after each machining is completed. Both use the same case and the first-come, first-served scheduling rule. From Figure 1, it can be seen that the value of makespan is 77 while that of Figure 2 is 70. This shows that under the same scheduling strategy, the shop floor scheduling based on bottleneck degree can effectively shorten the machining time and improve the delivery delay of the order. From Table 1, the bottleneck degree difference of the machine in Figure 2 is 25 and the bottleneck degree difference of the machine in Figure 1 is 29, indicating that the load of the machine in Figure 2 is more uniform.

III. A BOTTLENECK DEGREE-BASED SOLUTION ALGORITHM
This section introduces the basic migrating birds optimization (MBO), and later describes the main components of the bottleneck degree-based MBO algorithm for the PCB problem under consideration.

A. BASIC MIGRATING BIRDS OPTIMIZATION
The migrating birds optimization (MBO) algorithm is a recent high-performing meta-heuristic algorithm inspired by the migrating birds' flight in a V-shaped formation [35]. It shows competing performances in different kinds of combinatorial optimization problems. In MBO, each individual bird in a migrating flock searches for the best solution in its neighborhood and even in the shared neighborhood of its previous individuals. In this way, MBO can ensure that the current solution can be updated by locating a satisfactory solution in the shared neighborhood solution. MBO starts with a flock of birds flying in a hypothetical ''V'' formation. In this formation, the head bird provides leadership while others follow on the right and left lines. When the leader is tired, it may move to the tail of the following birds and another bird will take its place to lead the population. Generally, this algorithm mainly contains four steps: initialization, improvement on leader bird, improvement on following birds and selection of leader bird. Note that, the MBO sets four parameters: the number of birds in the population α, the number of neighbors to be considered β, the number of neighbors to be shared with next bird χ and the number of tours γ (the number of iterations spent by bird as a leader). And then, α birds are generated randomly, in which the best bird is selected as the leader and other birds are randomly put on the left and right following lines. Hence the original MBO is depicted in Figure 3 as the following.

B. THE PROPOSED BMBO
In this section, a bottleneck degree-based migrating birds optimization (BMBO) is proposed for solving the considered problem. We first determine the two-level encoding and present a decoding rule based on bottleneck-degrees. Then, we make several modifications to modify the performance of the basic MBO, including the population initialization based on bottleneck-degree, neighborhood search strategies, and a competitive mechanism. With these modifications, the proposed algorithm is expected to capture the balance between the exploration and exploitation abilities, and it performs well in solving this problem. The framework of BMBO is depicted in Figure 4, and the details are described as follows.

1) ENCODING AND DECODING
Since the scheduling process for a flexible job shop with recognized bottlenecks involves operation sequence and machine allocation, the bird representation includes two vectors: operation vector and machine vector. Accordingly, a two-layer encoding approach is adopted to describe the above two types of information respectively as depicted in Figure 5. Specifically, in the operation sequence code, each number represents the index of the processed job and the   The decoding process transforms the chromosome with the above representation into a feasible solution. The procedure of the proposed decoding mechanism is shown in Figure 6.
It is worth noting that an operation can start only after that its previous one has completed and the machine to perform this operation is available.

2) POPULATION INITIALIZATION
Initial solutions show significant effect on the performance of the population and a good initial population possesses the traits of better quality of best solutions and higher diversity among solutions [44]. Moreover, as described above, the flexible job shop with recognized bottlenecks involves task allocation and machine assignment. Hence, two effective heuristic rules and a bottleneck degree-based initialization mechanism are designed for the initialization of task assignment and machine assignment respectively to ensure the population diversity.
For task allocation, a rule-based initialization approach is employed to allocate tasks to promote the performance of initial birds. In this approach, two existing effective rules and their combinative operators explained as follows are applied randomly [45], [46].
MOPNR: give higher priority to the job that has a bigger number of remaining operations; LRPT: endow higher priority to the job with the larger remaining processing time.
MOPNR + LRPT: sequence the job with the MOPNR rule at first; if two tasks have the same priority, then employ the LRPT rule; LRPT + MOPNR: sequence the job with the LRPT rule for initialization; if two tasks have the same priority, then employ the MOPNR rule.
For machine assignment, since the bottleneck degree cannot be provided before allocating these jobs to the machines, the historical bottleneck degree of these machines is adopted. When allocating a machine to an operation, the following principle should be taken into account.
(1) All optional machines are sorted in the ascending order of historical bottleneck degrees.
(2) The machine with the minimum historical bottleneck degree is allocated to perform the operation.

3) NEIGHBORHOOD STRUCTURES
As described in part A of Section III, β neighbors around the leader bird and β-χ neighbors around each following bird are generated to improve the corresponding bird's performance. In this paper, two operations including swap and insert, are employed to generate neighborhood solutions. Swap operation: two different elements are randomly chosen and the positions are swapped.
Insert operation: an element is chosen arbitrarily and then inserted into another position.
Since flexible job shop problem with recognized bottlenecks involves operation allocation and worker assignment, the neighborhood structures are applied for the task sequence code and the machine allocation code, randomly and respectively.
It should be noted that generated descendant chromosomes must be feasible because they are exchanged within the set of optional machines during the same process. If an infeasible solution is generated, a conflict resolution mechanism should be adopted.
Regarding individuals with conflicting chromosomes, it should be determined whether the number of jobs is less than the number of processes, in accordance with the frontto-back sequence of the chromosome gene position. If the number of occurrences is greater than the number of processes, then the gene position will be randomly replaced with an unassigned job.

4) COMPETITION MECHANISM
The migrating birds flight in a V-shaped formation is not only effective on saving energy, but also can share their neighbors with others. However, since the basic MBO arbitrarily puts birds on hypothetical V formation, some promising birds may emerge in the tail and have few opportunities to share their neighbors. To change this situation, a competition mechanism has been developed in the V formation, which is executed after the selection of a leader bird and aims to adjust the position of each following bird in the flock lines. For each line, the bird with the best fitness locates in the first position of the line, with the 2nd best fitness in the 2nd position while the worst bird flies at the end of the line. Consequently, this mechanism guarantees the promising birds are located in the front of the line and have more opportunities to share their neighbors.

IV. EXPERIMENTAL STUDY
The mathematical model is coded by GAMS/Cplex. The solution method based on MBO algorithm is programmed by Matlab. The above programs all run on Intel R Core TM i7 (4790) processor running at 3.20 GHz with 16 GBytes of RAM.
At present, three kinds of experiments are carried out: (1) small-scaled benchmark instances for a comparison study on the performance of mathematical model calculated by GAMS/Cplex and the proposed BMBO; (2) middle-scaled and large-scale benchmark instances to illustrate the performance of the proposed MBO and (3) actual data and rules used in practice for comparison. Among them, the basic configuration of the job and the number of machines in the typical flexible workshop is included in the simulation experiment, conditions for which are designed in this chapter, including the number of new jobs, machines, performance indicators, etc. The test data used in this article is from benchmark data source, download from http://www.idsia.ch/~monaldo/fjsp.html.

A. PARAMETER CALIBRATION
This section calibrates the parameters of the proposed and comparison algorithms. Since parameters have significant influence on the performance of algorithms, this study utilizes the Taguchi method to select the proper parameter values. VOLUME 8, 2020 For BMBO, there are five parameters or controlled factors: the number of initial solutions (Pop), the number of neighbor solutions to be considered (Sol), the number of neighbor solutions to be shared (S Sol), the number of tours (Loop) and the maximum iteration number (liter). This study utilizes orthogonal array to arrange experiments. Based on the parameter calibration method reported in [35], the full factorial design is proposed and the multifactor analysis of variance (ANOVA) technique is applied to select the parameter values. Specifically, the largest case with 20 jobs and 15 processes is selected and is solved ten times by any combination of the parameter levels.
For all the experiments are conducted, the relative percentage deviation or RPD is selected as the response variable using, where, F Some is the function value achieved by a given parameter combination and F Best is the best function value obtained by all combinations for the same instance. Clearly, the algorithm with a lower RPD has a better performance. Specifically, we utilize orthogonal array to arrange the experiments which then are run to obtain the corresponding response value. As shown in Table 2, there are L 16 (4 5 ) experiment combinations and each experiment is run 10 times. Then, the average RPD is regarded as the final response value. After obtaining the response values, the multifactor analysis of variance (ANOVA), a powerful parametric statistical inference tool, is carried out to check the normality, homoscedasticity and independence of the residuals. Detailed ANOVA results are illustrated in Table 3. It is observed that the parameter liter, the maximize iteration number, has the largest delta 0.15, indicating that liter has the greatest influence on the proposed BMBO. If ranking the parameters in the decreasing order of the F-ratio values, the sequence is liter, Loop, S Sol, Pop, Sol, where the former parameter has greater influence.
Subsequently, an analysis was conducted using the data, the results of which are shown in Figure 7. By comparing the slopes of the lines, the relative magnitudes of the effects of each factor can be compared. As shown above, the number of shared solutions exerts the maximum effect on the optimal solution. The maximum BMBO parameter combination at the current experiment level was obtained. According to the signal-noise ratio (SNR) main effects plot of the four parameters is illustrated in Figure 7. SNR is the ratio of the value of objective function to the variance value of objective function. The bigger the SNR, the greater robustness the parameter combination will have. As reported, the best combination of parameters is: Pop = 13, Sol = 6, S Sol = 4, and Loop = 5, liter = 200.
Similar to the proposed BMBO, the parameters of the six comparison algorithms are also calibrated. The recommended parameter settings of all these algorithms are summarized in Table 4.

B. COMPARISONS WITH Cplex SOLVER
We utilized the GAMS and BMBO algorithms to conduct comparative trials of examples at various scales. As revealed on the table, they share the same object without any bias. The two algorithms turn to generate consistent calculation results of the makespan and load degree. In terms of computing time, BMBO's CPU time was slightly faster than that of GAMS. The results are listed in Table 5.

C. ALGORITHMIC PERFORMANCE
To test the performance of the proposed BMBO, the objective value of makespan and average relative percentage deviation (RPD) is utilized to evaluate the obtained objective values with expression (18). Here, F some is the average value achieved by a given algorithm among 10 run times, and F best is the best function value obtained by all algorithms for the same instance. Clearly, the algorithm with a lower RPD has a better performance.

1) EFFECTIVENESS OF ALGORITHM IMPROVEMENTS
In this section, the obtained results by the proposed BMBO are first compared with those solved by three variants of the BMBO with partial improvement strategies: MBO_1 represents original MBO, MBO_2 is augmented with a competitive mechanism, and MBO_3 is augmented with a new domain structure. BMBO refers to an MBO algorithm that contains all updates. The comparison results are provided in Table 6. In this table, columns 1 presents the instances. Here, Best means the best value of makespan for each instance among all the algorithms, AVG means the average value of the makespan values for each instance in ten repetitions by each algorithm. The RPD is calculated according to '' (19)'' and the smaller RPD value denotes the better performance. Table 6 reveals that BMBO generated the lowest makespan among the four algorithms and all the variant versions outperform MBO_1, it can demonstrate the effectiveness of our modifications to the basic MBO. Specifically, the RPD of BMBO was significantly lower than that of the other three algorithms. This demonstrates that BMBO was closest to the optimal value and was a more advantageous algorithm compared with the other three algorithms. In addition, it can also be seen from Table 6 that BMBO has the lowest load degree among the four algorithms. For example, the RPD of BMBO was 0.06, while that of the other three algorithms was 0.20, 0.12, and 0.09, respectively. This indicates that BMBO had a more optimized RPD value. This finding proves statistically that the competitive mechanism and neighborhood structures can improve the performance of the algorithm much more significantly than the leader change strategy. Specifically, the process of individuals searching for their own neighborhood solutions in accordance with various neighborhood structures and evolution strategies indicates the scatter search performance of BMBO, then the process of sharing neighborhood solutions demonstrates the intensive search performance of BMBO. The combination of both can accelerate the search process of identifying the approximate solution, allowing the algorithm to quickly ascertain an approximate optimal solution in a short time.

2) EFFECTIVENESS OF BMBO
To further investigate the effectiveness of the proposed BMBO, the obtained results are first compared with those solved by the six existing algorithms.
The selection of these compared algorithms is due to them performing well on related flexible job shop problems. All the compared algorithms use our proposed decoding to assign jobs and calculate the objectives.   5.96, 6.11. Hence, to ensure the fairness of the comparisons, the run time or the iteration times is set the same. The comparison results are provided in Table 7 and it indicates that the improved MBO is effective. To be specific, the value of makespan obtained by the BMBO algorithm is the lowest among the seven algorithms. The The results about bottleneck degree differences are provided in Table 8 and it indicates that the values of wd obtained by the BMBO algorithm are lower than the other six algorithms for all the instances. Moreover, the average bottleneck degree of BMBO is 6.6, while those of the other six algorithms are 25.9, 8.2, 8.4, 30.2, 24.7 and 9.7 respectively. This signifies that BMBO is significantly better than other algorithms in terms of machine load balance.
In addition, a comparison between the bottleneck degree curves of the compared algorithms was performed with four randomly selected procedures. It should be noted that vertical coordinates represent bottleneck degree values, while horizontal coordinates represent machine numbers. The results are depicted in Figures (8-11) as the following.   In accordance with the four load curves in Figures (8-11), the GA, ABC and MA curves have a greater curvature but insufficient smoothness. In other words, under these three algorithms, the load difference among machines remained significant, which can easily lead to a bottleneck problem. The curves of PSO, ACO and JAYA appear smoother, indicating that the machine load distribution was balanced.  Upon further examination of these curves, it can be observed that the BMBO curve is smoother than the PSO, ACO and JAYA curves. This signifies that the load was distributed in a more balanced way along the BMBO curve and that the bottleneck effect on the production system was eliminated more  effectively. In addition, BMBO fluctuates less in the resulting values, indicating better stability of the values generated by the method. This is largely attributed to the target-directed sorting and decoding of the initial solution applied by BMBO, which ensures the generation of the optimal solution. In sum, these results demonstrate the effectiveness of the BMBO algorithm. Based on the results of bottleneck degree differences and RPD, the ANOVA test is conducted to check whether BMBO outperforms other algorithms statistically. To be specific, we first compare the proposed BMBO with MBO_1, MBO_2 and MBO_3. From Figure 12, we can see clearly that the BMBO generates the best results for all the texted problems and slightly outperforms all the variant versions of original MBO, it can demonstrate the effectiveness of our modifications to the basic MBO. Moreover, Figure 13 presents the means and intervals of the and RPD of BMBO and other tested algorithms at 95% CI. The figure reveals that BMBO has a lower RPD than other algorithms.

D. CASE STUDY
When the PCB manufacturing factory scheduling, since the scheduling system is at time 0, parameters are not available at this time to calculate the bottleneck degree. Therefore, when scheduling at time 0, the bottleneck degree is calculated using historical data. Some of the historical bottleneck degrees are shown in Table 9 below.
Trials were conducted with six sets of data (D01-06) from an enterprise. In actual production, the following scheduling rules are used for simplicity: shortest process time (SPT), longest process time (LPT), and earliest due date (EDD). Under the bottleneck degree framework, we compared these three scheduling disciplines with the BMBO algorithm integrated with a bottleneck degree difference (w d ) in terms of scheduling to improve the effectiveness of these methods. The comparison results are presented in Table 10.
As illustrated in Table 10, the BMBO-generated makespan is slightly lower than that of the other three disciplines. From the data in the table, we can see that the makespan by BMBO is improved by 16.5%, 11.5% and 13.3% over EDD, SPT and LPT, respectively. This shows that the maximum completion time has been effectively improved and the on-time delivery of orders has been improved. From the bottleneck degree differences in the table, we can see that the bottleneck difference of BMBO is the smallest with the average value of 6, and the bottleneck degree differences of other rules are 25.2, 15.6 and 24.6 respectively, which shows that the bottleneck difference of each machine under BMBO is the smallest, and the load of the machine is more balanced, which can effectively improve the production efficiency. The results also indicate that when devices are first sequenced with the bottleneck-degree-integrated BMBO approach and then assigned tasks according to the bottleneck degree, their load balance can be greatly improved or ameliorated, which can help minimize the effect of a production bottleneck on production systems.  Table 10 indicates that the BMBO algorithm outperforms the other three disciplines in terms of the resulting indicators, as its average RPD was lower. The RPD of BMBO is 0.03, while that of the other three algorithms are 0.16, 0.08 and 0.10. This demonstrates that BMBO is closest to the optimal value and was a more advantageous algorithm compared with the other three algorithms. This signifies that the BMBO-generated solution is closer to the optimal solution. Figures (14)(15) present the means and intervals of the bottleneck degree and RPD of EDD, SPT, and LPT at 95% CI. Among them, Figure 14 reveals that with respect to the bottleneck degree and RPD, BMBO has a more balanced load than EDD, SPT, and LPT (95% CI). Similarly, from Figure 15, we can see clearly that the BMBO generates the best results for all the texted instances. Moreover, BMBO fluctuates less in the resulting values, indicating that values generated with this approach have better stability. This can be largely attributed to the goal-directed sequencing and decoding of the initial solution applied by BMBO, which guarantees the generation of the optimal solution.

V. CONCLUSION AND FUTURE STUDIES
In this paper, an MBO algorithm is proposed to solve printed circuit board shop scheduling problem. The MBO design complexity is reduced using a double-layer chromosome coding/decoding approach. In addition, the combination of double-layer coding/decoding-based crossover and variation approaches and the variable neighborhood approach achieves a significantly higher search efficiency. Trials with standard data as well as actual data of an enterprise demonstrate the satisfactory operating efficiency of the improved MBO. These trials also demonstrate that the improved algorithm can lower the probability of bottleneck occurrence, can balance loads on different devices in the production line, and can raise the production efficiency of an enterprise.
In future work, studies will be conducted that take into account product differentiation in the flexible production workshop and additional differentiation in terms of machine distribution in the production process and each procedure. The proposed BMBO algorithm lacks memory and there is no guarantee that a new solution will be generated for each iteration. Therefore, it is suggested that some heuristic rules can be used to generate the initial solution. and another interesting direction is to incorporate exact algorithms or contraption lists into BMBO to further improve its performance.
A. IMPROVED PRODUCTIVITY the current management model is underutilized and uneven with respect to the machines on the production line. When production managers determine the daily production tasks, they assign tasks to each line based on orders. If bottlenecks are created, they must be scheduled around the bottlenecks to maximize the utilization of the bottlenecks and ignore the utilization of other machines. In the PCB production line, to enhance the utilization of each machine is very necessary. Therefore, each machine's bottleneck degree of real-time monitoring, dynamic task allocation and adjustment, productivity has increased significantly.

B. REQUIREMENTS AND IMPLEMENTATION
Firstly, it is important to ensure that all machines are highly flexible and available and that production tasks can be assigned to them at any time. Secondly, the maintenance level is determined according to the production needs to maximize the productivity of the machines. After the above conditions are met, the manager can use the models and algorithms provided to obtain a model of the task assignment in real production. Based on the model, the manager can obtain a production task assignment plan and then select the appropriate plan for production to achieve a balance between production efficiency and order delivery time.