李雅普诺夫:不必线性化也能谈稳定
WARNING
🧪 Beta公测版本提示:教程主体已完成,正在优化细节,欢迎大家提Issue反馈问题或建议。
极点、Routh、Bode 都要求线性(或先在工作点线性化)。单摆
不是线性的。李雅普诺夫的办法是找一个能量函数 :原点最低、沿轨迹不增加,就能断定稳定,而不用把微分方程解出来。线性系统里「左半平面极点」是这件事的特例。状态方程见 状态空间。
一、能量碗
单摆(向下为
取
第一项动能,第二项是把摆锤从最低点抬高
无阻尼

图解说明:左是单摆;中是
这只碗,轨迹只能往低处走;右是无阻尼闭轨 vs 有阻尼螺旋。不必把 写成公式。
这叫李雅普诺夫稳定 / 渐近稳定的充分条件(还要
demo 参数:
保姆级数字例。 初值动能为
无阻尼时应几乎保持这个数(欧拉积分会有一点数值泄漏,末端
线性化对照:
卡点。
逐步推导:从动能 + 势能到 (点击展开)
状态取
沿轨迹求导(链规则):
运动方程解出角加速度:
(即把原方程除以
重力那两项精确抵消——这就是「保守力不做净功,只有阻尼耗散」。
demo 用欧拉:

图解说明:左是
,灰线无阻尼几乎等幅,橙线 衰减。右是 :灰线接近水平,橙线单调下降。
逐步推导:线性系统二次型 与 Lyapunov 方程(点击展开)
非线性定理是充分条件:找到一只碗就够了,找不到不代表不稳定。线性系统
沿线性轨迹:
指定一只正定
若
单摆在
倒立平衡
二、代码在做什么
demo.py 积两组单摆:无阻尼 vs 有阻尼,同一初值。左图
终端打印末端 demo.py 把

三、小结
| 概念 | 一句话 |
|---|---|
| 能量碗:远点高、原点最低;初值约 | |
| 沿轨迹不爬升 ⇒ 稳定 | |
| 只有阻尼耗散;重力项抵消 | |
| 线性特例 | 左半平面极点 ⇔ 存在二次 |
| 下游 | 机器人非线性动力学见 动力学 |
📥 Code
| File | View | Download |
|---|---|---|
| demo.py | Open | Download |
| exercise.py | Open | Download |
参考
- Khalil, Nonlinear Systems(李雅普诺夫定理)
- Åström & Murray, Feedback Systems