  Hamiltonian Monte Carlo (HMC) and related algorithms have become routinely
used in Bayesian computation. In this article, we present a simple and provably
accurate method to improve the efficiency of HMC and related algorithms with
essentially no extra computational cost. This is achieved by {recycling the
intermediate states along simulated trajectories of Hamiltonian dynamics.
Standard algorithms use only the end points of trajectories, wastefully
discarding all the intermediate states. Compared to the alternative methods for
utilizing the intermediate states, our algorithm is simpler to apply in
practice and requires little programming effort beyond the usual
implementations of HMC and related algorithms. Our algorithm applies
straightforwardly to the no-U-turn sampler, arguably the most popular variant
of HMC. Through a variety of experiments, we demonstrate that our recycling
algorithm yields substantial computational efficiency gains.
