本节摘要:稳定性回答"扰动之后系统会不会自己跑飞"。李雅普诺夫方法提供不解微分方程的判据:若能找到一个沿轨迹递减的"能量函数",系统稳定。本节演示线性系统的特征值判据与李雅普诺夫方程、非线性系统的能量函数法,并讨论稳定性的三档强度与工程含义。
1940 年,塔科马海峡大桥在不算大的风里扭摆加剧直至坍塌,影像至今是工程课的开场教材。事故的核心是负阻尼:特定风速下,气动效应反向输入能量,扰动不是衰减而是每周期被放大。这件事把"稳定性"从教科书词条变成了工程纪律:一个系统的价值以其稳定为前提,性能指标都是其后的事。
稳定的严格说法(李雅普诺夫意义下)分三档。稳定:初始扰动小,轨迹就一直在原点附近晃(有界)。渐近稳定:不仅晃得有界,还最终回到原点。不稳定:某个方向的小扰动随时间指数放大。工程追求的几乎都是渐近稳定;"稳定但回不来"的系统(如无阻尼单摆)在控制意义上仍不合格。
线性系统 ẋ = Ax 的每个特征值对应一种运动模式(模态):实部为负,该模式指数衰减;实部为正,指数放大;共轭复部带来振荡。全部特征值实部为负 ⇔ 渐近稳定。代码验证:
import numpy as np def stable(A): return np.all(np.linalg.eigvals(A).real < 0) A_stable = np.array([[0.0, 1.0], [-4.0, -0.8]]) # 弹簧阻尼 A_margin = np.array([[0.0, 1.0], [-4.0, 0.0]]) # 无阻尼:临界 A_unst = np.array([[0.0, 1.0], [-4.0, 0.8]]) # 负阻尼:塔科马式 for name, A in [("有阻尼", A_stable), ("无阻尼", A_margin), ("负阻尼", A_unst)]: ev = np.linalg.eigvals(A) print(f"{name}: 特征值 {np.round(ev, 3)} → {'渐近稳定' if stable(A) else '非渐近稳定'}")
负阻尼矩阵的特征值实部为正,扰动按 e^(0.4t) 放大——二十几秒放大一万倍,桥就这么断的。对高阶系统,Routh-Hurwitz 判据不解特征方程也能由系数判符号(19 世纪的手工神器);今天一行 eigvals 搞定,但"看实部"的口径不变。
特征值判据只对线性有效。非线性系统的通用武器是李雅普诺夫直接法,思想来自能量:一只碗里的弹珠,无论怎么拨动,其机械能(高度势能 + 动能)总在耗散,最终停在碗底。推广:不必是真实能量,任何沿系统轨迹递减、且在原点取最小值的标量函数 V(x)("李雅普诺夫函数")都能证明稳定——V 就是那杯会漏的"广义能量",漏完之处即平衡点。
数学条件:V 正定(原点外 V > 0),且 V̇ = ∇V·f(x) 负定(沿轨迹递减)。线性系统的 V 可以取二次型 V = xᵀPx,代入得李雅普诺夫方程 ATP + PA = −Q:任给正定 Q,解出 P,P 正定即稳定。这把"找函数"变成了"解线性方程":
import numpy as np from scipy.linalg import solve_lyapunov A = np.array([[0.0, 1.0], [-4.0, -0.8]]) Q = np.eye(2) P = solve_lyapunov(A.T, -Q) print("P =\n", np.round(P, 3)) print("P 正定(顺序主子式为正):", np.linalg.det(P[:1,:1]) > 0 and np.linalg.det(P) > 0)
非线性小例:带平方阻尼的单摆 ẍ + ẋ³ + sin x = 0。取能量 V = ½ẋ² + (1 − cos x),则 V̇ = ẋ(ẍ + sin x) = −ẋ³ ≤ 0——能量只出不进,系统渐近稳定。直接法的美妙在于绕开求解:非线性微分方程大多没有解析解,而"找一个递减函数"常常有路可循(物理能量、平方误差加权和、拉格朗日函数的变形)。第 8 章的 LQR 与滑模控制、以及强化学习的值函数,骨子里都是李雅普诺夫思想——设计一个递减的量,让正确性随之而来。

开环不稳定的系统能靠反馈救回来吗?能,这正是控制工程的核心价值。倒立摆是教科书案例:开环(不施加控制)竖立位置的特征值一正一负,站不住;施加状态反馈 u = −Kx 后,闭环矩阵 A − BK 的特征值可以任意配置(能控性成立时),把"正实部"搬到负半平面——火箭姿态、磁悬浮、两轮平衡车,全是这个剧本。开环稳定性是系统的出厂体质,闭环稳定性是控制器的设计成果;而设计控制器之前,7.1 的模型与本章的判据是先决条件。
💡 关键直觉:线性判稳看特征值(每个特征值一票,一票正实部就翻车);非线性判稳找能量(一个递减的 V 走天下)。LQR、滑模、值函数——控制与学习的半壁江山都在"构造递减量"这个母题之下。
判稳定回答"会不会跑飞",工程还要问"离跑飞还有多远"。线性系统里这个距离有两把标尺:增益裕度(增益还能放大几倍才失稳)与相位裕度(相位还能滞后多少度才失稳),两者都从频域的伯德图与奈奎斯特判据读出。经验门槛是增益裕度大于两倍(约六分贝)、相位裕度大于四十五度——低于这条线的系统理论稳定但风吹草动就振荡,是"纸面稳定"的典型。裕度思维的日常版本无处不在:模型参数标错两成,增益裕度一点一的设计当场失稳,裕度三的设计安然无恙——鲁棒性不是奢侈品,是对模型误差的保险。第 8 章的调节器之所以广受信任,一半原因正是它自带可观的稳定裕度;而设计者对裕度的要求,应当像结构工程师对安全系数一样刻进职业本能。
"会不会跑飞"有了判据。下一节造出工业界最长寿的控制器——PID,看看比例、积分、微分三项如何分工又如何互相拆台。