13
13
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" version="5.0-subset Scilab" xml:lang="ja" xml:id="armax">
15
<refname>armax</refname>
16
<refpurpose> armax 同定</refpurpose>
20
<synopsis>[arc,la,lb,sig,resid]=armax(r,s,y,u,[b0f,prf])</synopsis>
28
<para>出力プロセス y(ny,n); ( ny: yの次元 , n : サンプルの大きさ)</para>
34
<para>入力プロセス u(nu,n); ( nu: uの次元 , n : サンプルの大きさ)</para>
40
<para>自己回帰,次数は r >=0 , s >=-1</para>
47
デフォルト値は0で,係数b0を同定する必要があることを意味します.
48
bof=1の場合,b0は0であると仮定され,同定されません.
55
<para>表示を制御するオプションのパラメータ. prf =1 (デフォルト値)の場合,
63
<para>Scilab arma オブジェクト (armac参照)</para>
69
<para>list(a,a+eta,a-eta) ( la は a の次元1) です; ただし,
71
a=[Id,a1,a2,...,ar],ただし,各aiは大きさ(ny,ny)の行列です.
78
<para>list(b,b+etb,b-etb) (lb はbの次元1) です; ただし,
80
b=[b0,.....,b_s] ただし,各biは大きさ(nu,nu)の行列です.
87
<para>ノイズの標準偏差の推定値で, resid=[ sig*e(t0),....] です.</para>
95
armax はn次元ARXプロセスの係数を同定するために使用されます.
97
<programlisting role=""><![CDATA[
15
<refname>armax</refname>
16
<refpurpose> armax 同定</refpurpose>
20
<synopsis>[arc,la,lb,sig,resid]=armax(r,s,y,u,[b0f,prf])</synopsis>
28
<para>出力プロセス y(ny,n); ( ny: yの次元 , n : サンプルの大きさ)</para>
34
<para>入力プロセス u(nu,n); ( nu: uの次元 , n : サンプルの大きさ)</para>
40
<para>自己回帰,次数は r >=0 , s >=-1</para>
47
デフォルト値は0で,係数b0を同定する必要があることを意味します.
48
bof=1の場合,b0は0であると仮定され,同定されません.
55
<para>表示を制御するオプションのパラメータ. prf =1 (デフォルト値)の場合,
63
<para>Scilab arma オブジェクト (armac参照)</para>
69
<para>list(a,a+eta,a-eta) ( la は a の次元1) です; ただし,
71
a=[Id,a1,a2,...,ar],ただし,各aiは大きさ(ny,ny)の行列です.
78
<para>list(b,b+etb,b-etb) (lb はbの次元1) です; ただし,
80
b=[b0,.....,b_s] ただし,各biは大きさ(nu,nu)の行列です.
87
<para>ノイズの標準偏差の推定値で, resid=[ sig*e(t0),....] です.</para>
95
armax はn次元ARXプロセスの係数を同定するために使用されます.
97
<programlisting role=""><![CDATA[
98
98
A(z^-1)y= B(z^-1)u + sig*e(t)
99
99
]]></programlisting>
101
ただし, e(t) は分散Iのn次元白色雑音です.
102
sig は nxn の行列で, A(z) および B(z)は以下のようになります:
104
<programlisting role=""><![CDATA[
101
ただし, e(t) は分散Iのn次元白色雑音です.
102
sig は nxn の行列で, A(z) および B(z)は以下のようになります:
104
<programlisting role=""><![CDATA[
105
105
A(z) = 1+a1*z+...+a_r*z^r; ( r=0 => A(z)=1)
106
106
B(z) = b0+b1*z+...+b_s z^s ( s=-1 => B(z)=0)
107
107
]]></programlisting>
109
この手法については,Eykhoffの96ページ,
110
"trends and progress in system identification"を参照ください.
111
<literal>z(t)=[y(t-1),..,y(t-r),u(t),...,u(t-s)]</literal>
113
<literal>coef= [-a1,..,-ar,b0,...,b_s] </literal>とおくと,
114
<literal>y(t)= coef* z(t) + sig*e(t) </literal>を記述することができ,
116
<literal>sum_{t=1}^N ( [y(t)- coef'z(t)]^2)</literal>
118
(ただし,t0=maxi(maxi(r,s)+1,1))) )します.
123
<programlisting role="example"><![CDATA[
109
この手法については,Eykhoffの96ページ,
110
"trends and progress in system identification"を参照ください.
111
<literal>z(t)=[y(t-1),..,y(t-r),u(t),...,u(t-s)]</literal>
113
<literal>coef= [-a1,..,-ar,b0,...,b_s] </literal>とおくと,
114
<literal>y(t)= coef* z(t) + sig*e(t) </literal>を記述することができ,
116
<literal>sum_{t=1}^N ( [y(t)- coef'z(t)]^2)</literal>
118
(ただし,t0=maxi(maxi(r,s)+1,1))) )します.
123
<programlisting role="example"><![CDATA[
124
124
//-Ex1- Arma model : y(t) = 0.2*u(t-1)+0.01*e(t-1)
125
125
ny=1,nu=1,sig=0.01;
126
126
Arma=armac(1,[0,0.2],[0,1],ny,nu,sig) //defining the above arma model