All Methods¶
RobustRLlib is organised around algorithm attribution. Every method records where robustness enters, which shift it claims to address, and which base algorithm realises it.
Algorithm book¶
The book below holds one spread per method. Its labels open the four groups: standard, robust online, robust offline and robust safe.
RobustRLlib
The Algorithm Book
22 algorithms in four groups
Every method has one spread: what it is on the left, how it is configured and run on the right. The two variants of RARL share one spread.
- Turn the page with the buttons, the arrow keys or a swipe.
- A label on the edge of the book opens a group.
- Open the full page leads to the complete description of a method.
1
Standard · 1 of 6
IQL
Implicit Q-Learning
Standard reference
Expectile-regression value learning that never queries out-of-distribution actions.
IQL avoids querying out-of-distribution actions altogether. A value function is fitted to the critic by expectile regression, the twin critics bootstrap from that value function, and the actor is extracted by advantage-weighted regression.
Original paperKostrikov et al. Offline Reinforcement Learning with Implicit Q-Learning. arXiv:2110.06169, 2021.
3
Features
| Feature | Value |
|---|---|
| Base algorithm | — |
| Training budget | 1M updates, batch 256 |
Run the method
CFG=robustrllib/configs/experiment
python baselines/train.py \
-c $CFG/iql_hopper.yaml --seed 0
python baselines/evaluate.py \
--run runs/iql_hopper/seed0
4
Standard · 2 of 6
TD3+BC
TD3 with Behaviour Cloning
Standard reference
TD3 with a behaviour-cloning term balanced against the critic.
TD3+BC adds a behaviour-cloning term to the TD3 actor loss and normalises states. The term is balanced against the critic by dividing by the mean absolute Q-value over the batch.
Original paperFujimoto and Gu A Minimalist Approach to Offline Reinforcement Learning. NeurIPS, 2021.
5
Features
| Feature | Value |
|---|---|
| Base algorithm | — |
| Training budget | 1M updates, batch 256 |
Run the method
CFG=robustrllib/configs/experiment
python baselines/train.py \
-c $CFG/td3bc_hopper.yaml --seed 0
python baselines/evaluate.py \
--run runs/td3bc_hopper/seed0
6
Standard · 3 of 6
MOPO
Model-based Offline Policy Optimization
Standard referenceBase · SAC
SAC on real and model data, with rollout rewards penalised by model uncertainty.
MOPO learns an ensemble dynamics model, branches short rollouts from dataset states, and penalises the rollout reward by the model's predicted uncertainty before running SAC on the mixture of real and model data.
Original paperYu et al. MOPO: Model-based Offline Policy Optimization. NeurIPS, 2020.
7
Features
| Feature | Value |
|---|---|
| Base algorithm | SAC |
| Training budget | 1M updates, batch 256 |
Run the method
CFG=robustrllib/configs/experiment
python baselines/train.py \
-c $CFG/mopo_hopper.yaml --seed 0
python baselines/evaluate.py \
--run runs/mopo_hopper/seed0
8
Standard · 4 of 6
SynthER
Synthetic Experience Replay
Standard referenceBase · IQL
A diffusion model enlarges the dataset; the offline learner itself is unchanged.
SynthER fits a diffusion model to logged transitions and trains an unmodified offline learner on a much larger sample from it.
Original paperLu et al. Synthetic Experience Replay. NeurIPS, 2023.
9
Features
| Feature | Value |
|---|---|
| Base algorithm | IQL |
| Training budget | 1M updates, batch 256 |
Run the method
CFG=robustrllib/configs/experiment
python baselines/train.py \
-c $CFG/synther_hopper.yaml --seed 0
python baselines/evaluate.py \
--run runs/synther_hopper/seed0
10
Standard · 5 of 6
PPO
Proximal Policy Optimization
Standard reference
The on-policy reference: a clipped probability-ratio surrogate with GAE.
PPO is the on-policy reference: a clipped probability-ratio surrogate on trajectories from the current policy, with generalised advantage estimation. The library uses the Stable-Baselines3 implementation.
Original paperSchulman et al. Proximal Policy Optimization Algorithms. arXiv:1707.06347, 2017.
11
Features
| Feature | Value |
|---|---|
| Base algorithm | — |
| Training budget | 2M environment steps |
Run the method
CFG=robustrllib/configs/experiment
python baselines/train.py \
-c $CFG/ppo_hopper.yaml --seed 0
python baselines/evaluate.py \
--run runs/ppo_hopper/seed0
12
Standard · 6 of 6
SAC
Soft Actor-Critic
Standard reference
The off-policy reference: twin critics and an entropy-regularised stochastic actor.
SAC is the off-policy reference: twin critics with a clipped double-Q target and a stochastic actor whose objective adds an entropy bonus with automatically tuned temperature. The library uses the Stable-Baselines3 implementation.
Original paperHaarnoja et al. Soft Actor-Critic: Off-Policy Maximum Entropy Deep Reinforcement Learning with a Stochastic Actor. ICML, 2018.
13
Features
| Feature | Value |
|---|---|
| Base algorithm | — |
| Training budget | 1M environment steps |
Run the method
CFG=robustrllib/configs/experiment
python baselines/train.py \
-c $CFG/sac_hopper.yaml --seed 0
python baselines/evaluate.py \
--run runs/sac_hopper/seed0
14
Robust Online · 1 of 5
ATLA
Alternating Training with Learned Adversaries
Learner-centricBase · PPOClaims · observation shift
A policy trained against an observation adversary that is itself an RL agent.
ATLA trains a policy against an optimal observation adversary in the state-adversarial MDP.
Original paperZhang et al. Robust Reinforcement Learning on State Observations with Learned Optimal Adversary. ICLR, 2021.
15
Features
| Feature | Value |
|---|---|
| Base algorithm | PPO |
| Shifted-env rollout | No |
| Adversarial network | Yes |
| Learned model | No |
| Training budget | About 5M environment steps (2441 iterations of 2048 steps) |
Run the method
CFG=robustrllib/configs/experiment
python baselines/train.py \
-c $CFG/atla_hopper.yaml --seed 0
python baselines/evaluate.py \
--run runs/atla_hopper/seed0
16
Robust Online · 2 of 5
ATLA-SA
ATLA with state-adversarial regularisation and a recurrent policy
Learner-centricBase · PPOClaims · observation shift
ATLA plus a state-adversarial KL regulariser and a 100-step recurrent policy.
ATLA-SA adds the SA-PPO regulariser to ATLA: a KL penalty between the policy at a state and at the worst-case neighbour found by stochastic gradient Langevin dynamics.
Original paperZhang et al. Robust Reinforcement Learning on State Observations with Learned Optimal Adversary. ICLR, 2021.
17
Features
| Feature | Value |
|---|---|
| Base algorithm | PPO (LSTM policy) |
| Shifted-env rollout | No |
| Adversarial network | Yes |
| Learned model | No |
| Training budget | About 5M environment steps (2441 iterations of 2048 steps) |
Run the method
CFG=robustrllib/configs/experiment
python baselines/train.py \
-c $CFG/atla_sa_hopper.yaml --seed 0
python baselines/evaluate.py \
--run runs/atla_sa_hopper/seed0
18
Robust Online · 3 of 5
RSC
Robust RL against Spurious Correlation
Learner-centricBase · SACClaims · semantic shift
Causal counterfactual replay that removes correlations a policy would exploit.
RSC learns a causal graph and a dynamics model over the state variables from replayed experience, then generates counterfactual transitions by intervening on the variables the graph marks as non-causal for the reward.
Original paperDing et al. Seeing is not Believing: Robust Reinforcement Learning against Spurious Correlation. NeurIPS, 2023.
19
Features
| Feature | Value |
|---|---|
| Base algorithm | SAC |
| Shifted-env rollout | No |
| Adversarial network | No |
| Learned model | Yes |
| Training budget | 1M environment steps |
Run the method
CFG=robustrllib/configs/experiment
python baselines/train.py \
-c $CFG/rsc_hopper.yaml --seed 0
python baselines/evaluate.py \
--run runs/rsc_hopper/seed0
20
Robust Online · 4 of 5
RARL
Robust Adversarial Reinforcement Learning
Environment-centricBase · PPO / TRPOClaims · dynamic shift
A two-player zero-sum game against an adversary that applies external forces.
RARL casts robustness as a two-player zero-sum game. An adversary applies bounded external forces to the robot and is trained to minimise the protagonist's return, and the two are updated in alternating blocks.
Original paperPinto et al. Robust Adversarial Reinforcement Learning. ICML, 2017.
21
Features
| Feature | Value |
|---|---|
| Base algorithm | PPO / TRPO |
| Shifted-env rollout | Yes |
| Adversarial network | Yes |
| Learned model | No |
| Training budget | 2M environment steps |
Run the method
CFG=robustrllib/configs/experiment
python baselines/train.py \
-c $CFG/rarl_ppo_hopper.yaml --seed 0
python baselines/train.py \
-c $CFG/rarl_trpo_hopper.yaml --seed 0
python baselines/evaluate.py \
--run runs/rarl_ppo_hopper/seed0
22
Robust Online · 5 of 5
DR
Domain Randomization
Environment-centricBase · SAC / PPOClaims · dynamic shift
Simulator parameters resampled every episode from fixed ranges.
Domain randomisation samples simulator parameters from fixed ranges at every episode, so that the policy meets a distribution of dynamics during training.
Original paperTobin et al. Domain Randomization for Transferring Deep Neural Networks from Simulation to the Real World. IROS, 2017.
23
Features
| Feature | Value |
|---|---|
| Base algorithm | SAC / PPO |
| Shifted-env rollout | Yes |
| Adversarial network | No |
| Learned model | No |
| Training budget | 1M environment steps (DR-SAC) |
Run the method
CFG=robustrllib/configs/experiment
python baselines/train.py \
-c $CFG/dr_sac_hopper.yaml --seed 0
python baselines/evaluate.py \
--run runs/dr_sac_hopper/seed0
24
Robust Offline · 1 of 8
RFQI
Robust Fitted Q-Iteration
Learner-centricBase · FQIClaims · dynamic shift
Worst-case Bellman update over a total-variation uncertainty set.
RFQI replaces the fitted-Q target by a worst-case Bellman backup over a total-variation uncertainty set of a fixed radius around the empirical transitions.
Original paperPanaganti et al. Robust Reinforcement Learning using Offline Data. NeurIPS, 2022.
25
Features
| Feature | Value |
|---|---|
| Base algorithm | FQI |
| Shifted-env rollout | No |
| Adversarial network | No |
| Learned model | No |
| Training budget | 500k updates, batch 1000 |
Run the method
CFG=robustrllib/configs/experiment
python baselines/train.py \
-c $CFG/rfqi_hopper.yaml --seed 0
python baselines/evaluate.py \
--run runs/rfqi_hopper/seed0
26
Robust Offline · 2 of 8
RORL
Robust Offline RL via Conservative Smoothing
Learner-centricBase · SACClaims · observation shift
Local policy and value smoothing, with an ensemble penalty at perturbed states.
RORL makes an SAC learner conservative through smoothing.
Original paperYang et al. RORL: Robust Offline Reinforcement Learning via Conservative Smoothing. NeurIPS, 2022.
27
Features
| Feature | Value |
|---|---|
| Base algorithm | SAC |
| Shifted-env rollout | No |
| Adversarial network | No |
| Learned model | No |
| Training budget | 3M updates on MuJoCo and Door, 1M elsewhere |
Run the method
CFG=robustrllib/configs/experiment
python baselines/train.py \
-c $CFG/rorl_hopper.yaml --seed 0
python baselines/evaluate.py \
--run runs/rorl_hopper/seed0
28
Robust Offline · 3 of 8
ATLA-IQL
Offline adaptation of ATLA on an IQL backbone
Learner-centricBase · IQLClaims · observation shift
A learned observation adversary, trained through the critic instead of by RL.
The offline adaptation keeps ATLA's principle, a learned observation adversary alternated with the learner.
Original paperZhang et al. Robust Reinforcement Learning on State Observations with Learned Optimal Adversary. ICLR, 2021.
29
Features
| Feature | Value |
|---|---|
| Base algorithm | IQL |
| Shifted-env rollout | No |
| Adversarial network | Yes |
| Learned model | No |
| Training budget | 1M updates, batch 256 |
Run the method
CFG=robustrllib/configs/experiment
python baselines/train.py \
-c $CFG/atla_iql_hopper.yaml --seed 0
python baselines/evaluate.py \
--run runs/atla_iql_hopper/seed0
30
Robust Offline · 4 of 8
RSC-IQL
Causal counterfactual rewriting on an IQL backbone
Data-centricBase · IQLClaims · semantic shift
Rewrites logged transitions along the dimensions a causal mask marks as non-causal.
RSC-IQL applies RSC's counterfactual rewriting to logged data. A causal mask over state dimensions is fitted from the dataset, and transitions are rewritten by permuting or perturbing the dimensions the mask marks as non-causal.
Original paperDing et al. Seeing is not Believing: Robust Reinforcement Learning against Spurious Correlation. NeurIPS, 2023.
31
Features
| Feature | Value |
|---|---|
| Base algorithm | IQL |
| Shifted-env rollout | No |
| Adversarial network | No |
| Learned model | Yes |
| Training budget | 1M updates, batch 256 |
Run the method
CFG=robustrllib/configs/experiment
python baselines/train.py \
-c $CFG/rsc_iql_hopper.yaml --seed 0
python baselines/evaluate.py \
--run runs/rsc_iql_hopper/seed0
32
Robust Offline · 5 of 8
RAMBO
Robust Adversarial Model-Based Offline RL
Data-centricBase · SACClaims · dynamic shift
Model rollouts from an ensemble that is trained adversarially against the policy.
RAMBO augments the dataset with short rollouts from a learned dynamics ensemble and replaces the uncertainty penalty by adversarial training of the model.
Original paperRigter et al. RAMBO-RL: Robust Adversarial Model-Based Offline Reinforcement Learning. NeurIPS, 2022.
33
Features
| Feature | Value |
|---|---|
| Base algorithm | SAC |
| Shifted-env rollout | No |
| Adversarial network | Yes |
| Learned model | Yes |
| Training budget | 2M updates on MuJoCo and Door, 1M elsewhere |
Run the method
CFG=robustrllib/configs/experiment
python baselines/train.py \
-c $CFG/rambo_hopper.yaml --seed 0
python baselines/evaluate.py \
--run runs/rambo_hopper/seed0
34
Robust Offline · 6 of 8
ROMB
Policy-driven world-model adaptation
Data-centric · generativeBase · IQLClaims · dynamic shift
A world model adapted against the policy under a constrained maximin objective.
ROMB adapts a learned world model against the policy under a constrained maximin objective.
Original paperChen et al. Policy-Driven World Model Adaptation for Robust Offline Model-based Reinforcement Learning. arXiv:2505.13709, 2025.
35
Features
| Feature | Value |
|---|---|
| Base algorithm | IQL |
| Shifted-env rollout | No |
| Adversarial network | Yes |
| Learned model | Yes |
| Training budget | 1M updates, batch 256 |
Run the method
CFG=robustrllib/configs/experiment
python baselines/train.py \
-c $CFG/romb_hopper.yaml --seed 0
python baselines/evaluate.py \
--run runs/romb_hopper/seed0
36
Robust Offline · 7 of 8
FWM
Flow-matching World Model
Data-centric · generativeBase · IQLClaims · dynamic shift
Multi-step critic targets whose future is sampled from a flow-matching world model.
FWM transfers the multi-step future modelling of the Diffusion World Model to a flow-matching world model.
Original paperDing et al. Diffusion World Model: Future Modeling Beyond Step-by-Step Rollout for Offline Reinforcement Learning. arXiv:2402.03570, 2024.
37
Features
| Feature | Value |
|---|---|
| Base algorithm | IQL |
| Shifted-env rollout | No |
| Adversarial network | No |
| Learned model | Yes |
| Training budget | 1M updates, batch 256 |
Run the method
CFG=robustrllib/configs/experiment
python baselines/train.py \
-c $CFG/fwm_hopper.yaml --seed 0
python baselines/evaluate.py \
--run runs/fwm_hopper/seed0
38
Robust Offline · 8 of 8
PLR-PVL
Prioritised world-model selection by positive value loss
Data-centric · generativeBase · IQLClaims · dynamic shift
An ensemble of world models, prioritised per sample by the value loss they induce.
PLR-PVL trains a collection of world models consistent with the offline data, treats each as a level in the sense of unsupervised environment design, and prioritises them during policy learning by the value loss they induce.
Original paperBerdica et al. Robust Offline Learning via Adversarial World Models. NeurIPS Workshop on Open-World Agents, 2024.
39
Features
| Feature | Value |
|---|---|
| Base algorithm | IQL |
| Shifted-env rollout | No |
| Adversarial network | No |
| Learned model | Yes |
| Training budget | 1M updates, batch 256 |
Run the method
CFG=robustrllib/configs/experiment
python baselines/train.py \
-c $CFG/plr_pvl_hopper.yaml --seed 0
python baselines/evaluate.py \
--run runs/plr_pvl_hopper/seed0
40
Robust Safe · 1 of 2
RAMU
Risk-Averse Model Uncertainty
Robust safeBase · PPOClaims · dynamic shift
A risk measure over sampled next-state perturbations, applied to reward and cost targets.
RAMU applies a risk measure over sampled next-state perturbations to both the reward and the cost targets.
Original paperQueeney and Benosman Risk-Averse Model Uncertainty for Distributionally Robust Safe Reinforcement Learning. NeurIPS, 2023.
41
Features
| Feature | Value |
|---|---|
| Base algorithm | PPO |
| Shifted-env rollout | No |
| Adversarial network | No |
| Learned model | No |
| Training budget | Isaac Lab recipe |
Run the method
./isaaclab.sh \
-p isaac/train.py --task g1 \
--method ramu --seed 0 --headless
./isaaclab.sh \
-p isaac/evaluate.py --task g1 \
--checkpoint runs/isaac/g1_ramu/seed0/model_1499.pt \
--condition all --headless
42
Robust Safe · 2 of 2
SPiDR
Zero-shot safety under domain randomisation
Robust safeBase · PPOClaims · dynamic shift
Constrained learning under domain randomisation with a pessimistic cost penalty.
SPiDR trains a constrained policy under domain randomisation and adds a pessimistic cost penalty proportional to the disagreement of next-state predictions across sampled dynamics.
Original paperAs et al. SPiDR: A Simple Approach for Zero-Shot Safety in Sim-to-Real Transfer. NeurIPS, 2026.
43
Features
| Feature | Value |
|---|---|
| Base algorithm | PPO |
| Shifted-env rollout | Yes |
| Adversarial network | No |
| Learned model | Yes |
| Training budget | Isaac Lab recipe |
Run the method
./isaaclab.sh \
-p isaac/train.py --task g1 \
--method spidr --seed 0 --headless
./isaaclab.sh \
-p isaac/evaluate.py --task g1 \
--checkpoint runs/isaac/g1_spidr/seed0/model_899.pt \
--condition all --headless
44
Arrow keys turn the page once the book has the focus.
Families¶
Standard referenceLearner-centricData-centricData-centric · generativeEnvironment-centricRobust safe
Standard Algorithms¶
6 methods. See Standard Algorithms.
| Method | Family | Setting | Base | Claimed robustness |
Shifted-env rollout |
Adversarial network |
Learned model |
|---|---|---|---|---|---|---|---|
| IQL | Standard reference | Offline | — | — | |||
| TD3+BC | Standard reference | Offline | — | — | |||
| MOPO | Standard reference | Offline | SAC | — | |||
| SynthER | Standard reference | Offline | IQL | — | |||
| PPO | Standard reference | Online | — | — | |||
| SAC | Standard reference | Online | — | — |
Robust Online Algorithms¶
5 methods. See Robust Online Algorithms.
| Method | Family | Base | Claimed robustness |
Shifted-env rollout |
Adversarial network |
Learned model |
|---|---|---|---|---|---|---|
| ATLA | Learner-centric | PPO | Observation | ✓ | ||
| ATLA-SA | Learner-centric | PPO | Observation | ✓ | ||
| RSC | Learner-centric | SAC | Semantic | ✓ | ||
| RARL | Environment-centric | PPO / TRPO | Dynamic | ✓ | ✓ | |
| DR | Environment-centric | SAC / PPO | Dynamic | ✓ |
Robust Offline Algorithms¶
8 methods. See Robust Offline Algorithms.
| Method | Family | Base | Claimed robustness |
Shifted-env rollout |
Adversarial network |
Learned model |
|---|---|---|---|---|---|---|
| RFQI | Learner-centric | FQI | Dynamic | |||
| RORL | Learner-centric | SAC | Observation | |||
| ATLA-IQL | Learner-centric | IQL | Observation | ✓ | ||
| RSC-IQL | Data-centric | IQL | Semantic | ✓ | ||
| RAMBO | Data-centric | SAC | Dynamic | ✓ | ✓ | |
| ROMB | Generative | IQL | Dynamic | ✓ | ✓ | |
| FWM | Generative | IQL | Dynamic | ✓ | ||
| PLR-PVL | Generative | IQL | Dynamic | ✓ |
Robust Safe Algorithms¶
2 methods. See Robust Safe Algorithms.
| Method | Family | Base | Claimed robustness |
Shifted-env rollout |
Adversarial network |
Learned model |
|---|---|---|---|---|---|---|
| RAMU | Robust safe | PPO | Dynamic | |||
| SPiDR | Robust safe | PPO | Dynamic | ✓ | ✓ |
How to read the tables¶
- Family says where robustness enters: the learner, the data, a generative model of the data, or the environment that training rollouts come from.
- Base is the algorithm a method is built on. A robust method and its base are trained and evaluated under the same protocol.
- Claimed robustness is the shift the original paper targets.
- Shifted-env rollout marks rollouts collected from a deliberately perturbed environment. Offline methods learn from fixed nominal data, so it is never ticked for them.
- Adversarial network marks a learned adversary optimised against the policy.
- Learned model marks a trained next-state predictor used by the robustness mechanism.