制御理論 において、バックステッピングは、 1990年頃に Petar V. Kokotovic らによって開発された手法であり[ 1 ] [ 2 ] 、特殊なクラスの非線形 動的システムの 安定化 制御を設計するためのものです。これらのシステムは、他の方法で安定化できる既約サブシステムから放射状に伸びるサブシステムから構成されています。この再帰的な 構造により、設計者は既知の安定システムから設計プロセスを開始し、各外部サブシステムを段階的に安定化する新しいコントローラを「逆算」することができます。このプロセスは、最終的な外部制御に到達すると終了します。したがって、このプロセスはバックステッピングとして知られています。 [ 3 ] [ 4 ]
後退的なアプローチ バックステッピング法は、厳密フィードバック形式 のシステムの原点を 安定化する ための再帰的な 方法を提供する。つまり、[ 4 ] の形式のシステムを考える。
{ x ˙ = f x ( x ) + g x ( x ) z 1 z ˙ 1 = f 1 ( x 、 z 1 ) + g 1 ( x 、 z 1 ) z 2 z ˙ 2 = f 2 ( x 、 z 1 、 z 2 ) + g 2 ( x 、 z 1 、 z 2 ) z 3 ⋮ z ˙ 私 = f 私 ( x 、 z 1 、 z 2 、 … 、 z 私 − 1 、 z 私 ) + g 私 ( x 、 z 1 、 z 2 、 … 、 z 私 − 1 、 z 私 ) z 私 + 1 のために 1 ≤ 私 < k − 1 ⋮ z ˙ k − 1 = f k − 1 ( x 、 z 1 、 z 2 、 … 、 z k − 1 ) + g k − 1 ( x 、 z 1 、 z 2 、 … 、 z k − 1 ) z k z ˙ k = f k ( x 、 z 1 、 z 2 、 … 、 z k − 1 、 z k ) + g k ( x 、 z 1 、 z 2 、 … 、 z k − 1 、 z k ) u {\displaystyle {\begin{aligned}{\begin{cases}{\dot {\mathbf {x} }}&=f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )z_{1}\\{\dot {z}}_{1}&=f_{1}(\mathbf {x} ,z_{1})+g_{1}(\mathbf {x} ,z_{1})z_{2}\\{\dot {z}}_{2}&=f_{2}(\mathbf {x} ,z_{1},z_{2})+g_{2}(\mathbf {x} ,z_{1},z_{2})z_{3}\\\vdots \\{\ドット{z}}_{i}&=f_{i}(\mathbf {x} ,z_{1},z_{2},\ldots ,z_{i-1},z_{i})+g_{i}(\mathbf {x} ,z_{1},z_{2},\ldots ,z_{i-1},z_{i})z_{i+1}\quad {\text{ for }}1\leq i<k-1\\\vdots \\{\dot {z}}_{k-1}&=f_{k-1}(\mathbf {x} ,z_{1},z_{2},\ldots ,z_{k-1})+g_{k-1}(\mathbf {x} ,z_{1},z_{2},\ldots ,z_{k-1})z_{k}\\{\dot {z}}_{k}&=f_{k}(\mathbf {x} ,z_{1},z_{2},\ldots ,z_{k-1},z_{k})+g_{k}(\mathbf {x} ,z_{1},z_{2},\dots ,z_{k-1},z_{k})u\end{cases}}\end{aligned}}} どこ
x ∈ R n \displaystyle \mathbf {x} \in \mathbb {R} ^{n}} とn ≥ 1 {\displaystyle n\geq 1} 、z 1 、 z 2 、 … 、 z 私 、 … 、 z k − 1 、 z k {\displaystyle z_{1},z_{2},\ldots ,z_{i},\ldots ,z_{k-1},z_{k}} スカラー です、u はシステムへのスカラー 入力であり、f x 、 f 1 、 f 2 、 … 、 f 私 、 … 、 f k − 1 、 f k {\displaystyle f_{x},f_{1},f_{2},\ldots ,f_{i},\ldots ,f_{k-1},f_{k}} 原点 で消滅する (つまり、f 私 ( 0 、 0 、 … 、 0 ) = 0 {\displaystyle f_{i}(0,0,\dots ,0)=0} )g 1 、 g 2 、 … 、 g 私 、 … 、 g k − 1 、 g k {\displaystyle g_{1},g_{2},\ldots ,g_{i},\ldots ,g_{k-1},g_{k}} 関心領域全体でゼロではない(つまり、g 私 ( x 、 z 1 、 … 、 z k ) ≠ 0 {\displaystyle g_{i}(\mathbf {x} ,z_{1},\ldots ,z_{k})\neq 0} のために1 ≤ 私 ≤ k {\displaystyle 1\leq i\leq k} )また、サブシステムが
x ˙ = f x ( x ) + g x ( x ) u x ( x ) {\displaystyle {\dot {\mathbf {x} }}=f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )u_{x}(\mathbf {x} )} 原点 に安定化される (つまり、x = 0 {\displaystyle \mathbf {x} =\mathbf {0} \,} 既知の 制御によってu x ( x ) {\displaystyle u_{x}(\mathbf {x} )} そのためu x ( 0 ) = 0 {\displaystyle u_{x}(\mathbf {0} )=0} また、リアプノフ関数 がV x {\displaystyle V_{x}} この安定なサブシステムについては、が既知である。つまり、このx サブシステムは他の方法で安定化され、バックステッピングによってその安定性がに拡張される。z {\displaystyle {\textbf {z}}} それを囲む殻。
安定したx サブシステムを中心としたこの厳密なフィードバック形式 のシステムでは、
バックステッピング設計の制御入力u は 、状態に対して最も直接的な安定化効果をもたらします。z n {\displaystyle z_{n}} 。 州z n {\displaystyle z_{n}} すると、状態を安定させる制御として機能するz n − 1 {\displaystyle z_{n-1}} その前に。 このプロセスは各州がz 私 {\displaystyle z_{i}} 架空の 「制御」によって安定化されるz 私 + 1 {\displaystyle z_{i+1}} 。 バックステッピングアプローチは、 x サブシステムを安定化する方法を決定しますz 1 {\displaystyle z_{1}} そして、次の状態を作成する方法を決定する作業に進みます。z 2 {\displaystyle z_{2}} ドライブz 1 {\displaystyle z_{1}} xを 安定させるために必要な制御へと至る。したがって、最終的な制御u が設計されるまで、プロセスは厳密なフィードバック形式のシステムからxへと「後退」していく。
再帰制御設計の概要 より小さい(つまり、より低い)サブシステムが x ˙ = f x ( x ) + g x ( x ) u x ( x ) {\displaystyle {\dot {\mathbf {x} }}=f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )u_{x}(\mathbf {x} )} 何らかの制御によって既に原点に安定化されているu x ( x ) {\displaystyle u_{x}(\mathbf {x} )} どこu x ( 0 ) = 0 {\displaystyle u_{x}(\mathbf {0} )=0} つまり、u x {\displaystyle u_{x}} このシステムを安定化させるには、別の方法を用いる必要がある。 また、リアプノフ関数が V x {\displaystyle V_{x}} この安定なサブシステムについては、安定性が既知である。バックステッピング法は、このサブシステムの制御された安定性をより大きなシステムに拡張する方法を提供する。 制御u 1 ( x 、 z 1 ) {\displaystyle u_{1}(\mathbf {x} ,z_{1})} システムは、 z ˙ 1 = f 1 ( x 、 z 1 ) + g 1 ( x 、 z 1 ) u 1 ( x 、 z 1 ) {\displaystyle {\dot {z}}_{1}=f_{1}(\mathbf {x} ,z_{1})+g_{1}(\mathbf {x} ,z_{1})u_{1}(\mathbf {x} ,z_{1})} 安定化されているため、z 1 {\displaystyle z_{1}} 望ましいものに従うu x {\displaystyle u_{x}} 制御。制御設計は拡張リアプノフ関数候補に基づいている。 V 1 ( x 、 z 1 ) = V x ( x ) + 1 2 ( z 1 − u x ( x ) ) 2 {\displaystyle V_{1}(\mathbf {x} ,z_{1})=V_{x}(\mathbf {x} )+{\frac {1}{2}}(z_{1}-u_{x}(\mathbf {x} ))^{2}} コントロールu 1 {\displaystyle u_{1}} 選択してバインドできますV ˙ 1 {\displaystyle {\dot {V}}_{1}} ゼロから離れたところ。 制御u 2 ( x 、 z 1 、 z 2 ) {\displaystyle u_{2}(\mathbf {x} ,z_{1},z_{2})} システムは、 z ˙ 2 = f 2 ( x 、 z 1 、 z 2 ) + g 2 ( x 、 z 1 、 z 2 ) u 2 ( x 、 z 1 、 z 2 ) {\displaystyle {\dot {z}}_{2}=f_{2}(\mathbf {x} ,z_{1},z_{2})+g_{2}(\mathbf {x} ,z_{1},z_{2})u_{2}(\mathbf {x} ,z_{1},z_{2})} 安定化されているため、z 2 {\displaystyle z_{2}} 望ましいものに従うu 1 {\displaystyle u_{1}} 制御。制御設計は拡張リアプノフ関数候補に基づいている。 V 2 ( x 、 z 1 、 z 2 ) = V 1 ( x 、 z 1 ) + 1 2 ( z 2 − u 1 ( x 、 z 1 ) ) 2 {\displaystyle V_{2}(\mathbf {x} ,z_{1},z_{2})=V_{1}(\mathbf {x} ,z_{1})+{\frac {1}{2}}(z_{2}-u_{1}(\mathbf {x} ,z_{1}))^{2}} コントロールu 2 {\displaystyle u_{2}} 選択してバインドできますV ˙ 2 {\displaystyle {\dot {V}}_{2}} ゼロから離れたところ。 このプロセスは実際のu が判明するまで続き、 実際の 制御u は安定化するz k {\displaystyle z_{k}} 架空の 支配へu k − 1 {\displaystyle u_{k-1}} 。 架空 の支配u k − 1 {\displaystyle u_{k-1}} 安定させるz k − 1 {\displaystyle z_{k-1}} 架空の 支配へu k − 2 {\displaystyle u_{k-2}} 。架空 の支配u k − 2 {\displaystyle u_{k-2}} 安定させるz k − 2 {\displaystyle z_{k-2}} 架空の 支配へu k − 3 {\displaystyle u_{k-3}} 。... 架空 の支配u 2 {\displaystyle u_{2}} 安定させるz 2 {\displaystyle z_{2}} 架空の 支配へu 1 {\displaystyle u_{1}} 。架空 の支配u 1 {\displaystyle u_{1}} 安定させるz 1 {\displaystyle z_{1}} 架空の 支配へu x {\displaystyle u_{x}} 。架空 の支配u x {\displaystyle u_{x}} xを 原点に固定する。 このプロセスは、安定性を確保するための内部サブシステムの要件から始まり、各ステップで安定性を維持しながら、システムから徐々に後退していくため、 バックステッピング と呼ばれます。
f 私 {\displaystyle f_{i}} 原点で消滅する0 ≤ 私 ≤ k {\displaystyle 0\leq i\leq k} 、g 私 {\displaystyle g_{i}} 非ゼロである1 ≤ 私 ≤ k {\displaystyle 1\leq i\leq k} 、与えられた制御u x {\displaystyle u_{x}} もっているu x ( 0 ) = 0 {\displaystyle u_{x}(\mathbf {0} )=0} 、 すると、結果として得られるシステムは原点( つまり、x = 0 {\displaystyle \mathbf {x} =\mathbf {0} \,} 、z 1 = 0 {\displaystyle z_{1}=0} 、z 2 = 0 {\displaystyle z_{2}=0} 、...、z k − 1 = 0 {\displaystyle z_{k-1}=0} 、 そしてz k = 0 {\displaystyle z_{k}=0} ) はグローバルに漸近安定で ある。
積分器バックステッピング 一般的な厳密フィードバック形式の 動的システム に対するバックステッピング手順を説明する前に、より小規模なクラスの厳密フィードバック形式システムに対するアプローチについて説明しておくと便利です。これらのシステムは、既知のフィードバック安定化制御法則を持つシステムの入力に一連の積分器を接続するため、安定化アプローチは積分器バックステッピングとして知られています。積分器バック ステッピングアプローチは、わずかな修正を加えることで、すべての厳密フィードバック形式システムに対応できるように拡張できます。
単一積分器バックステッピング この例では、バックステッピング法を用いて、式(1 )の単一積分器システムを原点の平衡点の周りで安定化させます。より大まかに言えば、制御則を設計したいのです。 u 1 ( x 、 z 1 ) {\displaystyle u_{1}(\mathbf {x} ,z_{1})} それは州が( x 、 z 1 ) {\displaystyle (\mathbf {x} ,z_{1})} 戻る( 0 、 0 ) {\displaystyle (\mathbf {0} ,0)} システムが任意の初期状態から起動された後。
x ˙ = F ( x ) どこ F ( x ) ≜ f x ( x ) + g x ( x ) u x ( x ) {\displaystyle {\dot {\mathbf {x} }}=F(\mathbf {x} )\qquad {\text{where}}\qquad F(\mathbf {x} )\triangleq f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )u_{x}(\mathbf {x} )} とu x ( 0 ) = 0 {\displaystyle u_{x}(\mathbf {0} )=0} リアプノフ関数 を持つV x ( x ) > 0 {\displaystyle V_{x}(\mathbf {x} )>0} そのため V ˙ x = ∂ V x ∂ x ( f x ( x ) + g x ( x ) u x ( x ) ) ≤ − W ( x ) {\displaystyle {\dot {V}}_{x}={\frac {\partial V_{x}}{\partial \mathbf {x} }}(f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )u_{x}(\mathbf {x} ))\leq -W(\mathbf {x} )} どこW ( x ) {\displaystyle W(\mathbf {x} )} は正定値関数 です。つまり、既存のより単純な x サブシステム が(リアプノフの意味で)安定で あることを既に示して いると仮定します 。 大まかに言うと、この安定性の概念は次のことを意味します。 機能V x {\displaystyle V_{x}} これは、 x サブシステムの「一般化されたエネルギー」のようなものです。システムのx 状態が原点から離れるにつれて、エネルギーはV x ( x ) {\displaystyle V_{x}(\mathbf {x} )} 成長する。 時間の経過とともにエネルギーがV x ( x ( t ) ) {\displaystyle V_{x}(\mathbf {x} (t))} ゼロに崩壊すると、x 状態は崩壊しなければならないx = 0 {\displaystyle \mathbf {x} =\mathbf {0} \,} つまり、起源x = 0 {\displaystyle \mathbf {x} =\mathbf {0} \,} これはシステムの安定した平衡状態 であり、時間の経過とともにxの 状態は継続的に原点に近づいていきます。 そう言うとW ( x ) {\displaystyle W(\mathbf {x} )} 正定値とはW ( x ) > 0 {\displaystyle W(\mathbf {x} )>0} を除くすべての場所x = 0 {\displaystyle \mathbf {x} =\mathbf {0} \,} 、 そしてW ( 0 ) = 0 {\displaystyle W(\mathbf {0} )=0} 。 声明V ˙ x ≤ − W ( x ) {\displaystyle {\dot {V}}_{x}\leq -W(\mathbf {x} )} つまりV ˙ x {\displaystyle {\dot {V}}_{x}} すべての点においてゼロから離れて制限されるが、x = 0 {\displaystyle \mathbf {x} =\mathbf {0} \,} つまり、システムが原点で平衡状態にない限り、その「エネルギー」は減少し続けるということである。 エネルギーは常に減衰していくため、システムは安定していなければならず、その軌道は原点に近づくはずである。 私たちの課題は、カスケード接続を実現する制御u を見つけることです。 ( x 、 z 1 ) {\displaystyle (\mathbf {x} ,z_{1})} このシステムも安定しています。したがって、この新しいシステムに対して新しい リアプノフ関数の候補を 見つける必要があります。その候補は制御u に依存しますが、制御を適切に選択することで、それがどこでも減衰することを保証できます。 次に、足し算 と 引き算によって g x ( x ) u x ( x ) {\displaystyle g_{x}(\mathbf {x} )u_{x}(\mathbf {x} )} (つまり、正味の 効果はないので、システムを一切変更しません)x ˙ {\displaystyle {\dot {\mathbf {x} }}} より大きなものの一部( x 、 z 1 ) {\displaystyle (\mathbf {x} ,z_{1})} システムでは、 { x ˙ = f x ( x ) + g x ( x ) z 1 + ( g x ( x ) u x ( x ) − g x ( x ) u x ( x ) ) ⏟ 0 z ˙ 1 = u 1 {\displaystyle {\begin{cases}{\dot {\mathbf {x} }}=f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )z_{1}+{\mathord {\underbrace {\left(g_{x}(\mathbf {x} )u_{x}(\mathbf {x} )-g_{x}(\mathbf {x} )u_{x}(\mathbf {x} )\right)} _{0}}}\\{\dot {z}}_{1}=u_{1}\end{cases}}} 再編成して { x ˙ = ( f x ( x ) + g x ( x ) u x ( x ) ) ⏟ F ( x ) + g x ( x ) ( z 1 − u x ( x ) ) ⏟ z 1 エラー追跡 u x z ˙ 1 = u 1 {\displaystyle {\begin{cases}{\dot {x}}={\mathord {\underbrace {\left(f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )u_{x}(\mathbf {x} )\right)} _{F(\mathbf {x} )}}}+g_{x}(\mathbf {x} )\underbrace {\left(z_{1}-u_{x}(\mathbf {x} )\right)} _{z_{1}{\text{ error tracking }}u_{x}}\\{\dot {z}}_{1}=u_{1}\end{cases}}} つまり、私たちのカスケード型スーパーシステムは既知の安定性をカプセル化していますx ˙ = F ( x ) {\displaystyle {\dot {\mathbf {x} }}=F(\mathbf {x} )} サブシステムに加えて、積分器によって発生する誤差摂動。 これで変数を変更できます( x 、 z 1 ) {\displaystyle (\mathbf {x} ,z_{1})} に( x 、 e 1 ) {\displaystyle (\mathbf {x} ,e_{1})} 許可することによってe 1 ≜ z 1 − u x ( x ) {\displaystyle e_{1}\triangleq z_{1}-u_{x}(\mathbf {x} )} 。 それで { x ˙ = ( f x ( x ) + g x ( x ) u x ( x ) ) + g x ( x ) e 1 e ˙ 1 = u 1 − u ˙ x {\displaystyle {\begin{cases}{\dot {\mathbf {x} }}=(f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )u_{x}(\mathbf {x} ))+g_{x}(\mathbf {x} )e_{1}\\{\dot {e}}_{1}=u_{1}-{\dot {u}}_{x}\end{cases}}} さらに、v 1 ≜ u 1 − u ˙ x {\displaystyle v_{1}\triangleq u_{1}-{\dot {u}}_{x}} となることによってu 1 = v 1 + u ˙ x {\displaystyle u_{1}=v_{1}+{\dot {u}}_{x}} そして { x ˙ = ( f x ( x ) + g x ( x ) u x ( x ) ) + g x ( x ) e 1 e ˙ 1 = v 1 {\displaystyle {\begin{cases}{\dot {\mathbf {x} }}=(f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )u_{x}(\mathbf {x} ))+g_{x}(\mathbf {x} )e_{1}\\{\dot {e}}_{1}=v_{1}\end{cases}}} 我々は、新しい制御によるフィードバックによってこの誤差システムを 安定化させることを目指す。v 1 {\displaystyle v_{1}} システムを安定させることによりe 1 = 0 {\displaystyle e_{1}=0} 州z 1 {\displaystyle z_{1}} 目的の制御を追跡しますu x {\displaystyle u_{x}} これにより、内部のx サブシステムが安定化される。 既存のリアプノフ関数からV x {\displaystyle V_{x}} 拡張 リアプノフ関数候補 を定義する V 1 ( x 、 e 1 ) ≜ V x ( x ) + 1 2 e 1 2 {\displaystyle V_{1}(\mathbf {x} ,e_{1})\triangleq V_{x}(\mathbf {x} )+{\frac {1}{2}}e_{1}^{2}} それで V ˙ 1 = V ˙ x ( x ) + 1 2 ( 2 e 1 e ˙ 1 ) = V ˙ x ( x ) + e 1 e ˙ 1 = V ˙ x ( x ) + e 1 v 1 ⏞ e ˙ 1 = ∂ V x ∂ x x ˙ ⏟ (つまり、 d x d t ) ⏞ V ˙ x (つまり、 d V x d t ) + e 1 v 1 = ∂ V x ∂ x ( ( f x ( x ) + g x ( x ) u x ( x ) ) + g x ( x ) e 1 ) ⏟ x ˙ ⏞ V ˙ x + e 1 v 1 {\displaystyle {\begin{aligned}{\dot {V}}_{1}&={\dot {V}}_{x}(\mathbf {x} )+{\frac {1}{2}}\left(2e_{1}{\dot {e}}_{1}\right)\\&={\dot {V}}_{x}(\mathbf {x} )+e_{1}{\dot {e}}_{1}\\&={\dot {V}}_{x}(\mathbf {x} )+e_{1}\overbrace {v_{1}} ^{{\dot {e}}_{1}}\\&=\overbrace {{\frac {\partial V_{x}}{\partial \mathbf {x} }}\underbrace {\dot {\mathbf {x} }} _{{\text{(i.e., }}{\frac {\operatorname {d} \mathbf {x} }{\operatorname {d} t}}{\text{)}}}} ^{{\dot {V}}_{x}{\text{ (i.e.,}}{\frac {\operatorname {d} V_{x}}{\operatorname {d} t}}{\text{)}}}+e_{1}v_{1}\\&=\overbrace {{\frac {\partial V_{x}}{\partial \mathbf {x} }}\underbrace {\left((f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )u_{x}(\mathbf {x} ))+g_{x}(\mathbf {x} )e_{1}\right)} _{\dot {\mathbf {x} }}} ^{{\dot {V}}_{x}}+e_{1}v_{1}\end{aligned}}} 配布することで∂ V x / ∂ x {\displaystyle \partial V_{x}/\partial \mathbf {x} } 我々は、 V ˙ 1 = ∂ V x ∂ x ( f x ( x ) + g x ( x ) u x ( x ) ) ⏞ ≤ − W ( x ) + ∂ V x ∂ x g x ( x ) e 1 + e 1 v 1 ≤ − W ( x ) + ∂ V x ∂ x g x ( x ) e 1 + e 1 v 1 {\displaystyle {\dot {V}}_{1}=\overbrace {{\frac {\partial V_{x}}{\partial \mathbf {x} }}(f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )u_{x}(\mathbf {x} ))} ^{{}\leq -W(\mathbf {x} )}+{\frac {\partial V_{x}}{\partial \mathbf {x} }}g_{x}(\mathbf {x} )e_{1}+e_{1}v_{1}\leq -W(\mathbf {x} )+{\frac {\partial V_{x}}{\partial \mathbf {x} }}g_{x}(\mathbf {x} )e_{1}+e_{1}v_{1}} 確実にするためにV ˙ 1 ≤ − W ( x ) < 0 {\displaystyle {\dot {V}}_{1}\leq -W(\mathbf {x} )<0} (つまり、スーパーシステムの安定性を確保するために)制御法則を選択します。 v 1 = − ∂ V x ∂ x g x ( x ) − k 1 e 1 {\displaystyle v_{1}=-{\frac {\partial V_{x}}{\partial \mathbf {x} }}g_{x}(\mathbf {x} )-k_{1}e_{1}} とk 1 > 0 {\displaystyle k_{1}>0} 、 など V ˙ 1 = − W ( x ) + ∂ V x ∂ x g x ( x ) e 1 + e 1 ( − ∂ V x ∂ x g x ( x ) − k 1 e 1 ) ⏞ v 1 {\displaystyle {\dot {V}}_{1}=-W(\mathbf {x} )+{\frac {\partial V_{x}}{\partial \mathbf {x} }}g_{x}(\mathbf {x} )e_{1}+e_{1}\overbrace {\left(-{\frac {\partial V_{x}}{\partial \mathbf {x} }}g_{x}(\mathbf {x} )-k_{1}e_{1}\right)} ^{v_{1}}} 配布後e 1 {\displaystyle e_{1}} を通して、 V ˙ 1 = − W ( x ) + ∂ V x ∂ x g x ( x ) e 1 − e 1 ∂ V x ∂ x g x ( x ) ⏞ 0 − k 1 e 1 2 = − W ( x ) − k 1 e 1 2 ≤ − W ( x ) < 0 {\displaystyle {\begin{aligned}{\dot {V}}_{1}&=-W(\mathbf {x} )+{\mathord {\overbrace {{\frac {\partial V_{x}}{\partial \mathbf {x} }}g_{x}(\mathbf {x} )e_{1}-e_{1}{\frac {\partial V_{x}}{\partial \mathbf {x} }}g_{x}(\mathbf {x} )} ^{0}}}-k_{1}e_{1}^{2}\\&=-W(\mathbf {x} )-k_{1}e_{1}^{2}\leq -W(\mathbf {x} )\\&<0\end{aligned}}} したがって、候補となる リアプノフ関数はV 1 {\displaystyle V_{1}} これは真のリアプノフ関数 であり 、この制御法則の下ではシステムは安定している。 v 1 {\displaystyle v_{1}} (これは制御法則に対応する)u 1 {\displaystyle u_{1}} なぜならv 1 ≜ u 1 − u ˙ x {\displaystyle v_{1}\triangleq u_{1}-{\dot {u}}_{x}} ) 元の座標系の変数を使用して、等価なリアプノフ関数 後述するように、この手順を多重積分器問題に反復的に適用する際に、このリアプノフ関数が再び使用されます。 我々の選択による制御v 1 {\displaystyle v_{1}} 最終的には、すべての元の状態変数に依存します。特に、実際のフィードバック安定化制御法則 状態x とz 1 {\displaystyle z_{1}} および機能f x {\displaystyle f_{x}} そしてg x {\displaystyle g_{x}} システムから取得されます。u x {\displaystyle u_{x}} 既知の安定版からx ˙ = F ( x ) {\displaystyle {\dot {\mathbf {x} }}=F(\mathbf {x} )} サブシステム。ゲイン パラメータk 1 > 0 {\displaystyle k_{1}>0} これはシステムの収束速度に影響を与えます。この制御法則の下では、システムは原点で安定します。 ( x 、 z 1 ) = ( 0 、 0 ) {\displaystyle (\mathbf {x} ,z_{1})=(\mathbf {0} ,0)} 。 思い出してくださいu 1 {\displaystyle u_{1}} 式 (3 )は、制御法則によってフィードバック安定化されるサブシステムに接続された積分器の入力を駆動する。u x {\displaystyle u_{x}} 当然のことながら、コントロールu 1 {\displaystyle u_{1}} 持っているu ˙ x {\displaystyle {\dot {u}}_{x}} 安定化制御法則に従うように統合される項u ˙ x {\displaystyle {\dot {u}}_{x}} それに加えて、いくらかのオフセットがあります。その他の項は、そのオフセットと、積分器によって増幅される可能性のあるその他の摂動効果を除去するための減衰を提供します。 このシステムはフィードバック安定化されているため、u 1 ( x 、 z 1 ) {\displaystyle u_{1}(\mathbf {x} ,z_{1})} そしてリアプノフ関数を持つV 1 ( x 、 z 1 ) {\displaystyle V_{1}(\mathbf {x} ,z_{1})} とV ˙ 1 ( x 、 z 1 ) ≤ − W ( x ) < 0 {\displaystyle {\dot {V}}_{1}(\mathbf {x} ,z_{1})\leq -W(\mathbf {x} )<0} また、別の単一積分器カスケードシステムの上位サブシステムとして使用することもできます。
多積分器バックステッピング 2つの積分器の場合、上側の単一積分器サブシステムが安定化され、同様に安定化可能な新しい単一積分器システムが生成されます。この再帰的な手順は、任意の有限個の積分器を扱うように拡張できます。この主張は、数学的帰納法 を用いて形式的に証明できます。ここでは、安定化された多重積分器システムが、既に安定化された多重積分器サブシステムのサブシステムから構築されます。
x ˙ = f x ( x ) + g x ( x ) u x {\displaystyle {\dot {\mathbf {x} }}=f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )u_{x}} スカラー入力を持つu x {\displaystyle u_{x}} 出力状態x = [ x 1 、 x 2 、 … 、 x n ] T ∈ R n {\displaystyle \mathbf {x} =[x_{1},x_{2},\ldots ,x_{n}]^{\text{T}}\in \mathbb {R} ^{n}} と仮定する f x ( x ) = 0 {\displaystyle f_{x}(\mathbf {x} )=\mathbf {0} } そのため、ゼロ入力(つまり、u x = 0 {\displaystyle u_{x}=0} システムは原点で静止している x = 0 {\displaystyle \mathbf {x} =\mathbf {0} \,} この場合、原点はシステムの平衡点と呼ばれます。 フィードバック制御法則u x ( x ) {\displaystyle u_{x}(\mathbf {x} )} 原点における平衡状態でシステムを安定化させる。 このシステムに対応するリアプノフ関数は次のように記述される。 V x ( x ) {\displaystyle V_{x}(\mathbf {x} )} 。 つまり、出力状態x が入力にフィードバックされる場合u x {\displaystyle u_{x}} 規制法によってu x ( x ) {\displaystyle u_{x}(\mathbf {x} )} すると、出力状態(およびリアプノフ関数)は、単一の摂動(例えば、非ゼロの初期条件や急激な外乱の後)の後、原点に戻ります。このサブシステムはフィードバック制御則によって安定化されます。 u x {\displaystyle u_{x}} 。 次に、入力に積分器を接続します。 u x {\displaystyle u_{x}} 拡張システムが入力を持つようにu 1 {\displaystyle u_{1}} (積分器へ)および出力状態x 。結果として得られる拡張された動的システムは { x ˙ = f x ( x ) + g x ( x ) z 1 z ˙ 1 = u 1 {\displaystyle {\begin{cases}{\dot {\mathbf {x} }}=f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )z_{1}\\{\dot {z}}_{1}=u_{1}\end{cases}}} この「カスケード」システムは式(1 )の形式に一致するため、単一積分器バックステッピング手順により式 (3 )の安定化制御則が得られます。つまり、状態をフィードバックするとz 1 {\displaystyle z_{1}} そしてx を入力するu 1 {\displaystyle u_{1}} 規制法によれば u 1 ( x 、 z 1 ) = − ∂ V x ∂ x g x ( x ) − k 1 ( z 1 − u x ( x ) ) + ∂ u x ∂ x ( f x ( x ) + g x ( x ) z 1 ) {\displaystyle u_{1}(\mathbf {x} ,z_{1})=-{\frac {\partial V_{x}}{\partial \mathbf {x} }}g_{x}(\mathbf {x} )-k_{1}(z_{1}-u_{x}(\mathbf {x} ))+{\frac {\partial u_{x}}{\partial \mathbf {x} }}(f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )z_{1})} 利益を得てk 1 > 0 {\displaystyle k_{1}>0} そして、各州z 1 {\displaystyle z_{1}} そしてx はz 1 = 0 {\displaystyle z_{1}=0} そしてx = 0 {\displaystyle \mathbf {x} =\mathbf {0} \,} 単一の摂動後、このサブシステムはフィードバック制御則によって安定化される。 u 1 {\displaystyle u_{1}} 、そして式(2 ) から得られる対応するリアプノフ関数は次のようになる。V 1 ( x 、 z 1 ) = V x ( x ) + 1 2 ( z 1 − u x ( x ) ) 2 {\displaystyle V_{1}(\mathbf {x} ,z_{1})=V_{x}(\mathbf {x} )+{\frac {1}{2}}(z_{1}-u_{x}(\mathbf {x} ))^{2}} つまり、フィードバック制御法則の下ではu 1 {\displaystyle u_{1}} リアプノフ関数V 1 {\displaystyle V_{1}} 状態が原点に戻るにつれて、ゼロに減衰する。 新しい積分器を入力に接続しますu 1 {\displaystyle u_{1}} 拡張システムが入力を持つようにu 2 {\displaystyle u_{2}} そして出力状態x 。結果として得られる拡張された動的システムは { x ˙ = f x ( x ) + g x ( x ) z 1 z ˙ 1 = z 2 z ˙ 2 = u 2 {\displaystyle {\begin{cases}{\dot {\mathbf {x} }}=f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )z_{1}\\{\dot {z}}_{1}=z_{2}\\{\dot {z}}_{2}=u_{2}\end{cases}}} これは単一 積分器システム に相当する。{ [ x ˙ z ˙ 1 ] ⏞ ≜ x ˙ 1 = [ f x ( x ) + g x ( x ) z 1 0 ] ⏞ ≜ f 1 ( x 1 ) + [ 0 1 ] ⏞ ≜ g 1 ( x 1 ) z 2 (リアプノフ関数による) V 1 、 サブシステムは安定化される u 1 ( x 1 ) ) z ˙ 2 = u 2 {\displaystyle {\begin{cases}\overbrace {\begin{bmatrix}{\dot {\mathbf {x} }}\\{\dot {z}}_{1}\end{bmatrix}} ^{\triangleq \,{\dot {\mathbf {x} }}_{1}}=\overbrace {\begin{bmatrix}f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )z_{1}\\0\end{bmatrix}} ^{\triangleq \,f_{1}(\mathbf {x} _{1})}+\overbrace {\begin{bmatrix}\mathbf {0} \\1\end{bmatrix}} ^{\triangleq \,g_{1}(\mathbf {x} _{1})}z_{2}&\qquad {\text{ ( by Lyapunov function }}V_{1},{\text{ subsystem stabilized by }}u_{1}({\textbf {x}}_{1}){\text{ )}}\\{\dot {z}}_{2}=u_{2}\end{cases}}} これらの定義を使用してx 1 {\displaystyle \mathbf {x} _{1}} 、f 1 {\displaystyle f_{1}} 、 そしてg 1 {\displaystyle g_{1}} このシステムは次のように表現することもできます。 { x ˙ 1 = f 1 ( x 1 ) + g 1 ( x 1 ) z 2 (リアプノフ関数による) V 1 、 サブシステムは安定化される u 1 ( x 1 ) ) z ˙ 2 = u 2 {\displaystyle {\begin{cases}{\dot {\mathbf {x} }}_{1}=f_{1}(\mathbf {x} _{1})+g_{1}(\mathbf {x} _{1})z_{2}&\qquad {\text{ ( by Lyapunov function }}V_{1},{\text{ subsystem stabilized by }}u_{1}({\textbf {x}}_{1}){\text{ )}}\\{\dot {z}}_{2}=u_{2}\end{cases}}} このシステムは式(1 )の単一積分器構造に一致するため、単一積分器バックステッピング手順を再度適用できます。つまり、状態をフィードバックすると、z 1 {\displaystyle z_{1}} 、z 2 {\displaystyle z_{2}} 、x を入力するu 2 {\displaystyle u_{2}} 規制法によれば u 2 ( x 、 z 1 、 z 2 ) = − ∂ V 1 ∂ x 1 g 1 ( x 1 ) − k 2 ( z 2 − u 1 ( x 1 ) ) + ∂ u 1 ∂ x 1 ( f 1 ( x 1 ) + g 1 ( x 1 ) z 2 ) {\displaystyle u_{2}(\mathbf {x} ,z_{1},z_{2})=-{\frac {\partial V_{1}}{\partial \mathbf {x} _{1}}}g_{1}(\mathbf {x} _{1})-k_{2}(z_{2}-u_{1}(\mathbf {x} _{1}))+{\frac {\partial u_{1}}{\partial \mathbf {x} _{1}}}(f_{1}(\mathbf {x} _{1})+g_{1}(\mathbf {x} _{1})z_{2})} 利益を得てk 2 > 0 {\displaystyle k_{2}>0} そして、各州z 1 {\displaystyle z_{1}} 、z 2 {\displaystyle z_{2}} そして、x はz 1 = 0 {\displaystyle z_{1}=0} 、z 2 = 0 {\displaystyle z_{2}=0} 、 そしてx = 0 {\displaystyle \mathbf {x} =\mathbf {0} \,} 単一の摂動後、このサブシステムはフィードバック制御則によって安定化される。 u 2 {\displaystyle u_{2}} 、対応するリアプノフ関数は V 2 ( x 、 z 1 、 z 2 ) = V 1 ( x 1 ) + 1 2 ( z 2 − u 1 ( x 1 ) ) 2 {\displaystyle V_{2}(\mathbf {x} ,z_{1},z_{2})=V_{1}(\mathbf {x} _{1})+{\frac {1}{2}}(z_{2}-u_{1}(\mathbf {x} _{1}))^{2}} つまり、フィードバック制御法則の下ではu 2 {\displaystyle u_{2}} リアプノフ関数V 2 {\displaystyle V_{2}} 状態が原点に戻るにつれて、ゼロに減衰する。 積分器を入力に接続しますu 2 {\displaystyle u_{2}} 拡張システムが入力を持つようにu 3 {\displaystyle u_{3}} そして出力状態x 。結果として得られる拡張された動的システムは { x ˙ = f x ( x ) + g x ( x ) z 1 z ˙ 1 = z 2 z ˙ 2 = z 3 z ˙ 3 = u 3 {\displaystyle {\begin{cases}{\dot {\mathbf {x} }}=f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )z_{1}\\{\dot {z}}_{1}=z_{2}\\{\dot {z}}_{2}=z_{3}\\{\dot {z}}_{3}=u_{3}\end{cases}}} これは単一の 積分器システム として再編成することができる。{ [ x ˙ z ˙ 1 z ˙ 2 ] ⏞ ≜ x ˙ 2 = [ f x ( x ) + g x ( x ) z 2 z 2 0 ] ⏞ ≜ f 2 ( x 2 ) + [ 0 0 1 ] ⏞ ≜ g 2 ( x 2 ) z 3 (リアプノフ関数による) V 2 、 サブシステムは安定化される u 2 ( x 2 ) ) z ˙ 3 = u 3 {\displaystyle {\begin{cases}\overbrace {\begin{bmatrix}{\dot {\mathbf {x} }}\\{\dot {z}}_{1}\\{\dot {z}}_{2}\end{bmatrix}} ^{\triangleq \,{\dot {\mathbf {x} }}_{2}}=\overbrace {\begin{bmatrix}f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )z_{2}\\z_{2}\\0\end{bmatrix}} ^{\triangleq \,f_{2}(\mathbf {x} _{2})}+\overbrace {\begin{bmatrix}\mathbf {0} \\0\\1\end{bmatrix}} ^{\triangleq \,g_{2}(\mathbf {x} _{2})}z_{3}&\qquad {\text{ ( by Lyapunov function }}V_{2},{\text{ subsystem stabilized by }}u_{2}({\textbf {x}}_{2}){\text{ )}}\\{\dot {z}}_{3}=u_{3}\end{cases}}} 定義によればx 1 {\displaystyle \mathbf {x} _{1}} 、f 1 {\displaystyle f_{1}} 、 そしてg 1 {\displaystyle g_{1}} 前のステップから、このシステムは次のように表されます。 { [ x ˙ 1 z ˙ 2 ] ⏞ x ˙ 2 = [ f 1 ( x 1 ) + g 1 ( x 1 ) z 2 0 ] ⏞ f 2 ( x 2 ) + [ 0 1 ] ⏞ g 2 ( x 2 ) z 3 (リアプノフ関数による) V 2 、 サブシステムは安定化される u 2 ( x 2 ) ) z ˙ 3 = u 3 {\displaystyle {\begin{cases}\overbrace {\begin{bmatrix}{\dot {\mathbf {x} }}_{1}\\{\dot {z}}_{2}\end{bmatrix}} ^{{\dot {\mathbf {x} }}_{2}}=\overbrace {\begin{bmatrix}f_{1}(\mathbf {x} _{1})+g_{1}(\mathbf {x} _{1})z_{2}\\0\end{bmatrix}} ^{f_{2}(\mathbf {x} _{2})}+\overbrace {\begin{bmatrix}\mathbf {0} \\1\end{bmatrix}} ^{g_{2}(\mathbf {x} _{2})}z_{3}&\qquad {\text{ ( by Lyapunov function }}V_{2},{\text{ subsystem stabilized by }}u_{2}({\textbf {x}}_{2}){\text{ )}}\\{\dot {z}}_{3}=u_{3}\end{cases}}} さらに、これらの定義を使用するとx 2 {\displaystyle \mathbf {x} _{2}} 、f 2 {\displaystyle f_{2}} 、 そしてg 2 {\displaystyle g_{2}} このシステムは次のように表現することもできます。 { x ˙ 2 = f 2 ( x 2 ) + g 2 ( x 2 ) z 3 (リアプノフ関数による) V 2 、 サブシステムは安定化される u 2 ( x 2 ) ) z ˙ 3 = u 3 {\displaystyle {\begin{cases}{\dot {\mathbf {x} }}_{2}=f_{2}(\mathbf {x} _{2})+g_{2}(\mathbf {x} _{2})z_{3}&\qquad {\text{ ( by Lyapunov function }}V_{2},{\text{ subsystem stabilized by }}u_{2}({\textbf {x}}_{2}){\text{ )}}\\{\dot {z}}_{3}=u_{3}\end{cases}}} したがって、再編成されたシステムは式(1 )の単一積分器構造を持ち、単一積分器バックステッピング手順を再び適用できます。つまり、状態をフィードバックすると、z 1 {\displaystyle z_{1}} 、z 2 {\displaystyle z_{2}} 、z 3 {\displaystyle z_{3}} 、x を入力するu 3 {\displaystyle u_{3}} 規制法によれば u 3 ( x 、 z 1 、 z 2 、 z 3 ) = − ∂ V 2 ∂ x 2 g 2 ( x 2 ) − k 3 ( z 3 − u 2 ( x 2 ) ) + ∂ u 2 ∂ x 2 ( f 2 ( x 2 ) + g 2 ( x 2 ) z 3 ) {\displaystyle u_{3}(\mathbf {x} ,z_{1},z_{2},z_{3})=-{\frac {\partial V_{2}}{\partial \mathbf {x} _{2}}}g_{2}(\mathbf {x} _{2})-k_{3}(z_{3}-u_{2}(\mathbf {x} _{2}))+{\frac {\partial u_{2}}{\partial \mathbf {x} _{2}}}(f_{2}(\mathbf {x} _{2})+g_{2}(\mathbf {x} _{2})z_{3})} 利益を得てk 3 > 0 {\displaystyle k_{3}>0} そして、各州z 1 {\displaystyle z_{1}} 、z 2 {\displaystyle z_{2}} 、z 3 {\displaystyle z_{3}} そして、x はz 1 = 0 {\displaystyle z_{1}=0} 、z 2 = 0 {\displaystyle z_{2}=0} 、z 3 = 0 {\displaystyle z_{3}=0} 、 そしてx = 0 {\displaystyle \mathbf {x} =\mathbf {0} \,} 単一の摂動後、このサブシステムはフィードバック制御則によって安定化される。 u 3 {\displaystyle u_{3}} 、対応するリアプノフ関数は V 3 ( x 、 z 1 、 z 2 、 z 3 ) = V 2 ( x 2 ) + 1 2 ( z 3 − u 2 ( x 2 ) ) 2 {\displaystyle V_{3}(\mathbf {x} ,z_{1},z_{2},z_{3})=V_{2}(\mathbf {x} _{2})+{\frac {1}{2}}(z_{3}-u_{2}(\mathbf {x} _{2}))^{2}} つまり、フィードバック制御法則の下ではu 3 {\displaystyle u_{3}} リアプノフ関数V 3 {\displaystyle V_{3}} 状態が原点に戻るにつれて、ゼロに減衰する。 このプロセスは、システムに追加される各インテグレータに対して継続でき、したがって、次の形式のシステムであればどれでも継続できます。 { x ˙ = f x ( x ) + g x ( x ) z 1 (リアプノフ関数による) V x 、 サブシステムは安定化される u x ( x ) ) z ˙ 1 = z 2 z ˙ 2 = z 3 ⋮ z ˙ 私 = z 私 + 1 ⋮ z ˙ k − 2 = z k − 1 z ˙ k − 1 = z k z ˙ k = u {\displaystyle {\begin{cases}{\dot {\mathbf {x} }}=f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )z_{1}&\qquad {\text{ ( by Lyapunov function }}V_{x},{\text{ subsystem stabilized by }}u_{x}({\textbf {x}}){\text{ )}}\\{\dot {z}}_{1}=z_{2}\\{\dot {z}}_{2}=z_{3}\\\vdots \\{\dot {z}}_{i}=z_{i+1}\\\vdots \\{\dot {z}}_{k-2}=z_{k-1}\\{\dot {z}}_{k-1}=z_{k}\\{\dot {z}}_{k}=u\end{cases}}} 再帰構造を持つ { { { { { { { { x ˙ = f x ( x ) + g x ( x ) z 1 (リアプノフ関数による) V x 、 サブシステムは安定化される u x ( x ) ) z ˙ 1 = z 2 z ˙ 2 = z 3 ⋮ z ˙ 私 = z 私 + 1 ⋮ z ˙ k − 2 = z k − 1 z ˙ k − 1 = z k z ˙ k = u {\displaystyle {\begin{cases}{\begin{cases}{\begin{cases}{\begin{cases}{\begin{cases}{\begin{cases}{\begin{cases}{\begin{cases}{\dot {\mathbf {x} }}=f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )z_{1}&\qquad {\text{ ( by Lyapunov function }}V_{x},{\text{ subsystem stabilized by }}u_{x}({\textbf {x}}){\text{ )}}\\{\dot {z}}_{1}=z_{2}\end{cases}}\\{\dot {z}}_{2}=z_{3}\end{cases}}\\\vdots \end{cases}}\\{\dot {z}}_{i}=z_{i+1}\end{cases}}\\\vdots \end{cases}}\\{\dot {z}}_{k-2}=z_{k-1}\end{cases}}\\{\dot {z}}_{k-1}=z_{k}\end{cases}}\\{\dot {z}}_{k}=u\end{cases}}} 単一積分器に対するフィードバック安定化制御とリアプノフ関数を見つけることで、フィードバック安定化が可能となる。( x 、 z 1 ) {\displaystyle (\mathbf {x} ,z_{1})} サブシステム(つまり、入力付き)z 2 {\displaystyle z_{2}} そして出力x ) を、最終的なフィードバック安定化制御u が判明するまでその内部サブシステムから反復します。反復i では、等価システムは { [ x ˙ z ˙ 1 z ˙ 2 ⋮ z ˙ 私 − 2 z ˙ 私 − 1 ] ⏞ ≜ x ˙ 私 − 1 = [ f 私 − 2 ( x 私 − 2 ) + g 私 − 2 ( x 私 − 1 ) z 私 − 2 0 ] ⏞ ≜ f 私 − 1 ( x 私 − 1 ) + [ 0 1 ] ⏞ ≜ g 私 − 1 ( x 私 − 1 ) z 私 (Lyap. func による) V 私 − 1 、 サブシステムは安定化される u 私 − 1 ( x 私 − 1 ) ) z ˙ 私 = u 私 {\displaystyle {\begin{cases}\overbrace {\begin{bmatrix}{\dot {\mathbf {x} }}\\{\dot {z}}_{1}\\{\dot {z}}_{2}\\\vdots \\{\dot {z}}_{i-2}\\{\dot {z}}_{i-1}\end{bmatrix}} ^{\triangleq \,{\dot {\mathbf {x} }}_{i-1}}=\overbrace {\begin{bmatrix}f_{i-2}(\mathbf {x} _{i-2})+g_{i-2}(\mathbf {x} _{i-1})z_{i-2}\\0\end{bmatrix}} ^{\triangleq \,f_{i-1}(\mathbf {x} _{i-1})}+\overbrace {\begin{bmatrix}\mathbf {0} \\1\end{bmatrix}} ^{\triangleq \,g_{i-1}(\mathbf {x} _{i-1})}z_{i}&\quad {\text{ ( by Lyap. func. }}V_{i-1},{\text{ subsystem stabilized by }}u_{i-1}({\textbf {x}}_{i-1}){\text{ )}}\\{\dot {z}}_{i}=u_{i}\end{cases}}} 対応するフィードバック安定化制御法則は u 私 ( x 、 z 1 、 z 2 、 … 、 z 私 ⏞ ≜ x 私 ) = − ∂ V 私 − 1 ∂ x 私 − 1 g 私 − 1 ( x 私 − 1 ) − k 私 ( z 私 − u 私 − 1 ( x 私 − 1 ) ) + ∂ u 私 − 1 ∂ x 私 − 1 ( f 私 − 1 ( x 私 − 1 ) + g 私 − 1 ( x 私 − 1 ) z 私 ) {\displaystyle u_{i}(\overbrace {\mathbf {x} ,z_{1},z_{2},\dots ,z_{i}} ^{\triangleq \,\mathbf {x} _{i}})=-{\frac {\partial V_{i-1}}{\partial \mathbf {x} _{i-1}}}g_{i-1}(\mathbf {x} _{i-1})\,-\,k_{i}(z_{i}\,-\,u_{i-1}(\mathbf {x} _{i-1}))\,+\,{\frac {\partial u_{i-1}}{\partial \mathbf {x} _{i-1}}}(f_{i-1}(\mathbf {x} _{i-1})\,+\,g_{i-1}(\mathbf {x} _{i-1})z_{i})} 利益を得てk 私 > 0 {\displaystyle k_{i}>0} 対応するリアプノフ関数は V 私 ( x 私 ) = V 私 − 1 ( x 私 − 1 ) + 1 2 ( z 私 − u 私 − 1 ( x 私 − 1 ) ) 2 {\displaystyle V_{i}(\mathbf {x} _{i})=V_{i-1}(\mathbf {x} _{i-1})+{\frac {1}{2}}(z_{i}-u_{i-1}(\mathbf {x} _{i-1}))^{2}} この構造により、究極の制御u ( x 、 z 1 、 z 2 、 … 、 z k ) = u k ( x k ) {\displaystyle u(\mathbf {x} ,z_{1},z_{2},\ldots ,z_{k})=u_{k}(\mathbf {x} _{k})} (つまり、最終的な制御は最終反復で見つかる)私 = k {\displaystyle i=k} ) したがって、この特殊な多積分器厳密フィードバック形式のシステムは、簡単な手順でフィードバック安定化することができ、その手順は自動化することも可能です(例えば、適応制御 アルゴリズムの一部として)。
一般的な後退 厳密フィードバック形式 の特殊なシステムは、多積分器システムの構造と同様の再帰的な構造を持ちます。同様に、最小のカスケードシステムを安定化し、次に次のカスケードシステムにバックステップして 手順を繰り返すことで安定化されます。したがって、単一ステップの手順を開発することが重要です。この手順は、多ステップの場合にも再帰的に適用できます。幸いなことに、厳密フィードバック形式の関数に対する要件により、各単一ステップシステムはフィードバックによって単一積分器システムに表現でき、その単一積分器システムは上述の方法を用いて安定化できます。
単一ステップ手順 単純な厳密フィードバック システムを考えてみましょう。
どこ
x = [ x 1 、 x 2 、 … 、 x n ] T ∈ R n {\displaystyle \mathbf {x} =[x_{1},x_{2},\ldots ,x_{n}]^{\text{T}}\in \mathbb {R} ^{n}} 、z 1 {\displaystyle z_{1}} そしてu 1 {\displaystyle u_{1}} スカラー です、すべてのx とz 1 {\displaystyle z_{1}} 、g 1 ( x 、 z 1 ) ≠ 0 {\displaystyle g_{1}(\mathbf {x} ,z_{1})\neq 0} 。 フィードバック安定化制御を設計するのではなくu 1 {\displaystyle u_{1}} 直接、新しい制御を導入するu 1 1 {\displaystyle u_{a1}} (後日 設計予定)制御法則を使用する
u 1 ( x 、 z 1 ) = 1 g 1 ( x 、 z 1 ) ( u 1 1 − f 1 ( x 、 z 1 ) ) {\displaystyle u_{1}(\mathbf {x} ,z_{1})={\frac {1}{g_{1}(\mathbf {x} ,z_{1})}}\left(u_{a1}-f_{1}(\mathbf {x} ,z_{1})\right)} これは、g 1 ≠ 0 {\displaystyle g_{1}\neq 0} 式(6 )のシステムは次のようになります。
{ x ˙ = f x ( x ) + g x ( x ) z 1 z ˙ 1 = f 1 ( x 、 z 1 ) + g 1 ( x 、 z 1 ) 1 g 1 ( x 、 z 1 ) ( u 1 1 − f 1 ( x 、 z 1 ) ) ⏞ u 1 ( x 、 z 1 ) {\displaystyle {\begin{cases}{\dot {\mathbf {x} }}=f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )z_{1}\\{\dot {z}}_{1}=f_{1}(\mathbf {x} ,z_{1})+g_{1}(\mathbf {x} ,z_{1})\overbrace {{\frac {1}{g_{1}(\mathbf {x} ,z_{1})}}\left(u_{a1}-f_{1}(\mathbf {x} ,z_{1})\right)} ^{u_{1}(\mathbf {x} ,z_{1})}\end{cases}}} これは以下のように簡略化できます
{ x ˙ = f x ( x ) + g x ( x ) z 1 z ˙ 1 = u 1 1 {\displaystyle {\begin{cases}{\dot {\mathbf {x} }}=f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )z_{1}\\{\dot {z}}_{1}=u_{a1}\end{cases}}} この新しいu 1 1 {\displaystyle u_{a1}} -to- x システムは、式( 1 ) の単一積分器カスケードシステム に一致する。フィードバック安定化制御法則を仮定すると u x ( x ) {\displaystyle u_{x}(\mathbf {x} )} およびリアプノフ関数 V x ( x ) {\displaystyle V_{x}(\mathbf {x} )} 上位サブシステムについては既知であり、式(3 )からのフィードバック安定化制御法則は
u 1 1 ( x 、 z 1 ) = − ∂ V x ∂ x g x ( x ) − k 1 ( z 1 − u x ( x ) ) + ∂ u x ∂ x ( f x ( x ) + g x ( x ) z 1 ) {\displaystyle u_{a1}(\mathbf {x} ,z_{1})=-{\frac {\partial V_{x}}{\partial \mathbf {x} }}g_{x}(\mathbf {x} )-k_{1}(z_{1}-u_{x}(\mathbf {x} ))+{\frac {\partial u_{x}}{\partial \mathbf {x} }}(f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )z_{1})} 利益を得てk 1 > 0 {\displaystyle k_{1}>0} 最終的なフィードバック安定化制御法則は次のようになります。
利益を得てk 1 > 0 {\displaystyle k_{1}>0} 式(2 )から得られる対応するリアプノフ関数は次のようになる。
この厳密フィードバックシステムは フィードバック安定化制御とそれに対応するリアプノフ関数を備えているため、より大きな厳密フィードバックシステムの一部としてカスケード接続することができ、この手順を繰り返すことで周囲のフィードバック安定化制御を見つけることができます。
多段階の手順 多積分器バックステッピングと同様に、単一ステップの手順を反復的に実行することで、厳密フィードバックシステム全体を安定化させることができます。各ステップでは、
最小の「不安定な」単段階厳密フィードバックシステムは孤立系である。 フィードバックは、システムを単一積分器システムに変換するために使用される。 結果として得られる単一積分器システムは安定化される。 安定化されたシステムは、次のステップで上位システムとして使用されます。 つまり、厳密なフィードバックシステム
{ x ˙ = f x ( x ) + g x ( x ) z 1 (リアプノフ関数による) V x 、 サブシステムは安定化される u x ( x ) ) z ˙ 1 = f 1 ( x 、 z 1 ) + g 1 ( x 、 z 1 ) z 2 z ˙ 2 = f 2 ( x 、 z 1 、 z 2 ) + g 2 ( x 、 z 1 、 z 2 ) z 3 ⋮ z ˙ 私 = f 私 ( x 、 z 1 、 z 2 、 … 、 z 私 ) + g 私 ( x 、 z 1 、 z 2 、 … 、 z 私 ) z 私 + 1 ⋮ z ˙ k − 2 = f k − 2 ( x 、 z 1 、 z 2 、 … z k − 2 ) + g k − 2 ( x 、 z 1 、 z 2 、 … 、 z k − 2 ) z k − 1 z ˙ k − 1 = f k − 1 ( x 、 z 1 、 z 2 、 … z k − 2 、 z k − 1 ) + g k − 1 ( x 、 z 1 、 z 2 、 … 、 z k − 2 、 z k − 1 ) z k z ˙ k = f k ( x 、 z 1 、 z 2 、 … z k − 1 、 z k ) + g k ( x 、 z 1 、 z 2 、 … 、 z k − 1 、 z k ) u {\displaystyle {\begin{cases}{\dot {\mathbf {x} }}=f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )z_{1}&\qquad {\text{ ( by Lyapunov function }}V_{x},{\text{ subsystem stabilized by }}u_{x}({\textbf {x}}){\text{ )}}\\{\dot {z}}_{1}=f_{1}(\mathbf {x} ,z_{1})+g_{1}(\mathbf {x} ,z_{1})z_{2}\\{\dot {z}}_{2}=f_{2}(\mathbf {x} ,z_{1},z_{2})+g_{2}(\mathbf {x} ,z_{1},z_{2})z_{3}\\\vdots \\{\dot {z}}_{i}=f_{i}(\mathbf {x} ,z_{1},z_{2},\ldots ,z_{i})+g_{i}(\mathbf {x} ,z_{1},z_{2},\ldots ,z_{i})z_{i+1}\\\vdots \\{\dot {z}}_{k-2}=f_{k-2}(\mathbf {x} ,z_{1},z_{2},\ldots z_{k-2})+g_{k-2}(\mathbf {x} ,z_{1},z_{2},\ldots ,z_{k-2})z_{k-1}\\{\dot {z}}_{k-1}=f_{k-1}(\mathbf {x} ,z_{1},z_{2},\ldots z_{k-2},z_{k-1})+g_{k-1}(\mathbf {x} ,z_{1},z_{2},\ldots ,z_{k-2},z_{k-1})z_{k}\\{\dot {z}}_{k}=f_{k}(\mathbf {x} ,z_{1},z_{2},\ldots z_{k-1},z_{k})+g_{k}(\mathbf {x} ,z_{1},z_{2},\ldots ,z_{k-1},z_{k})u\end{cases}}} 再帰構造を持つ
{ { { { { { { { x ˙ = f x ( x ) + g x ( x ) z 1 (リアプノフ関数による) V x 、 サブシステムは安定化される u x ( x ) ) z ˙ 1 = f 1 ( x 、 z 1 ) + g 1 ( x 、 z 1 ) z 2 z ˙ 2 = f 2 ( x 、 z 1 、 z 2 ) + g 2 ( x 、 z 1 、 z 2 ) z 3 ⋮ z ˙ 私 = f 私 ( x 、 z 1 、 z 2 、 … 、 z 私 ) + g 私 ( x 、 z 1 、 z 2 、 … 、 z 私 ) z 私 + 1 ⋮ z ˙ k − 2 = f k − 2 ( x 、 z 1 、 z 2 、 … z k − 2 ) + g k − 2 ( x 、 z 1 、 z 2 、 … 、 z k − 2 ) z k − 1 z ˙ k − 1 = f k − 1 ( x 、 z 1 、 z 2 、 … z k − 2 、 z k − 1 ) + g k − 1 ( x 、 z 1 、 z 2 、 … 、 z k − 2 、 z k − 1 ) z k z ˙ k = f k ( x 、 z 1 、 z 2 、 … z k − 1 、 z k ) + g k ( x 、 z 1 、 z 2 、 … 、 z k − 1 、 z k ) u {\displaystyle {\begin{cases}{\begin{cases}{\begin{cases}{\begin{cases}{\begin{cases}{\begin{cases}{\begin{cases}{\begin{cases}{\dot {\mathbf {x} }}=f_{x}(\mathbf {x} )+g_{x}(\mathbf {x} )z_{1}&\qquad {\text{ ( by Lyapunov function }}V_{x},{\text{ subsystem stabilized by }}u_{x}({\textbf {x}}){\text{ )}}\\{\dot {z}}_{1}=f_{1}(\mathbf {x} ,z_{1})+g_{1}(\mathbf {x} ,z_{1})z_{2}\end{cases}}\\{\dot {z}}_{2}=f_{2}(\mathbf {x} ,z_{1},z_{2})+g_{2}(\mathbf {x} ,z_{1},z_{2})z_{3}\end{cases}}\\\vdots \\\end{cases}}\\{\dot {z}}_{i}=f_{i}(\mathbf {x} ,z_{1},z_{2},\ldots ,z_{i})+g_{i}(\mathbf {x} ,z_{1},z_{2},\ldots ,z_{i})z_{i+1}\end{cases}}\\\vdots \end{cases}}\\{\dot {z}}_{k-2}=f_{k-2}(\mathbf {x} ,z_{1},z_{2},\ldots z_{k-2})+g_{k-2}(\mathbf {x} ,z_{1},z_{2},\ldots ,z_{k-2})z_{k-1}\end{cases}}\\{\dot {z}}_{k-1}=f_{k-1}(\mathbf {x} ,z_{1},z_{2},\ldots z_{k-2},z_{k-1})+g_{k-1}(\mathbf {x} ,z_{1},z_{2},\ldots ,z_{k-2},z_{k-1})z_{k}\end{cases}}\\{\dot {z}}_{k}=f_{k}(\mathbf {x} ,z_{1},z_{2},\ldots z_{k-1},z_{k})+g_{k}(\mathbf {x} ,z_{1},z_{2},\ldots ,z_{k-1},z_{k})u\end{cases}}} 単一積分器に対するフィードバック安定化制御とリアプノフ関数を見つけることで、フィードバック安定化が可能となる。( x 、 z 1 ) {\displaystyle (\mathbf {x} ,z_{1})} サブシステム(つまり、入力付き)z 2 {\displaystyle z_{2}} そして出力x ) を、最終的なフィードバック安定化制御u が判明するまでその内部サブシステムから反復します。反復i では、等価システムは
{ [ x ˙ z ˙ 1 z ˙ 2 ⋮ z ˙ 私 − 2 z ˙ 私 − 1 ] ⏞ ≜ x ˙ 私 − 1 = [ f 私 − 2 ( x 私 − 2 ) + g 私 − 2 ( x 私 − 2 ) z 私 − 2 f 私 − 1 ( x 私 ) ] ⏞ ≜ f 私 − 1 ( x 私 − 1 ) + [ 0 g 私 − 1 ( x 私 ) ] ⏞ ≜ g 私 − 1 ( x 私 − 1 ) z 私 (Lyap. func による) V 私 − 1 、 サブシステムは安定化される u 私 − 1 ( x 私 − 1 ) ) z ˙ 私 = f 私 ( x 私 ) + g 私 ( x 私 ) u 私 {\displaystyle {\begin{cases}\overbrace {\begin{bmatrix}{\dot {\mathbf {x} }}\\{\dot {z}}_{1}\\{\dot {z}}_{2}\\\vdots \\{\dot {z}}_{i-2}\\{\dot {z}}_{i-1}\end{bmatrix}} ^{\triangleq \,{\dot {\mathbf {x} }}_{i-1}}=\overbrace {\begin{bmatrix}f_{i-2}(\mathbf {x} _{i-2})+g_{i-2}(\mathbf {x} _{i-2})z_{i-2}\\f_{i-1}(\mathbf {x} _{i})\end{bmatrix}} ^{\triangleq \,f_{i-1}(\mathbf {x} _{i-1})}+\overbrace {\begin{bmatrix}\mathbf {0} \\g_{i-1}(\mathbf {x} _{i})\end{bmatrix}} ^{\triangleq \,g_{i-1}(\mathbf {x} _{i-1})}z_{i}&\quad {\text{ ( by Lyap. func. }}V_{i-1},{\text{ subsystem stabilized by }}u_{i-1}({\textbf {x}}_{i-1}){\text{ )}}\\{\dot {z}}_{i}=f_{i}(\mathbf {x} _{i})+g_{i}(\mathbf {x} _{i})u_{i}\end{cases}}} 式 (7 )より、対応するフィードバック安定化制御則は次のようになる。
u 私 ( x 、 z 1 、 z 2 、 … 、 z 私 ⏞ ≜ x 私 ) = 1 g 私 ( x 私 ) ( − ∂ V 私 − 1 ∂ x 私 − 1 g 私 − 1 ( x 私 − 1 ) − k 私 ( z 私 − u 私 − 1 ( x 私 − 1 ) ) + ∂ u 私 − 1 ∂ x 私 − 1 ( f 私 − 1 ( x 私 − 1 ) + g 私 − 1 ( x 私 − 1 ) z 私 ) ⏞ 単一積分器による安定化制御 u 1 私 ( x 私 ) − f 私 ( x 私 − 1 ) ) {\displaystyle u_{i}(\overbrace {\mathbf {x} ,z_{1},z_{2},\dots ,z_{i}} ^{\triangleq \,\mathbf {x} _{i}})={\frac {1}{g_{i}(\mathbf {x} _{i})}}\left(\overbrace {-{\frac {\partial V_{i-1}}{\partial \mathbf {x} _{i-1}}}g_{i-1}(\mathbf {x} _{i-1})\,-\,k_{i}\left(z_{i}\,-\,u_{i-1}(\mathbf {x} _{i-1})\right)\,+\,{\frac {\partial u_{i-1}}{\partial \mathbf {x} _{i-1}}}(f_{i-1}(\mathbf {x} _{i-1})\,+\,g_{i-1}(\mathbf {x} _{i-1})z_{i})} ^{{\text{Single-integrator stabilizing control }}u_{a\;\!i}(\mathbf {x} _{i})}\,-\,f_{i}(\mathbf {x} _{i-1})\right)} 利益を得てk 私 > 0 {\displaystyle k_{i}>0} 式 (8 )より、対応するリアプノフ関数は次のようになる。
V 私 ( x 私 ) = V 私 − 1 ( x 私 − 1 ) + 1 2 ( z 私 − u 私 − 1 ( x 私 − 1 ) ) 2 {\displaystyle V_{i}(\mathbf {x} _{i})=V_{i-1}(\mathbf {x} _{i-1})+{\frac {1}{2}}(z_{i}-u_{i-1}(\mathbf {x} _{i-1}))^{2}} この構造により、究極の制御u ( x 、 z 1 、 z 2 、 … 、 z k ) = u k ( x k ) {\displaystyle u(\mathbf {x} ,z_{1},z_{2},\ldots ,z_{k})=u_{k}(\mathbf {x} _{k})} (つまり、最終的な制御は最終反復で見つかる)私 = k {\displaystyle i=k} したがって、厳密なフィードバックシステムは、自動化も可能な簡単な手順(例えば、適応制御 アルゴリズムの一部として)を使用してフィードバック安定化することができます。
参考文献 ↑ Kokotovic, PV (1992). "フィードバックの喜び: 非線形および適応型". IEEE Control Systems Magazine . 12 (3): 7–17 . doi : 10.1109/37.165507 . S2CID 27196262 . ↑ Lozano, R.; Brogliato, B. (1992). "Adaptive control of robot manipulators with flexible joints" (PDF) . IEEE Transactions on Automatic Control . 37 (2): 174– 181. doi : 10.1109/9.121619 . ↑ Krstic, M. ; Kanellakopoulos, I.; Kokotovic, PV (1995). Nonlinear and Adaptive Control Design . New York, NY: Wiley . ISBN 978-0-471-12732-1 。1 2 Khalil, HK (2002). 非線形システム (第3 版). アッパーサドルリバー、ニュージャージー州: プレンティスホール . ISBN 978-0-13-067389-3 。