关于UKF的再思考
最近几天又开始捣鼓了UKF,看到一些文献中对于UKF的描述有些细微的差别,有点不理解,又找了些文献。主要讨论两个问题:**1)UT变换中sigma点权重的选择;2)在量测更新时,需不需要再次利用UT生成Sigma点?**对于这两个问题,在文末给出了结论,不想看过程的可以看最后的总结,避免大家浪费时间。
背景
刚开始学习的时候,看的教材、文档和视频都是下面这种形式(参考于:第05讲 无迹卡尔曼滤波与联邦滤波_哔哩哔哩_bilibili),也没有多想些啥,直接用就是了。(多提一嘴,严老师的这个系列视频中介绍了很多关于“滤波”方面的基本知识,感兴趣的可以学习学习)
里面的Sigma点
χ
\chi
χ的生成和权重
W
W
W的计算方式如下:
最近几天又开始捣鼓了UKF,看到一些文献中对于UKF的描述有些细微的差别,有点不理解,又找了些文献,下面是整理的一些思路。
问题1 sigma点权重的选择
由于UT变化也有很多种,在文献[1]中介绍了其它形式的无迹变换,如:
- 一般形无迹变换
- 单形无迹变换
- 球形无迹变换
这些Sigma点权重的计算和生成是不一样的,如经常看到的一类一般形无迹变换的形式为:
问题2 在量测更新时,需不需要再次利用UT生成Sigma点
在有些论文中看到的UKF,量测更新时是没有先前面那样,再次利用UT变换生成新的Sigma点。如论文[2]和[3]中:
在文献[1]中指出,确实无需根据时间更新的预测状态和协方差矩阵重新生成Sigma点,这样可以减少计算量,但在一定程度上损失了精度。
结论:
- 无迹变换的形式有很多种,对于Sigma点的生成和权重计算也有不同的方式。
- 可以不需要再次进行无极变换,这可以减少计算量,但会降低精度。
供大家参考学习,如有问题请大家留言补充、讨论,共勉!
参考文献:
[1] Dan Simon, Optimal state estimation: Kalman, H [infinity] and nonlinear approaches. Hoboken, N.J: Wiley-Interscience, 2006.
[2] E. A. Wan and R. Van Der Merwe, “The unscented Kalman filter for nonlinear estimation,” in Proceedings of the IEEE 2000 Adaptive Systems for Signal Processing, Communications, and Control Symposium (Cat. No.00EX373), Lake Louise, Alta., Canada: IEEE, 2000, pp. 153–158. doi: 10.1109/ASSPCC.2000.882463.
[3] R. Kandepu, B. Foss, and L. Imsland, “Applying the unscented Kalman filter for nonlinear state estimation,” Journal of Process Control, vol. 18, no. 7–8, pp. 753–768, Aug. 2008, doi: 10.1016/j.jprocont.2007.11.004.