IP Library Granted Patent US 11,566,909
Granted Patent B2
US 11,566,909 · App. 17/068,598 · Granted Jan 31, 2023

Systems and methods for optimal path determination using contraction hierarchies with turn costs

Inventors: Jefferson Ray Tan Hidayat (Christchurch, NZ); Nathan M. Robinson (Christchurch, NZ)
Assignee: Verizon Patent and Licensing Inc.
G01C21/3446G01C21/3453
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,566,909
App. No.
17/068,598
Granted
Jan 31, 2023
Kind
B2
Abstract

A system described herein may provide a technique for selectively adding or forgoing adding shortcut links to a node map using contraction hierarchy techniques based on turn costs. “Useful” turn pairs for a given path through a shortcut link may include a turn into a first node of the shortcut link and a turn out of a second node of the shortcut link, where no alternative lower cost paths (including such “useful” turn pairs) from the first node to the second node are available. The useful turn pairs for a shortcut link may be used to evaluate super shortcut links that includes the shortcut link with identified useful turn pairs. For example, a search for alternative lower cost paths may need not be performed for paths, associated with the super shortcut link, which do not include a turn from the useful turn pairs of the component shortcut link.

Claims (102)

1. A device, comprising:

one or more processors configured to:

receive information indicating a first link between a first node and a second node, wherein the first link is associated with:

a first set of turns into the first node,

a second set of turns out of the second node, and

a first plurality of turn pairs that each include one turn of the first set of turns and one turn of the second set of turns;

identify at least one of:

a first set of turn pairs, of the first plurality of turn pairs associated with the first link, that are valid with respect to the first link, or

a second set of turn pairs, of the first plurality of associated with the first link, that are invalid with respect to the first link;

generate a second link between the first node and a third node, wherein the second link further includes the first link, wherein the second link is associated with a second plurality of turn pairs;

identify, based on the first set of turn pairs or the second set of turn pairs, at least one of:

a third set of turn pairs, of the second plurality of turn pairs, that are potentially valid with respect to the second link, or

a fourth set of turn pairs, of the second plurality of turn pairs, that are invalid with respect to the second link;

search for alternative paths between the first node and the third node, the search including searching based on the third set of potentially valid turn pairs without searching based on the fourth set of turn pairs;

generate a node map that includes at least the first node, the second node, and the third node, wherein generating the node map includes:

omitting the second link from the node map when the search based on the third set of turn pairs indicates that at least one alternative path exists between the first node and the second node; and

including the second link in the node map when the search based on the third set of turn pairs indicates that no alternative paths exist between the first node and the second node;

receive a request for navigation instructions from a starting point to a destination;

identify a path, via the generated node map, from the starting point to the destination, wherein the path includes at least one of the first node, the second node, or the third node; and

provide, in response to the request for navigation instructions, a set of navigation instructions associated with the identified path via the generated node map.

2. The device of claim 1 , wherein searching for alternative paths includes at least one of:

searching for alternative paths that do not include the first link, or

searching for alternative paths that do not include the second link.

3. The device of claim 1 , wherein the third set of turn pairs includes a particular turn pair, wherein searching for alternative paths includes searching for alternative paths that match the particular turn pair.

4. The device of claim 3 , wherein the particular turn pair is associated with a first cost with respect to the second link, wherein the particular turn pair is associated with a second cost with respect to a particular candidate alternative path,

wherein searching for the alternative paths includes:

determining whether the first cost is higher than the second cost, and

determining that at least one alternative path exists when the first cost is higher than the second cost.

5. The device of claim 1 , wherein the first link between the first node and the second node represents at least two links and a fourth node.

6. The device of claim 1 , wherein identifying the first set of turn pairs, of the first plurality of turn pairs associated with the first link, that are valid with respect to the first link, includes:

identifying that the first link, with the first set of turn pairs, is associated with a particular path that includes a particular turn pair of the first set of turn pairs, and is a path from the first node to the second node; and

identifying that the particular path has a lowest path cost of all possible paths, that include the particular turn pair, from the first node to the second node.

7. The device of claim 1 , wherein identifying that the third set of turn pairs are potentially valid with respect to the second link includes at least one of:

determining that a particular turn, of the third set of turn pairs, is a same turn as a particular turn of the third set of turn pairs, or

determining that the particular turn, of the third set of turn pairs, is not included in the fourth set of turn pairs.

8. A non-transitory computer-readable medium, storing a plurality of processor-executable instructions to:

receive information indicating a first link between a first node and a second node, wherein the first link is associated with:

a first set of turns into the first node,

a second set of turns out of the second node, and

a first plurality of turn pairs that each include one turn of the first set of turns and one turn of the second set of turns;

identify at least one of:

a first set of turn pairs, of the first plurality of turn pairs associated with the first link, that are valid with respect to the first link, or

a second set of turn pairs, of the first plurality of associated with the first link, that are invalid with respect to the first link;

generate a second link between the first node and a third node, wherein the second link further includes the first link, wherein the second link is associated with a second plurality of turn pairs;

identify, based on the first set of turn pairs or the second set of turn pairs, at least one of:

a third set of turn pairs, of the second plurality of turn pairs, that are potentially valid with respect to the second link, or

a fourth set of turn pairs, of the second plurality of turn pairs, that are invalid with respect to the second link;

a search for alternative paths between the first node and the third node, the search including searching based on the third set of potentially valid turn pairs without searching based on the fourth set of turn pairs;

generate a node map that includes at least the first node, the second node, and the third node, wherein generating the node map includes:

omitting the second link from the node map when the search based on the third set of turn pairs indicates that at least one alternative path exists between the first node and the second node; and

including the second link in the node map when the search based on the third set of turn pairs indicates that no alternative paths exist between the first node and the second node;

receive a request for navigation instructions from a starting point to a destination;

identify a path, via the generated node map, from the starting point to the destination, wherein the path includes at least one of the first node, the second node, or the third node; and

provide, in response to the request for navigation instructions, a set of navigation instructions associated with the identified path via the generated node map.

9. The non-transitory computer-readable medium of claim 8 , wherein searching for alternative paths includes at least one of:

searching for alternative paths that do not include the first link, or

searching for alternative paths that do not include the second link.

10. The non-transitory computer-readable medium of claim 8 , wherein the third set of turn pairs includes a particular turn pair, wherein searching for alternative paths includes searching for alternative paths that match the particular turn pair.

11. The non-transitory computer-readable medium of claim 10 , wherein the particular turn pair is associated with a first cost with respect to the second link, wherein the particular turn pair is associated with a second cost with respect to a particular candidate alternative path,

wherein searching for the alternative paths includes:

determining whether the first cost is higher than the second cost, and

determining that at least one alternative path exists when the first cost is higher than the second cost.

12. The non-transitory computer-readable medium of claim 8 , wherein the first link between the first node and the second node represents at least two links and a fourth node.

13. The non-transitory computer-readable medium of claim 8 , wherein identifying the first set of turn pairs, of the first plurality of turn pairs associated with the first link, that are valid with respect to the first link, includes:

identifying that the first link, with the first set of turn pairs, is associated with a particular path that includes a particular turn pair of the first set of turn pairs, and is a path from the first node to the second node; and

identifying that the particular path has a lowest path cost of all possible paths, that include the particular turn pair, from the first node to the second node.

14. The non-transitory computer-readable medium of claim 8 , wherein identifying that the third set of turn pairs are potentially valid with respect to the second link includes at least one of:

determining that a particular turn, of the third set of turn pairs, is a same turn as a particular turn of the third set of turn pairs, or

determining that the particular turn, of the third set of turn pairs, is not included in the fourth set of turn pairs.

15. A method, comprising:

receiving information indicating a first link between a first node and a second node, wherein the first link is associated with:

a first set of turns into the first node,

a second set of turns out of the second node, and

a first plurality of turn pairs that each include one turn of the first set of turns and one turn of the second set of turns;

identifying at least one of:

a first set of turn pairs, of the first plurality of turn pairs associated with the first link, that are valid with respect to the first link, or

a second set of turn pairs, of the first plurality of associated with the first link, that are invalid with respect to the first link;

generating a second link between the first node and a third node, wherein the second link further includes the first link, wherein the second link is associated with a second plurality of turn pairs;

identifying, based on the first set of turn pairs or the second set of turn pairs, at least one of:

a third set of turn pairs, of the second plurality of turn pairs, that are potentially valid with respect to the second link, or

a fourth set of turn pairs, of the second plurality of turn pairs, that are invalid with respect to the second link;

searching for alternative paths between the first node and the third node, the search including searching based on the potentially valid third set of turn pairs without searching based on the fourth set of turn pairs;

generating a node map that includes at least the first node, the second node, and the third node, wherein generating the node map includes:

omitting the second link from the node map when the search based on the third set of turn pairs indicates that at least one alternative path exists between the first node and the second node; and

including the second link in the node map when the search based on the third set of turn pairs indicates that no alternative paths exist between the first node and the second node;

receiving a request for navigation instructions from a starting point to a destination;

identifying a path, via the generated node map, from the starting point to the destination, wherein the path includes at least one of the first node, the second node, or the third node; and

providing, in response to the request for navigation instructions, a set of navigation instructions associated with the identified path via the generated node map.

16. The method of claim 15 , wherein searching for alternative paths includes at least one of:

searching for alternative paths that do not include the first link, or

searching for alternative paths that do not include the second link.

17. The method of claim 15 , wherein the third set of turn pairs includes a particular turn pair that is associated with a first cost with respect to the second link and is associated with a second cost with respect to a particular candidate alternative path, wherein searching for alternative paths includes:

identifying the particular candidate alternative path that is associated with the particular turn pair;

determining whether the first cost is higher than the second cost; and

determining that at least one alternative path exists when the first cost is higher than the second cost.

18. The method of claim 15 , wherein the first link between the first node and the second node represents at least two links and a fourth node.

19. The method of claim 15 , wherein identifying the first set of turn pairs, of the first plurality of turn pairs associated with the first link, that are valid with respect to the first link, includes:

identifying that the first link, with the first set of turn pairs, is associated with a particular path that includes a particular turn pair of the first set of turn pairs, and is a path from the first node to the second node; and

identifying that the particular path has a lowest path cost of all possible paths, that include the particular turn pair, from the first node to the second node.

20. The method of claim 15 , wherein identifying that the third set of turn pairs are potentially valid with respect to the second link includes at least one of:

determining that a particular turn, of the third set of turn pairs, is a same turn as a particular turn of the third set of turn pairs, or

determining that the particular turn, of the third set of turn pairs, is not included in the fourth set of turn pairs.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 12, 2020
From: HIDAYAT, JEFFERSON RAY TAN; ROBINSON, NATHAN M.
To: VERIZON PATENT AND LICENSING INC.
Reel/Frame 054031/0342 →
Continuity (1)
Related Publication 20220113150A1 · Apr 14, 2022
Cited By (1)
US 12,554,748