Algebraiczne równanie Riccatiego
Algebraiczne równanie Riccatiego jest jednym z poniższych równań macierzowych:
Algebraiczne równanie Riccatiego czasu ciągłego:
A T X + X A – X B R-1BTX + Q = 0
{\displaystyle A^{T}X+XA-XBR^{-1}B^{T}X+Q=0}
Algebraiczne równanie Riccatiego czasu dyskretnego:
X = ATXA – (ATXB)(R + BTXB)-1(BTXA) + Q
{\displaystyle X=A^{T}XA-(A^{T}XB)(R+B^{T}XB)^{-1}(B^{T}XA)+Q}
gdzie X jest nieznaną macierzą symetryczną o wymiarach n × n, a A, B, Q, R to znane rzeczywiste macierze współczynników.
Nazwa równanie Riccatiego została nadana algebraicznemu równaniu Riccatiego czasu ciągłego na podstawie analogii do równania różniczkowego Riccatiego. W tym przypadku zmienna nieznana występuje w formie liniowej oraz w wyrażeniu kwadratowym, bez wyrazów wyższych rzędów. Z kolei algebraiczne równanie Riccatiego czasu dyskretnego jest wykorzystywane przy analizie układów dyskretnych i nie jest bezpośrednio powiązane z równaniem różniczkowym Riccatiego, które badał Jacopo Riccati.
Algebraiczne równanie Riccatiego definiuje rozwiązanie dla dwóch kluczowych problemów w teorii sterowania:
- stacjonarnego regulatora liniowo-kwadratowego (LQR) z nieskończonym horyzontem,
- stacjonarnego regulatora liniowo-kwadratowego-Gaussa (LQG) z nieskończonym horyzontem.
Rozwiązanie algebraicznego równania Riccatiego można uzyskać poprzez rozkład macierzy na czynniki bądź przez iterację równania Riccatiego.
Algorytm rozwiązywania równania Riccatiego
Zakładając stabilizowalność pary (A; B) oraz wykrywalność pary (Q; A), algebraiczne równanie Riccatiego ma dokładnie jedno rozwiązanie w klasie macierzy symetrycznych półokreślonych dodatnio. Stosując iteracyjną metodę Newtona do rozwiązania tego równania, otrzymujemy następujący algorytm do wyznaczania macierzy X.
Macierz X jest granicą ciągu:
{\displaystyle \lim _{n\to \infty }~V_{n},}
gdzie:
0 ⩽ X ⩽ Vn+1 ⩽ Vn ⩽ V0,
gdzie Vk jest jedynym rozwiązaniem równania Lapunowa o postaci:
{\displaystyle {A_{n}}^{T}V_{n}+V_{n}A_{n}+Q+L_{n}RL_{n}=0,}
gdzie:
- n = 1, 2, 3, 4, …
oraz:
Ln = −R−1BTVn−1,
Ak = A + BLn
Macierz L0 jest dobierana tak, aby rzeczywiste części wartości własnych macierzy An = A + BL0 były ujemne. Zbieżność Vk do X jest kwadratowa, co oznacza, że istnieje stała c > 0, spełniająca warunek:
||Vn+1 − X|| ⩽ c ||Vn − X||2,
gdzie n = 0, 1, 2, 3, …
Macierz L0 może być obliczona przy użyciu odpowiednich twierdzeń. Powyższy algorytm został zaproponowany przez Kleinmana w 1968 roku, a sposób wyznaczania macierzy L0 opracował Sandell w 1974 roku.