Robot path planning method and apparatus, computer device, and readable storage medium

By filtering out target transit maps in robot path planning and generating paths using transit points with the same identifier, the problem of low efficiency in robot path planning in complex buildings is solved, and efficient and accurate path planning is achieved.

WO2026118781A1PCT designated stage Publication Date: 2026-06-11SHENZHEN PUDU TECH CO LTD

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
SHENZHEN PUDU TECH CO LTD
Filing Date
2025-11-06
Publication Date
2026-06-11

AI Technical Summary

Technical Problem

When robots perform path planning in complex building structures, existing technologies are inefficient, especially during transfers between different areas where the computational load is high, leading to low path planning efficiency.

Method used

By acquiring the robot's movement tasks in the target building and multiple original maps, the starting point, ending point, and transfer points are determined. Based on transfer points with the same identifier, the target transfer map is selected, and the target path of the robot in the target building is generated.

🎯Benefits of technology

It improves the accuracy and efficiency of robot path planning, enabling efficient execution of cross-floor and same-floor movement tasks, reducing the number of transfers, and optimizing the path planning process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025133048_11062026_PF_FP_ABST
    Figure CN2025133048_11062026_PF_FP_ABST
Patent Text Reader

Abstract

A robot path planning method, comprising: acquiring a movement task of a robot in a target building, and acquiring a plurality of original maps of the target building, wherein the plurality of original maps correspond to a plurality of different areas of the target building, and adjacent original maps comprise transit points having a same identifier (202); determining a start point and an end point of the movement task, and determining, from among the plurality of original maps, a start point map to which the start point belongs and an end point map to which the end point belongs (204); on the basis of the start point map and the end point map, as well as the transit points having the same identifier in adjacent original maps, screening out a target transit map from the plurality of original maps (206); respectively determining target transit points from the start point map, the end point map, and the target transit map (208); and on the basis of the start point, the end point, and the target transit points, generating a target path of the robot in the target building for the movement task (210).
Need to check novelty before this filing date? Find Prior Art

Description

Robot path planning methods, devices, computer equipment, and readable storage media

[0001] Cross-references to related applications

[0002] This application claims priority to Chinese patent application filed on December 6, 2024, application number 2024117967843, entitled "Robot Path Planning Method, Apparatus, Computer Equipment and Readable Storage Medium", the entire contents of which are incorporated herein by reference. Technical Field

[0003] This application relates to the field of computer technology, and in particular to a robot path planning method, apparatus, computer device, and computer-readable storage medium. Background Technology

[0004] As people's demands for quality of life continue to rise, service robots have emerged. These robots possess autonomous navigation capabilities and serve as crucial auxiliary tools in office buildings, factories, hospitals, large supermarkets, hotels, and other settings, performing tasks such as cleaning, delivery, and inspection. They bring significant convenience and efficiency improvements to people's daily lives and work.

[0005] Autonomous navigation of robots requires path planning based on maps. However, in places with complex building structures such as office buildings, factories, hospitals, large shopping malls, and hotels, when robots need to continuously transfer between different areas, the map route planning of the entire robot operation scenario requires a lot of calculations, resulting in low path planning efficiency for the robot. Summary of the Invention

[0006] According to various embodiments provided in this application, a robot path planning method, apparatus, computer device, computer-readable storage medium, and computer program product are provided.

[0007] On one hand, this application provides a robot path planning method, executed by a computer device, the method comprising:

[0008] The robot's movement task in the target building is obtained, and multiple original maps for the target building are obtained. The multiple original maps correspond to multiple different areas of the target building, and adjacent original maps include transfer points with the same identifier.

[0009] Determine the start and end points of the movement task, and determine the start point map to which the start point belongs and the end point map to which the end point belongs from the multiple original maps;

[0010] Based on the starting point map and the ending point map, as well as the transit points with the same identifier in the adjacent original maps, the target transit map is selected from the multiple original maps.

[0011] The target transit point is determined from the starting point map, the ending point map, and the target transit map, respectively.

[0012] Based on the starting point, the ending point, and the target transfer point, the robot generates a target path for the mobile task within the target building.

[0013] On the other hand, this application provides a robot path planning device, comprising:

[0014] The acquisition module is used to acquire the robot's movement tasks in the target building and acquire multiple original maps for the target building. The multiple original maps correspond to multiple different areas of the target building, and adjacent original maps include transfer points with the same identifier.

[0015] The first determining module is used to determine the starting point and the ending point of the mobile task, and to determine the starting point map to which the starting point belongs and the ending point map to which the ending point belongs from the plurality of original maps;

[0016] A filtering module is used to filter out a target transit map from the multiple original maps based on the starting point map, the ending point map, and transit points with the same identifier in the adjacent original maps.

[0017] The second determining module is used to determine the target transit point from the starting point map, the ending point map, and the target transit map, respectively.

[0018] The generation module is used to generate a target path for the robot in the target building for the mobile task based on the starting point, the ending point and the target transfer point.

[0019] On the other hand, this application also provides a computer device. The computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to implement the steps of a robot path planning method.

[0020] On the other hand, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, implements the steps of a robot path planning method.

[0021] On the other hand, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, implements the steps of a robot path planning method.

[0022] Details of one or more embodiments of this application are set forth in the following drawings and description. Other features and advantages of this application will become apparent from the specification, drawings, and claims. Attached Figure Description

[0023] To more clearly illustrate the technical solutions in the embodiments of this application or the conventional technology, the drawings used in the description of the embodiments or the conventional technology will be briefly introduced below. Obviously, the drawings described below are only embodiments of this application. For those skilled in the art, other drawings can be obtained based on the disclosed drawings without creative effort.

[0024] Figure 1 shows the application environment of the robot path planning method in one embodiment;

[0025] Figure 2 is a flowchart of a robot path planning method in one embodiment;

[0026] Figure 3 is a schematic diagram of the original map corresponding to each area in the target building in one embodiment;

[0027] Figure 4 is a flowchart of the shortest path search in one embodiment;

[0028] Figure 5 is a structural block diagram of a robot path planning device in one embodiment;

[0029] Figure 6 is a block diagram of the internal structure of a computer device in one embodiment. Detailed Implementation

[0030] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0031] The robot path planning method provided in this application embodiment can be applied to the application environment shown in Figure 1. Robot 102 communicates with server 104 via a network. A data storage system can store the data that server 104 needs to process. The data storage system can be integrated on server 104 or placed on a cloud or other network server. Both robot 102 and server 104 can independently execute the robot path planning method provided in this application embodiment. Robot 102 and server 104 can also cooperate to execute the robot path planning method provided in this application embodiment. When robot 102 and server 104 cooperate to execute the robot path planning method provided in this application embodiment, server 104 obtains the robot 102's movement task in the target building and obtains multiple original maps for the target building. The multiple original maps correspond to multiple different areas of the target building, and adjacent original maps include transfer points with the same identifier. Server 104 determines the start and end points of the movement task and determines the start point map to which the start point belongs and the end point map to which the end point belongs from the multiple original maps. Server 104 filters the target transit map from multiple original maps based on the starting point map, the ending point map, and transit points with the same identifier in adjacent original maps. Server 104 then determines the target transit point from the starting point map, the ending point map, and the target transit map. Based on the starting point, ending point, and target transit point, server 104 generates a target path for robot 102 within the target building for the movement task. Server 104 sends this target path to robot 102. Server 104 can be implemented using a standalone server, a server cluster consisting of multiple servers, or a cloud server. The robot can be an autonomous, mobile intelligent device such as a cleaning robot, delivery robot, inspection robot, or disinfection robot.

[0032] In one embodiment, as shown in FIG2, a robot path planning method is provided. Taking the application of this method to a computer device (the computer device can be the robot 102 or the server 104 in FIG1) as an example, the method includes the following steps:

[0033] Step 202: Obtain the robot's movement task in the target building and obtain multiple original maps for the target building. The multiple original maps correspond to multiple different areas of the target building, and adjacent original maps include transfer points with the same identifier.

[0034] The movement task refers to the task of the robot moving from the starting point to the destination within a target building. The target building can be a single building or multiple buildings; the starting point and the destination can be in the same building or in different buildings.

[0035] When the target building is a single building, the movement task refers to a movement task within the same building. When the target building includes multiple buildings, the movement task refers to a movement task across buildings.

[0036] Multiple original maps of the target building correspond one-to-one with multiple areas of the target building. Each building can correspond to multiple original maps, and these multiple original maps correspond one-to-one with multiple areas of that building.

[0037] Adjacent original maps refer to the original maps corresponding to adjacent areas within the target building. For example, if area A and area B are adjacent within the target building, then the original map 'a' corresponding to area A and the original map 'b' corresponding to area B are adjacent.

[0038] In one embodiment, the transfer point with the same identifier can refer to a transfer point that exists in different locations in two original maps. A transfer point with the same identifier in two original maps can refer to different locations in two areas corresponding to the target building. For example, original maps a and b have a transfer point 1 with the same identifier. In area A corresponding to original map a, transfer point 1 refers to location A1 in area A, while in area B corresponding to original map b, transfer point 1 refers to location B1 in area B. Location A1 in area A is different from location B1 in area B.

[0039] In one embodiment, the multiple original maps do not overlap, meaning that no two original maps contain the same location.

[0040] In some embodiments, if two adjacent areas within a target building contain the same location, then the two adjacent original maps corresponding to those two adjacent areas will also contain the same location. The same transfer point identified in adjacent original maps can refer to the same location within the two adjacent areas.

[0041] Specifically, the computer equipment acquires the robot's movement tasks in the target building and acquires multiple original maps of the target building. These multiple original maps correspond to multiple different areas of the target building, and adjacent original maps include transfer points with the same identifier.

[0042] In one embodiment, the movement task is either a movement task within the same building or a movement task across buildings. When the start and end points of a movement task are in the same building, the movement task is a movement task within the same building. When the start and end points of a movement task are in different buildings, the movement task is a movement task across buildings.

[0043] In one embodiment, the movement task includes at least one of intra-floor movement tasks or inter-floor movement tasks. Further, the target building includes at least one building, and intra-floor movement tasks include at least one of intra-floor movement tasks within the same building and intra-floor movement tasks across buildings; inter-floor movement tasks include at least one of inter-floor movement tasks within the same building and inter-floor movement tasks across buildings. Inter-floor movement tasks across buildings refer to the task of moving from one floor of one building to another floor of another building.

[0044] Step 204: Determine the starting point and ending point of the movement task, and determine the starting point map to which the starting point belongs and the ending point map to which the ending point belongs from multiple original maps.

[0045] Specifically, the computer device can obtain the start and end points of the mobile task, determine the start point map to which the start point belongs from multiple original maps, and determine the end point map to which the end point belongs from multiple original maps.

[0046] Step 206: Based on the starting point map, the ending point map, and the transit points with the same identifier in the adjacent original maps, select the target transit map from multiple original maps.

[0047] Specifically, the computer equipment selects the target transit map from multiple original maps based on the starting point map, the ending point map, and transit points with the same identifier in adjacent original maps.

[0048] In one embodiment, the starting point map and the ending point map can be adjacent maps or non-adjacent maps. When the starting point map and the ending point map are adjacent maps, there is no target transit map. That is, the target transit map selected from multiple original maps can be zero, and the number of target transit maps is an integer greater than or equal to zero.

[0049] In one embodiment, when the target building comprises one building, the target transit map is a transit map selected from multiple original maps of that building. When the target building comprises multiple buildings, the target transit map is a transit map selected from multiple original maps of each of the multiple buildings.

[0050] Step 208: Determine the target transfer point from the starting point map, the ending point map, and the target transfer point map, respectively.

[0051] Specifically, the computer equipment determines the target transfer point from the starting point map, the ending point map, and the target transfer point map, respectively.

[0052] In one embodiment, the computer device determines transit points with the same identifier in both the origin map and the destination transit map, and uses these transit points with the same identifier as target transit points. If each target transit map determined by the computer device contains transit points with the same identifier, these transit points with the same identifier in each target transit map are used as target transit points. The computer device also determines transit points with the same identifier in both the target transit map and the destination map, and uses these transit points with the same identifier in both maps as target transit points.

[0053] Understandably, when there is no target transit map, the target transit point is determined directly through the starting point map and the ending point map, and the transit point with the same identifier in the starting point map and the ending point map is taken as the target transit point.

[0054] Step 210: Generate the target path for the robot to perform the movement task in the target building based on the starting point, ending point, and target transfer point.

[0055] Specifically, the computer equipment generates a target path for the robot to perform its movement task within the target building, based on the starting point, the ending point, and the target transfer point. The robot then executes the movement task within the target building according to the target path, moving from the starting point to the ending point.

[0056] In this embodiment, the movement task includes at least one of the same-floor movement task or the cross-floor movement task; the target transfer map includes at least one of the same-floor transfer map or the cross-floor transfer map; the target transfer point includes at least one of the same-building transfer point or the cross-floor transfer point; and the target path includes at least one of the same-floor movement path for the same-floor movement task or the cross-floor movement path for the cross-floor movement task.

[0057] In the aforementioned robot path planning method, the robot's movement task within the target building is acquired, along with multiple original maps corresponding to different areas of the target building. Adjacent original maps contain transfer points with the same identifier, allowing the robot to determine reachable paths between two original maps and switch between them. The starting and ending points of the movement task are determined, and the starting map and ending map are identified from the multiple original maps. Based on these maps and the transfer points with the same identifier in adjacent original maps, a target transfer map is selected from the multiple original maps, minimizing the number of transfers. Target transfer points are determined from the starting, ending, and target transfer maps respectively. Based on these points, the target path for the robot's movement task within the target building is generated, improving the accuracy and efficiency of robot path planning.

[0058] Furthermore, this solution establishes a connection between two maps through transfer points with the same identifier, which can be applied to any cross-floor and same-floor movement tasks, enabling the robot to perform complex cross-floor and same-floor movement tasks efficiently and accurately.

[0059] In one embodiment, the movement task includes at least one of a same-floor movement task or a cross-floor movement task, the target transit map includes at least one of a same-floor transit map or a cross-floor transit map, the target transit point includes at least one of a same-floor transit point or a cross-floor transit point, and the target path includes at least one of a same-floor movement path for a same-floor movement task or a cross-floor movement path for a cross-floor movement task.

[0060] In this embodiment, the target building can be a single building or multiple buildings; the same-floor movement task includes at least one of the following: same-floor movement tasks within the same building or same-floor movement tasks across buildings. The target transfer map includes at least one of the following: same-floor transfer maps within the same building or same-floor transfer maps across buildings. The target transfer point includes at least one of the following: same-floor transfer point within the same building or same-floor transfer point across buildings. The target path includes at least one of the following: movement path for same-floor movement tasks within the same building or movement path for same-floor movement tasks across buildings.

[0061] In this embodiment, the target building can be a single building or multiple buildings. Cross-floor movement tasks include at least one of the following: cross-floor movement tasks within the same building and cross-floor movement tasks across different buildings. The target transit map includes at least one of the following: a transit map within the same floor of each of the multiple buildings, a cross-floor transit map of each of the multiple buildings, and a transit map between every two buildings in the multiple buildings. The target transit point includes at least one of the following: a transit point within the same floor of each of the multiple buildings, a cross-floor transit point of each of the multiple buildings, and a transit point between every two buildings in the multiple buildings. The target path includes cross-floor movement paths for cross-floor movement tasks within the same building and cross-floor movement paths for cross-floor movement tasks across different buildings. It is understood that cross-floor movement tasks within the same building may not include transit points between every two buildings in the multiple buildings.

[0062] In this embodiment, the cross-building, cross-floor movement task includes at least one of the following: a movement task within the same floor of each building in multiple buildings, a movement task between different floors within each building in multiple buildings, and a movement task between any two buildings in multiple buildings. Specifically, the cross-floor movement path for the cross-building, cross-floor movement task can include at least one of the following: a movement path within the same floor of each building in multiple buildings, a movement path between different floors within each building in multiple buildings, and a movement path between any two buildings in multiple buildings.

[0063] In this embodiment, when the starting point and the ending point are on the same floor of the same building, the movement task is a same-floor movement task within the same building. A single floor of a building may correspond to one original map or multiple original maps. When multiple original maps correspond to the same floor, each original map corresponds to an area on that floor, and adjacent original maps include transfer points with the same identifier.

[0064] The same floor where the starting point and the destination are located can be defined as the target floor. When the target floor corresponds to multiple original maps, the computer device can determine the starting point map and the destination map from these original maps. Based on the starting point map, the destination map, and the transfer points with the same identifier in the original maps adjacent to the target floor, the computer device filters out the transfer maps for the same floor from the multiple original maps of the building. It then determines the transfer points for the same floor from the starting point map, the destination map, and the transfer maps for the same floor. Based on the starting point, the destination map, and the transfer points for the same floor, it generates the same-floor movement path for the robot in the building for the same-floor movement task.

[0065] In this embodiment, when the starting point and the ending point are on different floors of the same building, the movement task is a cross-floor movement task within the same building. A single floor may correspond to one original map or multiple original maps. When a single floor corresponds to multiple original maps, each original map corresponds to an area within that floor, and adjacent original maps include transfer points with the same identifier.

[0066] When the starting point and the destination are on different floors of the same building, the computer device can determine the starting point map and the destination map from multiple original maps. Based on the starting point map, the destination map, and transfer points with the same identifier in adjacent original maps, the computer device filters out cross-floor transfer maps from multiple original maps of the building. It then determines cross-floor transfer points from the starting point map, the destination map, and the cross-floor transfer maps respectively. Based on the starting point, the destination, and the cross-floor transfer points, it generates a cross-floor movement path for the robot in the building for the cross-floor movement task.

[0067] In this embodiment, the transfer point between floors can be an elevator access point, such as an elevator entrance. Elevator entrances on different floors can have the same signage.

[0068] In some embodiments, the target building comprises multiple units, and the target building has multiple floors. Each unit includes different areas on the same floor. Each floor is divided into multiple areas. As shown in Figure 3, the target building has four floors: basement level, first floor, second floor, and third floor, and is divided into three units, resulting in 12 areas, such as Unit 1 basement level, Unit 1 first floor, Unit 1 second floor, and Unit 1 third floor. One area can correspond to one original map, and one area can also correspond to two original maps. For example, Unit 1 first floor corresponds to two original maps, while Unit 2 first floor corresponds to one original map.

[0069] When the starting point and the destination are on different floors in different units, the movement task includes intra-floor movement tasks and inter-floor movement tasks. The computer device can determine the starting point map and the destination map from multiple original maps. Based on the starting point map, the destination map, and transfer points with the same identifier in adjacent original maps, the computer device filters out target transfer maps from multiple original maps. These target transfer maps include intra-floor transfer maps and inter-floor transfer maps. Intra-floor transfer points and inter-floor transfer points are determined from the starting point map, destination map, intra-floor transfer maps, and inter-floor transfer maps, respectively. Based on the starting point, destination, intra-floor transfer points, and inter-floor transfer points, intra-floor movement paths for intra-floor movement tasks and inter-floor movement paths for inter-floor movement tasks are generated within the target building.

[0070] As shown in Figure 3, each rectangle represents an original map, and a circle (hollow circle) within a rectangle represents a transit point in the original map. Two circles are connected by a double-headed arrow, indicating that these two circles serve as transit points between two original maps. The robot can move between these two original maps by using the two circles pointed to by the double-headed arrow.

[0071] In this embodiment, the target building can be a single building comprising Unit 1, Unit 2, and Unit 3. If the robot is currently at the starting point (solid dot) marked on the original map of Unit 2, Floor 1, then the original map corresponding to Unit 2, Floor 1 is the starting point map. The endpoint is Endpoint 1 (solid dot) marked on the original map of Unit 2, Floor 3, then the endpoint map is the original map corresponding to Unit 2, Floor 3. The robot's current movement task is a cross-floor elevator control task, i.e., a cross-floor movement task within the same building. After the robot takes the elevator through the elevator shafts along a vertical connecting line corresponding to the current starting point map, it converts the map to the corresponding floor upon reaching it. Each point along the entire vertical connecting line represents a corresponding elevator access point with the same identifier. These elevator access points serve as transfer points in the cross-floor movement task within the same building, also known as cross-floor transfer points within the same building.

[0072] For example, in Unit 2 of Figure 3, the four transfer points in the original map connected by three vertical double-arrow lines have the same label. That is, in Unit 2, the four elevator points on the basement, the first floor, the second floor, and the third floor have the same label. The robot can directly switch from the elevator point on the basement to any one of the elevator points on the first, second, or third floor.

[0073] If the task involves moving within the same floor of the same building, the two original maps can be connected by a horizontal double-arrow line with the same marker at both ends. This allows the robot to switch from one original map to another. Connecting the two original maps through the marker makes them mutually accessible, thus enabling the robot to move within the same floor of the same building.

[0074] Therefore, once the starting point and destination are determined, all transfer points along the route from the starting point to the destination can be quickly found using elevator access points or transfer points on the same floor. Then, based on the original map, starting map, and destination map associated with each transfer point, the target transfer map with the fewest transfers can be selected, thus determining a path from the starting point through the target transfer points to the destination. Furthermore, by segmenting the path according to different transfer point types, cross-floor movement within the same building and same-floor movement within the same building can be performed in segments.

[0075] In one embodiment, the target buildings include Building A and Building B. For example, Building A may include one unit, and Building B may include two and three units. If the robot is currently at the starting point (solid dot) marked on the original map of the first floor of Unit 2 in Building B, then the original map corresponding to the first floor of Unit 2 is the starting point map. The destination is Endpoint 2 (solid dot) marked on the original map of the second floor of Unit 1 in Building A. Then the destination map is the original map where Endpoint 2 is located. Therefore, the robot's current movement task is a cross-building, cross-floor movement task. The starting point map of the first floor of Unit 2 in Building B and the destination map of the second floor of Unit 1 in Building A need to pass through the original map of the first floor of Unit 1 in Building A once, i.e., the transit map. The robot can move from the starting map to the transfer map on the first floor of Unit 1 in Building A, based on the transfer point connected by the horizontal double-arrow line between the starting map and the transfer map on the first floor of Unit 1 in Building A. Since there may be multiple transfer maps between the starting map and the destination map, the transfer method with the fewest transfers is selected, i.e., from the transfer point below the starting map to the transfer map on the left side of the first floor of Unit 1 via the horizontal double-arrow in Figure 3; excluding the transfer point above the starting map to the transfer map on the right side of the first floor of Unit 1, and then to the transfer map on the left side of the first floor of Unit 1 based on the same transfer point; thus selecting the target path with the fewest transfers, after reaching the transfer map on the first floor of Unit 1 in Building A, the robot then moves from the transfer map to the destination map on the second floor of Unit 1 based on the transfer point connected by the vertical line between the transfer map on the first floor of Unit 1 in Building A and the destination map, so that the robot moves from the starting point on the first floor of Unit 2 in Building B to the destination point 2 on the second floor of Unit 1 in Building A, thereby realizing the robot's cross-building and cross-floor movement task.

[0076] If the robot is currently at its starting point marked on the original map of Unit 2, Floor 1, Building B, and its destination is marked as Destination 3 on the original map of Unit 1, Floor 1, Building A, then the destination map is the original map containing Destination 3. Therefore, the robot's current movement task is a cross-building, same-floor movement task. The starting map of Unit 2, Floor 1, Building B, and the destination map of Unit 1, Floor 1, Building A, are connected by a horizontal double-arrow line, indicating that the starting and destination maps are adjacent. No intermediate map is needed; the robot can move directly from the starting map of Unit 2, Floor 1, Building B, to the destination map of Unit 1, Floor 1, Building A, thus achieving cross-building, same-floor movement. This avoids the need to transit through the intermediate map on the right side of Unit 1, Floor 1, before reaching Destination 3, thereby reducing the number of transits and improving path planning efficiency.

[0077] In this embodiment, the movement task includes at least one of the same-floor movement task or the cross-floor movement task; the target transfer map includes at least one of the same-floor transfer map or the cross-floor transfer map; the target transfer point includes at least one of the same-floor transfer point or the cross-floor transfer point; and the target path includes at least one of the same-floor movement path for the same-floor movement task or the cross-floor movement path for the cross-floor movement task. This enables the robot to perform optimal path search for the same-floor multi-map movement task and the cross-floor multi-map movement task. Based on the transfer point information and the destination location, the robot's path task is split, enabling the robot to perform cross-floor and same-floor movement tasks within the same building, as well as cross-floor movement tasks in multiple buildings.

[0078] In one embodiment, a target transit map is selected from multiple original maps based on the origin map, the destination map, and transit points with the same identifier in adjacent original maps, including:

[0079] For intra-floor movement tasks within the same building, determine the starting floor and the ending floor within that building, and determine the original map corresponding to the starting floor and the original map corresponding to the ending floor; based on the starting map and the original map corresponding to the starting floor, determine the intra-floor transfer map corresponding to the starting map from the original map corresponding to the starting floor; based on the ending map and the original map corresponding to the ending floor, determine the intra-floor transfer map corresponding to the ending map from the original map corresponding to the ending floor; for inter-floor movement tasks within the same building, determine the original map corresponding to each floor traversed from the starting floor to the ending floor within that building; based on the intra-floor transfer maps corresponding to the starting map and the intra-floor transfer maps corresponding to the ending map, determine the inter-floor transfer maps from the starting floor to the ending floor from the original maps corresponding to each floor traversed.

[0080] In one embodiment, a target transit map is selected from multiple original maps based on the origin map, the destination map, and transit points with the same identifier in adjacent original maps, including:

[0081] Based on the starting point map, the ending point map, and transit points with the same identifier in adjacent original maps, candidate transit maps are selected from multiple original maps; the attribute information corresponding to the transit points in each candidate transit map is determined; based on the attribute information of the starting point map, the ending point map, and the transit points, the target transit map that meets the preset switching conditions is selected from the candidate transit maps.

[0082] The transfer point's attribute information includes its identifier, the map name of the map on which it is located, and the location information of the destination. Candidate transfer maps refer to the maps that must be traversed from the origin map to the destination map.

[0083] The attribute information of a transfer point can be its data structure, including its identifier, the name of the map it's located on, and the location of its destination. For elevator access points, they can also be considered special transfer points that require cross-floor tasks. Therefore, elevator access points can inherit the attributes of transfer points.

[0084] Specifically, the computer equipment selects candidate transit maps from multiple original maps based on the starting point map, the ending point map, and transit points with the same identifiers included in adjacent maps in each original map.

[0085] The computer equipment determines the attribute information corresponding to each transit point in each candidate transit map. Based on the starting point map, the ending point map, and the attribute information of each transit point, it selects the target transit map that meets the preset switching conditions from the candidate transit maps.

[0086] In this embodiment, the transfer point map that meets the preset switching conditions can be the map with the fewest switching times within the same floor, or the map with the fewest switching times across floors. For example, a map that only needs to be switched once within the same floor, or a map that only needs to be switched once across floors. The number of switches required is related to the transfer point's attribute information. That is, the number of switches required can be determined based on the identifier of each transfer point and the map name of the map where the transfer point is located.

[0087] For example, among three original maps A, B, and C on the same floor, if original maps A and B share a transfer point marked with the same identifier 1, and original maps B and C share a transfer point marked with the same identifier 2, then the robot needs to switch from original map A to original map B via the transfer point marked with identifier 1, and then switch from original map B to original map C via the transfer point marked with identifier 2, requiring two switches. However, if original maps A and C on the same floor share a transfer point marked with the same identifier, the robot can directly switch from original map A to original map C via this transfer point, requiring only one switch and avoiding the need to pass through original map B. In this case, original map C can be selected as the target transfer map.

[0088] In this embodiment, candidate transit maps are selected from multiple original maps based on the starting point map, the ending point map, and transit points with the same identifier in adjacent original maps. This initially identifies all transit maps that can connect the starting point map to the ending point map. The attribute information corresponding to the transit points in each candidate transit map is determined. Based on the attribute information of the starting point map, the ending point map, and the transit points, the target transit map that meets the preset switching conditions can be accurately selected from the candidate transit maps. This ensures that the selected target transit map has the fewest transit points required to travel from the starting point to the ending point, thereby generating the shortest path from the starting point to the ending point.

[0089] In one embodiment, candidate transit maps are selected from multiple original maps based on the origin map, the destination map, and transit points with the same identifier in adjacent original maps, including:

[0090] Add the starting map to the map queue, and select a map from the map queue as the current map; when the current map is not the destination map, determine each associated map of the current map from multiple original maps; the current map and associated maps include transit points with the same identifier; add each associated map of the current map to the map queue, delete the current map from the map queue, and return to the step of selecting a map from the map queue as the current map and continue execution until the map queue is empty, and obtain the candidate transit maps traversed from the starting map to the destination map.

[0091] Specifically, the computer device pre-sets a map queue, which is used to store maps to be searched. For example, adding a starting map to the map queue makes it the map to be searched in the map queue; similarly, adding related maps to the map queue makes them the maps to be searched in the map queue.

[0092] The computer device adds a starting map to a map queue and selects a map from the queue as the current map. The current map can be selected sequentially or randomly from the map queue. The map selected from the map queue becomes the current map. For example, if the starting point is the selected starting map, then the starting map is the current map.

[0093] The system determines whether the selected current map is the destination map. If the current map is not the destination map, it determines each associated map of the current map from multiple original maps based on transit points with the same identifier in each original map. The current map and associated maps include transit points with the same identifier. That is, the computer device can select an original map with transit points with the same identifier as the current map from multiple original maps as the associated map of the current map.

[0094] Once the computer device identifies each associated map of the current map, the search for the current map is complete. Then, each associated map of the current map is added to the map queue, the current map is removed from the map queue, and the process returns to the step of selecting a map from the map queue as the current map and continues until the map queue is empty, thus obtaining the candidate transit maps traversed from the starting map to the ending map.

[0095] In this embodiment, when the current map is the destination map and the map queue is not empty, the current map is deleted from the map queue, and the step of selecting a map from the map queue as the current map is returned and the process continues until the map queue is empty, thus obtaining the candidate transit maps traversed from the starting map to the destination map.

[0096] In this embodiment, the loop stops when the current map is the destination map and the map queue is empty, and candidate transit maps are obtained from the starting map to the destination map.

[0097] In this embodiment, the starting point map is added to the map queue, and a map is selected from the map queue as the current map. If the current map is not the destination map, each associated map of the current map is determined from multiple original maps. The current map and associated maps include transit points with the same identifier. Each associated map of the current map is added to the map queue, and the current map is deleted from the map queue, so that the map queue always contains maps to be searched. The step of selecting a map from the map queue as the current map is returned and execution continues. Thus, by automatically traversing each map in the map queue to search for the next map that each map in the map queue can reach, until the map queue is empty, all candidate transit maps that can be transited in the planning process from the starting point to the destination can be accurately searched from multiple original maps through a global search.

[0098] In one embodiment, when the current map is not the destination map, each associated map of the current map is determined from multiple source maps, including:

[0099] When the current map is not the destination map and the current map is not in the visited set, each associated map of the current map is determined from multiple original maps. The visited set is used to store the selected maps in the map queue.

[0100] In this embodiment, the method further includes:

[0101] If the current map is not the destination map and the current map is in the visited set, return to the step of selecting a map from the map queue as the current map and continue execution.

[0102] Specifically, the computer device may have a pre-set map queue and a visited set. The visited set is used to store the maps that have been searched.

[0103] The computer device adds the starting map to the map queue and selects a map from the queue as the current map. It then determines whether the selected current map is the destination map. If the current map is not the destination map, the computer device checks if the current map is in the visited set. If the current map is not in the visited set, it means the current map has not been visited. Based on the transit points with the same identifier in each of the original maps, the computer device determines each associated map of the current map from the multiple original maps. Each associated map of the current map is added to the map queue, and the current map is removed from the map queue. The process then returns to the step of selecting a map from the map queue as the current map and continues until the map queue is empty.

[0104] In this embodiment, if the current map is not the destination map and the current map is in the visited set, it means that the current map has been searched, that is, the current map has been associated with a map. In this case, the current map is deleted from the map queue, and the step of selecting a map from the map queue as the current map is returned and the execution continues.

[0105] In this embodiment, if the current map is not the destination map and is not in the visited set, it means the current map has not been visited. Therefore, each associated map of the current map is determined from multiple original maps to search for the next reachable map for the current map. Conversely, if the current map is not the destination map and is in the visited set, it means the current map has already been searched, so there is no need to search it again, reducing the search volume and improving search efficiency. The step of selecting a map from the map queue as the current map is returned and execution continues until the map queue is empty. This allows for a global search to accurately find all candidate transit maps from multiple original maps that can facilitate transit.

[0106] In one embodiment, the method further includes: when the current map is not the destination map and the current map does not have an associated map, returning to the step of selecting a map from the map queue as the current map and continuing execution.

[0107] Specifically, when the current map is not the destination map, the computer device can determine the associated maps of the current map. If the current map has no associated maps, it means that the current map cannot be switched to the next map. In this case, the process returns to the step of selecting a map from the map queue as the current map and continues execution until the map queue is empty.

[0108] Furthermore, if the current map is not the destination map and has no associated maps, it can be removed from the map queue and added to the visited set. Then, return to the step of selecting a map from the map queue as the current map and continue execution.

[0109] In one embodiment, if the current map is not the destination map, the current map is not in the visited set, and the current map has no associated maps, the step of selecting a map from the map queue as the current map is returned and execution continues.

[0110] Furthermore, if the current map is not the destination map, is not in the visited set, and has no associated maps, the current map can be removed from the map queue and added to the visited set. Then, return to the step of selecting a map from the map queue as the current map and continue execution.

[0111] In this embodiment, if the current map is not the destination map and there is no associated map for the current map, it means that the current map cannot be switched to the next map. In this case, the step of selecting a map from the map queue as the current map is returned and the process continues to search for the next transit map for each map in the map queue based on the transit point with the same identifier, so as to realize the map switching.

[0112] In one embodiment, the method further includes: when the current map is the destination map and the map queue is not empty, deleting the current map from the map queue, returning to the step of selecting a map from the map queue as the current map, and continuing execution.

[0113] Specifically, when the current map is the destination map and the map queue is not empty, the current map is removed from the map queue, and the step of selecting a map from the map queue as the current map is returned and the process continues until the map queue is empty, thus obtaining the candidate transit maps traversed from the starting map to the destination map.

[0114] In this embodiment, when the current map is the destination map, it means there is no need to determine the next map of the destination map, so the destination map can be directly deleted from the map queue. If the map queue is not empty at this time, it means there are still maps to be searched in the map queue. Then, the step of selecting a map from the map queue as the current map is returned and execution continues. This allows for automatic traversal of each map in the map queue to search for the next map that each map in the map queue can reach, until the map queue is empty. Thus, through a global search, all candidate transit maps that can be used to transfer in the planning process from the starting point to the destination can be accurately searched from multiple original maps.

[0115] In one embodiment, the loop stops when the current map is the destination map and the map queue is empty, and candidate transit maps are obtained from the starting map to the destination map.

[0116] If the current map is the destination map, it means there's no need to determine the next map, and the destination map can be directly removed from the map queue. If the map queue is empty at this time, it means there are no maps to search, and all candidate transit maps have been obtained through global search.

[0117] In one embodiment, after determining the data structure of the transfer points, the answer to whether two maps are accessible can be simplified to whether a path can be established between the starting map and the ending map through the transfer points. If so, it means that the two maps can be accessed by each other. Based on the actual situation in the current scenario, by default, if the destination map can be reached by accessing fewer transfer points, it means that this is a map with the shortest path to the destination. Because we don't need to consider the weighted length of each path, but rather treat the length of each path as 1, we can directly use BFS (Breadth-First Search) to obtain the shortest map access path. In the actual use of this algorithm, only the starting map information, the ending map information, and all transfer points (including elevator points) need to be passed in. All transfer points can be obtained by traversing all the robot's maps.

[0118] Figure 4 illustrates a shortest path search process. The following information is predefined:

[0119] First, initialize an empty visited set to record the maps that have been visited in the map queue.

[0120] Initialize an empty map queue to store the maps to be searched.

[0121] Add the starting map to the map queue. Check if the map queue is empty; if not, select a map from the queue in sequence as the current map. The first map selected is the starting map.

[0122] Determine if the current map is the destination map. If not, further determine if the current map is in the visited set. If yes, return to the step of determining if the map queue is empty and continue execution. If no, determine the map with the same transit point identifier as the current map as the associated map, that is, determine the associated map of the current map.

[0123] Add each associated map of the current map to the map queue, remove the current map from the map queue, add the current map to the visited set, and return to the step of determining whether the map queue is empty to continue execution;

[0124] If the current map is the destination map, a candidate queue pointing from the starting map to the destination map can be obtained; the candidate queue includes the starting map, at least one candidate transit map, and the destination map; then, return to the step of determining whether the map queue is empty and continue execution;

[0125] If the map queue is empty, multiple candidate queues can be obtained; from the multiple candidate queues, the candidate queue with the fewest candidate transit maps is selected;

[0126] Create an empty mutable list. Iterate through each map in the selected candidate queue. When a map that has been iterated over has a transfer point with the same identifier as the next map in the candidate queue, add that transfer point as the target transfer point to the mutable list.

[0127] Returns a variable list as a list of transit points with the fewest transits. Based on the origin, destination, and target transit points in the variable list, a target path is generated, which is the path with the fewest transits.

[0128] In one embodiment, a robot path planning method is provided, applied to a computer device, comprising:

[0129] Obtain the robot's movement tasks within the target building and acquire multiple original maps of the target building. These original maps correspond to multiple different areas of the target building, and adjacent original maps include transfer points with the same identifier.

[0130] Determine the start and end points of the movement task, and identify the start point map to which the start point belongs and the end point map to which the end point belongs from multiple original maps;

[0131] Add the starting map to the map queue, and select one map from the queue in sequence as the current map. The first map selected is the starting map.

[0132] Determine if the current map is the destination map. If the current map is not the destination map, further determine if the current map is in the visited set. If so, return to the step of selecting a map from the map queue in order as the current map and continue execution.

[0133] If the current map is not the destination map and is not in the visited set, then the map with the same transit point identifier as the current map is identified as the associated map.

[0134] Add each associated map of the current map to the map queue, and remove the current map from the map queue and add the current map to the visited set;

[0135] Return to the step of selecting a map from the map queue in sequence as the current map and continue execution until the map queue is empty.

[0136] If the current map does not have any associated maps, return to the step of selecting a map from the map queue in sequence as the current map and continue execution until the map queue is empty.

[0137] When the map queue is empty, multiple candidate queues can be obtained from the starting map to the destination map; each queue includes the starting map, at least one candidate transit map, and the destination map.

[0138] From multiple candidate queues, select the candidate queue with the fewest candidate transit maps;

[0139] Iterate through each map in the selected candidate queue. When a map that has been traversed has a transfer point with the same identifier as the next map in the candidate queue, use that transfer point as the target transfer point. Continue until the last map in the candidate queue is reached, and obtain each target transfer point.

[0140] Based on the starting point, various target transfer points, and the destination, a target path is generated, which is the path with the fewest transfers.

[0141] The robot can move from the starting point to the destination along the target path.

[0142] If the target path cannot be found when the map queue is empty, an empty list is returned.

[0143] In this embodiment, a breadth-first search algorithm is used to filter out all necessary transfer points and their corresponding attribute information after inputting all transfer point information, as well as the starting and ending point maps. Based on the attribute information carried by these transfer points and the destination location, a target path from the starting point to the destination is generated. Depending on the type of transfer point, the target path can be further divided into intra-floor paths and cross-floor paths. According to the maps corresponding to the cross-floor paths and intra-floor paths, the robot moves to the destination in segments by executing cross-floor elevator control tasks and intra-floor map switching tasks. This effectively realizes the optimal path search scheme for robot tasks involving cross-floor aggregation and intra-floor multi-map tasks.

[0144] In this embodiment, the transfer points on the same floor and the elevator access points across floors in traditional maps are integrated into a single abstract point information, namely a transfer point carrying attribute information, thereby enabling the unified processing of different types of map tasks.

[0145] By connecting and constructing a three-dimensional 3D multi-type topological map scene, the robot not only has the ability to perform single-floor cross-map tasks, but also can perform more complex multi-floor integrated single-floor multi-map tasks.

[0146] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.

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

[0148] In one embodiment, as shown in FIG5, a robot path planning device 500 is provided, comprising:

[0149] The acquisition module 502 is used to acquire the robot's movement task in the target building and acquire multiple original maps of the target building. The multiple original maps correspond to multiple different areas of the target building, and adjacent original maps include transfer points with the same identifier.

[0150] The first determining module 504 is used to determine the starting point and the ending point of the movement task, and to determine the starting point map to which the starting point belongs and the ending point map to which the ending point belongs from multiple original maps.

[0151] The filtering module 506 is used to filter out the target transit map from multiple original maps based on the starting point map, the ending point map, and transit points with the same identifier in adjacent original maps.

[0152] The second determining module 508 is used to determine the target transfer point from the starting point map, the ending point map, and the target transfer point map, respectively.

[0153] The generation module 510 is used to generate the target path for the robot to perform the movement task in the target building based on the starting point, the ending point and the target transfer point.

[0154] In this embodiment, the robot's movement task within the target building is acquired, along with multiple original maps corresponding to different areas of the target building. Adjacent original maps include transfer points with the same identifier, allowing the robot to determine reachable paths between the two maps and switch between them. The starting and ending points of the movement task are determined, and the starting map and ending map are identified from the multiple original maps. Based on the starting and ending maps, and the transfer points with the same identifier in adjacent original maps, a target transfer map is selected from the multiple original maps, thus identifying the transfer map with the fewest transfers. Target transfer points are determined from the starting, ending, and target transfer maps respectively. Based on the starting, ending, and target transfer points, a target path for the robot's movement task within the target building is generated, improving the accuracy of the robot's path planning. Furthermore, this solution establishes a connection between two maps through transfer points with the same identifier, enabling the robot's movement tasks to be broken down into different sub-tasks, allowing the robot to perform complex cross-floor and intra-floor movement tasks.

[0155] In one embodiment, the movement task includes at least one of a same-floor movement task or a cross-floor movement task, the target transit map includes at least one of a same-floor transit map or a cross-floor transit map, the target transit point includes a same-floor transit point or includes at least one of the same-floor transit points, and the target path includes at least one of a same-floor movement path for a same-floor movement task or a cross-floor movement path for a cross-floor movement task.

[0156] In this embodiment, the movement task includes at least one of the same-floor movement task or the cross-floor movement task; the target transfer map includes at least one of the same-floor transfer map or the cross-floor transfer map; the target transfer point includes at least one of the same-floor transfer point or the cross-floor transfer point; and the target path includes at least one of the same-floor movement path for the same-floor movement task or the cross-floor movement path for the cross-floor movement task. This enables the robot to perform optimal path search for both same-floor multi-map movement tasks and cross-floor multi-map movement tasks, and to split the robot's path task based on the transfer point information and the destination location, thereby enabling the execution of cross-floor and same-floor multi-map tasks.

[0157] In one embodiment, the filtering module 506 is further configured to, for same-floor movement tasks, determine the starting floor to which the starting point belongs and the ending floor to which the ending point belongs, and determine the original map corresponding to the starting floor and the original map corresponding to the ending floor; based on the starting map and the original map corresponding to the starting floor, determine the same-floor transfer map corresponding to the starting map from the original map corresponding to the starting floor; based on the ending map and the original map corresponding to the ending floor, determine the same-floor transfer map corresponding to the ending map from the original map corresponding to the ending floor; for cross-floor movement tasks, determine the original map corresponding to each floor traversed from the starting floor to the ending floor; based on the same-floor transfer map corresponding to the starting map and the same-floor transfer map corresponding to the ending map, determine the cross-floor transfer map from the starting floor to the ending floor from the original map corresponding to each floor traversed.

[0158] In one embodiment, the filtering module 506 is further configured to filter candidate transit maps from multiple original maps based on the starting point map, the ending point map, and transit points with the same identifier in adjacent original maps; determine the attribute information corresponding to the transit points in each candidate transit map; and filter the target transit map that meets the preset switching conditions from the candidate transit maps based on the attribute information of the starting point map, the ending point map, and the transit points.

[0159] In this embodiment, candidate transit maps are selected from multiple original maps based on the starting point map, the ending point map, and transit points with the same identifier in adjacent original maps. This initially identifies all transit maps that can connect the starting point map to the ending point map. The attribute information corresponding to the transit points in each candidate transit map is determined. Based on the attribute information of the starting point map, the ending point map, and the transit points, the target transit map that meets the preset switching conditions can be accurately selected from the candidate transit maps. This ensures that the selected target transit map has the fewest transit points required to travel from the starting point to the ending point, thereby generating the shortest path from the starting point to the ending point.

[0160] In one embodiment, the filtering module 506 is further configured to add the starting map to the map queue, select a map from the map queue as the current map; when the current map is not the destination map, determine each associated map of the current map from multiple original maps; the current map and associated maps include transit points with the same identifier; add each associated map of the current map to the map queue, delete the current map from the map queue, and return to the step of selecting a map from the map queue as the current map and continue execution until the map queue is empty, thereby obtaining candidate transit maps traversed from the starting map to the destination map.

[0161] In this embodiment, the starting point map is added to the map queue, and a map is selected from the map queue as the current map. If the current map is not the destination map, each associated map of the current map is determined from multiple original maps. The current map and associated maps include transit points with the same identifier. Each associated map of the current map is added to the map queue, and the current map is deleted from the map queue, so that the map queue always contains maps to be searched. The step of selecting a map from the map queue as the current map is returned and execution continues. Thus, by automatically traversing each map in the map queue to search for the next map that each map in the map queue can reach, until the map queue is empty, all candidate transit maps that can be transited in the planning process from the starting point to the destination can be accurately searched from multiple original maps through a global search.

[0162] In one embodiment, the filtering module 506 is further configured to, when the current map is not the destination map and the current map is not in the visited set, determine each associated map of the current map from multiple original maps, the visited set being used to store the selected maps in the map queue; when the current map is not the destination map and the current map is in the visited set, return to the step of selecting a map from the map queue as the current map and continue execution.

[0163] In this embodiment, if the current map is not the destination map and is not in the visited set, it means the current map has not been visited. Therefore, each associated map of the current map is determined from multiple original maps to search for the next reachable map for the current map. Conversely, if the current map is not the destination map and is in the visited set, it means the current map has already been searched, so there is no need to search it again, reducing the search volume and improving search efficiency. The step of selecting a map from the map queue as the current map is returned and execution continues until the map queue is empty. This allows for a global search to accurately find all candidate transit maps from multiple original maps that can facilitate transit.

[0164] In one embodiment, the filtering module 506 is further configured to, when the current map is not the destination map and the current map does not have any associated maps, return to the step of selecting a map from the map queue as the current map and continue execution.

[0165] In one embodiment, the second determining module 508 is further configured to: use transit points with the same identifier in the starting point map and the target transit map as target transit points; use transit points with the same identifier in each target transit map as target transit points; and use transit points with the same identifier in the target transit map and the destination map as target transit points.

[0166] In this embodiment, if the current map is not the destination map and there is no associated map for the current map, it means that the current map cannot be switched to the next map. In this case, the step of selecting a map from the map queue as the current map is returned and the process continues to search for the next transit map for each map in the map queue based on the transit point with the same identifier, so as to realize the map switching.

[0167] In one embodiment, the filtering module 506 is further configured to, when the current map is the destination map and the map queue is not empty, delete the current map from the map queue, return to the step of selecting a map from the map queue as the current map, and continue execution.

[0168] Each module in the aforementioned robot path planning device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can call and execute the operations corresponding to each module.

[0169] In one embodiment, a computer device is provided, which can be a server or a robot, and its internal structure can be as shown in Figure 6. The computer device includes a processor, memory, input / output interfaces (I / O), and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is connected to the system bus via the I / O interfaces. The processor provides computational and control capabilities. The memory includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores an operating system, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage medium. The database stores path planning-related data. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communicating with external terminals via a network connection. When the computer program is executed by the processor, it implements a robot path planning method.

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

[0171] This application also provides a computer-readable storage medium. One or more non-volatile computer-readable storage media containing computer-executable instructions, which, when executed by one or more processors, cause the processors to perform the steps of the above embodiments.

[0172] This application also provides a computer program product containing instructions that, when run on a computer, cause the computer to perform the methods described in the above embodiments.

[0173] 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, data stored, data displayed, 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 the relevant data shall comply with the relevant laws, regulations and standards of the relevant countries and regions.

[0174] Those skilled in the art will understand that all or part of the processes in the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments described above. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can 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 can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.

[0175] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0176] The embodiments described above are merely illustrative of several implementation methods of this application, and 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 those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this patent application should be determined by the appended claims.

Claims

1. A robot path planning method, executed by a computer device, the method comprising: The robot's movement task in the target building is obtained, and multiple original maps for the target building are obtained. The multiple original maps correspond to multiple different areas of the target building, and adjacent original maps include transfer points with the same identifier. Determine the start and end points of the movement task, and determine the start point map to which the start point belongs and the end point map to which the end point belongs from the multiple original maps; Based on the starting point map and the ending point map, as well as the transit points with the same identifier in the adjacent original maps, the target transit map is selected from the multiple original maps. The target transit point is determined from the starting point map, the ending point map, and the target transit map, respectively. Based on the starting point, the ending point, and the target transfer point, the robot generates a target path for the mobile task within the target building.

2. The method according to claim 1, characterized in that, The movement task includes at least one of the same-floor movement task or the cross-floor movement task; the target transit map includes at least one of the same-floor transit map or the cross-floor transit map; the target transit point includes at least one of the same-floor transit point or the cross-floor transit point; and the target path includes at least one of the same-floor movement path for the same-floor movement task or the cross-floor movement path for the cross-floor movement task.

3. The method according to claim 2, characterized in that, The target building includes at least one building; the same-floor movement task includes at least one of same-floor movement task within the same building and same-floor movement task across buildings; the cross-floor movement task includes at least one of cross-floor movement task within the same building and cross-floor movement task across buildings.

4. The method according to claim 3, characterized in that, The step of selecting a target transit map from the plurality of original maps based on the starting point map, the ending point map, and transit points with the same identifier in the adjacent original maps includes: For a movement task within the same floor of the same building, determine the starting floor and the ending floor of the starting point and the ending floor of the destination within the building, and determine the original map corresponding to the starting floor and the original map corresponding to the ending floor. Based on the starting point map and the original map corresponding to the starting point floor, determine the transfer map on the same floor as the starting point map from the original map corresponding to the starting point floor; Based on the destination map and the original map corresponding to the destination floor, a transfer map on the same floor as the destination map is determined from the original map corresponding to the destination floor.

5. The method according to claim 3, characterized in that, The step of selecting a target transit map from the plurality of original maps based on the starting point map, the ending point map, and transit points with the same identifier in the adjacent original maps includes: For cross-floor movement tasks within the same building, determine the original map corresponding to each floor traversed in the building from the starting floor to the ending floor; Based on the same-floor transfer map corresponding to the starting point map and the same-floor transfer map corresponding to the ending point map, a cross-floor transfer map from the starting point floor to the ending point floor is determined from the original map corresponding to each floor passed through.

6. The method according to claim 3, characterized in that, The cross-building, cross-floor movement task includes at least one of the following: same-floor movement task within each of the multiple buildings, cross-floor movement task within each of the multiple buildings, and movement task between any two buildings in the multiple buildings.

7. The method according to claim 6, characterized in that, The cross-floor movement path of the cross-building cross-floor movement task includes at least one of the following: the same-floor movement path of each of the multiple buildings, the cross-floor movement path of each of the multiple buildings, and the movement path between every two buildings in the multiple buildings.

8. The method according to claim 1, characterized in that, The step of selecting a target transit map from the plurality of original maps based on the starting point map, the ending point map, and transit points with the same identifier in the adjacent original maps includes: Based on the starting point map and the ending point map, as well as the transit points with the same identifier in the adjacent original maps, candidate transit maps are selected from the multiple original maps. Determine the attribute information corresponding to each transit point in the candidate transit map; Based on the attribute information of the starting point map, the ending point map, and the transit point, a target transit map that meets the preset switching conditions is selected from the candidate transit maps.

9. The method according to claim 8, characterized in that, The step of selecting candidate transit maps from the plurality of original maps based on the starting point map, the ending point map, and transit points with the same identifier in the adjacent original maps includes: Add the starting map to the map queue, and select a map from the map queue as the current map; When the current map is not the destination map, each associated map of the current map is determined from the plurality of original maps; the current map and the associated maps include transit points with the same identifier; Add each associated map of the current map to the map queue, remove the current map from the map queue, return to the step of selecting a map from the map queue as the current map and continue execution until the map queue is empty, and obtain the candidate transit maps traversed from the starting map to the ending map.

10. The method according to claim 9, characterized in that, When the current map is not the destination map, determining each associated map of the current map from the plurality of original maps includes: When the current map is not the destination map and the current map is not in the visited set, each associated map of the current map is determined from the plurality of original maps, and the visited set is used to store the maps selected in the map queue; The method further includes: If the current map is not the destination map and the current map is in the visited set, return to the step of selecting a map from the map queue as the current map and continue execution.

11. The method according to claim 9, characterized in that, The method further includes: If the current map is not the destination map and the current map has no associated map, return to the step of selecting a map from the map queue as the current map and continue execution.

12. The method according to claim 9, characterized in that, The method further includes: When the current map is the destination map and the map queue is not empty, the current map is deleted from the map queue, and the process returns to the step of selecting a map from the map queue as the current map and continues execution.

13. The method according to claim 9, characterized in that, The method further includes: When the current map is the destination map and the map queue is empty, the loop stops, and the candidate transit maps traversed from the starting map to the destination map are obtained.

14. A robot path planning device, characterized in that, The device includes: The acquisition module is used to acquire the robot's movement tasks in the target building and acquire multiple original maps for the target building. The multiple original maps correspond to multiple different areas of the target building, and adjacent original maps include transfer points with the same identifier. The first determining module is used to determine the starting point and the ending point of the mobile task, and to determine the starting point map to which the starting point belongs and the ending point map to which the ending point belongs from the plurality of original maps; A filtering module is used to filter out a target transit map from the multiple original maps based on the starting point map, the ending point map, and transit points with the same identifier in the adjacent original maps. The second determining module is used to determine the target transit point from the starting point map, the ending point map, and the target transit map, respectively. The generation module is used to generate a target path for the robot in the target building for the mobile task based on the starting point, the ending point and the target transfer point.

15. The apparatus according to claim 14, characterized in that, The movement task includes at least one of the same-floor movement task or the cross-floor movement task; the target transit map includes at least one of the same-floor transit map or the cross-floor transit map; the target transit point includes at least one of the same-floor transit point or the cross-floor transit point; and the target path includes at least one of the same-floor movement path for the same-floor movement task or the cross-floor movement path for the cross-floor movement task.

16. The apparatus according to claim 14, characterized in that, The filtering module is further configured to filter candidate transit maps from the plurality of original maps based on the starting point map, the ending point map, and transit points with the same identifier in the adjacent original maps; and determine the attribute information corresponding to the transit points in each candidate transit map. Based on the attribute information of the starting point map, the ending point map, and the transit point, a target transit map that meets the preset switching conditions is selected from the candidate transit maps.

17. The apparatus according to claim 16, characterized in that, The filtering module is further configured to add the starting point map to the map queue, select a map from the map queue as the current map; when the current map is not the destination map, determine each associated map of the current map from the plurality of original maps; the current map and the associated maps include transit points with the same identifier; add each associated map of the current map to the map queue, delete the current map from the map queue, and return to the step of selecting a map from the map queue as the current map and continue execution until the map queue is empty, thereby obtaining candidate transit maps traversed from the starting point map to the destination map.

18. The apparatus according to claim 17, characterized in that, The filtering module is further configured to, when the current map is not the destination map and the current map is not in the visited set, determine each associated map of the current map from the plurality of original maps, wherein the visited set is used to store the maps selected in the map queue; when the current map is not the destination map and the current map is in the visited set, return to the step of selecting a map from the map queue as the current map and continue execution.

19. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the computer program is executed by the processor, it causes the processor to perform the steps of the method as described in any one of claims 1 to 13.

20. A computer program product, characterized in that, The method includes a computer program, characterized in that, when executed by a processor, the computer program implements the method described in any one of claims 1 to 13.