A steel plate stacking optimization method with targeted stacking position and computer equipment
By determining the basic parameters and constraints of steel plate stacking, constructing coded decision results, setting initialization rules, generating an initial population and executing stacking decisions, selecting the scheme with the minimum number of stacking operations, and combining it with adaptive genetic algorithm optimization, the problem of low stacking efficiency of steel plates with target stacking positions is solved, and efficient steel plate transportation is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- 湖南天桥嘉成智能科技有限公司
- Filing Date
- 2026-02-06
- Publication Date
- 2026-06-05
AI Technical Summary
Existing technologies cannot effectively adapt to the needs of steel plate re-stacking with target stacking positions, resulting in low re-stacking efficiency and failing to meet the needs of steel plate transfer under complex working conditions.
By determining the basic parameters and constraints of steel plate stacking with target stack positions, a coded decision result is constructed, initialization rules are set, an initial population is generated, stacking decisions are executed in combination with preset optimization rules, the optimization scheme with the minimum number of stacking operations is selected, and an adaptive genetic algorithm is used for iterative optimization.
It significantly improves the efficiency of steel plate re-stacking in scenarios with target stacking positions, adapts to complex working conditions, reduces the total number of re-stacking operations, ensures the correctness and stability of the re-stacking process, and replaces the traditional operation method that relies on manual experience or a single rule.
Smart Images

Figure CN122155596A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the technical field of steel plate scheduling, and in particular to a method and computer equipment for optimizing steel plate stacking with target stacking positions. Background Technology
[0002] In the shipbuilding industry, when steel plates are managed by plate size, they need to be sorted and arranged from mixed stacks of various plate sizes, according to the required plate size, quantity, and order for cutting, and then transferred to the target stacking location for subsequent processing. The transfer and stacking of steel plates is highly complex and requires specialized expertise. Traditional methods either rely on manual experience or are guided by basic heuristic rules, which cannot meet the needs of large-scale, complex steel plate transfer operations, leading to low stacking efficiency.
[0003] The prior art discloses a method for optimizing steel plate stacking without a target stack position. This method mainly uses multiple temporary stack positions as buffer and sorting space. By setting stacking rules in the case of no target stack position, it plans the transfer path and order of steel plates from the initial stack position to each temporary stack position. However, this method is difficult to apply to steel plate stacking with a target stack position and cannot achieve optimization of steel plate stacking with a target stack position. Summary of the Invention
[0004] To address the problem of low stacking efficiency and difficulty in adapting to complex steel plate transfer requirements in existing technologies with target stacking positions, this invention proposes an optimized stacking method and computer equipment for steel plates with target stacking positions, which improves the stacking efficiency of target stacking positions and effectively adapts to the steel plate transfer requirements under complex working conditions.
[0005] To achieve the above-mentioned technical effects, the technical solution of the present invention is as follows:
[0006] A method for optimizing steel plate stacking with target stacking positions includes the following steps: S1. Determine the foundation parameters and stacking constraints for steel plates with target stacking positions; S2. Construct the coding decision results of the basic parameters of the steel plate stacking under the stacking constraint, and set the initialization rules corresponding to the coding decision results; S3. Generate an initial population of a preset size based on the initialization rules, and perform a stacking decision on the initial population according to the preset steel plate stacking optimization rules to obtain the stacking decision result; S4. Based on the stacking decision results, select the stacking optimization scheme with the individual with the minimum total stacking count in the initial population as the target.
[0007] Preferably, the basic parameters for steel plate stacking include multiple initial stack positions, one or more target stack positions, stack height limit values, target steel plates, candidate steel plates, obstacle steel plates, empty stack positions, starting stack positions, and ending stack positions. The initial stack positions contain steel plates of different specifications and quantities, and the target stack positions have sequential constraints on the steel plates. The stacking constraints include the following conditions: Temporary storage of steel plates is not allowed at the target stacking location; that is, only inflow is permitted, and no outflow is permitted. The barrier steel plates do not need to be returned to their original stack position during the stacking process; Each time a stack is repositioned, only one steel plate can be moved; and it can only be taken from the top layer of one stack and moved to the top layer of another stack.
[0008] Preferably, the coding decision results include steel plate source selection decision and target stacking location allocation decision; the steel plate source selection decision is that if there are multiple steel plates with the same plate specification number in the initial stacking location, the target steel plate needs to be determined from the steel plates with the same plate specification number; the target stacking location allocation decision is that the target steel plates need to determine their respective final destination stacking locations.
[0009] Preferably, the initialization rules include steel plate source selection decision initialization rules and target stacking location allocation decision initialization rules, wherein the steel plate source selection decision initialization rules include: Upper layer priority rule: The steel plate with the highest layer number is selected as the target steel plate first; Location concentration rule: Prioritize steel plates in the same stack as the target steel plate; if none are found, then select... Select the steel plate with the highest number of layers as the target steel plate; The target stacking location allocation decision initialization rules include: Uniform distribution rule: When there are multiple stack positions, try to allocate the number of steel plates to the target stack position as much as possible. Consistent quantity; Grouping rules for similar stacks: When there are multiple stacks, steel plates that are close to the top layer are assigned to the same stack. Adjacent target sequence grouping rule: Evenly distribute adjacent target steel plates to the target stack positions.
[0010] Preferably, a number of individuals in the initial population are generated by a combination of several sets of the initialization rules for steel plate source selection and target stacking location allocation, and the remaining individuals in the initial population are generated randomly.
[0011] Preferably, the steel plate stacking optimization rules include the following rules: Stack height constraint rule: The height of any stack position must not exceed the height limit during the stacking process; Empty stack priority rule: Prioritize transfer to empty stack positions; Candidate steel plate selection rules: If all the steel plates above the stack where the candidate steel plate is located can be poured into other stacks, and all the obstructing steel plates of the candidate steel plate are the target steel plate, then the candidate steel plate is selected as the selected steel plate; otherwise, the candidate steel plate that is closer to the top layer in the initial stack is selected as the selected steel plate. Starting point selection rules: If there is an empty stack or the number of initial stacks is less than the first preset threshold, the stack containing the selected steel plate is directly selected as the starting stack; otherwise, the reloading cost of each initial stack is calculated, and the stack with the lowest reloading cost is selected as the starting point. If a steel plate in a certain stack cannot be moved to another stack due to height restrictions, the reloading cost of that stack is set to the second preset threshold; wherein the reloading cost... The calculation formula is as follows:
[0012] in, This indicates that a steel plate has been selected. Indicates the stack position. This indicates the selected stack location of the steel plate; This indicates the number of steps required to empty the current stack location. This indicates the number of steps required to remove the obstacle steel plate from the selected steel plate; Endpoint selection rules: Exclude the starting stack and the stack where the selected steel plate is located, and the remaining stacks are the optional endpoint stacks.
[0013] Preferably, the step of performing a stacking decision on the initial population according to a preset steel plate stacking optimization rule to obtain the stacking decision result includes: S31. For individuals in the initial population, candidate steel plates are selected as stacking targets according to the candidate steel plate selection rules, and the starting stack position and the ending stack position are selected according to the endpoint selection rules respectively. S32. Determine whether the endpoint stack meets the height limit constraint. If yes, transfer the top layer steel plate of the starting stack in the initial population to the top layer of the endpoint stack and execute S33; otherwise, return to S31. S33. Determine whether the transferred steel plate is the selected target steel plate. If yes, the selected target steel plate has been successfully stacked. Continue to use the current steel plate as the stacking target until all transferred steel plates are selected target steel plates. Output the stacking decision result that all stacking is successful. If not, return to S31.
[0014] Preferably, the step of selecting an optimized stacking scheme based on the stacking decision result, with the individual in the initial population having the minimum total stacking count as the target, includes: S41. Count the total number of stack-shifting operations performed by all individuals in the initial population after executing the stack-shifting decision-making process; S42. The individual with the smallest total number of stacking operations from the total number of stacking operations counted in S41 is taken as the target, and the coding decision result, initialization rule and stacking decision result corresponding to the target are taken as the stacking optimization scheme.
[0015] Preferably, the method further includes the following steps: S5. The adaptive genetic algorithm is used to update and iterate the stacking optimization scheme to obtain the optimal stacking scheme.
[0016] The present invention also proposes a computer device, comprising: a processor, a memory, a communication interface, and a communication bus, wherein the processor, the memory, and the communication interface communicate with each other through the communication bus; The memory is used to store at least one executable instruction that causes the processor to perform the operation of the steel plate stacking optimization method with target stacking positions as described above.
[0017] Compared with the prior art, the beneficial effects of the technical solution of the present invention are: This invention proposes a method and computer equipment for optimizing steel plate stacking with target stack positions. First, it determines the basic parameters and constraints for steel plate stacking with target stack positions, avoiding the blindness of traditional manual operations or basic heuristic rules. Second, it constructs coded decision results for the basic parameters of steel plate stacking under the stated constraints and sets corresponding initialization rules, which can flexibly adapt to various complex working conditions, overcoming the limitations of traditional methods in adapting to complex scenarios. Third, by generating an initial population of a preset size and combining it with preset stacking optimization rules to execute stacking decisions, it achieves comprehensive coverage of multiple stacking schemes. The system, through efficient exploration, can fully explore optimized stacking paths. Furthermore, based on the stacking decision results, the system selects the individual with the minimum total stacking count in the initial population as the target, significantly reducing the total number of stacking operations and greatly improving the stacking efficiency of steel plates in scenarios with target stacking positions. At the same time, by embedding the coded decision results, initialization rules, and stacking decision results, the system ensures the correctness and stability of the stacking process, adapts to the steel plate transfer needs under complex working conditions, and effectively replaces the traditional operation method that relies on manual experience or a single rule, providing a reliable guarantee for the smooth operation of subsequent steel plate processing. Attached Figure Description
[0018] Figure 1 This is a flowchart illustrating an optimized method for stacking steel plates with target stacking positions, as proposed in an embodiment of the present invention. Figure 2 This diagram illustrates an example of the initial state proposed in an embodiment of the present invention. Figure 3 This diagram illustrates an example of selecting the source of the target steel plate as proposed in this embodiment of the invention. Figure 4 This diagram illustrates an example of target stacking location allocation selection proposed in an embodiment of the present invention. Figure 5 This diagram illustrates the endpoint selection rules proposed in this embodiment of the invention. Figure 6 This represents the decoding logic diagram proposed in the embodiments of the present invention; Figure 7 This diagram illustrates an example of stacking two target stack positions as proposed in this embodiment of the invention. Figure 8 This represents the initialization performance analysis diagram proposed in the embodiments of the present invention; Figure 9 This is a bar chart showing the solution results of the cases proposed in the embodiments of the present invention; Figure 10 This represents a box-shaped diagram as presented in the embodiments of the present invention; Figure 11 A framework diagram illustrating the adaptive genetic algorithm proposed in this embodiment of the invention; Figure 12 This represents the initial case diagram presented in the embodiments of the present invention; Figure 13 This diagram illustrates the encoding examples presented in the embodiments of the present invention. Figure 14 This diagram illustrates a single-point intersection example proposed in an embodiment of the present invention. Figure 15 This diagram illustrates a case study of repairing an infeasible solution proposed in this invention. Figure 16 This represents the logic diagram for repairing infeasible solutions proposed in this embodiment of the invention; Figure 17 This diagram illustrates a single-point mutation case proposed in an embodiment of the present invention. Figure 18 This diagram illustrates a case study of exchange variation proposed in an embodiment of the present invention. Figure 19 This represents the first neighborhood structure diagram proposed in the embodiments of the present invention; Figure 20 This represents the second neighborhood structure diagram proposed in this embodiment of the invention; Figure 21 This represents the third neighborhood structure diagram proposed in this embodiment of the invention; Figure 22 This represents the fourth neighborhood structure diagram proposed in this embodiment of the invention; Figure 23 This represents the fifth neighborhood structure diagram proposed in this embodiment of the invention; Figure 24 This represents the Q-table diagram proposed in the embodiments of the present invention; Figure 25This is a structural block diagram of a computer device proposed in an embodiment of the present invention.
[0019] 11. Processor; 12. Memory; 13. Communication interface; 14. Communication bus; 15. Executable instructions. Detailed Implementation
[0020] The accompanying drawings are for illustrative purposes only and should not be construed as limiting the scope of this patent. It is understandable to those skilled in the art that some well-known details may be omitted from the accompanying drawings; The technical solution of the present invention will be further described below with reference to the accompanying drawings and embodiments.
[0021] Example 1 See Figure 1 This embodiment proposes an optimized method for steel plate stacking with target stacking positions, including the following steps: S1. Determine the foundation parameters and stacking constraints for steel plates with target stacking positions; The basic parameters for steel plate stacking include multiple initial stack positions, one or more target stack positions, stack height limits, target steel plates, candidate steel plates, obstacle steel plates, empty stack positions, starting stack positions, and ending stack positions. The following is a further explanation of the above basic parameters for steel plate stacking: Target steel plate: The steel plate in the target steel plate sequence end, i.e., the steel plate that needs to be transferred to the target stack. For example... Figure 2 As shown, the target steel plates are all marked in red.
[0022] Candidate steel plate: The bottommost steel plate in the initial allocation sequence of the target stack that has not yet been transferred to the target stack. A selected steel plate is one of these plates, used as the target for stacking; once this steel plate is transferred to the target stack, a new selected steel plate is chosen. For example... Figure 2 As shown, in the current state, the candidate steel plates are 3 and 6.
[0023] Obstacle steel plate: A steel plate stacked on top of the target steel plate in the initial stacking position. For example... Figure 2 As shown, the obstruction steel plate of stack position 2 is 3.
[0024] Empty stack: A stack without a target steel plate. For example... Figure 2 As shown, stack position 4 is an empty stack position.
[0025] Starting point and ending point: The moving steel plate is transferred from the starting point to the ending point.
[0026] The initial stacking position contains steel plates of different specifications and in different quantities. In particular, the steel plates at the same initial stacking position may have the same specification, that is, there are multiple steel plates with the same number at the same initial stacking position. This characteristic leads to the goal that the steel plates can originate from multiple initial stacking positions.
[0027] The steel plates on the target stack are subject to a sequence constraint, meaning that the steel plates on the target stack in the final state must be arranged according to the target order. The plates can be placed in either forward or reverse order; each plate type has a different thickness and there are height restrictions on the stacking positions, and the maximum height limit must not be exceeded during the stacking process.
[0028] The stacking constraint conditions include the following conditions: Temporary storage of steel plates is not allowed at the target stacking location; that is, only inflow is permitted, and no outflow is permitted. The barrier steel plates do not need to be returned to their original stack position during the stacking process; Each time a stack is repositioned, only one steel plate can be moved; and it can only be taken from the top layer of one stack and moved to the top layer of another stack.
[0029] S2. Construct the coding decision results of the basic parameters of the steel plate stacking under the stacking constraint, and set the initialization rules corresponding to the coding decision results; The coding decision results include steel plate source selection decisions and target stacking location allocation decisions; See Figure 3 The steel plate source selection decision is based on the presence of multiple steel plates with the same specification at the initial stack location, such as... Figure 3 For steel plates 3 and 4, the target steel plates need to be determined from steel plates of the same specification. The target stacking location allocation decision involves determining the final destination stacking location for each target steel plate. For example... Figure 4 As shown, the target steel plate sequence is allocated to the target stack positions sequentially from bottom to top.
[0030] The encoded decision results also include other decisions: during the stacking process, there are other decisions: ① which candidate steel plate to select as the stacking target; ② which stack position to select the steel plate for stacking; ③ which stack position to stack the steel plate to.
[0031] Among these factors, decision-making is crucial influencing the objective. The decisions regarding stack allocation and steel plate sourcing are implemented through encoding; other decisions in the stacking process are implemented using rules. Under the same encoding, more effective decoding rules result in fewer stacking steps; similarly, higher encoding quality under the same decoding rules also reduces the number of stacking steps. Therefore, to minimize stacking steps, preliminary optimization of the stacking process can be achieved by designing reasonable and effective decoding and initialization rules, thereby reducing the number of stacking steps. Further optimization algorithms can then be used to further reduce the number of stacking steps.
[0032] The initialization rules include steel plate source selection decision initialization rules and target stacking location allocation decision initialization rules. To achieve preliminary optimization, the following initialization rules were designed: Regarding the allocation of steel plate sources, the corresponding decision can be made using the aforementioned steel plate source selection decision initialization rule, which includes: Upper layer priority rule: The steel plate with the highest layer number is selected as the target steel plate first; Location concentration rule: Prioritize steel plates in the same stack as the target steel plate; if none are found, then select... Select the steel plate with the highest number of layers as the target steel plate; For target stacking location allocation, the corresponding decision can be made using the target stacking location allocation decision initialization rule; the target stacking location allocation decision initialization rule includes: Uniform distribution rule: When there are multiple stack positions, try to allocate the number of steel plates to the target stack position as much as possible. Consistent quantity; Grouping rules for similar stacks: When there are multiple stacks, steel plates that are close to the top layer are assigned to the same stack. Adjacent target sequence grouping rule: Evenly distribute adjacent target steel plates to the target stack positions.
[0033] S3. Generate an initial population of 30 based on the initialization rules, and perform a stacking decision on the initial population according to the preset steel plate stacking optimization rules to obtain the stacking decision result; The initial population consists of 6 individuals generated by 6 combinations of the steel plate source selection decision initialization rule and the target stacking position allocation decision initialization rule, and the remaining individuals in the initial population are generated randomly.
[0034] To ensure the accuracy and efficiency of the stacking decision during decoding, an optimization rule for steel plate stacking is designed. This optimization rule includes the following: Stack height constraint rule: The height of any stack position must not exceed the height limit during the stacking process; Empty stack priority rule: Prioritize transfer to empty stack positions; Candidate steel plate selection rules: If all the steel plates above the stack where the candidate steel plate is located can be poured into other stacks, and all the obstructing steel plates of the candidate steel plate are the target steel plate, then the candidate steel plate is selected as the selected steel plate; otherwise, the candidate steel plate that is closer to the top layer in the initial stack is selected as the selected steel plate. Starting point selection rules: If there is an empty stack or the number of initial stacks is less than the first preset threshold 3, directly select the stack containing the selected steel plate as the starting stack; otherwise, calculate the stacking cost of each initial stack, and select the stack with the smallest stacking cost (preferably the selected stack) as the starting point. If a steel plate in a certain stack cannot be moved to another stack due to height restrictions, then the stacking cost of that stack is set to the second preset threshold 1e3; wherein the stacking cost... The calculation formula is as follows:
[0035] in, This indicates that a steel plate has been selected. Indicates the stack position. This indicates the selected stack location of the steel plate; This indicates the number of steps required to empty the current stack location. This indicates the number of steps required to remove the obstructing steel plate from the selected steel plate; when the stack position... When the steel plate above is the next candidate steel plate ,otherwise There are stack locations. , The top layer is the eye Standard steel plate , And in the target sequence The last steel plate is , If added , ;otherwise .
[0036] Endpoint selection rules: Exclude the starting stack and the stack containing the already selected steel plate; the remaining stacks are the available endpoint stacks. Figure 5 As shown.
[0037] The initial population is subjected to a stacking decision based on a preset steel plate stacking optimization rule to obtain the stacking decision result. See [link to relevant documentation]. Figure 6 ,include: S31. For individuals in the initial population, candidate steel plates are selected as stacking targets according to the candidate steel plate selection rules, and the starting stack position and the ending stack position are selected according to the endpoint selection rules respectively. S32. Determine whether the endpoint stack meets the height limit constraint. If yes, transfer the top layer steel plate of the starting stack in the initial population to the top layer of the endpoint stack and execute S33; otherwise, return to S31. S33. Determine whether the transferred steel plate is the selected target steel plate. If yes, the selected target steel plate has been successfully stacked. Continue to use the current steel plate as the stacking target until all transferred steel plates are selected target steel plates. Output the stacking decision result that all stacking is successful. If not, return to S31.
[0038] In S3, candidate steel plates are first selected as stacking targets according to the candidate steel plate selection rules. Then, the starting point and the endpoint that meets the height limit constraint are determined by the starting point selection rules and the endpoint selection rules respectively. The top layer of steel plate at the starting point stack is transferred to the top layer of the endpoint stack. If the transferred steel plate is not a selected target steel plate, a candidate steel plate is reselected as the stacking target and the stacking continues until all steel plates are taken out in order. If the transferred steel plate is a selected target steel plate, the current steel plate is used as the stacking target until the transferred steel plate is a selected target steel plate.
[0039] S4. Based on the stacking decision results, select the stacking optimization scheme with the individual with the minimum total stacking count in the initial population as the target.
[0040] The step of selecting an optimal stacking scheme based on the stacking decision results, with the individual in the initial population having the minimum total stacking count as the target, includes: S41. Count the total number of stack-shifting operations performed by all individuals in the initial population after executing the stack-shifting decision-making process; S42. The individual with the smallest total number of stacking operations from the total number of stacking operations counted in S41 is taken as the target, and the coding decision result, initialization rule and stacking decision result corresponding to the target are taken as the stacking optimization scheme.
[0041] The steel plate stacking optimization method with target stacking positions proposed in this embodiment has the following advantages: 1) With the goal of minimizing the total number of plate flipping operations, select steel plates of the same specifications as the target sequence in the initial stacking position; 2) With the goal of minimizing the total number of plate repositioning operations, decide which other initial stacking position to move the obstacle steel plate to; 3) Input the target stack position n, which can be adjusted in real time according to the availability of target stack positions on site. When there are plenty of target stack positions, a larger n can be input, which can effectively reduce the number of pallet repositioning operations. When the warehouse capacity is tight, a smaller n can be input, which can increase the number of operations within the margin of equipment operating capacity and accommodate the fluctuation of inventory in the warehouse area. 4) By solving the problem through algorithms, the blind manual reloading is avoided, which can effectively reduce the number of reloading operations in the storage area and improve the operational efficiency of the storage area; 5) By inputting the stack height limit parameter, the stack height can be effectively controlled, avoiding operational safety risks.
[0042] In this embodiment, firstly, the basic parameters and constraints for steel plate stacking at the target stack position are determined, avoiding the blindness of traditional manual operation or basic heuristic rules; secondly, the encoded decision results of the basic parameters for steel plate stacking under the stated stacking constraints are constructed, and the initialization rules corresponding to the encoded decision results are set, which can flexibly adapt to various complex working conditions and overcome the limitations of traditional methods in adapting to complex scenarios; furthermore, by generating an initial population of a preset size and combining it with preset stacking optimization rules to execute stacking decisions, comprehensive coverage and efficient exploration of multiple stacking schemes are achieved, which can fully The process involves identifying optimal stacking paths. Furthermore, based on the stacking decision results, the individual with the minimum total stacking count in the initial population is selected as the target to optimize the stacking process. This significantly reduces the total number of stacking operations and greatly improves the stacking efficiency of steel plates in scenarios with target stacking positions. Simultaneously, by embedding the coded decision results, initialization rules, and stacking decision results, the correctness and stability of the stacking process are ensured. This adapts to the steel plate transfer requirements under complex working conditions and effectively replaces the traditional operation method that relies on manual experience or a single rule, providing a reliable guarantee for the smooth operation of subsequent steel plate processing steps.
[0043] This embodiment also presents an example of the above method, see [link to example]. Figure 7 Initially, there are multiple initial stacking positions (each containing steel plates of different specifications and quantities) and one or more target stacking positions (initially empty). The goal is to transfer the target steel plates from the initial stacking positions to the target stacking positions in the desired order, while minimizing the number of re-stacking operations and meeting the stacking height restrictions.
[0044] like Figure 7 As shown, there are 5 initial stack positions, 2 target stack positions, and 1 target sequence. Figure 7 The numbers in the table represent the plate specification number. The stacking status is described as follows: ① Initial stacking status: init = [[6, 5, 1, 4, 3, 7], [], [2, 2, 1, 3], [5], [4, 3]]; ② Target steel plate sequence: end = [6, 4, 4, 1, 5, 2]; ③ Target stacking quantity: tarStackNum = 2.
[0045] Example 2 This embodiment verifies the initialization rules proposed in the above embodiments. The verification process includes: (a) Decoding process and correctness verification 5000 random cases are generated, with the case size being: number of steel plates ∈ [2, 130], and initial stack number of stacks ∈ [2, 40]. The target number of stack digits is ∈ [1, 8]. Run the decoding program to verify whether the program can achieve 100% error-free operation and ensure that the stacking process runs normally and correctly. The stacking process diagram can be drawn by outputting the stacking steps to check the correctness of the stacking process.
[0046] The execution results data "Correctness Result Data.xlsx", "Stacking Position Status Image", and "Status Change Process PDF" show that the decoding program and stacking process were completely correct in 5000 cases.
[0047] (II) Decoding Performance Verification Due to time constraints, the time allotted for solving the mathematical model for each experiment is limited to 1 hour.
[0048] Generate 150 cases of different sizes. Case size: number of steel plates = 10, initial stack number of stacks ∈ [2, 4], target stack number of stacks ∈ [1, 2].
[0049] Since optimization is not currently involved, the optimality of the encoding cannot be guaranteed. Therefore, when verifying decoding performance, the results of the current encoding and decoding cannot be directly compared with the results of the mathematical model. The solution is as follows: First, input random cases into the mathematical model to solve it. Then, deduce the encoding based on the solution results and use this encoding for decoding. The results are comparable. If the decoding result under the known optimal encoding is the same as the mathematical model result, then the decoding is guaranteed to be optimal for small-scale cases. The experimental data "Result Comparison Data.xlsx" shows that in the current case, height restrictions increase the number of stacking steps. Decoding still yields the optimal solution 100% of the time.
[0050] (III) Performance Verification of Initialization Rules Real-world scenario case data was generated. 800 steel plates were randomly selected from a pool and placed into 26 initial stacking positions. From these, 30 steel plates were randomly selected as target steel plates, with 4 target stacking positions. The steel plate thickness data ("steel plate height data.xlsx") was known. A total of 1000 cases were generated to verify the performance of the initialization rules. Each case was randomly initialized and run 10 times to avoid randomness.
[0051] The experimental results, "Real Case Verification.xlsx", show that the combination of the upper-level priority rule and the rule with similar number of layers in the initialization rule has the best performance, with a probability of 97.5% with a 5x increase.
[0052] Figure 8 This is a box plot, reflecting the performance of each initialization rule. (From...) Figure 8 and 9As shown, in the initialization rules, for the steel plate source decision, the solution obtained by the upper-level priority rule has better performance and is more stable; for the target stack allocation decision, the performance of the three rules is similar, among which the rule with similar number of layers and grouped together has the best performance.
[0053] Box plot introduction: A box plot, also known as a box-and-whisker plot, is a statistical graph used to display the distribution of a set of data. It can show the maximum, minimum, median, and upper and lower quartiles of a set of data, such as... Figure 10 As shown.
[0054] Example 3 This embodiment further illustrates the steel plate stacking optimization method with target stacking positions proposed in the above embodiments. The steel plate stacking optimization method with target stacking positions further includes the following steps: S5. The adaptive genetic algorithm is used to update and iterate the stacking optimization scheme to obtain the optimal stacking scheme.
[0055] The framework of the adaptive genetic algorithm described in S5 is as follows: Figure 11 As shown, Figure 11 The operators involved in the adaptive genetic algorithm are as follows: I. Evolutionary Operator Design The following content is all in the style of Figure 12 For example, the initial stack position state is init = [[1, 5, 6], [2, 2, 3], [4,4, 3]], the target steel plate sequence is end = [6, 3, 2, 4, 2], and the target stack number is tarStackNum = 2.
[0056] 1. Preprocessing: Locate the positions of all target steel plates on the initial stacking position.
[0057] As shown in the example, all target steel plate positions can be found: position = [(6, 1, 3), (3, 2, 3), (3, 3, 3), (2, 2, 1), (2, 2, 2), (4, 3, 1), (4, 3, 2)]. Here, (6, 1, 3) represents the target steel plate 6 in the 3rd layer of the initial stack position 1.
[0058] 2. Coding: Assign the target steel plate location source and destination target stack position in sequence according to the target sequence.
[0059] As shown in the example, a two-layer encoding of length 5 can be generated: chrom = [[1, 2, 4, 6, 5], [1,2, 2, 2, 1]]. The first layer of encoding is the target steel plate position source sequence [1, 2, 4, 6, 5], selecting the corresponding optional position of the target steel plate from the position according to the target sequence order; the second layer of encoding is the destination target stack position sequence [1, 2,2, 2, 1], randomly selecting the target stack position number. Figure 13 The diagram illustrates the encoding process. It's important to note that the first layer of encoding cannot be repeated. This is because only one target steel plate is placed at the same location on the initial stack; the same target steel plate cannot be placed on two target stacks simultaneously.
[0060] 3. Population initialization: The population is generated using a hybrid initialization method of "randomization + heuristic".
[0061] ① Random: Randomly generate feasible codes. ② Heuristic: Generate feasible codes according to rules, which can be divided into two categories: allocation of steel plate sources for the first layer of coding and allocation of target stack locations for the second layer of coding; generate rule-based codes by combining the two types of rules.
[0062] Regarding the allocation of steel plate sources: Rule 1: Upper layer priority rule: The steel plate with the highest layer number is selected as the target steel plate.
[0063] Rule 2: Location Concentration Rule: Prioritize steel plates in the same stack as the target steel plate. If no such plate exists, select the steel plate with the highest stack number as the target steel plate.
[0064] For target stacking allocation: Rule 3: Uniform distribution rule: When there are multiple stacks, try to make the number of steel plates distributed on the target stack consistent.
[0065] Rule 4: Grouping of similar layers: When there are multiple stacks, steel plates that are close to the top layer are assigned to the same stack.
[0066] Rule 5: Adjacent target sequence grouping rule: Distribute adjacent target steel plates evenly to the target stack positions.
[0067] Based on the above rules, six rule combinations can be obtained. Therefore, six individuals in the population are generated through the six rules, while the remaining individuals are generated randomly.
[0068] 4. Crossover: The crossover operator uses single-point crossover, and infeasible solutions generated after the crossover need to be repaired.
[0069] A crossover point is randomly selected from the two parents, and the gene segments following the crossover point are interchanged, as shown in Figure 14. However, the first layer of coding may produce infeasible solutions during this process, requiring solution repair, such as... Figure 15 As shown.
[0070] Repair process: The crossover codes are reversed, and the system checks from left to right for duplicate genes. If duplicate genes are found, they are replaced with their corresponding uncoded optional positions. Specific details are as follows... Figure 16 As shown.
[0071] 5. Mutation: Design mutation operators for each layer of encoding.
[0072] See Figure 17 For the location coding of the first layer of target steel plates, single-point mutation is used. First, replaceable genes in the coding are found, and these genes are replaced with other non-selected locations to ensure the feasibility of the solution.
[0073] See Figure 18 The second layer of target stack positions is assigned an encoding using exchange mutation.
[0074] 6. Neighborhood Structure: The following neighborhood structure was designed for each layer of encoding.
[0075] See Figure 19 Structure 1: Randomly select replaceable genes. If a gene has an unselected position closer to the top layer, then replace the gene with the position closest to the top layer among its selectable positions.
[0076] See Figure 20 Structure 2: Locate the stack position of each gene, randomly select a replaceable gene, and replace it with the same position as the stack positions of other genes.
[0077] See Figure 21 Structure 3: Record the current layer number of each gene. If there are genes with the same layer number but different stacking positions, randomly select a gene to replace the stacking position.
[0078] See Figure 22 Structure 4: Randomly select the gene that appears most frequently and replace it with other stack sites.
[0079] See Figure 23 Structure 5: If two genes are randomly and consecutively different, the latter gene is replaced with the former gene.
[0080] II. Q Learning Parameter Adjustment Design 1. Q-learning principle: Q-learning algorithm is a typical reinforcement learning algorithm, see [link to relevant documentation]. Figure 24The initial Q-value table is a zero-value matrix, with the number of columns equal to the number of actions and the number of rows equal to the number of states. After Q-learning executes an action selected based on the environment state, it receives a reward from the environment and updates the Q-value in the Q-value table based on the state, action, and reward, increasing the probability that Q-learning will select the most suitable action based on the current environment state. The Q-value is determined by the state, action, and reward. In the Q-value table, the larger the Q-value for a given state in each row, the greater the probability that the action corresponding to that Q-value will be selected.
[0081] 2. Q-value update formula:
[0082] in, In the current state Take action The Q value, where t is the current step size; This represents the learning rate. A higher learning rate indicates a greater correlation between the current reward and future rewards. The impact is significant; the more the agent can foresee future results, the slower the convergence speed will be. In order to be in The reward after a state performs an action; The discount factor represents the decision-maker's preference for the reward received. The larger the discount factor, the more farsighted the agent is, meaning that it considers the impact of the current choice on the future outcome. Indicates when the action When selected for execution by a strategy, in the state The expected Q value at that location; Indicates when an action is performed At that time, in the Q-value table The maximum expected Q value is obtained at the state.
[0083] 3. Q-learning steps: Step 1: Initialize the Q table; Step 2: Obtain the current state St of the algorithm; Step 3: Select the corresponding action At based on the state St; Step 4: Execute the action At; Step 5: Update the status St+1 and receive the reward rt; Step 6: If the algorithm reaches its termination state, i.e., the set number of iterations is reached, then terminate the process; otherwise, go to step 7. Step 7: Update the Q table; Step 8: Proceed to Step 2.
[0084] 4. State Design The three aspects are average fitness (favg), optimal fitness (fmax), and diversity (d).
[0085]
[0086]
[0087] In the formula, t is the number of iterations; c1, c2, and c3 represent the weighted coefficients of average fitness, optimal fitness, and diversity, respectively, i.e., their importance in the state setting, and c1 + c2 + c3 = 1. Since average fitness and diversity are beneficial to improving the overall quality of the population and obtaining excellent individuals, the average fitness coefficient c1 and the diversity coefficient c3 should account for a larger proportion than the optimal fitness c2. Therefore, c1, c2, and c3 are set to 0.35, 0.3, and 0.35, respectively.
[0088] The state values calculated using formula S are very accurate, so the population states in each iteration of the algorithm are not exactly the same. If the state values of each iteration are counted and recorded in the Q-value table, the amount of data will be too large, and the differences between similar states are not large, resulting in useless data records and reducing the search speed and accuracy. Therefore, in order to increase the accuracy of the Q-learning algorithm, 20 state values are set, i.e., the state set S=[s(1), s(2), ..., s(20)]. The interval value of S is set to 0.05. When S∈[0, 0.05], S=s(1), when S∈[0.05, 0.1], S=s(2), and so on. By setting 20 states, the learning accuracy of the Q-learning algorithm is improved, and the large amount of data of population states in each iteration is avoided, thereby improving the convergence speed and accuracy of the Q-learning algorithm.
[0089] 5. Motion Design Actions can be designed in the form of (-1, 1), where the three elements correspond to the crossover rate and the mutation rate, respectively; 0 represents no change, 1 represents an increase, and -1 represents a decrease; and the scale of change for both is 0.05. Therefore, nine actions can be obtained: (0, 0), (1, 0), (-1, 0), (0, 1), (0, -1), (1, 0), (1, 1), (-1, 1), (-1, -1).
[0090] 6. Reward Design When the algorithm executes the action provided by the Q-learning algorithm, it generates a reward. The sign of the reward indicates whether the action has played a role in optimizing the population. Therefore, the sign of the reward is determined by the population's best fitness and average fitness.
[0091]
[0092] in, Let ci represent the fitness of the i-th individual in generation t. c4 and c5 represent the weighted coefficients of the reward rmax for optimal fitness and the reward ravg for average fitness, respectively, indicating their relative importance. Since average fitness represents the overall quality of the population, c4 should be less than c5. This paper sets the weighted coefficients for c4 and c5 to 0.45 and 0.55, respectively.
[0093] Example 4 See Figure 25 This embodiment also proposes a computer device, including: a processor 11, a memory 12, a communication interface 13 and a communication bus 14, wherein the processor 11, the memory 12 and the communication interface 13 communicate with each other through the communication bus 14; The processor 11, memory 12, and communication interface 13 communicate with each other via a communication bus 14. The communication interface 13 is used for network communication with other devices, such as clients or other servers. The processor 11 executes executable instructions 15, specifically performing operations of a steel plate stacking optimization method with target stack positions. Specifically, the executable instructions 15 may include program code. The processor 11 may be a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to implement embodiments of the present invention. The computer device includes one or more processors, which may be processors of the same type, such as one or more CPUs; or processors of different types, such as one or more CPUs and one or more ASICs.
[0094] Memory 12 is used to store executable instructions 15. Memory 12 may include high-speed RAM memory, and may also include non-volatile memory, such as at least one disk storage device.
[0095] Executable instruction 15 can be invoked by processor 11 to cause the computer device to perform the following operations: S1. Determine the foundation parameters and stacking constraints for steel plates with target stacking positions; S2. Construct the coding decision results of the basic parameters of the steel plate stacking under the stacking constraint, and set the initialization rules corresponding to the coding decision results; S3. Generate an initial population of a preset size based on the initialization rules, and perform a stacking decision on the initial population according to the preset steel plate stacking optimization rules to obtain the stacking decision result; S4. Based on the stacking decision results, select the stacking optimization scheme with the individual with the minimum total stacking count in the initial population as the target.
[0096] In this embodiment, firstly, the basic parameters and constraints for steel plate stacking at the target stack position are determined, avoiding the blindness of traditional manual operation or basic heuristic rules; secondly, the encoded decision results of the basic parameters for steel plate stacking under the stated stacking constraints are constructed, and the initialization rules corresponding to the encoded decision results are set, which can flexibly adapt to various complex working conditions and overcome the limitations of traditional methods in adapting to complex scenarios; furthermore, by generating an initial population of a preset size and combining it with preset stacking optimization rules to execute stacking decisions, comprehensive coverage and efficient exploration of multiple stacking schemes are achieved, which can fully The process involves identifying optimal stacking paths. Furthermore, based on the stacking decision results, the individual with the minimum total stacking count in the initial population is selected as the target to optimize the stacking process. This significantly reduces the total number of stacking operations and greatly improves the stacking efficiency of steel plates in scenarios with target stacking positions. Simultaneously, by embedding the coded decision results, initialization rules, and stacking decision results, the correctness and stability of the stacking process are ensured. This adapts to the steel plate transfer requirements under complex working conditions and effectively replaces the traditional operation method that relies on manual experience or a single rule, providing a reliable guarantee for the smooth operation of subsequent steel plate processing steps.
[0097] Obviously, the above embodiments of the present invention are merely examples for clearly illustrating the present invention, and are not intended to limit the implementation of the present invention. Those skilled in the art can make other variations or modifications based on the above description. It is neither necessary nor possible to exhaustively describe all embodiments here. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the scope of protection of the claims of the present invention.
Claims
1. A method for optimizing steel plate stacking with target stacking positions, characterized in that, Includes the following steps: S1. Determine the foundation parameters and stacking constraints for steel plates with target stacking positions; S2. Construct the coding decision results of the basic parameters of the steel plate stacking under the stacking constraint, and set the initialization rules corresponding to the coding decision results; S3. Generate an initial population of a preset size based on the initialization rules, and perform a stacking decision on the initial population according to the preset steel plate stacking optimization rules to obtain the stacking decision result; S4. Based on the stacking decision results, select the stacking optimization scheme with the individual with the minimum total stacking count in the initial population as the target.
2. The optimized method for steel plate stacking with target stacking positions according to claim 1, characterized in that, The basic parameters for steel plate stacking include multiple initial stack positions, one or more target stack positions, stack height limit values, target steel plates, candidate steel plates, obstacle steel plates, empty stack positions, starting stack positions, and ending stack positions. The initial stack positions contain steel plates of different specifications and quantities, and the target stack positions have sequential constraints on the steel plates. The stacking constraints include the following conditions: Temporary storage of steel plates is not allowed at the target stacking location; that is, only inflow is permitted, and no outflow is permitted. The barrier steel plates do not need to be returned to their original stack position during the stacking process; Each time a stack is repositioned, only one steel plate can be moved; and it can only be taken from the top layer of one stack and moved to the top layer of another stack.
3. The optimized method for steel plate stacking with target stacking positions according to claim 2, characterized in that, The coding decision results include steel plate source selection decision and target stacking location allocation decision; the steel plate source selection decision is that if there are multiple steel plates with the same plate specification number in the initial stacking location, the target steel plate needs to be determined from the steel plates with the same plate specification number; the target stacking location allocation decision is that the target steel plates need to determine their respective final destination stacking locations.
4. The optimized method for steel plate stacking with target stacking positions according to claim 3, characterized in that, The initialization rules include steel plate source selection decision initialization rules and target stacking location allocation decision initialization rules. The steel plate source selection decision initialization rules include: Upper layer priority rule: The steel plate with the highest layer number is selected as the target steel plate first; Location concentration rule: Prioritize steel plates in the same stack as the target steel plate; if none are found, then select... Select the steel plate with the highest number of layers as the target steel plate; The target stacking location allocation decision initialization rules include: Uniform distribution rule: When there are multiple stack positions, try to allocate the number of steel plates to the target stack position as much as possible. Consistent quantity; Grouping rules for similar stacks: When there are multiple stacks, steel plates that are close to the top layer are assigned to the same stack. Adjacent target sequence grouping rule: Evenly distribute adjacent target steel plates to the target stack positions.
5. The optimized method for steel plate stacking with target stacking positions according to claim 4, characterized in that, The initial population consists of several individuals generated by a combination of the steel plate source selection decision initialization rule and the target stacking position allocation decision initialization rule, while the remaining individuals in the initial population are generated randomly.
6. The optimized method for steel plate stacking with target stacking positions according to claim 4, characterized in that, The steel plate stacking optimization rules include the following rules: Stack height constraint rule: The height of any stack position must not exceed the height limit during the stacking process; Empty stack priority rule: Prioritize transfer to empty stack positions; Candidate steel plate selection rules: If all the steel plates above the stack where the candidate steel plate is located can be poured into other stacks, and all the obstructing steel plates of the candidate steel plate are the target steel plate, then the candidate steel plate is selected as the selected steel plate; otherwise, the candidate steel plate that is closer to the top layer in the initial stack is selected as the selected steel plate. Starting point selection rules: If there is an empty stack or the number of initial stacks is less than the first preset threshold, the stack containing the selected steel plate is directly selected as the starting stack; otherwise, the reloading cost of each initial stack is calculated, and the stack with the lowest reloading cost is selected as the starting point. If a steel plate in a certain stack cannot be moved to another stack due to height restrictions, the reloading cost of that stack is set to the second preset threshold; wherein the reloading cost... The calculation formula is as follows: in, This indicates that a steel plate has been selected. Indicates the stack position. This indicates the selected stack location of the steel plate; This indicates the number of steps required to empty the current stack location. This indicates the number of steps required to remove the obstacle steel plate from the selected steel plate; Endpoint selection rules: Exclude the starting stack and the stack where the selected steel plate is located, and the remaining stacks are the optional endpoint stacks.
7. The optimized method for steel plate stacking with target stacking positions according to claim 6, characterized in that, The step of performing a stacking decision on the initial population according to a preset steel plate stacking optimization rule to obtain the stacking decision result includes: S31. For individuals in the initial population, candidate steel plates are selected as stacking targets according to the candidate steel plate selection rules, and the starting stack position and the ending stack position are selected according to the endpoint selection rules respectively. S32. Determine whether the endpoint stack meets the height limit constraint. If yes, transfer the top layer steel plate of the starting stack in the initial population to the top layer of the endpoint stack and execute S33; otherwise, return to S31. S33. Determine whether the transferred steel plate is the selected target steel plate. If yes, the selected target steel plate has been successfully stacked. Continue to use the current steel plate as the stacking target until all transferred steel plates are selected target steel plates. Output the stacking decision result that all stacking is successful. If not, return to S31.
8. The optimized method for steel plate stacking with target stacking positions according to claim 7, characterized in that, The step of selecting an optimal stacking scheme based on the stacking decision results, with the individual in the initial population having the minimum total stacking count as the target, includes: S41. Count the total number of stack-shifting operations performed by all individuals in the initial population after executing the stack-shifting decision-making process; S42. The individual with the smallest total number of stacking operations from the total number of stacking operations counted in S41 is taken as the target, and the coding decision result, initialization rule and stacking decision result corresponding to the target are taken as the stacking optimization scheme.
9. The method for optimizing steel plate stacking with target stacking positions according to any one of claims 1-8, characterized in that, It also includes the following steps: S5. The adaptive genetic algorithm is used to update and iterate the stacking optimization scheme to obtain the optimal stacking scheme.
10. A computer device, characterized in that, include: The processor, memory, communication interface, and communication bus are provided, wherein the processor, memory, and communication interface communicate with each other via the communication bus. The memory is used to store at least one executable instruction that causes the processor to perform the operation of the steel plate stacking optimization method with target stacking position as described in any one of claims 1-8.