A flexible job shop scheduling method based on lower bound minimization

CN123014574APending Publication Date: 2026-10-30BEIHANG UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611249684.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-08-18
Publication Date
2026-10-30

AI Technical Summary

Technical Problem

现有算法通常难以在计算时间和求解效果上取得较好的均衡

Benefits of technology

[0027]上述方案中,该方法首先进行柔性作业车间调度参数的输入;之后结合问题参数,以最小化加工时间下界为优化目标,求解调度方案中的机器分配部分;然后结合问题参数和机器分配方案,以最小化加工时间为优化目标,求解调度方案中的操作排序部分;最后结合求解的机器分配方案和操作排序方案,生成并输出完整的调度方案。本发明分两阶段对柔性作业车间调度问题进行求解,使用加工时间下界作为第一阶段的优化目标,将机器分配阶段建模为0-1整数线性规划问题,将操作排序阶段建模为混合整数线性规划问题,简化了柔性作业车间调度问题的求解复杂度,减少了求解过程中涉及的决策变量和约束数量。基于柔性作业车间调度问题中加工时间下界与加工时间的强关联性,本发明能够保持调度方案较高的求解质量,同时显著提高柔性作业车间调度问题的计算效率。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123014574A_ABST
    Figure CN123014574A_ABST
Patent Text Reader

Abstract

The application discloses a flexible job shop scheduling method based on lower bound minimization, and the core is to take the processing time lower bound as the optimization target of the machine allocation stage, and divide the flexible job shop scheduling problem into a two-stage sub-problem solving method. The method firstly obtains relevant parameters of the input flexible job shop scheduling; then solves machine allocation based on the problem parameters, takes the minimization of the processing time lower bound as the optimization target, combines task independent constraints, models the machine allocation problem into a 0-1 integer linear programming problem, and solves the machine allocation result; then solves operation sequencing based on the obtained machine allocation and the problem parameters, takes the minimization of the processing time as the optimization target, combines task sequence constraints and operation non-overlapping constraints, models the operation sequencing problem into a mixed integer linear programming problem, and solves the operation sequencing result; finally, combines the obtained machine allocation result and the operation sequencing result, and outputs a scheduling scheme. When solving the flexible job shop scheduling problem, the application divides the problem into two-stage sub-problems of machine allocation and operation sequencing, and takes the processing time lower bound as the optimization target of the machine allocation stage, so that the number of variables and the number of constraints in the solving process are reduced, and the calculation efficiency of the flexible job shop scheduling problem is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of intelligent industrial manufacturing, specifically relating to a flexible job shop scheduling method based on lower bound minimization. Background Technology

[0002] In typical smart manufacturing scenarios, products consist of multiple processing steps, each of which can be performed by multiple machines or personnel. The arrangement of the processing sequence and timing directly impacts production efficiency and delivery time. The flexible workshop scheduling problem models the factory's production process and analyzes the allocation and optimization of manufacturing resources, playing a crucial role in improving production efficiency and reducing production costs.

[0003] Since the flexible job shop scheduling problem is an NP-hard combinatorial optimization problem, the possible scheduling combinations increase exponentially with the number of jobs, tasks, and machines, significantly increasing the problem's complexity. Exact algorithms can find the optimal solution to the flexible job shop scheduling problem, but require considerable computation time; approximate algorithms are faster, but their solutions differ significantly from the optimal solution. Existing algorithms typically struggle to achieve a good balance between computation time and solution performance. Summary of the Invention

[0004] The purpose of this invention is to overcome the shortcomings of the prior art and provide a flexible job shop scheduling method based on lower bound minimization.

[0005] The objective of this invention is achieved through the following technical solution:

[0006] This method first takes the parameters of the flexible job shop scheduling problem as input; then, based on the problem parameters, it solves the machine allocation in the first stage, with minimizing the lower bound of processing time as the optimization objective, and calculates the machine allocation scheme in conjunction with task independence constraints; next, based on the obtained machine allocation and problem parameters, it solves the operation sequencing in the second stage, with minimizing processing time as the optimization objective, and calculates the operation sequencing scheme in conjunction with task sequence constraints and operation non-overlapping constraints; finally, based on the obtained machine allocation results and operation sequencing scheme, it organizes the data according to the scheduling problem requirements and outputs the scheduling scheme.

[0007] 1. A flexible job shop scheduling method based on lower bound minimization, characterized in that:

[0008] (1) Input the flexible workshop scheduling parameters;

[0009] (2) Solve for machine allocation with the goal of minimizing the lower bound of processing time;

[0010] (3) Based on the machine allocation results, with minimizing processing time as the optimization objective, solve for the operation sorting;

[0011] (4) Output flexible work workshop scheduling scheme.

[0012] 2. The flexible job shop scheduling method based on lower bound minimization according to claim 1, characterized in that: the input method for the flexible job shop scheduling parameters in step (1) is as follows:

[0013] Input the relevant parameters of the work set in the flexible job shop scheduling, including the total number of jobs, the identifier of each job, and the task set and task identifier contained in each job; input the relevant parameters of the machine set in the flexible job shop scheduling, including the total number of machines and the identifier of each machine; input the relevant parameters of the operation set in the flexible job shop scheduling, including whether a specific machine is compatible with a specific task of a specific job, and the processing cost required if compatible.

[0014] 3. The flexible job shop scheduling method based on lower bound minimization according to claim 1, characterized in that: the solution method for the machine allocation stage in step (2) is as follows:

[0015] First, the optimization objective of the machine allocation problem is set as minimizing the lower bound of processing time. Here, the total processing cost of each job is the sum of the processing costs of the tasks it contains, the total processing cost of each machine is the sum of the processing costs of the tasks it is responsible for, and the lower bound of processing time is defined as the maximum value among the total processing costs of all jobs and machines.

[0016] Next, the constraints for the machine allocation problem are set as task independence constraints. This means that each task in each job must be assigned to a compatible machine for completion, and each task in each job can be completed by at most one machine.

[0017] Then, the machine allocation problem in flexible job shop scheduling is expressed as a 0-1 integer linear programming problem for solution. The problem condition is a known set of processing costs. , The elements in the variable are floating-point numbers, representing the processing cost required to process a specific task in a specific job using a specific machine; the decision variable is an unknown set of machine allocations. , The elements in the expression take values ​​of 0 or 1, indicating whether a specific machine is assigned to process a specific task within a specific job. Under the constraints, each task is processed by exactly one machine, and the sum of the decision variables for all machines corresponding to that task is exactly 1. For each job, the total processing cost is calculated by summing the processing costs of its constituent tasks. The processing cost of its constituent tasks is calculated by summing the products of the decision variables of the selectable machines for that task and their corresponding processing costs. For each machine, the total processing cost is calculated by summing the processing costs of all possible tasks it may contain. The processing cost of a single task is calculated by multiplying the decision variable common to both the task and the machine by its corresponding processing cost. In the optimization objective, the lower bound of the processing time is the maximum value of a series of expressions for the total cost of jobs and machines, and the optimization direction is to minimize the objective function.

[0018] Finally, the 0-1 integer linear programming problem corresponding to the machine allocation problem is solved. This is based on the obtained set of machine allocation variables. The final machine allocation result is obtained by taking the values ​​of the elements in the variable. Specifically, for a specific task and machine within a given job, a value of 1 indicates that the machine will be used to process that task within that job.

[0019] 4. A flexible job shop scheduling method based on lower bound minimization according to claim 1, characterized in that: the solution method for the operation sequencing stage in step (3) is as follows:

[0020] First, the optimization objective of the operation sequencing problem is set as minimizing processing time. Each task in each job has its own start and end times, and the processing time is defined as the end time of the last task in the last completed job.

[0021] Next, the constraints for the operation sequencing problem are set as task sequence constraints and operation non-overlapping constraints. Among them, the multiple tasks contained in each job need to be performed sequentially, and the start time of the subsequent task is no earlier than the end time of the preceding task; the multiple operations contained in each machine cannot overlap, and the processing time periods of different operations on the same machine cannot overlap.

[0022] Then, the operation sequencing problem of flexible job shop scheduling is expressed as a mixed-integer linear programming problem for solution. The problem condition is a known set of processing costs. and the allocated set of operations , The elements in the table are floating-point numbers, representing the processing cost required to process a specific task in a specific job using a specific machine. The elements in the table are the assigned operations, representing the task-machine allocation relationship within a job; the decision variables are the unknown set of task start times. and task end time set , The elements in the table are floating-point numbers, representing the start time of processing a specific task within a specific job. The elements in the expression are floating-point numbers representing the processing completion time of a specific task within a specific job. Under the constraints, assuming processing machines have been assigned to tasks across all jobs, the difference between the task's completion time and start time equals the processing cost of that operation; since different tasks within each job are performed sequentially, the start time of a subsequent task within the same job is greater than or equal to the completion time of a preceding task; the operations contained in each machine do not overlap, and for any two operations on the same machine, there exists exactly one operation whose start time is no earlier than the completion time of the other operation. In the optimization objective, the processing time is the maximum completion time of all tasks within all jobs, and the optimization direction is to minimize the objective function.

[0023] Finally, the mixed-integer linear programming problem corresponding to the operation sorting problem is solved. Based on the task start and end times of each task in each work, the final operation sorting result is obtained. Specifically, for operations on the same machine, those with shorter task start times are executed first.

[0024] 5. A flexible job shop scheduling method based on lower bound minimization according to claim 1, characterized in that: the flexible job shop scheduling scheme output method in step (4) is as follows:

[0025] Combining the obtained machine allocation and operation sorting results, and based on the requirements of flexible shop floor scheduling, the final flexible shop floor scheduling scheme is compiled and output. This final scheme is typically presented as a list or Gantt chart. Elements in the list or Gantt chart may include the work index corresponding to the operation, the task index corresponding to the operation, the machine index corresponding to the operation, the start time of the operation, and the end time of the operation.

[0026] The beneficial effects of the above-mentioned technical solution of the present invention are as follows:

[0027] In the above scheme, the method first inputs the flexible job shop scheduling parameters; then, combining the problem parameters, it solves the machine allocation part of the scheduling scheme with minimizing the lower bound of processing time as the optimization objective; next, combining the problem parameters and the machine allocation scheme, it solves the operation sequencing part of the scheduling scheme with minimizing processing time as the optimization objective; finally, it generates and outputs the complete scheduling scheme by combining the solved machine allocation scheme and operation sequencing scheme. This invention solves the flexible job shop scheduling problem in two stages, using the lower bound of processing time as the optimization objective of the first stage. The machine allocation stage is modeled as a 0-1 integer linear programming problem, and the operation sequencing stage is modeled as a mixed integer linear programming problem, simplifying the solution complexity of the flexible job shop scheduling problem and reducing the number of decision variables and constraints involved in the solution process. Based on the strong correlation between the lower bound of processing time and processing time in the flexible job shop scheduling problem, this invention can maintain a high solution quality of the scheduling scheme while significantly improving the computational efficiency of the flexible job shop scheduling problem. Attached Figure Description

[0028] Figure 1 This is a flowchart of a flexible job shop scheduling method based on lower bound minimization according to the present invention;

[0029] Figure 2 A schematic diagram illustrating a flexible job shop scheduling problem, as an exemplary embodiment of the present invention;

[0030] Figure 3 A schematic diagram illustrating the optimization process of a flexible job shop scheduling method as an exemplary embodiment of the present invention;

[0031] Figure 4 This is a schematic diagram illustrating the result of a flexible job shop scheduling method as an exemplary embodiment of the present invention. Detailed Implementation

[0032] 1. Input the flexible workshop scheduling parameters;

[0033] For example Figure 2 The flexible job shop scheduling problem shown involves 30 jobs and 10 machines. Each job contains multiple tasks, and the machines are capable of handling different types of tasks. When inputting the relevant parameters for the job set in flexible job shop scheduling, the input job set is... The number of elements contained is ,gather elements in The corresponding identifiers and task sets for each job The index contains at most 100 elements. ,gather elements in Corresponding work The identifiers for each task. When inputting machine set-related parameters in the flexible job shop scheduling, input the machine set. The number of elements contained ,gather elements in This corresponds to the identifier of each machine. When inputting the operation set parameters in the flexible job shop scheduling, input the processing cost set. ,gather elements in Indicates the machine With work Included tasks Compatibility, its value is equal to the machine used. Processing tasks The required processing costs.

[0034] 2. Solve for machine allocation by minimizing the lower bound of processing time;

[0035] First, we define the relevant variables in the machine allocation problem of flexible job shop scheduling. The problem condition is a known set of processing costs. , elements in If it is a floating-point number, it indicates that a machine is used. Processing work Tasks in Required processing costs; the decision variable is an unknown set of machine allocations. , elements in The value can be 0 or 1. A value of 1 indicates the use of a machine. With the task , A value of 0 indicates that the machine With the task Incompatible or other machine processing tasks should be selected. .

[0036] Next, we set the objective function for the machine allocation problem. , This is the lower bound of the processing time. The total processing cost set of the work is represented as... ,gather elements in Indicates work The total processing cost is equal to the sum of the processing costs of the tasks included. The processing cost of a single task is calculated by summing the products of the decision variables for the selectable machines for that task and their corresponding processing costs. The total processing cost set of the machine is represented as ,gather elements in Indicates machine The total processing cost is equal to the sum of the processing costs of all tasks it may include. The processing cost of a single task is calculated by multiplying the decision variable shared by the task and the machine by the corresponding processing cost. The lower bound of processing time is defined as the maximum value of the total processing cost across all jobs and machines, therefore The optimization objective is to minimize the objective function.

[0037] Then, the constraints for the machine allocation problem are set as task independence constraints. Each job... Each task All of these tasks need to be assigned to a compatible machine for completion, and the task... It can be done by at most one machine, therefore there are .

[0038] Finally, the conditions, variables, constraints, and optimization objective of the machine allocation problem are summarized, which corresponds to a 0-1 integer linear programming problem. Solving the programming problem yields the set of decision variables for machine allocation. The final value of , when one of its elements When the value is 1, it indicates that the work will be done. Task Assigned to machine To process.

[0039] 3. Based on the machine allocation results, and with minimizing processing time as the optimization objective, solve for the operation sequencing;

[0040] First, we define the relevant variables in the operation sequencing problem of flexible job shop scheduling. The problem condition is a known set of processing costs. and the allocated set of operations , elements in If it is a floating-point number, it indicates that a machine is used. Processing work Tasks in Required processing costs, elements in This indicates that the work has been completed. Task Assigned to machine Processing is performed; the decision variable is the unknown set of task start times. and task end time set , elements in A floating-point number, representing work Tasks in The start time of processing, elements in A floating-point number, representing work Tasks in The processing end time.

[0041] Next, we set the objective function for the sorting problem. , This refers to processing time. Each job... Each task Each task has its own start and end time, and the processing time is equal to the end time of the last task in the last completed task. The optimization objective is to minimize the objective function.

[0042] Then, the constraints for the operation sequencing problem are set as task sequence constraints and operation non-overlapping constraints. Each work... The multiple tasks included Tasks need to be performed in sequence, with subsequent tasks... Task start time No earlier than the preceding task Task end time ,therefore Each machine The multiple operations included Processing times for different operations on the same machine cannot overlap. or This converts Boolean logic into a product form, therefore Meanwhile, according to the operation set When processing machines have been assigned to each job task, the difference between the task's end time and start time equals the processing cost of that operation. .

[0043] Finally, the conditions, variables, constraints, and optimization objective of the operation sequencing problem are summarized, which corresponds to a mixed-integer linear programming problem. Solving the programming problem yields the set of decision variables—task start times. and task end time set The final value of , including its elements and This indicates the machine Processing tasks The start and end times.

[0044] 4. Output flexible workshop scheduling scheme.

[0045] Combined with the obtained machine allocation set Task start time set and task end time set Based on the requirements of flexible workshop scheduling, the final flexible workshop scheduling solution is compiled and output. For example... Figure 4 The output shown is Figure 2 The scheduling results of the flexible shop floor scheduling problem are presented in the form of a Gantt chart. Different tasks are marked with different colors. Rectangles of the same color from left to right correspond to the task sequence of the same job. The horizontal axis corresponds to the task processing time of each task, and the vertical axis corresponds to the processing machine used by each task.

[0046] The above description represents the preferred embodiments of the present invention. It should be noted that those skilled in the art can make various improvements and modifications without departing from the principles of the present invention, and these improvements and modifications should also be considered within the scope of protection of the present invention.

Claims

1. A flexible job shop scheduling method based on lower bound minimization, characterized in that: (1) Input the flexible workshop scheduling parameters; (2) Solve for machine allocation with the goal of minimizing the lower bound of processing time; (3) Based on the machine allocation results, with minimizing processing time as the optimization objective, solve for the operation sorting; (4) Output flexible work workshop scheduling scheme.

2. The flexible job shop scheduling method based on lower bound minimization according to claim 1, characterized in that: The input method for the flexible workshop scheduling parameters in step (1) is as follows: Input the relevant parameters of the work set in the flexible workshop scheduling, including the total number of work, the identifier of each work, and the task set and task identifier contained in each work; Input the relevant parameters of the machine set in the flexible job shop scheduling, including the total number of machines and the identifier of each machine; input the relevant parameters of the operation set in the flexible job shop scheduling, including whether a specific machine is compatible with a specific task of a specific job, and the processing cost required if compatible.

3. The flexible job shop scheduling method based on lower bound minimization according to claim 1, characterized in that: The solution method for the machine allocation stage in step (2) is as follows: First, the optimization objective of the machine allocation problem is set as minimizing the lower bound of processing time. Here, the total processing cost of each job is the sum of the processing costs of the tasks it contains, the total processing cost of each machine is the sum of the processing costs of the tasks it is responsible for, and the lower bound of processing time is defined as the maximum value among the total processing costs of all jobs and machines. Next, the constraints for the machine allocation problem are set as task independence constraints. This means that each task in each job must be assigned to a compatible machine for completion, and each task in each job can be completed by at most one machine. Then, the machine allocation problem in flexible job shop scheduling is expressed as a 0-1 integer linear programming problem for solution. The problem conditions are a known set of processing costs, D, where elements are floating-point numbers representing the processing cost required to process a specific task in a specific job using a specific machine; the decision variables are an unknown set of machine allocations, X, where elements are either 0 or 1, indicating whether to allocate a specific machine to process a specific task in a specific job. Under the constraints, each task is processed by exactly one machine, and the sum of the decision variables for all machines corresponding to that task is exactly 1. For each job, the total processing cost is calculated by summing the processing costs of its constituent tasks, which is calculated by summing the products of the decision variables of the selectable machines for the task and their corresponding processing costs. For each machine, the total processing cost is calculated by summing the processing costs of all possible tasks it may contain, and the processing cost of a single task is calculated by multiplying the decision variables of both the task and the machine and their corresponding processing costs. In the optimization objective, the lower bound of the processing time is the maximum value of a series of expressions for the total cost of jobs and machines, and the optimization direction is to minimize the objective function. Finally, the 0-1 integer linear programming problem corresponding to the machine allocation problem is solved. Based on the values ​​of the elements in the obtained machine allocation variable set X, the final machine allocation result is obtained. Specifically, for a specific task and machine within a given job, a value of 1 indicates that the machine is used to process that task within that job.

4. The flexible job shop scheduling method based on lower bound minimization according to claim 1, characterized in that: The solution method for the operation sorting stage in step (3) is as follows: First, the optimization objective of the operation sequencing problem is set as minimizing processing time. Each task in each job has its own start and end times, and the processing time is defined as the end time of the last task in the last completed job. Next, the constraints for the operation sequencing problem are set as task sequence constraints and operation non-overlapping constraints. Among them, the multiple tasks contained in each job need to be performed sequentially, and the start time of the subsequent task is no earlier than the end time of the preceding task; the multiple operations contained in each machine cannot overlap, and the processing time periods of different operations on the same machine cannot overlap. Then, the operation sequencing problem of flexible job shop scheduling is expressed as a mixed-integer linear programming problem for solution. The problem conditions are a known set of processing costs, D, and a set of assigned operations, O. Elements in D are floating-point numbers representing the processing cost required to process a specific task in a specific job using a specific machine. Elements in O are the assigned operations, representing the allocation relationship between tasks and machines within a job. The decision variables are an unknown set of task start times, OS, and task end times, OE. Elements in OS are floating-point numbers representing the start time of a specific task in a specific job, and elements in OE are floating-point numbers representing the end time of a specific task in a specific job. The constraints are: given that processing machines have been assigned to tasks in each job, the difference between the task's end time and start time equals the processing cost of that operation; since different tasks in each job are performed sequentially, the start time of a subsequent task in the same job is greater than or equal to the end time of a preceding task; the operations contained in each machine do not overlap, and for any two operations on the same machine, there exists exactly one operation whose start time is no earlier than the end time of the other operation. In the optimization objective, the processing time is the maximum end time of all tasks, including all jobs, and the optimization direction is to minimize the objective function. Finally, the mixed-integer linear programming problem corresponding to the operation sorting problem is solved. Based on the task start and end times of each task in each work, the final operation sorting result is obtained. Specifically, for operations on the same machine, those with shorter task start times are executed first.

5. The flexible job shop scheduling method based on lower bound minimization according to claim 1, characterized in that: The method for outputting the flexible workshop scheduling scheme in step (4) is as follows: Combining the obtained machine allocation and operation sorting results, and based on the requirements of flexible shop floor scheduling, the final flexible shop floor scheduling scheme is compiled and output. This final scheme is typically presented as a list or Gantt chart. Elements in the list or Gantt chart may include the work index corresponding to the operation, the task index corresponding to the operation, the machine index corresponding to the operation, the start time of the operation, and the end time of the operation.