LQG/LTR (Linear Quadratic Gaussian / Loop Transfer Recovery) とは
LQGとは、カルマンフィルタを用いて推定した状態に対して、最適レギュレータを用いて状態フィードバックをおこなう、よく知られた制御法です。 LQGが時間領域での制御器設計であるのに対して、周波数領域での設計も考慮するのが、LQG/LTRです。 今回はStein G and Micheal A. The LQG/LTR procedure for multivariable feedback control designを参考にしました。
問題設定
今、制御対象が伝達関数行列$G(s)$としてモデリングされているとします。 ここで、制御対象は非最小位相系であり、同数の入出力をもつとします。
我々の目標は制御対象の出力$y$と参照入力$r$との偏差$e:=r-y$を受け取り、制御入力$u$を生成する制御器$K(s)$を実装することです。 ここで、制御器$K(s)$は以下の要求を満たすことを求められます。
- 安定化:$G(s)$を安定化する(有界な外乱$d$、参照入力$r$に対して、$y$が有界となる)
- 良い制御性能:$e$をできるだけ小さくする
- ロバスト安定化:$G_A(s)$を安定化する(後述)
1だけを達成するための方法はたくさんあるので、本記事では触れません。
2を達成するためには、外乱$d$や参照入力$r$が大きな値を持つ周波数領域で、感度関数 $$ S(s) = (I+G(s)K(s))^{-1} $$ を小さくすることが求められます。 ここでいう"小さい"とは、伝達関数の最大特異値$\sigma_{max}(S(j\omega))$が小さいという意味です。
3について説明します。 一般に、制御対象を完全にモデリングするのは不可能であり、何らかの不確かさを含むと考えるのが自然です。 これは例えば、真のモデルを$G_A(s)$とすると $$ G_A(s) = (I+L(s))G(s) $$ と表すことができます。 ここで、$L(s)$は乗法的不確かさを表す伝達関数行列であり、既知の$m(\omega)$と任意の$\omega$に対して $$ \sigma_{max}(L(j\omega)) < m(\omega) $$ なる関係が成り立つとします。 ここで、簡単な計算から、相補感度関数 $$ T(s) = G(s)K(s)(I+G(s)K(s))^{-1} $$ が任意の$\omega$に対して $$ \sigma_{max}(T(j\omega)) \le \frac{1}{m(\omega)} $$ を満たすことが、$G_A(s)$の安定性の必要十分条件として導出できます。
さて、よく知られているように $$ S(s)+T(s)=I $$ が成り立つことから、同じ周波数領域で$S(s)$と$T(s)$を同時に小さくすることはできません。 しかしながら、一般に外乱抑制は高い周波数領域での話であり、ロバスト安定化は低い周波数領域の話であることが多いです。 そのため、$K(s)$を適切に設計することで、トレードオフを考慮しながら所望の$S(s), T(s)$を設計できれば嬉しいわけです。
$H^2$最適制御
感度関数$S(s)$と相補感度関数$T(s)$を小さくするための評価関数 $$ J = \int_0^\infty Tr(MM^T)d\omega $$ を考えます。ここで、$M$は重み$W$を用いて $$ M(s) = [S(s)W(s) \quad T(s)] $$ と定義されています。 $J$を最小化する$K(s)$を設計する問題を、$H^2$最適制御問題といいます。
これから、よく知られているLQG制御が$H^2$最適制御問題に対する一つの解を与えることを示します。
LQG制御
LQGは時間領域で設計される制御法なので、制御対象として $$ \dot x = Ax(t) + Bu(t) + L\xi(t), \quad \ y(t) = Cx(t) + \mu I\eta(t), \quad \ z(t) = Hx(t) \tag{9} $$ を考えます。$x$は状態、$u$は入力、$y$は出力です。 $z$は補助的な信号です。 $\xi, \eta$はそれぞれ白色ガウス信号です。 上述の伝達関数との対応を述べると $$ G(s) = C\Phi(s)B, \ \Phi(s) = (sI-A)^{-1} $$ という関係が成り立ちます。
LQG制御問題では、評価関数 $$ J_{LQG} = E\left\{ \lim_{T\rightarrow\infty} \frac{1}{T}\int_0^T z^Tz+\rho^2u^Tu \ dt \right\} \tag{10} $$ を最小化する$K(t)$を設計することを考えます。
ここで、標準的なLQG制御問題と違うところは、制御対象の$L, \mu, H$及び評価関数の$\rho$は事前に与えられたものではなく、自由パラメータであるところです。 これらはLQG制御問題が$H^2$最適制御問題と等価であることを示すために用いられます。
LQG制御器と$H^2$最適制御問題の関わり
(9)を周波数領域で表すと
$$ \begin{bmatrix} y \newline z \end{bmatrix} = \begin{bmatrix} G & C\Phi L & I \newline H\Phi B & H\Phi L &0 \end{bmatrix} \begin{bmatrix} u \newline \xi \newline \eta \end{bmatrix} $$
となります。出力フィードバック$u=-K(s)y$を考えると $$ \begin{bmatrix} z \newline u \end{bmatrix} = P(s) \begin{bmatrix} \xi \newline \eta \end{bmatrix} \tag{12} $$ と書き改められます。ここで$P$は $$ P(s) = \begin{bmatrix} H\Phi L - H\phi BK(I-GK)^{-1}C\Phi L & - \mu H\Phi BK(I-GK)^{-1}\newline -\rho K(I-GK)^{-1}C\Phi L & \mu\rho K(I-GK)^{-1} \end{bmatrix} $$ と定義されています。(10), (12)とパーセバルの定理を用いると $$ J_{LQG} = \frac{1}{\pi} \int_0^\infty Tr(PP^T)d\omega \tag{13} $$ となります。
ここで、自由パラメータ$L, \mu, H$を $$ \frac{C\Phi L}{\mu} = W(s), \ H=C \tag{14} $$ となるように選び、$\rho\rightarrow 0$とすると $$ P(s) \rightarrow \mu \begin{bmatrix} (I+GK)^{-1}W & GK(I+GK)^{-1}\newline 0 & 0 \end{bmatrix} $$ が成り立ちます。 これを(13)に代入して(10)と比較すれば、$J_{LQG}=J$が成り立つことが示せます。
さて、こうしてLQG制御問題が$H^2$最適制御問題と等価であることが導けました。 すなわち、LQG制御問題の解$\arg_K J_{LQG}$が$H^2$最適制御問題の解$\arg_K J$でもあるということです。 ただしこれが成り立つのは、$\rho\rightarrow 0$としたときなので、最適レギュレータのゲインが大きくなり、大きな入力を生成してしまうことには注意が必要です。
また、別の観点から、自由パラメータ$H,\rho,L$を $$ \frac{H\Phi B}{\rho} = W(s), \ L=B $$ となるように選び、$\mu\rightarrow 0$とすると $$ P(s) \rightarrow \rho \begin{bmatrix} W(I+GK)^{-1} & 0\newline GK(I+GK)^{-1} & 0 \end{bmatrix} $$ が成り立ちます。 こちらの場合、$\mu\rightarrow 0$としてしまっているので、カルマンフィルタのゲインが小さくなり状態推定の収束が悪くなります。
2つの観点を紹介しましたが、以後は前者のみに焦点を絞ってより詳しく考察していきます。
制御器の性質について
LQG制御問題の解は、カルマンフィルタと最適レギュレータを用いることで与えられることが知られています。 すなわち $$ K_{LQG}(s) = K_C (sI-A-BK_C -K_f C)^{-1} K_f $$ として与えられます。 ここで、$K_C,K_f$はそれぞれ最適レギュレータのゲイン、カルマンフィルタゲインです。
設計手順として、重み$W(s)$を設計した後、(14)を用いて$L,\mu$を決め、カルマンフィルタを実装し、つぎに十分小さな$\rho$を用いて最適レギュレータを実装します。 ここで、$\rho$が小さければ小さいほど$H^2$最適性が保証されますが、その分制御器からの入力も大きくなることに注意が必要です。
ここで、$\rho\rightarrow 0$としたとき $$ G(s)K_{LQG}(s) \rightarrow C\Phi(s)K_f $$ が成り立つことが計算できます。証明はここに載ってます。 ここから例えば以下の性質を導くことができます。
- 任意の$\omega$に対して、$\sigma_{min}(W(j\omega))>1$が成り立つならば $$ \sigma_i((I+C\Phi(j\omega)K_f)^{-1}) \approx \frac{1}{\sigma_i(W(j\omega))}, $$ $$ \sigma_i(C\Phi(j\omega)K_f(I+C\Phi(j\omega)K_f)^{-1}) \approx 1, $$ $$ \sigma_i (C\Phi(j\omega) K_f) \approx \sigma_i(W(j\omega)) $$
が成り立つ($\sigma_i$はそれぞれの特異値)。 第一式は、重み$W(s)$の設計により、カルマンフィルタの感度関数を調節できることを意味します。
$\omega\rightarrow\infty$のとき $$ \sigma_i((I+C\Phi(j\omega)K_f)^{-1}) \approx 1, $$ $$ \sigma_i(C\Phi(j\omega)K_f(I+C\Phi(j\omega)K_f)^{-1}) \approx \frac{\sigma_i(CK_f)}{w}, $$ $$ \sigma_{i} (C \Phi(j\omega) K_f) \approx \frac{\sigma_{i} (C K_f)}{w} $$ が成り立つ。 第二式は高周波領域で相補感度関数が小さくなることを意味します。
任意の$\omega$に対して $$ \sigma_i((I+C\Phi(j\omega)K_f)^{-1}) \le 1, $$ $$ \sigma_i(C\Phi(j\omega)K_f(I+C\Phi(j\omega)K_f)^{-1}) \le 2 $$ が成り立つ。 第一式は閉ループ系が重みの設計にかかわらず、外乱を増幅することはないことを示しています。
その他の式の解釈については、本論文に書かれていますが、正直自分ではよくわかりませんでした。
まとめ
状態空間モデルを扱う現代制御理論は、周波数領域での制御器設計において、古典制御理論に劣ると言われていましたが、LQG/LTRではこの点をある程度克服できています。
ここまでが70年代の話になりますが、さらに80年代になるとZamesさんが$H^\infty$制御理論を確立し、より体系化されていったようです。