Jury稳定性准则

Jury稳定性准则（Jury stability criterion）是在信号处理及控制理论中，判断线性离散系统稳定性的方式，是利用分析特征多项式来进行分析。Jury稳定性准则是劳斯–赫尔维茨稳定性判据的离散时间版本。Jury稳定性判据要求系统的极点都要位在以原点为圆心的单位圆内，劳斯–赫尔维茨稳定性判据要求系统的极点在复数平面的左半边。Jury稳定性准则得名自伊拉克裔美籍工程师殷巴尔·易卜拉欣·朱瑞。

## 方法

系统的特征多项式如下

$$f(z)=a_n+a_{n-1}z^1+a_{n-2}z^2+\cdots+a_1z^{n-1} + a_0z^n$$

用以下的方式来建构表格：

row｜zn｜zn-1｜zn-2｜z....｜z1｜z0

1｜a0｜a1｜a2｜...｜an-1｜an

2｜an｜an-1｜an-2｜...｜a1｜a0

3｜b0｜b1｜...｜bn-2｜bn-1

4｜bn-1｜bn-2｜...｜b1｜b0

5｜c0｜c1｜...｜cn-2

6｜cn-2｜cn-3｜...｜c0

...｜...｜...｜...｜...｜...｜...

2n-5｜p3｜p2｜p1｜p0

2n-4｜p0｜p1｜p2｜p3

2n-3｜q2｜q1｜q0

因此，第一行是多项式的系数，从常数项次而高次项次排列，第二行则是第一行的反序。

第三行是将第一行减去第二行乘以$\frac{a_n}{a_0}$，而第四行是第三行的反序（并且维持最后一个元素为零）。

$$\begin{align} a_0 \;\; & a_1 \;\; & \dots \;\; & a_{n-1} \;\;& a_n\\ a_n \;\; & a_{n-1} \;\; & \dots \;\; & a_1 \;\;& a_0\\ \left(a_0-a_n \frac{a_n}{a_0}\right)\;\;& \left(a_{1} - a_{n-1} \frac{a_n}{a_0}\right) \;\; &\dots\;\; & \left(a_{n-1} - a_{1} \frac{a_n}{a_0}\right) \;\;& 0 \\ \left(a_{n-1} - a_{1} \frac{a_n}{a_0}\right)\;\; & \dots \;\;& \left(a_{1} - a_{n-1} \frac{a_n}{a_0}\right) \;\;& \left(a_0-a_n \frac{a_n}{a_0}\right)\;\;&0\\ \end{align}$$

表格继续往下延伸，直到有一行只有一个非零元素为止。

针对头两行相减的系数是$\frac{a_n}{a_0}$，针对第三行及第四行相减的系数就变成$\frac{b_{n-1}}{b_{0}}$，因此所得的多项式会少一项。

## 稳定性测试

若${a_0}>0$，而${a_0}$,${b_0}$,${c_0}$...都是正值，表示系统的根都在单位圆内，系统稳定。只要上述有任何一个小于零，表示系统至少有一个根都在单位圆外，系统不稳定。

若Jury稳定性准则发现${a_0}$,${b_0}$,${c_0}$...中有一个为负值，即可结束测试，因为至少有一个根都在单位圆外，系统不稳定。

## 程式实现

此方式用电脑的动态阵列很容易实现。也可以确认系统所有的根（实根或是复数根）都在单位圆内。向量v是原多项式的系数，从最高项次到常数项。

```cpp
        /* vvd is the jury array */
        vvd.push_back(v); // Store the first row
        reverse(v.begin(),v.end());
        vvd.push_back(v); // Store the second row

        for(i=2;;i+=2)
        {
            v.clear();
            double mult=vvd[i-2][vvd[i-2].size()-1]/vvd[i-2][0]; // This is an/a0 as mentioned in the article.

            for( j=0;j<vvd[i-2].size()-1;j++) // Take the last 2 rows and compute the next row
                   v.push_back(vvd[i-2][j] - vvd[i-1][j]*mult);

            vvd.push_back(v);
            reverse(v.begin(),v.end()); // reverse the next row
            vvd.push_back(v);
            if(v.size()==1) break;
         }

         // Check is done using
         for(i=0;i<vvd.size();i+=2)
         {
              if(vvd[i][0]<=0) break;
         }

         if(i==vvd.size())
              "All roots lie inside unit disc "
         else
              "no"
```

## 范例

若已知$\mathit{\Eta}(\mathrm{z})$的分母多项式为$\mathrm{A}(\mathrm{z})={\color{Blue}4z^4}-{\color{Brown}4z^3} + {\color{Brown}2z^1}-1$，判断该系统是否稳定。

解答:因为$\mathrm{A}(1)=4-4+2-1=1>0$ $(-1)^4\mathrm{A}(-1)=4+4-2-1=5>0$ 将$\mathrm{A}(z)$的系数排列成朱利表(如下):

row｜z4｜z3｜z2｜z1｜z0

1｜4｜-4｜0｜2｜-1

2｜-1｜2｜0｜-4｜4

3｜15｜-14｜0｜4

4｜4｜0｜-14｜15

5｜209｜-210｜56

且$4>\left| -1 \right|$ $15>\left| 4 \right|$ $209>\left| 56 \right|$ 即满足Jury稳定条件，因此$\mathit{\Eta}(\mathrm{z})$所有极点位于$\left| z \right|<1$内，故系统是稳定的。

## 相关条目

- 林纳德–奇帕特判据：由劳斯–赫尔维茨稳定性判据产生的另一个连续系统稳定性判据。

## 参考资料

若需要更多细节，可以参考以下连结：

- A note on the reduced Schur–Cohn criterion
- Wikibooks on Control Systems - Jury's Test

进阶参考资料：

- http://www.laas.fr/~henrion/Papers/lyap.ps.gz

有关实现的资料：

- http://www.ticalc.org/archives/files/fileinfo/426/42696.html (TI-83+/84+ graphing calculators)