可观测性

控制理论中的可观察性（observability）是指系统可以由其外部输出推断其其内部状态的程度。系统的可观察性和可控制性是数学上对偶的概念。可观察性最早是匈牙利裔工程师鲁道夫·卡尔曼针对线性动态系统提出的概念。若以信号流图来看，若所有的内部状态都可以输出到输出信号，此系统即有可观察性。

## 定义

若以正式的定义来看，一系统具有可观察性当且仅当，针对所有的状态向量及控制向量，都可以在有限时间内，只根据输出信号来识别目前的状态（此定义比较接近状态空间的表示方式）。比较不正式的说法，就表示可以根据系统输出来判断整个系统的行为。若系统不可观察，表示其中部分状态的值无法透过输出信号来判定。这也表示控制器无法知道这个状态的值（此时就要透过其他的估测技术才能知道其状态）。

在用状态空间表示的线性时不变系统中，有一个简单的方式来确认系统是否可观测。考虑一个有$n$个状态的单一输入单一输出系统，若以下可观测性矩阵（observability matrix）中的行秩

$$\mathcal{O}=\begin{bmatrix} C \\ CA \\ CA^2 \\ \vdots \\ CA^{n-1} \end{bmatrix}$$

等于$n$，则此系统为可观测系统。此一测试的原理是若$n$个行是线性独立的，则$n$个状态可以透过输出变数 $y(k)$的线性组合来得知。

有些系统会利用对输出的量测来估计系统的状态，这类功能的模组称为状态观测器（state observer）或简称为观测器（observer）。

可观测性指数

线性时不变系统的可观测性指数（Observability index） $v$是满足$\text{rank}{(\mathcal{O}_v)} = \text{rank}{(\mathcal{O}_{v+1})}$的最小自然数，其中

$$\mathcal{O}_v=\begin{bmatrix} C \\ CA \\ CA^2 \\ \vdots \\ CA^{v-1} \end{bmatrix}.$$

不可观测子空间

线性系统(A,,C)不可观测子空间N是线性映射G的核

$$G: R^{n} \rightarrow \mathcal{C}(t_0,t_1;R^n)$$

$x_0 \mapsto C\Phi(t_{0},t_{1}) x_0$,

其中$\mathcal{C}(t_0,t_1;R^n)$是连续函数$f: [t_0,t_1] \to R^n$ 的集合，且$\Phi(t_{0},t_{1})$是和A相关的状态传递矩阵。

若(A,,C)是自主系统（autonomous system），N可以改写为

$$N = \bigcap_{k=0}^{n-1} \ker(CA^{k})= \ker{\mathcal{O}}$$

例子：考虑以下的A和C：

$A =\begin{bmatrix} 1 &0 \\ 0 & 1 \end{bmatrix} <pre>$, $</pre> C =\begin{bmatrix} 0 &1 \\ \end{bmatrix} <pre>$.

若可观测性矩阵定义为$\mathcal{O}:= (C^T|A^TC^T)^T$，可以计算如下：

$$\mathcal{O} =\begin{bmatrix} 0 &1 \\ 0 & 1 \end{bmatrix} <pre>$$

因此可以计算可观测性矩阵的核。

$$\mathcal{O} v = 0$$

$$\begin{bmatrix} 0 &1\\ 0 & 1 \end{bmatrix} \begin{bmatrix} v1\\ v2 \end{bmatrix} = \begin{bmatrix} 0\\ 0 \end{bmatrix} \to v=\begin{bmatrix} v1\\ 0 \end{bmatrix} \to v=v1\begin{bmatrix} 1\\ 0 \end{bmatrix} <pre>$$

$$Ker(\mathcal{O})= N = span\{ \begin{bmatrix} 1\\ 0 \end{bmatrix} \}$$

若Rank($\mathcal{O}$)=n，n为可观测性矩阵中独立行的个数，表示系统可观测。在此例中det($\mathcal{O}$)=0，因此Rank($\mathcal{O}$)<n，此系统不可观测。

因为不可观测子空间为$R^n$的子空间，因此以下的性质成立：

- $$N \subset Ke(C)$$
- $$A(N) \subset N$$
- $$N= \bigcup { \{ S \subset R^n \mid S \subset Ke(C), A(S) \subset N \}}$$

可侦测性

可侦测性（detectability）是比可观测性略弱一些的条件。若系统内所有不可侦测的状态都是稳定的，此系统即具有可侦测性。

## 线性时变系统

考虑连续时间下的线性时变系统

$$\dot{\mathbf{x}}(t) = A(t) \mathbf{x}(t) + B(t) \mathbf{u}(t) \,$$

$$\mathbf{y}(t) = C(t) \mathbf{x}(t). \,$$

若$t \in [t_0,t_1];$的时间内，$A,B$和$C$矩阵都已知，而输入及输出$u$和$y$也都已知，可以透过一个额外在$M(t_0,t_1)$核之内的向量来确认$x(t_0)$，$M(t_0,t_1)$定义如下

$$M(t_0,t_1) = \int_{t_0}^{t_1} \phi(t,t_0)^{T}C(t)^{T}C(t)\phi(t,t_0) dt$$

其中$\phi$为状态转换矩阵。

若$M(t_0,t_1)$为非奇异方阵，可以找到一个唯一的$x(t_0)$。而且若$x_1 - x_2$是在$M(t_0,t_1)$的核内，不可能由$x_2$找到对应的启始状态$x_1$。

上述定义的$M$有以下的特性：

- $M(t_0,t_1)$为对称矩阵
- $M(t_0,t_1)$在 $t_1 \geq t_0$时，为半正定矩阵
- $M(t_0,t_1)$满足线性矩阵微分方程

$$\frac{d}{dt}M(t,t_1) = -A(t)^{T}M(t,t_1)-M(t,t_1)A(t)-C(t)^{T}C(t), \; M(t_1,t_1) = 0$$

- $M(t_0,t_1)$满足以下方程

$M(t_0,t_1) = M(t_0,t) + \phi(t,t_0)^T M(t,t_1)\phi(t,t_0)$

### 可观测性

系统在$t_0$,$t_1$可观测，当且仅当在存在区间$t_0$,$t_1$ \in $\mathbb{R}$，使得矩阵$M(t_0,t_1)$为非奇异方阵。

若$A(t), C(t)$可解析，则系统在$t_0$,$t_1$可观测的条件是存在$\bar{t} \in [t_0,t_1]$以及正数k使得

$$rank \begin{bmatrix} <pre> & N_0(\bar{t}) & \\ & N_1(\bar{t}) & \\ & : & \\ & N_{k}(\bar{t}) & </pre> \end{bmatrix} = n,$$

其中$N_0(t):=C(t)$，而$N_i(t)$可用以下方式递回定义

$$N_{i+1}(t) := -N_i(t)A(t) - \frac{\mathrm{d}}{\mathrm{d} t}N_i(t),\ i = 0, \ldots, k-1$$

### 例子

考虑一个在$(-\infty,\infty)$内解析的时变系统，矩阵为

$A(t) = \begin{bmatrix} t & 1 & 0\\ 0 & t^{3} & 0\\ 0 & 0 & t^{2} \end{bmatrix}$, $C(t) = \begin{bmatrix} 1 & 0 & 1 \end{bmatrix}.$则$\begin{bmatrix} N_0(0) \\ N_1(0) \\ N_2(0) \end{bmatrix} <pre> = \begin{bmatrix} </pre> 1 & 0 & 1 \\ 0 &-1 & 0 \\ 1& 0 & 0 \end{bmatrix}$，因为矩阵的秩为3，因此在 $\mathbb{R}$内所有非平凡区间内都是可控制的。

## 非线性系统

假设系统$\dot{x} = f(x) + \sum_{j=1}^mg_j(x)u_j$, $y_i = h_i(x), i \in p$，其中$x \in \mathbb{R}^n$为状态向量，$u \in \mathbb{R}^m$为输入向量，而$y \in \mathbb{R}^p$为输出向量。$f,g,h$都是光滑的向量场。

定义可观测空间$\mathcal{O}_s$为包括所有李导数及多重李导数的空间。此空间在$x_0$可观测当且仅当$\textrm{dim}(d\mathcal{O}_s(x_0)) = n$。

注$d\mathcal{O}_s(x_0) = \mathrm{span}(dh_1(x_0), \ldots , dh_p(x_0), dL_{v_i}L_{v_{i-1}}, \ldots , L_{v_1}h_j(x_0)),\ j\in p, k=1,2,\ldots.$

Griffith及Kumar,、Kou、Elliot及Tarn及Singh是早期发展非线性动态系统的可观测性准则的先驱。

## 静态系统及一般拓扑空间

可观测性也可以用来描述稳态系统（一般会用代数方程及不等式来定义），甚至是$\mathbb{R}^n$内的集合。就像可观测性准则可以预测动态系统中卡尔曼滤波或其他观测器的行为一様，$\mathbb{R}^n$内集合的可观测性准则也可以预测资料验证与协调及其他静态观测器的行为。在非线性的例子中，可以针对个别变数或区部特性来判断可观测性，不需针对全域特性来判断。

## 外部链接

- MATLAB function for checking observability of a system
- Mathematica function for checking observability of a system