Plan Online, Learn Offline: Efficient Learning and Exploration via Model-Based Control

Kendall Lowrey, Aravind Rajeswaran, Sham Kakade, Emanuel Todorov, Igor Mordatch

Introduction

We consider a setting where an agent with limited memory and computational resources is dropped into a world. The agent has to simultaneously act in the world and learn to become proficient in the tasks it encounters. Let us further consider a setting where the agent has some prior knowledge about the world in the form of a nominal dynamics model. However, the state space of the world could be very large and complex, and the set of possible tasks very diverse. This complexity and diversity, combined with the limited computational capability, rules out the possibility of an omniscient agent that has experienced all situations and knows how to act optimally in all states, even if the agent knows the dynamics. Thus, the agent has to act in the world while learning to become competent.

Based on the knowledge of dynamics and its computational resources, the agent is imbued with a local search procedure in the form of trajectory optimization. While the agent would certainly benefit from the most powerful of trajectory optimization algorithms, it is plausible that very complex procedures are still insufficient or inadmissible due to the complexity or inherent unpredictability of the environment. Limited computational resources may also prevent these powerful methods from real-time operation. While the trajectory optimizer may be insufficient by itself, we show that it provides a powerful vehicle for the agent to explore and learn about the world.

Due to the limited capabilities of the agent, a natural expectation is for the agent to be moderately competent for new tasks that occur infrequently and skillful in situations that it encounters repeatedly by learning from experience. Based on this intuition, we propose the plan online and learn offline (POLO) framework for continual acting and learning. POLO is based on the tight synergistic coupling between local trajectory optimization, global value function learning, and exploration.

We will first provide intuitions for why there may be substantial performance degradation when acting greedily using an approximate value function. We also show that value function learning can be accelerated and stabilized by utilizing trajectory optimization integrally in the learning process, and that a trajectory optimization procedure in conjunction with an approximate value function can compute near optimal actions. In addition, exploration is critical to propagate global information in value function learning, and for trajectory optimization to escape local solutions and saddle points. In POLO, the agent forms hypotheses on potential reward regions, and executes temporally coordinated action sequences through trajectory optimization. This is in contrast to strategies like ϵ−\epsilon-greedy and Boltzmann exploration that explore at the granularity of individual timesteps. The use of trajectory optimization enables the agent to perform directed and efficient exploration, which in turn helps to find better global solutions.

The setting studied in the paper models many problems of interest in robotics and artificial intelligence. Local trajectory optimization becomes readily feasible when a nominal model and computational resources are available to an agent, and can accelerate learning of novel task instances. In this work, we study the case where the internal nominal dynamics model used by the agent is accurate. Nominal dynamics models based on knowledge of physics mujoco12 , or through learning SysIDbook , complements a growing body of work on successful simulation to reality transfer and system identification Ross2012AgnosticSI ; Rajeswaran2016EPOpt ; Peng2017SimtoRealTO ; Lowrey2018ReinforcementLF ; OpenAIHand . Combining the benefits of local trajectory optimization for fast improvement with generalization enabled by learning is critical for robotic agents that live in our physical world to continually learn and acquire a large repertoire of skills.

The POLO framework

The POLO framework combines three components: local trajectory optimization, global value function approximation, and an uncertainty and reward aware exploration strategy. We first present the motivation for each component, followed by the full POLO procedure.

As described earlier, we consider the setting where an agent is dropped into a complex world. The agent has access to an internal model of the world. However, the world can be complex and diverse, ruling out the possibility of an omniscient agent. To improve its behavior, the agent has to explore and understand relevant parts of the state space while it continues to act in the world. Due to the availability of the internal model, the agent can revisit states it experienced in the world and reason about alternate potential actions and their consequences to learn more efficiently.

2 Value Function Approximation

Intuitively, this suggests that performance of π^\hat{\pi} degrades with a dependence on effective problem horizon determined by γ\gamma. This can be understood as the policy paying a price of ϵ\epsilon at every timestep. Due to the use of function approximation, errors may be inevitable. In practice, we are often interested in temporally extended tasks where γ≈1\gamma\approx 1, and hence this possibility is concerning. The arg⁡max⁡\arg\max operation in π^\hat{\pi} could inadvertently exploit approximation errors to produce a poor policy. The performance of fitted value iteration based methods also rely critically on the sampling distribution to propagate global information (Munos2008FiniteTimeBF, ), especially in sparse reward settings. For some applications, it may be possible to specify good sampling distributions using apriori knowledge of where the optimal policy should visit (e.g. based on demonstration data). However, in the setting where an agent is dropped into a new world or task, automatically generating such sampling distributions may be difficult, and is analogous to the problem of exploration.

3 Trajectory Optimization and Model Predictive Control

Trajectory optimization and model predictive control (MPC) have a long history in robotics and control systems (Garcia1989ModelPC, ; Tassa2014ControllimitedDD, )In this work, we use the terms trajectory optimization and MPC interchangeably. In MPC, a locally optimal policy or sequence of actions (up to horizon HH) is computed based on local knowledge of the dynamics model as:

where the states evolve according to the transition dynamics of the MDP, i.e. st+1∼T(st,at)s_{t+1}\sim\mathcal{T}(s_{t},a_{t}). The first action from the optimized sequence is executed, and the procedure is repeated again at the next time step. The optimization is defined over the space feedback policies (π0:H−1)(\pi_{0:H-1}), but a sequence of actions (a0:H−1)(a_{0:H-1}) can be optimized instead, without loss in performance, if the dynamics is deterministic. See Appendix C for further discussions. Here, rf(sH)r_{f}(s_{H}) represents a terminal or final reward function. This approach has led to tremendous success in a variety of control systems such as power grids, chemical process control MPCsurvey , and more recently in robotics (williams2016aggressive, ). Since MPC looks forward only HH steps, it is ultimately a local method unless coupled with a value function that propagates global information. In addition, we also provide intuitions for why MPC may help accelerate the learning of value functions. This synergistic effect between MPC and global value function learning forms a primary motivation for POLO.

Let the error in the approximate value function be ϵ:=max⁡s∣V^(s)−V∗(s)∣\epsilon:=\max_{s}|\hat{V}(s)-V^{*}(s)|, and let the terminal reward in eq. (3) be rf(sH)=V^(sH)r_{f}(s_{H})=\hat{V}(s_{H}). For all MDPs and β\beta, the performance of the MPC policy in eq. (3) can be bounded as:

This suggests that MPC (H>1)(H>1) is less susceptible to approximation errors than greedy action selection. Also, without a terminal value function, we have ϵ=O(rmax⁡/(1−γ))\epsilon=\mathcal{O}(r_{\max}/(1-\gamma)) in the worst case, which adds an undesirable scaling with the problem horizon.

Accelerating convergence of the value function

4 Planning to Explore

The ability of an agent to explore the relevant parts of the state space is critical for the convergence of many RL algorithms. Typical exploration strategies like ϵ\epsilon-greedy and Boltzmann take exploratory actions with some probability on a per time-step basis. Instead, by using MPC, the agent can explore in the space of trajectories. The agent can consider a hypothesis of potential reward regions in the state space, and then execute the optimal trajectory conditioned on this belief, resulting in a temporally coordinated sequence of actions. By executing such coordinated actions, the agent can cover the state space more rapidly and intentionally, and avoid back and forth wandering that can slow down the learning. We demonstrate this effect empirically in Section 3.1.

Since the log-sum-exp function approximates mean + variance for small κ>0\kappa>0 Dvijotham2014UniversalCV ; Todorov2009CompositionalityOO , this procedure encourages the agent to additionally explore parts of the state space where the disagreement between the function approximators is large. This corresponds to the broad notion of optimism in the face of uncertainty (auer2002finite, ) which has been successful in a number of applications (AlphaGo, ; Li2010ACA, ).

5 Final Algorithm

To summarize, POLO utilizes a global value function approximation scheme, a local trajectory optimization subroutine, and an optimistic exploration scheme. POLO operates as follows: when acting in the world, the agent uses the internal model and always picks the optimal action suggested by MPC. Exploration is implicitly handled by tracking the value function uncertainties and the optimistic evaluation, as specified in eq. (5) and (6). All the experience (visited states) from the world are stored into a replay buffer D\mathcal{D}, with old experiences discarded if the buffer becomes full. After every ZZ steps of acting in the world and collecting experience, the value functions are updated by: (a) constructing the targets according to eq. (7); (b) performing regression using the randomized prior scheme using eq. (5) where fθf_{\theta} corresponds to the value function approximator. For state sis_{i} in the buffer and value network kk with parameters θk\theta_{k}, the targets are constructed as:

which corresponds to solving a N−N-step trajectory optimization problem. As described earlier, using trajectory optimization to generate the targets for fitting the value approximation accelerates the convergence and makes the learning more stable, as verified experimentally in Section 3.3. The overall procedure is summarized in Algorithm 1.

Empirical Results and Discussion

Through empirical evaluation, we wish to answer the following questions:

Does trajectory optimization in conjunction with uncertainty estimation in value function approximation result in temporally coordinated exploration strategies?

Can the use of an approximate value function help reduce the planning horizon for MPC?

Does trajectory optimization enable faster and more stable value function learning?

Before answering the questions in detail, we first point out that POLO can scale up to complex high-dimensional agents like 3D humanoid schulman2015high and dexterous anthropomorphic hand OpenAIHand ; Rajeswaran-RSS-18 which are among the most complex tasks studied in RL for robotics. Video demonstration can be found at: https://sites.google.com/view/polo-mpc

Exploration is critical in tasks where immediate rewards are not well aligned with long-term objectives. As a representative problem, we consider a point mass agent in different 2D worlds illustrated in figure 2: a simple finite size box with no obstacles and a maze. This domain serves to provide an intuitive understanding of the interaction between trajectory optimization and exploration while also enabling visualization of results. In the extreme case of no rewards in the world, an agent with only local information would need to continuously explore. We wish to understand how POLO, with its ensemble of value functions tracking uncertainties, uses MPC to perform temporally coordinated actions. Our baseline is an agent that employs random exploration on a per-time-step basis; MPC without a value function would not move due to lack of local extrinsic rewards. Second, we consider an agent that performs uncertainty estimation similar to POLO but selects actions greedily (i.e. POLO with a planning horizon of 11). Finally, we consider the POLO agent which tracks value uncertainties and selects actions using a 32-step MPC procedure. We observe that POLO achieves more region coverage in both point mass worlds compared to alternatives, as quantitatively illustrated in figure 2(a). The ensemble value function in POLO allows the agent to recognize the true, low value of visited states, while preserving an optimistic value elsewhere. Temporally coordinated action is necessary in the maze world; POLO is able to navigate down all corridors.

2 Value function approximation for trajectory optimization

Next, we study if value learning helps to reduce the planning horizon for MPC. To this end, we consider two high dimensional tasks: humanoid getup where a 3D humanoid needs to learn to stand up from the ground, and in-hand manipulation where a five-fingered hand needs to re-orient a cube to a desired configuration that is randomized every 7575 timesteps. For simplicity, we use the MPPI algorithm (williams2016aggressive, ) for trajectory optimization. In Figure 3, we consider MPC and the full POLO algorithm of the same horizon, and compare their performance after TT steps of learning in the world. We find that POLO uniformly dominates MPC, indicating that the agent is consolidating experience from the world into the value function. With a short planning horizon, the humanoid getup task has a local solution where it can quickly sit up, but cannot discover a chain of actions required to stand upright. POLO’s exploration allows the agent to escape the local solution, and consolidate the experiences to consistently stand up. To further test if the learned value function is task aligned, we take the value function trained with POLO, and use it with MPC without any intermediate rewards. Thus, the MPC is optimizing a trajectory of length H=64H=64 purely using the value function of the state after 6464 steps. We observe, in Figure 3, that even in this case, the humanoid is able to consistently increase its height from the floor indicating that the value function has captured task relevant details. We note that a greedy optimization procedure with this value function does not yield good results, indicating that the learned value function is only approximate and not good everywhere.

While the humanoid getup task presents a temporal complexity requiring a large planning horizon, the in-hand manipulation task presents a spatial complexity. A large number of time steps are not needed to manipulate the object, and a strong signal about progress is readily received. However, since the targets can change rapidly, the variance in gradient estimates can be very high for function approximation methods Ghosh2017DivideandConquerRL . Trajectory optimization is particularly well suited for such types of problems, since it can efficiently compute near-optimal actions conditioned on the instance, facilitating function approximation. Note that the trajectory optimizer is unaware that the targets can change, and attempts to optimize a trajectory for a fixed instance of the task. The value function consolidates experience over multiple target changes, and learns to give high values to states that are not just immediately good but provide a large space of affordances for the possible upcoming tasks.

3 Trajectory optimization for value function learning

Finally, we study if trajectory optimization can aid in accelerating and stabilizing value function learning. To do so, we again consider the humanoid getup task and study different variants of POLO. In particular, we vary the horizon (N)(N) used for computing the value function targets in eq. (7). We observe that as we increase NN, the agent learns the value function with fewer interactions with the world, as indicated in Figure 4(a). The benefit of using N−N-step returns for stable value function learning and actor-critic methods have been observed in numerous works (A3C, ; Retrace, ; GAE, ), and our experiments reinforce these observations. The use of N−N-step returns help to traverse the bias-variance trade-off. Furthermore, due to the discounting, the contribution of V(sN)V(s_{N}) is made weaker and thus the targets are more stable. This mirrors ideas such as target networks (mnih2015human, ) commonly used to stabilize training. As discussed earlier, longer horizons make trajectory optimization more tolerant to errors in the value function. To illustrate this, we take the value function trained with POLO on a nominal humanoid model, and perturb the model by changing the size of the head to model value function degradation. Figure 4(b) shows that a longer planning horizon can mitigate this degradation. This presents intriguing future possibility of using MPC to improve transfer learning between tasks or robot platforms.

Related Work

Planning and learning: Combining elements of planning and search with approximate value functions has been explored in discrete game domains silver2017mastering ; anthony2017thinking where an MCTS planner is informed by the value function. Alternatively, using prior data to guide the search process in continuous MCTS without explicitly learning a value function has also been explored Rajamaki:2017:ASB:3099564.3099579 . Related to this, Atkesnon Atkeson1993 uses an offline trajectory library for action selection in real-time, but do not explicitly consider learning parametric value functions. RTDP Barto1995 considers learning value functions based on states visited by the agent, but does not explicitly employ the use of planning. Zhong et al. zhong2013value consider the setting of learning a value function to help MPC, and found the contribution of value functions to be weak for the relatively simple tasks considered in their work. Approaches such as cost shaping (Ng1999, ) can also be interpreted as hand specifying an approximate value function, and has been successfully employed with MPC (tassa2012synthesis, ). However, this often require careful human design and task specific expertise which may not be available to an agent facing a novel task. An alternative set of approaches (ross2011reduction, ; Levine2013, ; Mordatch14rss, ; Sun2018DualPI, ; srinivas2018universal, ) explore using local trajectory optimization to generate a dataset for training a global policy through imitation learning. These approaches do not use MPC at runtime, and hence may often require retraining for novel tasks or environments. Furthermore, results from this line of work have been demonstrated predominantly in settings where a trajectory optimizer alone can solve the task or has access to demonstration data. In contrast, through our exploration schemes, we are able to solve tasks where trajectory optimization does not succeed by itself.

Planning and exploration: Exploration is a well-studied and important problem in reinforcement learning. The importance of having a wide and relevant state distribution for RL methods has been pointed out in numerous prior works Munos2008FiniteTimeBF ; Bagnell2003PolicySB ; Rajeswaran17nips . Strategies such as ϵ\epsilon-greedy or Gaussian exploration have recently been used to successfully solve a large number of dense reward problems. As the reward becomes sparse or heavily delayed, such strategies become intractable in high-dimensional settings. Critically, these approaches perform exploration on a per time-step basis, which can lead to back and forth wandering preventing efficient exploration. Parameter-space exploration (plappert2017parameter, ; fortunato2017noisy, ) methods do not explore at each time step, but rather generate correlated behaviors based on explored parameters at the start. However, such approaches do not consider exploration as an intentional act, but is rather a deviation from a well defined objective for the agent. Deep exploration strategies (osband2013more, ) sample a value function from the posterior and use it for greedy action selection. Approaches based on notions of intrinsic motivation and information gain (chentanez2005intrinsically, ; stadie2015incentivizing, ; houthooft2016vime, ; pathak2017curiosity, ; Bellemare2016UnifyingCE, ) also explicitly introduce exploration bonuses into the agent’s reward system. However, such approaches critically do not have the element of planning to explore; thus the agent may not actually reach regions of high predicted reward because it does not know how to get there. Our work is perhaps closest to the E3E3 framework of Kearns & Singh kearns2002near , which considers altered MDPs with different reward functions, and executes the optimal action under that MDP. However solving these altered MDPs is expensive and their solution is quickly discarded. MPC on the other hand can quickly solve for local instance-specific solutions in these MDPs.

Model-free RL: Our work investigates how much training times can be reduced over model-free methods when the internal model is an accurate representation of the world model. As a representative number, Schulman et al. schulman2015high report approximately 5 days of agent experience and 128 CPU core hours for solving tasks such as getting up from the ground. In contrast, POLO requires only 24 CPU core hours and 96 seconds of agent experience. Recently, policy gradient methods were also used for in-hand manipulation tasks (OpenAIHand, ), where 3 years of simulated experience and 500 CPU hours were used for object reorientation tasks. For a similar task, POLO only required 1 CPU hour. Of course, model-free methods do not require an accurate internal model, but our results suggest that much less experience may be required for the control aspect of the problem. Our work can also be viewed as a strong model-based baseline that model-free RL can strive to compete with, as well as a directly useful method for researchers studying simulation to reality transfer.

In an alternate line of work, internal models have been used for variance reduction purposes in model-free RL (Feinberg2018ModelBasedVE, ; buckman2018sample, ), in contrast to our use of MPC. Azizzadenesheli et al. GATS consider learning learning an internal model for discrete action domains like ALE and use short horizon MCTS for planning. Similarly, Nagabandi et al. Nagabandi2018NeuralND learn a dynamics model in simple continuous control tasks and use a random shooting MPC method for action selection. These lines of work consider the interplay between learning dynamics models and trajectory optimization, while improving the quality of the internal model. As a consequence, they focus on domains where simple action selection procedures with accurate models obtain near-optimal performance. In our work, we show that we can learn value functions to help real-time action selection with MPC on some of the most high-dimensional continuous control tasks studied recently. POLO allows for solving tasks that were not solvable with simple action-selection procedures. Thus, the two lines of work are complementary, and combining POLO with model learning would make for an interesting line of future work.

Conclusions and Future Work

In this work we presented POLO, which combines the strengths of trajectory optimization and value function learning. In addition, we studied the benefits of planning for exploration in settings where we track uncertainties in the value function. Together, these components enabled control of complex agents like 3D humanoid and five-fingered hand. In this work, we assumed access to an accurate internal dynamics model. A natural next step is to study the influence of approximation errors in the internal model and improving it over time using the real world interaction data.

Acknowledgements

The authors would like to thank Vikash Kumar for providing the in-hand manipulation task used in this work (originally developed as part of Rajeswaran-RSS-18 ). The authors would like to thank Vikash Kumar, Svetoslav Kolev, Ankur Handa, Robert Gens, and Byron Boots for helpful discussions. Sham Kakade acknowledges funding from the Washington Research Foundation for Innovation in Data-intensive Discovery, the DARPA award FA8650-18-2-7836, and the ONR award N00014-18-1-2247.

References

Appendix A Appendix: Experimental Details, Humanoid

The model used for the humanoid experiments was originally distributed with the MuJoCo software package and modified for our use. The model nominally has 27 degrees of freedom, including the floating base. It utilizes direct torque actuation for control, necessitating a small timestep of 0.008 seconds. The actuation input is limited to ±\pm1.0, but the original gear ratios are left unchanged.

For POLO, the choice of inputs for the value function involves a few design decisions. We take inspiration from robotics by using only easily observed values.

For value function approximation in POLO for the humanoid tasks, we use an ensemble of 6 neural networks, each of which has 2 layers with 16 hidden parameters each; tanh is used for non-linearity. Training is performed with 6464 gradient steps on minibatches of size 3232, using ADAM with default parameters, every 16 timesteps the agent experiences.

In scenarios where the agent resets, we consider a horizon of 600600 timesteps with 2020 episodes, giving a total agent lifetime of 1200012000 timesteps or 9696 seconds. When we consider no resets, we use the same total timesteps. A control cost is shared for each scenario, where we penalize an actuator’s applied force scaled by the inverse of the mass matrix. Task specific rewards are as follows.

In the getup scenario, the agent is initialized in a supine position, and is required to bring its root height to a target of 1.1 meters. The reward functions used are as follows. In the non-sparse case, the difficulty in this task is eschewing the immediate reward for sitting in favor of the delayed reward of standing; this sequence is non-trivial to discover.

A.2 Humanoid Walk

In the walking scenario, the agent is initialized in an upright configuration. We specify a reward function that either penalizes deviation from a target height of 1.1 meters, or penalizes the deviation from both a target speed of 1.0 meters/second and the distance from the world’s x-axis to encourage the agent to walk in a straight line. We choose a target speed as opposed to rewarding maximum speed to encourage stable walking gaits.

A.3 Humanoid Box

For the box environment, we place a 0.9 meter wide cube in front of the humanoid, which needs to be pushed to a specific point. The friction between the box and ground is very low, however, and most pushes cause the box to slide out of reach; POLO learns to better limit the initial push to control the box to the target.

In this setup, the observation vector increases with the global position of the box, and the dimensionality of the system increase by 6. The box initially starts 1.5 meters in front of the humanoid, and needs to be navigated to a position 2.5 meters in front of the humanoid.

Appendix B Appendix: Experimental Details, Hand Manipulation

We use the Adroit hand model and build on top of the hand manipulation task suite of . The hand is position controlled and the dice is modeled as a free object with 3 translational degrees of freedom and a ball joint for three rotational degrees of freedom. The base of the hand is not actuated, and the agent controls only the fingers and wrist. The dice is presented to the hand initially in some randomized configuration, and the agent has to reorient the dice to the desired configuration. The desired configuration is randomized every 7575 timesteps and the trajectory optimizer does not see this randomization. Thus the randomization can be interpreted as unmodelled external disturbances to the system. We use a very simple reward function for the task:

We use 80 trajectories in MPPI with temperature of 1010. We use an ensemble of 6 networks with 2 layers and 64 units each. The value function is updated every 25 steps of interaction with the world, and we take 16 gradient steps each with a batch size of 16. These numbers were arrived at after a coarse hyperparameter search, and we expect that better hyperparameter settings could exist.

Appendix C Lemma 2

Let τ^\hat{\tau} and τ∗\tau^{*} represent the trajectories of length HH that would be generated by applying π^MPC\hat{\pi}_{MPC} and π∗\pi^{*} respectively on the MDP. Starting from some state ss, we have:

Since max⁡s∣V^(s)−V∗(s)∣=ϵ\max_{s}|\hat{V}(s)-V^{*}(s)|=\epsilon, we have:

Furthermore, since τ^\hat{\tau} was generated by applying π^MPC\hat{\pi}_{MPC} which optimizes the actions using V^\hat{V} as the terminal value/reward function, we have:

by recursively applying the first bound to V∗(sH)−Vπ^MPC(sH)V^{*}(s_{H})-V^{\hat{\pi}_{MPC}}(s_{H}). This holds for all states, and hence for any distribution over states.

For eq. (13) to hold in general, and hence for the overall bound to hold, we require that the actions are optimized in closed loop. In other words, MPC has to optimize over the space of feedback policies as opposed to open loop actions. Many commonly used MPC algorithms like DDP and iLQG have this property through the certainty equivalence principle for the case of Gaussian noise. For deterministic dynamics, which is the case for most common simulators like MuJoCo, eq. (13) holds without the closed loop requirement. We summarize the different cases and potential ways to perform MPC below:

In the case of deterministic dynamics, the optimal open loop trajectory and optimal local feedback policies have the same performance up to finite horizon HH. Thus, any trajectory optimization algorithm, such as iLQG and MPPI can be used.

In the case of stochastic dynamics with additive Gaussian noise, local dynamic programming methods like iLQG and DDP provide efficient ways to optimize trajectories. These approaches also provide local feedback policies around the trajectories which are optimal due to the certainty equivalence principle.

In the case of general stochastic systems, various stochastic optimal control algorithms like path integral control can be used for the optimization. These situations are extremely rare in robotic control.

Finally, we also note that Sun et al. propose and arrive at a similar bound in the context of imitation learning and reward shaping. They however assume that a policy can simultaneously optimize the approximate value function over HH steps, which may not be possible for a parametric policy class. Since we consider MPC which is a non-parametric method (in the global sense), MPC can indeed simultaneously optimize for HH steps using V^\hat{V}.