IP Library Granted Patent US 12669340
Granted Patent B2
US 12669340 · App. 18/647,820 · Granted Jun 30, 2026

Generating local graph data

Inventors: Andrew Baker (North Hollywood, CA); Rasmus Fonseca (Boulder Creek, CA); Ravi Gogna (San Jose, CA); Joona Markus Petteri Kiiski (Cupertino, CA); Swapnil Vikas Mankar (Union City, CA); Mark Jonathon McClelland (San Francisco, CA)
Assignee: Zoox, Inc.
G01C21/3446G01C21/3453B60W60/001B60W2552/05B60W2552/10B60W2555/60B60W2556/40
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 12669340
App. No.
18/647,820
Granted
Jun 30, 2026
Kind
B2
Abstract

Techniques for generating a local graph are described herein. A vehicle may receive a destination and generate a preferred path thereto. The vehicle may generate a local graph based on the preferred path which may define a subregion of the environment within which the vehicle may perform dynamic routing operations. For example, the vehicle may determine a local boundary which may define the subregion. Further, the vehicle may identify one or more junction(s) located within the local boundary and identify candidate (or alternative) driving lane(s) exiting such junction(s). The vehicle may generate a lane reference (e.g., optimized trajectory for the vehicle to follow to the destination) for each candidate driving lane. In such cases, the local boundary, the candidate driving lanes, and/or lane reference(s) may be data represented in the local graph. The vehicle may be controlled based on the local graph.

Claims (79)

1 . A system comprising:

one or more processors; and

one or more non-transitory computer-readable media storing computer-executable instructions that, when executed, cause the system to perform operations comprising:

receiving a destination associated with an environment;

receiving a preferred path for a vehicle to follow to the destination;

generating, based at least in part on the preferred path, a local graph, wherein generating the local graph is based at least in part on:

determining a region of the environment;

identifying, based at least in part on map data, a junction within the region;

identifying a candidate driving lane associated with the junction; and

receiving, from a database that stores a plurality of lowest cost paths to a destination from different locations within the environment, a candidate path from the candidate driving lane to the destination; and

controlling the vehicle based at least in part on the local graph.

2 . The system of claim 1 , wherein the candidate path is at least one of:

a lowest cost path from the candidate driving lane to the destination, or

a trajectory for the vehicle to use to navigate to the destination.

3 . The system of claim 1 , wherein determining the local graph is based at least in part on:

receiving the map data associated with the environment;

identifying a position of the vehicle in the map data;

determining a plurality of candidate driving lanes associated with the junction; and

determining a plurality of lowest cost paths associated with the plurality of candidate driving lanes.

4 . The system of claim 1 , wherein the region extends a first distance in front of the vehicle and a second distance behind the vehicle, wherein the first distance is larger than the second distance.

5 . The system of claim 4 , wherein the first distance and the second distance are determined based at least in part on:

a speed limit associated with a driving lane within the region, or

a type of driving lane.

6 . One or more non transitory computer readable media storing instructions executable by one or more processors, wherein the instructions, when executed, cause a system to perform operations comprising:

receiving a destination associated with an environment;

receiving a preferred path for a vehicle to follow to the destination;

generating a local graph based at least in part on:

determining a region of the environment proximate the vehicle;

determining a junction within the region;

determining a plurality of candidate driving lanes associated with the junction; and

determining, for a candidate driving lane of the plurality of candidate driving lanes and from a database that stores a plurality of lowest cost paths to a destination from different locations within the environment, a candidate path to the destination when following the candidate driving lane; and

controlling the vehicle based at least in part on the local graph.

7 . The one or more non transitory computer readable media of claim 6 , wherein the candidate path is at least one of:

a lowest cost path from the candidate driving lane to the destination, or

a trajectory for the vehicle to use to navigate to the destination.

8 . The one or more non transitory computer readable media of claim 6 , wherein determining the local graph is based at least in part on:

receiving map data associated with the environment;

identifying a position of the vehicle in the map data; and

determining a plurality of lowest cost paths associated with the plurality of candidate driving lanes.

9 . The one or more non transitory computer readable media of claim 6 , wherein the region extends a first distance in front of the vehicle and a second distance behind the vehicle.

10 . The one or more non transitory computer readable media of claim 9 , wherein the first distance is determined based at least in part on:

a speed limit associated with a driving lane within the region, or

a type of driving lane.

11 . The one or more non transitory computer readable media of claim 6 , wherein controlling the vehicle based on the local graph comprises:

determining that the preferred path includes an obstruction;

identifying, based at least in part on the obstruction and a cost associated with the candidate path, the candidate driving lane from the local graph; and

controlling the vehicle based at least in part on the candidate driving lane.

12 . The one or more non transitory computer readable media of claim 6 , wherein the local graph is a first local graph, the operations further comprising:

generating, based at least in part on a movement of the vehicle after the first local graph was generated, a second local graph that is associated with a second region of the environment that is different than the region of the environment covered by the first local graph.

13 . The one or more non transitory computer readable media of claim 12 , wherein generating the second local graph is based at least in part on:

identifying a second junction within the second region;

determining that the second junction is located within the first local graph; and

receiving, from a database and based at least in part on the second junction being located within the first local graph, candidate driving lane data, candidate path data, and trajectory data associated with the second junction.

14 . A method comprising:

receiving a destination associated with an environment;

receiving a preferred path for a vehicle to follow to the destination;

generating a local graph based at least in part on:

determining a region of the environment proximate the vehicle;

determining a junction within the region;

determining a plurality of candidate driving lanes associated with the junction; and

determining, for a candidate driving lane of the plurality of candidate driving lanes and from a database that stores a plurality of lowest cost paths to a destination from different locations within the environment, a candidate path to the destination when following the candidate driving lane; and

controlling the vehicle based at least in part on the local graph.

15 . The method of claim 14 , wherein the candidate path is at least one of:

a lowest cost path from the candidate driving lane to the destination, or

a trajectory for the vehicle to use to navigate to the destination.

16 . The method of claim 14 , wherein determining the local graph is based at least in part on:

receiving map data associated with the environment;

identifying a position of the vehicle in the map data; and

determining a plurality of lowest cost paths associated with the plurality of candidate driving lanes.

17 . The method of claim 14 , wherein the region extends a first distance in front of the vehicle and a second distance behind the vehicle.

18 . The method of claim 17 , wherein the first distance is determined based at least in part on:

a speed limit associated with a driving lane within the region, or

a type of driving lane.

19 . The method of claim 14 , wherein controlling the vehicle based on the local graph comprises:

determining that the preferred path includes an obstruction;

identifying, based at least in part on the obstruction and a cost associated with the candidate path, the candidate driving lane from the local graph; and

controlling the vehicle based at least in part on the candidate driving lane.

20 . The method of claim 14 , wherein the local graph is a first local graph, further comprising:

generating, based at least in part on a movement of the vehicle after the first local graph was generated, a second local graph that is associated with a second region of the environment that is different than the region of the environment covered by the first local graph.