IP Library Granted Patent US 12709302
Granted Patent B2
US 12709302 · App. 18/366,202 · Granted Aug 18, 2026

Motion planning

Inventors: Yuxiao Chen (Newark, CA); Sushant Veer (Sunnyvale, CA); Peter Karkus (Zurich, CH); Marco Pavone (Stanford, CA)
Assignee: NVIDIA Corporation
B60W60/0027B60W2554/404B60W2554/4046B60W2554/802
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 12709302
App. No.
18/366,202
Granted
Aug 18, 2026
Kind
B2
Abstract

In various examples, a gradient-based motion planner evaluates a cost function corresponding to routes for a machine and an obstacle to jointly update the routes. The cost function may include terms to penalize deviation from an initial route predicted for the obstacle and acceleration or jerk for the obstacle. The routes for the machine and the obstacle that are updated may be selected using motion classes that characterize relative motion between a route for the machine and a route for the obstacle. A motion class may be based at least on an angular distance between the machine and the agent and free-end homotopy, where members of the class execute the same relative motion with respect to other agents while being continuously transformable to any other member of the class. The members of the class may have the same start point and different end points.

Claims (83)

1 . A system comprising:

one or more processing units to perform operations including:

evaluating, over one or more time steps, a cost function that combines one or more first costs corresponding to at least one first route corresponding to a machine with one or more second costs corresponding to at least one second route corresponding to at least one agent to form one or more cost values corresponding to the cost function;

jointly updating, over the one or more time steps and using the one or more cost values, the at least one first route to at least one updated first route and the at least one second route to at least one updated second route that corresponds to a predicted reaction to the at least one updated first route based at least on determining, using a gradient of the cost function, that the at least one updated first route and the at least one updated second route reduce the cost function;

determining a trajectory for the machine based at least on the jointly updating; and

performing one or more control operations for the machine using the trajectory.

2 . The system of claim 1 , wherein the cost function includes one or more terms that penalize the at least one updated second route based at least on an amount of deviation of the at least one updated second route from the at least one second route corresponding to the at least one agent.

3 . The system of claim 1 , wherein the cost function includes one or more terms that penalize one or more of acceleration or jerk for the at least one updated second route of the at least one agent.

4 . The system of claim 1 , wherein the cost function includes one or more variables that alter a relative distribution of emphasis in the cost function between the machine and the at least one agent.

5 . The system of claim 1 , wherein the jointly updating includes updating the at least one first route and the at least one second route over a plurality of iterations, and the determining the trajectory includes determining a first portion of the trajectory in a first iteration of the plurality of iterations and a second portion of the trajectory in a second iteration of the plurality of iterations.

6 . The system of claim 1 , wherein the operations further include:

categorizing sets of routes for the machine and the at least one agent into a homotopy class based at least on the sets including trajectories for the machine that have a same initial point and a different end point; and

selecting a subset of the sets of the routes for the evaluating, wherein the at least one first route and the at least one second route are included in the subset and the jointly updating constrains the at least one updated second route and the at least one updated first route to the homotopy class.

7 . The system of claim 1 , wherein the operations further include:

categorizing sets of routes for the machine and the at least one agent based at least on angular distances between the machine and the at least one agent to determine categorized sets of the routes; and

selecting a subset of the sets of the routes for the evaluating, wherein the at least one first route and the at least one second route are included in the subset.

8 . The system of claim 1 , wherein jointly updating constrains the at least one updated first route and the at least one updated second route to a motion class selected for a motion plan, the motion class characterizing a relative motion between the machine and the at least one agent.

9 . The system of claim 1 , wherein the at least one second route includes an initial route that represents a trajectory prediction for the at least one agent that is unconditioned on the machine, and the cost function includes one or more terms that penalize the at least one updated second route based at least on an amount of deviation of the at least one updated second route from the initial route.

10 . The system of claim 1 , wherein the system is comprised in at least one of:

a control system for an autonomous or semi-autonomous machine;

a perception system for an autonomous or semi-autonomous machine;

a system for performing simulation operations;

a system for performing digital twin operations;

a system for performing light transport simulation;

a system for performing collaborative content creation for 3D assets;

a system for performing deep learning operations;

a system implemented using an edge device;

a system implemented using a robot;

a system for performing conversational AI operations;

a system implementing one or more language models;

a system implementing one or more large language models (LLMs);

a system for performing one or more generative AI applications;

a system for generating synthetic data;

a system for presenting at least one of virtual reality content, augmented reality content, or mixed reality content;

a system incorporating one or more virtual machines (VMs);

a system implemented at least partially in a data center; or

a system implemented at least partially using cloud computing resources.

11 . A method comprising:

evaluating, over a plurality of time steps, gradients corresponding to a cost function that combines one or more first costs corresponding to at least one first route corresponding to a machine with one or more second costs corresponding to at least one second route corresponding to at least one agent;

adjusting the at least one first route to at least one updated first route and the at least one second route to at least one updated second route that corresponds to a predicted reaction to the at least one updated first route based at least on determining, using the gradients, that the at least one updated first route and the at least one updated second route reduce the cost function;

determining a path for the machine based at least on the adjusting; and

performing one or more control operations for the machine using the path.

12 . The method of claim 11 , wherein the cost function includes one or more terms that penalize one or more of deviation from the at least one second route corresponding to the at least one agent, acceleration for the at least one agent, or jerk for the at least one agent.

13 . The method of claim 11 , further comprising:

categorizing sets of routes for the machine and the at least one agent into a homotopy class based at least on the sets including trajectories for the machine that have a same initial point and a different end point; and

selecting a subset of the sets of the routes for the evaluating, wherein the at least one first route and the at least one second route are included in the subset.

14 . The method of claim 11 , further comprising:

categorizing sets of routes for the machine and the at least one agent based at least on angular distances between the machine and the at least one agent to determine categorized sets of the routes; and

selecting a subset of the sets of the routes for the evaluating, wherein the at least one first route and the at least one second route are included in the subset.

15 . The method of claim 11 , wherein the evaluating includes:

evaluating, using the cost function, a first version of the at least one first route and a first version of the at least one second route to determine a second version of the at least one first route and a second version of the at least one second route; and

evaluating, using the cost function, the second version of the at least one first route and the second version of the at least one second route to determine a third version of the at least one first route and a third version of the at least one second route, wherein the path is based at least on the third version of the at least one first route.

16 . A system comprising:

one or more circuits to perform operations including:

performing one or more control operations for a machine using a trajectory, the trajectory determined based at least on:

adjusting, using a cost function that combines one or more first costs corresponding to at least one first route corresponding to the machine with one or more second costs corresponding to at least one second route corresponding to at least one agent, the at least one first route to at least one updated first route and the at least one second route to at least one updated second route that corresponds to a predicted reaction to the at least one updated first route,

the adjusting being based at least on determining, using a gradient of the cost function, that the at least one updated first route and the at least one updated second route reduce the cost function.

17 . The system of claim 16 , wherein the cost function includes one or more terms that penalize one or more of deviation from the at least one second route corresponding to the at least one agent, acceleration for the at least one agent, or jerk for the at least one agent.

18 . The system of claim 16 , wherein the trajectory is further determined based at least on:

categorizing sets of routes for the machine and the at least one agent into a homotopy class based at least on the sets including trajectories for the machine that have a same initial point and a different end point; and

selecting a subset of the sets of the routes for the adjusting, wherein the at least one first route and the at least one second route are included in the subset.

19 . The system of claim 16 , wherein the trajectory is further determined based at least on:

categorizing sets of routes for the machine and the at least one agent based at least on angular distances between the machine and the at least one agent to determine categorized sets of the routes; and

selecting a subset of the sets of the routes for the adjusting, wherein the at least one first route and the at least one second route are included in the subset.

20 . The system of claim 16 , wherein the system is comprised in at least one of:

a control system for an autonomous or semi-autonomous machine;

a perception system for an autonomous or semi-autonomous machine;

a system for performing simulation operations;

a system for performing digital twin operations;

a system for performing light transport simulation;

a system for performing collaborative content creation for 3D assets;

a system for performing deep learning operations;

a system implemented using an edge device;

a system implemented using a robot;

a system for performing conversational AI operations;

a system implementing one or more language models;

a system implementing one or more large language models (LLMs);

a system for performing one or more generative AI applications;

a system for generating synthetic data;

a system for presenting at least one of virtual reality content, augmented reality content, or mixed reality content;

a system incorporating one or more virtual machines (VMs);

a system implemented at least partially in a data center; or

a system implemented at least partially using cloud computing resources.