Flexible job shop scheduling method based on Golden Litsea Algorithm

Through the flexible operation workshop scheduling method based on the Jinzhai algorithm, the problems of initial population quality neglect and local optimal solution of traps in the existing algorithm are solved, and more efficient and accurate workshop resource allocation and scheduling are achieved, and production efficiency and equipment utilization are improved.

CN119599366APending Publication Date: 2025-03-11SOUTHWEAT UNIV OF SCI & TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411666846.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-20
Publication Date
2025-03-11

AI Technical Summary

Technical Problem

The existing flexible operation workshop scheduling algorithm has problems such as neglect of initial population quality, local optimal solution traps and insufficient global search capabilities, resulting in poor or suboptimal scheduling schemes.

Method used

The flexible operation workshop scheduling method based on the Jinzhai algorithm is adopted to optimize the workshop resource allocation and scheduling process through steps such as integer encoding, chromosome decoding, population initialization, variable neighborhood search and population evolution.

Benefits of technology

It improves the workshop scheduling production efficiency and scheduling accuracy, reduces resource waste caused by human intervention, and improves equipment utilization and output.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119599366A_ABST
    Figure CN119599366A_ABST
Patent Text Reader

Abstract

A flexible job shop scheduling method based on a Golden Litsea rotundifolia algorithm is used for solving the problem of manufacturing industry shop scheduling, and comprises the following steps: step 1, chromosome coding: coding chromosomes by adopting an integer coding mode, the front half part being machine selection coding, and the rear half part being process sorting coding; 2, chromosome decoding, wherein the machine selection part and the process sorting part are decoded respectively; 3, performing population initialization, wherein the population initialization comprises machine selection initialization and process sorting initialization; 4, population storage: storing current population individuals; step 5, performing variable neighborhood search: selecting male litsea rotundifolia and female litsea rotundifolia neighborhood search; step 6, population evolution; step 7, crossover and variation of the stored population; 8, generating a new population; and step 9, strategy iteration.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of manufacturing workshop scheduling, and in particular to a flexible job shop scheduling method based on the golden jackal algorithm Background Art

[0002] Since the combinatorial selection of flexible job shop scheduling is complex and the difficulty of solving it increases rapidly with the expansion of scale, it is generally recognized as an NP-hard problem. Although many domestic scholars have achieved certain results in studying flexible job shop scheduling, the existing algorithms for solving flexible job shop scheduling still have the following shortcomings: (1) In the meta-heuristic algorithm, the initial population quality is ignored, resulting in too much invalid search; (2) Most algorithms are prone to fall into local optimal solutions during the iteration process, resulting in the obtained scheduling solutions being suboptimal or suboptimal; (3) Most algorithms ignore the global search and local search capabilities of the horizontal algorithm, resulting in the algorithm missing the optimal solution. Summary of the invention

[0003] The technical problem to be solved by the present invention is to provide a flexible job shop scheduling method based on the golden jackal algorithm, which can flexibly select resources according to the workshop resource situation and improve the workshop scheduling production efficiency in view of the shortcomings of the prior art.

[0004] The technical problem to be solved by the present invention is achieved through the following technical solution, a flexible job shop scheduling method based on the golden jackal algorithm, which is characterized by:

[0005] Step 1: Chromosome coding, using integer coding, the first half is the machine selection code, that is, the order number of each process selecting the processing machine from the optional machine set; the second half is the process sorting code, that is, the processing order of each workpiece process;

[0006] Step 2: Chromosome decoding, chromosome decoding, determine the processing order of the workpiece according to the process sorting code, and arrange the process sequence for each machine according to the machine selection code and clarify the processing position, and finally assign the process to each machine in a predetermined order to form a feasible flexible job shop scheduling plan;

[0007] Step 3: Population initialization. Population initialization is divided into machine selection initialization and process sorting initialization. Machine selection is initialized using a hybrid strategy, and process sorting is initialized using the Tent-Chebyshev switching mapping sequence method.

[0008] Step 4: Population storage, storing the current population individuals for subsequent crossover and mutation operations;

[0009] Step 5: Variable neighborhood search, use the variable neighborhood search algorithm based on the critical path to optimize and update the excellent individuals, including the following steps: Step 1, calculate the target value of the population individuals; Step 2, sort in ascending order by target value, the individual with the smallest target value is the male jackal, and the second smallest individual is the female jackal; Step 3, set the number of iterations s_num, select the male jackal or the female jackal as the initial solution k, and set r=1; Step 4; randomly generate an integer int∈[1,3], if int is equal to 1, 2 or 3, select the N1, N2, N3 neighborhood structure respectively; Step 5, adjust the key blocks on the critical path of k according to the selected neighborhood structure to obtain a new solution k_new; Step 6, determine whether the target value of the new solution k_new is better than k, if so, k=k_new; Step 7, r=r+1; Step 8, determine whether r is less than or equal to s_num, if so, go to step 2; Step 9, the algorithm ends and updates k;

[0010] Step 6: Population evolution. Population evolution includes the following steps: the first step is to convert the scheduling plan into an individual position vector. The second step is for male and female jackals to guide the population evolution and generate a new population. The third step is to convert the individual position vector into a scheduling plan.

[0011] Step 7: Crossover and mutation of the stored population. The population stored in step 4 selects half of the individuals in the population through a competitive competition method, performs crossover and mutation, generates a new population, and optimizes the individuals whose target value is consistent with that of the male jackal through variable neighborhood search;

[0012] Step 8: Generate a new population. Sort the populations in steps 6 and 7 in ascending order according to the target value, and select the first n individuals with the best target to form a new population.

[0013] Step 9: Iteration strategy. The iteration strategy includes the following steps: Step 1. Generate the initial population according to step 3. The population size is Pop, the total number of iterations is Max_iter, and the crossover probability P is given. c and mutation probability P m ; Step 2, store the population according to step 4; Step 3, search the neighborhood of male and female jackals according to step 5; Step 4, evolve the population according to step 6; Step 5, search the crossover, mutation and neighborhood of the stored population according to step 7; Step 6, generate a new population according to step 8; Step 7, determine whether the termination condition is met. If so, output the scheduling plan corresponding to the male jackal, otherwise repeat steps 2 to 6 until the termination condition is met.

[0014] The technical problem to be solved by the present invention can also be further achieved by the following technical solution, wherein the hybrid strategy in step three includes: a global selection strategy, a local selection strategy, and a random selection strategy;

[0015] The global selection strategy includes the following steps: first, set an array equal to the number of machines to record the processing time of each machine; second, randomly select a workpiece and start the calculation from its first process; third, calculate the processing time of each machine according to the optional machines of the current process, and select the machine with the shortest processing time; fourth, update the array and add the processing time of the selected machine to the corresponding array position; fifth, repeat the third and fourth steps until all processes of the workpiece are completed; sixth, randomly select the next workpiece and repeat the second to fifth steps until all processes of the workpiece are completed; this can ensure that the machine with the shortest processing time is given priority while keeping the machine load balanced;

[0016] The local selection strategy is similar to the principle of the global selection strategy, but after the process selection of each workpiece is completed, the array will be reset, so as to ensure that the process of each workpiece is preferentially selected on the machine with the shortest processing time;

[0017] The random selection strategy includes the following steps: the first step is to randomly select the first workpiece and select its first process; the second step is to randomly select a machine from the optional machines in the current process, and record the randomly selected machine as the value of the corresponding gene position of the chromosome; the third step is to continue to select the processing machines of the remaining processes of the workpiece in turn and record the result of each selection; the fourth step is to randomly select the next workpiece after completing the machine selection of all processes of the current workpiece, and repeat steps two to three; the fifth step is to repeat steps one to four until the processes of all workpieces are selected.

[0018] The technical problem to be solved by the present invention can also be further achieved by the following technical solution. The Tent-Chebyshev switching mapping sequence method includes the following steps: the first step is to set the population size to N, and use a pseudo-random value x0 as the position of the first individual; x0 = rand, which is any pseudo-random value generated in the range of 0 to 1; the second step is to set the position values ​​x0 of the remaining individuals to N. i+1 , based on the previous body position x i Generate, i∈[0,N-1]; if 0 <x i <0.25 or 0.25 <x i <0.5,

[0019] x i+1 =2x i

[0020] If 0.5 <x i <0.75 or 0.75 <x i <1,

[0021] x i+1 =2(1-x i )

[0022] If x i =0 or 0.25 or 0.5 or 0.75,

[0023] x i+1 =x i +0.1*cos(4*arccos(rand))

[0024] The third step is to use the ROV rule to convert the position value of each individual into a coded value.

[0025] The technical problem to be solved by the present invention can also be further achieved through the following technical solutions, the critical path is the longest path without idle time in the Gantt chart; the process on the critical path is called a critical process, and the critical process that is continuously executed without intervals on the same machine is called a critical block; the first process in the critical block is the block head process, the last process is the block tail process, and the process between the two is the block inner process; if there are multiple critical blocks, the first critical block is called the head critical block, the last one is the tail critical block, and the rest are internal critical blocks.

[0026] The technical problem to be solved by the present invention can be further achieved by the following technical solution, wherein the neighborhood structure is a solution for adjusting the key blocks on the critical path;

[0027] The N1 neighborhood: if the key block length is 1 to 5, the two processes at the beginning or end of the block are randomly exchanged; if the length is greater than 5, in addition to the aforementioned exchange, 4 processes are randomly selected for pairwise exchange; finally, a process is randomly selected, and if there are more than one processing machine available for it, the processing machine is replaced;

[0028] The N2 neighborhood: if the critical process is located at the beginning or end of the block, it will be moved back or forward to other processes on the same machine respectively; if it is a process within the block, it will be randomly moved forward or backward to other processes on the same machine, but all movements must not exceed the critical block and will not interfere with other critical blocks;

[0029] The N3 neighborhood: if the length of the head or tail key block is greater than 2, the first two processes of the block head or the last two processes of the block tail are exchanged accordingly; if the length of the internal key block is greater than 4, two processes in the block are randomly selected and exchanged with the starting process and the last process respectively.

[0030] The technical problem to be solved by the present invention can be further achieved through the following technical scheme, wherein the scheduling scheme is the encoding of each chromosome after the population initialization operation; the individual position vector is the transformation of the scheduling scheme so that each position is a random number within the range of [-number of workpieces, number of workpieces].

[0031] The technical problem to be solved by the present invention can be further achieved by the following technical solution, wherein the conversion of the scheduling scheme into the individual position vector includes the conversion of the machine selection part and the conversion of the process sorting part; the conversion of the machine selection part uses the following formula to calculate the machine selection part to obtain the value of the machine selection part of the individual position vector;

[0032]

[0033] In the formula: j represents the index of the machine code; l represents the total number of machines; u(j) represents the integer values ​​of the machine selection part of the scheduling plan; w(j) represents the number of optional machines corresponding to the process j; x(j) represents the position vector value of the process j. There is also a special case. If w(j) is equal to 1, then x(j) is equal to 1 at this time; the process sorting part, first, takes the total process random values ​​from [-number of workpieces, number of workpieces], and assigns a sorting value to each value in order from small to large; secondly, the generated random values, sorting values ​​and process sorting coding schemes are matched one by one; then, the sorting values ​​are rearranged according to the process number; finally, the random values ​​corresponding to each sorting value are the values ​​of the process sorting part of the individual position vector.

[0034] The technical problem to be solved by the present invention can be further achieved by the following technical solution, wherein the conversion of the individual position vector into a scheduling solution includes a machine selection part conversion and a process sorting part conversion: the machine selection part conversion uses the following formula to calculate the machine selection part to obtain a scheduling solution value;

[0035]

[0036] The process ordering part conversion uses the ROV rule to convert the process selection part to obtain the value of the process ordering part of the scheduling plan.

[0037] The technical problem to be solved by the present invention can also be further achieved through the following technical solution. The bidding competition selection is to randomly select two individuals from the population, compare their target values, and select the individual with the smaller target value. This process is repeated until the required number of individuals are selected.

[0038] The technical problem to be solved by the present invention can be further achieved by the following technical solution, wherein the crossover includes a process sorting part adopting a POX crossover method and a machine selection part adopting a UX crossover method.

[0039] The technical problem to be solved by the present invention can also be further achieved through the following technical scheme. The POX crossover method comprises the following steps: the first step is to randomly select several integers from the range of (0, P] to obtain an integer set Z, where P is the total number of workpieces; the second step is to; according to Z and P, find the integer complement Q of Z in the range of (0, P]; the third step is to assign the code consistent with the number of the Z set to child_1 in the process sorting part of parent_1; in parent_2, assign the code consistent with the number of the Q set to child_2, keeping the code position unchanged; the fourth step is to assign the code consistent with the number of the Z set to the remaining code position of child_1 in the process sorting part of parent_2; in parent_1, assign the code consistent with the number of the Q set to the remaining code position of child_2.

[0040] The technical problem to be solved by the present invention can also be further achieved by the following technical scheme. The UX crossover method comprises the following steps: the first step is to randomly select an integer w from the range of (0, L], where L is the length of the machine selection part code; the second step is to randomly generate w integers from the range of (0, L] to obtain an integer set R; the third step is to assign the machine selection part code of parent_1 to child_2, and assign the machine selection part code of parent_2 to child_1; the fourth step is to assign the codes of the positions in the machine selection part codes of parent_1 and parent_2 that are consistent with the numbers in R to child_1 and child_2 respectively.

[0041] The technical problem to be solved by the present invention can also be further achieved through the following technical scheme, wherein the variation of the step includes two parts: the process sorting part adopts the exchange variation method, that is, randomly selecting two process codes to exchange their positions; the machine selection part adopts the random variation method, that is, randomly selecting some machine codes to replace them with other machines in the optional processing machine set.

[0042] Compared with the prior art, the advantage of the present invention is that through the flexible job shop scheduling method based on the golden jackal algorithm, resources can be intelligently allocated and the scheduling process can be optimized according to the load of workshop resources, thereby improving production efficiency and scheduling accuracy; at the same time, by reducing human intervention, the waste of resources caused by human factors is reduced, and equipment utilization and output are further improved. BRIEF DESCRIPTION OF THE DRAWINGS

[0043] Figure 1 Flowchart for solving the flexible job shop scheduling problem using the hybrid golden jackal algorithm;

[0044] Figure 2 Convert individual position elements into process coding process;

[0045] Figure 3 Convert process codes into individual position elements;

[0046] Figure 4 Coding flexible job shop scheduling solutions;

[0047] Figure 5 Display a Gantt chart for the critical path;

[0048] Figure 6 Move locations for internal processes;

[0049] Figure 7 Move the location for the first and last processes;

[0050] Figure 8 Move the position of the neighborhood structure N3 process;

[0051] Fig. 9 This is the Gantt chart of the optimal solution for Example 1 with 10 workpieces and 6 machines;

[0052] Fig.10 This is the Gantt chart of the optimal solution for Example 2 with 15 workpieces and 4 machines. DETAILED DESCRIPTION

[0053] The specific technical solutions of the present invention are further described below to help those skilled in the art further understand the present invention without limiting the rights thereof.

[0054] Reference Figure 1-Figure 10 ,A flexible job shop scheduling method based on the golden jackal algorithm includes the first step: chromosome coding, which adopts integer coding, the first half of which is the machine selection code, i.e., the sequence number of each process selecting the processing machine in the optional machine set; the second half of which is the process sorting code, i.e., the processing sequence of each workpiece process;

[0055] Step 2: Chromosome decoding, determine the processing order of the workpiece according to the process sorting code, and arrange the process sequence for each machine according to the machine selection code and clarify the processing position. Finally, assign the process to each machine in a predetermined order to form a feasible flexible job shop scheduling plan;

[0056] Step 3: Population initialization. Population initialization is divided into machine selection initialization and process sorting initialization. Machine selection is initialized using a hybrid strategy, and process sorting is initialized using the Tent-Chebyshev switching mapping sequence method.

[0057] Step 4: Population storage, storing the current population individuals for subsequent crossover and mutation operations;

[0058] Step 5: Variable neighborhood search, use the variable neighborhood search algorithm based on the critical path to optimize and update the excellent individuals, including the following steps: Step 1, calculate the target value of the population individuals; Step 2, sort in ascending order by target value, the individual with the smallest target value is the male jackal, and the second smallest individual is the female jackal; Step 3, set the number of iterations s_num, select the male jackal or the female jackal as the initial solution k, and set r=1; Step 4; randomly generate an integer int∈[1,3], if int is equal to 1, 2 or 3, select the N1, N2, N3 neighborhood structure respectively; Step 5, adjust the key blocks on the critical path of k according to the selected neighborhood structure to obtain a new solution k_new; Step 6, determine whether the target value of the new solution k_new is better than k, if so, k=k_new; Step 7, r=r+1; Step 8, determine whether r is less than or equal to s_num, if so, go to step 2; Step 9, the algorithm ends and updates k;

[0059] Step 6: Population evolution. Population evolution includes the following steps: the first step is to convert the scheduling plan into an individual position vector. The second step is for male and female jackals to guide the population evolution and generate a new population. The third step is to convert the individual position vector into a scheduling plan.

[0060] Step 7: Crossover and mutation of the stored population. The population stored in step 4 selects half of the individuals in the population through a competitive competition method, performs crossover and mutation, generates a new population, and optimizes the individuals whose target value is consistent with that of the male jackal through variable neighborhood search;

[0061] Step 8: Generate a new population. Sort the populations in steps 6 and 7 in ascending order according to the target value, and select the first n individuals with the best target to form a new population.

[0062] Step 9: Iteration strategy. The iteration strategy includes the following steps: Step 1. Generate the initial population according to step 3. The population size is Pop, the total number of iterations is Max_iter, and the crossover probability P is given. c and mutation probability P m ; Step 2, store the population according to step 4; Step 3, search the neighborhood of male and female jackals according to step 5; Step 4, evolve the population according to step 6; Step 5, search the crossover, mutation and neighborhood of the stored population according to step 7; Step 6, generate a new population according to step 8; Step 7, determine whether the termination condition is met. If so, output the scheduling plan corresponding to the male jackal, otherwise repeat steps 2 to 6 and 8 until the termination condition is met.

[0063] The objective function of this method

[0064]

[0065] Where j represents the workpiece number, n represents the total number of workpieces, and C jIndicates the completion time of each workpiece;

[0066] Example 1

[0067] The hybrid golden jackal optimization algorithm is used to solve 10 workpieces, 6 machines; 15 workpieces, 4 machines; the population size Pop, the total number of iterations Max_iter, and the crossover probability P of these two examples c , mutation probability P m are 150, 200, 1, and 0.3 respectively. Taking the total number of iterations as the termination condition, the optimal processing routes and corresponding machine selections for the two examples can be obtained as shown in Table 1-2. In the table, J1 represents workpiece 1, O 12 It represents the second process of the first workpiece, M1 represents the first machine, and so on; Fig. 9 and Fig.10 The Gantt chart in gives the optimal scheduling solution for the example.

[0068] Arranging production according to this plan can not only significantly reduce the waiting time of equipment and improve equipment utilization, but also reduce manual intervention and reduce resource waste caused by human factors, thereby further increasing output and better adapting to the actual production needs of the workshop.

[0069] Table 1 10×6 processing route and corresponding machine selection

[0070]

[0071] Table 1 15×4 processing route and corresponding machine selection

[0072]

Claims

1. A flexible job shop scheduling method based on the golden jackal algorithm, characterized in that The following steps: Step 1: Chromosome coding, using integer coding, the first half is the machine selection code, that is, the order number of each process selecting the processing machine from the optional machine set; the second half is the process sorting code, that is, the processing order of each workpiece process; Step 2: Chromosome decoding, determine the processing order of the workpiece according to the process sorting code, and arrange the process sequence for each machine according to the machine selection code and clarify the processing position. Finally, assign the process to each machine in a predetermined order to form a feasible flexible job shop scheduling plan; Step 3: Population initialization. Population initialization is divided into machine selection initialization and process sorting initialization. Machine selection is initialized using a hybrid strategy, and process sorting is initialized using the Tent-Chebyshev switching mapping sequence method. Step 4: Population storage, storing the current population individuals for subsequent crossover and mutation operations; Step 5: Variable neighborhood search, use the variable neighborhood search algorithm based on the critical path to optimize and update the excellent individuals, including the following steps: Step 1, calculate the target value of the population individuals; Step 2, sort in ascending order by target value, the individual with the smallest target value is the male jackal, and the second smallest individual is the female jackal; Step 3, set the number of iterations s_num, select the male jackal or the female jackal as the initial solution k, and set r=1; Step 4; randomly generate an integer int∈[1,3], if int is equal to 1, 2 or 3, select the N1, N2, N3 neighborhood structure respectively; Step 5, adjust the key blocks on the critical path of k according to the selected neighborhood structure to obtain a new solution k_new; Step 6, determine whether the target value of the new solution k_new is better than k, if so, k=k_new; Step 7, r=r+1; Step 8, determine whether r is less than or equal to s_num, if so, go to step 2; Step 9: The algorithm ends and updates k; Step 6: Population evolution. Population evolution includes the following steps: Step 1: The scheduling plan is converted into an individual position vector; Step 2: Male and female jackals guide the population evolution to generate a new population; Step 3: The individual position vector is converted into a scheduling plan; Step 7: Crossover and mutation of the stored population. The population stored in step 4 selects half of the individuals in the population through a competitive competition method, performs crossover and mutation, generates a new population, and optimizes the individuals whose target value is consistent with that of the male jackal through variable neighborhood search; Step 8: Generate a new population. Sort the populations in steps 6 and 7 in ascending order according to the target value, and select the first n individuals with the best target to form a new population. Step 9: Iteration strategy. The iteration strategy includes the following steps: Step 1. Generate the initial population according to step 3. The population size is Pop, the total number of iterations is Max_iter, and the crossover probability P is given. c and mutation probability P m ; Step 2, store the population according to step 4; Step 3, search the neighborhood of male and female jackals according to step 5; Step 4, evolve the population according to step 6; Step 5, search the crossover, mutation and neighborhood of the stored population according to step 7; Step 6, generate a new population according to step 8; Step 7, determine whether the termination condition is met. If so, output the scheduling plan corresponding to the male jackal, otherwise repeat steps 2 to 6 until the termination condition is met.

2. The flexible job shop scheduling method based on the golden jackal algorithm according to claim 1 is characterized in that: The hybrid strategy includes: global selection strategy, local selection strategy, and random selection strategy; The global selection strategy includes the following steps: the first step is to set an array equal to the number of machines to record the processing time of each machine; the second step is to randomly select a workpiece and start the calculation from its first process; the third step is to calculate the processing time of each machine based on the optional machines of the current process and select the machine with the shortest processing time; the fourth step is to update the array and add the processing time of the selected machine to the corresponding array position; the fifth step is to repeat the third and fourth steps until all processes of the workpiece are completed; the sixth step is to randomly select the next workpiece and repeat the second to fifth steps until the processes of all workpieces are completed; this ensures that the machine with the shortest processing time is given priority while keeping the machine load balanced; the local selection strategy is similar to the principle of the global selection strategy, but after the process selection of each workpiece is completed, the array will be reset, so as to ensure that the process of each workpiece gives priority to the machine with the shortest processing time; The random selection strategy includes the following steps: the first step is to randomly select the first workpiece and select its first process; the second step is to randomly select a machine from the optional machines in the current process, and record the randomly selected machine as the value of the corresponding gene position of the chromosome; the third step is to continue to select the processing machines of the remaining processes of the workpiece in turn and record the result of each selection; the fourth step is to randomly select the next workpiece after completing the machine selection of all processes of the current workpiece, and repeat steps two to three; the fifth step is to repeat steps one to four until the processes of all workpieces are selected.

3. The flexible job shop scheduling method based on the golden jackal algorithm according to claim 1 is characterized in that: The Tent-Chebyshev switching mapping sequence method includes the following steps: the first step is to set the population size to N, and use a pseudo-random value x0 as the position of the first individual, where x0=rand, which is any pseudo-random value generated in the range of 0 to 1; The second step is to calculate the position values ​​x of the remaining individuals. i+1 , based on the previous body position x i Generate, i∈[0,N-1]; if 0 <x i <0.25 or 0.25 <x i <0.5, x i+1 =2x i If 0.5 <x i <0.75 or 0.75 <x i <1, x i+1 =2(1-x i ) If x i =0 or 0.25 or 0.5 or 0.75, x i+1 =x i +0.1*cos(4*arccos(rand)) The third step is to use the ROV rule to convert the position value of each individual into a coded value.

4. The Tent-Chebyshev switching mapping sequence method according to claim 3, characterized in that: The ROV rule is that, first, the process numbers are numbered from left to right; then, the position vectors of the process sorting part are matched one by one with the element numbers; then, a sorting value is assigned to each element of the position vector in ascending order; finally, the process number corresponding to the element number with the same sorting value is selected.

5. The variable neighborhood search algorithm based on critical path according to claim 1 is characterized in that : The critical path is the longest path without idle time in the Gantt chart; the process on the critical path is called the critical process, and the critical process that is executed continuously and without intervals on the same machine is called the critical block; the first process in the critical block is the block head process, the last process is the block tail process, and the process in between is the block inner process; if there are multiple critical blocks, the first critical block is called the head critical block, the last one is the tail critical block, and the rest are internal critical blocks.

6. The variable neighborhood search algorithm based on critical path according to claim 1 is characterized in that : The neighborhood structure is based on a scheme for adjusting the key blocks on the critical path; the N1 neighborhood: if the length of the key block is 1 to 5, the two processes at the beginning or end of the block are randomly exchanged; if the length is greater than 5, in addition to the aforementioned exchange, 4 processes are randomly selected for pairwise exchange; finally, a process is randomly selected, and if there are more than one processing machines available for it, the processing machine is replaced; The N2 neighborhood: if the critical process is located at the beginning or end of the block, it will be moved back or forward to other processes on the same machine respectively; if it is a process within the block, it will be randomly moved forward or backward to other processes on the same machine, but all movements must not exceed the critical block and will not interfere with other critical blocks; The N3 neighborhood: if the length of the head or tail key block is greater than 2, the first two processes of the block head or the last two processes of the block tail are exchanged accordingly; if the length of the internal key block is greater than 4, two processes in the block are randomly selected and exchanged with the starting process and the last process respectively.

7. The flexible job shop scheduling method based on the golden jackal algorithm according to claim 1 is characterized in that: The scheduling scheme is the encoding of each chromosome after the population initialization operation.

8. The flexible job shop scheduling method based on the golden jackal algorithm according to claim 1, characterized in that: The individual position vector is a transformation of the scheduling scheme so that each position is a random number in the range of [-number of workpieces, number of workpieces].

9. The flexible job shop scheduling method based on the golden jackal algorithm according to claim 1, characterized in that: The conversion of the scheduling scheme into an individual position vector includes a machine selection part conversion and a process sorting part conversion; the machine selection part conversion uses the following formula to calculate the machine selection part to obtain the value of the machine selection part of the individual position vector; Where j is the index of the machine code; l is the total number of machines; u(j) is the integer value of the machine selection part of the scheduling plan; w(j) is the number of optional machines corresponding to the process j; x(j) is the position vector value of the process j; there is also a special case, if w(j) is equal to 1, then x(j) is equal to 1; The process sorting part first takes the total number of random values ​​of the process from [-number of workpieces, number of workpieces] and assigns a sorting value to each value in ascending order; secondly, the generated random values, sorting values ​​and process sorting coding schemes are matched one by one; then, the sorting values ​​are rearranged according to the process numbers; finally, the random values ​​corresponding to each sorting value are the values ​​of the process sorting part of the individual position vector.

10. The flexible job shop scheduling method based on the golden jackal algorithm according to claim 1, characterized in that: The conversion of the individual position vector into a scheduling solution includes a machine selection part conversion and a process ordering part conversion: the machine selection part conversion uses the following formula to calculate the machine selection part to obtain a scheduling solution value; The process ordering part conversion uses the ROV rule to convert the process selection part to obtain the value of the process ordering part of the scheduling plan.

11. The flexible job shop scheduling method based on the golden jackal algorithm according to claim 1, characterized in that: The bidding competition selection is to randomly select two individuals from the population, compare their target values, and select the individual with the smaller target value. This process is repeated until the required number of individuals are selected.

12. The flexible job shop scheduling method based on the golden jackal algorithm according to claim 1, characterized in that: The crossover includes a process sorting part using a POX crossover method and a machine selection part using a UX crossover method.

13. The crossover method according to claim 12, characterized in that: The POX crossover method comprises the following steps: the first step is to randomly select several integers from the range of (0, P] to obtain an integer set Z, where P is the total number of workpieces; the second step is to; based on Z and P, find the integer complement Q of Z in the range of (0, P]; the third step is to assign the code consistent with the number of the Z set to child_1 in the process sorting part of parent_1; in parent_2, assign the code consistent with the number of the Q set to child_2, keeping the code position unchanged; the fourth step is to assign the code consistent with the number of the Z set to the remaining code position of child_1 in the process sorting part of parent_2; in parent_1, assign the code consistent with the number of the Q set to the remaining code position of child_2.

14. The crossover method according to claim 12, characterized in that: The UX crossover method comprises the following steps: first, randomly select an integer w from the range of (0, L], where L is the length of the machine selection part code; second, randomly generate w integers from the range of (0, L] to obtain an integer set R; third, assign the machine selection part code of parent_1 to child_2, and assign the machine selection part code of parent_2 to child_1; The fourth step is to assign the codes of the positions in the machine selection part codes of parent_1 and parent_2 that are consistent with the numbers in R to child_1 and child_2 respectively.

15. The flexible job shop scheduling method based on the golden jackal algorithm according to claim 1, characterized in that: The mutation includes two parts: the process sorting part adopts the exchange mutation method, that is, randomly selecting two process codes to exchange their positions; the machine selection part adopts the random mutation method, that is, randomly selecting some machine codes to replace them with other machines in the optional processing machine set.