Multi-objective flexible job-shop scheduling method
By improving the whale optimization algorithm and multi-objective framework, and combining two-stage coding and key process neighborhood structure, the problem of low solution accuracy and efficiency in multi-objective flexible shop scheduling is solved, and more efficient scheduling optimization is achieved.
Patent Information
- Application Number
- CN202310777941.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-28
- Publication Date
- 2026-01-06
- Estimated Expiration
- 2043-06-28
AI Technical Summary
Existing multi-objective flexible workshop scheduling methods suffer from poor algorithm solution accuracy and premature convergence to local optima.
By employing an improved whale optimization algorithm combined with a multi-objective framework, and balancing local and global search capabilities through two-stage encoding and nonlinear convergence factors, two neighborhood structures based on key processes are proposed to optimize the multi-objective flexible shop floor scheduling problem.
It improves the solution accuracy and efficiency of multi-objective flexible workshop scheduling, and avoids premature convergence and getting trapped in local optima.
Smart Images

Figure CN116841263B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of flexible workshop scheduling technology, and more specifically, to a multi-objective flexible workshop scheduling method. Background Technology
[0002] The Flexible Job-shop Scheduling Problem (FJSP) is an extension of the Job-shop Scheduling Problem (JSP). It can be described as follows: N jobs are processed on M machines. Each job contains one or more operations, each operation can be performed on one or more machines, and the processing time varies between different machines. There are processing sequence constraints between different operations of the same job. Therefore, the FJSP can be divided into two sub-problems: (1) which machine to assign the operations to; and (2) the order in which the machine operations are executed. Since the complex combinatorial problem FJSP is a typical NP-hard problem, single-objective FJSP solutions are increasingly unable to meet the actual needs of production practice. Therefore, multi-objective optimization has received widespread attention. Solutions to multi-objective optimization problems are mainly divided into two categories: prior methods and posterior methods. However, existing solutions to multi-objective optimization problems suffer from poor algorithmic accuracy and premature convergence into local optima. Summary of the Invention
[0003] To overcome at least one deficiency in the prior art, this application provides a multi-objective flexible workshop scheduling method.
[0004] Firstly, a multi-objective flexible workshop scheduling method is provided, including:
[0005] Step 1: Construct a multi-objective flexible job shop scheduling problem; the objective functions of the multi-objective flexible job shop scheduling problem include maximum completion time, total machine load, and maximum machine load.
[0006] Step 2: Solve the multi-objective flexible job shop scheduling problem to obtain the optimal solution, including:
[0007] Step 21: Generate an initial population as the current population; the current population includes multiple individuals, each individual including a machine code part and an opcode part; divide the multiple individuals in the current population into multiple neighborhoods; calculate the fitness of each individual according to the objective function;
[0008] Step 22: Optimize each individual using the improved whale optimization algorithm to obtain the optimized individual;
[0009] Step 23: Generate a random value. Based on the relationship between the random value and the set value, perform an initial update on the machine code or operation code portion of the optimized individual to obtain the initially updated individual.
[0010] Step 24: Calculate the fitness of individuals after the first update according to the objective function, compare the fitness of individuals after the first update with the fitness of individuals in the current population, and determine whether to perform an update operation on individuals in the current population based on the comparison result to obtain the updated population.
[0011] Step 25: For the updated population, calculate the Chebyshev objective value of each individual in the neighborhood, and replace the other individuals in the neighborhood with the individual with the smallest Chebyshev objective value to obtain the final updated population.
[0012] Step 26: Determine if the current iteration count has reached the maximum iteration count. If not, return to step 22 and use the final updated population as the current population. If yes, sort the individuals in the final updated population according to the non-dominated sorting method, and output the individuals in the first layer of the sorting results as the optimal solution.
[0013] In one embodiment, the nonlinear convergence factor in the improved whale optimization algorithm is expressed by the following formula:
[0014] a=2×(1-(t-1) / max_iteration) 0.9
[0015] Where a is the nonlinear convergence factor, t is the number of iterations, and max_iteration is the maximum number of iterations.
[0016] In one embodiment, based on the relationship between a random value and a set value, the machine code portion or opcode portion of the optimized individual is initially updated to obtain the initially updated individual, including:
[0017] If the random value is greater than the set value, the same process neighborhood structure update method is used to update the machine code part of the optimized individual for the first time, and the individual after the first update is obtained.
[0018] If the random value is less than or equal to the set value, the same-machine neighborhood structure update method is used to update the opcode part of the optimized individual for the first time, and the individual after the first update is obtained.
[0019] In one embodiment, a neighborhood structure update method is used to initially update the machine code portion of the optimized individual, including:
[0020] For any optimized individual, randomly select a key process from the set of key processes corresponding to the optimized individual, determine the machine with the shortest execution time for the selected key process from the set of processable machines corresponding to the optimized individual, and use the machine code of the determined machine to perform the initial update of the machine code of the optimized individual.
[0021] In one embodiment, a machine neighborhood structure update method is used to initially update the opcode portion of the optimized individual, including:
[0022] For any optimized individual, if there is only one critical process belonging to the same machine in the set of critical processes corresponding to the optimized individual, then the critical process belonging to the same machine is a single critical process, and the single critical process is inserted into the idle time period between the non-critical processes corresponding to the optimized individual.
[0023] If multiple key processes belonging to the same machine form a key block, two key processes from among the multiple key processes are selected for exchange, depending on whether the multiple key processes belong to the same workpiece.
[0024] In one embodiment, an individual's Chebyshev target value is calculated using the following formula:
[0025] g = maxλ k |f k (x)-z k |,k∈[1,u]
[0026] Where g is the Chebyshev target value for individual x, and λ k Let f be the weight vector of the k-th objective function. k (x) is the k-th objective function for individual x, z k Let u be the reference point for the k-th objective function, where k is the index of the objective function and u is the number of objective functions.
[0027] In one embodiment, the fitness of an individual after the initial update is compared with the fitness of individuals in the current population, and based on the comparison result, it is determined whether to perform an update operation on individuals in the current population, including:
[0028] If the fitness of an individual after the initial update is lower than the fitness of individuals in the current population, then the individuals in the current population will be replaced with the individuals after the initial update; otherwise, no replacement will be made.
[0029] Secondly, a multi-objective flexible workshop scheduling device is provided, comprising:
[0030] The scheduling problem construction module is used to construct multi-objective flexible job shop scheduling problems. The objective functions of the multi-objective flexible job shop scheduling problem include maximum completion time, total machine load, and maximum machine load.
[0031] The problem-solving module is used to solve the multi-objective flexible job shop scheduling problem and obtain the optimal solution.
[0032] The problem-solving module is also used to implement the following functions:
[0033] Step 21: Generate an initial population as the current population; the current population includes multiple individuals, each individual including a machine code part and an opcode part; divide the multiple individuals in the current population into multiple neighborhoods; calculate the fitness of each individual according to the objective function;
[0034] Step 22: Optimize each individual using the improved whale optimization algorithm to obtain the optimized individual;
[0035] Step 23: Generate a random value. Based on the relationship between the random value and the set value, perform an initial update on the machine code or operation code portion of the optimized individual to obtain the initially updated individual.
[0036] Step 24: Calculate the fitness of individuals after the first update according to the objective function, compare the fitness of individuals after the first update with the fitness of individuals in the current population, and determine whether to perform an update operation on individuals in the current population based on the comparison result to obtain the updated population.
[0037] Step 25: For the updated population, calculate the Chebyshev objective value of each individual in the neighborhood, and replace the other individuals in the neighborhood with the individual with the smallest Chebyshev objective value to obtain the final updated population.
[0038] Step 26: Determine if the current iteration count has reached the maximum iteration count. If not, return to step 22 and use the final updated population as the current population. If yes, sort the individuals in the final updated population according to the non-dominated sorting method, and output the individuals in the first layer of the sorting results as the optimal solution.
[0039] Thirdly, a computer-readable storage medium is provided, which stores a computer program that, when executed by a processor, implements the aforementioned multi-objective flexible workshop scheduling method.
[0040] Fourthly, a computer program product is provided, including a computer program / instruction, which, when executed by a processor, implements the aforementioned multi-objective flexible workshop scheduling method.
[0041] Compared with existing technologies, this application has the following advantages: The multi-objective flexible shop floor scheduling method of this application establishes a multi-objective flexible shop floor scheduling mathematical model with the objectives of maximum completion time, total machine load, and maximum machine load; it adopts a two-segment encoding including machine code and operation code to represent the scheduling scheme, and uses the local and global search capabilities of the nonlinear convergence factor balancing algorithm; in addition, it proposes two neighborhood structures based on key processes to improve solution quality; finally, it uses an improved whale algorithm combined with a multi-objective framework to solve the multi-objective flexible shop floor operation problem model; the method of this application can better balance efficiency and solution accuracy, and avoid premature convergence and getting trapped in local optima. Attached Figure Description
[0042] This application can be better understood by referring to the description given below in conjunction with the accompanying drawings, which, together with the detailed description below, are incorporated in and form part of this specification. In the drawings:
[0043] Figure 1 Examples of some flexible shop floor scheduling problems are shown;
[0044] Figure 2 A flowchart for solving the multi-objective flexible job shop scheduling problem is shown. Detailed Implementation
[0045] Exemplary embodiments of the present application will be described below with reference to the accompanying drawings. For clarity and brevity, not all features of the actual embodiments are described in the specification. However, it should be understood that many embodiment-specific decisions can be made in the development of any such actual embodiment to achieve the developer’s specific objectives, and these decisions may vary as the embodiments differ.
[0046] It should also be noted that, in order to avoid obscuring this application with unnecessary details, only the device structure closely related to the solution according to this application is shown in the accompanying drawings, while other details that are not closely related to this application are omitted.
[0047] It should be understood that this application is not limited to the described embodiments by virtue of the following description with reference to the accompanying drawings. In this document, embodiments may be combined with each other, features may be substituted or borrowed between different embodiments, and one or more features may be omitted in one embodiment, where feasible.
[0048] This application provides a multi-objective flexible workshop scheduling method, including:
[0049] Step 1: Construct a multi-objective flexible job shop scheduling problem; the objective functions of the multi-objective flexible job shop scheduling problem include maximum completion time, total machine load, and maximum machine load. Figure 1Examples of some flexible shop floor scheduling problems are shown.
[0050] The multi-objective flexible job shop scheduling problem is as follows:
[0051] min F={C max M a M s}
[0052] The constraints are:
[0053] s ij +x ijz ×p ijz ≤c ij ,1≤i≤N,1≤j≤K,1≤z≤M
[0054] c ij ≤s i(j+1) ,1≤i≤N,1≤j≤K
[0055]
[0056] Where F is the objective function, C max To maximize the completion time, M a M represents the total machine load. s Maximum machine load;
[0057] i is the workpiece number, j is the operation number, z is the machine number, N is the number of workpieces, K is the number of operations, M is the number of machines, v is the workpiece number, b is the operation number, k is the machine number, and s is the workpiece number. ij For O ij Start processing time, O ij For the j-th process of the i-th workpiece; x ijz To represent O ij Is the quantity processed on machine z? If O ij If processed on machine z, then x ijz =1, otherwise x ijz =0; p ijz For O ij Processing time on machine z; c ij For O ij The end processing time; u is a positive real number; s vb For O vb Start processing time, O vb For the b-th process of the v-th workpiece; y ijvb To represent O ij Is it prior to O? vb The quantity processed on machine z, if O ij Prior to O vb If processed on machine z, then y ijvb =1, otherwise yijvb =0; x ijk To represent O ij Is the quantity processed on machine k? If O ij If processed on machine k, then x ijk =1, otherwise x ijk =0.
[0058] Step 2: Solve the multi-objective flexible job shop scheduling problem to obtain the optimal solution. Figure 2 A flowchart for solving the multi-objective flexible job shop scheduling problem is shown. See [link / reference] Figure 2 Solve the multi-objective flexible job shop scheduling problem, including:
[0059] Step 21: Generate an initial population as the current population; the current population includes multiple individuals, each individual including a machine code part and an opcode part; divide the multiple individuals in the current population into multiple neighborhoods; calculate the fitness of each individual according to the objective function; here, the MOEA / D framework method can be used to divide multiple individuals into multiple neighborhoods, which is an existing technology and will not be elaborated further.
[0060] Step 22: Optimize each individual using the improved whale optimization algorithm to obtain the optimized individual.
[0061] Step 23: Generate a random value. Based on the relationship between the random value and the set value, perform an initial update on the machine code or opcode portion of the optimized individual to obtain the initially updated individual. Here, the set value can be 0.5.
[0062] Step 24: Calculate the fitness of individuals after the initial update based on the objective function, compare the fitness of individuals after the initial update with the fitness of individuals in the current population, and determine whether to perform an update operation on individuals in the current population based on the comparison result to obtain the updated population.
[0063] Step 25: For the updated population, calculate the Chebyshev objective value of each individual in the neighborhood, and replace the other individuals in the neighborhood with the individual with the smallest Chebyshev objective value to obtain the final updated population.
[0064] Step 26: Determine if the current iteration count has reached the maximum iteration count. If not, return to Step 22 and use the final updated population as the current population. If so, sort the individuals in the final updated population using a non-dominated sorting method, and output the individuals in the first layer of the sorted results as the optimal solution. Here, the non-dominated sorting method sorts all individuals, forming multiple layers. Each layer contains multiple individuals, and each individual corresponds to an optimal solution. Specifically, the optimal solution can be any machine that performs any process of any workpiece.
[0065] In this embodiment, a multi-objective flexible job shop scheduling mathematical model is established with the maximum completion time, total machine load, and maximum machine load as objectives. A two-segment encoding, including machine code and operation code, is used to represent the scheduling scheme. The local and global search capabilities of the nonlinear convergence factor balancing algorithm are utilized. In addition, two neighborhood structures based on key processes are proposed to improve the solution quality. Finally, an improved whale algorithm combined with a multi-objective framework is used to solve the multi-objective flexible job shop problem model. The method of this application can better balance efficiency and solution accuracy and avoid premature convergence and getting trapped in local optima.
[0066] In one embodiment, the nonlinear convergence factor in the improved whale optimization algorithm in step 22 is expressed by the following formula:
[0067] a=2×(1-(t-1) / max_iteration) 0.9
[0068] Where a is the nonlinear convergence factor, t is the number of iterations, and max_iteration is the maximum number of iterations.
[0069] In one embodiment, in step 23, based on the relationship between the random value and the set value, the machine code portion or opcode portion of the optimized individual is initially updated to obtain the initially updated individual, including:
[0070] If the random value is greater than the set value, the same process neighborhood structure update method is used to update the machine code part of the optimized individual for the first time, and the individual after the first update is obtained.
[0071] Specifically, for any optimized individual, a key process is randomly selected from the set of key processes corresponding to the optimized individual. Then, the machine with the shortest execution time for the selected key process is determined from the set of processable machines corresponding to the optimized individual. Finally, the machine code of the optimized individual is updated initially using the machine code of the determined machine. Here, each individual corresponds to a set of key processes and a set of processable machines.
[0072] If the random value is less than or equal to the set value, the same-machine neighborhood structure update method is used to update the opcode part of the optimized individual for the first time, and the individual after the first update is obtained.
[0073] Specifically, for any optimized individual, if there is only one critical process belonging to the same machine in the set of critical processes corresponding to the optimized individual, then that critical process belonging to the same machine is a single critical process, and it is inserted into the idle time period between the non-critical processes corresponding to the optimized individual. If multiple critical processes belonging to the same machine form a critical block, two critical processes are selected for exchange based on whether they belong to the same workpiece. Here, the multiple critical processes in a critical block are critical processes that are adjacent in time. For example, if a critical block includes four critical processes, it is determined whether the first and fourth critical processes belong to the same workpiece. If they do not, the first and fourth critical processes are exchanged. If they do, it is determined whether the second and fourth critical processes belong to the same workpiece. If they do not, the second and fourth critical processes are exchanged. And so on, selecting other critical processes for exchange in order.
[0074] In one embodiment, step 24, comparing the fitness of the individuals after the initial update with the fitness of individuals in the current population, and determining whether to perform an update operation on individuals in the current population based on the comparison result, includes:
[0075] If the fitness of an individual after the initial update is lower than the fitness of individuals in the current population, then the individuals in the current population will be replaced with the individuals after the initial update; otherwise, no replacement will be made.
[0076] In one embodiment, an individual's Chebyshev target value is calculated using the following formula:
[0077] g = maxλ k |f k (x)-z k |,k∈[1,u]
[0078] Where g is the Chebyshev target value for individual x, and λ k Let f be the weight vector of the k-th objective function. k (x) is the k-th objective function for individual x, z k Let u be the reference point for the k-th objective function, where k is the number of the objective function and u is the number of objective functions. In this embodiment, u = 3.
[0079] Based on the same inventive concept as the multi-objective flexible shop scheduling method, this embodiment also provides a corresponding multi-objective flexible shop scheduling device, including:
[0080] The scheduling problem construction module is used to construct multi-objective flexible job shop scheduling problems. The objective functions of the multi-objective flexible job shop scheduling problem include maximum completion time, total machine load, and maximum machine load.
[0081] The problem-solving module is used to solve the multi-objective flexible job shop scheduling problem and obtain the optimal solution. Here, the problem-solving module also implements the following functions:
[0082] Step 21: Generate an initial population as the current population; the current population includes multiple individuals, each individual including a machine code part and an opcode part; divide the multiple individuals in the current population into multiple neighborhoods; calculate the fitness of each individual according to the objective function;
[0083] Step 22: Optimize each individual using the improved whale optimization algorithm to obtain the optimized individual;
[0084] Step 23: Generate a random value. Based on the relationship between the random value and the set value, perform an initial update on the machine code or operation code portion of the optimized individual to obtain the initially updated individual.
[0085] Step 24: Calculate the fitness of individuals after the first update according to the objective function, compare the fitness of individuals after the first update with the fitness of individuals in the current population, and determine whether to perform an update operation on individuals in the current population based on the comparison result to obtain the updated population.
[0086] Step 25: For the updated population, calculate the Chebyshev objective value of each individual in the neighborhood, and replace the other individuals in the neighborhood with the individual with the smallest Chebyshev objective value to obtain the final updated population.
[0087] Step 26: Determine if the current iteration count has reached the maximum iteration count. If not, return to step 22 and use the final updated population as the current population. If yes, sort the individuals in the final updated population according to the non-dominated sorting method, and output the individuals in the first layer of the sorting results as the optimal solution.
[0088] The multi-objective flexible workshop scheduling device of this embodiment has the same inventive concept as the multi-objective flexible workshop scheduling method described above. Therefore, the specific implementation of the device can be found in the embodiment section of the multi-objective flexible workshop scheduling method described above, and its technical effects correspond to the technical effects of the above method. It will not be repeated here.
[0089] This application provides a computer-readable storage medium storing a computer program. When the computer program is executed by a processor, it implements the above-described multi-objective flexible workshop scheduling method.
[0090] This application provides a computer program product, including a computer program / instruction, which, when executed by a processor, implements the aforementioned multi-objective flexible workshop scheduling method.
[0091] The above descriptions are merely various embodiments of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A multi-objective flexible job shop scheduling method, characterized by, The application relates to a method for solving a multi-objective flexible job shop scheduling problem, comprising the following steps: Step 1, constructing a multi-objective flexible job shop scheduling problem; the objective function of the multi-objective flexible job shop scheduling problem comprises maximum completion time, total machine load and maximum machine load; Step 2, solving the multi-objective flexible job shop scheduling problem to obtain an optimal solution, comprising the following steps: Step 21, generating an initial population as a current population; the current population comprises multiple individuals, each individual comprises a machine code part and an operation code part; the multiple individuals in the current population are divided into multiple neighborhoods; the fitness of each individual is calculated according to the objective function; Step 22, optimizing each individual by using an improved whale optimization algorithm to obtain an optimized individual; Step 23, generating a random value; according to the size relationship between the random value and a set value, the machine code part or the operation code part of the optimized individual is updated initially to obtain an initially updated individual; Step 24, the fitness of the initially updated individual is calculated according to the objective function; the fitness of the initially updated individual is compared with the fitness of the individuals in the current population; according to the comparison result, it is determined whether the individuals in the current population are updated to obtain an updated population; Step 25, for the updated population, the Chebyshev target value of the individuals in each neighborhood is calculated; the individual with the minimum Chebyshev target value is used to replace other individuals in the neighborhood to obtain a finally updated population; Step 26, it is judged whether the current iteration number reaches a maximum iteration number; if not, the finally updated population is returned to step 22 as the current population; if yes, the individuals in the finally updated population are sorted according to a non-dominated sorting method; the individuals in the first layer of the sorting result are outputted as optimal solutions; The non-linear convergence factor in the improved whale optimization algorithm is expressed by the following formula: wherein, a is a non-linear convergence factor, t is the iteration number, and max iteration is the maximum iteration number; According to the size relationship between the random value and the set value, the machine code part or the operation code part of the optimized individual is updated initially to obtain an initially updated individual, comprising the following steps: If the random value is greater than the set value, the machine code part of the optimized individual is updated initially by using a same process neighborhood structure updating method to obtain an initially updated individual; If the random value is less than or equal to the set value, the operation code part of the optimized individual is updated initially by using a same machine neighborhood structure updating method to obtain an initially updated individual; The Chebyshev target value of the individual is calculated by the following formula: wherein, is the Chebyshev target value for the individual, x is the Chebyshev target value for the individual, is the weight vector for the j-th objective function, is the weight vector for the j-th objective function, is the j-th objective function for the individual, x is the j-th objective function for the individual, is the j-th objective function for the individual, is the reference point for the j-th objective function, is the reference point for the j-th objective function, is the number of the objective function, is the number of the objective function.
2. The method of claim 1, wherein, The machine code part of the optimized individual is updated initially by using the same process neighborhood structure updating method, comprising the following steps: For any optimized individual, a key process is randomly selected from a key process set corresponding to the optimized individual; a machine with the shortest processing time for the selected key process is determined from a processable machine set corresponding to the optimized individual; the machine code of the determined machine is used to update the machine code part of the optimized individual initially.
3. The method of claim 1, wherein, The initial update of the operation code part of the optimized individual is performed by using the same-machine neighborhood structure update method, and includes the following steps. For any optimized individual, if there is only one key process belonging to the same machine in the key process set corresponding to the optimized individual, the key process belonging to the same machine is a single key process, and the single key process is inserted into the idle time period between non-key processes corresponding to the optimized individual. If multiple key processes belonging to the same machine form a key block, whether the multiple key processes belong to the same workpiece is determined, and two key processes in the multiple key processes are selected for exchange according to whether the multiple key processes belong to the same workpiece.
4. The method of claim 1, wherein, Wherein, The fitness of the initial updated individual is compared with the fitness of the individual in the current population, and whether the individual in the current population is updated is determined according to the comparison result, including: If the fitness of the initial updated individual is less than the fitness of the individual in the current population, the individual in the current population is replaced by the initial updated individual, otherwise, the individual in the current population is not replaced.
5. A multi-objective flexible job shop scheduling apparatus characterized by, Including: The scheduling problem construction module is configured to construct a multi-objective flexible job shop scheduling problem; the objective function of the multi-objective flexible job shop scheduling problem includes maximum completion time, total machine load, and maximum machine load; The problem solving module is configured to solve the multi-objective flexible job shop scheduling problem to obtain an optimal solution; The problem solving module is further configured to implement the following functions: Step 21, generating an initial population as a current population; the current population includes multiple individuals, and each individual includes a machine code part and an operation code part; The multiple individuals in the current population are divided into multiple neighborhoods; The fitness of each individual is calculated according to the target function; Step 22, optimizing each individual by using an improved whale optimization algorithm to obtain an optimized individual; Step 23, generating a random value, and performing initial update on the machine code part or the operation code part of the optimized individual according to the size relationship between the random value and a set value to obtain an initial updated individual; Step 24, calculating the fitness of the initial updated individual according to the target function, comparing the fitness of the initial updated individual with the fitness of the individual in the current population, and determining whether to perform update operation on the individual in the current population according to the comparison result to obtain an updated population; Step 25, for the updated population, calculating the Chebyshev target value of the individual in each neighborhood, replacing other individuals in the neighborhood with the individual with the smallest Chebyshev target value to obtain a final updated population; Step 26, determining whether the current iteration number reaches a maximum iteration number, if not, returning to step 22, and taking the final updated population as the current population; If yes, the individuals in the final updated population are sorted according to a non-dominated sorting method, and the individuals in the first layer of the sorting result are output as an optimal solution; The non-linear convergence factor in the improved whale optimization algorithm is represented by the following formula: wherein, a is a non-linear convergence factor, t is the iteration number, and max iteration is the maximum iteration number. The initial updating of the machine code part or the operation code part of the optimized individual according to the size relationship between the random value and the set value to obtain an initially updated individual comprises: If the random value is greater than the set value, the machine code part of the optimized individual is updated by using the same neighborhood structure updating method to obtain an initially updated individual; If the random value is less than or equal to the set value, the operation code part of the optimized individual is updated by using the same machine neighborhood structure updating method to obtain an initially updated individual; The Chebyshev target value of the individual is calculated by using the following formula: wherein, is the Chebyshev target value for the individual x , is the weight vector for the j-th objective function, , is the j-th objective function for the individual x , , is the reference point for the j-th objective function, , is the number of objective functions, is the number of objective functions.
6. A computer readable storage medium characterized by, The computer readable storage medium stores a computer program, and the computer program is executed by the processor to implement the multi-objective flexible job shop scheduling method in any one of claims 1-4.
7. A computer program product, characterised in that, The computer program / instructions are executed by the processor to implement the multi-objective flexible job shop scheduling method in claim 1.
Citation Information
Patent Citations
Intelligent flexible job shop active scheduling method based on hyper-heuristic algorithm
CN114676987A
Double-resource die job shop scheduling optimization method based on ammas-ga nested algorithm
WO2022000924A1