Online Learning in Planar Pushing with Combined Prediction Model

10/17/2019 ∙ by Huidong Gao, et al. ∙ 0

Pushing is a useful robotic capability for positioning and reorienting objects. The ability to accurately predict the effect of pushes can enable efficient trajectory planning and complicated object manipulation. Physical prediction models for planar pushing have long been established, but their assumptions and requirements usually don't hold in most practical settings. Data-driven approaches can provide accurate predictions for offline data, but they often have generalizability issues. In this paper, we propose a combined prediction model and an online learning framework for planar push prediction. The combined model consists of a neural network module and analytical components with a low-dimensional parameter. We train the neural network offline using pre-collected pushing data. In online situations, the low-dimensional analytical parameter is learned directly from online pushes to quickly adapt to the new environments. We test our combined model and learning framework on real pushing experiments. Our experimental results show that our model is able to quickly adapt to new environments while achieving similar final prediction performance as that of pure neural network models.



There are no comments yet.


page 5

page 6

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

Prediction models for physical interactions are important for many robotic tasks such as manipulation, navigation, and motion planning. Traditionally, models are constructed from analytical methods using physical laws. However, these analytical models usually fail to provide accurate predictions due to their strong assumptions and requirements for certain physical states and parameters to be known. Data-driven approaches are getting popular in recent years to build models that predict complex physical dynamics. They can perform amazingly accurate predictions, but often struggle when transferred to new and unseen situations online.

In this paper, we investigate the online adaptation abilities of prediction models under new or changing environments. The task we consider is planar pushing. Pushing is a widely used robotic manipulation action. The ability to accurately predict the effect of pushing can enable efficient trajectory planning and complicated object manipulation. Although pushing is a simple action, the dynamics are highly non-linear and involve multiple factors such as geometry and mass distribution as well as complex frictional interactions. Well established analytical models for planar pushing require information about object properties and frictional parameters,[1, 2] and their assumptions on frictional forces may not hold. Recent works on using data-driven models for planar pushing improve the push prediction accuracy over analytical models for offline data, but they are not designed for online adaptation [3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13].

To achieve quick online adaptation, we propose a combined prediction model and an online learning framework for planar push prediction. The combined model consists of a neural network module and several analytical components. The neural network helps improve the expressiveness of the prediction model, while the low-dimensional parameter in analytical components allows rapid online adjustment. We first train the high-dimensional neural network parameter offline using a pre-collected dataset. Then we iteratively learn the low-dimensional analytical parameters online from data collected in the actual push trajectory. This online learning framework allows us to take advantage of the accuracy of data-driven offline training as well as the rapid online adaptation under new or changing conditions. We test our combined prediction model and online learning framework in two sets of experiments: (1) experiments generated from the MIT Push Dataset[14], and (2) real pushing data collected by a modified TurtleBot3 [15] pushing regular packing boxes. The experimental results show that our combined prediction model is able to adapt quickly to unseen situations, and achieves similar final prediction performance compared to offline training loss.

Our main contributions are the following: (1) we provide a novel combined push prediction model consisting of both analytical and data-driven components, (2) we propose an online learning framework where we take advantages of the offline training accuracy while adapting quickly to online situations using the low-dimensional parameter, and (3) we verify the capability of our learning framework with two sets of real robot pushing experiments.

I-a Related Work

Data-driven approaches are popular in pushing prediction, and multiple learning methods have been proposed to train different prediction models. Gaussian approximation is a basic learning tool which has been used to predict final object poses from initial pushing orientations [3]

. Regular regression and density estimation methods have also been used to train push prediction models

[4] which outperform analytical models. To further improve predictions on planar pushing, other types of models have been considered in the literature, including physics-based force-motion models [5]

, local Markov decision process (MDP) models


, and heteroscedastic Gaussian process models


More recently, advances in deep learning have drawn attention to using neural network models for physical interactions. SE3-Nets

[10] use deep neural networks to directly predict rigid body motions from point cloud data. Image prediction based deep learning models [11, 12, 13] also show success in several manipulation tasks including planar pushing. These deep learning models generally improve the prediction accuracy on specific distributions of the given dataset, but they often have generalizability issues for unseen data distributions.

One approach to improve the transferability of neural networks is to use hybrid architectures that combine analytical and data-driven models [8, 9]. This approach benefits from the expressiveness of data-driven models and the generalizability of analytical methods. Our combined push prediction model is inspired by the generalization abilities of these hybrid models. We further push beyond generalization to online adaptation and design models that take advantages of both offline and online training.

There are other deep learning based online adaptation methods using either recurrent neural networks

[16] or meta learning [17]. Although these methods seem appealing, they require complex training procedures which often can only be done in simulators. In comparison, our combined model and online learning method provide a simple though effective online adaptation scheme.

Ii Preliminaries

Ii-a Planar Push Prediction

We consider the prediction problem of the pushing behavior between a robot and an object on a surface. At each time , we observe the (center) position and orientation of the object, the position of the robot, and the robot’s motion command . The robot will then move according to to and push the object along its way. Given the observation, our goal is to predict the object’s next position and orientation at time after pushed by the robot.

Fig. 1: Planar Pushing

Since the goal is to predict the object’s movement, we transform the observations and predictions into the object’s current frame. Specifically, let and denote the relative position and motion of the robot, and and be the relative change in position and orientation of the object. They satisfy the following equations:


where denotes the rotation matrix by the angle .

Figure 1 illustrates the planar pushing interaction between the robot and the object. For notation simplicity, we will drop the time index if it’s clear in the context in the rest of the paper. Then the goal of push prediction is to find a prediction function , parameterized by , that predicts .

Ii-B Performance Metric

To evaluate the prediction performance, we use the standard metric of normalized mean square error (NMSE) for both positional and rotational losses. The same metric was also used in data-driven pushing models [7].

To compute NMSE, we define positional loss functions

, , and a rotational loss function by


where and

are the standard deviations for

and . Positional and rotational NMSEs are given by


We also define the overall loss function as


Ii-C Physical Model

Suppose the center of mass (COM) of the object is at the object center such that . Let be the pushing contact point in the object’s frame, and is the motion (in the object’s frame) of the contact point being pushed by the robot. When , and a friction-related parameter are available, the physical model of pushing dynamics [2] gives


We use to denote this physical model (10)-(12) as . One may attempt to directly use this model as a prediction function, but the physical model is subjected to several limitations: (1) COM of the object may not be at its center . For example, when the object is a box containing items with different weights, its COM is usually different from its geometric center. (2) It’s difficult to determine the exact contact point between the robot and the object from their positions. Moreover, a push can be either sticking or slipping. For a sticking push we can simply get . However, in the slipping case, will depend on the complex friction interaction between the robot and the object. (3) The physical model requires the knowledge of a friction-related parameter , but this parameter varies for different contact surfaces and is usually unknown for unseen objects.

Therefore, directly applying the physical model may result in inaccurate predictions due to above issues.

Iii Learning Method and Prediction Model

Iii-a Online Learning for Planar Push Prediction

When a pushing dataset is available, data-driven approaches can learn prediction functions offline. Offline trained functions may perform well for situations similar to the collected dataset, but they usually have generalizability issues with unseen cases.

In planar pushing, many important factors can vary in different scenarios. For example, different objects have different weights, friction coefficients, and different COM positions. Furthermore, these pushing-related factors are often not available to the robot before it actually pushes the object. In most cases, the only way to infer these properties is to observe the online pushing results. Therefore, online learning is essential to perform accurate push predictions.

Taking advantages of both online and offline training, we consider an online learning setting with offline pre-training. In particular, we split the prediction function parameter into . The offline component is trained offline with a pre-collected dataset while the online component will be learned online to adapt to new pushing trajectories. The idea is that the offline component can be high-dimensional to improve the expressiveness of the prediction model. On the other hand, the online component can be designed to be low-dimensional for fast online adaptation.

Suppose we have a dataset consisting of data points of the form where and . Then the goal of the offline pre-training phase is to find optimal offline parameter


Note that we fix the online parameter to an initial value in offline training. An optional scheme is to also train the online parameter

offline, but this may require additional hyperparameter tuning.

When it comes to the online situation, we have a pre-trained prediction function at time . The main idea of online learning is to adjust the online parameter adapting to the pushing outcomes at each time .

Let and be the pushing outcome to be predicted. Then the push prediction at this time is with a prediction loss .

After the pushing outcome is observed at time , we can update the online parameter by


The overall online learning algorithm is described below.

      Dataset of pushing trajectories
      Prediction model
      Initial online parameter
      Loss function
  Train offline parameter by (13)
  for  do
     Observe and online
     Update online parameter by (14)
  end for
Algorithm 1 Online Learning for Push Prediction

To apply this online learning framework, we need to have a prediction model with a high-dimensional offline parameter and a low-dimensional online parameter . To do this, we will make use of analytical models as low-dimensional online components, and a data-driven model for the high-dimensional offline component. These components will be constructed in the next subsections.

Iii-B Center of Mass Corrections

One challenge in push prediction is to know the center of mass (COM) of the object. The object center can be an approximation of COM, but it usually has an offset from COM in many situations. Therefore, we propose an analytical procedure to correct COM as shown in Figure 2.



Fig. 2: Center of Mass Corrections

Consider without loss of generality. Let

be the offset vector from the true COM to the object center in the object’s frame. Then the robot’s relative position to the object should be corrected to its relative position to the COM by


For the push prediction, note that the offset between the object center and COM after pushing is the rotated vector . Suppose the COM motion is COM after being pushed, then the motion of the object center is given by


Iii-C Contact Point Prediction for Physical Model

Since we want to apply the physical model , we need to predict the contact point and the contact motion . As discussed earlier, predicting the contact point and motion is one of the key challenges in analyzing pushing behaviors. Therefore, we take advantage of data-driven ideas to train a model for the complex contact interactions. We achieve this by using a feedforward neural network parameterized by an offline parameter . In particular, this neural network will take the corrected relative robot position and motion as input, and output the predicted contact point and motion .

Iii-D Combined Push Prediction Model

As shown in Figure 2, putting together the neural network , physical model , and COM corrections (15)-(16) we get the combined push prediction model:


In the prediction model, we have a high-dimensional offline parameter from the neural network which can improve the expressive power of the model. Form the analytical components and COM corrections (15)-(16), we have a low-dimensional online parameter . Since the online parameter has a low dimension, it can be quickly trained to adapt to online data.

One important features of the model is that all the components are differentiable. This allows us to perform both offline and online training in an end-to-end manner. Note that it’s commonly observed in deep models that end-to-end training can further exploit the expressive power by letting the network to determine its own state representation. This also implies that each intermediate variable may be trained to behave differently than its analytical role.

Correction (15)

Neural Network

Physical Model

Correction (16)


Fig. 3: Combined Push Prediction Model

Iv Experiments

To test our online learning algorithm and the combined push prediction model, we consider two different sets of experiments. The first set of experiments are based on data from the MIT push dataset [14]. The MIT dataset is collected by a robot arm with a stiff cylindrical steel pusher ( mm diameter) pushing a variety of small objects (about mm wide) on four different surfaces. To simulate the online situation, we create a simulator that outputs one data point at a time from a complete trajectory. The model is then updated online with the simulated pushing trajectory.

In the second set of experiments, we collected real data using a TurtleBot3 [15]. Since our focus is on predicting positional and rotational changes by planar point pushing, we modify the shape of the robot to a disc by covering it with a round basin (radius mm). The experiments include pushing boxes of two different sizes, different COM positions, and with different contact surfaces with the floor.

The two sets of experiments vary in data collection frequency, pusher size and object type, in order to show our method works under a variety of settings. Since our goal is to demonstrate the online learning ability of the combined push prediction model, in all the experiments we choose a simple neural network architecture consisting of three fully connected layers, with each layer having

units followed by the ReLU activation. The entire combined model, including the analytical components and the neural network, is implemented in the deep learning framework Chainer


. Before model training, each of the input and output variable to the prediction model is normalized to zero mean and unit variance. In the offline training phase, we use the Adam optimizer

[19] with learning rate and batch size . In online learning, at every time step the online optimization problem (14) is solved by gradient decent with gradient steps with learning rate .

For all the experiment figures, the caption: setting1/setting2, setting3/setting4, setting5/setting6 (if there is a third row) means that the first row’s offline setting is setting1, online setting is setting2, and similarly for the second and the third rows. The x-axis represents the number of time steps, and y-axis represents online losses at each step. Subfigures in the left column show the total loss with mean and shaded one standard deviation area. Subfigures in the right column show the mean values of positional (pos) and rotational (rot) losses. The blue and orange curves represent results of the fixed (offline trained) model and the model with online learning. The black lines indicate the average offline training losses. We show the curves with a moving average of 10 time steps for better visualization. The offline training losses and average online losses for fixed and online learning models are shown in Tables I and II where we also add the prediction losses of a pure neural network model trained offline as a baseline. Note that the offline NMSE of our model is of similar magnitude as that of existing data-driven models [7] for the MIT dataset.

Iv-a MIT Push Dataset

The experiments are conducted as following. For a certain object, material, COM and pushing side setting, a total of around 20 straight push trajectories are used to test online learning. The 20 trajectories consist of different pushing points and pushing angles. For offline training, each setting has around 50 straight push trajectories. Each offline and online trajectory contains around 500 data points, collected at 250 Hz.The cases we consider include: Three objects: rect1, rect2, and rect3. Four materials: abs, delrin, plywood, pu. Two COM positions: center, UR . Pushing sides: front, left. See [14] for more details about the dataset.

Iv-A1 Exp M1: different materials

We consider rec2 object and do offline and online training with different materials. The goal is to verify if our model is able to adjust for different friction friction coefficients online. Note that in the top case the online setting also appears in offline data. However, online learned model still achieve much better performance over the fixed model.

Fig. 4: Exp M1. (delrin+abs)/abs, delrin/abs, plywood/pu

Iv-A2 Exp M2: manual online COM offsets

We consider the rec2 object and add a manual COM offset of to the object position online.

Fig. 5: Exp M2. abs center/abs UR, delrin center/delrin UR

Iv-A3 Exp M3: different objects

We consider different objects for online and offline training. All are on abs material.

Fig. 6: Exp M3. rect1/rect3, rect2/rect3

Iv-A4 Exp M4: different pushing sides

We consider different pushing sides for online and offline training. Object is rect3 and materials are plywood and abs, respectively.

Fig. 7: Exp M4. plywood front/plywood left, abs front/abs left

Iv-A5 Exp M5: different objects, materials, pushing sides, COM offsets

We consider different objects, materials, pushing sides, COM offsets for offline and online.

Fig. 8: Exp M5. rect2, delrin, front, center/rect3, abs, left, UR
Exps Positional Losses Rotational Losses
Offline NN Offline Fixed Online Offline NN Offline Fixed Online
Exp M1 0.392 0.398 0.418 0.315 0.148 0.162 0.295 0.106
0.390 0.406 0.419 0.347 0.150 0.153 0.313 0.160
0.382 0.376 0.642 0.554 0.269 0.247 0.981 0.492
Exp M2 0.303 0.321 0.677 0.320 0.155 0.202 0.564 0.145
0.395 0.410 0.707 0.398 0.151 0.172 0.453 0.212
Exp M3 0.388 0.388 1.718 0.562 0.255 0.209 0.394 0.176
0.307 0.322 0.827 0.380 0.161 0.144 0.196 0.088
Exp M4 0.383 0.381 0.607 0.364 0.148 0.148 0.480 0.176
0.425 0.419 0.828 0.477 0.167 0.164 0.670 0.212
Exp M5 0.391 0.400 0.989 0.506 0.149 0.156 0.987 0.353
0.378 0.381 0.631 0.476 0.265 0.246 0.778 0.462
TABLE I: Experiments of the MIT push dataset.

Iv-B TurtleBot3 Experiments

See Figure 9 for our TurtleBot3 setting. The experiments are conducted as following. For a certain object, material, COM and pushing side setting, a total of nine straight push trajectories are used to test online learning. These trajectories are a combination of different pushing points and pushing angles. For offline training, each setting has 27 straight push trajectories. Each offline and online trajectory contains around 100 data points, with a data collection frequency of 4 Hz. In order to make a reasonable prediction, we set the prediction horizon to be 2 seconds, predicting the object’s position and rotation 2 seconds from the current time frame.

Fig. 9: From left to right: TurtleBot3, box1, box2, and an opened box with a stationary object. We track the robot and object positions and orientations by their ArUco markers using a ceiling camera. We consider two different surface materials, paper (original) and plastic for the bottom of the boxes, and three COM positions, center, upper right corner (UR), lower right corner (LR), done by moving a stationary object in the box.

Iv-B1 Exp R1: different materials

We consider box1 and do offline and online training with different materials.

Fig. 10: Exp R1. paper/plastic, plastic/paper

Iv-B2 Exp R2: different COMs

We train with different COM settings online with either paper or plastic. Note that in two EXP R1 and R2 settings the online loss for the fixed model also decreases. This actually is not due to learning, but because of the rotational loss resulting from the large initial rotational movement in the two cases.

Fig. 11: Exp R2. paper center/paper LR, paper center/paper UR

Iv-B3 Exp R3: different objects

We consider different objects for online and offline training on either paper or plastic.

Fig. 12: Exp R3. paper box1/box2, Exp R3. plastic box1/box2

Iv-B4 Exp R4: different pushing sides

We consider different pushing sides for online and offline training with box1.

Fig. 13: Exp R4. paper front/paper right, plastic front/plastic right

Iv-B5 Exp R5: all different

See the online prediction video.

Exps Positional Losses Rotational Losses
Offline NN Offline Fixed Online Offline NN Offline Fixed Online
Exp R1 0.116 0.117 0.441 0.287 0.319 0.307 0.264 0.292
0.105 0.112 0.176 0.118 0.183 0.219 0.279 0.236
0.382 0.376 0.642 0.554 0.269 0.247 0.981 0.492
Exp R2 0.160 0.120 0.186 0.123 0.320 0.316 0.331 0.321
0.138 0.126 0.145 0.121 0.282 0.307 0.523 0.435
0.102 0.109 0.190 0.148 0.207 0.194 0.268 0.201
Exp R3 0.118 0.138 0.449 0.316 0.281 0.325 0.453 0.312
0.098 0.099 0.419 0.213 0.178 0.212 0.701 0.455
Exp R4 0.123 0.128 0.483 0.269 0.291 0.327 0.603 0.498
0.105 0.104 0.490 0.232 0.182 0.218 0.924 0.388
TABLE II: Experiments by TurtleBot3.

V Conclusion

In this paper, we propose a combined prediction model and an online framework for planar push prediction. Our method takes advantages of both offline and online learning by utilizing a neural network module and several analytical components. We conducted two sets of real-robot pushing experiments to verify the prediction accuracy and online adaptation ability of our model. The experiments showed that our model can achieve similar offline performance as a pure neural network model. In situations different from offline data, with online learning our combined prediction model is able to reduce the loss to a level similar to the offline loss, as well as reducing the uncertainty in both positional and rotational predictions.


  • [1] M. T. Mason, “Mechanics and planning of manipulator pushing operations,” The International Journal of Robotics Research, vol. 5, no. 3, pp. 53–71, 1986.
  • [2] K. M. Lynch, H. Maekawa, and K. Tanie, “Manipulation and active sensing by pushing using tactile feedback.” in IROS, vol. 1, 1992.
  • [3] T. Meriçli, M. Veloso, and H. L. Akın, “Push-manipulation of complex passive mobile objects using experimentally acquired motion models,” Autonomous Robots, vol. 38, no. 3, pp. 317–329, 2015.
  • [4] M. Kopicki, S. Zurek, R. Stolkin, T. Moerwald, and J. L. Wyatt, “Learning modular and transferable forward models of the motions of push manipulated objects,” Autonomous Robots, vol. 41, no. 5, pp. 1061–1082, 2017.
  • [5] J. Zhou, R. Paolini, J. A. Bagnell, and M. T. Mason, “A convex polynomial force-motion model for planar sliding: Identification and application,” in 2016 IEEE International Conference on Robotics and Automation (ICRA).   IEEE, 2016, pp. 372–377.
  • [6] Z. Wang, S. Jegelka, L. P. Kaelbling, and T. Lozano-Pérez, “Focused model-learning and planning for non-gaussian continuous state-action systems,” in 2017 IEEE International Conference on Robotics and Automation (ICRA).   IEEE, 2017, pp. 3754–3761.
  • [7] M. Bauza and A. Rodriguez, “A probabilistic data-driven model for planar pushing,” in 2017 IEEE International Conference on Robotics and Automation (ICRA).   IEEE, 2017, pp. 3008–3015.
  • [8] A. Kloss, S. Schaal, and J. Bohg, “Combining learned and analytical models for predicting action effects,” arXiv preprint arXiv:1710.04102, 2017.
  • [9] A. Ajay, J. Wu, N. Fazeli, M. Bauza, L. P. Kaelbling, J. B. Tenenbaum, and A. Rodriguez, “Augmenting physical simulators with stochastic neural networks: Case study of planar pushing and bouncing,” in 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).   IEEE, 2018, pp. 3066–3073.
  • [10] A. Byravan and D. Fox, “Se3-nets: Learning rigid body motion using deep neural networks,” in 2017 IEEE International Conference on Robotics and Automation (ICRA).   IEEE, 2017, pp. 173–180.
  • [11] P. Agrawal, A. V. Nair, P. Abbeel, J. Malik, and S. Levine, “Learning to poke by poking: Experiential learning of intuitive physics,” in Advances in Neural Information Processing Systems, 2016, pp. 5074–5082.
  • [12]

    C. Finn, I. Goodfellow, and S. Levine, “Unsupervised learning for physical interaction through video prediction,” in

    Advances in neural information processing systems, 2016, pp. 64–72.
  • [13] A. Xie, F. Ebert, S. Levine, and C. Finn, “Improvisation through physical understanding: Using novel objects as tools with visual foresight,” arXiv preprint arXiv:1904.05538, 2019.
  • [14] K.-T. Yu, M. Bauza, N. Fazeli, and A. Rodriguez, “More than a million ways to be pushed. a high-fidelity experimental dataset of planar pushing,” in 2016 IEEE/RSJ international conference on intelligent robots and systems (IROS).   IEEE, 2016, pp. 30–37.
  • [15] “Turtlebot3,”, accessed: 2019-09.
  • [16] J. K. Li, W. S. Lee, and D. Hsu, “Push-net: Deep planar pushing for objects with unknown physical properties.” in Robotics: Science and Systems, 2018.
  • [17] A. Nagabandi, C. Finn, and S. Levine, “Deep online learning via meta-learning: Continual adaptation for model-based rl,” arXiv preprint arXiv:1812.07671, 2018.
  • [18]

    S. Tokui, K. Oono, S. Hido, and J. Clayton, “Chainer: a next-generation open source framework for deep learning,” in

    Proceedings of Workshop on Machine Learning Systems (LearningSys) in The Twenty-ninth Annual Conference on Neural Information Processing Systems (NIPS)

    , 2015.
  • [19] D. P. Kingma and J. Ba, “Adam: A method for stochastic optimization,” arXiv preprint arXiv:1412.6980, 2014.