

Time-Agnostic Prediction:
Predicting Predictable Video Frames

Dinesh Jayaraman  Frederik Ebert   Alexei A. Efros   Sergey Levine
Berkeley Artificial Intelligence Research, UC Berkeley

Prediction is arguably one of the most basic functions of an intelligent system. In general, the problem of predicting events in the future or between two waypoints is exceedingly difficult. However, most phenomena naturally pass through relatively predictable bottlenecks—while we cannot predict the precise trajectory of a robot arm between being at rest and holding an object up, we can be certain that it must have picked the object up. To exploit this, we decouple visual prediction from a rigid notion of time. While conventional approaches predict frames at regularly spaced temporal intervals, our time-agnostic predictors (TAP) are not tied to specific times so that they may instead discover predictable “bottleneck” frames no matter when they occur. We evaluate our approach for future and intermediate frame prediction across three robotic manipulation tasks. Our predictions are not only of higher visual quality, but also correspond to coherent semantic subgoals in temporally extended tasks. Project website:

1 Introduction

Imagine a transparent bottle half-filled with colored liquid held upright at , which is to be tilted steadily to reach a horizontal position at . How would the surface of the liquid look at times ? Which future states are more uncertain and which more certain? Fig 1 (a) qualitatively depicts an uncertainty profile for this sequence.

Prediction is thought to be fundamental to intelligence bar2009proactive ; clark2013whatever ; hohwy2013predictive . If an agent can learn to predict the future, it can take anticipatory actions, plan through its predictions, and use prediction as a proxy for representation learning. The key difficulty in prediction is uncertainty. Visual prediction approaches attempt to mitigate uncertainty by predicting iteratively in heuristically chosen small timesteps, such as, say, . In the bottle-tilting case, such approaches generate blurry images of the chaotic states at , and this blurriness compounds to make predictions unusable within a few steps. Sophisticated probabilistic approaches have been proposed to better handle this uncertainty mohammad2017 ; lee2018stochastic ; denton2018stochastic ; xue2016visual .

What if we instead change the goal of our prediction models? Fixed time intervals in prediction are in many ways an artifact of the fact that cameras and monitors record and display video at fixed frequencies. Rather than requiring predictions at regularly spaced future frames, we ask: if a frame prediction is treated as a bet on that frame occurring at some future point, what should we predict? Such time-agnostic prediction (TAP) has two immediate effects: (i) the predictor may skip more uncertain states in favor of less uncertain ones, and (ii) while in the standard approach, a prediction is wrong if it occurs at rather than at , our formulation considers such predictions equally correct.

Figure 1: (a) Over time as the bottle is tilted, the uncertainty first rises and then falls as the bottle is held steady after tilting. (b)-(e) Similar uncertainty profiles corresponding to various scenarios—a ball rolling down the side of a bowl, a car driving on a highway with an exit 100m away, an iron pellet tossed in the direction of a magnet, and intermediate frame prediction in a maze traversal given start and end states. The red asterisks along the x-axis correspond to the asterisks in the maze—these “bottleneck” states must occur in any successful traversal.

Recall the bottle-tilting uncertainty profile. Fig 1 depicts uncertainty profiles for several other prediction settings, including both forward/future prediction (given a start frame) and intermediate prediction (given start and end frames). Our time-agnostic reframing of the prediction problem targets the minima of these profiles, where prediction is intuitively easiest. We refer to these minima states as “bottlenecks.”

At this point, one might ask: are these “easy” bottlenecks actually useful to predict? Intuitively, bottlenecks naturally correspond to reliable subgoals—an agent hoping to solve the maze in Fig 1 (e) would do well to target its bottlenecks as subgoals. In our experiments, we evaluate the usefulness of our predictions as subgoals in simulated robotic manipulation tasks.

Our main contributions are: (i) we reframe the video prediction problem to be time-agnostic, (ii) we propose a novel technical approach to solve this problem, (iii) we show that our approach effectively identifies “bottleneck states” across several tasks, and (iv) we show that these bottlenecks correspond to subgoals that aid in planning towards complex end goals.

2 Related Work

Visual prediction approaches.

Prior visual prediction approaches regress directly to future video frames in the pixel space ranzato2014video ; atarioh or in a learned feature space hadsell2006dimensionality ; mobahi2009deep ; kitani2012activity ; jayaraman_egoequiv ; wang2016actions ; vondrick2016anticipating . The success of generative adversarial networks (GANs) gan ; mirza2014conditional ; radford2015unsupervised ; isola2017image has inspired many video prediction approaches mathieu2015deep ; vondrick2016 ; foresight ; xue2016visual ; atarioh ; sna ; finn_nips ; larsen2015autoencoding ; lee2018stochastic . While adversarial losses aid in producing photorealistic image patches, prediction has to contend with a more fundamental problem: uncertainty. Several approaches walker2016uncertain ; xue2016visual ; denton2018stochastic ; lee2018stochastic ; larsen2015autoencoding ; babaeizadeh2017stochastic exploit conditional variational autoencoders (VAE) kingma to train latent variable models for video prediction. Pixel-autoregression oord2016pixel ; van2016conditional ; kalchbrenner2016video explicitly factorizes the joint distribution over all pixels to model uncertainty, at a high computational cost.

Like these prior approaches, we too address the uncertainty problem in video prediction. We propose a general time-agnostic prediction (TAP) framework for prediction tasks. While all prior work predicts at fixed time intervals, we aim to identify inherently low-uncertainty bottleneck frames with no associated timestamp. We show how TAP may be combined with conditional GANs as well as VAEs, to handle the residual uncertainty in its predictions.

In addition to future prediction, we also consider bidirectional prediction, studied before mainly in the context of video interpolation with very short timescales (s) liu2017video ; meyer2015phase . We consider longer timescales and integrate our predictions as subgoals into a hierarchical planner.


In hierarchical reinforcement learning, bottlenecks are proposed for discovery of options sutton1999 in low-dimensional state spaces in mcgovern2001automatic ; csimcsek2009skill ; bacon2013bottleneck ; metzen2013online . Most approaches csimcsek2009skill ; bacon2013bottleneck ; metzen2013online construct full transition graphs and apply notions of graph centrality to locate bottlenecks. A multi-instance learning approach is applied in mcgovern2001automatic to mine states that occur in successful trajectories but not in others. We consider the use of our bottleneck predictions as subgoals for a hierarchical planner, which is loosely related to options in that both aim to break down temporally extended trajectories into more manageable chunks. Unlike these prior works, we use predictability to identify bottlenecks, and apply this to unlabeled high-dimensional visual state trajectories.

3 Time-Agnostic Prediction of Bottleneck Frames

In visual prediction, the goal is to predict a set of unobserved target video frames given some observed context frames. In forward prediction, the context is the first frame, and the target is all future frames. In the bidirectionally conditioned prediction case, the context is the first and the last frame, and the frames in between are the target. In Fig 1, we may wish to predict future images of the tilting bottle, or intermediate images of an agent who traverses the maze successfully.

More formally, let be the set of time indices specifying the context, and similarly specify the target. The training dataset consists of unlabeled videos with and either known in advance or generated dynamically during training. Let denote the true video frame at time , and and denote the sets of context and target frames respectively.

3.1 Minimum-Over-Time Loss

In standard fixed-time video prediction models ranzato2014video ; atarioh ; mathieu2015deep ; vondrick2016 ; walker2016uncertain ; foresight ; xue2016visual ; atarioh ; sna ; finn_nips ; lee2018stochastic ; denton2018stochastic , an index is selected in advance to be the training target, as a function of . In forward video prediction, is set to , where is a heuristically chosen small step. A predictor with parameters takes context frames as input and produces a single frame . is trained as:


where is a measure of prediction error, such as , or an adversarially learned error conditioned on (see Sec 3.3).111We omit expectations over training samples throughout this paper to avoid notational clutter. This predictor is applied autoregressively at test time to generate frames at indices other than . In the forward prediction example, video predictions are generated from the frame predictor recursively, so that the prediction targeting time is , where consists of the original context and past predictions up to .

We propose to depart from this fixed-time paradigm by decoupling prediction from a rigid notion of time. Instead of predicting the video frame at a specified point , we propose to predict predictable bottleneck video frames through a time-agnostic predictor (TAP), as motivated in Sec 1. To train this predictor, we propose to minimize the following “minimum-over-time” loss:


where the key difference from Eq 1 is that the loss is now a minimum over target times of a time-indexed error . For the simple case of an error, its time-indexed counterpart would be . Intuitively, the penalty for a prediction is determined based on the “closest matching” ground truth target frame. This loss incentivizes the model to latch on to “bottleneck” states in the video, i.e., those with low uncertainty. In the maze example, this would mean producing an image at one of the asterisks in Fig 1.

TAP models may also be applied recursively to generate multiple predictions sequentially. Let denote the recursion level: the first prediction corresponds to , the next prediction to , and so on. Then the output is , where and for , . Modifying the objective of Eq 2,


where the first target set and for , is set based on the closest matching frame to . For example, in recursive forward prediction, if is closest to time , then we set to train the model to predict forwards from the last prediction. In the rest of this section, we discuss the non-recursive formulation, building on Eq 2, for simplicity.

One immediate concern with this minimum-over-time TAP loss might be that it could produce degenerate predictions very close to the input conditioning frames . However, as discussed in Sec 1, uncertainty is not always lowest closest to . Moreover, since target frames are disjoint from context , the model’s prediction must be different from input frames by at least one step, which is no worse than standard one-step-forward prediction. In our experiments, we show cases where the minimum-over-time loss above captures natural bottlenecks successfully. Sec 3.2 shows how it is also possible to explicitly penalize predictions near input frames .

This minimum loss may be viewed as adaptively learning the time offset , but in fact, the predictor’s task is even simpler since it is not required to provide a timestamp accompanying its prediction. For example, in Fig 1(e), it need only specify which points in the maze the agent will go through; it need not specify when. The requirement of a timestamped prediction places a significant implicit burden on standard fixed-time prediction approaches.

3.2 From Minimum to Generalized Minimum TAP Loss

We now extend the TAP approach above to be able to specify various preferences: such as for some times over others, or for some visual properties of the predictions. Consider the minimum-over-time loss in Eq 2. Taking the minimum inside, this may be rewritten as:


We may now extend this to the following “generalized minimum” loss, where the outer and inner errors are decoupled:


Now, , over which the minimum is computed, could be designed to express preferences about which frames to predict. In the simplest case, , and the loss reduces to Eq 2. Instead, suppose that predictions at some times are preferred over others. Let express the preference value for all target times , so that higher indicates higher preference. Then we may set so that times with higher are preferred in the . In our experiments, we set to linearly increase with time during forward prediction and to a truncated discrete gaussian centered at the midpoint in bidirectional prediction.

The generalized minimum formulation may be used to express other kinds of preferences too. For instance, when using predictions as subgoals in a planner, perhaps some states are more expensive to reach than others. In our experiments, we use it to express time preferences as above, and also to leave out learned adversarial errors (Sec 3.3) when computing the , so that is only an loss (details in Sec 3.5). This helps stabilize training, since learned errors may not always be meaningful especially early on in training.

3.3 Time-Agnostic Conditional GANs

While error minimization losses are straightforward to integrate with TAP, we can also use more expressive GAN losses to improve perceptual quality. A standard conditional GAN (CGAN) in fixed-time video prediction targeting time works as follows: given a “discriminator” (with weights ) that outputs for input-prediction tuples and for input-ground truth tuples, the generator is trained to fool the discriminator. The discriminator in turn is trained adversarially using a binary cross-entropy loss. The CGAN objective is written as:


To make this formulation time-agnostic, we train discriminators , one per timestep. Then, analogous to Eq 2, we may define:


where we set with . Like Eq 7, Eq 9 defines a cross-entropy loss. The first two terms are analogous to Eq 7 — for the -th discriminator, the -th frame provides a positive, and the generated frame provides a negative instance. The third term defines the loss for frames : frames close to time are partial positives (), and others are negatives (). This label smoothing stabilizes training and ensures enough positives for each discriminator . In practice, we train a single discriminator network with outputs that serve as . Further, for computational efficiency, we approximate the summation over by sampling a single frame at random for each training video at each iteration.

3.4 Time-Agnostic Conditional VAEs

Figure 2: Training time network schematic. At test time, only the predictor is used, and .

While TAP targets low-uncertainty bottleneck states, it may be integrated with a conditional variational autoencoder (CVAE) to handle residual uncertainty at these bottlenecks. In typical fixed-time CVAE predictors targeting time , variations in a latent code input to a generator must capture stochasticity in . At training time, is sampled from a posterior distribution inferred by a recognition network with parameters . At test time, is sampled from a prior . The training loss combines a reconstruction loss with a KL-divergence from the prior:


In our TAP framework, instead of capturing stochasticity at a fixed time , must now capture stochasticity at bottlenecks, such as the points when the agent crosses the asterisks in the maze (Fig 1). The bottleneck’s time index may vary from sample to sample and is not known in advance. So the recognition network now sees the entire video , similar to lee2018stochastic . The reconstruction loss is adapted to be a minimum-over-time:


3.5 Combined Loss, Network Architecture and Training

We train CVAE-GAN time-agnostic prediction (TAP) models with the following combination of a generalized minimum loss (Sec 3.2) and the CVAE KL divergence loss (Sec 3.4):


The outer error absorbs the CGAN discriminator errors (Sec 3.3), while the inner error is a simple error, weighted by user-specified time preferences (Sec 3.2). As in VAE-GANs larsen2015autoencoding ; lee2018stochastic , the training objective includes a new term , analogous to (Eq 9). We set up to use samples from the prior , while instead samples from the posterior , and employs separate discriminators with parameters . The loss also samples from the posterior, as in Eq 11.

All components of the pipeline are represented as neural networks, and the architecture is schematically represented in Fig 2. Frame generation in the predictor involves first generating appearance flow-transformed input frames zhou2016view and a frame with new uncopied pixels. These frames are masked and averaged to produce the output. Full architecture and training details are in Appendix A.

4 Experiments

Grasping Pick-and-place Pushing (alternate frames)
Figure 3: (Best in pdf) One sample episode each for grasping, pick-and-place, and pushing. Time overlaid.

In our experiments, we compare our time-agnostic TAP approaches against fixed-time prediction approaches in three simulated robotic manipulation settings: object grasping (50k episodes), pick-and-place (75k episodes), and multi-object pushing (55k episodes). Example episodes from each task are shown in Fig 3 (videos in Supp). 5% of the data is set aside for testing. We use 64 64 images.

For grasping (15 frames per episode), the arm moves to a single object on a table, selects a grasp, and lifts it vertically. For pick-and-place (20 frames), the arm additionally places the lifted object at a new position before performing a random walk. For pushing (40 frames), two objects are initialized at random locations and pushed to random final positions. Object shapes and colors in all three settings are randomly generated. To generate the data, we use a sampling-based CEM planner kroese2013cross ; sna in the MuJoCo todorov2012mujoco environment with access to the physics engine (and ground truth object positions, poses etc.), which produces non-deterministic trajectories. The planner plans towards randomly provided goals, but we use both successful and failed trajectories.

Forward prediction.

First, we evaluate our approach for forward prediction on grasping. The first frame (“start”) is provided as input. We train fixed-time baselines (architecture same as ours, and same underlying losses, except not time-agnostic) that target predictions at exactly fraction of the episode length (“fix0.25”,…, “fix1.00”). “min” is TAP without the generalized minimum of Sec 3.2. For TAP with generalized minimum (“genmin”), we evaluate different choices of the time preference vector (Sec 3.2). We set , so that our preference increases linearly from to . Since applies multiplicatively, low corresponds to high disparity in preferences ( reduces to “min”, i.e., no time preference). “genmin2” is our approach with and so on.

Forward prediction
Figure 4: Forward prediction error vs. best-matched step for our approaches (red) vs baselines (blue).

Fig 5 shows example predictions from all methods. In terms of visual quality of predictions and finding a semantically coherent bottleneck, “genmin2”, “genmin4”, and “genmin7” perform best—they reliably produce a grasp on the object while it is still on the table. With little or no time preferences, “min” and “genmin10” produce images very close to the start, while “genmin0.5” places too high a value on predictions farther away, and produces blurry images of the object after lifting.

Quantitatively, for each method, we report the and index of the distance to all frames in the video, as “min err” and “match-step” (“which future ground truth frame is the prediction closest to?”). Fig 4 shows a scatter plot, where each dot or square is one model. As shown, our method (various models with varying ) produces an even larger variation in stepsizes than fixed-time methods explicitly targeting the entire video (“fix0.75” and “fix1.0” fall short of producing predictions at 0.75 and 1.0 fraction of the episode length). Our method also produces higher quality predictions (lower error) over that entire range.

Figure 5: (Best seen in pdf) Forward prediction results on grasping comparing fixed-time predictors and our approach. Each row is a separate example. First column is the input. Thereafter, each column corresponds to the output of a different model per the column title.
Setting Grasping (15 steps) Pick-and-place (20 steps) Pushing (30 steps)
Method min err match-step min err match-step min err match-step
fix 0.0153 7.612.52 0.0366 10.584.82 0.07223 10.765.82
min (ours) 0.0104 7.312.68 0.0256 8.236.07 0.0365 10.596.61
genmin (ours) 0.0121 6.772.44 0.0269 8.494.51 0.0338 10.825.79
genmin wo gan (ours) 0.0117 6.742.41 0.0235 4.90 0.0411 11.075.80
genmin + vae (ours) 0.0156 7.072.75 0.0432 6.124.81 0.0447 10.996.15
genmin + vae best-of-100 (ours) 0.0121 - 0.0196 - 0.0236 -
Table 1: Intermediate frame prediction performance in the three settings: grasping, pick-and-place, and two-object pushing. Lower min err is better.

Intermediate frame prediction.

Next, we evaluate our approaches for intermediate frame prediction in all three settings. Initial and final frames are provided as input, and the method is trained to generate an intermediate frame. The “fix” baseline now targets the middle frame. As before, “min” and “genmin” are our TAP models. The “genmin” time preference is bell-shaped and varies from 2.0 at the ends to 3.0 at the middle frame.

Figs 8 and 9 show examples from the three settings. TAP approaches successfully discover interesting bottlenecks in each setting. For grasping (Fig 8 (left)), both “min” and “genmin” consistently produce clear images of the arm at the point at which it picks up the object. Pick-and-place (Fig 8, right) is harder because it is more temporally extended, and the goal image does not specify how to grasp the object. “fix” struggles to produce any coherent predictions, but “genmin” once again identifies bottlenecks reliably—in examples #3 and #1, it predicts the “pick” and the “place” respectively. For the pushing setting (Fig 9 (left)), “genmin” frequently produces images with one object moved and the other object fixed in place, which again is a semantically coherent bottleneck for this task. In row #1, it moves the correct object first to generate the subgoal, so that objects do not collide. We show examples of generations together with intermediate masked images (Sec 3.5) at

Tab 1 shows quantitative results over the full test set. As in forward prediction, we report min error and the best-matching frame index (“match-step”) for all methods. “min” and “genmin” consistently yield higher quality predictions (lower error) than “fix” at similar times on average. Additionally, while all foregoing results were reported without the CVAE approach of Sec 3.4, Tab 1 shows results for “genmin+VAE”, and Fig 9 shows example predictions for pick-and-place. In our models, individual stochastic predictions from “genmin+VAE” produce higher errors than “genmin”. However, the CVAE helps capture meaningful sources of stochasticity at the bottlenecks—in Fig 9 (right), it produces different grasp configurations to pick up the object in each case. To measure this, we evaluate the best of 100 stochastic predictions from genmin+VAE in Tab 1 (“genmin+vae best-of-100”). On pick-and-place and pushing, the best VAE results are significantly better than any of the deterministic methods. Tab 1 also shows results for our method without the GAN (“genmin wo GAN”)—while its errors are comparable, we observed a drop in visual quality.

Figure 6: Recursive bidirectional prediction on pick-and-place. denote generated subgoals at different levels of recursion.

As indicated in Sec 3.1 and Eq 3, TAP may also be applied recursively. Fig 6 compares consecutive subgoals for the pick-and-place task produced by recursive TAP versus a recursive fixed-time model. Recursion level refers to the first subgoal, and refers to the subgoal generated when the first subgoal is provided as the goal input (start input is unchanged). In example #1, “fix” struggles while “ours” identifies the “place” bottleneck at , and subsequently the “pick” botleneck at .

Figure 7: Intermediate prediction results on BAIR pushing data.

Finally, we show preliminary results on “BAIR pushing” sna , a real-world dataset that is commonly used in visual prediction tasks. The data consists of 30-frame clips of random motions of a Sawyer arm near the surface of a cluttered tabletop. While this dataset does not have natural bottlenecks like in grasping, TAP (min error 0.046 at match-step 15.42) still performs better than “fix” (0.059 at 15.29). Qualitatively, as Fig 7 shows, even though BAIR pushing contains incoherent random arm motions, TAP consistently produces predictions that plausibly lie on the path from start to goal image. In example #1, given a start and goal image with one object displaced, “ours” correctly moves the arm to the object before displacement, whereas “fix” struggles.

Figure 8: (Best seen in pdf) Intermediate prediction results comparing fixed-time prediction and our approach. (Left) Grasping results. First two columns are inputs (start and goal). Thereafter, each column corresponds to the output of a different model per the column title. “match” is the ground truth image closest to the “genmin” prediction. (Right) Similar results for pick-and-place.
Figure 9: (Best seen in pdf) (Left) Intermediate prediction results on two-object pushing. (Right) When used with a VAE (Sec 3.4), our approach captures residual stochasticity at the bottleneck. In these results from the pick-and-place task, “genmin-vae” produces images that are all of the arm in contact with the object on the table, but at different points on the object, and with different arm/gripper poses.

Bottleneck discovery frequency.

Bottleneck frequency vs. score threshold
Figure 10: Bottleneck frequency vs. score threshold

We have thus far relied on qualitative results to assess how often our approach finds coherent bottlenecks. For pushing, we test bottleneck discovery frequency more quantitatively. We make the reasonable assumption that bottlenecks in 2-object pushing correspond to states where one object is pushed and the other is in place. Our metric exploits knowledge of true object positions at start and goal states. First, for this evaluation, we restrict both “genmin” and “fix” to synthesize predictions purely by warping and masking inputs. Thus, we can track where the pixels at ground truth object locations in start and goal images end up in the prediction, i.e., where did each object move? We then compute a score that may be thresholded to detect when only one object moves (details in Appendix B). As Fig 10 shows, “genmin” predicts bottlenecks much more frequently (60% of the time) than “fix.” As hypothesized, our time-agnostic approach does indeed identify and latch on to low-uncertainty states to improve its predictions.

Hierarchical planning evaluation.

2-object 3-object
direct 12.90.6 15.80.6
fix 12.50.5 17.60.6
TAP (ours) 11.90.6 12.90.7
Table 2: Multi-object pushing errors (in cm).

Finally, we discuss preliminary experiments directly evaluating our intermediate frame predictions as visual subgoals for hierarchical planning for pushing tasks. A forward Visual MPC planner sna accepts the subgoal object positions (computed as above for evaluating bottlenecks). Start and goal object positions are also known. Internally, Visual MPC makes action-conditioned fixed-time forward predictions of future object positions to find an action sequence that reaches the subgoal object positions, with a planning horizon of 15. Additional implementation details are in Appendix C.

Given start and goal images, our model produces a subgoal. VisMPC plans towards this subgoal for half the episode length, then switches to the final goal. We compare this scheme against (i) “direct”: planning directly towards the final goal for the entire episode length, and (ii) “fix”: subgoals from a center-frame predictor. The error measure is the mean of object distances to goal states (lower is better). As an upper bound, single-object pushing with the planner yields 5cm error. Results for two-object and three-object pushing are shown in Tab 2. TAP does best on both, but especially on the more complex three-object task. Going forward, we plan to test more complex temporally extended tasks where direct planning breaks down and subgoals offer greater value.

5 Conclusions

The standard paradigm for prediction tasks demands that a predictor not only make good predictions, but that it make them on a set schedule. We have argued for redefining the prediction task so that the predictor need only care that its prediction occur at some time, rather than that it occur at a specific scheduled time. We define this time-agnostic prediction task and propose novel technical approaches to solve it, that require relatively small changes to standard prediction methods. Our results show that reframing prediction objectives in this way yields higher quality predictions that are also semantically coherent—unattached to a rigid schedule of regularly specified timestamps, model predictions instead naturally attach to specific semantic “bottleneck” events, like a grasp. In our preliminary experiments with a hierarchical visual planner, our results suggest that such predictions could serve as useful subgoals for complex tasks. We hope to build further on these results.

Acknowledgements. We thank Alex Lee and Chelsea Finn for helpful discussions and Sudeep Dasari for help with the simulation framework and for generating the simulated data used in this work. We thank Kate Rakelly and Allan Jabri for feedback on early drafts. This work was supported by Berkeley DeepDrive, NSF IIS-1614653, NSF IIS-1633310, and an Office of Naval Research Young Investigator Program award. The NVIDIA DGX-1 used for this research was donated by the NVIDIA Corporation.


In these appendices, we provide details omitted in the main text for space. Note that more supplementary material is hosted at:

Appendix A Architecture and training details

Predictor architecture.

As indicated in Fig 2, the predictor has an encoder-decoder architecture. When our approach is used together with the conditional VAE (Sec 3.4), the conditional latent is appended at the bottleneck between the encoder and the decoder. The encoder produces a 128-dimensional code, and the VAE latent code is 32-dimensional, so the overall size of the input to the decoder is 160 when the VAE is used.

The encoder inside the predictor uses a series of 4x4convolution-batchnorm-LeakyReLU(0.2) blocks to reduce the 64x64 input image as 3x64x6432x32x3264x16x16128x8x8256x4x4. For bidirectional prediction, this is repeated for both images and concatenated to produce a 512x4x4 feature map. Finally, a small convolution-ReLU-convolution head reduces this to a 128-dimensional vector. Except for this last head subnetwork, this architecture is identical to the DCGAN discriminator [31].

The decoder inside the predictor uses a DCGAN-based architecture [31]. The input vector is reshaped by a transposed convolution into 256 44 maps. This is subsequently processed a series of bilinear upsampling-5x5convolution-batchnorm-ReLU blocks as 256x4x4128x8x864x32x323x64x64. For the last block, a Tanh activation is used in place of ReLU to keep outputs in [-1,1]. Compared to [31], the main difference is that transposed convolutions are replaced by upsampling-5x5 convolution blocks, which aids in faster learning with fewer image artifacts [28].

As shown in Fig 11, our predictor produces three sets of outputs: (a) one frame of new pixels, (b) “appearance flow” [42] maps that warp the input image(s), and (c) masks (summing to 1 at each pixel) that combine the warped input images and the new pixels frame to produce the final output. To produce these three outputs, we use three decoders that all have the same architecture as above, except that the final output is shaped appropriately—the appearance flow decoder produces x64x64 flowfields, and the masks decoder produces x64x64 masks.

Discriminator and Recognition Network

The VAE recognition network and the discriminator both use similar architectures to the predictor encoder above. Only the input layer and the output layer are changed as follows: (a) The discriminator accepts images as input and the recognition network accepts images (the full video) as input. (b) The discriminator head produces logits (one corresponding to each target time), and the recognition network produces a -dimensional conditional latent.


We found it beneficial to initialize the decoder by training it first as an unconditional frame generator on frames from the training videos. For this pretraining, we use learning rate 0.0001 for 10 epochs with batch size 64 and Adam optimizer. Thereafter, for training, we use learning rate 0.0001 for 200 epochs with batch size 64 and Adam optimizer.

Figure 11: The predictor produces an appearance flowfield which is used to produce flow-warped input frames, which together with a frame of new pixels are masked and averaged to produce the output frame.

Appendix B Bottleneck Discovery Frequency Score

In Sec 4, we mentioned a bottleneck discovery frequency measure in the paragraph titled “Bottleneck discovery frequency metric.” We now provide further details.

Our proposed metric for two-object pushing quantifies how reliably the network is able to generate an intermediate state with one object being moved and the other being at its original position. The reason that this state is of interest is that in two-object pushing, this may be reasonably assumed to be the natural bottleneck, so we call this metric the bottleneck frequency. Even without this assumption though, the metric quantifies the ability of our approach to generate predictions attached to this consistent semantically coherent intermediate state.

To measure bottleneck frequency, we use a technique similar to the approach proposed in [7] for planning with a visual predictor. First, we train versions of “genmin” and “fix” that synthesize predictions purely by appearance-flow-warping and masking inputs (as shown in the scheme of Fig 11, but without pixel generation). Next, recall that we have access to the starting and goal positions of objects since our dataset is synthetically generated. Thus, we can exploit this and track where the pixels at ground truth object locations in start and goal images end up in the prediction, i.e., where did each object move? This works as follows: we take the appearance flow transformations and masks generated by the model internally (for application to input images to generate prediction) and apply them instead to one-hot object location maps—these maps have value one at the ground truth origin of the the objects and zero elsewhere. The output of this operation is a probability map for each object indicating where it is located in the predictor’s intermediate prediction output.

To compute the score, we then calculate the expected distance in pixels between the predicted positions of each object and the bottleneck state. There are actually two possible candidates for this bottleneck state: object 1 is moved first, or object 2 is moved first. We compute the expected distances to both these bottleneck candidates and take the lower distance to be the score. This score does not evaluate whether the semantically correct bottleneck was predicted (in cases where one object must always be moved first to avoid collision, such as Fig 9 (left) example #1).

The lower this distance score, the higher the likelihood that the predicted output is actually a bottleneck (“bottleneck frequency”). Fig 10 shows what happens when the threshold over the score is varied, for our approach and the fixed-time baseline. Higher bottleneck frequency at lower threshold is desirable. As the figure shows, at a low threshold distance score ( 2 pixels), our approach gets to about 58% bottleneck frequency while the fixed-time predictor gets about 0% frequency at this threshold. This verifies that our approach produces predictions attached to semantically coherent low-uncertainty bottleneck events.

Appendix C Hierarchical Planning Evalution Method

In Sec 4, we described a hierarchical planning approach using our predictions in the paragraph titled “Hierarchical planning evaluation.” We describe this method in more detail here.

We test the usefulness of the generated predictions as subgoals for planning multi-object pushing. Given a start and goal image, we produce an intermediate prediction using our time-agnostic predictor and feed it to a low-level planner that plans towards this prediction as its subgoal. For the low-level planner we use the visual model-predictive control algorithm (“VisMPC”) [7] which internally uses a fixed-time forward prediction model and sampling-based planning to solve short-term and medium duration tasks. A more detailed description of this process follows.

VisMPC requires start and goal locations of objects to plan. When used in conjunction with our method, we first compute the locations of objects at the intermediate predictions and feed this in place of the final goal object locations, so that VisMPC may plan to first reach the intermediate prediction as a subgoal/stepping stone towards the final goal. Once the subgoal is reached, VisMPC is fed the final goal. To compute subgoal object locations, we use the same technique as in Appendix B above—one-hot maps of object locations are transformed by the appearance flow maps and masks computed internally by our predictor. This produces a probability map over object locations at the prediction, which is passed to VisMPC.

Internally, the VisMPC planner makes fixed-time forward predictions for the object locations starting from the initial distribution given a randomly sampled action sequence of length (the “planning horizon”). Out of all the action sequences, it selects the sequence that brings the distribution closest to within steps ( is the “planning horizon”). In practice, we use 200 random action sequences and perform three iterations of CEM search [18] to find the the best sequence. Once an action sequence is selected, the first action in the sequence is executed, and the initial object distribution is updated. New candidate action sequences are now generated starting from this updated object distribution and the process repeats.

In our experiments, we use a time budget of 40 steps for 2-object pushing, and 75 steps for 3-object pushing. In both cases, we feed VisMPC the subgoal (intermediate prediction object locations) for the first timesteps, and then feed the final goal location for the last steps. The “direct” planning baseline instead receives the final goal location for all steps. As shown by the results in the paper, our subgoal predictions aid in performing these multi-stage pushing tasks better than with the direct planning baseline.



For everything else, email us at [email protected].