本帖最后由 Zhao_kar 于 2024-2-28 22:46 编辑
控制之美(卷2)第二节——卡尔曼滤波的基础补充
声明:
- 本书的基础理论部分的数学基础——矩阵部分就不展开了,先从测评计划的主体开始
- 本节先是一些基础概念的补充,同时设计到概率论的知识
- 概率论部分就点一下就行了,详细的还是要自己学习
一、卡尔曼滤波器的基本了解
- 首先卡尔曼滤波是一种最优化的、递归的、数字处理的算法
- 双特性:滤波和观测
- 观测可以对系统状态进行估计,而滤波可以对噪声信号进行滤波和去噪声
二、递归算法和数据融合的概念
1、本书使用了一个无人机通过气压计检测高度的实例,但是在理解递归之前,我个人觉得直接对推导过程进行学习更好,这个过程比较容易理解
2、首先是一个小学就会学到的概念:平均值,先假定我们要测定一个数据,需要通过多次测量取平均,此处用Z(k)表示测量后的估计值,其中k表示测量的次数,那么Z(k)就应该=[Z1+Z2+...Z(k)]/k。
(公式如下)
这个是一个平均值的概念,但是这个方法会有两个缺陷:其一是每次运算要做k次加法和一次乘法,乘法还没什么,但是基数非常大的时候,用计算机去加这么多的数可是一个非常麻烦的事情,计算量太大了;其二是需要保存所有的测量数据,那么大基数下也就意味着大量的存储空间。得知缺陷后,下面引入解决方案
3、在前面的等式中,把第k项拿出来,保留到k-1项,拆分成左右两个部分,左边是从1到k-1的和除k,右边是z的k除k。
4、然后在左边的部分中,把加式拿出一个k-1,则原式变成如下。
(公式如下)
5、则加式里面的则为k-1次测量的平均值,那么经过化简,可以得到一个新的代表平均值的一个等式
(3)
6、从这个等式里面可以看出来,只需要两次加法和一次乘法运算,也就是说计算的速度很快(相对比前面要运算k-1个加法运算),同时只需要保留前一次的平均值和当前次数,所以空间也会变小很多。
7、综上,这种方式就是递归算法,具体定义为:通过上次估值得到下一次估值的算法,也就是知道k-1,可以得k。
8、至于数据融合,简单描述+个人理解的语言,就是:假如在基数很大的情况下,也就是k很大的时候,新的测量结果对估计值的影响就不会很大,但是基数很小的时候,若测量结果出现较大误差,那么就会有很大的影响,就比如测身高180cm,然后前一次平均值是178,结果新的结果测出来是170,虽然数学上讲可以通过算法排除这种误差很大的值,但是我们在第五点的等式中,让1/k为一个系数K,定义这个系数为调整系数,而且我们在基数小的时候让他尽量的大,让基数大的时候变小,也就是k变大,K变小。上述即为数据融合。
三、概率论的基础知识
1、期望和方差,说实话,这个部分学校课程都学过了,而且本书没有过多的去究其定义,想知道定义的建议去自行学习,这里放上概率论的一个表述:
(写公式太麻烦了直接放图了)
2、然后是正态分布,这个高中课程就学过了,详细的也不解释了,这个百度一下看看图片就知道了。
3、然后是本书的一个实际例子,解释了误差融合,假定我们现在要用无人机测量高度,且无人机上装载了两个仪器,假定A测定50m,B测定52m。
4、若使用平均值,那么就是51m,同时考虑实际上传感器的误差,设定误差e1=Za-Z1,e2=Za-Z2,其中Z1、2为测定数字,Za为实际无人机高度。
5、此时,假设A服从正态分布1,B服从正态分布2,本书有张图比较直观,这里考虑版权不放出来,先不管那么多,只需要知道正态分布A的期望是0,标准差是1,而B的正态分布的期望是0,标准差是0.5,通过实际的图,也就是百分之99.73,即可知道对于A,误差在47-53m,也就是50的上下3m,而对于B,50.5-53.5m,这些是单独分析的结论。
6、然后接下来是融合,首先融合可以写成
7、其中K可取0-1,若A的精度高于B,也就是标准差小于B,那么可以让K=0,此时z'=z1,同理,反过来时,K=1,z'=z2,居中则让K=0.5
8、同时,因为前面提到了A的标准差大于B,也就是K应当大于0.5且接近于Z2.
9、经过推导,这里推导比较复杂,不做描述,主要是确认最优的参数K
10、可以得到K应该是一个趋近于0.8的值,且此时误差最小,也就是最优估计值,带入可得Z=51.6,标准差为0.45,同时标准差相对之前也变小了。
11、上述就是本书给出的一个两个数据融合的例子,结合新的正态分布曲线,是可以看出来直观的表现的