An Optimization Method for Multi-Objective Batch Flow Scheduling Problem in PCB Assembly Workshop

CN117908489BActive Publication Date: 2026-09-01WENZHOU UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410078133.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-01-19
Publication Date
2026-09-01
Estimated Expiration
2044-01-19

AI Technical Summary

Technical Problem

目前的研究文献主要集中在表面贴装机工序的优化,传统的SMT单工序的研究无法满足生产现实需求,急需研究整个PCB组装车间的调度优化问题,以提高生产效率、降低能耗、减少成本

Benefits of technology

[0150]Compared with existing technologies, the Spider Monkey Optimization (SMO) algorithm of this invention is based on a fission-fusion social mechanism. It reduces the foraging competition pressure among individuals through population splitting to achieve the goal of optimization, offering advantages of simplicity and efficiency. Therefore, this invention addresses the multi-objective batch flow scheduling problem in PCB assembly workshops, aiming to minimize completion time, total energy consumption, and total delay. It proposes a two-stage improved Spider Monkey Optimization algorithm. The key features are: Stage 1 designs a combined heuristic method to generate partial initial solutions and improve their quality; Stage 2 proposes a leader selection method based on contribution value to improve the algorithm's distribution; Stage 3 selects different individual update methods based on the population's evolutionary state to achieve a balance between the algorithm's exploration and development capabilities; and finally, a Q-Learning-based parameter adjustment method is used to achieve adaptive adjustment of the algorithm parameters. Thus, this invention can quickly solve the multi-objective batch flow scheduling problem in PCB assembly workshops, improving machine utilization and effective output.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117908489B_ABST
    Figure CN117908489B_ABST
Patent Text Reader

Abstract

This invention discloses an optimization method for a multi-objective batch flow scheduling problem in a PCB assembly workshop, comprising two stages: Stage 1, using the heuristic I-ECT rule to solve the component allocation and sorting problem, with the objective of minimizing the maximum completion time C of SMT. max In the first stage, the processing time matrix of PCB orders in the SMT process is calculated; in the second stage, the improved Spider Monkey Optimization (ISMO) algorithm is used to solve the order sorting, order batching, and batch allocation problems, so as to simultaneously minimize C. max Total energy consumption and total delay were considered. To improve algorithm performance, four techniques were employed: a combined heuristic for generating initial solutions, a leader selection method based on contribution values, an individual update method based on population evolutionary state, and adaptive parameter adjustment based on Q-Learning. Comparative experiments with four classic multi-objective evolutionary algorithms showed that the two-stage ISMO algorithm outperformed the other two in terms of solution set convergence, distribution, and robustness, effectively solving the multi-objective batch flow scheduling problem in PCB assembly workshops.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of intelligent optimization scheduling in production workshops, and in particular to an optimization method for multi-objective batch flow scheduling problems in PCB assembly workshops. Background Technology

[0002] With the transformation and upgrading of the manufacturing industry towards digitalization and intelligence, the PCB manufacturing industry is booming. As an essential component of intelligent electronic devices, the PCB assembly workshop plays a crucial role in the intelligent manufacturing industry. In the context of multi-variety, small-batch customized production, facing characteristics such as short lead times and coupled sub-problems, studying the scheduling problem of the PCB assembly workshop can effectively improve the production efficiency and competitiveness of enterprises, and has important theoretical and practical significance. Current research literature mainly focuses on the optimization of surface mount technology (SMT) processes. Traditional research on single SMT processes cannot meet the actual production needs. There is an urgent need to study the scheduling optimization problem of the entire PCB assembly workshop to improve production efficiency, reduce energy consumption, and reduce costs. The PCB assembly workshop is a typical hybrid flow workshop, including four main processes: solder paste application, component placement, reflow soldering, and visual inspection. Compared with the traditional single-piece flow production method, the batch flow production method is conducive to optimizing production planning and scheduling, reducing waiting time and delivery risks in the production process. At the same time, the batch flow production method is also conducive to quality control and process improvement, because under the same process flow, it is easier to monitor and adjust production parameters, improving the consistency of product quality. In the hybrid flow workshop, the advantages of the batch flow production method are further realized. By rationally arranging and scheduling production batches for different processes, the advantages of batch flow production can be maximized, thereby improving the overall production efficiency and resource utilization of the workshop. Therefore, studying the application of batch flow in hybrid flow workshops is of great significance, as it helps to further optimize workshop production processes and enhance the competitiveness and economic benefits of enterprises. Summary of the Invention

[0003] The purpose of this invention is to provide an optimization method for the multi-objective batch flow scheduling problem in a PCB assembly workshop. This invention can quickly solve the multi-objective batch flow scheduling problem in a mixed flow workshop, and has the characteristics of improving workshop machine utilization and effective output.

[0004] The technical solution of this invention: an optimization method for multi-objective batch flow scheduling in a PCB assembly workshop, such as... Figure 1 As shown, it includes Phase One and Phase Two:

[0005] Phase 1: First, initialize the surface mount process parameters, and then determine the processing time matrix of the PCB order in the SMT process using the heuristic rule I-ECT.

[0006] Phase Two involves defining the problem description and objectives, including order batching, order sorting, and batch allocation, and generating the initial population for the Spider-Monkey Optimization Algorithm (SMO). A leader is selected based on the contribution value method to improve the distribution of SMO solutions. Different individual update methods are chosen according to the evolutionary state of the population to achieve a balance between the SMO's exploration and development capabilities. Finally, a Q-Learning-based parameter adjustment method is employed to achieve adaptive parameter adjustment for the SMO.

[0007] Therefore, an improved two-stage spider monkey optimization algorithm is used to optimize the solution of the multi-objective batch flow scheduling problem in the PCB assembly workshop.

[0008] The optimization method for the multi-objective batch flow scheduling problem in the PCB assembly workshop described above, in stage one, calculating the processing time matrix of PCB orders in the SMT process using the heuristic rule I-ECT includes the following steps:

[0009] Step 1: Define the problem description and objectives for Phase 1: A PCB order requires m SMT machines to process t c There are a total of n components of various types undergoing surface mount technology (SMT) processing. The decision-making process involves determining the allocation and placement order of these n components across m machines, minimizing the processing time C. max , is represented as a processing time matrix; furthermore, it is assumed that each surface mount machine is approximately an unrelated parallel machine; each SMM has one feeder, each feeder can hold multiple feed slots, and each feed slot can only hold one type of component; the same component is allowed to be assigned to multiple machines on the assembly line, and there are no priority restrictions; failure factors are not considered during SMM processing.

[0010] Step 2: Generate a scheduling scheme for a single PCB order in the SMT process according to the following heuristic rules I-ECT;

[0011] Step 2.1: Initialize the completion time mc of machine i i∈{1,2,…,m} =0, no component set Components = {1,2,…,n} is arranged, component j i The set of components on machine i Component a has been arranged on machine i. i ;

[0012] Step 2.2: If End, output solution information; otherwise, machine i = 1, go to step 3.3;

[0013] Step 2.3: If i≤m, go to step 3.5; otherwise, go to step 3.4.

[0014] Step 2.4: Select machine i * satisfy Components Assigned to machine i * superior, Machine i * The last assigned component Proceed to step 3.2;

[0015] Step 2.5: If machine i has no components, select component j. i ∈Cemponents, satisfying Proceed to step 3.3; otherwise, proceed to step 3.6.

[0016] Step 2.6: Select j i ∈Components satisfy Proceed to step 3.3;

[0017] Step 3: Decode the scheduling scheme generated by the heuristic rule I-ECT and calculate the processing time matrix of various PCB orders in the SMT process;

[0018] Step 3.1: Initialization: Total time SDP for machine i to process one PCB i∈{1,2,…,m} =0, the maximum number of PCBs continuously mounted on machine i (cn) i∈{1,2,…,m} =0, the total travel distance DT of the machine head processing one PCB on machine i. i∈{1,2,…,m} =0, i=1, assembly line component sequence index p i =1, p-th node on machine i i and p i +1 processed component and k * It is the pth process processed on machine i i Type of component

[0019] Step 3.2: If i≤m, go to step 3.3; otherwise, go to step 3.6.

[0020] Step 3.3: If p i ≤c i Proceed to step 3.4 if the condition is met; otherwise, proceed to step 3.5.

[0021] Step 3.4: If p i =1, then p i =p i +1; if p i =c i ,but p i =p i +1; if pi ≠1 and p i ≠n i DT i = p i =p i +1, proceed to step 2.3.3;

[0022] Step 3.5: Proceed to step 3.2;

[0023] Step 3.6:

[0024] The aforementioned optimization method for the multi-objective batch flow scheduling problem in PCB assembly workshops, in stage two, the implementation of the two-stage improved spider monkey optimization algorithm includes the following steps;

[0025] S1. Obtain the processing time matrix;

[0026] S2. Initialize the initial population P0 of the Spider-Monkey optimization algorithm, with a size of Popsize;

[0027] S3: SM for each individual spider monkey in the population h Decoding is performed on (where h = 1, 2, ..., N), and the maximum completion time is C. max Total Tardiness Time (TT) and Total Energy Consumption (TEC);

[0028] S4: Perform a fast non-dominated sort on the population individuals to determine the Pareto solution set A, and update the external Pareto solution set A. * ;

[0029] S5: Determine if the termination condition is met, i.e., whether the iteration count t > Maxgen. If yes, end; otherwise, proceed to the next step.

[0030] S6: Randomly group the individuals in the population, calculate the contribution value of the spider monkey individuals in the Pareto solution set A using the contribution value method, determine the local leader (LL) and the global leader (GL), and proceed to the next step;

[0031] S7: Determine if the number of population iterations t ≤ Maxgen*p t Is this valid? If yes, proceed to the next step; if no, proceed to step S9.

[0032] S8: Based on the algorithm parameters adaptively adjusted by the Q-learning method, execute the Local Leader LLP and Global Leader GLP update phases, and use the "crossover" operation to update the population individuals within each group and the entire population individuals, then proceed to step S10.

[0033] S9: Based on the adaptively adjusted algorithm parameters according to the Q-learning method, and based on the difference entropy between two adjacent generations of population evolution, distinguish whether the population is in a convergent or stagnant state, perform "crossover + crossover" operation or "mutation + neighborhood search" operation to update the population individuals in each group and the entire population, and then proceed to step S10.

[0034] S10: Perform the global leader learning phase and determine if the global leader has been updated; if yes, proceed to the next step; otherwise, proceed to step S13.

[0035] S11: Perform the local leader learning phase and determine if the local leader has been updated; if yes, proceed to step S14; otherwise, proceed to the next step.

[0036] S12: If any local leader exceeds the set local leader limit number of times n lll If no update is made, the local leader decision-making stage of the "cross + neighborhood search" operation will guide the individuals in the group to update again, and proceed to step S14.

[0037] S13: If the global leader exceeds the set global leader limit number of times n gll If there is no update, the global leader decision-making phase will determine whether to divide the population into smaller groups or merge all groups into one group.

[0038] S14: Decoding the SM of each spider monkey individual in the population h Find the target value; set the iteration number t = t + 1, and return to step S4.

[0039] In the aforementioned optimization method for the multi-objective batch flow scheduling problem in PCB assembly workshops, the initial population generation method of the spider monkey optimization algorithm in step S2 is as follows:

[0040] Step 2.1: Define the problem description and objectives for Phase Two: Phase Two includes three sub-problems: order batching, order sorting, and batch allocation; the corresponding decision is: order sorting, allocating N... o Sort the PCB orders; divide the orders into batches, N oEach PCB order is divided into batches; batch allocation determines the assembly line / machine for each batch at each process stage. Furthermore, it is assumed that the four assembly lines / machines are approximately unrelated parallel machines, and all assembly lines / machines are in an assembly / processing state at any given time; an assembly line / machine can only assemble / process one PCB order at a time; all PCBs are available for processing at any given time, and any PCB can only proceed to the next process after the previous process is completed; there are assembly line / machine qualification restrictions, meaning that not all assembly lines / machines are capable of handling all PCB orders at a given process stage; each PCB order is divided into several batches, and PCBs belonging to the same batch must be processed consecutively, and processing of other PCB orders must begin only after one type of PCB order is completed, i.e., mixed processing is not considered; there are sequence-related setup times and corresponding energy consumption between batches of different PCB orders; there are buffer zones between different PCB assembly processes, and transportation time needs to be considered; the batch quantity and size of each PCB order are decision-making factors, but the batch quantity and size remain constant across all processes; the batch processing order remains constant across all assembly lines / machines.

[0041] Step 2.2: Determine the order batches according to the boundary rules, then determine the processing sequence of the order according to the EDD rules, and finally, according to the ECT rules, assign each batch to the assembly line / machine with the shortest completion time while meeting the assembly line / machine qualification constraints.

[0042] Step 2.3: Repeat Popsize*P according to the following boundary rules. p The number of subsequent generation is Popsize*P p Initial solution for order batches;

[0043] Step 2.3.1: Set the range of order batch quantities Proceed to step 2.3.2;

[0044] Step 2.3.2: Based on the quantity CN of order o o Determine the set of possible values ​​for its batch. Proceed to step 2.3.3;

[0045] Step 2.3.3: Randomly select a value from the set as the batch number for order o;

[0046] Step 2.4: Repeat Popsize*P according to the heuristic EDD rule. p The number of subsequent generation is Popsize*P p The initial solution for the order sequence;

[0047] Step 2.5: Repeat Popsize*P according to the following heuristic rule ECT rule. pThe number of subsequent generation is Popsize*P p The initial solution for batch allocation;

[0048] Step 2.5.1: Initialize parameters, completion time of assembly line l Proceed to step 2.5.2;

[0049] Step 2.5.2: If the process index stage≤4, considering the qualification constraints of the assembly line, first assign the batches that can only select one assembly line to the corresponding assembly line, and finally obtain the set of batches AS processed by assembly line l. l The unassigned batch set US in stage 1 stage If the condition is met, proceed to 2.5.3; otherwise, output the solution and end.

[0050] Step 2.5.3: If If stage = stage + 1, go to 2.5.2; otherwise, go to 2.5.4.

[0051] Step 2.5.4: Transfer US stage The first batch of s first Assign the batch to all assembly lines in stage l that are capable of processing it, and obtain the completion time of assembly line l. Select l * satisfy US stage =US stage \s first , see version 2.5.3.

[0052] In the aforementioned optimization method for the multi-objective batch flow scheduling problem in PCB assembly workshops, step S3 involves the following decoding steps:

[0053] Step 3.1: Initialize parameters, batch completion time Assembly line completion time Total processing time for each assembly line Total setting time Batch size of order o Order index o = 1, process index stage = 1, assembly line index l = 1, proceed to step 3.2;

[0054] Step 3.2: If l≤tn lines If yes, proceed to step 3.3; otherwise, proceed to step 3.8.

[0055] Step 3.3: If Then s = 1, calculate AS l Number of batches processed Proceed to step 3.4; otherwise, stage = stage + 1, s = 1, calculate AS.l Number of batches processed Proceed to step 3.6

[0056] Step 3.4: If Then proceed to step 3.5; otherwise, l = l + 1, and proceed to step 3.2.

[0057] Step 3.5: If but Proceed to step 3.4; otherwise,

[0058] Proceed to step 3.4;

[0059] Step 3.6: If Then proceed to step 3.7; otherwise, l = l + 1, proceed to step 3.2;

[0060] Step 3.7: If but Go to 3.6; otherwise, Proceed to step 3.6;

[0061] Step 3.8: C max =max(C lines Total processing energy consumption Adjust total energy consumption Total idle energy consumption Total Energy Consumption (TEC) = EC P +EC ST +EC F Proceed to step 3.9;

[0062] Step 3.9:

[0063] In the aforementioned optimization method for the multi-objective batch flow scheduling problem in PCB assembly workshops, step S6 involves calculating the individual spider monkey SM in the Pareto solution set A based on the contribution value method. h Determining the contribution value and identifying the local and global leaders involves the following steps:

[0064] Step 6.1: First, based on the three objective values ​​(r = 1, 2, 3) in the Pareto solution set obtained from the non-dominated step S5, normalize them according to the following formula:

[0065]

[0066] In the formula: and Let r represent the maximum and minimum values ​​of the objective r in the solution set;

[0067] Step 6.2: Sort all solutions in descending order according to one of the objectives;

[0068] Step 6.3: Calculate the reference point dominated by all solutions. The formula is as follows:

[0069]

[0070] in, σ represents the numerical value of the reference point on the target r, where σ∈(0,1);

[0071] Step 6.4: Calculate the volume of the dominance region of the solution and its two adjacent solutions, using the following formula:

[0072]

[0073]

[0074] For solutions located at the edges or at both ends of the Pareto front, use CV. A Calculated using formulas; otherwise, based on CV. B calculate;

[0075] Step 6.5: The larger the contribution value of a solution, the larger the volume of its independent dominance region, which is more conducive to the distribution of the solution set. In this case, it is selected as the local and global leader. If multiple solutions have the same contribution value, one solution is selected randomly.

[0076] In the aforementioned optimization method for the multi-objective batch flow scheduling problem in the PCB assembly workshop, steps S8 and S9 involve adaptive parameter adjustment of the Q-learning strategy. This is achieved through multiple training iterations by mapping the relationship between parameter adjustment and population evolution state in the Improved Spider-Monkey Optimization (ISMO) algorithm. The steps include the following:

[0077] Step 8.1: For the key parameter p of the ISMO algorithm c1 Crossover rate p c2 Variation rate p m The perturbation rate pr is dynamically and adaptively adjusted based on Q-Learning to make the parameters more adaptable and improve the quality of the algorithm.

[0078] Step 8.2: State Design: In the ISMO algorithm, population diversity is represented by the average distance between individuals within the population, which is calculated as follows:

[0079]

[0080]

[0081] in, SM represents the t-th generation individual. u and SM v distance, and They represent The maximum and minimum values, where popsize represents the population size.

[0082] The individual's goals are normalized using the following formula:

[0083]

[0084] Calculate the fitness value of an individual:

[0085]

[0086] Calculate the average fitness value of the population:

[0087]

[0088] Calculate the maximum fitness value of the population:

[0089]

[0090] Set population status:

[0091] S * =ω1*d * +ω2*fitness * +ω3*fitness max ;

[0092] in, SM represents the t-th generation individual. u The fitness values, ω1, ω2 and ω3 represent d * fitness * and fitness max The weights were set to 0.35, 0.35, and 0.3 respectively through preliminary experiments; based on the fitness value and S... * The state space is divided into 10 states, namely S = [s(1), s(2), ..., s(10)]; where, when S * When ∈[0,0.1), s=s(1); when S * When ∈[0.1,0.2), s=s(2); and so on, when S * When ∈[0.9,1], s=s(10);

[0093] Step 8.3: Action Design: Adjust the crossover rate p based on the population state, crossover, and mutation operations. c1 Crossover rate p c2 Variation rate p m Adjust the action space with the perturbation rate pr; with p r For example, adjust according to the following formula:

[0094] p r (t)=p r (t-1)+Δp;

[0095] Where, p r (t) and p r (t-1) represent the p values ​​of generation t and generation (t-1) respectively. r The value of Δp constitutes p r The motion space contains two actions: The values ​​for the action space are shown in Table 1:

[0096]

[0097] Table 1 Action Space of ISMO Algorithm Adaptive Parameters

[0098] In the ISMO algorithm, the position update method needs to be determined based on the population state, which in turn determines the relevant parameter p. c1 and p c2 , or p r and p m Therefore, when the population is in a convergent state, at p m and p c2 action c c1 -c c1 c c2 and -c c2 Randomly select one from p; when the population is in a stagnant state, at p r and p c1 action c r -c r c m and -c m Choose one randomly from the options.

[0099] In the ISMO algorithm, individual positions are updated based on the generation and population state through either "crossover" or "mutation + neighborhood search". The parameters for the "crossover" operation are p. c1 and p c2 The parameters for mutation and neighborhood search operations are p, respectively. r and p m Therefore, when updating individuals using "crossover", from c c1 -cc2 c c2 and -c c2 Randomly select an action from c. Similarly, when using "mutation + neighborhood search" to search and update individuals, start from c. m -c m c r and -c r Randomly select an action.

[0100] Step 8.4: Reward Function Design: Parameter p c1 p c2 p m and p r Each action has a reward r c1 r c2 r m and r r It is expressed by the following formula:

[0101]

[0102]

[0103] Then calculate the agent's update value function:

[0104] Q(S,a)←Q(S,a)+α*[reward+β*maxQ(S',a')-Q(S,a)];

[0105] Where S and S' are the current and subsequent states, a and a' are the current and subsequent actions, and α and β are hyperparameters.

[0106] The aforementioned optimization methods for the multi-objective batch flow scheduling problem in PCB assembly workshops, such as Figure 3 and Figure 4 As shown, in steps S8 and S9, the "crossover" operation for updating individuals in the population is as follows:

[0107] Step 7.1: Based on the problem characteristics of Phase Two, a two-layer encoding method using natural numbers was adopted. A two-layer matrix was designed using the natural number encoding method. The first layer is a 1*N matrix. P The first layer represents the processing order of the order; the second layer is a 5*N matrix. lot The matrix has the first row representing the batch processing order and batch quantity information, and the other layers representing the batch allocation information in the four processes;

[0108] Step 7.2: Perform cross-processing on the order processing sequence code using a two-point cross method, randomly selecting r1, r2 = U[1, N]. P r1 and r2 are integers and r1 ≤ r2;

[0109] Step 7.3: Obtain the batch sort code based on the order sorting after cross-sorting in Step 6.2;

[0110] Step 7.4: The cross-coding of the four process steps uses a partial matching cross-operator similar to two-point cross-coding, and cross-coding is performed on each process step in turn;

[0111] Random selection r3 and r4 are integers and r3 ≤ r4;

[0112] In step S9, the method for determining the population state is as follows:

[0113] Step 9.1: Normalize the three objectives for each individual in the population:

[0114]

[0115] In the formula, f r (u) represents individual SM u The r-th target value, and f represents the maximum and minimum values ​​of the r-th objective value in the entire population, respectively. ur For individual SM u The r-th objective value after normalization;

[0116] Step 9.2: Calculate the fitness value of each individual in the population:

[0117]

[0118] fitness u For individual SM u fitness value;

[0119] Step 9.3: Calculate the average fitness value of the population:

[0120]

[0121] fitness avg This represents the average fitness value of the population.

[0122] Step 9.4: Calculate the change in the average fitness value between the (t-1)th and tth generations of the population:

[0123]

[0124] In the formula, and represents the average fitness values ​​of the population in generations 1, t-1, and t, respectively, and variation represents the change in average fitness between the populations in generations t-1 and t.

[0125] The smaller the difference entropy, the smaller the change in the Pareto solution set, the smaller the optimization space, and the closer the algorithm is to convergence; a critical threshold θ is used. s Distinguishing between convergent and stagnant states: ① If variation > θ s Then the population is in a convergent state; ② If variation ≤ θ s If so, the population will stagnate.

[0126] The aforementioned optimization methods for PCB assembly line workshops and batch flow scheduling, such as Figure 5 and Figure 6 As shown, in step S9, the "mutation + domain search" operation for updating individuals in the population is as follows:

[0127] Step S9.1: If the population is in a stagnant state, perform a mutation operation to enhance the local search, and only mutate the assembly line / machine assignment code of the process.

[0128] Step S9.2: For the variation of the process assembly line / machine allocation code, randomly select two batches of order o, and randomly generate 0 or 1 for each process. If it is 1, exchange the corresponding gene; otherwise, do not exchange.

[0129] Step S9.3: Calculate the target value for each individual, and apply it according to C. max And TT sort all individuals; for C max For solutions with larger values, a better solution is generated by reallocating the batch on a certain assembly line / machine, proceeding to step S9.4; for solutions with larger TT values, a better solution is generated by rearranging the order processing sequence; the rearrangement of the order processing sequence has two operations: insertion and exchange, which are randomly selected during neighborhood search, proceeding to step S9.5 or step S9.6; if the target value C of a certain solution is... max Both TT and TT are poor, so a neighborhood search method is randomly selected;

[0130] Step S9.4: Reduce C by reassigning batches on the process assembly line / machine. max The redistribution shall be carried out in accordance with the following method:

[0131] Step S9.4.1: The assembly line / machine with the longest completion time for each process. 4-stage assembly line / machine Processing batch set Pick Maximum number of iterations I max Number of iterations t s =1;

[0132] Step S9.4.2: If t s ≤Imax Randomly select batch s * If ∈S, proceed to 9.4.3; otherwise, end.

[0133] Step S9.4.3: Under the constraint of meeting the assembly line qualification capability requirements, randomly change s * If a new solution is generated during the allocation of a process, and this new solution dominates the original solution, then the new solution is output; otherwise, step 9.4.3 is repeated until all solutions satisfying the constraints have been considered, then S = S\s * Proceed to 9.4.2;

[0134] Step S9.5: Optimize the TT target by reordering orders through insertion. The specific steps are as follows:

[0135] Step S9.5.1: Initialize parameters, sort all orders in descending order of their due dates to obtain set O = {order1, order2, ..., order...} NP If the delay dates are the same, the order with the earlier delivery date is ranked first, with order index o = 1, and the maximum number of iterations I. max Number of iterations t s =1;

[0136] Step S9.5.2: If t s ≤I max Select order o Proceed to 9.5.3; otherwise, end.

[0137] Step S9.5.3: Change the processing order of the order. o Randomly inserted into the order o Process any order before processing to generate a new solution; proceed to step S9.5.4.

[0138] Step S9.5.4: If the new solution dominates the original solution, output the new solution; otherwise, repeat step S9.5.3:3 and count. For orders... o All solutions satisfying the constraints have been considered, then O = O\oredr o c = c + 1, proceed to step S9.5.2;

[0139] Step S9.6: Optimize the TT target by rearranging the order order through swapping; the specific steps are as follows:

[0140] Step S9.6.1: Initialize parameters, sort all orders in descending order of their due dates to obtain set O = {order1, order2, ..., order...} NP If the delay dates are the same, the order with the earlier delivery date is ranked first, with order index o = 1, and the maximum number of iterations I.max Number of iterations t s =1;

[0141] Step S9.6.2: If t s ≤I max Select order o Proceed to step S9.6.3; otherwise, end.

[0142] Step S9.6.3: Change the processing order of the order. o Randomly swap the processing position of the previously processed order with the new solution to generate a new solution;

[0143] Step S9.6.4: If the new solution dominates the original solution, output the new solution; otherwise, repeat step 9.6.3 and count. For orders... o All solutions that satisfy the constraints have been considered, then O = O\order o o = o + 1, proceed to step S9.6.2.

[0144] In the aforementioned optimization method for the multi-objective batch flow scheduling problem in PCB assembly workshops, step S12, such as... Figure 7 As shown, the "crossover + neighborhood search" operation for updating individuals in the population is as follows:

[0145] Step 10.1: If U(0,1) <p r Then individual SM u If the solution moves closer to the global optimum, update the position using a crossover method and proceed to step 10.3; otherwise, proceed to step 10.2.

[0146] Step 10.2: Randomly initialize individual SMs u To increase population diversity; proceed to step 10.3;

[0147] Step 10.3: If U(0,1) <p r Then individual SM u Move closer to the global optimal solution again, update the position using the cross method, and end; otherwise, determine whether the current individual is a local leader or a global leader. If it is, go to step 10.4; otherwise, go to step 10.5.

[0148] Step 10.4: In individual SM u and individual SM new Choose the better solution as the new solution; end.

[0149] Step 10.5: Randomly initialize individual SMs u To increase population diversity; End.

[0150] Compared with existing technologies, the Spider Monkey Optimization (SMO) algorithm of this invention is based on a fission-fusion social mechanism. It reduces the foraging competition pressure among individuals through population splitting to achieve the goal of optimization, offering advantages of simplicity and efficiency. Therefore, this invention addresses the multi-objective batch flow scheduling problem in PCB assembly workshops, aiming to minimize completion time, total energy consumption, and total delay. It proposes a two-stage improved Spider Monkey Optimization algorithm. The key features are: Stage 1 designs a combined heuristic method to generate partial initial solutions and improve their quality; Stage 2 proposes a leader selection method based on contribution value to improve the algorithm's distribution; Stage 3 selects different individual update methods based on the population's evolutionary state to achieve a balance between the algorithm's exploration and development capabilities; and finally, a Q-Learning-based parameter adjustment method is used to achieve adaptive adjustment of the algorithm parameters. Thus, this invention can quickly solve the multi-objective batch flow scheduling problem in PCB assembly workshops, improving machine utilization and effective output. Attached Figure Description

[0151] Figure 1 This is the overall flowchart of the ISMO algorithm;

[0152] Figure 2 This is an encoding example;

[0153] Figure 3 These are the steps for updating the different population states of an individual during the LLP & GLP stages;

[0154] Figure 4 It is the crossover process of individuals when the population is in a convergent state;

[0155] Figure 5 It is the process of individual variation when the population is in a stagnant state;

[0156] Figure 6 It is the territorial search process of an individual when the population is in a stagnant state;

[0157] Figure 7 This is a flowchart of the LLDP phase;

[0158] Figure 8 This is the main effect of ISMO key parameters on signal-to-noise ratio for different problem instances;

[0159] Figure 9 It is based on the robustness of solution sets of different algorithms such as IGD, C matrix and NR. Detailed Implementation

[0160] The present invention will be further described below with reference to the accompanying drawings and examples, but this should not be construed as limiting the present invention.

[0161] Example: Using the steps and methods based on the technical solution of this invention, an experimental environment was designed as shown in Table 2 to verify the effectiveness of the proposed method. Experimental data included machine parameters, PCB parameters, and assembly line parameters. Machine parameters included the number of machines (m), machine head movement speed (v). m Nose travel distance and d a0 Machine idle power FP, machine processing power PP, and machine component placement time In addition, the number of machines (m) for the SMT process is also included. l ~U[3,6]. PCB parameters include the number of components n per order. c Number of component types t c PCB order quantity CN c PCB order quantity N P The number of components per order, n c Number of component types PCB quantity CN c and delivery date d c The time P for processing one PCB in an order on assembly line l. lc (Excluding the component placement stage assembly line), assembly line parameters include the number of assembly lines in each stage. The setup time for the first processing order on the assembly line l0c Setting the time st, which is related to the order of batches in different PCB processing orders. lcc' And the corresponding power SP, and the transportation time tt during the PCB conversion stage. stage .

[0162]

[0163] Table 2 Problem parameters of the simulation experiment

[0164] The steps in this invention involve four key parameters: population size (popsize), maximum number of generations (maxgen), and percentage of generations p. t and the proportion of randomly generated initial solutions p p Preliminary experiments were conducted to obtain the possible value ranges of the parameters for the current multi-objective problem. Three levels were set for each parameter, as shown in Table 3. Then, Taguchi experiments were used to determine the optimal combination of parameters. In Minitab, the objective function C... max The values ​​of TEC and TT are used as response columns, and the number of orthogonal experiments is L. 16 (4 4 Each parameter combination was tested 10 times, for a total of 16*10*3=480 experiments.

[0165]

[0166] Table 3 Algorithm parameters and their values

[0167] Figure 8 The main effect of parameters on the signal-to-noise ratio of the response is described in problem instances of different sizes. The parameter values ​​of the TS-ISMO algorithm in Table 4 are obtained from the results of the Taguchi experiment. Therefore, the experiment will be conducted under the same scale and number of iterations. The parameter values ​​of the other three comparison algorithms are shown in Table 4.

[0168]

[0169]

[0170] Table 4 Optimal parameter combinations for different algorithms

[0171] As can be seen from Table 4, the TS-ISMO algorithm performs well in N... d The TS-ISMO algorithm significantly outperforms the other three algorithms in terms of IGD, C matrix, NR, and CT metrics. Compared to the comparison algorithms, the TS-ISMO algorithm performs better on small-scale problems and significantly better on medium- to large-scale problem instances. The performance of the DE and NSGA-III algorithms varies with problem size, performing well on a few small-scale problems, but the number of non-dominated solutions decreases as the problem size increases.

[0172] The performance of the proposed TS-ISMO algorithm was compared with other comparative algorithms. The average values ​​of IGD, C matrix, and NR as a function of computation time (CT) are shown in Table 5. Here, Nd represents the average number of non-dominated Pareto solutions obtained by the algorithm; C(A,*) represents the average value of the C matrix of algorithm A compared with the other four algorithms, where A represents the solution obtained by one of the five algorithms compared in this paper, and * represents the solutions obtained by the other four algorithms besides A.

[0173]

[0174]

[0175] Table 5. Mean Performance Indicators of TS-ISMO, SMO, NSGA-III, and DE

[0176] Table 5 shows that the TS-ISMO algorithm performs well in N... d The TS-ISMO algorithm significantly outperforms the other three algorithms in terms of IGD, C matrix, NR, and CT metrics. Compared to the comparison algorithms, the TS-ISMO algorithm performs better on small-scale problems and significantly better on medium- to large-scale problem instances. The performance of the DE and NSGA-III algorithms varies with problem size, performing well on a few small-scale problems, but the number of non-dominated solutions decreases as the problem size increases.

[0177] Table 6 shows the maximum, average, and minimum number of non-dominated Pareto solutions obtained by each algorithm.

[0178]

[0179] Table 6. Number of non-dominated Pareto solutions for different algorithms

[0180] Observation 6 shows that the TS-ISMO algorithm contains more non-dominated Pareto solutions than other compared algorithms. This indicates that the TS-ISMO algorithm has broader and better diversity. In small-scale problems, there is no significant difference between TS-ISMO and other compared algorithms. However, as the problem size increases, i.e. in medium-to-large-scale problem instances, the TS-ISMO algorithm outperforms the compared algorithms. This is because the proposed TS-ISMO algorithm both randomly generates initial solutions and uses two heuristics, enabling it to obtain more diverse solutions across different problem instances. Furthermore, the TS-ISMO algorithm applies contribution values ​​to select LL and GL leaders, which improves the distribution and diversity of the algorithm.

[0181] As shown in Table 7, the CT metric increases dramatically with problem size. Compared to SMO, NSGA-III, and DE algorithms, the TS-ISMO algorithm performs better on problem instances of any size. This is because the TS-ISMO algorithm uses different update methods to balance exploration and development based on different states, thereby improving the algorithm's efficiency.

[0182] Table 7 shows the C-matrix results for the comparison algorithm and other algorithms for problem instances of different sizes, indicating that the TS-ISMO algorithm consistently outperforms the other four comparison algorithms.

[0183] TS-ISMO / 0.89 0.9 0.93 SMO 0 / 0.4 0.59 NSGA-III 0 0.21 / 0.13 DE 0.04 0.3 0.4 / medium-sized TS-ISMO SMO NSGA-III DE TS-ISMO / 1 1 1 SMO 0 / 0.6 0.53 NSGA-III 0 0.1 / 0.18 DE 0 0.32 0.3 / large-scale TS-ISMO SMO NSGA-III DE TS-ISMO / 1 1 1 SMO 0 / 0.4 0.39 NSGA-III 0 0.08 / 0.13 DE 0 0.3 0.4 /

[0184] Table 7 Comparison of C matrix coverage between ISMO and other algorithms

[0185] For each set of parameters, 10 experiments were conducted. A comparison of the robustness of different algorithmic solution sets based on IGD, the C matrix, and the NR index was performed. Figure 9 The box plot is shown. Since the IGD indicator has a very large range of values, it needs to be normalized according to formula (20):

[0186]

[0187] In the formula, IGD A and IGD A ' represents the value of IGD before and after normalization of solution A, IGD max and IGD minThese represent the maximum and minimum values ​​of IGD, respectively.

[0188] Figure 9 The results show that for problem instances of different sizes, the IGD value and range of variation of the TS-ISMO algorithm are significantly lower than those of other comparative algorithms. This indicates that the TS-ISMO algorithm has significant performance and good robustness compared to other algorithms. The median value of the C-matrix of the TS-ISMO algorithm is significantly larger than that of other comparative algorithms, and its range of variation is smaller, indicating that the TS-ISMO algorithm achieves stable convergence and better distributed solutions. The NR value of the TS-ISMO algorithm is significantly larger, indicating that it obtains more Pareto solutions than other comparative algorithms. Furthermore, as the problem size increases, such as for medium and large-scale problem instances, the performance of the TS-ISMO algorithm is better than that of the comparative algorithms. In summary, compared to other comparative algorithms, the TS-ISMO algorithm provides better solutions for problem instances of all sizes, and the results are consistent.

[0189] The above analysis shows that the TS-ISMO algorithm proposed in this invention achieves better results in most problem instances due to improvements in the following aspects: (1) the problem is divided into two stages for decentralized processing based on problem characteristics; (2) the TS-ISMO algorithm is constructed to solve both stages simultaneously for a deeper understanding of the problem; (3) the heuristic method (I-ECT) is used in the TS-ISMO algorithm to generate the initial population; (4) the contribution value method is used to comprehensively judge the convergence and diversity of solutions; and (5) the evolutionary state is determined based on the change in the average fitness value, and the parameters are adaptively adjusted according to the Q-Learning strategy. Because of these powerful adjustments made in the proposed TS-ISMO algorithm, it shows a significant advantage in solving the multi-objective optimization problem of the proposed problem. Therefore, this invention can quickly solve the multi-objective batch flow scheduling problem in a hybrid flow shop, and has the characteristics of improving shop machine utilization and effective output.

Claims

1. An optimization method for a multi-objective batch flow scheduling problem in a PCB assembly workshop, characterized in that: Including Phase One and Phase Two: Phase 1: First, initialize the surface mount process parameters, and then determine the processing time matrix of the PCB order in the SMT process using the heuristic rule I-ECT. Phase Two involves defining the problem description and objectives, including order batching, order sorting, and batch allocation, and generating the initial population for the Spider-Monkey Optimization Algorithm (SMO). A leader is selected based on the contribution value method to improve the distribution of SMO solutions. Different individual update methods are chosen according to the evolutionary state of the population to achieve a balance between the SMO's exploration and development capabilities. Finally, a Q-Learning-based parameter adjustment method is employed to achieve adaptive parameter adjustment for the SMO. Therefore, an improved two-stage spider monkey optimization algorithm is used to optimize the solution of the multi-objective batch flow scheduling problem in the PCB assembly workshop.

2. The optimization method for the multi-objective batch flow scheduling problem in a PCB assembly workshop according to claim 1, characterized in that: In Phase One, calculating the processing time matrix of a PCB order in the SMT process using the heuristic rule I-ECT includes the following steps: Step 1: Define the problem description and objectives for Phase 1: A PCB order requires m SMT machines to process... Total of types The decision-making process involves determining the surface mount technology (SMT) of individual components. Each component Minimize processing time by optimizing the allocation and placement sequence on the machine. , is represented as a processing time matrix; Step 2: Generate a scheduling scheme for a single PCB order in the SMT process according to the following heuristic rules I-ECT; Step 2.1: Initialize the machine Completion time No component assembly arranged { },element ,machine upper component set Current machine Components have been arranged above ; Step 2.2: If If the machine stops, it outputs the solution information; otherwise, it stops. =1, proceed to step 3.3; Step 2.3: If Proceed to step 3.5; otherwise, proceed to step 3.

4. Step 2.4: Select a machine satisfy , to components Assigned to machine superior, , , ,machine The last assigned component = Proceed to step 3.2; Step 2.5: If the machine No components were arranged; select components. ,satisfy , Proceed to step 3.3; otherwise, proceed to step 3.

6. Step 2.6: Select satisfy , Proceed to step 3.3; Step 3: Decode the scheduling scheme generated by the heuristic rule I-ECT and calculate the processing time matrix of various PCB orders in the SMT process; Step 3.1: Initialization: Machine Total time to process a PCB ,machine Maximum number of PCBs for continuous surface mount technology ,machine Total travel distance of a PCB machining head i=1, assembly line component sequence index =1, machine Upper and the +1 processed component and , It is a machine The first processing Type of component ; Step 3.2: If i≤m, go to step 3.3; otherwise, go to step 3.

6. Step 3.3: If ≤ Proceed to step 3.4 if the condition is met; otherwise, proceed to step 3.

5. Step 3.4: If =1, then , = +1; if = ,but , = +1; if 1 and , , = +1, proceed to step 3.3; Step 3.5: , , , i = i + 1, go to step 3.2; Step 3.6: .

3. The optimization method for the multi-objective batch flow scheduling problem in a PCB assembly workshop according to claim 1, characterized in that: In Phase Two, the implementation of the two-stage improved spider monkey optimization algorithm includes the following steps; S1. Obtain the processing time matrix; S2. Initialize the initial population for the Spider-Monkey optimization algorithm. Its size is Popsize; S3: For each individual spider monkey in the population , Decode and calculate the maximum completion time. Total delay time and total energy consumption; S4: Perform a fast non-dominated sort on the population individuals to determine the Pareto solution set A, and update the external Pareto solution set A. * ; S5: Determine if the termination condition is met, i.e., the number of iterations. Is it true? If yes, end; otherwise, proceed to the next step. S6: Randomly group the individuals in the population, use the contribution value method to calculate the contribution value of the spider monkey individuals in the Pareto solution set A, determine the local leader and the global leader, and proceed to the next step; S7: Determine the number of population iterations Is it true? If yes, proceed to the next step; if no, proceed to step S9. S8: Based on the adaptively adjusted algorithm parameters of the Q-learning algorithm, perform the Local Leader LLP and Global Leader GLP update phases, and use the "crossover" operation to update the individuals in each group and the entire population. Proceed to step S10. S9: Based on the adaptively adjusted algorithm parameters of the Q-learning algorithm, and based on the difference entropy between two adjacent generations of population evolution to distinguish whether the population is in a convergent or stagnant state, perform "crossover" operation or "mutation + neighborhood search" operation to update the population individuals within each group and the entire population, and proceed to the next step; S10: Perform the global leader learning phase and determine if the global leader has been updated; if yes, proceed to the next step; otherwise, proceed to step S13. S11: Perform the local leader learning phase and determine if the local leader has been updated; if yes, proceed to step S14; otherwise, proceed to the next step. S12: If any local leader exceeds the set local leader limit number of times... If no update is made, the local leader decision-making stage of the "cross + neighborhood search" operation will guide the individuals in the group to update again, and proceed to step S14. S13: If the global leader exceeds the set global leader limit for the number of times... If there is no update, the global leader decision-making phase will determine whether to divide the population into smaller groups or merge all groups into one group. S14: Calculate the number of individual spider monkeys in the population. The target value; Let the iteration number t = t + 1, and return to step S4.

4. The optimization method for the multi-objective batch flow scheduling problem in a PCB assembly workshop according to claim 3, characterized in that: In step S2, the initial population generation method of the spider-monkey optimization algorithm is as follows: Step 2.1: Define the problem description and objectives for Phase Two: Phase Two includes three sub-problems: order sorting, order batching, and batch allocation; the corresponding decision is: order sorting... Sort the PCB orders; Orders will be placed in batches. PCB orders are divided into batches; batch allocation determines the assembly line / machine for each batch at each process. Step 2.2: Determine the order batching based on boundary rules, then determine the order processing sequence based on heuristic EDD rules, and finally, based on heuristic ECT rules, assign each batch to the assembly line / machine with the shortest completion time while satisfying assembly line / machine qualification constraints. Step 2.3: Repeat according to the following boundary rules. The number of secondary generation is Initial solution for order batches; Step 2.3.1: Set the range of order batch quantities Proceed to step 2.3.2; Step 2.3.2: According to the order quantity Determine the set of possible values ​​for its batch. Proceed to step 2.3.3; Step 2.3.3: Randomly select a value from the set as the order. The number of batches; Step 2.4: Repeat EDD according to the heuristic rule The number of secondary generation is The initial solution for the order sequence; Step 2.5: Repeat ECT according to the following heuristic rule. The number of secondary generation is The initial solution for batch allocation; Step 2.5.1: Initialize parameters, assembly line Completion time Proceed to step 2.5.2; Step 2.5.2: If the process index Considering the qualification constraints of the assembly line, batches that can only choose one assembly line are first assigned to the corresponding assembly line, thus obtaining the final assembly line. Processing batch set ,stage Unassigned batch set If the condition is met, proceed to 2.5.3; otherwise, output the solution and end. Step 2.5.3: If ,but If yes, proceed to 2.5.2; otherwise, proceed to 2.5.

4. Step 2.5.4: [The sentence is incomplete and requires more context to translate accurately.] The first batch Arrange for the stage where this batch can be processed. On all assembly lines, we obtain the assembly line Completion time ,choose satisfy , , , see version 2.5.

3.

5. The optimization method for the multi-objective batch flow scheduling problem in a PCB assembly workshop according to claim 3, characterized in that: In step S3, the decoding is performed according to the following steps: Step 3.1: Initialize parameters, batch completion time =0, Assembly line completion time =0, total processing time for each assembly line =0 and total setup time =0, ,Order Batch size Order index o=1, process index =1, assembly line index l=1, proceed to step 3.2; Step 3.2: If l If yes, proceed to step 3.3; otherwise, proceed to step 3.

8. Step 3.3: If If s=1, calculate Number of batches processed Proceed to step 3.4; otherwise, = +1, s=1, calculate Number of batches processed Proceed to step 3.6 Step 3.4: If If so, proceed to step 3.5; otherwise, l = l + 1, and proceed to step 3.

2. Step 3.5: If =0, then = , , = + , = + If s = s + 1, proceed to step 3.4; otherwise, = , , = + , = + s = s + 1, proceed to step 3.4; Step 3.6: If If so, proceed to step 3.7; otherwise, l = l + 1, and proceed to step 3.

2. Step 3.7: If =0, then = , , = + , = + s = s + 1, go to 3.6; otherwise, = , , = + , = + s = s + 1, go to step 3.6; Step 3.8: Total processing energy consumption Adjust total energy consumption Total energy consumption during idle periods Total energy consumption Proceed to step 3.9; Step 3.9: .

6. The optimization method for the multi-objective batch flow scheduling problem in a PCB assembly workshop as described in claim 3, characterized in that: In step S6, the contribution value method is used to calculate the contribution value of each spider monkey individual in the Pareto solution set A, and the local leader and global leader are determined. This includes the following steps: Step 6.1: First, normalize the three objective values ​​in the Pareto solution set obtained from the non-dominated solution in step S5 according to the following formula: ; In the formula: and Describe the objective in the solution set The maximum and minimum values; Step 6.2: Sort all solutions in descending order according to one of the objectives; Step 6.3: Calculate the reference point dominated by all solutions. The formula is as follows: ; in, Indicates the reference point is at the target. The value on, ; Step 6.4: Calculate the volume of the dominance region of the solution and its two adjacent solutions, using the following formula: ; ; For solutions located at the edges or at both ends of the Pareto front, use Calculate using the formula; otherwise, use the formula. calculate; Step 6.5: The larger the contribution value of a solution, the larger the volume of its independent dominance region, which is more conducive to the distribution of the solution set. In this case, it is selected as the local and global leader. If multiple solutions have the same contribution value, one solution is selected randomly.

7. The optimization method for the multi-objective batch flow scheduling problem in a PCB assembly workshop according to claim 1, characterized in that: In steps S8 and S9, the algorithm parameters adaptively adjusted according to the Q-learning algorithm are achieved through multiple training iterations by mapping the relationship between the parameter adjustment of the improved spider monkey optimization algorithm and the population evolutionary state. This includes the following steps: Step 8.1: Targeting the key parameter crossover rate of the ISMO algorithm. Variation rate and perturbation rate Perform dynamic adaptive adjustment based on Q-Learning to make the parameters more adaptable and improve the quality of the algorithm; Step 8.2: State Design: In the ISMO algorithm, population diversity is represented by the average distance between individuals within the population, which is calculated as follows: ; ; in, Represents the individual in generation t. and distance, and They represent The maximum and minimum values, Indicates population size; The individual's goals are normalized using the following formula: ; Calculate the fitness value of an individual: ; Calculate the average fitness value of the population: ; Calculate the maximum fitness value of the population: ; Set population status: ; in, Indicates the first Individual fitness value, , and They represent , and The weights were set to 0.35, 0.35, and 0.3 respectively through preliminary experiments; based on the fitness value and The state space is divided into 10 states, namely Among them, when hour, ;when hour, ; and so on, when hour, ; Step 8.3: Action Design: Adjust the crossover rate based on population state, crossover, and mutation operations. Variation rate and perturbation rate Adjust the motion space; Step 8.4: Reward Function Design: Parameters , and and Each action has a reward. , , and It is expressed by the following formula: ; ; Then calculate the agent's update value function: ; in, and It refers to the current state and the state after the action is taken. and These are the actions for current and future decisions. and It's a hyperparameter.

8. The optimization method for the multi-objective batch flow scheduling problem in a PCB assembly workshop according to claim 3, characterized in that: In steps S8 and S9, the "crossover" operation for updating individuals in the population is as follows: Step 7.1: Based on the problem characteristics of Phase Two, a two-layer encoding method using natural numbers was adopted. A two-layer matrix was designed using the natural number encoding method. The first layer is... The first layer represents the processing order of the order; the second layer is a matrix. The matrix has the first row representing the batch processing order and batch quantity information, and the other layers representing the batch allocation information in the four processes; Step 7.2: Perform cross-processing on the order processing sequence code using a two-point cross-processing method, randomly selecting... , Integer and ; Step 7.3: Obtain the batch sort code based on the order sorting after cross-sorting in Step 6.2; Step 7.4: The cross-coding of the four process steps uses a partial matching cross-operator similar to two-point cross-coding, and cross-coding is performed on each process step in turn; Random selection , Integer and ; In step S9, the method for determining the population state is as follows: Step 9.1: Normalize the three objectives for each individual in the population: ; In the formula, For individuals The One target value, and These are the th in the entire population. The maximum and minimum values ​​of the target values, For individuals Normalized One target value; Step 9.2: Calculate the fitness value of each individual in the population: ; in For individuals fitness value; Step 9.3: Calculate the average fitness value of the population: ; in This represents the average fitness value of the population. Step 9.4: Calculate the change in the average fitness value between the (t-1)th and tth generations of the population: ; In the formula, , and They represent the 1st and 2nd respectively. and The average fitness value of the population. This represents the change in average fitness between two adjacent generations, t-1 and t. The smaller the difference entropy, the smaller the change in the Pareto solution set, the smaller the optimization space, and the closer the algorithm is to convergence; Using critical threshold Distinguishing between convergent and stagnant states: ① If If the population is in a convergent state; ② If If so, the population will stagnate.

9. The optimization method for the multi-objective batch flow scheduling problem in a PCB assembly workshop according to claim 3, characterized in that, Step S9, the "mutation + neighborhood search" operation for updating the individual population is as follows: Step S9.1: If the population is in a stagnant state, perform a mutation operation to enhance the local search, and only mutate the assembly line / machine assignment code of the process. Step S9.2: For variations in the coding assigned to the assembly line / machine in the process, randomly select orders. For each of the two batches, 0 or 1 is randomly generated for each process. If it is 1, the corresponding gene is exchanged; otherwise, it is not exchanged. Step S9.3: Calculate the target value for each individual, and then proceed according to... and Sort all individuals; for For solutions with larger values, a better solution is generated by redistributing the batch across a specific assembly line / machine; proceed to step S9.

4. For solutions with larger values, a better solution is generated by rearranging the order processing sequence. Rearranging the order processing sequence involves two operations: insertion and exchange. One is randomly selected during neighborhood search, and the process proceeds to step S9.5 or S9.

6. If the target value of a certain solution... and Both are poor, so a neighborhood search method is randomly selected; Step S9.4: Reduce costs by redistributing batches on the assembly line / machine during the process. The redistribution shall be carried out in accordance with the following method: Step S9.4.1: The assembly line / machine with the longest completion time for each process. 4-stage assembly line / machine Processing batch set ,Pick Maximum number of iterations Number of iterations =1; Step S9.4.2: If Randomly select batches Proceed to 9.4.3; otherwise, end. Step S9.4.3: Under the constraint of meeting the assembly line qualification capability requirements, randomly change If a new solution is generated during the allocation of a process step, and this new solution dominates the original solution, then the new solution is output; otherwise, step 9.4.3 is repeated until all solutions satisfying the constraints have been considered. Proceed to 9.4.2; Step S9.5: Optimize the TT target by reordering orders through insertion; the specific steps are as follows: Step S9.5.1: Initialize parameters and sort all orders in descending order of their due dates to obtain a set. If the due dates are the same, orders with earlier due dates will be ranked higher in the order index. =1, maximum number of iterations Number of iterations =1; Step S9.5.2: If Select Order Proceed to 9.5.3; otherwise, end. Step S9.5.3: Change the processing sequence of the order, and change the order... Randomly inserted into the order A new solution is generated by processing any order before the initial processing; Proceed to step S9.5.4; Step S9.5.4: If the new solution dominates the original solution, output the new solution; otherwise, repeat step S9.5.3:3 and count. For orders... All solutions that satisfy the constraints have been considered, then , Proceed to step S9.5.2; Step S9.6: Optimize the TT target by rearranging the order order through swapping; the specific steps are as follows: Step S9.6.1: Initialize parameters and sort all orders in descending order of their due dates to obtain a set. If the due dates are the same, orders with earlier due dates will be ranked higher in the order index. =1, maximum number of iterations Number of iterations =1; Step S9.6.2: If Select Order Proceed to step S9.6.3; otherwise, end. Step S9.6.3: Change the processing sequence of the order, and change the order... Randomly swap the processing position of the previously processed order with the new solution to generate a new solution; Step S9.6.4: If the new solution dominates the original solution, then output the new solution; Otherwise, repeat 9.6.3 and count, if for an order All solutions that satisfy the constraints have been considered, then , Proceed to step S9.6.

2.

10. The optimization method for the multi-objective batch flow scheduling problem in a PCB assembly workshop according to claim 3, characterized in that, In step S12, the "crossover + neighborhood search" operation for updating individuals in the population is as follows: Step 10.1: If Then the individual If the solution moves closer to the global optimum, update the position using a crossover method and proceed to step 10.3; otherwise, proceed to step 10.

2. Step 10.2: Randomly initialize individuals To increase population diversity; proceed to step 10.3; Step 10.3: If Then the individual Move closer to the global optimal solution again, update the position using the cross method, and end; otherwise, determine whether the current individual is a local leader or a global leader. If it is, go to step 10.4; otherwise, go to step 10.

5. Step 10.4: In the individual and individuals Choose the better solution as the new solution; End; Step 10.5: Randomly initialize individuals To increase population diversity; End.