Koopman operator:为什么,是什么,怎么算

1. 为什么需要Koopman Operator

线性化能帮助我们简化处理很多非线性问题。常见线性化手段如在不动点(fixed-point)附近进行线性化能提供一个局部的线性化表达,但对于远离不动点的区域就无能为力了。而Koopman operator可以看做是一种全局的线性化手段,将有限维非线性问题转化为无限组非线性坐标的线性组合(可以想象用泰勒展开、傅里叶级数来逼近一个函数帮助理解)。在某些限制下, koopman operator与动态模态分解(DMD)与离散傅里叶变换(DFT)紧密相连。

2. 什么是 Koopman Operator

Koopman operator是能够将任何系统 g ( x ) g(x) g(x) 推进一个时间步的无限维线性系统。
κ t g = g ∘ F t \kappa_t g = g \circ F_t κtg=gFt
这里的 κ t \kappa_t κt 就是Koopman operator, F t F_t Ft代表将任何系统在时间上推进一步,中间的 ∘ \circ 是复合算子(composition operator)。
可能有点抽象,我们以一个时间步为 Δ t \Delta t Δt的离散系统为例:
κ t g ( x k ) = g ( F t ( x k ) ) = g ( x k + 1 ) \kappa_t g(x_k) = g(F_t(x_k)) = g(x_{k+1}) κtg(xk)=g(Ft(xk))=g(xk+1)

  • 第一项:将以第k个时间步的状态 x k x_k xk为自变量的函数 g ( x ) g(x) g(x) 通过乘上Koopman Operator κ t \kappa_t κt 在时间上步进一步
  • 第二项: g ( F t ( x k ) ) = g ∘ F t g(F_t(x_k)) = g \circ F_t g(Ft(xk))=gFt,也就是上一个式子复合算子的展开。这一项的含义是先将自变量 x k x_k xk 步进到 x k + 1 x_{k+1} xk+1再取 g ( x ) g(x) g(x)函数值
  • 第三项: g ( x ) g(x) g(x)代入 x k + 1 x_{k+1} xk+1的函数值

对于连续系统,写法稍微有点不一样:
d d t g = κ g \frac{d}{dt} g = \kappa g dtdg=κg
其中的 κ \kappa κ 可以结合 κ t \kappa_t κt 和微分的定义来理解:

d d t g = lim ⁡ t → 0 g ( x k + 1 ) − g ( x k ) t = κ t g − g t = κ g \frac{d}{dt}g = \lim_{t \to 0} \frac{g(x_{k+1})-g({x_k})}{t} = \frac{\kappa_t g-g}{t} = \kappa g dtdg=t0limtg(xk+1)g(xk)=tκtgg=κg

3. 如何计算、估计Koopman Operator

前面已经说过Koopman Operator是无限维的,那么在实际中的使用就要涉及到两步:

  1. 估计
  2. 截断(truncate)

当然, 如果是特定形式微分方程,已知方程,理论推导的情况下,可以将估计改为计算(如果我记得的话哪天补个例子)。
针对数据驱动(data-driven)问题,假设要建模的系统可以写成: κ t g ( x k ) = g ( x k + 1 ) \kappa_t g(x_k) =g(x_{k+1}) κtg(xk)=g(xk+1)
这里 κ t \kappa_t κt其实是一个矩阵,我们很难直接求取这个矩阵本身,通常采用的方法是求取矩阵的特征值与特征向量。具体的估计方法通常是采用动态模态分解(Dynamical mode decomposition, DMD)(如果我记得的话哪天补个例子)。

4.参考资料

Notes on Koopman Operator Theory

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
We consider the application of Koopman theory to nonlinear partial differential equations. We demonstrate that the observables chosen for constructing the Koopman operator are critical for en- abling an accurate approximation to the nonlinear dynamics. If such observables can be found, then the dynamic mode decomposition (DMD) algorithm can be enacted to compute a finite-dimensional approximation of the Koopman operator, including its eigenfunctions, eigenvalues and Koopman modes. We demonstrate simple rules of thumb for selecting a parsimonious set of observables that can greatly improve the approximation of the Koopman operator. Further, we show that the clear goal in selecting observables is to place the DMD eigenvalues on the imaginary axis, thus giving an objective function for observable selection. Judiciously chosen observables lead to physically interpretable spatio-temporal features of the complex system under consideration and provide a connection to manifold learning methods. Our method provides a valuable intermediate, yet inter- pretable, approximation to the Koopman operator that lies between the DMD method and the com- putationally intensive extended DMD (EDMD). We demonstrate the impact of observable selection, including kernel methods, and construction of the Koopman operator on several canonical, nonlinear PDEs: Burgers’ equation, the nonlinear Schrödinger equation, the cubic-quintic Ginzburg-Landau equation and a reaction-diffusion system. These examples serve to highlight the most pressing and critical challenge of Koopman theory: a principled way to select appropriate observables

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值