LEARNING SELF-IMITATING DIVERSE POLICIES
Year: 2019

Abstract:
The success of popular algorithms for deep reinforcement learning, such as policygradients and Q-learning, relies heavily on the availability of an informative reward signal at each timestep of the sequential decision-making process. When rewards are only sparsely available during an episode, or a rewarding feedback is provided only after episode termination, these algorithms perform sub-optimally due to the difficultly in credit assignment. Alternatively, trajectory-based policy optimization methods, such as cross-entropy method and evolution strategies, do not require per-timestep rewards, but have been found to suffer from high sample complexity by completing forgoing the temporal nature of the problem. Improving the efficiency of RL algorithms in real-world problems with sparse or episodic rewards is therefore a pressing need. In this work, we introduce a self-imitation learning algorithm that exploits and explores well in the sparse and episodic reward settings. We view each policy as a state-action visitation distribution and formulate policy optimization as a divergence minimization problem. We show that with Jensen-Shannon divergence, this divergence minimization problem can be reduced into a policy-gradient algorithm with shaped rewards learned from experience replays. Experimental results indicate that our algorithm works comparable to existing algorithms in environments with dense rewards, and significantly better in environments with sparse and episodic rewards. We then discuss limitations of self-imitation learning, and propose to solve them by using Stein variational policy gradient descent with the Jensen-Shannon kernel to learn multiple diverse policies. We demonstrate its effectiveness on a challenging variant of continuous-control MuJoCo locomotion tasks.

heading: 1 INTRODUCTION
text: Deep reinforcement learning (RL) has demonstrated significant applicability and superior performance in many problems outside the reach of traditional algorithms, such as computer and board games (Mnih et al., 2015; Silver et al., 2016), continuous control (Lillicrap et al., 2015), and robotics (Levine et al., 2016). Using deep neural networks as functional approximators, many classical RL algorithms have been shown to be very effective in solving sequential decision problems. For example, a policy that selects actions under certain state observation can be parameterized by a deep neural network that takes the current state observation as input and gives an action or a distribution over actions as output. Value functions that take both state observation and action as inputs and predict expected future reward can also be parameterized as neural networks. In order to optimize such neural networks, policy gradient methods (Mnih et al., 2016; Schulman et al., 2015; 2017a) and Q-learning algorithms (Mnih et al., 2015) capture the temporal structure of the sequential decision problem and decompose it to a supervised learning problem, guided by the immediate and discounted future reward from rollout data.
Unfortunately, when the reward signal becomes sparse or delayed, these RL algorithms may suffer from inferior performance and inefficient sample complexity, mainly due to the scarcity of the immediate supervision when training happens in single-timestep manner. This is known as the temporal credit assignment problem (Sutton, 1984). For instance, consider the Atari Montezuma’s revenge game – a reward is received after collecting certain items or arriving at the final destination in the lowest level, while no reward is received as the agent is trying to reach these goals. The sparsity of the reward makes the neural network training very inefficient and also poses challenges in exploration. It is not hard to see that many of the real-world problems tend to be of the form where
rewards are either only sparsely available during an episode, or the rewards are episodic, meaning that a non-zero reward is only provided at the end of the trajectory or episode.
In addition to policy-gradient and Q-learning, alternative algorithms, such as those for global- or stochastic-optimization, have recently been studied for policy search. These algorithms do not decompose trajectories into individual timesteps, but instead apply zeroth-order finite-difference gradient or gradient-free methods to learn policies based on the cumulative rewards of the entire trajectory. Usually, trajectory samples are first generated by running the current policy and then the distribution of policy parameters is updated according to the trajectory-returns. The cross-entropy method (CEM, Rubinstein & Kroese (2016)) and evolution strategies (Salimans et al., 2017) are two nominal examples. Although their sample efficiency is often not comparable to the policy gradient methods when dense rewards are available from the environment, they are more widely applicable in the sparse or episodic reward settings as they are agnostic to task horizon, and only the trajectorybased cumulative reward is needed.
Our contribution is the introduction of a new algorithm based on policy-gradients, with the objective of achieving better performance than existing RL algorithms in sparse and episodic reward settings. Using the equivalence between the policy function and its state-action visitation distribution, we formulate policy optimization as a divergence minimization problem between the current policy’s visitation and the distribution induced by a set of experience replay trajectories with high returns. We show that with the Jensen-Shannon divergence (DJS), this divergence minimization problem can be reduced into a policy-gradient algorithm with shaped, dense rewards learned from these experience replays. This algorithm can be seen as self-imitation learning, in which the expert trajectories in the experience replays are self-generated by the agent during the course of learning, rather than using some external demonstrations. We combine the divergence minimization objective with the standard RL objective, and empirically show that the shaped, dense rewards significantly help in sparse and episodic settings by improving credit assignment. Following that, we qualitatively analyze the shortcomings of the self-imitation algorithm. Our second contribution is the application of Stein variational policy gradient (SVPG) with the Jensen-Shannon kernel to simultaneously learn multiple diverse policies. We demonstrate the benefits of this addition to the self-imitation framework by considering difficult exploration tasks with sparse and deceptive rewards.
Related Works. Divergence minimization has been used in various policy learning algorithms. Relative Entropy Policy Search (REPS) (Peters et al., 2010) restricts the loss of information between policy updates by constraining the KL-divergence between the state-action distribution of old and new policy. Policy search can also be formulated as an EM problem, leading to several interesting algorithms, such as RWR (Peters & Schaal, 2007) and PoWER (Kober & Peters, 2009). Here the M-step minimizes a KL-divergence between trajectory distributions, leading to an update rule which resembles return-weighted imitation learning. Please refer to Deisenroth et al. (2013) for a comprehensive exposition. MATL (Wulfmeier et al., 2017) uses adversarial training to bring state occupancy from a real and simulated agent close to each other for efficient transfer learning. In Guided Policy Search (GPS, Levine & Koltun (2013)), a parameterized policy is trained by constraining the divergence between the current policy and a controller learnt via trajectory optimization.
Learning from Demonstrations (LfD). The objective in LfD, or imitation learning, is to train a control policy to produce a trajectory distribution similar to the demonstrator. Approaches for self-driving cars (Bojarski et al., 2016) and drone manipulation (Ross et al., 2013) have used human-expert data, along with Behavioral Cloning algorithm to learn good control policies. Deep Q-learning has been combined with human demonstrations to achieve performance gains in Atari (Hester et al., 2017) and robotics tasks (Večerı́k et al., 2017; Nair et al., 2017). Human data has also been used in the maximum entropy IRL framework to learn cost functions under which the demonstrations are optimal (Finn et al., 2016). Ho & Ermon (2016) use the same framework to derive an imitation-learning algorithm (GAIL) which is motivated by minimizing the divergence between agent’s rollouts and external expert demonstrations. Besides humans, other sources of expert supervision include planningbased approaches such as iLQR (Levine et al., 2016) and MCTS (Silver et al., 2016). Our algorithm departs from prior work in forgoing external supervision, and instead using the past experiences of the learner itself as demonstration data.
Exploration and Diversity in RL. Count-based exploration methods utilize state-action visitation counts N(s, a), and award a bonus to rarely visited states (Strehl & Littman, 2008). In large statespaces, approximation techniques (Tang et al., 2017), and estimation of pseudo-counts by learning
density models (Bellemare et al., 2016; Fu et al., 2017) has been researched. Intrinsic motivation has been shown to aid exploration, for instance by using information gain (Houthooft et al., 2016) or prediction error (Stadie et al., 2015) as a bonus. Hindsight Experience Replay (Andrychowicz et al., 2017) adds additional goals (and corresponding rewards) to a Q-learning algorithm. We also obtain additional rewards, but from a discriminator trained on past agent experiences, to accelerate a policy-gradient algorithm. Prior work has looked at training a diverse ensemble of agents with good exploratory skills (Liu et al., 2017; Conti et al., 2017; Florensa et al., 2017). To enjoy the benefits of diversity, we incorporate a modification of SVPG (Liu et al., 2017) in our final algorithm.
In very recent work, Oh et al. (2018) propose exploiting past good trajectories to drive exploration. Their algorithm buffers (s, a) and the corresponding return for each transition in rolled trajectories, and reuses them for training if the stored return value is higher than the current state-value estimate. Our approach presents a different objective for self-imitation based on divergence-minimization. With this view, we learn shaped, dense rewards which are then used for policy optimization. We further improve the algorithm with SVPG. Reusing high-reward trajectories has also been explored for program synthesis and semantic parsing tasks (Liang et al., 2016; 2018; Abolafia et al., 2018).

heading: 2 MAIN METHODS
text: We start with a brief introduction to RL in Section 2.1, and then introduce our main algorithm of self-imitating learning in Section 2.2. Section 2.3 further extends our main method to learn multiple diverse policies using Stein variational policy gradient with Jensen-Shannon kernel.

heading: 2.1 REINFORCEMENT LEARNING BACKGROUND
text: A typical RL setting involves an environment modeled as a Markov Decision Process with an unknown system dynamics model p(st+1|st, at) and an initial state distribution p0(s0). An agent interacts sequentially with the environment in discrete time-steps using a policy π which maps the an observation st ∈ S to either a single action at (deterministic policy), or a distribution over the action space A (stochastic policy). We consider the scenario of stochastic policies over high-dimensional, continuous state and action spaces. The agent receives a per-step reward rt(st, at) ∈ R, and the RL objective involves maximization of the expected discounted sum of rewards, η(πθ) = Ep0,p,π [∑∞ t=0 γ tr(st, at) ] , where γ ∈ (0, 1] is the discount factor. The action-value function is
Qπ(st, at) = Ep0,p,π [∑∞ t′=t γ t′−tr(st′ , at′) ] . We define the unnormalized γ-discounted state-
visitation distribution for a policy π by ρπ(s) = ∑∞ t=0 γ
tP (st = s|π), where P (st = s|π) is the probability of being in state s at time t, when following policy π and starting state s0 ∼ p0. The expected policy return η(πθ) can then be written as Eρπ(s,a)[r(s, a)], where ρπ(s, a) = ρπ(s)π(a|s) is the state-action visitation distribution. Using the policy gradient theorem (Sutton et al., 2000), we can get the direction of ascent∇θη(πθ) = Eρπ(s,a) [ ∇θ log πθ(a|s)Qπ(s, a) ] .

heading: 2.2 POLICY OPTIMIZATION AS DIVERGENCE MINIMIZATION WITH SELF-IMITATION
text: Although the policy π(a|s) is given as a conditional distribution, its behavior is better characterized by the corresponding state-action visitation distribution ρπ(s, a), which wraps the MDP dynamics and fully decides the expected return via η(π) = Eρπ [r(s, a)]. Therefore, distance metrics on a policy π should be defined with respect to the visitation distribution ρπ , and the policy search should be viewed as finding policies with good visitation distributions ρπ that yield high reward. Suppose we have access to a good policy π∗, then it is natural to consider finding a π such that its visitation distribution ρπ matches ρπ∗ . To do so, we can define a divergence measureD(ρπ, ρπ∗) that captures the similarity between two distributions, and minimize this divergence for policy improvement.
Assume there exists an expert policy πE , such that policy optimization can be framed as minimizing the divergence minπD(ρπ, ρπE ), that is, finding a policy π to imitate πE . In practice, however, we do not have access to any real guiding expert policy. Instead, we can maintain a selected subsetME of highly-rewarded trajectories from the previous rollouts of policy π, and optimize the policy π to minimize the divergence between ρπ and the empirical state-action pair distribution {(si, ai)}ME :
min π D(ρπ, {(si, ai)}ME ). (1)
Since it is not always possible to explicitly formulate ρπ even with the exact functional form of π, we generate rollouts from π in the environment and obtain an empirical distribution of ρπ . To measure the divergence between two empirical distributions, we use the Jensen-Shannon divergence, with the following variational form (up to a constant shift) as exploited in GANs (Goodfellow et al., 2014):
DJS(ρπ, ρπE ) = max d(s,a),dE(s,a)
Ẽρπ [log d(s, a)
d(s, a) + dE(s, a) ] + ẼρπE [log
dE(s, a)
d(s, a) + dE(s, a) ], (2)
where d(s, a) and dE(s, a) are empirical density estimators of ρπ and ρπE , respectively. Under certain assumptions, we can obtain an approximate gradient of DJS w.r.t the policy parameters, thus enabling us to optimize the policy.
Gradient Approximation: Let ρπ(s, a) and ρπE (s, a) be the state-action visitation distributions induced by two policies π and πE respectively. Let dπ and dπE be the surrogates to ρπ and ρπE , respectively, obtained by solving Equation 2. Then, if the policy π is parameterized by θ, the gradient of DJS(ρπ, ρπE ) with respect to policy parameters (θ) can be approximated as:
∇θDJS(ρπ, ρπE ) ≈ Ẽρπ(s,a) [ ∇θ log πθ(a|s)Q̃π(s, a) ] ,
where Q̃π(st, at) = Ẽρπ(s,a) [ ∞∑ t′=t γt ′−t log
dπ(st′ , at′)
dπ(st′ , at′) + dπE (st′ , at′)
] ..
(3)
The derivation of the approximation and the underlying assumptions are in Appendix 5.1. Next, we introduce a simple and inexpensive approach to construct the replay memoryME using highreturn past experiences during training. In this way, ρπE can be seen as a mixture of deterministic policies, each representing a delta point mass distribution in the trajectory space or a finite discrete visitation distribution of state-action pairs. At each iteration, we apply the current policy πθ to sample b trajectories {τ}b1. We hope to include inME , the top-k trajectories (or trajectories with returns above a threshold) generated thus far during the training process. For this, we use a priorityqueue list forME which keeps the trajectories sorted according to the total trajectory reward. The reward for each newly sampled trajectory in {τ}b1 is compared with the current threshold of the priority-queue, updatingME accordingly. The frequency of updates is impacted by the exploration capabilities of the agent and the stochasticity in the environment. We find that simply sampling noisy actions from Gaussian policies is sufficient for several locomotion tasks (Section 3). To handle more challenging environments, in the next sub-section, we augment our policy optimization procedure to explicitly enhance exploration and produce an ensemble of diverse policies.
In the usual imitation learning framework, expert demonstrations of trajectories—from external sources—are available as the empirical distribution of ρπE of an expert policy πE . In our approach, since the agent learns by treating its own good past experiences as the expert, we can view the algorithm as self-imitation learning from experience replay. As noted in Equation 3, the gradient estimator of DJS has a form similar to policy gradients, but for replacing the true reward function with per-timestep reward defined as log(dπ(s, a)/(dπ(s, a) + dπE (s, a))). Therefore, it is possible to interpolate the gradient of DJS and the standard policy gradient. We would highlight the benefit of this interpolation soon. The net gradient on the policy parameters is:
∇θη(πθ) = (1− ν)Eρπ(s,a) [ ∇θ log πθ(a|s)Qr(s, a) ] − ν∇θDJS(ρπ, ρπE ), (4)
where Qr is the Q function with true rewards, and πE is the mixture policy represented by the samples inME . Let rφ(s, a) = dπ(s, a)/[dπ(s, a) + dπE (s, a)]. rφ(s, a) can be computed using parameterized networks for densities dπ and dπE , which are trained by solving theDJS optimization (Eq 2) using the current policy rollouts andME , where φ includes the parameters for dπ and dπE . Using Equation 3, the interpolated gradient can be further simplified to:
∇θη(πθ) = Eρπ(s,a) [ ∇θ log πθ(a|s) [ (1− ν)Qr(s, a) + νQr φ (s, a) ]] , (5)
where Qr φ (st, at) = −Ep0,p,π [∑∞ t′=t γ t′−t log rφ(st′ , at′) ] is the Q function calculated using − log rφ(s, a) as the reward. This reward is high in the regions of the S × A space frequented more by the expert than the learner, and low in regions visited more by the learner than the expert. The effective Q in Equation 5 is therefore an interpolation between Qr obtained with true environment rewards, and Qr φ obtained with rewards which are implicitly shaped to guide the learner
towards expert behavior. In environments with sparse or deceptive rewards, where the signal from Qr is weak or sub-optimal, a higher weight on Qr φ
enables successful learning by imitation. We show this empirically in our experiments. We further find that even in cases with dense environment rewards, the two gradient components can be successfully combined for policy optimization. The complete algorithm for self-imitation is outlined in Appendix 5.2 (Algorithm 1).
Limitations of self-imitation. We now elucidate some shortcomings of the self-imitation approach. Since the replay memoryME is only constructed from the past training rollouts, the quality of the trajectories inME is hinged on good exploration by the agent. Consider a maze environment where the robot is only rewarded when it arrives at a goal G placed in a far-off corner. Unless the robot reaches G once, the trajectories inME always have a total reward of zero, and the learning signal from Qr φ
is not useful. Secondly, self-imitation can lead to sub-optimal policies when there are local minima in the policy optimization landscape; for example, assume the maze has a second goal G′ in the opposite direction of G, but with a much smaller reward. With simple exploration, the agent may fillME with below-par trajectories leading to G′, and the reinforcement from Qr φ
would drive it further to G′. Thirdly, stochasticity in the environment may make it difficult to recover the optimal policy just by imitating the past top-k rollouts. For instance, in a 2-armed bandit problem with reward distributions Bernoulli (p) and Bernoulli (p+ ), rollouts from both the arms get conflated in ME during training with high probability, making it hard to imitate the action of picking the arm with the higher expected reward.
We propose to overcome these pitfalls by training an ensemble of self-imitating agents, which are explicitly encouraged to visit different, non-overlapping regions of the state-space. This helps to discover useful rewards in sparse settings, avoids deceptive reward traps, and in environments with reward-stochasticity like the 2-armed bandit, increases the probability of the optimal policy being present in the final trained ensemble. We detail the enhancements next.

heading: 2.3 IMPROVING EXPLORATION WITH STEIN VARIATIONAL GRADIENT
text: One approach to achieve better exploration in challenging cases like above is to simultaneously learn multiple diverse policies and enforce them to explore different parts of the high dimensional space. This can be achieved based on the recent work by Liu et al. (2017) on Stein variational policy gradient (SVPG). The idea of SVPG is to find an optimal distribution q(θ) over the policy parameters θ which maximizes the expected policy returns, along with an entropy regularization that enforces diversity on the parameter space, i.e.
max q
Eθ∼q[η(θ)] + αH(q).
Without a parametric assumption on q, this problem admits a challenging functional optimization problem. Stein variational gradient descent (SVGD, Liu & Wang (2016)) provides an efficient solution for solving this problem, by approximating q with a delta measure q = ∑n i=1 δθi/n, where {θi}ni=1 is an ensemble of policies, and iteratively update {θi} with
θi ← θi + ∆θi, ∆θi = 1
n n∑ j=1 [ ∇θjη(πθj )k(θj , θi) + α∇θjk(θj , θi) ] (6)
where k(θj , θi) is a positive definite kernel function. The first term in ∆θi moves the policy to regions with high expected return (exploitation), while the second term creates a repulsion pressure between policies in the ensemble and encourages diversity (exploration). The choice of kernel is critical. Liu et al. (2017) used a simple Gaussian RBF kernel k(θj , θi) = exp(−‖θj − θi‖22/h), with the bandwidth h dynamically adapted. This, however, assumes a flat Euclidean distance between θj and θi, ignoring the structure of the entities defined by them, which are probability distributions. A statistical distance, such as DJS , serves as a better metric for comparing policies (Amari, 1998; Kakade, 2002). Motivated by this, we propose to improve SVPG using JS kernel k(θj , θi) = exp(−DJS(ρπθj , ρπθi )/T ), where ρπθ (s, a) is the state-action visitation distribution obtained by running policy πθ, and T is the temperature. The second exploration term in SVPG involves the gradient of the kernel w.r.t policy parameters. With the JS kernel, this requires estimating gradient of DJS , which as shown in Equation 3, can be obtained using policy gradients with an appropriately trained reward function.
Our full algorithm is summarized in Appendix 5.3 (Algorithm 2). In each iteration, we apply the SVPG gradient to each of the policies, where the∇θη(πθ) in Equation 6 is the interpolated gradient from self-imitation (Equation 5). We also utilize state-value function networks as baselines to reduce the variance in sampled policy-gradients.

heading: 3 EXPERIMENTS
text: Our goal in this section is to answer the following questions: 1) How does self-imitation fare against standard policy gradients under various reward distributions from the environment, namely episodic, noisy and dense? 2) How far does the SVPG exploration go in overcoming the limitations of selfimitation, such as susceptibility to local-minimas?
We benchmark high-dimensional, continuous-control locomotion tasks based on the MuJoCo physics simulator by extending the OpenAI Baselines (Dhariwal et al., 2017) framework. Our control policies (θi) are modeled as unimodal Gaussians. All feed-forward networks have two layers of 64 hidden units each with tanh non-linearity. For policy-gradient, we use the clipped-surrogate based PPO algorithm (Schulman et al., 2017b). Further implementation details are in the Appendix.

heading: 3.1 SELF-IMITATION WITH DIFFERENT REWARD DISTRIBUTIONS
text: We evaluate the performance of self-imitation with a single agent in this sub-section; combination with SVPG exploration for multiple agents is discussed in the next. We consider the locomotion tasks in OpenAI Gym under 3 separate reward distributions: Dense refers to the default reward function in Gym, which provides a reward for each simulation timestep. In episodic reward setting, rather than providing r(st, at) at each timestep of an episode, we provide ∑ t r(st, at) at the last timestep of the episode, and zero reward at other timesteps. This is the case for many practical settings where the reward function is hard to design, but scoring each trajectory, possibly by a human (Christiano et al., 2017), is feasible. In noisy reward setting, we probabilistically mask out each out each per-timestep reward r(at, st) in an episode. Reward masking is done independently for every new episode, and therefore, the agent receives non-zero feedback at different—albeit only
few—timesteps in different episodes. The probability of masking-out or suppressing the rewards is denoted by pm.
In Figure 1, we plot the learning curves on three tasks with episodic rewards. Recall that ν is the hyper-parameter controlling the weight distribution between gradients with environment rewards and the gradients with shaped reward from rφ (Equation 5). The baseline PPO agents use ν = 0, meaning that the entire learning signal comes from the environment. We compare them with selfimitating (SI) agents using a constant value ν = 0.8. The capacity ofME is fixed at 10 trajectories. We didn’t observe our method to be particularly sensitive to the choice of ν and the capacity value. For instance, ν = 1 works equally well. Further ablation on these two hyper-parameters can be found in the Appendix.
In Figure 1, we see that the PPO agents are unable to make any tangible progress on these tasks with episodic rewards, possibly due to difficulty in credit assignment – the lumped rewards at the end of the episode can’t be properly attributed to the individual state-action pairs during the episode. In case of Self-Imitation, the algorithm has access to the shaped rewards for each timestep, derived from the high-return trajectories inME . This makes credit-assignment easier, leading to successful learning even for very high-dimensional control tasks such as Humanoid.
Table 1 summarizes the final performance, averaged over 5 runs with random seeds, under the various reward settings. For the noisy rewards, we compare performance with two different reward masking values - suppressing each reward r(st, at) with 90% probability (pm = 0.9), and with 50% probability (pm = 0.5). The density of rewards increases across the reward settings from left to right in Table 1. We find that SI agents (ν = 0.8) achieve higher average score than the baseline PPO agents (ν = 0) in majority of the tasks for all the settings. This indicates that not only does self-imitation vastly help when the environment rewards are scant, it can readily be incorporated with the standard policy gradients via interpolation, for successful learning across reward settings. For completion, we include performance of CEM and ES since these algorithms depend only on the total trajectory rewards and don’t exploit the temporal structure. CEM perform poorly in most of the cases. ES, while being able to solve the tasks, is sample-inefficient. We include ES performance from Salimans et al. (2017) after 5M timesteps of training for a fair comparison with our algorithm.

heading: 3.2 CHARACTERIZING ENSEMBLE OF DIVERSE SELF-IMITATING POLICIES
text: We now conduct experiments to show how self-imitation can lead to sub-optimal policies in certain cases, and how the SVPG objective, which trains an ensemble with an explicit DJS repulsion between policies, can improve performance.
2D-Navigation. Consider a simple Maze environment where the start location of the agent (blue particle) is shown in the figure on the right, along with two regions – the red region is closer to agent’s starting location but has a per-timestep reward of only 1 point if the agent hovers over it; the green region is on the other side of the wall but has a per-timestep reward of 10 points. We run 8 independent, non-interacting, self-imitating (with ν = 0.8) agents on this task. This ensemble is denoted as SI-independent. Figures 2a plots the state-visitation density for SI-independent after training, from which it is evident that the agents get trapped in the local minima. The red-region is relatively easily explored and trajectories leading to it fill theME , causing sub-optimal imitation. We contrast this with an instantiation of our full
algorithm, which is referred to as SI-interact-JS. It is composed of 8 self-imitating agents which share information for gradient calculation with the SVPG objective (Equation 6). The temperature T = 0.5 is held constant, and the weight on exploration-facilitating repulsion term (α) is linearly decayed over time. Figure 2b depicts the state-visitation density for this ensemble. SI-interact-JS explores wider portions of the maze, with multiple agents reaching the green zone of high reward.
Figures 2c and 2d show the kernel matrices for the two ensembles after training. Cell (i, j) in the matrix corresponds to the kernel value k(θi, θj) = exp(−JS(ρi, ρj)/T ). For SI-independent, many darker cells indicate that policies are closer (low JS). For SI-interact-JS, which explicitly tries to decrease k(θi, θj), the cells are noticeably lighter, indicating dissimilar policies (high JS). Behavior of PPO-independent (ν = 0) is similar to SI-independent (ν = 0.8) for the Maze task.
Locomotion. To explore the limitations of self-imitation in harder exploration problems in highdimensional, continuous state-action spaces, we modify 3 MuJoCo tasks as follows – SparseHalfCheetah, SparseHopper and SparseAnt yield a forward velocity reward only when the centerof-mass of the corresponding bot is beyond a certain threshold distance. At all timesteps, there is an energy penalty to move the joints, and a survival bonus for bots that can fall over causing premature episode termination (Hopper, Ant). Figure 3 plots the performance of PPO-independent, SI-independent, SI-interact-JS and SI-interact-RBF (which uses RBF-kernel from Liu et al. (2017) instead of the JS-kernel) on the tasks. Each of these 4 algorithms is an ensemble of 8 agents using the same amount of simulation timesteps. The results are averaged over 3 separate runs, where for each run, the best agent from the ensemble after training is selected.
The SI-independent agents rely solely on action-space noise from the Gaussian policy parameterization to find high-return trajectories which are added to ME as demonstrations. This is mostly inadequate or slow for sparse environments. Indeed, we find that all demonstrations in ME for SparseHopper are with the bot standing upright (or tilted) and gathering only the survival bonus, as action-space noise alone can’t discover hopping behavior. Similarly, for SparseHalfCheetah,ME has trajectories with the bot haphazardly moving back and forth. On the other hand, in SI-interactJS, the DJS repulsion term encourages the agents to be diverse and explore the state-space much more effectively. This leads to faster discovery of quality trajectories, which then provide good reinforcement through self-imitation, leading to higher overall score. SI-interact-RBF doesn’t perform as well, suggesting that the JS-kernel is more formidable for exploration. PPO-independent gets stuck in the local optimum for SparseHopper and SparseHalfCheetah – the bots stand still after training, avoiding energy penalty. For SparseAnt, the bot can cross our preset distance threshold using only action-space noise, but learning is slow due to naı̈ve exploration.

heading: 4 CONCLUSION AND FUTURE WORK
text: We approached policy optimization for deep RL from the perspective of JS-divergence minimization between state-action distributions of a policy and its own past good rollouts. This leads to a self-imitation algorithm which improves upon standard policy-gradient methods via the addition of a simple gradient term obtained from implicitly shaped dense rewards. We observe substantial performance gains over the baseline for high-dimensional, continuous-control tasks with episodic and noisy rewards. Further, we discuss the potential limitations of the self-imitation approach, and
propose ensemble training with the SVPG objective and JS-kernel as a solution. Through experimentation, we demonstrate the benefits of a self-imitating, diverse ensemble for efficient exploration and avoidance of local minima.
An interesting future work is improving our algorithm using the rich literature on exploration in RL. Since ours is a population-based exploration method, techniques for efficient single agent exploration can be readily combined with it. For instance, parameter-space noise or curiosity-driven exploration can be applied to each agent in the SI-interact-JS ensemble. Secondly, our algorithm for training diverse agents could be used more generally. In Appendix 5.6, we show preliminary results for two cases: a) hierarchical RL, where a diverse group of Swimmer bots is trained for downstream use in a complex Swimming+Gathering task; b) RL without environment rewards, relying solely on diversity as the optimization objective. Further investigation is left for future work.

heading: 5 APPENDIX

heading: 5.1 DERIVATION OF GRADIENT APPROXIMATION
text: Let d∗π(s, a) and d ∗ E(s, a) be the exact state-action densities for the current policy (πθ) and the expert, respectively. Therefore, by definition, we have (up to a constant shift):
DJS(ρπθ , ρπE ) = Ẽρπθ [log d∗π(s, a)
d∗π(s, a) + d ∗ E(s, a)
] + ẼρπE [log d∗E(s, a)
d∗π(s, a) + d ∗ E(s, a)
]
Now, d∗π(s, a) is a local surrogate to ρπθ (s, a). By approximating it to be constant in an −ball neighborhood around θ, we get the following after taking gradient of the above equation w.r.t θ:
∇θDJS(ρπθ , ρπE ) ≈ ∇θẼρπθ [log d∗π(s, a)
d∗π(s, a) + d ∗ E(s, a) ]︸ ︷︷ ︸ r(s, a) + 0
= Ẽρπθ (s,a) [ ∇θ log πθ(a|s)Q̃π(s, a) ] ,
where Q̃π(st, at) = Ẽρπθ (s,a) [ ∞∑ t′=t γt ′−tr(st′ , at′) ] The last step follows directly from the policy gradient theorem (Sutton et al., 2000). Since we do not have the exact densities d∗π(s, a) and d ∗ E(s, a), we substitute them with the optimized density estimators dπ(s, a) and dE(s, a) from the maximization in Equation 2 for computing DJS . This gives us the gradient approximation mentioned in Section 2.2. A similar approximation is also used by Ho & Ermon (2016) for Generative Adversarial Imitation Learning (GAIL).

heading: 5.2 ALGORITHM FOR SELF-IMITATION
text: Notation: θ = Policy parameters φ = Discriminator parameters r(s, a) = Environment reward
Algorithm 1: 1 θ, φ ∼ initial parameters 2 ME ← empty replay memory 3 for each iteration do 4 Generate batch of trajectories {τ}b1 with two rewards for each transition: r1 = r(s, a) and r2 = − log rφ(s, a) 5 UpdateME using priory queue threshold
/* Update policy θ */ 6 for each minibatch do 7 Calculate g1 = ∇θηr1(πθ) with PPO objective using r1 reward 8 Calculate g2 = ∇θηr2(πθ) with PPO objective using r2 reward 9 Update θ with (1− ν)g1 + νg2 using ADAM
10 end /* Update self-imitation discriminator φ */ 11 for each epoch do 12 s1 ← Sample mini-batch of (s,a) fromME 13 s2 ← Sample mini-batch of (s,a) from {τ}b1 14 Update φ with log-loss objective using s1, s2 15 end 16 end

heading: 5.3 ALGORITHM FOR SELF-IMITATING DIVERSE POLICIES
text: Notation: θi = Policy parameters for rank i φi = Self-imitation discriminator parameters for rank i ψi = Empirical density network parameters for rank i
Algorithm 2: /* This is run for every rank i ∈ 1 . . . n */
1 θi, φi, ψi ∼ some initial distributions 2 ME ← empty replay memory local to rank i 3 k(i, j)← 0,∀j 6= i 4 for each iteration do 5 Generate batch of trajectories {τi}b1 6 UpdateME using priory queue threshold
/* Update policy θi */ 7 for each minibatch do 8 Calculate∇θiη(πθi) using self-imitation (as in Algorithm 1) 9 MPI send: ∇θiη(πθi) to other ranks
10 MPI recv: ∇θjη(πθj ) from other ranks 11 Calculate∇θik(i, j) using ψi, ψj 12 Use k(i, j) and lines 8, 10, 11 in SVPG to get ∆θi 13 Update θi with ∆θi using ADAM 14 end
/* Update self-imitation discriminator φi */ 15 for each epoch do 16 s1 ← Sample mini-batch of (s,a) fromME 17 s2 ← Sample mini-batch of (s,a) from {τi}b1 18 Update φi with log-loss objective using s1, s2 19 end
/* Update state-action visitation network ψi */ 20 MPI send: ψi to other ranks 21 MPI send: {τi}b1 to other ranks 22 MPI recv: ψj from other ranks 23 MPI recv: {τj}b1 from other ranks 24 Update ψi with log-loss objective using ψj , {τi}b1, {τj}b1 25 Update k(i, j) 26 end

heading: 5.4 ABLATION STUDIES
text: We show the sensitivity of self-imitation to ν and the capacity ofME , denoted by C. The experiments in this subsection are done on Humanoid and Hopper tasks with episodic rewards. The tables show the average performance over 5 random seeds. For ablation on ν, C is fixed at 10; for ablation on C, ν is fixed at 0.8. With episodic rewards, a higher value of ν helps boost performance since the RL signal from the environment is weak. With ν = 0.8, there isn’t a single best choice for C, though all values of C give better results than baseline PPO (ν = 0).
Humanoid Hopper ν = 0 532 354 ν = 0.2 395 481 ν = 0.5 810 645 ν = 0.8 3602 2618 ν = 1 3891 2633
Humanoid Hopper C = 1 2861 1736 C = 5 2946 2415 C = 10 3602 2618 C = 25 2667 1624 C = 50 4159 2301

heading: 5.5 HYPERPARAMETERS
text: - Horizon (T) = 1000 (locomotion), 250 (Maze), 5000 (Swimming+Gathering) - Discount (γ) = 0.99 - GAE parameter (λ) = 0.95 - PPO internal epochs = 5 - PPO learning rate = 1e-4 - PPO mini-batch = 64

heading: 5.6 LEVERAGING DIVERSE POLICIES
text: The diversity-promoting DJS repulsion can be used for various other purposes apart from aiding exploration in the sparse environments considered thus far. First, we consider the paradigm of hierarchical reinforcement learning wherein multiple sub-policies (or skills) are managed by a highlevel policy, which chooses the most apt sub-policy to execute at any given time. In Figure 4, we use the Swimmer environment from Gym and show that diverse skills (movements) can be acquired in a pre-training phase whenDJS repulsion is used. The skills can then be used in a difficult downstream task. During pre-training with SVPG, exploitation is done with policy-gradients calculated using the norm of the velocity as dense rewards, while the exploration term uses the JS-kernel. As before, we compare an ensemble of 8 interacting agents with 8 independent agents. Figures 4a and 4b depict the paths taken by the Swimmer after training with independent and interacting agents, respectively. The latter exhibit variety. Figure 4c is the downstream task of Swimming+Gathering (Duan et al., 2016) where the bot has to swim and collect the green dots, whilst avoiding the red ones. The utility of pre-training a diverse ensemble is shown in Figure 4d, which plots the performance on this task while training a higher-level categorical manager policy (|A| = 8). Diversity can sometimes also help in learning a skill without any rewards from the environment, as observed by Eysenbach et al. (2018) in recent work. We consider a Hopper task with no rewards, but we do require weak supervision in form of the length of each trajectory L. Using policy-gradient
with L as reward andDJS repulsion, we see the emergence of hopping behavior within an ensemble of 8 interacting agents. Videos of the skills acquired can be found here 1.

heading: 5.7 PERFORMANCE ON MORE MUJOCO TASKS

heading: 5.8 ADDITIONAL DETAILS ON SVPG EXPLORATION WITH JS-KERNEL

heading: 5.8.1 SVPG FORMULATION
text: Let the policy parameters be parameterized by θ. To achieve diverse, high-return policies, we seek to obtain the distribution q∗(θ) which is the solution of the optimization problem: maxq Eθ∼q[η(θ)] + αH(q), where H(q) = Eθ∼q[− log q(θ)] is the entropy of q. Solving the above equation by setting derivative to zero yields the an energy-based formulation for the optimal policy-parameter distribution: q∗(θ) ∝ exp(η(θ)α ). Drawing samples from this posterior using traditional methods such as MCMC is computationally intractable. Stein variational gradient descent (SVGD; Liu & Wang (2016)) is an efficient method for generating samples and also converges to the posterior of the energy-based model. Let {θ}n1 be the n particles that constitute the policy ensemble. SVGD provides appropriate direction for perturbing each particle such that induced KL-divergence between the particles and the target distribution q∗(θ) is reduced. The perturbation (gradient) for particle θi is given by (please see Liu & Wang (2016) for derivation):
∆θi = 1
n n∑ j=1 [ ∇θj log q∗(θj)k(θj , θi) +∇θjk(θj , θi) ] where k(θj , θi) is a positive definite kernel function. Using q∗(θ) ∝ exp(η(θ)α ) as target distribution, and k(θj , θi) = exp(−DJS(ρπθj , ρπθi )/T ) as the JS-kernel, we get the gradient direction for ascent:
∆θi = 1
n n∑ j=1 exp(−DJS(ρπθj , ρπθi )/T ) [ ∇θj η(πθj ) α − 1 T ∇θjDJS(ρπθj , ρπθi ) ] where ρπθ (s, a) is the state-action visitation distribution for policy πθ, and T is the temperature. Also, for our case,∇θjη(πθj ) is the interpolated gradient from self-imitation (Equation 5).
1https://sites.google.com/site/tesr4t223424

heading: 5.8.2 IMPLEMENTATION DETAILS
text: The −∇θjDJS(ρπθj , ρπθi ) gradient in the above equation is the repulsion factor that pushes πθi away from πθj . Similar repulsion can be achieved by using the gradient +∇θiDJS(ρπθj , ρπθi ); note that this gradient is w.r.t θi instead of θj and the sign is reversed. Empirically, we find that the latter results in slightly better performance.
Estimation of ∇θiDJS(ρj , ρi): This can be done in two ways - using implicit and explicit distributions. In the implicit method, we could train a parameterized discriminator network (φ) using state-actions pairs from πi and πj to implicitly approximate the ratio r φ ij = ρπi(s, a)/[ρπi(s, a) + ρπj (s, a)]. We could then use the policy gradient theorem to obtain the gradient of DJS as explained in Section 2.2. This, however, requires us to learn O(n2) discriminator networks for a population of size n, one for each policy pair (i, j). To reduce the computational and memory resource burden to O(n), we opt for explicit modeling of ρπi . Specifically, we train a network ρψi to approximate the state-action visitation density for each policy πi. The ρψ1 . . . ρψn networks are learned using the DJS optimization (Equation 2), and we can easily obtain the ratio rij(s, a) = ρψi(s, a)/[ρψi(s, a) + ρψj (s, a)]. The agent then uses log rij(s, a) as the SVPG exploration rewards in the policy gradient theorem.
State-value baselines: We use state-value function networks as baselines to reduce the variance in sampled policy-gradients. Each agent θi in a population of size n trains n+ 1 state-value networks corresponding to real environment rewards r(s, a), self-imitation rewards − log rφ(s, a), and n− 1 SVPG exploration rewards log rij(s, a).

heading: 5.9 COMPARISON TO OH ET AL. (2018)
text: In this section, we provide evaluation for a recently proposed method for self-imitation learning (SIL; Oh et al. (2018)). The SIL loss function take the form:
LSIL = Es,a,D [ − log πθ(a|s)(R− Vθ(s))+ + β
2 ||(R− Vθ(s))+||2 ] In words, the algorithm buffers (s, a) and the corresponding return (R) for each transition in rolled trajectories, and reuses them for training if the stored return value is higher than the current statevalue estimate Vθ(s).
We use the code provided by the authors 2. As per our understanding, PPO+SIL does not use a single set of hyper-parameters for all the MuJoCo tasks (Appendix A; Oh et al. (2018)). We follow their methodology and report numbers for the best configuration for each task. This is different from our experiments since we run all tasks on a single fix hyper-parameter set (Appendix 5.5), and therefore a direct comparison of the average scores between the two approaches is tricky.
Table 3 shows the performance of PPO+SIL on MuJoCo tasks under the various reward distributions explained in Section 3.1 - dense, episodic and noisy. We observe that, compared to the dense rewards setting (default Gym rewards), the performance suffers under the episodic case and when the rewards are masked out with pm = 0.9. Our intuition is as follows. PPO+SIL makes use of the cumulative
2https://github.com/junhyukoh/self-imitation-learning
return (R) from each transition of a past good rollout for the update. When rewards are provided only at the end of the episode, for instance, cumulative return does not help with the temporal credit assignment problem and hence is not a strong learning signal. Our approach, on the other hand, derives dense, per-timestep rewards using an objective based on divergence-minimization. This is useful for credit assignment, and as indicated in Table 1. (Section 3.1) leads to learning good policies even under the episodic and noisy pm = 0.9 settings.

heading: 5.10 COMPARISON TO OFF-POLICY RL (Q-LEARNING)
text: Our approach makes use of replay memoryME to store the past good rollouts of the agent. Offpolicy RL methods such as DQN (Mnih et al., 2015) also accumulate agent experience in a replay buffer and reuse them for learning (e.g. by reducing TD-error). In this section, we evaluate the performance of one such recent algorithm - Twin Delayed Deep Deterministic policy gradient (TD3; Fujimoto et al. (2018)) on tasks with episodic and noisy rewards. TD3 builds on DDPG (Lillicrap et al., 2015) and surpasses its performance on all the MuJoCo tasks evaluated by the authors.
Table 4 shows that the performance of TD3 suffers appreciably with the episodic and noisy pm = 0.9 reward settings, indicating that popular off-policy algorithms (DDPG, TD3) do not exploit the past experience in a manner that accelerates learning when rewards are scarce during an episode.
* For 3 tasks used in our paper—Swimmer and the high-dimensional Humanoid, HumanoidStandup—the TD3 code from the authors 3 is unable to learn a good policy even in presence of dense rewards (default Gym rewards). These tasks are also not included in the evaluation by Fujimoto et al. (2018).

heading: 5.11 COMPARING SVPG EXPLORATION TO A NOVELTY-BASED BASELINE
text: We run a new exploration baseline - EX2 (Fu et al., 2017) and compare its performance to SIinteract-JS on the hard exploration MuJoCo tasks considered in Section 3.2. The EX2 algorithm does implicit state-density ρ(s) estimation using discriminative modeling, and uses it for noveltybased exploration by adding − log ρ(s) as the bonus. We used the author provided code 4 and hyperparameter settings. TRPO is used as the policy gradient algorithm.
3https://github.com/sfujim/TD3 4https://github.com/jcoreyes/ex2

Review summaries:
The paper proposes how previously experienced high reward trajectories can be used to generate dense reward functions for more for efficient training of policies in context of reinforcement learning. The paper does this by computing the state-action pair distribution of high rewarding trajectories in the replay buffer, and using a surrogate reward that measures the distance between this distribution and the current state-action pair distribution. The paper derives approximate policy gradients for this surrogate reward function. The paper then describes limitations of doing this: possibility of getting stuck in the local neighborhood of currently well-performing trajectories. It also describes an extension based on Stein variational policy gradients to diversify behavior of an ensemble of policies that are learned together. The paper shows experimental results on a number of MuJoCo tasks.