| 第321行: |
第321行: |
| | 虽然DMD已成为一种近似Koopman[[算子]]的标准数值方法,但它基于对系统的线性测量,因此缺乏用于近似Koopman[[算子]]的强[[非线性系统]]所需的[[非线性]]坐标变换。为了解决这一问题,Williams等人提出了扩展DMD(extended DMD,eDMD)<ref name=william_2015 />,使得最佳拟合线性DMD回归可以在一个包含状态非线性测量的扩展向量上进行。 | | 虽然DMD已成为一种近似Koopman[[算子]]的标准数值方法,但它基于对系统的线性测量,因此缺乏用于近似Koopman[[算子]]的强[[非线性系统]]所需的[[非线性]]坐标变换。为了解决这一问题,Williams等人提出了扩展DMD(extended DMD,eDMD)<ref name=william_2015 />,使得最佳拟合线性DMD回归可以在一个包含状态非线性测量的扩展向量上进行。 |
| | | | |
| − | 在eDMD中,一个扩展状态 <math>\mathbf{z} \in \mathbb{R}^p</math> 由对状态 <math>\mathbf{x}</math> 的非线性测量函数 <math>g_k</math> 构造而成: | + | '''定义:'''在eDMD中,一个扩展状态 <math>\mathbf{z} \in \mathbb{R}^p</math> 由对状态 <math>\mathbf{x}</math> 的非线性测量函数 <math>g_k</math> 构造而成: |
| | | | |
| | :<math> \mathbf{z} = \mathbf{g}(\mathbf{x}) = \begin{bmatrix} g_1(\mathbf{x})\\ g_2(\mathbf{x})\\ \vdots \\ g_p(\mathbf{x}) \end{bmatrix} </math> | | :<math> \mathbf{z} = \mathbf{g}(\mathbf{x}) = \begin{bmatrix} g_1(\mathbf{x})\\ g_2(\mathbf{x})\\ \vdots \\ g_p(\mathbf{x}) \end{bmatrix} </math> |
| 第329行: |
第329行: |
| | :<math> \mathbf{Z} = \begin{bmatrix} \vert & \vert & & \vert \\ \mathbf{z}_1 & \mathbf{z}_2 & \cdots & \mathbf{z}_m \\ \vert & \vert & & \vert \end{bmatrix}, \quad \mathbf{Z}' = \begin{bmatrix} \vert & \vert & & \vert \\ \mathbf{z}_2 & \mathbf{z}_3 & \cdots & \mathbf{z}_{m+1} \\ \vert & \vert & & \vert \end{bmatrix} </math> | | :<math> \mathbf{Z} = \begin{bmatrix} \vert & \vert & & \vert \\ \mathbf{z}_1 & \mathbf{z}_2 & \cdots & \mathbf{z}_m \\ \vert & \vert & & \vert \end{bmatrix}, \quad \mathbf{Z}' = \begin{bmatrix} \vert & \vert & & \vert \\ \mathbf{z}_2 & \mathbf{z}_3 & \cdots & \mathbf{z}_{m+1} \\ \vert & \vert & & \vert \end{bmatrix} </math> |
| | | | |
| − | 这里<math>\mathbf{z}_k = \mathbf{g}(\mathbf{x}k) = \mathbf{g}(\mathbf{x}(k\Delta t))</math>,为简化起见,我们假设数据是在时间上等间隔采样。和DMD一样,构造一个最佳线性矩阵算子<math>\mathbf{A}\mathbf{Z}</math>,将<math>\mathbf{Z}</math>映射到<math>\mathbf{Z}'</math>: | + | 这里<math>\mathbf{z}_k = \mathbf{g}(\mathbf{x}k) = \mathbf{g}(\mathbf{x}(k\Delta t))</math>,为简化起见,我们假设数据是在时间上等间隔采样。 |
| | + | |
| | + | '''算法(拟合线性迭代矩阵):'''和DMD一样,构造一个最佳线性矩阵算子<math>\mathbf{A}\mathbf{Z}</math>,将<math>\mathbf{Z}</math>映射到<math>\mathbf{Z}'</math>: |
| | | | |
| | :<math> \mathbf{A}_\mathbf{Z} = \underset{\mathbf{A}_\mathbf{Z}}{\arg\min} \, \|\mathbf{Z}' - \mathbf{A}_\mathbf{Z} \mathbf{Z}\|_F = \mathbf{Z}'\mathbf{Z}^\dagger </math> | | :<math> \mathbf{A}_\mathbf{Z} = \underset{\mathbf{A}_\mathbf{Z}}{\arg\min} \, \|\mathbf{Z}' - \mathbf{A}_\mathbf{Z} \mathbf{Z}\|_F = \mathbf{Z}'\mathbf{Z}^\dagger </math> |
| 第335行: |
第337行: |
| | 由于扩展向量<math>\mathbf{z}</math>可能远大于状态<math>\mathbf{x}</math>的维数,通常有必要使用[[核方法]]来计算这个回归问题。近年来,利用[[核方法]]近似Koopman算子的DMD方法已经成为一个重要的研究课题<ref name=william_2015_kernal>M. O. Williams, C. W. Rowley, and I. G. Kevrekidis, A kernel approach to data-driven Koopman spectral analysis, J. Comput. Dynam., 2 (2015), pp. 247--265. (Cited on pp. 255, 256, 284, 285, 294, 318)</ref>,具体可参考下文“核DMD”的章节。在[[无限]]样本数据的情况下,eDMD矩阵会收敛到由这些函数所张成的子空间上的Koopman[[算子]]的[[投影]]。如前文所述,选取观测函数时注意要让它们能够张成Koopman不变子空间。 | | 由于扩展向量<math>\mathbf{z}</math>可能远大于状态<math>\mathbf{x}</math>的维数,通常有必要使用[[核方法]]来计算这个回归问题。近年来,利用[[核方法]]近似Koopman算子的DMD方法已经成为一个重要的研究课题<ref name=william_2015_kernal>M. O. Williams, C. W. Rowley, and I. G. Kevrekidis, A kernel approach to data-driven Koopman spectral analysis, J. Comput. Dynam., 2 (2015), pp. 247--265. (Cited on pp. 255, 256, 284, 285, 294, 318)</ref>,具体可参考下文“核DMD”的章节。在[[无限]]样本数据的情况下,eDMD矩阵会收敛到由这些函数所张成的子空间上的Koopman[[算子]]的[[投影]]。如前文所述,选取观测函数时注意要让它们能够张成Koopman不变子空间。 |
| | | | |
| − | Koopman[[算子]]的[[特征函数]]一定可以形成Koopman不变子空间,并为[[动力学]]提供了理想的基底或坐标系来表示其演化。这些[[特征函数]]可以通过给定的观测函数来近似表示。我们可以将一个[[特征函数]]<math>\varphi(\mathbf{x})</math>用函数[[集合]]<math>{g_k(\mathbf{x})}_{k=1}^p</math>展开近似为: | + | '''性质(特征函数的计算):'''Koopman[[算子]]的[[特征函数]]一定可以形成Koopman不变子空间,并为[[动力学]]提供了理想的基底或坐标系来表示其演化。这些[[特征函数]]可以通过给定的观测函数来近似表示。我们可以将一个[[特征函数]]<math>\varphi(\mathbf{x})</math>用函数[[集合]]<math>{g_k(\mathbf{x})}_{k=1}^p</math>展开近似为: |
| | | | |
| | :<math> \varphi(\mathbf{x}) \approx \sum_{k=1}^{p} \xi_k g_k(\mathbf{x}) = \boldsymbol{\xi}^T \mathbf{g}(\mathbf{x}) </math> | | :<math> \varphi(\mathbf{x}) \approx \sum_{k=1}^{p} \xi_k g_k(\mathbf{x}) = \boldsymbol{\xi}^T \mathbf{g}(\mathbf{x}) </math> |