Experience Replay Implementation

Advanced & Deep RL DS practice problem on Onlearn.

Difficulty: medium.

Topics: Understanding Experience Replay Buffers in Deep Q-Learning, Circular Buffer, Transition Tuple Storage, Random Sampling, Experience Decorrelation, IID Data Assumption, Reinforcement Learning, Data Structures, Stochastic Processes, Deep Learning Fundamentals, Optimization, Off-policy Learning, Temporal Difference Learning, Memory Management, Batch Processing, Stochastic Gradient Descent.

Implement a ReplayBuffer class that stores transitions (state, action, reward, next state, done). The class must support adding a transition and sampling a random batch of transitions of a specified size. Use a circular buffer approach to maintain a fixed capacity.