Appendix: Algorithm Selection Guide

Methods mitigate specific failure modes under assumptions — they rarely “solve offline RL” outright.

This appendix is a decision aid, not a ranking. Use it with OPE (Chapter 3), BC baselines, and domain knowledge about dataset coverage and deployment risk.


Quick selection table

Method Core idea Try when Main failure mode Skip when
BC Trust the data Behavior is good enough; short horizon; strong coverage Compounding error; no improvement beyond logs You need to combine good parts of trajectories or exploit reward signal
TD3+BC Improve Q but stay near data Continuous control; want a simple actor-critic baseline $\lambda$ tuning; OOD actor queries to Q Multimodal behavior; need strong theory
AWAC In-sample advantage-weighted policy Stochastic policy; avoid OOD actor queries $\beta$ sensitivity; critic quality Deterministic control with tight latency budget
CQL Pessimistic Q for OOD actions Continuous control; need value-pessimism default Too conservative; unstable Q / $\alpha$ tuning BC already sufficient; reward poorly specified
IQL Expectile V + AWR policy In-sample updates; avoid explicit OOD Q max $\tau$, $\beta$ sensitivity; sparse good actions Dataset has no better-than-behavior actions
Decision Transformer Sequence modeling on trajectories Long horizons; multi-task logs; seq-model tooling Return conditioning OOD; no Bellman credit Small narrow dataset; need explicit constraints
MOPO / MOReL Model + uncertainty penalty Rich transitions; simulator-like structure helps Model bias; false confidence in ensembles Dynamics hard to learn; logs from one narrow controller
FQE / DR (OPE) Evaluate without deployment Compare candidates offline Extrapolation; weak coverage High-stakes deploy with no OPE agreement
Physics-informed Known structure + residuals Engineering model exists Structural model mismatch No trustworthy physics or constraints

Source anchors (key methods)

Each block: paper → assumption → failure mode → when not to use.

Behavioral Cloning (Chapter 1)

CQL (Chapter 4)

IQL (Chapter 5)

TD3+BC (Chapter 6)

Decision Transformer (Chapter 7)

MOPO / MOReL (Chapter 8)

OPE: FQE / DR (Chapter 3)


Code in this repository

The Python files under code/ are educational skeletons — they show algorithmic structure on a toy environment. They are not benchmark-grade reference implementations.

Before trusting results in production:


Suggested reading order for practitioners

  1. Chapters 1–2 (BC + extrapolation error)
  2. Chapter 3 (OPE) if deployment is costly
  3. BC baseline → CQL or IQL → TD3+BC if you need a lighter actor-critic line
  4. Chapter 8 if you have a learnable dynamics model
  5. Chapter 10–11 before any industrial rollout conversation

Return to Table of Contents.