Main Content

struc

単出力 ARX モデルの推定用のモデル次数の組み合わせの生成

構文

nn = struc(na,nb,nk)
nn = struc(na,nb_1,...,nb_nu,nk_1,...,nk_nu)

説明

nn = struc(na,nb,nk) は、単入力単出力 ARX モデルの推定用のモデル次数の組み合わせを生成します。nanb は、モデル次数の範囲を指定する行ベクトルです。nk は、モデル遅延の範囲を指定する行ベクトルです。nn は、次数と遅延のすべての組み合わせを含む行列です。

nn = struc(na,nb_1,...,nb_nu,nk_1,...,nk_nu) は、nu 個の入力チャネルをもつ ARX モデルのモデル次数の組み合わせを生成します。

すべて折りたたむ

推定と検証のデータ セットを作成します。

load iddata1;
ze = z1(1:150);
zv = z1(151:300);

モデルの次数と遅延の範囲を指定して、推定用のモデル次数の組み合わせを生成します。

NN = struc(1:3,1:2,2:4);

操作変数法を使用して ARX モデルを推定し、それぞれのモデル次数の組み合わせについて損失関数を計算します。

V = ivstruc(ze,zv,NN);

検証データに最もよく適合するモデル次数を選択します。

order = selstruc(V,0);

選択された次数の ARX モデルを推定します。

M = iv4(ze,order);

推定と検証のデータ セットを読み込み、変数名を表示します。

load co2datatt tte ttv
head(tte,3)
     Time      u1     u2      y1   
    _______    ___    __    _______

    0.5 sec    170    50    -44.302
    1 sec      170    50    -44.675
    1.5 sec    170    50     -45.29

モデル次数の組み合わせを生成します。

  • na = 2:4

  • nb = 2:5 (1 番目の入力)、1 または 4 (2 番目の入力)。

  • nk = 1:4 (1 番目の入力)、0 (2 番目の入力)。

NN = struc(2:4,2:5,[1 4],1:4,0);

それぞれのモデル次数の組み合わせについて ARX モデルを推定します。

V = arxstruc(tte,ttv,NN);

検証データに最もよく適合するモデル次数を選択します。

order = selstruc(V,0)
order = 1×5

     2     4     4     2     0

選択された次数の ARX モデルを推定します。

M = arx(tte,order)
M =
Discrete-time ARX model: A(z)y(t) = B(z)u(t) + e(t)               
  A(z) = 1 - 1.252 z^-1 + 0.302 z^-2                              
                                                                  
  B1(z) = -0.3182 z^-2 - 0.1292 z^-3 + 0.2883 z^-4 + 0.001051 z^-5
                                                                  
  B2(z) = -0.02705 + 0.01948 z^-1 + 0.1695 z^-2 + 0.3278 z^-3     
                                                                  
Sample time: 0.5 seconds
  
Parameterization:
   Polynomial orders:   na=2   nb=[4 4]   nk=[2 0]
   Number of free coefficients: 10
   Use "polydata", "getpvec", "getcov" for parameters and their uncertainties.

Status:                                          
Estimated using ARX on time domain data "tte".   
Fit to estimation data: 88.59% (prediction focus)
FPE: 3.993, MSE: 3.938                           
 

ヒント

  • ARX モデルの損失関数を計算するときは、arxstruc または ivstruc と共に使用して、struc で返されるモデル次数の組み合わせごとに 1 つずつ計算します。

バージョン履歴

R2006a より前に導入