일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- matplotlib
- Zotero
- Julia
- 에러기록
- Linear algebra
- 텝스
- 수식삽입
- 우분투
- 옵시디언
- teps
- 고체역학
- MATLAB
- 인공지능
- IEEE
- Dear abby
- obsidian
- 수치해석
- Numerical Analysis
- Statics
- 논문작성
- ChatGPT
- 텝스공부
- LaTeX
- WOX
- pytorch
- JAX
- 딥러닝
- 논문작성법
- Python
- 생산성
- Today
- Total
뛰는 놈 위에 나는 공대생
[고등자동제어] Observability in discrete time 본문
Remind
Observability : output과 input을 알고 있을 때, 시스템의 state을 estimate할 수 있는지 여부
1. Definition of Observability
$\textbf{Definition :}$
$\dot{x}(t)=Ax(t)+Bu(t)$
$y(t)=Cx(t)+Du(t), A\in R^{n\times n}, C\in R^{r\times n}$
$\text{The LTI continuous time system is said to be observable if, }$
$\text{for any initial state }x(0)=x_{0}$
$\text{there exists a finite time } t_{1}>0\text{ such that knowledge of the input and output time functions }$
$\{u(t); t\in[0,t_{1}] \}$
$\{u(t); t\in[0,t_{1}] \}$
$\text{is sufficient t determine the initial state }x_{0}$
정의 자체는 복잡해보이지만, 간단하게 생각하면 0에서 N(finite integer)까지의 input, output sequence를 알고 있을 때 그 정보가 initial state를 알기에 충분하다면 이 시스템은 observable합니다. 우리가 알 수 있는 것은 input, output이기 때문에 output과 state 간의 관계를 아는 것이 중요하고, 따라서 $C$ matrix가 이 시스템의 observability에 중요한 역할을 합니다.
2. Observability theorem
(controllability theorem과 거의 동일함)
$\text{(a). The LTI discrete time system of order n}$
$x(k+1)=Ax(k)+Bu(k)$
$y(k)=Cx(k)+Du(k)$
$\text{ is observable.}$
$\text{(b). The observability grammian }$
$W_{o}(k_{1})=\sum_{k=0}^{k_{1}}(A^{T})^{k}C^{T}CA^{k}=C^{T}C+(CA)^{T}CA+\cdots+(CA^{k_{1}})^{T}CA^{k_{1}}$
$\text{is positive definite, for some finite integer }k_{1}$
$\text{(c). The observability matrix }$
$Q=\begin{bmatrix} C\\CA\\ \vdots \\ CA^{n-1}\end{bmatrix}_{nr\times n}$
$\text{is rank n.(i.e. there ae n linearly independent rows)}$
$\text{Proof : }$
증명을 하기 전에 참고해야할 부분이 있습니다.
DT LTI system 식에서 output은 free response와 forced response(input으로 인한 response)의 합임을 알고 있습니다.
$y(k)=y_{free}(k)+y_{forced}(k)$
forced response의 경우 A,B,C,D matrix를 알고 input을 알고 있다면 계산해서 구할 수 있습니다.
$y_{forced}(k)=C\sum_{j=0}^{k-1}A^{k-1-j}Bu(j)+Du(j)$
그러나 free response는 처음 state를 모르면, 알 수가 없습니다.
$y(k)=CA^{k}x(0)$
free response는 직접적으로 $x(0)$에 의존하기 때문에 force response $y_{forced}$는 신경쓰지 않기 위해
$u(k)=0\text{, }\forall k\geq 0$ 라고 가정하고 증명을 하도록 하겠습니다.
$\text{(c)}\rightarrow \text{(b)}$
$\text{(b)}\rightarrow \text{(a)}$
$\text{(b)}\rightarrow \text{(c)}$
$\text{(a)}\rightarrow \text{(b)}$
3. Observability theorem comment
위의 observability theorem을 통해 알 수 있는 것
1. DT LTI system of order n일 때, initial state을 estimate하기 위해서는 n개의 output sequence를 관찰한 후에 가능하다. 대신 n번째 이 전의 모든 state를 알 수 있다.
$x(0)={Q^{T}Q}Q^{T}Y$
$x(k)=A^{k}x(0)$
2. controllability theorem에서와 마찬가지로 degree of observability는 observability theorem으로는 알 수 없다.
3. observable canonical form
$\frac{d}{dt}\begin{bmatrix}x_{1}\\x_{2}\\x_{3}\end{bmatrix}=\begin{bmatrix}-a_{2}&1&0\\-a_{1}&0&1\\-a_{0}&0&0\end{bmatrix}\begin{bmatrix}b_{2}\\b_{1}\\b_{0}\end{bmatrix}u$
$y=\begin{bmatrix}1&0&0\end{bmatrix}\begin{bmatrix}x_{1}\\x_{2}\\x_{3}\end{bmatrix}$
$A=\begin{bmatrix}-a_{2}&1&0\\-a_{1}&0&1\\-a_{0}&0&0\end{bmatrix}$
$C=\begin{bmatrix}1&0&0\end{bmatrix}$
$Q=\begin{bmatrix}C\\CA\\CA^{2}\end{bmatrix}=\begin{bmatrix}1&0&0\\-a_{2}&1&0\\(-a_{1}+a_{2}^{2})&-a_{2}&1\end{bmatrix}$
$a_{0},a_{1},a_{2}$에 관계없이 항상 full rank입니다.
이 결과는 arbitrary order n에도 일반화할 수 있다고 합니다.
n=4이면
$A=\begin{bmatrix}-a_{3}&1&0&0\\-a_{2}&0&1&0\\-a_{1}&0&0&1\\-a_{0}&0&0&0\end{bmatrix}$
4. observability와 controllability는 duality를 가집니다.
$\text{The pair }\{A,B\}\text{ is controllable if and only if the pair }\{A^{T},C^{T}\}\text{ is observable.}$
4. Observability results
controllability와 마찬가지로 grammian을 이용해 Lyapunov equation처럼 유도할 수 있습니다.
이를 통해 observability grammian이 positive definite인지 판별할 수 있습니다.
$W_{o}=\underset{k_{1}\rightarrow \infty}{\lim}W_{o}(k_{1})=\sum_{k=0}^{\infty}(A^{T})^{k}C^{T}CA^{k}$
왼쪽에 $A^{T}$를 곱하고, 오른쪽에 $A$를 곱합니다.
$A^{T}W_{o}A-W_{o}=A^{T}C^{T}CA+(A^{T})^{2}C^{T}CA^{k}+\cdots$
$W_{o}=C^{T}C+A^{T}C^{T}CA+\cdots$
$A^{T}W_{o}A-W_{o}=-C^{T}C$
이 식은 Discrete time에서의 Lyapunov equation과 똑같습니다.
A가 Hurwitz이면, 위의 Lyapunov equation의 solution $W_{o}$을 구할 수 있습니다. 또한 이렇게 구한 $W_{o}$는 positive definite입니다.
$W_{o}$이 positive definite이면 system은 observable합니다.
어떤 시스템이 observable한지 궁금하다면 위의 Lyapunov equation을 풀어봄으로써 observable한지 알 수 있습니다.
지금까지는 discrete time에 대해서 공부했으므로 다음에는 continuous time에 대한 controllability, observability에 대해 다뤄보겠습니다.
'연구 Research > 제어 Control' 카테고리의 다른 글
[고등자동제어] Observability in Continuous time (0) | 2021.02.25 |
---|---|
[고등자동제어] Controllability in Continuous time (0) | 2021.02.25 |
[고등자동제어] Controllability in discrete time (0) | 2021.02.22 |
[고등자동제어] Lyapunov stability in Discrete Time (0) | 2021.02.17 |
[제어] Dynamic programming - Richard Bellman (0) | 2021.02.10 |