A method and apparatus for determining a navigation route

By searching for candidate roads and performing weight sorting and road supplementation in navigation route planning, the problem of suboptimal navigation routes in existing technologies is solved, and a better navigation route calculation is achieved.

CN115183789BActive Publication Date: 2026-06-19ALIBABA (CHINA) CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
ALIBABA (CHINA) CO LTD
Filing Date
2022-06-28
Publication Date
2026-06-19

AI Technical Summary

Technical Problem

In existing technologies, navigation route planning often fails to provide the optimal route, resulting in unsatisfactory navigation performance.

Method used

By obtaining waypoints on the navigation route, searching for candidate roads that meet the distance criteria, determining the weights of the candidate roads, performing supplementary road processing, expanding the candidate road set, and finally selecting roads for route planning based on the weights.

🎯Benefits of technology

It improves the accuracy and completeness of navigation routes, ensuring a more comprehensive set of candidate roads and calculating better navigation routes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115183789B_ABST
    Figure CN115183789B_ABST
Patent Text Reader

Abstract

This specification provides one or more embodiments of a method and apparatus for determining a navigation route. The method includes: acquiring at least two given route points on the navigation route: a navigation start point and a navigation end point; for each route point, searching a road network information database to obtain at least one candidate road whose distance to the route point meets a distance condition, thus obtaining a set of candidate roads corresponding to the route point; for each set of candidate roads corresponding to a route point, determining the weight of each candidate road in the set, where a higher weight indicates a greater probability of matching the candidate road with the corresponding route point; performing supplementary road processing on each candidate road in at least a subset of the candidate roads to supplement the candidate roads with supplementary candidate roads, wherein the supplementary candidate roads have the same weight priority as the corresponding candidate roads; and selecting a subset of candidate roads from the set of candidate roads corresponding to each route point based on the weights to perform route planning, thereby obtaining a navigation route.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This specification relates to one or more embodiments in the field of mapping, and more particularly to a method and apparatus for determining navigation routes. Background Technology

[0002] With the advancement of computer technology and the development of the internet, navigation services have become an integral part of people's lives. Whether it's driving navigation or walking navigation, it requires planning a route from the user's selected starting point to their selected destination. Related technologies can match corresponding road networks based on the user's input of the starting and ending points, typically matching the road network closest to the starting and ending points, and then planning the navigation route based on the matched road network. However, in practice, it has been found that the navigation routes obtained in this way are sometimes less than ideal and require further optimization. Summary of the Invention

[0003] In view of this, one or more embodiments of this specification provide a method and apparatus for determining a navigation route.

[0004] To achieve the above objectives, one or more embodiments of this specification provide the following technical solutions:

[0005] According to a first aspect of one or more embodiments of this specification, a method for determining a navigation route is provided, the method comprising:

[0006] Obtain at least two route points on the given navigation route, the at least two route points including the navigation start point and the navigation end point;

[0007] For each route point, at least one candidate road that meets the distance condition between the route point and the road network information database is searched to obtain the candidate road set corresponding to the route point;

[0008] For each route point, a set of candidate roads is set, and the weight of each candidate road in the set is determined. The higher the weight, the greater the probability of matching the candidate road with the corresponding route point.

[0009] For each candidate road in at least a subset of candidate roads, supplementary candidate roads are added to supplement the candidate roads, and the supplementary candidate roads have the same weight and priority as the corresponding candidate roads.

[0010] Based on the weights, a subset of candidate roads are selected from the candidate road set corresponding to each route point for route planning to obtain the navigation route.

[0011] According to a second aspect of one or more embodiments of this specification, a navigation route determination apparatus is provided, the apparatus comprising:

[0012] The information acquisition module is used to acquire at least two route points given on the navigation route, wherein the at least two route points include a navigation start point and a navigation end point;

[0013] The road search module is used to search the road network information database for each route point and obtain at least one candidate road whose distance to the route point meets the distance condition, so as to obtain the candidate road set corresponding to the route point.

[0014] The road sorting module is used to determine the weight of each candidate road in the candidate road set corresponding to each route point. The higher the weight, the greater the probability that the corresponding candidate road belongs to the navigation route.

[0015] The path supplementation processing module is used to perform path supplementation processing for each candidate road in at least a portion of the candidate roads, supplementing the candidate road with a supplementary candidate road, wherein the supplementary candidate road has the same weight and priority as the corresponding candidate road;

[0016] The route calculation module is used to select a portion of candidate roads from the candidate road set corresponding to each route point according to the weights to perform route planning and obtain the navigation route.

[0017] According to a third aspect of one or more embodiments of this specification, an electronic device is provided, which may include:

[0018] processor;

[0019] Memory used to store processor-executable instructions;

[0020] The processor implements the method of any embodiment of this specification by running the executable instructions.

[0021] According to a fourth aspect of one or more embodiments of this specification, a computer-readable storage medium is provided having computer instructions stored thereon that, when executed by a processor, implement the methods of any embodiment of this specification.

[0022] The navigation route determination method and apparatus of this specification, when determining candidate roads to participate in navigation route calculation, not only consider the distance between the road and the route point and the weight ranking of the road, but also perform supplementary road processing on the searched candidate roads. Through this supplementary road processing, the set of candidate roads participating in navigation route calculation can be made more comprehensive and complete, which also helps to calculate a better navigation route. Attached Figure Description

[0023] To more clearly illustrate the technical solutions in one or more embodiments or related technologies of this disclosure, the accompanying drawings used in the description of the embodiments or related technologies will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments recorded in one or more embodiments of this disclosure. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0024] Figure 1 This is a flowchart illustrating a method for determining a navigation route, provided in an exemplary embodiment.

[0025] Figure 2 This is a flowchart illustrating a method for determining a navigation route, provided in an exemplary embodiment.

[0026] Figure 3 This is a schematic diagram of a POI provided in an exemplary embodiment;

[0027] Figure 4 This is a schematic diagram illustrating the calculation of a navigation route, provided in an exemplary embodiment.

[0028] Figure 5 This is a schematic diagram of the structure of a navigation route determination device provided in an exemplary embodiment;

[0029] Figure 6 This is a schematic diagram of the hardware structure of an electronic device provided in an exemplary embodiment;

[0030] Figure 7 This is a schematic diagram of a computer-readable storage medium provided in an exemplary embodiment. Detailed Implementation

[0031] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with one or more embodiments of this specification. Rather, they are merely examples of apparatuses and methods consistent with some aspects of one or more embodiments of this specification as detailed in the appended claims.

[0032] It should be noted that the steps of the corresponding methods are not necessarily performed in the order shown and described in this specification in other embodiments. In some other embodiments, the methods may include more or fewer steps than described in this specification. Furthermore, a single step described in this specification may be broken down into multiple steps in other embodiments; and multiple steps described in this specification may be combined into a single step in other embodiments.

[0033] A navigation route is a path used to guide a user from a starting point to a destination. The calculation of a navigation route typically includes the following stages:

[0034] 1) Receive the user's navigation starting point (originating location) and destination (going point). Additionally, if the user's input includes waypoints, those waypoints can also be received. The route point information received for the navigation starting point, destination, and waypoints can be in the form of coordinates, such as two-dimensional or three-dimensional coordinates in a global coordinate system, or it can be the name or address of the POI corresponding to these route points.

[0035] 2) Taking the user's input of the navigation start and destination as an example, the calculated navigation route is generally from a certain starting road to a certain destination road. That is, the navigation route is calculated within the road network. However, sometimes the user's input start and destination information cannot be directly mapped to specific roads in the road network. For example, it could be the entrance to a park. Therefore, it is necessary to match the user's input navigation start or destination, which is not in the road network, to roads within the network. This stage can be called "road matching," which determines the navigation start and destination roads based on the user's input.

[0036] Furthermore, the methods described in this specification are not limited to self-driving navigation; they are applicable to determining various types of navigation routes, including pedestrian navigation, public transportation navigation, cycling navigation, and motorcycle or electric vehicle navigation. For example, even pedestrian navigation involves a starting road and an ending road within a road network.

[0037] 3) Calculate the navigation route between the starting and ending points in the road network based on the starting and ending roads.

[0038] In the following embodiments, Figure 1 This is a flowchart illustrating a method for determining a navigation route, provided in an exemplary embodiment. The method describes a process for determining a navigation route. Figure 1 As shown, the method may include the following processing:

[0039] In step 100, at least two route points given on the navigation route are obtained, the at least two route points including the navigation start point and the navigation end point.

[0040] In this embodiment, before calculating the navigation route, at least two route points provided by the user can be received. These route points refer to locations used to determine the navigation route, essentially providing some constraints for the route. For example, the at least two route points may include a start point and an end point, referred to in this embodiment as the navigation start point and navigation end point. Optionally, it may also include waypoints along the navigation route.

[0041] For example, suppose a user wants to go from the entrance of their residential community to Park A. The navigation starting point would be the entrance of their residential community, and the navigation destination would be Park A. Or, suppose the user wants to pick up a friend who lives in community B on their way to Park A. In that case, the entrance of community B could be used as a stopover point.

[0042] Given the navigation start point, navigation end point, and waypoints, the navigation route can be planned in subsequent steps, ensuring that the planned navigation route passes through these waypoints.

[0043] In step 102, for each route point, at least one candidate road that meets the distance condition between the route point and the road network information database is searched to obtain the candidate road set corresponding to the route point.

[0044] For example, the road network information database may include all roads in the road network.

[0045] In this step, searching for candidate roads from the road network information database can involve searching for roads near the route point, specifically searching for N roads that are relatively close to the route point, where N is a natural number. For example, in practice, a minimum distance search can be performed using an R-tree data structure. During the search, the distance between the road and the route point can be determined as the Earth's spherical distance from the projection of the point to the line segment. Specifically, the distance from the route point to the road is the distance represented by the point with the smallest Earth's spherical distance among all points on the road. Based on this distance and preset distance criteria, N roads that are relatively close to the route point are selected as candidate roads.

[0046] The distance condition refers to the criteria used to limit the selection of roads as candidate roads. For example, roads can be sorted from smallest to largest distance from the route point, and the top three (the three with the smallest distances) can be selected as candidate roads. A candidate road is one that is not yet definitively determined as the actual route point match; it is considered a candidate for the subsequent steps of this embodiment. When calculating the navigation route, this candidate road is used for selection, and the final determined navigation route includes one of these candidate roads.

[0047] Given multiple route points along the navigation route, candidate road selection can be performed for each route point in this step, ultimately yielding a candidate road set for each route point. For example, assuming a navigation start point and a navigation destination, after selecting candidate roads, a candidate road set corresponding to the navigation start point and a candidate road set corresponding to the navigation destination can be obtained. Each candidate road set may include at least one candidate road.

[0048] For example, for a given route point, we can calculate the distance represented by the point with the smallest spherical distance from each road to that route point. Then, based on this distance, we sort the roads and select the top three roads with the smallest distances as candidate roads for that route point. These three roads form the candidate road set corresponding to that route point. Following this method, we can obtain the candidate road set for each route point.

[0049] In addition, when searching for candidate roads from the road network information database, if some roads in the database are found to be unsuitable for selection, such as roads that are impassable, roads that are closed, roads that are restricted or prohibited, roads that are one-way and cannot be entered or exited, or roads that have not yet been paved, such roads can be excluded based on specific needs and not considered as candidate roads.

[0050] In step 104, for each route point, the weight of each candidate road in the candidate road set is determined. The higher the weight, the greater the probability that the corresponding candidate road belongs to the navigation route.

[0051] This step may involve determining a weight for each candidate road in the candidate road set. The weight represents the probability that a route point corresponding to a candidate road matches that candidate road; a higher weight indicates a greater probability of matching. Matching means that the candidate road serves as the actual road corresponding to the route point during navigation. For example, if the route point is the navigation start point, the candidate road serves as the actual starting road during navigation; if the route point is the navigation end point, the candidate road serves as the actual destination road during navigation; similarly, if the route point is a waypoint, the candidate road serves as the actual route taken during navigation.

[0052] For example (this is just an example, and actual implementation may vary): Suppose the waypoint is the user's input navigation starting point, such as the entrance to a park, and this park entrance is not in the road network. Suppose there are two candidate roads in the road network, "Road R1" and "Road R2". If the weight of Road R1 is higher than the weight of Road R2, it means that the probability of Road R1 being the user's actual navigation starting point is higher than that of Road R2. In reality, Road R1 might be closer to the park entrance, while Road R2 might be slightly farther away, and the user would spend more time traveling to R2. Therefore, the user is more likely to expect the navigation program to guide them to Road R1 rather than R2, and thus, Road R1 can be assigned a higher weight. Similarly, if the waypoint is the user's input navigation destination, then the candidate road with the higher weight has a higher probability of being the user's actual desired destination.

[0053] There are various ways to determine the weights of candidate roads, and this embodiment does not impose any restrictions. For example, the weights of candidate roads whose directions match the historical location trajectory of the user requesting the navigation route can be set higher. For instance, if it is found that the user's historical location trajectory, including the current input starting point, is northeast, and a certain candidate road is also northeast, then it is very likely that the user is on that candidate road, so the weight of that candidate road is set higher.

[0054] After determining the weight of each candidate road in the candidate road set, the candidate roads in the candidate road set can be sorted according to their weights. For example, if there are 4 candidate roads in the road set: R3 / R4 / R5 / R6, and these 4 roads are sorted from highest to lowest weight, the sorting order is R3——R4——R5——R6.

[0055] In step 106, a supplementary road processing is performed for each candidate road in at least a portion of the candidate roads to supplement the candidate road with a supplementary candidate road, which has the same weight and priority as the corresponding candidate road.

[0056] The path completion process in this step can be performed on every candidate road of all candidate roads, or it can be performed on only a portion of the candidate roads. When selecting a portion of the candidate roads for path completion, some candidate roads can be selected randomly, or some candidate roads can be selected according to certain rules. For example, based on the weight of the candidate roads, some candidate roads with higher weights can be selected for path completion. This embodiment does not impose any restrictions.

[0057] The path completion process is performed separately for each candidate road. For example, path completion is performed for candidate road R1 or candidate road R2. The completed road can be called a "supplementary candidate road," and it has the same weight and priority as the corresponding candidate road, meaning that the supplementary candidate road has the same priority as the candidate road.

[0058] For example, suppose a set of roads has four candidate roads: R3 / R4 / R5 / R6. After sorting these four roads by weight, R3 is ranked first, R4 second, R5 third, and R6 fourth. We can choose to supplement some roads in this set. Suppose we choose to supplement R3, resulting in two supplementary candidate roads, "R7" and "R8". These two supplementary candidate roads, "R7" and "R8", are both ranked first, just like R3. This effectively expands the first-ranked road set from one (R3) to three.

[0059] Furthermore, the method for handling supplementary roads can be set according to actual business needs in practice, as long as roads with the same conditions as the candidate roads targeted for supplementation are included. For example, in the example above, the two supplementary candidate roads "R7" and "R8" are included in the first sorting where R3 is located, either because "R7" and "R8" are adjacent to R3, or because the difference in distance between "R7" and "R8" and R3 from the route points is very small, so "R7" and "R8" can be considered together with R3 in the same sorting.

[0060] The principle of route supplementation can be understood as follows: In the subsequent navigation route calculation step, a portion of the candidate roads in the candidate road set are selected for route planning based on weights. For example, only the top two ranked candidate roads are selected for route planning. If the navigation route calculation is successful, the process stops. That is, some roads in the candidate road set may not have the opportunity to participate in the navigation route calculation. However, this embodiment, through the route supplementation operation, can also add roads with the same conditions as the candidate roads, so that the supplementary candidate roads can also have the opportunity to participate in the navigation route calculation.

[0061] For example, in the example above, there are four candidate roads in the road set: R3 / R4 / R5 / R6. These four roads are sorted by weight from highest to lowest, in the order R3-R4-R5-R6. Although R5 has a slightly lower weight than R3, placing it after R3 in the ranking, the difference between these two candidate roads is actually very small. For instance, R5 is only slightly farther from the route point than R3. Therefore, R5 and R3 can both be included in the navigation route calculation. However, if candidate roads are selected based solely on weight during route planning, only R3 might be chosen, resulting in an incomplete and inadequate selection of candidate roads. Therefore, the road supplementation operation can move a candidate road with a lower weight to the first position in the ranking, effectively giving R5, which was ranked lower, a chance to participate in the navigation route calculation. From the perspective of navigation route calculation, a more comprehensive and complete set of candidate roads helps in calculating a better navigation route and improves the accuracy of the navigation route calculation.

[0062] The example above illustrates only one method of road supplementation. In practice, it is not limited to this. The supplementary candidate road does not necessarily have to be an existing road in the candidate road set; it can also be a road not included in the candidate road set. Regarding the selection of supplementary candidate roads, various methods can be set according to actual business needs, and this embodiment does not impose any restrictions. For example, when supplementing a candidate road, roads adjacent to and connected to that candidate road can be used as supplementary candidate roads. Alternatively, the method can be determined based on the type of the route point corresponding to the candidate road. If the route point is an interchange, then roads connected to that interchange can be used as supplementary candidate roads, and so on.

[0063] It's also important to note that route completion is performed separately for each set of roads, and specifically for each candidate road within that set. For example, suppose a user provides two route points for a navigation route. Each route point can generate a corresponding set of candidate roads based on the steps described above, and each set can include at least one candidate road. For any given set of candidate roads, at least a subset of the candidate roads can be selected for route completion. For each selected subset of candidate roads, route completion is performed individually; for instance, two additional candidate roads might be added to a given candidate road.

[0064] In step 108, based on the weights, a subset of candidate roads are selected from the candidate road set corresponding to each route point for route planning to obtain the navigation route.

[0065] After the path completion process, each candidate road set can have multiple ranking positions sorted by weight, such as at least one road ranked first, at least one road ranked second, at least one road ranked third, and so on. Each ranking position includes candidate roads that were initially in the set, and may also include at least one supplementary candidate road added later during the path completion process. If a candidate road has undergone path completion, its ranking position will include multiple roads; if a candidate road has not undergone path completion, its ranking position may only contain that candidate road.

[0066] In this step, a subset of candidate roads can be selected from the candidate road sets corresponding to each route point based on their weights for route planning. For example, the candidate road with the highest weight and the highest ranking can be selected from each set of route points to participate in the navigation route calculation. If the user-provided at least two route points also include waypoints of the navigation route, then a subset of candidate roads can be selected from the candidate road sets corresponding to the navigation start point, navigation end point, and waypoints based on their weights for route planning to obtain the navigation route.

[0067] The specific navigation route can be calculated using conventional graph algorithms, including but not limited to Dijkstra's algorithm, A* algorithm, CH algorithm, CBR algorithm, and Pouch algorithm. These graph algorithms will not be described in detail in this embodiment.

[0068] The navigation route determination method in this embodiment considers not only the distance between the road and the route point and the weight ranking of the road when determining the candidate roads to participate in the navigation route calculation, but also performs supplementary road processing on the searched candidate roads. Through this supplementary road processing, the set of candidate roads to participate in the navigation route calculation can be made more comprehensive and complete, which also helps to calculate a better navigation route.

[0069] The following example illustrates the application of the navigation route determination method described in this manual, and explains how to calculate a navigation route using this method. Assume the user has provided a navigation start point, a navigation end point, and also provides the waypoints for the navigation route. The goal is to calculate a navigation route that runs from the stated navigation start point to the navigation end point, and also passes through the stated waypoints. Figure 2 This is a flowchart illustrating a method for determining a navigation route, provided as an exemplary embodiment. The method describes the process of obtaining the aforementioned navigation route.

[0070] Before introducing the method, let's clarify the concept of a "link." In the embodiments of this specification, any road referred to can be a link, which is the smallest indivisible road unit in a road network. For example, a link can be a road segment between two intersections. Or, if the road segment between two intersections is long, it can be divided into multiple links. The navigation route calculated in the embodiments of this specification can be a set of links consisting of multiple links between the origin and destination. Each link in the road network can be distinguished by different identifiers; for example, link1 and link2 can refer to different links.

[0071] like Figure 2 As shown, the method may include the following processing:

[0072] In step 200, based on the navigation start point, navigation end point, and waypoint, at least one candidate road that meets the distance condition between the route point and the road network information database is searched to obtain the corresponding candidate road set.

[0073] For example, to obtain the candidate road set corresponding to the navigation start point, the candidate road set corresponding to the navigation destination, and the candidate road set corresponding to the waypoints, we can perform a minimum distance search using an R-tree data structure to obtain a set consisting of at least one candidate road that is closest to each of the above three route points.

[0074] For example, the candidate road set corresponding to the navigation starting point may include four candidate roads: link11, link12, link14, and link17. For instance, each road could be sorted according to its distance from the navigation starting point, with the distance sorted from smallest to largest, and the top four roads selected as the candidate road set corresponding to the navigation starting point. These four roads are link11, link12, link14, and link17 mentioned above.

[0075] Suppose the user provides a route point that is a Point of Interest (POI), and this POI may include at least two sub-route points, all of which are suitable as route points. For example, the user's given navigation destination is a POI of type "Park A". Typically, a park can have multiple entrances; for instance, Park A could include a north entrance and a west entrance. See also... Figure 3 As illustrated, the West Gate and the North Gate can each be referred to as a "sub-route point".

[0076] In this embodiment, for any sub-route point, at least one candidate road whose distance to the sub-route point meets the distance condition can be obtained from the road network information database, thus obtaining the candidate road set corresponding to the sub-route point. For example, by performing road searches based on the north and west gates of park A, the following sets are obtained:

[0077] The candidate road set corresponding to the North Gate: lin21, link22, link23, link27

[0078] The candidate road set corresponding to the West Gate: lin21, link22, link24, link26

[0079] As can be seen, the candidate road sets for both the North Gate and West Gate sub-route points mentioned above each include four candidate roads. These two candidate road sets will be merged together before the subsequent navigation route calculation step, which will be explained in a later step.

[0080] In this step, the navigation start point, navigation end point, and waypoints are determined by searching the road network information database for at least one candidate road whose distance to the route points meets the distance criteria. This results in a corresponding set of candidate roads. These sets of candidate roads will then participate in the weighting and road completion processes in subsequent steps, and finally, they will be used to calculate the navigation route. (See also...) Figure 4 The indication, Figure 4 This illustrates that the navigation start point, navigation end point, and waypoints can be divided into three paths. Each path undergoes a process of obtaining a set of candidate roads, weighting, and supplementing the road, ultimately leading to the calculation of the navigation route. The following steps describe the weighting, supplementing, and route calculation processes. It is understood that the processes described here apply to the processing of any of the aforementioned paths.

[0081] In step 202, for the candidate road sets corresponding to the navigation start point, navigation end point and waypoint respectively, the weight of each candidate road in the set is determined, and the candidate roads in the set are sorted according to the weight.

[0082] The weight sorting in this step can include two stages: determining the weights of candidate roads and sorting them according to the weights.

[0083] In determining the weights, the process may involve acquiring the road attributes of candidate roads and the attributes of the route points corresponding to the candidate road set, then determining the attribute matching degree between the two attributes. The higher the attribute matching degree, the higher the correlation between the route points and the candidate roads. For example, the road attributes of candidate roads may include at least one of the following: road type, road direction, and road location.

[0084] Here are a few examples of fixed weights, but in practice, they are not limited to these:

[0085] Example 1:

[0086] Suppose the user's given navigation destination is a POI, which is a shop. That is, the attribute of the retrieved route point is "this route point is a shop POI".

[0087] The candidate road set includes a first candidate road and a second candidate road. The first candidate road (a certain link) is located on a secondary road, and the second candidate road (i.e., a certain link) is located on a main road. That is, the road attributes of the obtained candidate roads include the road location of "main road" / "secondary road".

[0088] Then, the attributes of the aforementioned road locations and route points are compared for attribute matching: Since shops are mostly located on side roads and not on main roads, the attribute matching degree between route points and the first candidate road is higher. In other words, the correlation between the route point given by the user and the first candidate road is higher than the correlation between the route point and the second candidate road, meaning that this route point is more likely to be located on a side road, i.e., on the first candidate road.

[0089] As shown above, the attribute matching degree of the first candidate road is higher than that of the second candidate road. Setting the weight of the first candidate road to be higher than that of the second candidate road also indicates that the first candidate road is more likely to become the user's actual navigation destination.

[0090] Example 2:

[0091] Suppose a user provides a navigation starting point. We can obtain the user's historical movement trajectory over a period of time prior to that starting point, which can be derived from the user's GPS location. Assuming the trajectory shows that the user was traveling in a north-northeast direction at a certain speed before reaching the navigation starting point, the attributes of the obtained route points can be considered to include: the user's speed and trajectory direction over a period of time prior to reaching the route point; that is, the user traveled to the route point at a certain speed and in a certain direction.

[0092] Here's an explanation: the "route point attributes" include a special case, which can include some of the user's own attributes uploaded when entering the route point, such as the user's travel speed, travel direction, altitude, and the user's usual origin and destination information, as mentioned above; it can also include some selection information from the user when entering the route point, such as the user can choose a label like "I am on the auxiliary road" or "I want to go to the auxiliary road" as auxiliary reference information for weight setting.

[0093] The road attributes of the candidate roads can include road direction, distance between the road and route points, etc. For example, in the candidate road set (link11, link12, link14, and link17) corresponding to the navigation starting point, link12 is a northeast-facing road, and link14 is a southeast-facing road. Furthermore, the distance between link11 and the navigation starting point (minimum Earth spherical distance), and the distance between link12 and the navigation starting point can also be obtained.

[0094] Then, the attributes of the aforementioned roads are compared with those of the navigation starting point to determine their matching degree. Since the navigation starting point's trajectory direction for a period of time was north-southeast, this direction aligns with the road direction of link12, but not with the road directions of other candidate roads. Therefore, although link11 is closer to the navigation starting point, considering that the user's trajectory direction is more consistent with the road direction of link12, link12 has a higher attribute matching degree with the navigation starting point, and its weight is set higher than that of link11. In this example, link12 can be called the first candidate road, and link11 the second candidate road. The higher weight of link12 indicates that the navigation starting point is more likely to be on link12.

[0095] Other examples will not be detailed here. In other examples, road attributes can also include the road type of the candidate road, such as an overpass, tunnel, or ordinary urban arterial road. If the user's historical travel trajectory for a route point is a loop with intersections, then an overpass might have a higher weight because its road shape matches the trajectory better and is more likely to be selected as a road matching the route point. Alternatively, in other examples, the user could choose to use an overpass or other methods.

[0096] As described above, the weight determination in this embodiment can be based on the attribute matching degree between the road attributes of the candidate road and the attributes of the route point. The road attributes or route point attributes mentioned here can include a wide range of content, and this embodiment does not impose any limitations. For example, the "road type / road direction", "historical travel trajectory corresponding to the route point", or "the type of the route point is a shop" listed in the example above, etc. The specific content included in the attributes can be determined based on "the factors considered when judging whether a candidate road is a road that matches the route point". For example, it can also be based on some attribute information provided by the user who inputs the route point, such as the user's travel speed and travel direction at the route point location, and the road direction of the candidate road. If it is believed that the user is likely to continue traveling along the road direction based on the user's speed and travel direction, then the weight of the candidate road in that road direction can be set higher. The higher the attribute matching degree between the candidate road and the route point, the higher the correlation between the route point and the candidate road. This higher correlation can be understood as the same as the meaning of "the greater the matching probability between the candidate road and the corresponding route point" mentioned above.

[0097] Furthermore, in this embodiment, the road attributes and / or route point attributes obtained when determining the weights of candidate roads can differ for different sets of candidate roads corresponding to different route points. For example, when determining the weights of candidate roads in the set of candidate roads corresponding to the navigation starting point, attributes such as the user's historical travel trajectory corresponding to the route point can be obtained; while when determining the weights of candidate roads in the set of candidate roads corresponding to the navigation destination, attributes such as the POI type (e.g., shops) of the route point can be obtained. That is, for different route points, the road attributes of the candidate roads being compared and the route point attributes can be different; both can be different, or only one can be different. It is understood that this embodiment does not limit the selected attributes for different route points to be different; of course, they can also be the same, without restriction.

[0098] The aforementioned method of obtaining different attributes when determining the weights of candidate roads for different route points has the advantage of allowing for the selection of more comprehensive and optimal attributes based on the characteristics of different route points, thus making the weight determination more accurate. For example, for a route point like a navigation start point, the user may be in motion at that point. Combining this with attributes such as the user's historical travel trajectory or travel speed may lead to a more accurate selection of matching candidate roads, such as choosing a road whose direction matches the trajectory direction in the previous example. Similarly, for a route point like a navigation destination, the user's input is usually a static location. In this case, static attributes can be considered, such as the destination being a shop POI, to determine the type of road the shop is more likely to be located on. In summary, different attributes can be considered for different weight determinations. This specification only lists some examples; in actual implementation, more attribute factors can be incorporated based on the specific business situation.

[0099] For the candidate road set "link11, link12, link14, and link17" corresponding to the navigation starting point, after determining the weights and sorting them according to the weights, the sorting result is: link12——link17——link11——link14. That is, link12 has the highest weight, and the weights decrease sequentially until link14 has the lowest weight.

[0100] For the candidate road sets corresponding to the navigation destination "North Gate and West Gate of Park A", after determining the weights and sorting according to the weights, the sorting results are as follows:

[0101] The weighted order of the North Gate set is: link27——link22——link21——link23.

[0102] Westgate set weight sorting: link22——link24——link26——link21

[0103] The candidate road set corresponding to the waypoints is processed in the same way as described above, and will not be described again in this embodiment.

[0104] In step 204, for the candidate road sets corresponding to the navigation start point, navigation end point, and waypoints, respectively, all candidate roads in each set are selected for supplementary road processing.

[0105] This embodiment takes the example of adding roads to all candidate roads in the set. Optionally, in other examples, road addition can be performed on only some candidate roads. It is understood that even if all candidate roads are added, according to the road addition rules, there may be situations where no suitable road needs to be added. Therefore, some candidate roads may not have any additional candidate roads added after road addition.

[0106] The road supplementation step in this process involves adding roads that can participate in the navigation route calculation with the same priority as the candidate road. In practice, roads associated with the location of the route points can be obtained from the road network information database based on the road information of the candidate roads and / or the attribute information of the route points. The attribute information of the route points used for road supplementation may differ from the attributes used for determining the weights mentioned earlier; this embodiment does not impose limitations, and the attribute information of the route points described here is used as a reference for road supplementation.

[0107] The following are some examples of road repair, but actual implementation is not limited to these:

[0108] Example 1

[0109] The attribute information of the obtained route points can include: the location of the route points.

[0110] For example, if the user sets the navigation start point or destination at an intersection, the road connected to that intersection can be considered as a supplementary candidate road. This supplementary candidate road is a road associated with the route point location, and this association refers to a connection relationship.

[0111] Example 2

[0112] The attribute information of the obtained route points can include: the POI type of the route point.

[0113] For example, if a user sets a toll station or highway exit as the navigation start or end point, then accessible closed highway sections and non-closed ordinary roads within a certain range of that toll station or exit can be used as supplementary candidate roads. These supplementary candidate roads are also roads associated with the route point location, and this location association is based on accessibility.

[0114] Example 3

[0115] The attribute information of the obtained route points can include: the POI type of the route point.

[0116] For example, if the user sets the navigation start point or destination as an interchange, then the roads that make up the interchange and the roads connected to the interchange can be considered as supplementary candidate roads. These supplementary candidate roads are also roads associated with the route point location, and this location association is that they are connected to the route point "interchange".

[0117] Example 4

[0118] The road information obtained for candidate roads may include: the road name of the candidate road.

[0119] For example, if the names of candidate roads undergoing supplementary road processing are known, roads with the same name that meet certain criteria can be used as supplementary candidate roads. These roads with the same name can typically be multiple connected links.

[0120] Example 5

[0121] The road information obtained for candidate roads may include: the road location, and the topological connection relationship between the candidate road and other surrounding roads.

[0122] For example, based on the location of a candidate road and its topological connections with other surrounding roads, roads adjacent to and connected to the candidate road can be selected as supplementary candidate roads. These "other surrounding roads" typically refer to roads within a certain distance of the candidate road, generally close, and directly or indirectly connected to it. The supplementary candidate road is associated with the route point location because it is adjacent to and connected to the candidate road, and since the candidate road is close to the route point, the supplementary candidate road is also reachable within a certain range.

[0123] Example Six

[0124] The road information obtained for candidate roads may include the distance between the candidate road and the route point.

[0125] For example, based on the distance between the candidate road and the route point, another road that is also at the stated distance (or very close to that distance) can be selected as a supplementary candidate road. This supplementary candidate road is associated with the route point location because it is also relatively close to the route point.

[0126] The above lists some road supplementation rules. In actual implementation, these road information and attribute information can be combined to determine supplementary candidate roads. Alternatively, other considerations not mentioned can also be used for road supplementation; this embodiment does not impose any restrictions.

[0127] Taking the navigation destination as the north and west gates of Park A as an example, in the previous steps, the north gate set and the west gate set have been sorted by weight. This step performs supplementary road processing on each candidate road in these two sets, as follows:

[0128] 1) Meet at the North Gate:

[0129] For link27: link22 has been added as a supplementary candidate road;

[0130] For link22: No additional candidate roads were added;

[0131] For link21: No additional candidate roads were added;

[0132] For link23: link21 and link27 have been added as supplementary candidate roads.

[0133] 2) Meet at the West Gate:

[0134] For link22: No additional candidate roads were added;

[0135] For link24: link26 has been added as a supplementary candidate road;

[0136] For link26: link22 and link24 have been added as supplementary candidate roads;

[0137] For link21: No additional candidate roads were added.

[0138] By merging the two sets of roads from the West Gate and North Gate that have been completed, we obtain the candidate road set corresponding to the navigation destination Park A as follows:

[0139] First in the sort: link27, link22, link22 (link22 and link22 here have different sources, one from the North Gate and the other from the West Gate. Their corresponding projection positions are different, which will result in different specific locations for the user's navigation endpoint. They are not duplicates.)

[0140] The second link in the sequence is: link22, link24, link26.

[0141] Third in the sort: link21, link26, link22, link24

[0142] The fourth link in the sequence is: link23, link21, link27, link21.

[0143] In addition, depending on the scenario, each route point can be deduplicated and then integrated (for example, for the North Gate point, after link2 has been calculated in the first position, the second position does not need to be calculated again, and this duplicate road can also be removed).

[0144] In step 206, based on the weights, a subset of candidate roads are selected from the candidate road sets corresponding to the navigation start point, navigation end point, and waypoints respectively for route planning to obtain the navigation route.

[0145] As described above, after weight sorting and supplementary path processing, for each route point, the candidate roads in its candidate road set have been sorted, for example, sorted first, sorted second, etc. Each sorted position can include the candidate road, and can also include supplementary candidate roads obtained by supplementary path processing of the candidate road.

[0146] This step involves calculating the navigation route. Route planning can be performed by selecting a subset of candidate roads from the sets corresponding to the navigation start point, navigation destination, and waypoints. The first-ranked candidate road set in each set can be selected for the calculation. For example, in the example above, for the candidate road set of the navigation destination, the first-ranked "link27, link22, link22" can be selected for navigation calculation. Similarly, the first-ranked candidate road sets can also be selected from the sets of navigation start points and waypoints.

[0147] If the navigation route is successfully calculated using the first-ranked candidate road set, the process can stop, and the second or third-ranked candidate roads will no longer be used. If route planning fails, it's necessary to determine whether the failure occurred in calculating the navigation start point, the navigation destination, or any waypoints. If the navigation destination failed, the second-ranked candidate road (link24, link26) from the candidate road set corresponding to the navigation start point can be selected, along with a subset of candidate roads from the candidate road sets corresponding to other route points (such as the navigation destination and waypoints), to recalculate the navigation route. This process is repeated until the navigation route is successfully calculated, or if the failure persists after changing candidate roads a certain number of times, the user can be notified of a "navigation failure."

[0148] As can be seen above, based on the weight, at least one candidate road corresponding to the first weight (e.g., the weight of the candidate road ranked first) in the candidate road set corresponding to the route point can be selected to participate in route planning. If route planning fails, at least one candidate road corresponding to the second weight (e.g., the weight of the candidate road ranked second) in the candidate road set corresponding to the route point can be selected to participate in route planning. The second weight is less than the first weight.

[0149] The navigation route determination method in this embodiment considers not only the distance between roads and route points and the weight ranking of roads when determining candidate roads for navigation route calculation, but also performs road supplementation processing on the searched candidate roads. This supplementation processing makes the set of candidate roads for navigation route calculation more comprehensive and complete, which helps to calculate a better navigation route. Furthermore, this method considers more road attributes and route point attributes when determining weights and in the road supplementation processing, making weight determination and road supplementation processing more accurate.

[0150] Figure 5 An example navigation route determination apparatus is provided, which can be applied to implement the methods of any embodiment of this specification. For example... Figure 5 As shown, the device may include: an information acquisition module 51, a road search module 52, a road sorting module 53, a road replenishment processing module 54, and a route calculation module 55.

[0151] The information acquisition module 51 is used to acquire at least two route points given on the navigation route, the at least two route points including the navigation start point and the navigation end point.

[0152] The road search module 52 is used to search the road network information database for each route point and obtain at least one candidate road whose distance to the route point meets the distance condition, so as to obtain the candidate road set corresponding to the route point.

[0153] The road sorting module 53 is used to determine the weight of each candidate road in the candidate road set corresponding to each route point. The higher the weight, the greater the probability that the corresponding candidate road belongs to the navigation route.

[0154] The supplementary path processing module 54 is used to perform supplementary path processing for each candidate road in at least a portion of the candidate roads, supplementing the candidate road with a supplementary candidate road, wherein the supplementary candidate road has the same weight and priority as the corresponding candidate road.

[0155] The route calculation module 55 is used to select a portion of candidate roads from the candidate road set corresponding to each route point according to the weights to perform route planning and obtain the navigation route.

[0156] In some examples, the at least two route points further include: waypoints of the navigation route. The route calculation module 55, when selecting a subset of candidate roads from the candidate road sets corresponding to each route point for route planning to obtain the navigation route, includes: selecting a subset of candidate roads from the candidate road sets corresponding to the navigation start point, navigation end point, and waypoints for route planning according to the weights to obtain the navigation route.

[0157] In some examples, the road search module 52, when searching the road network information database for at least one candidate road whose distance to the route point meets the distance condition, and obtaining a set of candidate roads corresponding to the route point, includes: when the given route point is a point of interest (POI) and the POI includes at least two sub-route points, for each sub-route point, obtaining at least one candidate road from the road network information database whose distance to the sub-route point meets the distance condition, and obtaining a set of candidate roads corresponding to the sub-route point; the method further includes: before selecting a portion of the candidate roads from the set of candidate roads corresponding to each route point for route planning to obtain the navigation route, merging the set of candidate roads corresponding to the at least two sub-route points respectively, to obtain the set of candidate roads corresponding to the route point.

[0158] In some examples, the road sorting module 53, when determining the weight of each candidate road in the candidate road set, includes: for a first candidate road and a second candidate road included in the candidate road set: in response to the attribute matching degree of the first candidate road being higher than that of the second candidate road, setting the weight of the first candidate road to be higher than that of the second candidate road; the attribute matching degree is used to indicate whether the road attribute of the candidate road matches the attribute of the route point corresponding to the candidate road set, and the higher the attribute matching degree, the higher the correlation between the route point and the candidate road.

[0159] In some cases, the candidate road sets corresponding to different route points have different road attributes and / or route point attributes when determining the weights of the candidate roads.

[0160] In some examples, the road attributes include at least one of the following: the road type, road direction, and road location of the candidate road.

[0161] In some examples, the road supplementation processing module 54, when performing road supplementation processing for each candidate road in at least a portion of the candidate roads to supplement the candidate road with supplementary candidate roads, includes: obtaining a portion of the roads associated with the location of the route points from the road network information database as supplementary candidate roads based on the road information of the candidate road, the topological connection relationship between the candidate road and other surrounding roads, and / or the attribute information of the corresponding route points.

[0162] In some examples, the route calculation module 55, when performing route planning by selecting a portion of candidate roads from the candidate road set corresponding to each route point according to the weight, includes: for one route point, selecting at least one candidate road corresponding to a first weight from the candidate road set corresponding to the route point to participate in route planning; in response to determining that the route planning has failed, selecting at least one candidate road corresponding to a second weight from the candidate road set corresponding to the route point to re-perform route planning, wherein the second weight is less than the first weight.

[0163] For the device embodiments, since they basically correspond to the method embodiments, the relevant parts can be referred to in the description of the method embodiments. The device embodiments described above are merely illustrative. The modules described as separate components may or may not be physically separate, and the components shown as modules may or may not be physical modules, that is, they may be located in one place or distributed across multiple network modules. Some or all of the modules can be selected to achieve the purpose of the solution in this specification according to actual needs. Those skilled in the art can understand and implement this without creative effort.

[0164] This specification also provides an electronic device, which may include a processor and a memory for storing executable instructions of the processor. The processor, by executing the executable instructions, can implement the navigation route determination method of any embodiment of this specification.

[0165] like Figure 6 As shown, Figure 6 This specification illustrates a hardware structure diagram of an electronic device according to an embodiment of the present specification. The device may include: a processor 610, a memory 620 for storing processor-executable instructions, an input / output interface 630, a communication interface 640, and a bus 650. The processor 610, memory 620, input / output interface 630, and communication interface 640 are internally connected to each other via the bus 650.

[0166] The processor 610 can be implemented using a general-purpose CPU (Central Processing Unit), microprocessor, application-specific integrated circuit (ASIC), or one or more integrated circuits, and executes the executable instructions to implement the technical solutions provided in the embodiments of this specification.

[0167] The memory 620 can be implemented in the form of ROM (Read Only Memory), RAM (Random Access Memory), static storage device, dynamic storage device, etc. The memory 620 can store the operating system and other applications. When the technical solutions provided in the embodiments of this specification are implemented by software or firmware, the relevant program code is stored in the memory 620 and is called and executed by the processor 610.

[0168] The input / output interface 630 is used to connect input / output modules to enable information input and output. Input / output modules can be configured as components within the device (not shown in the figure) or externally connected to the device to provide corresponding functions. Input devices may include keyboards, mice, touchscreens, microphones, various sensors, etc., while output devices may include displays, speakers, vibrators, indicator lights, etc.

[0169] The communication interface 640 is used to connect a communication module (not shown in the figure) to enable communication between this device and other devices. The communication module can communicate via wired means (e.g., USB, Ethernet cable) or wireless means (e.g., mobile network, Wi-Fi, Bluetooth).

[0170] Bus 650 includes a pathway for transmitting information between various components of the device, such as processor 610, memory 620, input / output interface 630, and communication interface 640.

[0171] It should be noted that although the above-described device only shows the processor 610, memory 620, input / output interface 630, communication interface 640, and bus 650, in specific implementations, the device may also include other components necessary for normal operation. Furthermore, those skilled in the art will understand that the above-described device may only include the components necessary for implementing the embodiments of this specification, and not necessarily all the components shown in the figures.

[0172] This specification also provides a computer-readable storage medium through its embodiments. For example... Figure 7 As shown, the storage medium stores a computer program 701, which, when executed by a processor, can perform a navigation route determination method according to any embodiment of this specification.

[0173] Computer-readable media, including both permanent and non-permanent, removable and non-removable media, can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, disk storage, quantum memory, graphene-based storage media or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.

[0174] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0175] The foregoing has described specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired result. In some embodiments, multitasking and parallel processing are possible or may be advantageous.

[0176] The terminology used in one or more embodiments of this specification is for the purpose of describing particular embodiments only and is not intended to limit the scope of one or more embodiments of this specification. The singular forms “a,” “described,” and “the” used in one or more embodiments of this specification and in the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used herein refers to and includes any or all possible combinations of one or more associated listed items.

[0177] It should be understood that although the terms first, second, third, etc., may be used to describe various information in one or more embodiments of this specification, such information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another. For example, first information may also be referred to as second information without departing from the scope of one or more embodiments of this specification, and similarly, second information may also be referred to as first information. Depending on the context, the word "if" as used herein may be interpreted as "when," "in response to a determination," or "when," or "in the event of a determination."

[0178] The above description is merely a preferred embodiment of one or more embodiments of this specification and is not intended to limit the scope of one or more embodiments of this specification. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of one or more embodiments of this specification should be included within the protection scope of one or more embodiments of this specification.

Claims

1. A method of determining a navigation route, characterized by, The method includes: Obtain at least two route points on the given navigation route, the at least two route points including the navigation start point and the navigation end point; For each route point, at least one candidate road that meets the distance condition between the route point and the road network information database is searched to obtain the candidate road set corresponding to the route point; For each route point, a set of candidate roads is set, and the weight of each candidate road in the set is determined. The higher the weight, the greater the probability of matching the candidate road with the corresponding route point. For each candidate road in at least a subset of candidate roads, supplementary candidate roads are added to supplement the candidate road. The supplementary candidate roads have the same weight priority as the corresponding candidate road. The supplementary candidate roads refer to adding roads that can participate in the navigation route calculation with the same priority as the candidate road. The candidate road set after the supplementary road processing has multiple sorting positions according to the weight, and at least one sorting position includes the candidate road that was initially located in the candidate road set and at least one of the supplementary candidate roads. Based on the weights, a subset of candidate roads are selected from the candidate road set corresponding to each route point for route planning to obtain the navigation route.

2. The method according to claim 1, characterized in that, The at least two route points also include: the waypoints of the navigation route; The step of selecting a portion of candidate roads from the candidate road sets corresponding to each route point according to the weights and performing route planning to obtain the navigation route includes: selecting a portion of candidate roads from the candidate road sets corresponding to the navigation start point, navigation end point, and waypoints according to the weights and performing route planning to obtain the navigation route.

3. The method of claim 1, wherein, The process involves searching the road network information database to obtain at least one candidate road whose distance to the route point meets the distance condition, thus obtaining a set of candidate roads corresponding to the route point, including: Given that the given route point is a point of interest (POI) and the POI includes at least two sub-route points, for each sub-route point, at least one candidate road that meets the distance condition between the sub-route point and the road network information database is obtained to obtain the candidate road set corresponding to the sub-route point. The method further includes: before selecting a portion of candidate roads from the candidate road sets corresponding to each route point for route planning to obtain the navigation route, merging the candidate road sets corresponding to the at least two sub-route points to obtain the candidate road set corresponding to the route point.

4. The method of claim 1, wherein, The step of determining the weight of each candidate road in the candidate road set includes: For the first candidate road and the second candidate road included in the candidate road set: in response to the attribute matching degree of the first candidate road being higher than that of the second candidate road, the weight of the first candidate road is set to be higher than that of the second candidate road.

5. The method of claim 4, wherein, Different route points correspond to different sets of candidate roads. When determining the weight of a candidate road, the road attributes of the candidate road and / or the attributes of the route point are different.

6. The method of claim 4, wherein, The candidate roads in the candidate road set include at least one of the following road attributes: road type, road direction, and road location.

7. The method of claim 1, wherein, The process of performing supplementary road processing on each candidate road from at least a subset of candidate roads, supplementing the candidate roads with corresponding supplementary candidate roads, includes: Based on the road information of the candidate roads, the topological connection relationship between the candidate roads and other surrounding roads, and / or the attribute information of the corresponding route points, a portion of the roads associated with the location of the route points are obtained from the road network information database as supplementary candidate roads.

8. The method according to claim 1, characterized in that, The step of selecting a subset of candidate roads from the candidate road set corresponding to each route point based on the weights to perform route planning and obtain the navigation route includes: For one of the route points, at least one candidate road corresponding to the first weight is selected from the candidate road set corresponding to the route point to participate in route planning; In response to determining that the route planning has failed, at least one candidate road corresponding to the second weight is selected from the candidate road set corresponding to the route point to re-plan the route, where the second weight is less than the first weight.

9. A device for determining a navigation route, characterized in that, The device includes: The information acquisition module is used to acquire at least two route points given on the navigation route, wherein the at least two route points include a navigation start point and a navigation end point; The road search module is used to search the road network information database for each route point and obtain at least one candidate road whose distance to the route point meets the distance condition, so as to obtain the candidate road set corresponding to the route point. The road sorting module is used to determine the weight of each candidate road in the candidate road set corresponding to each route point. The higher the weight, the greater the probability that the corresponding candidate road belongs to the navigation route. The route supplementation module is used to perform route supplementation processing for each candidate road in at least a portion of the candidate roads, supplementing the candidate road with a corresponding supplementary candidate road, wherein the supplementary candidate road has the same weight priority as the corresponding candidate road; supplementing the candidate road with a corresponding supplementary candidate road means adding a road that can participate in the navigation route calculation with the candidate road as having the same priority; the candidate road set after route supplementation processing has multiple sorting positions according to weight, and at least one sorting position includes a candidate road initially located in the candidate road set and at least one of the supplementary candidate roads; The route calculation module is used to select a portion of candidate roads from the candidate road set corresponding to each route point according to the weights to perform route planning and obtain the navigation route.

10. An electronic device, comprising: include: processor; Memory used to store processor-executable instructions; The processor implements the method as described in any one of claims 1-8 by executing the executable instructions.

11. A computer readable storage medium having stored thereon computer instructions, wherein, When executed by the processor, this instruction implements the steps of the method as described in any one of claims 1-8.

Citation Information

Patent Citations

  • Map matching correction method and device, equipment and storage medium

    CN110426050A