当前位置: 首页 > news >正文

东莞设计网站了解网站开发的背景

东莞设计网站,了解网站开发的背景,建设网站需要哪个语言编译器,东莞网站优化方法目录简介1.原理介绍场景假设(1).下一时刻的状态(2).增加系统的内部控制(3).考虑运动系统外部的影响(4).后验估计:预测结果与观测结果的融合卡尔曼增益K2.卡尔曼滤波计算过程(1).预测阶段(先验估计阶段)(2).更新阶段(后验估计阶段&…

目录

    • 简介
    • 1.原理介绍
      • 场景假设
      • (1).下一时刻的状态
      • (2).增加系统的内部控制
      • (3).考虑运动系统外部的影响
      • (4).后验估计:预测结果与观测结果的融合
        • 卡尔曼增益K
    • 2.卡尔曼滤波计算过程
      • (1).预测阶段(先验估计阶段)
      • (2).更新阶段(后验估计阶段)
    • 3.代码举例

简介

我们可以将卡尔曼滤波看做一种运动模型,它可以在任何含有不确定信息的动态系统中,对系统的下一步走向做出一定的预测,无论是在单目标还是多目标领域都是很常用的一种算法。它最大的优点就是采用递归的方式来解决线性滤波的问题,只需要当前的观测值和前一个周期的预测值就能够进行状态估计。

1.原理介绍

场景假设

假设有一个小车在路上行驶,小车的初始位置和速度用一个状态向量表示:
x^t=[position,velocity]简写为x^t=[pt,vt]\hat x_t=[position,velocity]\\ 简写为\\ \hat x_t=[p_t,v_t] x^t=[position,velocity]简写为x^t=[pt,vt]
因为用两个变量表示了状态向量,所以系统中这两个变量的不确定性和相关性可以用一个协方差矩阵来表示:
Pt=[∑pp∑pv∑vp∑vv]P_t=\begin{bmatrix} \sum_{pp}\quad\sum_{pv}\\ \sum_{vp}\quad\sum_{vv} \end{bmatrix} Pt=[pppvvpvv]
比如前一时刻的速度Vt−1V_{t-1}Vt1和下一时刻的速度VtV_tVt存在着某种关联,不可能从0突变成光速;

比如前一时刻的速度Pt−1P_{t-1}Pt1和下一时刻的速度PtP_tPt也存在着某种关联,不可能从我国某地突然变成火星某地。

(1).下一时刻的状态

当小车在做匀速运动时,小车下一时刻的位置和速度如下:
{pt=pt−1+vt−1Δtvt=vt−1\begin{cases} p_t=p_{t-1}+v_{t-1}\Delta t\\ v_t=v_{t-1} \end{cases} {pt=pt1+vt1Δtvt=vt1

矩阵形式为:
[ptvt]=[1Δt01][pt−1vt−1]=Ft[pt−1vt−1]\begin{bmatrix} p_t\\ v_{t} \end{bmatrix}= \begin{bmatrix} 1\quad\Delta t\\ 0\quad1 \end{bmatrix} \begin{bmatrix} p_{t-1}\\ v_{t-1} \end{bmatrix}=F_t\begin{bmatrix} p_{t-1}\\ v_{t-1} \end{bmatrix}[ptvt]=[1Δt01][pt1vt1]=Ft[pt1vt1]

即:x^t=[1Δt01]x^t−1=Ftx^t−1\hat x_t=\begin{bmatrix} 1\quad\Delta t\\ 0\quad1 \end{bmatrix}\hat x_{t-1}=F_t\hat x_{t-1} x^t=[1Δt01]x^t1=Ftx^t1
状态转移矩阵为,表示小车状态随时间的变化:
Ft=[1Δt01]F_t=\begin{bmatrix}1\quad\Delta t\\0\quad1\end{bmatrix} Ft=[1Δt01]
系统的不确定性和相关性用PtP_tPt表示,而下一时刻的协方差矩阵可表示为(T表示矩阵的转置):
Pt=FtPt−1FtTP_t=F_tP_{t-1}F^T_t Pt=FtPt1FtT

(2).增加系统的内部控制

如果对小车进行控制,比如加速和减速,假设它的加速度为ata_tat,则小车下一时刻的位置和速度是:

{pt=pt−1+vt−1Δt+12atΔt2vt=vt−1+atΔt\begin{cases} p_t=p_{t-1}+v_{t-1}\Delta t+\frac{1}{2}a_t\Delta t^2\\ v_t=v_{t-1}+a_t\Delta t \end{cases} {pt=pt1+vt1Δt+21atΔt2vt=vt1+atΔt
矩阵形式为:
[ptvt]=[1Δt01][pt−1vt−1]+[Δt22Δt]at=Ft[pt−1vt−1]+Btut\begin{bmatrix} p_t\\ v_{t} \end{bmatrix}= \begin{bmatrix} 1\quad\Delta t\\ 0\quad1 \end{bmatrix} \begin{bmatrix} p_{t-1}\\ v_{t-1}\end{bmatrix}+\begin{bmatrix}\frac{\Delta t^2}{2}\\\Delta t\end{bmatrix}a_t= F_t\begin{bmatrix} p_{t-1}\\ v_{t-1} \end{bmatrix}+B_t u_t [ptvt]=[1Δt01][pt1vt1]+[2Δt2Δt]at=Ft[pt1vt1]+Btut
状态控制矩阵Bt=[Δt22Δt]B_t=\begin{bmatrix} \frac{\Delta t^2}{2}\\ \Delta t \end{bmatrix}Bt=[2Δt2Δt],表明加速度如何改变小车的状态;

状态控制向量utu_tut,表明控制的力度大小和方向。

(3).考虑运动系统外部的影响

小车运动时有很多因素可以对它的位置速度造成影响,比如风俗,路况等,假设外部对小车造成的系统状态误差为wtw_twt,并且它服从高斯分布wtN(0,Qt)w_t~N(0,Q_t)wt N(0,Qt),代入之前的小车运行控制方程,可以得到最终完整的状态预测方程:
x^t=Ftx^t−1+Btut+wtPt=FtPt−1FtT+Qt\hat x_t=F_t\hat x_{t-1}+B_tu_t+w_t\\ P_t=F_tP_{t-1}F^T_t+Q_t x^t=Ftx^t1+Btut+wtPt=FtPt1FtT+Qt
除了小车运动的场景,其他物体的状态变化

一般情况下,假设wtw_twt为0即可,将上述公式规范化得到:
x=Fx+BuP=FPFT+Qx=Fx+Bu\\ P=FPF^T+Q x=Fx+BuP=FPFT+Q

(4).后验估计:预测结果与观测结果的融合

在等3步中我们预测出了小车的下一时刻的运动状态,将它的结果称为预测结果,也称为先验估计;不过实际中,汽车上会有里程表、GPS等设备也会提供小车下一时刻的运动状态,称其结果为观测结果

在实际情况中,预测结果和观测结果都有一定的误差,它们的结果都不一定十分准确,而卡尔曼滤波最重要的作用就是将两者融合,充分利用两者的不确定性得到更加准确的结果,称之为后验估计

卡尔曼增益K

融合阶段需要用到一个关键的系数卡尔曼增益K,其公式如下(推导过程略):
K=PHT(HPHT)+RK=\frac{PH^T}{(HPH^T)+R} K=(HPHT)+RPHT
P表示变量的不确定性和相关性的协方差矩阵;

R表示传感器观测结果的噪声的协方差矩阵,因为观测值的结果也不一定完美;

H表示预测值和观测值之间的某种关系矩阵,因为它们的结果存在的一定交合;

整体来说,卡尔曼增益表示对观测结果借鉴的程度,相当于一个权重项,让算法知道怎么利用观测与预测进行估计,目的就是让最优估计值的方差更小,是卡尔曼滤波的核心。

2.卡尔曼滤波计算过程

卡尔曼滤波的计算一般分为两步:预测阶段更新阶段

(1).预测阶段(先验估计阶段)

x=Fx+BuP=FPFT+Qx=Fx+Bu\\ P=FPF^T+Q x=Fx+BuP=FPFT+Q

(2).更新阶段(后验估计阶段)

K=PHT((HPHT)+R)−1x=x+(K(z−(Hx)))P=(I−(KH))PK=PH^T((HPH^T)+R)^{-1}\\ x=x+(K(z-(Hx)))\\ P=(I-(KH))P K=PHT((HPHT)+R)1x=x+(K(z(Hx)))P=(I(KH))P

x表示系统状态;

z表示传感器的观测结果;

F表示状态转移矩阵;

B表示状态控制矩阵;

u表示状态控制向量;

H表示预测和观测的关系矩阵;

P表示变量的不确定性和相关性的协方差矩阵;

R表示传感器观测结果的噪声的协方差矩阵;

Q表示不确定因素对系统预测结果造成误差的协方差矩阵。

QR根据实际情况来定,不断调优根据效果选择一个最优解;

在实际计算中,我们需要关注的是系统的状态x,和它的误差协方差矩阵P卡尔曼增益K

3.代码举例

http://www.yayakq.cn/news/479224/

相关文章:

  • 大庆 网站制作电商平台建设有哪些内容呢
  • 怎样做金融理财网站电子网站建设公司
  • 网站备案中专业手机网站建设公司
  • 网页网站动作效果做的比较棒wordpress 主题 下载
  • 台州网站制作报价域名如何解绑一个网站
  • 温州手机网站制作公司电话用ssh做网站
  • 如何做网站网页表白业务推广平台
  • 我看别人做系统就直接网站下载文件中山软件开发
  • 哪些网站做企业招聘不要花钱注册自己的网站
  • 网站开发的数据库设计实体是什么网页制作心得2000字
  • 给公司做网站要多少钱团队做网站分工
  • 外贸平台哪个网站最好知乎漯河市源汇区建设局网站
  • 2015帝国cms网站网站设计的资质叫什么
  • WordPress仿站助手海南网红打卡旅游景点
  • 有经验的大良网站建设施工企业项目负责人现场带班时间少于80%施工时间扣多少分
  • 建个外国网站做建筑材料的网站有哪些
  • 做面料哪个网站好常德网站建设套餐报价
  • 遂宁市建设银行网站静态网站模版
  • 网站如何做会员登录页面wordpress king模板
  • 宁波网站推广代运营好看的网站界面设计
  • 众享城市生活app缴费搜索引擎优化介绍
  • 网站建设方案及报价单网站建设技术服务的方式是什么
  • 做推文加入视频的网站都有什么类别的网站
  • 潍坊品牌网站建设360信息流广告平台
  • 海口模板建站平台网站接入商
  • 中网互联网站建设网站平台搭建和维护需要什么
  • 网站改版的费用可以做产品推广的网站
  • 如何查一个网站的备案物流网站建设计划书
  • 做个一般的网站要多少钱大连金州
  • 做视频类网站需要哪些许可证湖南中高风险地区