首页 卡尔曼滤波中文pdf

卡尔曼滤波中文pdf

举报
开通vip

卡尔曼滤波中文pdf 卡尔曼滤波器介绍 Greg Welch1and Gary Bishop2 TR 95-041 Department of Computer Science University of North Carolina at Chapel Hill3 Chapel Hill, NC 27599-3175 翻译:姚旭晨 更新日期: 2006年7月24日,星期一 中文版更新日期:2007年1月8日,星期一 摘要 1960年,卡尔曼发表了他著名的用递归方法解决离散数据线性滤波 问题的论文。从那以后,得益于数字计算...

卡尔曼滤波中文pdf
卡尔曼滤波器介绍 Greg Welch1and Gary Bishop2 TR 95-041 Department of Computer Science University of North Carolina at Chapel Hill3 Chapel Hill, NC 27599-3175 翻译:姚旭晨 更新日期: 2006年7月24日,星期一 中文版更新日期:2007年1月8日,星期一 摘要 1960年,卡尔曼发表了他著名的用递归方法解决离散数据线性滤波 问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 论文 政研论文下载论文大学下载论文大学下载关于长拳的论文浙大论文封面下载 。从那以后,得益于数字计算技术的进步,卡尔曼滤波器 已成为推广研究和应用的主题,尤其是在自主或协助导航领域。 卡尔曼滤波器由一系列递归数学公式描述。它们提供了一种高效可 计算的方法来估计过程的状态,并使估计均方误差最小。卡尔曼滤波 器应用广泛且功能强大:它可以估计信号的过去和当前状态,甚至能 估计将来的状态,即使并不知道模型的确切性质。 这篇文章介绍了离散卡尔曼理论和实用方法,包括卡尔曼滤波器及 其衍生:扩展卡尔曼滤波器的描述和讨论,并给出了一个相对简单的 带图实例。 1welch@cs.unc.edu, http://www.cs.unc.edu/~welch 2gb@cs.unc.edu, http://www.cs.unc.edu/~gb 3北卡罗来纳大学教堂山分校,译者注。 1 Welch & Bishop,卡尔曼滤波器介绍 2 1 离散卡尔曼滤波器 1960年,卡尔曼发表了他著名的用递归方法解决离散数据线性滤波问 题的论文 [Kalman60] 。从那以后,得益于数字计算技术的进步,卡尔曼 滤波器已成为推广研究和应用的主题,尤其是在自主或协助导航领域。 [Maybeck79]的第一章给出了一个非常“友好”的介绍,更全面的讨论可以 参考 [Sorenson70],后者还包含了一些非常有趣的历史故事。更广泛的参 考包括 [Gelb74, Grewal93, Maybeck79, Lewis86, Brown92, Jacobs93]。 被估计的过程信号 卡尔曼滤波器用于估计离散时间过程的状态变量 x 2 函数 excel方差函数excelsd函数已知函数     2 f x m x mx m      2 1 4 2拉格朗日函数pdf函数公式下载 uk¡1或过程激励噪声 wk¡1为零时,差分方程1.1中的 n£ n 阶增益矩阵 A将上一时刻 k¡ 1的状态线性映射到当前时刻 k的状态。实际 中 A可能随时间变化,但在这儿假设为常数。n£ l阶矩阵 B代表可选的控 制输入 u 2 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 来选择系数,我们 通常(统计学上的)都可以通过调整滤波器系数来获得更好的性能。调整 2即将1.12和1.13式的结果代入1.9和1.10式,译者注。 UNC-Chapel Hill, TR 95-041, July 24, 2006 Welch & Bishop,卡尔曼滤波器介绍 7 通常离线进行,并经常与另一个(确定无误的)在线滤波器对比,这个过 程称为系统识别。 在讨论的结尾,我们指出在 Q和 R都是常数的条件下,过程估计误差 协方差 R和卡尔曼增益 Kk 都会快速收敛并保持为常量(参照图1-2中的更 新方程)。若实际情况也如此,那么滤波器系数便可以通过预先离线运行 滤波器计算,或者,比如说,用 [Grewal93]中的方法计算 Pk 的稳定值。 实际中,观测误差 R尤其不易保持不变。例如,用我们的光电跟踪仪 观察挂在房间顶棚面板上的信号灯时,较近的信号灯会比较远的信号灯具 有较小的观测噪声。不仅是观测噪声会变化,有时过程激励噪声协方差 Q 也会随着滤波器运行而动态变化——这样 Q变成了 Qk ——来适应不同的 动态状态。例如,在跟踪三维虚拟环境中用户头部位置时,如果用户头部 缓慢移动,我们会减小 Qk 的幅度,如果移动开始快速变化,则增加幅度。 在这些情况下, Qk 的幅度要根据用户的移动方向和模型的不确定性来选 择。 2 扩展卡尔曼滤波器 被估计的过程信号 如第一节所述,卡尔曼滤波器估计一个用线性随机差分方程描述的离 散时间过程的状态变量 x 2 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 了扩展卡尔曼滤波器的一种变体,使得通过非线性转换后的随机变 量仍具有正态分布特性。 滤波器的计算原型 为了估计一个具有非线性差分和量测关系的过程,我们先给出式2.3和 式2.4的一个新的线性化表示: xk ¼ ~xk +A(xk¡1 ¡ x^k¡1) +Wwk¡1; (2.5) zk ¼ ~zk +H(xk ¡ ~xk)V vk: (2.6) 其中, ² xk 和 zk 是状态向量和观测向量的真值, ² ~xk 和 ~zk 来自2.3式和2.4式,是状态向量和观测向量的观测值, ² x^k 是 k时刻状态向量的后验估计, ² 类似于1.3式和1.4式,随机变量 wk 和 vk 表示过程激励噪声和观测噪 声。 ² A是 f 对 x的偏导的雅可比矩阵: A[i;j] = @f[i] @x[j] (x^k¡1; uk¡1; 0); ² W 是 f 对 w的偏导的雅可比矩阵: W[i;j] = @f[i] @w[j] (x^k¡1; uk¡1; 0); ² H 是 h对 x的偏导的雅可比矩阵: H[i;j] = @h[i] @x[j] (~xk; 0); UNC-Chapel Hill, TR 95-041, July 24, 2006 Welch & Bishop,卡尔曼滤波器介绍 9 ² V 是 h对 v的偏导的雅可比矩阵: V[i;j] = @h[i] @v[j] (~xk; 0): 简单起见,我们并没有在 A;W;H; V 中加入下标 k ,但它们实际上是 随时间变化的。 现在我们定义一个新的预测误差的表达式: ~exk ´ xk ¡ ~xk; (2.7) 和观测变量的残余, ~ezk ´ zk ¡ ~zk; (2.8) 请记住我们在实际中无法获得2.7式中的 xk ,它是状态向量的真值,也 就是我们要估计的对象。同样,我们也无法获得2.8式中的 zk ,它是我们用 来估计 xk 的观测向量的真值。由2.7式和2.8式我们可以写出误差过程的表 达式: ~exk ¼ A(xk¡1 ¡ x^k¡1) + ²k; (2.9) ~ezk ¼ H~exk + ´k; (2.10) ²k 和 ´k 代表具有零均值和协方差矩阵WQW T 和 V RV T 的独立随机 变量, Q和 R分别来自1.3式和1.4式。 注意2.9式和2.10式是线性的,它们很像离散卡尔曼滤波器中的状态差 分方程1.1式和量测方程1.2式。这提示我们用2.8式中的观测残余真值 ~ezk 和 第二个(假设的)卡尔曼滤波器去估计2.9式中的预测误差 ~exk 。估计的结 果记为 e^k ,结合2.7式可以获得初始非线性过程的后验状态估计: x^k = ~xk + e^k: (2.11) 式2.9和式2.10中的随机变量具有如下概率分布(参看前面的脚注): p(~exk) » N(0; E[~exk~eTxk ]) p(²k) » N(0;WQkW T ) p(´k) » N(0; V RkV T ) 令 e^k 的估计值为零,由以上近似,可以写出估计 e^k 的卡尔曼滤波器表 达式: e^k = Kk~ezk : (2.12) 将2.8式和2.12式代回2.11式,我们看到实际上并不需要第二个(假设 的)卡尔曼滤波器: UNC-Chapel Hill, TR 95-041, July 24, 2006 Welch & Bishop,卡尔曼滤波器介绍 10 x^k = ~xk +Kk~ezk = ~xk +Kk(zk ¡ ~zk) (2.13) 式2.13现在可以用作扩展卡尔曼滤波器的观测变量的更新。其中 ~xk 和 ~zk 来自2.3式和2.4式,将1.11式中的观测误差协方差进行适当的替换可以得 到卡尔曼增益Kk 。 表2-1和表2-2给出了扩展卡尔曼滤波器的全部表达式。注意我们用 x^¡k 替换了 ~xk 来表达先验概率的意思,并且雅可比矩阵 A;W;H; V 也被加上了 下标,显式地表明了它们在不同的时刻具有变化的值,每次需要被重复计 算。 表 2-1: 扩展卡尔曼滤波器时间更新方程 x^¡k = f(x^k¡1; uk¡1; 0) (2.14) P¡k = AkPk¡1A T k +WkQk¡1W T k (2.15) 就像基本的离散卡尔曼滤波器,表2-1中的时间更新方程将状态和协方 差估计从 k ¡ 1 时刻向前推算到 k 时刻。2.14式中的 f 来自式2.3, Ak 和 Wk 是 k时刻的过程雅可比矩阵, Qk 是式1.3中 k时刻的过程激励噪声协方 差矩阵。 表 2-2: 扩展卡尔曼滤波器状态更新方程 Kk = P¡k H T k (HkP ¡ k H T k + VkRkV T k ) ¡1 (2.16) x^k = x^¡k +Kk(zk ¡ h(x^¡k ; 0)) (2.17) Pk = (I ¡KkHk)P¡k (2.18) 就像基本的离散卡尔曼滤波器,表2-2中的测量更新方程利用观测值变 量 zk 的值校正状态估计和协方差估计。2.17式中的 h来自式2.4, Hk 和 V 是 k 时刻的测量雅可比矩阵, Rk 是式1.4中 k 时刻的观测噪声协方差矩阵 (注意下标 k表示 Rk 随时间变化)。 扩展卡尔曼滤波器的基本运行流程与图1-1中的线性离散卡尔曼滤波器 相同。图2-1将图1-1与表2-1和表2-2中的表达式结合。 UNC-Chapel Hill, TR 95-041, July 24, 2006 Welch & Bishop,卡尔曼滤波器介绍 11 图 2-1: 扩展卡尔曼滤波器工作原理图,由图1-1和表2-1及表2-2结合得到。 扩展卡尔曼滤波器的一个重要特性是卡尔曼增益 Kk 的表达式中的雅可 比矩阵 Hk 能够正确地传递或“加权”观测信息中的有用部分。例如,如果 通过 h观测变量 zk 和状态变量没有一一对应的关系,雅可比矩阵 Hk 便通 过改变卡尔曼增益从而使得残余 zk ¡ h(x^¡k ; 0)中真正作用于状态变量的部 分被加权。当然,如果整个观测中观测变量 zk 和状态变量通过 h都没有一 个一一对应的关系,那么滤波器很快就会发散。这种情况下过程是不可观 测的。 3 卡尔曼滤波器实践:估计随机常数 前两节我们讨论了离散卡尔曼滤波器和扩展卡尔曼滤波器的基本形 式。在这儿,我们给出一个简单的例子以帮助读者更好地理解卡尔曼 滤波器的实现和性能。 Andrew Straw在 http://www.scipy.org/Cookbook/ KalmanFiltering上给出了使用Python/SciPy的具体实现方法。 过程模型 在这个简单的例子里我们估计一个常数随机变量,比如电压。假设 我们可以测量这个常数的幅值,但观测幅值中掺入了幅值均方根(Root- UNC-Chapel Hill, TR 95-041, July 24, 2006 Welch & Bishop,卡尔曼滤波器介绍 12 Mean-Square,RMS)为 0:1伏的白噪声(比如在模数转换器不是很准确的 情况下)。下面的线性差分方程描述了整个过程: xk = Axk¡1 +Buk¡1 + wk = xk¡1 + wk ; 观测变量 z 2 <1为: zk = Hxk + vk = xk + vk : 过程的状态不随时间变化,所以 A = 1;没有控制输入,所以 u = 0; 包含噪声的观测值是状态变量的直接体现,所以 H = 1。(注意有些地方 我们忽略了下标k ,因为对应的系数在这个例子中为常数。) 滤波器方程和参数 时间更新方程为: x^¡k = x^k¡1; P¡k = Pk¡1 +Q: 测量更新方程为: Kk = P¡k (P ¡ k +R) ¡1 = P¡k P¡k +R ; (3.1) x^k = x^¡k +Kk(zk ¡ x^¡k ); Pk = (I ¡Kk)P¡k : 假设过程激励噪声方差 Q非常小, Q = 10¡5 (也可以令 Q = 0,但 是一个小的非零常数可以方便地调整滤波器参数,下面将会证明)。再假 设由经验我们知道随机常数的真值具有标准正态分布,因此我们令滤波器 的初始条件为零,即 x^k¡1 = 0。 类似地,我们要选择Pk¡1的初值P0。如果确定初始状态估计 x^0 = 0, 可以令 P0 = 0。但因为初始状态估计 x^0 并不确定,令 P0 = 0可能会使滤 波器一直产生 x^k = 0的结果。就像实验验证的那样, P0的选择并不关键, 几乎任何 P0 6= 0都会使滤波器最终收敛。在这里我们令 P0 = 1。 UNC-Chapel Hill, TR 95-041, July 24, 2006 Welch & Bishop,卡尔曼滤波器介绍 13 模拟实验 首先我们令常标量 x = ¡0:37727 (因为 x 是真值所以并没有 ^ 符 号)。然后产生50个不同的观测值 zk ,其误差为正态分布,期望为0,标 准偏移为0.1(先前我们假设观测值掺进了幅值均方根为0.1伏的白噪声)。 我们本可以在滤波器运行时产生这些观测值,但预先准备好这些观测值然 后再使用在几组不同的模拟中可以让对照更有意义。 第一组实验中我们固定测量方差为 R = (0:1)2 = 0:01 。因为这正 好是预先产生的观测误差的方差的真值,所以在响应速度和估计方差方 面这组实验应该具有最好的性能。这在与第二、三组实验的对比中更能 显现出来。图3-1画出了第一组实验的结果。实线代表随机变量的真值 x = ¡0:37727,加号代表预先产生的观测噪声,剩下的曲线是滤波器的估 计结果。 0 10 20 30 40 50 Iteration -0.7 -0.6 -0.5 -0.4 -0.3 -0.2 -0.1 0.0 V o lt a g e noisy measurements a posteri estimate truth value 图 3-1: 第一组实验: R = (0:1)2 = 0:01 。实线代表随机变量的真值 x = ¡0:37727,加号代表预先产生的观测噪声,剩下的曲线是滤波器的估 计结果。 前面讨论 P0的选择时我们提到过只要 P0 6= 0其取值并不是特别关键, 因为最终滤波器总要收敛。下面的图3-2给出了每次重复迭代后的 Pk 值。 第50次迭代后它已从最初的1下降到0.0002(平方伏特)了。 UNC-Chapel Hill, TR 95-041, July 24, 2006 Welch & Bishop,卡尔曼滤波器介绍 14 0 10 20 30 40 50 Iteration 0.000 0.002 0.004 0.006 0.008 0.010 2 ) e g atl o V( 图 3-2: 第50次迭代后初始误差协方差 P¡k 已从最初的1下降到0.0002(平方 伏特)了。 第一节“滤波器系数和调制”中我们简单地讨论了改变或调整系数 Q 和 R 对性能的影响。图3-3和图3-4显示了将 R 增大或减少100倍的结果。 图3-3中观测方差扩大到100倍(也就是R = 1),因此滤波器收敛地更慢。 UNC-Chapel Hill, TR 95-041, July 24, 2006 Welch & Bishop,卡尔曼滤波器介绍 15 0 10 20 30 40 50 Iteration -0.7 -0.6 -0.5 -0.4 -0.3 -0.2 -0.1 0.0 V o lt a g e noisy measurements a posteri estimate truth value 图 3-3: 第二次实验: R = 1。滤波器对观测值的反应变慢,导致估计方差 减小。 图3-4中观测方差减小了100倍(也就是 R = 0:0001),因此滤波器收 敛地更快。 UNC-Chapel Hill, TR 95-041, July 24, 2006 Welch & Bishop,卡尔曼滤波器介绍 16 0 10 20 30 40 50 Iteration -0.7 -0.6 -0.5 -0.4 -0.3 -0.2 -0.1 0.0 V o lt a g e noisy measurements a posteri estimate truth value 图 3-4: 第三次实验: R = 0:0001。滤波器对观测值的反应变快,导致估计 方差增大。 对常数的估计相对比较直接,这样便清晰地显示了卡尔曼滤波器的工 作性能。特别是在图3-3中,估计值要比含噪声的观测值平滑很多,显著地 表明了卡尔曼滤波器的“滤波”特性。 UNC-Chapel Hill, TR 95-041, July 24, 2006 参考文献 [Brown92] Brown, R. G. and P. Y. C. Hwang. 1992. Introduction to Ran- dom Signals and Applied Kalman Filtering, Second Edition, John Wiley & Sons, Inc. [Gelb74] Gelb, A. 1974. Applied Optimal Estimation, MIT Press, Cam- bridge, MA. [Grewal93] Grewal, Mohinder S., and Angus P. Andrews (1993). Kalman Filtering Theory and Practice. Upper Saddle River, NJ USA, Prentice Hall. [Jacobs93] Jacobs, O. L. R. 1993. Introduction to Control Theory, 2nd Edition. Oxford University Press. [Julier96] Julier, Simon and Je®rey Uhlman. “A General Method of Approximating Nonlinear Transformations of Probability Distributions,”Robotics Research Group, Department of Engineering Science, University of Oxford [cited 14 November 1995]. Available from http://www.robots.ox.ac.uk/~siju/ work/publications/Unscented.zip. Also see: “A New Approach for Filtering Nonlinear Systems”by S. J. Julier, J. K. Uhlmann, and H. F. Durrant-Whyte, Proceedings of the 1995 American Control Conference, Seattle, Washington, Pages:1628-1632. Available from http://www.robots.ox.ac.uk/~siju/work/publications/ ACC95 pr.zip. Also see Simon Julier's home page at http://www.robots.ox.ac.uk/~siju/. [Kalman60] Kalman, R. E. 1960.“A New Approach to Linear Filtering and Prediction Problems,”Transaction of the ASME—Journal of Basic Engineering, pp. 35-45 (March 1960). [Lewis86] Lewis, Richard. 1986. Optimal Estimation with an Introduction to Stochastic Control Theory, John Wiley & Sons, Inc. [Maybeck79] Maybeck, Peter S. 1979. Stochastic Models, Estimation, and Control, Volume 1, Academic Press, Inc. [Sorenson70] Sorenson, H. W. 1970. “Least-Squares estimation: from Gauss to Kalman,”IEEE Spectrum, vol. 7, pp. 63-68, July 1970. 17
本文档为【卡尔曼滤波中文pdf】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_268405
暂无简介~
格式:pdf
大小:531KB
软件:PDF阅读器
页数:17
分类:互联网
上传时间:2013-02-21
浏览量:205