システム同定とは、入力と出力の観測データから制御対象(プラント)の数学モデルを推定する手法の総称である。
「モデルがあれば制御は半分終わっている」と言われるほど、制御系設計において重要なステップである。
例:一次遅れ+むだ時間モデル(FOPDT) \[ G(s) = \frac{K}{T s + 1} e^{-Ls} \] ステップ応答の立ち上がりと遅れから、\(K, T, L\) を推定できる。
測定された周波数応答 \[ \{ \omega_i,\ |G(j\omega_i)|,\ \angle G(j\omega_i) \} \] から、低次の伝達関数をフィッティングすることも多い。
離散時間モデルの基本形: \[ y[k] + a_1 y[k-1] + \dots + a_n y[k-n] = b_1 u[k-1] + \dots + b_m u[k-m] + e[k] \] e[k]:モデル化誤差(白色雑音と仮定することが多い)
z 変換すると \[ G(z)=\frac{B(z^{-1})}{A(z^{-1})} \]
ARX は実装・推定が簡単で、 ARMAX / OE / BJ は「より現実に近いノイズモデル」を扱える。
ARX の場合、未知パラメータベクトルを \(\theta\)、観測を \(\phi[k]\) とすると \[ y[k] = \phi[k]^{\mathrm T} \theta + e[k] \] 多数のサンプルから最小二乗推定: \[ \hat{\theta} = ( \Phi^{\mathrm T} \Phi )^{-1} \Phi^{\mathrm T} y \]
状態空間モデルを直接データから推定する手法群。 N4SID, MOESP, CVA などの有名なアルゴリズムがある。
\[ x[k+1]=A x[k]+B u[k] + w[k] \] \[ y[k]=C x[k]+D u[k] + v[k] \]
非線形自己回帰+外生入力モデル: \[ y[k] = f\bigl( y[k-1],\dots,y[k-n_y], u[k-1],\dots,u[k-n_u] \bigr) + e[k] \] f を多項式・ニューラルネットなどで表現する。
「入力に非線形 → 線形ダイナミクス」 \[ v[k] = f(u[k]), \quad y[k] = G(q^{-1}) v[k] \]
「線形ダイナミクス → 出力に非線形」 \[ x[k] = G(q^{-1}) u[k], \quad y[k] = f(x[k]) \]
入力側と出力側両方に非線形を持つ。
近年は、機械学習・深層学習を用いたデータ駆動型のモデル構築が広く研究・応用されている。
入力ベクトル \[ \xi[k] = \bigl( y[k-1],\dots,y[k-n_y], u[k-1],\dots,u[k-n_u] \bigr) \] から出力 \(y[k]\) を予測する学習問題として扱う。
内部状態をもつニューラルネットでダイナミクスを表現: \[ h[k+1] = F(h[k], u[k]) \] \[ \hat{y}[k] = G(h[k]) \] これにより、状態空間モデルに相当する「ニューラル状態空間」を学習できる。
非線形ダイナミクスを「高次元の線形ダイナミクス」とみなす枠組み。 深層学習を用いて、非線形系を線形状態空間モデルに埋め込む試みもある。
候補となる基底関数(多項式・三角関数など)から、 スパース回帰で「本当に必要な項」だけを選び出し、 コンパクトな微分方程式モデルを自動抽出する手法。
「モデルの目的」と「利用する制御手法」によって、 必要なモデルの精度や複雑さは大きく変わる。 やりすぎて難しすぎるモデルにしないのも重要な設計判断である。