Off-line mixed stacking method, device and equipment

By generating and optimizing the box group sequence and combining with robot control, automatic and efficient offline mixing of boxes of various sizes and specifications is achieved, solving the problem of inefficient palletization efficiency in the existing technology, and improving logistics turnover efficiency and carrier utilization.

CN119873399AActive Publication Date: 2025-04-25HANGZHOU HIKROBOT TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202411389567.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-30
Publication Date
2025-04-25
Estimated Expiration
2044-09-30

AI Technical Summary

Technical Problem

The prior art is difficult to achieve automatic and efficient offline mixing of boxes of various sizes and specifications, resulting in insufficiency of palletizing in logistics and warehousing scenarios.

Method used

By generating multiple initial box group sequences, optimizing according to suitability, selecting the optimal box group sequence, and automatically palletizing the box group using a robot control device.

Benefits of technology

Automatic and efficient offline mixing of boxes of various sizes is realized, logistics turnover efficiency and carrier utilization are improved, and calculation time-consuming and risk of palletizing process is reduced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119873399A_ABST
    Figure CN119873399A_ABST
Patent Text Reader

Abstract

The invention provides an off-line mixed stacking method, device and equipment. The method comprises the steps that a target box body group sequence corresponding to an initial box body group sequence is determined; wherein if it is determined that the initial box group sequence is optimized, the initial box group sequence is operated to obtain an optimized box group sequence; if the fitness of the optimized box group sequence is superior to that of the initial box group sequence, determining the optimized box group sequence as a target box group sequence; if the fitness of the optimized box group sequence is not superior to that of the initial box group sequence, determining the initial box group sequence as a target box group sequence; selecting the target box group sequence with the optimal fitness as an optimal box group sequence; and based on the arrangement sequence of each box body group in the optimal box body group sequence, controlling the robot to place the plurality of box body groups on the bearing object in sequence. According to the scheme, the utilization rate of the bearing object can be increased.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of palletizing technology, and in particular to an offline mixed palletizing method, device and equipment. Background Art

[0002] In logistics and warehousing scenarios, palletizing is an important application with a large number of application requirements. In the palletizing process, mixed coding (i.e., mixed palletizing) is to stack (place) boxes of different sizes one by one on the carrier (such as pallets or trays, etc.). Mixed coding can include online mixing and offline mixing. Online mixing refers to the palletizing process in which the palletizing order cannot be known in advance and the palletizing position is planned in real time according to the box conditions. Offline mixing refers to the palletizing process in which the palletizing order is known in advance and the palletizing position is planned in advance according to the box conditions.

[0003] For boxes of various sizes and specifications in a palletizing order, there is no effective way to achieve offline code mixing for these boxes, that is, how to achieve automatic and efficient offline code mixing in the related art. Summary of the invention

[0004] The present application provides an off-line mixed palletizing method, the method comprising:

[0005] Generate K initial box group sequences based on the acquired multiple box groups; for each initial box group sequence, the initial box group sequence includes multiple box groups arranged in a preset order; wherein the order of the multiple box groups in different initial box group sequences is different;

[0006] Determine a target box group sequence corresponding to each initial box group sequence; wherein, for each initial box group sequence, if it is determined that the initial box group sequence is not to be optimized, the initial box group sequence is determined as the target box group sequence; if it is determined that the initial box group sequence is to be optimized, the initial box group sequence is operated to obtain an optimized box group sequence, and the operation is used to adjust the order of multiple box groups in the initial box group sequence; if the fitness of the optimized box group sequence is better than the fitness of the initial box group sequence, the optimized box group sequence is determined as the target box group sequence; if the fitness of the optimized box group sequence is not better than the fitness of the initial box group sequence, the initial box group sequence is determined as the target box group sequence; wherein the fitness is used to indicate the quality of the box group sequence, and the better the box group sequence is, the more box groups in the box group sequence can be placed to carry objects;

[0007] Select the target box group sequence with the best fitness as the optimal box group sequence;

[0008] Based on the arrangement order of each box group in the optimal box group sequence, the robot is controlled to place multiple box groups in the optimal box group sequence on the carrier in sequence.

[0009] The present application provides an off-line mixed palletizing device, the device comprising:

[0010] A generating module, configured to generate K initial box group sequences based on the acquired multiple box groups; for each initial box group sequence, the initial box group sequence includes multiple box groups arranged in a preset order; wherein the order of the multiple box groups in different initial box group sequences is different;

[0011] A determination module is used to determine a target box group sequence corresponding to each initial box group sequence; wherein, for each initial box group sequence, if it is determined that the initial box group sequence is not to be optimized, the initial box group sequence is determined as the target box group sequence; if it is determined that the initial box group sequence is to be optimized, the initial box group sequence is operated to obtain an optimized box group sequence, and the operation is used to adjust the order of multiple box groups in the initial box group sequence; if the fitness of the optimized box group sequence is better than the fitness of the initial box group sequence, the optimized box group sequence is determined as the target box group sequence; if the fitness of the optimized box group sequence is not better than the fitness of the initial box group sequence, the initial box group sequence is determined as the target box group sequence; wherein the fitness is used to indicate the quality of the box group sequence, and the better the box group sequence is, the more box groups in the box group sequence can be placed to carry objects;

[0012] A selection module is used to select a target box group sequence with the best fitness as the optimal box group sequence;

[0013] The control module is used to control the robot to place multiple box groups in the optimal box group sequence on the load in sequence based on the arrangement order of each box group in the optimal box group sequence.

[0014] The present application provides a control device, comprising: a processor and a machine-readable storage medium, wherein the machine-readable storage medium stores machine-executable instructions that can be executed by the processor; the processor is used to execute the machine-executable instructions to implement the offline mixed palletizing method of the above example of the present application.

[0015] The present application provides a control system for offline mixed palletizing, the control system comprising a control device and a robot; wherein the control device is used to execute the offline mixed palletizing method of the above example of the present application to obtain an optimal box group sequence; the control device is also used to send a scheduling instruction for each box group to the robot based on the arrangement order of each box group in the optimal box group sequence;

[0016] The robot is used for placing each box group on the carrier based on the scheduling instruction when receiving the scheduling instruction for the box group.

[0017] The present application provides a machine-readable storage medium, which stores machine-executable instructions that can be executed by a processor; wherein the processor is used to execute the machine-executable instructions to implement the offline mixed palletizing method of the above example of the present application.

[0018] The present application provides a computer program product, including a computer program. When the computer program is executed by a processor, the offline mixed palletizing method of the above example of the present application is implemented.

[0019] As can be seen from the above technical solutions, in the embodiments of the present application, automatic and efficient offline code mixing can be achieved for boxes of various sizes and specifications, saving manpower while improving logistics turnover efficiency. The optimal placement of each box can be ensured, thereby improving the utilization rate of the load and avoiding the occurrence of stacking types that cannot be used in actual production. The stability of the stacking type can be improved, the stacking efficiency can be improved, the production efficiency can be improved, the offline code mixing calculation efficiency can be improved, the calculation time can be reduced, and the safety, practicality and stability of actual code mixing and stacking can be improved. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] Figure 1 It is a schematic flow chart of an offline mixed palletizing method in one embodiment of the present application;

[0021] Figure 2 It is a schematic flow chart of an offline mixed palletizing method in one embodiment of the present application;

[0022] Figure 3A This is a schematic diagram of a box group formed along the length direction of the box in one embodiment of the present application;

[0023] Figure 3B This is a schematic diagram of a box group combined along the width direction of the box in one embodiment of the present application;

[0024] Figure 4 is a schematic diagram of a cabinet group optimization step in one embodiment of the present application;

[0025] Figure 5A is a schematic diagram of a first intersection position and a second intersection position in one embodiment of the present application;

[0026] Figure 5B is a schematic diagram of exchanging a cross-box group in one embodiment of the present application;

[0027] Figure 5C is a schematic diagram of the mapping relationship between cabinet groups in one embodiment of the present application;

[0028] Figure 5D is a schematic diagram of adjusting an uncrossed cabinet group in one embodiment of the present application;

[0029] Figure 6 It is a structural schematic diagram of an offline mixed palletizing device in one embodiment of the present application;

[0030] Figure 7 It is a hardware structure diagram of an electronic device in one embodiment of the present application. DETAILED DESCRIPTION

[0031] In the embodiment of the present application, an offline mixed palletizing method is proposed, which can be applied to control devices (such as personal computers, servers, laptops, smart terminals, etc.), see Figure 1 FIG. 1 is a schematic diagram of the process of the off-line mixed palletizing method, which may include:

[0032] Step 101: Generate K initial box group sequences based on the acquired multiple box groups. For each initial box group sequence, the initial box group sequence includes multiple box groups arranged in a preset order. The order of the multiple box groups in different initial box group sequences is different.

[0033] Exemplarily, a pre-sorting method (such as one pre-sorting method or multiple pre-sorting methods) can be used to sort the acquired multiple bin groups, and K initial bin group sequences are generated based on the sorting result. When the multiple bin groups are sorted based on multiple pre-sorting methods, multiple sequence sets are obtained, and for each sequence set, the sequence set includes K initial bin group sequences, and subsequent steps are performed on each sequence set.

[0034] Step 102, determining a target box group sequence corresponding to each initial box group sequence; wherein, for each initial box group sequence, if it is determined that the initial box group sequence is not to be optimized, the initial box group sequence is determined as the target box group sequence; if it is determined that the initial box group sequence is to be optimized, the initial box group sequence is operated to obtain an optimized box group sequence, and the operation is used to adjust the order of multiple box groups in the initial box group sequence; if the fitness of the optimized box group sequence is better than the fitness of the initial box group sequence, the optimized box group sequence can be determined as the target box group sequence; if the fitness of the optimized box group sequence is not better than the fitness of the initial box group sequence, the initial box group sequence can be determined as the target box group sequence. wherein, the fitness is used to indicate the quality of the box group sequence, if the box group sequence is better, it means that there are more box groups in the box group sequence that can be placed in the load; conversely, if the box group sequence is worse, it means that there are fewer box groups in the box group sequence that can be placed in the load. For example, if the fitness value is larger, it means that the box group sequence is better.

[0035] Step 103: Select the target box group sequence with the best fitness as the optimal box group sequence.

[0036] Step 104 : Based on the arrangement order of each box group in the optimal box group sequence, control the robot to place multiple box groups in the optimal box group sequence on the load in sequence.

[0037] Exemplarily, before generating K initial box group sequences based on the multiple box groups that have been acquired, the process may also include: acquiring order information, which may include attribute information of multiple boxes that need to be stacked on a carrier, and the attribute information may include box length, box width, and box load-bearing capacity.

[0038] Multiple box groups are obtained based on the attribute information of each box; wherein the boxes in the same box group have the same box length and the same box load-bearing capacity, and the boxes in the box group are combined along the box length direction, and the number of boxes in the box group is determined based on the width of the load and the box length; or, the boxes in the same box group have the same box width and the same box load-bearing capacity, and the boxes in the box group are combined along the box width direction, and the number of boxes in the box group is determined based on the length of the load and the box width.

[0039] Exemplarily, if it is determined to optimize the initial bin group sequence, then the initial bin group sequence is operated to obtain an optimized bin group sequence, which may include but is not limited to: generating a first random probability and a second random probability for the initial bin group sequence; if the first random probability satisfies a configured cross-optimization condition and the second random probability does not satisfy a configured mutation optimization condition, then it is determined to optimize the initial bin group sequence, and a crossover operation is performed on the initial bin group sequence to obtain an optimized bin group sequence; if the first random probability does not satisfy the configured cross-optimization condition and the second random probability satisfies the configured mutation optimization condition, then it is determined to optimize the initial bin group sequence, and a mutation operation is performed on the initial bin group sequence to obtain an optimized bin group sequence; if the first random probability satisfies the configured cross-optimization condition and the second random probability satisfies the configured mutation optimization condition, then it is determined to optimize the initial bin group sequence, and a crossover operation is performed on the initial bin group sequence to obtain a bin group sequence after the crossover operation, and a mutation operation is performed on the bin group sequence after the crossover operation to obtain an optimized bin group sequence.

[0040] In addition, if the first random probability does not satisfy the configured cross optimization condition and the second random probability does not satisfy the configured mutation optimization condition, it is determined that the initial cabinet group sequence is not optimized.

[0041] Exemplarily, only the initial box group sequence may be cross-linked. For example, if it is determined that the initial box group sequence is to be optimized, then the initial box group sequence is cross-linked to obtain the optimized box group sequence, which may include but is not limited to: generating a first random probability for the initial box group sequence; if the first random probability satisfies the configured cross-optimization condition, then it is determined that the initial box group sequence is to be optimized, and the initial box group sequence is cross-linked to obtain the optimized box group sequence. In addition, if the first random probability does not satisfy the configured cross-optimization condition, then it is determined that the initial box group sequence is not to be optimized.

[0042] Exemplarily, only the initial box group sequence may be mutated. For example, if it is determined that the initial box group sequence is to be optimized, then the initial box group sequence is mutated to obtain an optimized box group sequence, which may include but is not limited to: generating a second random probability for the initial box group sequence; if the second random probability satisfies the configured mutation optimization condition, then it is determined that the initial box group sequence is to be optimized, and the initial box group sequence is mutated to obtain an optimized box group sequence. In addition, if the second random probability does not satisfy the configured mutation optimization condition, then it is determined that the initial box group sequence is not to be optimized.

[0043] Exemplarily, the process of performing a crossover operation on the initial box group sequence to obtain an optimized box group sequence includes but is not limited to: selecting a paired box group sequence of the initial box group sequence from K initial box group sequences; dividing the initial box group sequence into a first box group to be crossed and a first uncrossed box group, and dividing the paired box group sequence into a second box group to be crossed and a second uncrossed box group; swapping the first box group to be crossed and the second box group to be crossed; adjusting the first uncrossed box group using a mapping relationship between the first box group to be crossed and the second box group to be crossed to obtain an optimized box group sequence of the initial box group sequence; adjusting the second uncrossed box group using a mapping relationship, and updating the adjusted box group sequence to the initial box group sequence or the target box group sequence corresponding to the paired box group sequence.

[0044] Exemplarily, dividing the initial box group sequence into a first box group to be crossed and a first uncrossed box group, and dividing the paired box group sequence into a second box group to be crossed and a second uncrossed box group may include but is not limited to: obtaining a random first crossing position and a random second crossing position; determining the box group located between the first crossing position and the second crossing position in the initial box group sequence as the first box group to be crossed, and determining the remaining box groups as the first uncrossed box group; determining the box group located between the first crossing position and the second crossing position in the paired box group sequence as the second box group to be crossed, and determining the remaining box groups as the second uncrossed box group.

[0045] Exemplarily, the process of performing a mutation operation on the initial bin group sequence to obtain an optimized bin group sequence may include, but is not limited to: exchanging sorting positions of any two bin groups in the initial bin group sequence to obtain an optimized bin group sequence of the initial bin group sequence.

[0046] Exemplarily, the process of determining the fitness of the initial box group sequence may include but is not limited to: based on the arrangement order of each box group in the initial box group sequence, simulating the placement of multiple box groups in the initial box group sequence on the load in sequence; determining the load utilization rate and the distance between box groups based on the simulated placement position of each box group; wherein the load utilization rate is the total volume of all boxes stacked on the load divided by the product of the length and width of the load; the distance between box groups is the average value or sum of the distances between all boxes stacked on the load; and determining the fitness of the initial box group sequence based on the load utilization rate and the distance between box groups. wherein, the greater the load utilization rate, the greater the fitness, that is, the fitness is proportional to the load utilization rate; the smaller the distance between box groups, the greater the fitness, that is, the fitness is inversely proportional to the distance between box groups.

[0047] As can be seen from the above technical solutions, in the embodiments of the present application, automatic and efficient offline code mixing can be achieved for boxes of various sizes and specifications, saving manpower while improving logistics turnover efficiency. The optimal placement of each box can be ensured, thereby improving the utilization rate of the load and avoiding the occurrence of stacking types that cannot be used in actual production. The stability of the stacking type can be improved, the stacking efficiency can be improved, the production efficiency can be improved, the offline code mixing calculation efficiency can be improved, the calculation time can be reduced, and the safety, practicality and stability of actual code mixing and stacking can be improved.

[0048] The technical solution of the embodiment of the present application is described below in conjunction with specific application scenarios.

[0049] In logistics warehousing scenarios, mixed coding (i.e., mixed palletizing) is the process of palletizing boxes of different sizes one by one on a carrier (such as a pallet or tray, etc.). Mixed coding includes online mixing and offline mixing. Offline mixing refers to the process of planning the palletizing position in advance based on the situation of the boxes after knowing the palletizing order in advance. For boxes of various sizes in a palletizing order, how to achieve offline mixing of these boxes, that is, how to achieve automatic and efficient offline mixing, there is no effective implementation method in the relevant technology.

[0050] In view of the above findings, an offline mixed palletizing method is proposed in an embodiment of the present application, which can realize automatic and efficient offline mixed palletizing of boxes of various sizes and specifications, thereby improving the stability of the pallet shape.

[0051] An offline mixed palletizing method is proposed in an embodiment of the present application, which can be applied to electronic equipment. The electronic equipment can be a control device of a robot (such as a robot for realizing a palletizing function), used to control the robot to palletize boxes onto a carrier, or it can be other equipment, without limitation.

[0052] See also Figure 2 As shown, it is a schematic flow chart of an offline mixed palletizing method, which may include steps such as box group generation (constructive processing), pre-sorting, box group optimization and post-processing.

[0053] After inputting the order information, the order information includes the attribute information of multiple boxes that need to be stacked on the carrier. In the box group generation step, the boxes can be combined into blocks along the length and width directions according to the attribute information of the boxes (such as box length, box width and box load-bearing capacity) to form multiple box groups.

[0054] In the pre-sorting step, multiple pre-sorting methods may be used to sort multiple box groups, and for each pre-sorting method, K initial box group sequences are generated based on the sorting result corresponding to the pre-sorting method.

[0055] In the box group optimization step, an optimal box group sequence search can be performed for each initial box group sequence to obtain a target box group sequence corresponding to the initial box group sequence. When searching for the optimal box group sequence, the load utilization rate and the distance between box groups can be selected as fitness.

[0056] In the post-processing step, the box group sequence with the best fitness can be selected, and based on the arrangement order of each box group in the box group sequence, multiple box groups in the box group sequence are placed on the carrier in sequence. When multiple box groups in the box group sequence are placed on the carrier in sequence, the box group can also be split into multiple single boxes, and the placement posture corresponding to each box is output.

[0057] The following describes the steps of cabinet group generation, pre-sorting, cabinet group optimization and post-processing.

[0058] First, a box group generation step: In the box group generation step, multiple box groups can be obtained according to the attribute information of each box (such as box length, box width and box load-bearing capacity).

[0059] Exemplarily, the step of generating a cabinet group may include the following steps:

[0060] Step S11, obtaining order information, which may include attribute information of multiple boxes that need to be stacked on the load, and the attribute information may include but is not limited to box length, box width, box height and box load-bearing capacity. The attribute information of different boxes may be the same or different. For example, the box lengths of different boxes may be the same or different. The box widths of different boxes may be the same or different. The box heights of different boxes may be the same or different. The box load-bearing capacity of different boxes may be the same or different.

[0061] Exemplarily, for each box in the order information, the box needs to be stacked on a carrier, and the carrier may be a pallet or a tray, etc., and there is no limitation on the type of the carrier.

[0062] Step S12: Divide all cabinets into multiple cabinet groups based on the attribute information of each cabinet.

[0063] In a possible implementation, for boxes of the same type (such as box length and box load-bearing capacity), they can be combined into box groups along the box length direction. Based on this, the boxes in the same box group have the same box length and the same box load-bearing capacity, and the boxes in the box group are combined along the box length direction. Figure 3AIt is a schematic diagram of a box group formed along the length direction of the box. Obviously, for multiple boxes in the same box group, the box lengths of these boxes are the same, the box load-bearing capacity of these boxes is the same, the box widths of different boxes may be the same or different, and the box heights of different boxes may be the same or different.

[0064] In order to ensure the optimality of the palletizing effect, when determining the number of boxes in a box group, the number of boxes in the box group can be determined based on the width of the load and the box length (i.e., the box length of any box in the box group). For example, the number of boxes in the box group is half of the width of the load divided by the rounded-up value (or rounded-down value) of the box length. Of course, this is just an example of determining the number of boxes, and there is no limitation on the method of determining the number of boxes, as long as it is related to the width and length of the load.

[0065] The number of boxes in the box group indicates the maximum number of boxes, that is, the box group can be combined with a maximum of this number of boxes. Assuming that the number of boxes is 6, it means that the box group can be combined with a maximum of 6 boxes.

[0066] For example, assuming that there are 15 boxes, these boxes are divided into 4 box groups, box group a1 includes box 1-box 6 (these boxes have the same box length and the same box load), box group a2 includes box 7-box 12, box group a3 includes box 13 and box 14 (these boxes have the same box length and the same box load), and box group a4 includes box 15. Since box 15 has a different box length (or box load) from box 13, box 15 cannot be divided into box group a3.

[0067] In a possible implementation, for boxes of the same type (such as box width and box load-bearing capacity), they can be combined into box groups along the box width direction. Based on this, the boxes in the same box group have the same box width and the same box load-bearing capacity, and the boxes in the box group are combined along the box width direction. Figure 3B It is a schematic diagram of a box group formed along the box width direction. Obviously, for multiple boxes in the same box group, the box widths of these boxes are the same, the box load-bearing capacity of these boxes is the same, the box lengths of different boxes may be the same or different, and the box heights of different boxes may be the same or different.

[0068] In order to ensure the optimality of the palletizing effect, when determining the number of boxes in a box group, the number of boxes in the box group can be determined based on the length of the load and the box width (i.e., the box width of any box in the box group). For example, the number of boxes in the box group is half of the length of the load divided by the rounded-up value (or rounded-down value) of the box width. Of course, this is just an example of determining the number of boxes, and there is no limitation on the method of determining the number of boxes, as long as it is related to the length of the load and the box width.

[0069] The number of boxes in the box group indicates the maximum number of boxes, that is, the box group can be combined with a maximum of this number of boxes. Assuming that the number of boxes is 5, it means that the box group can be combined with a maximum of 5 boxes.

[0070] In summary, all boxes in the order information can be divided into multiple box groups.

[0071] Second, a pre-sorting step. In the pre-sorting step, K initial box group sequences can be obtained based on multiple box groups, K can be a positive integer greater than 1, and the value of K can be configured based on experience. For each initial box group sequence, the initial box group sequence includes multiple box groups arranged in a preset order. The order of the multiple box groups in different initial box group sequences is different.

[0072] In a possible implementation, a plurality of bin groups may be sorted in a pre-sorting manner, and based on the sorting result, K initial bin group sequences may be generated. These K initial bin group sequences are referred to as a sequence set, and a bin group optimization step may be performed on the sequence set (i.e., a sequence set).

[0073] For example, due to the large number of box groups, if all initial box group sequences are generated by permutation and combination, the number of initial box group sequences is large, resulting in a long time for generating the initial box group sequences and low efficiency of offline mixed palletizing. If fitness calculation is performed for all initial box group sequences, a large amount of computing resources will be consumed, and it will take a long time to complete offline mixed palletizing, which is inefficient.

[0074] Based on this, in this embodiment, only K initial box group sequences can be generated, K can be a pre-configured fixed value, and the value of K is relatively small. In this way, only a small number of initial box group sequences can be generated, so that the generation time of the initial box group sequences is short, and the offline mixed palletizing efficiency is high. By performing fitness calculation on only a small number of initial box group sequences, computing resources can be saved, and the offline mixed palletizing efficiency is high.

[0075] For example, assuming that there are box group a1, box group a2, box group a3 and box group a4, these box groups can be sorted in a pre-sorting manner. Assuming that the sorting result is box group a1, box group a4, box group a3 and box group a2, on this basis, K initial box group sequences can be generated.

[0076] Regarding how to generate K initial bin group sequences based on the sorting result, there is no limitation in this embodiment, and a certain algorithm may be used to obtain the K initial bin group sequences. For example, the initial bin group sequence b1 includes bin group a1, bin group a4, bin group a3, and bin group a2 in sequence, the initial bin group sequence b2 includes bin group a1, bin group a4, bin group a2, and bin group a3 in sequence, the initial bin group sequence b3 includes bin group a1, bin group a2, bin group a3, and bin group a4 in sequence, and so on.

[0077] In a possible implementation, multiple pre-sorting methods can be used to sort multiple box groups. Based on the sorting result corresponding to each pre-sorting method, K initial box group sequences corresponding to the pre-sorting method can be generated. These K initial box group sequences are called the sequence set corresponding to the pre-sorting method, and the box group optimization step is performed on the sequence sets corresponding to the multiple pre-sorting methods (i.e., multiple sequence sets).

[0078] For example, assuming that there are bin group a1, bin group a2, bin group a3 and bin group a4, these bin groups can be sorted using pre-sorting method 1. Assuming that the sorting results are bin group a1, bin group a4, bin group a3 and bin group a2, on this basis, K initial bin group sequences can be generated, and these K initial bin group sequences are called sequence set 1. These bin groups can be sorted using pre-sorting method 2. Assuming that the sorting results are bin group a4, bin group a3, bin group a1 and bin group a2, on this basis, K initial bin group sequences can be generated, and these K initial bin group sequences are called sequence set 2. These bin groups can be sorted using pre-sorting method 3 to obtain sequence set 3 corresponding to pre-sorting method 3. By analogy, the sequence set corresponding to each pre-sorting method can be obtained. Based on the sequence set corresponding to each pre-sorting method, the bin group optimization step can be performed for multiple sequence sets. Since each sequence set is processed in the same way, the following takes the cabinet group optimization step for one sequence set as an example.

[0079] In summary, in order to ensure that the box group optimization step obtains a better stacking shape, before the box group optimization step is performed, multiple pre-sorting methods can be used to sort all box groups, so that multiple sorting results can be obtained. When a sequence set (i.e., K initial box group sequences) is generated separately based on each sorting result, multiple sequence sets can be obtained to ensure the diversity of the sequence sets.

[0080] In addition, for each pre-sorting method, only K initial box group sequences can be generated, and K can be a pre-configured fixed value, so that only a small number of initial box group sequences are generated, so that the generation time of the initial box group sequences is short, and the offline mixed palletizing efficiency is high. By performing fitness calculation on only a small number of initial box group sequences, computing resources can be saved, so that the offline mixed palletizing efficiency is high.

[0081] Exemplarily, the pre-sorting method may include, but is not limited to: a height sorting method, a length sorting method, a width sorting method, a volume sorting method, a bottom area sorting method, and a random sorting method.

[0082] When one pre-sorting method is used to sort all the cabinet groups, one pre-sorting method can be selected from all the pre-sorting methods, and the pre-sorting method can be used to sort all the cabinet groups. When multiple pre-sorting methods (three for example) are used to sort all the cabinet groups, three pre-sorting methods can be selected from all the pre-sorting methods, and the three pre-sorting methods can be used to sort all the cabinet groups respectively.

[0083] For example, when using the height sorting method, all box groups can be sorted in descending order of box group height, or in descending order of box group height. For example, the box group height can be the average height of all boxes in the box group.

[0084] For example, when using the length sorting method, all box groups can be sorted in descending order of box group length, or in descending order of box group length. For example, the box group length can be the average length of all boxes in the box group.

[0085] For example, when using the width sorting method, all box groups can be sorted in descending order of box group width, or in descending order of box group width. For example, the box group width can be the average width of all boxes in the box group.

[0086] For example, when using the volume sorting method, all box groups can be sorted in descending order of box group volume, or in descending order of box group volume. For example, the box group volume can be the average volume of all boxes in the box group.

[0087] For example, when the bottom area sorting method is used, all the box groups can be sorted in the order of the bottom area of ​​the box group from large to small, or all the box groups can be sorted in the order of the bottom area of ​​the box group from small to large. For example, the bottom area of ​​the box group can be the average bottom area of ​​all the boxes in the box group, that is, the area of ​​the lower surface of each box is determined, and the average of the areas of these lower surfaces is calculated.

[0088] Exemplarily, when a random sorting method is adopted, all cabinet groups may be randomly sorted, for example, a random number is generated for each cabinet group, and all cabinet groups are sorted in descending order of the random numbers, or all cabinet groups are sorted in descending order of the random numbers.

[0089] Of course, the above are just a few examples of pre-sorting methods, and there is no limitation to this pre-sorting method.

[0090] In summary, in the pre-sorting step, at least one sequence set can be obtained, and for each sequence set, the sequence set can include K initial bin group sequences, and for each initial bin group sequence, the initial bin group sequence can include multiple bin groups arranged in order.

[0091] Third, the bin group optimization step. In the bin group optimization step, for each initial bin group sequence in the sequence set (i.e., K initial bin group sequences), the target bin group sequence corresponding to the initial bin group sequence can be determined, i.e., K target bin group sequences are obtained. Then, the target bin group sequence with the best fitness is selected from all target bin group sequences as the optimal bin group sequence corresponding to the sequence set.

[0092] For example, see Figure 4 As shown, the cabinet group optimization step may include the following steps:

[0093] Step 401: traverse the first initial box group sequence from the sequence set (ie, K initial box group sequences), and use the first initial box group sequence as the current initial box group sequence.

[0094] Exemplarily, in the bin group optimization step, a heuristic algorithm (such as a genetic algorithm, etc.) can be used to achieve bin group optimization. In the heuristic algorithm, the population can be initialized first, that is, a sequence set is obtained by initialization, and the process is described in the above embodiment. Population initialization is to give an initial solution of the population according to the coding strategy. In the coding strategy, the chromosome refers to the arrangement order of the bin group, the chromosome length is the total number of bin groups, and each gene represents a bin group. There is no restriction on this process, as long as the sequence set can be obtained.

[0095] Exemplarily, when generating K initial box group sequences (i.e., sequence sets) based on multiple box groups, initial box group sequences with different initial box group sequences but the same box type can also be excluded. For example, assuming there are four box groups, the order of the four box groups in the initial box group sequence 1 is 1234, and the order of the four box groups in the initial box group sequence 2 is 1324. When the box information corresponding to the box group with sequence number 2 and the box group with sequence number 3 is the same, only the initial box group sequence 1 is retained, and the initial box group sequence 2 is deleted. Of course, a new initial box group sequence needs to be generated to make up the K initial box group sequences.

[0096] Step 402: Determine whether to optimize the current initial cabinet group sequence.

[0097] If not, that is, it is determined that the current initial cabinet group sequence is not to be optimized, then step 403 is executed.

[0098] If yes, that is, it is determined to optimize the current initial cabinet group sequence, then step 404 is executed.

[0099] Exemplarily, a first random probability may be generated for the current initial box group sequence, and a second random probability may be generated for the current initial box group sequence. If the first random probability satisfies the configured cross-optimization condition, and / or the second random probability satisfies the configured mutation optimization condition, it is determined that the current initial box group sequence is optimized. If the first random probability does not satisfy the cross-optimization condition, and the second random probability does not satisfy the mutation optimization condition, it is determined that the current initial box group sequence is not optimized.

[0100] For example, a first random probability (the first random probability is a random number) in a specified numerical interval (such as 0-100) can be generated, and a first threshold in the specified numerical interval can be pre-configured, such as 50, 60, 70, etc. On this basis, if the first random probability is greater than the first threshold, it is determined that the first random probability meets the cross-optimization condition, and if the first random probability is not greater than the first threshold, it is determined that the first random probability does not meet the cross-optimization condition. Alternatively, if the first random probability is less than the first threshold, it is determined that the first random probability meets the cross-optimization condition, and if the first random probability is not less than the first threshold, it is determined that the first random probability does not meet the cross-optimization condition.

[0101] For example, a second random probability (the second random probability is a random number) in a specified numerical interval (such as 0-100) can be generated, and a second threshold in the specified numerical interval can be pre-configured, such as 45, 55, 65, etc. On this basis, if the second random probability is greater than the second threshold, it is determined that the second random probability meets the mutation optimization condition, and if the second random probability is not greater than the second threshold, it is determined that the second random probability does not meet the mutation optimization condition. Alternatively, if the second random probability is less than the second threshold, it is determined that the second random probability meets the mutation optimization condition, and if the second random probability is not less than the second threshold, it is determined that the second random probability does not meet the mutation optimization condition.

[0102] Of course, the above examples of at least cross-optimization conditions and mutation optimization conditions are not limited to this.

[0103] Step 403: determine the current initial cabinet group sequence as the target cabinet group sequence.

[0104] For example, assuming that the sequence set includes an initial box group sequence b1, an initial box group sequence b2, and an initial box group sequence b3 in sequence, and the current initial box group sequence is the initial box group sequence b1, the initial box group sequence b1 is used as the target box group sequence b1' corresponding to the initial box group sequence b1.

[0105] After step 403, step 409 may be executed. For step 409, please refer to the subsequent process.

[0106] Step 404: Determine whether the first random probability meets the cross optimization condition, and determine whether the second random probability meets the mutation optimization condition. If the first random probability meets the cross optimization condition, and the second random probability meets the mutation optimization condition, then step 405 may be performed. If the first random probability meets the cross optimization condition, and the second random probability does not meet the mutation optimization condition, then step 406 may be performed. If the first random probability does not meet the cross optimization condition, and the second random probability meets the mutation optimization condition, then step 407 may be performed.

[0107] Step 405: Perform a crossover operation on the current initial box group sequence to obtain a box group sequence after the crossover operation, and perform a mutation operation on the box group sequence after the crossover operation to obtain an optimized box group sequence.

[0108] For example, the crossover operation is used to adjust the order of multiple box groups in the current initial box group sequence, and the mutation operation is used to adjust the order of multiple box groups in the box group sequence after the crossover operation.

[0109] Step 406: Perform a crossover operation on the current initial box group sequence to obtain an optimized box group sequence. For example, the crossover operation is used to adjust the order of multiple box groups in the current initial box group sequence.

[0110] Exemplarily, a crossover operation may be performed on the current initial box group sequence to obtain a box group sequence after the crossover operation, and the box group sequence after the crossover operation is used as the optimized box group sequence.

[0111] Step 407: Perform a mutation operation on the current initial box group sequence to obtain an optimized box group sequence. For example, the mutation operation is used to adjust the order of multiple box groups in the current initial box group sequence.

[0112] Exemplarily, in step 405 and step 406, a crossover operation is performed on the current initial cabinet group sequence to obtain a cabinet group sequence after the crossover operation. The process may include the following steps:

[0113] Step S21 : selecting a paired box group sequence of the current initial box group sequence from the K initial box group sequences, and the paired box group sequence is used to perform a crossover operation on the current initial box group sequence.

[0114] Exemplarily, the first initial box group sequence (or any initial box group sequence) following the current initial box group sequence may be used as a paired box group sequence. For example, assuming that the sequence set includes an initial box group sequence b1, an initial box group sequence b2, and an initial box group sequence b3 in sequence, and the current initial box group sequence is the initial box group sequence b1, the initial box group sequence b2 is used as a paired box group sequence.

[0115] If the current initial box group sequence is the last initial box group sequence b3 of the sequence set, then the first initial box group sequence b1 of the sequence set may be used as a paired box group sequence.

[0116] Exemplarily, a certain algorithm may be used to select a paired box group sequence of the current initial box group sequence. For example, a roulette selection algorithm may be used to select a paired box group sequence of the current initial box group sequence, or a tournament selection algorithm may be used to select a paired box group sequence of the current initial box group sequence, or an elite selection algorithm may be used to select a paired box group sequence of the current initial box group sequence, or a random traversal selection algorithm may be used to select a paired box group sequence of the current initial box group sequence, that is, an initial box group sequence is arbitrarily selected as the paired box group sequence of the current initial box group sequence.

[0117] For example, taking the Stochastic-universal selection algorithm as an example, the Stochastic-universal selection algorithm is a method of selecting individuals according to a given probability in a way that minimizes the fluctuation probability. In this method, inferior individuals also have the opportunity to be selected, thereby rewarding unfairness.

[0118] Step S22: divide the current initial cabinet group sequence into a first cabinet group to be crossed and a first uncrossed cabinet group, and divide the paired cabinet group sequence into a second cabinet group to be crossed and a second uncrossed cabinet group.

[0119] Exemplarily, a random first intersection position and a random second intersection position can be obtained, and both the first intersection position and the second intersection position can be randomly selected, and there is no restriction on the first intersection position and the second intersection position. For example, the first intersection position can be located before the second intersection position, the first intersection position can be located after the second intersection position, and the first intersection position and the second intersection position can be different.

[0120] For example, assuming that the current initial box group sequence includes 8 box groups, that is, there are 8 positions in total, the first cross position can be any position from position 1 to position 8, and the second cross position can be any position from position 1 to position 8, as long as the first cross position and the second cross position are different.

[0121] See also Figure 5A As shown, the arrangement order of the 8 box groups in the current initial box group sequence is: box group 1, box group 2, box group 3, box group 4, box group 5, box group 6, box group 7 and box group 8. The arrangement order of the 8 box groups in the paired box group sequence is: box group 3, box group 5, box group 8, box group 1, box group 7, box group 4, box group 2 and box group 6.

[0122] See also Figure 5A As shown, the first crossover position is position 2 (ie, the second position among the eight positions), and the second crossover position is position 5 (ie, the fifth position among the eight positions).

[0123] For example, the box group located between the first crossing position and the second crossing position in the current initial box group sequence can be determined as the first box group to be crossed, and the remaining box groups can be determined as the first uncrossed box group. Figure 5A As shown, the first box group to be crossed may include box group 2, box group 3, box group 4, and box group 5 located between position 2 and position 5. The first uncrossed box group may include box group 1, box group 6, box group 7, and box group 8 except the first box group to be crossed.

[0124] For example, the box group located between the first crossing position and the second crossing position in the paired box group sequence can be determined as the second box group to be crossed, and the remaining box groups can be determined as the second uncrossed box group. Figure 5AAs shown, the second box group to be crossed may include box group 5, box group 8, box group 1, and box group 7 located between position 2 and position 5. The second uncrossed box group may include box group 3, box group 4, box group 2, and box group 6 except the second box group to be crossed.

[0125] Step S23: swapping the first cabinet group to be cross-connected with the second cabinet group to be cross-connected.

[0126] Exemplarily, the first to-be-crossed box group in the current initial box group sequence may be interchanged with the paired box group sequence, and the second to-be-crossed box group in the paired box group sequence may be interchanged with the current initial box group sequence, so that the current initial box group sequence may include the first uncrossed box group and the second to-be-crossed box group, and the paired box group sequence may include the second uncrossed box group and the first to-be-crossed box group.

[0127] For example, see Figure 5A As shown, the first box group to be crossed may include box group 2, box group 3, box group 4, and box group 5, and the second box group to be crossed may include box group 5, box group 8, box group 1, and box group 7. On this basis, the box groups at the same position in the first box group to be crossed and the second box group to be crossed can be interchanged. For example, see Figure 5B As shown, box group 2 and box group 5 at position 2 can be interchanged, box group 3 and box group 8 at position 3 can be interchanged, box group 4 and box group 1 at position 4 can be interchanged, and box group 5 and box group 7 at position 5 can be interchanged.

[0128] Step S24: determining a mapping relationship between the first cabinet group to be cross-connected and the second cabinet group to be cross-connected.

[0129] Exemplarily, after the first cabinet group to be cross-connected and the second cabinet group to be cross-connected are interchanged, a mapping relationship between the interchanged first cabinet group to be cross-connected and the second cabinet group to be cross-connected may be recorded.

[0130] For example, after cabinet group A in the current initial cabinet group sequence and cabinet group B in the paired cabinet group sequence are swapped, the mapping relationship between cabinet group A and cabinet group B may be recorded.

[0131] See also Figure 5C As shown, since the box group 2 and the box group 5 at position 2 are interchanged, the mapping relationship between the box group 2 and the box group 5 is recorded. Since the box group 3 and the box group 8 at position 3 are interchanged, the mapping relationship between the box group 3 and the box group 8 is recorded. Since the box group 4 and the box group 1 at position 4 are interchanged, the mapping relationship between the box group 4 and the box group 1 is recorded. Since the box group 5 and the box group 7 at position 5 are interchanged, the mapping relationship between the box group 5 and the box group 7 is recorded.

[0132] In summary, the mapping relationship between cabinet group 2 and cabinet group 5, the mapping relationship between cabinet group 3 and cabinet group 8, the mapping relationship between cabinet group 4 and cabinet group 1, and the mapping relationship between cabinet group 5 and cabinet group 7 are obtained. Based on the mapping relationship between cabinet group 2 and cabinet group 5, and the mapping relationship between cabinet group 5 and cabinet group 7, the mapping relationship between cabinet group 2, cabinet group 5, and cabinet group 7 can be obtained.

[0133] Step S25: Use the mapping relationship to adjust the first non-crossed cabinet group in the current initial cabinet group sequence to obtain a cabinet group sequence after the crossover operation corresponding to the current initial cabinet group sequence.

[0134] For example, for the first uncrossed box group in the current initial box group sequence, if the first uncrossed box group is repeated with the second box group to be crossed in the current initial box group sequence, the first uncrossed box group needs to be adjusted using the mapping relationship to ensure that each box group is not repeated. If the first uncrossed box group is not repeated with the second box group to be crossed, the first uncrossed box group can be kept unchanged.

[0135] For example, see Figure 5B As shown, the first uncrossed box group includes box group 1 at position 1, box group 6 at position 6, box group 7 at position 7, and box group 8 at position 8, and the second box group to be crossed includes box group 5 at position 2, box group 8 at position 3, box group 1 at position 4, and box group 7 at position 5.

[0136] Since the cabinet group 1 at position 1 is repeated with the cabinet group 1 at position 4, and there is a mapping relationship between cabinet group 4 and cabinet group 1, see Figure 5D As shown, adjust the cabinet group 1 at position 1 to cabinet group 4. Since cabinet group 6 at position 6 is not repeated, refer to Figure 5D As shown, the box group 6 at position 6 remains unchanged. Since the box group 7 at position 7 is repeated with the box group 7 at position 5, and there is a mapping relationship between box group 2, box group 5 and box group 7, see Figure 5D As shown, the cabinet group 7 at position 7 is adjusted to cabinet group 2. Since the cabinet group 8 at position 8 overlaps with the cabinet group 8 at position 3, and there is a mapping relationship between cabinet group 3 and cabinet group 8, see Figure 5D As shown, the box group 8 at position 8 is adjusted to box group 3.

[0137] In summary, the first uncrossed bin group can be adjusted to obtain a bin group sequence after the cross operation. In step 405, the bin group sequence after the cross operation can also be mutated to obtain an optimized bin group sequence. In step 406, the bin group sequence after the cross operation is used as the optimized bin group sequence.

[0138] Step S26: Use the mapping relationship to adjust the second uncrossed cabinet group in the paired cabinet group sequence to obtain a cabinet group sequence after the crossover operation corresponding to the paired cabinet group sequence, and update the cabinet group sequence after the crossover operation to an initial cabinet group sequence or a target cabinet group sequence corresponding to the paired cabinet group sequence.

[0139] For example, for the second uncrossed box group in the paired box group sequence, if the second uncrossed box group is repeated with the first box group to be crossed in the paired box group sequence, the second uncrossed box group needs to be adjusted using the mapping relationship to ensure that each box group is not repeated. If the second uncrossed box group is not repeated with the first box group to be crossed, the second uncrossed box group can be kept unchanged.

[0140] For example, see Figure 5B As shown, the second uncrossed box group includes box group 3 at position 1, box group 4 at position 6, box group 2 at position 7, and box group 6 at position 8, and the first box group to be crossed includes box group 2 at position 2, box group 3 at position 3, box group 4 at position 4, and box group 5 at position 5.

[0141] Since the cabinet group 3 at position 1 overlaps with the cabinet group 3 at position 3, and there is a mapping relationship between cabinet group 3 and cabinet group 8, see Figure 5D As shown, the cabinet group 3 at position 1 is adjusted to cabinet group 8. Since the cabinet group 4 at position 6 is repeated with the cabinet group 4 at position 4, and there is a mapping relationship between cabinet group 4 and cabinet group 1, see Figure 5D As shown, the cabinet group 4 at position 6 is adjusted to cabinet group 1. Since the cabinet group 2 at position 7 is repeated with the cabinet group 2 at position 2, and there is a mapping relationship between cabinet group 2, cabinet group 5 and cabinet group 7, see Figure 5D As shown, adjust the box group 2 at position 7 to box group 7. Since the box group 6 at position 8 is not repeated, refer to Figure 5D As shown, the box group 6 at position 6 remains unchanged.

[0142] In summary, the box group sequence after the crossover operation corresponding to the paired box group sequence can be obtained. If the box group optimization process of the paired box group sequence has been completed before the box group optimization process is performed on the current initial box group sequence, that is, the paired box group sequence is the target box group sequence, then the box group sequence after the crossover operation is updated to the target box group sequence corresponding to the paired box group sequence. If the box group optimization process of the paired box group sequence is not completed when the box group optimization process is performed on the current initial box group sequence, that is, the paired box group sequence is the initial box group sequence, then the box group sequence after the crossover operation is updated to the initial box group sequence corresponding to the paired box group sequence, and the box group optimization process is performed on the updated initial box group sequence.

[0143] Exemplarily, in step 405 and step 407, a mutation operation is performed on the current initial box group sequence (box group sequence after the crossover operation) to obtain an optimized box group sequence (i.e., the box group sequence after the mutation operation is used as the optimized box group sequence). The process may include the following steps:

[0144] Select any two cabinet groups from the current initial cabinet group sequence. For example, you can select the cabinet group at position 1 and the cabinet group at position 4, or you can select the cabinet group at position 1 and the cabinet group at position 5. There is no restriction on this. Just select any two cabinet groups at different positions.

[0145] For any two box groups in the current initial box group sequence (i.e., the two box groups that have been selected), the ordering positions are swapped to obtain an optimized box group sequence of the current initial box group sequence. Figure 5D As shown, the current initial box group sequence includes box groups 4, 5, 8, 1, 7, 6, 2, 3, etc., assuming that box group 4 at position 1 and box group 7 at position 5 are selected, then the sorting positions of box group 4 and box group 7 are swapped, and the optimized box group sequence includes box groups 7, 5, 8, 1, 4, 6, 2, 3, etc.

[0146] Exemplarily, after step 405, step 408 may be executed, after step 406, step 408 may be executed, and after step 407, step 408 may be executed. Step 408 is described below.

[0147] Step 408: If the fitness of the optimized box group sequence of the current initial box group sequence is better than the fitness of the current initial box group sequence, the optimized box group sequence is determined as the target box group sequence.

[0148] Alternatively, if the fitness of the optimized bin group sequence of the current initial bin group sequence is not better than the fitness of the current initial bin group sequence, the current initial bin group sequence is determined as the target bin group sequence.

[0149] For example, fitness is used to indicate the quality of the box group sequence. If the box group sequence is better, it means that there are more box groups in the box group sequence that can be used to place the load; conversely, if the box group sequence is worse, it means that there are fewer box groups in the box group sequence that can be used to place the load. For example, if the fitness value is larger, it means that the box group sequence is better, and if the fitness value is smaller, it means that the box group sequence is worse.

[0150] In summary, based on steps 402 to 408, a target box group sequence corresponding to the current initial box group sequence can be obtained, and the target box group sequence is an optimized sequence for the current initial box group sequence.

[0151] Step 409: determine whether the current initial box group sequence is the last initial box group sequence of the sequence set. If yes, then step 410 can be executed. If not, then the next initial box group sequence after the current initial box group sequence is traversed from the sequence set (i.e., the K initial box group sequences), and the traversed initial box group sequence is updated as the current initial box group sequence, and then the process returns to step 402.

[0152] Step 410: Based on the fitness of the target bin group sequence corresponding to each initial bin group sequence of the sequence set, select the target bin group sequence with the best fitness as the optimal bin group sequence of the sequence set.

[0153] Exemplarily, after performing the above operation on each initial bin group sequence of the sequence set, the target bin group sequence corresponding to each initial bin group sequence can be obtained, that is, K target bin group sequences are obtained. Then, based on the fitness of each target bin group sequence, the target bin group sequence with the best fitness is used as the optimal bin group sequence of the sequence set. At this point, the bin group optimization step is completed.

[0154] In the above process, the fitness of the current initial box group sequence, the fitness of the optimized box group sequence, and the fitness of the target box group sequence are involved, and the target box group sequence can be the current initial box group sequence or the optimized box group sequence. In this way, only the fitness of the current initial box group sequence and the fitness of the optimized box group sequence need to be calculated, and there is no need to calculate the fitness of the target box group sequence.

[0155] In order to calculate the fitness of the current initial box group sequence, the following method can be used:

[0156] Based on the arrangement order of each box group in the current initial box group sequence, multiple box groups in the current initial box group sequence are simulated and placed on the carrier in sequence. For example, assuming that the current initial box group sequence includes box group a4, box group a3, box group a1 and box group a2 in sequence, each box in box group a4 is simulated and placed on the carrier (simulated placement means that the box is not actually placed on the carrier, but the position of each box is determined, indicating that the box occupies the position), then each box in box group a3 is simulated and placed on the carrier, then each box in box group a1 is simulated and placed on the carrier, and then each box in box group a2 is simulated and placed on the carrier.

[0157] Considering that a box group may not be placed, but a single box can be placed, when simulating the placement of a box group on a carrier, first determine whether the entire box group can be simulated and placed on the carrier, that is, whether there is space on the carrier to place the entire box group. If so, the entire box group is simulated and placed on the carrier, and there is no restriction on this placement process. If not, the box group is split into multiple single boxes, and each single box is simulated and placed on the carrier in turn, and there is no restriction on this placement process.

[0158] After simulating the placement of multiple box groups in the current initial box group sequence onto the load in turn, the load utilization rate and the distance between box groups are determined based on the simulated placement position of each box group, and the fitness is determined based on the load utilization rate and the distance between box groups. For example, the greater the load utilization rate, the greater the fitness; and the smaller the distance between box groups, the greater the fitness.

[0159] Exemplarily, the load utilization rate is the total volume of all boxes stacked on the load divided by the product of the length and width of the load. For example, after multiple box groups in the current initial box group sequence are simulated and placed on the load in sequence, the total volume of all boxes stacked on the load is counted, and this total volume divided by the product of the length and width of the load is the load utilization rate for the current initial box group sequence.

[0160] Exemplarily, the distance between box groups is the average value or sum of the distances between all boxes stacked on the carrier, and the sum is used as the distance between box groups. For example, after simulating the placement of multiple box groups in the current initial box group sequence onto the carrier in sequence, for each box stacked on the carrier, the distance between the box and the adjacent box (there may be multiple adjacent boxes) is determined, and the sum of the distances between the box and each adjacent box is used as the distance value corresponding to the box. The sum of the distance values ​​corresponding to all boxes stacked on the carrier is used as the distance between box groups of the current initial box group sequence.

[0161] It should be noted that for different initial box group sequences, the number of boxes that can be palletized on the load may not be consistent, that is, not all boxes can be simulated and placed on the load. For example, the initial box group sequence b1 includes box group a4, box group a3, box group a1 and box group a2 in sequence, and all boxes of box group a4, box group a3 and box group a1 can be palletized on the load, but only some boxes of box group a2 can be palletized on the load. In addition, the initial box group sequence b2 includes box group a2, box group a3, box group a4 and box group a1 in sequence, and all boxes of box group a2 and box group a3 can be palletized on the load, but only some boxes of box group a4 can be palletized on the load, and no box of box group a1 can be palletized on the load. Obviously, for the initial box group sequence b1 and the initial box group sequence b2, the number of boxes that can be stacked on the load is not the same.

[0162] In view of the above situation, the load utilization rate of the initial box group sequence b1 is different from the load utilization rate of the initial box group sequence b2. It is possible to distinguish which initial box group sequence is better based on the load utilization rate.

[0163] Of course, for different initial box group sequences, the number of boxes that can be stacked on the carrier may be the same. For example, for the initial box group sequence b1, all boxes of all box groups can be stacked on the carrier, and for the initial box group sequence b2, all boxes of all box groups can also be stacked on the carrier. In view of the above situation, the load utilization rate of the initial box group sequence b1 is the same as the load utilization rate of the initial box group sequence b2, and it is impossible to distinguish which initial box group sequence is better based on the load utilization rate. Based on this, a new fitness index is also proposed in this embodiment, that is, the distance between box groups, and the initial box group sequence with a small distance between box groups is better, so that the boxes are expected to be arranged as closely as possible.

[0164] In order to calculate the fitness of the optimized box group sequence, the load utilization rate and the distance between the box groups can also be calculated, and the fitness is determined based on the load utilization rate and the distance between the box groups, which will not be described in detail.

[0165] For step 408, if the load utilization rate of the optimized box group sequence is greater than the load utilization rate of the current initial box group sequence, the fitness of the optimized box group sequence is better than the fitness of the current initial box group sequence. If the load utilization rate of the optimized box group sequence is less than the load utilization rate of the current initial box group sequence, the fitness of the optimized box group sequence is not better than the fitness of the current initial box group sequence.

[0166] If the load utilization rate of the optimized box group sequence is equal to the load utilization rate of the current initial box group sequence, then: if the box group distance of the optimized box group sequence is less than the box group distance of the current initial box group sequence, the fitness of the optimized box group sequence is better than the fitness of the current initial box group sequence. If the box group distance of the optimized box group sequence is not less than the box group distance of the current initial box group sequence, the fitness of the optimized box group sequence is not better than the fitness of the current initial box group sequence.

[0167] Fourth, post-processing step. In the post-processing step, the box group sequence with the best fitness can be selected, and based on the arrangement order of each box group in the box group sequence, the robot is controlled to place multiple box groups in the box group sequence on the carrier in sequence, completing the offline mixed palletizing process for the order information.

[0168] Exemplarily, when selecting the bin group sequence with the best fitness (which can be recorded as the final bin group sequence), if there is only one sequence set, the best bin group sequence of the sequence set is selected as the final bin group sequence. Alternatively, if there are multiple sequence sets, based on the fitness of the best bin group sequence of each sequence set, the best bin group sequence with the best fitness is selected as the final bin group sequence.

[0169] Based on the arrangement order of each box group in the box group sequence, multiple box groups in the box group sequence are placed on the carrier in sequence, including: assuming that the box group sequence includes box group a4, box group a3, box group a1 and box group a2 in sequence, then each box in box group a4 is placed on the carrier (that is, actually placed on the carrier), each box in box group a3 is placed on the carrier, each box in box group a1 is placed on the carrier, and each box in box group a2 is placed on the carrier.

[0170] Considering that a box group may not be placed, but a single box can be placed, when placing a box group on a load, determine whether the entire box group can be placed on the load, that is, whether there is space on the load to place the entire box group. If yes, place the entire box group on the load. If not, split the box group into multiple single boxes, and place each single box on the load in turn.

[0171] When placing the entire box group on the load, the placement posture of the box group can be determined first, and a robot (such as a palletizing robot) can be controlled to place the entire box group on the load based on the placement posture.

[0172] When placing a single box on a load, the placement posture of the single box may be determined first, and a robot (such as a palletizing robot) may be controlled to place the single box on the load based on the placement posture.

[0173] For the placement posture of a box group or a single box, the placement posture represents the placement position and placement posture, and the placement posture is obtained according to the optimal placement plan, that is, the optimal placement plan represents how to place the box group or the single box, and can represent the placement position and placement posture, and there is no restriction on this optimal placement plan. For example, the optimal placement plan uses spatial description and multi-level matching degree calculation to convert the set stack size into a rectangular space. Each time a box is filled in the space, multiple new placement spaces (called free spaces) can be generated. When a new box is placed, the matching degree of the box when placed in different free spaces is simulated and calculated, and the position with the highest matching degree is selected from all free spaces as the optimal placement posture. Of course, the above is just an example of the optimal placement plan, and there is no restriction on this.

[0174] It can be seen from the above technical solutions that in the embodiments of the present application, automatic and efficient offline code mixing is achieved for boxes of various sizes and specifications, which saves manpower while improving logistics turnover efficiency. The optimality of the placement position of each box can be guaranteed, thereby improving the utilization rate of the load-bearing objects and avoiding the occurrence of stacking types that cannot be used in actual production. The stability of the stacking type can be improved, the stacking efficiency can be improved, the production efficiency can be improved, the offline code mixing calculation efficiency can be improved, the calculation time can be reduced, and the safety, practicality and stability during actual mixed code stacking can be improved. An offline code mixing scheme combining box group generation and box group optimization is proposed, and the load-bearing utilization rate of the mixed code stacking type is high and the calculation time is low. A variety of pre-sorting methods are used to solve the optimality problem of the stacking type, ensure the diversity of the box sequence, and use multi-level fitness (first the load-bearing utilization rate and then the distance between box groups) to measure the quality of the stacking type.

[0175] Based on the same application concept as the above method, an offline mixed palletizing device is proposed in the embodiment of the present application, see Figure 6 FIG. 1 is a schematic diagram of the structure of the device, and the device may include:

[0176] A generating module 61 is used to generate K initial box group sequences based on the acquired multiple box groups; for each initial box group sequence, the initial box group sequence includes multiple box groups arranged in a preset order; wherein the order of the multiple box groups in different initial box group sequences is different;

[0177] The determination module 62 is used to determine the target box group sequence corresponding to each initial box group sequence; wherein, for each initial box group sequence, if it is determined that the initial box group sequence is not to be optimized, the initial box group sequence is determined as the target box group sequence; if it is determined that the initial box group sequence is to be optimized, the initial box group sequence is operated to obtain an optimized box group sequence, and the operation is used to adjust the order of multiple box groups in the initial box group sequence; if the fitness of the optimized box group sequence is better than the fitness of the initial box group sequence, the optimized box group sequence is determined as the target box group sequence; if the fitness of the optimized box group sequence is not better than the fitness of the initial box group sequence, the initial box group sequence is determined as the target box group sequence; wherein the fitness is used to indicate the quality of the box group sequence, and the better the box group sequence is, the more box groups in the box group sequence can be placed to carry objects;

[0178] A selection module 63 is used to select a target bin group sequence with the best fitness as the optimal bin group sequence;

[0179] The control module 64 is used to control the robot to place multiple box groups in the optimal box group sequence on the load in sequence based on the arrangement order of each box group in the optimal box group sequence.

[0180] Exemplarily, the generation module 61 is also used to obtain order information, the order information includes attribute information of multiple boxes that need to be stacked on the load, the attribute information includes box length, box width and box load-bearing capacity; multiple box groups are obtained based on the attribute information of each box; wherein, the boxes in the same box group have the same box length and the same box load-bearing capacity, and the boxes in the box group are combined along the box length direction, and the number of boxes in the box group is determined based on the width and box length of the load; or, the boxes in the same box group have the same box width and the same box load-bearing capacity, and the boxes in the box group are combined along the box width direction, and the number of boxes in the box group is determined based on the length and box width of the load.

[0181] Exemplarily, when the determination module 62 determines to optimize the initial box group sequence and operates the initial box group sequence to obtain the optimized box group sequence, it is specifically used to: generate a first random probability and a second random probability for the initial box group sequence; if the first random probability satisfies the configured cross-optimization condition and the second random probability does not satisfy the configured mutation optimization condition, determine to optimize the initial box group sequence, and perform a crossover operation on the initial box group sequence to obtain the optimized box group sequence; if the first random probability does not satisfy the cross-optimization condition and the second random probability satisfies the mutation optimization condition, determine to optimize the initial box group sequence, and perform a mutation operation on the initial box group sequence to obtain the optimized box group sequence; if the first random probability satisfies the cross-optimization condition and the second random probability satisfies the mutation optimization condition, determine to optimize the initial box group sequence, perform a crossover operation on the initial box group sequence to obtain a box group sequence after the crossover operation, and perform a mutation operation on the box group sequence after the crossover operation to obtain the optimized box group sequence.

[0182] Exemplarily, when the determination module 62 performs a crossover operation on the initial box group sequence to obtain an optimized box group sequence, it is specifically used to: select a paired box group sequence of the initial box group sequence from K initial box group sequences; divide the initial box group sequence into a first box group to be crossed and a first uncrossed box group, and divide the paired box group sequence into a second box group to be crossed and a second uncrossed box group; interchange the first box group to be crossed and the second box group to be crossed; adjust the first uncrossed box group using a mapping relationship between the first box group to be crossed and the second box group to be crossed, to obtain an optimized box group sequence of the initial box group sequence; adjust the second uncrossed box group using a mapping relationship, and update the adjusted box group sequence to the initial box group sequence or the target box group sequence corresponding to the paired box group sequence.

[0183] Exemplarily, the determination module 62 divides the initial box group sequence into a first box group to be crossed and a first uncrossed box group, and divides the paired box group sequence into a second box group to be crossed and a second uncrossed box group, and is specifically used to: obtain a random first crossing position and a random second crossing position; determine the box group located between the first crossing position and the second crossing position in the initial box group sequence as the first box group to be crossed, and determine the remaining box groups as the first uncrossed box group; determine the box group located between the first crossing position and the second crossing position in the paired box group sequence as the second box group to be crossed, and determine the remaining box groups as the second uncrossed box group.

[0184] Exemplarily, when the determination module 62 performs a mutation operation on the initial box group sequence to obtain the optimized box group sequence, it is specifically used to: swap the sorting positions of any two box groups in the initial box group sequence to obtain the optimized box group sequence of the initial box group sequence.

[0185] Exemplarily, when determining the fitness of the initial box group sequence, the determination module 62 is specifically used to: based on the arrangement order of each box group in the initial box group sequence, simulate placing multiple box groups in the initial box group sequence on the load in sequence; determine the load utilization rate and the distance between box groups based on the simulated placement position of each box group; the load utilization rate is the total volume of all boxes stacked on the load divided by the product of the length and width of the load; the distance between box groups is the average value or sum of the distances between all boxes stacked on the load; determine the fitness of the initial box group sequence based on the load utilization rate and the distance between box groups; wherein, the greater the load utilization rate, the greater the fitness; and the smaller the distance between box groups, the greater the fitness.

[0186] Based on the same application concept as the above method, a control device is proposed in the embodiment of the present application, see Figure 7 As shown, it includes: a processor 71 and a machine-readable storage medium 72, wherein the machine-readable storage medium 72 stores machine-executable instructions that can be executed by the processor 71; the processor 71 is used to execute the machine-executable instructions to implement the offline mixed palletizing method disclosed in the above example of this application.

[0187] Based on the same application concept as the above method, an offline mixed palletizing control system is proposed in an embodiment of the present application, the control system comprising a control device and a robot; wherein the control device is used to execute the offline mixed palletizing method disclosed in the above example of the present application to obtain an optimal box group sequence; the control device is also used to send a scheduling instruction for each box group to the robot based on the arrangement order of each box group in the optimal box group sequence; the robot is used to place the box group on the carrier based on the scheduling instruction when receiving the scheduling instruction for each box group.

[0188] Based on the same application concept as the above method, an embodiment of the present application further provides a machine-readable storage medium, on which a number of computer instructions are stored. When the computer instructions are executed by a processor, the offline mixed palletizing method disclosed in the above example of the present application can be implemented.

[0189] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the embodiments of the present application may adopt the form of a computer program product implemented in one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.

[0190] The above is only an embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.

Claims

1. An off-line mixed palletizing method, characterized in that: The method comprises: Generate K initial box group sequences based on the acquired multiple box groups; for each initial box group sequence, the initial box group sequence includes multiple box groups arranged in a preset order; wherein the order of the multiple box groups in different initial box group sequences is different; Determine a target box group sequence corresponding to each initial box group sequence; wherein, for each initial box group sequence, if it is determined that the initial box group sequence is not to be optimized, the initial box group sequence is determined as the target box group sequence; if it is determined that the initial box group sequence is to be optimized, the initial box group sequence is operated to obtain an optimized box group sequence, and the operation is used to adjust the order of multiple box groups in the initial box group sequence; if the fitness of the optimized box group sequence is better than the fitness of the initial box group sequence, the optimized box group sequence is determined as the target box group sequence; if the fitness of the optimized box group sequence is not better than the fitness of the initial box group sequence, the initial box group sequence is determined as the target box group sequence; wherein the fitness is used to indicate the quality of the box group sequence, and the better the box group sequence is, the more box groups in the box group sequence can be placed to carry objects; Select the target box group sequence with the best fitness as the optimal box group sequence; Based on the arrangement order of each box group in the optimal box group sequence, the robot is controlled to place multiple box groups in the optimal box group sequence on the carrier in sequence.

2. The method according to claim 1, characterized in that Before generating K initial box group sequences based on the acquired multiple box groups, the method further includes: Acquire order information, where the order information includes attribute information of a plurality of boxes that need to be stacked on a carrier, where the attribute information includes box length, box width, and box load-bearing capacity; Acquire multiple cabinet groups based on the attribute information of each cabinet; Among them, the boxes in the same box group have the same box length and the same box load-bearing capacity, and the boxes in the box group are combined along the box length direction, and the number of boxes in the box group is determined based on the width of the load and the box length; or, the boxes in the same box group have the same box width and the same box load-bearing capacity, and the boxes in the box group are combined along the box width direction, and the number of boxes in the box group is determined based on the length of the load and the box width.

3. The method according to claim 1, characterized in that If it is determined to optimize the initial cabinet group sequence, the initial cabinet group sequence is operated to obtain an optimized cabinet group sequence, including: Generate a first random probability and a second random probability for the initial box group sequence; If the first random probability satisfies the configured cross optimization condition, and the second random probability does not satisfy the configured mutation optimization condition, it is determined to optimize the initial box group sequence, and a crossover operation is performed on the initial box group sequence to obtain an optimized box group sequence; If the first random probability does not satisfy the configured cross optimization condition, and the second random probability satisfies the configured mutation optimization condition, it is determined to optimize the initial box group sequence, and a mutation operation is performed on the initial box group sequence to obtain an optimized box group sequence; If the first random probability satisfies the configured cross optimization condition and the second random probability satisfies the configured mutation optimization condition, it is determined to optimize the initial box group sequence, perform a cross operation on the initial box group sequence to obtain a box group sequence after the cross operation, and perform a mutation operation on the box group sequence after the cross operation to obtain an optimized box group sequence.

4. The method according to claim 3, characterized in that The process of performing a crossover operation on the initial cabinet group sequence to obtain an optimized cabinet group sequence includes: Selecting a paired bin group sequence of the initial bin group sequence from the K initial bin group sequences; The initial bin group sequence is divided into a first bin group to be crossed and a first uncrossed bin group, and the paired bin group sequence is divided into a second bin group to be crossed and a second uncrossed bin group; Interchanging the first to-be-crossed cabinet group and the second to-be-crossed cabinet group; The first uncrossed box group is adjusted by using the mapping relationship between the first box group to be crossed and the second box group to be crossed, so as to obtain an optimized box group sequence of the initial box group sequence; The second uncrossed bin group is adjusted using the mapping relationship, and the adjusted bin group sequence is updated to an initial bin group sequence or a target bin group sequence corresponding to the paired bin group sequence.

5. The method according to claim 4, characterized in that The step of dividing the initial box group sequence into a first box group to be crossed and a first uncrossed box group, and dividing the paired box group sequence into a second box group to be crossed and a second uncrossed box group, comprises: Obtain a random first crossover position and a random second crossover position; Determine the box group located between the first crossing position and the second crossing position in the initial box group sequence as a first box group to be crossed, and determine the remaining box groups as a first uncrossed box group; The box group located between the first crossing position and the second crossing position in the paired box group sequence is determined as a second box group to be crossed, and the remaining box groups are determined as a second uncrossed box group.

6. The method according to claim 3, characterized in that The process of performing a mutation operation on the initial bin group sequence to obtain an optimized bin group sequence includes: exchanging the sorting positions of any two bin groups in the initial bin group sequence to obtain an optimized bin group sequence of the initial bin group sequence.

7. The method according to claim 1, characterized in that The process of determining the fitness of the initial box group sequence includes: Based on the arrangement order of each box group in the initial box group sequence, multiple box groups in the initial box group sequence are sequentially simulated and placed on the load; based on the simulated placement position of each box group, the load utilization rate and the distance between box groups are determined; wherein the load utilization rate is the total volume of all boxes stacked on the load divided by the product of the length and width of the load; the distance between box groups is the average value or sum of the distances between all boxes stacked on the load; The fitness of the initial box group sequence is determined based on the load utilization rate and the distance between the box groups; wherein, the greater the load utilization rate, the greater the fitness; and the smaller the distance between the box groups, the greater the fitness.

8. An off-line mixed palletizing device, characterized in that: The device comprises: A generating module, configured to generate K initial box group sequences based on the acquired multiple box groups; for each initial box group sequence, the initial box group sequence includes multiple box groups arranged in a preset order; wherein the order of the multiple box groups in different initial box group sequences is different; A determination module is used to determine a target box group sequence corresponding to each initial box group sequence; wherein, for each initial box group sequence, if it is determined that the initial box group sequence is not to be optimized, the initial box group sequence is determined as the target box group sequence; if it is determined that the initial box group sequence is to be optimized, the initial box group sequence is operated to obtain an optimized box group sequence, and the operation is used to adjust the order of multiple box groups in the initial box group sequence; if the fitness of the optimized box group sequence is better than the fitness of the initial box group sequence, the optimized box group sequence is determined as the target box group sequence; if the fitness of the optimized box group sequence is not better than the fitness of the initial box group sequence, the initial box group sequence is determined as the target box group sequence; wherein the fitness is used to indicate the quality of the box group sequence, and the better the box group sequence is, the more box groups in the box group sequence can be placed to carry objects; A selection module is used to select a target box group sequence with the best fitness as the optimal box group sequence; The control module is used to control the robot to place multiple box groups in the optimal box group sequence on the load in sequence based on the arrangement order of each box group in the optimal box group sequence.

9. A control device, characterized in that: include: a processor and a machine-readable storage medium storing machine-executable instructions executable by the processor; The processor is used to execute machine executable instructions to implement the method described in any one of claims 1-7.

10. A control system for offline mixed palletizing, characterized in that: The control system includes a control device and a robot; wherein the control device is used to execute the method according to any one of claims 1 to 7 to obtain an optimal box group sequence; the control device is also used to send a scheduling instruction for each box group to the robot based on the arrangement order of each box group in the optimal box group sequence; The robot is used for placing each box group on the carrier based on the scheduling instruction when receiving the scheduling instruction for the box group.

Citation Information

Patent Citations

  • Manipulator palletizing method based on improved catastrophic genetic algorithm

    CN111056323A

  • Three-dimensional boxing method and system

    CN114330822A

  • Mechanical arm trajectory planning method based on time optimization

    CN117301048A

  • Process and device for producing stacks from groups of piece goods, in particular shaped blocks, and system for carrying out this process using such devices

    DE2417540A1

  • Automated palletizing system

    US5501571A