Multi-building path planning method and system

The double-layer search algorithm optimizes the multi-building path planning, uses outer layer planning to load two-dimensional boundary and entrance and exit data, and the inner layer planning to load detailed road network data, solving the problems of large amount of data and long time in the existing technology, and achieving efficient multi-building path planning.

CN120351948APending Publication Date: 2025-07-22GUANGZHOU HKUST FOK YING TUNG RES INST
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510522716.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-24
Publication Date
2025-07-22

AI Technical Summary

Technical Problem

When planning paths between multiple buildings, the existing technology has problems such as large amount of data, long expansion time and high resource utilization, making it difficult to efficiently plan the paths.

Method used

The two-layer search algorithm is used to load the two-dimensional boundary and entrance and exit data of the building through outer planning, and the inner planning is to load the detailed road network data. Combined with the R-tree index algorithm and the A* algorithm, the required data is dynamically loaded and the path planning process is optimized.

Benefits of technology

It greatly reduces the amount of data and running time, improves the efficiency of path planning between multiple buildings, and is suitable for path planning in complex scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120351948A_ABST
    Figure CN120351948A_ABST
Patent Text Reader

Abstract

The invention discloses a multi-building path planning method and system applied to the technical field of path planning, and the method comprises the steps: constructing a target region based on a starting point and an ending point; obtaining entrance and exit data of a starting point and a terminal point in the target area and road network data in the building, and obtaining two-dimensional boundary data and entrance and exit data of other buildings; performing outer-layer planning on the entrance and exit data of the starting point and the terminal point and the road network data in other buildings by using an outer-layer search algorithm to obtain an outer-layer planning result; obtaining road network data of a corresponding building in the outer layer planning result; performing inner-layer search algorithm processing on the road network data of each corresponding building in the outer-layer planning result to obtain an inner-layer planning result matched with each piece of road network data; and obtaining a path planning result based on the outer-layer planning result and the inner-layer planning result. According to the multi-building path planning method provided by the embodiment of the invention, the efficiency of path planning among multiple buildings is improved, and the data volume and the operation time are greatly reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of path planning, and in particular to a multi-building path planning method and system. Background Art

[0002] Current path planning methods are mostly suitable for the navigation of a single building and not suitable for path planning between buildings.

[0003] In the prior art, during the path planning process between multiple buildings, a large amount of road network and building data need to be loaded simultaneously. There are a large number of redundant vertices in the large amount of road network and building data, which prolongs the expansion time of the path planning method and occupies a large amount of memory / resources.

[0004] Therefore, it has become an urgent technical problem for those skilled in the art to solve how to improve the efficiency of path planning between multiple buildings. Summary of the Invention

[0005] The present invention provides a multi-building path planning method and system to improve the efficiency of path planning between multiple buildings and significantly reduce the amount of data and running time.

[0006] To solve the above technical problems, an embodiment of the present invention provides a multi-building path planning method, which includes:

[0007] Construct a target area based on the starting point and the ending point;

[0008] Obtain the entrance / exit data and the in-building road network data of the building where the starting point is located, obtain the entrance / exit data and the in-building road network data of the building where the ending point is located, obtain the two-dimensional boundary data of other buildings within the target area and the entrance / exit data of other buildings;

[0009] Use an outer search algorithm to perform outer layer planning on the entrance / exit data of the building where the starting point is located, the entrance / exit data of the building where the ending point is located, the two-dimensional boundary data of other buildings, and the entrance / exit data of other buildings to obtain an outer layer planning result;

[0010] Obtain the road network data of the corresponding buildings within the outer layer planning result;

[0011] Perform inner layer search algorithm processing on the road network data of each corresponding building within the outer layer planning result to obtain an inner layer planning result matching each piece of the road network data;

[0012] Based on the outer layer planning result and the inner layer planning result, obtain a path planning result.

[0013] As a preferred solution, the constructing a target area based on the starting point and the ending point includes:

[0014] Taking the south - west vertex of the building where the starting point is located as the origin, obtain the coordinates of the starting point and the ending point;

[0015] Construct the target area based on the abscissa and ordinate of the starting point and the abscissa and ordinate of the ending point.

[0016] As one of the preferred solutions, the outer - layer search algorithm is used to perform outer - layer planning on the entrance - and - exit data of the building where the starting point is located, the entrance - and - exit data of the building where the ending point is located, the two - dimensional boundary data of other buildings, and the entrance - and - exit data of other buildings, and the outer - layer planning result is obtained, including:

[0017] Use the spatial index algorithm based on the R - tree to expand the entrance - and - exit data of the building where the starting point is located, and process the entrance - and - exit data corresponding to other buildings in the target area according to the priority queue until the entrance - and - exit data of the building where the ending point is located is found, then the outer - layer planning result is obtained.

[0018] As one of the preferred solutions, the inner - layer search algorithm is used to process the road - network data of each corresponding building in the outer - layer planning result, and the inner - layer planning result that matches the road - network data of each corresponding building is obtained, including:

[0019] Based on the outer - layer planning result, perform inner - layer search algorithm processing on the road - network data of the corresponding buildings in the outer - layer planning result. If the inner - layer search is connected, the inner - layer planning result is obtained; if the inner - layer search is not connected, close the connection relationship of the entrances and exits of the building where the unconnected node is located and re - plan using the outer - layer search algorithm.

[0020] As one of the preferred solutions, based on the outer - layer planning result and the inner - layer planning result, the path - planning result is obtained, including:

[0021] Based on the outer - layer planning result and the inner - layer planning result, obtain the path - planning result.

[0022] Another embodiment of the present invention provides a multi - building path - planning system, including:

[0023] A construction module, configured to construct a target area based on a starting point and an ending point;

[0024] A first acquisition module, configured to acquire the entrance - and - exit data and the in - building road - network data of the building where the starting point is located, acquire the entrance - and - exit data and the in - building road - network data of the building where the ending point is located, acquire the two - dimensional boundary data and the entrance - and - exit data of other buildings in the target area;

[0025] The outer layer processing module is used to perform outer layer planning on the entrance and exit data of the building where the starting point is located, the entrance and exit data of the building where the ending point is located, the two-dimensional boundary data of other buildings, and the entrance and exit data of other buildings by using an outer layer search algorithm, and obtain an outer layer planning result;

[0026] The second acquisition module is used to acquire the road network data of the corresponding building in the outer layer planning result;

[0027] The inner layer processing module is used to perform inner layer search algorithm processing on the road network data of each corresponding building in the outer layer planning result, and obtain an inner layer planning result that matches each road network data;

[0028] The fusion module is used to obtain a path planning result based on the outer layer planning result and the inner layer planning result.

[0029] As one of the preferred solutions, the construction of the target area based on the starting point and the ending point includes:

[0030] Taking the southwestern vertex of the building where the starting point is located as the origin, and obtaining the coordinates of the starting point and the ending point;

[0031] Based on the abscissa and ordinate of the starting point and the abscissa and ordinate of the ending point, construct the target area.

[0032] As one of the preferred solutions, the use of the outer layer search algorithm to perform outer layer planning on the entrance and exit data of the building where the starting point is located, the entrance and exit data of the building where the ending point is located, the two-dimensional boundary data of other buildings, and the entrance and exit data of other buildings, and obtain an outer layer planning result, includes:

[0033] Use the spatial index algorithm based on the R-tree to expand the entrance and exit data of the building where the starting point is located, and process the entrance and exit data corresponding to other buildings in the target area according to the priority queue until the entrance and exit data of the building where the ending point is located is found, then obtain the outer layer planning result.

[0034] As one of the preferred solutions, the inner layer search algorithm processing of the road network data of each corresponding building in the outer layer planning result to obtain an inner layer planning result that matches each corresponding building's road network data, includes:

[0035] Based on the outer layer planning result, perform inner layer search algorithm processing on the road network data of the corresponding building in the outer layer planning result. If the inner layer search is connected, then obtain the inner layer planning result. If the inner layer search is not connected, then close the connection relationship of the entrances and exits of the building where the unconnected node is located and re-plan using the outer layer search algorithm.

[0036] As one of the preferred solutions, obtaining the path planning result based on the outer layer planning result and the inner layer planning result includes:

[0037] Based on the outer layer planning result and the inner layer planning result, obtain the path planning result.

[0038] Compared with the prior art, the beneficial effects of the embodiments of the present invention are at least one of the following:

[0039] In the present invention, by using the building entrance and exit as the key connection point of the internal and external paths, adopting the graph data structure of associating the entrance and exit between buildings and outdoors, and using the path planning method of the double-layer search algorithm of the outer layer planning (between buildings) and the inner layer planning (inside the building) interacting with each other. At the same time, in the outer layer planning stage, only the two-dimensional boundary and entrance and exit data of the building are loaded, and in the inner layer stage, the detailed road network data is loaded on demand, and the required data is dynamically loaded, greatly reducing the data volume and running time, and improving the efficiency of path planning between multiple buildings in a complex multi-building scenario. BRIEF DESCRIPTION OF THE DRAWINGS

[0040] Figure 1 is a schematic flowchart of a multi-building path planning method in one embodiment of the present invention;

[0041] Figure 2 is a schematic logical diagram of a double-layer search algorithm in one embodiment of the present invention;

[0042] Figure 3 is a schematic structural diagram of a multi-building path planning system in one embodiment of the present invention;

[0043] REFERENCE MARKS:

[0044] Among them, 11, construction module; 12, first acquisition module; 13, outer layer processing module; 14, second acquisition module; 15, inner layer processing module; 16, fusion module. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0045] Next, the technical solutions in the embodiments of the present invention will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. The purpose of providing these embodiments is to make the disclosure of the present invention more thorough and comprehensive. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present invention.

[0046] In the description of this application, the terms "first", "second", "third", etc. are used only for descriptive purposes and should not be construed as indicating or implying relative importance or implicitly specifying the quantity of the indicated technical features. Thus, features defined with "first", "second", "third", etc. may explicitly or implicitly include one or more of such features. In the description of this application, unless otherwise stated, the meaning of "a plurality" is two or more.

[0047] In the description of this application, it should be noted that, unless otherwise clearly defined and limited, the terms "installed", "connected", "connected to" should be understood in a broad sense. For example, it may be a fixed connection, a detachable connection, or an integral connection; it may be a mechanical connection or an electrical connection; it may be directly connected, or indirectly connected through an intermediate medium, and it may be the communication inside two components. The terms "vertical", "horizontal", "left", "right", "up", "down" and similar expressions used herein are only for the purpose of illustration and do not indicate or imply that the indicated device or element must have a specific orientation, be constructed and operated in a specific orientation, and thus should not be construed as a limitation of the present invention. The term "and / or" used herein includes any and all combinations of one or more of the related listed items. For those of ordinary skill in the art, the specific meanings of the above terms in this application can be understood according to specific circumstances.

[0048] In the description of this application, it should be noted that, unless otherwise defined, all technical and scientific terms used in this invention have the same meaning as commonly understood by those skilled in the technical field to which this technology belongs. The terms used in the specification of this invention are only for the purpose of describing specific embodiments and are not intended to limit this invention. For those of ordinary skill in the art, the specific meanings of the above terms in this application can be understood according to specific circumstances.

[0049] An embodiment of the present invention provides a multi-building path planning method. Specifically, please refer to Figure 1 , Figure 1 which shows a schematic flow chart of the multi-building path planning method in one of the embodiments of the present invention. The method includes:

[0050] S1: Construct a target area based on the starting point and the ending point;

[0051] S2: Obtain the entrance and exit data of the building where the starting point is located and the road network data inside the building, obtain the entrance and exit data of the building where the ending point is located and the road network data inside the building, obtain the two-dimensional boundary data of other buildings in the target area and the entrance and exit data of other buildings;

[0052] S3: Use the outer search algorithm to perform outer layer planning on the entrance and exit data of the building where the starting point is located, the entrance and exit data of the building where the ending point is located, the two-dimensional boundary data of the other buildings, and the entrance and exit data of the other buildings, to obtain the outer layer planning result;

[0053] S4: Obtain the road network data of the corresponding buildings within the outer layer planning result;

[0054] S5: Perform inner layer search algorithm processing on the road network data of each corresponding building within the outer layer planning result to obtain the inner layer planning result that matches each piece of the road network data;

[0055] S6: Based on the outer layer planning result and the inner layer planning result, obtain the path planning result.

[0056] Take the southwest vertex of the building where the starting point is located as the origin, and obtain the coordinates of the starting point and the ending point; based on the abscissa and ordinate of the starting point and the abscissa and ordinate of the ending point, construct the target area.

[0057] In this process, through precise surveying means, such as using high-precision GPS positioning devices, Beidou satellites or Galileo satellite devices combined with map data outdoors, and Bluetooth positioning technology or ultra-wideband positioning (UWB) technology indoors, obtain the geographical location information of the starting point and the ending point in the real world. Then, according to the pre-set coordinate transformation rules, convert this geographical location information into coordinate values based on the origin. For example, assuming a plane rectangular coordinate system is used, the positive direction of the x-axis is set as due east, the positive direction of the y-axis is set as due north, and by measuring the distances of the starting point from the origin in the x and y directions, the abscissa and ordinate of the starting point can be obtained. The z-axis is perpendicular to the mean sea level, and the coordinates of the ending point are obtained in the same way.

[0058] Based on the obtained coordinates of the starting point and the ending point, construct the target area. The construction method of the target area can be achieved by determining the coordinate range. For example, a rectangular area is determined by the minimum abscissa, minimum ordinate, maximum abscissa, and maximum ordinate in the starting point and ending point coordinates, and this rectangular area is the preliminary target area. However, in actual situations, there may be complex terrains or building layouts, and this rectangular area may need to be appropriately adjusted, such as excluding some impassable areas, such as lakes, large obstacles, etc., to ensure the effectiveness of the target area.

[0059] In step S2, obtain the entrance and exit data of the building where the starting point is located and the road network data within the building, obtain the entrance and exit data of the building where the ending point is located and the road network data within the building, and obtain the two-dimensional boundary data of the other buildings within the target area and the entrance and exit data of the other buildings.

[0060] The outer layer search algorithm is used to perform outer layer planning on the entrance and exit data of the building where the starting point is located, the entrance and exit data of the building where the end point is located, the two-dimensional boundary data of the other buildings, and the entrance and exit data of the other buildings to obtain an outer layer planning result.

[0061] Specifically, the starting point is expanded using the spatial index algorithm based on the R tree, and the entrances and exits of the relevant buildings and the corresponding entrances and exits of other buildings in the target area are processed according to the priority queue until the end point is found, and the outer planning result is obtained. If connected, the entrance and exit connection path is obtained, and if not connected, the path planning is terminated.

[0062] The purpose of the outer search algorithm is to determine at a macro level whether there is a feasible connection path between the starting building and the end building through other buildings, where the waypoints (nodes) are the entrances and exits of the buildings. The three-dimensional boundary framework can assist in retrieving buildings that are accessible to the extended nodes, greatly shortening the search time. Common outer search algorithms can be A* algorithm or Dijkstra algorithm.

[0063] Taking the A* algorithm as an example, when performing connectivity processing, the starting point is used as the starting node, the end point is used as the target node, and the entrance and exit of the building are used as the intermediate path point (node). During the search process, the algorithm selects the optimal node for expansion based on the estimated distance from each node to the target node (calculated by a heuristic function, such as Manhattan distance) and the distance already traveled. In the process of expanding nodes, it is necessary to consider the two-dimensional boundary data of the buildings in the target area and load the entrance and exit matching connectivity relationship of the buildings as needed.

[0064] When the A* algorithm is extended to a new node (such as a starting point, a building entrance or an outdoor vertex), it needs to execute:

[0065] 1. Dynamically load surrounding building data based on the coordinates of the node. With the current node coordinates as the center, define the search area based on the preset radius or the maximum coverage of the building. If the coverage (BoundingBox) of a building contains the current node coordinates, load the entrance and exit of the building to match the current node. When the entrance and exit are connected to the current node (horizontal distance ≤ 3 meters and the same floor), convert the building entrance and exit into path vertices and add them to the priority queue of A*. During the path search process, fast range queries are achieved through spatial indexes (such as R-tree), and relevant building and entrance and exit data are loaded only when needed to avoid loading all map building information at once, thereby greatly improving efficiency.

[0066] 2. Expand to other entrances and exits of the current building and maintain the priority queue (it may pass through the current node, and the estimated distance of some nodes in the priority queue is smaller than the distance already traveled, thus changing the priority queue structure).

[0067] Specifically, initialize the priority queue openList, which is initially an empty array. The sorting method is a heuristic estimate called the heuristic distance: the distance to the end point + the existing distance (the existing distance of the previous node + the distance from the new node to the previous node). Add the starting vertex to the priority queue. Loop to expand the optimal vertex of the priority queue and add the entrance and exit nodes to the priority queue until the expanded node is the end point.

[0068] The outer path planning cannot guarantee that all entrances and exits within any building are passable. There is an interaction between the subsequent inner path planning and the outer path planning, which may affect the result of the outer path planning again. Here, there needs to be an additional non-passable path for the inner path planning. The non-passable path is initially empty, and it is assumed that all entrances and exits within all buildings are mutually reachable.

[0069] The specific steps are as follows:

[0070] Step 1: Establish the R-tree index of the two-dimensional boundary data of the building and the entrance and exit positions to facilitate the rapid query of spatial relationships.

[0071] Step 2: According to the heuristic estimate to the end point (the distance to the end point + the existing distance), initialize the priority queue openList and add the starting vertex.

[0072] Step 3: Each time, take out the vertex with the highest priority from the priority queue and perform the following operations:

[0073] 1. Expand the vertex to the other entrance and exit nodes of the current building. Check the non-passable path. If there is a non-passable path, do not expand.

[0074] If there is no non-passable path, then execute:

[0075] a. If the heuristic distance of some nodes passing through the current vertex is smaller (when the distance to the end point remains unchanged and the existing distance is smaller, the heuristic distance is smaller), update the priority queue.

[0076] b. If the entrance and exit node is not in the priority queue and has not been expanded, add it to the priority queue.

[0077] 2. Search for nearby buildings of the current vertex through the rtree, search for the entrances and exits of nearby buildings. When the entrance and exit match the current vertex (horizontal distance ≤ 3 meters and the same floor), add the entrance and exit nodes of the new building to the priority queue.

[0078] 3. If the building of the current vertex is the end building, expand or update the end node.

[0079] Step 4: Loop to execute Step 3 until the end point is expanded. Then, backtrack the path to generate the outer planning result.

[0080] Preferably, the existing distance of the starting point is 0 meters.

[0081] If a path from the starting building entrance to the ending building entrance is found during the search process, i.e., the connection is successful, then this path is the entrance-exit connection path. If, after a certain search range and time, all relevant entrances and exits have been searched and no connection path is found, the path planning is terminated and a prompt is given to inform the user that it may not be possible to plan a path from the starting point to the ending point due to reasons such as the building layout within the target area.

[0082] Based on the outer layer planning result, the inner layer search algorithm is used to process the road network data within the building. If the inner layer search is connected, an inner layer path is obtained. If the inner layer search is not connected, the corresponding entrance-exit data is closed and the outer layer search algorithm is used to re-plan.

[0083] Based on the obtained entrance-exit connection path, the inner layer path planning is performed between every two entrances and exits in turn according to the road network data within the building. The inner layer search algorithm can also adopt ideas similar to the A* algorithm or Dijkstra algorithm, but the search range is limited to the road network within the building. Like general path planning, the inner layer path planning has a complete road network connection relationship and does not need to handle special rules.

[0084] If the inner layer search is connected successfully, that is, a complete path between two adjacent vertices in the outer layer path planning is found, this path is the inner layer path. If the inner layer search is not connected, for example, within the starting building, it is impossible to reach a node on the entrance-exit connection path due to reasons such as a certain passage being temporarily closed, then the outer layer search algorithm needs to be used to re-plan, and the connection relationship between these two vertices is closed in order to expect to find a new path that can make all the inner layer path planning between the vertices in the outer layer path planning connected.

[0085] In step S6, based on the outer layer planning result and the inner layer planning result, the path planning result is obtained.

[0086] Specifically, the outer layer search algorithm may need to be called again because the inner layer path between two vertices cannot be planned. Specifically, capital English letters represent buildings, lowercase letters represent entrances and exits, and the same lowercase letters represent the same entrance and exit. Taking A0 as the starting point and Z0 as the ending point, A0 - Aa - Ba - Bb - Cb - Cc.... - Z0 as the ending point. In this path, the inner layer path planning between A0 - Aa, Ba - Bb, and Cb - Cc respectively represents the inner layer path planning of 3 adjacent vertices. When it is impossible to reach due to the internal structure of the building in a certain inner layer path planning, the passable relationship between these two vertices is closed (as mentioned above, all are default passable in the initial state), and the outer layer path planning is called again to ensure the passability of the adjacent vertices in the outer layer path planning of the final result. That is, every time it is found that the inner layer path planning is impassable, the outer layer impassable path is adjusted and the outer layer path planning is called again.

[0087] Based on the outer layer planning result and the inner layer planning result, the path planning result is obtained.

[0088] Integrate the access path and the inner layer path to obtain the final path planning result. The final path planning result is to add the corresponding inner layer path planning results between two vertices respectively on the framework of the outer layer path planning result. When generating the result, the path can be displayed on the map or in a 3D model through visualization technology, which is convenient for users to view intuitively. At the same time, detailed path navigation information is provided for users, such as turning prompts at each intersection and key locations passed by. In addition, the path can be optimized and sorted according to factors such as the length of the path and the estimated travel time, and multiple path selection schemes are provided for users to meet the needs of different users, such as the shortest path, the fastest path, etc.

[0089] To implement the above method, an embodiment of the present invention provides a two-layer search algorithm. Specifically, please refer to Figure 2 , Figure 2 which shows a logical schematic diagram of the two-layer search algorithm in one embodiment of the present invention, including:

[0090] The spatial data structure in the data acquisition stage includes:

[0091] Road network model: {coordinates (x, y, z), connectivity, attribute label};

[0092] Two-dimensional boundary frame data: BoundingBox = [minX, maxX, minY, maxY] ± 2m extended boundary;

[0093] Access tuple: access = {in: (x, y, z), out: (x, y, z), buildingID}.

[0094] That is, the building road network, two-dimensional boundary data and access information need to be prepared. The building road network includes all channel information inside each building, including position coordinates (x, y, z), channel connection relationship and attributes (such as stairs, elevators). The access information includes labeling each access as an "entry point" and an "exit point", and associating the building number to which it belongs.

[0095] It should be noted that the access gives priority to matching the access of other buildings. If there is no connecting building rule, it is default to connect to the outside. Generally speaking, the coordinates of indoor and outdoor accesses should be the same, but there are special cases where the access data, such as slopes / escalators / stairs at the access, do not belong to the road network data of any building, resulting in different connecting coordinates for indoor and outdoor accesses. In addition, it is difficult to overlap the corresponding coordinates, that is, the road network, when the buildings are drawn independently. We define that when the coordinate of the exit and the coordinate of the entry of the building access are within 3 meters and the z coordinates are the same, these two accesses match each other, that is, they are directly connected.

[0096] Specifically, the matching rules for entrances and exits are as follows: prioritize matching the entrances and exits of other buildings; if an entrance or exit is not connected to other buildings, it is defaulted to lead to the outdoors; even if the coordinates of two entrances and exits do not completely overlap, as long as the horizontal distance is within 3 meters and the floors are the same (z coordinates are the same), the system still considers them connected.

[0097] Construct the outer layer path planning, where the starting point, ending point, and building entrances and exits are path vertices. Assume that the entrances and exits within the building are interconnected, that is, there are paths between any two building entrances and exits. Let the initialized vertex pair connection and disconnection sequence be empty. Here, record the vertex pairs where the inner layer path planning fails, indicating that vertex a is not connected to vertex b, to prepare for the outer layer path planning data. When the inner layer path planning fails subsequently, record the unconnected vertex pairs in the inner layer. When the outer layer path planning is called again, do not plan the data for the corresponding vertex pairs.

[0098] That is, in the outer layer path planning, that is, when navigating between buildings, for the starting point, the processing is to connect the starting point with all the entrances and exits of the building where it is located as candidates for the starting point of the external path; for the ending point, the processing is to connect the ending point with all the entrances and exits of the building where it is located as candidates for the ending point of the external path. If a certain section of the path is not passable inside the building (such as the access control is closed), the system will mark this section as "unavailable" to avoid repeated attempts.

[0099] Load the starting point and ending point, and the starting point and ending point are respectively connected to all the access points of the corresponding buildings.

[0100] Initialize the outer layer trace data group, which means that any vertex is extended from other vertices. After extending to the ending point, the reverse trace data is the result of the path planning.

[0101] Initialize the priority queue openList as an empty array and add the starting point. The sorting method is in the order of the distance to the ending point (endX, endY, endZ) plus the existing distance, where the existing distance of the starting point is 0m.

[0102] The calculation method for the distance of any vertex coordinate is the horizontal distance plus the cross - layer distance. It should be noted that in indoor path planning, it is generally desired to reduce cross - layer planning, and the minimum cost for cross - layer is any value greater than 1. Generally, it can be set to 8, that is, 1 meter of cross - layer corresponds to 8 meters of horizontal distance. Generally, for a floor height of 3 meters, switching one floor corresponds to a distance of 3 * 8 = 24 meters.

[0103] Loop through the following steps until the ending point is extended:

[0104] 1. Pop the vertex to be preferentially extended from the priority queue openList (the one with the minimum distance to the ending point + the existing distance)

[0105] 2. Expand vertices: Add (update if already exists) the other vertices connected to the vertex to the priority queue openList, and record the trace data. Its existing distance is: the existing distance of the previous vertex + the distance to the previous vertex.

[0106] Do not expand if the vertex pair is turned off.

[0107] If it is the starting point, expand all the entrances and exits corresponding to the starting point.

[0108] If it is the entrance / exit of the end building, expand the end point additionally.

[0109] If it is an outdoor vertex, expand all the entrances and exits connecting the end point to the outside.

[0110] If it is other vertices, then:

[0111] (1) Expand other vertices in this building.

[0112] (2) Search for potential entrances and exits connecting buildings through rtree, match all building entrances and exits. If the corresponding entrance and exit is matched, expand the corresponding entrance and exit. Otherwise, if the vertex is connected to the outside, expand the corresponding outdoor vertex.

[0113] In these two steps, there may be cases where vertices already in the priority queue openList or already popped are expanded. Update the priority queue openList as needed to store the smaller distances corresponding to the vertices.

[0114] (3) Restore the outer A* path vertex sequence through the trace data.

[0115] 3. Initialize the result vertex sequence to be empty.

[0116] 4. Sequentially traverse the adjacent outer search algorithm path vertices.

[0117] Specifically, the process of this loop search is as follows: Starting from the starting point, add the starting point to the "to-be-processed list", select the node closest to the end point and with the shortest cumulative distance from the "to-be-processed list", for example, preferentially select the exit with a shorter straight-line distance. If the current node is the starting point, expand all the exits in its building; if the current node is a building exit, expand the other building entrances or outdoor areas it matches; if the current node is outdoors, expand all the entrances to the end building; if it is other nodes, it is necessary to explore other nodes within the current building, find the entrances and exits of nearby other buildings through a spatial index (similar to "quick map search"), if the match is successful, directly expand this entrance and exit, if the match fails, it is default to lead to the outside. If a certain vertex has been explored, but the new path is shorter, update the record.

[0118] When the path planning within all corresponding buildings is successful, combined with the outer layer planning result, the complete path planning is successful, and the vertex sequence is returned. During the exploration process, the system will record the "source" of each vertex, and finally trace back from the end point to the starting point in reverse to generate the complete path.

[0119] In the above steps, through the collaborative planning of the inner and outer layers, the optimal path navigation problem from the starting point to the end point in complex scenarios (such as multi-building and indoor-outdoor combination) is solved. First, the external path between buildings is planned, then the path within each building is refined, and finally merged into a complete route.

[0120] In the above part, we do not need to download the complete building, only need to load the two-dimensional boundary data of the building. When the vertex extends into the two-dimensional boundary data of the building, the entrances and exits need to be loaded. When loading the path planning within the building, the internal road network data of the building needs to be loaded. When there are many buildings and the internal road network data of the buildings is large, there are great advantages in space and efficiency without loading the complete data.

[0121] An embodiment of the present invention provides a multi-building path planning system. Specifically, please refer to Figure 3 , Figure 3 which shows the structural schematic diagram of the multi-building path planning system in one of the embodiments of the present invention. The system includes:

[0122] A construction module 11 for constructing a target area based on the starting point and the end point;

[0123] A first acquisition module 12 for acquiring the entrance and exit data and the internal road network data of the building where the starting point is located, acquiring the entrance and exit data and the internal road network data of the building where the end point is located, and acquiring the two-dimensional boundary data and the entrance and exit data of other buildings within the target area;

[0124] An outer layer processing module 13 for performing outer layer planning on the entrance and exit data of the building where the starting point is located, the entrance and exit data of the building where the end point is located, the two-dimensional boundary data of other buildings, and the entrance and exit data of other buildings by using an outer layer search algorithm to obtain an outer layer planning result;

[0125] A second acquisition module 14 for acquiring the road network data of the corresponding buildings within the outer layer planning result;

[0126] An inner layer processing module 15 for performing inner layer search algorithm processing on the road network data of each corresponding building within the outer layer planning result to obtain an inner layer planning result matching each road network data;

[0127] A fusion module 16 for obtaining a path planning result based on the outer layer planning result and the inner layer planning result.

[0128] Compared with the prior art, the beneficial effects of the embodiments of the present invention are at least one of the following:

[0129] By taking the building entrance and exit as the key connection point of the internal and external paths, adopting a graph data structure that associates the entrance and exit with the buildings and the outdoor area, and using a path planning method that interacts with a double-layer search algorithm of outer layer planning (between buildings) and inner layer planning (inside buildings), and only loading the two-dimensional boundaries and entrance and exit data of the buildings in the outer layer planning stage, and loading the detailed road network data as needed in the inner layer stage, dynamically loading the required data, the data volume and running time are greatly reduced, and the efficiency of path planning between multiple buildings in a complex multi-building scenario is improved.

[0130] The above embodiments only represent several implementation manners of the present invention, and the description thereof is relatively specific and detailed, but it should not be construed as a limitation on the scope of the patent of the present invention. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present invention, several deformations and improvements can still be made, and these all belong to the protection scope of the present invention. Therefore, the protection scope of the patent of the present invention shall be subject to the appended claims.

Claims

1. A multi-building path planning method, characterized in that Including: Construct a target area based on the starting point and the ending point; Obtain the entrance and exit data of the building where the starting point is located and the road network data within the building, obtain the entrance and exit data of the building where the ending point is located and the road network data within the building, and obtain the two-dimensional boundary data of other buildings within the target area and the entrance and exit data of other buildings; Use the outer search algorithm to perform outer layer planning on the entrance and exit data of the building where the starting point is located, the entrance and exit data of the building where the ending point is located, the two-dimensional boundary data of other buildings, and the entrance and exit data of other buildings, and obtain the outer layer planning result; Obtain the road network data of the corresponding building within the outer layer planning result; Perform inner layer search algorithm processing on the road network data of each corresponding building within the outer layer planning result to obtain an inner layer planning result that matches each piece of the road network data; Based on the outer layer planning result and the inner layer planning result, obtain the path planning result.

2. The multi-building path planning method according to claim 1, wherein, The constructing a target area based on the starting point and the ending point includes: Taking the southwest vertex of the building where the starting point is located as the origin, and obtaining the coordinates of the starting point and the ending point; Construct the target area based on the abscissa and ordinate of the starting point and the abscissa and ordinate of the ending point.

3. The multi-building path planning method according to claim 1, wherein The using the outer search algorithm to perform outer layer planning on the entrance and exit data of the building where the starting point is located, the entrance and exit data of the building where the ending point is located, the two-dimensional boundary data of other buildings, and the entrance and exit data of other buildings, and obtaining the outer layer planning result includes: Use the spatial index algorithm based on the R-tree to expand the entrance and exit data of the building where the starting point is located, and process the entrance and exit data corresponding to other buildings within the target area according to the priority queue until the entrance and exit data of the building where the ending point is located is found, then obtain the outer layer planning result.

4. The multi-building path planning method according to claim 3, wherein The performing inner layer search algorithm processing on the road network data of each corresponding building within the outer layer planning result to obtain an inner layer planning result that matches each piece of the corresponding building's road network data includes: Based on the outer layer planning result, perform inner layer search algorithm processing on the road network data of the corresponding building within the outer layer planning result. If the inner layer search is connected, then obtain the inner layer planning result. If the inner layer search is not connected, then close the connection relationship of the entrances and exits of the building where the unconnected node is located and use the outer search algorithm to re-plan.

5. The multi-building path planning method according to claim 4, wherein The obtaining the path planning result based on the outer layer planning result and the inner layer planning result includes: Based on the outer layer planning result and the inner layer planning result, obtain the path planning result.

6. A multi-building path planning system, characterized in that, Including: A construction module for constructing a target area based on the starting point and the ending point; A first acquisition module for obtaining the entrance and exit data of the building where the starting point is located and the road network data within the building, obtaining the entrance and exit data of the building where the ending point is located and the road network data within the building, and obtaining the two-dimensional boundary data of other buildings within the target area and the entrance and exit data of other buildings; An outer layer processing module for using the outer search algorithm to perform outer layer planning on the entrance and exit data of the building where the starting point is located, the entrance and exit data of the building where the ending point is located, the two-dimensional boundary data of other buildings, and the entrance and exit data of other buildings, and obtaining the outer layer planning result; A second acquisition module, configured to acquire road network data of corresponding buildings in the outer layer planning result; An inner layer processing module, configured to perform inner layer search algorithm processing on the road network data of each corresponding building in the outer layer planning result to obtain an inner layer planning result that matches each piece of the road network data; A fusion module, configured to obtain a path planning result based on the outer layer planning result and the inner layer planning result.

7. The multi-building path planning system according to claim 6, wherein The constructing the target area based on the starting point and the ending point includes: Taking the southwestern vertex of the building where the starting point is located as the origin, and acquiring the coordinates of the starting point and the ending point; Constructing the target area based on the abscissa and ordinate of the starting point and the abscissa and ordinate of the ending point.

8. The multi-building path planning system according to claim 6, wherein The performing outer layer planning on the entrance and exit data of the building where the starting point is located, the entrance and exit data of the building where the ending point is located, the two-dimensional boundary data of the other buildings, and the entrance and exit data of the other buildings by using the outer layer search algorithm to obtain the outer layer planning result includes: Using the space index algorithm based on the R-tree to expand the entrance and exit data of the building where the starting point is located, and processing the entrance and exit data corresponding to the other buildings in the target area according to the priority queue until the entrance and exit data of the building where the ending point is located is found, then the outer layer planning result is obtained.

9. The multi-building path planning system according to claim 8, wherein, The performing inner layer search algorithm processing on the road network data of each corresponding building in the outer layer planning result to obtain an inner layer planning result that matches each piece of the corresponding building's road network data includes: Based on the outer layer planning result, performing inner layer search algorithm processing on the road network data of the corresponding buildings in the outer layer planning result. If the inner layer search is connected, the inner layer planning result is obtained. If the inner layer search is not connected, the connection relationship of the entrances and exits of the building where the unconnected node is located is closed and the outer layer search algorithm is used for re-planning.

10. The multi-building path planning system according to claim 9, wherein, The obtaining the path planning result based on the outer layer planning result and the inner layer planning result includes: Obtaining the path planning result based on the outer layer planning result and the inner layer planning result.