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