next up previous
Next: 状態観測器(State Obserber) Up: 離散値系制御理論 Previous: 極配置制御(Pole assignment)


最適制御理論

離散値系の最適制御のおける評価関数は、二乗形の場合、次式のような形にとる。
\begin{displaymath}
J=\sum_{k=0}^{N-1} \left[ \frac{1}{2}\mbox{\boldmath$x$}^T(k...
...c{1}{2}\mbox{\boldmath$u$}^T(k)\mbox{\boldmath$Ru$}(k) \right]
\end{displaymath} (4.287)

ここで、 $\mbox{\boldmath$Q$}$$n\times n$の準正定対称マトリクス、 $\mbox{\boldmath$R$}$$p\times p$の 正定対称マトリクスとする。これらはウェイトを示している。

いまシステム方程式を次式とする。

\begin{displaymath}
\mbox{\boldmath$x$}(k+1)=\mbox{\boldmath$Ax$}(k)+\mbox{\boldmath$Bu$}(k)
\end{displaymath} (4.288)

このときLagrangeの未定定数を $\mbox{\boldmath$\lambda$}$とすると、補助関数は
$\displaystyle V$ $\textstyle =$ $\displaystyle \sum_{k=0}^{N-1} \left[ \frac{1}{2}\mbox{\boldmath$x$}^T(k)\mbox{...
...ath$Qx$}(k)
+\frac{1}{2}\mbox{\boldmath$u$}^T(k)\mbox{\boldmath$Ru$}(k) \right.$  
    $\displaystyle \left. +\mbox{\boldmath$\lambda$}^T(k+1)\{\mbox{\boldmath$Ax$}(k)+\mbox{\boldmath$Bu$}(k)
-\mbox{\boldmath$x$}(k+1)\} \right]$ (4.289)

で表される。この補助関数を $\mbox{\boldmath$x$}(k),\mbox{\boldmath$u$}(k),\mbox{\boldmath$\lambda$}(k+1)$で偏微分し て、0としたとき(4.289)式の拘束条件のもとで、(4.288)式 を最小にする条件が得られる。すなわち
\begin{displaymath}
\left. \begin{array}{l}
\frac{\displaystyle{\partial V}}{\d...
...h$\lambda$}(k+1)}}=0
\end{array} \right\} k=0,1,2,\cdots,N-1
\end{displaymath} (4.290)

である。
\begin{displaymath}
\frac{\partial}{\partial\mbox{\boldmath$x$}(k)}
\left[ \frac...
...}^T(k)\mbox{\boldmath$Qx$}(k) \right] =\mbox{\boldmath$Qx$}(k)
\end{displaymath} (4.291)


\begin{displaymath}
\frac{\partial}{\partial\mbox{\boldmath$x$}(k)}
\left[ \mbox...
...) \right] =\mbox{\boldmath$A$}^T\mbox{\boldmath$\lambda$}(k+1)
\end{displaymath} (4.292)

ゆえ
\begin{displaymath}
\frac{\partial V}{\partial \mbox{\boldmath$x$}(k)}=\mbox{\bo...
...mbox{\boldmath$\lambda$}(k+1)
-\mbox{\boldmath$\lambda$}(k)=0
\end{displaymath} (4.293)

となる。同様にして
\begin{displaymath}
\frac{\partial V}{\partial \mbox{\boldmath$u$}(k)}=\mbox{\bo...
...$Ru$}(k)+\mbox{\boldmath$B$}^T\mbox{\boldmath$\lambda$}(k+1)=0
\end{displaymath} (4.294)


\begin{displaymath}
\frac{\partial V}{\partial \mbox{\boldmath$\lambda$}(k+1)}=\...
...th$Ax$}(k)+\mbox{\boldmath$Bu$}(k)-
\mbox{\boldmath$x$}(k+1)=0
\end{displaymath} (4.295)

が得られる。(4.294)式より
\begin{displaymath}
\mbox{\boldmath$\lambda$}(k)=\mbox{\boldmath$Qx$}(k)+\mbox{\boldmath$A$}^T\mbox{\boldmath$\lambda$}(k+1)
\end{displaymath} (4.296)

(4.295)式より
\begin{displaymath}
\mbox{\boldmath$u$}(k)=-\mbox{\boldmath$R$}^{-1}\mbox{\boldmath$B$}^T\mbox{\boldmath$\lambda$}(k+1)
\end{displaymath} (4.297)

(4.296)式に(4.298)式を代入すると
\begin{displaymath}
\mbox{\boldmath$x$}(k+1)=\mbox{\boldmath$Ax$}(k)-\mbox{\boldmath$BR$}^{-1}\mbox{\boldmath$B$}^T\mbox{\boldmath$\lambda$}(k+1)
\end{displaymath} (4.298)

となる。いま
\begin{displaymath}
\mbox{\boldmath$\lambda$}(k)=\mbox{\boldmath$P$}(k)\mbox{\boldmath$x$}(k)
\end{displaymath} (4.299)

とおく。この $\mbox{\boldmath$P$}(k)$$n\times n$の正定対称な行列とする。 (4.297)式に適用すると
\begin{displaymath}
\mbox{\boldmath$P$}(k)\mbox{\boldmath$x$}(k)=\mbox{\boldmath...
...boldmath$A$}^T\mbox{\boldmath$P$}(k+1)\mbox{\boldmath$x$}(k+1)
\end{displaymath} (4.300)

となる。また(4.299)式は
\begin{displaymath}
\mbox{\boldmath$x$}(k+1)=\mbox{\boldmath$Ax$}(k)-\mbox{\bold...
...boldmath$B$}^T\mbox{\boldmath$P$}(k+1)\mbox{\boldmath$x$}(k+1)
\end{displaymath} (4.301)

となり
\begin{displaymath}
\mbox{\boldmath$x$}(k+1)=[\mbox{\boldmath$I$}+\mbox{\boldmat...
...ath$B$}^T\mbox{\boldmath$P$}(k+1)]^{-1}\mbox{\boldmath$Ax$}(k)
\end{displaymath} (4.302)

が得られる。これを(4.301)式に代入すると、
$\displaystyle \mbox{\boldmath$P$}(k)\mbox{\boldmath$x$}(k)$ $\textstyle =$ $\displaystyle \mbox{\boldmath$Qx$}(k)+\mbox{\boldmath$A$}^T\mbox{\boldmath$P$}(k+1)$  
    $\displaystyle \times [\mbox{\boldmath$I$}+\mbox{\boldmath$BR$}^{-1}\mbox{\boldmath$B$}^T
\mbox{\boldmath$P$}(k+1)]^{-1}\mbox{\boldmath$Ax$}(k)$ (4.303)

となる。上式より次式が得られる。
\begin{displaymath}
\mbox{\boldmath$P$}(k)=\mbox{\boldmath$Q$}+\mbox{\boldmath$A...
...ldmath$B$}^T
\mbox{\boldmath$P$}(k+1)]^{-1}\mbox{\boldmath$A$}
\end{displaymath} (4.304)

この式はリカッチ方程式に相当し、 $\mbox{\boldmath$P$}(k+1)$から $\mbox{\boldmath$P$}(k)$が定まる逆時間 の式である。

いま補助関数を $\mbox{\boldmath$x$}(N)$で偏微分すると $\mbox{\boldmath$x$}(k+1)$の項以外は0となり

\begin{displaymath}
\frac{\partial V}{\partial \mbox{\boldmath$x$}(N)}=\frac{\pa...
...mbox{\boldmath$x$}(N) \right\} =\mbox{\boldmath$\lambda$}(N)=0
\end{displaymath} (4.305)

となる。これを(4.300)式に代入すると
\begin{displaymath}
\mbox{\boldmath$\lambda$}(N)=\mbox{\boldmath$P$}(N)\mbox{\boldmath$x$}(N)=0
\end{displaymath} (4.306)

となり、もし $\mbox{\boldmath$x$}(N)\neq 0$なら
\begin{displaymath}
\mbox{\boldmath$P$}(N)=0
\end{displaymath} (4.307)

となる。この条件を(4.305)式に適用すれば逆時間的に、各 $\mbox{\boldmath$P$}(k)$が求められる。

$\mbox{\boldmath$P$}(k)$が求められると、(4.297)、(4.298)、 (4.300)式より

$\displaystyle \mbox{\boldmath$u$}(k)$ $\textstyle =$ $\displaystyle -\mbox{\boldmath$R$}^{-1}\mbox{\boldmath$B$}^T\mbox{\boldmath$\lambda$}(k+1)$  
  $\textstyle =$ $\displaystyle -\mbox{\boldmath$R$}^{-1}\mbox{\boldmath$B$}^T(\mbox{\boldmath$A$}^T)^{-1}\{\mbox{\boldmath$\lambda$}(k)
-\mbox{\boldmath$Qx$}(k)\}$  
  $\textstyle =$ $\displaystyle -\mbox{\boldmath$R$}^{-1}\mbox{\boldmath$B$}^T(\mbox{\boldmath$A$}^T)^{-1}\{\mbox{\boldmath$P$}(k)\mbox{\boldmath$x$}(k)
-\mbox{\boldmath$Qx$}(k)\}$  
  $\textstyle =$ $\displaystyle -\mbox{\boldmath$R$}^{-1}\mbox{\boldmath$B$}^T(\mbox{\boldmath$A$}^T)^{-1}\{\mbox{\boldmath$P$}(k)
-\mbox{\boldmath$Q$}\}\mbox{\boldmath$x$}(k)$  
  $\textstyle \equiv$ $\displaystyle \mbox{\boldmath$K$}(k)\mbox{\boldmath$x$}(k)$ (4.308)
    $\displaystyle \mbox{ただし}\mbox{\boldmath$K$}(k)=-\mbox{\boldmath$R$}^{-1}\mbo...
...B$}^T(\mbox{\boldmath$A$}^T)^{-1}\{\mbox{\boldmath$P$}(k)-\mbox{\boldmath$Q$}\}$  

の関係が得られるので、最適制御法則 $\mbox{\boldmath$K$}(k)$が得られる。次例で示すようにこの $\mbox{\boldmath$K$}(k)$$N$を大きくとると$k$の小さい間は一定値をとるので定数として 扱うことができる。

[例]システム方程式が次式のとき

\begin{displaymath}
\left[ \begin{array}{c}
x_1(k+1) \\
x_2(k+1)
\end{array}...
...eft[ \begin{array}{c}
1.0 \\
0.5
\end{array} \right] u(k)
\end{displaymath} (4.309)

評価関数
\begin{displaymath}
J=\sum_{k=0}^{N-1} \left[ \frac{1}{2} \{ x_1^2(k)+x_2^2(k) \}
+\frac{1}{2}u^2(k) \right]
\end{displaymath} (4.310)

を最小にする最適制御法則を求める。また初期条件を

\begin{displaymath}
\left[ \begin{array}{c}
x_1(0) \\
x_2(0)
\end{array} \r...
...=
\left[ \begin{array}{c}
100.0 \\
0
\end{array} \right]
\end{displaymath}

としたときの応答を求める。

上例では

\begin{displaymath}
\mbox{\boldmath$Q$} = \left[ \begin{array}{cc}
1 & 0 \\
...
...} = \left[ \begin{array}{c}
1.0 \\
0.5
\end{array} \right]
\end{displaymath}

である。

いま$N=5$とした場合、 $\mbox{\boldmath$P$}(5)=0$ゆえ、(4.305)式に代入すると

$\displaystyle \mbox{\boldmath$P$}(4)$ $\textstyle =$ $\displaystyle \mbox{\boldmath$Q$}+\mbox{\boldmath$A$}^T\mbox{\boldmath$P$}(5)[\...
...h$b$}R^{-1}\mbox{\boldmath$b$}^T\mbox{\boldmath$P$}(5)]^{-1}\mbox{\boldmath$A$}$  
  $\textstyle =$ $\displaystyle \mbox{\boldmath$Q$} = \left[ \begin{array}{cc}
1 & 0 \\
0 & 1
\end{array} \right]$ (4.311)

となる。そこで(4.309)式から

\begin{displaymath}
\mbox{\boldmath$k$}(4)=0 \mbox{\boldmath$u$}(4)=0
\end{displaymath}

となる。次に$N=4$の所では
$\displaystyle \mbox{\boldmath$P$}(3)$ $\textstyle =$ $\displaystyle \mbox{\boldmath$Q$}+\mbox{\boldmath$A$}^T\mbox{\boldmath$P$}(4)[\...
...h$b$}R^{-1}\mbox{\boldmath$b$}^T\mbox{\boldmath$P$}(4)]^{-1}\mbox{\boldmath$A$}$  
  $\textstyle =$ $\displaystyle \left[ \begin{array}{cc}
1 & 0 \\
0 & 1
\end{array} \right] +
\left[ \begin{array}{cc}
0.355 & 0.355 \\
0.355 & 0.555
\end{array} \right]$ (4.312)

となるから
$\displaystyle u(3)$ $\textstyle =$ $\displaystyle - \left[ \begin{array}{cc}
0 & 1
\end{array} \right]
\left[ \mbox{\boldmath$P$}(3)-\mbox{\boldmath$Q$} \right] \mbox{\boldmath$x$}(3)$  
  $\textstyle =$ $\displaystyle - \left[ \begin{array}{cc}
0 & 1
\end{array} \right]
\left[ \begi...
...{cc}
0.355 & 0.355 \\
0.355 & 0.555
\end{array} \right] \mbox{\boldmath$x$}(3)$  
  $\textstyle =$ $\displaystyle - \left[ \begin{array}{cc}
0.355 & 0.555
\end{array} \right]
\left[ \begin{array}{c}
x_1(3) \\
x_2(3)
\end{array} \right]$ (4.313)

ゆえに

\begin{displaymath}
k_1(3)=-0.355 k_2(3)=-0.555
\end{displaymath}

となる。この計算を$N\to 0$まで続けると、各時点のフィードバックゲイン$k$が 定まる。この結果が表4.1である。


表 4.1:
$k$ $k_1(k)$ $k_2(k)$ $u(k)$ $x_1(k)$ $x_2(k)$
0 -0.395 -0.687 -39.5 100 0
1 -0.395 -0.687 -2.43 40.5 -19.75
2 -0.395 -0.677 3.48 10.22 -11.09
3 -0.355 -0.555 1.42 0.54 -3.8
4 0 0 0 -1.45 -9.42

この結果より$k$の小さい所では$k_1(k),$ $k_2(k)$は一定値であることがわか る。これが最適制御法則である。次に$k_1(k),$ $k_2(k)$が求まれば (4.309)式より

\begin{eqnarray*}
u(0) &=& k_1(0)x_1(0)+k_2(0)x_2(0) \\
&=& -0.395\times 100+(-0.687)\times 0 \\
&=& -39.5
\end{eqnarray*}

が求まり、これを(4.289)式に代入して

\begin{eqnarray*}
\mbox{\boldmath$x$}(1) &=& \mbox{\boldmath$Ax$}(0)+\mbox{\bold...
...& \left[ \begin{array}{c}
40.5 \\
-19.75
\end{array} \right]
\end{eqnarray*}

が求まる。これを繰り返して

\begin{eqnarray*}
u(1) &=& (-0.395\times 40.5)+(-0.687)\times (-19.75) \\
&=& ...
... \left[ \begin{array}{c}
10.22 \\
-11.09
\end{array} \right]
\end{eqnarray*}

という具合に $u(k),x_1(k),x_2(k)$の応答が順次求められる。この結果も表 4.1に示してある。

4.22$N=5$$N=11$にとった場合の$x_1(k)$$k_1(k)$を描いた ものである。$N$を大きくすれば$k$のより大きな範囲で$k_1(k)$が一定値となり、 $k$が定数として扱えることがわかる。$x_1(k)$の方は、$N=5$の場合でも$N=11$ の場合でも同じ応答をすることを示している。

図 4.22:
\begin{figure}\begin{center}
\psbox[scale=0.60]{eps/4-7-1.eps} \end{center} \end{figure}


next up previous
Next: 状態観測器(State Obserber) Up: 離散値系制御理論 Previous: 極配置制御(Pole assignment)
Yasunari SHIDAMA
平成15年6月30日