Module: rainbow_agent
Compact implementation of a simplified Rainbow agent.
Specifically, we implement the following components from Rainbow:
- n-step updates;
- prioritized replay; and
- distributional RL.
These three components were found to significantly impact the performance of the
Atari game-playing agent.
Furthermore, our implementation does away with some minor hyperparameter
choices. Specifically, we
- keep the beta exponent fixed at beta=0.5, rather than increase it linearly;
- remove the alpha parameter, which was set to alpha=0.5 throughout the paper.
Details in “Rainbow: Combining Improvements in Deep Reinforcement Learning” by
Hessel et al. (2018).
Classes
class RainbowAgent
: A compact
implementation of a simplified Rainbow agent.
Functions
project_distribution(...)
: Projects
a batch of (support, weights) onto target_support.