本页目录

现代 II · 极点配置与 LQR

层次:本科核心|🔗 前置:状态空间、线性代数、二次型(数学站)。 极点配置告诉我们“能把动态搬到哪里”,但没有告诉我们响应速度、控制能量和执行器负担如何取舍。LQR 把这个取舍写进二次代价,再由 Riccati 方程给出反馈;它很系统,但它的稳定性和裕度结论都有明确的模型、时域、权重与回路条件。

学习层:给航向稳定器选一个有限时域反馈

1. 具体工程情境:无人车横摆误差要压下去,但执行器能量有限

把采样周期为 \(0.1\ \mathrm s\) 的航向稳定器写成二状态离散模型:\(x_1\) 是航向误差,\(x_2\) 是横摆角速度。

\[ x_{k+1}=Ax_k+Bu_k,\qquad A=\begin{bmatrix}1&0.1\\0&0.92\end{bmatrix},\quad B=\begin{bmatrix}0\\0.1\end{bmatrix}. \]

本次只做有限时域调节:从 \(x_0=[1,0]^\mathsf T\) 出发,把状态压向零,同时不把控制输入当成免费的。实验的 \(N\)、\(Q\)、\(R\) 都是明确的设计选择,且本页暂不把执行器饱和伪装成 LQR 的约束处理。

预测门,必须先作答:

  1. 有限时域 Riccati 递推应以 \(P_N=Q_f\)、\(P_N=0\),还是某个 \(K_N\) 开始?
  2. 固定状态权重时,把 \(R\) 调大,反馈增益和控制能量通常怎样变化?
  3. “LQR 有 60° 相位裕度”能否无条件套在本页的离散、有限时域、MIMO 实验上?

2. 正式模型:后向 Riccati 证书接上前向成本账

令

\[ Q=\operatorname{diag}(q_1,q_2),\quad R>0,\quad Q_f\succeq0, \]

有限时域代价为

\[ J_N=x_N^\mathsf TQ_fx_N+ \sum_{k=0}^{N-1}\left(x_k^\mathsf TQx_k+u_k^\mathsf TRu_k\right). \]

从终端权重向前递推:

\[ P_N=Q_f,\qquad S_k=R+B^\mathsf TP_{k+1}B, \]
\[ K_k=S_k^{-1}B^\mathsf TP_{k+1}A,\qquad P_k=Q+A^\mathsf TP_{k+1}A -A^\mathsf TP_{k+1}BK_k. \]

前向执行时

\[ u_k=-K_kx_k,\qquad x_{k+1}=Ax_k+Bu_k. \]

因此每一步的账本应同时列出 \(x_k,u_k,x_k^\mathsf TQx_k,Ru_k^2\),末端再加 \(x_N^\mathsf TQ_fx_N\)。\(\sum u_k^2\) 可以另作为控制能量指标,但它不等于已经加权进 \(J_N\) 的 \(\sum u_k^\mathsf TRu_k\)。

3. 动手实验:看 Riccati 递推如何把权衡传到每一个时刻

提交三项预测后,拖动 \(N,q_1,q_2,R\) 和初始误差。图上层画 \(x_1,x_2\),下层画 \(u_k\);第一张 ledger 是前向成本与控制能量,第二张 ledger 是每个 \(P_k,K_k,S_k\)。调大 \(R\) 后不要只看轨迹快慢:要同时核对 \(\sum x^\mathsf TQx\)、\(\sum Ru^2\)、\(\sum u^2\) 与 \(\min S_k\)。

JavaScript 失效时的静态 fallback:默认取

\[ N=12,\quad Q=\operatorname{diag}(6,1),\quad R=0.7,\quad Q_f=\operatorname{diag}(10,2),\quad x_0=[1,0]^\mathsf T. \]

后向第一行给出

项目 默认读数
\(P_0(1,1)\) \(60.460\)
\(K_0\) \([2.384,1.737]\)
\(S_0\) \(0.836\)
\(\min_k S_k\) \(0.720\)

前三个前向时刻的账本为:

\(k\) \(x_1\) \(x_2\) \(u_k\) \(x^\mathsf TQx\) \(Ru^2\)
0 1.000 0.000 −2.384 6.000 3.977
1 1.000 −0.238 −1.875 6.057 2.462
2 0.976 −0.407 −1.440 5.883 1.452

默认前向汇总为:状态代价 \(48.814\)、加权控制代价 \(9.383\)、终端代价 \(2.263\)、总成本 \(J=60.460\)、未加权控制能量 \(\sum u_k^2=13.404\)。若只把 \(R\) 调到 \(8\),第一增益约降为 \([0.381,0.297]\),控制能量约为 \(0.446\);这不是“响应一定更好”,而是把代价偏好向省力移动。

4. 误区与模型边界

  • \(P_N\) 不是随手置零的常数:有限时域的终端目标由 \(Q_f\) 表达;换了终端代价,前面所有 \(K_k\) 都会改变。
  • “\(Q\) 大所以所有增益都更大”不是逐元素定理:\(Q,R\) 是矩阵,MIMO 方向会耦合;可靠的说法是代价权衡改变,需看完整 Riccati 解、闭环极点和控制能量。
  • 经典 LQR 裕度不是本实验的无条件附赠:常见的单输入 \(GM\ge1/2\)、\(PM\ge60^\circ\) 结论属于标准连续时间、无限时域、全状态反馈 LQR 的特定输入回路语境,并需 \((A,B)\) 可稳定化、\((Q^{1/2},A)\) 可检测、\(Q\succeq0,R\succ0\) 等条件。离散/有限时域、输入饱和、时延或 LQG 组合不能直接继承这句话。
  • MIMO 没有唯一的单通道相位裕度:应明确断开哪个输入回路、保持哪些回路闭合,并用 return-difference \(I+L(s)\)、最小奇异值或 disk margin 描述多变量余量;不能把 SISO 的每通道数字无条件复制。
  • 最优不等于现实安全:LQR 代价不表达硬输入/状态约束;模型误差、量化、采样和观测器误差需另行验证,必要时使用抗饱和、MPC 或鲁棒设计。

迁移问题:如果横摆执行器有严格的峰值电流上限,你会先增大 \(R\)、缩短/延长 \(N\),还是改用带约束的 MPC?请把“成本权衡”和“硬约束可行性”区分开,并说明你会检查哪一张 ledger。

一、从极点配置到代价设计

状态反馈 \(u=-Kx\) 使闭环矩阵变为 \(A-BK\)。在 \((A,B)\) 能控时,理想线性模型允许配置闭环极点;在只要求稳定化时,重点是把所有可控不稳定模态移到稳定区域。极点配置的自由度很大,却没有告诉我们每一步控制要花多少能量,也没有天然处理输入限制。

LQR 换一个问题问法:在给定模型、初始状态和权重下,哪条轨迹使状态偏差与控制代价的总和最小?这让“快一点还是省力一点”成为可以审计的 \(Q/R\) 选择,而不是一句模糊的“把极点放左边”。

二、离散与连续 LQR

连续时间无限时域问题为

\[ J=\int_0^\infty(x^\mathsf TQx+u^\mathsf TRu)\,dt, \]

在标准条件下,代数 Riccati 方程

\[ A^\mathsf TP+PA-PBR^{-1}B^\mathsf TP+Q=0 \]

给出 \(K=R^{-1}B^\mathsf TP\)。离散时间有限时域问题则用本页的递推;当系统、权重和时域满足适当条件时,\(P_k\) 可趋近离散代数 Riccati 解,但有限 \(N\) 的前端增益仍会受终端权重影响。

权重应先处理量纲。Bryson 形式的起点是用允许的状态/输入尺度归一化,再选择相对权重;这只是整定起点,不是对非线性、饱和或噪声的保证。

三、LQR 稳定性与裕度:条件化的结论

标准连续时间无限时域全状态反馈 LQR 在 \((A,B)\) 可稳定化、\((Q^{1/2},A)\) 可检测、\(Q\succeq0\)、\(R\succ0\) 等条件下,Riccati 稳定化解产生稳定的标称闭环。这个稳定性结论与“某个具体频率裕度”不是同一句话。

对单输入或明确的 SISO 输入回路,经典 return-difference 推导给出常见的增益/相位裕度下界;教科书常压缩成增益可降至 \(1/2\)、相位至少 \(60^\circ\)。使用这些数字时必须写清楚:连续还是离散、无限还是有限时域、全状态还是估计状态、正负反馈约定,以及在哪个输入端断环。

对 MIMO,令输入回路传递矩阵为 \(L(s)\),应考察

\[ R(s)=I+L(s) \]

及其频率上的最小奇异值/结构化裕度。不同输入方向可能有不同脆弱性,单一“相位裕度”无法完整描述矩阵回路。LQG 还会把观测器动力学放进回路,不能把全状态 LQR 的保证直接搬过去。

四、跟踪、积分与前馈

LQR 原生解决的是把状态调到零。非零参考可以用稳态前馈、参考预滤波或积分增广 LQI;积分增广要重新检查增广系统的可稳定化/可检测性和执行器饱和。前馈减小模型已知部分的误差,反馈负责修正不确定部分,两者的稳定性仍需按实际结构分析。

五、LQR 与 MPC、观测器的关系

LQR 没有硬约束,MPC 在每个采样时刻显式优化约束;LQR 假设状态可用,实际常与观测器或 Kalman 滤波器结合。分离设计在标称线性条件下很方便,但“控制器最优 + 估计器最优”不等于组合鲁棒性自动成立。若安全边界、测量噪声和延迟重要,就要把它们带回闭环验证。

六、要点


下一页:LQR 需要状态,而真实系统往往只测到带噪输出。观测器与卡尔曼滤波会把“状态不可见”变成可计算的不确定度账。