安定性4 代数的判別法2 Routhの安定判別法

Routhの安定判別法は

D(s)=a_n s^n + a_{n-1} s^{n-1} + \cdots + a_0 = 0,a_n \ne 0

をもとに、Routh表と呼ばれる数表を作りその第1列の全ての要素が同符号であれば、システムが安定であるというものである。

f:id:mahou:20190703110038j:plain

Routhの数表の作り方を説明する。表はn+1個の行からなり、各行の要素r_{ij}は以下のように定める。第1行(s^nの行)と第2行(s^{n-1}の行)は

s^n:\{r_{n0},r_{n1},r_{n2},\cdots,r_{n[n/2]}\}=\{a_n, a_{n-2},a_{n-4},a_{\nu(n)}\}

s^n:\{r_{(n-1)0},r_{(n-1)1},r_{(n-1)2},\cdots,r_{(n-1)[n/2]}\}=\{a_{n-1}, a_{n-3},a_{n-5},a_{\nu(n-1)}\}

とおく。ここで、[i/2]\ell \geqq i/2を満たす最大の整数\ellを表す。また、\nu(i)i偶数のとき\nu(i)=0i奇数のとき\nu(i)=1である。

第3行以下については、s^iの行のk番目の要素r_{ik}をその直前の二つの行の第0列と第(k+1)列の要素から

\begin{equation} r_{ik} = - \frac{1}{r_{(i+1)0}} \begin{vmatrix} r_{(i+2)0} & r_{(i+2)(k+1)} \\ r_{(i+1)}0 & r_{(i+1)(k+1)} \end{vmatrix} = r_{(i+2)(k+1)} - \frac{r_{(i+2)0}}{r_{(i+1)0}} r_{(i+1)(k+1)} \end{equation}

k=0,1,2,\ldots,[i/2]

によりi=n-2,n-3,\ldots,0に対して順次計算する。ただし、r_{(i+1)0} \ne 0と仮定する。また、iが偶数の場合、s^iの行の最後の要素r_{i [i/2] }の計算式に現れるr_{(i+1)([i/2]+1)}s^{i+1}の行には出てこない要素であり、これは0とおく。この計算をn+1行(s^0の行)まで行うと表が完成する。

以上の計算により得られるRouth表の左端の要素列\{r_{n0},r_{(n-1)0},\ldots,r_{00}\}D(s)=0のRouth数列と呼ぶ。

 

定理(Routhの判定条件)

D(s)=0の根がすべて安定根であるための必要十分条件は、Routh数列の要素が全て0でなく、同符号となることである。同符号とならない場合には、数列の途中で符号が反転する回数をn_Rとするとき、D(s)=0n_R個の不安定根とn-n_R個の安定根を持つ。

 

証明の後に、Routhの判定法の補足としてRouth数列の計算の途中でその要素が0となった場合の扱いについて述べる。この場合、定理からはシステムは安定でないという結論が得られるだけであるが、Routh数列の計算法を少し修正することによって、中立根(0または純虚数の根のことを中立根と呼ぶ)と不安定根の個数を正確に知ることができる。s多項式A_i(s)をRouth表のs^iの行の要素r_{ik}を用いて

A_i(s)=r_{i0}s_i + r_{i1}s^{i-2}+r_{i2}s^{i-4}+\cdots + r_{i[i/2]}s^{\nu(i)}

と定義し、さらにD_i(s)=A_i(s)+A_{i-1}(s)とおく。するとD_n(s)=A_n(s)+A_{n-1}(s)=D(s)であり、かつD_i(s)D_{i-1}(s)の根の複素平面上での配置に関して次の補題が成立する。

 

補題

D_i(s)=0の安定根、中立根、不安定根の個数をそれぞれn_-(D_i),n_0(D_i),n_+(D_i)とおくとき、

 \begin{equation} {\scriptstyle \{ n_- (D_i),n_0(D_i),n_+(D_i)\} = \left\{ \begin{array}{ll} \{n_- (D_{i-1})+1 ,n_0(D_{i-1}) , n_+(D_{i-1}) \}, & r_{i0}\hbox{と}r_{(i-1)0}\hbox{同符号の場合} \\ \{n_-(D_{i-1}) , n_0(D_{i-1}),n_+(D_{i-1})+1\},& r_{i0}\hbox{と}r_{(i-1)0}\hbox{異符号の場合} \end{array} \right. }\end{equation}

が成り立つ。ただし、\{n_-(D_0),n_0(D_0),n_+(D_0)\}=\{0,0,0\}である。

 

補題の証明

実数値変数\lambdaをパラメータとする多項式\hat{D}_i(s,\lambda)=D_i(s)-\lambda s A_{i-1}(s)=A_{i}(s)+(1-\lambda s)A_{i-1}(s)を定義しよう。\lambda=0のとき\hat{D}_i(s,0)=D_i(s)となる。また\displaystyle{\lambda^*=\frac{r_{i0}}{r_{(i-1)0}}}のとき

\displaystyle{\hat{D}_i(s,\lambda^*)=D_i(s)- \frac{r_{i0}}{r_{(i-1)0}}sA_{i-1}(s)}

=\displaystyle{ ( r_{(i-1)0}s^{i-1} + r_{(i-1)1}s^{i-3}+ \cdots ) \\ +\left( \left[ r_{i1} - \frac{r_{i0}}{r_{(i-1)0}}r_{(i-1)1} \right]s^{i-2} + \left[r_{i2} - \frac{r_{i0}}{r_{(i-1)0}}r_{(i-1)2}\right]s^{i-4}+\cdots \right) }

となり、

\begin{equation} r_{ik} = - \frac{1}{r_{(i+1)0}} \begin{vmatrix} r_{(i+2)0} & r_{(i+2)(k+1)} \\ r_{(i+1)}0 & r_{(i+1)(k+1)} \end{vmatrix} = r_{(i+2)(k+1)} - \frac{r_{(i+2)0}}{r_{(i+1)0}} r_{(i+1)(k+1)} \end{equation}

\hat{D}_i(s,\lambda^*)=( r_{(i-1)0}s^{i-1} + r_{(i-1)1}s^{i-3}+ \cdots )+( r_{(i-2)0}s^{i-1} + r_{(i-2)1}s^{i-3}+ \cdots )\\ =A_{i-1}(s)+A_{i-2}(s)=D_{i-1}(s)

ゆえに、\lambdaを0から\lambda^*まで連続的に変化させたときに\hat{D}_i(s,\lambda)=0i個の根が複素平面上に描く軌跡を考えると、それらはすべてD_i(s)=0の根の位置から出発し、その内i-1個の根はD_{i-1}(s)=0の根に到達し、残りの1個は無限大に発散する。しかも、以下に示すように\hat{D}_i(s,\lambda)=0の虚軸上にある極は移動せず、虚軸上にない根から出発した軌跡が虚軸を横切ることはない。したがって、D_i(s)=0D_{i-1}(s)=0の安定根、中立根、不安定根の個数は無限大に発散するもの1個を除いては等しく、この無限大に発散する根の安定性を調べればよいことになる。

まず、\hat{D}_i(s,\lambda)の虚軸上の根が移動しないことを示そう。いま仮にある\lambdaに対して\hat{D}_i(s,\lambda)=0が虚軸上にh重根s=\sqrt{-1}\omegaを持つとすると

\hat{D}_i(\sqrt{-1}\omega, \lambda)= A_i(\sqrt{-1}\omega)+(1-\lambda \sqrt{-1}\omega)A_{i-1}(\sqrt{-1}\omega)=0

が成り立つ。そしてiが偶数(奇数)とするとA_i(\sqrt{-1}\omega)は実数(虚数)値をとり、A_{i-1}(\sqrt{-1}\omega)虚数(実数)値をとるので、上式からA_{i-1}(\sqrt{-1}\omega)=A_i(\sqrt{-1}\omega)=0が得られ、したがってD_i(\sqrt{-1}\omega)=0が成り立つ。ついで

\displaystyle{\hat{D}_i^{[\ell]}(s,\lambda)= \frac{d^\ell \hat{D}_i(s,\lambda)}{ds^\ell}, A_i^{[\ell]}(s)= \frac{d^\ell A_i(s)}{ds^\ell}, \ell=1,2,\ldots,h-1}

とおくと、h\geqq 2ならば

\hat{D}_i^{[1]}(\sqrt{-1},\lambda)= A_i^{[1]}(\sqrt{-1}\omega)-\lambda A_{i-1}(\sqrt{-1}\omega)+(1-\lambda \sqrt{-1}\omega)A_{i-1}^{[1]}(\sqrt{-1}\omega)=0

でなくてはならない。A_{i-1}(\sqrt{-1}\omega)=0であることを考慮すると

A_i^{[1]}(\sqrt{-1}\omega= A_{i-1}^{[1]}(\sqrt{-1}\omega)=0

したがってD_i^{[1]}(\sqrt{-1}\omega)=0が得られる。これを繰り返すと結局D_i^{[\ell]}(\sqrt{-1}\omega)=0,\ell=1,2,\ldots,h-1が得られ、D_i(s)s=\sqrt{-1}\omegah重根を持つことがわかる。ゆえに\hat{D}_i(s,\lambda)=0の虚軸上の根は、重複度を含めて、\lambdaの値によって変化することはなく、D_{i-1}(s)も虚軸上にh重根s=\sqrt{-1}\omegaをもつ。よってD_i(s)=0の虚軸上にない根から出発した軌跡が虚軸を横切ることはなく、またD_i(s)D_{i-1}(s)の中立根の個数は等しいことがわかる。

 無限大に発散する根については

\hat{D}_i(s,\lambda)=(r_{i0}- \lambda r_{(i-1)0})s^i + r_{(i-1)0}s^{i-1}+\{s^{i-2}\hbox{以下の項}\}

=(r_{i0}-\lambda r_{(i-1)0})\left( s + \frac{1}{\lambda^*-\lambda}\right)s^{i-1}+\{s^{i-2}\hbox{以下の項}\}

と表せ、したがって

\displaystyle{ \frac{\hat{D}_i(s,\lambda)}{s^{i-1}} = (r_{i0}-\lambda r_{(i-1)0})\left( s + \frac{1}{\lambda^*-\lambda}\right) + \{s^{-1}\hbox{以下の項}\}}

であることから、\lambdaが0の側から\lambda^*に近づくとき、\lambda^*が正(r_{i0}r_{(i-1)0}が同符号)であれば、-\inftyの方向に発散する。したがって、すべての軌跡が虚軸を横切らないことを考慮すれば、この軌跡はD_i(s)の安定根から出発したものであることがわかる。同様にして、\lambda^*が負(r_{i0}r_{(i-1)0}が異符号)であれば、無限大に発散する根は+\inftyに発散するのでD_i(s)=0の不安定根から出発したものであることがわかる。よって補題が証明された。

 

定理の証明

上の補題より、定理が以下のように誘導できる。Routh数列の要素がすべて0でなく、同符号であれば、

 \begin{equation} {\scriptstyle \{ n_- (D_i),n_0(D_i),n_+(D_i)\} = \left\{ \begin{array}{ll} \{n_- (D_{i-1})+1 ,n_0(D_{i-1}) , n_+(D_{i-1}) \}, & r_{i0}\hbox{と}r_{(i-1)0}\hbox{同符号の場合} \\ \{n_-(D_{i-1}) , n_0(D_{i-1}),n_+(D_{i-1})+1\},& r_{i0}\hbox{と}r_{(i-1)0}\hbox{異符号の場合} \end{array} \right. }\end{equation}

i=1からi=nまで繰り返し用いることによって、\{n_-(D_n),n_0(D_n),n_+(D_n)\}=\{n,0,0\}が得られ、安定根のみを持つことが示される。また符号がn_R回反転する場合には\{n_-(D_n),n_0(D_n),n_+(D_n)\}=\{n-n_R,0,n_R\}が得られ、n_R個の不安定根とn-n_R個の安定根を持つことが示される。