A method for large-scale indoor navigation path planning based on clustering partition
By employing clustering partitioning and offline pre-computation methods in large-scale indoor environments, the problem of low path calculation efficiency in existing technologies is solved, enabling rapid path planning and improving the response speed and user experience of navigation systems.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HARBIN ENG UNIV
- Filing Date
- 2023-05-26
- Publication Date
- 2026-08-04
AI Technical Summary
Existing shortest path algorithms are computationally inefficient in large indoor spaces, resulting in slow navigation system response and impacting user experience.
A clustering-based partitioning approach is adopted, which pre-calculates the shortest path within a partition offline and quickly calculates the global path online. Combined with an improved K-means algorithm and a navigation network model, reasonable partitions are divided and entry/exit point information is recorded to achieve fast path planning.
It significantly reduces the computation time for large-scale indoor navigation route planning, improves the online response speed of the navigation system, and enhances the user experience.
Smart Images

Figure CN116817912B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of indoor route planning technology, specifically relating to a method for large-scale indoor navigation route planning based on clustering partitioning. Background Technology
[0002] With the rapid advancement of urbanization, the indoor environments people live in are becoming increasingly complex and larger in scale. The demand for navigation in these complex indoor environments is growing rapidly. Therefore, many common map service providers (such as Google Maps, Bing Maps, and Baidu Maps) are gradually incorporating indoor navigation systems as a basic function of their map services. Indoor positioning, indoor route planning, and indoor navigation guidance are the three main components of an indoor navigation system. Among these, indoor navigation route planning is the process by which the navigation system calculates the shortest or least time-consuming path based on a shortest path algorithm. The time required for this process directly determines the response speed of the navigation system and will also directly affect the user's experience.
[0003] Currently, there are many shortest path algorithms, such as Dijkstra's algorithm, A* algorithm, and Floyd's algorithm. These algorithms often need to traverse the entire navigation network (graph) when calculating the shortest path. Even algorithms such as A* algorithm, which use heuristics to reduce the search area, still have unsatisfactory search range and computational efficiency for large-scale indoor spaces.
[0004] Existing research typically attempts to improve path planning algorithms to accelerate their computation. However, methods based on offline preprocessing (pre-computation) to improve path calculation speed are rarely studied. This invention proposes a combined offline and online approach to improve the computation speed of online path planning. The offline method includes offline clustering and partitioning, and offline path pre-computation within the region. The online method provides a solution for the user to quickly calculate the global shortest path based on the offline results. The proposed method can offer a solution to the problem of long computation time for path calculation based on navigation network models in large-scale indoor spaces. Summary of the Invention
[0005] The purpose of this invention is to provide a method for large-scale indoor navigation path planning based on clustering partitioning.
[0006] The objective of this invention is achieved through the following technical solution:
[0007] Step 1: Offline map clustering and partitioning stage;
[0008] Step 1.1: Construct a navigation network model based on the indoor map;
[0009] Using indoor maps as the original data source, an indoor navigation network model is constructed based on graph theory.
[0010] Step 1.2: Select a suitable K value for the improved K-means algorithm used for clustering partitioning based on the node characteristics in the navigation network; select the K value based on the characteristics of ordinary nodes;
[0011] Step 1.3: Iteratively form a basic cluster from ordinary nodes using the improved K-means algorithm; where ordinary nodes are nodes with specific functional attributes;
[0012] The steps to improve the K-means algorithm are as follows:
[0013] All ordinary nodes constitute the sample set D. First, for each attribute category corresponding to K in the sample set D, a point is randomly selected as the initial mean vector {μ1,μ2,…,μ} for the K-means iteration. k}, randomly select a sample, and calculate its distance to each mean vector. The distance metric used here is HVDM distance:
[0014]
[0015] Where D Euclidean The Euclidean distance formula is as follows:
[0016]
[0017] And D VDM Here is the distance formula for determining unordered attributes:
[0018]
[0019] The two distances are then normalized using the min-max method as shown in the following equation, and then weighted and summed to obtain the final distance:
[0020]
[0021] The cluster label of a sample is determined based on the vector closest to the mean. When a sample is added to a cluster, the mean sample distance is immediately updated using the following formula:
[0022]
[0023] Set a preset iteration stop threshold m and an iteration count threshold x. Repeat the above steps until all samples are added to their corresponding clusters. Then, reselect samples and repeat the above steps. Each time this operation is repeated, the iteration count is incremented by one. When reselecting samples, if the cluster attribute of the current node has not changed, the update count x is incremented by one; if it has changed, the update count x is set to zero. When the update count x reaches the total number of samples in the sample set, it proves that all samples have not changed their cluster attributes, and the iteration stops. If the cluster attribute of a sample keeps changing, the iteration automatically stops when the number of iterations reaches the threshold m, and the corresponding cluster is divided into C = {C1, C2, ..., C}. k}, denoted as a basic cluster;
[0024] Step 1.4: Add the transition nodes to the basic cluster based on distance; where the transition nodes are intermediate nodes that have no actual location meaning and are only used for navigation transitions;
[0025] Step 1.5: Reconstruct the clusters of nodes that are not connected within the same cluster due to the actual situation of the navigation network to obtain new clustering results;
[0026] Step 2: Calculate the shortest path within the partition offline;
[0027] Step 2.1: Calculate and record the entry and exit points within each partition;
[0028] Step 2.2: Calculate the shortest path and shortest distance between pairs of entry and exit points within the partition;
[0029] Step 3: Calculate the shortest path online based on the user-set starting and destination points;
[0030] Step 3.1: Using partitions as abstract nodes, calculate the path between the partition where the user-defined starting point is located and the partition where the target point is located;
[0031] Step 3.2: Calculate the path and distance from the starting point and the target point to the entry and exit points within their respective partitions;
[0032] Step 3.3: By combining the paths calculated in the two online steps, multiple solutions are obtained, and the shortest path is selected based on the distance.
[0033] Further, in step 1.4: traverse all transition nodes, and find the n closest ordinary nodes by calculating the distance between each transition node and other ordinary nodes. The distance calculation is based on Euclidean distance, and the specific value of n depends on the size of the navigation network. A transition node will be assigned to the cluster with the most basic clusters among the n ordinary nodes.
[0034] Step 1.5: Determine whether there is full connectivity within the same cluster by using the path of the navigation network model. If the cluster is not fully connected, the original cluster is re-divided into q new clusters according to the number of disconnected regions q within the cluster. If the number of nodes f in the regenerated cluster is less than the preset threshold p, the nodes are automatically assigned to other connected clusters until the final clustering partitioning is completed.
[0035] Further, in step 2.1: traverse the nodes within the partition, find nodes within the partition that are connected to other partitions through the path connection relationship of the navigation network, and preset the entry / exit point distance threshold according to the size of the navigation network; add nodes in the same partition that are connected to other partitions to the entry / exit point set, and calculate the Euclidean distance between any two entry / exit points. If the distance exceeds the preset distance threshold, both points are used as entry / exit points; if the distance does not exceed the set distance threshold, select the node with more connection relationships with its connected partitions as the entry / exit point and keep it in the point set, and delete the remaining nodes participating in the calculation within the distance threshold; for each entry / exit point, the recorded information includes its own information, the information of the partitions it is connected to, and the connection relationship with its own partition;
[0036] Step 2.2: Calculate the shortest path and shortest distance between any entry and exit points within the same partition, and record and store the node information, starting and exit point information, and path information.
[0037] Further, in step 3.1: based on the user's selection of the starting point and the target point, determine the partition to which the selected point belongs, determine the path between the partition to which the starting point belongs and the partition to which the target point belongs, sum the distances according to the partition information recorded at the entry and exit points and the shortest distance information between the entry and exit points within the partition, and calculate and record each scheme;
[0038] Step 3.2: Calculate and record the distances from the starting point and the target point to all entry and exit points within the corresponding partition;
[0039] Step 3.3: Combine the shortest path between the starting point and the target point obtained in step 3.1 with the shortest paths between the starting point and the target point and the entry / exit points within their respective partitions obtained in step 3.2, and compare the results to find the path with the shortest distance, which is the overall optimal path.
[0040] The beneficial effects of this invention are as follows:
[0041] This invention proposes a method for offline clustering and partitioning, offline path pre-calculation within each region, and online rapid global path calculation, aiming to solve the problem of long computation time for shortest path calculation in large-scale indoor spaces. The method first clusters and partitions the map of the indoor navigation area, performs offline pre-calculation of the shortest path within each region, and then calculates the global shortest path online. Based on the method proposed in this invention, the computation time for large-scale indoor navigation path planning can be reduced, the online response speed of indoor navigation systems can be improved, and the user experience of the navigation system can be enhanced. This method has certain research significance and practical value for the development of indoor road navigation systems. Attached Figure Description
[0042] Figure 1 This is the overall flowchart;
[0043] Figure 2 This is a schematic diagram of a navigation network;
[0044] Figure 3 This is a schematic diagram of the K-means partitioning results;
[0045] Figure 4 This is a diagram illustrating the shortest path within the offline computing area;
[0046] Figure 5 This is a diagram illustrating the calculation of the shortest path in online traversal.
[0047] Figure 6 This is a schematic diagram of the final navigation result;
[0048] Figure 7 This is a sequence diagram of the operation. Detailed Implementation
[0049] The present invention will now be further described with reference to the accompanying drawings.
[0050] Figure 1 The overall flowchart of the algorithm is presented, which introduces the overall operation steps of the method in three stages: clustering and partitioning, offline calculation of the shortest path within the partition, and online calculation of the target shortest path.
[0051] Phase 1: Offline map clustering and partitioning phase.
[0052] Step 1: Construct a navigation network model based on the indoor map.
[0053] Using indoor maps as the primary data source, an indoor navigation network model is constructed based on graph theory. Specifically, rooms and doors are abstracted as nodes, corridors as centerlines, and nodes are connected to each other and to the centerline by edges. Figure 2 (a) is the original map. Figure 2 (b) is a schematic diagram of the corresponding navigation network construction, such as Figure 2(b) The circular nodes shown are ordinary nodes, representing nodes with specific functional attributes, such as room nodes, elevator / staircase / escalator nodes. Triangular nodes are transition nodes, referring to intermediate nodes used only for navigation transitions without specific locational significance, such as door nodes and corridor nodes. A door node is the midpoint of a door (line segment). A perpendicular line drawn from a door node to the corridor centerline intersects the corridor node at its intersection. Simultaneously, the inflection points of the corridor centerline are also set as corridor nodes. The corridor centerline, the lines connecting door nodes and corridor nodes, and the lines connecting ordinary nodes to door nodes constitute the paths of the navigation network. The above describes the process of constructing the corresponding navigation network based on an indoor map. Exporting the nodes and edges according to coordinates, attributes, and IDs yields the information file of the entire navigation network.
[0054] Step 2: Select a suitable K value for the improved K-means algorithm used for clustering partitioning based on the node characteristics in the navigation network.
[0055] This step selects the K value based on the characteristics of ordinary nodes. Specifically, the characteristics of ordinary nodes are divided into multiple categories according to the purpose of the area, but the attribute characteristics of nodes with generalized uses, such as toilets and substations, are not selected as features for K value selection. For the remaining characteristics of ordinary nodes, the number of attribute categories to be divided is manually chosen, which is K. This invention considers this method to be more reasonable than randomly selecting K.
[0056] Step 3: Iterate through ordinary nodes using the improved K-means algorithm to form basic clusters.
[0057] The improved K-means algorithm differs from the classic K-means algorithm in that it updates the cluster centers after each node is added to a cluster in each iteration. Since the VDM distance changes after each node is added to a cluster, updating the cluster centers ensures that the Euclidean distance between each node and the mean vector is constantly changing. For the scheme combining VDM and Euclidean distance, this improvement makes the partitioning more reasonable, and ordinary nodes with similar characteristics are more likely to be assigned to the same basic cluster.
[0058] The steps to improve the K-means algorithm are as follows:
[0059] All ordinary nodes constitute the sample set D. First, for each attribute category corresponding to K in the sample set D, a point is randomly selected as the initial mean vector {μ1,μ2,…,μ} for the K-means iteration. k}, randomly select a sample and calculate its distance from each mean vector. The distance metric used here is HVDM distance as shown in formula (1).
[0060]
[0061] Where D Euclidean Formula 2 is the Euclidean distance formula (2).
[0062]
[0063] And D VDM It is the distance formula (3) for judging unordered attributes.
[0064]
[0065] The two distances are normalized to min-max as shown in formula (4) and then weighted and summed to obtain the distance.
[0066]
[0067] The cluster label of the sample is determined based on the vector closest to the mean, and the mean sample distance is updated immediately according to formula (5) when it is added to the cluster.
[0068]
[0069] Set a preset iteration stop threshold m and an iteration count threshold x. Repeat the above steps until all samples are added to their corresponding clusters. Then, reselect samples and repeat the above steps, incrementing the iteration count by one each time this operation is performed. When reselecting samples, if the cluster attribute of the current node has not changed, the update count x is incremented by one. If it has changed, the update count x is set to zero. When the update count x reaches the total number of samples in the sample set, it proves that all samples have not changed their cluster attributes, and the iteration stops. If the cluster attribute of a sample keeps changing, the iteration automatically stops when the number of iterations reaches the threshold m, and the corresponding cluster is divided into C = {C1, C2, ..., C}. k} is denoted as a basic cluster.
[0070] Step 4: Add the transition nodes to the basic cluster based on distance.
[0071] By traversing all transition nodes and calculating the distance between each transition node and other ordinary nodes, the n closest ordinary nodes to that transition node are found. The distance calculation is based on Euclidean distance, and the specific value of n depends on the size of the navigation network. A transition node will be assigned to the cluster among the n ordinary nodes that belongs to the most common basic cluster types.
[0072] Step 5: Reconstruct the clusters of nodes that are not connected within the same cluster due to the actual situation of the navigation network, and obtain new clustering results.
[0073] The path of the navigation network model is used to determine whether there is full connectivity within the same cluster. If the cluster is not fully connected, the original cluster is re-divided into q new clusters according to the number of disconnected regions q. If the number of nodes f in the regenerated cluster is less than the preset threshold p, the nodes are automatically assigned to other connected clusters until the final clustering partitioning is completed. Figure 3 (a) is a schematic diagram of the partitioning results of a large-scale map after the improved K-means partitioning. Partitions B and C originally belonged to the same partition after partitioning, but due to the existence of intra-cluster disconnection, the partition was re-partitioned into B and C according to the above re-partitioning strategy. After the partitioning, B and A are connected. Figure 3 (b) represents a schematic diagram of the partition after the partition result is abstracted, where circles represent each partition and solid connecting lines represent the connectivity between partitions.
[0074] Phase 2: Offline calculation of the shortest path within the partition
[0075] Step 1: Calculate and record the entry and exit points within each partition.
[0076] The nodes within a partition are traversed, and nodes connected to other partitions within that partition are found through the path connections of the navigation network. A preset entry / exit point distance threshold is established based on the size of the navigation network. Nodes within the same partition connected to other partitions are added to the entry / exit point set, and the Euclidean distance between any two entry / exit points is calculated. If the distance exceeds the preset threshold, both points are considered entry / exit points; otherwise, the node with more connections to its connected partitions is selected as the entry / exit point and retained in the point set, while the remaining nodes within the distance threshold are deleted. For each entry / exit point, the recorded information includes its own information, information about the partitions it connects to, and its connectivity with its current partition. Entry / exit points obtained using this method will have connections to entry / exit points in adjacent partitions. Figure 4 The rectangle represents the entry and exit points of each partition. For example, point CA1 is the entry and exit point between partition A and partition C. When there are multiple entry and exit points, entry and exit point 1 is CA1, entry and exit point 2 is CA2, and so on. In reality, the entry and exit points of connected partitions, such as AB1, AB2 and BA1, are connected.
[0077] Step 2: Calculate the shortest path and shortest distance between any two entry and exit points within the partition.
[0078] Calculate the shortest path and shortest distance between any entry / exit point within the same partition and the corresponding time, and record and store the node information, starting / exit point information, and path information. For example... Figure 4As shown, the shortest path information for multiple segments CA1-CA2, CA1-BA1, CA1-DA1, CA1-DA2, CA2-BA1, CA2-DA1, CA2-DA2, BA1-DA1, and DA1-DA2 is calculated and stored within partition A. Similar calculations are performed on other partitions to prepare data for the third stage.
[0079] Phase 3: Calculate the shortest path online based on the user-defined starting and ending points.
[0080] Compared to the user's use of the navigation system, the first and second stages involve offline calculations, while only the current stage is processed online. Therefore, this invention argues that the first and second stages do not consume online computing resources, and the user can directly read the results of the first two stages during use.
[0081] Step 1: Using partitions as abstract nodes, calculate the path between the partition where the user-defined starting point is located and the partition where the target point is located.
[0082] Based on the user's selected start and destination points, the system determines the partition to which the selected points belong, identifies the path between the partitions of the start and destination points, and sums the distances according to the partition information recorded at the entry and exit points and the shortest distance between entry and exit points within each partition. This calculation is performed and recorded for each possible solution. For example... Figure 5 As shown in (a) and 5(b), if the user sets the starting point in area C and the target point in area B, the path schemes from area C to area B are divided into two types: CAB and CDAB. The shortest path schemes for the intermediate areas of CAB and CDAB are listed respectively. The shortest path for CAB is as follows: Figure 5 As shown in (a), there are two schemes, CA1-BA1 and CA2-BA1, which record and save their information. The shortest intermediate path scheme of CDAB is as follows: Figure 5 (b) shows the number of schemes D existing in partition D. num Given four partitions, CD1-AD1, CD2-AD1, CD1-AD2, and CD2-AD2, the number of solutions A in partition A is... num Let DA1-BA1 and DA2-BA1 be the two input / output points of A and D, respectively. Presumably, the four input / output points AD1, AD2, DA1, and DA2 of A and D are all interconnected. Therefore, the final solution is D. num *A num 8 represents a combination of schemes A and D. The dashed lines in the diagram represent the distances calculated in the second stage within the partition; therefore, this step only enumerates the paths of different schemes.
[0083] Step 2: Calculate the path and distance from the starting point and the target point to the entry and exit points within their respective partitions.
[0084] Calculate and record the distances from the starting point and target point to all entry and exit points within the corresponding partition. For example... Figure 5 As shown in (c), there are four possible path schemes from the starting point to the entry / exit point of its partition: Start-AC1, Start-AC2, Start-DC1, and Start-DC2. There is only one possible path from the entry / exit point of the partition containing the target point to the target point. Figure 5 As shown in (d), for AB1-End, this step requires calculating the distance between the two schemes.
[0085] Step 3: By combining the paths calculated in the two online steps, multiple solutions are obtained, and the shortest path is selected based on the distance.
[0086] The shortest path between the starting point's partition and the target point's partition, obtained in step 1, is combined with the shortest paths from the starting point and target point to their respective entry / exit points within their partitions, obtained in step 2. The path with the shortest distance is the overall optimal path. The CAB scheme consists of 2 intermediate schemes obtained in step 1, 2 schemes from the starting point to its partition's entry / exit point that conform to the path, and 2 schemes from the target point's partition's entry / exit point to its corresponding distance, totaling 2*2*1, or 4 schemes. The CDAB scheme consists of 8 intermediate schemes obtained in step 1, 2 schemes from the starting point to its partition's entry / exit point that conform to the path, and 2 schemes from the target point's partition's entry / exit point to its corresponding distance, totaling 8*2*1, or 16 schemes. A total of 20 schemes are obtained by comparing the distances of these schemes, resulting in the final shortest path scheme as follows: Figure 6 The diagram shows Start-AC1-CA1-BA1-AB1-End.
[0087] The overall method is now complete. The online and offline time series relationship diagram is as follows: Figure 7 As shown.
[0088] The above description is merely a preferred embodiment of the present invention and is not intended to limit the invention. Various modifications and variations can be made to the present invention by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.
Claims
1. A method for large-scale indoor navigation path planning based on clustering partitioning, characterized in that: The steps are as follows: Step 1: Offline map clustering and partitioning stage; Step 1.1: Construct a navigation network model based on the indoor map; Using indoor maps as the original data source, an indoor navigation network model is constructed based on graph theory. Step 1.2: Select a suitable K value for the improved K-means algorithm used for clustering partitioning based on the node characteristics in the navigation network; select the K value based on the characteristics of ordinary nodes; Step 1.3: Iteratively form a basic cluster from ordinary nodes using the improved K-means algorithm; where ordinary nodes are nodes with specific functional attributes; The steps to improve the K-means algorithm are as follows: All ordinary nodes constitute the sample set D. First, for each attribute category corresponding to K in the sample set D, a point is randomly selected as the initial mean vector for the K-means iteration. μ 1, μ 2,…, μ k }, randomly select a sample, and calculate its distance to each mean vector. The distance metric used here is HVDM distance: wherein D Euclidean is the Euclidean distance formula: And D VDM is the distance formula that judges the disorder attribute: The two distances are then normalized using the min-max method as shown in the following equation, and then weighted and summed to obtain the final distance: The cluster label of a sample is determined based on the vector closest to the mean. When a sample is added to a cluster, the mean sample distance is immediately updated using the following formula: Set a preset iteration stop threshold `m` and an iteration count threshold `x`. Repeat the above steps until all samples are added to their corresponding clusters. Then, reselect samples and repeat the above steps. Each time this operation is repeated, the iteration count is incremented by one. When reselecting samples, if the cluster attribute of the current node has not changed, the update count `x` is incremented by one; if it has changed, the update count `x` is set to zero. When the update count `x` reaches the total number of samples in the sample set, it proves that all samples have not changed their cluster attributes, and the iteration stops. If the cluster attribute of a sample keeps changing, the iteration automatically stops when the iteration count reaches the threshold `m`, and the corresponding cluster is divided into... C ={ C 1 , C 2 ,…, C k }, denoted as a basic cluster; Step 1.4: Add the transition nodes to the basic cluster based on distance; where the transition nodes are intermediate nodes that have no actual location meaning and are only used for navigation transitions; Step 1.5: Reconstruct the clusters of nodes that are not connected within the same cluster due to the actual situation of the navigation network to obtain new clustering results; Step 2: Calculate the shortest path within the partition offline; Step 2.1: Calculate and record the entry and exit points within each partition; Step 2.2: Calculate the shortest path and shortest distance between pairs of entry and exit points within the partition; Step 3: Calculate the shortest path online based on the user-set starting and destination points; Step 3.1: Using partitions as abstract nodes, calculate the path between the partition where the user-defined starting point is located and the partition where the target point is located; Step 3.2: Calculate the path and distance from the starting point and the target point to the entry and exit points within their respective partitions; Step 3.3: By combining the paths calculated in the two online steps, multiple solutions are obtained, and the shortest path is selected based on the distance.
2. The method for large-scale indoor navigation path planning based on clustering partitioning according to claim 1, characterized in that: Step 1.4: Traverse all transition nodes and find the n closest ordinary nodes by calculating the distance between each transition node and other ordinary nodes. The distance calculation is based on Euclidean distance, and the specific value of n depends on the size of the navigation network. A transition node will be assigned to the cluster with the most basic clusters among the n ordinary nodes. Step 1.5: Determine whether there is full connectivity within the same cluster by using the path of the navigation network model. If the cluster is not fully connected, the original cluster is re-divided into q new clusters according to the number of disconnected regions q within the cluster. If the number of nodes f in the regenerated cluster is less than the preset threshold p, the nodes are automatically assigned to other connected clusters until the final clustering partitioning is completed.
3. The method for large-scale indoor navigation path planning based on clustering partitioning according to claim 1, characterized in that: Step 2.1: Traverse the nodes within the partition, find nodes within the partition that are connected to other partitions through the path connection relationship of the navigation network, and preset the entry / exit point distance threshold according to the size of the navigation network; add nodes in the same partition that are connected to other partitions to the entry / exit point set, and calculate the Euclidean distance between any two entry / exit points; if the distance exceeds the preset distance threshold, both points are used as entry / exit points; if the distance does not exceed the set distance threshold, select the node with more connection relationships with the nodes in the partitions connected to it as the entry / exit point and keep it in the point set, and delete the remaining nodes participating in the calculation within the distance threshold; for each entry / exit point, the recorded information includes its own information, the information of the partitions connected to it, and the connection relationship with its own partition; Step 2.2: Calculate the shortest path and shortest distance between any entry and exit point within the same partition, and record and store the node information, starting and exit point information, and path information.
4. The method for large-scale indoor navigation path planning based on clustering partitioning according to claim 1, characterized in that: Step 3.1: Based on the user's selection of the starting point and the target point, determine the partition to which the selected point belongs, determine the path between the partition to which the starting point belongs and the partition to which the target point belongs, sum the distances according to the partition information recorded at the entry and exit points and the shortest distance information between the entry and exit points within the partition, and calculate and record each scheme; Step 3.2: Calculate and record the distances from the starting point and the target point to all entry and exit points within the corresponding partition; Step 3.3: Combine the shortest path between the starting point and the target point obtained in step 3.1 with the shortest paths between the starting point and the target point and the entry / exit points within their respective partitions obtained in step 3.2, and compare the results to find the path with the shortest distance, which is the overall optimal path.