【入門】状態空間モデル超基礎【数値計算】

【入門】状態空間モデル超基礎【数値計算】 数値計算
【入門】状態空間モデル超基礎【数値計算】

MATLAB、Python、Scilab、Julia比較ページはこちら
https://www.simulationroom999.com/blog/comparison-of-matlab-python-scilab/

はじめに

の、
MATLAB,Python,Scilab,Julia比較 その43【状態空間モデル①】
MATLAB,Python,Scilab,Julia比較 その44【状態空間モデル②】
MATLAB,Python,Scilab,Julia比較 その45【状態空間モデル③】
MATLAB,Python,Scilab,Julia比較 その46【状態空間モデル④】
MATLAB,Python,Scilab,Julia比較 その47【状態空間モデル⑤】
MATLAB,Python,Scilab,Julia比較 その48【状態空間モデル⑥】

を書き直したもの。

超シンプルな微分方程式を状態空間モデルで表現することで、
まずは雰囲気を察してもらうことが目的。

状態空間モデルに苦手意識を持っている人の推測される所感

状態空間モデルに対して苦手意識を持っている人は少なからず居る。
おそらく以下の認識ではなかろうか?

  • ベクトル&行列&微分方程式とか意味わからん
  • そもそも数式見せられても何言ってるかわからん
  • というかどこで微分してんの?どこにベクトルあんの?
  • 数式上の各変数の意味わからん

本記事ではまずこれらの解決を目指す。

微分の表記法

微分の表記法の代表格はライプニッツ記法、ラグランジュ記法

ライプニッツ記法
\(\displaystyle \frac{d f(t)}{dt}\)
\(\displaystyle \frac{d^2 f(t)}{dt^2}\)

ラグランジュ記法
\(\displaystyle f^\prime(t) \)
\(\displaystyle f^{\prime\prime}(t) \)

これらに加えて、オイラー記法、ニュートン記法というのもあり、
状態空間モデルはニュートン記法で書かれていることがほとんど
これの影響で微分の存在を検知出来て無い人もいるのかと。

ニュートン記法
\(\displaystyle \dot{y}=\frac{d y}{dt}\)
\(\displaystyle \ddot{y}=\frac{d^2 y}{dt^2}\)

つまり、ドットの数が時間微分の階数
尚、この記法を使う場合は2階微分までが一般的。

なぜニュートン記法を使用されるかというと、以下の理由が推測される。

  • ライプニッツの記法だと数式上の記載が増えすぎる
  • 上記の対策としてはラグランジュ記法でもOKではあるが、ニュートン記法だと時間微分であることが明確になるので、分かってる人であれば一目瞭然となる。

状態空間モデルを一言で言うと

状態空間モデルを一言で言うと、

微分方程式を組み込んだシステムに於いての入力、状態、出力を定義するもの

尚、それぞれは多変量(ベクトル)であってもOK。
この多変量(ベクトル)な点が状態空間モデルの利便性を大きく引き上げている。
(その分、概念が難しくなっているとも言えるが)

状態空間モデルの方程式

状態空間モデルを構成する方程式は2つ。

状態方程式
\(\dot{\boldsymbol x}=A\boldsymbol x+B\boldsymbol u\)

出力方程式
\(\boldsymbol y=C\boldsymbol x+D\boldsymbol u\)

ちなみに、出力方程式のことを観測方程式と呼ぶ場合もある。

状態空間モデルの各変数

変数としては3つ。

状態量:\(\boldsymbol x\)
出力量:\(\boldsymbol y\)
入力量:\(\boldsymbol u\)

各名称の「量」を「変数」とする場合もある。
状態量だったら状態変数という名前になることになる。
方程式の時と同じように出力量を観測量、観測変数と呼ぶ場合もある。

これらの変数はすべてベクトル。
ベクトルの場合、\(\vec{x}\)の書き方をイメージするかもしれないが、
\(\boldsymbol x\)のように太文字表記もベクトル表記の一種になる。

状態空間モデルのパラメータ

\(A,B,C,D\)はパラメータで行列。

状態行列:\(A\)
入力行列:\(B\)
出力行列:\(C\)
直達行列:\(D\)

これも例によって、出力行列が観測行列って呼ばれる場合はある。

呼び名がいろいろある理由

呼び名がいろいろある理由は正直不明ではあるが、
状態空間モデルを利用する領域によって呼び名のクセがあるのかもしれない。
物理学、制御工学、統計学などが領域として考えられる。

状態空間モデルの知るためには?

状態空間モデルを知るには使い方を見た方が早いとは思うが、
使ってる状況をみてもわからないという鶏と卵のような関係になり易い。
(だから苦手意識を持ってる人がまぁまぁ居るのでしょう)

よって、超シンプルな状態空間モデルを一度作ってみるのが手っ取り早い

次のページへ

コメント

タイトルとURLをコピーしました