Kalman滤波简介

上传人:n**** 文档编号:50708640 上传时间:2018-08-10 格式:PPT 页数:37 大小:1.47MB
返回 下载 相关 举报
Kalman滤波简介_第1页
第1页 / 共37页
Kalman滤波简介_第2页
第2页 / 共37页
Kalman滤波简介_第3页
第3页 / 共37页
Kalman滤波简介_第4页
第4页 / 共37页
Kalman滤波简介_第5页
第5页 / 共37页
点击查看更多>>
资源描述

《Kalman滤波简介》由会员分享,可在线阅读,更多相关《Kalman滤波简介(37页珍藏版)》请在金锄头文库上搜索。

1、1Kalman 滤波简介主讲:霍玲妹 北京理工大学2012. 042*北京理工大学本节课 主要内容二、简单实例四、仿真实现一、背景与理论基础三、原理与公式介绍3*北京理工大学Rudolf Emil Kalman 匈牙利数学家 BS采 用递推算法,实时 量测信息经提炼被浓缩 在估计值 中,而不 必存储时间过 程中的量测量。所以,卡尔曼滤波能适用于白噪声激励的任何平稳或非平稳随机向量过程的估计,所得估计在线性估计中精度最佳。阿波罗登月计划中的导航系统设计 是卡尔曼滤波早期应用中最为成功的实例。14* Kalman滤滤波:Kalman滤波是一种实时递 推算法,它所处理的是随机信号, 利用系统噪声和观

2、测 噪声的统计 特性,以系统的观测 量作为 滤波器的输入,以所要估计值 (状态或参数)作为滤 波器的 输出,滤波器输入与输出是由时间 更新和观测 更新算法联系 在一起的,根据系统方程和观测 方程估计出所需要处理的信 号实质 是一种最优估计方法。卡尔曼滤波就是在有随机干扰和噪声的情况下,以线性最小 方差估计方法给出状态的最优估计值 ,卡尔曼滤波是在统计 的意义上给出最接近状态真值的估计值 。北京理工大学北京理工大学北京理工大学15*卡尔曼滤波有如下特点:(1)卡尔曼滤波处理的对象是随机信号;(2)被处理信号无有用和干扰之分.滤波的目的是要估计出所有被处理信号;(3)系统的白噪声激励和量测噪声并不

3、是需要滤除的对象.它们的统计 特性正是估计过 程中需要利用的信息。所以确切地说,卡尔曼滤波应称作最优估计理论.此处称谓的 滤波与常规滤 波具有完全不同的概念和含意。16* 状态态估计计:状态估计是卡尔曼滤波的重要组成部分。一般来 说,根据观测 数据对随机量进行定量推断就是估计问题 ,特 别是对动态 行为的状态估计,它能实现实时 运行状态的估 计和预测 功能。状态估计对 于了解和控制一个系统具有重要意义,所应用的 方法属于统计 学中的估计理论。最常用的是最小二乘估计, 线性最小方差估计、最小方差估计、递推最小二乘估计等。 其他如风险 准则的贝叶斯估计、最大似然估计、随机逼近等 方法也都有应用。

4、受噪声干扰的状态量是个随机量,不可能测得精确值,但可 对它进行一系列观测 ,并依据一组观测值 ,按某种统计观 点 对它进行估计。使估计值 尽可能准确地接近真实值 ,这就是 最优估计。北京理工大学状态估计17*在许多实际问题 中,由于随机过程的存在,常常不能直接 获得系统的状态参数,需要从夹杂 着随机干扰的观测 信号中 分离出系统的状态参数。例如,飞机在飞行过程中所处的位 置、速度等状态参数需要通过雷达或其它测量装置进行观测 ,而雷达等测量装置也存在随机干扰,因此在观测 到飞机的 位置、速度等信号中就夹杂 着随机干扰,要想正确地得到飞机的状态参数是不可能的,只能根据观测 到的信号来估计和 预测飞

5、 机的状态,这就是估计问题 。北京理工大学18*从观测 到的信号中估计出状态的估值,并且希望估值与 状 态的真值误差越小越好,即要求有: 成立 因此存在最优估计问题 ,这就是卡尔曼滤波。 卡尔曼滤波的最优估计需满足以下三个条件: 无偏性,即估计值 的均值等于状态的真值; 估计的方差最小; 实时 性。北京理工大学线性最小方差估计北京理工大学北京理工大学19*设X是随机变量,Z为X的量测向量,即Z=Z(X)+V,求X的 估计 就是根据Z解算出X,显然 是Z的函数,由于v是 随机误差,所以X无法从Z的函数关系式中直接求取,而 必须按统计 意义的最优标 准求取。 最小方差估计是使下述指标达到最小的估计

6、线性指 是Z的线性函数。线性最小方差估计性质北京理工大学北京理工大学20* 性质1:最小方差估计等于量测为 某一具体实现 条件下 的条件均值。 性质2:无偏性 性质3:线性21* 白噪声:噪声信号 满足:则称 为白噪声,式中 为 方差强度 白噪声序列特点:1.零均值且具有独立性2.与时间 无关,与时间间 隔有关,所以它具有 平稳性高斯白噪声:服从高斯分布北京理工大学白噪声简单实 例北京理工大学北京理工大学22* 假设我们要研究的对象是一个房间的温度。根据你的经验 判断,这个房间的温度是恒定的,也就是下一分钟的温度等 于现在这一分钟的温度(假设我们用一分钟来做时间单 位) 。假设 你对你的经验

7、不是100%的相信,可能会有上下偏差几度。 我 们把这些偏差看成是高斯白噪声(White Gaussian Noise) ,也就 是这些偏差跟前后时间 是没有关系的而且符合高斯分配 (Gaussian Distribution)。另外,我们在房间单 放一个温度计 ,但是这个温度计也不准确的,测量值会比实际值 偏差。我们 也把这些偏差看成是高斯白噪声。北京理工大学北京理工大学23* 现在对于某一分钟我们有两个关于该房间的温度值:根据 经验 的预测值 (系统的预测值 )和温度计的值(测量值)。我 们 要用这 两个值结 合他们各自的噪声来估算出房间的实际 温度值。 假如我们要估算k时刻的是实际 温度

8、值。首先要根据k-1时 刻的温度值,来预测 k时刻的温度。因为你相信温度是恒定 的,所以你会得到k时刻的温度预测值 是跟k-1时刻一样的,假 设是23度,同时该值 的高斯噪声的偏差是5度(CS是这样 得到 的:如 果k-1时刻估算出的最优温度值的偏差是3,你对自己预测 的不确定度是4度,他们平方相加再开方,就是5)。然后,你从 温 度计那单得到了k时刻的温度值,假设是25度,同时该值 的偏 差是4度。北京理工大学北京理工大学24* 由于我们用于估算k时刻的实际 温度有两个温度值,分别是 23度和25度。究竟实际 温度是多少呢? 相信自己还是相信温度计呢?究竞相信谁多一点,我们可以 用他们的co

9、variance来判断。因为Kg2=5 2/(5 2+42) , 所以Kg=0.78,我们可以估算出k时刻的实际 温度值是:23+0.78 * (25-23)=24.56度。 可以看出,因为温度计的covariance比较小(比较相信温度 计),所以估算出的最优温度值偏向温度计的值。北京理工大学北京理工大学25* 现在我们己经得到k时刻的最优温度值了,下一步就是要 进入k+1时刻,进行新的最优估算。到现在为止,好像还没看到 什么自回归的东西出现。对了,在进入k+1时刻之前,我们还 要算出k时刻那个最优值 ( 24.56度)的偏差。算法如下:(1- Kg)*52)0.5=2.35。这单 的5就是

10、上面的k时刻你预测 的那个23 度温度值的偏差,得出的2.35就是进入k+1时刻以后k时刻估算 出的最优温度值的偏差(对应 于上面的3)。 就是这样 ,卡尔曼滤波器就不断的把covariance递归 ,从 而估算出最优的温度值。他运行的很快,而且它只保留了上一 时刻的covariance。上面的Kg,就是卡尔曼增益(Kalman Gain ) 。它可以随不同的时刻而改变它自己的值。离散型基本方程北京理工大学北京理工大学26*设随机线性离散系统的方程(不考虑控制作用)为 :式中 是系统的状态向量, 是系统的观测 序列 ,是系统过 程中的随机噪声序列, 是观测 噪声序 列, 是系统的状态转 移矩阵

11、, 是噪声输入 矩阵, 是观测 矩阵。北京理工大学北京理工大学27*根据先前假设,过程噪声和观测噪声应为白噪声, 所以有如下统计特性:北京理工大学北京理工大学28*在上述条件的约束下, 的估计量 可求解 如下:一步状态预测状态估计北京理工大学北京理工大学29*滤波增益矩阵一步预测误 差方差阵估计误 差方差阵北京理工大学北京理工大学30*就实现 形式而言,卡尔曼滤波器实质 上是一套由数字讨算机实现 的递推算法.每个递推周期中包含对被估计量的时间 更 新和量测更新两个过程。时间 更新由上一步的量测更新结果和设计 卡尔曼滤波器时的先验信息确定,量测更新则在时间 更新的基础上根据实时获 得的量测值 确

12、定。因此。量测量可看做卡尔曼滤波器的输入,估计值 可看做输出,输入与输出之间由时间 更新和量测更新算法联系,这与数字信号处理概念是类似的,所以有些书称卡尔曼滤波为广义数字信号处理。北京理工大学北京理工大学31*Kalman滤波算法框图北京理工大学北京理工大学32*北京理工大学北京理工大学33*仿真效果北京理工大学北京理工大学34*对于前面房间温度的例子,根据前面的描述,把房间看成一个系统,然后对这 个系统建模。当然,我们见 的模型不需要非常地精确。我们所知道的这个房间的温度是跟前一时刻的温度相同的,所以 。没有控制量,所以U(k)=0 。因为测 量的值是温度计的,跟温度直接对应 ,所以假设 。

13、得到式子北京理工大学北京理工大学35*北京理工大学北京理工大学36*现在我们模拟一组测 量值作为输 入。假设房间的真实温度为25 度,模拟了200个测量值,这些测量值的平均值为 25度,但是 加入了标准偏差为几度的高斯白噪声(在图中为蓝线 )。 为了令卡尔曼滤波器开始工作,我们需要告诉卡尔曼两个零时 刻的初始值,是X0和P0。它们的值不用太在意,随便给一个就 可以了,因为随着卡尔曼的工作,X会逐渐的收敛。但是对于P ,一般不要取0,因为这样 可能会令卡尔曼完全相信你给定的X0 是系统最优的,从而使算法不能收敛。选了X0=1度,P0=10。 该系统的真实温度为25度,图中用黑线表示。图中红线 是卡尔 曼滤波器输出的最优化结果(该结 果在算法中设置了Q=le-6 R=le -1)。北京理工大学北京理工大学37*

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 电子/通信 > 综合/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号