Path planning method and apparatus, computer device and storage medium

By calculating the cost of the region arrival in the robot path planning and selecting the optimal candidate work area, the problem of inefficiency in the prior art is solved and more efficient path planning and operation is achieved.

WO2025148513A1PCT designated stage expired Publication Date: 2025-07-17SHENZHEN PUDU TECH CO LTD

Patent Information

Application Number
PCT/CN2024/131946
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-01-11
Filing Date
2024-11-14
Publication Date
2025-07-17

AI Technical Summary

Technical Problem

In the prior art, the full coverage path generated by the robot during path planning is often not the optimal path, resulting in low operational efficiency.

Method used

By obtaining the initial job location and current map of the robot, the initial transition path of the candidate job area is determined, the area arrival cost is calculated based on the area area, path length and deflection angle, the target job area is selected, and the next target area is continuously planned until the end condition is met.

Benefits of technology

It improves the efficiency of robot path planning, reduces time and energy consumption, and optimizes the selection of job paths.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024131946_17072025_PF_FP_ABST
    Figure CN2024131946_17072025_PF_FP_ABST
Patent Text Reader

Abstract

A path planning method and apparatus, a computer device and a storage medium. The method comprises: acquiring an initial work position of a robot (S202); acquiring a current map, the current map comprising a plurality of candidate work regions (S204); determining within a passable region of the current map an initial transition path corresponding to each candidate work region, the initial transition path being used for indicating a path from the initial work position to the candidate work region (S206); on the basis of the region area of each candidate work region, and the path length and the deflection angle of the initial transition path corresponding to each candidate work region, determining a region arrival cost, so as to obtain the region arrival cost corresponding to each candidate work region (S208); on the basis of the region arrival costs, determining a target work region of the robot from the candidate work regions (S210); and continuing to determine a next target work region of the robot from a latest map until a first termination condition is satisfied, and terminating path planning (S212).
Need to check novelty before this filing date? Find Prior Art

Description

Path planning method, device, computer equipment and storage medium

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims priority to the Chinese patent application filed with the China Patent Office on January 11, 2024, with application number 2024100395404 and application name “Path Planning Method, Device, Computer Equipment and Storage Medium”, the entire contents of which are incorporated by reference into this application. Technical Field

[0003] The present application relates to the field of computer technology, and in particular to a path planning method, apparatus, computer equipment, storage medium, and computer program product. Background Art

[0004] Navigation technology has always been a key research area in the field of mobile robotics. It is closely related to technologies such as Simultaneous Localization and Mapping (SLAM) and path planning. Path planning involves planning an optimal or suboptimal collision-free path for a wheeled robot from a starting point to a destination in an environment with obstacles.

[0005] In the existing technology, robots usually blindly generate a full coverage path that can cover all passable areas in the operation map based on the various passable areas in the operation map. The blindly generated full coverage path is often not the optimal path, and the operation efficiency is low.

[0006] Summary of the Invention

[0007] According to various embodiments of the present application, a path planning method, apparatus, computer device, computer-readable storage medium, and computer program product are provided.

[0008] The present application provides a path planning method, performed by a robot, comprising:

[0009] Get the robot's initial working position;

[0010] Acquire a current map, where the current map includes a plurality of candidate operation areas;

[0011] Determining, in the traversable area of ​​the current map, initial transition paths corresponding to the respective candidate operating areas, the initial transition paths being used to indicate paths from the initial operating position to the candidate operating areas;

[0012] Determine the area arrival cost based on the area of ​​each candidate operation area, the path length and deflection angle of the initial transition path corresponding to each candidate operation area, and obtain the area arrival cost corresponding to each candidate operation area;

[0013] determining a target operating area for the robot from each of the candidate operating areas based on the area arrival cost;

[0014] Continue to determine the robot's next target operating area from the latest map until the first end condition is met, and then end the path planning.

[0015] A path planning device, characterized in that the device comprises:

[0016] An initial operating position acquisition module is used to obtain the initial operating position of the robot;

[0017] A current map acquisition module, configured to acquire a current map, wherein the current map includes a plurality of candidate operation areas;

[0018] an initial transition path determination module, configured to determine, within a traversable area of ​​the current map, an initial transition path corresponding to each candidate operation area, wherein the initial transition path indicates a path from the initial operation position to the candidate operation area;

[0019] an area arrival cost determination module, configured to determine an area arrival cost based on the area of ​​the plurality of candidate operation areas, the path lengths and deflection angles of the initial transition paths corresponding to the plurality of candidate operation areas, and obtain an area arrival cost corresponding to each of the candidate operation areas;

[0020] a target operation area determination module, configured to determine a target operation area of ​​the robot from each of the candidate operation areas based on the area arrival cost;

[0021] The continuous path planning module is used to continue to determine the next target operating area of ​​the robot from the latest map until the first end condition is met and the path planning is terminated.

[0022] A computer device includes a memory and a processor, wherein the memory stores computer-readable instructions, and the processor implements the steps of the above-mentioned path planning method when executing the computer-readable instructions.

[0023] A computer-readable storage medium stores computer-readable instructions, which implement the steps of the above-mentioned path planning method when executed by a processor.

[0024] A computer program product includes computer-readable instructions, which implement the steps of the above-mentioned path planning method when executed by a processor.

[0025] The details of one or more embodiments of the present application are set forth in the accompanying drawings and the description below. Other features and advantages of the present application will become apparent from the description, drawings, and claims. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, without paying any creative work, they can also obtain drawings of other embodiments based on these drawings.

[0027] FIG1 is a diagram illustrating an application environment of a path planning method according to an embodiment of the present application;

[0028] FIG2 is a flow chart of a path planning method according to an embodiment of the present application;

[0029] FIG3 is a schematic diagram of a process for obtaining a current map in an embodiment of the present application;

[0030] FIG4 is a schematic diagram of selecting a target cleaning operation area in one embodiment of the present application;

[0031] FIG5 is a structural block diagram of a path planning device according to an embodiment of the present application;

[0032] FIG6 is a structural block diagram of a path planning device in another embodiment of the present application;

[0033] FIG7 is a diagram showing the internal structure of a computer device according to an embodiment of the present application. DETAILED DESCRIPTION

[0034] To facilitate understanding of the present application, a more comprehensive description of the present application will be provided below with reference to the accompanying drawings. The accompanying drawings illustrate preferred embodiments of the present application. However, the present application may be implemented in many different forms and is not limited to the embodiments described herein. Rather, these embodiments are provided to provide a more thorough and comprehensive understanding of the disclosure of the present application.

[0035] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art to which the invention pertains. The terms used in the specification of the invention herein are for the purpose of describing specific embodiments only and are not intended to limit the present application. The term "and / or" as used herein includes any and all combinations of one or more of the associated listed items.

[0036] The path planning method provided in the embodiment of the present application can be applied to the application environment shown in Figure 1. The path planning method can be executed by the robot 102 or the server 104, wherein the robot 102 communicates with the server 104 via a network. The data storage system can store the data that the server 104 needs to process. The data storage system can be integrated on the server 104, or it can be placed on the cloud or other network servers. The robot 102 obtains its own initial operating position and a current map including multiple candidate operating areas, and determines the initial transition path corresponding to each candidate operating area in the passable area of ​​the current map. The robot 102 determines the arrival cost based on the area of ​​each candidate operating area, the path length and deflection angle of the initial transition path corresponding to each candidate operating area, and obtains the regional arrival cost corresponding to each candidate operating area. Based on the regional arrival cost, the robot 102 determines the target operating area of ​​the robot from each candidate operating area, and continues to determine the next target operating area of ​​the robot from the latest map until the first end condition is met, thereby ending the path planning. Among them, robot 102 can be but is not limited to various industrial robots that require autonomous movement (such as handling robots, stacking robots, spraying robots, etc.), service robots (such as cleaning robots, delivery robots, mowing robots, etc.) or special robots (firefighting robots, underwater robots, security robots, etc.).

[0037] In one embodiment, as shown in FIG2 , a path planning method is provided, which is described by taking the application of the method to a robot as an example, and includes the following steps S202 to S208:

[0038] Step S202: Acquire the initial working position of the robot.

[0039] The initial operating position refers to the robot's position within the operating area on the map during path planning. In one embodiment, if the robot is within the operating area on the map, the robot's position is used as the initial operating position. If the robot is outside the operating area, the robot obtains the closest reachable point within the operating area on the map as the initial operating position. The robot searches for the shortest path from the robot's position to the initial operating position, and based on this shortest path, it proceeds to the initial operating position in the operating area. This configuration enables the robot to start from any point, thereby improving its operating efficiency.

[0040] Step S204: obtaining a current map, which includes a plurality of candidate operation areas.

[0041] It's important to note that the map is an offline, a priori map of the robot's work scenario. It represents the actual work environment and indicates information such as obstacle zones, traversable zones, and historical trace zones within the robot's work area. It serves as one of the foundations for path planning. Obstacle zones include impassable areas such as static obstacles, virtual walls, and restricted areas. Historical trace zones refer to areas where the robot has already completed work. For example, for a cleaning robot, the historical trace zones refer to areas the cleaning robot has cleaned; for a painting robot, the historical trace zones refer to areas the painting robot has painted. In the map, each track point within the obstacle zone is marked as occupied, each track point within the traversable zone is marked as traversable, and each track point within the historical trace zones within the traversable zone is also marked as processed. This means that each track point within the historical trace zones is marked both traversable and processed. The current map refers to the most recent map at the current moment. Exemplarily, based on the prior map, the robot updates the corresponding local map within the perception range of the prior map based on the environmental information within the perception range collected by the robot at the initial working position to obtain the latest map.

[0042] Candidate work areas are defined as the sub-work areas within the map's work area that the robot needs to perform its work tasks. For example, if the robot is a cleaning robot, the cleaning area can be divided into multiple sub-work areas based on the contours of the cleaning area in the current map. The sub-work areas that have not yet been cleaned by the cleaning robot are candidate work areas. If the robot is a painting robot, the candidate work areas are the sub-work areas within the contours of the painting area in the current map that have not yet been painted by the painting robot.

[0043] In one embodiment, the robot performs path planning at a fixed frequency, for example, at a 2 Hz frequency. Each time path planning is performed, the robot first locally updates the prior map based on the environmental information within its perception range. Simultaneously, the historical operation trajectory area in the map is updated based on the robot's historical operation trajectory. Specifically, each time the robot reaches a trajectory point, the previous trajectory point it passed is marked as processed, i.e., the previous trajectory point is marked as a historical operation trajectory point. This update enables dynamic path planning, improves the real-time performance of path planning, and thus enhances the robot's operational efficiency.

[0044] In one embodiment, after the robot obtains the current map, it screens each sub-operation area based on the area of ​​each sub-operation area where the robot needs to go to perform the operation. Specifically, the sub-operation area with an area smaller than a preset value is eliminated to obtain each candidate operation area. Since cutting the robot operation area often results in sub-operation areas with an area that is too small, when the area of ​​a sub-operation area is smaller than the preset value, it indicates that the operation value of the sub-operation area is low and cannot be balanced with the cost of going to the sub-operation area to perform the operation. If the sub-operation area with an area smaller than the preset value is not eliminated, the time cost and energy consumption of the robot operation will be greatly increased. Therefore, eliminating the sub-operation area with an area smaller than the preset value can improve the robot's operation efficiency.

[0045] Step S206 : determining initial transition paths corresponding to respective candidate operating areas in the traversable area of ​​the current map. The initial transition paths are used to indicate paths from the initial operating position to the candidate operating areas.

[0046] Among them, the passable area refers to the area in the map that the robot can pass through, and the robot's driving path can be planned on the passable area. The map is divided into multiple grids of the same size, and the center of each grid is a track point. The path of the robot from the initial working position to the candidate working area is determined. That is, in the passable area, it is necessary to search which grids need to be passed in sequence from the initial working position to the candidate working area, that is, which track points need to be passed in sequence. At the same time, the track points corresponding to the grids with obstacles in the map are marked as occupied, and the track points corresponding to the remaining grids without obstacles are marked as passable. For each passable grid, each grid processed by the robot is also marked as processed.

[0047] The initial transition path corresponding to the candidate work area refers to the preliminarily planned path from the initial work position to the candidate work area. The initial transition path consists of multiple track points within the passable area. The robot can reach the candidate work area by driving along the track points included in the initial transition path in sequence.

[0048] Exemplarily, the robot searches for the shortest transition path from the initial working position to each candidate working area in the traversable area of ​​the current map, and uses the shortest transition path as the initial transition path corresponding to the candidate working area.

[0049] Step S208 , determining the area arrival cost based on the area of ​​each candidate operation area, the path length and deflection angle of the initial transition path corresponding to each candidate operation area, and obtaining the area arrival cost corresponding to each candidate operation area.

[0050] The deflection angle is the angle between the robot's orientation at the initial work position and the direction from the initial work position to the end point of the initial transition path. The area arrival cost is the value obtained by evaluating the cost of moving the robot from the initial work position to the candidate work area. The area arrival cost of a candidate work area is negatively correlated with the priority of the candidate work area, that is, the area arrival cost of a candidate work area is negatively correlated with the probability of the candidate work area being determined as the target work area.

[0051] Exemplarily, the robot integrates the area of ​​the same candidate work area, the path length and deflection angle of the initial transition path corresponding to the candidate work area, determines the area arrival cost corresponding to the candidate work area, and obtains the area arrival cost corresponding to each candidate work area respectively.

[0052] In one embodiment, the area corresponding to the sub-operation area, the path length and deflection angle of the initial transition path corresponding to the sub-operation area are used as training samples corresponding to the sub-operation area, and multiple training samples are obtained. The actual area arrival cost corresponding to the sub-operation area is used as a sample label, and the actual area arrival cost can be determined based on historical experience. The initial area cost prediction model is trained based on multiple training samples until the model converges to obtain a target area cost prediction model. The area to the candidate operation area, the path length and deflection angle of the initial transition path corresponding to the candidate operation area are input into the target area cost prediction model to obtain the predicted area arrival cost corresponding to the candidate operation area. By training the area cost prediction model, based on the area cost prediction model, the area arrival cost corresponding to the candidate operation area can be accurately and quickly predicted, thereby improving the efficiency of path planning.

[0053] In one embodiment, based on the weights corresponding to the path length and the deflection angle respectively, the path length and deflection angle of the initial transition path corresponding to the same candidate sub-operation area are fused to arrive at the initial arrival cost corresponding to the candidate operation area. The initial arrival cost is then adjusted based on the area corresponding to the candidate operation area to obtain the area arrival cost corresponding to the candidate operation area. For example, the ratio of the initial arrival cost to the area can be used as the area arrival cost; or the difference between the preset value and the area can be calculated, and the initial arrival cost can be adjusted based on the difference to obtain the area arrival cost. The area of ​​the candidate operation area is negatively correlated with the area arrival cost. In this way, the calculation efficiency of the area arrival cost can be improved, and the efficiency of path planning can be improved.

[0054] Step S210 : determining a target operating area of ​​the robot from among the candidate operating areas based on the area arrival cost.

[0055] The target operation area refers to a candidate operation area determined from various candidate operation areas and to which the robot currently needs to go to perform the operation.

[0056] Exemplarily, the robot compares the area arrival costs corresponding to the candidate operating areas, and takes the candidate operating area corresponding to the minimum area arrival cost as the target operating area.

[0057] Step S212: Continue to determine the next target operating area of ​​the robot from the latest map until the first end condition is met, and then end the path planning.

[0058] Among them, the latest map refers to the updated map corresponding to the moment when the next target operation area is determined. Specifically, at the moment of determining the next target operation area, if the current map is updated, the updated latest map is used as the latest map; if the current map is not updated, the current map is used as the latest map. The first end condition can be set according to actual needs. Specifically, the first end condition can be that the robot's battery power is less than a preset value, that the robot has completed the operation process or path planning of the sub-operation area specified in the map, or that the robot has completed the operation process or path planning of each area in the latest map that is larger than a preset value and is reachable as a sub-operation area.

[0059] For example, after determining the target work area, the robot can travel from the initial work position to the nearest contour point corresponding to the target work area based on the initial transition path corresponding to the target work area. The robot continues to use the same method to determine the next target work area from the latest map until the first end condition is met, thus ending the path planning.

[0060] Specifically, after determining a target work area, the robot can continue to perform intra-area path planning for the target work area, obtaining an intra-area path corresponding to the target work area. For example, the intra-area path can be determined based on path planning methods such as zigzag path planning or arcuate path planning. The endpoint of the intra-area path of the previous target work area is used as the initial work position for the next target work area. The same method is then used to determine the target work area corresponding to the next initial work position, as well as the initial transition path and intra-area path corresponding to the next target work area, from the latest map until the first termination condition is met, resulting in a complete work path corresponding to the current map. The robot then performs work based on the complete work path corresponding to the current map. Simultaneously, the robot performs path planning based on a preset frequency. Upon reaching the next path planning moment, the robot's position at the next path planning moment is used as the initial work position. The robot then re-determines the complete work path corresponding to the latest map corresponding to the next path planning moment, and the robot then performs work based on the complete work path corresponding to the latest map. Each path planning step generates a complete work path corresponding to the latest map. The robot can download this complete work path, enabling the robot to complete work based on the complete work path even when the network connection is disconnected. After determining the target work area, the robot can also continue to plan a path within the target work area, obtaining the intra-regional path corresponding to the target work area. Based on the initial transition path and intra-regional path corresponding to the target work area, the robot proceeds to the target work area to perform operations. Simultaneously, the robot performs path planning based on a preset frequency, and upon reaching the next path planning moment, the robot's position corresponding to the next path planning moment is used as the initial work position. Each path planning step only plans the initial transition path and intra-regional path corresponding to the next target work area, which can improve path planning efficiency and reduce the robot's computational burden.

[0061] When the next path planning moment is reached, that is, the robot is in the process of traveling to the next target work area, if the robot's initial work position is outside the target work area, then based on the latest map corresponding to the next path planning moment and the robot's initial work position, the target work area and the initial transition path and intra-regional path corresponding to the target work area are re-determined, and the work is performed based on the re-determined initial transition path and intra-regional path; if the initial work position is within the target work area, then based on the latest map corresponding to the next path planning moment, the intra-regional path corresponding to the target work area is re-determined, and the next target work area corresponding to the target work area, as well as the initial transition path and intra-regional path corresponding to the next target work area, are determined. The robot then travels based on the re-determined intra-regional path corresponding to the target work area, the initial transition path and intra-regional path corresponding to the next target work area, until the first termination condition is met, and the path planning ends.

[0062] In the above-described path planning method, the robot's initial operating position and the current map are obtained, and an initial transition path from the initial operating position to each candidate operating area is determined within the traversable area of ​​the current map. The area arrival cost corresponding to each candidate operating area is determined based on the area, path length, and deflection angle of the initial transition path corresponding to the same candidate operating area. Based on the area arrival cost, the robot's target operating area is determined within each candidate area. The robot's next target arrival area is determined within the latest map using the same method until the first termination condition is met, completing path planning. Thus, since the path length, deflection angle, and area can reflect the time required for the robot to reach the candidate operating area from its current position from different perspectives, the area arrival cost, derived based on the area, path length, and deflection angle corresponding to each candidate operating area, can represent the time and energy cost required for the robot to reach the candidate operating area from its initial operating position. Path planning based on the area arrival cost corresponding to each candidate operating area can effectively improve the efficiency of the robot in performing operations along the planned path.

[0063] In one embodiment, as shown in FIG3 , obtaining the current map includes:

[0064] Step S302: Obtain a priori map.

[0065] Step S304 : Based on the environmental information collected by the robot within the perception range corresponding to the initial working position, the traversable area corresponding to the perception range in the prior map is updated to obtain an intermediate map.

[0066] Step S306: Based on the coverage area of ​​the robot, the passable area corresponding to the perception range in the intermediate map is updated to obtain the current map.

[0067] The coverage area refers to the maximum area a robot can operate at a given point while stationary. The robot's coverage area is related to its operating radius. For example, for a cleaning robot, the coverage area is the maximum area the robot can clean while stationary. This area is determined by the robot's cleaning radius. The sensing range refers to the range of the robot's sensors. For example, the sensing range could be a circular area with a radius of 2 meters or a square area with a side length of 4 meters.

[0068] For example, the robot obtains a priori map, capturing environmental information within its sensing range collected by sensors. Based on this environmental information, the robot updates the obstacle areas and traversable areas within its sensing range in the priori map, generating an intermediate map. Based on the robot's coverage area, the outline of the traversable area corresponding to its sensing range in the intermediate map is reduced to generate the current map. For example, the outline of the obstacle area within its sensing range can be expanded based on the radius of the robot's coverage area.

[0069] In the above embodiment, after obtaining the intermediate map, the outline of the traversable area within the robot's sensing range is reduced based on the robot's coverage area. This shrinks the traversable area inward and expands the obstacle area outward, ensuring that the path planned based on the traversable area maintains a certain distance from obstacles, thereby improving the accuracy of path planning and the robot's operating efficiency.

[0070] In one embodiment, determining the initial transition paths corresponding to the candidate operation areas in the traversable area of ​​the current map includes:

[0071] For any candidate operation area among the candidate operation areas, multiple candidate contour points are extracted on the area contour of the candidate operation area, and in the passable area of ​​the current map, an initial transition path from the initial operation position to each candidate contour point is determined;

[0072] Based on the path lengths of the initial transition paths corresponding to the candidate contour points, the nearest contour point corresponding to the candidate operation area is determined among the candidate contour points;

[0073] The initial transition path corresponding to the nearest contour point is used as the initial transition path corresponding to the candidate operation area.

[0074] The area contour of a candidate work area refers to the boundary of the candidate work area, and the area contour is composed of the contour points on the boundary of the candidate work area. Candidate contour points are selected from the contour points contained in the area contour of the candidate work area and are used to generate the initial transition path from the initial work position to the candidate work area. The closest contour point is the candidate contour point with the minimum initial transition path length among the candidate contour points.

[0075] Exemplarily, for any candidate work area, the robot extracts multiple candidate contour points on the area contour of the candidate work area. For example, one contour point can be extracted from each contour point included in the area contour of the candidate work area for every preset number of contour points as a candidate contour point; a preset number of contour points can be randomly extracted from each contour point included in the area contour of the candidate work area as candidate contour points. In the passable area of ​​the current map, the robot searches for the shortest transition path from the initial work position to each candidate contour point corresponding to the candidate work area, and the initial transition path corresponding to each candidate contour point is reached. The path lengths corresponding to each initial transition path are compared, and the candidate contour point with the shortest initial transition path is used as the nearest contour point corresponding to the candidate work area. The initial transition path corresponding to the nearest contour point is used as the initial transition path corresponding to the candidate work area.

[0076] In the above embodiment, multiple candidate contour points are extracted from the contour points included in the area contour of the candidate work area. The path lengths of the shortest transition paths from the initial work position to each candidate contour point are compared, and the candidate contour point with the shortest transition path is used as the nearest contour point corresponding to the candidate work area. The initial transition path corresponding to the nearest contour point is used as the initial transition path corresponding to the candidate work area, allowing the robot to reach the candidate work area using the shortest possible transition path, thereby improving the robot's operating efficiency.

[0077] In one embodiment, determining an initial transition path from the initial working position to each candidate contour point in a traversable area of ​​the current map includes:

[0078] For any one of the candidate contour points, when the positional relationship between the initial working position and the candidate contour point satisfies a preset position condition, a plurality of initial trajectory points are extracted based on a straight line determined according to the initial working position and the candidate contour point, and an initial transition path from the initial working position to the candidate contour point is obtained based on the initial trajectory points and the candidate contour point;

[0079] For any candidate contour point among the candidate contour points, when the positional relationship between the initial operation position and the candidate contour point does not meet the preset position condition, based on the trajectory point arrival cost from the initial operation position to the passable adjacent trajectory point and the contour point arrival cost from the passable adjacent trajectory point to the candidate contour point, the initial trajectory point is determined among the passable adjacent trajectory points corresponding to the initial operation position, and the next initial trajectory point is continued to be determined among the passable adjacent trajectory points corresponding to the initial trajectory point until the passable adjacent trajectory point contains the candidate contour point. Based on the initial trajectory points and the candidate contour points, the initial transition path from the initial operation position to the candidate contour point is obtained.

[0080] Among them, the preset position condition means that the distance between the initial working position and the candidate contour point is less than the preset distance, and there are no obstacles on the path from the initial working position to the candidate contour point in a straight line. The initial trajectory point refers to each trajectory point in the initial transition path except the trajectory point corresponding to the initial working position and the candidate contour point. The passable adjacent trajectory point refers to the adjacent trajectory point marked as a passable area. The trajectory point arrival cost of the adjacent trajectory point refers to the value obtained by evaluating the cost of the robot reaching the adjacent trajectory point from the initial working position, which is used to characterize the cost of the robot reaching the adjacent trajectory point from the initial working position. The cost may include time cost, energy consumption, etc. The contour point arrival cost refers to the value obtained by evaluating the cost of reaching the candidate contour point from the adjacent trajectory point, which is used to characterize the cost of the robot reaching the candidate contour point from the adjacent trajectory point. The cost may include time cost, energy consumption, etc. In the specific implementation process, the contour point arrival cost can be estimated based on the distance between the adjacent trajectory point and the candidate contour point.

[0081] Exemplarily, for any candidate contour point, when the positional relationship between the initial working position and the candidate contour point satisfies a preset position condition, the robot determines the straight line between the initial working position and the candidate contour point, and extracts multiple initial trajectory points based on the straight line between the initial working position and the candidate contour point. For example, points may be extracted at predetermined intervals along the straight line between the initial working position and the candidate contour point as initial trajectory points. Based on the sequentially extracted initial trajectory points and candidate trajectory points, an initial transition path is generated from the initial working position to the candidate contour point.

[0082] When the positional relationship between the initial working position and the candidate contour point does not meet the preset position condition, the trajectory point arrival cost corresponding to each passable adjacent trajectory point corresponding to the initial working position and the contour point arrival cost corresponding to each passable adjacent trajectory point are obtained. Based on the trajectory point arrival cost and the contour point arrival cost corresponding to the same adjacent trajectory point, the comprehensive cost corresponding to each adjacent trajectory point is determined respectively. The passable adjacent trajectory point corresponding to the minimum comprehensive cost is determined as the initial trajectory point. Continue to determine the next initial trajectory point corresponding to the initial trajectory point among the passable adjacent trajectory points corresponding to the initial trajectory point, until the candidate contour point is included in the passable adjacent trajectory points corresponding to the initial trajectory point. Based on the initial trajectory points and candidate contour points determined in sequence, the initial transition path from the initial working position to the candidate contour point is obtained.

[0083] In one embodiment, after obtaining the next initial trajectory point corresponding to an initial trajectory point, a determination is made as to whether the next initial trajectory point corresponding to the initial trajectory point is an adjacent trajectory point to the previous initial trajectory point corresponding to the initial trajectory point. If so, the initial arrival cost is calculated by summing the trajectory point arrival cost of the initial trajectory point with respect to the previous initial trajectory point and the trajectory point arrival cost of the next initial trajectory point with respect to the initial trajectory point. If the initial arrival cost is greater than the trajectory point arrival cost of the next initial trajectory point with respect to the previous initial trajectory point, the initial trajectory point is replaced with the next initial trajectory point corresponding to the initial trajectory point. This effectively reduces the cost of the robot reaching the candidate contour points from the initial working position and improves the robot's operating efficiency.

[0084] In the above embodiment, when the positional relationship between the initial working position and the candidate contour points satisfies a preset position condition, multiple initial trajectory points are extracted based on the straight line between the initial working position and the candidate contour points to arrive at the initial transition path. This can improve the efficiency of determining the initial transition path, while ensuring that the path length of the initial transition path is the shortest, thereby improving the efficiency of the robot reaching the candidate contour points based on the initial transition path. When the positional relationship between the initial working position and the candidate contour points satisfies the preset position condition, each initial trajectory point is gradually determined based on the trajectory point arrival cost and the contour point arrival cost corresponding to the passable adjacent trajectory points, thereby obtaining the initial transition path. This can effectively reduce the cost of the robot reaching the candidate contour points from the initial working position based on the initial transition path, thereby improving the robot's operating efficiency.

[0085] In one embodiment, the area arrival cost is determined based on the area of ​​each candidate operation area, the path length and deflection angle of the initial transition path corresponding to each candidate operation area, and the area arrival cost corresponding to each candidate operation area is obtained, including:

[0086] For any candidate operation area among the candidate operation areas, the area of ​​the candidate operation area, the path length and deflection angle of the initial transition path corresponding to the candidate operation area are integrated to obtain the area arrival cost corresponding to the candidate area. Among them, the area arrival cost is positively correlated with the path length and deflection angle, and negatively correlated with the area.

[0087] For example, the robot obtains weights corresponding to the area, path length, and deflection angle. Based on these weights, the robot combines the area of ​​the candidate work area, the path length of the initial transition path, and the deflection angle to obtain the area arrival cost for each candidate work area.

[0088] In one embodiment, the area arrival cost corresponding to the candidate operation area can be calculated by the following formula: cost = k1*dist+k2*theta-k3*s

[0089] Among them, cost is the cost of reaching the candidate operation area, dist is the path length of the initial transition path corresponding to the candidate operation area, theta is the deflection angle of the initial transition path corresponding to the candidate operation area, and s is the area of ​​the candidate operation area; k1, k2, and k3 are the weights corresponding to the path length dist, the deflection angle theta, and the area s, respectively.

[0090] In the above embodiment, based on the weights corresponding to the path length, deflection angle, and area, the path length, deflection angle, and area corresponding to the same candidate operation area are integrated to obtain the area arrival cost corresponding to the candidate operation area. Based on the area arrival costs corresponding to each candidate operation area, the target operation area is determined in each candidate operation area. Since the area arrival cost is positively correlated with the path length and deflection angle, and negatively correlated with the area, the robot will first select the candidate operation area with the larger area, the shorter transition path, and the smaller deflection angle as the target operation area. In this way, the time cost and energy consumption of each transition can be reduced, thereby improving the robot's operating efficiency.

[0091] In one embodiment, the path planning method further includes:

[0092] For the initial transition path corresponding to the target operation area, the coordinates of the initial trajectory points are adjusted based on the gradient differences corresponding to the initial trajectory points included in the initial transition path, and the target trajectory points corresponding to the initial trajectory points included in the initial transition path are obtained respectively. The gradient differences corresponding to the initial trajectory points are used to indicate the differences between the forward gradients between the initial trajectory points and the forward trajectory points, and the backward gradients between the initial trajectory points and the backward trajectory points;

[0093] Based on each target trajectory point, the target transition path corresponding to the target operation area is obtained;

[0094] Control the robot to reach the target working area based on the target transition path.

[0095] The initial trajectory point refers to each trajectory point in the initial transition path, excluding the trajectory point corresponding to the initial working position and the candidate contour points. The target trajectory point refers to the trajectory point obtained by adjusting the coordinates of the initial trajectory point. The forward trajectory point of the initial trajectory point refers to the target trajectory point corresponding to the previous initial trajectory point in the initial transition path. If the previous trajectory point corresponding to the initial trajectory point is the trajectory point corresponding to the initial working position, the forward trajectory point corresponding to the initial trajectory point is the trajectory point corresponding to the initial working position. Similarly, the backward trajectory point refers to the next initial trajectory point in the initial transition path corresponding to the initial trajectory point. The forward gradient refers to the gradient between the initial trajectory point and the forward trajectory point. The backward gradient refers to the gradient between the initial trajectory point and the backward trajectory point. The gradient difference refers to the difference between the forward gradient and the backward gradient corresponding to the initial trajectory point, which is used to characterize the smoothness of the initial trajectory point in the initial transition path. The target transition path refers to the transition path consisting of the target trajectory points corresponding to each initial trajectory point in the initial transition path and the candidate contour points in the initial transition path.

[0096] Exemplarily, the robot uses the first initial trajectory point included in the initial transition path corresponding to the target work area as the current trajectory point. Based on the forward gradient between the current trajectory point and the forward trajectory point (i.e., the trajectory point corresponding to the initial work position), and the backward gradient between the current trajectory point and the backward trajectory point, the robot calculates the gradient difference corresponding to the current trajectory point. Based on the gradient difference corresponding to the current trajectory point, the coordinates of the current trajectory point are adjusted to obtain the target trajectory point corresponding to the current trajectory point. The robot then continues to obtain the next initial trajectory point corresponding to the current trajectory point and uses the next initial trajectory point as the current trajectory point. Based on the forward gradient between the current trajectory point and the forward trajectory point (i.e., the target trajectory point corresponding to the previous initial trajectory point), and the backward gradient between the current trajectory point and the backward trajectory point, the robot calculates the gradient difference corresponding to the current trajectory point. Based on the gradient difference corresponding to the current trajectory point, the robot adjusts the coordinates of the current trajectory point to obtain the target trajectory point corresponding to the current trajectory point. The process returns to the step of obtaining the next initial trajectory point corresponding to the current trajectory point, and the process continues until the next trajectory point corresponding to the current trajectory point is a candidate contour point, thereby obtaining the target trajectory point corresponding to each initial trajectory point in the initial transition path. Based on the trajectory points corresponding to the initial working position, each target trajectory point, and the candidate contour points, a target transition path corresponding to the target working area is obtained. The robot reaches the target reach area based on the target transition path.

[0097] In the above embodiment, based on the gradient differences corresponding to the initial trajectory points, the coordinates corresponding to each initial trajectory point in the initial transition path are adjusted sequentially to obtain the corresponding target transition path. This results in a smoother target transition path, effectively reducing the path length of the transition path, reducing the time and energy consumption required for the robot to reach the target work area, and improving the robot's operational efficiency.

[0098] In one embodiment, the path planning method further includes:

[0099] For the end point of the transfer path corresponding to the target operation area, based on the preset trajectory extraction direction, determine the trajectory point in the area from each passable adjacent trajectory point corresponding to the end point in the current map;

[0100] Continue to extract the direction of the preset trajectory, determine the next track point in the area from the adjacent track points in the current map corresponding to the track point in the area, until the second end condition is met, and obtain the path in the area corresponding to the target operation area based on the track points in each area;

[0101] Combine the transition path corresponding to the target operation area with the path within the area to obtain the complete path corresponding to the target operation area;

[0102] Control the robot's motion based on the complete path.

[0103] Among them, the transition path in this embodiment can be an initial transition path or a target transition path, and the end point of the initial transition path and the end point of the target transition path are both the nearest contour points corresponding to the target operating area. The preset trajectory extraction direction refers to the trajectory point extraction direction of extracting trajectory points one by one from each trajectory point in the passable area of ​​the target operating area to generate a path within the area. For example, the preset trajectory extraction direction can be to extract trajectory points one by one in a clockwise direction and from the outside to the inside to generate a path within the area, that is, the trajectory extraction direction can be determined according to the zigzag path planning method; it can also be determined according to the bow path planning method; and so on.

[0104] The traversable adjacent track points corresponding to the destination are those marked as traversable among the adjacent track points corresponding to the destination in the current map. The traversable adjacent track points corresponding to the intra-region track points are those marked as "traversable" among the adjacent track points corresponding to the intra-region track points in the current map. The intra-region track points are all contour points on the paths within the region, excluding candidate contour points.

[0105] The second end condition can be set according to actual needs. Specifically, the second end condition can be that all trajectory points within the passable area of ​​the target work area are added to the path within the area as trajectory points within the area, or the battery level of the robot is lower than a preset value.

[0106] An in-area path is the robot's operating path corresponding to the target operating area. It instructs the robot to complete operations within the target operating area according to the in-area path. For example, if the robot is a cleaning robot, the in-area path corresponding to the target operating area is the cleaning path of the cleaning robot within the target operating area. A complete path instructs the robot to move from its initial operating position to the target operating area and complete the operation within the target operating area.

[0107] Exemplarily, the robot determines an in-region track point from each passable adjacent track point corresponding to the end point of the transition path according to a preset track extraction direction. Continue to determine the next in-region track point based on each passable adjacent track point corresponding to the in-region track point, until each passable track point in the target operating area is added to the in-region path as an in-region track point, and obtains the in-region path corresponding to the target operating area. Specifically, each passable adjacent track point corresponding to the track point includes track points marked as processed and track points not marked as processed. When extracting in-region track points from each passable adjacent track point based on the preset track extraction direction, the in-region track point is determined preferentially from the track points not marked as processed. If each passable adjacent track point is a track point marked as processed, the in-region track point is determined from the track points marked as processed.

[0108] Specifically, the transition path and the intra-regional path corresponding to the target operation area are spliced ​​to obtain the complete path corresponding to the target operation area, including taking the first intra-regional track point in the intra-regional path corresponding to the target operation area as the next track point corresponding to the end point of the transition path corresponding to the target operation area, and splicing the transition path and the intra-regional path corresponding to the target operation area to obtain the complete path corresponding to the target operation area.

[0109] In the above embodiment, after determining the target work area and the transition path from the initial work position to the target work area, the intra-regional path corresponding to the target work area is further determined. The intra-regional path and the transition path corresponding to the target work area are then combined to obtain a complete path corresponding to the target work area. If obstacles in the map remain unchanged, the robot can directly complete the work within the target work area based on the complete path, which can improve the robot's operating efficiency.

[0110] In one embodiment, for the complete path corresponding to the target operating area, the coordinates of the track points are adjusted based on the gradient differences corresponding to each track point in the complete path, excluding the starting point and the end point, to obtain updated track points corresponding to each track point in the complete path. Based on the starting point and the end point corresponding to each updated track point and the complete path, an updated complete path corresponding to the target operating area is obtained. Based on the gradient differences corresponding to the track points, the coordinates corresponding to each track point in the complete path are adjusted in sequence to obtain an updated complete path. This process results in a smoother path, which can effectively reduce the path length, reduce the time cost and energy consumption of the robot reaching the target operating area and performing operations in the target operating area, and improve the efficiency of the robot's operations.

[0111] This application also provides an application scenario, which applies the above-mentioned path planning method to a scenario where a cleaning robot performs path planning for cleaning operations. Specifically, the application of the path planning method in this application scenario is as follows:

[0112] 1. Prior map update

[0113] Updating the prior map is to help the cleaning robot better understand its environment and adjust its subsequent planned paths in a timely manner according to environmental changes. Updating the prior map includes the following steps:

[0114] (1) Cut the prior map according to the cleaning operation area and mark the contour

[0115] Before each path planning, the cleaning robot obtains a priori map of the cleaning area. Based on the bounding rectangle of the cleaning area outline in the priori map, the cleaning area is divided into multiple sub-areas. Each sub-area's outline is marked with an occupancy value, ensuring that the cleaning robot operates only within the sub-area's outline.

[0116] (2) Mark the environmental information within the cleaning robot’s perception range

[0117] The cleaning robot updates the corresponding areas in the prior map based on the environmental information sensed by each sensor within its sensing range. This means that areas where obstacles are detected are marked with occupied values, and areas where obstacles are detected as passable are marked with passable values, thus generating an intermediate map. This ensures that the cleaning robot's planned path will not collide with newly appeared obstacles in the sub-operation area, and allows the cleaning robot to plan paths for areas where obstacles that were previously present in the sub-operation area but have now disappeared are located.

[0118] (3) Marking based on cleaning history trajectory and topology information

[0119] Optionally, the cleaning robot will mark the historical cleaning trajectory points with processed numerical values ​​at the corresponding locations on the prior map. If the user has also set topological information such as virtual walls and restricted areas, these virtual walls and restricted areas will also need to be marked with the occupied numerical values ​​at the corresponding locations on the prior map. This marking can prevent the planned path from duplicating with previously cleaned paths and prevent the cleaning robot from traveling to areas that the user does not want the cleaning robot to visit.

[0120] (4) Morphological processing of the intermediate map

[0121] The cleaning robot performs morphological processing such as erosion on the intermediate map according to the robot's cleaning area to obtain the current map. This means that the occupied locations are enlarged to ensure that the planned path maintains a certain safe distance from obstacles.

[0122] 2. Cleaning operation path planning

[0123] (1) Start processing at any point

[0124] When performing cleaning operation path planning, the cleaning robot first determines whether the initial operation position is within the cleaning operation area. If the cleaning robot is within the cleaning operation area and the cleaning robot has not completed the cleaning operation task of the sub-operation area to which the initial operation position belongs, the path planning is first performed for the sub-operation area to which the initial operation position belongs, and the cleaning operation task of the sub-operation area to which the initial operation position belongs is completed based on the path within the planned area; if the cleaning robot is within the cleaning operation area, but the cleaning robot has completed the cleaning operation task of the sub-operation area, then based on the current map, it is determined that the cleaning robot needs to go to the next sub-operation area to perform the cleaning operation task, that is, the target cleaning operation area. If the cleaning robot is outside the cleaning operation area, the closest reachable trajectory point to the cleaning robot's position in the cleaning operation area in the map is obtained as the initial operation position, and the shortest path from the cleaning robot's position to the initial operation position is searched. For example, a path search algorithm such as the A* (A-star) algorithm or the Dijkstra (Dijkstra) algorithm can be used to perform a path search to obtain the shortest path between the current position and the cleaning operation area. Go to the initial operation position based on the shortest path obtained by the search. In this way, the cleaning robot can start at any point, thereby improving the cleaning efficiency of the cleaning robot.

[0125] (2) Selection of target cleaning operation area

[0126] The cleaning robot first extracts the outlines of all sub-operation areas (i.e., cut out from the cleaning operation area) of the cleaning operation area in the current map, judges the accessibility of each sub-operation area based on the initial operation position of the cleaning robot, and eliminates sub-operation areas that are unreachable and have an area less than a threshold based on the area corresponding to the sub-operation area. For each sub-operation area (i.e., candidate cleaning operation area) obtained by screening, the relevant information corresponding to each sub-operation area is obtained, including the area of ​​each sub-operation area, the length of the initial transition path corresponding to each sub-operation area, and the angle between the current direction of the cleaning robot and the direction of the end point of the initial transition path corresponding to each sub-operation area. Based on the coefficients corresponding to the aforementioned area, length, and angle, the area of ​​the sub-operation area, the length of the transition path, and the angle are fused to obtain the area arrival cost corresponding to each sub-operation area.

[0127] The area arrival cost corresponding to the sub-operation area can be calculated by the following formula: cost = k1*dist+k2otheta-k3*s

[0128] Among them, cost is the cost of reaching the area; the coefficients k1, k2, and k3 corresponding to the length dist, the angle value theta, and the area s are pre-set based on historical experience.

[0129] Based on the area arrival costs corresponding to each sub-operation area, the sub-operation area with the lowest area arrival cost (candidate cleaning operation area) is determined as the target cleaning operation area. As shown in Figure 4, area A and area B are two sub-operation areas, where the area of ​​sub-operation area A is larger than the area of ​​sub-operation area B, the length of the transition path S1 corresponding to sub-operation area A is smaller than the length of the transition path S2 corresponding to sub-operation area B, and the angle α corresponding to sub-operation area A is smaller than the angle β corresponding to sub-operation area B. Therefore, the smaller the area arrival cost of sub-operation area A, the cleaning robot will prioritize sub-operation area A as the target cleaning operation area and clean it first.

[0130] (3) Initial transition path acquisition

[0131] After determining the target cleaning area, the cleaning robot determines the distance between its initial operating position and the nearest contour point of the target cleaning area. If this distance is greater than a threshold, the robot uses a path search algorithm to search for a path on the current map, starting from the current position and ending at the nearest contour point of the target cleaning area, to obtain the initial transition path. Conversely, if the distance is less than or equal to the threshold, the robot uses interpolation to connect the current position and the nearest contour point to obtain the initial transition path.

[0132] (4) Path planning within the area and acquisition of complete cleaning operation paths

[0133] After obtaining the initial transition path, the cleaning robot uses the nearest contour point of the target cleaning area as the starting point to generate an intra-regional path within the target cleaning area. In actual implementation, this intra-regional path can be generated through path planning methods such as zigzag path planning and arc path planning. The initial transition path is then combined with the intra-regional path to obtain a complete cleaning operation path.

[0134] (5) Smoothing of cleaning operation paths

[0135] The cleaning operation path is smoothed according to the following formula to resolve path discontinuities.

[0136] In the above formula, P is the path smoothness score, which is used to indicate the degree of path smoothness. The smaller the P corresponding to the path, the smoother the path. s is the preset coefficient, Δx i+1 is the difference between the coordinates of the i-th trajectory point and the coordinates of the next trajectory point, Δx i is the difference between the coordinates of the ith track point and the coordinates of the previous track point. N is the number of track points included in the cleaning operation path.

[0137] The cleaning robot performs cleaning according to the generated cleaning operation path. When no target cleaning operation area meeting the conditions is found in the cleaning operation area, the cleaning process of the cleaning operation area is completed.

[0138] In the above embodiment, the scene adaptability is improved by updating the prior map, which helps the cleaning robot to better understand the scene environment, efficiently clean the obstacle removal area in the scene, and smoothly avoid new obstacles. Through complete cleaning operation path planning, the priority of each candidate cleaning operation area is taken into consideration, and the regional coverage of the target cleaning operation area is guaranteed, thereby effectively improving the cleaning operation efficiency of the cleaning robot.

[0139] It should be understood that, although the various steps in the flowcharts involved in the various embodiments described above are displayed in sequence according to the instructions of the arrows, these steps are not necessarily executed in sequence in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order restriction on the execution of these steps, and these steps can be executed in other orders. Moreover, at least a portion of the steps in the flowcharts involved in the various embodiments described above can include multiple steps or multiple stages, and these steps or stages are not necessarily executed and completed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a portion of steps or stages in other steps.

[0140] Based on the same inventive concept, the present application also provides a path planning device for implementing the path planning method described above. The solution provided by this device is similar to the solution described in the method described above. Therefore, the specific limitations of one or more path planning device embodiments provided below can be found in the above-mentioned limitations of the path planning method and will not be repeated here.

[0141] In one embodiment, as shown in FIG5 , a path planning device is provided, comprising: an initial operation position acquisition module 502 , a current map acquisition module 504 , an initial transition path determination module 506 , an area arrival cost determination module 508 , a target operation area determination module 510 , and a path continuous planning module 512 , wherein:

[0142] An initial working position acquisition module 502 is used to acquire the initial working position of the robot;

[0143] The current map acquisition module 504 is used to acquire the current map, which includes multiple candidate operation areas;

[0144] An initial transition path determination module 506 is used to determine the initial transition path corresponding to each candidate operation area in the traversable area of ​​the current map. The initial transition path is used to indicate the path from the initial operation position to the candidate operation area;

[0145] The area arrival cost determination module 508 is used to determine the area arrival cost based on the area of ​​the candidate operation area, the path length and deflection angle of the initial transition path corresponding to the candidate operation area, and obtain the area arrival cost corresponding to each candidate operation area;

[0146] A target operation area determination module 510 is configured to determine a target operation area for the robot from among the candidate operation areas based on the area arrival cost;

[0147] The path continuous planning module 512 is used to continue to determine the next target operating area of ​​the robot from the latest map until the first end condition is met, thereby ending the path planning.

[0148] In one embodiment, the current map acquisition module 504 is further configured to:

[0149] Obtain a priori map; based on the environmental information collected by the robot within the perception range corresponding to the initial working position, update the traversable area corresponding to the perception range in the priori map to obtain an intermediate map; based on the robot's coverage area, update the traversable area corresponding to the perception range in the intermediate map to obtain the current map.

[0150] In one embodiment, the initial transition path determination module 506 is further configured to:

[0151] For any candidate operation area among the candidate operation areas, multiple candidate contour points are extracted on the area contour of the candidate operation area, and in the passable area of ​​the current map, the initial transition path from the initial operation position to each candidate contour point is determined; based on the path length of the initial transition path corresponding to each candidate contour point, the nearest contour point corresponding to the candidate operation area is determined among each candidate contour point; the initial transition path corresponding to the nearest contour point is used as the initial transition path corresponding to the candidate operation area.

[0152] In one embodiment, the initial transition path determination module 506 is further configured to:

[0153] For any one of the candidate contour points, when the positional relationship between the initial operation position and the candidate contour point meets the preset position condition, multiple initial trajectory points are extracted based on the straight line determined according to the initial operation position and the candidate contour point, and an initial transition path from the initial operation position to the candidate contour point is obtained based on each initial trajectory point and the candidate contour point; for any one of the candidate contour points, when the positional relationship between the initial operation position and the candidate contour point does not meet the preset position condition, based on the trajectory point arrival cost from the initial operation position to the passable adjacent trajectory point and the contour point arrival cost from the passable adjacent trajectory point to the candidate contour point, the initial trajectory point is determined in each passable adjacent trajectory point corresponding to the initial operation position, and the next initial trajectory point is continued to be determined in each passable adjacent trajectory point corresponding to the initial trajectory point until the passable adjacent trajectory point contains the candidate contour point, and an initial transition path from the initial operation position to the candidate contour point is obtained based on each initial trajectory point and the candidate contour point.

[0154] In one embodiment, the area arrival cost determination module 508 is further configured to:

[0155] For any candidate operation area among the candidate operation areas, the area of ​​the candidate operation area, the path length and deflection angle of the initial transition path corresponding to the candidate operation area are integrated to obtain the area arrival cost corresponding to the candidate area. Among them, the area arrival cost is positively correlated with the path length and deflection angle, and negatively correlated with the area.

[0156] In one embodiment, as shown in FIG6 , the path planning device further includes:

[0157] The target transition path determination module 602 is used to adjust the coordinates of the initial trajectory points contained in the initial transition path corresponding to the target work area based on the gradient distance corresponding to the initial trajectory points contained in the initial transition path, and obtain the target trajectory points corresponding to each initial trajectory point contained in the initial transition path. The gradient difference corresponding to the initial trajectory point is used to indicate the difference between the forward gradient between the initial trajectory point and the forward trajectory point, and the backward gradient between the initial trajectory point and the backward trajectory point; based on each target trajectory point, a target transition path corresponding to the target work area is obtained, and the robot is controlled to reach the target work area based on the target transition path.

[0158] The complete path generation module 604 is used to determine, for the end point of the transition path corresponding to the target operation area, from the various passable adjacent trajectory points corresponding to the end point in the current map based on the preset trajectory extraction direction; continue to determine the next track point in the area from the various passable adjacent trajectory points corresponding to the track points in the area in the current map based on the preset trajectory extraction direction until the second end condition is met, and obtain the path in the area corresponding to the target operation area based on the trajectory points in each area; splice the transition path corresponding to the target operation area and the path in the area to obtain the complete path corresponding to the target operation area; and control the robot's motion based on the complete path.

[0159] Because the path length, deflection angle, and area can reflect the time required for the robot to reach the candidate work area from its current position from different perspectives, the area arrival cost calculated based on the area corresponding to each candidate work area, the path length of the initial transition path, and the deflection angle can represent the time and energy cost required for the robot to reach the candidate work area from its initial work position. Path planning based on the area arrival cost corresponding to each candidate work area can effectively improve the efficiency of the robot in performing operations along the planned path.

[0160] Each module in the above-mentioned path planning device can be implemented in whole or in part through software, hardware, or a combination thereof. Each of the above-mentioned modules can be embedded in or independent of the processor of the computer device in hardware form, or can be stored in the memory of the computer device in software form, so that the processor can call and execute the corresponding operations of each of the above modules.

[0161] In one embodiment, a computer device is provided, which may be a robot. A diagram of its internal structure may be shown in FIG7 . The computer device includes a processor, memory, an input / output interface, a communication interface, a display unit, and an input device. The processor, memory, and input / output interface are connected via a system bus, and the communication interface, display unit, and input device are connected to the system bus via the input / output interface. The processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores an operating system and computer-readable instructions. The internal memory provides an environment for the operation of the operating system and computer-readable instructions in the non-volatile storage medium. The input / output interface of the computer device is configured to exchange information between the processor and external devices. The communication interface of the computer device is configured to communicate with external terminals via wired or wireless communication, where the wireless communication may be achieved via Wi-Fi, a mobile cellular network, NFC (near-field communication), or other technologies. When executed by the processor, the computer-readable instructions implement a path planning method. The display unit of the computer device is configured to produce a visually visible image and may be a display screen, a projection device, or a virtual reality imaging device. The display screen 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 set on the computer device casing, or an external keyboard, touchpad or mouse.

[0162] Those skilled in the art will understand that the structure shown in FIG7 is merely a block diagram of a portion 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 arrangement of components.

[0163] In one embodiment, a computer device is provided, including a memory and a processor. The memory stores computer-readable instructions, and the processor implements the steps in the above-mentioned method embodiments when executing the computer-readable instructions.

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

[0165] In one embodiment, a computer program product or computer-readable instructions is provided. The computer product or computer-readable instructions include computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the steps of each of the above method embodiments.

[0166] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with the relevant laws, regulations and standards of relevant countries and regions.

[0167] 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 computer-readable instructions. The computer-readable instructions can be stored in a non-volatile computer-readable storage medium. When the computer-readable instructions are executed, they can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, 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, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory may include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in the various embodiments provided herein may include at least one of a relational database and a non-relational database. Non-relational databases may include, but are not limited to, distributed databases based on blockchains. The processor involved in the various embodiments provided herein may be, but are not limited to, a general-purpose processor, a central processing unit, a graphics processing unit, a digital signal processor, a programmable logic unit, a data processing logic unit based on quantum computing, and the like.

[0168] The technical features of the above-mentioned embodiments can be combined arbitrarily. In order to make the description concise, not all possible combinations of the technical features in the above-mentioned 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.

[0169] 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 patent application. It should be noted that a person of ordinary skill in the art may make various modifications and improvements without departing from the spirit of the present application, and these modifications and improvements 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 path planning method, executed by a robot, the method comprising: Obtaining an initial working position of the robot; Obtaining a current map, the current map including a plurality of candidate working areas; In the passable area of the current map, determining initial transition paths respectively corresponding to the candidate working areas, the initial transition paths being used to indicate paths from the initial working position to the candidate working areas; Determining area arrival costs based on the area of each candidate working area, the path length and deflection angle of the initial transition path corresponding to each candidate working area, and obtaining area arrival costs respectively corresponding to the candidate working areas; Based on the area arrival costs, determining a target working area of the robot from each of the candidate working areas; And Continuing to determine the next target working area of the robot from the latest map until a first end condition is met, and ending the path planning.

2. The method according to claim 1, wherein The obtaining of the initial working position of the robot includes: When the robot is within a working area in the map, using the position where the robot is located as the initial working position; and When the robot is outside the working area, obtaining the reachable point closest to the position where the robot is located within the working area in the map as the initial working position.

3. The method according to claim 2, wherein The method further includes: Searching for the shortest path from the position where the robot is located to the initial working position, and traveling to the initial working position in the working area based on the shortest path.

4. The method according to claim 1, characterized in that, The obtaining of the current map includes: Obtaining a prior map; Updating the passable area corresponding to the sensing range in the prior map based on the environmental information collected within the sensing range corresponding to the initial working position of the robot, to obtain an intermediate map; and Updating the passable area corresponding to the sensing range in the intermediate map based on the coverage area of the robot, to obtain the current map.

5. The method according to claim 1, wherein The determining, in the passable area of the current map, of the initial transition paths respectively corresponding to the candidate working areas includes: For any one of the candidate working areas among the candidate working areas, extracting a plurality of candidate contour points on the area contour of the candidate working area, and in the passable area of the current map, determining the initial transition paths from the initial working position to the candidate contour points respectively; Based on the path lengths of the initial transition paths respectively corresponding to the candidate contour points, determining the nearest contour point corresponding to the candidate working area among the candidate contour points; and Using the initial transition path corresponding to the nearest contour point as the initial transition path corresponding to the candidate working area.

6. The method according to claim 5, characterized in that, The determining, in the passable area of the current map, of the initial transition paths from the initial working position to the candidate contour points respectively includes: For any one of the candidate contour points among the candidate contour points, when the positional relationship between the initial operation position and the candidate contour point satisfies a preset position condition, a plurality of initial trajectory points are extracted based on the straight line determined according to the initial operation position and the candidate contour point, and an initial transition path from the initial operation position to the candidate contour point is obtained based on each of the initial trajectory points and the candidate contour point; and For any one of the candidate contour points among the candidate contour points, when the positional relationship between the initial operation position and the candidate contour point does not satisfy the preset position condition, based on the trajectory point arrival cost from the initial operation position to a passable adjacent trajectory point and the contour point arrival cost from the passable adjacent trajectory point to the candidate contour point, an initial trajectory point is determined among the passable adjacent trajectory points corresponding to the initial operation position, and the next initial trajectory point is continuously determined among the passable adjacent trajectory points corresponding to the initial trajectory point until the passable adjacent trajectory point includes the candidate contour point, and an initial transition path from the initial operation position to the candidate contour point is obtained based on each of the initial trajectory points and the candidate contour point.

7. The method according to claim 1, wherein The determining the region arrival cost based on the region area of each candidate operation region, the path length and the deflection angle of the initial transition path corresponding to each candidate operation region, and obtaining the region arrival cost corresponding to each candidate operation region respectively includes: For any one of the candidate operation regions among the candidate operation regions, the region area of the candidate operation region, the path length and the deflection angle of the initial transition path corresponding to the candidate operation region are fused to obtain the region arrival cost corresponding to the candidate region, wherein the region arrival cost is positively correlated with the path length and the deflection angle and negatively correlated with the region area.

8. The method according to claim 1, wherein The determining the region arrival cost based on the region area of each candidate operation region, the path length and the deflection angle of the initial transition path corresponding to each candidate operation region, and obtaining the region arrival cost corresponding to each candidate operation region respectively includes: The region area of each candidate operation region, the path length of the initial transition path corresponding to the candidate operation region, and the deflection angle are input into a target region cost prediction model to obtain the region arrival cost corresponding to each candidate operation region respectively.

9. The method according to claim 1, wherein The method further includes: For the initial transition path corresponding to the target operation region, the coordinates of the initial trajectory points are adjusted based on the gradient distance corresponding to the initial trajectory points included in the initial transition path to obtain the target trajectory points corresponding to the initial trajectory points included in the initial transition path respectively, and the gradient difference corresponding to the initial trajectory point is used to indicate the difference between the forward gradient between the initial trajectory point and the forward trajectory point and the backward gradient between the initial trajectory point and the backward trajectory point; A target transition path corresponding to the target operation region is obtained based on each of the target trajectory points; and The robot is controlled to reach the target operation region based on the target transition path.

10. The method according to any one of claims 1 to 9, characterized in that, The method further includes: For the end point of the transition path corresponding to the target operation area, based on the preset trajectory extraction direction, determine the in-area trajectory points from each passable adjacent trajectory point corresponding to the end point in the current map; Continue to determine the next in-area trajectory point from each passable adjacent trajectory point corresponding to the in-area trajectory point in the current map based on the preset trajectory extraction direction until the second end condition is satisfied, and obtain the in-area path corresponding to the target operation area based on each in-area trajectory point; Concatenate the transition path corresponding to the target operation area and the in-area path to obtain the complete path corresponding to the target operation area; and Perform motion control on the robot based on the complete path.

11. The method according to claim 10, wherein The method further includes: Adjust the coordinates of the trajectory points based on the gradient differences corresponding to each trajectory point included in the complete path except for the start point and the end point, and respectively obtain the updated trajectory points corresponding to each trajectory point included in the complete path; and Based on each updated trajectory point and the start point and the end point corresponding to the complete path, obtain the updated complete path corresponding to the target operation area, and perform motion control on the robot based on the updated complete path.

12. A path planning device, the device includes: An initial operation position acquisition module, configured to acquire the initial operation position of the robot; A current map acquisition module, configured to acquire a current map, where the current map includes a plurality of candidate operation areas; An initial transition path determination module, configured to determine an initial transition path corresponding to each of the candidate operation areas in the passable area of the current map, where the initial transition path is used to indicate the path from the initial operation position to the candidate operation area; An area arrival cost determination module, configured to determine an area arrival cost based on the area of a plurality of the candidate operation areas, the path lengths and deflection angles of the initial transition paths corresponding to the plurality of candidate operation areas, and obtain the area arrival cost corresponding to each candidate operation area; A target operation area determination module, configured to determine the target operation area of the robot from each of the candidate operation areas based on the area arrival cost; and A path continuous planning module, configured to continue to determine the next target operation area of the robot from the latest map until the first end condition is satisfied, and end the path planning.

13. The device according to claim 12, wherein, The current map acquisition module is further configured to: Acquire a prior map; Update the passable area corresponding to the sensing range in the prior map based on the environmental information collected within the sensing range corresponding to the initial operation position of the robot to obtain an intermediate map; and Update the passable area corresponding to the sensing range in the intermediate map based on the coverage area of the robot to obtain the current map.

14. The device according to claim 12, characterized in that, The initial transition path determination module is further configured to: For any one of the candidate operation areas among the candidate operation areas, extract a plurality of candidate contour points on the area contour of the candidate operation area, and determine an initial transition path from the initial operation position to each of the candidate contour points in the passable area of the current map; Determine the nearest contour point corresponding to the candidate operation area among the respective candidate contour points based on the path lengths of the initial transition paths respectively corresponding to the respective candidate contour points; and Use the initial transition path corresponding to the nearest contour point as the initial transition path corresponding to the candidate operation area.

15. The device according to claim 14, characterized in that, The initial transition path determination module is further configured to: For any one of the candidate contour points among the respective candidate contour points, when the positional relationship between the initial operation position and the candidate contour point satisfies a preset position condition, extract a plurality of initial trajectory points based on the straight line determined according to the initial operation position and the candidate contour point, and obtain an initial transition path from the initial operation position to the candidate contour point based on the respective initial trajectory points and the candidate contour point; and For any one of the candidate contour points among the respective candidate contour points, when the positional relationship between the initial operation position and the candidate contour point does not satisfy the preset position condition, determine an initial trajectory point among the respective passable adjacent trajectory points corresponding to the initial operation position based on the trajectory point arrival cost from the initial operation position to a passable adjacent trajectory point and the contour point arrival cost from the passable adjacent trajectory point to the candidate contour point, and continue to determine the next initial trajectory point among the respective passable adjacent trajectory points corresponding to the initial trajectory point until the passable adjacent trajectory points include the candidate contour point, and obtain an initial transition path from the initial operation position to the candidate contour point based on the respective initial trajectory points and the candidate contour point.

16. The device according to claim 12, characterized in that, The area arrival cost determination module is further configured to: For any one of the candidate operation areas among the respective candidate operation areas, fuse the area of the candidate operation area, the path length and the deflection angle of the initial transition path corresponding to the candidate operation area to obtain the area arrival cost corresponding to the candidate area, where the area arrival cost is positively correlated with the path length and the deflection angle and negatively correlated with the area.

17. The device according to claim 12, characterized in that, The path planning device further includes a target transition path determination module; the target transition path determination module is further configured to: For the initial transition path corresponding to the target operation area, adjust the coordinates of the initial trajectory points based on the gradient distances corresponding to the initial trajectory points included in the initial transition path to respectively obtain the target trajectory points corresponding to the respective initial trajectory points included in the initial transition path, and the gradient difference corresponding to the initial trajectory point is used to indicate the difference between the forward gradient between the initial trajectory point and the forward trajectory point and the backward gradient between the initial trajectory point and the backward trajectory point; Obtain the target transition path corresponding to the target operation area based on the respective target trajectory points; and Control the robot to reach the target operation area based on the target transition path.

18. The device according to claim 17, characterized in that, The path planning device further includes a complete path generation module; the complete path generation module is further configured to: For the end point of the transition path corresponding to the target operation area, based on the preset trajectory extraction direction, determine the in-area trajectory points from each passable adjacent trajectory point corresponding to the end point in the current map; Continue to determine the next in-area trajectory points from each passable adjacent trajectory point corresponding to the in-area trajectory points in the current map based on the preset trajectory extraction direction until the second end condition is satisfied, and obtain the in-area path corresponding to the target operation area based on each of the in-area trajectory points; Concatenate the transition path corresponding to the target operation area and the in-area path to obtain the complete path corresponding to the target operation area; and Perform motion control on the robot based on the complete path.

19. A computer device, comprising a memory and a processor, the memory storing computer-readable instructions, characterized in that, When the processor executes the computer-readable instructions, it implements the steps of the method according to any one of claims 1 to 11.

20. A computer-readable storage medium having computer-readable instructions stored thereon, characterized in that, When the computer-readable instructions are executed by the processor, it implements the steps of the method according to any one of claims 1 to 11.

Citation Information

Patent Citations

  • Method and device for cleaning floor with robot and robot

    CN109508002A

  • Path planning method and device of cleaning robot, cleaning robot and medium

    CN112161629A

  • Robot path planning method and device and robot

    CN113759905A

  • Urban green land-oriented mowing robot traversal path planning method

    CN114089765A

  • Path planning method and device, computer equipment and storage medium

    CN117553804A

Cited By

  • Warehouse path planning method based on virtual reality

    CN120997458A

  • Warehouse path planning method based on virtual reality

    CN120997458B

  • Robot mapping method, robot mapping device and computer storage medium

    CN121147350A

  • Multi-unmanned aerial vehicle cooperative path planning and scheduling method and system

    CN121386899A

  • Navigation method and device for robot, robot and computer readable medium

    CN121558032A