A Nonlinear Application of a Lyapunov Technique for Assuring Global Performance Bounds
Anders Helmersson
Department of Electrical Engineering Linkoping University
S-581 83 Linkoping, Sweden email:
andersh@isy.liu.sefax: +46 13 282622 Abstract
In this paper we consider the stability and perfor- mance problem of nonlinear systems using a Lya- punov technique. Upper or lower bounds can be pro- vided assuming that a Lyapunov function satises a Hamiltonian inequality for all admissible states. Also, suboptimal control laws with guaranteed performance bounds can be derived with this technique. The tech- nique has been applied on rate and attitude control for sounding rockets. As an example a rate control algorithm is elaborated showing the main ideas pre- sented in this paper: 1) the Lyapunov function pro- vides a global performance bound 2) a control law is derived based on the Lyapunov function and 3) the candidate Lyapunov function is parametrized and improved bounds are obtained using parameter opti- mization.
Keywords : Optimal control, suboptimal control, performance bounds, Lyapunov functions, nonlinear systems.
1. Introduction
Many control problems can be formulated as opti- mization problems using a performance or cost cri- terion. In practical applications it is usually very dicult or even impossible to synthesize this into a tractable control law. Instead of nding the opti- mal control law it is normally easier to nd a sub- optimal strategy. This can be facilitated by turning the Hamilton-Jacobi-Bellman equation 1] into an in- equality. In this paper we will apply a Lyapunov tech- nique for providing bounds of performance for non- linear systems. A similar methodology is used for dissipative systems where the storage function serves as a Lyapunov function (see eg. 2], 3] and 4]).
The technique is applied on a rate control system for a spacecraft. Similar control systems have been de- signed, implemented and own on sounding rocket applications.
The paper is outlined as follows: Section 2 provides tools for proving upper and lower bounds of integral performance criteria. An example is given in section 3 showing the application of the technique on a rate control system for a spacecraft.
2. Performance Bounds
Consider a continuous-time dynamic system de- scribed by a dierential equation
_
x
=
f(
xu) (1) and a performance criterion
Jdened by
J
(
x(
t)) =
Z Tt
g
(
xu)
d(2) where
xis the state vector and
uis the control input.
The performance criterion can be dened either for a given feedback control law,
u, or as a minimization criterion. In the latter case a control law, minimizing the performance criterion is dened. In both cases it is generally not possible to nd an explicit solution of
J. Instead it may be possible to nd a bound,
V, that denes an upper limit of solution, that is
J V.
Theorem 2.1 An upper bound for
Jcan be es- tablished if there exists a continuously dierentiable, positive denite Lyapunov function,
V, and a con- trol law,
u(
x), that make the Hamiltonian,
H, non- positive for all
x.
H
=
g(
xu(
x)) +
Vx(
x)
f(
xu(
x)) 0
8x(3)
Proof.
J
(
x(
t)) =
Z
T
t
g
(
xu)
d=
Z
T
t
g
(
xu)
d+
V(
x(
T))
;V(
x(
t)) +
V(
x(
t))
;V(
x(
T))
Z
T
t
g
(
xu) + _
V(
x)]
d+
V(
x(
t))
=
Z
T
t
g
(
xu) +
Vx(
x)
f(
xu)]
d+
V(
x(
t))
V
(
x(
t))
:2
Remark 2.1 A lower bound can be established analogously, by assuming
Hto be non-negative.
Remark 2.2 If a Lyapunov function establishes both an upper and a lower bound then it is optimal and satises
H= 0 globally. This is usually referred to as the Hamilton-Jacobi-Bellman equation, see e.g.
1].
Remark 2.3 A control law can be derived from
Vby
u(
x) = argmin
uH. This means that if an upper bound has been established for a given control law, a new control law can be dened, possibly with improved performance.
Remark 2.4 If we have a set of Lyapunov func- tions,
Vparametrized by
, such that every member in the set satises
H0, then a new Lyapunov func- tion,
V, can be dened by
V
(
x) = min
V
(
x)
:(4)
3. An Example 3.1. Approach
In this example we start by assuming a Lyapunov function with unknown parameters. The parameters are chosen in order to fulll the Hamiltonian inequal- ity and a control law is derived by minimizing the Hamiltonian with respect to the control signal. We actually derive a set of Lyapunov functions and by
nding the minimum of these a new Lyapunov func- tion is derived, which is globally equal to or better than any of the Lyapunov functions within the origi- nal set.
3.2. Problem Denition
In this example we will consider a rate control system for a cylindrical spacecraft equipped with a number of control thrusters for attitude and rate control. The dynamics of a rigid body can be expressed as
I
x!
_
x= (
Iy;Iz)
!y!z+
MxI
y!
_
y= (
Iz;Ix)
!z!x+
My(5)
I
z!
_
z= (
Ix;Iy)
!x!y+
Mzwhere
Iis the moment of inertia of the body,
!is its angular rates, and
Mis the control torque. The co- ordinate system (
xyz) is assumed to coincide with the principal axes of inertia of the body.
The cylindrical body is assumed to be symmetric about the x-axis, that is
Iy=
Iz=
I?. Dene
=
I
x
=I
?
,
ax=
Mx=Ix,
ay=
My=I?and
az=
Mz=I?. We then get the following set of simplied equations
_
!
x
=
ax_
!
y
= (1
;)
!z!x+
ay(6) _
!
z
= (
;1)
!x!y+
az:As an application we choose a spacecraft congura- tion with three thruster pairs placed with an equal 120-degree spacing around the circumference of the spacecraft. The thrusters in each thruster pair pro- duce opposite torques. The six available commands are
a
= (
axayaz) =
8
<
:
(
x ?0)
(
x;12 ?p23 ?)
(
x;12 ?;p23 ?) (7) where
xand
?are normalizing constants corre- sponding to the torque levels. These depend on the moments of inertia (
Ixand
I?), the thrust level and the lever arm.
We use a cost function that penalizes both time and fuel consumption (accumulated thruster activation)
g
(
xu) = 1 +
X6i=1 u
i
(8)
where
uiare the control signals (either 0 or 1) and
0 is the time-fuel tradeo parameter (low
puts the emphasis on time and vice versa), which is used as a design parameter.
3.3. Finding a Set of Lyapunov Function
We adopt the following candidate Lyapunov function
V
(
!) =
qb2x!2x+
b2?(
!2y+
!2z) (9)
where
bxand
b?are parameters to be deter-
mined. We normalize the equations by intro-
ducing = (
!x= x!y= ?!z= ?), and
=
(
bx xb? ?b? ?). The Lyapunov function can then be rewritten as
V
() =
p(
xx)
2+ (
??)
2(10) where
?=
q2y+
2z:(11) The Hamiltonian of the problem becomes
H
= 1 +
X6i=1 u
i
+ 1
V
;
b 2
x
!
x a
x
+
b2?(
!yay+
!zaz)
:Note that the cross coupling between the y-axis (12) and z-axis disappears, since
Vis symmetric in
!yand
!z. Also, the last term can be rewritten as a scalar product (
) between a unit vector
e= (
bx!xb?!yb?!z)
=V= (
xx?y?z)
=Vand
P
u
i
i. Thus,
H
= 1 +
X6i=1 u
i
+
eX6i=1 u
i
i:(13) where
(+
0
0) :
1= (
x ?0) (
;0
0) :
2= (
;x ;?0) (0
+
0) :
3= (
x ;12? p23?) (0
;0) :
4= (
;x 12? ;p23?) (0
0
+) :
5= (
x ;12? ;p23?) (0
0
;) :
6= (
;x 12? p23?) We now observe that is is possible to reshape the inequality so that it will have a geometrical interpre- tation. Introduce
h
(
e) = 1 +
P
u
i
;e
Puii:
(14)
If
h1 then
H0 assuming that the denomi- nator is positive. For a xed
uthe function
eh(
e) denes a at surface perpendicular to
Puii. The function
hdenes a polyhedron, where each surface corresponds to a thruster combination. The polyhe- dron must lie inside the unit sphere in order to satisfy the Hamiltonian inequality. Since the polyhedron is convex, it suces to check the vertices in order to as- sure global satisfaction of the Hamiltonian inequality.
Figure 1 shows a polyhedron corresponding to
= 1 and (
x?) dened by (20).
A thruster is switched on (
ui= 1) if
e
i;
1
=:(15)
Each thruster pair can be commanded in three pos- sible combinations (
;0
+) since they are opposite.
-1 -0.5 0 0.5 1
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
x-axis
y-axis
Polyhedron h(e)
(0-+)
(00+) (0-0)
(--0)
(--+)
(-0+)
(+0+) (+-0)
(+-+)
Figure 1: The polyhedron dened by
h(
e) circumscribed by a unit sphere. Each surface corresponds to a thruster combination.
In total we have 27 combinations, of which one (all thrusters o) can be excluded, since
ui= 0
8iim- plies
H= 1
>0. Thus, the polyhedron has 26 sur- faces and 24 vertices.
A vertex is dened by a thruster being on (
) and two being undened (=) in (15). The undened thrusters could be either on or o yielding the same Lyapunov function.
We check all vertices in order to globally satisfy the Hamiltonian inequality. In total there are 24 vertices but since the conguration is symmetric, it is enough to check four since we, without loss of generality, may assume that thruster 1 is on. Out of these four con- ditions two are redundant and the two remaining are Condition 1 (+,+
=0,+
=0):
e
x
x
+
ey?+ 1 +
0
e
x
x
;
1 2
ey?+
p
3
2
ez?+
= 0
e
x
x
;
1 2
ey?;p
3
2
ez?+
= 0 Condition 2 (+,
;=0,
;=0):
e
x
x
+
ey?+ 1 +
0
;e
x
x
+ 12
ey?;p
3
2
ez?+
= 0
;e
x
x
+ 12
ey?+
p
3
2
ez?+
= 0
These two conditions together with
e2x+
e2y+
e2z= 1 can be synthesized into the following inequalities
(1 + 3
)
22
x
+ 4
2
?
9 (16)
(1
;)
22
x
+ 4(1 + 2
)
22
?
9 (17)
The two conditions specify a set of (
x?). Every member in this set denes a Lyapunov function,
V, that satises
H0. By combining these Lyapunov functions within this set a new global Lyapunov func- tion,
V, can be obtained by minimizing
Vwith re- spect to
.
3.4. Minimizing
VWe proceed as follows: for each (
x?) there exists an optimal (
x?), possibly not unique. Thus,
V
(
x?) = min
x
? V
(
x?) (18) with
V
(
x?) =
p(
xx)
2+ (
??)
2:(19) The two conditions (16) and (17) coincide in
2
x
=
2+
23+
132
?
= 2
2+
43+
23:(20) Note that
?=
p2
x.
We get three solutions to the minimization problem:
one corresponding to the intersection dened by (20), and two on each side of the intersection where either condition is limiting.
When condition (16) is limiting (equality) we obtain
V
2
() =
2x2x+
?22?=
;x22x+
?22?(1 + 3
)
29
x2+ 4 9
?2
=
1 + 3
3
jxj+ 23
?
2
+
2
x3
?jxj;(1 + 3
)
?3
x ?
2
1 + 3
3
jxj+ 23
?
2
with equality for
x
?
2
= 1 + 3 2
?j
xj:(21) Thus
V
1
= 1 + 3 3
jxj+ 23
?:(22)
Similarly, when condition (17) is limiting we obtain
V
2
=
j1
;j3
jxj+ 2 + 4 3
?(23) for
x
?
2
=
j1
;j2 + 4
?j
xj:(24) The intersection (20) yields
V
3
=
s
2
+ 23
+ 13
(
2x+ 2
2?)
:(25) Depending on
xand
?we select one of the three Lyapunov functions.
The synthesized Lyapunov function of the problem becomes
V
() =
8
<
: V
1
() (1 + 3
)
? jxjV
2
()
j1
;j?(1 + 2
)
jxjV
3
() otherwise
:(26) Note that if
= 0 only
V1and
V2can apply if
= 1 only
V1and
V3.
3.5. Recovering the Controller
The control law can be derived using (26) and by minimizing
Hwith respect to
u. Alternatively,
xand
?can be solved for and (15) can be used.
In order to get a practicable control law we also need some sort of stopping criterion or ne-pointing mode this will not be discussed here.
3.6. Finding Lower Bounds
We can also provide a lower bound for the example given in the previous section. Using the same rea- soning as for the upper bound we want to nd a loss function
Vthat assures
H0, or equivalently
h1.
One such lower bound can be found by nding the largest sphere inscribed in the polyhedron dened by
h