Notice
Recent Posts
Recent Comments
Link
관리 메뉴

뛰는 놈 위에 나는 공대생

[고등자동제어] Controllability in discrete time 본문

연구 Research/제어 Control

[고등자동제어] Controllability in discrete time

보통의공대생 2021. 2. 22. 23:14

 

Controllability : control input을 이용해 원하는 state로 만들 수 있는지 여부

Observability : 측정한 output을 이용해 state를 estimate할 수 있는지 여부

 

왜 controllability와 observability가 중요할까?

controllability는 제어 관점에서 당연히 중요한 것처럼 보입니다. 우리가 원하는 state로 만들 수 없다면 이는 제어할 수 없다는 의미이기 때문.

observability는, 모든 state가 다 측정가능하지는 않다는 점에서 중요합니다. 나는 velocity를 feedback하고 싶은데, 실제로 측정 가능한 센서는 position 밖에 없을 수 있습니다. input과 output(position)을 통해서 velocity를 추정해야하기 때문입니다.

 

 


1. Controllability in discrete time

 

$\text{LTI discrete time system }x(k+1)=Ax(k)+Bu(k)\text{ is said to be controllable}$

$\text{if for any initial state }x(0)=x_{0}\text{ and any target state }x_{1}$

$\text{there exists a finite integer N and a control sequence }\{u(k);k\in[0,N]\}$

$\text{that will transfer the state }x_{0}\text{ to }x(N)=x_{1}$

 

처음 state에서 내가 원하는 '어떤' target state를 finite step 안에 도달할 수 있으면 이 시스템은 controllable합니다.

그러나 여기서 주의할 점은 $x(N)=x_{1}$에 도달한 후에 그 state를 유지할 필요는 없다는 점입니다.

즉 state $x_{1}$에 도달하고 바로 다른 state로 바뀐다해도 target state에 도달할 수 있다면 controllable합니다.

 

 

controllability를 판별할 수 있는 theorem을 살펴볼 예정인데, 그 전에 알아야 하는 수학 theorem이 있습니다.

이 theorem을 알아야 controllability theorem을 증명할 수 있으므로 먼저 짚고 넘어갑니다.

 

 


2. Cayley-Hamilton theorem

 

$\textbf{Cayley-Hamilton Theorem}$

$\text{Every square matrix }A\in \mathbb{R}^{n\times n} \text{ satisfies its own characteristic equation. i.e.}$

$\Delta (A)=A^{n}+a_{n-1}A^{n-1}+\cdots+a_{1}A+a_{0}I=0$

$\text{where }\Delta(\lambda)=\det (\lambda I - A)=\lambda^{n}+a_{n-1}\lambda^{n-1}+\cdots+a_{1}\lambda+a_{0}$

$\quad\quad\quad\quad\quad\;=(\lambda-\lambda_{1})(\lambda-\lambda_{2})\cdots(\lambda-\lambda_{n})=0$

$\text{is the characteristic polynoimal for the matrix A}$

 

 

이 정리는 linearly independency를 다룰 때 많이 사용됩니다. 정리 증명은, $\Delta(\lambda)$에 $\lambda$ 대신 $A$를 집어넣으면 될 것으로 보이지만 $\lambda$가 scalar였기 때문에 증명을 할 필요성이 보입니다.

 

 

 

$\text{Proof)}$

 

증명을 다음과 같이 했고,

이 theorem이 중요한 이유는

$v, Av, A^{2}v, A^{3}v, \ldots$

에서 linearly independent한지 아닌지를 밝힐 수 있기 때문입니다.

 

$\Delta(A)=A^{n}+a_{n-1}A^{n-1}+\cdots+a_{1}A+a_{0}I=0$

에서 양변에 $v$를 곱하면

 

$A^{n}v+a_{n-1}A^{n-1}v+\cdots+a_{1}Av+a_{0}v=0$

이고 이를 만족하는 $(a_{0},a_{1},\ldots,a_{n})$이 있다는 것은 곧

 

$v, Av, A^{2}v, A^{3}v, \ldots, A^{n}v$가 linearly dependent하다는 것입니다.

 

$A^{n+1}v$의 경우는 어떨까요?

 

$A^{n}=-a_{n-1}A^{n-1}-a_{n-2}A^{n-2}+\cdots-a_{1}A-a_{0}I$

$A^{n+1}=-a_{n-1}A^{n}-a_{n-2}A^{n-2}+\cdots-a_{1}A^{2}-a_{0}A=f(A^{n-1},A^{n-2},\ldots,A,I)$

$A^{k}=f(A^{n-1},A^{n-2},\ldots,A,I), k>n-1$

 

즉 n-1보다 큰 모든 $A^{k}$는 $I,A, A^{2}, A^{3}, \ldots, A^{n-1}$에 dependent할 수밖에 없습니다.

 

 

예를 들어

$e^{At}=I+At+\frac{A^{2}}{2}t^{2}+\cdots$

이 경우에는 사실 무한까지 더해야하지만, $A^{n}$부터는 linearly dependent하므로,

 

$e^{At}=f(A^{n-1},A^{n-2},\cdots,A,I)$

다음과 같이 구할 수 있습니다.

 

C-H Theorem은 뒤의 controllability theorem에서도 나옵니다.

 


3. Controllability Theorem

 

$\text{(a). The LTI discrete time system of order n }$

$x(k+1)=Ax(k)+Bu(k), A\in \mathbb{R}^{n\times n}, B\in\mathbb{R}^{n\times m}\text{ is controllable.}$

 

$\text{(b). The controllability grammian}$

$W_{c}(k_{1})=\sum_{k=0}^{k_{1}}A^{k}BB^{T}(A^{T})^{k}=BB^{T}+(AB)(AB)^{T}+\cdots+(A^{k_{1}}B)(A^{k_{1}}B)^{T}$

$\text{ is positive definite, for some finite integer }k_{1}$

$W_{c}(k_{1})\in \mathbb{R}^{n\times n}\text{ is a square matrix.}$

 

$\text{(c). Controllability matrix}$

$P=\begin{bmatrix}B & AB & A^{2}B & \cdots & A^{n-1}B\end{bmatrix} \text{ is rank n.}$

$\text{(i.e. there are n linearly independent columns)}$

 

위의 (a),(b),(c)는 모두 동치입니다.

 

$\text{Proof : }$

 

$\text{(c)}\rightarrow \text{(b)}$

여기서 $W_{c}(k_{1})$은 cholesky decomposition이 가능함을 보였습니다. cholesky decomposition이 가능하다는 것은 그 matrix가 positive definite matrix라고 볼 수 있습니다.

 

$\text{(b)}\rightarrow \text{(a)}$

 

$\text{(a)}\rightarrow \text{(b)}$

$\text{(b)}\rightarrow \text{(c)}$

 


4. Controllability theorem comment

 

위의 controllability theorem을 통해 알 수 있는 사실에 대해서 적도록 하겠습니다.

 

 

1. 어떤 nth order of discrete time system이 있을 때 n번 이내에 원하는 target state으로 만들 수 있습니다.

 

그 이유는 위의 증명에서

$x_{1}-A^{k}x_{0}=P(k)\begin{bmatrix}u(k-1)\\ \vdots \\ u(0)\end{bmatrix}$

이기 때문에 원하는 state는 n번 안에 도달할 수 있다.

 

2. 위의 controllability theorem은 시스템이 controllable한지에 대한 여부만 알 수 있을 뿐, 얼마나 쉽게 원하는 state에 도달할 수 있는지(degree of controllability)에 대해서는 다루지 않았습니다. 이에 대한 내용은 나중에 SVD(Singular value decomposition)에서 나옵니다.

 

3. 앞서 배웠던 장에서 controllable canonical form에 대해서 배웠고(링크 : normal-engineer.tistory.com/25), 이 form의 controllability matrix를 통해 controllable함을 확인할 수 있다.

 

$\frac{d}{dt}\begin{bmatrix}x_{1}\\x_{2}\\x_{3}\end{bmatrix}=\begin{bmatrix}0&1&0\\0&0&1\\-a_{0}&-a_{1}&-a_{2}\end{bmatrix}\begin{bmatrix}x_{1}\\x_{2}\\x_{3}\end{bmatrix}+\begin{bmatrix}0\\0\\1\end{bmatrix}u$

$y=\begin{bmatrix}b_{0}&b_{1}&b_{2}\end{bmatrix}\begin{bmatrix}x_{1}\\x_{2}\\x_{3}\end{bmatrix}$

 

$A=\begin{bmatrix}0&1&0\\0&0&1\\-a_{0}&-a_{1}&-a_{2}\end{bmatrix}$

$B=\begin{bmatrix}0\\0\\1\end{bmatrix}$

 

이 form에서 controllability matrix는$\begin{bmatrix} B&AB&A^{2}B&\cdots\end{bmatrix}$이므로

 

$\text{controllability matrix : }\begin{bmatrix}0&0&1\\0&1&-a_{2}\\1&-a_{2}&(-a_{1}+a_{2}^{2})\end{bmatrix}$

이므로 $a_{1},a_{2},a_{3}$값과 관계없이 항상 full rank입니다.

 


 

5. Controllability results

 

controllability theorem에 따르면 controllability grammian이 positive definite이면 controllable합니다.

 

일반적으로는 controllability matrix를 구해서 이 matrix의 rank를 구함으로써 시스템의 controllability 여부를 알 수도 있지만 grammian을 이용해서도 알아볼 수 있습니다.

 

 

$W_{c}=\underset{k_{1}\rightarrow \infty}{\lim}W_{c}(k_{1})=\sum_{k=0}^{\infty}A^{k}BB^{T}(A^{T})^{k}$

 

$W_{c}$ 에 오른쪽에는 $A^{T}$를 왼쪽에는 $A$를 곱하면

$AW_{c}A^{T}=ABB^{T}A^{T}+A^{2}BB^{T}(A^{T})^{2}+\cdots$

$W_{c}=BB^{T}+ABB^{T}A^{T}+A^{2}BB^{T}(A^{T})^{2}+\cdots$

 

위의 두 식을 빼면

 

$AW_{c}A^{T}-W_{c}=-BB^{T}$

이 식은 Lyapunov equation in discrete time과 동일합니다.

 

$W_{c}\text{ is positive definite iff the system is controllable.}$

 


다음에는 observability에 대해서 하겠습니다.

 

Comments