最近在看论文时遇到一个新的知识,库普曼算子,于是上网查了一下什么时库普曼算子,库普曼算子有什么用。
1、Koopman Operator作用
Koopmain Operator将有限维非线性系统的分析问题转化为对一个无限维线性系统的分析
通俗来说:就是通过升高维度将非线性问题转化为对线性问题的求解,因为线性问题的求解会更为简单
2、Koopman Operator的一个简单例子
现在假设有一个动力学系统(dynamic system):
在这个系统中,由于存在平方,因此系统是二维非线性的,因此可以通过升高维度将系统转化为线性的。
令
因此可以得到
写成矩阵形式表达其动力方程,可以得到:
系数矩阵就可以看作库普曼算子,这个算子将二维非线性的动力系统通过线性变换,转化为三维线性系统
3、Koopman Operator理论
在处理实际问题时,我们通常考虑离散的动力学系统,即:
其中,为系统在𝑡时刻的状态,M为系统的状态空间。通过将状态从时间𝑡映射到时间𝑡+ 1来更新动态规则。在大多数情况下,它通常是非线性和未知的。而且,
是有限维的,但也可以是高维的。
设G为状态空间M的标量函数构成的无限维空间,满足𝑔:M→R,则我们定义动力系统的Koopman算子为:
式中,: G→G,◦是两个函数的组合(𝑔与组成)。因此,我们得到如下等式:
因此通过库普曼算子,完成了从低维度到高维度的转化。
由于时一个参数矩阵,因此可以对其特征分解
其中𝐾为𝐷×𝐷。注意𝐾是Koopman框架的有限维近似,与不同,
是一个无限维算子。
定义,称之为库普曼嵌入,可以得到最终的式子:
因此若能够得到库普曼嵌入和库普曼算子K,就可以完成对动力学系统维度的升维。也可以用其来重构信号
以上只是一点我个人的理解,如有错误之处,烦请指正~
都看到这里了,给个小心心♥呗~