当前位置: 首页 > news >正文

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+PAPBKKTBTP)x

Q=−(ATP+PA−PBK−KTBTP)Q = -(A^T P + P A - P B K - K^T B^T P)Q=(ATP+PAPBKKTBTP) ,则:

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+1TPxt+1xtTPxt

代入 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)xtTPxt

展开得:

Δ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)=xtTATPAxt+xtTATPBut+utTBTPAxt+utTBTPButxtTPxt

合并后可写成:

Δ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(ATPAP)xt+2xtTATPBut+utTBTPBut

这仍是关于xtx_txtutu_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+1TPxt+1xtTPxt)(二次型差分)L(θ)=(预测值−目标值)2\mathcal{L}(\theta) = (\text{预测值} - \text{目标值})^2L(θ)=(预测值目标值)2(二次误差)
时序关联依赖 xtx_txtxt+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.dtcms.com/a/328150.html

相关文章:

  • 【KO】Android Framework
  • 串口超时参数深度解析:ReadTotalTimeoutMultiplier、ReadIntervalTimeout等
  • 熟悉并使用Spring框架 - 注解篇
  • JavaWeb从入门到精通!第二天!(Servlet)
  • Jenkins + SonarQube 从原理到实战三:SonarQube 打通 Windows AD(LDAP)认证与踩坑记录
  • 基于多模态大模型的个性化学习路径生成系统研究
  • 循环神经网络(RNN)全面解析
  • 运维学习Day22——Anisible自动化与基本使用
  • SpringBoot面试宝典
  • MySQL User表入门教程
  • Spyglass CDC rule
  • NLP—词向量转换评论学习项目分析
  • 28.分类算法:让机器学会分类
  • Tauri Qt孰优孰劣
  • ncurses 6.5 交叉编译移植到OpenHarmomy
  • 2025年渗透测试面试题总结-16(题目+回答)
  • Linux文件系统:从虚拟接口到物理实现的架构解析
  • 【C#】用队列构建一个对象池管理对象的创建和释放
  • NumPy 快速入门与实战教程(逐行拆解 + 专业扩展)
  • 详细了解sklearn中的CountVectorizer
  • 【c++深入系列】:万字详解模版(下)
  • [Robotics_py] 路径规划算法 | 启发式函数 | A*算法
  • MaxKB+合合信息TextIn:通过API实现PDF扫描件的文档审核
  • LRU算法与LFU算法
  • 农业智慧大屏系统 - Flask + Vue实现
  • 云计算分类与主流产品
  • iOS 文件管理全流程实战,从开发调试到数据迁移
  • 初识神经网络04——构建神经网络2
  • 软路由雷达:基于OpenWrt系统的传统逆向思路的冷门实现
  • 外部中断寄存器的实现-库函数版(STC8)