卡尔曼Kalman滤波|基础学习(二)
【1】引言
前序学习进程中,已经了解了状态方程的基本概念。
第一部分是状态转移方程:
yk+1=Akyk+Bkuk+Γkξky_{k+1}=A_{k}y_{k}+B_{k}u_{k}+\Gamma_{k}\xi_{k}yk+1=Akyk+Bkuk+Γkξk
yky_{k}yk是kkk时刻的系统状态量;
AkA_{k}Ak是状态转移矩阵,体现了状态自身随时间的变化规律;
BkB_{k}Bk与确定性输入uku_{k}uk结合,描述外界已知控制输入对系统状态的影响;
Γkξk\Gamma_{k}\xi_{k}Γkξk表示系统过程噪声,Γk\Gamma_{k}Γk是噪声作用矩阵,ξk\xi_{k}ξk是噪声向量,它们一起体现了系统内外不可控的随机干扰。
第二部分是观测方程:
wk=Ckyk+dkuk+ηkw_{k}=C_{k}y_{k}+d_{k}u_{k}+\eta_{k}wk=Ckyk+dkuk+ηk
wkw_{k}wk是观测矩阵,体现了系统状态到观测值的映射关系;
DkD_{k}Dk与确定性输入uku_{k}uk结合,描述已知控制输入对观测值的影响;
ηk\eta_{k}ηk是观测噪声,体现观测过程的随机干扰。
更具体一些,ξk\xi_{k}ξk是系统固有的内部噪声,无论是否测量,这个噪声总是会存在;ηk\eta_{k}ηk是测量过程产生的噪声,只有测量的时候才会被发现和捕捉到。
【2】公式转化
如果:yk=zk+xky_{k}=z_{k}+x_{k}yk=zk+xk
来转化一下两个状态方程。
第一部分,状态转移方程:
yk+1=Akyk+Bkuk+Γkξk=Ak(zk+xk)+Bkuk+Γkξky_{k+1}=A_{k}y_{k}+B_{k}u_{k}+\Gamma_{k}\xi_{k}\\=A_{k}(z_{k}+x_{k})+B_{k}u_{k}+\Gamma_{k}\xi_{k}yk+1=Akyk+Bkuk+Γkξk=Ak(zk+xk)+Bkuk+Γkξk
第二部分,观测方程:
wk=Ckyk+dkuk+ηk=Ck(zk+xk)+dkuk+ηkw_{k}=C_{k}y_{k}+d_{k}u_{k}+\eta_{k}\\=C_{k}(z_{k}+x_{k})+d_{k}u_{k}+\eta_{k} wk=Ckyk+dkuk+ηk=Ck(zk+xk)+dkuk+ηk
令:
zk+1=Akzk+Bkukz_{k+1}=A_{k}z_{k}+B_{k}u_{k}zk+1=Akzk+Bkuk
sk=Ckzk+dkuks_{k}=C_{k}z_{k}+d_{k}u_{k}sk=Ckzk+dkuk
此时就会获得另外两个式子:
xk+1=Akxk+Γkξkx_{k+1}=A_{k}x_{k}+\Gamma_{k}\xi_{k}xk+1=Akxk+Γkξk
vk=Ckxk+dkukv_{k}=C_{k}x_{k}+d_{k}u_{k}vk=Ckxk+dkuk
这里zkz_{k}zk代表线性确定系统的解,根据上述对zk+1z_{k+1}zk+1的计算可看到zk+1z_{k+1}zk+1只和系数Ak/BkA_{k}/B_{k}Ak/Bk有关,所以zk+1z_{k+1}zk+1是个确定值,同时sks_{k}sk也是确定值。
同时xk+1x_{k+1}xk+1就显得非常复杂,因为ξk\xi_{k}ξk这个系统固有噪声被引入了,所以xk+1x_{k+1}xk+1是个不确定值;因为这一层关系,vkv_{k}vk也成了不确定值。
所以这次分解获得的zk+1z_{k+1}zk+1和sks_{k}sk是确定值,xk+1x_{k+1}xk+1和vkv_{k}vk是不确定值。
【3】总结
初步将卡尔曼滤波的状态方程转换为确定方程和随机方程。