일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 생산성
- WOX
- pytorch
- 에러기록
- 인공지능
- 고체역학
- JAX
- 수식삽입
- ChatGPT
- IEEE
- Python
- Numerical Analysis
- Zotero
- 논문작성
- 옵시디언
- MATLAB
- 수치해석
- obsidian
- 우분투
- 텝스공부
- Dear abby
- Julia
- Statics
- 딥러닝
- LaTeX
- 텝스
- matplotlib
- teps
- 논문작성법
- Linear algebra
- Today
- Total
뛰는 놈 위에 나는 공대생
[고등자동제어] Lyapunov's Direct Method (5) - Solving Lyapunov equation 본문
[고등자동제어] Lyapunov's Direct Method (5) - Solving Lyapunov equation
보통의공대생 2021. 1. 24. 17:38이것 때문에 글을 5개나 쓸 줄은 몰랐는데.. 글이 길어지면 점점 내용을 세부적으로 찾을 때, 찾기 어려워지는 것 같아서
좀 더 잘게 쪼개서 올리려고 합니다.
Lyapunov equation 풀기
$A^{T}P+PA=-Q\text{, where }A\in R^{2\times 2}$ 인 문제를 생각해봅시다.
$A=\begin{bmatrix} a_{11} & a_{12}\\ a_{21} & a_{22} \end{bmatrix}$
$P=\begin{bmatrix} a_{11} & a_{12}\\ a_{21} & a_{22} \end{bmatrix}$
$Q = \begin{bmatrix} q_{11} & q_{12}\\ q_{21} & q_{22} \end{bmatrix}$
으로 두고 Lyapunov equation을 정리하겠습니다.
그림에서 위 내용은 lyapunov equation을 4 by 4 matrix로 바꿔놓은 것이고, 아래 내용은 이 식에서 앞서 본 예시들 중 unstable한 case를 대입해본 것입니다.
위의 4 by 4 matrix에서 알 수 있는 것은, 만약 Q가 symmetric matrix라면 (즉 $q_{21}=q_{12}$라면) P도 symmetric matrix라는 것입니다. $p_{21}=p_{12}$
또 $\begin{bmatrix} 2a_{11} & a_{21} & a_{21} & 0 \\ a_{12} & a_{11}+a_{22} & 0 & a_{21}\\ a_{12} & 0 & a_{11}+a_{22} & a_{21}\\ 0 & a_{12} & a_{12} & 2a_{22} \end{bmatrix}$ 이 matrix를 $L_{A}$라고 할 때 $L_{A}$ matrix가 nonsingular해야, Q를 만족하는 P가 존재함을 알 수 있습니다.
$L_{A}$가 nonsingular하다는 것은 곧, invertible이므로 양변에 $L_{A}^{-1}$를 곱해주면 되기 때문입니다.
한편, 그림의 아래 부분처럼 unstable한 경우에도 $L_{A}$이 nonsingular일 수도 있다는 것을 확인했습니다.
이제 이 $L_{A}$ matrix를 sylvester matrices로 알려진 형태로 표현하겠습니다.
# 참고 Kronecker product $\bigotimes$
$L_{A}=\{A^{T}\otimes I +I\otimes A^{T}\}\in R^{n^{2}\times n^{2}}$
$\text{There is a unique solution P iff }L_{A}\text{ is nonsingular.}$
따라서 $L_{A}$가 nonsingular인지 아닌지가 중요합니다.
위 식은 A의 차원이 $R^{2\times 2}$으로 제한되어 있으므로 일반화하기는 어렵습니다. 따라서, 이번에는 차원을 확장해서 $L_{A}$가 nonsingular하다는 것이 중요함을 보이겠습니다.
matrix equation : $XA+BX=C$
$\text{, where A,B,C, and X are }m\times m, n\times n, n\times m\text{ and }n\times m \text{real or complex matrics}$
다음과 같은 matrices가 있을 때 위에서 2 by 2 matric를 변형한 것처럼, 이번에도 각 matrix를 벡터화시키겠습니다.
각 차원을 변형한 최종 공식은 밑에 나온 $\{A^{T}\otimes I_{n}+I_{m}\otimes B\}(X)=(C)$입니다.
최종 차원은 $\{(mn\times mn)+(mn \times mn)\}(mn\times 1)=(mn\times 1)$
입니다.
처음에 2 by 2 matrix를 4 by 1 matrix 로 바꾼 것과 동일한 과정입니다.
이 과정들을 통해서 결국에는 $\{A^{T}\otimes I_{n}+I_{m}\otimes B\}$가 nonsingular일 때, 즉 determinant가 0이 아닐 때 unique solution을 구할 수 있습니다. (singular라고 해서 solution이 아예 없다고 볼 수는 없습니다. 다만 unique solution이 아니라 solution이 여러 개입니다.) 또한 이 말 곧, $\{A^{T}\otimes I_{n}+I_{m}\otimes B\}$의 eigenvalues 중 0이 포함되어 있지 않다는 뜻입니다.
따라서 lyapunov equation의 solution은 $\{A^{T}\otimes I_{n}+I_{m}\otimes B\}$의 eigenvalue를 확인하는 문제로 넘어갑니다.
그렇다면 $\{A^{T}\otimes I_{n}+I_{m}\otimes B\}$의 eigenvalues는 어떻게 구할 수 있을까요?
직접 계산한다면 좋겠지만, mn by mn matrix는 매우 크기가 클 수도 있기 때문에 쉽지 않아보입니다.
$\textbf{Theorem : eigenvalues of }\{A^{T}\otimes I_{n}+I_{m}\bigotimes B\}, \eta_{l}$
$\eta_{l}=\lambda_{i}+\mu_{j}, i=1,2,\cdots \text{ and }j=1,2,\cdots,n$
$\text{where }\lambda_{i}'s\text{ and }\mu_{j}'s\text{ are the eigenvalues of A and B, respectively}$
이 theorem에서 우리는 $\{A^{T}\otimes I_{n}+I_{m}\otimes B\}$ matrix의 eigenvalues가 $A$와 $B$의 각 eigenvalues들의 combination임을 알 수 있습니다.
즉, $A^{T}u_{i}=\lambda_{i}u_{i}\text{, }A{ and }A^{T}\text{ have same eigenvalues}$
$Bv_{j}=\mu_{j}v_{j}$일 때
$w$와 $u_{i}$를 정의하겠습니다.
$\underbrace{w}_{mn\times1}=\underbrace{w}_{mn\times1} \begin{bmatrix} u_{i1}\overbrace{v_{j}}^{n\times1}\\ u_{i2}v_{j}\\ \vdots\\ u_{im}v_{j} \end{bmatrix}$
$u_{i}=\begin{bmatrix} u_{i1}\\ u_{i2}\\ \vdots\\ u_{im} \end{bmatrix}$
$A^{T}u_{i}=\lambda_{i}u_{i}$, $\{A^{T}\otimes I_{n}\}w=\lambda_{i}w$
$Bv_{j}=\mu_{j}v_{j}$, $\{I_{m}\times B\}w=\mu_{j}w$
$\Rightarrow $
$\{A^{T}\otimes I_{n}+I_{m}\otimes B\}w=(\lambda_{i}+\mu_{j})w$
즉, $\lambda_{i}$와 $\mu_{j}$의 combination이 바로 $\{A^{T}\otimes I_{n}+I_{m}\otimes B\}$의 eigenvalues입니다.
그런데 실제 Lyapunov equation에서 구한 $L_{A}$이 eigenvalues은 $A$와 $B$의 eigenvalues의 조합이 아닌 $A$와 $A^{T}$의 eigenvalues의 조합이므로, 사실 상 행렬 1개의 eigenvalue로 만들 수 있는 조합입니다.
이를 통해서 알 수 있는 사실이 있습니다.
$\textbf{Theorem }$
$\text{If all the eigenvalues of A have negative real parts, then for any P.D. Q, }$
$\text{there exists a unique solution P that satisfies the Lyapunov equation, }$
$A*P+PA=-Q$ $\text{If }A\in R^{n\times n}, A^{T}P+PA=-Q$
당연하게도 A의 eigenvalues의 real part가 모두 음수라면 그 조합 역시 음수 밖에 나올 수 없으므로
$L_{A}$는 nonsingular(모든 eigenvalue들이 0이 아닐 때)입니다.
그러나 역은 성립하지 않는다는 점을 기억해둡시다.
unique solution, $P$가 존재하더라도 A의 모든 eigenvalues의 real part가 음수인 것은 아닙니다. 즉, A가 stable하다는 것이 보장되지는 않습니다.
- 의문점
unstable하다해도 P를 구할 수 있을 때가 존재합니다. 이 때 P가 positivie definite가 아니면, unstable이라고 결론을 내리는 데요,
어떻게 항상 P가 positive definite가 아닐까요?
간단하게 생각을 해보면, 앞에서 본 theorem에서 (normal-engineer.tistory.com/52)
라고 했으므로, P가 positive definite가 아니면, 당연히 globally stable이 아니므로 unstable하다고 결론을 내릴 수 있습니다.
examples)
$L_{A}$의 eigenvalues들을 구한 것이 $\mu_{1},\mu_{2},\mu_{3},\mu_{4}$ 입니다.
이 중에서 0이 있으면 solution이 없습니다.
'연구 Research > 제어 Control' 카테고리의 다른 글
[고등자동제어] Lyapunov stability in Discrete Time (0) | 2021.02.17 |
---|---|
[제어] Dynamic programming - Richard Bellman (0) | 2021.02.10 |
[고등자동제어] Lyapunov's Direct Method (4) - Lyapunov equation (0) | 2021.01.24 |
[고등자동제어] Lyapunov's Direct Method (3) - Lyapunov function (0) | 2021.01.23 |
[고등자동제어] Lyapunov's Direct Method (2) - Quadratic function (0) | 2021.01.23 |