連續控制

深度確定性策略梯度(deep deterministic policy gradient, DDPG)

DDPG 是多數人接觸連續控制時的第一個演算法,最好把它理解成「裝了個小幫手的 Q 學習」。難處在於你無法對實數動作計算 max_a Q(s,a)。DDPG 的解法是再訓練一個網路——演員——它唯一的工作就是針對給定狀態,輸出它認為能讓 Q 最大的那個動作。評論家照常學 Q;演員則學著往上爬。兩者合起來,就在連續世界裡找回了 Q 學習的精神。

演員是確定性的:對一個狀態它回傳單一動作而非分布,寫作 a = μ_θ(s)。它的梯度直接得令人愉快——把演員的輸出往任何能抬高評論家價值的方向推,也就是連鎖律 ∇_θ Q(s, μ_θ(s)) 穿過評論家流回演員。DDPG 是離策略的,所以從重播緩衝區訓練,並借用 DQN 的目標網路來穩住會移動的 Q 目標。探索則靠人工加上,方法是用雜訊擾動演員的動作。

DDPG 是一大突破,卻以脆弱出名:它高估 Q、對超參數敏感、訓練到一半可能崩潰。後來幾乎所有東西——尤其是 TD3 與 SAC——都是針對 DDPG 特定失敗模式的修補清單。在加上那些穩定器之前,它仍是學「連續動作版演員–評論家」這個範式最乾淨的起點。

\nabla_\theta J=\mathbb{E}_{s\sim\mathcal{D}}\big[\nabla_a Q_\phi(s,a)\big|_{a=\mu_\theta(s)}\,\nabla_\theta\mu_\theta(s)\big]

透過穿過 Q 的連鎖律,把演員的輸出往評論家價值的上坡推。

又稱
DDPG