
自然界和工程世界由非线性动力学主导,而这些动力学是出了名的难以分析和控制。虽然线性模型提供了简洁性和丰富的理论工具箱,但它们往往无法捕捉现实世界系统的复杂行为。这提出了一个根本性挑战:我们能否在不失其本质特征的情况下,将非线性系统在线性框架中表示出来?Koopman 算子理论给出了一个非凡的肯定回答,它表明,通过将我们的视角从系统的状态转移到状态的函数(可观测量),我们可以揭示一个隐藏的、无限维的线性结构。
然而,这个无限维算子在计算上是难以处理的。扩展动态模态分解(Extended Dynamic Mode Decomposition, EDMD)作为一种强大的、数据驱动的方法应运而生,它可以创建 Koopman 算子的有限维近似,有效地在非线性现实与线性分析之间架起一座实用的桥梁。本文探讨了 EDMD 的理论与实践。第一章“原理与机制”深入探讨了其核心概念,解释了 EDMD 如何使用可观测函数字典来“提升”数据以拟合线性模型,并讨论了字典选择和模型正则化等关键挑战。随后的“应用与跨学科联系”一章展示了该方法的多功能性,演示了其在解决控制、工程、网络科学乃至计算生物学等领域的复杂问题中的应用。
我们所居住的世界是一首永不停息的变革交响曲,其遵循的规律绝大多数是非线性的。行星的轨迹、咖啡中奶油的漩涡、旗帜在风中飘扬——这些都是非线性现象。几个世纪以来,科学家和工程师们一直在努力应对这一现实,因为线性系统虽然优美、简单且可解,但非线性系统却异常困难。因此,我们不禁要问:有没有一种方法可以在混乱中找到隐藏的线性?我们能否戴上一副特殊的眼镜,让这个纠缠不清的非线性世界看起来笔直而有序?答案出人意料的是肯定的。这就是 Koopman 算子的魔力,而扩展动态模态分解 (EDMD) 则是运用其力量的实用魔法书。
让我们想象一个复杂的动力学系统,比如天气。系统在任何时刻的状态——大气中每一点的温度、压力和风速——可以用一个状态向量 来描述。物理定律决定了这个状态如何演变到下一时刻,,其中 是一个极其复杂的非线性函数。通过反复应用 来预测 的长期演变,正是天气预报这项艰巨的任务。
Koopman 算子方法提出了一种根本性的视角转变。我们不再跟踪状态 本身,而是跟踪状态的函数。我们称这样的函数为可观测函数(observable)。可观测函数可以是任何东西:北美的平均温度、特定位置风速的平方,或其他一些复杂的属性。我们用 来表示一个通用的可观测函数。
当状态从 演变到 时,我们可观测函数的值从 变为 。由于 ,新值就是 。Koopman 算子,记作 ,被定义为对函数 本身执行这种时间演化的算子。也就是说,对于任何初始状态 ,给出可观测函数未来值的新函数是 。
神奇之处就在于此。即使底层动力学 是强非线性的,Koopman 算子 却总是完美的线性算子。这似乎好得令人难以置信,但一个简单的论证揭示了其中的奥秘。线性意味着对于任意两个可观测函数 和 以及任意两个数 和 ,该算子满足 。让我们来验证一下:
根据我们加法和缩放函数的定义,这等于:
再次运用 Koopman 算子的定义,这便是:
这对任何状态 都成立,因此我们证明了 是一个线性算子。系统的非线性并没有消失;它被编码到这个线性算子在函数空间上的作用中。我们已将一个有限维非线性问题“提升”到了一个无限维线性问题。
这是一个深刻的洞见,但它有一个陷阱。所有可能的可观测函数组成的空间是无限维的,这在计算上是难以处理的。为了使这个想法变得有用,我们必须创建一个有限维的近似。这就是像动态模态分解 (Dynamic Mode Decomposition, DMD) 这样的数据驱动方法发挥作用的地方。
最简单的近似是选择最基本的可观测函数集:状态变量本身。这就是标准 DMD 背后的思想。我们假设动力学在状态空间中是近似线性的,即对于某个矩阵 ,有 。给定一系列快照对 ,我们可以在最小二乘意义上找到最能拟合这种关系的矩阵 。从 Koopman 的角度来看,这等同于在线性可观测函数的微小字空间上近似 Koopman 算子。
然而,如果系统是真正的非线性,这种线性近似可能会产生误导。考虑一个简单系统,其中一个变量根据 演化。基于可观测函数 的标准 DMD 分析可能会识别出与 的线性衰减相关的约等于 的特征值,但它将完全错过由 项驱动的动力学。我们正透过一个过于简单的镜头来观察这个系统,无法解析其真实本质。
这就引出了一个自然而强大的推广:扩展动态模态分解 (Extended Dynamic Mode Decomposition, EDMD)。我们不再局限于线性可观测函数,而是可以选择我们自己的、更复杂的函数集。这个集合被称为可观测函数的字典。这就像制作一个定制的镜头来观察动力学,这个镜头对我们期望或希望捕捉的特定非线性敏感。
EDMD 的过程是直觉与线性代数的美妙结合:
选择字典:我们选择一个包含 个可观测函数的有限集合,。这可以包括多项式、三角函数,或者我们认为与动力学相关的任何其他函数。
提升数据:我们取状态的时间序列数据 ,通过为每个 计算 ,将每个快照“提升”到可观测函数的高维空间中。
拟合线性模型:我们现在寻找一个线性算子——一个大小为 的矩阵 ——它能最好地描述在这个提升空间中的演化。我们希望找到一个 ,使得在所有数据对上,近似式 的误差最小化。
这是一个经典的线性最小二乘问题。如果我们将提升后的数据排列成两个矩阵 和 ,我们寻找的矩阵 就是使 最小化的矩阵,其中 是 Frobenius 范数(矩阵等价于欧几里得向量范数)。其解可以优雅地表示为:
其中 是 的 Moore-Penrose 伪逆。这个矩阵 就是我们对 Koopman 算子的有限维近似。
让我们回到我们的例子,。如果我们明智地选择字典为 ,EDMD 不仅能找到特征值 ,还能正确识别出与 演化相关的另一个特征值 (因为如果 ,那么 )。通过选择正确的镜头,我们可以清晰地看到动力学。
EDMD 的威力完全在于字典的选择。但我们如何选择一个好的字典呢?这正是科学洞察力与实践智慧相结合的地方。
理论上的理想情况是找到一组可观测函数,它们能张成一个 Koopman 不变子空间。这意味着当 Koopman 算子作用于我们字典中的任何函数时,其结果是另一个可以写成我们字典函数线性组合的函数。如果我们能找到这样一个神奇的字典,近似就变成了精确的,矩阵 就代表了该子空间内的真实动力学。
在实践中,找到一个完美的不变子空间通常是不可能的。取而代之的是,我们寻求一个近似不变并且能够捕捉动力学最重要方面的字典。这涉及几种策略:
对完美字典的追求是一种平衡艺术,是偏差-方差权衡的经典案例。
为了驾驭这种权衡,我们借鉴了机器学习中强大的工具:正则化。其思想是在我们的最小二乘目标中加入一个惩罚项,以抑制过于复杂的解。
这种正则化的强度是一个必须调整的超参数。我们不能使用标准的交叉验证,因为我们的数据是具有强相关性的时间序列。这样做就像让学生在考试前偷看答案一样。相反,我们使用分块交叉验证等方法,这种方法尊重时间之箭,总是用过去的数据进行训练,用未来的数据进行测试。
选择基函数的思想可以通过“核技巧”更进一步,从而产生核 EDMD (Kernel EDMD)。通过使用核函数,我们可以隐式地在一个无限维字典空间中工作,而无需显式地构建它。这将 EDMD 与机器学习中强大的核方法世界联系起来,为捕捉复杂动力学提供了更大的灵活性。
最终,整个过程的目标是分析系统。我们矩阵 的特征值是真实 Koopman 特征值的近似值。它们的大小揭示了系统的稳定性:特征值 表示衰减模态(稳定), 表示增长模态(不稳定),而 则指向振荡或中性稳定模态。
然而,我们必须保持谦逊。考虑一个看似简单的系统 ,它可以模拟线性分析失效的现象。在不动点 处,线性化动力学的特征值为 1,这无法告诉我们任何关于稳定性的信息。如果我们使用多项式字典 应用 EDMD,我们会发现我们的近似 Koopman 矩阵 也将只具有特征值 1,而不管由 的符号决定的真实稳定性如何。我们的多项式镜头虽然强大,但对这里发挥作用的微妙动力学是盲目的。稳定性信息被隐藏了起来,需要更巧妙地选择可观测函数,或者需要理解算子的连续谱。
这就是科学发现的本质。EDMD 提供了一个强大的框架,将线性强加于非线性世界,把难题转化为可管理的线性代数问题。但它不是一台自动机器。它是一个工具,当在物理直觉、数学严谨性以及对自然微妙之处的应有尊重的指引下,它能让我们看到隐藏在复杂性中的美丽而简单的模式。
在我们之前的讨论中,我们揭示了扩展动态模态分解 (EDMD) 优美的核心。我们看到,通过正确的“护目镜”——我们的可观测函数字典——来观察一个系统,我们可以将一个非线性世界中纠缠不清、不可预测的运动,看作是干净、有序的线性变换。这就是 Koopman 算子视角的魔力。这是一个深刻的数学技巧,但它仅仅是一个技巧吗?或者我们能否用这个“魔法镜头”来做实际工作,来理解和塑造我们周围的世界?
事实证明,答案是响亮的“是”。这个框架的真正力量并非体现在抽象的定理中,而是在于其解决横跨众多学科的具体问题的非凡能力。从驾驶航天器到描绘活细胞的命运,EDMD 提供了一种统一的语言。现在,让我们踏上一段旅程,探索其中的一些应用,看看这个优雅的思想如何绽放出千百种实用的工具。
将非线性系统转化为线性系统,最直接的应用或许就是控制。现代控制理论的整个大厦建立在线性系统的基石之上。为一个由 描述的系统设计控制器是一门人们熟知且强大的艺术。但如果你的系统——一个机器人手臂、一个化学反应器、一个电网——不遵守这样简单的法则呢?
这正是 EDMD 大放异彩的地方。想象一下,你有一个复杂的非线性设备,其内部工作原理是一个谜。通过观察它的行为——收集其状态 和我们施加的输入 的数据,并观察得到的状态 ——我们可以使用 EDMD 来建立一个近似的线性模型,不是在原始状态空间中,而是在我们的可观测函数提升空间 中。结果是一个形式为 的简单有效的代理模型。
这就是数字孪生(Digital Twin)的核心,一个物理系统的虚拟复制品。我们可以使用这个线性模型以比真实系统快数千倍的速度运行仿真。例如,在模型预测控制 (Model Predictive Control, MPC) 中,我们可以问我们的线性模型:“给定当前状态,未来几秒内什么样的输入序列能让我们最接近目标?”因为模型是线性的,找到这个最优动作通常是一个快速可靠的计算。然后我们可以将这个最优计划的第一步应用到真实系统中,观察新状态,并重复这个过程,利用我们的简单线性映射不断地驾驭复杂的现实。
但一个微妙而优美的问题随之而来。如果我们在抽象的提升空间 中控制系统,我们真的在控制物理状态 吗?这就引出了提升可控性 (lifted controllability) 的概念。仅仅让我们的矩阵对 在数学上可控是不够的。我们还必须确保控制 能让我们对 有控制权。这取决于我们字典的选择。如果我们的可观测函数 包括了原始状态变量本身(例如,),那么直接控制向量 就意味着对 的控制。驾驭影子的能力意味着驾驭物体的能力,但前提是影子首先要忠实地代表物体。
此外,控制的影响并不总是一个简单的附加推动。有时,输入以更复杂的乘法方式改变了系统的内部动力学。EDMD 的灵活性使我们也能捕捉到这一点。我们不仅可以用状态 的函数来丰富我们的字典,还可以用输入 的函数,甚至是用模拟状态和输入之间相互作用的交叉项,例如由 Kronecker 积构成的项。通过构建一个包含 、 和 等项的回归器,我们可以创建能够捕捉丰富的双线性动力学的模型,从而为我们希望控制的系统提供一个远为精细和强大的控制手段。
控制旨在改变系统,而科学则旨在理解系统。在这方面,EDMD 也提供了一个革命性的新视角。它使我们能够从复杂的高维数据中提炼出本质的动态模态——行为的基本模式。
让我们从最小的尺度开始,在纳米力学的世界里。想象一台原子力显微镜 (AFM),其中一个微小的振动悬臂梁在“感知”一个表面。尖端和样品之间的力是它们之间距离的高度非线性函数,使得悬臂梁的运动变得复杂。通过选择一个由尖端位置和速度的多项式组成的可观测函数字典,我们可以使用 EDMD 将这种非线性振动转化为高维空间中的一个线性系统。我们学到的 Koopman 矩阵的特征值随后揭示了系统的真实频率和阻尼率,包括由非线性尖端-样品相互作用引起的微小变化。这是可行的,因为正如像 Weierstrass 这样的数学家教导我们的,光滑的非线性函数可以被多项式很好地近似。EDMD 利用这一原理来“线性化”动力学,但它也给我们上了一课:我们的模型的好坏取决于我们的数据。如果在我们的实验过程中,悬臂梁从未真正接触过表面,那么数据中将不包含有关接触力的信息,无论我们的字典多么巧妙,我们的模型都将对它们视而不见。
现在,让我们从单个振动尖端扩展到相互作用节点的网络——无论它是神经元网络、电网还是社交网络。考虑一个双节点网络,其动力学是非线性的。标准的线性分析可能无法发现节点之间的任何联系。然而,配备了非线性字典的 EDMD 可能会揭示一条隐藏的路径。例如,如果节点 1 的状态依赖于节点 2 状态的平方,将 添加到我们的可观测函数字典中,会突然使这种连接在我们的提升线性模型中变得可见。但这也揭示了一个深刻的局限性。如果我们只能观察到 ,我们将永远无法知道 的符号。两个不同的初始状态 和 将无法区分。我们的 Koopman 镜头可以揭示隐藏的结构,但它也可能将不同的现实投影到同一个图像上。理解在这种投影中失去了什么,与理解获得了什么同样重要。
对于真正庞大的网络,通用的多项式字典显得过于笨拙。在这里,我们必须更具创造性,根据问题的结构本身来定制我们的可观测函数。如果我们在研究一个图上的系统,为什么不使用源自图本身的可观测函数呢?通过使用图结构的可观测函数 (graph-structured observables),例如基于热扩散模式或图自身的“傅里叶模态”(其拉普拉斯算子的特征向量)的可观测函数,我们可以将我们的分析调整到网络的几何形状上。这使我们能够识别局部现象——比如在电网的一小部分传播的故障——而这些现象在全局分析中会被忽略。这是选择正确“护目镜”的终极体现:我们塑造我们的镜头来匹配我们希望看到的世界的轮廓。
一个基本思想的真正胜利在于它能够连接不同的领域,展示出同样的原则支配着机器和生物体的行为。EDMD 正是实现了这一点,为理解各处的复杂动力学提供了一个通用框架。
在现代工程中,数字孪生(Digital Twin)的概念至关重要。其目标是拥有一个活生生的、能实时反映喷气发动机或风力涡轮机等真实世界资产的软件模型。EDMD 是这一愿景的核心。我们可以完全从数据开始构建整个孪生体,创建一个完整的操作流程:原始传感器数据被摄取和同步,在一个近期行为的滑动窗口上持续校准一个 Koopman 模型,并且这个模型被用于一个实时的预测-更新循环(很像卡尔曼滤波器)中,以跟踪物理资产的健康状况并预测其未来。
更强大的是,EDMD 可以用来增强而非取代我们现有的知识。通常,我们有一个基于物理的系统模型,它很好,但并不完美。它捕捉了主要行为,但忽略了微妙的非线性效应或未建模的扰动。我们可以使用 EDMD 不去建模整个系统,而是去对残差进行建模:即我们的物理模型预测与真实世界行为之间的差异。这就创建了一个混合模型,它结合了第一性原理的优势和数据驱动学习的灵活性,从而产生了一个既有物理基础又惊人准确的数字孪生。
现在,让我们进行最惊人的一次飞跃。让我们把这套同样的数学工具指向生命本身的基本过程。在计算系统生物学 (computational systems biology) 中,科学家从单细胞实验中收集海量数据集。每个细胞的状态可以表示为基因表达高维空间中的一个点。利用 RNA 速度 (RNA velocity) 来推断哪些状态导致哪些状态,我们得到了细胞动力学的快照对——这正是 EDMD 所擅长处理的数据类型。
通过将 EDMD 应用于这些数据,我们可以重构出支配细胞发育的底层“动力学景观”。Koopman 特征值讲述了一个深刻的故事:
通过明智地选择我们的字典——例如,使用像径向基函数这样的局部化函数来分离不同的吸引子盆地——我们可以绘制出细胞命运的地图,识别细胞所走的路径和它们做出的选择,所有这些都来自于被动地观察它们的基因表达。这是一个令人惊叹的应用,表明 Koopman 算子的模态和特征值可以编码生命本身的基本逻辑。
从控制的实用性,到物理学的深层问题,再到生物学的蓝图,扩展动态模态分解提供的不仅仅是一种方法。它提供了一种视角——一种观察隐藏在非线性世界混乱表面之下的简单、线性秩序的方式。