Supriya Ghosh (Editor)

Control Lyapunov function

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit

In control theory, a control-Lyapunov function is a Lyapunov function V ( x ) for a system with control inputs. The ordinary Lyapunov function is used to test whether a dynamical system is stable (more restrictively, asymptotically stable). That is, whether the system starting in a state x ≠ 0 in some domain D will remain in D, or for asymptotic stability will eventually return to x = 0 . The control-Lyapunov function is used to test whether a system is feedback stabilizable, that is whether for any state x there exists a control u ( x , t ) such that the system can be brought to the zero state by applying the control u.

More formally, suppose we are given an autonomous dynamical system

x ˙ = f ( x , u )

where x ∈ R n is the state vector and u ∈ R m is the control vector, and we want to feedback stabilize it to x = 0 in some domain D ⊂ R n .

Definition. A control-Lyapunov function is a function V : D → R that is continuously differentiable, positive-definite (that is V ( x ) is positive except at x = 0 where it is zero), and such that

∀ x ≠ 0 , ∃ u V ˙ ( x , u ) = ∇ V ( x ) ⋅ f ( x , u ) < 0.

The last condition is the key condition; in words it says that for each state x we can find a control u that will reduce the "energy" V. Intuitively, if in each state we can always find a way to reduce the energy, we should eventually be able to bring the energy to zero, that is to bring the system to a stop. This is made rigorous by the following result:

Artstein's theorem. The dynamical system has a differentiable control-Lyapunov function if and only if there exists a regular stabilizing feedback u(x).

It may not be easy to find a control-Lyapunov function for a given system, but if we can find one thanks to some ingenuity and luck, then the feedback stabilization problem simplifies considerably, in fact it reduces to solving a static non-linear programming problem

u ∗ ( x ) = * ⁡ a r g m i n u ∇ V ( x ) ⋅ f ( x , u )

for each state x.

The theory and application of control-Lyapunov functions were developed by Z. Artstein and E. D. Sontag in the 1980s and 1990s.

Example

Here is a characteristic example of applying a Lyapunov candidate function to a control problem.

Consider the non-linear system, which is a mass-spring-damper system with spring hardening and position dependent mass described by

m ( 1 + q 2 ) q ¨ + b q ˙ + K 0 q + K 1 q 3 = u

Now given the desired state, q d , and actual state, q , with error, e = q d − q , define a function r as

r = e ˙ + α e

A Control-Lyapunov candidate is then

V = 1 2 r 2

which is positive definite for all q ≠ 0 , q ˙ ≠ 0 .

Now taking the time derivative of V

V ˙ = r r ˙ V ˙ = ( e ˙ + α e ) ( e ¨ + α e ˙ )

The goal is to get the time derivative to be

V ˙ = − κ V

which is globally exponentially stable if V is globally positive definite (which it is).

Hence we want the rightmost bracket of V ˙ ,

( e ¨ + α e ˙ ) = ( q ¨ d − q ¨ + α e ˙ )

to fulfill the requirement

( q ¨ d − q ¨ + α e ˙ ) = − κ 2 ( e ˙ + α e )

which upon substitution of the dynamics, q ¨ , gives

( q ¨ d − u − K 0 q − K 1 q 3 − b q ˙ m ( 1 + q 2 ) + α e ˙ ) = − κ 2 ( e ˙ + α e )

Solving for u yields the control law

u = m ( 1 + q 2 ) ( q ¨ d + α e ˙ + κ 2 r ) + K 0 q + K 1 q 3 + b q ˙

with κ and α , both greater than zero, as tunable parameters

This control law will guarantee global exponential stability since upon substitution into the time derivative yields, as expected

V ˙ = − κ V

which is a linear first order differential equation which has solution

V = V ( 0 ) e − κ t

And hence the error and error rate, remembering that V = 1 2 ( e ˙ + α e ) 2 , exponentially decay to zero.

If you wish to tune a particular response from this, it is necessary to substitute back into the solution we derived for V and solve for e . This is left as an exercise for the reader but the first few steps at the solution are:

r r ˙ = − κ 2 r 2 r ˙ = − κ 2 r r = r ( 0 ) e − κ 2 t e ˙ + α e = ( e ˙ ( 0 ) + α e ( 0 ) ) e − κ 2 t

which can then be solved using any linear differential equation methods.

References

Control-Lyapunov function Wikipedia


Similar Topics
×