{'fraction_non_alphanumeric': 0.0358283079106066, 'fraction_numerical': 0.008247605533877262, 'mean_word_length': 4.667448483833138, 'pattern_counts': {'":': 0, '<': 1, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Reinforcement Learning with Random Delays

Action and observation delays commonly occur in many Reinforcement Learning applications, such as remote control scenarios. We study the anatomy of randomly delayed environments, and show that partially resampling trajectory fragments in hindsight allows for off-policy multi-step value estimation. We apply this principle to derive Delay-Correcting Actor-Critic (DCAC), an algorithm based on Soft Actor-Critic with significantly better performance in environments with delays. This is shown theoretically and also demonstrated practically on a delay-augmented version of the MuJoCo continuous control benchmark.


INTRODUCTION
This article is concerned with the Reinforcement Learning (RL) scenario depicted in Figure 1, which is commonly encountered in real-world applications (Mahmood et al., 2018;Fuchs et al., 2020;Hwangbo et al., 2017). Oftentimes, actions generated by the agent are not immediately applied in the environment, and observations do not immediately reach the agent. Such environments have mainly been studied under the unrealistic assumption of constant delays (Nilsson et al., 1998;Ge et al., 2013;Mahmood et al., 2018). Here, prior work has proposed different planning algorithms which naively try to undelay the environment by simulating future observations (Walsh et al., 2008;Schuitema et al., 2010;Firoiu et al., 2018).
We propose an off-policy, planning-free approach that enables lowbias and low-variance multi-step value estimation in environments with random delays. First, we study the anatomy of such environments in order to exploit their structure, defining Random-Delay Markov Decision Processes (RDMDP). Then, we show how to transform trajectory fragments collected under one policy into trajectory fragments distributed according to another policy. We demonstrate this principle by deriving a novel off-policy algorithm (DCAC) based on Soft Actor-Critic (SAC), and exhibiting greatly improved performance in delayed environments. Along with this work we release our code, including a wrapper that conveniently augments any OpenAI gym environment with custom delays.

DELAYED ENVIRONMENTS
We frame the general setting of real-world Reinforcement Learning in terms of an agent, random observation delays, random action delays, and an undelayed environment. At the beginning of each time-step, the agent starts computing a new action from the most recent available delayed observation. Meanwhile, a new observation is sent and the most recent delayed action is applied in the undelayed environment. Real-valued delays are rounded up to the next integer time-step. For a given delayed observation s t , the observation delay ω t refers to the number of elapsed time-steps from when s t finishes being captured to when it starts being used to compute a new action. The action delay α t refers to the number of elapsed time-steps from when the last action influencing s t starts being computed to one time-step before s t finishes being captured. We further refer to ω t + α t as the total delay of s t .
As a motivating illustration of real-world delayed setting, we have collected a dataset of communication delays between a decisionmaking computer and a flying robot over WiFi, summarized in Figure 2. In the presence of such delays, the naive approach is to simply use the last received observation. In this case, any delay longer than one time-step violates the Markov assumption, since the last sent action becomes an unobserved part of the current state of the environment. To overcome this issue, we define a Markov Decision Process that takes into account the communication dynamics.

RANDOM DELAY MARKOV DECISION PROCESSES
To ensure the Markov property in delayed settings, it is necessary to augment the delayed observation with at least the last K sent actions. K is the combined maximum possible observation and action delay. This is required as the oldest actions along with the delayed observation describe the current state of the undelayed environment, whereas the most recent actions are yet to be applied (see Appendix C). Using this augmentation suffices to ensure that the Markov property is met in certain delayed environments. On the other hand, it is possible to do much better when the delays themselves are also part of the state-space. First, this allows us to model self-correlated delays, e.g. discarding outdated actions and observations (see Appendix A.1). Second, this provides useful information to the model about how old an observation is and what actions have been applied next. Third, knowledge over the total delay allows for efficient credit assignment and off-policy partial trajectory resampling, as we show in this work.
Definition 1. A Random Delay Markov Decision Process RDMDP (E, p ω , p α ) = (X, A,μ,p) augments a Markov Decision Process E = (S, A, µ, p) with: transition distributionp(s ,u ,ω ,α ,r |s,u,ω,α,a)=f ω−ω (s ,α ,r |s,u,ω,α,a)p ω (ω |ω)p u (u |u,a), where s ∈ S is the delayed observation, u ∈ A K is a buffer of the last K sent actions, ω ∈ N is the observation delay, and α ∈ N is the action delay as defined above. To avoid conflicting with the subscript notation, we index the action buffers' elements using square brackets. . We slightly override this notation and additionally define u[0] = a.
The constants c u ∈ A K and c ω , c α ∈ N initialize u, ω, α, since δ is the Dirac delta distribution. The transition distribution itself is composed of three parts: (1) The observation delay distribution p ω modelling the evolution of observation delays. Note that this density function must represent a discrete distribution (i.e. be a weighted sum of Dirac delta distributions). Furthermore, this process will repeat observations if there are no new ones available. This means that the observation delay can maximally grow by one from one time-step to the next.
(3) The distribution f ∆ describing the evolution of observations, rewards and action delays (Definition 2).
Here, p α is the action delay distribution which, similar to p ω , must be discrete. The transition distribution of the underlying, undelayed MDP is p. The r − r * term accumulates intermediate rewards in case observations are skipped or repeated (see Appendix A.4). Since the observation delay cannot increment by more than one, f −1 is used when ω is increasing, whereas f 0 is used when there is no change in observation delay.
A simple special case of the RDMDP is the constant observation and action delay case with p ω (ω |ω) = δ(ω − c ω ) and p α (α |α) = δ(α − c α ). Here, the RDMDP reduces to a Constantly Delayed Markov Decision Process, described by Walsh et al. (2008). In this case, the action and observation delays α, ω can be removed from the state-space as they don't carry information. Examples of RDMDP dynamics are visualized in Figure 3 (see also Appendix C).

REINFORCEMENT LEARNING IN DELAYED ENVIRONMENTS
Delayed environments as described in Section 2 are specific types of MDP, with an augmented statespace and delayed dynamics. Therefore, using this augmented state-space, traditional algorithms such as Soft Actor-Critic (SAC) (Haarnoja et al., 2018a)(Haarnoja et al., 2018b) will always work in randomly delayed settings. However, their performance will still deteriorate because of the more difficult credit assignment caused by delayed observations and rewards, on top of the exploration and generalization burdens of delayed environments. We now analyze how to compensate for the credit assignment difficulty by leveraging our knowledge about the delays' dynamics.
One solution is to perform on-policy multi-step rollouts on sub-trajectories that are longer than the considered delays. On the other hand, on-policy algorithms are known to be sample-inefficient and therefore are not commonly used in real-world applications, where data collection is costly. This motivates the development of off-policy algorithms able to reuse old samples, such as SAC.
Intuitively, in delayed environments, one should take advantage of the fact that actions only influence observations and rewards after a number of time-steps relative to the beginning of their computation (the total delay ω + α). Since the delay information is part of the state-space, it can be leveraged to track the action influence through time. However, applying conventional off-policy algorithms in delayed settings leads to the following issue: the trajectories used to perform the aforementioned multi-step backups have been sampled under an outdated policy, and therefore contain outdated action buffers. In this section, we propose a method to tackle this issue by performing partial trajectory resampling. We make use of the fact that the delayed dynamics are known to simulate the effect they would have had under the current policy, effectively transforming off-policy sub-trajectories into on-policy sub-trajectories. This enables us to derive a family of efficient off-policy algorithms for randomly delayed settings.

PARTIAL TRAJECTORY RESAMPLING IN DELAYED ENVIRONMENTS
One important observation implied by Figure 3 is that, given the delayed dynamics of RDMDPs , some actions contained in the action buffer of an off-policy state did not influence the subsequent delayed Figure 4: Partial resampling of a small sub-trajectory. The action buffer is recursively resampled according to the current policy π (rewards are not modified by σ and are omitted here).
observations and rewards for a number of time-steps. Therefore, if an off-policy sub-trajectory is short enough, it is possible to recursively resample its action buffers with no influence on the return. We propose the following transformation of off-policy sub-trajectories: Definition 3. The partial trajectory resampling operator recursively updates action buffers as follows This operator recursively resamples the most recent actions of each action buffer in an input subtrajectory τ n , according to a new policy π. Everything else stays unchanged. A visual example is provided in Figure 4 with n = 2 and an action buffer of two actions. When resampled actions are delayed and would not affect the environment, they do not "invalidate" the sub-trajectory. The resampled trajectories can then be considered on-policy.

The condition in Equation 4
can be understood visually with the help of Figure 3. In the constant delay example it is fulfilled until the third time-step. After that, the observations would have been influenced by the resampled actions (starting with a 0 ).

MULTI-STEP OFF-POLICY VALUE ESTIMATION IN DELAYED ENVIRONMENTS
We have shown in Section 3.1 how it is possible to transform off-policy sub-trajectories into on-policy sub-trajectories in the presence of random delays. From this, we can derive a family of efficient off-policy algorithms for the randomly delayed setting. For this matter, we make use of the classic on-policy Monte-Carlo n-step value estimator: Definition 4. The n-step state-value estimator is defined aŝ wherev 0 is a state-value function approximator (e.g. a neural network). Indeed, in γ-discounted RL, performing on-policy n-step rollouts to estimate the value function reduces the bias introduced by the function approximator by a factor of γ n : Lemma 1. The n-step value estimator has the following bias: A simple corollary of Lemma 1 is that the on-policy n-step value estimator is unbiased when the function approximatorv 0 is unbiased. On the other hand, Theorem 1 provides a recipe for transforming sub-trajectories collected under old policies into actual on-policy sub-trajectories. From a given state in an off-policy trajectory, this is done by applying σ π n to all the subsequent transitions until we meet a total delay (ω i + α i ) that is shorter than the length of the formed sub-trajectory. Consequently, the transformed sub-trajectory can be fed to the on-policy n-step value estimator, where n is the length of this sub-trajectory. This does not only provide a better value estimate than usual 1-step off-policy estimators according to Lemma 1, but it maximally compensates for the multi-step credit assignment difficulty introduced by random delays. Indeed, the length of the transformed sub-trajectory is then exactly the number of time-steps it took the first action of the sub-trajectory to have an influence on subsequent delayed observations, minus one time-step.
As opposed to other unbiased n-step off-policy methods, such as importance sampling and Retrace (Munos et al., 2016), this method doesn't suffer from variance explosion. This is because the presence of delays allows us to transform off-policy sub-trajectories into on-policy sub-trajectories, so that old samples don't need to be weighted by the policy ratio.
Although we use a multi-step state-value estimator, the same principles can be applied to action-value estimation as well. In fact, the trajectory transformation described in Definition 3 enables efficient off-policy n-step value estimation in any value-based algorithm that would otherwise perform 1-step action-value backups, such as DQN, DDPG or SAC. In the next section, we illustrate this using SAC. Figure 5 summarizes the whole procedure in a simple 1D-world example. The maximum possible delay is K = 3 here, and the agent can only go 'left' or 'right'. An initial augmented state x 0 is sampled from the replay memory, along with the 3 subsequent augmented states and rewards. The condition of Theorem 1 is satisfied for n ≤ 2. It follows that τ n = τ 2 = (x 1 , x 2 ). This offpolicy trajectory fragment is partially resampled, which yields the corresponding on-policy trajectory fragment τ * n = τ * 2 . This on-policy trajectory fragment can then be used to compute an unbiased n-step value estimate of the initial state x 0 = x * 0 .

DELAY-CORRECTING ACTOR-CRITIC
We have seen in Section 3 how it is possible, in the delayed setting, to collect off-policy trajectories and still use on-policy multi-step estimators in an unbiased way, which allows us to compensate for the more difficult credit assignment introduced by the presence of random delays. We now apply this method to derive Delay-Correcting Actor-Critic ( It can be estimated by augmenting the reward function in Definition 4 with an entropy reward: Definition 5. The delayed on-policy n-step soft state-value estimator, i.e. the n-step state-value estimator with entropy augmented rewards under the current policy wherev soft 0 is a state-value function approximator (e.g. a neural network).
Given the off-policy trajectory transformation proposed in Section 3, Definition 5 directly gives DCAC's value target. To recap, we sample an initial state x 0 (= x * 0 ) and a subsequent trajectory τ n (= x 1 , r 1 , . . . x n , r n ) from a replay memory. The sampling procedure ensures that n is the greatest length so that the sampled trajectory τ n does not contain any total delay ω i + β i < i. This trajectory was collected under an old policy µ, but we need a trajectory compatible with the current policy π to usev soft n in an unbiased way. Therefore, we feed τ n to the partial trajectory resampling operator defined in Definition 3. This produces an equivalent on-policy sub-trajectory τ * n with respect to the current policy π according to Theorem 1, while maximally taking advantage of the bias reduction described by Lemma 1. This partially resampled on-policy sub-trajectory is fed as input tô v soft n (x 0 ; τ * n ), which yields the target used in DCAC's soft state-value loss: Definition 6. The DCAC critic loss is where x 0 , τ n are a start state and following trajectory, sampled from the replay memory, and satisfying the condition of Theorem 1.

POLICY IMPROVEMENT
In addition to using the on-policy n-step value estimator as target for our parametric value estimator, we can also use it for policy improvement. As in SAC we use the reparameterization trick (Kingma & Welling, 2013) to obtain the policy gradient from the value estimator. However, since we use our trajectory transformation and a multi-step value estimator, this involves backpropagation through time in the action buffer.
Definition 7. The DCAC actor loss is where x 0 , τ n are a start state and following trajectory, sampled from the replay memory, and satisfying the condition of Theorem 1.
Proposition 1. The DCAC actor loss is a less biased version of the SAC actor loss with assuming both are using similarly biased parametric value estimators to compute the loss, i.e.

EXPERIMENTAL RESULTS
To evaluate our approach and make future work in this direction easy for the RL community, we release as open-source, along with our code, a Gym wrapper that introduces custom multi-step delays in any classical turn-based Gym environment. In particular, this enables us to introduce random delays to the Gym MuJoCo continuous control suite (Brockman et al., 2016;Todorov et al.), which is otherwise turn-based.
Compared algorithms. A naive version of SAC would only use the unaugmented delayed observations, which violates the Markov assumption in delayed settings as previously pointed out.
Consequently, naive SAC exhibits near-random results in delayed environments. A few such experiments are provided in the Appendix for illustration ( Figure 9).
In order to make a fair comparison, all other experiments compare DCAC against SAC in the same RDMDP setting, i.e. all algorithms use the augmented observation space defined in Section 2.1. Since SAC is the algorithm we chose to improve for delayed scenarios, comparing DCAC against it in the same setting provides a like-for-like comparison. We also found it interesting to compare against RTAC (Ramstedt & Pal, 2019). Indeed, DCAC reduces to this algorithm in the special case where observation transmission is instantaneous (ω=0) and action computation and transmission constantly takes one time-step (α=1). Whereas DCAC performs variable-length state-value backups with partial trajectory resampling as explained in Section 4 , RTAC performs 1-step state-value backups, and SAC performs the usual 1-step action-value backup described in its second version (Haarnoja et al., 2018b). All hyperparameters and implementation details are provided in Section B of the Appendix.
For each experiment, we perform six runs with different seeds, and shade the 90% confidence intervals.  Real-world random delays. Our second batch of experiments features random delays of different magnitudes. The experiment we chose to present in Figure 7 is motivated by the fact that our approach is designed for real-world applications. Importantly, it provides an example how to implement DCAC in practice (see Appendix A and B for more details). We sample the communication delays for actions and observations from our real-world WiFi dataset, presented in Figure 2. When action or observation communications supersede previous communications, only the most recently produced information is kept. In other words, when an action is received in the undelayed environment, its age is compared to the action that is currently being applied. Then, the one that the agent most recently started to produce is applied. Similarly, when the agent receives a new observation, it only keeps the one that was most recently captured in the undelayed environment (see the right-hand side of Figure 3 for a visual example). We discretize the communication delays by using a time-step of 20ms. Importantly, note that Figure 2 has been cropped to 60ms, but the actual dataset contains outliers that can go as far as 1s. However, long delays (longer than 80ms in our example) are almost always superseded and discarded. Therefore, when such information is received, we clip the corresponding delay with no visible impact in performance: in practice, the maximum acceptable delays are design choices, and can be guided by existing probabilistic timing methods (Santinelli et al., 2017).

RELATED WORK
We trace our line of research back to Katsikopoulos & Engelbrecht (2003), who provided the first discussion about Delayed Markov Decision Processes. In particular, they were interested in asynchronous rewards, which provides interesting insights in relation to Appendix A.4. Walsh et al. Hester & Stone (2013) adopted the action buffer-augmented approach to handle random delays, and relied on a decision-tree algorithm to perform credit assignment implicitly. By comparison, our approach relies on delay measurements to perform credit assignment explicitly. More recently, Firoiu et al. (2018) introduced constant action delays to a video game to train agents whose reaction time compares to humans. Similar to previous work, the authors used a state-predictive model, but based on a recurrent neural network architecture. Ramstedt & Pal (2019) formalized the framework of Real-Time Reinforcement Learning (RTRL) that we generalize here to all forms of real-time delays.
Initially designed to cope with the fact that inference is not instantaneous in real-world control, the RTRL setting is equivalent to a constantly delayed MDP with α = 1 and ω = 0. Finally, Xiao et al.
(2020) adopted an alternative approach by considering the influence of the action selection time when action selection is performed within the duration of a larger time-step. However, their framework only allows delays smaller than one time-step, whereas large time-steps are not compatible with high-frequency control.

CONCLUSION AND FUTURE WORK
We proposed a deep off-policy and planning-free approach that explicitly tackles the credit assignment difficulty introduced by real-world random delays. This is done by taking advantage of delay measurements in order to generate actual on-policy sub-trajectories from off-policy samples. In addition, we provide a theoretical analysis that can easily be reused to derive a wide family of algorithms such as DCAC, whereas previous work mostly dealt with finding approximate ways of modelling the state-space in constantly delayed environments. The action buffer is fundamentally required to define a Markovian state-space for RDMDPs , but it is of course possible to observe this action buffer approximately, e.g. by compressing it in the hidden state of an RNN, which is complementary to our work.
We have designed our approach with real-world applications in mind, and it is easily scalable to a wide variety of scenarios. For practical implementation, see Section 5 and Sections A and B of the Appendix. See also rtgym, a small python helper that we use in future work to easily implement delayed environments in the real world.
To the best of our knowledge, DCAC is the first deep actor-critic approach to exhibit such strong performance on both randomly and constantly delayed settings, as it makes use of the partially known dynamics of the environment to compensate for difficult credit assignment. We believe that our model can be further improved by making use of the fact that our critic estimates the state-value instead of the action-value function. Indeed, in this setting, Ramstedt & Pal (2019) showed that it is possible to simplify the model by merging the actor and the critic networks using the PopArt output normalization (van Hasselt et al., 2016), which we did not try yet and leave for future work.
Our approach handles and adapts to arbitrary choices of time-step duration, although in practice time-steps smaller than the upper bound of the inference time will require a few tricks. We believe that this approach is close to time-step agnostic RL and will investigate this direction in future work.

ACKNOWLEDGMENTS
We thank Pierre-Yves Lajoie, Yoshua Bengio and our anonymous reviewers for their constructive feedback, which greatly helped us improve the article. We also thank ElementAI and Compute Canada for providing the computational resources we used to run our experiments.

A.1 SELF-CORRELATED DELAYS
The separation between ω and α allows auto-correlated conditional distributions on both delays. This is necessary to allow superseded actions and observations to be discarded. In RDMDPs , the agent keeps the delayed observation that was most recently captured in the undelayed environment. Ideally, it is also ensured by the undelayed environment that the applied action is the action that most recently started being computed by the agent. In practice, this can be ensured by augmenting the actions with timestamps corresponding to the beginning of their computation, and observations with timestamps corresponding to the end of their capture. Thus, the undelayed environment and the agent can keep track of the most recent received timestamp and discard outdated incoming information.

A.2 HOW TO MEASURE DELAYS
To measure the delays in practice, one possibility is to make use of the aforementioned timestamps.
In addition to the augmentations described in A.1, one can augment each observation sent by the undelayed environment with the timestamp of the action that was applied before the end of observation capture. When the agent receives an observation, this observation then contains two timestamps: one that directly corresponds to an action in the buffer (agent's clock), and one that corresponds to when the observation finished being captured (undelayed environment's clock). The identified action in the buffer directly gives the total delay. If the agent and the undelayed environment have e.g. synchronized clocks, the current timestamp minus the timestamp corresponding to observation capture gives the observation delay (and thus we can deduce the action delay).

A.3 SCALABILITY OF THE ACTION BUFFER
As seen in our WiFi experiment, the maximum delays are design choices in practice. The actual maximum delays can be prohibitively long (e.g. infinite when packets are lost) and would require a long action buffer to be handled in the worst-case scenario. However, in random delays scenarios, long delays are likely to be superseded by shorter delays. Therefore, observations reaching the agent with a total delay that exceeds the chosen K value should simply be discarded, and a procedure implemented to handle the unlikely edge-case where more than K such observations are received in a row. Also note that, although we used a simple action buffer in this work, more clever representations are possible in the presence of long delays, e.g. run-length encoding.

A.4 DELAYED REWARDS
We have implicitly made a choice when defining the rewards for RDMDPs . Indeed, keep in mind that observations can be dropped (superseded) at the level of the agent. In such cases, we chose to accumulate the rewards corresponding to the lost transitions. When an observation gets repeated because no new observation is available, the corresponding reward is 0, and when a new observation arrives, the corresponding reward contains the sum of intermediate rewards in lost transitions.
In practice, this is ensured for example by making the assumption that the remote robot (i.e. the undelayed environment) can observe its own instantaneous reward. This allows the robot to compute its cumulative reward and send it to the agent along with the observation. The agent can then compute the difference between the last cumulative reward it received from the remote robot and the new one for each incoming observation (NB: outdated observations are discarded so the agent only sees cumulative rewards with time-increasing timestamps).
Alternatively, the practitioner can choose to repeat the delayed rewards along with the repeated delayed observations at the level of the agent (this is what we use to do in earlier versions of the paper). When a trick similar to the aforementioned cannot be implemented, this can be done instead, with no impact on our analysis. However, the reward signal will inherently have a higher variance.

A.5 LONG OBSERVATION CAPTURE
In practice, it is often the case that observation capture is not instantaneous. In such situation, one should increase the size of the action buffer so that it always includes the actions for which it is unclear whether they have influenced the observation yet or not. Indeed, when observation capture is not instantaneous it is not possible to know which undelayed state(s) it describes. The length of the multi-step backup performed by DCAC doesn't need to be adapted, because it only cares about the first action that is known to not have influenced the delayed observation.

A.6 COMBINED OBSERVATIONS
Equivalently, if observations are formed of several combined parts that were captured at different times, the action buffer must be long enough to always include the first action that has not influenced the oldest sub-observation yet (i.e. be as long as the maximum possible combined total delay).

B IMPLEMENTATION DETAILS B.1 MORE INFORMATION AS INPUT TO THE MODEL
The action delay α identifies the action that was applied during the previous time-step. It is needed to define RDMDPs and thus is used by DCAC. However, in practice we can include another piece of information on top of α: the delay of the action that is going to be applied in the undelayed environment when the captured observation is sent. We use this additional information as input of the model for all tested algorithms.

B.2 MODEL ARCHITECTURE
The model we use in all our experiments is composed of two separate multi-layer perceptrons (MLPs): a critic network, and an actor network. Both MLPs are built with the same simple architecture of two hidden layers, 256 units each. The critic outputs a single value, whereas the actor outputs an action distribution with the dimension of the action-space, from which actions are sampled with the reparameterization trick. This architecture is compatible with the second version of SAC described in Haarnoja et al. (2018b). The only difference from the DCAC model is that the SAC critic tracks q(x), and not v(x). Indeed, differently from usual actor-critic algorithms, the output of DCAC's critic approximates the state-value v(x) (instead of the action-value q(x)), as it is sufficient to optimize the actor loss described in Definition 7. Weights and biases are initialized with the default Pytorch initializer. Both the actor and the critic are optimized by gradient descent with the Adam optimizer, on losses L DCAC (π) (Equation 10) and L DCAC (v) (Equation 9), respectively. Classically, we use twin critic networks (Van Hasselt et al., 2015;Fujimoto et al., 2018) with target weight tracking (Mnih et al., 2015) to stabilize training.

B.3 HYPERPARAMETERS
Other than our neural network architecture, our implementations of SAC, RTAC and DCAC all share the following hyperparameters:  : ω = 0, α = 1: We illustrate the importance of the augmented observation space in delayed settings using our simplest task (constant 1-step action delay). Even with this small 1-step constant delay, the delayed observations are not Markov and a naive algorithm using only these observations (here: SAC naive) has near-random results. By comparison, an algorithm using the RDMDP augmented observations instead (here: SAC) is able to learn in delayed environments. Figure 10: ω = 0, α = 1: This specific setting is equivalent to the RTRL setting (Ramstedt & Pal, 2019), in which DCAC reduces to the vanilla RTAC algorithm (without output normalization and merged networks). DCAC (RTAC) slightly outperforms SAC in this setting. Figure 11: ω = 1, α = 2: In this more difficult setting (total constant delay of 3 instead of 1), DCAC starts really showing its potential, clearly outperforming all other approaches.

D.2 CONSTANT DELAYS
D.3 RANDOM DELAYS Figure 12: ω ∈ [0; 2], α ∈ [1; 3] (uniformly sampled delays): This experiment is perhaps even more difficult than the WiFi experiment featured in the main paper, because it gives equal probability to all possible delays in the specified ranges (but delays are smaller here which makes it easier for RTAC, because these delays are closer to 1). All tested approaches fail on randomly delayed Ant. For other tasks, the advantage of DCAC is very clear over SAC.
Definition 9. A 1-step action-value estimator is defined aŝ Part of this estimator is usually another parametric estimatorq 0 (e.g. a neural network trained with stochastic gradient descent).

F.1 LEMMA ON STEADY-STATE VALUE ESTIMATION BIAS
Lemma 3. The expected bias of the n-step value estimator under the steady-state distribution (if it exists) is Proof. We remind ourselves that the steady state distribution observes p π ss (x n ) = E x0∼p π ss [p π n (..., x n , r n |x 0 )].
The base case (ω * 0 − ω * 1 = −1) is trivial since it does not depend on the inputs that differ.

G PROOFS OF THE RESULTS FROM THE MAIN PAPER
A Theorem 1. The partial trajectory resampling operator σ π n (Def. 3) transforms off-policy trajectories into on-policy trajectories E τn∼p µ n (·|x 0 ) [σ π n (τ * n |x0;τn)]=p π n (τ * n |x0) on the condition that none of the delayed observations depend on any of the resampled actions, i.e.
Proposition 1. The DCAC actor loss is a less biased version of the SAC actor loss with bias(L DCAC π ) = E n [γ n ] bias(L SAC π ) (11) assuming both are using similarly biased parametric value estimators to compute the loss, i.e.
bias(v soft 0 (x)) = E a∼π(·|x) [bias(q soft 0 (x, a))] Proof. Note that for simplicity, we also assume that the states in the replay memory are distributed according to the steady-state distribution, i.e. D ∼ p π ss . This assumption could be avoided by making more complicated assumptions about the biases of the state-value and action-value estimators.
We now start with the bias of the DCAC loss with respect to an unbiased SAC loss using the true action-value function, and Substituting these we have =E x0∼D E n [γ n E ...,xn,rn∼p π n (·|x0) [bias(v soft 0 (x n ))]] | Lemma 1 (46)