更改

添加620字节 、 2025年12月31日 (三) 03:11
无编辑摘要
第290行: 第290行:  
其中 <math>\displaystyle{ b = \frac {\lambda} {\lambda-2μ} }</math> 。这个参数代表着快慢变量之间速度变化的比例,其中<math>x_1</math>是慢变量。如果我们以这些[[特征函数]]本身作为观测量来构建不变子空间,那么此时空间上的坐标就是Koopman不变子空间上的特征坐标<ref name=william_2015>M. O. Williams, I. G. Kevrekidis, and C. W. Rowley, A data-driven approximation of the Koopman operator: Extending dynamic mode decomposition, J. Nonlinear Sci., 6 (2015), pp. 1307--1346. (Cited on pp. 246, 247, 256, 284, 285, 292)</ref>
 
其中 <math>\displaystyle{ b = \frac {\lambda} {\lambda-2μ} }</math> 。这个参数代表着快慢变量之间速度变化的比例,其中<math>x_1</math>是慢变量。如果我们以这些[[特征函数]]本身作为观测量来构建不变子空间,那么此时空间上的坐标就是Koopman不变子空间上的特征坐标<ref name=william_2015>M. O. Williams, I. G. Kevrekidis, and C. W. Rowley, A data-driven approximation of the Koopman operator: Extending dynamic mode decomposition, J. Nonlinear Sci., 6 (2015), pp. 1307--1346. (Cited on pp. 246, 247, 256, 284, 285, 292)</ref>
   −
[[文件:Exampleph.png|410x410px|替代=]]
+
[[文件:Exampleph.png|无|三维空间中系统动力学的流形,引自<ref name=william_2015>|缩略图|600x600像素]]<br>
    
如上图所示,我们可以画出在这个[[三维空间]]中[[系统动力学]]的[[流形]],也就是[[动力学]]曲线会在哪些平面上运动。首先,由于观测量本身的定义,我们有约束 <math> \ y_3 = y_1^2 </math>,在图中由蓝色曲面表示。在空间中有三条黑色轨迹,代表[[动力系统]]从三个不同起点出发的轨迹,它们始终都会在蓝色曲面上运动。因为<math>λ\ll μ<0</math>,所以<math> y_2 </math>的收敛速度会远快于<math> y_1 </math>,于是有一个吸引[[流形]]<math> y_2=y_1^2 </math>(这是[math]y_2[/math]的[[不动点]]),这在图中表示为红色的曲面(与<math> y_3 </math>平行,在下方平面上的[[投影]]是二次函数曲线)。
 
如上图所示,我们可以画出在这个[[三维空间]]中[[系统动力学]]的[[流形]],也就是[[动力学]]曲线会在哪些平面上运动。首先,由于观测量本身的定义,我们有约束 <math> \ y_3 = y_1^2 </math>,在图中由蓝色曲面表示。在空间中有三条黑色轨迹,代表[[动力系统]]从三个不同起点出发的轨迹,它们始终都会在蓝色曲面上运动。因为<math>λ\ll μ<0</math>,所以<math> y_2 </math>的收敛速度会远快于<math> y_1 </math>,于是有一个吸引[[流形]]<math> y_2=y_1^2 </math>(这是[math]y_2[/math]的[[不动点]]),这在图中表示为红色的曲面(与<math> y_3 </math>平行,在下方平面上的[[投影]]是二次函数曲线)。
第320行: 第320行:  
下图是一张关于DMD算法在流体流动应用上的算法流程示意图<ref name=brunton_2022 />。图中左侧展示了一系列实验图像时间序列,即切片数据。时间t从上到下增加,表示流体流经圆柱体时的动态变化。有了这些数据作为输入,下图中间部分是拟合过程。我们可以直接通过最小二乘法拟合出线性迭代矩阵A。右侧则是DMD的输出。一方面我们可以预测系统未来的演化,更重要的,我们可以通过对矩阵A做特征值分解,得到Koopman特征值和特征函数的近似(理论见上文“Koopman模式分解”章节),从而可以把原本的动力学分解成几个主要的动力学模式。这些动力学模式分别提取出了原动力学中具有物理含义的结构,比如平均流场、不同尺度的涡旋等等。
 
下图是一张关于DMD算法在流体流动应用上的算法流程示意图<ref name=brunton_2022 />。图中左侧展示了一系列实验图像时间序列,即切片数据。时间t从上到下增加,表示流体流经圆柱体时的动态变化。有了这些数据作为输入,下图中间部分是拟合过程。我们可以直接通过最小二乘法拟合出线性迭代矩阵A。右侧则是DMD的输出。一方面我们可以预测系统未来的演化,更重要的,我们可以通过对矩阵A做特征值分解,得到Koopman特征值和特征函数的近似(理论见上文“Koopman模式分解”章节),从而可以把原本的动力学分解成几个主要的动力学模式。这些动力学模式分别提取出了原动力学中具有物理含义的结构,比如平均流场、不同尺度的涡旋等等。
   −
[[文件:DMD算法图3.1.png|500x500px|替代=]]
+
[[文件:DMD算法图3.1.png|无|DMD算法在流体流动应用上的算法流程示意图<ref name=brunton_2022 />|缩略图|600x600像素]]<br>
    
1.组建切片数据<math>\mathbf{X}</math>和<math>\mathbf{X'}</math>。其中<math>\mathbf{X'}</math>表示<math>\mathbf{X}</math>数据下一时刻的切片数据。
 
1.组建切片数据<math>\mathbf{X}</math>和<math>\mathbf{X'}</math>。其中<math>\mathbf{X'}</math>表示<math>\mathbf{X}</math>数据下一时刻的切片数据。
第347行: 第347行:  
下面是一个关于“空腔流动”的示例<ref name=Schmid_2010 />。如下图所示,左上角的箭头表示均匀流从左侧进入可观测空间的上半部分,右侧虚线表示流体流出。我们关心的是图下半部分的方形空腔。空腔中红色波浪线表示流体的剪切层,会出现自持震荡的不稳定性。红色弯曲箭头表示流体撞击墙壁后形成的漩涡流动。蓝色虚线框出的倒L形区域是作者采集数据分析的区域。作者们试图验证只需要局部区域的数据,DMD就可以提取出全局的主导动力学。
 
下面是一个关于“空腔流动”的示例<ref name=Schmid_2010 />。如下图所示,左上角的箭头表示均匀流从左侧进入可观测空间的上半部分,右侧虚线表示流体流出。我们关心的是图下半部分的方形空腔。空腔中红色波浪线表示流体的剪切层,会出现自持震荡的不稳定性。红色弯曲箭头表示流体撞击墙壁后形成的漩涡流动。蓝色虚线框出的倒L形区域是作者采集数据分析的区域。作者们试图验证只需要局部区域的数据,DMD就可以提取出全局的主导动力学。
   −
[[文件:空腔流动fig1.png|410x410px|替代=]]
+
[[文件:空腔流动fig1.png|无|关于“空腔流动”的示例<ref name=Schmid_2010 />|缩略图|600x600像素]]<br>
    
数据基于二维[[纳维-斯托克斯方程]]生成。我们按照如上所述的DMD算法进行处理,提取的频谱展示于下图。其中每一个彩色的点代表一个DMD求得的特征值,横轴是特征值的虚部,纵轴是特征值的实部。点的颜色表明该模态对应的能量大小(通过SVD得到),红色代表能量大,蓝色代表能量小。
 
数据基于二维[[纳维-斯托克斯方程]]生成。我们按照如上所述的DMD算法进行处理,提取的频谱展示于下图。其中每一个彩色的点代表一个DMD求得的特征值,横轴是特征值的虚部,纵轴是特征值的实部。点的颜色表明该模态对应的能量大小(通过SVD得到),红色代表能量大,蓝色代表能量小。
第359行: 第359行:  
图中虚线表明,特征值分布在两条抛物线形状的分支上。更靠上的抛物线跨越了代表中性稳定的横线,出现了不稳定的特征值,对应的是空腔顶部自持震荡不稳定的剪切层。而一直处于横线下方的抛物线所对应的便是空腔底部里稳定的涡旋。
 
图中虚线表明,特征值分布在两条抛物线形状的分支上。更靠上的抛物线跨越了代表中性稳定的横线,出现了不稳定的特征值,对应的是空腔顶部自持震荡不稳定的剪切层。而一直处于横线下方的抛物线所对应的便是空腔底部里稳定的涡旋。
   −
[[文件:空腔流动fig2.png|410x410px|替代=]]
+
[[文件:空腔流动fig2.png|无|按照DMD算法进行处理,提取的频谱<ref name=Schmid_2010 />|缩略图|600x600像素]]<br>
    
下图展示了雷诺数Re=4500时方形空腔流的DMD空间模态。这些三维曲面图可视化了流向速度的波动幅度,每一个子图对应于之前频谱图中不同的特征值分支。曲面上的高度和颜色反应了某个模态上流向速度的分布。其中a图对应最不稳定的剪切层,可以看到在剪切层的位置处有一个巨大的波包结构。b-d图对应不稳定抛物线分支上的其他特征值,它们的能量开始渐渐向方形空间内部转移,但主要能量还是集中在剪切层的位置。e和f图则是对应稳定抛物线分支上的特征值,能量的流动基本上是在方形空腔里循环,而且由于阻尼作用,能量在不断的衰减。
 
下图展示了雷诺数Re=4500时方形空腔流的DMD空间模态。这些三维曲面图可视化了流向速度的波动幅度,每一个子图对应于之前频谱图中不同的特征值分支。曲面上的高度和颜色反应了某个模态上流向速度的分布。其中a图对应最不稳定的剪切层,可以看到在剪切层的位置处有一个巨大的波包结构。b-d图对应不稳定抛物线分支上的其他特征值,它们的能量开始渐渐向方形空间内部转移,但主要能量还是集中在剪切层的位置。e和f图则是对应稳定抛物线分支上的特征值,能量的流动基本上是在方形空腔里循环,而且由于阻尼作用,能量在不断的衰减。
   −
[[文件:未命名2.png|410x410px|替代=]]
+
[[文件:未命名2.png|无|雷诺数Re=4500时方形空腔流的DMD空间模态<ref name=Schmid_2010 />|缩略图|600x600像素]]<br>
    
DMD是简单地将原始状态本身视为观测函数,其计算高效、概念直观。然而,随着系统复杂度和数据维度的急剧攀升,计算成本成为瓶颈。而且很多场景需要更复杂的非线性观测才能捕捉到重要的物理结构。为此,包括扩展DMD(extended DMD,eDMD)<ref name=william_2015>M. O. Williams, I. G. Kevrekidis, and C. W. Rowley, A data-driven approximation of the Koopman operator: Extending dynamic mode decomposition, J. Nonlinear Sci., 6 (2015), pp. 1307--1346. (Cited on pp. 246, 247, 256, 284, 285, 292)</ref>、[[随机]]DMD(Randomized DMD)<ref name=ranDMD>Erichson, N. B., Mathelin, L., Kutz, J. N. & Brunton, S. L. Randomized dynamic mode decomposition. Siam J. Appl. Dyn. Syst. 18, 1867–1891 (2019)</ref>等等方法应运而生。它们有的在原始DMD的基础上,引入了更多的观测方式和[[非线性]]观测函数,从而能够处理更高维的系统。另外,诸如[[随机]]DMD,通过引入[[随机]][[投影]]、[[随机]][[采样]]等数值技术,在基本保持DMD分析精度的同时,极大地降低了大规模问题的计算与存储开销,为处理高维、实时的数据流提供了高效方案。下面将简要介绍几种主要的前沿数据驱动算法。
 
DMD是简单地将原始状态本身视为观测函数,其计算高效、概念直观。然而,随着系统复杂度和数据维度的急剧攀升,计算成本成为瓶颈。而且很多场景需要更复杂的非线性观测才能捕捉到重要的物理结构。为此,包括扩展DMD(extended DMD,eDMD)<ref name=william_2015>M. O. Williams, I. G. Kevrekidis, and C. W. Rowley, A data-driven approximation of the Koopman operator: Extending dynamic mode decomposition, J. Nonlinear Sci., 6 (2015), pp. 1307--1346. (Cited on pp. 246, 247, 256, 284, 285, 292)</ref>、[[随机]]DMD(Randomized DMD)<ref name=ranDMD>Erichson, N. B., Mathelin, L., Kutz, J. N. & Brunton, S. L. Randomized dynamic mode decomposition. Siam J. Appl. Dyn. Syst. 18, 1867–1891 (2019)</ref>等等方法应运而生。它们有的在原始DMD的基础上,引入了更多的观测方式和[[非线性]]观测函数,从而能够处理更高维的系统。另外,诸如[[随机]]DMD,通过引入[[随机]][[投影]]、[[随机]][[采样]]等数值技术,在基本保持DMD分析精度的同时,极大地降低了大规模问题的计算与存储开销,为处理高维、实时的数据流提供了高效方案。下面将简要介绍几种主要的前沿数据驱动算法。
第529行: 第529行:  
其中<math>\langle K\psi_k, \psi_j \rangle</math>为 Koopman [[算子]][[内积]]的真实值(作为误差基准)。结果显示不同积分规则的收敛速率差异显著:高斯-勒让德规则指数收敛;梯形规则<math>O(M^{-2})</math>;黎曼和规则<math>O(M^{-1})</math>;[[蒙特卡洛]]规则<math>O(M^{-1/2})</math>。
 
其中<math>\langle K\psi_k, \psi_j \rangle</math>为 Koopman [[算子]][[内积]]的真实值(作为误差基准)。结果显示不同积分规则的收敛速率差异显著:高斯-勒让德规则指数收敛;梯形规则<math>O(M^{-2})</math>;黎曼和规则<math>O(M^{-1})</math>;[[蒙特卡洛]]规则<math>O(M^{-1/2})</math>。
   −
[[文件:ResDMDGussian.png|500x500px|替代=|]]
+
[[文件:ResDMDGussian.png|无|高斯迭代映射结果图<ref name=Colbrook_2024 />|缩略图|600x600像素]]<br>
    
==核DMD==
 
==核DMD==
第569行: 第569行:  
尽管Koopman数据驱动算法前景广阔,但要选取合适的观测函数仍然是一个核心挑战。即使对于相对简单的[[动力系统]],Koopman [[算子]]的[[特征函数]]也可能任意复杂,并且在有限基中只能被近似地表示。[[深度学习]]非常适合表示这种任意复杂的函数,并且最近在Koopman 预测方面显示出了巨大的潜力<ref name=CW2018>C. Wehmeyer and F. Noe\', Time-lagged autoencoders: Deep learning of slow collective variables for molecular kinetics, J. Chem. Phys., 148 (2018), pp. 1--9. (Cited on pp. 284, 290, 291)</ref><ref name=NT2017>N. Takeishi, Y. Kawahara, and T. Yairi, Learning Koopman invariant subspaces for dynamic mode decomposition, in Advances in Neural Information Processing Systems, 2017, pp. 1130--1140. (Cited on pp. 284, 290)</ref>。
 
尽管Koopman数据驱动算法前景广阔,但要选取合适的观测函数仍然是一个核心挑战。即使对于相对简单的[[动力系统]],Koopman [[算子]]的[[特征函数]]也可能任意复杂,并且在有限基中只能被近似地表示。[[深度学习]]非常适合表示这种任意复杂的函数,并且最近在Koopman 预测方面显示出了巨大的潜力<ref name=CW2018>C. Wehmeyer and F. Noe\', Time-lagged autoencoders: Deep learning of slow collective variables for molecular kinetics, J. Chem. Phys., 148 (2018), pp. 1--9. (Cited on pp. 284, 290, 291)</ref><ref name=NT2017>N. Takeishi, Y. Kawahara, and T. Yairi, Learning Koopman invariant subspaces for dynamic mode decomposition, in Advances in Neural Information Processing Systems, 2017, pp. 1130--1140. (Cited on pp. 284, 290)</ref>。
   −
除了利用[[神经网络]]来学习Koopman嵌入之外,[[Koopman理论]]也被应用于理解[[神经网络]]<ref>I. Manojlovic\', M. Fonoberova, R. Mohr, A. Andrejc\v uk, Z. Drmac\v , Y. Kevrekidis, and I. Mezic\', Applications of Koopman Mode Analysis to Neural Networks, preprint, https://arxiv.org/abs/2006.11765, 2020. (Cited on p. 290)</ref><ref>A. S. Dogra and W. T. Redman, Optimizing neural networks via Koopman operator theory, in Advances in Neural Information Processing Systems, H. Larochelle, M. Ranzato, R. Hadsell, M. F. Balcan, and H. Lin, eds., Curran Associates, 2020, pp. 2087--2097. (Cited on p. 290)</ref>以及更广泛的算法<ref>F. Dietrich, T. N. Thiem, and I. G. Kevrekidis, On the Koopman operator of algorithms, SIAM J. Appl. Dyn. Syst., 19 (2020), pp. 860--885, https://doi.org/10.1137/19M1277059. (Cited on p. 290)</ref>。   
+
除了利用[[神经网络]]来学习Koopman嵌入之外,[[Koopman理论]]也被应用于理解[[神经网络]]<ref name=IM2020>I. Manojlovic\', M. Fonoberova, R. Mohr, A. Andrejc\v uk, Z. Drmac\v , Y. Kevrekidis, and I. Mezic\', Applications of Koopman Mode Analysis to Neural Networks, preprint, https://arxiv.org/abs/2006.11765, 2020. (Cited on p. 290)</ref><ref>A. S. Dogra and W. T. Redman, Optimizing neural networks via Koopman operator theory, in Advances in Neural Information Processing Systems, H. Larochelle, M. Ranzato, R. Hadsell, M. F. Balcan, and H. Lin, eds., Curran Associates, 2020, pp. 2087--2097. (Cited on p. 290)</ref>以及更广泛的算法<ref>F. Dietrich, T. N. Thiem, and I. G. Kevrekidis, On the Koopman operator of algorithms, SIAM J. Appl. Dyn. Syst., 19 (2020), pp. 860--885, https://doi.org/10.1137/19M1277059. (Cited on p. 290)</ref>。   
   −
[[文件:Neuralkoop.png|500x500px|替代=]]
+
[[文件:Neuralkoop.png|无|两种用于Koopman嵌入的深度神经网络架构<ref name=IM2020>|缩略图|600x600像素]]<br>
    
目前主要有两种用于Koopman嵌入的[[深度神经网络]]架构,如上图所示。在第一种架构中,深度自动编码器架构提取几个关键的潜在变量 <math>\mathbf{z} = \boldsymbol{\varphi}(\mathbf{x})</math> 来参数化[[动力学]]。在第二种架构中,高维输入数据被提升到更高的维度,在该维度下演化近似为线性的。
 
目前主要有两种用于Koopman嵌入的[[深度神经网络]]架构,如上图所示。在第一种架构中,深度自动编码器架构提取几个关键的潜在变量 <math>\mathbf{z} = \boldsymbol{\varphi}(\mathbf{x})</math> 来参数化[[动力学]]。在第二种架构中,高维输入数据被提升到更高的维度,在该维度下演化近似为线性的。
第591行: 第591行:  
将时间延迟坐标用作Koopman坐标系依赖于满足[[Takens嵌入定理]]的条件<ref name=takens_1981>F. Takens, Detecting strange attractors in turbulence, in Dynamical Systems and Turbulence, Lecture Notes in Math. 898, Springer, 1981, pp. 366--381.</ref>,这样才能使得延迟嵌入[[吸引子]]与原始全状态坐标中的[[吸引子]][[微分同胚]]。如此构建出来的观测空间中,描述系统演化的线性矩阵便是Hankel矩阵<ref name=brunton_2017>S. L. Brunton, B. W. Brunton, J. L. Proctor, E. Kaiser, and J. N. Kutz, Chaos as an intermittently forced linear system, Nature Commun., 8 (2017), pp. 1--9. (Cited on pp. 257, 275, 284, 287, 288, 289, 294)</ref>。   
 
将时间延迟坐标用作Koopman坐标系依赖于满足[[Takens嵌入定理]]的条件<ref name=takens_1981>F. Takens, Detecting strange attractors in turbulence, in Dynamical Systems and Turbulence, Lecture Notes in Math. 898, Springer, 1981, pp. 366--381.</ref>,这样才能使得延迟嵌入[[吸引子]]与原始全状态坐标中的[[吸引子]][[微分同胚]]。如此构建出来的观测空间中,描述系统演化的线性矩阵便是Hankel矩阵<ref name=brunton_2017>S. L. Brunton, B. W. Brunton, J. L. Proctor, E. Kaiser, and J. N. Kutz, Chaos as an intermittently forced linear system, Nature Commun., 8 (2017), pp. 1--9. (Cited on pp. 257, 275, 284, 287, 288, 289, 294)</ref>。   
   −
[[文件:Hankel lorenz.png||无|Lorenz系统作为案例进行时间延迟DMD的分析。其中输入是观测到的<math>x(t)</math>这一个维度的时间序列,输出是回归拟合之后得到的线性微分方程组的系数矩阵。如果考虑存在控制变量的话,输出还有控制变量前的系数。|缩略图|600x600像素]]
+
[[文件:Hankel lorenz.png||无|Lorenz系统作为案例进行时间延迟DMD的分析。其中输入是观测到的<math>x(t)</math>这一个维度的时间序列,输出是回归拟合之后得到的线性微分方程组的系数矩阵。如果考虑存在控制变量的话,输出还有控制变量前的系数。<ref name=brunton_2017>|缩略图|600x600像素]]<br>
    
时间延迟测量方案示意图如上图所示,以[[Lorenz系统]]为例,展示了将[[混沌]]分解为带有外力的[[线性系统]]。其中输入的只有能观测到的<math>x(t)</math>这一个维度的时间序列。可以从该[[标量]]测量的[[时间序列]]构造一个Hankel矩阵<math>\mathbf{H}</math>:   
 
时间延迟测量方案示意图如上图所示,以[[Lorenz系统]]为例,展示了将[[混沌]]分解为带有外力的[[线性系统]]。其中输入的只有能观测到的<math>x(t)</math>这一个维度的时间序列。可以从该[[标量]]测量的[[时间序列]]构造一个Hankel矩阵<math>\mathbf{H}</math>:   
761

个编辑