可觀測性

控制理論中的可觀察性（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