Kalmanfilter
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
•前向预测
1
ˆˆ()()()()()p
k y n s
n x n h k x n k +====−∑∑∑+=+=−=−+=−=p
k pk p k pk k n x a k n x a n x n x
n x n e 0
1
)()()()(ˆ)()(a p0=1
1
()p
pk k a x n k +==−−
∑一步前向预测器结构图
E [b (n )x *(n -p+l )]=0 l =1, 2, …, p
12()()()0
1,2,,p
pk k E x n p a x n p k x n p l l p
=⎡⎤⎛⎞
−+−+−+==⎢⎥⎜⎟⎝⎠⎣⎦
∑"∑==−+p
k xx pk xx l k r a l r 1
)()(*
ˆ[()()]0E b n x
n p −=()[]2
min
11
ˆ()()()()()()()()()(0)()
p
pk k p
xx pk xx k E b n E b n x n p x n p E b n x n p E x n p a x n p k x n p r a r k ==⎡⎤=−−−=−⎡⎤⎣⎦⎣⎦⎡⎤⎛⎞
=−+−+−⎢⎥
⎜⎟⎝⎠⎣⎦
=+∑∑
12(0)(1)(1)(0)(1)
(0)(2)(1)(1)(1)(2)(0)xx xx xx xs xx xx xx xs xs M xx xx xx r r r M h r h r r r M r r M h r M r M r ⎡⎤−⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥−⎢⎥⎢⎥⎢⎥⋅=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥−⎢⎥⎢
⎥⎢⎥−−⎣⎦⎣⎦⎣⎦""#####¾维纳-霍夫方程
⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡=⎥
⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡−−00]|)([|1)0()1()()1()0()1()()1()0(min 21##"###""n e E a a r p r p r p r r r p r r r pp p xx xx xx xx xx xx xx xx xx ¾Yule-Walker 方程
¾Yule-Walker 方程具有以下特点:
(1) 除了第一个方程外,其余都是齐次方程;
(2) 与维纳-霍夫方程相比,不需要知道r xs (m )。
(3) 由方程组的p +1个方程,可以确定a pk , k =1, 2, …, p
和E [e 2(n )]min ,共计p +1个未知数。
¾前向预测误差为1ˆ()()()()()
p pk k e n x n x
n x n a x n k +==−=+−∑¾AR 信号模型为()
1
()()p k k x n a x n k w n +==−−+∑()()()()2
22
min ,pk k w a a e n w n E e n E w n σ==⎡⎤⎡⎤==⎣⎦⎣⎦
第三章卡尔曼(Kalman)滤波
卡尔曼滤波它是根据前一个估计值和最近一个观测值来估计信号的当前值,不需要过去全部的观测值,它是用状态方程和递推方法以均方误差最小为原则进行估计的,对信号的平稳性和时不变性不做要求;
维纳滤波实际是如何最好地加权过去的输入数据,以决定当前的输出,其权重就是冲击响应。但离散维纳滤波求解繁琐,计算量大难以实现实时处理以及多个变量同时估计;
卡尔曼滤波采用随机过程的状态空间模型,可同时估计多变量,利用观测数据提出递推算法,便于实时处理。
1()()()
()(1)(1)
x n s n w n s n as n w n =+=−+−1、状态方程和量测方程
假定信号s (n )是由白噪声w 1(n )激励一个线性系统A (z )
的响应,响应和激励的时域关系表示为:
s(n) —状态变量,矢量形式为S(k);
w1(n)—过程噪声,矢量形式为W1(k);A(k)为传递矩阵(状态转移矩阵);x(n)—观测数据,X(k)是观测矢量;
w(n)—量测噪声,W(k)是误差矢量;
状态方程:量测方程:
=−+−
1
S(k)A(k)S(k1)W(k1) =+
X(k)S(k)W(k)
多维量测方程=+
X(k)C(k)S(k)W(k)
C(k)是观测矩阵,当X(k)的维数与S(k)的维数不同时引入。
卡尔曼滤波的信号模型
寻找最小均方误差下信号S(k)的估计值
假设A(k)、C(k)、X(k)以及信号的上一个估计值已知基本思想:先不考虑噪声的影响,得到状态矢量和观测矢量的估计值,再用估计误差加权后校正状态矢量的估计值,使状态矢量估计误差的均方值最小
2、卡尔曼滤波的一步递推法算法
min T S'(k)X'(k)X(k)=X(k)-X'(k)
S(k)S(k)=S(k)-S(k)
S(k)S (k)S(k)E →→→→⎡⎤→→⎣⎦
量测方程校正
1)(k S A(k)(k)S
−=′ˆˆ1)(k S C(k)A(k)(k)S C(k)(k)X
−=′=′ˆˆˆ(k)X X(k)(k)X ′−=ˆ~忽略噪声:新息(innovation )用修正矩阵H(k)和估计误差来校正状态变量
ˆˆˆˆ=−+=−+−−S(k)A(k)S(k
1)H(k)X(k)A(k)S(k
1)H(K)[X(k)C(k)A(k)S(k 1)] (k)S
S(k)(k)S ˆ~−=T =ε(k)E[S(k)S(k)]
均方误差卡尔曼滤波的关键:选择合适的H(k)使ε(k)最小