Strict-feedback form

☆ Save On Wikipedia ↗

In control theory, dynamical systems are in strict-feedback form when they can be expressed as

{ x ˙ = f 0 ( x ) + g 0 ( 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 ˙ i = f i ( x , z 1 , z 2 , … , z i − 1 , z i ) + g i ( x , z 1 , z 2 , … , z i − 1 , z i ) z i + 1  for  1 ≤ i < 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{cases}{\dot {\mathbf {x} }}=f_{0}(\mathbf {x} )+g_{0}(\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 \\{\dot {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}}} {\displaystyle {\begin{cases}{\dot {\mathbf {x} }}=f_{0}(\mathbf {x} )+g_{0}(\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 \\{\dot {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}}}

where

  • x ∈ R n {\displaystyle \mathbf {x} \in \mathbb {R} ^{n}} {\displaystyle \mathbf {x} \in \mathbb {R} ^{n}} with n ≥ 1 {\displaystyle n\geq 1} {\displaystyle n\geq 1},
  • z 1 , z 2 , … , z i , … , z k − 1 , z k {\displaystyle z_{1},z_{2},\ldots ,z_{i},\ldots ,z_{k-1},z_{k}} {\displaystyle z_{1},z_{2},\ldots ,z_{i},\ldots ,z_{k-1},z_{k}} are scalars,
  • u {\displaystyle u} {\displaystyle u} is a scalar input to the system,
  • f 0 , f 1 , f 2 , … , f i , … , f k − 1 , f k {\displaystyle f_{0},f_{1},f_{2},\ldots ,f_{i},\ldots ,f_{k-1},f_{k}} {\displaystyle f_{0},f_{1},f_{2},\ldots ,f_{i},\ldots ,f_{k-1},f_{k}} vanish at the origin (i.e., f i ( 0 , 0 , … , 0 ) = 0 {\displaystyle f_{i}(0,0,\dots ,0)=0} {\displaystyle f_{i}(0,0,\dots ,0)=0}),
  • g 1 , g 2 , … , g i , … , g k − 1 , g k {\displaystyle g_{1},g_{2},\ldots ,g_{i},\ldots ,g_{k-1},g_{k}} {\displaystyle g_{1},g_{2},\ldots ,g_{i},\ldots ,g_{k-1},g_{k}} are nonzero over the domain of interest (i.e., g i ( x , z 1 , … , z k ) ≠ 0 {\displaystyle g_{i}(\mathbf {x} ,z_{1},\ldots ,z_{k})\neq 0} {\displaystyle g_{i}(\mathbf {x} ,z_{1},\ldots ,z_{k})\neq 0} for 1 ≤ i ≤ k {\displaystyle 1\leq i\leq k} {\displaystyle 1\leq i\leq k}).

Here, strict feedback refers to the fact that the nonlinear functions f i {\displaystyle f_{i}} {\displaystyle f_{i}} and g i {\displaystyle g_{i}} {\displaystyle g_{i}} in the z ˙ i {\displaystyle {\dot {z}}_{i}} {\displaystyle {\dot {z}}_{i}} equation only depend on states x , z 1 , … , z i {\displaystyle x,z_{1},\ldots ,z_{i}} {\displaystyle x,z_{1},\ldots ,z_{i}} that are fed back to that subsystem.[1] That is, the system has a kind of lower triangular form.

Stabilization

Systems in strict-feedback form can be stabilized by recursive application of backstepping.[1] That is,

  1. It is given that the system
    x ˙ = f 0 ( x ) + g 0 ( x ) u x ( x ) {\displaystyle {\dot {\mathbf {x} }}=f_{0}(\mathbf {x} )+g_{0}(\mathbf {x} )u_{x}(\mathbf {x} )} {\displaystyle {\dot {\mathbf {x} }}=f_{0}(\mathbf {x} )+g_{0}(\mathbf {x} )u_{x}(\mathbf {x} )}
    is already stabilized to the origin by some control u x ( x ) {\displaystyle u_{x}(\mathbf {x} )} {\displaystyle u_{x}(\mathbf {x} )} where u x ( 0 ) = 0 {\displaystyle u_{x}(\mathbf {0} )=0} {\displaystyle u_{x}(\mathbf {0} )=0}. That is, choice of u x {\displaystyle u_{x}} {\displaystyle u_{x}} to stabilize this system must occur using some other method. It is also assumed that a Lyapunov function V x {\displaystyle V_{x}} {\displaystyle V_{x}} for this stable subsystem is known.
  2. A control u 1 ( x , z 1 ) {\displaystyle u_{1}(\mathbf {x} ,z_{1})} {\displaystyle u_{1}(\mathbf {x} ,z_{1})} is designed so that the system
    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})} {\displaystyle {\dot {z}}_{1}=f_{1}(\mathbf {x} ,z_{1})+g_{1}(\mathbf {x} ,z_{1})u_{1}(\mathbf {x} ,z_{1})}
    is stabilized so that z 1 {\displaystyle z_{1}} {\displaystyle z_{1}} follows the desired u x {\displaystyle u_{x}} {\displaystyle u_{x}} control. The control design is based on the augmented Lyapunov function candidate
    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}} {\displaystyle V_{1}(\mathbf {x} ,z_{1})=V_{x}(\mathbf {x} )+{\frac {1}{2}}(z_{1}-u_{x}(\mathbf {x} ))^{2}}
    The control u 1 {\displaystyle u_{1}} {\displaystyle u_{1}} can be picked to bound V ˙ 1 {\displaystyle {\dot {V}}_{1}} {\displaystyle {\dot {V}}_{1}} away from zero.
  3. A control u 2 ( x , z 1 , z 2 ) {\displaystyle u_{2}(\mathbf {x} ,z_{1},z_{2})} {\displaystyle u_{2}(\mathbf {x} ,z_{1},z_{2})} is designed so that the system
    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})} {\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})}
    is stabilized so that z 2 {\displaystyle z_{2}} {\displaystyle z_{2}} follows the desired u 1 {\displaystyle u_{1}} {\displaystyle u_{1}} control. The control design is based on the augmented Lyapunov function candidate
    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}} {\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}}
    The control u 2 {\displaystyle u_{2}} {\displaystyle u_{2}} can be picked to bound V ˙ 2 {\displaystyle {\dot {V}}_{2}} {\displaystyle {\dot {V}}_{2}} away from zero.
  4. This process continues until the actual u {\displaystyle u} {\displaystyle u} is known, and
    • The real control u {\displaystyle u} {\displaystyle u} stabilizes z k {\displaystyle z_{k}} {\displaystyle z_{k}} to fictitious control u k − 1 {\displaystyle u_{k-1}} {\displaystyle u_{k-1}}.
    • The fictitious control u k − 1 {\displaystyle u_{k-1}} {\displaystyle u_{k-1}} stabilizes z k − 1 {\displaystyle z_{k-1}} {\displaystyle z_{k-1}} to fictitious control u k − 2 {\displaystyle u_{k-2}} {\displaystyle u_{k-2}}.
    • The fictitious control u k − 2 {\displaystyle u_{k-2}} {\displaystyle u_{k-2}} stabilizes z k − 2 {\displaystyle z_{k-2}} {\displaystyle z_{k-2}} to fictitious control u k − 3 {\displaystyle u_{k-3}} {\displaystyle u_{k-3}}.
    • ...
    • The fictitious control u 2 {\displaystyle u_{2}} {\displaystyle u_{2}} stabilizes z 2 {\displaystyle z_{2}} {\displaystyle z_{2}} to fictitious control u 1 {\displaystyle u_{1}} {\displaystyle u_{1}}.
    • The fictitious control u 1 {\displaystyle u_{1}} {\displaystyle u_{1}} stabilizes z 1 {\displaystyle z_{1}} {\displaystyle z_{1}} to fictitious control u x {\displaystyle u_{x}} {\displaystyle u_{x}}.
    • The fictitious control u x {\displaystyle u_{x}} {\displaystyle u_{x}} stabilizes x {\displaystyle \mathbf {x} } {\displaystyle \mathbf {x} } to the origin.

This process is known as backstepping because it starts with the requirements on some internal subsystem for stability and progressively steps back out of the system, maintaining stability at each step. Because

  • f i {\displaystyle f_{i}} {\displaystyle f_{i}} vanish at the origin for 0 ≤ i ≤ k {\displaystyle 0\leq i\leq k} {\displaystyle 0\leq i\leq k},
  • g i {\displaystyle g_{i}} {\displaystyle g_{i}} are nonzero for 1 ≤ i ≤ k {\displaystyle 1\leq i\leq k} {\displaystyle 1\leq i\leq k},
  • the given control u x {\displaystyle u_{x}} {\displaystyle u_{x}} has u x ( 0 ) = 0 {\displaystyle u_{x}(\mathbf {0} )=0} {\displaystyle u_{x}(\mathbf {0} )=0},

then the resulting system has an equilibrium at the origin (i.e., where x = 0 {\displaystyle \mathbf {x} =\mathbf {0} \,} {\displaystyle \mathbf {x} =\mathbf {0} \,}, z 1 = 0 {\displaystyle z_{1}=0} {\displaystyle z_{1}=0}, z 2 = 0 {\displaystyle z_{2}=0} {\displaystyle z_{2}=0}, ... , z k − 1 = 0 {\displaystyle z_{k-1}=0} {\displaystyle z_{k-1}=0}, and z k = 0 {\displaystyle z_{k}=0} {\displaystyle z_{k}=0}) that is globally asymptotically stable.

See also

References

  1. Khalil, Hassan K. (2002). Nonlinear Systems (3rd ed.). Upper Saddle River, NJ: Prentice Hall. ISBN 0-13-067389-7.