Steel member production scheduling optimization method and device and computer readable storage medium

By combining simulated annealing and greedy algorithms, intelligent automation of steel component production scheduling is achieved, solving the problems of hierarchical fragmentation and resource rigidity in traditional scheduling, and improving scheduling efficiency and equipment utilization.

CN120746181APending Publication Date: 2025-10-03NO 1 CONSTR ENG CO LTD OF CHINA CONSTR THIRD ENG BUREAU CO LTD +1
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202510918422.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-07-03
Publication Date
2025-10-03

AI Technical Summary

Technical Problem

Traditional steel component production scheduling has problems such as hierarchical fragmentation, disconnected processes and rigid resources, resulting in low scheduling efficiency.

Method used

By integrating hierarchical optimization models with algorithms, the optimization problem is solved through simulated annealing and greedy algorithms, and the production and processing scheduling plan is automatically output to achieve model-driven intelligent and automated scheduling.

Benefits of technology

It solved the problems of complete delivery constraints of steel structure functional units and the coupling of component and main body processing sequence, reduced the total delay time and total delay rate, and improved equipment utilization and production scheduling efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120746181A_ABST
    Figure CN120746181A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of intelligent manufacturing, and provides a steel member production scheduling optimization method and device and a computer readable storage medium, and the method is realized through the following steps: a user sets a scheduling date range and screens orders; dynamically adjusting the branch priority and the machine capacity; setting optimization weights of the total tardiness time and the total delay rate; a simulated annealing algorithm is adopted to globally optimize a steel structure function unit machining sequence, a greedy algorithm is combined to allocate production line resources for component groups of the same process, and a process-level sub-algorithm is nested to solve the time sequence coupling problem of part and main body machining. The problems of neat delivery, cross-production-line resource scheduling and the like in steel member production are innovatively solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the field of intelligent manufacturing technology, and specifically relates to a steel component production scheduling optimization method, equipment and computer-readable storage medium. Background Art

[0002] There are three major technical bottlenecks in traditional steel component production scheduling: Hierarchical fragmentation: Existing systems (such as the Chinese patent publication CN119090191A) use components as the smallest production unit, ignoring the requirement that subdivisions, or functional units of steel structures (such as a complete roof truss), must be delivered as a complete set. Disconnected processes: Component pre-processing (such as connecting plate welding) and main processing (such as main beam assembly) are scheduled separately, resulting in the final assembly process being blocked due to unfinished components; Resource rigidity: The production line capacity is fixed, and adjacent production line resources cannot be dynamically called upon based on process requirements.

[0003] The present invention breaks through the above technical limitations by integrating the hierarchical optimization model with the algorithm. Summary of the Invention

[0004] To address the shortcomings of existing technologies, the present invention provides a method, device, and computer-readable storage medium for optimizing steel component production scheduling. This method replaces manual scheduling based on empirical experience. By acquiring relevant information through model-driven approaches and solving optimization problems using simulated annealing and greedy algorithms, it automatically outputs production and processing schedules, achieving intelligent automation of model-driven lean scheduling. This method addresses the inefficiency of scheduling caused by the constraints of complete delivery of functional units (i.e., subdivisions) of steel structures and the coupling of component and main body processing sequences.

[0005] To achieve the above object, the present invention provides the following technical solutions: In a first aspect, the present invention provides a method for optimizing production scheduling of steel components, comprising the following steps: Receive the scheduling date range entered by the user and filter the set of branches to be processed; Configure the priority weight and machine process capacity of each branch; Set dynamic optimization weights for total delay time and total delay rate; Execute a hybrid optimization scheduling algorithm for production scheduling; the production scheduling optimization algorithm includes: using a simulated annealing algorithm to globally optimize the sub-processing sequence, and using a greedy algorithm and a process sub-algorithm to generate a production schedule; Output a production schedule that includes process path, production line allocation, and completion date.

[0006] Furthermore, the simulated annealing algorithm globally optimizes the processing sequence of the subdivisions, including: generating a new processing sequence sequence of the subdivisions through an interchange / insertion operation, and accepting or rejecting the new solution based on the Metropolis criterion.

[0007] Furthermore, the execution of the hybrid optimization scheduling of the production scheduling optimization algorithm also includes obtaining basic information, and the basic information includes production line information, common process information, PBOM information, nesting optimization information, process processing time information and date information.

[0008] Furthermore, the production scheduling optimization algorithm includes the following steps: Generate an initial solution and record it as the global optimal solution; Calculate the optimization target value of the current solution using a solution method based on a greedy algorithm; Generate a new solution by swapping and inserting the order of the parts in the solution; After generating a new solution, calculate the difference between the optimization target value of the new solution and the current solution; If the optimization target value of the new solution is better, the new solution is accepted with 100% probability, and it is judged whether the new solution is better than the optimization target value of the global optimal solution. If it is better, the global optimal solution is updated as the new solution; if the optimization target value of the new solution is not better, the Metropolis criterion is used to judge whether the new solution is accepted; After the number of iterations reaches the current temperature, determine whether the termination condition is met. If not, reduce the temperature and reset the number of iterations after cooling, regenerate a new solution, and iterate again; if it is met, exit the algorithm and output the global optimal solution.

[0009] Furthermore, the step of generating an initial solution and recording it as the global optimal solution includes: numbering all divisions in the division set, sorting all divisions according to the required completion time to form a division sequence, and performing production and processing according to the division sequence.

[0010] Furthermore, the step of calculating the optimization target value of the current solution using a solution method based on a greedy algorithm includes: GA-Step1: Get the first segment in the segment sequence as the current segment; GA-Step 2: Sort the component types contained in the current section by their individual weights from largest to smallest, and set the first component type as the current component type; GA-Step 3: Combine the production line information to obtain the process types included in each production line. Compare them with the process routes required for the current component type to obtain the set of production lines that can process the current component type. Then, sort the production lines in the set by number, making the first production line in the set of production lines that can process the current component type the current production line. GA-Step4: Set the first component in the current component type as the current component; GA-Step5: Determine whether the current component type requires component processing. If so, proceed to GA-Step6; otherwise, proceed to GA-Step7. GA-Step 6: Run the component processing sub-algorithm on the current component to obtain the processing line information and date information of each component processing step, and then obtain the date when all components of the corresponding component are processed; GA-Step 7: Run the main processing sub-algorithm on the current component to obtain the processing production line information and date information of each component processing step; GA-Step 8: Record the optimization target value of the current component when it is processed on the current production line, and determine whether the current production line is the last production line in the set of production lines that can process the current component. If so, proceed to GA-Step 9. If not, set the current production line as the next production line and return to GA-Step 5. GA-Step 9: Based on the recorded optimization target values ​​generated by processing the current component on each production line in the set of production lines that can be processed, the production line with the best target value is selected as the processing line for the current component and the capacity utilization is recorded. It is then determined whether the current component is the last component in the current branch. If so, the process proceeds to GA-Step 10. If not, the current component is set as the next component and the process returns to GA-Step 3. GA-Step 10: Determine whether the current branch is the last branch in the branch sequence. If so, proceed to GA-Step 11. If not, set the current branch as the next branch and return to GA-Step 2. GA-Step 11: Output the optimization target value of the corresponding sub-sequence and the corresponding production schedule, and exit the algorithm.

[0011] Furthermore, the calculation formula of the optimization target value is: optimization target value = W1×Σ(actual completion date - required delivery date) + W2×(number of delayed sections / total number of sections), where W1+W2=1, W1 is the total delay time weight, and W2 is the total delay rate weight.

[0012] Furthermore, the step of judging whether the new solution is accepted by using the Metropolis criterion includes: Metropolis criterion for calculating probability , and randomly generate a decimal ,in, is the difference between the optimization target value of the new solution and the current solution, and T is the current temperature of the simulated annealing algorithm; like , then accept the new solution; Otherwise, keep the current solution.

[0013] In a second aspect, the present invention further proposes an electronic device comprising a processor and a memory, wherein the memory stores a computer program, and when the processor executes the program, the above-mentioned steel component production scheduling optimization method is implemented.

[0014] In a third aspect, the present invention further proposes a computer-readable storage medium storing computer instructions for executing the steel component production scheduling optimization method.

[0015] The beneficial effects of the present invention are: 1. By receiving the production date range and filtering the sub-division set, the sub-division (steel structure functional unit) is used as the minimum scheduling unit to avoid the delivery fragmentation problem caused by the traditional component-based scheduling method. The hybrid algorithm uses simulated annealing to globally optimize the sub-division processing sequence. Combined with the total delay rate weight (W2) in the objective function, it forces the components within the same sub-division to be completed simultaneously (such as all components of a whole roof truss), meeting the complete delivery constraint. The total delay rate of sub-division orders is reduced by more than 40%.

[0016] 2. When executing the hybrid algorithm, the greedy algorithm nested calls the process sub-algorithm: The component processing sub-algorithm (such as connecting plate welding) is run first, locking the production line and time for the pre-processing process; then the main processing sub-algorithm (such as main beam assembly) is executed to ensure that the main process starts after the component is completed. By configuring the machine process capacity, the resource requirements of the component and main process are accurately quantified to avoid blockages caused by capacity mismatch. This reduces the blockage time of the final assembly process by 60%.

[0017] 3. When configuring machine process capacity, the production line process capacity data is connected to support process-level capacity sharing; the greedy algorithm dynamically constructs a set of component-machinable production lines (based on process capacity matching) to flexibly allocate multiple production line resources for the same component type (such as calling idle welding machines on adjacent production lines); when outputting the production line allocation plan, cross-production line collaboration plans are automatically generated to improve equipment utilization; resource rigidity is broken and cross-production line scheduling is dynamically optimized.

[0018] 4. Set dynamic optimization weights for total delay time and total delay rate, and adjust them dynamically according to the production scenario. When solving with the hybrid algorithm, the objective function will synchronously respond to weight changes and output the optimal balance solution. This will implement a dual-objective weight-driven adaptive optimization scheduling strategy.

[0019] 5. Full-process automated scheduling replaces reliance on manual experience; the entire process is model-driven, from receiving user input to outputting process paths, production line allocation, and completion dates; simulated annealing explores the global optimal sub-sequence through swap / insert operations; the greedy algorithm quickly generates feasible scheduling plans through cascading calls to process sub-algorithms; and the automatic output of directly executable scheduling instructions eliminates manual scheduling deviations. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] Figure 1This is a flow chart of a method for optimizing steel component production scheduling provided by an embodiment of the present invention; Figure 2 This is a flow chart of a production scheduling algorithm provided by an embodiment of the present invention; Figure 3 This is a flowchart of a solution algorithm based on a greedy algorithm provided by an embodiment of the present invention; Figure 4 This is a flow chart of a component processing sub-algorithm provided by an embodiment of the present invention; Figure 5 This is a flow chart of a main body processing sub-algorithm provided by an embodiment of the present invention; Figure 6 This is an example diagram of a new solution generated by interchange provided by an embodiment of the present invention; Figure 7 This is an example diagram of a new solution generated by insertion provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0021] The present invention is further described in detail below with reference to the accompanying drawings and specific embodiments.

[0022] This paper considers the steel component production scheduling optimization problem as a multi-objective NP-Hard optimization problem (a nonlinear optimization problem characterized by difficulty in solving and exponentially increasing solution time with increasing content), specifically a multi-objective nonlinear optimization problem with total delay time and total delay rate as optimization objectives. This problem requires determining the processing sequence for different sub-divisions and the processing order for different component types within each sub-division—that is, determining a production schedule—to shorten the total processing time and reduce the total delay time and total delay rate.

[0023] Definitions of some terms in this embodiment: A section, or functional unit of a steel structure, is an independently installed functional unit in a steel structure project (such as a roof truss of a factory building or a pier of a bridge). It is the smallest scheduling unit for production planning. A uniformity constraint requires that all components within a section be completed before they can be shipped. For example, "Building T14, D8 Area, Section 2, Column 6P" means column assembly number 6 in section 2, area D8 of a building.

[0024] Component Type: A collection of components with the same manufacturing process (e.g., "H-beam"). This refers to a group of components with the same manufacturing process. Characteristics: Process Uniformity: Components of the same type undergo the same manufacturing process. Sorting Basis: Within a division, components are sorted in descending order of unit weight.

[0025] Component: A single steel part (e.g. a 5-ton H-beam).

[0026] Component: A sub-unit of a component that requires independent pre-fabrication (such as a bolted connection plate welded to a steel beam); it is processed in parallel with the main body, but must be completed before final assembly.

[0027] Process type: Technical classification of processing steps (such as cutting, welding, drilling).

[0028] Process route: the sequence of processes and timing constraints required for component processing; different component types have different routes; determined by the PBOM (process bill of materials), for example: steel column process route: cutting → assembly → welding → straightening → drilling.

[0029] Production line set: A combination of equipment that can complete all production line processes of a certain component type; the dynamic generation rule of "production line set" is: if the component requires processes {A, B}, then the production line set = {all production lines that support A∩B}.

[0030] like Figure 1 As shown in FIG, the steel component production scheduling optimization method includes the following steps: S1. The user selects the production start and end dates; The default start date is the end date of the previous production schedule plus one day to ensure scheduling continuity. The algorithm sets the divisions whose completion dates fall between the start and end dates as newly added divisions. These are combined with the divisions that have not yet started or completed processing in the previous production schedule to form a new division set. Specifically, the start and end dates must be formatted as 8-digit integers representing year, month, and day, such as 20230416. In this example, scheduling optimization is required for five divisions: steel components 1, 2, 3, 4, and 5. Each division has a variety of component types and quantities.

[0031] S2. The system obtains orders with a required delivery date between the start date and the end date. The project supply demand plan information includes the type, quantity, and demand time of the required steel structure parts. Specifically, the order data includes the following: branch name, such as Building T14, D8 Area, Section 2, Column 6P, as well as branch priority, branch cutting time, required delivery date, component type, required component quantity, net weight of component cutting parts, component weight, and quota information.

[0032] S3. The system obtains the current actual production situation and the last production schedule, and combines it with the newly added order to obtain a collection of orders to be scheduled. S4. The user chooses to add or delete some orders; S5. The user sets the priority of each branch; S6. The user sets the machine's capacity. Capacity refers to the capacity of a single machine on a production line for a specific process. For example, for the submerged arc welding process, the capacity is 60 / hour, which is the sum of the total capacity of the machines on the day shift for that process and the total capacity of the machines on the night shift for that process.

[0033] S7. The user selects the weights for optimization goal 1 (total delay time) and optimization goal 2 (total delay rate). The default value is 0.5. The sum of the weights of the two optimization goals (optimization goal 1 and optimization goal 2) is 1. The user needs to determine the weight distribution based on actual conditions.

[0034] The algorithm sets the overall optimization goal of the algorithm based on the priority of each division and the weights of the two optimization goals, weight1 and weight2, obtains the relevant information of each component in the division set, and performs production scheduling optimization calculations; S8. Call the production scheduling algorithm and output the production schedule. Specifically, a simulated annealing algorithm is used to globally optimize the processing sequence of each component. A new processing sequence for each component is generated through swap / insert operations, and new solutions are accepted or rejected based on the Metropolis criterion. A greedy algorithm and a process sub-algorithm are used to generate the production schedule. The data required by the algorithm can all be extracted from the specific model. Calling the production scheduling algorithm also requires some basic information, including production line information, shared process information, PBOM information, nesting optimization information, process processing time information, and date information. Specifically, the following basic information is included: SR1. Project demand information, including information about the projects and divisions that require production scheduling; SR2. Production line information, including capacity information for each production line process and workshop process used in production and processing; SR3. Shared process information, including the production line numbers and corresponding shared process names of the shared processes; SR4.PBOM information, including the processing procedures of each component number, as well as the type and input and output materials of each procedure; SR5. Nesting optimization information, including the division to which each nesting plan belongs, nesting method, raw steel plate material and size, nesting time required, number and weight of nested parts, and component type; SR6. Processing time information: the measurement attributes primarily responsible for the processing time of each process, excluding blanking (i.e., the attribute that primarily affects the processing time of this process), and the processing time required to process the corresponding process within the corresponding attribute range; SR7. Date information.

[0035] The above basic information is accessible to technicians in the construction field.

[0036] S9. Design a scheduling plan according to the production schedule and put it into production; the generated production schedule information includes processing procedures, processing completion date, processed steel structure parts number and quantity and other information.

[0037] S10. End.

[0038] Through a steel component production scheduling optimization method, the steel component processing factory obtains the production scheduling plan, when to process which component in which branch, that is, the processing process, processing sequence, the number and quantity of the processed steel structure parts, and outputs the expected processing completion date.

[0039] For the production scheduling algorithm in step S8, given the demand plans of one or more projects, each project's demand plan includes multiple divisions, and each division includes multiple types of components. Each type of component has its own demand quantity. The processing of each type of component is arranged on a certain production line. Each production line has multiple production and processing links that perform different processes to complete part of the component's processing process. The component's processing processes are subject to sequence constraints, and each production and processing link on each production line has a maximum capacity constraint. While satisfying constraints such as process constraints and maximum capacity constraints, minimizing the total weighted delay time and the total weighted delay rate by optimizing production scheduling is a multi-objective optimization NP-hard problem.

[0040] The production scheduling algorithm of the present invention effectively solves NP-hard problems by fusing the simulated annealing algorithm and the greedy algorithm.

[0041] like Figure 2 As shown, the production scheduling algorithm includes the following steps: S81. Generate an initial solution and record it as the global optimal solution; Specifically, all divisions in the order are numbered (1, 2, ...), and then all divisions are sorted according to the required completion time. In this embodiment, the initial division order is 5, 1, 2, 3, 4, and the divisions numbered 5, 1, 2, 3, 4 are produced and processed in order from front to back.

[0042] S82. Calculate the optimization target value of the current solution using a solution method based on a greedy algorithm.

[0043] For a sub-sequence with a predetermined processing order, arranging the processing order of the components contained in each sub-sequence involves a significant amount of computation and relatively complex constraints, making it difficult to directly obtain the optimization target value for the sub-sequence. This paper designs a greedy algorithm to arrange the processing order of the components contained in each sub-sequence, thereby calculating the optimization target value for the corresponding sub-sequence. The formula for calculating the optimization target value is: Optimization target value = W1 × Σ (actual completion date - required delivery date) + W2 × (number of delayed sub-sequences / total number of sub-sequences), where W1 + W2 = 1, W1 is the total delay time weight, and W2 is the total delay rate weight.

[0044] like Figure 3 As shown, the greedy algorithm includes the following steps: GA-Step 1: Get the first segment in the segment sequence as the current segment.

[0045] GA-Step2: Sort the component types contained in the current section from large to small according to the weight of each component type, and make the first component type the current component type.

[0046] GA-Step 3: Combine the production line information to obtain the types of processes included in each production line, compare them with the process route required for the current component type to be processed, obtain the set of production lines that can process the current component type, and sort the production lines in the production line set in numerical order, making the first production line in the set of production lines that can process the current component type the current production line.

[0047] GA-Step4: Let the first component in the current component type be the current component.

[0048] GA-Step5: Determine whether the current component type requires component processing. If so, proceed to GA-Step6; otherwise, proceed to GA-Step7.

[0049] GA-Step 6: Run the component processing sub-algorithm on the current component to obtain information such as the processing production line and date of each component processing step, and then obtain the date when all components of the corresponding component are processed.

[0050] Considering that some components require both sub-processing and main processing during machining, which can be carried out in parallel in most cases, the final assembly process in the main processing needs to be started only after all sub-processing processes of the corresponding components are completed; therefore, the Component Machining Subalgorithm (CMS) first arranges the sub-process processing of each component, and uses the final completion time of the sub-process as a constraint to arrange the main processing of the corresponding component.

[0051] like Figure 4 As shown, the component processing sub-algorithm includes the following steps: CMS-STEP1: Let today be the first production day after production scheduling, and let the current process be the first process of processing the current component part.

[0052] CMS-STEP2: Determine whether the current process is a process completed uniformly by the workshop. If so, proceed to CMS-STEP3; otherwise, proceed to CMS-STEP4.

[0053] CMS-STEP3: Determine whether the remaining capacity of the current process in the workshop on that day can be used to produce the component. If so, schedule the current process of the current component for production in the workshop on that day and proceed to CMS-STEP7. Otherwise, proceed to CMS-STEP9.

[0054] CMS-STEP4: Determine whether the remaining capacity of the current process of the current production line on that day can be used to produce the component. If so, proceed to CMS-STEP5; otherwise, proceed to CMS-STEP6.

[0055] CMS-STEP5: Schedule the current process of the current component to be produced on the current production line of the day and proceed to CMS-STEP8.

[0056] CMS-STEP 6: Determine whether the current process on the current production line can be processed using the process on an adjacent production line. If so, proceed to CMS-STEP 7; otherwise, proceed to CMS-STEP 10. Adjacent production lines are defined by the system based on the production line layout, and are defined as physically adjacent production lines with the same process capabilities or a collection of production lines that can be quickly switched using transfer equipment.

[0057] CMS-STEP7: Schedule the current process of the current component to be produced on the adjacent production line on that day and proceed to CMS-STEP8.

[0058] CMS-STEP8: Determine whether the current process is the last process of component processing. If so, enter CMS-STEP11. If not, make the current process the next process and enter CMS-STEP9.

[0059] CMS-STEP9: Determine whether the total component processing time of the current component on that day exceeds the maximum processing time of that day. If so, proceed to CMS-STEP10; if not, return to CMS-STEP2.

[0060] CMS-STEP10: Set the current day to the next day and return to CMS-STEP2.

[0061] CMS-STEP11: Record the production schedule of the component processing steps, and record the processing date of the last component processing step as the component completion date, and exit the algorithm.

[0062] GA-Step7: Run the main processing sub-algorithm on the current component to obtain information such as the processing production line and date of each component processing step.

[0063] The calculation logic of the Main Body Machining Subalgorithm (MBMS) is similar to that of the Component Machining Subalgorithm. However, if a component needs to undergo component machining, its final assembly process can only begin after all its component machining processes are completed.

[0064] like Figure 5As shown in Figure 2, the main processing sub-algorithm includes the following steps: MBMS-STEP1: Let today be the first production day after production scheduling, and let the current process be the first process of processing the main body of the current component.

[0065] MBMS-STEP2: Determine whether the current process is the final assembly process and whether the current component needs to go through the component processing process. If so, enter MBMS-STEP3; if not, enter MBMS-STEP5.

[0066] MBMS-STEP3: Determine whether today's date is before the component completion date. If so, proceed to MBMS-STEP4; otherwise, proceed to MBMS-STEP5.

[0067] MBMS-STEP4: Set today as the component completion date and proceed to MBMS-STEP5.

[0068] MBMS-STEP5: Determine whether the current process is a process that is completed uniformly by the workshop. If so, proceed to MBMS-STEP6; otherwise, proceed to MBMS-STEP7.

[0069] MBMS-STEP6: Determine whether the remaining capacity of the current process in the workshop on that day can be used to produce the component. If so, schedule the current process of the current component to be produced in the workshop on that day and proceed to MBMS-STEP11. Otherwise, proceed to MBMS-STEP13.

[0070] MBMS-STEP7: Determine whether the remaining capacity of the current process of the current production line on that day can be used to produce the component. If so, proceed to MBMS-STEP8; otherwise, proceed to MBMS-STEP9.

[0071] MBMS-STEP8: Schedule the current process of the current component to be produced on the current production line of the day and proceed to MBMS-STEP11.

[0072] MBMS-STEP9: Determine whether the current process of the current production line can be processed using the process of the adjacent production line. If so, proceed to MBMS-STEP10; otherwise, proceed to MBMS-STEP13.

[0073] MBMS-STEP10: Schedule the current process of the current component to be produced on the adjacent production line for the same day and proceed to MBMS-STEP11.

[0074] MBMS-STEP11: Determine whether the current process is the last process of the main processing. If so, enter MBMS-STEP14. If not, make the current process the next process and enter MBMS-STEP12.

[0075] MBMS-STEP12: Determine whether the total main body processing time of the current component on that day exceeds the maximum processing time of that day. If so, proceed to MBMS-STEP13; if not, return to MBMS-STEP2.

[0076] MBMS-STEP13: Set the current day to the next day and return to MBMS-STEP2.

[0077] MBMS-STEP14: Record the production schedule of the main processing steps of the component and exit the algorithm.

[0078] GA-Step8: Record the optimization target value (weighted total delay time and weighted total delay rate) of the current component when it is processed on the current production line, and determine whether the current production line is the last production line in the set of production lines that can process the current component. If so, enter GA-Step9; if not, set the current production line as the next production line and return to GA-Step5.

[0079] GA-Step9: Based on the recorded optimization target values ​​generated by processing the current component on each production line in the set of production lines that can be processed, the production line with the best target value is selected as the processing production line for the current component and the capacity occupancy is recorded. It is determined whether the current component is the last component of the current branch. If so, enter GA-Step10. If not, make the current component the next component and return to GA-Step3.

[0080] GA-Step 10: Determine whether the current division is the last division in the division sequence. If so, proceed to GA-Step 11. If not, set the current division as the next division and return to GA-Step 2.

[0081] GA-Step 11: Output the optimization target value of the corresponding sub-sequence and the corresponding production schedule, and exit the algorithm.

[0082] S83. Generate a new solution by swapping and inserting the order of the parts in the solution.

[0083] Specifically, if Figure 6 As shown, the swap operation swaps the order of the two elements of the current solution.

[0084] For example, if the elements numbered 1 and 5 in the current solution are swapped, the new solution generated is 1, 5, 2, 3, 4, which means that the parts numbered 1, 5, 2, 3, and 4 are processed in sequence.

[0085] like Figure 7 As shown, the insertion operation inserts the position of one of the elements of the current solution into any position in the sequence chain composed of the remaining elements except its own original position.

[0086] For example, if the element numbered 3 in the current solution is inserted between 1 and 2, the new solution generated is 5, 1, 3, 2, 4, which means that the parts numbered 5, 1, 3, 2, and 4 are processed in sequence.

[0087] S84. After generating a new solution, calculate the difference in the optimization target value between the new solution and the current solution.

[0088] S84 involves the following parameters: ——The difference between the optimization target value of the new solution and the current solution, also known as the optimization target value difference between the new solution and the current solution; ——New solution optimization target value; ——Current solution optimization target value; Specifically, the optimization target value of the new solution is solved by the greedy algorithm of S82, and the difference between the new solution and the current solution is solved ; S85. Update the current solution.

[0089] S85 involves the following parameters: ——Determine the probability of accepting the new solution; c——random number value range (0, 1); T——Current temperature of simulated annealing algorithm; ——The difference between the optimization target value of the new solution and the current solution; If the optimization target value of the new solution is better, the new solution is accepted with 100% probability, and it is judged whether the new solution is better than the optimization target value of the global optimal solution. If it is better, the global optimal solution is updated as the new solution; If the optimization objective value of the new solution is not optimal, the Metropolis criterion is used to determine whether the new solution is accepted.

[0090] Specifically, the probability of accepting a new solution is:

[0091] , accept the new solution with 100% probability; , then use the Metropolis criterion to determine whether the new solution is accepted; Furthermore, the Metropolis criterion calculates the probability , and randomly generate a decimal , like , then accept the new solution; Otherwise, keep the current solution; S86. Exit the algorithm condition. After reaching the number of iterations at the current temperature, determine whether the termination condition is met. If so, exit the algorithm and output the global optimal solution. If not, cool down and reset the number of iterations after cooling down, and return to S83 to iterate again. S86 involves the following parameters: ——initial temperature; ——temperature reduction coefficient; - minimum temperature; — number of iterations; Specifically, each temperature There are independent iterations below. is a decimal less than 1 and close to 1, when After the number of iterations reaches , achieve cooling and obtain a new temperature and the number of iterations , until the temperature drops to In some embodiments, the default value of the initial temperature T is 1000K, the cooling coefficient k is 0.95, and the minimum temperature is The number of iterations at each temperature is 1K The default setting is 5 times the number of divisions.

[0092] Based on the same inventive concept, the present invention also proposes an electronic device, including a processor and a memory, wherein the memory stores a computer program, and when the processor executes the program, the above-mentioned steel component production scheduling optimization method is implemented.

[0093] Based on the same inventive concept, the present invention also proposes a computer-readable storage medium, which stores computer instructions for executing a method for optimizing steel component production scheduling.

[0094] The above are merely preferred embodiments of the present invention. The scope of protection of the present invention is not limited to the above embodiments. All technical solutions based on the principles of the present invention are within the scope of protection of the present invention. It should be noted that for those skilled in the art, various improvements and modifications that do not depart from the principles of the present invention should also be considered within the scope of protection of the present invention.

Claims

1. A method for optimizing production scheduling of steel components, characterized in that: The following steps are involved: Receive the scheduling date range entered by the user and filter the set of branches to be processed; Configure the priority weight and machine process capacity of each branch; Set dynamic optimization weights for total delay time and total delay rate; Execute production scheduling optimization algorithm hybrid optimization scheduling; The production scheduling optimization algorithm includes: using a simulated annealing algorithm to globally optimize the sub-processing sequence, and using a greedy algorithm and a process sub-algorithm to generate a production schedule; Output a production schedule that includes process path, production line allocation, and completion date.

2. The method for optimizing steel component production scheduling according to claim 1, characterized in that: The simulated annealing algorithm globally optimizes the processing sequence of the subdivisions, including: generating a new processing sequence sequence of the subdivisions through an interchange / insertion operation, and accepting or rejecting the new solution based on the Metropolis criterion.

3. The method for optimizing steel component production scheduling according to claim 1, characterized in that: The execution of the hybrid optimization scheduling of the production scheduling optimization algorithm also includes obtaining basic information, and the basic information includes production line information, common process information, PBOM information, nesting optimization information, process processing time information and date information.

4. The method for optimizing steel component production scheduling according to claim 3, characterized in that: The production scheduling optimization algorithm includes the following steps: Generate an initial solution and record it as the global optimal solution; Calculate the optimization target value of the current solution using a solution method based on a greedy algorithm; Generate a new solution by swapping and inserting the order of the parts in the solution; After generating a new solution, calculate the difference between the optimization target value of the new solution and the current solution; If the optimization target value of the new solution is better, the new solution is accepted with 100% probability, and it is judged whether the new solution is better than the optimization target value of the global optimal solution. If it is better, the global optimal solution is updated as the new solution; if the optimization target value of the new solution is not better, the Metropolis criterion is used to judge whether the new solution is accepted; After the number of iterations reaches the current temperature, determine whether the termination condition is met. If not, reduce the temperature and reset the number of iterations after cooling, regenerate a new solution, and iterate again; if it is met, exit the algorithm and output the global optimal solution.

5. The method for optimizing steel component production scheduling according to claim 4, characterized in that: The steps of generating an initial solution and recording it as a global optimal solution include: numbering all subdivisions in the subdivision set, sorting all subdivisions according to the required completion time to form a subdivision sequence, and performing production and processing according to the subdivision sequence.

6. The method for optimizing steel component production scheduling according to claim 5, characterized in that: The step of calculating the optimization target value of the current solution using a solution method based on a greedy algorithm includes: GA-Step1: Get the first segment in the segment sequence as the current segment; GA-Step 2: Sort the component types contained in the current section by their individual weights from largest to smallest, and set the first component type as the current component type; GA-Step 3: Combine the production line information to obtain the process types included in each production line. Compare them with the process routes required for the current component type to obtain the set of production lines that can process the current component type. Then, sort the production lines in the set by number, making the first production line in the set of production lines that can process the current component type the current production line. GA-Step4: Set the first component in the current component type as the current component; GA-Step5: Determine whether the current component type requires component processing. If so, proceed to GA-Step6; otherwise, proceed to GA-Step7. GA-Step 6: Run the component processing sub-algorithm on the current component to obtain the processing line information and date information of each component processing step, and then obtain the date when all components of the corresponding component are processed; GA-Step 7: Run the main processing sub-algorithm on the current component to obtain the processing production line information and date information of each component processing step; GA-Step 8: Record the optimization target value of the current component when it is processed on the current production line, and determine whether the current production line is the last production line in the set of production lines that can process the current component. If so, proceed to GA-Step 9. If not, set the current production line as the next production line and return to GA-Step 5. GA-Step 9: Based on the recorded optimization target values ​​generated by processing the current component on each production line in the set of production lines that can be processed, the production line with the best target value is selected as the processing line for the current component and the capacity utilization is recorded. It is then determined whether the current component is the last component in the current branch. If so, the process proceeds to GA-Step 10. If not, the current component is set as the next component and the process returns to GA-Step 3. GA-Step 10: Determine whether the current branch is the last branch in the branch sequence. If so, proceed to GA-Step 11. If not, set the current branch as the next branch and return to GA-Step 2. GA-Step 11: Output the optimization target value of the corresponding sub-sequence and the corresponding production schedule, and exit the algorithm.

7. The method for optimizing steel component production scheduling according to claim 6, characterized in that: The calculation formula for the optimization target value is: optimization target value = W1×Σ(actual completion date - required delivery date) + W2×(number of delayed sections / total number of sections), where W1+W2=1, W1 is the total delay time weight, and W2 is the total delay rate weight.

8. The method for optimizing steel component production scheduling according to claim 4, characterized in that: The step of judging whether the new solution is accepted by the Metropolis criterion includes: Metropolis criterion for calculating probability , and randomly generate a decimal ,in, is the difference between the optimization target value of the new solution and the current solution, and T is the current temperature of the simulated annealing algorithm; like , then accept the new solution; Otherwise, keep the current solution.

9. An electronic device comprising a processor and a memory, characterized in that: The memory stores a computer program, and when the processor executes the program, the method for optimizing steel component production scheduling according to any one of claims 1 to 8 is implemented.

10. A computer-readable storage medium, characterized in that The computer-readable storage medium stores computer instructions for executing the steel component production scheduling optimization method according to any one of claims 1 to 8.

Citation Information

Patent Citations

  • Order acceptance and production scheduling integrated optimization method and system based on 3D printing

    CN119090191A