Lyapunov與SAC算法的數學結構對比:從二次漂移到TD損失

一、李雅普諾夫優化中二次漂移函數的推導

李雅普諾夫優化的核心是通過設計 “李雅普諾夫函數” 和 “漂移項”,保證系統狀態收斂到穩定點。以下以線性時不變系統為例(非線性系統推導邏輯類似,僅動力學方程更復雜),推導二次漂移函數的形式。

1. 系統定義與假設

考慮連續時間線性系統(離散時間推導類似,僅用差分替代微分):x˙(t)=Ax(t)+Bu(t)\dot{x}(t) = Ax(t) + Bu(t)x˙(t)=Ax(t)+Bu(t) 其中:

  • x(t)∈Rnx(t) \in \mathbb{R}^nx(t)Rn為系統狀態向量,
  • (u(t)∈Rm(u(t) \in \mathbb{R}^m(u(t)Rm 為控制輸入,
  • A∈Rn×nA \in \mathbb{R}^{n \times n}ARn×nB∈Rn×mB \in \mathbb{R}^{n \times m}BRn×m為系統矩陣(已知,體現動力學特性)。

目標:設計控制輸入 u(t)u(t)u(t),使系統狀態 x(t)x(t)x(t) 收斂到原點(穩定點,即 x?=0x^* = 0x?=0

2. 李雅普諾夫函數的構造

李雅普諾夫函數 V(x)V(x)V(x) 需滿足:

  • 正定性V(x)>0V(x) > 0V(x)>0 對所有 x≠0x \neq 0x=0 成立,且 V(0)=0V(0) = 0V(0)=0

  • 徑向無界性:當 ∥x∥→∞\|x\| \to \inftyx 時,V(x)→∞V(x) \to \inftyV(x)(保證全局收斂)。

最常用的二次型李雅普諾夫函數為:V(x)=xTPxV(x) = x^T P xV(x)=xTPx 其中 P∈Rn×nP \in \mathbb{R}^{n \times n}PRn×n正定對稱矩陣P>0P > 0P>0),確保 V(x)V(x)V(x) 滿足正定

3. 二次漂移函數的推導

“漂移” 指李雅普諾夫函數隨時間的變化率(連續時間為導數,離散時間為差分),用于衡量系統偏離穩定點的趨勢。

(1)連續時間漂移

V(x)V(x)V(x) 求時間導數:

? V˙(x)=ddt(xTPx)=x˙TPx+xTPx˙\dot{V}(x) = \frac{d}{dt} (x^T P x) = \dot{x}^T P x + x^T P \dot{x}V˙(x)=dtd?(xTPx)=x˙TPx+xTPx˙

代入系統動力學方程

? x˙=Ax+Bu:dotV(x)=(Ax+Bu)TPx+xTP(Ax+Bu)\dot{x} = Ax + Bu:dot{V}(x) = (Ax + Bu)^T P x + x^T P (Ax + Bu) x˙=Ax+BudotV(x)=(Ax+Bu)TPx+xTP(Ax+Bu)

展開并利用用矩陣轉置性質(AB)T=BTAT(AB)^T = B^T A^T(AB)T=BTAT

? V˙(x)=xTATPx+uTBTPx+xTPAx+xTPBu\dot{V}(x) = x^T A^T P x + u^T B^T P x + x^T P A x + x^T P B uV˙(x)=xTATPx+uTBTPx+xTPAx+xTPBu

因 (P) 對稱PT=PP^T = PPT=P,故

? xTPAx=(xTPAx)T=xTATPx x^T P A x = (x^T P A x)^T = x^T A^T P xxTPAx=(xTPAx)T=xTATPx

合并同類項:

? V˙(x)=2xTATPx+uTBTPx+xTPBu\dot{V}(x) = 2x^T A^T P x + u^T B^T P x + x^T P B uV˙(x)=2xTATPx+uTBTPx+xTPBu

為使系統穩定,需設計 u(t)u(t)u(t) 使 V˙(x)<0\dot{V}(x) < 0V˙(x)<0(負定性,保證V(x)V(x)V(x) 隨時間減小,即狀態向原點收斂。

若采用線性反饋控制 u=?Kxu = -Kxu=?Kx, KKK 為反饋增益矩陣,代入得:

? V˙(x)=xT(ATP+PA?PBK?KTBTP)x\dot{V}(x) = x^T \left( A^T P + P A - P B K - K^T B^T P \right) x V˙(x)=xT(ATP+PA?PBK?KTBTP)x

Q=?(ATP+PA?PBK?KTBTP)Q = -(A^T P + P A - P B K - K^T B^T P)Q=?(ATP+PA?PBK?KTBTP) ,則:

? V˙(x)=?xTQx\dot{V}(x) = -x^T Q xV˙(x)=?xTQx 其中 (Q > 0)(正定)

因此 V˙(x)\dot{V}(x)V˙(x)負定二次型,即漂移函數為二次形式。

(2)離散時間漂移

若系統為離散時間(更貼近強化學習的時序特性):

? xt+1=Axt+Butx_{t+1} = A x_t + B u_txt+1?=Axt?+But?

則漂移定義為相鄰時刻李雅普諾夫函數的差分:

? ΔV(xt)=V(xt+1)?V(xt)=xt+1TPxt+1?xtTPxt\Delta V(x_t) = V(x_{t+1}) - V(x_t) = x_{t+1}^T P x_{t+1} - x_t^T P x_tΔV(xt?)=V(xt+1?)?V(xt?)=xt+1T?Pxt+1??xtT?Pxt?

代入 xt+1=Axt+Butx_{t+1} = A x_t + B u_txt+1?=Axt?+But?

? ΔV(xt)=(Axt+But)TP(Axt+But)?xtTPxt\Delta V(x_t) = (A x_t + B u_t)^T P (A x_t + B u_t) - x_t^T P x_tΔV(xt?)=(Axt?+But?)TP(Axt?+But?)?xtT?Pxt?

展開得:

? ΔV(xt)=xtTATPAxt+xtTATPBut+utTBTPAxt+utTBTPBut?xtTPxt\Delta V(x_t) = x_t^T A^T P A x_t + x_t^T A^T P B u_t + u_t^T B^T P A x_t + u_t^T B^T P B u_t - x_t^T P x_tΔV(xt?)=xtT?ATPAxt?+xtT?ATPBut?+utT?BTPAxt?+utT?BTPBut??xtT?Pxt?

合并后可寫成:

? ΔV(xt)=xtT(ATPA?P)xt+2xtTATPBut+utTBTPBut\Delta V(x_t) = x_t^T (A^T P A - P) x_t + 2 x_t^T A^T P B u_t + u_t^T B^T P B u_tΔV(xt?)=xtT?(ATPA?P)xt?+2xtT?ATPBut?+utT?BTPBut?

這仍是關于xtx_txt?utu_tut?二次型函數,即二次漂移函數。

4. 核心結論

李雅普諾夫優化的二次漂移函數(連續時間的V˙(x)\dot{V}(x)V˙(x) 或離散時間的ΔV(xt)\Delta V(x_t)ΔV(xt?)本質是二次型誤差度量,通過約束狀態(及控制輸入)的二次項,確保系統向穩定點收斂。

二、SAC 中 TD 目標損失函數的推導

SAC(Soft Actor-Critic)是基于最大熵強化學習的算法,其價值網絡的損失函數通過 TD(Temporal Difference)目標定義,核心是最小化 “預測 Q 值” 與 “bootstrapped 目標 Q 值” 的偏差。

1. 問題定義(馬爾可夫決策過程,MDP)

SAC 的優化對象是 MDP,定義為 (S,A,r,p,γ)(\mathcal{S}, \mathcal{A}, r, p, \gamma)(S,A,r,p,γ)

  • S\mathcal{S}S:狀態空間,A\mathcal{A}A:動作空間,
  • r(s,a)∈Rr(s,a) \in \mathbb{R}r(s,a)R:狀態 sss 下執行動作aaa 的即時獎勵,
  • p(s′∣s,a)p(s'|s,a)p(ss,a):狀態轉移概率(從 ssss′s's ),
  • γ∈[0,1)\gamma \in [0,1)γ[0,1):折扣因子(未來獎勵的權重)。

目標:學習策略 π(a∣s)\pi(a|s)π(as)(狀態 sss 下動作 aaa 的概率分布),最大化累積熵獎勵

? J(π)=Eτ~π[∑t=0∞γt(r(st,at)+αH(π(?∣st)))]J(\pi) = \mathbb{E}_{\tau \sim \pi} \left[ \sum_{t=0}^\infty \gamma^t \left( r(s_t,a_t) + \alpha H(\pi(\cdot|s_t)) \right) \right]J(π)=Eτπ?[t=0?γt(r(st?,at?)+αH(π(?st?)))]

其中 H(π(?∣s))=?Ea~π[log?π(a∣s)]H(\pi(\cdot|s)) = -\mathbb{E}_{a \sim \pi} [\log \pi(a|s)]H(π(?s))=?Eaπ?[logπ(as)] 是策略的熵(鼓勵探索),α>0\alpha > 0α>0 是熵溫度參數。

2. 軟 Q 值(Soft Q-Function)的定義

為量化策略的累積熵獎勵,定義 “軟 Q 值” Qπ(s,a)Q^\pi(s,a)Qπ(s,a) 為:
Qπ(s,a)=E[∑k=0∞γk(r(st+k,at+k)+αH(π(?∣st+k)))∣st=s,at=a]Q^\pi(s,a) = \mathbb{E} \left[ \sum_{k=0}^\infty \gamma^k \left( r(s_{t+k}, a_{t+k}) + \alpha H(\pi(\cdot|s_{t+k})) \right) \bigg| s_t = s, a_t = a \right]Qπ(s,a)=E[k=0?γk(r(st+k?,at+k?)+αH(π(?st+k?)))?st?=s,at?=a]

利用時序分解(類似貝爾曼方程),軟 Q 值滿足:
Qπ(s,a)=r(s,a)+γEs′~p,a′~π[Qπ(s′,a′)]Q^\pi(s,a) = r(s,a) + \gamma \mathbb{E}_{s' \sim p, a' \sim \pi} \left[ Q^\pi(s', a') \right]Qπ(s,a)=r(s,a)+γEsp,aπ?[Qπ(s,a)]
(推導:將累積和拆分為即時獎勵 + 未來獎勵的折扣期望,因a′~πa' \sim \piaπ,故未來熵獎勵已包含在 Qπ(s′,a′)Q^\pi(s',a')Qπ(s,a)中)。

3. TD 目標與損失函數的構造

SAC 通過價值網絡參數化軟 Q 值:Qθ(s,a)≈Qπ(s,a)Q_\theta(s,a) \approx Q^\pi(s,a)Qθ?(s,a)Qπ(s,a)θ\thetaθ 為網絡參數)。為優化 θ\thetaθ,需定義損失函數,使其最小化 “預測 Q 值” 與 “目標 Q 值” 的偏差。

(1)TD 目標的定義

目標 Q 值(TD 目標)由 “即時獎勵 + 未來軟 Q 值的折扣期望” 構成,為避免訓練不穩定,SAC 使用目標網絡 (Qθ′Q_{\theta'}Qθ?(參數 θ\thetaθ緩慢更新,與 θ\thetaθ 分離):

? yt=rt+γEa′~π?[Qθ′(s′,a′)?αlog?π?(a′∣s′)]y_t = r_t + \gamma \mathbb{E}_{a' \sim \pi_\phi} \left[ Q_{\theta'}(s', a') - \alpha \log \pi_\phi(a'|s') \right]yt?=rt?+γEaπ???[Qθ?(s,a)?αlogπ??(as)]

其中:

  • pi?(a∣s)pi_\phi(a|s)pi??(as) 是參數化策略(?\phi? 為策略參數),
  • 減去 αlog?π?(a′∣s′)\alpha \log \pi_\phi(a'|s')αlogπ??(as) 是因為:Ea′~π[Qπ(s′,a′)]=Ea′~π[Qθ′(s′,a′)?αlog?π(a′∣s′)]\mathbb{E}_{a' \sim \pi} [Q^\pi(s',a')] = \mathbb{E}_{a' \sim \pi} [Q_{\theta'}(s',a') - \alpha \log \pi(a'|s')]Eaπ?[Qπ(s,a)]=Eaπ?[Qθ?(s,a)?αlogπ(as)](軟 Q 值的性質)。
(2)損失函數的推導

價值網絡的優化目標是最小化 “預測 Q 值 Qθ(s,a)Q_\theta(s,a)Qθ?(s,a)” 與 “TD 目標 yty_tyt?” 的均方誤差(MSE),即:

? L(θ)=E(s,a,r,s′)~D[(Qθ(s,a)?yt)2]\mathcal{L}(\theta) = \mathbb{E}_{(s,a,r,s') \sim \mathcal{D}} \left[ \left( Q_\theta(s,a) - y_t \right)^2 \right]L(θ)=E(s,a,r,s)D?[(Qθ?(s,a)?yt?)2]

其中 D\mathcal{D}D 是經驗回放池(存儲歷史樣本 (s,a,r,s′)(s,a,r,s')(s,a,r,s))。

代入 yty_tyt? 的表達式,損失函數展開為:

? L(θ)=E[(Qθ(s,a)?(r+γEa′~π?[Qθ′(s′,a′)?αlog?π?(a′∣s′)]))2]\mathcal{L}(\theta) = \mathbb{E} \left[ \left( Q_\theta(s,a) - \left( r + \gamma \mathbb{E}_{a' \sim \pi_\phi} \left[ Q_{\theta'}(s',a') - \alpha \log \pi_\phi(a'|s') \right] \right) \right)^2 \right]L(θ)=E[(Qθ?(s,a)?(r+γEaπ???[Qθ?(s,a)?αlogπ??(as)]))2]

4. 核心結論

SAC 的 TD 目標損失函數是二次型誤差,衡量 “當前 Q 值預測” 與 “基于未來獎勵和策略熵的目標值” 的偏差,通過梯度下降最小化該誤差,使 Q 值估計收斂到真實軟 Q 值。

三、兩者數學結構的相似性對比

通過推導可見,兩個公式的核心相似性體現在二次型誤差時序遞推的數學結構上:

維度李雅普諾夫二次漂移函數(離散時間)SAC 的 TD 目標損失函數
二次項形式ΔV(xt)=xt+1TPxt+1?xtTPxt\Delta V(x_t) = x_{t+1}^T P x_{t+1} - x_t^T P x_tΔV(xt?)=xt+1T?Pxt+1??xtT?Pxt?)(二次型差分)L(θ)=(預測值?目標值)2\mathcal{L}(\theta) = (\text{預測值} - \text{目標值})^2L(θ)=(預測值?目標值)2(二次誤差)
時序關聯依賴 xtx_txt?xt+1x_{t+1}xt+1? 的關系(狀態轉移)依賴 (s,a)(s,a)(s,a)(s′,a′)(s',a')(s,a) 的關系(MDP 轉移)
優化目標最小化漂移(使 ΔV≤0\Delta V \leq 0ΔV0,保證狀態收斂最小化二次誤差,使 Q 值估計收斂到真實值
核心變量系統狀態 x(物理 / 抽象狀態)價值估計 Q(對累積獎勵的預測)

總結

兩者的數學推導均圍繞 “二次型誤差度量” 和 “相鄰時間步的遞推關系” 展開:李雅普諾夫漂移通過狀態的二次型差分約束系統穩定性,SAC 的 TD 損失通過 Q 值的二次誤差約束估計準確性。這種相似性源于動態系統優化的共性需求 —— 用可微的二次項量化偏差,并通過時序關聯將長期目標轉化為局部優化問題。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/92761.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/92761.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/92761.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

WireShark:非常好用的網絡抓包工具

文章目錄一、寫在前面二、安裝三、使用1、入門使用&#xff08;1&#xff09;打開軟件&#xff08;2&#xff09;右鍵網卡&#xff0c;Start Capture(開始捕獲)2、界面詳細介紹3、過濾器設置一、寫在前面 Wireshark是使用最廣泛的一款「開源抓包軟件」&#xff0c;常用來檢測網…

WEB技術演進史:從C/S到微服務架構

WEB技術 HTTP協議和B/S 結構 操作系統有進程子系統&#xff0c;使用多進程就可以充分利用硬件資源。進程中可以多個線程&#xff0c;每一個線程可以被CPU調度執行&#xff0c;這樣就可以讓程序并行的執行。這樣一臺主機就可以作為一個服務器為多個客戶端提供計算服務。 客戶端…

win11中Qt5.14.0+msvc2019+opencv4.9配置

本文主要研究由msvc編譯的opencv在QT中的配置&#xff0c;opencv可以是官網直接下載的版本&#xff0c;也可以是msvc(例如vs2019)通過cmake編譯 contrib功能的opencv版本&#xff0c;這2種版本對qt版本沒有嚴格要求&#xff0c;但是若在cmake中選擇了with_qt功能&#xff0c;那…

【listlist模擬】

list&list模擬1.list使用2、list模擬附錄1.list使用 list常見接口不做介紹&#xff0c;跟前面vector有相似之處&#xff0c;跟數據結構list基本一樣。 ?因為list使用帶頭的雙向循環鏈表實現的&#xff0c;不能用小標訪問&#xff0c;只能用迭代器或范圍for訪問 list有成…

在CentOS 7上將PostgreSQL數據庫從默認路徑遷移到自定義目錄

在CentOS 7上將PostgreSQL數據庫從默認路徑遷移到自定義目錄&#xff0c;需遵循以下步驟。假設原數據目錄為“/var/lib/pgsql/12/data”&#xff0c;目標目錄為“/new/path/pgdata”。 1、步驟概覽 停止PostgreSQL服務創建新目錄并設置權限復制數據文件&#xff08;保留權限&am…

C語言基礎06——結構體(struct)

一、結構體的概念結構體&#xff08;struct&#xff09;是 C 語言中一種自定義數據類型&#xff0c;它允許你將不同類型的數據項組合在一起&#xff0c;形成一個新的復合數據類型。想象一下&#xff1a;如果要表示一個 "學生"&#xff0c;需要包含姓名&#xff08;字…

小白入門指南:Edge SCDN 輕松上手

在互聯網飛速發展的當下&#xff0c;網站性能與安全至關重要。對于小白而言&#xff0c;Edge SCDN 可能是個陌生概念&#xff0c;但它卻能極大助力網站運營。本文將用簡單易懂的語言&#xff0c;帶大家了解 Edge SCDN&#xff0c;探討其運用方法。?一、Edge SCDN 是什么&#…

探秘酵母單雜交技術:解鎖基因調控的密碼

在生命科學研究領域&#xff0c;基因的表達調控機制一直是科學家們關注的焦點。為了深入探究這一復雜過程&#xff0c;眾多先進技術應運而生&#xff0c;酵母單雜交技術便是其中極具價值的一項&#xff0c;它為研究 DNA 與蛋白質之間的相互作用提供了獨特視角與有效手段。酵母單…

大模型備案要點一次過【附材料清單詳解】

最近&#xff0c;廣東省公布了最新一批的大模型備案&#xff08;登記&#xff09;名單&#xff0c;很多準備要做大模型備案的企業都在紛紛咨詢&#xff1a;“大模型備案的周期是多久&#xff1f;”“做大模型備案有什么要求&#xff1f;”“做大模型備案一共需要準備多少材料&a…

啟保停-----------單相照明燈的接法

一.單相照明燈-K21使用的器材,單相電能表,空開,插座,開關,燈泡二.啟 保 停1.需要用到的器材1.空開2.三相電機3.接觸器4.熔斷器5.按鈕2.電路的作用按按鈕 運轉 在按按鈕 停止運轉3.電動4.加上輔助觸點 控制電路5.在加上按鈕 停止電路

TF-IDF:信息檢索與文本挖掘的統計權重基石

本文由「大千AI助手」原創發布&#xff0c;專注用真話講AI&#xff0c;回歸技術本質。拒絕神話或妖魔化。搜索「大千AI助手」關注我&#xff0c;一起撕掉過度包裝&#xff0c;學習真實的AI技術&#xff01; 1. 背景與定義 TF-IDF 是一種統計加權方法&#xff0c;用于衡量詞語在…

[論文閱讀] (41)JISA24 物聯網環境下基于少樣本學習的攻擊流量分類

《娜璋帶你讀論文》系列主要是督促自己閱讀優秀論文及聽取學術講座&#xff0c;并分享給大家&#xff0c;希望您喜歡。由于作者的英文水平和學術能力不高&#xff0c;需要不斷提升&#xff0c;所以還請大家批評指正&#xff0c;非常歡迎大家給我留言評論&#xff0c;學術路上期…

react中父子數據流動和事件互相調用(和vue做比較)

前言&#xff1a;react中父子數據流動和事件互相調用&#xff0c;父組件給子組件數據&#xff0c;父組件調用子組件的事件&#xff0c;同理&#xff0c;子也可以調用父的數據和傳值。react是單向數據流&#xff0c;具體使用跟vue是不同的。1、父組件的數據傳給子組件&#xff0…

杰理手表-增加提示音-提示音音量調整--使用提示音

本章節非常詳細的介紹這個提示音的增加-調整-使用&#xff0c;其余耳機包之類的也是差不多的&#xff01;&#xff01; 目錄 1.添加自己需要用的提示音 2.根據添加的提示音-代碼中配置 1.在tone_player.h中枚舉里添加本次提示音的名稱 2.把定義好的提示音放到tone_player.…

數據庫的基本操作(視圖,存儲,觸發器)

1、視圖&#xff08;1&#xff09;什么是視圖視圖是虛擬表&#xff0c;是基于查詢結果的可視化表&#xff0c;視圖的作用有&#xff1a;①簡化復雜查詢 ②限制數據訪問 ③提供數據獨立性 ④匯總數據&#xff08;2&#xff09;怎么創建視圖創建視圖 CREATE OR REPLACE VIEW 視圖…

Pytest項目_day13(usefixture方法、params、ids)

usefixture 我們還可以使用mark.usefixtures來調用fixture 這樣相比在傳入參數處調用fixture&#xff0c;會更加直接 但是如果我們在一個測試用例中使用了多個usefixtures&#xff0c;那么測試用例會先調用離他最近的那個fixtureparams fixture中還可以帶參數 當我們用request.…

Rust 異步生態實戰:Tokio 調度、Pin/Unpin 與零拷貝 I/O

&#x1f31f; Hello&#xff0c;我是蔣星熠Jaxonic&#xff01; &#x1f308; 在浩瀚無垠的技術宇宙中&#xff0c;我是一名執著的星際旅人&#xff0c;用代碼繪制探索的軌跡。 &#x1f680; 每一個算法都是我點燃的推進器&#xff0c;每一行代碼都是我航行的星圖。 &#x…

通用 maven 私服 settings.xml 多源配置文件(多個倉庫優先級配置)

<?xml version"1.0" encoding"UTF-8"?> <settings xmlns"http://maven.apache.org/SETTINGS/1.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/SETTINGS/1.0.…

AT F-Intervals 題解

簡化題意&#xff1a; 有 nnn 個區間&#xff0c;保證所有區間同時覆蓋一個點&#xff0c;每次將區間平移一個單位&#xff0c;問使得區間兩兩不交的最小操作數&#xff08;端點處可重疊&#xff09;。n≤5000。l,r≤231?1n\leq 5000。l,r\leq 2^{31}-1n≤5000。l,r≤231?1。…

《飛算Java AI:從安裝到需求轉實戰項目詳細教學》

前引&#xff1a;在當今快速發展的技術環境中&#xff0c;人工智能&#xff08;AI&#xff09;與編程語言的結合為開發者提供了前所未有的便利。飛算Java AI作為一款智能化編程工具&#xff0c;能夠顯著提升Java開發效率&#xff0c;減少重復性工作&#xff0c;并幫助開發者更專…