IP Library Granted Patent US 12,037,027
Granted Patent B2
US 12,037,027 · App. 17/528,577 · Granted Jul 16, 2024

Systems and methods for generating synthetic motion predictions

Inventors: Shun Da Suo (Toronto, CA); Sebastián David Regalado Lozano (Toronto, CA); Sergio Casas (Toronto, CA); Raquel Urtasun (Toronto, CA)
Assignee: UATC, LLC
B60W60/00276G06F18/2148G06N3/045G06V20/584
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 12,037,027
App. No.
17/528,577
Granted
Jul 16, 2024
Kind
B2
Abstract

Systems and methods for generating synthetic testing data for autonomous vehicles are provided. A computing system can obtain map data descriptive of an environment and object data descriptive of a plurality of objects within the environment. The computing system can generate context data including deep or latent features extracted from the map and object data by one or more machine-learned models. The computing system can process the context data with a machine-learned model to generate synthetic motion prediction for the plurality of objects. The synthetic motion predictions for the objects can include one or more synthesized states for the objects at future times. The computing system can provide, as an output, synthetic testing data that includes the plurality of synthetic motion predictions for the objects. The synthetic testing data can be used to test an autonomous vehicle control system in a simulation.

Claims (60)

1. A computer-implemented method for generating synthetic testing data for autonomous vehicles, the method comprising:

(a) obtaining map data descriptive of an environment and object data descriptive of a plurality of objects within the environment, wherein the object data comprises respective current states of the plurality of objects within the environment;

(b) generating context data associated with the plurality of objects within the environment based at least in part on the map data and the object data;

(c) processing the context data with a machine-learned model to generate a plurality of synthetic motion predictions respectively for the plurality of objects, wherein the machine-learned model comprises an implicit latent variable model that generates a latent variable distribution representing interactions between the plurality of objects within the environment, and wherein the plurality of synthetic motion predictions comprise one or more synthesized states for the plurality of objects; and

(d) providing, as an output, synthetic testing data that includes at least a portion of the plurality of synthetic motion predictions respectively for the plurality of objects.

2. The computer-implemented method of claim 1 , further comprising:

(e) running a simulation to test an autonomous vehicle control system using the synthetic testing data, wherein during at least a portion of the simulation, a simulated object moves within a simulated environment in accordance with at least one synthetic motion prediction of the plurality of synthetic motion predictions.

3. The computer-implemented method of claim 1 , wherein:

the machine-learned model comprises a prior network and a decoder network; and

wherein (c) comprises:

(i) processing the context data with the prior network to generate the latent variable distribution;

(ii) sampling a plurality of samples from the latent variable distribution generated by the prior network; and

(iii) processing the plurality of samples from the latent variable distribution with the decoder network to generate the plurality of synthetic motion predictions respectively for the plurality of objects.

4. The computer-implemented method of claim 3 , wherein the prior network and the decoder network comprise graph neural networks.

5. The computer-implemented method of claim 1 , wherein the plurality of synthetic motion predictions for the plurality of objects comprise a plurality of synthesized states for the plurality of objects over a plurality of synthesized time steps.

6. The computer-implemented method of claim 5 , wherein (d) comprises including the plurality of synthesized states for the plurality of objects in the synthetic testing data.

7. The computer-implemented method of claim 5 , wherein (d) comprises:

including only a subset of the plurality of synthesized states for the plurality of objects in the synthetic testing data; and

repeating (b) and (c) for one or more additional synthesis iterations to generate one or more additional synthesized states for the plurality of objects for inclusion in the synthetic testing data.

8. The computer-implemented method of claim 1 , wherein the current states of the plurality of objects and the synthesized states for the plurality of objects are parameterized as a bounding box with position and heading relative to the map data.

9. The computer-implemented method of claim 1 , wherein (b) comprises:

generating motion context for the plurality of objects by encoding one or more past states for the plurality of objects; and

generating map context for the plurality of objects by extracting features from the map data within a local region around the current state for the plurality of objects.

10. The computer-implemented method of claim 1 , wherein:

the machine-learned model is configured to generate synthetic motion predictions that comprise a plurality of synthesized states over a plurality of synthesized time steps; and

the machine-learned model has been trained by unrolling the machine-learned model and determining a respective loss at the plurality of synthesized time steps.

11. The computer-implemented method of claim 1 , wherein the machine-learned model has been trained using a loss function, wherein the loss function comprises an imitation term that encourages the machine-learned model to generate synthetic motion predictions that imitate ground truth motions.

12. The computer-implemented method of claim 1 , wherein the machine-learned model has been trained using a loss function, wherein the loss function comprises a collision term that encourages the machine-learned model to generate synthetic motion predictions that do not result in collisions.

13. A computing system comprising:

one or more processors; and

one or more computer-readable medium storing instructions that when executed by the one or more processors cause the computing system to perform operations, the operations comprising:

(a) obtaining map data descriptive of an environment and object data descriptive of a plurality of objects within the environment, wherein the object data comprises respective current states of the plurality of objects within the environment;

(b) generating context data associated with the plurality of objects within the environment based at least in part on the map data and the object data;

(c) processing the context data with a machine-learned model to generate a plurality of synthetic motion predictions respectively for the plurality of objects, wherein the machine-learned model comprises an implicit latent variable model that generates a latent variable distribution representing interactions between the plurality of objects within the environment and wherein the plurality of synthetic motion predictions comprise one or more synthesized states for the plurality of objects; and

(d) providing, as an output, synthetic testing data that includes at least a portion of the plurality of synthetic motion predictions respectively for the plurality of objects.

14. The computing system of claim 13 , wherein:

the machine-learned model comprises a prior network and a decoder network; and

wherein (c) comprises:

(i) processing the context data with the prior network to generate a latent variable distribution;

(ii) sampling a plurality of samples from the latent variable distribution generated by the prior network; and

(iii) processing the plurality of samples from the latent variable distribution with the decoder network to generate the plurality of synthetic motion predictions respectively for the plurality of objects.

15. The computing system of claim 13 , wherein the synthetic motion prediction for the plurality of objects comprises a plurality of synthesized states for the plurality of objects over a plurality of synthesized time steps.

16. The computing system of claim 15 , wherein (d) comprises:

including the plurality of synthesized states for the plurality of objects in the synthetic testing data; or

including only a subset of the plurality of synthesized states for the plurality of objects in the synthetic testing data and repeating (b) and (c) for one or more additional synthesis iterations to generate one or more additional synthesized states for the plurality of objects for inclusion in the synthetic testing data.

17. The computing system of claim 13 , further comprising:

(e) training one or more machine learning models of an autonomous vehicle control system via performance of machine learning algorithms on one or more training examples comprising the synthetic testing data.

18. One or more non-transitory computer-readable media that collectively store:

one or more machine-learned models, wherein the one or more machine-learned models have been learned via performance of machine learning algorithms on one or more training examples comprising synthetic testing data, the synthetic testing data having been generated by performance of operations, the operations comprising:

(a) obtaining map data descriptive of an environment and object data descriptive of a plurality of objects within the environment, wherein the object data comprises a respective current state of the plurality of objects within the environment;

(b) generating context data associated with the plurality of objects within the environment based at least in part on the map data and the object data;

(c) processing the context data with a machine-learned model to generate a plurality of synthetic motion predictions respectively for the plurality of objects, wherein the machine-learned model comprises an implicit latent variable model, and wherein the synthetic motion prediction for the plurality of objects comprises one or more synthesized states for the plurality of objects; and

(d) providing, as an output, the synthetic testing data that includes at least a portion of the plurality of synthetic motion predictions respectively for the plurality of objects.

19. The one or more non-transitory computer-readable media of claim 18 , wherein:

the machine-learned model comprises a prior network and a decoder network; and

wherein (c) comprises:

(i) processing the context data with the prior network to generate a latent variable distribution;

(ii) sampling a plurality of samples from the latent variable distribution generated by the prior network; and

(iii) processing the plurality of samples from the latent variable distribution with the decoder network to generate the plurality of synthetic motion predictions respectively for the plurality of objects.

20. The one or more non-transitory computer-readable media of claim 19 , wherein the prior network and the decoder network comprise graph neural networks.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 14, 2024
From: UATC, LLC
To: AURORA OPERATIONS, INC.
Reel/Frame 067733/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 17, 2022
From: LOZANO, SEBASTIAN DAVID REGALADO; CASAS, SERGIO; SUO, SHUN DA; URTASUN, RAQUEL
To: UATC, LLC
Reel/Frame 061444/0477 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 7, 2022
From: UBER TECHNOLOGIES, INC.
To: UATC, LLC
Reel/Frame 058962/0140 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2022
From: CASAS, SERGIO; LOZANO, SEBASTIAN DAVID REGALADO; SUO, SHUN DA
To: UATC, LLC
Reel/Frame 058744/0987 →
EMPLOYMENT AGREEMENT Recorded Jan 24, 2022
From: SOTIL, RAQUEL URTASUN
To: UBER TECHNOLOGIES, INC.
Reel/Frame 058826/0936 →