Systems and methods for generating synthetic motion predictions
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.
1 . A computer-implemented method for generating synthetic testing data for autonomous vehicles, the method comprising:
(a) obtaining object data descriptive of a plurality of objects within an 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 object data;
(c) processing the context data with a machine-learned multi-agent behavior model to simulate traffic in the environment to generate a plurality of synthetic motion predictions respectively for the plurality of objects, wherein the plurality of synthetic motion predictions comprise one or more synthesized states for the plurality of objects, wherein the machine-learned model has been trained with a multi-task loss to jointly generate the plurality of synthetic motion predictions; 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 , wherein the multi-task loss includes an imitation term that encourages the machine-learned model to generate the plurality of synthetic motion predictions to imitate ground truth motions.
3 . The computer-implemented method of claim 1 , wherein the machine-learned model is configured to parameterize a joint actor policy that generates plans for the plurality of objects in a scene jointly.
4 . The computer-implemented method of claim 3 , the machine-learned model having been trained by unrolling the joint actor policy for closed-loop training.
5 . The computer-implemented method of claim 4 , wherein the closed-loop training comprises determining a loss at multiple respective time steps.
6 . The computer-implemented method of claim 1 , wherein the machine-learned model comprises a generative model.
7 . The computer-implemented method of claim 1 , wherein the machine-learned model comprises an implicit latent variable model.
8 . The computer-implemented method of claim 7 , wherein the implicit latent variable model is configured to generate a latent variable distribution representing object maneuvers or interactions among the plurality of objects within the environment.
9 . The computer-implemented method of claim 8 , wherein the interactions among the plurality of objects comprise one or more of yielding actions, merging actions, or passing actions.
10 . The computer-implemented method of claim 8 , wherein the object maneuvers comprise one or more of a three-point turn, a U-turn, or a maneuver that does not comply with traffic rules.
11 . 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.
12 . 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 object data descriptive of a plurality of objects within an 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 object data;
(c) processing the context data with a machine-learned multi-agent behavior model to simulate traffic in the environment to generate a plurality of synthetic motion predictions respectively for the plurality of objects, wherein the plurality of synthetic motion predictions comprise one or more synthesized states for the plurality of objects, wherein the machine-learned model has been trained with a multi-task loss to jointly generate the plurality of synthetic motion predictions; 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.
13 . The computing system of claim 12 , wherein the multi-task loss includes an imitation term that encourages the machine-learned model to generate the plurality of synthetic motion predictions to imitate ground truth motions.
14 . The computing system of claim 12 , wherein the machine-learned model is configured to parameterize a joint actor policy that generates plans for the plurality of objects in a scene jointly.
15 . The computing system of claim 14 , the machine-learned model having been trained by unrolling the joint actor policy for closed-loop training.
16 . The computing system of claim 12 , wherein the machine-learned model comprises a generative model.
17 . The computing system of claim 12 , wherein the machine-learned model comprises an implicit latent variable model.
18 . The computing system of claim 17 , wherein the implicit latent variable model is configured to generate a latent variable distribution representing object maneuvers or interactions among the plurality of objects within the environment.
19 . The computing system of claim 12 , 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.
20 . One or more non-transitory computer-readable media that 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 object data descriptive of a plurality of objects within an 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 object data;
(c) processing the context data with a machine-learned multi-agent behavior model to simulate traffic in the environment to generate a plurality of synthetic motion predictions respectively for the plurality of objects, wherein the plurality of synthetic motion predictions comprise one or more synthesized states for the plurality of objects, wherein the machine-learned model has been trained with a multi-task loss to jointly generate the plurality of synthetic motion predictions; 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.