第三章 卡尔曼滤波 笔记
第三章 卡尔曼滤波
3.1 引言
卡尔曼滤(Kalman)滤波和维纳(Wiener)滤波都是以最小均方误差为准则的最佳线性估计或滤波。但是,维纳滤波自由适用于平稳随机信号,而卡尔曼滤波则没有这个限制,这是它们最大的区别。另外,在处理方法上,它们也有很大不同。维纳滤波是根据全部过去和当前观测数据 x ( n ) , x ( n − 1 ) , ⋯ x(n),x(n-1),\cdots x(n),x(n−1),⋯ 来估计信号的当前值,它的解是以均方误差最小条件下所得到的系统函数 H ( z ) H(z) H(z) 或冲激响应 h ( n ) h(n) h(n) 的形式给出的;而卡尔曼滤波则不需要全部的过去观测数据,它只是根据前一个估计值 ( x ^ k − 1 ) (\widehat{x}_{k-1}) (x k−1) 和最近一个观测数据 ( y k ) (y_k) (yk) 来估计信号的当前值。它是用状态方程和递推方程进行估计的,而且所得的解是以估计值的形式给出的。
两种方法的主要区别
| 序号 | 维纳滤波 | 卡尔曼滤波 |
|---|---|---|
| 1 | 给出的是平稳太的 z 域解 H o p t ( z ) H_{opt}(z) Hopt(z) | 给出的是迭代得到的时域解 |
| 2 | 只用在标量上 | 可以用在矢量上,也适用于多输入输出 |
| 3 | 只能用在平稳随机过程中 | 可以用在变化不快的的非平稳信号 |
3.2 卡尔曼滤波器的信号模型
基本概念:根据前一个估计值和当前的观测值对信号(状态、变量)做递推估计。
这里解释一下(状态、变量),如下
A
,
B
,
C
,
D
A,B,C,D
A,B,C,D 均为系数,可以是矩阵(变换矩阵);
X
(
n
)
X(n)
X(n) 为输入,
Y
(
n
)
Y(n)
Y(n) 为观测值。
W
(
n
+
1
)
=
A
W
(
n
)
+
B
X
(
n
)
状
态
方
程
/
动
态
方
程
Y
(
n
)
=
C
W
(
n
)
+
D
X
(
n
)
观
测
方
程
/
代
数
方
程
\begin{aligned} W(n+1)&=AW(n)+BX(n) \quad 状态方程/动态方程 \\ Y(n)&=CW(n)+DX(n) \quad 观测方程/代数方程 \end{aligned}
W(n+1)Y(n)=AW(n)+BX(n)状态方程/动态方程=CW(n)+DX(n)观测方程/代数方程
卡尔曼滤波的核心思想:系统内部有很多节点,如果已知输入信号和
n
0
n_0
n0 时刻的一组节点的变量值,就可以计算出
n
≥
n
0
n\geq n_0
n≥n0 时刻输出信号以及系统内部任意节点变量值,这样的一组最少的节点变量值就是状态变量(不唯一)。
模型分析
离散时间系统的状态方程定义为
x
(
k
+
1
)
=
A
x
(
k
)
+
B
e
(
k
)
x(k+1)=Ax(k)+Be(k)
x(k+1)=Ax(k)+Be(k)
x
(
k
)
x(k)
x(k) 表示一组状态变量组成的多维状态向量,
e
(
k
)
e(k)
e(k) 是激励信号,
A
,
B
A,B
A,B 都是由系统的结构确定的矩阵。
当已知初始状态 x ( 0 ) x(0) x(0) ,可以用递推方法得到它的解 x ( k ) x(k) x(k) :
x ( 1 ) = A x ( 0 ) + B e ( 0 ) x ( 2 ) = A x ( 1 ) + B e ( 1 ) = A 2 x ( 0 ) + A B e ( 0 ) + B e ( 1 ) ⋮ x ( k ) = A k x ( 0 ) + ∑ j = 0 k − 1 A k − 1 − j B e ( j ) \begin{aligned} x(1)&=Ax(0)+Be(0) \\ x(2)&=Ax(1)+Be(1)=A^2x(0)+ABe(0)+Be(1) \\ \\ &\vdots\\ x(k)&=A^kx(0)+\sum_{j=0}^{k-1}A^{k-1-j}Be(j) \\ \end{aligned} x(1)x(2)x(k)=Ax(0)+Be(0)=Ax(1)+Be(1)=A2x(0)+ABe(0)+Be(1)⋮=Akx(0)+j=0∑k−1Ak−1−jBe(j)
上式中展开式中等号右边第一项只与初始状态和系统结构有关,与激励 e ( ⋅ ) e(\cdot) e(⋅) 无关,故称为零输入响应;第二项与初始状态无关,只与激励和系统结构有关,故称为零状态响应。
令
Φ
(
k
)
=
A
k
\Phi(k)=A^k
Φ(k)=Ak ,并代入上式,得
x
(
k
)
=
Φ
(
k
)
x
(
0
)
+
∑
j
=
0
k
−
1
Φ
(
k
−
1
−
j
)
B
e
(
j
)
x(k)=\Phi(k)x(0)+\sum_{j=0}^{k-1}\Phi(k-1-j)Be(j)
x(k)=Φ(k)x(0)+j=0∑k−1Φ(k−1−j)Be(j)
当
e
(
k
)
=
0
e(k)=0
e(k)=0 时,
x
(
k
)
=
Φ
(
k
)
x
(
0
)
=
A
k
x
(
k
)
x(k)=\Phi(k)x(0)=A^kx(k)
x(k)=Φ(k)x(0)=Akx(k) 。通过
A
k
A^k
Ak ,可以将
k
=
0
k=0
k=0 时的状态过渡到任何
k
>
0
k>0
k>0 的状态,故称
Φ
(
k
)
\Phi(k)
Φ(k) 为转移矩阵或过渡矩阵。当已知
x
(
0
)
x(0)
x(0) ,激励
e
(
j
)
e(j)
e(j) 以及
A
,
B
A,B
A,B 矩阵,就可以根据上式求得
x
(
k
)
x(k)
x(k) 的解。若用
k
0
k_0
k0 表示
k
k
k 的起始值,则从
x
(
k
0
)
x(k_0)
x(k0) 开始递推,会有
x
(
k
)
=
Φ
k
,
k
0
x
(
k
0
)
+
∑
j
=
k
0
k
−
1
Φ
k
,
j
+
1
B
e
(
j
)
x(k)=\Phi_{k,k_0}x(k_0)+\sum_{j=k_0}^{k-1}\Phi_{k,j+1}Be(j)
x(k)=Φk,k0x(k0)+j=k0∑k−1Φk,j+1Be(j)
式中
Φ
k
,
k
0
\Phi_{k,k_0}
Φk,k0 表示从
k
0
k_0
k0 状态到
k
k
k 状态的转移矩阵。若
k
0
=
k
−
1
k_0=k-1
k0=k−1 ,就可以得到一步递推公式
x
(
k
)
=
Φ
k
,
k
−
1
x
(
k
0
)
+
Φ
(
0
)
B
e
(
k
−
1
)
=
Φ
k
,
k
−
1
x
(
k
0
)
+
B
e
(
k
−
1
)
\begin{aligned} x(k)&=\Phi_{k,k-1}x(k_0)+\Phi(0)Be(k-1) \\ &=\Phi_{k,k-1}x(k_0)+Be(k-1) \end{aligned}
x(k)=Φk,k−1x(k0)+Φ(0)Be(k−1)=Φk,k−1x(k0)+Be(k−1)
假设激励源为白噪声,即
B
e
(
k
−
1
)
=
w
(
k
−
1
)
Be(k-1)=w(k-1)
Be(k−1)=w(k−1) 称为系统动态噪声,而系统是时变的,即
Φ
k
,
k
−
1
=
A
(
k
)
\Phi_{k,k-1}=A(k)
Φk,k−1=A(k) 则上式又可改写成
x
(
k
)
=
A
(
k
)
x
(
k
−
1
)
+
w
(
k
−
1
)
或
x
(
k
)
=
A
k
x
k
−
1
+
w
k
−
1
x(k)=A(k)x(k-1)+w(k-1)\quad 或 \quad x(k)=A_kx_{k-1}+w_{k-1}
x(k)=A(k)x(k−1)+w(k−1)或x(k)=Akxk−1+wk−1
上式表明
k
k
k 时刻的状态
x
(
k
)
x(k)
x(k) 可由它前一时刻状态
x
(
k
−
1
)
x(k-1)
x(k−1) 来求得,故该式又称递推状态方程。
卡尔曼滤波需要依据观测数据对系统状态进行估计,因此,除了需要建立系统的状态方程,还需要建立一个观测方程。一般假设观测系统是线性的,离散时间系统的观测方程
y
k
=
c
k
x
k
+
v
k
y_k=c_kx_k+v_k
yk=ckxk+vk
式中
y
k
y_k
yk 为观测到的信号矢量序列,
v
k
v_k
vk 为观测噪声序列,
c
k
c_k
ck 为观测矩阵
(
m
×
n
)
(m\times n)
(m×n) ,
m
m
m 为
y
k
y_k
yk 的维数,
n
n
n 为
v
k
v_k
vk 的维数,
c
k
x
k
c_kx_k
ckxk 是信号真值,它是状态变量
x
k
x_k
xk 各分量的线性组合,即
s
k
=
c
k
x
k
s_k=c_kx_k
sk=ckxk
将上式代入观测方程
y
k
=
s
k
+
v
k
y_k=s_k+v_k
yk=sk+vk
3.3 卡尔曼滤波算法
我们要研究离散系统的
n
n
n 维状态方程与
m
m
m 维观测方程,如下
x
k
=
A
k
x
k
−
1
+
w
k
−
1
y
k
=
c
k
x
k
+
v
k
\begin{aligned} x_k&=A_kx_{k-1}+w_{k-1} \\ y_k&=c_kx_k+v_k \end{aligned}
xkyk=Akxk−1+wk−1=ckxk+vk
假设动态噪声
w
k
w_k
wk 与观测噪声
v
k
v_k
vk 都是均值为零的正态噪声,且两者互不相关,即
E
[
w
k
]
=
0
,
c
o
v
[
w
k
,
w
j
]
=
E
[
w
k
w
j
T
]
=
Q
k
δ
k
j
E
[
v
k
]
=
0
,
c
o
v
[
v
k
,
v
j
]
=
E
[
v
k
v
j
T
]
=
R
k
δ
k
j
c
o
v
[
w
k
,
v
j
]
=
E
[
w
k
v
j
T
]
=
0
,
k
,
j
=
0
,
1
,
2
,
⋯
\begin{aligned} &E[w_k]=0,cov[w_k,w_j]=E[w_kw_j^T]=Q_k\delta_{kj} \\ &E[v_k]=0,cov[v_k,vj]=E[v_kv_j^T]=R_k\delta_{kj} \\ &cov[w_k,v_j]=E[w_kv_j^T]=0, \quad k,j=0,1,2,\cdots \end{aligned}
E[wk]=0,cov[wk,wj]=E[wkwjT]=QkδkjE[vk]=0,cov[vk,vj]=E[vkvjT]=Rkδkjcov[wk,vj]=E[wkvjT]=0,k,j=0,1,2,⋯
滤波条件下的卡尔曼算法
暂时不考虑噪声
w
k
w_k
wk 与
v
k
v_k
vk 从状态方程和观测方程可以得到的
x
k
x_k
xk 和
y
k
y_k
yk 分别用
x
^
k
′
\widehat{x}_k^{'}
x
k′ 和
y
^
k
′
\widehat{y}_k^{'}
y
k′ 表示,则有
x
^
k
′
=
A
k
x
^
k
−
1
y
^
k
′
=
C
k
x
^
k
′
=
C
k
A
k
x
^
k
−
1
\begin{aligned} \widehat{x}_k^{'}&=A_k\widehat{x}_{k-1} \\ \widehat{y}_k^{'}&=C_k\widehat{x}_k^{'}=C_kA_k\widehat{x}_{k-1} \end{aligned}
x
k′y
k′=Akx
k−1=Ckx
k′=CkAkx
k−1
其中
x
^
k
−
1
\widehat{x}_{k-1}
x
k−1 是
x
k
−
1
x_{k-1}
xk−1 的估计值。实际观测值
y
k
y_{k}
yk 和估计值
y
^
k
′
\widehat{y}_{k}^{'}
y
k′ 的差用
y
~
k
=
y
k
−
y
^
k
′
\widetilde{y}_k=y_k-\widehat{y}_{k}^{'}
y
k=yk−y
k′ 由于
w
k
−
1
w_{k-1}
wk−1 和
v
k
v_k
vk 的影响而产生了偏移
y
~
k
\widetilde{y}_k
y
k ,
y
~
k
\widetilde{y}_k
y
k 称为新息,它有以下重要性质:
性质1:新息序列是相互正交的序列,即
E [ y ~ n y ~ k ] = 0 E[\widetilde{y}_n\widetilde{y}_k]=0 E[y ny k]=0
性质2: n n n 时刻的新息 y ~ n \widetilde{y}_n y n 与过去所有的观测数据正交,即
E [ y ~ n y k ] = 0 , 1 ≤ k ≤ n − 1 E[\widetilde{y}_n{y}_k]=0,\quad 1 \leq k \leq n-1 E[y nyk]=0,1≤k≤n−1
性质3:表示观测数据的随机序列 { y 1 , y 2 , ⋯ , y n } \{y_1,y_2,\cdots,y_n\} {y1,y2,⋯,yn} 与表示新息过程的随机序列 { y ~ 1 , y ~ 2 , ⋯ , y ~ n } \{\widetilde{y}_1,\widetilde{y}_2,\cdots,\widetilde{y}_n\} {y 1,y 2,⋯,y n} 一一对应,即
{ y 1 , y 2 , ⋯ , y n } ∼ { y ~ 1 , y ~ 2 , ⋯ , y ~ n } \{y_1,y_2,\cdots,y_n\} \sim \{\widetilde{y}_1,\widetilde{y}_2,\cdots,\widetilde{y}_n\} {y1,y2,⋯,yn}∼{y 1,y 2,⋯,y n}
为了获得最优估计值,引入一系数矩阵
H
k
H_k
Hk 来矫正估计值
x
^
k
′
\widehat{x}_k^{'}
x
k′ ,使得均方误差
P
k
=
E
[
(
x
k
−
x
^
k
)
(
x
k
−
x
^
k
)
T
]
P_k=E[(x_k-\widehat{x}_k)(x_k-\widehat{x}_k)^T]
Pk=E[(xk−x
k)(xk−x
k)T] 最小,这样能得到更好的估计值。
x
^
k
=
A
k
x
^
k
−
1
+
H
k
(
y
k
−
y
^
k
′
)
=
A
k
x
^
k
−
1
+
H
k
(
y
k
−
C
k
A
k
x
^
k
−
1
)
A
k
x
^
k
−
1
预
测
值
H
k
加
权
矩
阵
y
k
−
C
k
A
k
x
^
k
−
1
新
息
\widehat{x}_k=A_k\widehat{x}_{k-1}+H_k(y_k-\widehat{y}_k^{'}) =A_k\widehat{x}_{k-1}+H_k(y_k-C_kA_k\widehat{x}_{k-1}) \\ \quad\\ \begin{aligned} & A_k\widehat{x}_{k-1} &预测值 \\ & H_k &加权矩阵 \\ & y_k-C_kA_k\widehat{x}_{k-1} &新息 \\ \end{aligned}
x
k=Akx
k−1+Hk(yk−y
k′)=Akx
k−1+Hk(yk−CkAkx
k−1)Akx
k−1Hkyk−CkAkx
k−1预测值加权矩阵新息
填空:求
H
k
H_k
Hk ,使
P
k
P_k
Pk 最小,最优增益
H
k
H_k
Hk 的选取与
w
k
,
v
k
w_k,v_k
wk,vk 的统计特性相关,
H
k
H_k
Hk 与
Q
k
−
1
Q_{k-1}
Qk−1 成正比,与
R
k
R_k
Rk 成反比。
说明:
如果 Q k − 1 Q_{k-1} Qk−1 增大,说明状态方程中的噪声影响会变大,预测值偏差可能会变大,需要加强新息的修正能力 H k H_k Hk 对应增大,成正比。
如果 R k R_k Rk 增大,说明观测方程中的噪声影响会变大,观测值的修正能力下降,故需要下调 H k H_k Hk ,成反比。
算法总结
1.状态方程:
x
k
=
A
k
x
k
−
1
+
w
k
−
1
x_k=A_kx_{k-1}+w_{k-1}
xk=Akxk−1+wk−1
2.测量方程:
y
k
=
c
k
x
k
+
v
k
y_k=c_kx_k+v_k
yk=ckxk+vk
3.统计特性:
E
[
w
k
]
=
0
,
c
o
v
[
w
k
,
w
j
]
=
E
[
w
k
w
j
T
]
=
Q
k
δ
k
j
E
[
v
k
]
=
0
,
c
o
v
[
v
k
,
v
j
]
=
E
[
v
k
v
j
T
]
=
R
k
δ
k
j
c
o
v
[
w
k
,
v
j
]
=
E
[
w
k
v
j
T
]
=
0
,
k
,
j
=
0
,
1
,
2
,
⋯
\begin{aligned} &E[w_k]=0,cov[w_k,w_j]=E[w_kw_j^T]=Q_k\delta_{kj} \\ &E[v_k]=0,cov[v_k,vj]=E[v_kv_j^T]=R_k\delta_{kj} \\ &cov[w_k,v_j]=E[w_kv_j^T]=0, \quad k,j=0,1,2,\cdots \end{aligned}
E[wk]=0,cov[wk,wj]=E[wkwjT]=QkδkjE[vk]=0,cov[vk,vj]=E[vkvjT]=Rkδkjcov[wk,vj]=E[wkvjT]=0,k,j=0,1,2,⋯
4.初始条件:
E
[
x
0
]
=
μ
0
,
v
a
r
[
x
0
]
=
E
[
(
x
0
−
μ
0
)
(
x
0
−
μ
0
)
T
]
=
p
0
c
o
v
[
x
0
,
w
j
]
=
E
[
x
0
w
k
T
]
=
0
c
o
v
[
x
0
,
v
j
]
=
E
[
x
0
v
k
T
]
=
0
\begin{aligned} &E[x_0]=\mu_0, var[x_0]=E[(x_0-\mu_0)(x_0-\mu_0)^T]=p_0 \\ &cov[x_0,w_j]=E[x_0w_k^T]=0 \\ &cov[x_0,v_j]=E[x_0v_k^T]=0 \end{aligned}
E[x0]=μ0,var[x0]=E[(x0−μ0)(x0−μ0)T]=p0cov[x0,wj]=E[x0wkT]=0cov[x0,vj]=E[x0vkT]=0
5.递推公式:
x
^
k
=
A
k
x
^
k
−
1
+
H
k
(
y
k
−
C
k
A
k
x
^
k
−
1
)
\widehat{x}_k=A_k\widehat{x}_{k-1}+H_k(y_k-C_kA_k\widehat{x}_{k-1})
x
k=Akx
k−1+Hk(yk−CkAkx
k−1)
6.增益方程:
H
k
=
P
k
′
C
k
T
(
C
k
P
k
′
C
k
T
+
R
k
)
−
1
H_k=P_k^{'}C_k^T(C_kP_k^{'}C_k^T+R_k)^{-1}
Hk=Pk′CkT(CkPk′CkT+Rk)−1
7.均方误差:
P
k
′
=
A
k
P
k
−
1
A
k
T
+
Q
k
−
1
未
考
虑
噪
声
P
k
=
(
I
−
H
k
C
k
)
P
k
′
滤
波
的
\begin{aligned} & P_k^{'}=A_kP_{k-1}A_k^T+Q_{k-1} &未考虑噪声 \\ & P_k=(I-H_kC_k)P_k^{'} &滤波的 \end{aligned}
Pk′=AkPk−1AkT+Qk−1Pk=(I−HkCk)Pk′未考虑噪声滤波的
例题 3.1 设
x
k
x_k
xk 与
y
k
y_k
yk 为实离散时间随机过程,具有功率谱密度
Φ
x
x
(
z
)
=
0.36
(
1
−
0.8
z
−
1
)
(
1
−
0.8
z
)
Φ
v
v
(
z
)
=
1
,
Φ
v
x
(
z
)
=
0
\Phi_{xx}(z)=\frac{0.36}{(1-0.8z^{-1})(1-0.8z)} \\ \Phi_{vv}(z)=1,\Phi_{vx}(z)=0
Φxx(z)=(1−0.8z−1)(1−0.8z)0.36Φvv(z)=1,Φvx(z)=0
并已知
x
^
−
1
=
0
,
P
0
=
v
a
r
[
x
0
]
=
1
\widehat{x}_{-1}=0,P_0=var[x_0]=1
x
−1=0,P0=var[x0]=1 ,在
k
=
0
k=0
k=0 时开始观测信号
y
k
(
y
k
=
x
k
+
v
k
)
y_k(y_k=x_k+v_k)
yk(yk=xk+vk) ,试用卡尔曼滤波公式求
x
^
k
\widehat{x}_k
x
k 。
解:由
Φ
x
x
(
z
)
\Phi_{xx}(z)
Φxx(z) 可因式分解成如下形式
Φ
x
x
(
z
)
=
0.36
z
−
1
1
−
0.8
z
−
1
⋅
z
1
−
0.8
z
\Phi_{xx}(z)=0.36\frac{z^{-1}}{1-0.8z^{-1}}\cdot\frac{z}{1-0.8z}
Φxx(z)=0.361−0.8z−1z−1⋅1−0.8zz
注 :这里的分解不能分解成下面这种形式
Φ x x ( z ) = 0.36 1 1 − 0.8 z − 1 ⋅ 1 1 − 0.8 z \Phi_{xx}(z)=0.36\frac{1}{1-0.8z^{-1}}\cdot\frac{1}{1-0.8z} Φxx(z)=0.361−0.8z−11⋅1−0.8z1
因为如果分解成这种形式那么下面推导出来的观测方程中 w w w 前会多一个系数 z z z 导致 w k − 1 w_{k-1} wk−1 时移变成 w k w_k wk !!!
所以有
σ
w
2
=
0.36
,
B
(
z
)
=
z
−
1
1
−
0.8
z
−
1
,
B
(
z
−
1
)
=
z
1
−
0.8
z
\sigma_w^2=0.36,\quad B(z)=\frac{z^{-1}}{1-0.8z^{-1}},\quad B(z^{-1})=\frac{z}{1-0.8z}
σw2=0.36,B(z)=1−0.8z−1z−1,B(z−1)=1−0.8zz
有
B
(
z
)
B(z)
B(z) 对应的表达式可以推出时域方程
x
k
=
0.8
x
k
−
1
+
w
k
−
1
A
k
=
0.8
x_k=0.8x_{k-1}+w_{k-1} \\ A_k = 0.8
xk=0.8xk−1+wk−1Ak=0.8
注 :这里分析方法式这样的
X ( z ) = B ( z ) W ( z ) X(z)=B(z)W(z) X(z)=B(z)W(z)
得到
( 1 − 0.8 z − 1 ) X ( z ) = z − 1 W ( z ) (1-0.8z^{-1})X(z)=z^{-1}W(z) (1−0.8z−1)X(z)=z−1W(z)
从而得到时域表达式。但是!!!! 注意没有 X ( z ) X(z) X(z) 这个东西, x ( k ) x(k) x(k) 是一个无始无终的序列不存在 z 变换,这步不能出现在试卷上!!! 这步不能出现在试卷上!!! 这步不能出现在试卷上!!!
根据
y
k
=
x
k
+
v
k
y_k=x_k+v_k
yk=xk+vk 以及
Φ
x
x
(
z
)
\Phi_{xx}(z)
Φxx(z) d得
C
k
=
1
,
Q
k
=
0.36
,
R
k
=
v
a
r
[
v
k
]
=
Φ
v
v
(
0
)
=
1
C_k=1,Q_k=0.36,R_k=var[v_k]=\Phi_{vv}(0)=1
Ck=1,Qk=0.36,Rk=var[vk]=Φvv(0)=1
将上式代入卡尔曼滤波算法得
x
^
k
=
0.8
x
^
k
−
1
+
H
k
(
y
k
−
0.8
x
^
k
−
1
)
H
k
=
P
k
′
(
P
k
+
1
)
−
1
P
k
′
=
0.64
P
k
−
1
+
0.36
P
k
=
(
1
−
H
k
)
P
k
′
\begin{aligned} & \widehat{x}_{k}=0.8\widehat{x}_{k-1}+H_k(y_k-0.8\widehat{x}_{k-1}) \\ & H_k=P_k^{'}(P_k+1)^{-1} \\ & P_k^{'}=0.64P_{k-1}+0.36 \\ & P_k=(1-H_k)P_k^{'} \\ \end{aligned}
x
k=0.8x
k−1+Hk(yk−0.8x
k−1)Hk=Pk′(Pk+1)−1Pk′=0.64Pk−1+0.36Pk=(1−Hk)Pk′
解上述方程组得
P
k
=
0.64
P
k
−
1
+
0.36
0.64
P
k
−
1
+
1.36
,
P
k
=
H
k
P_k=\frac{0.64P_{k-1}+0.36}{0.64P_{k-1}+1.36},\quad P_k=H_k
Pk=0.64Pk−1+1.360.64Pk−1+0.36,Pk=Hk
求稳态解,用
p
∞
p_{\infty}
p∞ 代替
P
k
,
P
k
−
1
P_{k},P_{k-1}
Pk,Pk−1 得
0.64
P
∞
2
+
0.72
P
∞
−
0.36
=
0
0.64P_{\infty}^2+0.72P_{\infty}-0.36=0
0.64P∞2+0.72P∞−0.36=0
解二次方程并取正解
P
∞
=
3
8
P_{\infty}=\frac{3}{8}
P∞=83
所以
H
k
=
P
k
=
P
∞
=
3
8
H_k=P_k=P_{\infty}=\frac{3}{8}
Hk=Pk=P∞=83
x ^ k = 0.8 x ^ k − 1 + 3 8 ( y k − 0.8 x ^ k − 1 ) = 0.5 x ^ k − 1 + 3 8 y k \begin{aligned} \widehat{x}_{k} &=0.8\widehat{x}_{k-1}+\frac{3}{8}(y_k-0.8\widehat{x}_{k-1}) \\ &=0.5\widehat{x}_{k-1}+\frac{3}{8}y_k \end{aligned} x k=0.8x k−1+83(yk−0.8x k−1)=0.5x k−1+83yk
更多推荐
所有评论(0)