選項框架 是什麼?
Option Framework:選項框架 的完整解釋
選項框架是層次化強化學習中的數學模型,透過將基礎動作抽象為高階宏觀動作,幫助智能體在複雜環境中進行長時間跨度的規劃與決策。
核心概念
選項框架是強化學習領域中用來解決長時間跨度決策問題的重要工具。在標準的馬可夫決策過程(Markov Decision Process, MDP)中,智能體在每一個離散的時間步都需要選擇一個基礎動作。當任務非常複雜或需要執行極長的動作序列才能獲得獎勵時,標準的強化學習演算法往往會面臨維度災難與稀疏獎勵的問題。選項框架透過引入時間抽象的概念,將馬可夫決策過程擴展為半馬可夫決策過程(Semi-Markov Decision Process, SMDP)。
在選項框架中,一個選項可以被視為一個宏觀動作或一個子任務策略。它由三個核心元素構成。
第一是啟動集(Initiation Set),它定義了該選項在哪些狀態下可以被選擇與觸發。並非所有選項都能在任何狀態下啟動,這有助於限制搜尋空間。
第二是選項內策略(Intra-option Policy),這是一個映射函數,決定了當該選項被激活時,智能體在不同狀態下應該採取什麼基礎動作或較低階的選項。
第三是終止條件(Termination Condition),這是一個概率函數,決定了該選項在進入某個狀態時結束執行的機率。
這三個元素的結合使得智能體不再需要於每個時間步都進行全域的規劃,而是可以選擇一個選項,將控制權交給該選項的內部策略,直到終止條件被滿足為止。這種設計大幅度減少了決策的頻率,從而在時間尺度上實現了抽象化。
運作原理
選項框架的運作原理建立在半馬可夫決策過程的數學基礎上。在普通的馬可夫決策過程中,狀態轉移與獎勵的計算都是基於單一時間步的。當引入選項後,狀態的轉移就跨越了多個時間步,這需要重新定義狀態價值函數與動作價值函數。
給定一個選項,當它在狀態下被啟動時,預期的累積回報可以透過修改後的貝爾曼方程式來計算。這個方程式不再只看下一個時間步的狀態與獎勵,而是要計算直到選項終止為止的累積折扣獎勵,以及終止時的狀態價值。
在學習演算法方面,最基本的是 SMDP Q-Learning。在這種方法中,智能體選擇一個選項,執行它直到終止,然後觀察經過的總時間、累積的折扣獎勵以及終止狀態。接著,它將這個選項視為一個單一的黑盒動作,更新高階策略的值。然而,這種方法的缺點是必須等待選項完全結束才能進行更新,導致學習效率受限。
為了解決這個問題,研究人員提出了選項內學習(Intra-option Learning)。這種方法允許智能體利用在選項執行期間收集到的每一步經驗來更新選項的價值函數,甚至同時更新選項的內部策略。透過貝爾曼方程式的遞迴展開,智能體即使在執行選項的過程中,也能持續優化對該選項的評估,大幅提升了資料的使用效率。
另一個核心問題是選項的發現。早期的選項框架依賴人類專家根據領域知識手動設計選項。然而,現代的選項發現演算法致力於讓智能體自動從環境中學習這些結構。常見的技術包括識別環境中的瓶頸狀態,並將這些瓶頸設定為選項的終止目標。Option-Critic 架構進一步將選項的發現整合到端到端的深度強化學習中。該架構利用策略梯度定理的擴展,計算選項內部策略與終止條件的梯度,使得智能體能夠在沒有外部監督的情況下,同時學習高階選項的選擇、低階策略的執行以及合適的終止時機。具體而言,對於選項內部策略的更新,它類似於傳統的動作者評論家演算法,優化目標是最大化當前選項的價值;而對於終止條件的更新,則依賴於優勢函數。如果當前選項在某個狀態的價值低於高階策略選擇其他選項的預期價值,那麼終止條件的梯度會促使該選項在此狀態下提前結束。這種優雅的數學架構,使得自動發掘有意義的選項成為可能。
實際應用
選項框架在許多需要複雜規劃與長期策略的領域都有廣泛的應用。
在機器人控制領域,機器人通常需要執行連續且細微的馬達控制指令。如果直接在原始動作空間中進行學習,尋找目標的過程將變得極度緩慢。透過選項框架,可以將低階的馬達控制封裝成移動至特定座標、抓取物體或避開障礙等選項。高階策略只需負責在這些選項之間進行切換,大幅簡化了路徑規劃與任務執行的難度。
在複雜的電玩遊戲中,例如即時戰略遊戲或具有深層關卡設計的平台遊戲,玩家必須在很長的時間區間內規劃資源與探索地圖。選項框架可以將遊戲操作抽象化,例如建立收集資源、建造兵營或前往下一個房間的選項。這不僅解決了稀疏獎勵環境下難以探索的困境,也讓 AI 能夠展現出類似人類的層次化戰略思維。
在資源排程與系統管理中,例如資料中心的伺服器分配或雲端運算的負載平衡,決策往往具有多個層級與不同的時間延遲。選項框架可以用來定義不同粗細粒度的管理策略。例如,一個選項可能負責應對突發的短期流量高峰,自動調節虛擬機器的資源配置,而另一個選項則負責長期的能源最佳化,規劃低負載時段的硬體休眠。透過這種層級結構,系統可以更靈活地應對複雜且動態變化的環境需求,同時降低運算資源的消耗。
在自動駕駛系統中,車輛的決策同樣具備明顯的層級特徵。從最底層的油門與方向盤控制,到中層的車道保持與超車,再到最高層的路徑導航,這恰好契合選項框架的設計理念。將超車或變換車道定義為選項,可以讓自動駕駛的決策過程更加清晰模組化。當車輛行駛在高速公路上時,高階策略啟動車道保持選項,此選項的內部策略專注於微調方向盤與維持車距,直到遇到前方慢車並滿足終止條件後,再由高階策略啟動超車選項。這不僅提升了決策效率,也易於進行邏輯的除錯。
常見誤區
在應用選項框架時,研究人員與工程師常會陷入一些誤區。
首先是認為引入選項框架必然能加速學習。這是一個常見的錯誤認知。事實上,如果選項設計得不合理,或者與當前任務的目標缺乏關聯性,選項框架反而會增加高階決策空間的複雜度,導致學習速度變慢。不當的選項可能會引導智能體進入次優的狀態空間區域,阻礙其找到真正的最佳策略。
其次,許多人會將選項框架與所有層次化強化學習(Hierarchical Reinforcement Learning)混為一談。選項框架只是其中的一種具體方法,它側重於時間抽象與半馬可夫決策過程的擴展。其他的層次化方法,如 MAXQ 框架,側重於價值函數的遞迴分解,而 Feudal Networks 則側重於經理與員工階層之間的目標傳遞。這些方法在數學模型與運作機制上都有著根本的差異。
另一個誤區是選項越多越好。在實踐中,這被稱為選項增殖問題。當系統中存在大量重疊或功能相似的選項時,高階策略在選擇選項時會面臨與底層動作空間相似的維度災難。因此,如何限制選項的數量,並保證選項之間具有足夠的多樣性與正交性,是選項發現演算法必須解決的核心挑戰。
最後,有些人誤以為選項就等同於宏觀動作或固定的動作序列。傳統的宏觀動作是開環的,一旦觸發就會不顧狀態變化強制執行一連串動作。而選項是閉環的,它擁有自己的內部策略與動態的終止條件,能夠根據環境的即時狀態做出反應,並在適當的時機將控制權交還給高階策略。
與相關技術的比較
選項框架與幾種主流的強化學習與層次化技術有著緊密的關聯與顯著的差異。
與標準的扁平強化學習相比,標準強化學習在每個時間步都必須從所有基礎動作中做選擇,面臨著嚴重的信用分配問題,特別是在獎勵延遲極大的環境中。選項框架透過時間抽象將時間步壓縮,使得信用與獎勵可以跨越多個步驟直接傳遞給高階選擇,從而極大地改善了長時間跨度下的學習效率。然而,在具有無限計算資源與訓練時間的理想情況下,扁平強化學習理論上可以找到全域最佳解,而人為設計的選項有時會限制系統的最終表現。
與 MAXQ 框架相比,MAXQ 方法專注於將複雜任務的價值函數遞迴地分解為多個子任務的價值函數的總和。這種分解具有嚴格的層級結構,且往往要求任務具有明顯的無上下文依賴性。相對而言,選項框架的結構較為扁平與靈活,選項可以像基礎動作一樣被直接選擇,且不需要對整個任務的價值函數進行全域的樹狀分解。這使得選項框架在處理非嚴格分層的環境時更具彈性。
與目標導向強化學習的比較中,目標導向強化學習訓練一個通用的策略來達成任何給定的目標狀態。雖然選項也可以被視為一種達成某個子目標的策略,但選項框架的核心在於將這些策略封裝成具有明確啟動與終止邊界的抽象動作,並在半馬可夫決策過程的框架下進行聯合優化。而目標導向強化學習更多關注的是如何透過重構經驗來提升模型的泛化能力。
與封建網路相比,封建結構採用了嚴格的管理階層,上層負責生成抽象目標,下層負責執行以達成該目標。這種架構中的不同層級通常各自擁有獨立的獎勵函數。而選項框架不需要設定獨立的內部獎勵,選項的優化可以直接與環境提供的全域獎勵對齊。此外,在選項框架中,高階策略有權利直接選擇基礎動作,而不必完全依賴選項,這種混合決策模式提供了更高的系統靈活性。