A path planning method and related apparatus
By employing a path planning method that combines multi-round node expansion and detour detection with cost information from the current and historical rounds, the path planning process is optimized, solving the efficiency and quality issues of path planning when multiple robots or vehicles are operating simultaneously, and achieving more efficient path planning.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- ZHEJIANG HUARAY TECH CO LTD
- Filing Date
- 2026-02-07
- Publication Date
- 2026-06-05
AI Technical Summary
Existing path planning methods have failed to effectively address the issues of low efficiency and low path quality when multiple robots or vehicles are operating simultaneously, especially when considering path detours.
By expanding nodes in multiple rounds and combining cost information from the current and historical rounds, detour detection is performed, and child nodes with normal path planning are selected first, thereby reducing the probability of detours and improving the efficiency and flexibility of path planning.
It improves the efficiency and flexibility of path planning, reduces the probability of target units detouring during the path planning process, and enhances the quality of path planning.
Smart Images

Figure CN122149456A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of path planning technology, and in particular to a path planning method and related apparatus. Background Technology
[0002] With the continuous development of intelligent technology, intelligent robots and automated guided vehicles (AGVs) have been widely used in various stages and application scenarios, including automated production, logistics warehousing, and hazardous operations. When multiple robots or vehicles operate simultaneously, reasonable scheduling and path planning methods can effectively improve work efficiency and reduce operating costs. To plan collision-free paths, existing methods involve sequentially planning paths for all units in the scenario. This approach does not consider detours during path planning, which can easily lead to low planning efficiency or low-quality paths.
[0003] Therefore, improving the efficiency and flexibility of path planning has become an urgent problem to be solved. Summary of the Invention
[0004] The main technical problem addressed by this application is to provide a path planning method and related apparatus that can improve the efficiency and flexibility of path planning.
[0005] To address the aforementioned technical problems, this application provides a path planning method, comprising: expanding the child nodes matched by the parent node in the current round based on conflicting target units; obtaining current cost information for resolving the current conflict based on reference path segments corresponding to each target unit under the parent node and the child nodes; obtaining historical cost information for resolving historical conflicts in at least some historical rounds; determining the detour detection result of the child node matching in the current round based on the current cost information and the historical cost information; and selecting a target node from all the child nodes based on the detour detection results of all the child nodes in the current round, and determining the target path segment of the target unit corresponding to the target node.
[0006] To solve the above-mentioned technical problems, another technical solution adopted in this application is: to provide an electronic device, including a memory and a processor coupled to each other, wherein the memory stores program instructions, and the processor is used to execute the program instructions to implement the method mentioned in the above technical solution.
[0007] To solve the above-mentioned technical problems, another technical solution adopted in this application is to provide a computer-readable storage medium having program instructions stored thereon, wherein the program instructions, when executed by a processor, implement the method mentioned in the above technical solution.
[0008] The beneficial effects of this application are as follows: Unlike existing technologies, the path planning method proposed in this application plans path segments for target units in the target scenario through multi-round node expansion. After detecting conflicts between different target units in the current round, matching child nodes are obtained based on priority relationships. By combining historical cost information from at least some historical rounds with current cost information from the current round, detour detection is performed to determine whether detours exist in the path planning results corresponding to each child node in the current round. Child nodes with normal path planning are preferentially selected as target nodes, and subsequent iterations are performed, reducing the probability of target units detouring during path planning and improving the efficiency and flexibility of path planning. Attached Figure Description
[0009] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort. Wherein: Figure 1 This is a flowchart illustrating one implementation method of the path planning method of this application; Figure 2 yes Figure 1 The flowchart of step S103 corresponds to another embodiment; Figure 3 yes Figure 1 The flowchart of step S104 corresponds to another embodiment; Figure 4 yes Figure 1 A flowchart of another embodiment following step S104; Figure 5 yes Figure 4 A schematic diagram of step S402 corresponding to one embodiment; Figure 6 This is a schematic diagram of the structure of one embodiment of the electronic device of this application; Figure 7 This is a schematic diagram of one embodiment of the computer-readable storage medium of this application. Detailed Implementation
[0010] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments, and different embodiments can be adaptively combined. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of this application.
[0011] Please see Figure 1 , Figure 1 This is a flowchart illustrating one embodiment of the path planning method of this application. The path planning method is applied to a target scenario, which includes multiple target units. To achieve path planning for multiple target units within the target scenario, the path planning method proposed in this application specifically includes: S101: Based on the conflicting target units in the current round, expand the child nodes matched by the parent node in the current round.
[0012] In one implementation, for different conflicting target units in the current round, a corresponding priority relationship is constructed, the child node corresponding to each priority relationship is determined, and the path replanning is performed on the corresponding target unit according to the priority relationship corresponding to the child node.
[0013] In some implementation scenarios, during the path planning process for various target units in the target scenario, the parent node for the current round is determined based on the path planning results of previous rounds. This parent node corresponds to the first and second target units that cause path interference. Different priority relationships are created between the first and second target units, and two child nodes corresponding to the aforementioned parent node are constructed according to each priority relationship.
[0014] Specifically, the parent node in the current round represents the interference between the first target unit and the second target unit during path planning. Different priority relationships are created between the first and second target units: the first target unit has a higher priority than the second target unit, and the first target unit has a lower priority than the second target unit. Based on each priority relationship, child nodes corresponding to the parent node are constructed. For example, for the first and second target units corresponding to the parent node, the first target unit has a higher priority than the second target unit, and a corresponding first child node is constructed; similarly, the second target unit has a higher priority than the first target unit, and a corresponding second child node is constructed.
[0015] The process of expanding the child nodes mentioned above can refer to the existing Priority-Based Search (PBS) algorithm.
[0016] In a specific application scenario, the target scenario mentioned above is a smart manufacturing scenario or a logistics scenario, and the target unit in the target scenario is an automated guided vehicle or a mobile robot.
[0017] S102: Based on the reference path segments corresponding to each target unit under the parent node and child node, obtain the current cost information consumed to resolve the current conflict.
[0018] In one implementation, at least some target units under the parent node correspond to planned reference path segments. The reference path segments corresponding to each target unit under the parent node are compared with the reference path segments corresponding to each target unit under the child node to determine the current cost information consumed in resolving the current conflict in the current round.
[0019] In some implementation scenarios, the expansion of child nodes is used to resolve some conflicts of the corresponding parent nodes, calculating the current cost increment corresponding to the changed reference path segment due to conflict resolution. This current cost increment is used as the current cost information. Specifically, the current cost increment is determined based on the increase in the path cost of the newly expanded child node, which is determined by the change in path length and the change in time consumed by running the path.
[0020] S103: Obtain historical cost information for resolving historical conflicts in at least some historical rounds, and determine the detour detection result of child node matching in the current round based on the current cost information and the historical cost information.
[0021] In one implementation, in response to at least a portion of the historical rounds that have been iterated prior to the current round, the historical cost information consumed in resolving the corresponding historical conflicts in each historical round is determined based on the node expansion results corresponding to at least a portion of the historical rounds. Based on the historical cost information corresponding to each historical round and the current cost information corresponding to the current round, the detour detection result for the matching of child nodes in the current round is determined. The detour detection result is used to characterize whether the reference path segment of the target unit under the corresponding child node has undergone excessive detours.
[0022] In some implementation scenarios, the current cost information includes the current cost increment, and the historical cost information corresponding to each historical round includes the historical cost increment. The average cost increment of all historical rounds is obtained. It is then determined whether the cost increment for resolving each conflict is greater than the average cost increment. If it is greater, the detour detection result matched by the corresponding child node is determined to be abnormal, indicating that at least some target units are detouring. If it is less than or equal to the average cost increment, the detour detection result matched by the corresponding child node is determined to be normal, indicating that the target units in the planned path segment have not shown significant detours.
[0023] S104: Based on the detour detection results of all child nodes in the current round, select the target node from all child nodes and determine the target path segment of the target unit corresponding to the target node.
[0024] In one implementation, after determining the detour detection results of all child nodes in the current round, the child nodes with normal detour detection results are selected as candidate nodes. For each candidate node, a target node is determined based on the current cost increment. The reference path segments corresponding to multiple target units under the target node are then selected as target path segments.
[0025] In some implementation scenarios, for the candidate nodes selected through screening, the candidate node corresponding to the minimum total cost value is taken as the target node.
[0026] The path planning method proposed in this application plans path segments for target units in the target scenario through multi-round node expansion. After detecting conflicts between different target units in the current round, matching child nodes are obtained based on priority relationships. By combining historical cost information from at least some historical rounds and current cost information from the current round, detour detection is performed to determine whether detours exist in the path planning results corresponding to each child node in the current round. Child nodes with normal path planning are preferentially selected as target nodes, and subsequent iterations are performed, reducing the probability of target units detouring during path planning and improving the efficiency and flexibility of path planning.
[0027] In one embodiment, the current cost information includes the current cost increment and the current number of unbreakable nodes. The specific process of obtaining the current cost information includes: based on the reference path segment corresponding to the parent node in the current round and the reference path segment corresponding to the child node in the current round, obtaining the current cost increment and the current number of unbreakable nodes corresponding to the target unit after the path update.
[0028] Specifically, for any target unit, based on the reference path segment of the target unit under its corresponding parent node and the reference path segment of the target unit under its replanned child nodes, the current cost increment and the current number of unbreakables for that target unit under the corresponding child node are obtained. It should be noted that the current cost increment and the corresponding number of unbreakables for the same target unit under different child nodes can be different.
[0029] In some implementation scenarios, during the process of expanding a parent node into a child node, at least one reference path segment of a target unit is replanned. Based on the reference path segment of the target unit before and after replanning, the current cost increment corresponding to the target unit in the current round is determined. Furthermore, based on the reference path segment of the target unit before and after replanning, the number of conflicts resolved by the target unit is determined, and this number of resolved conflicts is taken as the current number of conflict resolutions for the target unit.
[0030] In a specific application scenario, based on the reference path segment set corresponding to the parent node in the current round, it is determined that there are two path conflicts between target unit A and target unit B. To resolve these two conflicts, corresponding child nodes a and b are obtained through the corresponding implementation method described above. Under child node a, the priority of target unit A is higher than that of target unit B. Based on this priority relationship and the other priority relationships inherited by child node a from its parent node, the path segments of target unit B are replanned. For target unit B, the current cost increment corresponding to target unit B is calculated based on the path length increment and time cost between the new reference path segments after planning and the reference path segments before planning. Furthermore, in response to the two conflicts between target unit A and target unit B being resolved after the path planning of target unit B is replanned, the current number of conflict resolutions for target unit B is determined to be 2. The specific process of calculating the current cost increment based on the reference path segments before and after planning can refer to existing calculation methods and will not be elaborated here.
[0031] Please see Figure 2 , Figure 2 yes Figure 1 The flowchart of step S103 corresponds to another embodiment. Specifically, the implementation process of step S103 includes: S201: Based on the historical cost information corresponding to the target unit in all historical rounds, obtain the cumulative cost and resolution cumulative amount corresponding to the target unit.
[0032] In one implementation, the historical cost information for each target unit in each historical round includes the historical cost increment and the historical number of unbreakables. For each target unit in a child node, the historical cost increments corresponding to all historical rounds and the current cost increment corresponding to the current round are sequentially added together to obtain the cumulative cost of the target unit in the corresponding child node. Also, for each target unit in a child node, the historical number of unbreakables corresponding to all historical rounds and the current number of unbreakables corresponding to the current round are sequentially added together to obtain the cumulative unbreakables of the target unit in the corresponding child node.
[0033] In a specific application scenario, the response is based on the fact that there have been a first historical round and a second historical round prior to the current round. The historical cost information corresponding to the target unit P in the first historical round includes the historical cost increment. And the number of historical conflicts The historical cost information corresponding to the target unit P in the second historical round includes the historical cost increment. And the number of historical conflicts The current cost information for the target unit P under a certain sub-node in the current round includes the current cost increment. and the current number of unraveling Based on this, the cumulative cost corresponding to the target unit P in the current round is the historical cost increment. Historical cost increment and current cost increment The sum of the values; and the cumulative amount of unraveling corresponding to the target unit P in the current round, which is the historical number of unravelings. Historical number of conflicts and the current number of unraveling The sum of .
[0034] In one embodiment, step S201 can also be implemented by summing up the historical cost increments corresponding to the same target unit across all historical rounds to obtain the cumulative cost of the corresponding target unit. Additionally, the historical unconflict resolution quantities corresponding to the target unit across all historical rounds can be summed up to obtain the cumulative unconflict resolution quantity of the corresponding target unit.
[0035] Alternatively, the historical cost increments corresponding to the same target unit across several consecutive historical rounds can be summed to obtain the cumulative cost of the corresponding target unit. Similarly, the historical number of unbreakable events corresponding to the same target unit across several consecutive historical rounds can be summed to obtain the cumulative unbreakable event amount for the corresponding target unit. The number of historical rounds selected for calculating the cumulative cost and unbreakable event amounts can be set according to the actual scenario. For example, for the first number of historical rounds adjacent to the current round, the historical cost increments corresponding to the target unit can be summed to obtain the cumulative cost; and for the first number of historical rounds adjacent to the current round, the historical number of unbreakable events corresponding to the target unit can be summed to obtain the cumulative unbreakable event amount.
[0036] S202: Based on the cumulative cost, cumulative unbreakable cost, and current number of unbreakable units, obtain the reference cost value that matches the corresponding target unit.
[0037] In one implementation, for each target unit in a child node, the ratio between the corresponding accumulated cost and the corresponding accumulated resolving conflict is used as the unit path cost consumed by the corresponding target unit to resolve a single conflict. Based on the unit path cost and the current number of resolving conflicts for the corresponding target unit, a reference cost value matching the corresponding target unit in the corresponding child node is determined.
[0038] In some implementation scenarios, after calculating the cumulative cost and resolution amount corresponding to the target unit in the current round using the corresponding implementation methods described above, the ratio between the cumulative cost and resolution amount is obtained, and this ratio is used as the unit path cost. A pre-set reference weight is obtained, and the product of the unit path cost, the current number of resolutions, and the reference coefficient is calculated. This product is then used as the reference cost value matching the corresponding target unit in the current round. The specific calculation formula for the reference cost value is as follows:
[0039] in, Indicates the next round Target unit in each child node Corresponding reference value Indicates the target unit The cumulative cost, Indicates the target unit The cumulative amount of the resolution of the conflict, Indicates the next round Target unit in each child node The corresponding current number of unpacked nodes, Indicates the reference weight.
[0040] It should be noted that the above reference weights are used to determine the range of reference values in the state where no detour has occurred, and their specific values can be set according to the actual scenario.
[0041] S203: Based on the comparison between the current cost increment and the reference cost value, determine the detour detection result of the corresponding child node matching.
[0042] In one implementation, after determining the reference cost value for matching the target unit, the current cost increment corresponding to the target unit in each sub-node of the current round is compared with the matching reference cost value to determine the corresponding comparison relationship. In response to the number of target units whose current cost increment is greater than the matching reference cost value being greater than or equal to a preset number threshold, the detour detection result of the corresponding sub-node is determined to be abnormal, i.e., at least some target units under the corresponding sub-node are detouring. Alternatively, in response to the number of target units whose current cost increment is greater than the matching reference cost value being less than a preset number threshold, the detour detection result of the corresponding sub-node is determined to be normal, i.e., all target units under the corresponding sub-node are not significantly detouring. The preset number threshold can be set according to the actual scenario.
[0043] In a specific application scenario, for any child node N in the current round, this child node N includes the target unit. Target unit and target unit For each corresponding reference path segment, the current cost increment and reference cost value matched for each target unit in child node N are obtained through any of the above implementation methods. For all target units in child node N, the number of target units whose current cost increment is greater than the matched reference cost value is obtained. If the number of target units is greater than or equal to a preset number threshold, the detour detection result matched by child node N is determined to be abnormal, i.e., a detour exists; otherwise, the detour detection result matched by child node N is determined to be normal, i.e., no detour exists. For example, if the preset number threshold is set to 1, if among all target units corresponding to child node N, the target unit If the current cost increment is greater than the matching reference cost, then the detour detection result of child node N is determined to be abnormal.
[0044] The above scheme determines the cumulative cost and conflict resolution amount by combining at least some historical rounds, and predicts the reference cost required for path planning of the corresponding target unit in the current round based on the cumulative cost, cumulative conflict resolution amount, and current number of conflict resolutions. By comparing the actual current cost increment with the reference cost, the detour detection results for matching child nodes are determined. This helps to select non-detoured child nodes to continue round iterations until the target trajectory segments corresponding to all target units are obtained, thus improving the trajectory quality of the target trajectory segments corresponding to the planned target units.
[0045] In one implementation, Figure 1 The implementation process of step S103 may further include: obtaining the cumulative cost and resolution cumulative amount for each target unit based on the historical cost information corresponding to the historical rounds; obtaining the reference unit path cost for each target unit based on the corresponding cumulative cost and resolution cumulative amount; and obtaining the actual unit path cost for the target unit in the child nodes under the current round based on the corresponding current cost increment and current resolution number; and determining the detour detection result matched by the corresponding child node based on the reference unit path cost and the actual unit path cost.
[0046] Specifically, for each target unit, the ratio between the corresponding accumulated cost and the corresponding accumulated conflict resolution is used as the reference unit path cost for that target unit. Furthermore, the ratio between the current cost increment and the current number of conflict resolutions for each target unit in a child node is used as the actual unit path cost for that target unit. If the actual unit path cost for at least one target unit in a child node is greater than the corresponding reference unit path cost, it is determined that at least some target units under that child node are taking a detour. Alternatively, if the actual unit path cost for all target units in a child node is less than or equal to the corresponding reference unit path cost, it is determined that all target units under that child node are not taking a detour. The methods for obtaining the accumulated cost and accumulated conflict resolution can refer to the corresponding implementation methods described above, and will not be elaborated further here.
[0047] Please see Figure 3 , Figure 3 yes Figure 1 The flowchart of step S104 corresponds to another embodiment. Specifically, the implementation process of step S104 includes: S301: The corresponding detour detection results represent the child nodes of all target units that have not been detoured as candidate nodes. Based on the total cost of the candidate nodes, the target node is determined from all candidate nodes. The reference path segments of each target unit under the target node are taken as the target path segments.
[0048] In one implementation, after determining the detour detection result for each child node in the current round, the child nodes with normal detour detection results are selected as candidate nodes. Based on the total cost value corresponding to each candidate node, a target node is determined from all candidate nodes. The reference path segments corresponding to each target unit under the target node are selected as target path segments.
[0049] In some implementation scenarios, for each candidate node, the corresponding cost value of each target unit is added together to obtain the total cost value of that candidate node. The candidate node with the minimum total cost value is then selected as the target node.
[0050] In some implementation scenarios, if the detour detection results of all child nodes in the current round are abnormal, then the child node corresponding to the minimum total cost will be taken as the target node.
[0051] In one embodiment, the process of determining the target node from all candidate nodes may further include: determining the total cost value corresponding to each candidate node based on the cost value corresponding to each target unit under each candidate node; obtaining the minimum total cost value corresponding to all candidate nodes; and determining the reference cost range for matching in the current round based on the minimum total cost value and a preset suboptimal coefficient; and selecting the target node based on the corresponding number of interferences for candidate nodes whose total cost value is within the reference cost range.
[0052] Specifically, the cost values corresponding to each target unit are summed to obtain the total cost value corresponding to the candidate node. After identifying the child nodes for which no detour is observed for all target units according to the detour detection results as candidate nodes, the minimum value is determined from the total cost values of all candidate nodes. A pre-set suboptimal coefficient is obtained, and the product of the minimum cost value and the pre-set suboptimal coefficient is used as the upper limit of the range. Based on the minimum cost value and the upper limit of the range, a reference cost range is determined. From the candidate nodes whose total cost value falls within the reference cost range, the candidate node with the smallest number of interferences is selected as the target node.
[0053] In a specific application scenario, in the current round, candidate nodes correspond to target units X and Y. The cost value of target unit X (200) is added to the cost value of target unit Y (300), resulting in a total cost value of 500 for the candidate node. Since the total cost value of 500 is the minimum total cost value and the preset suboptimal coefficient is 1.1, the upper limit of the range obtained by multiplying the minimum total cost value by the preset suboptimal coefficient is 550, thus determining the reference cost range as [500, 550]. Candidate nodes whose total cost value falls within the reference cost range [500, 550] are selected. For example, if the total cost value of candidate nodes x1 and y1 falls within the reference cost range, and the number of interferences for candidate node x1 is 90 while that for candidate node y1 is 95, then to improve solution efficiency, candidate node x with the smaller number of interferences is selected as the target node.
[0054] In one embodiment, after determining the reference cost range based on the minimum total cost and a preset suboptimal coefficient, a first reference node with a corresponding interference quantity difference less than a preset difference threshold is selected from candidate nodes whose corresponding total cost falls within the reference cost range. The first reference node with the minimum corresponding total cost is then designated as the target node.
[0055] In a specific application scenario, the determined reference cost range is [500, 550]. Candidate nodes whose total cost falls within the reference cost range of [500, 550] are selected. For example, the total cost of the first reference node x2 is 500, and the total cost of the first reference node y2 is 530, both falling within the reference cost range. Since the number of interventions corresponding to the first reference node x2 is 90, and the number of interventions corresponding to the first reference node y2 is 92, and the difference of 2 between the two is less than the preset difference threshold 3, the first reference node x2 with the smaller total cost is then selected as the target node.
[0056] In one embodiment, after determining the reference cost range based on the minimum total cost and the preset suboptimal coefficient, for candidate nodes whose corresponding total cost is within the reference cost range, the target node is determined based on the corresponding total cost, the number of interferences, and the backtracking path detection results.
[0057] In some implementation scenarios, a second reference node is selected from candidate nodes whose total cost is within the reference cost range, and the difference in the number of interferences is less than a preset threshold. Return path detection results are obtained to characterize whether each target unit under the corresponding second reference node has a return path. For second reference nodes without a return path, the second reference node with the smallest total cost and / or the smallest number of interferences is selected as the target node.
[0058] The process of detecting return paths includes: for target units under candidate nodes, determining the return path based on the overlap length between the newly planned reference path segment and the path segment already issued to the same target unit under the previous target time window. Specifically, when the overlap path length exceeds a preset length threshold, the corresponding return path detection result is determined to indicate the existence of a return path.
[0059] In some implementation scenarios, from candidate nodes whose total cost is within the reference cost range, a second reference node is selected whose difference in the number of interventions is less than a preset threshold. The historical number of interventions corresponding to the target node in the previous historical round is obtained. For a second reference node that has no return path and whose number of interventions is less than or equal to the historical number of interventions, the second reference node with the smallest total cost and / or the smallest number of interventions is selected as the target node.
[0060] In a specific application scenario, in the current round, the second reference nodes whose total cost is within the reference cost range of [500, 550] and whose interference quantity difference is less than a preset threshold include: second reference node x3, second reference node y3, and second reference node z3. Second reference node x3 has 50 interferences, a total cost of 500, and no backtracking path. Second reference node y3 has 48 interferences, a total cost of 510, and a backtracking path. Second reference node z3 has 49 interferences, a total cost of 509, and no backtracking path. Although second reference node y3 has the fewest interferences, to optimize for cases with backtracking paths, second reference node z3, with a slightly larger interference number and a lower total cost, is selected as the target node.
[0061] In one implementation, after determining the detour detection result for each child node in the current round, the child nodes with normal detour detection results are designated as candidate nodes. For the target units under the candidate nodes, a turnaround path is determined based on the overlap path length between the newly planned reference path segment and the path segment already issued for the same target unit in the previous target time window. That is, based on the overlap path length corresponding to the candidate nodes and the current cost increment, the target nodes are determined from all candidate nodes to reduce the probability of turnaround paths, and the reference path segments corresponding to each target unit under the target node are designated as target path segments.
[0062] S302: Update the current round to the historical round, set the target node as the parent node under the current round, return to the steps of mutually conflicting target units under the current round, expand the child nodes matched by the parent node under the current round, until the target path segments corresponding to all target units within the target time window are obtained.
[0063] In one implementation, after determining the target node in the current round and using the reference trajectory segment corresponding to the target node as the target trajectory segment, the current round is updated to the historical round, and node expansion for the next round is performed. That is, the target node corresponding to the previous historical round is used as the parent node in the current round, and the process is returned to... Figure 1 Step S101 continues until the target path segment obtained after replanning all target units within the target time window is acquired.
[0064] In some implementation scenarios, to improve the success rate of path segment replanning, this application breaks down the large-scale path planning task into multiple consecutive target time windows for sequential solving. For each target time window, the target path segment corresponding to each target unit is replanned using the method mentioned in any of the above embodiments.
[0065] In one implementation, after determining the target node corresponding to the current round, the current round is updated to a historical round, and the target node corresponding to that historical round is set as the parent node under the current round, and the process is returned to... Figure 1 Step S101 is executed, followed by subsequent steps. In response to a failure to plan the target path segment in the current round, at least one child node from the corresponding detour detection result in a historical round that represents a detour in all target units is selected as a candidate node, and a new target node is selected from the candidate nodes. The newly determined target node is used as the parent node in the current round, and the process returns to the steps of expanding the child nodes matched by the parent node in the current round based on conflicting target units, until the target path segments corresponding to all target units within the target time window are obtained.
[0066] In some implementation scenarios, after the target node is obtained through step S301, constraint identifiers are set for the associated nodes corresponding to the target node. The associated nodes and the target node share the same parent node. If the target node's expansion of child nodes fails in the next round, the constraint identifiers of the associated nodes are removed, and the associated nodes are updated to be the target nodes.
[0067] Specifically, the current round is updated to the historical round, and the target node corresponding to the historical round is used as the parent node of the current round. If the target path segment planning fails in the latest current round, the constraint flag of the associated node in the previous historical round is removed, the associated node is updated to the target node, the updated target node is used as the parent node of the next round, and the child nodes are expanded.
[0068] In some implementation scenarios, in response to the failure of target path segment planning in the current round, the child nodes of all target units that have detours in the corresponding detour detection results of the previous historical round are selected as candidate nodes. These candidate nodes are then sorted in ascending order of cost increment to obtain a candidate node sequence. Candidate nodes are sequentially selected from this sequence as target nodes, and the newly determined target nodes are used as the parent nodes in the current round, until the target path segment is planned based on the parent nodes in the current round.
[0069] In a specific application scenario, the current round includes a first child node and a second child node. The detour detection result for the first child node is "no detour," while the detour detection result for the second child node is "a detour exists." The first child node is prioritized as the target node, and a new round of target path segment planning is performed for it. If the planning fails, the second child node, whose detour detection result indicates a detour exists, is re-selected as the target node, and a new round of target path segment planning is performed for the newly determined target node.
[0070] The above scheme prioritizes selecting child nodes with normal detour detection results as target nodes to suppress detour phenomena during path segment planning, thereby improving the quality of the obtained target trajectory segments. Furthermore, when planning a target trajectory segment based on a child node with normal detour detection results fails, a child node with abnormal detour detection results is reselected from historical rounds as the target node, reducing the probability of target trajectory segment planning failure and improving the flexibility of path segment planning.
[0071] In one embodiment, a complete path is pre-planned based on the target tasks matched by each target unit to obtain the initial path corresponding to each target unit. Subsequently, the Rolling-Horizon Coevolutionary (RHCR) algorithm is used to replan the paths of each target unit under each target event window. In step S101, during the path replanning process for all target units within the target time window in the current round, the root node path is assigned, that is, the reference path segment matched by each target unit under the current target time window is planned first. Further, the root node is used as the first parent node, and conflicts between different target units are detected to split the node, that is, the corresponding child nodes are expanded. The specific node expansion process can be referred to the corresponding implementation method described above.
[0072] Specifically, for the current target time window, after replanning the reference path segments corresponding to each target unit, the cost of each reference path segment corresponding to the target unit is compared with the cost of the corresponding initial path segment in the initial path. The reference path segment or initial path segment with the smaller cost is selected as the root node path for the corresponding target unit under the current target time window. Alternatively, if the cost of the reference path segment corresponding to the target unit is not lower than the cost of the corresponding initial path segment in the initial path, then the corresponding initial path segment in the initial path is selected as the root node path for the corresponding target unit under the current target event window, to avoid the need to resolve new conflicts after selecting a reference path segment.
[0073] In a specific application scenario, the current target time window is from time step 20 to time step 40. For this current target time window, the path segment corresponding to the current target time window for any target unit R in the target scenario is the initial path segment r1, and the cost value of the initial path segment r1 is 130. When replanning the path for the current target time window, the PBS algorithm is used to plan the reference path segment r2 corresponding to the target unit R, and the cost value of the reference path segment r2 is 150. Since the cost value of the corresponding initial path segment r1 is less than the cost value of the corresponding reference path segment r2, the initial path segment r1 with the smaller cost value is assigned as the target unit R in the root node of the current target time window. Alternatively, if the cost value of the initial path segment r1 and the cost value of the reference path segment r2 are both 150, then to avoid creating new conflicts by using the reference path segment r2, the initial path segment r1 is directly assigned as the target unit R in the root node of the current target event window.
[0074] Please see Figure 4 , Figure 4 yes Figure 1 The flowchart following step S104 corresponds to another embodiment. Specifically, after step S104, the following steps are also included: S401: In response to obtaining the target path segment of each target unit within the target time window, obtain the size interference position corresponding to different target units based on the size information of each target unit and its target path segment.
[0075] In one embodiment, after obtaining the target path segment of each target unit within the target time window through any of the above embodiments, before distributing the target path segment, the actual size information of each target unit and its target path segment are combined to simulate in real time the size interference position of each target unit in the target scene due to its own size information during the process of each target unit following the form of the corresponding target path segment.
[0076] In some implementation scenarios, the target path segment planned by any of the above implementation methods is the theoretically planned ideal path. However, during actual operation, the target unit may experience interference due to its own size information. Based on the target path segment and size information of each target unit, the positions of size interference that may occur in the target scene are detected.
[0077] S402: Obtain the timing information of the target path segments corresponding to different target units. Based on the timing information and size interference position, segment the target path segments with lagging timing information to obtain the segmented target path segments.
[0078] In one embodiment, the delivery timing information corresponding to the target path segment replanned for each target unit in the target scene is obtained. This delivery timing information is used to characterize the delivery order of the target path segments for different target units. Based on the delivery timing information and size interference information, the target path segments with lagging delivery timing information are segmented to obtain segmented target path segments. This allows for segmentation. For a given dimensional interference location, determine the target time for at least two target units to arrive at that location. Update the target path segments corresponding to the lagging target times so that the corresponding target units execute a wait instruction before reaching the dimensional interference location, until the corresponding different target units no longer interfere at the dimensional interference location.
[0079] In one implementation scenario, please refer to Figure 5 , Figure 5 This is a schematic diagram of step S402 corresponding to one embodiment. For example... Figure 5 As shown, the target path segment of the first target unit is determined to be "ABCD" and the target path segment of the second target unit is "abc" through the above-described implementation method. The timing information for the distribution of the target path segment of the first target unit is earlier than that of the target path segment of the second target unit. Since positions C and b are relatively close, if the target path segment is followed directly, interference will occur between the first and second target units at region M due to the influence of size information. To avoid interference, the size interference position where the first and second target units first interfere is determined. According to the distribution timing information, the target path segment of the second target unit, which is delayed in distribution, is segmented so that the second target unit runs along the segmented target path segment to position b and waits.
[0080] S403: Based on the timing information of each target path segment, the target path segment is sent to the corresponding target unit, driving the target unit to run according to the target path segment.
[0081] In one embodiment, the updated target path segments are sent to the corresponding target units according to the determined distribution timing information for each target path segment, so as to drive each target unit to run according to the corresponding target path segment.
[0082] The above scheme updates the corresponding target path segments by combining the size information of each target unit, so that each target unit can send the corresponding target path segments according to the release sequence information, while avoiding interference caused by the size information of the target unit, thus improving the quality of path planning.
[0083] In one embodiment, after obtaining the target path segments corresponding to all target units within the target time window and sending the target path segments to the corresponding target units, the method further includes: controlling the target units to move according to the corresponding target path segments.
[0084] Specifically, in response to the detection of interference between different target units during the movement of a target unit along the corresponding target path segment, a parent node is created based on the interfering target unit, and the process returns to the step of expanding the child nodes matched by the parent node in the current round based on the conflicting target units. Figure 1 Step S101 is executed sequentially, followed by subsequent steps, until the target path segment is replanned.
[0085] In some implementation scenarios, to verify the execution information of the target path segment, while controlling the target unit to move according to the target path segment under the current target time window, the set of position points already passed by each target unit is acquired in real time. This set of position points is compared with the position points sequentially included in the corresponding target path segment. If the latest position point passed by the target unit is inconsistent with the corresponding position point in the target path segment, path deviation information matching the target unit is generated to prompt relevant personnel to conduct inspection. For example, if the target path segment of the target unit in the current target time window is "ABCD", then when the target unit passes through position points A, B, and E in sequence, it is considered that the target unit's driving path has deviated, and path deviation information is generated.
[0086] In some implementation scenarios, when replanning the target path segments for some target units within the current target time window, the corresponding target path segments for the target units that are not involved in the interference are kept unchanged.
[0087] Please see Figure 6 , Figure 6This is a schematic diagram of one embodiment of the electronic device of this application. The electronic device includes a memory 10 and a processor 20 coupled to each other. The memory 10 stores program instructions, and the processor 20 executes the program instructions to implement the methods mentioned in any of the above embodiments. Specifically, the electronic device includes, but is not limited to, desktop computers, laptops, tablets, servers, etc., and is not limited thereto. In addition, the processor 20 may also be called a CPU (Center Processing Unit). The processor 20 may be an integrated circuit chip with signal processing capabilities. The processor 20 may also be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. The general-purpose processor may be a microprocessor or any conventional processor. In addition, the processor 20 may be implemented by integrated circuit chips.
[0088] Please see Figure 7 , Figure 7 This is a schematic diagram of a computer-readable storage medium according to an embodiment of the present application. The computer-readable storage medium 30 stores program instructions 40 that can be executed by a processor. When the program instructions 40 are executed by the processor, they implement the methods mentioned in any of the above embodiments.
[0089] In the several embodiments provided in this application, it should be understood that the disclosed methods and apparatus can be implemented in other ways. For example, the apparatus implementations described above are merely illustrative. For instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.
[0090] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment, depending on actual needs.
[0091] Furthermore, the functional units in the various embodiments of this application 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.
[0092] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) or processor to execute all or part of the steps of the methods of various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0093] The above description is merely an embodiment of this application and does not limit the patent scope of this application. Any equivalent structural or procedural transformations made using the content of this application's specification and drawings, or direct or indirect applications in other related technical fields, are similarly included within the patent protection scope of this application.
Claims
1. A path planning method, characterized in that, include: Based on the conflicting target units in the current round, expand the child nodes matched by the parent node in the current round; Based on the reference path segments corresponding to each target unit under the parent node and the child node, obtain the current cost information consumed in resolving the current conflict; Obtain historical cost information for resolving historical conflicts in at least some historical rounds, and determine the detour detection result of the child node matching in the current round based on the current cost information and the historical cost information; Based on the detour detection results matched by all the child nodes in the current round, the target node is selected from all the child nodes, and the target path segment of the target unit corresponding to the target node is determined.
2. The path planning method according to claim 1, characterized in that, The step of obtaining current cost information for resolving the current conflict based on the reference path segments corresponding to each target unit under the parent node and the child node includes: Based on the reference path segment corresponding to the parent node in the current round and the reference path segment corresponding to the child node in the current round, obtain the current cost increment and the current number of unbreakable nodes corresponding to the target unit after the path update; wherein, the current cost information includes the current cost increment and the current number of unbreakable nodes.
3. The path planning method according to claim 2, characterized in that, The step of obtaining historical cost information for resolving historical conflicts in at least a portion of historical rounds, and determining the detour detection result of the child node matching in the current round based on the current cost information and the historical cost information, includes: Based on the historical cost information corresponding to the target unit in all the historical rounds, the cumulative cost and the cumulative conflict resolution amount corresponding to the target unit are obtained; Based on the accumulated cost, the accumulated unbreakable cost, and the current number of unbreakables, obtain a reference cost value that matches the corresponding target unit; Based on the comparison between the current cost increment and the reference cost value, the detour detection result corresponding to the child node is determined.
4. The path planning method according to claim 3, characterized in that, The historical cost information includes historical cost increments and historical number of unbreakable events. The step of obtaining the cumulative cost and cumulative unbreakable events based on the historical cost information corresponding to all historical rounds includes: For each target unit in the child node, the historical cost increments corresponding to all historical rounds and the current cost increment corresponding to the current round are summed to obtain the cumulative cost of the target unit in the corresponding child node; and, For each target unit in the child node, the historical un-un ...
5. The path planning method according to claim 3, characterized in that, The step of obtaining a reference cost value matching the corresponding target unit based on the accumulated cost, the accumulated unbreakable cost, and the current number of unbreakable units includes: For each target unit in the child node, the ratio between the corresponding accumulated cost and the corresponding accumulated conflict resolution is used as the unit path cost consumed by the corresponding target unit to resolve a single conflict; Based on the unit path cost and the current number of unbreakable nodes corresponding to the target unit, a reference cost value matching the corresponding target unit in the corresponding child node is determined.
6. The path planning method according to claim 3, characterized in that, The step of determining the detour detection result corresponding to the child node based on the comparison relationship between the current cost increment and the reference cost value includes: In response to the number of target units whose current cost increment is greater than the matched reference cost value being greater than or equal to a preset number threshold, it is determined that at least some of the target units under the corresponding child node are bypassing. In response to the fact that the number of target units whose current cost increment is greater than the matched reference cost value is less than a preset number threshold, it is determined that none of the target units under the corresponding child node have bypassed the route.
7. The path planning method according to claim 1, characterized in that, The process of filtering target nodes from all child nodes based on the detour detection results matched by all child nodes in the current round, and determining the target path segment of the target unit corresponding to the target node, includes: The child nodes that do not have a detour corresponding to the detour detection results are taken as candidate nodes. Based on the total cost of the candidate nodes, the target node is determined from all the candidate nodes. The reference path segments corresponding to each target unit under the target node are taken as the target path segments. The current round is updated to a historical round, the target node is used as the parent node of the current round, and the process returns to the steps of expanding the child nodes matched by the parent node of the current round based on the conflicting target units in the current round, until the target path segments corresponding to all target units in the target time window are obtained.
8. The path planning method according to claim 7, characterized in that, The step of determining the target node from all the candidate nodes based on the total cost corresponding to the candidate nodes includes: Based on the cost value corresponding to each target unit under each candidate node, determine the total cost value corresponding to the candidate node; Obtain the total minimum cost value corresponding to all the candidate nodes, and determine the reference cost range for matching in the current round based on the total minimum cost value and the preset suboptimal coefficient. For the candidate nodes whose total cost is within the range of the reference cost, the target nodes are selected based on the corresponding number of interferences.
9. The path planning method according to claim 8, characterized in that, After selecting the target node based on the corresponding number of interferences for the candidate nodes whose total cost is within the reference cost range, the process includes: Set constraint identifiers for the associated nodes corresponding to the target node; wherein the associated nodes and the target node have the same parent node; If the result of expanding the target node into child nodes in the next round fails, the constraint identifier of the associated node is removed, and the associated node is updated to the target node.
10. The path planning method according to claim 1, characterized in that, After determining the target path segment of the target unit corresponding to the target node by filtering the target node from all the target nodes based on the detour detection results matched by all the child nodes in the current round, the process includes: In response to obtaining the target path segment of each target unit within the target time window, the size interference position corresponding to different target units is obtained based on the size information of each target unit and its target path segment; Obtain the delivery timing information corresponding to the target path segment of different target units; based on the delivery timing information and the size interference position, segment the target path segment whose delivery timing information is lagging behind to obtain the segmented target path segment. Based on the timing information corresponding to each target path segment, the target path segment is sent to the corresponding target unit, driving the target unit to run according to the target path segment.
11. An electronic device, characterized in that, include: A memory and a processor are coupled to each other, the memory storing program instructions, and the processor executing the program instructions to implement the method as described in any one of claims 1-10.
12. A computer-readable storage medium having program instructions stored thereon, characterized in that, When the program instructions are executed by the processor, they implement the method as described in any one of claims 1-10.