在當代商業環境中,企業日益尋求自動化與智能化的決策支援。強化學習為此提供了強大的理論框架,而策略梯度(Policy Gradient)演算法正是其中的關鍵支柱。相較於傳統僅評估狀態價值的學習方法,策略梯度直接對決策策略進行優化,使其能應對動態定價或庫存管理等複雜動作空間。本文將系統性地梳理策略梯度方法的演進脈絡,從解決基礎蒙地卡羅方法高變異性的基準線技術,到提升穩定性的 Actor-Critic 架構,再到突破數據效率瓶頸的離策略學習與深度確定性策略梯度(DDPG)。此理論進程不僅反映了演算法的精進,更揭示其在工業應用中邁向高效能實踐的必經之路。

策略梯度優化:從基礎到進階的智能決策養成

策略梯度基礎:蒙地卡羅與基準線強化

在智能決策系統的建構中,策略梯度(Policy Gradient)演算法扮演著核心角色,它透過直接學習最佳行為策略,而非間接學習價值函數,來解決複雜的決策問題。其中,蒙地卡羅策略梯度(Monte Carlo Policy Gradient),常被稱為REINFORCE演算法,是這類方法中最基礎且直觀的實踐。其核心理念是透過完整的經驗序列(回合)來估計每個動作的價值,並據此調整策略參數,以提升那些帶來高回報的動作的選擇機率。

然而,單純的蒙地卡羅方法存在一個顯著的挑戰:高變異性。由於回報是基於整個回合的累積,即使是微小的動作序列變化,也可能導致回報的劇烈波動,進而使得策略更新的方向不穩定。為了解決這個問題,帶有基準線的REINFORCE(REINFORCE with Baseline)應運而生。它引入一個基準線(通常是狀態價值函數的估計),將回報減去這個基準線,形成優勢函數(Advantage Function)。優勢函數衡量的是在特定狀態下,採取某個動作相對於平均水平的「好處」。透過這種方式,可以有效降低梯度估計的變異性,使學習過程更加穩定和高效。

此圖示:蒙地卡羅策略梯度與基準線強化流程

  graph TD
    A[策略初始化] --> B{環境互動};
    B -- 執行動作 --> C[收集經驗序列];
    C -- 計算總回報 Gt --> D{更新策略參數};
    D -- 梯度上升 --> A;
    
    subgraph REINFORCE with Baseline
        C_BL[收集經驗序列] --> E[估計狀態價值 V(s)];
        C_BL --> F[計算優勢函數 At = Gt - V(s)];
        F --> G{更新策略參數};
        G -- 梯度上升 --> A;
    end

看圖說話:

此圖清晰地描繪了蒙地卡羅策略梯度(REINFORCE)與帶有基準線的REINFORCE演算法的核心流程。左側的REINFORCE透過環境互動收集完整的經驗序列,計算每個時間步的總回報$G_t$,然後利用這些回報直接更新策略參數,以最大化期望回報。右側的帶有基準線的REINFORCE則在此基礎上引入了狀態價值函數$V(s)$的估計。它在計算總回報後,會減去估計的狀態價值,得到優勢函數$A_t = G_t - V(s)$。這個優勢函數用於指導策略更新,能夠有效降低梯度估計的變異性,使學習過程更加穩定和高效,是策略梯度優化中的一個關鍵改進。

梯度變異性削減:n步Actor-Critic與資格追蹤

在策略梯度方法中,梯度變異性是影響學習效率和穩定性的關鍵因素。除了引入基準線,還有其他更為精妙的技術來進一步削減這種變異性,加速收斂。

n步Actor-Critic演算法是一種混合了策略梯度和價值函數方法的架構。它包含兩個核心組件:Actor(策略網路)負責決定要採取的動作,Critic(價值網路)則負責評估這些動作的價值。與蒙地卡羅方法等待整個回合結束才更新不同,n步Actor-Critic利用n步回報(n-step return)來估計價值,這是一種介於單步時序差分(TD)更新和蒙地卡羅更新之間的方法。它向前看n個時間步的回報,然後用第n步之後的狀態價值估計來「截斷」回報。這種方法既利用了TD學習的低變異性,又保留了蒙地卡羅學習的部分無偏性,達到了變異性與偏差之間的良好平衡。優勢Actor-Critic (A2C) 則是n步Actor-Critic的一個流行變體,它直接使用優勢函數來更新策略,進一步提升了效率。

資格追蹤Actor-Critic則更進一步,它結合了資格追蹤(Eligibility Traces)的概念。資格追蹤允許將當前時間步的更新影響「回溯」到之前訪問過的狀態和動作。這意味著,一個動作的回報不僅會影響當前動作的策略更新,也會以遞減的方式影響到之前導致該狀態的動作。透過這種方式,資格追蹤可以更有效地利用經驗,加速學習,尤其是在稀疏獎勵的環境中。它為策略梯度提供了一種高效的信用分配機制,使得學習能夠更迅速地將獎勵歸因於導致它的早期動作。

此圖示:Actor-Critic架構與梯度優化

  graph TD
    A[環境狀態 St] --> B{Actor (策略網路)};
    B -- 動作 At --> C[環境];
    C -- 新狀態 St+1, 獎勵 Rt+1 --> D{Critic (價值網路)};
    D -- 價值估計 V(St), V(St+1) --> E[TD誤差 / 優勢函數];
    E --> B;
    E --> D;
    
    subgraph n-Step Actor-Critic
        C -- n步回報 --> E;
    end
    
    subgraph Eligibility Traces
        E -- 資格追蹤 --> B;
        E -- 資格追蹤 --> D;
    end

看圖說話:

此圖展示了Actor-Critic架構的核心運作機制,以及n步回報和資格追蹤如何融入其中以優化梯度。Actor(策略網路)根據當前狀態$S_t$決定動作$A_t$,並與環境互動,獲得新狀態$S_{t+1}$和獎勵$R_{t+1}$。Critic(價值網路)則評估狀態價值$V(S_t)$和$V(S_{t+1})$。兩者的互動產生時序差分(TD)誤差或優勢函數,用於同時更新Actor和Critic。在n步Actor-Critic中,TD誤差的計算會考慮未來n個時間步的回報,平衡了偏差與變異性。而資格追蹤則將TD誤差的影響回溯到過去的狀態-動作對,使得學習能夠更高效地進行信用分配,加速收斂,尤其在獎勵稀疏的場景中表現更佳。

策略梯度演算法比較與工業實例:自動化採購系統

不同的策略梯度演算法各有其優缺點,適用於不同的應用場景。蒙地卡羅策略梯度(REINFORCE)概念簡單,但變異性高。帶有基準線的REINFORCE顯著降低了變異性,提升了穩定性。n步Actor-Critic及其變體(如A2C)在變異性與偏差之間取得了良好的平衡,是目前廣泛應用的高效方法。資格追蹤Actor-Critic則進一步優化了信用分配,在某些複雜環境中表現優異。

工業實例:智能購物車自動化採購系統

想像一個智能購物車系統,其目標是為顧客自動推薦並購買商品,最大化顧客滿意度同時優化庫存管理。這是一個典型的序列決策問題,非常適合運用策略梯度演算法。

環境設定: 我們可以使用一個模擬的購物車環境(例如,基於Gym庫的Gym-Shopping-Cart)。在這個環境中:

  • 狀態($S_t$):可能包含顧客的歷史購買記錄、瀏覽行為、商品庫存、季節性趨勢、商品價格等。
  • 動作($A_t$):系統可以選擇推薦特定商品、將商品加入購物車、移除商品、或者完成結帳。
  • 獎勵($R_t$):可以根據顧客的購買率、購買金額、滿意度評分、庫存周轉率等因素綜合設計。例如,成功推薦並購買顧客喜歡的商品會獲得正獎勵,推薦不喜歡的商品或導致庫存積壓則會獲得負獎勵。

期望目標: 透過策略梯度演算法的訓練,我們期望系統能夠學習到一個最佳採購策略,即在給定顧客行為和庫存狀態下,能夠自動選擇最能提升顧客滿意度和商業效益的商品組合。這不僅涉及單一商品的推薦,更關乎整個購物體驗的優化和供應鏈的協同。

購物車環境的成果: 在這樣的環境中,如果我們採用A2C等高效的策略梯度演算法進行訓練,可以觀察到以下成果:

  1. 個性化推薦精準度提升:系統能夠根據顧客的隱含偏好,推薦更符合其需求的商品,而非簡單的熱銷榜。
  2. 庫存優化:透過學習,系統會避免推薦那些庫存過高或過低的商品,平衡銷售與庫存成本。
  3. 銷售額與滿意度雙贏:在多目標獎勵設計下,智能體能夠在最大化銷售額的同時,提升顧客的整體購物體驗。
  4. 動態定價與促銷策略:進階的系統甚至可以學習在特定狀態下(如節假日、庫存壓力大時)動態調整商品價格或推出促銷活動,以引導顧客行為。

失敗案例分析與學習心得:過度擬合與獎勵稀疏

在實際應用中,我們曾遇到模型在測試環境中表現不佳的情況,儘管在訓練環境中表現優異。這主要是由於過度擬合(Overfitting)導致的,模型過於依賴訓練數據的特定模式,而未能泛化到新的顧客行為或商品組合。解決方案包括引入正則化(Regularization)、增加探索(Exploration)機制、以及使用更豐富多樣的訓練數據。

另一個挑戰是獎勵稀疏(Sparse Rewards),即系統只有在完成整個購物流程後才能獲得獎勵,中間動作沒有即時反饋。這使得學習變得困難。為此,我們嘗試引入獎勵塑形(Reward Shaping),為中間的「好」動作(如將熱門商品加入購物車)提供小額的即時獎勵,引導學習方向。這雖然引入了人為偏差,但在實務中能有效加速學習。

超越策略梯度:離策略學習與確定性策略梯度

儘管策略梯度演算法在許多任務中表現出色,但它們通常是同策略(On-Policy)學習方法,這意味著它們必須使用當前策略產生的數據來更新策略。這限制了數據的重用效率,因為舊的經驗數據可能不再符合當前策略,導致數據利用率低下。為了解決這個問題,離策略(Off-Policy)學習方法應運而生。

離策略演算法允許智能體使用由行為策略(Behavior Policy)產生的數據來學習或評估一個不同的目標策略(Target Policy)。這極大地提高了數據效率,因為智能體可以從歷史數據庫中學習,或者從一個探索性更強的行為策略中學習,而無需每次都重新收集數據。

重要性採樣(Importance Sampling)是離策略學習的核心技術。它透過權重調整來校正行為策略與目標策略之間的差異,使得由行為策略採集的樣本能夠被「重新加權」以代表目標策略下的期望值。然而,重要性採樣的權重可能具有高變異性,尤其當兩個策略差異很大時。

行為策略與目標策略的概念是離策略學習的基石。行為策略負責與環境互動並生成數據,而目標策略則是我們希望學習和優化的最終策略。這使得我們可以設計一個高度探索性的行為策略來收集多樣化的經驗,同時學習一個更優化的目標策略。

離策略Q學習(Off-Policy Q-Learning)是離策略價值函數學習的一個經典範例,如Q-learning演算法。它直接估計最佳動作價值函數,並且可以利用任何策略產生的數據來更新Q值。

梯度時序差分學習(Gradient Temporal-Difference Learning)和Greedy-GQ是更進階的離策略價值函數學習方法,它們旨在解決離策略學習中常見的發散問題,特別是在函數逼近器(如神經網路)存在的情況下。這些方法透過最小化一個特定的目標函數來穩定學習過程,確保收斂性。

離策略Actor-Critics則將離策略學習的思想應用於Actor-Critic架構。它們允許Actor和Critic使用由行為策略生成的數據進行更新,同時學習一個目標策略。這結合了Actor-Critic的穩定性和離策略學習的數據效率。

確定性策略梯度與深度確定性策略梯度

傳統的策略梯度演算法通常處理隨機策略(Stochastic Policies),即在給定狀態下,策略會輸出一個動作的機率分佈。然而,在某些連續動作空間的任務中,直接學習一個確定性策略(Deterministic Policy)可能更為高效。

確定性策略梯度(Deterministic Policy Gradients, DPG)理論指出,對於一個確定性策略,其梯度可以透過對動作價值函數(Q函數)關於動作的梯度,以及策略本身關於策略參數的梯度來計算。這簡化了梯度計算,因為不需要對動作空間進行積分。

深度確定性策略梯度(Deep Deterministic Policy Gradients, DDPG)將DPG的思想與深度學習相結合。它使用深度神經網路來近似Actor(確定性策略)和Critic(動作價值函數)。DDPG是為連續動作空間設計的,它透過一個Actor網路直接輸出動作值,並透過一個Critic網路評估這些動作的Q值。為了穩定訓練,DDPG引入了多項技術,包括目標網路(Target Networks)和經驗回放緩衝區(Experience Replay Buffer),這些技術在深度強化學習中被廣泛應用。目標網路用於平滑Q值的更新,減少訓練不穩定性;經驗回放緩衝區則打破了數據之間的時間相關性,提高了數據利用率。

此圖示:DDPG架構概覽

  graph TD
    A[環境狀態 St] --> B{Actor 網路 (策略)};
    B -- 動作 At --> C[環境];
    C -- 新狀態 St+1, 獎勵 Rt+1 --> D{Critic 網路 (Q值)};
    D -- Q值 Q(St, At) --> E[損失函數計算];
    E --> B;
    E --> D;
    
    subgraph DDPG Enhancements
        C -- 儲存經驗 --> F[經驗回放緩衝區];
        F -- 隨機取樣 --> B;
        F -- 隨機取樣 --> D;
        
        B -- 複製 --> G[目標Actor網路];
        D -- 複製 --> H[目標Critic網路];
        G -- 動作 At' --> H;
        H -- 目標Q值 --> E;
    end

看圖說話:

此圖展示了深度確定性策略梯度(DDPG)演算法的整體架構。Actor網路根據當前環境狀態$S_t$輸出一個確定性動作$A_t$,與環境互動後獲得新狀態$S_{t+1}$和獎勵$R_{t+1}$。Critic網路則評估該狀態-動作對的Q值$Q(S_t, A_t)$。這些信息用於計算損失函數,並更新Actor和Critic網路的參數。為了提高訓練的穩定性和數據效率,DDPG引入了關鍵的增強機制:經驗回放緩衝區儲存了大量的經驗,並隨機取樣用於訓練,打破了數據的時間相關性。同時,目標Actor網路目標Critic網路是主網路的延遲複製,它們用於計算目標Q值,提供更穩定的學習目標,有效防止訓練發散。

縱觀策略梯度演算法的發展脈絡,從基礎的蒙地卡羅方法到高階的深度確定性策略梯度,其演進本質上是一部不斷挑戰決策效率與穩定性邊界的歷史。這條路徑的核心驅動力,在於系統性地解決三大根本性瓶頸:高變異性、低數據利用效率與信用分配難題。帶有基準線的REINFORCE與Actor-Critic架構首先透過降低梯度變異性來穩定學習;隨後,離策略學習(如DDPG)的引入,透過經驗回放與目標網路等機制,徹底解放了數據效率,實現了從歷史經驗中高效學習的突破。此過程揭示了在偏差與變異性、探索與利用之間深刻的權衡取捨,每一次演算法的迭代,都是對特定場景下更優決策框架的精準探索。

展望未來,演算法的發展將朝向更深度的融合趨勢邁進。我們預見,結合模型基礎學習的預測能力與離策略方法的數據效率,將催生出能夠應對更動態、更複雜商業環境的混合式智能決策系統。

玄貓認為,對於尋求導入智能決策的管理者而言,關鍵不在於追逐最新演算法,而在於深入理解自身業務的決策情境與數據限制,從而選擇最匹配的策略梯度工具,實現從理論到實踐的價值最大化。