Professional Documents
Culture Documents
V (x) > 0,
x D {0 ,
(5a)
V
. f ( x ) 0, x D ,
V (x) =
x
( )
such that c
(5b)
Rm V ( x ) c }
point.
The continuously differentiable function V is called a Lyapunov function the energy function is
generally not a Lyapunov function, except in very specific cases. For a given Lyapunov function, the
largest c region offers the best estimate of the region of attraction of the equilibrium point. Since the
theorem leaves complete freedom in selecting both a Lyapunov function V and a domain D, an
optimization algorithm that searches over V and D in order to maximize the estimate of the ROA will
be formulated in Section VII.
The difficulties encountered in the application of Lyapunov theorem stem from the positivity
conditions required in the theorem, which are notoriously difficult to test. Even in cases when both the
vector field f and the Lyapunov function candidate V are polynomial, the Lyapunov conditions are
essentially polynomial non-negativity conditions which are known to be NP-hard to test [35].
Fortunately, as has been pointed out in [24], if we relax the polynomial non-negativity conditions to
appropriate polynomial sum squares (SOS) conditions, testing SOS conditions can then be done
efficiently using semidefinite programming (SDP), as we discuss in Appendix A. To illustrate this
point let us assume that D =
Rm
sufficient global stability conditions. They can be reformulated as SOS conditions as follows:
Proposition 1: Suppose that for the system (4) there exists a polynomial V (x) of degree 2d
such that V(0) = 0 and
V(x) 1(x)
(6a)
- V (x)
(6a)
Where
x2 j
i=1 j=1
, with
0 is a globally stable equilibrium point. If e replace the second condition with V (x) SOS, where
(x) is
The software SOSTOOLS [36] [28], in conjunction with a semidefinite programming solver
such as SeDuMi [37], can be used to efficiently solve the LMIs that appear in the SOS conditions (6).
For examples and extension see [25], [28], [29], [360]. All the SOS programs formulated in this paper
were solved using the freely-available MATLAB toolboxes SOSTOOLS, Version 2.0 [36], and
SeDuMi, version 1.1 [37].