精读笔记
Problem Setting
论文处理的是 affine nonlinear robot dynamics 中加性未知项 \Delta 的在线估计与补偿,但重点不是一般 disturbance rejection,而是时变、结构未知、又需要实时安全响应的扰动。真正困难在于扰动不是常值,也不一定只由当前系统状态决定;它可能来自风、气动阻力、移动基座等具有自身动力学和外部驱动的过程。
传统 DO/ESO/TDNDO 类方法可以在扰动突变后立即产生估计,因此 transient 上安全,但面对快速时变或可预测周期扰动时会天然滞后,只能通过提高 observer gain 缩小误差;这又受噪声、延迟和执行器限制。纯 data-driven residual learning 则反过来:如果数据足够,steady-state 拟合可以很好,但初始阶段不安全,而且学习输出直接进入控制时连续性和稳定性很难保证。
所以这篇论文的关键矛盾是:如何在没有先验扰动模型时先活下来,同时在扰动表现出可学习时间结构后,不再把它当作 arbitrary bounded disturbance,而是利用其演化规律做提前补偿。
Motivation
已有路线缺的是一个“可启动、可学习、可嵌入稳定性分析”的中间形态。鲁棒控制/扰动观测器通常把未知项当作 adversarial input 或慢变输入,缺少对扰动自身动力学的表达;学习控制则通常把残差当函数逼合,缺少安全启动和闭环连续性保证。
作者的核心观察是:很多机器人扰动并非白噪声式不可预测,而是有局部时间结构的。例如气动阻力随速度/姿态变化,移动基座扰动具有准周期性,风扰在一定窗口内也有自相关。若能在线学到 \dot{\Delta} 的局部模型,observer 就不必总是落后于扰动,而可以获得类似 internal model / predictor 的能力。
因此关键缺口不是“再训练一个更准的模型”,而是如何把 learned disturbance dynamics 放进 observer 的误差动力学里,使学习模型的错误仍由 observer gain 兜底,学习模型正确时则获得零误差或低延迟估计。
Core Idea
EVOLVER 的真正核心是把扰动从“未知输入”重新建模为“有自身演化规律的状态”。初始阶段,扰动观测器只假设 \dot{\Delta} 有界,因此可以快速把估计误差压进有界集;稳态阶段,EDMD/Koopman 在 lifting space 中学习 \Delta 的一步演化,再转换成连续时间的 \dot{\Phi}=A\Phi 形式,并把对应的 \dot{\Delta} 预测项注入原 observer。
这改变了信息流:学习模块不是直接给控制器输出补偿力,也不是和 DO 输出相加,而是成为 observer 的内部扰动模型。这样有两个好处:一是输出连续性由 observer 的积分结构保证,避免学习模型更新带来的控制 chattering;二是如果 learned dynamics 足够准,误差动力学中的外部 forcing 项消失,剩下由负定 L 决定的稳定收敛。
和 prior 的本质区别在于它不是用学习替代控制,也不是简单叠加 model-based 与 learning-based 估计,而是让 learning 去补 model-based observer 中最缺的那一项——扰动导数/演化律。这是一个更像 internal-model augmentation 的设计。
Method
1. 初始扰动观测器:解决冷启动安全问题。它不需要当前 \dot{x},通过辅助变量 \xi 和 p(x)=Lx 构造积分型 observer。在 \dot{\Delta} 有界时,估计误差进入与 \bar{\Delta} 和 L 有关的 bounded set。这部分的角色是保底,不是高精度。
2. Koopman/EDMD 学扰动动力学:解决普通 observer 对时变扰动滞后的问题。作者用 lifting functions 构造 \Phi(\Delta) 和 \Psi(\Delta,z),在线 LS 得到有限维 Koopman 近似,并取 matrix logarithm 得到连续时间 A。核心变化是把 unknown disturbance derivative 变成显式可计算的 C A_\Delta \Phi + C A_z \Psi。
3. Evolutionary observer:解决 learned model 如何安全进入闭环的问题。学习到的扰动导数项被加到 observer 动态里,而不是直接作为控制输出。这样即使 A 更新是离散的,\hat{\Delta} 仍由积分器产生,控制输入更平滑;若 Koopman 残差小,则估计误差的稳态界显著缩小。
4. 历史扰动作为未知外因代理:解决 \ell_u 不可观测的问题。对于风速、基座速度等未知外部驱动,作者用过去若干步 \Delta_{-i} 作为 lifting 特征。这本质是用 autoregressive memory 近似 hidden exogenous state,不是严格辨识。
5. 数据构造与去噪:解决有限窗口 EDMD 容易样本单调、矩阵病态、噪声放大的问题。信息价值采样、鲁棒微分和 lifting 选择主要是让理论假设在真实系统中不至于完全失效;这些是重要工程,但不是方法的理论核心。
Key Insight / Why It Works
最关键的 insight 是:对很多机器人扰动,估计当前值不如估计其演化律有价值。普通 DO 的滞后来自把 \dot{\Delta} 当作未知 forcing;EVOLVER 通过在线 Koopman 学这个 forcing,并把它抵消掉。理论上,误差动态从 \dot{\tilde\Delta}=\dot{\Delta}+L\tilde\Delta 变成 \dot{\tilde\Delta}=C r_3+L\tilde\Delta。只要 Koopman 残差 r_3 小,误差界就小;若 r_3=0,则零误差收敛。这就是方法成立的主因。
它有效更像是 better inductive bias + memory reuse,而不是通用 learning capability。Koopman lifting 给了一个低维线性演化假设;历史窗口给了对隐藏外因的短期记忆;observer 给了稳定滤波和连续输出接口。三者组合后,系统在有自相关/准周期/状态相关扰动上自然会比普通 DO 少相位延迟。
最可能的核心贡献是“learned disturbance dynamics as observer internal model”。EDMD 本身、信息采样、鲁棒微分、Hermite lifting 都不是新概念;它们的价值在于被组织到一个实时可运行的 observer pipeline 中。尤其是学习模型不直接输出控制,而是通过 observer 积分结构进入补偿,这一点比简单 residual learning 更稳。
需要谨慎的是,部分增益可能主要来自 data coverage 和 hand-designed lifting。四旋翼实验中的 lifting 包含速度、姿态、速度平方、姿态角速度等强物理特征;物体实验也把 drag-relevant 特征放进了 \Psi。这不是黑箱泛化,而是相当依赖研究者对扰动结构的 feature engineering。所谓 Koopman generality 在实验中并没有被完全隔离验证。
另外,历史扰动处理未知 \ell_u 更像 retrieval / autoregressive prediction,而不是理解外部扰动源。对于可重复轨迹、准周期基座、固定风场,它会很好;但对非平稳 gust、碰撞、接触切换,这种 memory 可能迅速失效,甚至产生错误 feedforward。
Relation To Prior Work
技术谱系上,它最接近 disturbance observer / ESO / nonlinear DO 加 internal model principle,再叠加 EDMD-based Koopman identification。它不是 RL,也不是 full dynamics learning;更像 partial dynamics learning for uncertainty compensation。
相对传统 model-based observer,新增信息是在线学习扰动演化律。传统 DO 对常值扰动可以零误差,对慢变扰动靠高 gain;EVOLVER 则试图把时变扰动也转化为“已知模型驱动”的情况,因此减少高 gain 依赖。
相对 data-driven residual learning,区别是 learned model 不直接替代控制律,也不单独输出 residual force,而是进入 observer 的状态方程。这个结构使其更容易保留 Lyapunov-style 分析,也缓解学习输出不连续的问题。
相对已有“observer + learning output superposition”的方法,EVOLVER 的实质改进是避免两个估计器并列竞争。学习模块估的是 \dot{\Delta} 或 lifted dynamics,observer 估的是 \Delta;两者在层级上不同,因此冲突较少。
看似新的部分中,生物启发叙事基本不是技术贡献;EDMD 收敛条件也是标准结果;数据选择指标偏工程 heuristic。实质创新在于将 Koopman-learned disturbance model 嵌入非线性扰动观测器,并把 transient/steady-state 两种需求统一到同一误差动力学分析里。
Dataset / Evaluation
实验设计覆盖面比较宽:从合成 chaotic disturbance,到自由飞物体气动阻力,再到四旋翼风扰和移动基座机械臂。这个选择是有针对性的:它们分别对应 \dot{\Delta}=h(\Delta)、h(\Delta,x)、h(\Delta,x,\ell_u)、h(\Delta,x,\ell_k,\ell_u) 的复杂度递增,基本支撑了作者关于 disturbance class 扩展性的 claim。
真机部分较有说服力,尤其是四旋翼 onboard STM32F7 运行,说明方法至少在低维扰动和有限 lifting 下实时可用。机械臂实验也展示了 learned model 启用后估计相位滞后减少,以及输出比线性预测 MPC 更平滑,这对核心机制是直接证据。
但 evaluation 仍有明显边界。多数任务的扰动具有重复性或局部规律:固定风扇风场、抛物飞行气动、AUV 波浪式基座轨迹、圆轨迹飞行。这正好是 EVOLVER 的适用区间。实验没有充分测试非平稳突发扰动、接触切换、多模态外因或长时间分布漂移。
比较方法大体合理,但增益归因不完全干净。EVOLVER 同时拥有物理特征 lifting、历史记忆、数据筛选和平滑 observer;与 baseline 的差距不一定能单独归因于 Koopman。文中未充分说明若使用其他轻量 autoregressive model 或 local linear model 替代 EDMD,性能会下降多少。
Limitation
第一,理论上限由 Koopman residual 决定,而不是由 observer 本身决定。零误差收敛需要扰动可预测、无未知外因、无限独立样本、orthonormal lifting、bounded Koopman operator 等强条件。真实系统中这些条件基本不成立,因此定理更像解释理想极限,不是实际性能保证。
第二,方法把一部分难题转移到了 lifting 和数据覆盖。若 lifting 没有包含正确物理结构,EDMD 学到的 A 只是局部拟合;若滑动窗口数据单调,matrix log 甚至可能不可用。作者的数据选择 heuristic 有用,但缺少严格保证。
第三,对未知外因 \ell_u 的处理并不根本。用历史 \Delta 代理 hidden exogenous variables 等价于假设扰动源短期自相关。这个假设在风场缓慢变化、波浪准周期时成立;在冲击、碰撞、快速 gust、接触模式切换下不成立。文中也承认 Assumption 1 不适用于 push/collision。
第四,scalability 主要受 lifting 维度和 LS/matrix log 限制。当前案例扰动维度低、特征少;若扩展到高自由度接触机器人、复杂流体环境或多源扰动,lifting 组合爆炸和数据需求会很快成为瓶颈。
第五,增益来源不清。EVOLVER 的提升可能来自三个混合因素:更好的物理特征、更丰富历史记忆、更平滑的 observer 接口。论文没有充分做 ablation 去隔离 Koopman operator 相比普通 ARX/local regression/neural ODE 的独立贡献。
第六,learned model 更新可能引入错误预测风险。虽然 \hat{\Delta} 连续,但内部模型若在分布外给出错误 \dot{\Delta},feedforward compensation 可能反向加剧误差。文中对模型置信度、更新拒绝、稳定安全约束没有充分说明。
Takeaway
- 1. 最值得迁移的不是 Koopman 本身,而是“学习扰动演化律,并把它作为 observer internal model”的信息组织方式。
- 这比直接学 residual control 更容易保持闭环连续性和稳定分析。
- 2. 在线抗扰的关键不是 learning vs control 二选一,而是阶段性分工:reactive observer 负责 cold start safety,predictive model 负责 steady-state phase lag removal。
- 3. 对真实机器人,data coverage 和 representation alignment 往往比学习器复杂度更重要。
一句话总结
EVOLVER 是一类“扰动观测器 + 在线学习扰动内模型”的方法演化:它真正贡献的是把 Koopman 学到的扰动动力学嵌入 observer 误差动力学中,从而在可预测扰动场景下同时获得冷启动安全和低滞后稳态补偿。
