Cargo Container Stacking Planning Method
By acquiring the size information of the boxes and pallets, and using a preset algorithm to optimize the stacking method of the boxes on the pallets, the problems of unstable box stacking and low space utilization are solved, achieving more efficient box stacking stability and space utilization.
Patent Information
- Application Number
- CN202411803024.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-09
- Publication Date
- 2025-11-14
- Estimated Expiration
- 2044-12-09
AI Technical Summary
Existing container stacking methods contain open areas, which leads to unstable container stacking, and traditional algorithms struggle to maximize the use of pallet space.
By acquiring the size information of the boxes and pallets, a preset algorithm is used to determine the first stacking method of the boxes on the pallets, so that adjacent boxes can contact each other. The stacking method is adjusted according to the area matching relationship to reduce the open area and optimize the placement of the boxes on the pallets.
It effectively reduces the open space between cargo boxes, improves the stability of cargo box stacking and the space utilization of pallets, and meets the needs of actual production for stack stability and loading efficiency.
Smart Images

Figure CN119612195B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of intelligent planning technology, and in particular to a cargo container stacking planning method. Background Technology
[0002] This application relates to the field of intelligent planning technology, and in particular to a cargo container stacking planning method. Summary of the Invention
[0003] This application provides a cargo box stacking planning method that can reduce the phenomenon of hollow areas between cargo boxes and improve the stability of cargo box stacking.
[0004] In a first aspect, embodiments of this application provide a cargo container stacking planning method, the method comprising:
[0005] Get the dimensions of each cargo box to be stacked in the cargo box set, the number of cargo boxes to be stacked in the cargo box set, and the pallet size. Each cargo box to be stacked has the same dimensions, and the cargo boxes to be stacked are stacked on the pallet.
[0006] Based on the dimensions and quantity of the cargo boxes, as well as the dimensions of the pallet, a first preset algorithm is used to determine the first stacking method of the cargo boxes to be stacked on the first plane on the adjacent sides of the pallet, using the two adjacent sides of the pallet as a reference. In the first stacking method, the two adjacent cargo boxes to be stacked are in contact with each other.
[0007] Based on the area matching relationship between the first area of the first region and the second area of the second region, the second stacking method of the cargo boxes to be stacked in the first region is determined using the first preset algorithm. The first region is the area on the first plane where the cargo boxes to be stacked are stacked in the first stacking method but not stacked. The second region is the area in the first plane other than the first region.
[0008] Based on the first stacking method and the second stacking method, determine the placement position of each cargo box to be stacked in the cargo box set.
[0009] Secondly, this application provides a container stacking planning device, the device comprising:
[0010] The acquisition module is used to acquire the dimensions of each cargo box to be stacked in the cargo box set, the number of cargo boxes to be stacked in the cargo box set, and the pallet size. Each cargo box to be stacked has the same dimensions, and the cargo boxes to be stacked are stacked on the pallet.
[0011] The first determining module is used to determine, based on the dimensions of the cargo box, the number of cargo boxes, and the dimensions of the pallet, a first preset algorithm, using the two adjacent sides of the pallet as a reference, a first stacking method on the first plane where the cargo boxes to be stacked are located on the two adjacent sides of the pallet, in the first stacking method, the two adjacent cargo boxes to be stacked are in contact with each other.
[0012] The second determining module is used to determine the second stacking method of the boxes to be stacked in the first area based on the area matching relationship between the first area of the first area and the second area of the second area, using the first preset algorithm. The first area is the area on the first plane where the boxes to be stacked are stacked in the first stacking method but not stacked, and the second area is the area in the first plane other than the first area.
[0013] The third determining module is used to determine the placement position of each cargo box to be stacked in the cargo box set based on the first stacking method and the second stacking method.
[0014] Thirdly, embodiments of this application provide an electronic device, which includes: a processor and a memory storing computer program instructions;
[0015] When the processor executes computer program instructions, it implements the container stacking planning method as described in any of the embodiments of the first aspect.
[0016] Fourthly, embodiments of this application provide a computer storage medium storing computer program instructions, which, when executed by a processor, implement the container stacking planning method as described in any of the embodiments of the first aspect.
[0017] Fifthly, embodiments of this application provide a computer program product in which instructions, when executed by a processor of an electronic device, cause the electronic device to perform a cargo container stacking planning method as described in any of the embodiments of the first aspect above.
[0018] In a cargo box stacking planning method provided in this application embodiment, the method first obtains the cargo box size, quantity, and pallet size of each cargo box to be stacked in the cargo box set, wherein each cargo box to be stacked has the same size, and the cargo boxes to be stacked are stacked on the pallet. Based on this, a first preset algorithm is used to determine a first stacking method of the cargo boxes to be stacked on a first plane containing the adjacent two sides of the pallet, using the two adjacent sides of the pallet as a reference. In this stacking method, adjacent cargo boxes to be stacked are in contact with each other, effectively avoiding or reducing the problem of gaps in the middle that is easy to occur in traditional planning. Subsequently, based on the area matching relationship between the first area of the first region and the second area of the second region, the first preset algorithm is used again to determine a second stacking method of the cargo boxes to be stacked in the first region. Here, the first region is the area on the first plane where no cargo boxes to be stacked are stacked in the first stacking method, and the second region is the area in the first plane other than the first region. Through this two-stage stacking method, the phenomenon of gaps between cargo boxes is reduced, and the stability of cargo box stacking is greatly improved. Finally, based on the first and second stacking methods, the placement position of each container to be stacked in the container set was determined. This intelligent stacking planning method effectively improves the stability of stacking by optimizing the stacking method and reducing the internal gaps between containers. Attached Figure Description
[0019] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly introduced below. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0020] Figure 1 This is a flowchart illustrating a cargo container stacking planning method provided in one embodiment of this application;
[0021] Figure 2 This is a schematic diagram of a stacking method of a cargo box on a pallet provided in one embodiment of this application;
[0022] Figure 3 This is a schematic diagram illustrating another method of stacking containers on a pallet according to an embodiment of this application;
[0023] Figure 4 This is a schematic diagram illustrating another method of stacking containers on a pallet according to an embodiment of this application;
[0024] Figure 5 This is a schematic diagram illustrating another method of stacking containers on a pallet according to an embodiment of this application;
[0025] Figure 6This is a schematic diagram illustrating another method of stacking containers on a pallet according to an embodiment of this application;
[0026] Figure 7 This is a schematic diagram showing the placement of the boxes to be stacked in the box set after stacking using a box stacking planning method according to an embodiment of this application;
[0027] Figure 8 This is a schematic diagram of the structure of a cargo box stacking planning device provided in an embodiment of this application;
[0028] Figure 9 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application. Detailed Implementation
[0029] To better understand the above-mentioned objectives, features, and advantages of this disclosure, the solutions disclosed herein will be further described below. It should be noted that, unless otherwise specified, the embodiments and features described herein can be combined with each other.
[0030] Numerous specific details are set forth in the following description in order to provide a full understanding of this disclosure, but this disclosure may also be implemented in other ways different from those described herein; obviously, the embodiments in the specification are only some, and not all, of the embodiments of this disclosure.
[0031] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the term "comprising" or any other variations thereof is intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes the element.
[0032] In the context of industrial robot palletizing, for existing pallets of different specifications, traditional palletizing methods follow conventional methods, such as 3-2 palletizing or alternating forward and reverse stacking. This method is simple to operate but has low pallet utilization, and its stacking pattern cannot fully utilize the pallet area, resulting in the pallet loading quantity not reaching the maximum. Compared with traditional palletizing, existing pallet loading algorithms use iterative cyclic placement of boxes from the outside to the inside, ensuring the maximum number of boxes placed in each ring. However, this heuristic algorithm is prone to interference, that is, the innermost layer will have voids, which cannot guarantee the stability of palletizing. Although the single-sided optimal advancement algorithm ensures internal compactness, it does not consider the area optimization ratio, and the number of boxes placed is often not the maximum.
[0033] Previous planning methods only considered ordinary placement scenarios. However, in actual factory applications, the final step in shipping finished product boxes is to secure them with stretch film after stacking them to prevent them from falling during transportation. Therefore, it is required that the stacked boxes have no gaps inside; otherwise, the boxes will not be able to withstand the stress during the sealing process, and there is still a risk that the stretch film will loosen or the boxes will fall off during transportation.
[0034] To address the problems existing in the prior art, this application provides a cargo container stacking planning method.
[0035] The following section first introduces the cargo container stacking planning method provided in the embodiments of this application. For example... Figure 1 As shown, the method specifically includes the following steps:
[0036] S100: Obtain the dimensions of each cargo box to be stacked in the cargo box set, the number of cargo boxes to be stacked in the cargo box set, and the pallet dimensions, wherein each cargo box to be stacked has the same dimensions and the cargo boxes to be stacked are stacked on the pallet.
[0037] Optionally, in this embodiment, the dimensions of the cargo box can first be measured using a vision sensor, laser scanner, or other measuring device. For each cargo box to be stacked, its length (l), width (w), height (h), and other dimensional parameters are recorded. In practical applications, the dimensions of any one cargo box can be obtained through a single measurement, and the dimensions of other cargo boxes to be stacked can be set to be the same, which simplifies the operation.
[0038] The number of containers to be stacked in the container set can then be recorded using a counter or visual inspection system. This ensures that each container is accurately identified and counted.
[0039] Similarly, measuring equipment can be used to measure the dimensions of pallets and record their length (L) and width (W). Pallet dimensions are an important reference for stacking planning, ensuring that goods can be placed on the pallets appropriately.
[0040] S200, based on the cargo box size, the number of cargo boxes, and the pallet size, using a first preset algorithm, with the two adjacent sides of the pallet as a reference, determines a first stacking method on the first plane where the cargo boxes to be stacked are located on the two adjacent sides of the pallet, in which the two adjacent cargo boxes to be stacked are in contact with each other.
[0041] Optionally, in one feasible implementation of this application, during the execution of the first preset algorithm, calculations are performed based on the size and quantity of the boxes, using the adjacent sides of the pallet as a reference, to determine the optimal placement of the boxes. This includes factors such as the length and width arrangement of the boxes on the pallet. Subsequently, combining the calculation results based on the adjacent sides, a first stacking method is determined for the boxes to be stacked on the first plane located on the adjacent sides of the pallet. This ensures that the boxes are in contact with each other to improve the compactness and stability of the overall stack. Finally, the first stacking method on the first plane is output, which can serve as the basis for subsequent intelligent stacking planning.
[0042] Optionally, in this embodiment of the application, during the algorithm execution, the first stacking method on the pallet is calculated using the input information of the box size, the number of boxes, and the pallet size through a first preset algorithm. This method uses the two adjacent sides as a reference, so that the boxes to be stacked can be placed tightly on the first plane of the pallet, and ensures that the two adjacent boxes to be stacked are in contact with each other, so as to maximize loading efficiency.
[0043] In the first stacking method, the containers to be stacked are arranged closely together, and the contact between adjacent containers ensures the stability and compactness of the stack. This intelligent stacking planning method effectively reduces the problem of gaps in the middle that may occur in traditional planning, and improves the overall quality of the stack.
[0044] Overall, the intelligent stacking planning method in step S200 is based on the first preset algorithm, which fully considers the factors of box size, quantity and pallet size. Through reasonable stacking method, it ensures that the boxes to be stacked can be optimally placed on the adjacent sides of the pallet to meet the needs of stacking stability and loading efficiency in actual production.
[0045] S300, based on the area matching relationship between the first area of the first region and the second area of the second region, using the first preset algorithm, determine the second stacking method of the cargo boxes to be stacked in the first region. The first region is the area on the first plane where the cargo boxes to be stacked are stacked in the first stacking method but not stacked. The second region is the area in the first plane other than the first region.
[0046] Optionally, in one feasible implementation of this application, the areas of a first region and a second region are calculated using a first preset algorithm, where the first region refers to the area of unstacked containers, and the second region refers to the area outside the first region. An area matching relationship is established based on the calculated areas. This may include setting area ratios, thresholds, or other conditions to determine a suitable matching relationship between the two regions.
[0047] Subsequently, guided by the area matching relationship, the second stacking method for the containers to be stacked in the first area can be optimized and determined using the first preset algorithm by adjusting the placement and rearranging of the containers. Finally, the second stacking method for the first area is output, which serves as the basis for subsequent intelligent stacking planning.
[0048] In this process, this application introduces an area matching relationship, enabling the first preset algorithm to more flexibly adjust the placement of containers based on the area distribution of the first and second regions, thereby maximizing space utilization and improving the quality of the stack. This intelligent stack planning method helps improve the compactness, stability, and loading efficiency of the stack, meeting the requirements for stack quality in actual production.
[0049] S400, based on the first stacking method and the second stacking method, determines the placement position of each cargo box to be stacked in the cargo box set.
[0050] Optionally, in one possible implementation of this application, for each cargo box to be stacked in the cargo box set, the system first initializes and determines the basic parameters of its placement position. Then, using the already determined first stacking method, the cargo boxes are placed in a second area, ensuring that adjacent cargo boxes are in contact with each other. Next, in the first area, according to the second stacking method, the unstacked cargo boxes are stacked within the first area. By combining the first and second stacking methods, the precise placement position of each cargo box on a first plane is determined, including its three-dimensional coordinates and orientation. Subsequently, based on the determined placement position, the system updates the coordinate information of each cargo box.
[0051] Repeatedly apply the combination of the first and second stacking methods, stacking layer by layer until the termination condition is met, ensuring that all containers to be stacked are successfully placed. After stacking is complete, output the final placement position of each container in the container set.
[0052] Through the S400 step, this application successfully determined the optimal placement position for each container to be stacked based on the established stacking method through multiple iterative intelligent adjustments. This method, based on multiple iterations and combining different stacking methods, improves the adaptability and stability of the stack type, ensures the rational placement of containers, and provides an efficient and flexible solution for intelligent stacking planning.
[0053] In a cargo box stacking planning method provided in this application embodiment, the method first obtains the cargo box size, quantity, and pallet size of each cargo box to be stacked in the cargo box set, wherein each cargo box to be stacked has the same size, and the cargo boxes to be stacked are stacked on the pallet. Based on this, a first preset algorithm is used to determine a first stacking method of the cargo boxes to be stacked on a first plane containing the adjacent two sides of the pallet, using the two adjacent sides of the pallet as a reference. In this stacking method, adjacent cargo boxes to be stacked are in contact with each other, effectively avoiding or reducing the problem of gaps in the middle that is easy to occur in traditional planning. Subsequently, based on the area matching relationship between the first area of the first region and the second area of the second region, the first preset algorithm is used again to determine a second stacking method of the cargo boxes to be stacked in the first region. Here, the first region is the area on the first plane where no cargo boxes to be stacked are stacked in the first stacking method, and the second region is the area in the first plane other than the first region. Through this two-stage stacking method, the phenomenon of gaps between cargo boxes is reduced, and the stability of cargo box stacking is greatly improved. Finally, based on the first and second stacking methods, the placement position of each container to be stacked in the container set was determined. This intelligent stacking planning method effectively improves the stability of stacking by optimizing the stacking method and reducing the internal gaps between containers.
[0054] In one embodiment, the pallet has two adjacent sides, including a first side and a second side, where the length of the first side is greater than that of the second side; the boxes to be stacked have a third side and a fourth side, where the length of the third side is greater than that of the fourth side; step 200 can specifically be performed as follows:
[0055] S210, by exhaustive search, the preset function is solved under preset conditions to obtain a first placement method where the boxes to be stacked are placed on the first side, and a second placement method where the boxes to be stacked are placed on the second side. In the first placement method, the third side of the boxes to be stacked coincides with the first side, or the fourth side of the boxes to be stacked coincides with the first side. In the second placement method, the third side of the boxes to be stacked coincides with the second side, or the fourth side of the boxes to be stacked coincides with the second side. The preset conditions are determined based on the pallet size and the box size.
[0056] In these alternative embodiments, a preset function is solved by exhaustive search to obtain two placement methods for the boxes to be stacked on the first and second sides of the pallet. In these two placement methods, according to preset conditions, the third or fourth side of the boxes to be stacked coincides with the corresponding pallet side, ensuring the compactness and rationality of the placement.
[0057] S220, based on the first and second placement methods, determine the placement areas corresponding to the stacked containers with different orientations in the first and second placement methods;
[0058] S230, based on the placement area corresponding to the containers to be stacked with different orientations, determine the first stacking method.
[0059] Optionally, in this embodiment, by comprehensively considering different placement methods and container orientations, it is possible to more flexibly adapt to containers and pallets of different shapes, thereby improving the overall flexibility of the placement scheme. The reasonable setting of preset conditions and the determination of container areas with different orientations make the placement of containers more compact, improving the space utilization of the pallets. Furthermore, through the determination in step S230, the first stacking method can better adapt to the characteristics of containers with different orientations, ensuring the rationality of the placement and improving the overall stability.
[0060] In one embodiment, the preset function is:
[0061] max((num(Ll)×l+num(Lw)×w) / L+(num(Wl)×l+num(Ww)×w) / W);
[0062] Wherein, num(Ll) is the first number of boxes whose third side coincides with the first side, num(Lw) is the second number of boxes whose fourth side coincides with the first side, num(Wl) is the third number of boxes whose third side coincides with the second side, num(Ww) is the fourth number of boxes whose fourth side coincides with the second side, L is the length of the first side, W is the length of the second side, l is the length of the third side, and w is the length of the fourth side;
[0063] The solution conditions for the preset function include all of the following conditions:
[0064] num(Ll)×l+num(Lw)×w≤L;
[0065] num(Wl)×l+num(Ww)×w≤W;
[0066] When num(Ll)≠0, num(Ww)≠0;
[0067] When num(Ll)=0, num(Ww)=0.
[0068] In one embodiment, step 210 above may specifically be performed as follows:
[0069] S211, solve the preset function by exhaustive search to obtain the first quantity, the second quantity, the third quantity, and the fourth quantity;
[0070] S212, Based on the first quantity and the second quantity, determine the first placement method;
[0071] S213, Based on the third and fourth quantities, determine the second placement method.
[0072] The first arrangement is as follows:
[0073] Starting from the intersection of the first and second sides, place a first number of first boxes and a second number of second boxes in the direction of the first side of the pallet, wherein the third side of the first box coincides with the first side and the fourth side of the second box coincides with the first side.
[0074] The second placement method is as follows:
[0075] Starting from the intersection of the first and second sides, place the third number of third boxes and the fourth number of fourth boxes in the direction of the second side of the pallet, wherein the third side of the third box coincides with the second side, and the fourth side of the fourth box coincides with the second side.
[0076] Optionally, in one specific implementation of this application, the overall dimensions of the boxes to be stacked and the total number of boxes to be placed are first given, and the length and width dimensions of the pallet used to load the boxes are obtained.
[0077] During the palletizing process, the inputs are the dimensions of the pallet and the boxes, and the outputs are the stack type and the position coordinates of each box. The quantization constraints include:
[0078] a) The arrangement of the boxes must not exceed the pallet size: num(Ll)×l+num(Lw)×w≤L, num(Wl)×l+num(Ww)×w≤W;
[0079] b) Any two boxes do not overlap: xi≠xj∧yi≠yj∧zi≠zj, i≠j,i, j∈[1,n].
[0080] Where x, y, z represent the coordinates of the cargo box in the coordinate system. The coordinate system (i.e., the target coordinate system) has the lower left corner of the pallet as the origin, the long side of the pallet coincides with the x-axis, the wide side coincides with the y-axis, and the z-axis is perpendicular to the pallet surface and pointing upwards. n is the number of boxes in each layer, num(Ll) is the number of cargo boxes whose long side coincides with the long side of the pallet, num(Lw) is the number of cargo boxes whose wide side coincides with the long side of the pallet, num(Wl) is the number of cargo boxes whose long side coincides with the wide side of the pallet, num(Ww) is the number of cargo boxes whose wide side coincides with the wide side of the pallet, l is the length of the cargo box, w is the width of the cargo box, L is the length of the pallet, and W is the width of the pallet.
[0081] Subsequently, based on the pallet and box dimensions, the edge-optimal method was used to determine the distribution of the number of boxes that maximizes the proportion of each box after placing them along the length and width of the pallet. Figure 2As shown, specifically, the process involves exhaustively solving for the objective function max((num(Ll)×l+num(Lw)×w) / L+(num(Wl)×l+num(Ww)×w) / W) and finding num(Ll), num(Lw), num(Wl), and num(Ww). The default conditions are: when num(Ll)≠0, num(Ww)≠0; when num(Ll)=0, num(Ww)=0. This step effectively ensures the maximum utilization of adjacent edges, resulting in a higher number of containers that can be placed compared to traditional algorithms.
[0082] Subsequently, the number of boxes placed on adjacent sides is arranged in the default way: starting from the origin of the coordinate system, in the x direction, num(Ll) long side boxes are arranged first, followed by num(Lw) short side boxes (i.e., the first arrangement method), and in the y direction, num(Ww) short side boxes are arranged first, followed by num(Wl) long side boxes (i.e., the second arrangement method).
[0083] In these alternative embodiments, by optimizing the edge-optimization method and the objective function, the maximum utilization of the number of boxes placed on adjacent sides is ensured, improving the overall efficiency of box placement. Quantitative constraints and default arrangement effectively control the position of the boxes, making the placement more compact and improving the space utilization of the pallets. By using default conditions and exhaustive methods, the implementation process of the algorithm is simplified, computational efficiency is improved, and the overall palletizing process is more efficient.
[0084] In one embodiment, the placement areas corresponding to the stackable containers with different orientations include a first placement area corresponding to a first orientation, a second placement area corresponding to a second orientation, and a third placement area corresponding to a third orientation; step 220 above can specifically be performed as follows:
[0085] Construct a target coordinate system, with the origin at the intersection of the first and second sides. The first side is the horizontal coordinate axis of the target coordinate system, and the second side is the vertical coordinate axis of the target coordinate system.
[0086] Obtain the first coordinate of the last first cargo box in the direction of the first side, and the second coordinate of the last third cargo box in the direction of the second side, under the first and second placement methods, where the first coordinate is (num(Ll)×l, 0) and the second coordinate is (0, num(Ww)×w).
[0087] S221, obtain the third coordinate of the last second cargo box in the direction of the first side and the fourth coordinate of the last fourth cargo box in the direction of the second side under the first and second placement methods, where the third coordinate is (num(Ll)×l+num(Lw)×w,0) and the fourth coordinate is (0,num(Ww)×w+num(Wl)×l).
[0088] S222, the area formed by coordinates (0, 0), coordinates (num(Ll)×l, 0), coordinates (0, num(Ww)×w), and coordinates (num(Ll)×l, num(Ww)×w) is taken as the first placement area;
[0089] S223, take the area formed by coordinates (num(Ll)×l, 0), coordinates (num(Ll)×l+num(Lw)×w, 0), coordinates (num(Ll)×l, num(El)×l), and coordinates (num(Ll)×l+num(Lw)×w, num(El)×l) as the second placement area, where num(El) is the largest number that satisfies num(El)×l≤num(Ww)×w;
[0090] S224, the region formed by coordinates (0, num(Ww)×w+num(Wl)×l), coordinates (num(Ew)×w, num(Ww)×w+num(Wl)×l), coordinates (0, num(Ww)×w), and coordinates (num(Ew)×w, num(Ww)×w) is taken as the third placement region, where num(Ew) is the largest number that satisfies num(Ew)×w≤num(Ll)×l.
[0091] In one embodiment, step 230 above may specifically be performed as follows:
[0092] S231, For the first placement area, place num(Ll)×num(Ww) stackable containers in parallel with the first or third container;
[0093] S232, For the second placement area, num(Lw)×num(El) boxes to be stacked are placed in parallel with the second box;
[0094] S233, for the third placement area, place num(Wl)×num(Ew) stackable containers in parallel with the fourth container.
[0095] Optionally, in one specific implementation of this application, after arranging the first, second, third, and fourth cargo boxes using the first and second placement methods, num(Ll)×num(Ww) cargo boxes are placed in parallel within an area of num(Ll)×l×num(Ww)×w. The remaining area is then used to place num(Lw)×num(E1)+num(Wl)×num(Ew), where num(E1) and num(Ew) are the largest numbers satisfying (num(E1)×l≤num(Ww)×w, num(Ew)×w≤num(Ll)×l). That is, as follows... Figure 3 As shown, in area A (i.e., the first placement area), num(Ll) × num(Ww) boxes with their long sides parallel to the long side of the pallet are placed; in area B (i.e., the second placement area), num(Lw) × num(El) boxes with their short sides parallel to the long side of the pallet are placed, with a placement distance of num(El) × l along the y-direction; in area C (i.e., the third placement area), num(Wl) × num(Ew) boxes with their short sides parallel to the long side of the pallet are placed, with a placement distance of num(Ew) × w along the x-direction.
[0096] In these alternative embodiments, specifically in this implementation, by placing boxes in parallel within a specific area—that is, within an area of num(Ll)×l×num(Ww)×w—a layer of parallel-arranged boxes is formed, improving the overall stability of the stack. This placement method helps reduce internal voids and increases the compactness of the stack, thereby improving the stability of the goods. Furthermore, dividing the remaining area into different regions (region B and region C) and placing boxes in different directions in each region utilizes different parts of the pallet surface, maximizing the filling of the remaining space. This segmented placement strategy helps improve pallet utilization and reduce gaps.
[0097] In this embodiment, the placement distance of the short-side boxes in regions B and C is optimized. By using different placement distances along the y and x directions, the remaining space on the pallet is filled more effectively. This refined placement strategy minimizes the gaps between boxes, improving the space utilization of the pallet. When placing boxes within the remaining area, the constraints (num(E1)×1≤num(Ww)×w, num(Ew)×w≤num(Ll)×1) are satisfied, meaning that the maximum number of boxes can be placed while maintaining stack stability.
[0098] By dividing the entire placement process into different areas and adopting specific placement methods, the complexity of placement planning is simplified, and the convenience of actual operation is improved. In summary, this optional layout strategy has achieved beneficial results in improving overall stability, maximizing the use of remaining space, and optimizing placement distances, further improving the compactness of container stacks and the utilization rate of pallets.
[0099] In one embodiment, step 300 above may specifically be performed as follows:
[0100] S310, when the second placement area is flush with the first placement area, obtain the first difference area between the second placement area and the first placement area, the first area including the first difference area.
[0101] Optionally, in this embodiment, a first interlaced difference region is obtained when the second placement area is aligned with the first placement area, and a second interlaced difference region is obtained when the third placement area is aligned with the first placement area. These difference regions represent the additional space generated when the two areas are aligned, i.e., areas that are not fully filled.
[0102] S320, when the third placement area is aligned with the first placement area, obtain the second difference area between the third placement area and the first placement area, wherein the first area includes the second difference area;
[0103] S330, based on the size relationship between the third area of the first difference region and the fourth area of the second difference region, determine the movement mode of the second placement area and the third placement area;
[0104] S340, based on the placement state of the first plane after the second and third placement areas have been moved according to the movement method, determine the target reference area.
[0105] Optionally, in this embodiment, the target reference area represents a new reference area after being moved.
[0106] S350, based on the target reference area, calculate using the first preset algorithm until the area of the target reference area is smaller than the area of a single cargo box to be stacked, and determine the second stacking method of stacking the cargo boxes to be stacked in the target reference area.
[0107] In these alternative embodiments, by analyzing and utilizing the difference region, the overall layout becomes more compact, improving space utilization. Optimization of the movement method and calculation of the preset algorithm help reduce gaps and improve the stability of the overall layout. Through continuous iteration, the system ensures that constraints are still met while the layout changes, increasing its adaptability. The beneficial effect of these steps is that while improving space utilization, they maintain the stability of the stacking pattern of the cargo boxes, providing a more optimized planning scheme for automated palletizing by industrial robots.
[0108] In one embodiment, step 330 above may specifically be performed as follows:
[0109] S331. When the third area is less than or equal to the fourth area, translate the second placement area along the direction of the second side by num(Ww)×w - num(El)×l.
[0110] In one embodiment, step 340 above may specifically be executed as follows:
[0111] S341. Take the area formed by the coordinates (num(Ew)×w, num(Ww)×w), the coordinate (L, num(Ww)×w), the coordinate (L, W), and the coordinate (num(Ew)×w, W) as the target reference area;
[0112] In one embodiment, step 350 above may specifically be executed as follows:
[0113] S351. Based on the target reference area, using the first preset algorithm for calculation with the adjacent two sides of the target reference area as the reference until L - num(Ew)×w < l, or W - num(El)×l < w, to determine the second stacking method of the to-be-stacked cargo boxes stacked in the target reference area.
[0114] In one embodiment, step 330 above may specifically be executed as follows:
[0115] S331. When the third area is greater than the fourth area, translate the third placement area along the direction of the first side by num(Ll)×l - num(Ew)×w.
[0116] In one embodiment, step 340 above may specifically be executed as follows:
[0117] S341. Take the area formed by the coordinates (num(Ll)×l, num(El)×l), the coordinate (L, num(El)×l), the coordinate (L, W), and the coordinate (num(Ll)×l, W) as the target reference area;
[0118] In one embodiment, step 350 above may specifically be executed as follows:
[0119] S351. Based on the target reference area, using the first preset algorithm for calculation with the adjacent two sides of the target reference area as the reference until L - num(Ew)×w < l, or W - num(El)×l < w, to determine the second stacking method of the to-be-stacked cargo boxes stacked in the target reference area.
[0120] Optionally, in a complete implementation manner of this application, S1: According to the dimensions of the pallet and the cargo boxes, use the optimal method along the edge to solve the quantity distribution with the largest proportion of cargo boxes after placing the cargo boxes along the length and width sides of the pallet, such as Figure 2As shown, specifically: The goal is to exhaustively solve for the values of num(Ll), num(Lw), num(Wl), and num(Ww) corresponding to the objective function max((num(Ll)×l+num(Lw)×w) / L+(num(Wl)×l+num(Ww)×w) / W). The default conditions are: when num(Ll)≠0, num(Ww)≠0; when num(Ll)=0, num(Ww)=0.
[0121] S2: Arrange the adjacent boxes obtained in Step 1 according to the default method: starting from the origin, arrange num(Ll) long-side boxes first in the x-direction, then num(Lw) short-side boxes; arrange num(Ww) short-side boxes first in the y-direction, then num(Wl) long-side boxes. Then, place num(Ll)×num(Ww) boxes in parallel within the area of num(Ll)×l×num(Ww)×w. Place num(Lw)×num(El)+num(Wl)×num(Ew) in the remaining area, where num(El) and num(Ew) are the maximum numbers satisfying (num(El)×l≤num(Ww)×w, num(Ew)×w≤num(Ll)×l). That is, as follows... Figure 3 As shown, num(Ll)×num(Ww) boxes with their long sides parallel to the long side of the pallet are placed in area A; num(Lw)×num(El) boxes with their short sides parallel to the long side of the pallet are placed in area B, with a placement distance of num(El)×l along the y-direction; and num(Wl)×num(Ew) boxes with their short sides parallel to the long side of the pallet are placed in area C, with a placement distance of num(Ew)×w along the x-direction.
[0122] S3: Let the area difference between regions B and C when they are aligned with region A be E1 (the first difference region) and E2 (the second difference region). Based on the principle of minimizing the remaining area, determine the relationship between the areas of regions E1 and E2. When (num(Ww)×w-num(El)×l)×(num(Lw)×w) ≤ (num(Ll)×l-num(Ew)×w)×(num(Wl)×l), shift the num(Lw)×num(El) boxes placed in region B along the y-axis by a distance of num(Ww)×w-num(El)×l. Then, let L'=L-num(Ew)×w and W'=W-num(Ww)×w. Conversely, shift the num(Wl)×num(Ew) boxes placed in the upper left region along the x-axis by a distance of num(Ll)×l-num(Ew)×w. Figure 4 , 5 As shown in Figure 6, let L' = L - num(Ll) × l, and W' = W - num(El) × l. That is, with Figure 6 Continue the planning based on the middle region D. This step conveniently avoids the staggering of stack patterns and internal hollowing;
[0123] S4: Repeat the above steps 1, 2, and 3 until max(L’, W’)<l ∨ min(L’, W’)<w, end the iteration, determine the three-dimensional coordinates and orientation of the container stack pattern, and output the pose.
[0124] In these optional embodiments, through region adjustment, the problems of stack pattern staggering and internal hollowing are effectively avoided or reduced, ensuring the stability and tightness of placement. Through iteration, the layout is continuously optimized, making the stack pattern more in line with actual requirements and constraints. Based on the principle of minimizing the remaining area, it helps to make full use of the tray surface, reduce the remaining area, and increase the stacking density of containers. Finally, the three-dimensional coordinates and orientation of the container stack pattern are output, providing accurate position information for subsequent operations.
[0125] Generally speaking, the beneficial effects of these steps are to improve the stability, compactness and adaptability of the container stack pattern, making the layout more flexible and optimized.
[0126] In one embodiment, the above step 400 can specifically execute the following steps:
[0127] S410, stack the first stacking set on the first plane in the first stacking method and the second stacking method. The container set includes the first stacking set;
[0128] S420, when the number of containers to be stacked in the first stacking set is less than the number of containers, stack the second stacking set layer by layer in the first stacking method and the second stacking method until all the containers to be stacked in the container set are stacked. The second stacking set is the set other than the first stacking set in the container set.
[0129] Optionally, in the embodiments of the present application, first stack the container set on the first plane in the first stacking method and the second stacking method to form the first stacking set. In the first stacking set, if the number of containers to be stacked is less than the total number of containers, perform the following operations. Stack the second stacking set layer by layer in the first stacking method and the second stacking method until all the containers to be stacked in the container set are stacked.
[0130] In these alternative embodiments, stacking on the first plane using both a first and a second stacking method helps to form a more compact and stable stack of containers, improving placement efficiency. The layer-by-layer stacking of the second stack set in S420 ensures that all containers to be stacked in the entire container set are properly positioned, fully utilizing the vertical space of the stack and increasing the overall container placement density. The layer-by-layer stacking method enables effective placement of containers of different heights, increasing the system's adaptability and applicability to containers of different sizes. During the layer-by-layer stacking process, the already placed first stack set is comprehensively considered, helping to reduce gaps in the stack and improve the overall placement effect.
[0131] Overall, these steps have the beneficial effect of optimizing the placement of cargo containers, improving overall placement efficiency and compactness.
[0132] Optionally, in the embodiments of this application, the palletization pattern obtained by the cargo box stacking planning method proposed in this application adopts the planning method with the highest utilization rate of adjacent sides, and takes the minimum remaining area as a constraint condition to divide the pallet to ensure the highest loading rate. At the same time, it avoids or reduces the situation of having gaps in the middle in traditional palletizing planning algorithms, and can place more cargo boxes than the single-sided optimal solution. Figure 7 Taking a pallet of 1.2m*1m and a box of 247mm*183mm as an example, the stacking plan results of this application are shown (black represents the pallet part, and gray represents the box part). Although the traditional cyclic nesting method ensures neat edges, it leaves gaps in the middle; the single-sided optimal method ensures no gaps in the middle, but the number of boxes placed is less than that of this application. In addition, the stacking pattern obtained by this application is neat, and the orientation within the area is uniform, which is convenient for automated stacking, thus forming a better stacking scheme.
[0133] In summary, the advantages of this application are as follows: the gapless internal placement method ensures that the stacked boxes are tightly packed inside during actual application, eliminating the risk of them falling off during transportation due to insufficient internal force during the sealing process; the placement principle based on adjacent side angles and optimizing area also maximizes the number of boxes that can be placed; finally, the application has a simple process, is easy to implement, and has good stability in industrial applications.
[0134] Figure 8 A schematic diagram of a cargo container stacking planning device provided in another embodiment of this application is shown. For ease of explanation, only the parts related to the embodiments of this application are shown.
[0135] Reference Figure 8 The cargo container stacking planning device may include:
[0136] The acquisition module 801 is used to acquire the size of each cargo box to be stacked in the cargo box set, the number of cargo boxes to be stacked in the cargo box set, and the pallet size, wherein each cargo box to be stacked has the same size and the cargo boxes to be stacked are stacked on the pallet.
[0137] The first determining module 802 is used to determine, based on the size of the cargo box, the number of cargo boxes, and the size of the pallet, a first preset algorithm, using the two adjacent sides of the pallet as a reference, a first stacking method on the first plane where the cargo boxes to be stacked are located on the two adjacent sides of the pallet, in the first stacking method, the two adjacent cargo boxes to be stacked are in contact with each other.
[0138] The second determining module 803 is used to determine the second stacking method of the cargo box to be stacked in the first area based on the area matching relationship between the first area of the first area and the second area of the second area, using the first preset algorithm. The first area is the area on the first plane where the cargo box to be stacked is stacked in the first stacking method but no cargo box to be stacked is stacked. The second area is the area in the first plane other than the first area.
[0139] The third determining module 804 is used to determine the placement position of each cargo box to be stacked in the cargo box set based on the first stacking method and the second stacking method.
[0140] In one embodiment, the pallet has two adjacent sides, including a first side and a second side, the length of the first side being greater than the length of the second side; the boxes to be stacked include a third side and a fourth side, the length of the third side being greater than the length of the fourth side; the first determining module 802 may include:
[0141] The first determining submodule is used to solve a preset function by exhaustive search under preset conditions to obtain a first placement method for placing the boxes to be stacked on the first side and a second placement method for placing the boxes to be stacked on the second side. In the first placement method, the third side of the boxes to be stacked coincides with the first side, or the fourth side of the boxes to be stacked coincides with the first side. In the second placement method, the third side of the boxes to be stacked coincides with the second side, or the fourth side of the boxes to be stacked coincides with the second side. The preset conditions are determined based on the pallet size and the box size.
[0142] The second determining submodule is used to determine the placement area corresponding to the stacked boxes with different orientations in the first and second placement methods, based on the first and second placement methods.
[0143] The third determination submodule is used to determine the first stacking method based on the placement area corresponding to the cargo boxes to be stacked with different orientations.
[0144] In one embodiment, the preset function is:
[0145] max((num(Ll)×l+num(Lw)×w) / L+(num(Wl)×l+num(Ww)×w) / W);
[0146] Wherein, num(Ll) is the first number of boxes whose third side coincides with the first side, num(Lw) is the second number of boxes whose fourth side coincides with the first side, num(Wl) is the third number of boxes whose third side coincides with the second side, num(Ww) is the fourth number of boxes whose fourth side coincides with the second side, L is the length of the first side, W is the length of the second side, l is the length of the third side, and w is the length of the fourth side;
[0147] The solution conditions for the preset function include all of the following conditions:
[0148] num(Ll)×l+num(Lw)×w≤L;
[0149] num(Wl)×l+num(Ww)×w≤W;
[0150] When num(Ll)≠0, num(Ww)≠0;
[0151] When num(Ll)=0, num(Ww)=0.
[0152] In one embodiment, the first determining submodule may include:
[0153] The first determining unit is used to solve the preset function by exhaustive search to obtain the first quantity, the second quantity, the third quantity, and the fourth quantity;
[0154] The second determining unit is used to determine the first placement method based on the first quantity and the second quantity;
[0155] The third determining unit is used to determine the second placement method based on the third and fourth quantities.
[0156] The first arrangement is as follows:
[0157] Starting from the intersection of the first and second sides, place a first number of first boxes and a second number of second boxes in the direction of the first side of the pallet, wherein the third side of the first box coincides with the first side and the fourth side of the second box coincides with the first side.
[0158] The second placement method is as follows:
[0159] Starting from the intersection of the first and second sides, place the third number of third boxes and the fourth number of fourth boxes in the direction of the second side of the pallet, wherein the third side of the third box coincides with the second side, and the fourth side of the fourth box coincides with the second side.
[0160] In one embodiment, the placement areas corresponding to the stackable containers with different orientations include a first placement area corresponding to a first orientation, a second placement area corresponding to a second orientation, and a third placement area corresponding to a third orientation; the second determining submodule may include:
[0161] The first building unit is used to build the target coordinate system. The origin of the target coordinate system is the intersection of the first side and the second side. The first side is the horizontal coordinate axis of the target coordinate system, and the second side is the vertical coordinate axis of the target coordinate system.
[0162] The first acquisition unit is used to acquire the first coordinate of the last first cargo box in the direction of the first side and the second coordinate of the last third cargo box in the direction of the second side under the first and second placement methods, wherein the first coordinate is (num(Ll)×l, 0) and the second coordinate is (0, num(Ww)×w).
[0163] The second acquisition unit is used to acquire the third coordinate of the last second cargo box in the direction of the first side and the fourth coordinate of the last fourth cargo box in the direction of the second side under the first and second placement methods, wherein the third coordinate is (num(Ll)×l+num(Lw)×w,0) and the fourth coordinate is (0,num(Ww)×w+num(Wl)×l).
[0164] The fourth determining unit is used to take the area formed by coordinates (0, 0), coordinates (num(Ll)×l, 0), coordinates (0, num(Ww)×w), and coordinates (num(Ll)×l, num(Ww)×w) as the first placement area;
[0165] The fifth determining unit is used to define the area formed by coordinates (num(Ll)×l, 0), coordinates (num(Ll)×l+num(Lw)×w, 0), coordinates (num(Ll)×l, num(El)×l), and coordinates (num(Ll)×l+num(Lw)×w, num(El)×l) as the second placement area, where num(El) is the largest number that satisfies num(El)×l≤num(Ww)×w;
[0166] The sixth determining unit is used to define the area formed by coordinates (0, num(Ww)×w+num(Wl)×l), coordinates (num(Ew)×w, num(Ww)×w+num(Wl)×l), coordinates (0, num(Ww)×w), and coordinates (num(Ew)×w, num(Ww)×w) as the third placement area, where num(Ew) is the largest number that satisfies num(Ew)×w≤num(Ll)×l.
[0167] In one embodiment, the third determining submodule may include:
[0168] The first placement unit is used to place num(Ll)×num(Ww) stackable containers in parallel with the first or third container in the first placement area.
[0169] The second placement unit is used to place num(Lw)×num(El) stackable containers in parallel with the second container in the second placement area.
[0170] The third placement unit is used to place num(Wl)×num(Ew) stackable containers in parallel with the fourth container in the third placement area.
[0171] In one embodiment, the second determining module 803 may include:
[0172] The first acquisition submodule is used to acquire the first difference region between the second placement area and the first placement area when the second placement area is aligned with the first placement area. The first region includes the first difference region.
[0173] The second acquisition submodule is used to acquire the second difference region between the third placement area and the first placement area when the third placement area is aligned with the first placement area, wherein the first area includes the second difference region.
[0174] The fourth determining submodule is used to determine the movement mode of the second placement area and the third placement area based on the size relationship between the third area of the first difference area and the fourth area of the second difference area;
[0175] The fifth determination submodule is used to determine the target reference area based on the placement state of the first plane after the second and third placement areas have been moved according to the movement method.
[0176] The calculation submodule is used to perform calculations based on the target reference area using a first preset algorithm until the area of the target reference area is smaller than the area of a single cargo box to be stacked, and to determine the second stacking method of the cargo boxes to be stacked in the target reference area.
[0177] In one embodiment, the fourth determining submodule may include:
[0178] The first translation unit is used to translate the second placement area along the direction of the second side by num(Ww)×w-num(El)×l when the third area is less than or equal to the fourth area.
[0179] In one embodiment, the fifth determining submodule may include:
[0180] A seventh determination unit, configured to use the region formed by the coordinates (num(Ew)×w, num(Ww)×w), the coordinates (L, num(Ww)×w), the coordinates (L, W), and the coordinates (num(Ew)×w, W) as the target reference region.
[0181] In one embodiment, the calculation sub-module may include:
[0182] A first calculation unit, configured to perform calculations based on the target reference region, with the adjacent two sides of the target reference region as the reference, using a first preset algorithm until L - num(Ew)×w < l, or W - num(El)×l < w, to determine the second stacking method for stacking the to-be-stacked cargo boxes in the target reference region.
[0183] In one embodiment, the fourth determination sub-module may include:
[0184] A second translation unit, configured to translate the third placement region along the direction of the first side by num(Ll)×l - num(Ew)×w when the third area is greater than the fourth area.
[0185] In one embodiment, the fifth determination sub-module may include:
[0186] An eighth determination unit, configured to use the region formed by the coordinates (num(Ll)×l, num(El)×l), the coordinates (L, num(El)×l), the coordinates (L, W), and the coordinates (num(Ll)×l, W) as the target reference region.
[0187] In one embodiment, the calculation sub-module may include:
[0188] A second calculation unit, configured to perform calculations based on the target reference region, with the adjacent two sides of the target reference region as the reference, using a first preset algorithm until L - num(Ew)×w < l, or W - num(El)×l < w, to determine the second stacking method for stacking the to-be-stacked cargo boxes in the target reference region.
[0189] In one embodiment, the third determination module 804 may include:
[0190] A first stacking sub-module, configured to stack the first stacking set on the first plane in the first stacking method and the second stacking method, and the cargo box set includes the first stacking set;
[0191] A second stacking sub-module, configured to stack the second stacking set layer by layer in the first stacking method and the second stacking method until all the to-be-stacked cargo boxes in the cargo box set are stacked, and the second stacking set is the set other than the first stacking set in the cargo box set when the number of to-be-stacked cargo boxes in the first stacking set is less than the number of cargo boxes.
[0192] It should be noted that the information interaction and execution process between the above-mentioned devices / units are based on the same concept as the method embodiments of this application. They are devices corresponding to the above-mentioned battery thermal runaway early warning method. All implementation methods in the above-mentioned method embodiments are applicable to the embodiments of this device. For details on its specific functions and the technical effects it brings, please refer to the method embodiment section. It will not be repeated here.
[0193] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is merely an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit. Furthermore, the specific names of the functional units and modules are only for easy differentiation and are not intended to limit the scope of protection of this application. The specific working process of the units and modules in the above system can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.
[0194] Figure 9 A schematic diagram of the hardware structure of the electronic device provided in an embodiment of this application is shown.
[0195] The device may include a processor 901 and a memory 902 storing program instructions.
[0196] When processor 901 executes the program, it implements the steps in any of the above method embodiments.
[0197] For example, the program can be divided into one or more modules / units, one or more of which are stored in memory 902 and executed by processor 901 to complete this application. One or more modules / units can be a series of program instruction segments capable of performing a specific function, which describe the program's execution process in the device.
[0198] Specifically, the processor 901 may include a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits that can be configured to implement the embodiments of this application.
[0199] Memory 902 may include mass storage for data or instructions. For example, and not limitingly, memory 902 may include a hard disk drive (HDD), floppy disk drive, flash memory, optical disk, magneto-optical disk, magnetic tape, or Universal Serial Bus (USB) drive, or a combination of two or more of these. Where appropriate, memory 902 may include removable or non-removable (or fixed) media. Where appropriate, memory 902 may be internal or external to the integrated gateway disaster recovery device. In a particular embodiment, memory 902 is non-volatile solid-state memory.
[0200] Memory may include read-only memory (ROM), random access memory (RAM), disk storage media devices, optical storage media devices, flash memory devices, and electrical, optical, or other physical / tangible memory storage devices. Therefore, typically, memory includes one or more tangible (non-transitory) readable storage media (e.g., memory devices) encoded with software including computer-executable instructions, and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described with reference to the methods according to one aspect of this disclosure.
[0201] The processor 901 implements any of the methods described in the above embodiments by reading and executing program instructions stored in the memory 902.
[0202] In one example, the electronic device may also include a communication interface 903 and a bus 910. The processor 901, memory 902, and communication interface 903 are connected via the bus 910 and communicate with each other.
[0203] The communication interface 903 is mainly used to realize communication between various modules, devices, units and / or equipment in the embodiments of this application.
[0204] Bus 910 includes hardware, software, or both, that couples components of an online data traffic metering device together. For example, and not limitingly, the bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Enhanced Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), HyperTransport (HT) interconnect, an Industry Standard Architecture (ISA) bus, an Infinite Bandwidth Interconnect, a Low Pin Count (LPC) bus, a memory bus, a Microchannel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local (VLB) bus, or other suitable buses, or combinations of two or more of these. Where appropriate, bus 910 may include one or more buses. Although specific buses are described and illustrated in embodiments of this application, this application contemplates any suitable bus or interconnect.
[0205] Furthermore, in conjunction with the methods in the above embodiments, this application embodiment can provide a storage medium for implementation. This storage medium stores program instructions; when these program instructions are executed by a processor, they implement any of the methods in the above embodiments.
[0206] This application also provides a chip, which includes a processor and a communication interface. The communication interface and the processor are coupled. The processor is used to run programs or instructions to implement the various processes of the above method embodiments and achieve the same technical effect. To avoid repetition, it will not be described again here.
[0207] It should be understood that the chip mentioned in the embodiments of this application may also be referred to as a system-on-a-chip, system chip, chip system, or system-on-a-chip, etc.
[0208] This application provides a computer program product, which is stored in a storage medium and executed by at least one processor to implement the various processes of the above method embodiments and achieve the same technical effects. To avoid repetition, it will not be described again here.
[0209] It should be clarified that this application is not limited to the specific configurations and processes described above and shown in the figures. For the sake of brevity, detailed descriptions of known methods are omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of this application is not limited to the specific steps described and shown. Those skilled in the art can make various changes, modifications, and additions, or change the order of steps, after understanding the spirit of this application.
[0210] The functional modules shown in the above block diagram can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application-specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc. When implemented in software, the elements of this application are programs or code segments used to perform the required tasks. Programs or code segments can be stored on machine-readable media or transmitted over a transmission medium or communication link via data signals carried on a carrier wave. "Machine-readable media" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROM, flash memory, erasable ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, fiber optic media, radio frequency (RF) links, etc. Code segments can be downloaded via computer grids such as the Internet, intranets, etc.
[0211] It should also be noted that the exemplary embodiments mentioned in this application describe methods or systems based on a series of steps or apparatus. However, this application is not limited to the order of the above steps; that is, the steps can be performed in the order mentioned in the embodiments, or in a different order, or several steps can be performed simultaneously.
[0212] The aspects of this disclosure have been described above with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and program products according to embodiments of this disclosure. It should be understood that each block in the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to create a machine such that these instructions, executable via the processor of the computer or other programmable data processing apparatus, enable the implementation of the functions / actions specified in one or more blocks of the flowchart illustrations and / or block diagrams. Such a processor can be, but is not limited to, a general-purpose processor, a special-purpose processor, a special application processor, or a field-programmable logic circuit. It is also understood that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can also be implemented by special-purpose hardware performing the specified functions or actions, or can be implemented by a combination of special-purpose hardware and computer instructions.
[0213] The above are merely specific embodiments of this application. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, modules, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here. It should be understood that the protection scope of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the protection scope of this application.
Claims
1. A method for planning the stacking of cargo containers, characterized in that, The method includes: Obtain the dimensions of each cargo box to be stacked in the cargo box set, the number of cargo boxes to be stacked in the cargo box set, and the pallet size, wherein each cargo box to be stacked has the same dimensions, and the cargo boxes to be stacked are stacked on the pallet; Based on the dimensions of the cargo box, the number of cargo boxes, and the dimensions of the pallet, a first preset algorithm is used to determine a first stacking method for the cargo boxes to be stacked on a first plane on the adjacent sides of the pallet, using the two adjacent sides of the pallet as a reference. In the first stacking method, the two adjacent cargo boxes to be stacked are in contact with each other. Based on the area matching relationship between the first area of the first region and the second area of the second region, the first preset algorithm is used to determine the second stacking method of the cargo boxes to be stacked in the first region. The first region is the area on the first plane where the cargo boxes to be stacked are stacked in the first stacking method but not stacked. The second region is the area in the first plane other than the first region. Based on the first stacking method and the second stacking method, determine the placement position of each cargo box to be stacked in the cargo box set; The pallet has two adjacent sides, including a first side and a second side, the length of the first side being greater than that of the second side; the stacked container has a third side and a fourth side, the length of the third side being greater than that of the fourth side. The method of determining a first stacking method for stacking the boxes on a first plane containing the adjacent sides of the pallet, based on the dimensions of the boxes, the quantity of boxes, and the dimensions of the pallet, using a first preset algorithm and taking the adjacent sides of the pallet as a reference, includes: By exhaustive search, a preset function is solved under preset conditions to obtain a first placement method where the boxes to be stacked are placed on the first side, and a second placement method where the boxes to be stacked are placed on the second side. In the first placement method, the third side of the boxes to be stacked coincides with the first side, or the fourth side of the boxes to be stacked coincides with the first side. In the second placement method, the third side of the boxes to be stacked coincides with the second side, or the fourth side of the boxes to be stacked coincides with the second side. The preset conditions are determined based on the pallet size and the box size. Based on the first and second placement methods, determine the placement areas for stacked containers with different orientations in the first and second placement methods. Based on the placement areas corresponding to the different orientations of the containers to be stacked, the first stacking method is determined. The placement areas for stacked containers with different orientations include the first placement area corresponding to the first orientation, the second placement area corresponding to the second orientation, and the third placement area corresponding to the third orientation. The step of determining a second stacking method for the containers to be stacked in the first area based on the area matching relationship between the first area of the first region and the second area of the second region, using the first preset algorithm, includes: When the second placement area is flush with the first placement area, a first difference region is obtained between the second placement area and the first placement area, and the first region includes the first difference region. When the third placement area is flush with the first placement area, a second difference region is obtained between the third placement area and the first placement area, wherein the first area includes the second difference region; Based on the size relationship between the third area of the first difference region and the fourth area of the second difference region, the movement mode of the second placement area and the third placement area is determined; Based on the placement state of the first plane after the second placement area and the third placement area are moved according to the moving method, the target reference area is determined. Based on the target reference area, the first preset algorithm is used to calculate until the area of the target reference area is smaller than the area of a single cargo box to be stacked, and then the second stacking method for stacking the cargo boxes to be stacked in the target reference area is determined.
2. The method according to claim 1, characterized in that, The preset function is: max((num(Ll)×l+num(Lw)×w) / L+(num(Wl)×l+num(Ww)×w) / W); Wherein, num(Ll) is the first number of the third side of the container to be stacked that coincides with the first side, num(Lw) is the second number of the fourth side of the container to be stacked that coincides with the first side, num(Wl) is the third number of the third side of the container to be stacked that coincides with the second side, num(Ww) is the fourth number of the fourth side of the container to be stacked that coincides with the second side, L is the length of the first side, W is the length of the second side, l is the length of the third side, and w is the length of the fourth side; The solution conditions for the preset function include all of the following conditions: num(Ll)×l+num(Lw)×w≤L; num(Wl)×l+num(Ww)×w≤W; When num(Ll)≠0, num(Ww)≠0; When num(Ll)=0, num(Ww)=0.
3. The method according to claim 2, characterized in that, The method of solving a preset function using an exhaustive search under preset conditions to obtain a first arrangement of the boxes to be stacked on the first side and a second arrangement of the boxes to be stacked on the second side includes: The preset function is solved by exhaustive search to obtain the first quantity, the second quantity, the third quantity, and the fourth quantity; Based on the first quantity and the second quantity, the first placement method is determined; Based on the third quantity and the fourth quantity, the second placement method is determined. The first placement method is as follows: Starting from the intersection of the first side and the second side, place the first number of first boxes and the second number of second boxes in the direction of the first side of the pallet, wherein the third side of the first box coincides with the first side and the fourth side of the second box coincides with the first side. The second placement method is as follows: Starting from the intersection of the first side and the second side, the third number of third boxes and the fourth number of fourth boxes are placed in the direction of the second side of the pallet, wherein the third side of the third box coincides with the second side, and the fourth side of the fourth box coincides with the second side.
4. The method according to claim 3, characterized in that, The step of determining the placement areas corresponding to the stacked containers with different orientations in the first and second placement methods, based on the first and second placement methods, includes: Construct a target coordinate system, wherein the origin of the target coordinate system is the intersection of the first side and the second side, the first side is the horizontal coordinate axis of the target coordinate system, and the second side is the vertical coordinate axis of the target coordinate system; Under the first and second placement methods, obtain the first coordinate of the last first cargo box in the direction of the first side, and the second coordinate of the last third cargo box in the direction of the second side, where the first coordinate is (num(Ll)×l, 0) and the second coordinate is (0, num(Ww)×w). Under the first and second placement methods, obtain the third coordinate of the last second cargo box in the direction of the first side, and the fourth coordinate of the last fourth cargo box in the direction of the second side, wherein the third coordinate is (num(Ll)×l+num(Lw)×w, 0) and the fourth coordinate is (0, num(Ww)×w+num(Wl)×l). The area formed by coordinates (0, 0), coordinates (num(Ll)×l, 0), coordinates (0, num(Ww)×w), and coordinates (num(Ll)×l, num(Ww)×w) is taken as the first placement area; The region formed by coordinates (num(Ll)×l, 0), coordinates (num(Ll)×l+num(Lw)×w, 0), coordinates (num(Ll)×l, num(El)×l), and coordinates (num(Ll)×l+num(Lw)×w, num(El)×l) is taken as the second placement region, where num(El) is the largest number that satisfies num(El)×l≤num(Ww)×w; The region formed by coordinates (0, num(Ww)×w+num(Wl)×l), coordinates (num(Ew)×w, num(Ww)×w+num(Wl)×l), coordinates (0, num(Ww)×w), and coordinates (num(Ew)×w, num(Ww)×w) is taken as the third placement region, where num(Ew) is the largest number that satisfies num(Ew)×w≤num(Ll)×l.
5. The method according to claim 4, characterized in that, The determination of the first stacking method based on the placement areas corresponding to the different orientations of the containers to be stacked includes: For the first placement area, place num(Ll)×num(Ww) to-be-stacked containers parallel to the first container or the third container; For the second placement area, place num(Lw)×num(El) to-be-stacked containers parallel to the second container; For the third placement area, place num(Wl)×num(Ew) to-be-stacked containers parallel to the fourth container.
6. The method according to claim 1, characterized in that, Determining the moving methods of the second placement area and the third placement area based on the size relationship between the third area of the first difference area and the fourth area of the second difference area includes: When the third area is less than or equal to the fourth area, translate the second placement area along the direction of the second side by num(Ww)×w - num(El)×l; Determining the target reference area based on the placement state of the first plane after the second placement area and the third placement area are moved according to the moving methods includes: Taking the area formed by the coordinates (num(Ew)×w, num(Ww)×w), the coordinate (L, num(Ww)×w), the coordinate (L, W), and the coordinate (num(Ew)×w, W) as the target reference area; Based on the target reference area, using the first preset algorithm for calculation until the area of the target reference area is less than the area of a single to-be-stacked container, determining the second stacking method of the to-be-stacked containers stacked in the target reference area includes: Based on the target reference area, using the first preset algorithm for calculation with the adjacent two sides of the target reference area as the reference until L - num(Ew)×w < l, or W - num(El)×l < w, determining the second stacking method of the to-be-stacked containers stacked in the target reference area.
7. The method according to claim 1, characterized in that, Determining the moving methods of the second placement area and the third placement area based on the size relationship between the third area of the first difference area and the fourth area of the second difference area includes: When the third area is greater than the fourth area, translate the third placement area along the direction of the first side by num(Ll)×l - num(Ew)×w; Determining the target reference area based on the placement state of the first plane after the second placement area and the third placement area are moved according to the moving methods includes: Taking the area formed by the coordinates (num(Ll)×l, num(El)×l), the coordinate (L, num(El)×l), the coordinate (L, W), and the coordinate (num(Ll)×l, W) as the target reference area; Based on the target reference area, using the first preset algorithm for calculation until the area of the target reference area is less than the area of a single to-be-stacked container, determining the second stacking method of the to-be-stacked containers stacked in the target reference area includes: Based on the target reference area, taking the two adjacent sides of the target reference area as a reference, calculate using the first preset algorithm until L-num(Ew)×w < l, or W-num(El)×l < w, and determine the second stacking method for stacking the to-be-stacked containers in the target reference area.
8. The method according to claim 1, characterized in that, Based on the first stacking method and the second stacking method, determining the placement positions of each to-be-stacked container in the container set includes: Stacking the first stacking set on the first plane in the first stacking method and the second stacking method, and the container set includes the first stacking set; When the number of to-be-stacked containers in the first stacking set is less than the number of containers, stack the second stacking set layer by layer in the first stacking method and the second stacking method until all the to-be-stacked containers in the container set are stacked, and the second stacking set is the set of the container set except the first stacking set.
Citation Information
Patent Citations
Dislocation palletizing programming method
CN104528389A
Automatic stacking method
CN113071935A