行列差分方程式 は、ある時点における変数のベクトル (または場合によっては行列)の値が、行列を用いて、1 つ以上の前の時点における自身の値と関連付けられる 差分方程式 です。[ 1 ] [ 2 ] 方程式の次数は 、変数ベクトルの任意の 2 つの値間の最大時間間隔です。たとえば、
x t = A x t − 1 + B x t − 2 \displaystyle \mathbf {x} _{t}=\mathbf {Ax} _{t-1}+\mathbf {Bx} _{t-2}}
これは、 x がn × 1 の変数ベクトル、A とB がn × n 行列である、2 階行列差分方程式の例です。この方程式は、方程式の最後にベクトル定数項 が追加されていないため、同次方程式です。同じ方程式は、次のように書くこともできます。
x t + 2 = A x t + 1 + B x t \displaystyle \mathbf {x} _{t+2}=\mathbf {Ax} _{t+1}+\mathbf {Bx} _{t}}
または
x n = A x n − 1 + B x n − 2 {\displaystyle \mathbf {x} _{n}=\mathbf {Ax} _{n-1}+\mathbf {Bx} _{n-2}}
最もよく遭遇する行列差分方程式は1階のものである。
非均質な一次の場合と定常状態 非同次1階行列差分方程式の例は次のとおりです。
x t = A x t − 1 + b {\displaystyle \mathbf {x} _{t}=\mathbf {Ax} _{t-1}+\mathbf {b} } 加法定数ベクトルb を持つ。このシステムの定常状態はベクトルx の値x * であり、この値に達すると、その後はそこから逸脱しない。x * は差分方程式でx t = x t −1 = x * と設定し、 x * について解くことで求められる。
x * = [ 私 − A ] − 1 b {\displaystyle \mathbf {x} ^{*}=[\mathbf {I} -\mathbf {A} ]^{-1}\mathbf {b} } ここで、Iは n × n の 単位行列 であり、 [ I − A ]は 可逆で あると仮定する。すると、非同次方程式は、定常状態からの偏差に関して同次形式で書き直すことができる。
[ x t − x * ] = A [ x t − 1 − x * ] {\displaystyle \left[\mathbf {x} _{t}-\mathbf {x} ^{*}\right]=\mathbf {A} \left[\mathbf {x} _{t-1}-\mathbf {x} ^{*}\right]}
一次ケースの安定性 1 階行列差分方程式[ x t − x *] = A [ x t −1 − x *]は 安定 である、 つまりx t は 漸近的に定常状態x *に収束するが、 これは遷移行列A (実数または複素数)のすべての固有値の 絶対値 が 1 未満 (つまりスペクトル半径が 1 未満)である場合に限る。
一次の場合の解 方程式が同次形式y t = Ay t −1 に変換されていると仮定します。すると、解を求めるために知っておく必要があるベクトルy の初期値である初期条件 y 0 から繰り返し代入することができます。
y 1 = A y 0 y 2 = A y 1 = A 2 y 0 y 3 = A y 2 = A 3 y 0 {\displaystyle {\begin{aligned}\mathbf {y} _{1}&=\mathbf {Ay} _{0}\\\mathbf {y} _{2}&=\mathbf {Ay} _{1}=\mathbf {A} ^{2}\mathbf {y} _{0}\\\mathbf {y} _{3}&=\mathbf {Ay} _{2}=\mathbf {A} ^{3}\mathbf {y} _{0}\end{aligned}}} などなど、数学的帰納法により、 t に関する解は次のようになる。
y t = A t y 0 {\displaystyle \mathbf {y} _{t}=\mathbf {A} ^{t}\mathbf {y} _{0}} さらに、Aが対角化可能であれば、 Aを その固有値と固有ベクトル で書き直すことができ、解は次のようになる。
y t = P D t P − 1 y 0 、 {\displaystyle \mathbf {y} _{t}=\mathbf {PD} ^{t}\mathbf {P} ^{-1}\mathbf {y} _{0},} ここで、P は、列がA の固有ベクトルである n × n 行列(固有値はすべて異なると仮定) であり、D は、対角要素が A の固有値であるn × n 対角行列 です。この解は、上記の安定性結果の動機となります。A t は 、 A の固有値がすべて絶対値で 1 未満である場合に限り、時間とともにゼロ行列に縮小します。
n 次元システムy t = Ay t −1 から始めて、状態変数の 1 つ、例えばy 1 のダイナミクスを抽出できます。上記のy tの解方程式は、 y 1, t の解がA のn 個 の固有値で表されていることを示しています。したがって、 y 1 の進化をそれ自体で記述する方程式は、同じ固有値を含む解を持つ必要があります。この記述は、y 1 の進化方程式を直感的に動機づけます。
y 1 、 t = 1 1 y 1 、 t − 1 + 1 2 y 1 、 t − 2 + ⋯ + 1 n y 1 、 t − n {\displaystyle y_{1,t}=a_{1}y_{1,t-1}+a_{2}y_{1,t-2}+\dots +a_{n}y_{1,t-n}} ここで、パラメータa i は行列A の特性方程式 から得られる。
λ n − 1 1 λ n − 1 − 1 2 λ n − 2 − ⋯ − 1 n λ 0 = 0. {\displaystyle \lambda ^{n}-a_{1}\lambda ^{n-1}-a_{2}\lambda ^{n-2}-\dots -a_{n}\lambda ^{0}=0.} したがって、 n 次元一次線形システム の各スカラー変数は、行列差分方程式と同じ安定性特性(安定または不安定)を持つ、単変数n 次差分方程式に従って変化します。
高次ケースの解と安定性 高次の行列差分方程式( つまり、1周期よりも長い時間遅延を持つ方程式)は、 ブロック行列 (行列の行列)を用いて1次形式に変換することで解くことができ、その安定性を解析できます。例えば、2次の方程式があるとします。
x t = A x t − 1 + B x t − 2 {\displaystyle \mathbf {x} _{t}=\mathbf {Ax} _{t-1}+\mathbf {Bx} _{t-2}} 変数ベクトルx はn × 1 、A とBは n × n である。これは次の形式で積み重ねることができる。
[ x t x t − 1 ] = [ A B 私 0 ] [ x t − 1 x t − 2 ] {\displaystyle {\begin{bmatrix}\mathbf {x} _{t}\\\mathbf {x} _{t-1}\\\end{bmatrix}}={\begin{bmatrix}\mathbf {A} &\mathbf {B} \\\mathbf {I} &\mathbf {0} \\\end{bmatrix}}{\begin{bmatrix}\mathbf {x} _{t-1}\\\mathbf {x} _{t-2}\end{bmatrix}}} ここで、I はn × n 単位行列 、0は n × n 零行列 である。次に、現在および 1 回前の変数の2 n × 1スタックベクトルを z t とし、2 n × 2 n ブロック行列をL とすると、以前と同様に解が得られる。
z t = L t z 0 {\displaystyle \mathbf {z} _{t}=\mathbf {L} ^{t}\mathbf {z} _{0}} また、これまでと同様に、この積み重ねられた方程式、ひいては元の2階方程式は、行列L のすべての固有値の絶対値が1より小さい場合に限り安定である。
非線形行列差分方程式:リッカチ方程式 線形二次ガウス制御 では、現在および将来のコスト行列 の逆方向の変化を表す非線形行列方程式(以下、H と表記)が生じます。この方程式は離散動的リカッチ方程式 と呼ばれ、線形行列差分方程式に従って変化する変数ベクトルを、二次 コスト関数を 最適化するために外生 ベクトルを操作することによって制御する場合に生じます。このリカッチ方程式は、以下の形式、または類似の形式をとります。
H t − 1 = K + A ′ H t A − A ′ H t C [ C ′ H t C + R ] − 1 C ′ H t A {\displaystyle \mathbf {H} _{t-1}=\mathbf {K} +\mathbf {A} '\mathbf {H} _{t}\mathbf {A} -\mathbf {A} '\mathbf {H} _{t}\mathbf {C} \left[\mathbf {C} '\mathbf {H} _{t}\mathbf {C} +\mathbf {R} \right]^{-1}\mathbf {C} '\mathbf {H} _{t}\mathbf {A} } ここで、 H 、K 、A はn × n 行列、C はn × k 行列、R はk × k 行列であり、n は制御対象ベクトルの要素数、k は制御ベクトルの要素数です。パラメータ行列A とC は線形方程式 から、パラメータ行列K とR は二次コスト関数から得られます。詳細はここを参照してください。
一般に、この方程式はt に関してH t を 解析的に解くことはできません。むしろ、 H t の値のシーケンスは、リッカチ方程式を反復することによって求められます。しかし、R = 0 かつn = k + 1 の場合、このリッカチ方程式はスカラー有理差分方程式 に還元することで解析的に解けることが示されています[ 3 ] 。さらに、任意のk およびnに対して 、 遷移行列A が 非特異であれば、リッカチ方程式は行列の固有値に関して解析的に解くことができますが、これらは数値的に求める必要がある場合があります。[ 4 ]
ほとんどの状況において、 H の時間的変化は安定しており、他のすべての行列が有理数であっても、 H は 特定の固定行列H * に収束します。これは非有理数である可能性があります。確率的制御 § 離散時間 も参照してください。
関連するリッカチ方程式[ 5 ] は
X t + 1 = − [ E + B X t ] [ C + A X t ] − 1 {\displaystyle \mathbf {X} _{t+1}=-\left[\mathbf {E} +\mathbf {B} \mathbf {X} _{t}\right]\left[\mathbf {C} +\mathbf {A} \mathbf {X} _{t}\right]^{-1}} ここで、行列X 、A 、B 、C 、E はすべてn × n である。この方程式は明示的に解くことができる。X t = N t D t − 1 、 {\displaystyle \mathbf {X} _{t}=\mathbf {N} _{t}\mathbf {D} _{t}^{-1},} これは確かにt = 0 でN 0 = X 0 およびD 0 = I の場合に成り立つ。次にこれを差分方程式に代入すると、
X t + 1 = − [ E + B N t D t − 1 ] D t D t − 1 [ C + A N t D t − 1 ] − 1 = − [ E D t + B N t ] [ [ C + A N t D t − 1 ] D t ] − 1 = − [ E D t + B N t ] [ C D t + A N t ] − 1 = N t + 1 D t + 1 − 1 {\displaystyle {\begin{aligned}\mathbf {X} _{t+1}&=-\left[\mathbf {E} +\mathbf {BN} _{t}\mathbf {D} _{t}^{-1}\right]\mathbf {D} _{t}\mathbf {D} _{t}^{-1}\left[\mathbf {C} +\mathbf {AN} _{t}\mathbf {D} _{t}^{-1}\right]^{-1}\\&=-\left[\mathbf {ED} _{t}+\mathbf {BN} _{t}\right]\left[\left[\mathbf {C} +\mathbf {AN} _{t}\mathbf {D} _{t}^{-1}\right]\mathbf {D} _{t}\right]^{-1}\\&=-\left[\mathbf {ED} _{t}+\mathbf {BN} _{t}\right]\left[\mathbf {CD} _{t}+\mathbf {AN} _{t}\right]^{-1}\\&=\mathbf {N} _{t+1}\mathbf {D} _{t+1}^{-1}\end{aligned}}} したがって帰納法によってその形式はX t = N t D t − 1 {\displaystyle \mathbf {X} _{t}=\mathbf {N} _{t}\mathbf {D} _{t}^{-1}} すべてのt に対して成り立つ。すると、 N とD の変化は次のように書ける。
[ N t + 1 D t + 1 ] = [ − B − E A C ] [ N t D t ] ≡ J [ N t D t ] {\displaystyle {\begin{bmatrix}\mathbf {N} _{t+1}\\\mathbf {D} _{t+1}\end{bmatrix}}={\begin{bmatrix}-\mathbf {B} &-\mathbf {E} \\\mathbf {A} &\mathbf {C} \end{bmatrix}}{\begin{bmatrix}\mathbf {N} _{t}\\\mathbf {D} _{t}\end{bmatrix}}\equiv \mathbf {J} {\begin{bmatrix}\mathbf {N} _{t}\\\mathbf {D} _{t}\end{bmatrix}}} したがって帰納法によって
[ N t D t ] = J t [ N 0 D 0 ] {\displaystyle {\begin{bmatrix}\mathbf {N} _{t}\\\mathbf {D} _{t}\end{bmatrix}}=\mathbf {J} ^{t}{\begin{bmatrix}\mathbf {N} _{0}\\\mathbf {D} _{0}\end{bmatrix}}}
参考文献 ↑ Cull, Paul; Flahive, Mary ; Robson, Robbie (2005). Difference Equations: From Rabbits to Chaos . Springer. ch. 7. ISBN 0-387-23234-6 。 ↑ Chiang, Alpha C. (1984). Fundamental Methods of Mathematical Economics (3rd ed.). McGraw-Hill. pp. 608–612 . ISBN 9780070107809 。↑ Balvers, Ronald J.; Mitchell, Douglas W. (2007). "線形二次制御問題の次元削減" (PDF) . Journal of Economic Dynamics and Control . 31 (1): 141– 159. doi : 10.1016/j.jedc.2005.09.013 . S2CID 121354131 . ↑ Vaughan, DR (1970). "離散リッカチ方程式の非再帰的代数解". IEEE Transactions on Automatic Control . 15 (5): 597–599 . doi : 10.1109/TAC.1970.1099549 . ↑ マーティン、CF;アンマー、G. (1991)。 「行列リカッチ方程式の幾何学と関連する固有値法」。ビタニで。ラウブ;ウィレムス(編)。 リッカティ方程式 。スプリンガー・フェルラーク。 土井 : 10.1007/978-3-642-58223-3_5 。 ISBN 978-3-642-63508-3 。