exarl.agents.agent_vault._prioritized_replay
Module Contents
Classes
Class implements Prioritized Experience Replay (PER) |
- class exarl.agents.agent_vault._prioritized_replay.PrioritizedReplayBuffer(maxlen)
Class implements Prioritized Experience Replay (PER)
PER constructor
- Parameters
maxlen (int) – buffer length
- add(self, experience)
Add experiences to buffer
- Parameters
experience (list) – state, action, reward, next_state, done
- Returns
full_buffer (done) – True if buffer is full
- get_probabilities(self, priority_scale)
Get probabilities for experiences
- Parameters
priority_scale (float64) – range [0, 1]
- Returns
sample_probabilities (numpy array) – probabilities assigned to experiences based on weighting factor (scale)
- get_importance(self, probabilities)
Compute importance
- Parameters
probabilities (numpy array) – experience probabilities
- Returns
importance_normalized (numpy array) – normalized importance
- sample(self, batch_size, priority_scale=1.0)
Sample experiences
- Parameters
batch_size (int) – size of batch
priority_scale (float, optional) – range = [0, 1]. Defaults to 1.0.
- Returns
samples (list) – sampled based on probabilities importance (numpy array): Importance of samples sample_indices (array): Indices of samples
- set_priorities(self, indices, errors, offset=0.1)
Set priorities to experiences
- Parameters
indices (array) – sample indices
errors (array) – corresponding losses
offset (float, optional) – Small offset. Defaults to 0.1.
- get_buffer_length(self)
Get buffer length
- Returns
(int) – buffer length