実際のプラントは多くが非線形である。 例:摩擦、サチュレーション、デッドゾーン、非線形ばね、化学反応、流体、ロボットなど。
古典制御(線形制御)では扱いきれないため、 非線形性を明示的に考慮した理論が必要となる。
\[ \dot{x} = f(x,u),\qquad y = h(x,u) \] f, h は非線形関数。
非線形システムを点 \((x_0,u_0)\) の周りでテイラー展開すると
\[ \dot{x} \approx A\Delta x + B\Delta u \] \[ y \approx C\Delta x + D\Delta u \] これにより古典制御が適用可能になる。
非線形システムの安定性を調べるために、 スカラー関数 \(V(x)\)(エネルギーのようなもの)を使う:
\[ \dot{V}(x) < 0 \] を満たせば、原点は漸近安定。
入力がない系 \[ \dot{x}=f(x) \] において平衡点の安定性を調べるのに使う。
非線形システムの入力変換を使って システム全体を線形システムに変換する手法。
\[ \dot{x} = f(x) + g(x)u,\qquad y=h(x) \]
器用に u を選ぶことで \[ y^{(r)} = v \] のように「線形で簡単な形」にできる。
外乱やモデル誤差への極めて強いロバスト性を持つ非線形制御方式。
\[ s(x)=0 \] を目標とする超平面を定義し、軌道をそこに引き込む。
\[ s(x)\dot{s}(x) < 0 \] となるように u を選ぶ。
実機では切替の高速スイッチングが生じる。 → 対策:境界層法(サチュレーション関数)など。
非線形システムを「階層的な構造」に分け、 一段ずつ安定化していく設計法。 特に低次元ロボティクス系などで多用される。
\[ \dot{x}_1 = f_1(x_1) + g_1(x_1) x_2 \] \[ \dot{x}_2 = f_2(x_2) + g_2(x_2) u \]
まず \(x_1\) を安定化する目標値 \(x_2^\*\) を作り、 次に \(x_2\) を安定化する u を設計する。
逐次的にリヤプノフ関数を構築できるため、 設計が体系的に進む。
非線形関数を一次近似して線形カルマンフィルタを適用する。
線形化を使わず、サンプル集合で期待値を近似する手法。 非線形性が強い場合でも安定しやすい。
外乱推定や不確かさ評価に強い非線形オブザーバ。
非線形制御は「本当に必要な時に強い」制御方式であり、 状態空間法・最適制御・ロバスト制御の上位概念として理解すると分かりやすい。