A method and system for scheduling a vacuum heat treatment furnace

By establishing a total cost function between task rejection cost and scheduling objective, an efficient algorithm is designed to optimize the scheduling of vacuum heat treatment furnaces. This solves the scientific decision-making problem of vacuum heat treatment furnaces when faced with different processing tasks, realizes the coordinated optimization of task acceptance and rejection, and improves production efficiency and economic benefits.

CN120874368BActive Publication Date: 2026-03-06JINGYE STEEL CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-07-17
Publication Date
2026-03-06

AI Technical Summary

Technical Problem

Existing technologies lack efficient scheduling optimization models and precise algorithms for vacuum heat treatment furnaces that consider both release time and rejection costs. This results in an inability to make scientific decisions regarding task acceptance and rejection when faced with different processing tasks, impacting production efficiency and economic benefits.

Method used

A total cost function relating task rejection cost to scheduling objective is established, and an efficient and accurate algorithm is designed. By combining the linear weighting method and Pareto optimization method with dynamic programming algorithms DP1 and DP2, the maximum completion time and rejection cost are optimized, and the Pareto front is generated, providing a scheduling method and system for vacuum heat treatment furnaces.

Benefits of technology

It achieves coordinated optimization of task rejection and production scheduling, improves the production efficiency of vacuum heat treatment furnace, ensures coordinated optimization of scheduling and rejection targets, and enhances production efficiency and economic benefits.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120874368B_ABST
    Figure CN120874368B_ABST
Patent Text Reader

Abstract

This application provides a scheduling method and system for vacuum heat treatment furnaces, belonging to the field of intelligent manufacturing and production scheduling optimization. The method involves: establishing a mathematical model of a hybrid batch scheduling problem for vacuum heat treatment furnaces, where tasks have release times and rejection costs, including mathematical models of linear weighting and Pareto optimization; determining whether the bi-objective problem involving maximum completion time and rejection cost has been transformed into a single-objective problem; if so, using the linear weighting method; otherwise, using the Pareto optimization method; linearly weighting the maximum completion time and rejection cost into a single-objective function, solving it using dynamic programming algorithm DP1; optimizing the bi-objective of maximum completion time and rejection cost using the ε-constraint method, solving it using dynamic programming algorithm DP2, and generating the Pareto front. This invention achieves coordinated optimization of task rejection and production scheduling, improving the production efficiency of vacuum heat treatment furnaces.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to a method and system for scheduling a vacuum heat treatment furnace, belonging to the field of intelligent manufacturing and production scheduling optimization. Background Technology

[0002] Vacuum heat treatment is a novel green and energy-saving technology that integrates vacuum technology with heat treatment technology. It is widely used in the manufacturing processes of molds, bearings, and tightly coupled components in fields such as aerospace, high-speed rail, wind power, and nuclear power. Parts treated with vacuum heat treatment exhibit high performance and long service life. However, due to their high purchase cost, long installation period, high energy consumption, and high maintenance cost, vacuum heat treatment furnaces are limited in number, becoming bottleneck machines in production lines and restricting production efficiency. The processing time of a vacuum heat treatment furnace is related not only to the processing time of the largest part in the furnace but also to the sum of the processing times of all parts.

[0003] When faced with production anomalies such as machine malfunctions or urgent order insertions, rescheduling is generally used to quickly restore production. However, if the production anomaly exceeds a certain threshold, rescheduling will not be able to restore production. Since production anomalies lead to wasted capacity, some tasks can be rejected to ensure timely delivery of incoming tasks. Regarding machine maintenance, when machines require maintenance or malfunction, some orders can be rejected to ensure timely delivery of important orders and reduce production losses. Regarding task maintenance, when customers initiate order changes or insert urgent orders, some orders can be rejected to maximize production profits. By rejecting orders, the matching relationship between orders and resources can be adjusted, reducing production line congestion, increasing scheduling flexibility, improving customer satisfaction, preventing over-allocation or waste of resources, and achieving smooth production operation and maximizing production profits.

[0004] In existing technologies, there is a lack of optimized scheduling models and precise algorithms for vacuum heat treatment furnaces that consider both release time and rejection costs. When faced with different processing tasks, decisions are generally made based on the experience of workshop workers, lacking a scientific basis for production control. Multiple customers simultaneously place tasks with workshops possessing vacuum heat treatment furnaces; different tasks have different processing times and rejection costs. The technical problem this invention addresses is how to establish accurate mathematical models and design efficient algorithms to assist producers in deciding which tasks can be rejected and which can be accepted and processed, thereby optimizing the economic benefits of the vacuum heat treatment workshop. Summary of the Invention

[0005] The purpose of this invention is to take a hybrid batch processing machine as the research object, consider the practical production problem of task rejection cost, establish a total cost function of task rejection cost and scheduling objective, design an efficient and accurate algorithm, balance rejection cost and scheduling objective, obtain a set of rejected tasks and a scheduling scheme, and provide a scheduling method and system for vacuum heat treatment furnaces.

[0006] In a first aspect, the present invention provides a method for scheduling a vacuum heat treatment furnace, comprising the following steps:

[0007] S1. Establish a mathematical model for the scheduling problem of mixed batch processing of vacuum heat treatment furnaces with release time and rejection cost, including a mathematical model of the linear weighted method and a mathematical model of the Pareto optimization method;

[0008] S2. Determine whether the bi-objective problem involving maximum completion time and rejection cost has been transformed into a single-objective problem. If yes, use the linear weighted method and proceed to step S3. If no, use the Pareto optimization method and proceed to step S4.

[0009] S3. The maximum completion time and rejection cost are linearly weighted into a single objective function, which is then solved using the dynamic programming algorithm DP1. The performance of the dynamic programming algorithm DP1 is then analyzed.

[0010] S4. Optimize the dual objectives of maximum completion time and rejection cost using the ε-constraint method, solve them using the dynamic programming algorithm DP2, generate the Pareto front, and perform performance analysis on the dynamic programming algorithm DP2.

[0011] Furthermore, the specific steps of step S1 are as follows:

[0012] S11. Uses a single hybrid batch processing machine with unlimited batch capacity;

[0013] S12. Define the task set as... Hybrid batch processing combines the characteristics of parallel batch processing and serial batch processing, calculating batch processing time using weighted coefficients, and processing any batch... B i The expression for processing time is:

[0014]

[0015] Where n is the number of tasks. These are the weighting coefficients. , J j For the j-th task, For the j-th task J j Processing time;

[0016] S13. Construct a single objective function by linearly superimposing the maximum completion time and the rejection cost: Model 1, which uses the linear weighting method, is as follows:

[0017]

[0018] For the two independent objectives of maximum completion time and rejection cost, the Pareto optimal solution is obtained using Model 2, which employs the Pareto optimization method:

[0019]

[0020] Where 1 represents a single processor, For mixed batch processing, This indicates that the batch size is unbounded, where b is the batch size and n is the total number of tasks. Release time for the task. To allow for task rejection, To maximize the completion time, To reject the total cost.

[0021] Furthermore, the specific steps of step S3 are as follows:

[0022] S31. For Model 1, all tasks are numbered in non-increasing order of processing time, and the numbers are: ,in, , , ..., The processing time for the task;

[0023] S32. Define the optimal values ​​for task acceptance and rejection, define... Indicates task The optimal value when received is defined. Indicates task The optimal value when rejected, where, Associate with the task that took the longest to process in the last batch. For including tasks The last batch processing time The task with the smallest winning number in the last batch, i.e., the task with the longest processing time. For the set of tasks The rejection cost of rejecting a task;

[0024] S33. According to the task and tasks Four combinations of acceptance or rejection scenarios are identified, and different state transition logics are determined for each of these four scenarios. These four scenarios include:

[0025] Scenario 1, Task and tasks They were all rejected;

[0026] Scenario 2, Task Received, task Rejected;

[0027] Scenario 3, Task Rejected, task Received;

[0028] Scenario 4, Task and tasks All were received;

[0029] S34. Set the initial boundary of the dynamic programming state, construct the recursive transition function, and solve for the optimal value of the single objective function;

[0030] S35. For the recursive transfer functions defined in steps S33 and S34, at most there are There are several states. The calculation of a single state involves traversing the possible values ​​of its preceding states, with a maximum of [number missing]. For the model employing the linear weighting method, the time complexity of the dynamic programming algorithm DP1 is as follows: (The rest of the text appears to be a series of comparisons and operations.)

[0031]

[0032] in, Let be the time complexity symbol, and n be the total number of tasks. This represents the total processing time for all tasks. This represents the total rejection cost for all tasks.

[0033] Furthermore, in step S33:

[0034] Scenario 1, Task and tasks They were all rejected;

[0035] For the task No processing task and tasks Cumulative tasks Rejection Cost To reach the total rejection cost, the state transition function is:

[0036]

[0037] Scenario 2, Task Received, task Rejected;

[0038] For the task Processing tasks No processing task Cumulative tasks Rejection Cost To reach the total rejection cost, the state transition function is:

[0039]

[0040] Scenario 3, Task Rejected, task Received;

[0041] If k=j, then the task For the task with the longest processing time in the new batch, compare the tasks. Maximum completion time and task Task release time To determine the start time of the new batch, the state transition function is:

[0042]

[0043] in, Associate the task with the longest processing time in the new batch. This refers to the batch processing time for the new batch;

[0044] If k < j, then the task Join the mission In the last batch, and the processing time Compare the maximum completion time of all tasks except the last batch with the task's completion time. arrival time The relative size of the task After being added to the last batch, its contribution to the batch processing time of the last batch is... The state transition function is:

[0045]

[0046] Scenario 4, Task and tasks All were received;

[0047] If k=j, then the task For the task with the longest processing time in the new batch, compare the tasks. Maximum completion time and task Task release time To determine the start time of the new batch, the state transition function is:

[0048]

[0049] If k < j, similar to case 3, the state transition function is:

[0050] .

[0051] Furthermore, the specific steps of step S34 are as follows:

[0052] S341. Define the initial boundary of the dynamic programming state, and specify the accept or reject state when the number of tasks j=1. When processing the first task and the task is accepted, if the longest task in the last batch has a label k=1, the batch processing time is... Total rejection cost E If the value is 0, then the initial value of the receiving state is:

[0053]

[0054] in, For the task Release time, For the task Processing time;

[0055] When processing the first task and that task is rejected, if the longest task in the last batch has a label k=0, the batch processing time is... Total rejection cost For any condition that does not satisfy k=0 or does not satisfy In this case, the rejection state has no practical meaning and is defined as infinity:

[0056]

[0057] S342. If the task If rejected, the recursive transfer function is:

[0058]

[0059] If task The function that receives the data and then performs the recursive transfer is:

[0060] If k=j,

[0061]

[0062] If k < j,

[0063]

[0064] S343. The optimal value of the single objective function is:

[0065] .

[0066] Furthermore, the specific steps of step S4 are as follows:

[0067] S41. For Model 2, the maximum completion time of the processor is expressed as:

[0068]

[0069] Where s is the task The task is in a state of accept or reject when s=1. Received when s=0, task If rejected, 'a' represents the number of the first j tasks that were subsequently accepted. Associate with the task that took the longest to process in the last batch. For including tasks The last batch processing time The task with the smallest winning number in the last batch, i.e., the task with the longest processing time. For the set of tasks The rejection cost of rejecting a task;

[0070] S42. Let the vector This indicates the maximum completion time is The most important order is when, let Representing different vectors A set;

[0071] S43. Set the initial boundaries of the dynamic programming state. When processing the first task, if the task... Received, s=1, number of received tasks a=1, longest task number in the last batch k=1, batch processing time Refuse cost and Then the state transition function value is:

[0072]

[0073] in, For the task Release time, For the task Processing time;

[0074] For other unsatisfactory tasks If the data is received but the state parameters do not match, the state has no practical meaning and is defined as infinity.

[0075]

[0076] Construct an initial vector set , containing the vector corresponding to the state transition function value:

[0077]

[0078] S44. According to the task and tasks For each of the four possible combinations of acceptance or rejection, determine the corresponding state transition logic and update the vector set. The four situations include:

[0079] Scenario 1, Task and tasks They were all rejected;

[0080] Scenario 2, Task Received, task Rejected;

[0081] Scenario 3, Task Rejected, task Received;

[0082] Scenario 4, Task and tasks All were received;

[0083] S45. Cost of Any Total Rejection Define the minimum value of the maximum completion time as g(·), and construct the recursive transfer function:

[0084]

[0085] set up satisfy ,generate All schemes and Pareto frontiers;

[0086] in, This is an upper limit on the rejection cost, used to constrain the rejection cost. E The maximum value, , , Let g(·) be the rejection cost value. The cost of rejection is The minimum of the maximum completion time;

[0087] S46. For the recursive transfer functions defined in steps S44 and S45, at most there are There are several states. The calculation of a single state involves traversing the possible values ​​of its preceding states, with a maximum of [number missing]. For the model employing the linear weighting method, the time complexity of the dynamic programming algorithm DP2 is as follows: (The remaining text appears to be incomplete and contains several errors. A more accurate translation would require the full context.)

[0088]

[0089] in, Let be the time complexity symbol, and n be the total number of tasks. This represents the total processing time for all tasks. This represents the total rejection cost for all tasks.

[0090] Furthermore, in step S44:

[0091] Scenario 1, Task and tasks They were all rejected;

[0092] The receiving status of the first j tasks is s=0, and the number of receiving tasks is... Refuse cost and The state transition function is:

[0093]

[0094] Scenario 2, Task Received, task Rejected;

[0095] The receiving status of the first j tasks is s=0, and the number of receiving tasks is... Refuse cost and The state transition function is:

[0096]

[0097] Scenario 3, Task Rejected, task Received;

[0098] The receiving state of the first j tasks is s=1, and the number of receiving tasks is... Refuse cost and ;

[0099] When the task When the task with the longest processing time in the new batch is selected, the state transition function is:

[0100]

[0101] in, Associate the task with the longest processing time in the new batch. This refers to the batch processing time for the new batch;

[0102] When the task To join the mission When it is in the last batch, its contribution to the batch processing time of the last batch is... The state transition function is:

[0103]

[0104] Scenario 4, Task and tasks All were received;

[0105] The receiving state of the first j tasks is s=1, and the number of receiving tasks is... Refuse cost and ;

[0106] When the task When the task with the longest processing time in the new batch is selected, the state transition function is:

[0107]

[0108] in, Associate the task with the longest processing time in the new batch. This refers to the batch processing time for the new batch;

[0109] When the task To join the mission When it is in the last batch, its contribution to the batch processing time of the last batch is... The state transition function is:

[0110] .

[0111] Secondly, embodiments of the present invention also provide a vacuum heat treatment furnace scheduling system, comprising:

[0112] The mathematical model building module is used to establish mathematical models for the hybrid batch scheduling problem of vacuum heat treatment furnaces, where tasks have release times and rejection costs. This includes mathematical models of linear weighted methods and Pareto optimization methods.

[0113] The problem type determination module is used to determine whether a bi-objective problem containing maximum completion time and rejection cost has been transformed into a single-objective problem. If so, a linear weighted method is used; otherwise, a Pareto optimization method is used.

[0114] The linear weighted solution and analysis module is used to linearly weight the maximum completion time and rejection cost into a single objective function, solve it using the dynamic programming algorithm DP1, and perform performance analysis on the dynamic programming algorithm DP1.

[0115] The Pareto optimization solution and analysis module is used to optimize the dual objectives of maximum completion time and rejection cost using the ε-constraint method, solve the problem using the dynamic programming algorithm DP2, generate the Pareto front, and perform performance analysis on the dynamic programming algorithm DP2.

[0116] Furthermore, the linear weighted solution and analysis module also includes a linear weighted solution unit, used to set the initial boundary of the dynamic programming state, construct the recursive transition function, and solve for the optimal value of the single objective function;

[0117] Furthermore, the Pareto optimization solution and analysis module also includes a Pareto optimization solution unit, used to set the initial boundary of the dynamic programming state, construct the recursive transition function, and solve for the optimal value of the bi-objective function;

[0118] As can be seen from the above technical solutions, the present invention has the following advantages:

[0119] By establishing a mathematical model for scheduling vacuum heat treatment furnaces with release time and rejection costs for tasks, and designing a precise dynamic programming algorithm, the problem of whether to accept or reject tasks when they arrive is effectively solved. This achieves coordinated optimization of task rejection and production scheduling, thereby improving the production efficiency of vacuum heat treatment furnaces.

[0120] By linearly weighting the scheduling target and the total rejection cost, and by establishing a mathematical model, a dynamic programming exact algorithm is designed to achieve the coordinated optimization of the scheduling target and the rejection target.

[0121] By employing the ε-constraint method, one objective is set to not exceed a certain value while optimizing the other objective. The value is continuously adjusted, and a dynamic programming exact algorithm is designed to obtain the Pareto front, thus achieving dual-objective collaborative optimization. Attached Figure Description

[0122] To more clearly illustrate the technical solution of the present invention, the accompanying drawings used in the description will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0123] Figure 1 This is a schematic diagram of the vacuum heat treatment furnace scheduling method of this application.

[0124] Figure 2 This is a schematic diagram of the vacuum heat treatment furnace scheduling system of this application. Detailed Implementation

[0125] The various embodiments of the invention will be described more fully in the detailed steps of the vacuum heat treatment furnace scheduling method described below. The invention may have various embodiments, and adjustments and changes may be made therein. However, it should be understood that there is no intention to limit the various embodiments of the invention to the specific embodiments disclosed herein, but rather the invention should be understood to cover all adjustments, equivalents, and / or alternatives falling within the spirit and scope of the various embodiments of the invention.

[0126] To make the objectives, features, and advantages of this invention more apparent and understandable, specific embodiments and accompanying drawings will be used to clearly and completely describe the technical solutions protected by this invention. Obviously, the embodiments described below are only a part of the embodiments of this invention, and not all of them. Based on the embodiments in this patent, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this patent.

[0127] Please see Figure 1 The diagram shows a flowchart of a vacuum heat treatment furnace scheduling method in a specific embodiment. The method includes:

[0128] S1. Establish a mathematical model for the scheduling problem of mixed batch processing of vacuum heat treatment furnaces with release time and rejection cost, including a mathematical model of the linear weighted method and a mathematical model of the Pareto optimization method;

[0129] It should be noted that by constructing a dual mathematical model of linear weighting and Pareto optimization, we can adapt to single / dual objective scheduling requirements. Linear weighting enables fast solution of single objective, while Pareto optimization accurately characterizes the trade-offs of multiple objectives, providing a comprehensive and flexible theoretical analysis framework for vacuum heat treatment furnace scheduling and supporting efficient decision-making.

[0130] S2. Determine whether the bi-objective problem involving maximum completion time and rejection cost has been transformed into a single-objective problem. If yes, use the linear weighted method and proceed to step S3. If no, use the Pareto optimization method and proceed to step S4.

[0131] It should be noted that by flexibly determining the transformation direction of the dual-objective problem, linear weighted or Pareto optimization methods can be selected in a targeted manner to adapt to different scheduling needs, avoid misuse of methods, ensure solution efficiency and result accuracy, and improve the adaptability of scheduling schemes.

[0132] S3. The maximum completion time and rejection cost are linearly weighted into a single objective function, which is then solved using the dynamic programming algorithm DP1. The performance of the dynamic programming algorithm DP1 is then analyzed.

[0133] It should be noted that constructing a single objective function by linearly weighting the maximum completion time and rejection cost, and solving it with the dynamic programming algorithm DP1, can effectively integrate multiple objectives into a single optimization direction, reduce problem complexity, and clarify its time complexity and other characteristics through performance analysis of DP1, ensuring the efficiency and reliability of the algorithm, and providing an efficient and stable solution for vacuum heat treatment furnace scheduling.

[0134] S4. Optimize the dual objectives of maximum completion time and rejection cost using the ε-constraint method, solve the problem using the dynamic programming algorithm DP2, generate the Pareto front, and perform performance analysis on the dynamic programming algorithm DP2.

[0135] It should be noted that by using the ε-constraint method and the dynamic programming algorithm DP2, the dual-objective optimization problem of maximum completion time and rejection cost can be effectively handled. By generating the Pareto front, multiple non-dominated solutions are provided to decision-makers, fully demonstrating the trade-offs between objectives. Performance analysis ensures the effectiveness and efficiency of the algorithm, enabling precise scheduling of the vacuum heat treatment furnace that balances efficiency and cost.

[0136] Furthermore, as a refinement and extension of the specific implementation of the above embodiments, in order to fully illustrate the specific implementation process in this embodiment, another vacuum heat treatment furnace scheduling method with release time and rejection cost for the task is provided. This method includes the following steps:

[0137] S1. Establish a mathematical model for the mixed batch processing scheduling problem of vacuum heat treatment furnaces, including mathematical models of the linear weighted method and the Pareto optimization method; the specific steps of step S1 are as follows:

[0138] S11. Uses a single hybrid batch processing machine with unlimited batch capacity;

[0139] S12. Define the task set as... Hybrid batch processing combines the characteristics of parallel batch processing and serial batch processing, calculating batch processing time using weighted coefficients, and processing any batch... B i The expression for processing time is:

[0140]

[0141] Where n is the number of tasks. These are the weighting coefficients. , J j For the j-th task, For the j-th task J j Processing time;

[0142] S13. Construct a single objective function by linearly superimposing the maximum completion time and the rejection cost: Model 1, which uses the linear weighting method, is as follows:

[0143]

[0144] For the two independent objectives of maximum completion time and rejection cost, the Pareto optimal solution is obtained using Model 2, which employs the Pareto optimization method:

[0145]

[0146] Where 1 represents a single processor, For mixed batch processing, This indicates that the batch size is unbounded, where b is the batch size and n is the total number of tasks. Release time for the task. To allow for task rejection, To maximize the completion time, To reject the total cost;

[0147] For example, a mathematical model is constructed for the scheduling problem of a vacuum heat treatment furnace where tasks have release time and rejection costs. The problem description and related model are as follows: a single hybrid batch processor with unbounded batch capacity. The set of tasks to be considered is There are a total of One task; task J j Has arrival time r j Processing time p j and rejection costs e j The scheduling objective is to achieve the maximum completion time. The hybrid batch processing model is a weighted sum of the parallel batch processing model and the serial batch processing model. The processing time of a hybrid batch is the weighted sum of the parallel batch processing and the serial batch processing time, i.e., the batch length. Processing time is The model using the linear weighting method is as follows: The model using the Pareto optimization method is as follows: ;

[0148] S2. Determine whether the bi-objective problem involving maximum completion time and rejection cost has been transformed into a single-objective problem. If yes, use the linear weighted method and proceed to step S3. If no, use the Pareto optimization method and proceed to step S4.

[0149] For example, if an enterprise is currently more focused on rapid delivery and hopes to simplify the scheduling problem into a single-objective optimization, it can transform the maximum completion time and rejection cost into a single objective through evaluation and judgment. Using a linear weighted method, it proceeds to step S3, assigning a higher weight to the maximum completion time and using dynamic programming algorithm DP1 to solve the problem, quickly obtaining a scheduling scheme oriented towards shortening the completion time. If the enterprise needs to comprehensively consider completion time and cost expenditure and does not transform the objective, it can use the Pareto optimization method, proceeding to step S4. Through the ε-constraint method and dynamic programming algorithm DP2, it generates the Pareto front, providing multiple non-dominated solutions that take into account both time and cost, making it easier for the enterprise to make decisions based on actual needs.

[0150] S3. The maximum completion time and rejection cost are linearly weighted into a single objective function, solved using dynamic programming algorithm DP1, and the performance of dynamic programming algorithm DP1 is analyzed. The specific steps of step S3 are as follows:

[0151] S31. For Model 1, all tasks are numbered in non-increasing order of processing time, and the numbers are: ,in, , , ..., The processing time for the task;

[0152] S32. Define the optimal values ​​for task acceptance and rejection, define... Indicates task The optimal value when received is defined. Indicates task The optimal value when rejected, where, Associate with the task that took the longest to process in the last batch. For including tasks The last batch processing time The task with the smallest winning number in the last batch, i.e., the task with the longest processing time. For the set of tasks The rejection cost of rejecting a task;

[0153] S33. According to the task and tasks Four combinations of acceptance or rejection scenarios are identified, and different state transition logics are determined for each of these four scenarios. These four scenarios include:

[0154] Scenario 1, Task and tasks They were all rejected;

[0155] Scenario 2, Task Received, task Rejected;

[0156] Scenario 3, Task Rejected, task Received;

[0157] Scenario 4, Task and tasks All were received;

[0158] In step S33:

[0159] Scenario 1, Task and tasks They were all rejected;

[0160] For the task No processing task and tasks Cumulative tasks Rejection Cost To reach the total rejection cost, the state transition function is:

[0161]

[0162] Scenario 2, Task Received, task Rejected;

[0163] For the task Processing tasks No processing task Cumulative tasks Rejection Cost To reach the total rejection cost, the state transition function is:

[0164]

[0165] Scenario 3, Task Rejected, task Received;

[0166] If k=j, then the task For the task with the longest processing time in the new batch, compare the tasks. Maximum completion time and task Task release time To determine the start time of the new batch, the state transition function is:

[0167]

[0168] in, Associate the task with the longest processing time in the new batch. This refers to the batch processing time for the new batch;

[0169] If k < j, then the task Join the mission In the last batch, and the processing time Compare the maximum completion time of all tasks except the last batch with the task's completion time. arrival time The relative size of the task After being added to the last batch, its contribution to the batch processing time of the last batch is... The state transition function is:

[0170]

[0171] Scenario 4, Task and tasks All were received;

[0172] If k=j, then the task For the task with the longest processing time in the new batch, compare the tasks. Maximum completion time and task Task release time To determine the start time of the new batch, the state transition function is:

[0173]

[0174] If k < j, similar to case 3, the state transition function is:

[0175] ;

[0176] S34. Set the initial boundary of the dynamic programming state, construct the recursive transition function, and solve for the optimal value of the single objective function; the specific steps of step S34 are as follows:

[0177] S341. Define the initial boundary of the dynamic programming state, and specify the accept or reject state when the number of tasks j=1. When processing the first task and the task is accepted, if the longest task in the last batch has a label k=1, the batch processing time is... Total rejection cost E If the value is 0, then the initial value of the receiving state is:

[0178]

[0179] in, For the task Release time, For the task Processing time;

[0180] When processing the first task and that task is rejected, if the longest task in the last batch has a label k=0, the batch processing time is... Total rejection cost For any condition that does not satisfy k=0 or does not satisfy In this case, the rejection state has no practical meaning and is defined as infinity:

[0181]

[0182] S342. If the task If rejected, the recursive transfer function is:

[0183]

[0184] If task The function that receives the data and then performs the recursive transfer is:

[0185] If k=j,

[0186]

[0187] If k < j,

[0188]

[0189] S343. The optimal value of the single objective function is:

[0190] ;

[0191] S35. For the recursive transfer functions defined in steps S33 and S34, at most there are There are several states. The calculation of a single state involves traversing the possible values ​​of its preceding states, with a maximum of [number missing]. For the model employing the linear weighting method, the time complexity of the dynamic programming algorithm DP1 is as follows: (The rest of the text appears to be a series of comparisons and operations.)

[0192]

[0193] in, Let be the time complexity symbol, and n be the total number of tasks. This represents the total processing time for all tasks. The sum of rejection costs for all tasks;

[0194] For example, a single vacuum heat treatment furnace, a collection of workpieces Batch processing capacity Weighting coefficient The goal is to achieve single-objective optimization. The relevant parameters of the workpiece are shown in Table 1.

[0195] Table 1. Workpiece Relevant Parameters

[0196]

[0197] Using a linear weighted method, the dynamic programming algorithm DP1 is called. If the workpiece... If a new batch is received and opened, then If the workpiece If rejected, then If the workpiece If rejected, then =7; if the workpiece If a new batch is received and opened, then If the workpiece Received, and with the workpiece If they are grouped together, then If the workpiece If rejected, then =15; if the workpiece If a new batch is received and opened, then If the workpiece Received, and with the workpiece If they are grouped together, then =12; if the workpiece and If they are grouped into a separate batch, then If the workpiece , and If they are grouped together, then Therefore, the workpiece Receive and group into a separate batch. In summary, there are two final solutions. Solution 1: Workpiece and Received, and each batch is processed; Option 2: Workpieces , and All received. Form a batch, and They are grouped together, and the overall objective function is 11 for all of them.

[0198] S4. Optimize the dual objectives of maximum completion time and rejection cost using the ε-constraint method, solve using dynamic programming algorithm DP2, generate the Pareto front, and perform performance analysis on the dynamic programming algorithm DP2; the specific steps of step S4 are as follows:

[0199] S41. For Model 2, the maximum completion time of the processor is expressed as:

[0200]

[0201] Where s is the task The task is in a state of accept or reject when s=1. Received when s=0, task If rejected, 'a' represents the number of the first j tasks that were subsequently accepted. Associate with the task that took the longest to process in the last batch. For including tasks The last batch processing time The task with the smallest winning number in the last batch, i.e., the task with the longest processing time. For the set of tasks The rejection cost of rejecting a task;

[0202] S42. Let the vector This indicates the maximum completion time is The most important order is when, let Representing different vectors A set;

[0203] S43. Set the initial boundaries of the dynamic programming state. When processing the first task, if the task... Received, s=1, number of received tasks a=1, longest task number in the last batch k=1, batch processing time Refuse cost and Then the state transition function value is:

[0204]

[0205] in, For the task Release time, For the task Processing time;

[0206] For other unsatisfactory tasks If the data is received but the state parameters do not match, the state has no practical meaning and is defined as infinity.

[0207]

[0208] Construct an initial vector set , containing the vector corresponding to the state transition function value:

[0209]

[0210] S44. According to the task and tasks For each of the four possible combinations of acceptance or rejection, determine the corresponding state transition logic and update the vector set. The four situations include:

[0211] Scenario 1, Task and tasks They were all rejected;

[0212] Scenario 2, Task Received, task Rejected;

[0213] Scenario 3, Task Rejected, task Received;

[0214] Scenario 4, Task and tasks All were received;

[0215] In step S44:

[0216] Scenario 1, Task and tasks They were all rejected;

[0217] The receiving status of the first j tasks is s=0, and the number of receiving tasks is... Refuse cost and The state transition function is:

[0218]

[0219] Scenario 2, Task Received, task Rejected;

[0220] The receiving status of the first j tasks is s=0, and the number of receiving tasks is... Refuse cost and The state transition function is:

[0221]

[0222] Scenario 3, Task Rejected, task Received;

[0223] The receiving state of the first j tasks is s=1, and the number of receiving tasks is... Refuse cost and ;

[0224] When the task When the task with the longest processing time in the new batch is selected, the state transition function is:

[0225]

[0226] in, Associate the task with the longest processing time in the new batch. This refers to the batch processing time for the new batch;

[0227] When the task To join the mission When it is in the last batch, its contribution to the batch processing time of the last batch is... The state transition function is:

[0228]

[0229] Scenario 4, Task and tasks All were received;

[0230] The receiving state of the first j tasks is s=1, and the number of receiving tasks is... Refuse cost and ;

[0231] When the task When the task with the longest processing time in the new batch is selected, the state transition function is:

[0232]

[0233] in, Associate the task with the longest processing time in the new batch. This refers to the batch processing time for the new batch;

[0234] When the task To join the mission When it is in the last batch, its contribution to the batch processing time of the last batch is... The state transition function is:

[0235] ;

[0236] S45. Cost of Any Total Rejection Define the minimum value of the maximum completion time as g(·), and construct the recursive transfer function:

[0237]

[0238] set up satisfy ,generate All schemes and Pareto frontiers;

[0239] in, This is an upper limit on the rejection cost, used to constrain the rejection cost. E The maximum value, , , Let g(·) be the rejection cost value. The cost of rejection is The minimum of the maximum completion time;

[0240] S46. For the recursive transfer functions defined in steps S44 and S45, at most there are There are several states. The calculation of a single state involves traversing the possible values ​​of its preceding states, with a maximum of [number missing]. For the model employing the linear weighting method, the time complexity of the dynamic programming algorithm DP2 is as follows: (The remaining text appears to be incomplete and contains several errors. A more accurate translation would require the full context.)

[0241]

[0242] in, Let be the time complexity symbol, and n be the total number of tasks. This represents the total processing time for all tasks. The sum of rejection costs for all tasks;

[0243] For example, for a single vacuum heat treatment furnace, the workpiece set Batch processing capacity Weighting coefficient The goal is to achieve dual-objective optimization. The relevant parameters of the workpiece are shown in Table 2.

[0244] Table 2 Workpiece Relevant Parameters

[0245]

[0246] Using the Pareto optimization method, the dynamic programming algorithm DP2 is called. If the workpiece... If received, then If the workpiece If accepted and a new batch is opened, then If the workpiece Received, and with the workpiece If they are grouped together, then If the workpiece If rejected, then If the workpiece If rejected, then ; workpiece Received ;like Rejected ;

[0247] In summary, there are three final solutions. Solution 1: Workpiece Received, workpiece Furthermore, a new batch is being opened, with a maximum completion time of 9 days and a rejection cost of 0; Option 2: Workpiece Received Rejected, maximum completion time 5, rejection cost 2; Option 3: Workpiece Rejected Accepted, maximum completion time 6, rejection cost 6.

[0248] It should be understood that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.

[0249] like Figure 2 As shown, the following are embodiments of the vacuum heat treatment furnace scheduling system provided by the present invention. This system and the vacuum heat treatment furnace scheduling methods of the above embodiments belong to the same inventive concept. For details not described in detail in the embodiments of the vacuum heat treatment furnace scheduling system, please refer to the embodiments of the above vacuum heat treatment furnace scheduling methods.

[0250] The system includes:

[0251] The mathematical model building module is used to establish mathematical models for the hybrid batch scheduling problem of vacuum heat treatment furnaces, where tasks have release times and rejection costs. This includes mathematical models of linear weighted methods and Pareto optimization methods.

[0252] The problem type determination module is used to determine whether a bi-objective problem containing maximum completion time and rejection cost has been transformed into a single-objective problem. If so, a linear weighted method is used; otherwise, a Pareto optimization method is used.

[0253] The linear weighted solution and analysis module is used to linearly weight the maximum completion time and rejection cost into a single objective function, solve it using the dynamic programming algorithm DP1, and perform performance analysis on the dynamic programming algorithm DP1.

[0254] The Pareto optimization solution and analysis module is used to optimize the dual objectives of maximum completion time and rejection cost using the ε-constraint method, solve the problem using the dynamic programming algorithm DP2, generate the Pareto front, and perform performance analysis on the dynamic programming algorithm DP2.

[0255] The linear weighted solution and analysis module also includes a linear weighted solution unit, which is used to set the initial boundary of the dynamic programming state, construct the recursive transition function, and solve for the optimal value of the single objective function;

[0256] The Pareto optimization solution and analysis module also includes a Pareto optimization solution unit, which is used to set the initial boundary of the dynamic programming state, construct the recursive transition function, and solve for the optimal value of the bi-objective function.

[0257] This embodiment achieves mixed batch processing scheduling of vacuum heat treatment furnaces through the interactive collaboration of mathematical model construction module, problem type judgment module, linear weighted solution and analysis module, and Pareto optimization solution and analysis module.

[0258] The above description of the disclosed embodiments enables those skilled in the art to make or use the invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the invention. Therefore, the invention is not to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A method of scheduling a vacuum heat treatment furnace, characterized by, The method comprises the following steps: S1. establishing a mathematical model of a mixed batch processing scheduling problem of a vacuum heat treatment furnace task with release time and rejection cost, including a mathematical model of a linear weighting method and a mathematical model of a Pareto optimization method; the specific steps of step S1 are: S11. using a single mixed batch processor, setting the batch capacity as unbounded; S12. Define the task set as , mixed batch processing combines the characteristics of parallel batch processing and serial batch processing, and calculates the batch processing time by weighting with a weight coefficient. For any batch B i , the expression of processing time is: wherein n is the number of tasks, is a weight coefficient, , J j is the jth task, is the jth task J j processing time of the jth task; S13. Linearly superimpose the maximum completion time and the rejection cost to build a single-objective function: The model 1 using the linear weighting method is: For two independent objectives of maximum completion time and rejection cost, solving the Pareto optimality, using the model 2 of the Pareto optimization method is: where 1 denotes single processor, for mixed batch processing, denotes that the batch size is unbounded, b is the batch size, and n is the total number of tasks, for task release time, for allowing task rejection, for maximum makespan, for total rejection cost; S2. determining whether a double-target problem containing maximum completion time and rejection cost is converted into a single-target problem, if yes, using a linear weighting method, entering step S3, if not, using a Pareto optimization method, entering step S4; S3. linearly weighting the maximum completion time and the rejection cost into a single-target function, solving by using a dynamic programming algorithm DP1, and performing performance analysis on the dynamic programming algorithm DP1; S4. optimizing the double-target of the maximum completion time and the rejection cost by using an epsilon constraint method, solving by using a dynamic programming algorithm DP2, generating a Pareto frontier, and performing performance analysis on the dynamic programming algorithm DP2.

2. The vacuum heat treatment furnace scheduling method according to claim 1, characterized by, The specific steps of step S3 are: S31. For the model 1, label all tasks in non-increasing order of processing time, with label where, , , is the processing time of task. S32. defining the optimal value of task acceptance and rejection, defining representing the optimal value of a task when accepted, defining representing the optimal value of a task when rejected, wherein associating the last batch of tasks with the longest batch processing time, the last batch of tasks the last batch of tasks the last batch of tasks the last batch of tasks the last batch of tasks the last batch of tasks the last batch of tasks S33. The method of task and task four combinations of being received or rejected respectively, determining different state transition logics corresponding to the four combinations, the four combinations comprising: Case 1, task and task are both rejected; Case 2, task received, task rejected; Case 3, task rejected, task received; Scenario 4, Task and Task are received; S34. setting an initial boundary of a dynamic programming state, constructing a recursive transfer function, and solving an optimal value of a single-target function; S35. For the recursive transfer function defined in step S33 and step S34, there are at most states, and the calculation of a single state traverses the possible values of the preceding states, at most comparisons and operations, and for the model using the linear weighting method, the time complexity of the dynamic programming algorithm DP1 is: wherein, is the time complexity symbol, n is the total number of tasks, is the total processing time of all tasks, is the total rejection cost of all tasks.

3. The vacuum heat treatment furnace scheduling method according to claim 2, characterized by, In step S33: Case 1, task and task are both rejected; For task , no work is done and the task is rejected. For task , the rejection cost is added to the total rejection cost and the state transition function is: Case 2, task received, task rejected; For the task , the processing task , the non-processing task , the cumulative task , the rejection cost to the total rejection cost, the state transition function is: Case 3, task rejected, task received; If k=j, then the task For the task with the longest processing time in the new batch, compare the tasks. Maximum completion time and task Task release time To determine the start time of the new batch, the state transition function is: wherein, associating the longest task of the new batch processing time, a batch processing time for the new batch; If k < j, then the task Join the mission In the last batch, and the processing time Compare the maximum completion time of all tasks except the last batch with the task's completion time. arrival time The relative size of the task After being added to the last batch, its contribution to the batch processing time of the last batch is... The state transition function is: Scenario 4, Task and Task are received; If k=j, then the task For the task with the longest processing time in the new batch, compare the tasks. Maximum completion time and task Task release time To determine the start time of the new batch, the state transition function is: If k < j, the state transfer function is similar to the case 3: 。 4. The vacuum heat treatment furnace scheduling method according to claim 2, characterized by, The specific steps of step S34 are: S341. Define initial boundary of dynamic programming state, explicitly the accept or reject state for task number j = 1, when processing the first task and the task is accepted, if the last batch of longest task label k = 1, batch processing time , total reject cost E is 0, then the initial value of accept state is: wherein, the release time, of the task, the processing time, of the task; When the first task is processed and the task is rejected, if the last batch of the longest task label k = 0, the batch processing time , total rejection cost , for any case that does not satisfy k = 0 or does not satisfy , the rejection state has no practical significance, and is defined as infinity: S342. If the task is rejected, the recursive transfer function is: If the task is received, the recursive transfer function is: If k = j, If k < j, S343. the optimal value of the single-target function is: 。 5. The vacuum thermal processing furnace scheduling method of claim 1, wherein, The specific steps of step S4 are: S41. for the model 2, the maximum completion time of the processor is represented as: where s is the task status of receiving or rejecting, when s = 1, the task is received, when s = 0, the task is rejected, a is the number of tasks in the first j tasks that are received, the last batch of tasks with the longest batch processing time, the last batch of tasks , the batch processing time of the last batch of tasks , the task with the smallest task number in the last batch, i.e. the task with the longest processing time, the rejection cost of the rejected task in the task set ; S42. Let vector represent the earliest finish time for the most critical task, let represent the set of different vectors ; S43. Set the initial boundaries of the dynamic programming state. When processing the first task, if the task... Received, s=1, number of received tasks a=1, longest task number in the last batch k=1, batch processing time Refuse cost and Then the state transition function value is: wherein, the release time of the task , the processing time of the task ; Not satisfied with the task In case of other received and state parameters do not match, the state has no practical significance, defined as infinity: constructing an initial vector set containing vectors corresponding to the state transition function values: S44. According to the task and the task are received or rejected respectively, determine different state transition logics corresponding to the four situations, update the vector set , the four situations include: Case 1, task and task are both rejected; Case 2, task received, task rejected; Case 3, task rejected, task received; Scenario 4, Task and the task are received; S45. For any total rejection cost , define the minimum value of the maximum completion time as g(·), and construct the recursive transition function: Setting satisfies , generating all solutions and the pareto front; wherein is an upper bound value for the rejection cost E , , , is the rejection cost value for g(·), is the minimum value of the maximum completion time when the rejection cost is . S46. For the recursive transfer function defined in step S44 and step S45, there are at most states, and the calculation of a single state traverses the possible values of the preceding states, at most comparisons and operations, and for the model using the linear weighting method, the time complexity of the dynamic programming algorithm DP2 is: wherein, is the time complexity symbol, n is the total number of tasks, is the total processing time of all tasks, is the total rejection cost of all tasks.

6. The vacuum heat treatment furnace scheduling method according to claim 5, wherein, In step S44: Case 1, task and task are both rejected; s = 0, number of received tasks , rejection cost and , state transition function is: Case 2, task received, task rejected; s = 0, number of received tasks , rejection cost and , state transition function is: Case 3, task rejected, task received; s = 1, number of received tasks , rejection cost and ; When the task For the longest processing time in the new batch of tasks, the state transition function is: wherein, associating the longest task of the new batch processing time, a batch processing time for the new batch; When the task For joining the task The contribution value of the last batch to the batch processing time is The state transition function is: Scenario 4, Task and Task are received; s = 1, number of received tasks , rejection cost and ; When the task For the longest processing time in the new batch of tasks, the state transition function is: wherein, associating the longest task of the new batch processing time, a batch processing time for the new batch; When the task For joining the task The contribution value of the last batch to the batch processing time is The state transition function is: 。 7. A vacuum heat treatment furnace scheduling system characterized by, Including: The mathematical model construction module is used for establishing a mathematical model of a mixed batch processing scheduling problem of a vacuum heat treatment furnace task with release time and rejection cost, including a mathematical model of a linear weighting method and a mathematical model of a Pareto optimization method; Including: Using a single mixed batch processor, setting the batch capacity as unbounded; The task set is defined as , the hybrid batch process combines the characteristics of parallel batch and serial batch, and the batch processing time is calculated by weighting coefficient. For any batch B i , the expression of processing time is: wherein n is the number of tasks, is a weight coefficient, , J j is the processing time of the jth task, is the processing time of the jth task J j is the processing time of the jth task, The maximum completion time is linearly superimposed with the rejection cost to build a single-objective function: The model 1 using the linear weighting method is: For two independent objectives of maximum completion time and rejection cost, solving the Pareto optimality, using the model 2 of the Pareto optimization method is: where 1 denotes single processor, for mixed batch processing, denotes that the batch size is unbounded, b is the batch size, and n is the total number of tasks, for task release time, for allowing task rejection, for maximum completion time, for rejection cost sum; The problem type judgment module is used for determining whether a double-target problem containing maximum completion time and rejection cost is converted into a single-target problem, if yes, using a linear weighting method, if not, using a Pareto optimization method; The linear weighting solving and analyzing module is used for linearly weighting the maximum completion time and the rejection cost into a single-target function, solving by using a dynamic programming algorithm DP1, and performing performance analysis on the dynamic programming algorithm DP1; The Pareto optimization solving and analyzing module is used for optimizing the double-target of the maximum completion time and the rejection cost by using an epsilon constraint method, solving by using a dynamic programming algorithm DP2, generating a Pareto frontier, and performing performance analysis on the dynamic programming algorithm DP2.

8. The vacuum thermal processing furnace scheduling system of claim 7, wherein, The linear weighting solving and analyzing module further includes a linear weighting solving unit, which is used for setting an initial boundary of a dynamic programming state, constructing a recursive transfer function, and solving an optimal value of a single-target function.

9. The vacuum thermal processing furnace scheduling system of claim 7, wherein, The Pareto optimization solving and analyzing module further comprises a Pareto optimization solving unit, configured to set an initial boundary of a dynamic programming state, construct a recursive transfer function, and solve an optimal value of a double-target function.

Citation Information

Patent Citations

  • Intelligent scheduling optimization method and system for flow production workshop

    CN111325487A

  • Decomposition optimization method for receiving and scheduling distributed manufacturing orders

    CN117669959A