Cargo loading method, device, computer equipment and storage medium

Through the tree structure branch extension method with loading vehicles as the node, cargo is gradually loaded and loading rate is evaluated, and the problem of insufficient accuracy of manual empirical estimates of vehicle models/cabinet types is solved, and the optimal loading scheme is achieved at different scales and types is improved, and the loading accuracy is improved.

CN114254843BActive Publication Date: 2025-08-12SHANGHAI SHUNRUFENGLAI TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202011007745.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-09-23
Publication Date
2025-08-12
Estimated Expiration
2040-09-23

AI Technical Summary

Technical Problem

The prior art relies on manual experience when estimating vehicle models/cabinet types and quantity, and cannot consider the spatial volume and stacking effects during loading, resulting in reduced loading accuracy, especially in large-scale or diversified cargo loading situations.

Method used

The tree structure branch extension method is adopted to branch extension with the loading vehicle as the node, gradually load the cargo and evaluate the loading rate, and finally select the vehicle combination with the best loading rate for loading.

Benefits of technology

Through the branch extension method of the tree structure, the optimal loading scheme can be found under large-scale or diversified loading, improving the accuracy and efficiency of loading.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114254843B_ABST
    Figure CN114254843B_ABST
Patent Text Reader

Abstract

The present application relates to a cargo loading method, apparatus, computer device, and storage medium. The method comprises: extending a tree branch using each loading vehicle as a tree node; each time a branch extension is completed, loading cargo onto the loading vehicles selected for the current branch extension until all cargo to be loaded is loaded onto the loading vehicles corresponding to the current branch, thereby terminating the branch extension for the current branch; evaluating the loading rates of each loading vehicle corresponding to each tree branch, selecting the loading vehicles of the tree branch with the optimal loading rate as the optimal loading vehicle combination; and loading cargo based on the optimal vehicle loading combination. This method can be used to find the optimal loading solution and improve loading accuracy.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a cargo loading method, apparatus, computer equipment, and storage medium. Background Art

[0002] In supply chain scenarios, the accuracy and timeliness of resource scheduling are crucial factors in ensuring efficiency at every stage of the supply chain. In both land and sea transport scenarios, estimating the type and quantity of vehicles / containers required for a shipment is also a crucial component of resource scheduling. Traditionally, estimating the type and quantity of vehicles / containers required for a shipment relies on manual experience, estimating the required type and quantity based on the quantity and approximate volume of the goods. However, this manual experience-based approach has numerous drawbacks, such as the inability to account for the volume of space during loading and the inability to estimate the volume loss and impact caused by stacking. Therefore, existing solutions to loading problems are primarily based on boxing algorithms.

[0003] However, packing algorithms are usually suitable for simple loads of smaller size, but they reduce the loading accuracy for larger loads or when there are a variety of types of goods to be loaded. Summary of the Invention

[0004] Based on this, it is necessary to provide a cargo loading method, device, computer equipment and storage medium that can find the optimal loading solution and thus improve loading accuracy in response to the above technical problems.

[0005] A cargo loading method, comprising:

[0006] Use each loaded vehicle as a tree node to extend the tree branch;

[0007] Each time a branch extension is completed, the loading vehicles selected for the current branch extension are loaded with goods respectively until the loading vehicles corresponding to the current tree branch have completed loading of all the goods to be loaded, and the branch extension of the current tree branch is ended;

[0008] Evaluate the loading rates of the loading vehicles corresponding to the tree branches respectively, and take the loading vehicles of the tree branches with the best loading rates as the best loading vehicle combination;

[0009] Cargo loading is performed according to the optimal vehicle loading combination.

[0010] A cargo loading device, comprising:

[0011] A branch module, used to extend the tree branches with each loaded vehicle as a tree node;

[0012] A loading module is configured to load cargo onto the loading vehicles selected for the current branch extension each time a branch extension is completed, until all cargo to be loaded is loaded onto the loading vehicles corresponding to the current tree branch, thereby terminating the branch extension of the current tree branch;

[0013] An evaluation module, configured to evaluate the loading rates of the loading vehicles corresponding to the tree branches respectively, and take the loading vehicles of the tree branches with the best loading rates as the best loading vehicle combination;

[0014] The loading module is further configured to load cargo according to the optimal loading vehicle combination.

[0015] A computer device includes a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:

[0016] Use each loaded vehicle as a tree node to extend the tree branch;

[0017] Each time a branch extension is completed, the loading vehicles selected for the current branch extension are loaded with goods respectively until the loading vehicles corresponding to the current tree branch have completed loading of all the goods to be loaded, and the branch extension of the current tree branch is ended;

[0018] Evaluate the loading rates of the loading vehicles corresponding to the tree branches respectively, and take the loading vehicles of the tree branches with the best loading rates as the best loading vehicle combination;

[0019] Cargo loading is performed according to the optimal vehicle loading combination.

[0020] A computer-readable storage medium stores a computer program, which, when executed by a processor, implements the following steps:

[0021] Use each loaded vehicle as a tree node to extend the tree branch;

[0022] Each time a branch extension is completed, the loading vehicles selected for the current branch extension are loaded with goods respectively until the loading vehicles corresponding to the current tree branch have completed loading of all the goods to be loaded, and the branch extension of the current tree branch is ended;

[0023] Evaluate the loading rates of the loading vehicles corresponding to the tree branches respectively, and take the loading vehicles of the tree branches with the best loading rates as the best loading vehicle combination;

[0024] Cargo loading is performed according to the optimal vehicle loading combination.

[0025] The cargo loading method, apparatus, computer device, and storage medium described above use each loading vehicle as a tree node to extend the tree branches. Each time a branch extension is completed, cargo is loaded onto the loading vehicles selected for the current branch extension until all cargo to be loaded is loaded onto the loading vehicles corresponding to the current tree branch, thereby terminating the branch extension of the current tree branch. The loading rates of the loading vehicles corresponding to each tree branch are then evaluated, and the loading vehicles of the tree branch with the optimal loading rate are used as the optimal loading vehicle combination. Cargo loading is performed based on the optimal loading vehicle combination. This method searches for different loading combinations by extending the branches of the tree, and then selects the optimal loading combination based on the loading rate. This method is unaffected by scale, enabling the optimal loading solution to be found for both large-scale and small-scale loading, thereby improving loading accuracy. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] Figure 1 Schematic diagram of a flow chart of a cargo loading method in one embodiment;

[0027] Figure 2 A schematic diagram of branch extension of a tree in one embodiment;

[0028] Figure 3 FIG1 is a schematic diagram of branch extension based on pre-pruning in one embodiment;

[0029] Figure 4 FIG1 is a schematic diagram of branch extension based on expected cost in one embodiment;

[0030] Figure 5 A schematic flow chart of steps for loading cargo onto a loading vehicle according to an embodiment;

[0031] Figure 6 is a schematic diagram of cargo loading in one embodiment;

[0032] Figure 7 A schematic diagram of placement point generation in one embodiment;

[0033] Figure 8 A schematic diagram of mapping corner points in one embodiment;

[0034] Figure 9 A schematic diagram of reserving an area for cargo loading in one embodiment;

[0035] Figure 10 A schematic diagram of cargo loading with equally divided tasks in one embodiment;

[0036] Figure 11 is a structural block diagram of a cargo loading device in one embodiment;

[0037] Figure 12 FIG. 1 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION

[0038] In order to make the purpose, technical solutions and advantages of this application more clear, the following further describes this application in detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain this application and are not intended to limit this application.

[0039] The cargo loading method provided in this application can be applied to a computer device capable of simulating cargo loading, or can be directly applied to a loading device or a control device that controls the loading device. The loading device can be a device capable of loading cargo, such as a forklift that can automatically load cargo. Computer devices include but are not limited to servers, personal computers, laptops, smartphones, tablets, and portable wearable devices.

[0040] In one embodiment, Figure 1 As shown, a cargo loading method is provided, which is described by taking the method applied to computer equipment as an example, and includes the following steps:

[0041] Step 102 : Extend the branches of the tree with each loaded vehicle as a tree node.

[0042] Among them, a tree is a data structure that is a hierarchical set of n finite nodes. It is called a tree because it looks like an upside-down tree, that is, its roots are facing upwards and its leaves are facing downwards. A tree usually includes multiple nodes, namely tree nodes. Each node has 0 or more child nodes. A node without a parent node is called a root node, and each non-root node has one and only one parent node. In addition to the root node, each node can be divided into multiple non-intersecting subtrees. A loading vehicle is a vehicle that includes a loading container and is used to load cargo. For example, a vehicle used to load cargo is a truck, and the loading container is the truck's truck cabinet.

[0043] Specifically, when cargo loading is required, a cargo loading instruction is sent to the computer device. If it is applied to a loading device or a control device, a cargo loading instruction is sent to the loading device or the control device. After the computing device loading task receives the cargo loading instruction, the cargo loading simulation program is started to start loading the cargo. The computer device uses different types of loading vehicles as tree nodes to branch out the tree. That is, first initialize each different type of loading vehicle as a root node. For example, when there are three different types of loading vehicles, the tree includes three root nodes. Then, based on each root node, branches are extended downwards respectively. Each root node, as a parent node, can extend multiple child nodes. The child nodes extended from the root node each serve as a parent node and continue to branch downwards.

[0044] Step 104 , each time a branch extension is completed, the loading vehicles selected for the current branch extension are loaded with goods respectively until the loading vehicles corresponding to the current tree branch have completed loading of all the goods to be loaded, thereby ending the branch extension of the current tree branch.

[0045] Cargo loading refers to the process of placing cargo into the loading container of a loading vehicle. Tree branches refer to the branches in the tree structure. Cargo to be loaded refers to the cargo that needs to be loaded.

[0046] Specifically, in the process of branch extension with the loading vehicle as the tree node, each time a branch extension is completed, cargo is loaded on the loading vehicle selected for the current branch extension, and the extension of the tree branch is not completed until all the cargo to be loaded is loaded on this tree branch.

[0047] For example, Figure 2 As shown, a schematic diagram of the branch extension of a tree is provided. Figure 2 , when the root nodes ①, ②, and ③ are initialized according to the loading containers of three different types of loading vehicles to obtain root nodes ①, ②, and ③, the goods are loaded into the loading containers of the loading vehicles corresponding to the root nodes ①, ②, and ③ respectively. The goods corresponding to the three root nodes are the same batch of goods to be loaded. Among them, because the size of the loading container of ② is not consistent with the size of the goods to be loaded, the goods to be loaded cannot be loaded into ② and are removed. Therefore, when the root nodes ① and ③ are loaded with goods and the nodes ①①, ①③, ③①, and ③③ are extended based on ① and ③ respectively, the loading containers of the loading vehicles represented by the nodes ①①, ①③, ③①, and ③③ are loaded with goods again. When the nodes ①①, ①③, ③①, and ③③ branch out again to extend the next nodes ①①①, ①①③, ①③①, and ③①①, the loading vehicles represented by the extended nodes ①①①, ①①③, ①③①, and ③①① are loaded with goods again. And so on, until the tree branch has completed the loading of all the goods to be loaded, and the extension of the tree branch ends. As Figure 2 For nodes ①①③ in the example, when node ①① branches to ①①① and ①①③ and completes cargo loading, the tree branch containing nodes ①①③ has already loaded the eight cargo items to be loaded. Therefore, the tree branch containing nodes ①①③ does not extend downward, that is, the last node of the tree branch is ①①③. Similarly, referring to nodes ③③, since the tree branches ③-③③ containing nodes ③③ have already loaded the eight cargo items to be loaded, nodes ③③ also do not extend downward. It should be understood that each node corresponds to a loaded vehicle, and the number of nodes in a tree branch represents the number of loaded vehicles.

[0048] Step 106 : Evaluate the loading rates of the loading vehicles corresponding to the tree branches respectively, and use the loading vehicles of the tree branches with the best loading rates as the best loading vehicle combination.

[0049] Among them, the loading rate is an indicator used to evaluate loading efficiency, which is usually obtained by dividing the actual cargo volume carried by the maximum cargo volume of the loading container.

[0050] Specifically, when all branches of the tree are extended, the loading rates of the loading vehicles corresponding to each branch are calculated respectively. The loading vehicles of the branch with the largest loading rate are selected as the optimal loading vehicle combination. For example, Figure 2 , assuming that when the tree branch ①—①①—①①③ is the tree branch with the optimal loading rate, then the three vehicle combinations represented by the three nodes ①, ①①, ①①③ in the tree branch are the optimal loading vehicle combinations.

[0051] Step 104: Cargo loading is performed according to the optimal loading vehicle combination.

[0052] Specifically, after the computer device determines the optimal loading vehicle combination through cargo loading simulation, it can output the optimal loading vehicle combination. Then, the loading device actually loads the cargo using the optimal loading vehicle combination.

[0053] The cargo loading method described above uses each loading vehicle as a tree node to extend the tree branches. Each time a branch extension is completed, cargo is loaded onto the loading vehicles selected for the current branch extension until all the cargo to be loaded is loaded onto the loading vehicles corresponding to the current branch, ending the branch extension for the current branch. The loading rates of the loading vehicles corresponding to each tree branch are then evaluated, and the loading vehicles of the tree branch with the optimal loading rate are used as the optimal loading vehicle combination. Cargo loading is then performed based on this optimal loading vehicle combination. This method searches for different loading combinations through tree branch extension and then selects the optimal loading combination based on the loading rate. This method is unaffected by scale, enabling optimal solutions to be found for both large-scale and small-scale loading, improving loading accuracy.

[0054] In one embodiment, step S102 includes: when each loaded vehicle is used as a tree node for branch extension, determining the node to be extended for the current branch extension; estimating the cost of each tree branch where each next node is located after each node to be extended is extended to the next node; pre-pruning according to the cost, retaining the next node corresponding to the lowest cost and the next node as the last node.

[0055] Among them, the node to be extended refers to the node that is currently being extended as the parent node. For example, when the loading vehicle is initialized as the root node and the first branch extension is performed with the root node, the root node is the node to be extended for the current branch extension. The next node obtained by branch extension of the root node is used as the node to be extended for the next branch extension, and so on. The cost of a tree branch refers to the cost of the loading vehicles included in the tree branch. For example, assuming that the tree branch includes loading vehicle 1, and the cost of one trip of loading vehicle 1 is 12 yuan, the cost of the tree branch is 12 yuan. Pruning refers to deleting some unimportant nodes. Specifically in this embodiment, pre-pruning can be understood as deleting some nodes in advance so that branch extension cannot continue.

[0056] Specifically, after determining the nodes to be extended during branch extension, the system first determines the next nodes that can be selected for branch extension for each node to be extended. It then estimates the costs of each branch containing the next nodes corresponding to the node to be extended. Once the costs of each branch containing the next nodes are estimated, high-cost branches are pruned, retaining only the branches with the lowest costs. Furthermore, branches whose next nodes are the last nodes are retained. Furthermore, when the next branch extension is performed, the pruned nodes cannot be extended further, and extension continues only with the remaining nodes that are not the last nodes.

[0057] like Figure 3 As shown in Figure 2, a schematic diagram of branch extension based on pre-pruning is provided. Figure 3 , the costs of the three different types of loading vehicles are 12 yuan, 5 yuan and 15 yuan respectively. When branching out based on the root nodes ① and ③, first determine that the loading vehicles with a cost of 12 yuan and 15 yuan can be selected as the next node when branching out from the root nodes ① and ③, that is, Figure 3Nodes ①①, ①③, ③①, and ③③ are shown. The costs of the tree branches containing nodes ①①, ①③, ③①, and ③③ are estimated. Since the four tree branches containing these four nodes only include the root node and one child node, the cost calculation is to calculate the cost of the loading vehicles corresponding to the root node and child nodes. Root node ① and nodes ①① both have loading vehicles costing 12, so the cost of the corresponding tree branch is 24 yuan. Root node ① and nodes ①③ have loading vehicles costing 12 and 15, respectively, so the cost of the corresponding tree branch is 27 yuan. Root node ③ and nodes ③① have loading vehicles costing 15 and 12, respectively, so the cost of the corresponding tree branch is also 27 yuan. Root node ③ and nodes ③③ both have loading vehicles costing 15, so the cost of the corresponding tree branch is 30 yuan. When performing cost-based pre-pruning, nodes ①③ and ③① can be deleted so that their corresponding tree branches cannot be extended further. That is, when root nodes ① and ③ are extended, only nodes ①① and ③③ are extended. Although the cost of the branch containing nodes ③③ is higher than the costs of the branches containing other nodes, according to the pruning principle of this embodiment, nodes ③③ should be deleted. However, since nodes ③③ are the last nodes in the branch, their cost is already the final cost of the branch, which will not increase, so they are retained instead of pruned. The "×" indicates that the node is deleted.

[0058] In this embodiment, a pre-pruning function is added during the branch extension process, and whether a node should be extended is evaluated by cost. This can not only greatly reduce the complexity of calculation and search to improve efficiency, but also reduce the cost of cargo transportation.

[0059] In one embodiment, step S102 includes: when branch extension is performed after the first branch extension, determining the node to be extended for the current branch extension; evaluating the expected cost of each node to be extended respectively to obtain the expected cost score of each node to be extended; grouping the nodes to be extended belonging to the same parent node, and selecting the node to be extended with the lowest expected cost score as the optimal extension node of the group; and performing branch extension based on the optimal extension node.

[0060] The first branch extension refers to the branch extension based on the root node. The expected cost score is a score that evaluates the expected cost of each node to be extended. The node to be extended refers to the node currently being extended as the parent node.

[0061] Specifically, when a branch extension is performed after the first branch extension, that is, each subsequent branch extension excluding the first branch extension, the node to be extended is determined. The expected cost of each node to be extended is evaluated based on the cost and number of vehicles used in the tree branch where each node to be extended resides, as well as the total number of cargo to be loaded and the currently loaded cargo, to obtain an expected cost score. Then, the nodes to be extended belonging to the same parent node are grouped together, and the node to be extended with the lowest expected cost score is selected from this group as the optimal extension node for the group. Finally, branch extension is performed downward only from this optimal extension node.

[0062] In one embodiment, the expected cost of each node to be extended is evaluated separately to obtain an expected cost score for each node to be extended, including: obtaining the total amount of cargo to be loaded, the vehicle cost of each loading vehicle, and a preset weight coefficient; determining the number of used vehicles and the amount of loaded cargo of each loading vehicle based on the tree branch where the node to be extended is located; determining the used cost based on the vehicle cost and the used quantity; estimating the cost of unloaded cargo based on the total amount of cargo to be loaded, the amount of loaded cargo, the used cost, and the weight coefficient; and summing the used cost and the cost of unloaded cargo to obtain the expected cost score.

[0063] Specifically, the preset weight coefficient is used to adjust the estimated cost weight of unloaded goods, and can be set to 1 by default. The calculation formula for the expected cost score is as follows:

[0064]

[0065] Where Object is the expected cost score, c is the number of vehicles used to load the vehicle, i = {1, 2, 3, ..., c}, C is the vehicle cost of the used loaded vehicles, is the weight coefficient, p is the number of loaded goods, and n is the total number of goods to be loaded.

[0066] like Figure 4 As shown in FIG, a schematic diagram of branch extension based on expected cost is provided. Figure 4When preparing to perform a second branch extension using nodes ①①, ①③, ③①, and ③③, nodes ①①, ①③, ③①, and ③③ are selected as the nodes to be extended. The expected cost scores of nodes ①①, ①③, ③①, and ③③ are evaluated. Referring to nodes ①③, the tree branch containing nodes ①③ currently uses two loading vehicles with costs of 12 and 15, respectively, for a total cost of 27. Using the above expected cost score calculation formula, the expected cost scores of nodes ①③ are calculated as: 27 + 1 * (27 / 6) * 4 = 45. The expected cost score calculation principle for other nodes is similar and will not be repeated here. Since the parent nodes of nodes ①① and ①③ belong to the same root node ①, and the parent nodes of nodes ③① and ③③ belong to the same root node ③, nodes ①① and ①③ are grouped together, and nodes ③① and ③③ are grouped together. From nodes ①① and ①③, node ①③ with the lowest expected cost score is selected as the optimal extension node, and from nodes ③① and ③③, node ③③ with the lowest expected cost score is selected as the optimal extension node. You can then continue branching from nodes ①③ and ③③. “×” indicates that the node has been deleted.

[0067] In this embodiment, by retaining only the best node from the child nodes corresponding to each parent node through expected evaluation and continuing to extend downward, the number of tree layers can be greatly reduced for loading problems with a large number of materials, avoiding the algorithm search from falling into a computational bottleneck.

[0068] In one embodiment, Figure 5 As shown, loading the cargo onto the loading vehicle includes the following steps:

[0069] Step S502 , sorting the cargo to be loaded from large to small according to the cargo area to obtain the cargo placement order.

[0070] Specifically, cargo information is obtained for each item in the loadout. This information includes, but is not limited to, three-dimensional dimensions, weight, rotation restrictions, grouping labels, box type restrictions, stacking compatibility restrictions, stacking load restrictions, and stacking layer restrictions. Based on the three-dimensional dimensions of the items to be loaded, the area and volume of the items can be determined. The items to be loaded are then sorted by area, from largest to smallest, to determine the order in which the items are to be placed.

[0071] Step S504 , obtaining an initial placement point, and placing the first cargo to be loaded in the loading container of the loading vehicle based on the cargo placement sequence and the initial placement point.

[0072] The placement point is the coordinate point used to place the cargo during loading. The initial placement point is the first placement point, preferably the lower left corner of the innermost surface of the loading container. This point is used as the origin to establish a three-dimensional coordinate system. The initial placement point is (0,0,0).

[0073] Specifically, after the initial placement point is obtained, the first cargo to be loaded is obtained based on the cargo placement order, and the first cargo to be loaded is placed into the loading container based on the initial placement point, completing the loading of the first cargo to be loaded.

[0074] Step S506: Generate a placement point set, sort the placement points in the placement point set based on the distance from the initial placement point, and obtain a placement point sequence.

[0075] Specifically, a placement point set includes multiple placement points. Since the cargo already loaded in the loading container changes after a new item is placed in the loading container, a new placement point is generated based on the current loading situation. These multiple placement points are combined into a placement point set. The distance between each placement point in the placement point set and the initial placement point is then calculated using existing distance formulas between two points. The placement points in the placement point set are sorted in order of distance from closest to farthest, resulting in a sorted placement point set, i.e., a placement point sequence.

[0076] Step S508: Place the next cargo to be loaded in the loading container of the loading vehicle based on the cargo placement order and the placement point sequence. Enter step S506, and continue until the loading vehicle is full.

[0077] Specifically, based on the order in which the cargo is placed, the next cargo to be loaded is retrieved from the list of cargoes to be loaded. Then, attempts are made to place the next cargo to be loaded, sequentially following the order of the placement points in the placement point sequence, until the cargo is successfully placed. After loading a cargo, the process proceeds to step S506 to regenerate placement points, resulting in a new placement point set. Then, based on the new placement point set and the cargo placement order, the next cargo to be loaded is loaded again until the loading vehicle is full.

[0078] In addition, after the current loading vehicle is full, the remaining goods to be loaded in the cargo placement sequence will be loaded by the next loading vehicle until all the goods to be loaded in the cargo placement sequence are loaded, and the extension of the tree branch can be ended. Figure 6 As shown, a schematic diagram of cargo loading is provided. Figure 6 There are eight loads to be loaded, sorted by size from largest to smallest. After the first loading vehicle completes loading the first two loads, the first four and last two of the remaining six loads are loaded by the second and third loading vehicles, respectively. This serial loading scheme is suitable for small-scale or medium-volume loads.

[0079] In this embodiment, by sorting the distance between the newly generated placement points and the initial placement points, it can be ensured that when placing goods, the placement points close to the origin are given priority, and the inner layer can be filled first and then loaded to the outside layer by layer, avoiding the situation of laying the lower layer first and then the upper layer, which is in line with the actual loading situation.

[0080] In one embodiment, after step S508, it also includes: when the loading vehicle is full, calculating the corresponding first loading rate as the optimal loading rate; randomly rotating the placement direction of the goods to be loaded; loading the goods in the rotated placement direction, and calculating the corresponding second loading rate; determining a new optimal loading rate by comparing the optimal loading rate and the second loading rate; returning to the step of randomly rotating the placement direction of the goods to be loaded until the iteration end condition is met, and using the loading plan corresponding to the current optimal loading rate as the final loading plan of the loading vehicle.

[0081] The second loading ratio is a loading ratio for a loading solution corresponding to the first loading ratio, in which the cargo is loaded in a different orientation. The iteration condition can be a preset number of iterations or a condition that continues until the loading ratio converges.

[0082] Specifically, since not all cargo to be loaded is a cube, different placement methods for non-cubic cargo can ultimately result in different loading plans, and the corresponding loading rates will also vary. Therefore, the placement direction of cargo can affect the quality of loading. Therefore, to find the optimal loading plan, when loading cargo onto a loading vehicle, after the vehicle is fully loaded, a loading plan is obtained. The loading rate corresponding to this loading plan is calculated, resulting in a first loading rate. Since only one loading plan exists at this point, the first loading rate of this loading plan is considered the optimal loading rate. The cargo to be loaded is then unloaded from the loading vehicle. Within the order of cargo to be loaded, which has been sorted by area, a random number of cargo items are randomly selected and rotated in their placement direction, resulting in a first rotation order of cargo to be loaded. The cargo is then loaded again using the rotated order of cargo to be loaded, resulting in a new loading plan. The loading rate for this new loading plan is calculated, resulting in a second loading rate. The current optimal loading rate is compared with the second loading rate, and the lower loading rate is selected as the new optimal loading rate. That is, if the second loading ratio is lower than the current optimal loading ratio, the second loading ratio is used as the new optimal loading ratio; otherwise, the current optimal loading ratio remains unchanged. At this point, the optimal loading ratio has been obtained from the two loading options. The rotation is continued by randomly selecting a random number of items from the sequence of items to be loaded after the first rotation (or the sequence of items to be loaded in the original direction) and rotating them again to obtain the sequence of items to be loaded after the second rotation. Loading the items again using the sequence of items to be loaded after the second rotation will yield a new loading ratio. Similarly, the loading ratio of this new loading ratio is calculated to obtain a new second loading ratio. The current optimal loading ratio is compared with this new second loading ratio, and the one with the lower loading ratio is selected and updated as the optimal loading ratio. By changing the orientation of the items, different loading options are obtained, and the optimal solution is sought until the iteration conditions are met. The loading ratio is obtained by subtracting the total volume of the loading vehicle from the total volume of the items to be loaded on the loading vehicle.

[0083] In this embodiment, more loading solutions are found by rotating the placement direction of the goods, so as to find the optimal loading solution for loading the vehicle, so as to achieve good results and improve the accuracy of cargo loading.

[0084] In one embodiment, after step S508, the method further includes: when the loading vehicle is full, calculating the corresponding first loading rate as the optimal loading rate; randomly reconnecting the cargo placement order to obtain an updated cargo placement order; loading the cargo based on the updated cargo placement order, and calculating the corresponding third loading rate; determining a new optimal loading rate by comparing the optimal loading rate and the third loading rate; returning to the step of randomly reconnecting the cargo placement order until the iteration end condition is met, and using the loading plan corresponding to the current optimal loading rate as the final loading plan for the loading vehicle.

[0085] The third loading rate is the loading rate of a loading plan that changes the loading order (placement order) of the goods based on the loading plan corresponding to the first loading rate. The iteration condition can be a preset number of iterations or until the loading rate converges.

[0086] Specifically, since the volume of the cargo to be loaded varies, different loading plans can be obtained by placing the cargo in different orders, which also changes the corresponding loading ratio. Therefore, when loading a loading vehicle, after the loading vehicle completes one load, that is, after the loading vehicle is fully loaded, a loading plan is obtained. The loading ratio corresponding to this loading plan is calculated to obtain a first loading ratio. Since there is only one loading plan at this time, the first loading ratio of this loading plan is used as the optimal loading ratio. The cargo to be loaded is then unloaded from the loading vehicle. Within the order of cargo to be loaded, which has been sorted by area, the sorted order is randomly broken into multiple subsequences, which are then randomly reconnected to obtain a reassembled order of cargo to be loaded. For example, if the order of cargo to be loaded, sorted by area, is 1, 2, 3, 4, 5, 6, the subsequences can be randomly broken into 1, 2, 3, 4, 5, and 6. The order of the cargo to be loaded, obtained by random reconnection, is 4, 5, 6, 1, 2, 3.

[0087] After obtaining the first reorganized sequence of goods to be loaded, the cargo is loaded again using the first reorganized sequence to obtain a new loading plan. The loading ratio of the new loading plan is calculated to obtain a third loading ratio. The current optimal loading ratio is compared with the third loading ratio, and the lower loading ratio is selected as the new optimal loading ratio. That is, if the third loading ratio is lower than the current optimal loading ratio, the third loading ratio is selected as the new optimal loading ratio; otherwise, the current optimal loading ratio remains unchanged. At this point, the optimal loading plan has been obtained from the two loading plans. The fragmentation and random reconnection process continues, that is, the first reorganized sequence of goods to be loaded (or the original sequence of goods to be loaded) is fragmented and reconnected again to obtain a second reorganized sequence of goods to be loaded. Loading is performed again using the second reorganized sequence of goods to obtain a new loading plan. Similarly, the loading ratio of this new loading plan is calculated to obtain a new third loading ratio. The current optimal loading ratio is compared with the new third loading ratio, and the lower loading ratio is selected as the optimal loading ratio. By changing the loading order of the goods, different loading plans are obtained, and the optimal solution is found until the iteration conditions are met. The loading rate is obtained by subtracting the total volume of the loading vehicle from the total volume of the cargo to be loaded into the loading vehicle.

[0088] In this embodiment, more loading solutions are found by changing the loading order of the goods, so as to find the optimal loading solution for loading the vehicle, so as to achieve good results and improve the accuracy of cargo loading.

[0089] It should be understood that rotating the placement direction of the goods to be loaded and changing the loading order of the goods to be loaded can also be performed simultaneously. That is, while randomly selecting a random number of goods to be loaded and rotating their placement direction, the loading order can be changed, resulting in a loading plan with both the placement direction and loading order changed.

[0090] In one embodiment, step S508 includes: obtaining the stacking constraints of the loaded cargo corresponding to each placement point in the placement point sequence and the weight constraints of the loading container of the loading vehicle; performing detection based on the weight constraints and the stacking constraints of each placement point in the placement point sequence, respectively, to determine a placement point where the current cargo to be loaded can be placed and place the current cargo to be loaded; when the detection determines that the current cargo to be loaded cannot be placed, returning to the step of obtaining the next cargo to be loaded from the cargo to be loaded based on the cargo placement order as the current cargo to be loaded, until the placement is successful.

[0091] Stacking constraints refer to the stacking restrictions for the cargo to be loaded, including whether it can be stacked, the types of cargo that can be stacked, the stacking height, and the stacking weight. Weight constraints refer to the maximum load weight of the loading vehicle. Already loaded cargo refers to cargo that has already been loaded before the current cargo to be loaded is placed. Because the placement points in the placement point sequence are generated based on the cargo already loaded in the loading container, they typically have corresponding already loaded cargo. Placing a cargo to be loaded at a placement point may cause stacking of the already loaded cargo corresponding to that placement point, necessitating the stacking constraints of the already loaded cargo to be checked.

[0092] Specifically, because the loading vehicle is empty when the first load is placed, it is not subject to stacking or weight constraints. However, each subsequent load after the first one already has loads in the loading container, and therefore may be subject to stacking and weight constraints. Therefore, when placing the load, the next load to be placed is first determined based on the load placement sequence as the current load. Simultaneously, the weight constraints of the loading vehicle currently being loaded are obtained. Furthermore, the loaded loads corresponding to each placement point in the placement point sequence are determined, and the stacking constraints for each loaded load are obtained from the cargo information of the loaded loads. Next, a check is performed to determine whether the current load exceeds the maximum loading weight limit of the loading container. The total weight of the current load in the loading container is calculated. If the total weight of the current load added to the total weight of the already loaded loads exceeds (is greater than) the maximum loading weight of the loading container, the weight constraint check for the current load has failed, and the current load cannot be placed. If the total weight of the current cargo to be loaded is added to the total weight of the loaded cargo and does not exceed (is less than or equal to) the maximum loading weight of the loading container, it means that the weight constraint test of the current cargo to be loaded has passed and the stacking constraint can be further tested.

[0093] The stacking constraint detection is performed in the order of each placement point in the placement point sequence, starting with the first placement point of the goods in the placement point sequence, and the stacking constraint of the loaded goods corresponding to the first placement point. If the loaded goods corresponding to the first placement point cannot accept stacking, or can accept stacking but the type of goods to be loaded does not belong to the type of goods that can accept stacking, or can accept stacking and belongs to the type of goods that can accept stacking but the stacking height / load-bearing capacity exceeds the limit after stacking the current goods to be loaded, it means that the stacking constraint detection is not passed when loading the current goods to be loaded at the first placement point, and loading cannot be performed at the first placement point. Then continue to obtain the next placement point according to the placement point sequence, and perform detection based on the stacking constraint of the loaded goods corresponding to the next placement point. The detection principle is the same and will not be repeated here. Until a placement point that passes the stacking constraint detection is found, it is used as the placement point for placing the current loaded goods for loading.

[0094] If all placement points in the placement point set fail the test, it means that the test has determined that the current cargo to be loaded cannot be placed. If the weight constraint or stacking constraint test determines that the current cargo to be loaded cannot be placed, the next cargo to be loaded is obtained according to the cargo placement order and loaded as the current cargo to be loaded. At this time, since the current placement point set has not successfully placed the cargo, the placement points in the placement point set will continue to be used for loading until the cargo is successfully placed. Once a cargo to be loaded is successfully placed, step S506 can be entered to regenerate a new placement point set. Loading continues based on the generated placement point set and the cargo to be loaded that has not yet been loaded in the cargo placement order until the loading container of the loading vehicle is full. After the current loading vehicle is full, the remaining cargo to be loaded in the cargo placement order will be loaded by the next loading vehicle until all cargo to be loaded in the cargo placement order is loaded, and the extension of the tree branch can be terminated.

[0095] In this embodiment, by considering weight constraints and stacking constraints, cargo loading is made more consistent with actual loading conditions, overweight or damaged cargo is avoided, and the accuracy of cargo loading is improved.

[0096] In one embodiment, the step of generating a set of placement points includes: establishing a three-dimensional coordinate system corresponding to the loading container with the initial placement point as the origin; treating the cargo to be loaded currently placed in the loading container as loaded cargo; determining the corner points where the loaded cargo intersects with the three axes of the three-dimensional coordinate system as placement points; the intersecting corner points include corner points that directly intersect with the three axes, and corner points that directly intersect with the surface of the loaded cargo parallel to any plane corresponding to the three axes; when the corner point of the loaded cargo does not have a directly intersecting axis or surface, mapping the corner point parallel to the surface of the cargo parallel to the loaded cargo to obtain a mapped corner point; the corner point and the mapped corner point constitute the set of placement points.

[0097] The corner point refers to the vertex of the cargo, and the mapped corner point refers to a coordinate point that is parallel to the vertex of the cargo and located on the outer surface of other cargo. The planes corresponding to the three axes include the XY plane, the XZ plane, and the YZ plane.

[0098] Specifically, if Figure 7As described above, a schematic diagram of placement point generation is provided. Referring to the left figure 1, first, a three-dimensional coordinate system (dashed line) is established with the initial placement point as the origin (0, 0, 0). At this time, the first piece of goods to be loaded is loaded into the loading container at the initial placement point. Then, referring to the left figure 2, placement points for placing the next piece of goods to be loaded are generated based on the goods already placed in the loading container. At this time, according to the three-dimensional dimensions of the first piece of goods already loaded, the corner points where the goods already loaded intersect the three axes of the three-dimensional coordinate are respectively (0, 0, 3), (4, 0, 0), and (0, 3, 0). These three corner points are all corner points that directly intersect the three axes and are combined into a placement point set as placement points. Based on this placement point set, the next piece of goods to be loaded is placed. Further, referring to Figure (3), at this time, there are already three pieces of goods in the loading container. A placement point set is generated according to these three pieces of goods already loaded. The illustrated placement points include (0, 0, 3), (4, 0, 1), (0, 3, 2), (4, 3, 0), (10, 0, 0). Among them, the placement points (0, 0, 3), (10, 0, 0) are corner points that directly intersect the three axes. The placement points (4, 0, 1), (0, 3, 2), (4, 3, 0) are corner points that directly intersect the surfaces of the goods already loaded that are parallel to the three axes. (4, 0, 1) and (4, 3, 0) are both corner points where the third piece of goods already loaded intersects the surface of the first piece of goods already loaded that is parallel to the YZ plane. (0, 3, 2) is the corner point where the second piece of goods already loaded intersects the surface of the first piece of goods already loaded that is parallel to the XY plane.

[0099] In addition, since the sizes of the goods are different and may vary greatly, some of the corner points of the goods cannot directly intersect the three axes or the surfaces parallel to the three planes. Using such corner points as placement points may result in an imperfect "pin" - shaped support. Therefore, for such corner points, they are parallel - mapped to the surface of another piece of goods already loaded that is parallel to the goods itself, and the height of the piece of goods already loaded to which they are mapped is higher than or equal to the height of this piece of goods. For example, as Figure 8 shown, a schematic diagram of mapping corner points is provided. Referring to Figure 8 , among the three pieces of goods, the corner point of the right - hand piece of goods is not parallel - mapped. If this corner point is directly used as a placement point to place the goods to be loaded, there will be a certain gap between the goods placed on this piece of goods and the left - hand piece of goods (see the test effect of real - world data). However, if through parallel mapping, the corner point of the right - hand piece of goods is parallel - mapped to the surface of the left - hand piece of goods that is parallel to it and is higher in position than itself, a mapped corner point is obtained. When placing goods on the right - hand piece of goods based on this mapped corner point, there is no gap between the goods placed (see the test effect of real - world data), thus enabling a perfect "pin" - shaped support.

[0100] In this embodiment, since corner points are suitable for supporting situations where the volume of goods is not much different, and mapped corner points are suitable for scenarios where the volume varies and the supporting situations are more complex, a placement point set including corner points and mapped corner points is generated at the same time, the loading accuracy can be ensured for various scenarios.

[0101] In one embodiment, step S106 includes: calculating the total vehicle volume of each loading vehicle corresponding to each tree branch, and calculating the total cargo volume of the cargo to be loaded; subtracting the total vehicle volume of each tree branch from the total cargo volume to obtain the loading rate corresponding to each tree branch; and taking the loading vehicles corresponding to the tree branch with the lowest loading rate as the optimal loading vehicle combination.

[0102] Specifically, Figure 2 Take the tree branch "①—①①—①①①—①①①" in the example for explanation. This tree branch ultimately includes 4 loading vehicles. The volumes of these 4 loading vehicles are obtained from the vehicle information of the loading vehicles respectively, and the volumes of these 4 loading vehicles are summed to obtain the total vehicle volume of each loading vehicle corresponding to the tree branch. In addition, the volume of each cargo is obtained according to the three-dimensional dimensions in the cargo information of the cargo to be loaded, and the volumes of all cargo to be loaded are summed to obtain the total volume of the cargo. Then, the total volume of the vehicle is subtracted from the total volume of the cargo to obtain the loading rate of the tree branch. Since the types and numbers of loading vehicles in different tree branches are different, the loading rates of each tree branch are also different. The lower the loading rate, the closer the total volume of the selected loading vehicle is to the volume of the cargo to be loaded, and it is the most suitable loading. Therefore, the loading vehicle corresponding to the tree branch with the lowest loading rate is selected as the optimal loading vehicle combination.

[0103] Furthermore, during branch extension, cargo is loaded onto each loading vehicle simultaneously. During this loading process, the optimal loading plan for each loading vehicle is determined by rotating the vehicle's direction and changing the order of loading. Therefore, by the time branch extension is complete, the optimal loading plan for each loading vehicle corresponding to each tree branch has been determined. Therefore, the loading plans for each loading vehicle combination are known, and loading can be performed directly based on the optimal loading plan for each vehicle within the optimal loading vehicle combination.

[0104] In this embodiment, the loading vehicle combination corresponding to each tree branch is evaluated by calculating the loading rate, and then the optimal combination is selected, thereby improving the accuracy of cargo loading.

[0105] In one embodiment, another cargo loading solution is provided, including: when loading cargo according to a loading vehicle, reserving an area according to the width of a loading door of the loading vehicle and the width of a loading container of the loading vehicle to obtain a reserved area and a non-reserved area; preferentially loading cargo in the non-reserved area, and loading cargo in the reserved area after completing cargo loading in the non-reserved area.

[0106] Among them, the loading door width refers to the entrance width of the loading vehicle for loading goods, and the width of the loading container can be understood as the width of the vehicle cargo container.

[0107] Specifically, when loading a vehicle, the loading doors are typically categorized into three types: rear loading hatch, side loading, and side door loading. Rear loading hatch and side door loading, since the rear or side openings are fully open, have little impact on the loading and unloading order. However, in the side door scenario, the loading door position can vary significantly depending on the vehicle type and loading door location. For example, if the side door loading hatch is small, initial loading must not block the loading door, otherwise subsequent loading will be impossible. Therefore, when loading cargo through the side door, the vehicle information for the loading door, the loading door position, the loading door width, and the loading container width are obtained from the loading vehicle. The area required for reservation is then calculated based on the loading door width and the loading container width. Area is reserved near the loading door to create a reserved area and a non-reserved area. During loading, cargo is loaded first in the non-reserved area, followed by loading in the reserved area. Accordingly, during unloading, cargo in the reserved area is unloaded first, followed by cargo in the non-reserved area.

[0108] like Figure 9 As shown in the figure, a schematic diagram of cargo loading based on the reserved area is provided. Figure 9 The corridor reservation is the reserved area, and the area outside the corridor reservation is the unreserved area. When reserving area, identify the vehicle doors on the loading container. Then, reserve a corridor area that is the same width as the vehicle doors and the loading container as the reserved area. When loading, load the left and right sides of the reserved area first. Once the reserved area is loaded, load the reserved area.

[0109] In this embodiment, loading is performed by reserving an area, which can avoid loading congestion and ensure smooth loading of goods, thereby improving loading efficiency.

[0110] In one embodiment, Figure 10As shown, a schematic diagram of cargo loading with evenly divided tasks is provided. When loading cargo, if the amount of cargo to be loaded is huge, the cargo to be loaded can be evenly divided into multiple batches of cargo to be loaded. Then, based on the cargo loading scheme described in any of the above embodiments, each batch of cargo to be loaded is loaded separately, and the optimal loading vehicle combination for each batch of cargo to be loaded is found to achieve parallel processing, save time and improve efficiency. Figure 10 Assume there are 8 items to be loaded, and divide them into two batches, each containing 4 items. Then, the two batches are loaded separately, and two loading vehicles are assigned to each batch.

[0111] In this embodiment, parallel processing can be achieved through task splitting, which can save time and improve efficiency for large-scale loading.

[0112] It should be understood that although Figure 1 、 5 The steps in the flowchart are shown in sequence as indicated by the arrows, but these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified in this document, there is no strict order restriction for the execution of these steps, and these steps can be executed in other orders. In addition, Figure 1 、 5 At least part of the steps may include multiple steps or multiple stages. These steps or stages are not necessarily performed at the same time, but can be performed at different times. The order of execution of these steps or stages is not necessarily one by one, but can be performed in turn or alternately with other steps or at least part of the steps or stages in other steps.

[0113] In one embodiment, Figure 11 As shown, a cargo loading device is provided, comprising: a branch module 1102, a loading module 1104 and an evaluation module 1106, wherein:

[0114] The branch module 1102 is used to extend the branches of the tree by using each loading vehicle as a tree node.

[0115] The loading module 1104 is used to load the cargo to the loading vehicles selected for the current branch extension each time a branch extension is completed, until the loading vehicles corresponding to the current tree branch have completed loading of all the cargo to be loaded, thereby ending the branch extension of the current tree branch.

[0116] The evaluation module 1106 is used to evaluate the loading rate of each loading vehicle corresponding to each tree branch, and take the loading vehicles of the tree branch with the best loading rate as the best loading vehicle combination.

[0117] The loading module 1104 is further configured to load cargo according to the optimal vehicle loading combination.

[0118] In one embodiment, the branch module 1102 is also used to determine the node to be extended when branch extension is performed with each loaded vehicle as a tree node; estimate the cost of the tree branch where each next node is located after each node to be extended is extended to the next node; pre-prune according to the cost, and retain the next node corresponding to the lowest cost and the next node as the last node.

[0119] In one embodiment, the branch module 1102 is further used to determine the node to be extended when branch extension is performed after the first branch extension; evaluate the expected cost of each node to be extended respectively to obtain the expected cost score of each node to be extended; group the nodes to be extended belonging to the same parent node, and select the node to be extended with the lowest expected cost score as the optimal extension node of the group; and perform branch extension based on the optimal extension node.

[0120] In one embodiment, the branch module 1102 is further configured to obtain the total quantity of cargo to be loaded, the vehicle cost of each loading vehicle, and a preset weight coefficient; determine the number of used vehicles and the amount of loaded cargo of each loading vehicle based on the tree branch where the node to be extended is located; determine the used cost based on the vehicle cost and the used quantity; estimate the cost of unloaded cargo based on the total quantity of cargo to be loaded, the amount of loaded cargo, the used cost, and the weight coefficient; and sum the used cost and the cost of unloaded cargo to obtain an expected cost score.

[0121] In one embodiment, the loading module 1104 is further used to sort the cargo to be loaded from large to small according to the cargo area to obtain a cargo placement order; obtain an initial placement point, and place the first cargo to be loaded in the loading container of the loading vehicle based on the cargo placement order and the initial placement point; generate a placement point set, and sort each placement point in the placement point set based on the distance from the initial placement point to obtain a placement point sequence; place the next cargo to be loaded in the loading container of the loading vehicle based on the cargo placement order and the placement point sequence; and return to the step of generating a placement point set until the loading vehicle is full.

[0122] In one embodiment, the loading module 1104 is also used to calculate the corresponding first loading rate as the optimal loading rate when the loading vehicle is full; randomly rotate the placement direction of the goods to be loaded; load the goods in the rotated placement direction and calculate the corresponding second loading rate; determine a new optimal loading rate by comparing the optimal loading rate and the second loading rate; return to the step of randomly rotating the placement direction of the goods to be loaded until the iteration end condition is met, and use the loading plan corresponding to the current optimal loading rate as the final loading plan of the loading vehicle.

[0123] In one embodiment, the loading module 1104 is also used to calculate the corresponding first loading rate as the optimal loading rate when the loading vehicle is full; randomly reconnect the cargo placement order to obtain an updated cargo placement order; load the cargo based on the updated cargo placement order, and calculate the corresponding third loading rate; determine a new optimal loading rate by comparing the optimal loading rate and the third loading rate; return to the step of randomly reconnecting the cargo placement order until the iteration end condition is met, and use the loading plan corresponding to the current optimal loading rate as the final loading plan for the loading vehicle.

[0124] In one embodiment, the loading module 1104 is further configured to obtain the stacking constraints of the loaded cargo corresponding to each placement point in the placement point sequence, and the weight constraints of the loading container of the loading vehicle; perform detection based on the weight constraints and the stacking constraints of each placement point in the placement point sequence, determine the placement point where the current cargo to be loaded can be placed, and place the current cargo to be loaded; when the detection determines that the current cargo to be loaded cannot be placed, return to the step of obtaining the next cargo to be loaded from the cargo to be loaded based on the cargo placement order as the current cargo to be loaded, until the placement is successful.

[0125] In one embodiment, the loading module 1104 is further used to establish a three-dimensional coordinate system corresponding to the loading container with the initial placement point as the origin; the goods to be loaded that are currently placed in the loading container are regarded as loaded goods; the corner points where the loaded goods intersect with the three axes of the three-dimensional coordinate system are determined as placement points; the intersecting corner points include corner points that directly intersect with the three axes, and corner points that directly intersect with the surface of the loaded goods parallel to any plane corresponding to the three axes; when there is no directly intersecting axis or surface at the corner point of the loaded goods, the corner point is mapped parallel to the surface of the goods parallel to the loaded goods to obtain a mapped corner point; the corner point and the mapped corner point constitute a placement point set.

[0126] In one embodiment, the evaluation module 1106 is further configured to calculate the total vehicle volume of each loading vehicle corresponding to each tree branch, and the total cargo volume of the cargo to be loaded; subtract the total vehicle volume of each tree branch from the total cargo volume to obtain the loading rate corresponding to each tree branch; and use the loading vehicles corresponding to the tree branch with the lowest loading rate as the optimal loading vehicle combination.

[0127] In one embodiment, the loading module 1104 is also used to reserve an area according to the loading door width and the loading container width of the loading vehicle when loading cargo according to the loading vehicle, so as to obtain a reserved area and a non-reserved area; cargo loading is performed preferentially in the non-reserved area, and cargo loading in the reserved area is performed after cargo loading is completed in the non-reserved area.

[0128] The specific definitions of the cargo loading device can be found in the definitions of the cargo loading method above and will not be repeated here. Each module of the cargo loading device described above may be implemented in whole or in part through software, hardware, or a combination thereof. Each module may be embedded in or independent of a processor in a computer device in hardware form, or may be stored in a computer device memory in software form, so that the processor can call and execute the corresponding operations of each module.

[0129] In one embodiment, a computer device is provided. The computer device may be a terminal, and its internal structure diagram may be as follows: Figure 12 As shown. The computer device includes a processor, a memory, a communication interface, a display screen and an input device connected via a system bus. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The communication interface of the computer device is used to communicate with an external terminal in a wired or wireless manner, and the wireless manner can be achieved through WIFI, an operator network, NFC (near field communication) or other technologies. When the computer program is executed by the processor, a cargo loading method is implemented. The display screen of the computer device can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer device can be a touch layer covering the display screen, or a button, trackball or touchpad provided on the computer device housing, or an external keyboard, touchpad or mouse.

[0130] Those skilled in the art will understand that Figure 12 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.

[0131] In one embodiment, a computer device is further provided, including a memory and a processor. The memory stores a computer program, and the processor implements the steps in the above method embodiments when executing the computer program.

[0132] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps in the above-mentioned method embodiments are implemented.

[0133] Those skilled in the art will appreciate that all or part of the processes in the above-mentioned embodiment methods can be implemented by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application may include at least one of non-volatile and volatile memory. Non-volatile memory may include read-only memory (ROM), magnetic tape, floppy disk, flash memory or optical memory, etc. Volatile memory may include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM).

[0134] The technical features of the above embodiments can be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0135] The above-described embodiments merely represent several implementation methods of the present application. While the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the present invention. It should be noted that a person skilled in the art could make various modifications and improvements without departing from the spirit of the present application, all of which fall within the scope of protection of the present application. Therefore, the scope of protection of the present patent application shall be determined by the appended claims.

Claims

1. A cargo loading method, characterized in that: The method comprises: Use each loaded vehicle as a tree node to extend the tree branch; Each time a branch extension is completed, the loading vehicles selected for the current branch extension are loaded with goods respectively until the loading vehicles corresponding to the current tree branch have completed loading of all the goods to be loaded, and the branch extension of the current tree branch is ended; Calculating the total vehicle volume of each loading vehicle corresponding to each tree branch and the total volume of the cargo to be loaded, subtracting the total vehicle volume of each tree branch from the total cargo volume to obtain the loading rate corresponding to each tree branch, and selecting the loading vehicles corresponding to the tree branch with the lowest loading rate as the optimal loading vehicle combination; Cargo loading is performed according to the optimal loading vehicle combination.

2. The method according to claim 1, characterized in that The branch extension of the tree with each loaded vehicle as a tree node includes: When branch extension is performed with each loaded vehicle as a tree node, a node to be extended for the current branch extension is determined; respectively estimating the cost of the tree branch where each next node is located after each of the nodes to be extended extends to the next node; Pre-pruning is performed according to the cost, and the next node corresponding to the lowest cost and the next node as the last node are retained.

3. The method according to claim 1, characterized in that The branch extension of the tree with each loaded vehicle as a tree node includes: When branch extension is performed after the first branch extension, determining a node to be extended for the current branch extension; Evaluate the expected cost of each of the nodes to be extended respectively to obtain an expected cost score of each of the nodes to be extended; The nodes to be extended that belong to the same parent node are grouped together, and the node to be extended with the lowest expected cost score is selected as the optimal extension node of the group; Branch extension is performed based on the optimal extension node.

4. The method according to claim 3, characterized in that The step of respectively evaluating the expected cost of each of the nodes to be extended to obtain the expected cost score of each of the nodes to be extended includes: Obtaining the total quantity of goods to be loaded, the vehicle cost of each loading vehicle, and a preset weight coefficient; Determining the number of used vehicles and the number of loaded goods of each loading vehicle based on the tree branch where the node to be extended is located; determining a used cost based on the vehicle cost and the used quantity; estimating the cost of unloaded goods based on the total quantity of goods to be loaded, the quantity of loaded goods, the used cost, and the weight coefficient; The used cost and the unloaded goods cost are summed to obtain an expected cost score.

5. The method according to claim 1, wherein The loading of cargo according to the optimal loading vehicle combination includes: Sort the cargo to be loaded from large to small according to the cargo area to obtain the order in which the cargo is placed; Obtaining an initial placement point, and placing a first cargo to be loaded in a loading container of the loading vehicle based on the cargo placement order and the initial placement point; generating a placement point set, and sorting each placement point in the placement point set based on a distance from the initial placement point to obtain a placement point sequence; placing the next cargo to be loaded in the loading container of the loading vehicle based on the cargo placement order and the placement point sequence; Return to the step of generating a set of placement points until the loading vehicle is full.

6. The method according to claim 5, characterized in that The method further comprises: When the loading vehicle is fully loaded, calculating the corresponding first loading rate as the optimal loading rate; Randomly rotating the placement direction of the goods to be loaded; Loading the cargo in the rotated placement direction and calculating the corresponding second loading rate; determining a new optimal loading rate by comparing the optimal loading rate with the second loading rate; Return to the step of randomly rotating the placement direction of the goods to be loaded until the iteration end condition is met, and use the loading plan corresponding to the current optimal loading rate as the final loading plan of the loading vehicle.

7. The method according to claim 5, characterized in that The method further comprises: When the loading vehicle is fully loaded, calculating the corresponding first loading rate as the optimal loading rate; Randomly reconnecting the order of placing the goods to obtain an updated order of placing the goods; Loading cargo based on the updated cargo placement order, and calculating a corresponding third loading rate; Determining a new optimal loading rate by comparing the optimal loading rate with the third loading rate; Return to the step of randomly reconnecting the order of placing the goods until the iteration end condition is met, and use the loading plan corresponding to the current optimal loading rate as the final loading plan for the loading vehicle.

8. The method according to claim 5, characterized in that Placing the next cargo to be loaded in the loading container of the loading vehicle based on the cargo placement order and the placement point sequence includes: Obtaining the next cargo to be loaded from the cargo to be loaded as the current cargo to be loaded based on the cargo placement order; Obtaining a stacking constraint of loaded goods corresponding to each placement point in the placement point sequence, and a weight constraint of the loading container of the loading vehicle; Performing checks based on the weight constraint and the stacking constraint of each placement point in the placement point sequence, determining a placement point where the current cargo to be loaded can be placed, and placing the current cargo to be loaded; When it is determined that the current cargo to be loaded cannot be placed, the process returns to the step of obtaining the next cargo to be loaded from the cargo to be loaded based on the cargo placement order as the current cargo to be loaded, until the placement is successful.

9. The method according to claim 5, characterized in that Generating a set of placement points includes: Establishing a three-dimensional coordinate system corresponding to the loading container with the initial placement point as the origin; Treat the cargo to be loaded currently placed in the loading container as loaded cargo; Determine a corner point where the loaded cargo intersects the three axes of the three-dimensional coordinate system as a placement point; the intersecting corner point includes a corner point that directly intersects the three axes and a corner point that directly intersects a surface of the loaded cargo parallel to any plane corresponding to the three axes; When the corner point of the loaded cargo does not have a directly intersecting axis or surface, mapping the corner point in parallel to a surface of the cargo parallel to the loaded cargo to obtain a mapped corner point; The corner points and the mapped corner points constitute a placement point set.

10. The method according to claim 1, characterized in that The method further comprises: When cargo is loaded on the loading vehicle, area is reserved according to the width of the loading door of the loading vehicle and the width of the loading container of the loading vehicle to obtain a reserved area and a non-reserved area; Cargo loading is performed preferentially in the non-reserved area, and cargo loading in the reserved area is performed only after cargo loading in the non-reserved area is completed.

11. A cargo loading device, characterized in that: The device comprises: A branch module is used to extend the tree branches by taking each loaded vehicle as a tree node; The loading module is used to load the cargo to the loading vehicles selected for the current branch extension each time a branch extension is completed, until the loading vehicles corresponding to the current tree branch have completed loading of all the cargo to be loaded, thus ending the branch extension of the current tree branch; an evaluation module for calculating the total vehicle volume of each loading vehicle corresponding to each tree branch and the total volume of cargo to be loaded, performing a subtraction operation on the total vehicle volume of each tree branch from the total cargo volume to obtain a loading rate corresponding to each tree branch, and selecting the loading vehicles corresponding to the tree branch with the lowest loading rate as the optimal loading vehicle combination; The loading module is further configured to load cargo according to the optimal loading vehicle combination.

12. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 10 are implemented.

13. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 10 are implemented.

Citation Information

Patent Citations

  • Method for loading goods on vehicle and device for determining goods loading plan

    CN101593321A

  • Goods flow direction management and control method and system

    CN111210181A