【学习笔记】卡尔曼滤波

卡尔曼滤波(Kalman Filter)定义

卡尔曼滤波(Kalman filter)是一种高效率的递归滤波器(自回归滤波器),它能够从一系列的不完全及包含雜訊的测量中,估计动态系统的状态。卡尔曼滤波會根據各測量量在不同時間下的值,考慮各時間下的联合分布,再產生對未知變數的估計,因此會比只以單一測量量為基礎的估計方式要準。卡尔曼濾波得名自主要貢獻者之一的鲁道夫·卡尔曼。

卡尔曼滤波在技術領域有許多的應用。常見的有飛機及太空船的導引、導航及控制(英语:guidance, navigation, and control)[1]。卡尔曼滤波也廣為使用在時間序列的分析中,例如信号处理及计量经济学中。卡尔曼滤波也是機器人運動規劃及控制的重要主題之一,有時也包括在軌跡最佳化(英语:trajectory optimization)。

底層的模型類似隐马尔可夫模型,不過潛在變量(英语:latent variable)的狀態空間是連續的,而且所有潛在變量及可觀測變數都是正态分布。

卡尔曼滤波建立在线性代数和隐马尔可夫模型(hidden Markov model)上。其基本动态系统可以用一个马尔可夫链表示,该马尔可夫链建立在一个被高斯噪声(即正态分布的噪声)干扰的线性算子上的。系统的状态可以用一个元素为实数的向量表示。随着离散时间的每一个增加,这个线性算子就会作用在当前状态上,产生一个新的状态,并也会带入一些噪声,同时系统的一些已知的控制器的控制信息也会被加入。同时,另一个受噪声干扰的线性算子产生出这些隐含状态的可见输出。

(来源:Wikipedia

隐马尔科夫模型

隐马尔可夫模型(Hidden Markov Model;縮寫:HMM)或稱作隐性马尔可夫模型,是统计模型,它用来描述一个含有隐含未知参数的马尔可夫过程。其难点是从可观察的参数中确定该过程的隐含参数。然后利用这些参数来作进一步的分析,例如模式识别。

马尔科夫过程

在概率論及統計學中,馬可夫過程(英語:Markov process)是一個具備了馬可夫性質的隨機過程,因為俄國數學家安德雷·馬可夫得名。馬可夫過程是不具備記憶特質的(memorylessness)。換言之,馬可夫過程的条件概率僅僅與系统的當前狀態相關,而與它的過去歷史或未來狀態,都是獨立、不相關的[1]。

具備離散狀態的馬可夫過程,通常被稱為馬可夫鏈。馬可夫鏈通常使用離散的時間集合定義,又稱離散時間馬可夫鏈[2]。有些學者雖然採用這個術語,但允許時間可以取連續的值[3]。

卡尔曼滤波的使用

  1. 选择状态量、观测量
  2. 构建方程
  3. 初始化参数
  4. 代入公式迭代
  5. 调节超参数Q和R

分为两步:预测和更新
在这里插入图片描述

计算过程

  1. 先验估计
  2. 误差协方差
  3. 建立测量方程
  4. 计算卡尔曼增益
  5. 修正估计
  6. 更正误差协方差

参考bilibili

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值