EE263 Lecture 20 Observability and state estimation
课程主页:https://see.stanford.edu/Course/EE263
这次回顾第十九讲,这一讲结束了可控性和状态转移,介绍了可观测性和状态观测。
无限时间的最小能量
矩阵
总存在,并且给出了到达$x_{\mathrm{des}}$所需最小能量(对$t$没有约束的情形下)
- 如果$A$稳定,那么$P>0$(即,无法免费到达任何地方)
- 如果$A$不稳定,那么$P$可能有非平凡零空间
- $Pz=0,z\neq 0$说明可以用能量为任意小的$u$到达$z$
一般的状态转移
考虑将将$x\left(t_{i}\right)$转移到$x\left(t_{f}\right)=x_{\mathrm{des}},t_f >f_i$
因为
所以$u$将$x(t_i)$转移到$x(t_f)=x_{\text{des}} \Leftrightarrow$$u$将$x(0)=0$转移到$x\left(t_{f}-t_{i}\right)=x_{\mathrm{des}}-e^{\left(t_{f}-t_{i}\right) A} x\left(t_{i}\right)$
这说明
- 一般的的状态转移可以化成可达性问题
- 如果系统是可控的,任何状态转移都可以按如下方式做到
- 在$0$时间输入单位脉冲
- 在任何正时间利用非单位脉冲输入
Lecture 19 可观测性和状态观测
建立状态观测
考虑离散时间系统
- $w$为状态扰动项或噪声
- $v$为传感器噪声或误差
- $A,B,C,D$已知
- $u,y$在$[0,t-1]$时刻被观测到
- $w,v$未知,但是可以用统计方法描述,或者假设很小
状态估计问题
状态估计问题:从以下量中估计$x(s)$
- $s=0$:估计初始状态
- $s=t-1$:估计当前状态
- $s=t$:估计(预测)下一个状态
产生估计$\hat{x}(s)$的算法或系统被称为状态估计器。
$\hat{x}(s)$用$\hat{x}(s | t-1)$表示,用来体现估计依赖于的信息。
无噪声情形
让我们在没有状态或测量误差的条件下找到$x(0)$:
其中$x(t) \in \mathbb{R}^{n}, u(t) \in \mathbb{R}^{m}, y(t) \in \mathbb{R}^{p}$
那么我们有
其中
- $\mathcal O_t$将初始状态映射到$[0,t-1]$范围内的输出
- $\mathcal T_t$将输入映射到$[0,t-1]$范围内的输出
因此我们有
右边已知,只需决定$x(0)$。
因此:
- 可以唯一决定$x(0)$,如果$\mathcal{N}\left(\mathcal{O}_{t}\right)=\{0\}$
- $\mathcal{N}\left(\mathcal{O}_{t}\right)$给出决定$x(0)$的困惑度
- 如果$x(0)\in \mathcal N(\mathcal O_t)$,输出在区间$[0, t-1]$上为$0$
- 输入$u$不影响决定$x(0)$的能力;它的效果可以去除
可观测性矩阵
根据C-H定理,每个$A^k$是$A^{0}, \ldots, A^{n-1}$的线性组合
因此对于$t \geq n, \mathcal{N}\left(\mathcal{O}_{t}\right)=\mathcal{N}(\mathcal{O})$,其中
被称为可观测性矩阵。
如果$x(0)$可以从$[0, t-1]$范围内的$u, y$推导出来,那么$x(0)$可以从$[0, n-1]$范围内的$u, y$推导出来。
$\mathcal{N}(\mathcal{O})$被称为无法观测的子空间;描述了由输入和输出决定状态的困惑度。
系统被称为可观测的,如果$\mathcal{N}(\mathcal{O})=\{0\}$,即$\operatorname{Rank}(\mathcal{O})=n$
可观测性——可控制性(对偶)
令$(\tilde{A}, \tilde{B}, \tilde{C}, \tilde{D})$为$(A, B, C, D)$的对偶系统,即
对偶系统的可控制性矩阵为
类似的,我们有$\tilde{\mathcal{O}}=\mathcal{C}^{T}$
因此,系统是可观测(可控制)当且仅当系统是可控制(可观测)
事实上,
即,不可观测子空间是对偶系统的可控子空间的正交补
无噪声情形的观测器
假设$\operatorname{Rank}\left(\mathcal{O}_{t}\right)=n$,令$F$为$\mathcal O_t $的左逆矩阵,即$F \mathcal{O}_{t}=I$
那么,我们有观测器
实际上我们有
不可观测集的不变性
事实:不可观测子空间$\mathcal N(\mathcal O)$不变,即,如果$z \in \mathcal{N}(\mathcal{O})$,那么$A z \in \mathcal{N}(\mathcal{O})$
证明:假设$z \in \mathcal{N}(\mathcal{O})$,那么对于$k=0, \ldots, n-1$,我们有
显然对$k=0, \ldots, n-2$,我们有
此外,由C-H定理
其中
连续时间的可观测性
考虑无传感器和状态噪声的连续时间系统:
我们能否从$u,y$估计出$x$?
我们来计算$y$的导数:
因此我们有
其中$\mathcal O$为可观测矩阵,以及
将上式重写为
右式已知;$x$需要被决定。
因此,如果$\mathcal{N}(\mathcal{O})=\{0\}$,我们可以由最多$n-1$阶的$u(t),y(t)$计算出$x(t)$。
利用$\mathcal O$的左逆$F$可得:
相反的情形
假设$z \in \mathcal{N}(\mathcal{O})$,$u$为任意输入,$x,y$表示状态和输出,即
状态轨迹$\tilde{x}=x+e^{t A} z$满足
即,输入/输出信号$u,y$同时满足状态轨迹$x,\tilde x$,因此如果系统不可观测,那么无法计算出$x$
最小二乘观测器
考虑带有传感器噪声的离散时间系统:
我们假设$\operatorname{Rank}\left(\mathcal{O}_{t}\right)=n$(因此,系统是可观测的)
最小二乘估计器使用伪逆
其中$\mathcal{O}_{t}^{\dagger}=\left(\mathcal{O}_{t}^{T} \mathcal{O}_{t}\right)^{-1} \mathcal{O}_{t}^{T}$
解释:$\hat{x}_{\mathrm{ls}}(0)$最小化如下两项的偏差
- 将被观测到的输出$\hat y$,给定输入$u$和初始状态$x(0)$
- 已经被观测到的输出$y$
该偏差可以由$\sum_{\tau=0}^{t-1}|\hat{y}(\tau)-y(\tau)|^{2}$度量
将最小二乘初始状态估计表达为
其中$\tilde{y}=y-h * u$,$h$为脉冲响应。
最小二乘观测器的不确定性椭球
因为$\mathcal{O}_{t}^{\dagger} \mathcal{O}_{t}=I$,我们有
其中$\tilde{x}(0)$为初始状态的估计误差
实际上,如果传感器噪声为$0$,那么$\hat{x}_{\mathrm{ls}}(0)=x(0)$
假设传感器噪声位置,但是均方误差$\le \alpha$,即
可能的估计误差为椭球
$\mathcal{E}_{\mathrm{unc}}$为$x(0)$的不确定性椭球。
椭球的形状由如下矩阵决定
最大范数误差为
无限时间的不确定椭球
矩阵
总是存在,并且给出了在越来越长时间内从$u,y $估计$x(0)$的极限不确定性:
- 如果$A$稳定,$P>0$:即使使用无限次的测量,也无法完美地估计初始状态
- 如果$A$不稳定,那么$P$有非平凡零空间:随着越来越多的信号$u$和$y$被观察到,初始状态估计误差变得任意小(至少在某些方向上)
连续时间最小二乘状态估计
假设$\dot{x}=A x+B u, y=C x+D u+v$可观测
给定$u(\tau), y(\tau), 0 \leq \tau \leq t$,初始状态$x(0)$的最小二乘估计:选择$\hat{x}_{\mathrm{ls}}(0)$最小化积分二次残差:
其中$\tilde{y}=y-h * u$
展开得到$J=x(0)^{T} Q x(0)+2 r^{T} x(0)+s$,其中
令$\nabla_{x(0)} J$为$0$,我们得到最小二乘观测器
估计误差为
因此,如果$v=0$,那么$\hat{x}_{\mathrm{ls}}(0)=x(0)$