Note: This post was written with the help of AI.

At a glance

  1. There are two horizons in a diffusion policy: environment time \(t\) and denoising time \(k=K\dots0\). When comparing these methods, I mainly look at where they define the action, where they compute likelihood, and how they assign advantage to each denoising step.
  2. DDPO / DPOK treat the denoising process as one MDP. Each \(\pi_\theta(x_{k-1}\mid x_k,c)\) is Gaussian, so we can compute its log probability directly. Reward only appears at \(x_0\), and every step gets the same terminal reward.
  3. DPPO puts the denoising MDP inside the environment MDP, then flattens \((t,k)\) into one long chain. Reward appears at \(k=0\), after we have a clean action. The critic is \(V(s_t)\), and GAE runs at the environment level. All denoising steps for one environment decision use the same \(A_t\), multiplied by \(\gamma_{\text{denoise}}^k\). Here we use the destination index for each transition.
  4. The PPO ratio and clipping are evaluated separately at each \((t,k)\). The gradient passes through the current \(\mu_\theta(a^{k+1},s_t,k)\), not backward through the sampled denoising chain. This score-function estimator differs from the pathwise gradients in DRaFT / AlignProp.
  5. For a deterministic flow / ODE sampler, the conditional transition is a Dirac distribution. We cannot plug it into a Gaussian PPO ratio. The final output can still be random because the initial noise is random. Flow-GRPO and DanceGRPO deal with this by constructing an SDE; ReinFlow and πRL Flow-Noise add learned noise. DDIM with \(\eta=0\) has the same problem at each transition.
  6. There are also methods that do not use chain log probabilities: DSRL / Noise PPO learn over initial noise, FPO builds a surrogate ratio from flow-matching loss differences, and DiffusionNFT regresses positive and negative implicit policies.

0How to read the diagrams

The diagrams below all use the same format. Columns are environment decisions: one condition \(c\) for image generation, or three robot decisions \(t,t+1,t+2\). Rows go from initial noise \(x_K\), through denoising \(x_k\to x_{k-1}\), to the output \(x_0\) / action \(a_t\), an optional residual, and finally the environment or reward model. I only draw five denoising rows, even for a 50-step sampler. The colors, stars, arrows, and weights mean the same thing across diagrams.

  • Gray: frozen computation, or a timestep excluded from the loss.
  • Solid accent: the output is an RL action; evaluate \(\log\pi\) and a likelihood ratio here.
  • Accent outline: trainable computation without a local RL action, such as regression or a pathwise gradient.
  • White: data or the environment: samples, actions, simulator, reward model.
  • Dashed: reuse an earlier result instead of recomputing this column, as in chunked replanning.
  • Star: where reward enters.
  • Cell text: the assigned advantage weight. \(\hat A\) means the same broadcast value; \(\gamma^k\hat A\) means step weighting. Lighter fill indicates lower weight.
  • Red reverse arrow: pathwise backpropagation from a differentiable reward or \(\nabla_aQ\).
  • Stacked dashed boxes ×G: a group of sibling samples compared for relative advantages.
  • Teal pill: the critic location, such as \(V(s_t)\) or \(Q(s,a)\).
  • Teal arrows below the environment: backward recursion of GAE / discounted return across environment time.
  • Right bracket: an operation spanning rows, such as transition KL, a moving window, or a joint-chain ratio.
Example. This is a made-up diagram to explain the notation. The numbers refer to the list below.
  1. 1Initial noise \(x_K\sim\mathcal N(0,I)\) is a white data cell here. A solid cell at this location (Noise PPO, DSRL) makes noise the RL action.
  2. 2Gray: an early frozen denoising prefix, as in DPPO finetuning only the last \(K^{\prime}\) steps.
  3. 3Outline: trainable parameters without a local log-probability term, updated through regression or pathwise gradients.
  4. 4Solid: RL action with ratio \(\rho\). Labels \(\gamma\hat A\) and \(\hat A\) give its advantage weight; lighter fill means a smaller weight.
  5. 5The final action \(a_t\) or sample \(x_0\).
  6. 6An optional residual row. A solid cell makes the residual the RL action.
  7. 7Environment / reward model. A star marks reward injection.
  8. 8Critic attachment point.
  9. 9Red arrow: how far the pathwise gradient is propagated backward.
  10. 10Stacked ×G boxes: sibling samples under one condition.

Below each grid are the three parts of a training iteration: rollout, reward calculation, and the update.

1Method genealogy

I group the methods by where RL acts: noise space, inside the chain with likelihood ratios, likelihood-free / regression, and after the output. Each edge describes what changes between two methods. It does not necessarily mean one paper builds on the other. Click a method to jump to its section.

Figure 0. Edges show one or two changes between methods. ReFL / DRaFT / AlignProp and the off-policy Q methods are included for comparison; they are not part of the main branch.

2Two-level MDP derivation: two horizons

Environment time is \(t=0,1,\dots\); denoising time is \(k=K,\dots,1,0\), from pure noise to clean sample/action. Terminal-reward image generation has one denoising horizon conditioned on prompt \(c\). In robotics, the condition is observation \(s_t\), and each environment decision generates an entire chain to obtain \(a_t^0\).

2.1A single denoising MDP: DDPO / DPOK

DDPO (Black et al., 2023) and DPOK (Fan et al., 2023) view one generation as a \(K\)-step episode:

\[ \mathbf s_k=(c,\,k,\,x_k),\qquad \mathbf a_k=x_{k-1},\qquad \pi_\theta(\mathbf a_k\mid \mathbf s_k)=\mathcal N\!\big(x_{k-1};\ \mu_\theta(x_k,k,c),\ \sigma_k^2 I\big), \] \[ P(\mathbf s_{k-1}\mid \mathbf s_k,\mathbf a_k)=\delta_{(c,\,k-1,\,\mathbf a_k)},\qquad R(\mathbf s_k,\mathbf a_k)=\begin{cases} r(x_0,c) & k=1\\ 0 & \text{otherwise.}\end{cases} \]

The MDP transition is deterministic: the next state contains the \(x_{k-1}\) we just sampled. The randomness comes from the policy. Since each policy is diagonal Gaussian, we can compute its log probability:

\[ \log\pi_\theta(x_{k-1}\mid x_k,c) = -\frac{\lVert x_{k-1}-\mu_\theta(x_k,k,c)\rVert^2}{2\sigma_k^2} + \text{const}. \]

Intermediate rewards are zero, and the inner discount is one. Every transition therefore has return \(r(x_0,c)\). DDPO has two estimators:

\[ \text{DDPO}_{\text{SF}}:\ \ \nabla_\theta J=\mathbb E\Big[\textstyle\sum_{k=1}^{K}\nabla_\theta\log\pi_\theta(x_{k-1}\mid x_k,c)\;r(x_0,c)\Big] \] \[ \text{DDPO}_{\text{IS}}:\ \ J=\mathbb E\Big[\textstyle\sum_{k}\min\big(\rho_k\hat A,\ \operatorname{clip}(\rho_k,1-\epsilon,1+\epsilon)\hat A\big)\Big],\quad \rho_k=\frac{\pi_\theta(x_{k-1}\mid x_k,c)}{\pi_{\text{old}}(x_{k-1}\mid x_k,c)} \]

For \(\hat A\), we can normalize rewards using a running mean and standard deviation for each prompt. This gives us a baseline without training a critic. The idea is related to GRPO, although GRPO computes its statistics from samples in the same batch. DPOK adds a KL term to the same MDP. If the initial-noise distribution is unchanged, the chain-rule bound lets us replace the terminal KL with a sum of expected Gaussian transition KLs:

\[ \mathrm{KL}\big(p_\theta(x_0\mid c)\,\Vert\,p_{\text{pre}}(x_0\mid c)\big)\le \sum_{k}\mathbb E_{p_\theta}\Big[\mathrm{KL}\big(\pi_\theta(\cdot\mid x_k,c)\Vert\pi_{\text{pre}}(\cdot\mid x_k,c)\big)\Big] =\sum_k \mathbb E\Big[\tfrac{\lVert\mu_\theta-\mu_{\text{pre}}\rVert^2}{2\sigma_k^2}\Big]. \]

DPOK also considers a learned baseline \(V(x_k,c)\approx\mathbb E[r(x_0,c)\mid x_k]\) in its appendix: a critic over denoising states. Compare this with the environment-only critic in DPPO.

We need positive variance for the Gaussian ratio. The log density requires \(\sigma_k>0\). For DDIM, the noise is controlled by \(\eta\), with \(\sigma_k(\eta)=\eta\sqrt{\tfrac{1-\bar\alpha_{k-1}}{1-\bar\alpha_k}}\sqrt{1-\tfrac{\bar\alpha_k}{\bar\alpha_{k-1}}}\). We need positive \(\eta\) where this coefficient is nonzero, and may still need to handle the endpoints separately or add a variance floor. With \(\eta=0\), each DDIM transition is deterministic, so this local density ratio does not apply.

2.2The DPPO two-level MDP

DPPO (Ren et al., 2024) considers robots. At decision \(t\), start at \(a_t^K\sim\mathcal N(0,I)\), denoise to \(a_t^0\), execute the action (often a chunk), and transition to \(s_{t+1}\). Flatten the two levels using \(\bar t(t,k)=tK+(K-k-1)\). In this subsection, \(k=K-1,\dots,0\) indexes the destination of \(a^{k+1}\to a^k\):

\[ \bar s_{\bar t(t,k)}=(s_t,\ a_t^{k+1}),\qquad \bar a_{\bar t(t,k)}=a_t^{k},\qquad \bar R_{\bar t(t,k)}=\begin{cases}0 & k\gt 0\\ R(s_t,a_t^0) & k=0\end{cases} \] \[ k\gt 0:\ (s_t,a_t^k)\ \text{deterministically becomes the next state};\qquad k=0:\ (s_{t+1},a_{t+1}^K)\sim P(s_{t+1}\mid s_t,a_t^0)\otimes\mathcal N(0,I). \]

The policy is still Gaussian: \(\pi_\theta(a_t^k\mid s_t,a_t^{k+1})=\mathcal N(a_t^k;\mu_\theta(a_t^{k+1},s_t,k),\sigma_{k+1}^2I)\). We can compute the log probability. The remaining question is how to turn the environment reward at \(k=0\) into an advantage for each \((t,k)\).

Frozen θ(early steps)Trainable θ_ft(last K′ steps)Denoising k ↓Environment t →k = KK−1⋮10 (execute)Environmentadvantagetaᴷaᴷ⁻¹⋮a¹a⁰World PsₜV(sₜ)Condition sₜsₜ₊₁rₜt+1aᴷaᴷ⁻¹⋮a¹a⁰World Psₜ₊₁V(sₜ₊₁)rₜ₊₁t+2aᴷaᴷ⁻¹⋮a¹a⁰World Psₜ₊₂V(sₜ₊₂)rₜ₊₂AₜAₜ₊₁Aₜ₊₂GAE:δₜ = rₜ + γV(sₜ₊₁) − V(sₜ)Aₜ = Σ (γλ)ˡ δₜ₊ₗÂₜ,ₖ = γ_dᵏ · AₜOne ρₜ,ₖ per cellTransition πθ: gradient is local to this stepReward after the clean actionAdvantage flow; lighter = smaller
Figure 1. DPPO on a \(t\times k\) grid. Orange: reward \(r_t\) arrives after executing \(a_t^0\). Teal: \(V(s_t)\) depends only on environment state; GAE propagates right-to-left across decisions to obtain \(A_t\). Denoising steps in the same column reuse it with weight \(\gamma_{\text{denoise}}^k\). Only the shaded suffix of \(K^{\prime}\) steps is finetuned.

Computing and distributing advantage. DPPO uses two levels:

\[ \delta_t=r_t+\gamma_{\text{env}}V_\phi(s_{t+1})-V_\phi(s_t),\qquad A_t=\sum_{l\ge0}(\gamma_{\text{env}}\lambda)^l\,\delta_{t+l},\qquad \hat A_{t,k}=\gamma_{\text{denoise}}^{\,k}\,A_t . \]
  • The critic depends on \(s_t\), not the intermediate noisy action \(a_t^{k+1}\). The paper reports instability in an ablation that also conditions the value function on the noisy action.
  • We compute advantage once per environment decision. All \(k\) use the same \(A_t\), with a weight \(\gamma_{\text{denoise}}^k\) (0.99 in the configurations discussed here). In the code, this is advantages *= gamma_denoising ** (ft_denoising_steps - i - 1). The index \(i\) increases through the trainable steps, so the last step has weight one.
  • My understanding is the following. If the critic only sees \(s_t\) and the inner discount is one, the inner TD error is \(0+V(s_t)-V(s_t)=0\). We can then pass the environment advantage to the denoising steps. The extra \(\gamma_{\text{denoise}}\) downweights early, noisy steps; it does not discount physical time. This is an intuition, though. It does not prove that running GAE on an arbitrarily flattened chain gives the same estimator as the environment-level implementation.

PPO ratios and clipping. Each \((t,k)\) contributes a separate PPO sample:

\[ \rho_{t,k}(\theta)=\frac{\pi_\theta(a_t^k\mid s_t,a_t^{k+1})}{\pi_{\theta_{\text{old}}}(a_t^k\mid s_t,a_t^{k+1})},\qquad \mathcal L_{\text{PPO}}=-\,\mathbb E_{t,k}\Big[\min\big(\rho_{t,k}\hat A_{t,k},\ \operatorname{clip}(\rho_{t,k},1-\epsilon_k,1+\epsilon_k)\hat A_{t,k}\big)\Big]. \]
  • We save \(a_t^{k+1}\) and \(a_t^k\) during rollout and treat them as constants when updating. The gradient \(\nabla_\theta\log\pi_\theta\) only goes through the current \(\mu_\theta(a_t^{k+1},s_t,k)\). It does not backpropagate through the sampled denoising chain. If we batch the updates by step, we do not need to keep the whole chain’s activations in memory. We still have to store the rollout, and both storage and total computation grow with \(K\).
  • The implementation supports timestep-dependent clipping: \(\epsilon_k=\epsilon_{\text{base}}+(\epsilon-\epsilon_{\text{base}})\frac{e^{\beta\tau_k}-1}{e^{\beta}-1}\), with \(\tau_k\in[0,1]\) increasing along denoising. Later transitions can have a wider clipping interval. The cited Robomimic configuration goes from clip_ploss_coef_base=0.001 to clip_ploss_coef=0.01; Gym uses 0.01 for both, giving no schedule.

Exploration and numerical stability. Small posterior \(\sigma_k\) near the clean end gives weak exploration and makes log probability highly sensitive to small mean changes. DPPO distinguishes a sampling floor \(\sigma^{\text{exp}}_{\min}\) (0.01–0.1 across cited tasks) from a log-probability floor \(\sigma^{\text{prob}}_{\min}=0.1\). Both are 0.1 in the cited Gym / Robomimic configurations.

Only finetune the last few steps. Make a copy \(\theta_{\text{ft}}\). Use frozen \(\theta\) for the first \(K-K^{\prime}\) transitions, then the trainable copy for the last \(K^{\prime}\), which enter the PPO loss. The configurations discussed here use \(K=20,K^{\prime}=10\). Another option is roughly five stochastic DDIM steps with \(\eta=1\) during training and \(\eta=0\) for evaluation. Execute \(T_a\) primitive actions from a chunk, then replan.

2.3Other factorizations

(a) Treat the whole chain as one action. Add the transition log probabilities to get the joint log probability; multiply the ratios to get the joint ratio:

\[ \log\pi_\theta(a^{0:K}\mid s)=\log\mathcal N(a^K;0,I)+\sum_{k=1}^{K}\log\pi_\theta(a^{k-1}\mid a^k,s),\qquad \rho^{\text{chain}}=\prod_{k=1}^{K}\rho_k=\exp\Big(\sum_k\Delta\ell_k\Big). \]

The clean-action marginal ratio \(\pi_\theta(a^0)/\pi_{\mathrm{old}}(a^0)\) is generally intractable, but \(\rho^{\mathrm{chain}}\) is a valid weight on the extended trajectory space. At the on-policy point, the score gradients have the same form \(\mathbb E[A\sum_k\nabla\log\pi_k]\). Clipping their product and clipping individual ratios are different surrogates: many small local changes can accumulate as roughly \((1\pm\epsilon)^K\), while joint clipping can activate frequently on long chains. PPO clipping is not a hard constraint on either ratio or KL. OGPO uses the joint product.

(b) Outcome-only group comparison. Sample \(G\) chains for condition \(c\), compute \(\hat A_i=(r_i-\bar r)/(\operatorname{std}(r)+\varepsilon)\), and broadcast it through each chain before per-step ratio clipping (Flow-GRPO, DanceGRPO). No critic is needed, but the signal remains terminal rather than denoising-step-specific. SDE construction, sample grouping, fewer steps, and shared initial noise make practical differences.

(c) RL only in noise / latent space. Freeze \(f_\theta\), absorb it into the environment, and learn \(\pi_\psi(w\mid s)\) with output \(a=f_\theta(s,w)\), often using deterministic DDIM. The density belongs to the noise policy, not the denoising chain. DSRL uses off-policy SAC; Noise PPO uses a one-decision PPO formulation.

(d) Avoid chain likelihoods altogether. One family builds surrogate ratios from ELBO / flow-matching losses (FPO). Another learns through regression, including DiffusionNFT’s positive and negative implicit policies. A simpler related baseline is advantage-weighted regression:

\[ \mathcal L_{\text{wFM}}(\theta)=\mathbb E_{(s,a)\sim\mathcal D,\ \tau,\ \varepsilon}\Big[\,w(s,a)\,\big\lVert v_\theta(x_\tau,\tau,s)-(\varepsilon-a)\big\rVert^2\Big],\qquad w=\exp(A/\beta)\ \text{or}\ r\in[0,1]. \]

These losses do not require the reverse chain’s likelihood, so we can use ODE or higher-order samplers. The training objectives are still different: NFT uses positive/negative implicit policies, while FPO uses a surrogate ratio. We also need to check whether each method works with classifier-free guidance.

2.4ODE → SDE: why flow policies use it

Flow matching / rectified flow samples with the ODE \(\mathrm dx_\tau=v_\theta(x_\tau,\tau)\,\mathrm d\tau\). Given the current state, the next step is deterministic. Its Dirac transition cannot give us the ordinary stochastic density needed for local PPO. This says nothing about whether the final output has a density. Let \(\tau=1\) denote noise and \(\tau=0\) denote data, so generation runs with \(\mathrm d\tau<0\). With an ideal velocity field / score in continuous time, we can construct a reverse SDE with the same marginals:

\[\mathrm dx_\tau=\left[v_\theta(x_\tau,\tau)-\frac{\sigma_\tau^2}{2}\nabla_x\log p_\tau(x_\tau)\right]\mathrm d\tau+\sigma_\tau\,\mathrm d\bar W_\tau,\qquad \operatorname{Var}(\mathrm d\bar W_\tau)=|\mathrm d\tau|I.\]

For rectified flow, \(x_t=(1-t)x_0+t\varepsilon\), and the score is \(\nabla\log p_t(x)=-[x+(1-t)v_\theta(x,t)]/t\). Substitution and Euler–Maruyama discretization give the Flow-GRPO transition below. Here \(t\) is the flow interpolation variable, not environment time:

\[ x_{t+\Delta t}=x_t+\Big[v_\theta(x_t,t)+\frac{\sigma_t^2}{2t}\big(x_t+(1-t)v_\theta(x_t,t)\big)\Big]\Delta t+\sigma_t\sqrt{|\Delta t|}\,\epsilon,\qquad \sigma_t=a\sqrt{\tfrac{t}{1-t}} . \]

Each discrete transition is isotropic Gaussian. With the same diffusion coefficient, its KL is \(\mathrm{KL}=\frac{|\Delta t|}{2}\big(\frac{\sigma_t(1-t)}{2t}+\frac1{\sigma_t}\big)^2\lVert v_\theta-v_{\mathrm{ref}}\rVert^2\). The hyperparameter \(a\) controls exploration. Generation has \(\Delta t<0\); covariance and KL use \(|\Delta t|\). Finite-step solvers need not exactly preserve continuous-time marginals, and endpoints require appropriate treatment.

ReinFlow instead adds a learned noise network directly to each flow step:

\[ a^{k+1}=a^k+v_\theta(t_k,a^k,s)\,\Delta t_k+\sigma_{\theta'}(t_k,a^k,s)\,\epsilon,\qquad \pi(a^{k+1}\mid a^k,s)=\mathcal N\big(a^k+v_\theta\Delta t_k,\ \operatorname{diag}\sigma_{\theta'}^2\big). \]

This gives us a discrete Markov chain, whose joint likelihood is a product of Gaussian transitions. RL learns the noise scale within upper and lower bounds, and the models discussed here use only 1–4 steps. The price is that we no longer have a guarantee of preserving the pretrained marginals. πRL tries both approaches: Flow-Noise uses learned noise and a single-level formulation; Flow-SDE uses an SDE and a DPPO-like two-level MDP.

2.5Where does the gradient go?

Gradient pathRequirementsExamplesProperties
Score function; local transitionPer-step \(\log\pi\); stochastic samplerDDPO、DPOK、DPPO、Flow-GRPO、DanceGRPO、ReinFlowBlack-box rewards allowed; potentially high variance; no cross-step activation graph with stepwise updates
Pathwise; backpropagate through the chainDifferentiable reward and sampling pathReFL、DRaFT、AlignPropOften lower variance; memory grows with the backpropagated graph; reward hacking remains possible; ordinary black-box simulation supplies no reward gradient
Pathwise chain + Gaussian output headStore the entire noise sequenceNCDPOCondition on noise to obtain deterministic \(f_\theta(s,a^K,z_{1:K})\), attach a Gaussian output policy, and differentiate the PPO objective through generation
Noise-space policyBlack-box access to \(f_\theta\)DSRL、Noise PPOFreeze \(\theta\); reachable behavior depends on the frozen mapping and permitted latent region
Surrogate likelihood / weighted regressionFlow-matching lossFPO, DiffusionNFT, AWR-style methodsDecoupled from transition likelihood; surrogate bias and/or estimation variance

2.6General on-policy estimators

PPO + GAE

Schulman et al. 2017 · 1707.06347;GAE 2015 · 1506.02438
\[ \mathcal L^{\text{CLIP}}=\mathbb E\big[\min(\rho_t A_t,\operatorname{clip}(\rho_t,1\pm\epsilon)A_t)\big],\quad \rho_t=\tfrac{\pi_\theta(a_t\mid s_t)}{\pi_{\text{old}}(a_t\mid s_t)},\quad A_t^{\text{GAE}}=\textstyle\sum_l(\gamma\lambda)^l\delta_{t+l} \]

Train \(V_\phi\) using a value loss, often with value clipping. Policy clipping is a surrogate that discourages large updates, not a hard KL bound. Several epochs reuse one rollout batch. Common implementation choices include normalized advantages and target-KL early stopping.

GRPO

Shao et al. 2024(DeepSeekMath)· 2402.03300
\[ \hat A_i=\frac{r_i-\operatorname{mean}(r_{1:G})}{\operatorname{std}(r_{1:G})},\qquad \mathcal J=\mathbb E\Big[\tfrac1G\textstyle\sum_i\tfrac1{|o_i|}\sum_t\min(\rho_{i,t}\hat A_i,\operatorname{clip}(\cdot)\hat A_i)-\beta\,\mathbb D_{\text{KL}}\Big],\quad \mathbb D_{\text{KL}}\approx\tfrac{\pi_{\text{ref}}}{\pi_\theta}-\log\tfrac{\pi_{\text{ref}}}{\pi_\theta}-1 \]

GRPO uses the mean of \(G\) samples under the same condition as its baseline, so there is no learned critic. Each sample’s tokens or denoising steps share one outcome advantage. The k3 expression above estimates \(D_{\mathrm{KL}}(\pi_\theta\Vert\pi_{\mathrm{ref}})\) on samples from \(\pi_\theta\). If we reuse old-policy samples, we need to account for that change in distribution. In the original GRPO objective, this KL penalty goes directly into the loss.

RLOO / REINFORCE++

Ahmadian et al. 2024 · 2402.14740;Hu et al. 2025 · 2501.03262

RLOO uses \(\hat A_i=r_i-\frac1{G-1}\sum_{j\ne i}r_j\), without dividing by a standard deviation. With independent sibling samples, the leave-one-out baseline does not bias the score-function estimator. REINFORCE++ uses a critic-free, globally normalized batch advantage rather than group normalization, and puts KL into token-level rewards. These estimator choices can be considered separately from the diffusion policy parameterization.

Practical difficulties for diffusion policies

  1. Which likelihood is tractable? Deterministic ODE / DDIM steps do not supply ordinary local stochastic densities; Gaussian stochastic transitions do. The marginal \(\pi(a^0\mid s)\) still generally requires integrating out the chain. Flow policies can use SDEs, injected noise, or alternative objectives (FPO / NFT). GenPO uses a specialized invertible construction with augmented dummy actions to obtain tractable likelihoods.
  2. Credit within denoising. Reward arrives only at \(x_0\). Common choices share that signal (DPPO adds \(\gamma_{\text{denoise}}^k\); GRPO broadcasts), or learn a denoising-state critic, such as DPOK’s optional \(V(x_k,c)\). Step-aware preference/reward methods require additional models or sampling.
  3. Variance. There are \(K\) terms in the score sum. Its variance depends on each term and on their covariances, so it does not simply grow with \(K\). Still, long chains can be hard to optimize. DPPO only trains the last few steps, DanceGRPO samples a subset (about 60% in the setup discussed here), and MixGRPO trains a moving window.
  4. Compute. Each environment decision requires \(K\) model evaluations, and every trained transition adds another forward/backward evaluation. Examples include 10 training steps versus 40 inference steps in Flow-GRPO, five-step DDIM, and 1–4-step shortcut / ReFlow policies in ReinFlow.
  5. Exploration noise. Tiny late-step variance weakens exploration and can make likelihood ratios numerically unstable. Solutions include DPPO variance floors, Flow-GRPO’s noise multiplier \(a\), and ReinFlow’s learned noise. Larger perturbations can also reduce sample quality and move samples away from familiar behavior.
  6. KL to the pretrained model. When the initial-noise distribution is the same, the sum of expected transition KLs upper-bounds the terminal KL. For Gaussians with equal covariance, we can calculate it in closed form. DanceGRPO reports little benefit from KL in its experiments. I would not take that as a reason to drop regularization everywhere: learned rewards can be exploited, so KL, BC, and independent evaluation may still be needed.

3Inside the chain: likelihood ratios on denoising transitions

These methods treat some denoising transitions as RL actions. Those are the solid cells, where we compute log probabilities and ratios. The differences are which steps get updated, how we compute their advantages, and where we put the critic. We use condition \(c\) or \(s_t\), latent \(x_k\), old policy \(\theta_{\mathrm{old}}\), reference \(\theta_{\mathrm{ref}}\), advantage \(\hat A\), and ratio \(\rho\) throughout.

DDPO

Black, Janner, Du, Kostrikov, Levine · 2023 · 2305.13301Inside chain
Idea
The policy is each \(\pi_\theta(x_{k-1}\mid x_k,c)\); the action is \(x_{k-1}\). The terminal reward \(r(x_0,c)\) may be a black-box compressibility, aesthetic, or VLM-alignment score.
Computation grid
One update
c ~ prompts; x_K ~ N(0,I)
for k = K..1:                    # cited ddpo-pytorch: DDIM 50, η=1, CFG=5
    x_{k-1} ~ N(μ_θold(x_k,k,c), σ_k² I)
    store x_k, x_{k-1}, logp_old[k]
r = R(x_0,c)
 = clip((r - mean_c) / std_c, -5, 5)  # running prompt statistics; no critic
for epoch, minibatch, k in all K steps:
    ρ_k = exp(log π_θ(x_{k-1}|x_k,c) - logp_old[k])
    L += -min(ρ_k Â, clip(ρ_k,1-ε,1+ε) Â)  # cited ε=1e-4
θ ← θ - learning_rate · ∇L
Objective
\[\mathcal J_{\text{DDPO}_\text{IS}}=\mathbb E\Big[\sum_{k=1}^{K}\min\big(\rho_k\hat A,\ \operatorname{clip}(\rho_k,1-\epsilon,1+\epsilon)\hat A\big)\Big],\quad \rho_k=\frac{\pi_\theta(x_{k-1}\mid x_k,c)}{\pi_{\theta_{\text{old}}}(x_{k-1}\mid x_k,c)}\]
Comparison
Compared with ordinary PPO:
  1. One generation becomes a \(K\)-step MDP with deterministic state transitions, Gaussian policies, and terminal reward.
  2. No learned critic: running per-prompt reward statistics provide the baseline.
  3. All \(K\) steps share \(\hat A\), without an explicit reference KL in the cited configuration. DDPO\(_{\mathrm{SF}}\) is the REINFORCE-style version.
Limitations
Needs stochastic transitions for ordinary log densities and stores \(K\) transitions per sample. Shared terminal credit can have high variance. The paper reports reward over-optimization; the cited \(10^{-4}\) clipping interval makes updates conservative.
Variants
DDPO\(_{\mathrm{SF}}\); Large-scale RL for diffusion (Zhang et al., 2024) extends this direction to a million-scale prompt pool and multiple rewards.

DPOK

Fan et al. · 2023 · 2305.16381Inside chain
Idea
The same single denoising MDP, now with transition KL to the pretrained model and an optional denoising-state baseline \(V(x_k,c)\). The reward is ImageReward.
Computation grid
One update
c ~ prompts; sample x_K..x_0 with a stochastic policy; store transitions
r = ImageReward(x_0,c)
for k = K..1:
    A_k = r - V_φ(x_k,c)       # optional; otherwise A_k = r
    L_pg += -α A_k log π_θ(x_{k-1}|x_k,c)
    L_kl += β ‖μ_θ(x_k,k,c)-μ_ref(x_k,k,c)‖² / (2σ_k²)
L_V = Σ_k (V_φ(x_k,c)-r)²
θ ← θ - learning_rate · ∇(L_pg+L_kl)
φ ← φ - learning_rate · ∇L_V
Objective
\[\min_\theta\ \mathbb E_{c}\Big[\alpha\,\mathbb E_{p_\theta}[-r(x_0,c)]+\beta\sum_{k}\mathbb E_{p_\theta}\big[\mathrm{KL}\big(p_\theta(x_{k-1}\mid x_k,c)\,\Vert\,p_{\text{pre}}(x_{k-1}\mid x_k,c)\big)\big]\Big]\]
Comparison
Compared with DDPO:
  1. Add expected transition KLs; their sum upper-bounds terminal KL. With matching fixed covariance, each is \(\|\mu_\theta-\mu_{\mathrm{pre}}\|^2/(2\sigma_k^2)\).
  2. An optional \(V(x_k,c)\) makes the baseline depend on the noisy state and timestep.
  3. The reward is ImageReward. I have not confirmed whether the paper uses PPO-style ratio clipping, so I leave that unspecified here.
Limitations
We need an extra reference-model forward pass at each step. The KL bound can also be conservative. The paper’s experiments use a relatively small set of prompts.
Variants
—

Flow-GRPO

Liu et al. · 2025 · 2505.05470Inside chain
Idea
A rectified-flow model (SD3.5-M) with an ODE-to-SDE construction that preserves marginals in the ideal continuous-time setting. Each SDE transition is a Gaussian policy. GenEval, OCR, or PickScore supplies terminal reward, normalized within a prompt group.
Computation grid
One update
c ~ prompts
for i = 1..G:                         # cited G=24
    x_1 ~ N(0,I)
    sample T=10 SDE steps; store logp_old
    # σ_t = a sqrt(t/(1-t)), a=0.7; handle endpoints
    r_i = R(x_0^i,c)
Â_i = (r_i-mean(r)) / std(r)           # broadcast across the chain
for i, t in group × training steps:
    ρ = exp(log π_θ(x_{t+Δt}|x_t,c)-logp_old)
    L += -min(ρ Â_i,clip(ρ,1-ε,1+ε) Â_i) + β KL_t(θ||θ_ref)
θ ← θ - learning_rate · ∇L            # inference: ODE, T=40
Objective
\[\mathcal J=\mathbb E\Big[\frac1G\sum_{i=1}^{G}\frac1T\sum_{t}\Big(\min\big(\rho_t^i\hat A^i,\operatorname{clip}(\rho_t^i,1\pm\epsilon)\hat A^i\big)-\beta\,D_{\text{KL}}(\pi_\theta\Vert\pi_{\text{ref}})\Big)\Big]\]
Comparison
Compared with DDPO:
  1. Rectified flow replaces the diffusion model; ODE→SDE gives Gaussian transitions (§2.4).
  2. Same-prompt groups (\(G=24\) in the cited setup) replace historical prompt statistics.
  3. Analytic transition KL uses \(\beta=0.04\) for GenEval/OCR and 0.01 for PickScore in the cited experiments.
  4. Denoising Reduction uses 10 steps in training and 40 at inference.
Limitations
Noise scale \(a\) must balance exploration and quality. Every step shares outcome credit. Each group costs \(G\times T\) forward evaluations, plus a comparable amount of forward/backward work for updates.
Variants
πRL Flow-SDE applies a related SDE construction to \(\pi_0\) / \(\pi_{0.5}\) VLAs within an environment-coupled two-level MDP.

DanceGRPO

Xue et al. · 2025 · 2505.07818Inside chain
Idea
SDE sampling plus group-relative advantages across diffusion and rectified-flow generators: T2I, T2V, and I2V with SD, FLUX, HunyuanVideo, and SkyReels, using multiple reward models.
Computation grid
One update
c ~ prompts; x_K ~ N(0,I)             # shared initial noise within a group
for i = 1..G:                          # cited image setup: G=12
    sample stochastic transitions; store logp_old
    # SD: 50 steps; FLUX / HunyuanVideo: 25
for each reward model m:
    A_i^m = (r_i^m-μ^m) / σ^m
Â_i = Σ_m A_i^m                        # normalize separately, then combine
S = a random 60% subset of timesteps
for i,k in group × S:
    L += -min(ρ Â_i,clip(ρ,1-ε,1+ε) Â_i)  # cited ε=1e-4; no KL
θ ← θ - learning_rate · ∇L             # jointly train cond / uncond under CFG
Objective
\[\mathcal J=\mathbb E\Big[\frac1G\sum_i\frac{1}{|S|}\sum_{k\in S}\min\big(\rho_k^i\hat A^i,\operatorname{clip}(\rho_k^i,1\pm\epsilon)\hat A^i\big)\Big],\quad \hat A^i=\sum_m\frac{r_i^m-\mu^m}{\sigma^m}\]
Comparison
Compared mechanistically with Flow-GRPO (not a claim of chronological inheritance):
  1. Share initial noise across siblings; the paper reports more stable video optimization than independent initial noise.
  2. Compute the loss on a random 60% of timesteps.
  3. Normalize each reward advantage separately before combining.
  4. Omit KL in the reported default setup.
  5. Jointly optimize conditional and unconditional branches when using CFG; the reported conditional-only setup diverges.
Limitations
Video rollout is still expensive, and the clipping interval is small. Shared initial noise helped in the experiments, but does not by itself prevent reward hacking. Later stochastic steps still need to produce different samples within the group.
Variants
—

MixGRPO

Li et al. · 2025 · 2507.21802Inside chain
Idea
MixGRPO tries to reduce GRPO’s training cost. It uses SDE transitions and ratio/KL losses only inside a moving window; the other steps use a deterministic ODE.
Computation grid
One update
W = [l,l+w); w=4; T=25                # cited FLUX.1-dev setup
c ~ prompts
for i = 1..G:                         # G=12
    before W: ODE (Euler)
    inside W: SDE (Euler–Maruyama); store logp_old
    after W: ODE; Flash uses second-order DPM-Solver++
Â_i = group_normalize(rewards)
L = Σ_{i,k∈W} -min(ρ Â_i,clip(ρ) Â_i) + β KL_k
θ ← θ - learning_rate · ∇L
every 25 iterations: l ← l+1         # move from high noise to low noise
Objective
\[\mathcal J=\mathbb E\Big[\frac1G\sum_i\frac1{w}\sum_{k\in W}\Big(\min\big(\rho_k^i\hat A^i,\operatorname{clip}(\rho_k^i,1\pm\epsilon)\hat A^i\big)-\beta D_{\text{KL},k}\Big)\Big]\]
Comparison
Compared with DanceGRPO:
  1. Both injected SDE noise and the loss are restricted to \(W\) (4 of 25 steps in the cited setup), instead of a random 60% loss subset.
  2. ODE segments can use higher-order solvers (Flash).
  3. The progressive schedule advances one timestep every 25 iterations, from low SNR to high SNR.
  4. The paper reports about 50% less training time than DanceGRPO in its comparison, or about 71% with Flash. These numbers are from those experiments; I have not reproduced them.
Limitations
The window size and schedule are chosen heuristically. At each iteration, only the steps inside the window get a direct gradient update.
Variants
MixGRPO-Flash。

DPPO

Ren et al. · 2024 · 2409.00588 · codeInside chain
Idea
A robot diffusion policy: one denoising chain per environment decision, with each transition output \(a_t^{k-1}\) as an inner action. Environment rewards feed \(V(s_t)\) and GAE; only the last \(K^{\prime}\) steps are finetuned. See §2.2 for the full derivation.
Computation grid
One update
for t = 0..T-1 in parallel environments:
    a_t^K ~ N(0,I)
    for k = K..1:                    # first K-K′ transitions use frozen θ
        a_t^{k-1} ~ N(μ(a_t^k,s_t,k), max(σ_k,0.1)² I)
    execute a_t^0; obtain r_t,s_{t+1}; store suffix logp_old
A_t = GAE(r,V_φ(s))                   # environment level only
for t,k in the final K′ transitions:
    Â_{t,k} = γ_denoise^(k-1) · A_t   # source index k; final k=1 has weight 1
    ρ = exp(log π_θft(a_t^{k-1}|a_t^k,s_t)-logp_old)
    L += -min(ρ Â,clip(ρ,1-ε_k,1+ε_k) Â)  # scheduled clipping
L_V = (V_φ(s_t)-R_t)²
# cited variance floors: 0.1; γ_denoise=0.99
# equivalent destination-index notation in §2.2 uses γ_denoise^k
Objective
\[\mathcal L=-\mathbb E_{t,k}\Big[\min\big(\rho_{t,k}\hat A_{t,k},\operatorname{clip}(\rho_{t,k},1\pm\epsilon_k)\hat A_{t,k}\big)\Big],\quad \hat A_{t,k}=\gamma_{\text{denoise}}^{\,k}\,A_t^{\text{GAE}}\]
Comparison
Compared with DDPO:
  1. Nest denoising inside an environment MDP, with one chain per executed decision.
  2. Add an environment-state critic \(V(s_t)\) and GAE.
  3. Reuse environment advantage within the chain, with denoising weights (destination-index \(\gamma_d^k\)).
  4. Finetune a suffix; cited Gym/Robomimic configurations use \(K=20,K^{\prime}=10\).
  5. Separate sampling and log-probability variance floors, both 0.1 in those configurations.
  6. Robomimic clipping runs from 0.001 to 0.01; Gym uses 0.01 at both ends.
Limitations
On-policy training can be expensive when collecting environment data is expensive. There are also quite a few choices to tune: \(K^{\prime}\), denoising weights, two noise floors, and the clipping schedule. The original notes give roughly twice the wall-clock cost of Gaussian PPO for the comparison cited there; the ratio will depend on the hardware and setup.
Variants
NCDPO stores noise, deterministically recomputes \(a^0\), uses a Gaussian output policy, and backpropagates through the chain. GenPO augments actions with dummy variables in an invertible diffusion construction to obtain tractable policy likelihoods.

ReinFlow

Zhang, Yu, Su, Wang · 2025 · NeurIPS 2025 · 2505.22094Inside chain
Idea
Start with a few-step flow policy, e.g., ReFlow / Shortcut with 1–4 steps in these experiments. Add learned noise \(\sigma_{\theta\prime}\) to make each transition Gaussian. We can then compute the chain’s joint likelihood and use a PPO-style update.
Computation grid
One update
for each environment decision:
    a^0 ~ N(0,I)
    for k = 0..K-1:                  # cited K=1..4; index runs noise → data
        a^{k+1} = a^k + v_θ(t_k,a^k,s) Δt + σ_θ′(t_k,a^k,s) ε
    execute a^K; obtain r_t; store chain logp_old
A_t = GAE(r,V_φ)
log π(chain) = Σ_k log N(a^{k+1}; a^k+v_θ Δt,diag σ_θ′²)
# Illustrative JOINT surrogate; original notes did not verify clipping granularity.
ρ_chain = exp(log π_{θ,θ′}(chain)-logp_old)
L_joint = -min(ρ_chain A,clip(ρ_chain) A) - c_ent H + L_V
update θ, θ′, φ
deployment: remove σ_θ′ and return to deterministic flow
Objective
\[\pi(a^{k+1}\mid a^k,s)=\mathcal N\big(a^k+v_\theta(t_k,a^k,s)\Delta t,\ \operatorname{diag}\sigma_{\theta'}^2(t_k,a^k,s)\big),\quad \log\pi(a^{0:K}\mid s)=\log p(a^0)+\sum_k\log\pi(a^{k+1}\mid a^k,s)\]

Here ReinFlow uses increasing generation indices a⁰→aᴷ, with a⁰ the initial noise, unlike DPPO’s decreasing indices. A fixed initial-noise prior cancels in the policy ratio.

Comparison
Compared with DPPO:
  1. Use a 1–4-step flow model.
  2. Learn bounded exploration noise \(\sigma_{\theta\prime}(t_k,a^k,s)\), reusing policy features, rather than a fixed posterior variance plus floor.
  3. Add entropy regularization.
  4. Remove the noise network at deployment.
  5. The original notes work out the joint density, but leave it unclear whether the implementation clips per-step ratios or the joint ratio. The pseudocode uses joint-ratio clipping as an example; I have not confirmed that implementation detail.
Limitations
The marginals may drift from the pretrained model. Noise bounds depend on how the control coordinates are defined, and the speed benefit assumes we already have a few-step model.
Variants
πRL Flow-Noise applies the same idea to \(\pi_0\) / \(\pi_{0.5}\).

OGPO

Patil, Nakamoto, …, Levine, Gupta, Simchowitz · 2026 · 2605.03065Inside chain
Idea
We still have two MDP levels, but split them at environment transitions. Learn \(Q\) with off-policy TD. Then we can resample the inner denoising MDP without collecting more environment data. A modified PPO objective treats \(Q(s,a_0)\) as the terminal reward and uses the product of transition ratios.
Computation grid
One update
interact: sample a_{t,K:0} ~ π_θ(·|s_t); store (s,a_0,r,s′) in replay D
critic: Q_φ ← TD on D
        target = r + γ mean_i Q_target(s′,a′^(i))
for s ~ D:
    sample N chains a^(j)_{K:0} ~ π_θbar(·|s)  # generator only; no environment
    Vhat(s) = mean_j Q_target(s,a_0^(j))
    Â_j = Q_target(s,a_0^(j)) - Vhat(s)         # optionally conservative critics
    ρ_j = Π_k π_θ(a_{k-1}^(j)|s,a_k^(j)) / π_θbar(·)
    L += -min(ρ_j Â_j,clip(ρ_j,1-ε,1+ε) Â_j)
OGPO+: L += λ_bc L_BC(success_buffer)
Objective
\[\ell_{\text{PPO}}=\min\big(\rho\hat A,\operatorname{clip}(\rho,1\pm\epsilon)\hat A\big),\quad \rho=\prod_{k=1}^{K}\frac{\pi_\theta(a_{t,k-1}\mid s_t,a_{t,k})}{\pi_{\bar\theta}(a_{t,k-1}\mid s_t,a_{t,k})},\quad \hat A=Q_{\text{targ}}(s_t,a_{t,0})-\hat V\]
Comparison
Compared with DPPO:
  1. Advantage comes from off-policy \(Q\), not rollout GAE: \(\hat A=Q(s,a_0)-\hat V\), where \(\hat V\) averages sibling-chain values at the same state.
  2. Use a joint product ratio with one scalar advantage per chain.
  3. Resample chains at replay states without fresh environment transitions.
  4. Stabilize with success-buffer BC, conservative advantages from multiple critics, and multiple next-action samples for lower-variance TD targets.
Limitations
The policy can exploit errors in the critic, and the paper spends effort dealing with this. For large \(K\), the joint ratio can trigger clipping frequently; we also need replay and multiple critics. The paper’s comparison gives roughly 10× DPPO’s sample efficiency. I have not reproduced this, and would not expect the same ratio in every setting.
Variants
OGPO+ adds success-buffer BC; OGPO+CA adds conservative advantages.

4Noise space: only \(x_K\) is the action

The generator is frozen: all denoising cells are gray and only the initial-noise cell is solid. Any required density belongs to the noise policy itself, independently of the denoising chain.

Noise PPO

Miao, Loh, Poupart, Kothawade · 2025 · 2506.12036Noise space
Idea
Freeze the diffusion model. The learned policy is a prompt-conditioned initial-noise distribution \(\pi_\theta(x_K\mid c)=\mathcal N(\mu_\theta(c),\Sigma_\theta(c))\). This is a one-step MDP with a weighted aesthetic / PickScore / HPSv2 reward.
Computation grid
One update
c ~ prompts
x_K ~ π_θold(·|c)                 # zero-initialized heads start at N(0,I)
x_0 = Sampler_frozen(x_K,c)       # cited LCM 4-step / SDXL-Turbo setup
r = 0.2 Aesthetic + 0.4 PickScore + 0.4 HPSv2
 = r-b                          # exact baseline unresolved in source notes
ρ = π_θ(x_K|c) / π_θold(x_K|c)
L = -min(ρ Â,clip(ρ) Â) + γ1 KL(π_θ(·|c)||N(0,I)) - γ2 H(π_θ(·|c))
θ ← θ - learning_rate · ∇L
Objective
\[\min_\theta\ -\mathcal J_{\text{PPO}}(\theta)+\gamma_1\,\mathrm{KL}\big(\pi_\theta(\cdot\mid c)\,\Vert\,\mathcal N(0,I)\big)-\gamma_2\,\mathcal H\big(\pi_\theta(\cdot\mid c)\big)\]
Comparison
Compared with DDPO:
  1. The action moves from every transition to only \(x_K\); denoising becomes a frozen function.
  2. The MDP shrinks from \(K\) decisions to one.
  3. KL compares the noise policy with a standard Gaussian, not the denoiser with a reference model.
  4. No denoising trajectory storage or generator backpropagation is needed.
Limitations
The frozen generator and allowed noise distribution limit which outputs we can reach. The paper finds smaller gains with longer sampling chains, though this depends on the model and sampler. The noise itself can also be high-dimensional.
Variants
ReNO instead performs inference-time noise gradient ascent for a single prompt using a differentiable reward; it does not train a noise-space RL policy.

DSRL

Wagenmaker et al. · 2025 · CoRL 2025 · 2506.15799Noise space
Idea
Freeze the diffusion policy. Learn \(\pi^W(w\mid s)\) in latent-noise space and execute \(a=\pi_{\mathrm{dp}}(s,w)\) through deterministic DDIM. The outer learning algorithm is off-policy SAC.
Computation grid
One update
w ~ π^W_ψ(·|s_t), w ∈ [-b,b]^d    # cited online b between 1 and 3
a_t = π_dp(s_t,w)                  # frozen; deterministic DDIM
execute a_t; store (s,a,w,r,s′)
DSRL-SAC: Q^W(s,w) ← TD
          actor maximizes Q^W - α log π^W
DSRL-NA:  Q^A(s,a) ← TD            # arbitrary-source action transitions
          regress Q^W(s,w) toward Q^A(s,π_dp(s,w))
          improve the latent actor using Q^W
Objective
\[\max_\psi\ \mathbb E_{s}\big[Q^W(s,\pi^W_\psi(s))\big],\qquad Q^W(s,w)\approx Q^A\big(s,\pi_{\text{dp}}(s,w)\big)\ \ (\text{NA})\]
Comparison
Compared mechanistically with independently proposed Noise PPO:
  1. A multi-step environment MDP replaces the one-step generation problem; select noise at each decision.
  2. Off-policy SAC replaces PPO.
  3. Bound \(w\) within \([-b,b]^d\), instead of explicitly penalizing KL to \(\mathcal N(0,I)\).
  4. The NA variant learns \(Q^A\) in action space, then distills it into noise-space values. This exploits the many-to-one noise/action map and enables learning from arbitrary action data.
Limitations
We need critics, and the latent dimension is tied to the action chunk. If the frozen policy cannot produce a useful behavior within the allowed latent region, changing the noise cannot fix it. OGPO reports this problem when the base policy is poorly initialized.
Variants
DSRL-SAC、DSRL-NA。

5Likelihood-free / regression: no chain \(\log\pi\)

Here most denoising cells are outlined. We still train the parameters, but use regression, flow-matching losses, or pathwise gradients instead of local likelihood ratios.

Diffusion-DPO

Wallace et al. · 2023 · 2311.12908likelihood-free
Idea
We start with offline preference pairs \((x_0^w,x_0^l)\), so there is no online rollout reward. Denoising-loss differences, using an ELBO approximation, replace the log-likelihood differences in the DPO objective.
Computation grid
One update
(c,x_0^w,x_0^l) ~ preference data (Pick-a-Pic)
k ~ U(1..K); ε^w,ε^l ~ N(0,I)
x_k^w = q(x_0^w,k,ε^w); x_k^l = q(x_0^l,k,ε^l)  # forward noise
d_w = ‖ε^w-ε_θ(x_k^w,k,c)‖² - ‖ε^w-ε_ref(x_k^w,k,c)‖²
d_l = ‖ε^l-ε_θ(x_k^l,k,c)‖² - ‖ε^l-ε_ref(x_k^l,k,c)‖²
L = -log sigmoid(-β T ω(λ_k) (d_w-d_l))
θ ← θ - learning_rate · ∇L
Objective
\[\mathcal L=-\mathbb E\log\sigma\Big(-\beta T\omega(\lambda_k)\big[d_w-d_l\big]\Big)\]
Comparison
Compared with DDPO:
  1. Train on fixed preference pairs, without online sampling and scoring.
  2. Use denoising-loss differences rather than chain \(\log\pi\).
  3. Reference regularization is implicit in the DPO derivation.
  4. Train at a randomly chosen \(k\) using forward-noised data.
Limitations
We need preference pairs, and offline data may not cover the distribution we want. The ELBO approximation also introduces a difference from the exact marginal-likelihood objective.
Variants
D3PO assigns stepwise preferences from terminal outcomes; SPO samples stepwise candidates and uses a step-aware preference model. PhysMoDPO applies preference optimization to motion generation with a whole-body controller in the evaluation loop and reports G1 robot experiments.

DiffusionNFT

Zheng et al. · 2025 · 2509.16117likelihood-free
Idea
Online reinforcement through the forward process. Generate samples, normalize rewards to \(r\in[0,1]\), forward-noise the outputs, and regress positive/negative implicit flow policies without \(\log\pi\).
Computation grid
One update
c ~ prompts; sample G=24 outputs x_0 ~ π_θold
# arbitrary solver, e.g. a 40-step second-order ODE; cited setup is CFG-free
r_raw = R(x_0,c)
r = 0.5 + 0.5 clip((r_raw-mean_c(r_raw))/Z,-1,1)
for each x_0:
    t ~ U; ε ~ N(0,I)
    x_t = α_t x_0 + σ_t ε; v = α̇_t x_0 + σ̇_t ε
    v⁺ = (1-β) v_old(x_t) + β v_θ(x_t)
    v⁻ = (1+β) v_old(x_t) - β v_θ(x_t)
    L += r ‖v⁺-v‖² + (1-r) ‖v⁻-v‖²
θ ← θ - learning_rate · ∇L
θ_old ← η_i θ_old + (1-η_i) θ          # EMA
Objective
\[\mathcal L(\theta)=\mathbb E\big[r\,\lVert v^+_\theta(x_t,c,t)-v\rVert^2+(1-r)\,\lVert v^-_\theta(x_t,c,t)-v\rVert^2\big]\]
Comparison
Compared with Flow-GRPO:
  1. No transition log probabilities or SDE requirement; sampling can use ODE/higher-order solvers.
  2. Train on forward-noised outputs at random \(t\), not sampled reverse-chain transitions.
  3. Transform group rewards into \(r\in[0,1]\) weights for positive and negative implicit policies.
  4. No ratio clipping; stability depends on \(\beta\) and old-model EMA.
  5. The cited setup is CFG-free.
Limitations
There is no explicit PPO trust-region surrogate, and we need to choose the normalization scale \(Z\). For long-horizon control, we still have to work out the environment credit. The paper reports about 0.98 GenEval after roughly 1k steps, compared with 0.95 after 5k+ steps for Flow-GRPO in its experiments. I have not reproduced these numbers.
Variants
—

FPO

McAllister et al. · 2025 · 2507.21053likelihood-free
Idea
Treat the complete \(a_t\) as one action per environment decision. Build a surrogate ratio from the difference in conditional flow-matching losses, and use the numerical sampler as a black box.
Computation grid
One update
rollout: a_t = Sampler_θold(s_t)      # arbitrary sampler / number of steps
         store N_mc=8 probes (τ_i,ε_i); execute a_t and get r_t
A_t = GAE(r,V_φ)
for minibatch:
    ℓ_θ(i) = CFM_loss(v_θ; a_t,s_t,τ_i,ε_i)
    ℓ_old(i) = CFM_loss(v_θold; same a_t,s_t,τ_i,ε_i)
    ρhat = exp(-mean_i(ℓ_θ(i)-ℓ_old(i)))
    L = -min(ρhat A_t,clip(ρhat,1-ε,1+ε) A_t) + L_V
# interpolation, normalization, and objective scaling follow the paper
Objective
\[\hat\rho^{\text{FPO}}(\theta)=\exp\Big(-\frac1{N_{\text{mc}}}\sum_{i=1}^{N_{\text{mc}}}\big(\ell_\theta(\tau_i,\epsilon_i)-\ell_{\theta_{\text{old}}}(\tau_i,\epsilon_i)\big)\Big)\]
Comparison
Compared with DPPO:
  1. The action is the final \(a_t\), not each denoising transition.
  2. A CFM-loss surrogate replaces exact local transition ratios.
  3. Sampling can be deterministic and use different solvers.
  4. The environment critic and GAE remain.
Limitations
This is not the exact importance ratio of the sampler used at deployment. The Monte Carlo estimate adds variance (the default discussed here is \(N_{\mathrm{mc}}=8\); the paper also tests one probe). In the image-finetuning experiments, the paper discusses how CFG mismatch accumulates.
Variants
—

ReFL / DRaFT / AlignProp: pathwise comparisons

Xu et al. 2023 · 2304.05977;Clark et al. 2023 · 2309.17400;Prabhudesai et al. 2023 · 2310.03739pathwise
Idea
If the reward is differentiable, we can directly backpropagate \(\nabla_\theta r(x_0(\theta))\) through sampling. This uses a different gradient estimator from likelihood-ratio policy gradients. Calling it RL or direct reward optimization does not change that distinction.
Computation grid
One update
c ~ prompts; x_K ~ N(0,I)
with no_grad: denoise to k_stop
    # ReFL: a random late step; DRaFT-K: last K steps; AlignProp: random truncation
with grad: denoise from k_stop to x_0
    # ReFL instead predicts xhat_0 from the selected late step
r = R_diff(x_0,c)
θ ← θ + learning_rate · ∇_θ r
# gradient checkpointing / LoRA can reduce training cost
Objective
\[\max_\theta\ \mathbb E_{c,\,x_K}\big[r\big(x_0(\theta;x_K,c),c\big)\big],\qquad \nabla_\theta r=\frac{\partial r}{\partial x_0}\frac{\partial x_0}{\partial\theta}\]
Comparison
Compared with DDPO:
  1. A pathwise derivative replaces the score-function estimator, often reducing variance.
  2. No log probability or stochastic transition is required.
  3. The reward must be differentiable with respect to the output.
  4. Truncation differs: ReFL uses a selected late prediction; DRaFT-K keeps the last K steps, with DRaFT-LV adding repeated noising at K=1; AlignProp uses random truncation.
Limitations
We have to keep the activations for the steps we backpropagate through. Reward over-optimization is still a problem. A black-box reward cannot give us the direct gradient these methods need.
Variants
DRaFT-K、DRaFT-LV。

Off-policy Q comparisons: Diffusion-QL / DIPO / QSM / IDQL

2208.06193 · 2305.13122 · 2312.11752 · 2304.10573likelihood-free
Idea
First learn \(Q(s,a)\), then use it to improve the diffusion policy. These methods differ in how they do that: gradients, updated targets, or candidate selection. None requires the denoising chain’s likelihood.
Computation grid
One update
Q_φ ← TD on replay D
Diffusion-QL: L = L_BC(θ) - α Q_φ(s,a_0(θ))  # backpropagate action gradient
DIPO:         a′ = a + η ∇_a Q(s,a); diffusion BC on (s,a′)
QSM:          match the policy score to a Q-gradient-based target
IDQL:         sample N actions from a BC diffusion policy;
              resample using implicit IQL weights
Objective
\[\text{Diffusion-QL:}\ \ \min_\theta\ \mathcal L_{\text{BC}}(\theta)-\alpha\,\mathbb E_{s}\big[Q_\phi(s,a_0(\theta;s))\big]\]
Comparison
Compared with DPPO:
  1. No local likelihood-ratio objective is required.
  2. Use \(Q(s,a)\) rather than only \(V(s)\). Diffusion-QL, DIPO, and QSM use action-value gradients in different ways; IDQL uses candidate weighting.
  3. Replay/off-policy learning replaces purely on-policy collection.
Limitations
The critic needs to be accurate, which can be difficult for high-dimensional actions. On its harder tasks, DPPO reports better results than the off-policy baselines it tests. That comparison does not tell us which method wins under every algorithm and data setting.
Variants
DACER(2405.15177)、PA-RL(2412.06685)。

6Outside the chain: residuals after \(x_0\)

The generator column stays frozen and only the residual row is solid. The relevant density is the residual actor’s own distribution.

Residual RL:ResiP / Policy Decorator

Ankile et al. 2024 · 2407.16677;Yuan et al. 2024 · 2412.13630Outside chain
Idea
Freeze the base diffusion policy and train a small residual \(\Delta\). Execute \(a^{\mathrm{base}}+\lambda\Delta\). The residual, not the diffusion output, is the RL action.
Computation grid
One update
for t:
    if replanning: a_base[t:t+32] = π_dp(s_t)
        # cited ResiP setup: frozen, DDIM 4 steps, execute 8 actions per chunk
    Δ_t ~ π_res(·|s_t,a_base[t])      # each primitive control step
    execute a_base[t] + 0.1 Δ_t; obtain r_t
A = GAE(r,V_φ)
L = PPO_clip(π_res) + L_V            # ResiP
# Policy Decorator: bounded Δ=α tanh(·), SAC
# choose base+Δ with probability ε; otherwise base alone
# progressively increase ε from 0 to 1
Objective
\[a_t=a_t^{\text{base}}+\lambda\,\Delta_t,\quad \Delta_t\sim\pi_\phi(\cdot\mid s_t,a_t^{\text{base}}),\quad \mathcal L=-\mathbb E\big[\min(\rho_tA_t,\operatorname{clip}(\rho_t,1\pm\epsilon)A_t)\big]\]
Comparison
Compared with DSRL:
  1. Move the action from latent noise \(w\) to output correction \(\Delta\).
  2. A correction can reach actions outside the base generator’s image, but its scale (0.1 in the cited ResiP setup) or bound \(\alpha\) limits displacement.
  3. ResiP uses PPO; Policy Decorator uses SAC with progressive exploration.
Limitations
A small bounded residual mainly makes local corrections. The base generator stays unchanged; the improvement is in the residual network. We can also run the residual more frequently than we replan with the base policy.
Variants
EXPO, the residual baseline in the OGPO paper.

7Image / video versus robotics: what actually corresponds?

After going through the methods, I want to compare image/video generation and robotics more directly. The questions are the same: what do we generate, where do we get reward, which random variable do we compute the ratio on, and how do we assign credit across time? Here I compare the formulations, rather than rank scores from different benchmarks.

Image / video

During one generation, the condition \(c\) is fixed. The output \(x_0\) can be a whole image or video, which gets a score \(R(x_0,c)\) after generation. A video has a time axis, but generating more frames does not by itself add an environment MDP. For that, we need actions, new observations, and further decisions in between.

Robotics

The denoising chain generates an action or action chunk \(A_j\). We execute it and reach \(s_{j+1}\), which conditions the next chain. So the next generation depends on both the previous output and the environment. We need to distinguish three lengths: \(K\) generation steps, \(H\) predicted actions, and \(h\) executed actions.

7.1 One score-function identity, two return problems

Let us first write down the objective for generating and scoring one image or video. If the initial-noise distribution is fixed, only the conditional transitions contribute a gradient. For now, leave out the baseline, PPO clipping, and KL terms:

\[p_\theta(x_{0:K}\mid c)=p(x_K)\prod_{k=1}^{K}\pi_\theta(x_{k-1}\mid x_k,c),\qquad J_{\mathrm{gen}}=\mathbb E[R(x_0,c)].\] \[\nabla_\theta J_{\mathrm{gen}}=\mathbb E\!\left[R(x_0,c)\sum_{k=1}^{K}\nabla_\theta\log\pi_\theta(x_{k-1}\mid x_k,c)\right].\]

For a robot, write the final action distribution as \(\pi_\theta(A_j\mid s_j)\). The policy gradient uses the advantage of this decision for future environment return. We can expand the score into denoising-level terms in the implementation. DPPO uses a particular estimate and weighting, \(\gamma_{\mathrm{denoise}}^k A_j\). Simply replacing an image score \(R\) with the immediate environment reward \(r_j\) does not give us the same update.

\[J_{\mathrm{robot}}=\mathbb E\!\left[\sum_{n\ge0}\gamma_{\mathrm{env}}^n r_n\right],\qquad \nabla_\theta J\;\propto\;\mathbb E_{s_j,A_j}\!\left[\nabla_\theta\log\pi_\theta(A_j\mid s_j)\,A^\pi(s_j,A_j)\right].\]

The state expectation here uses the visitation distribution for the discounted objective. For generation, we often give all steps in a chain the final sample’s score. For control, we also need to estimate what this action does to future states. This is what the critic helps us with; it is not required just because the task involves a robot.

7.2 Action chunking: define the duration of an environment step

Suppose that at replanning step \(j\), we predict \(H\) actions but only execute the first \(h_j\le H\), without calling the generator again. Let \(n_j\) be the starting primitive control step. Set \(b_j=0\) at true termination and 1 otherwise. If \(\gamma\) is the discount per primitive control step, we get the following chunk reward and bootstrap:

\[\bar r_j=\sum_{u=0}^{h_j-1}\gamma^u r_{n_j+u},\qquad \Gamma_j=\gamma^{h_j},\qquad \delta_j=\bar r_j+\Gamma_j b_j V(s_{j+1})-V(s_j).\] \[\hat A_j=\delta_j+\Gamma_j\lambda b_j\hat A_{j+1}.\]

Here \(\lambda\) is defined per replanning decision. We could instead define the discount per chunk, but that would change the time scale. We also need to distinguish a time-limit truncation from true termination when deciding whether to bootstrap. The remaining \(H-h_j\) actions were never executed, so they contributed no direct environment reward to this chunk. We cannot count predicted actions as executed ones. These equations use one chunk-level convention; an implementation may choose another.

7.3 Why “same-prompt groups” do not become “same-batch groups”

Flow-GRPO / DanceGRPO compare samples generated under the same condition \(c\). In a robot batch, however, \(s_1,s_2,\ldots\) may come from different task stages and difficulty levels. If we normalize their returns together, we mix up the quality of the action with how good the starting state already was.

\[\hat A_i^{\mathrm{gen}}=\frac{R(x_0^{(i)},c)-\bar R_c}{\operatorname{std}_c(R)+\epsilon},\qquad \hat A_i^{Q}(s)=Q(s,a_i)-\frac1N\sum_{m=1}^{N}Q(s,a_m).\]

One option is to restore the same state and sample several future trajectories. Another is to generate several candidate actions at that state and use a critic to estimate their returns. The first needs resets or environment branching. The second depends on the critic, including its error on out-of-distribution actions; OGPO’s same-state chain comparison takes this approach. Also, subtracting a mean and dividing by a standard deviation are different choices. They give different update scales in the two equations above.

7.4 Which log probability is tractable?

We can calculate each Gaussian transition’s density, but this does not automatically give us the final-action marginal. With a saved latent trajectory, we can calculate a joint ratio. For the final-action density, we still have to integrate out the intermediate variables. Clipping each step, clipping the product over the chain, and doing PPO on the final-action marginal give three different objectives.

\[\pi_\theta(a^0\mid s)=\int p(a^K)\prod_{k=1}^{K}\pi_\theta(a^{k-1}\mid a^k,s)\,\mathrm da^{1:K},\qquad \rho_{\mathrm{chain}}=\exp\!\left(\sum_k\Delta\log\pi_k\right).\] \[\sum_k\min(\rho_k A,\operatorname{clip}(\rho_k)A)\;\ne\;\min\!\left((\prod_k\rho_k)A,\operatorname{clip}(\prod_k\rho_k)A\right).\]

This is something to check in the code when reading DPPO, ReinFlow, OGPO, or GenPO. A fixed initial-noise prior cancels in the ratio. If we train the noise policy, as in Noise PPO / DSRL, we are optimizing a different object. FPO’s CFM-loss ratio is a surrogate; it is different from both exact density ratios above.

7.5 What should a comparison hold constant?

DimensionImage / videoRobotics
Sampling budgetPrompts, samples G per prompt, resolution / frames, sampler steps K, reward callsEnvironment interactions, resets, execution length h, candidate actions, denoising computation
Optimization budgetUpdated denoising steps, forward/backward passes, reference calls, memory, wall-clock timeThe same model computation plus critic TD / GAE; report environment collection time separately
Training / inference distributionsSDE training versus ODE inference, CFG, resolution, sampling stepsRemoving exploration noise, action-chunk execution, feedback frequency, state distribution
Outcomes and failuresIndependent reward / human preferences, prompt generalization, diversity, reward hackingSuccess, return, completion time, disturbance recovery, invalid actions, critic exploitation

When a method is “more efficient,” I want to know what it saves: training FLOPs, memory, reward calls, or environment interactions. Running an image reward model once and resetting a physical robot after a failed trial have very different costs. These are the comparisons I would make using the table above; each method’s actual setup is given in its cited paper.

8Pairwise comparison

Select two methods to see their grids and details side by side. Differences are highlighted. The default is DDPO versus DPPO, showing what changes when we add the environment MDP.

DDPO

DPPO

DimensionDDPODPPO

Highlighted rows show a difference between the two methods. The definitions are the same as in their sections above.

9Overview table

“Likelihood” means an exact policy log probability on a denoising transition, latent noise, or residual action. “On/off” describes the data used for policy updates.

MethodDomainOptimization targetlikelihoodcriticon / offRewardMain limitation
Chain likelihood ratios (score function)
DDPOImageFull chain (per-step ratio)YesNoonBlack-box terminal scalarHigh variance; overoptimization without regularization
DPOKImageFull chain + per-step KLYesOptional \(V(x_k,c)\)onLearned preference rewardLimited scale; conservative KL bound
Flow-GRPOImageFull chain (SDE; fewer training steps)Yes (SDE)No (within-group baseline)onGenEval / OCR / preferenceSDE noise tuning; outcome-only credit
DanceGRPOImage / videoAbout 60% of timestepsYes (SDE)No (within-group baseline)onMultiple rewards; summed advantagesExpensive; setup relies on shared noise and other choices
MixGRPOImageSteps in a moving windowYes (SDE in window)NoonPreferenceHeuristic window schedule
DPPORoboticsLast \(K^{\prime}\) steps (two-level MDP)Yes\(V(s_t)\)onDense / sparse environment returnSample efficiency; many hyperparameters
ReinFlowRoboticsFull chain + noise networkYes (injected noise)YesonEnvironment returnMarginals can drift from the prior
πRLVLAFull chain (Noise / SDE)YesYesonTask successRollout cost of large models
GenPORoboticsEntire invertible diffusion modelYes (exact marginal)YesonEnvironment returnDoubled action dimension; architectural constraints
OGPORoboticsFull chain (product ratio)Yes\(Q\)(off-policy)Mixed\(Q\) as terminal rewardCritic exploitation; needs conservative updates
Chain pathwise / hybrid
ReFL / DRaFT / AlignPropImageFull chain or truncated last K stepsNoNoOn (generate, then update)Differentiable rewardRequires reward gradients; memory; reward hacking
NCDPORoboticsFull chain (BPTT) + output GaussianOutput headYesonEnvironment returnMemory grows with \(K\)
Diffusion-QL / DIPO / QSM / DACER / IDQL / PA-RLRoboticsFull chain / action selectionNo\(Q\)offEnvironment returnDepends on critic accuracy
Without chain likelihoods
FPORobotics (also explored for images)Whole modelNo (CFM surrogate)YesonEnvironment returnBiased ratio; instability reported with CFG
DiffusionNFTImageWhole model (forward process)NoNoonlineNormalized to [0,1]No explicit trust region
Diffusion-DPO / D3PO / SPOImageWhole model / per-stepNo (ELBO approximation)NoOff / iterativePaired preferencesRequires preference data; offline distribution shift
Noise space / output residuals (frozen generator)
Noise PPOImageInitial-noise distribution (single-step MDP)Gaussian noise policyUnconfirmed in the original notesonAesthetics / preferenceBenefits can attenuate with more sampling steps
DSRLRoboticsInitial noise \(w\)Noise policy\(Q^W\) / \(Q^A\)offEnvironment returnLimited by the frozen generator’s reachable outputs
ResiPRoboticsOutput residualGaussian residual policyYesonEnvironment returnBounded local correction
Policy DecoratorRoboticsBounded output residualResidual policy\(Q\)offEnvironment returnBounded local correction

References

Reference numbers, titles, and authors follow the original notes dated October 7, 2026; years refer to first arXiv submission. Numerical results and configurations belong to the cited papers or implementations and are not universal defaults.

  1. Black et al. Training Diffusion Models with Reinforcement Learning (DDPO). 2023. arXiv:2305.13301
  2. Fan et al. DPOK: Reinforcement Learning for Fine-tuning Text-to-Image Diffusion Models. 2023. arXiv:2305.16381
  3. Zhang et al. Large-scale Reinforcement Learning for Diffusion Models. 2024. arXiv:2401.12244
  4. Wallace et al. Diffusion Model Alignment Using Direct Preference Optimization. 2023. arXiv:2311.12908
  5. Yang et al. Using Human Feedback to Fine-tune Diffusion Models without Any Reward Model (D3PO). 2023. arXiv:2311.13231
  6. Liang et al. Aesthetic Post-Training Diffusion Models from Generic Preferences with Step-by-step Preference Optimization (SPO). 2024. arXiv:2406.04314
  7. Xu et al. ImageReward (ReFL). 2023. arXiv:2304.05977
  8. Clark et al. Directly Fine-Tuning Diffusion Models on Differentiable Rewards (DRaFT). 2023. arXiv:2309.17400
  9. Prabhudesai et al. Aligning Text-to-Image Diffusion Models with Reward Backpropagation (AlignProp). 2023. arXiv:2310.03739
  10. Liu et al. Flow-GRPO: Training Flow Matching Models via Online RL. 2025. arXiv:2505.05470
  11. Xue et al. DanceGRPO: Unleashing GRPO on Visual Generation. 2025. arXiv:2505.07818
  12. Li et al. MixGRPO: Unlocking Flow-based GRPO Efficiency with Mixed ODE-SDE. 2025. arXiv:2507.21802
  13. Zheng et al. DiffusionNFT: Online Diffusion Reinforcement with Forward Process. 2025. arXiv:2509.16117
  14. Miao et al. A Minimalist Method for Fine-tuning Text-to-Image Diffusion Models (Noise PPO). 2025. arXiv:2506.12036
  15. Eyring et al. ReNO: Reward-based Noise Optimization. 2024. arXiv:2406.04312
  16. Ren et al. Diffusion Policy Policy Optimization (DPPO). 2024. arXiv:2409.00588, code
  17. Yang et al. Fine-tuning Diffusion Policies with Backpropagation Through Diffusion Timesteps (NCDPO). 2025. arXiv:2505.10482
  18. Zhang et al. ReinFlow: Fine-tuning Flow Matching Policy with Online Reinforcement Learning. 2025. arXiv:2505.22094
  19. McAllister et al. Flow Matching Policy Gradients (FPO). 2025. arXiv:2507.21053
  20. Ding et al. GenPO: Generative Diffusion Models Meet On-Policy Reinforcement Learning. 2025. arXiv:2505.18763
  21. Chen et al. πRL: Online RL Fine-tuning for Flow-based Vision-Language-Action Models. 2025. arXiv:2510.25889
  22. Patil et al. OGPO: Sample Efficient Full-Finetuning of Generative Control Policies. 2026. arXiv:2605.03065
  23. Wagenmaker et al. Steering Your Diffusion Policy with Latent Space Reinforcement Learning (DSRL). 2025. arXiv:2506.15799
  24. Ankile et al. From Imitation to Refinement: Residual RL for Precise Assembly (ResiP). 2024. arXiv:2407.16677
  25. Yuan et al. Policy Decorator: Model-Agnostic Online Refinement for Large Policy Model. 2024. arXiv:2412.13630
  26. Wang et al. Diffusion-QL. 2022. arXiv:2208.06193;Hansen-Estruch et al. IDQL. 2023. arXiv:2304.10573;Yang et al. DIPO. 2023. arXiv:2305.13122;Psenka et al. QSM. 2023. arXiv:2312.11752;Wang et al. DACER. 2024. arXiv:2405.15177;Mark et al. PA-RL. 2024. arXiv:2412.06685
  27. Schulman et al. PPO. 2017. arXiv:1707.06347;Schulman et al. GAE. 2015. arXiv:1506.02438
  28. Shao et al. DeepSeekMath (GRPO). 2024. arXiv:2402.03300;Ahmadian et al. RLOO. 2024. arXiv:2402.14740;Hu et al. REINFORCE++. 2025. arXiv:2501.03262
  29. Han et al. ReinDiffuse. 2024. arXiv:2410.07296;Yue et al. RLPF. 2025. arXiv:2506.12769;PhysMoDPO. 2026. arXiv:2603.13228
Numerical results are reported by their respective papers and have not been reproduced here. Content labeled “uncertain,” “inference,” or placed in an interpretation box expresses judgment, not a paper’s established conclusion. The five denoising rows in each grid are schematic, not the actual sampling schedule.