ABSTRACT : The feedback decoupling problem of nonlinear systems is actually well understood in a theoretic point of view. However, to compute the ...
A FAST GR,~,~,HT ~ O R E T I C ALGORITHM FOR THE FEEDBACK D ECOUPLING PROBLEM OF + NONLINEAR SYSTEMS A. KASINSKI
and
J. LEVINE
ABSTRACT : The feedback decoupling problem of nonlinear systems is actually well understood in a theoretic point of view. However, to compute the decoupling feedbacks, the only method known by the authors, consists in using a formal derivation program as check if differential expressions are null [3]. We give a generic interpretation of these expressions in terms of the graph of the system in the sense of [6], and deduce a faster algorithm using the minimal length of the paths joining one of the inputs to the i th output.
(*)
Institut Automatyki Politec~mika Poznanska 6 0 % 5 POZNAN, ul. Piotrowo, 3A, POLAND.
(**-) Centre d'Automatique et Informatique Ecole Nationale Sup6rieure des Mines de Paris 35, rue St Honor6 77305 FONTAIN~BLK~.U - FRANCE. (÷)
The first author was supported by a scholarship of the Minist~re des Relations Ext4rieures de la R~publique Fran~aise.
I - The fee dbag,k deceupling problem We consider a linear-analytic i = fo(X)+
(D
system, given in local coordinates, by
N
M
S uif.(x)+ i=I l
Z wigi(x) i=I
Yi = h (x) ' i = I .....
:
p
z i = ki(x) , i = I, ..., q where
x
belongs to a connected
n-dimensional
are the input functions,
h I, ..., hp
analytic on
:
X, and where
n f.j Fi(x) = r. (x) j=1 i n
~x.
and
analytic manifold
k I, ..., kq
, i = 0 ....
X, u = (uI ,...~U~ w
are the output functions,
N
(~)
~x , i = I, ..., M J~ J are analytic vector fields on X. The feedback decouolin~ problem i--J ,...,N, j=1, o..,N,
consists in finding analytic functions
eventually defined on an open subset
(} of
X
i j (~ ,~i)~
such that
551
the feedback control : N
ui(~)= i(~) ÷~ makes the
p
outputs
We shall denote
~ij(~j
YI' "''' Yp
(2)
, i=I, °..,N
locally independent of
i w , i = I, ..., M.
Fi" i = O, ..., N, the vector fields obtained by the feedback (2) : N
n
~o(x) =fo (~) + zi:~i(~)fi(~) ' ~°(~): 7j:~9~(~)o~Xi N
(3)
n
The problem is actually well understood and the differential geometric methods
[4]
of the
together with the algebraic ones
[I ] draw an almost complete picture
thboretic solution. In the geometric approach of the "structural" decoupling,
we imtroduce the maximal involutive distribution ~ of constant rank, which is (Fo,FI ,-.. ,FN)-invariant. Isidori, Krener, Gori-Giorgi snd Monaco [4] have proved the follow~ng : Theorem I : The structural decouDling problem has a local solution if and only if : span { GI, .... GMI c Furthermore,
~
=
~
ker dh..
(4)
~ can be obtained by the following induction (see [5]) :
J)O = span {dhI ,...,dhp]
(5)
N
~k = i~ ~i ~-I +~-I where
2.
(6)
is the Lie derivative with respect to the vector field
Fi, and
1
~- (kUo~) ~ . ,
(T)
The algebraic methods, using Fliess' input-output map reprensentation, give a "functional" point of view : in place of a distribution, one looks for a module of vector fields, playing the same role as the distribution ~ with a non constant rank
(see [I ]).
Theorem 2 : The outputs Yi' "''' Y~
but eventually
Claude [I ] has proved the following : are decoupled with respect to
M w , ..., w ,
if and only if there exists an analytic module ~ which is also a Lie subalgebra of vector fields on Vi:[Fi, ~ with
F. I
c ~W, and defined
Furthermore,
~
X
such that
span{G1, .... GMI
by and
: c
~c
P ~ ker dh. i=i l
(3)-m ~
can be computed in a purely algebraic way (that is to
say without solving differential or partial differential equations) by the procedure described hereafter.
(8)
552
For this purpose, we need the • Definition I : The characteristic number
Pi
of order
i
is the unique integer
satisfying : ~j E {I
.,N} : F FPih. ~ 0 , ~**
.j 0
and :
Vj £ {I, .... NI,Vm £{O,...,pi-1 } If
F Fmh joi
=- 0
order of
Vj, Vm, we set
F2h i = F o ( F o l h i
Remark that m, and
that
(9)
i
)
F.Fmh. ---O.
(10)
~ o I
Pi = + o=
and i£
is a polynomial
~
: Fjh i ~ O, Pi = O,
of differentials of
FOhi ---hi" --Pi can be interpre ted
up to the
integrations one of ............ the u ..] . . . .such . . tha% . . . Yiw . . is . . affected . . . . by .
To compute
~
and
#, we introduce the following quantities
A~(X) : Fj(x)F~ i (x)hi(x)
,
:
i = I .... , p , j = I ..... N
P ~i(x) = ~i(hi(x)' Fo(X)hi(x)' .... Poi(x)hi(x))-
(11)
FOpi+1(x),i=1 '°'" , p
,~(~) = ~J(h ( x )•, F ~ o(~)h'(x)'~ ..., Fo~i (~)hi(x)) , i = I , ...,~ j=1, with
hi
as the minimal number
~i
and
(13)
...,N
~Jl arbitrary analytic functions.
Let us call : A element is
(12)
Aj
the ,
p × N
matrix-valued analytic function
~ = ( ~ ,... ,~ )T , and
~
the
p × N
whose
(i,j) th
matrix-valued analytic
i
function whose
(i,j) th element ~s
@J.
Theorem ~ : if
GkFoh i ---0 Vk £{I ..... M1 • Vm ~ Pi ' a necessary and sufficient
l
condition for that
(~,~)
to realize the local functional decoupling of
(~), is
(~,#) locally solve the system : Aa = ~
(~4)
a# = $ In this case, the change of variables X i = h i , ..., X i = F~ i h i o Pi
,
: i -- I, ..o, p ,
(15)
puts the system (~) locally into the form : "i i = X~ O
~i
=xi
Pi -I
(16)
Pi
~i i xi = ~i(Xo .... , % ) Pi Yi = Xi o
i = I, ...,p. |
N
+ S j=1
~(~,
..
x i )v. °'
Pi
S
553
Clearly,
this procedure involves a huge amount of formal calculus,
determine the characteristic numbers times the expressions and then check if
Pi ' i = I, ..., p : one must differentiate
Pi
hi, Fohi~ etc..., whose complexity is growing very fast,
F.Fmh.
Claude and Dufresne
especially to
is null or not=
A program has been d e v e l o p p e d b y
[3], using the language MACSYMA,
to compute these formal
expressions. The aim of this paper is to introduce a faster method to compute the minimal number of formal differentiations that the numbers
Pi
Pi
with
: for this purpose, we shall prove
can generieally be very easily obtained on the system's graph•
We shall also give a lower bound
vi
for
Pi
in the non-generic
obtained from the graph, and prove that either
v. < n-1
or
case, still
vi = Pi = + ~
These results are finally synthesized in an algorithm to compute
(a,8).
II-The system's graph As in
[6], we introduce the following system's graph :
Definition 2 : We call
F
the systemts graph of
with given local coordinates,
fallows
in a given open subset
the oriented graph whose input-nodes
(uI ,...,uN, w I ,...,wM), whose intermediate-nodes and whose output-nodes are
~
(Yl ' " " Y p ) "
of
are
are the state variables
The oriented arcs of
~
(x I ,. ..,Xn),
F are obtained as
:
o There exists an oriented arc joigning i = I .... ,N, k=1,...,n,
and joigning
ui
to
xk
iff
fk(x) ~ 0 in O
wi
to
xk
iff
g~i(x) ~ 0
in C)
i = I, ..., M, k = I, ..., n. There exists an oriented arc joining
x k to x
•
iff 8fDo(x) ~ 0 3
inO,
j, k = I ,
..., n.
. There exists an oriented are joining inO,
i = I, ..., p, k = I, ••., n. •
Definition 3 : We call an oriented path joining An introductory example
xk
to
Yi
iff
~h. i (x) ~ 0 6xk
d(u!,Yi) the minimal number of oriented arcs of u3
to
Yi' and
d. = Min d(uJ,Yi) l 1 ~ d I
implies
G1h m 0
and
back to (9) and (~0), and compute p.. We first bh I h x (G.h)(x) = g.(x)'~" (X_) -- O. Then :(F )( ) = I I ax~ z o o
3
o
I
and thus p = I ; Finally, we also have
P1=dl - 2 = I, and that
GiFoh -- O. To check our assertion,
2
check that (F_h)(x)--T~ (x) ~ (x^) toO, I x Oh x +f~ x ~h sx? z f ( ) ~ (^) ( .,x~ (x.) o ox I ~ o ] ~ u~-2 L
1 O
OX I
I
bf2 8h f2 GIFoh = gl (~--~3 8x2 + o
Thus, almost without computations,
PI
let us go
2
b2h 6x36x2, ~ 0 ,
as claimed above.
and the relations
G I h =- 0
and
GIFoh-= O, can be deduced from the system's graph (we only need to compute
FIFoh !).
Clearly, the system's graph synthesizesothe structure o f the interactions o f the input and output variables versus integration Qf the state variables.
Thus, it
is not surprising thatx in genera lt but generically 9nly, the minimal length represents the minimum number of integrations namely
f9 r the inputs t9 affec~
d.
l
Yi'
Pi' up to a constant equal to 2 since the first and last arcs do not
represent Remark
integrations.
: in
depend on
F, we do not take into account the fact that x I , ..., x n
or not.
f1' "''' fN' g1' "''' gM
For our purpose these interactions do not play
any role in generic situations and, if they play a role in non-generic cases, the profit of the graph's
method vanishes, as will be seen after.
III-The characteristic numbers
Pi ' their lower bounds
Besides the characteristic numbers defined as follows Definition ~
k z
bf ° ~-I
ke
....
k
6f o o
£ {I, ...,nl bh. ~
vi
~0
such that
in
fJ
8 fkr- I
bf k o bh.
~
~',
°''r
(18)
o
6- vi' that there exists a (non minimal) oriented path from one of the
uJ
to
Yi
of length
Unfortunately, this is not true, as the next example shows
:
Pi+2.
559
i xl = x4 + uzl x2 x2w - x2u ~
-x3w
x4 = x 5
~5 = u y = XlX2X 5
We have
v = 0, whereas
P = I :
~ (~x2~)-x 2 ~~
Fh=x
I ~
Fo h = x2x3x4' FIFoh =
-r-
(x~x~x3)~o, %h = ~2 ~a
(~x2~3)-x3~-~- (~x2x3)~°'
-x 2 ~ x 4 ~ O .
But it can be seen that, in
F, there is no oriented path joining
length equal to
The only path of length larger than 2 is
p + 2 = 3.
(u, x5, x 4, x I ,y)
of
length 4. Thus, if
give anymore information on
Pi"
r + 2
to
y
with
Pi > vi' we see that the graph does not
~owever, to compute
and if there is no path of length
u
in
F3.Frh. o i
with
r > vi'
F, it is no need to compute the
first term of (26) (with r in place of v. ) since if there w e r e a non z e r o expres1 sion in this term, there should exist a path of length r + 2,which contradicts our assumption,
m
Remark ~ : the two preceding examples give a good illustration of non-generic systems
: in both there were orthogonality relations between
the expressions non generic, for we obtain
~(k O)
are
~ O, but their sum is
0.
: F1h = (1+E)XlX2-XlX 2 = ~xlx 2 ~ O .
and
h, so that
Of course, this is
if we change, for example in Remark I,
Remark 4 : It is worth noting that if
FI
ux I
in
(1+E)ux I ,
•
r < vi, we necessarily have
F.Frh - O Yj = 1, o.., N. In the same way, going back to the system (17) of 3 o 1 the introductory example~ we have d(w,y I ) = 4, and thus GiFrh -= O Vr < 4-2 = 2. Also, this remark is useful to avoid computing a number of formal expressions
:
Jl
d., is obtained only for paths joining u , ...,u Jr l v to Yi" one can be sure that F~F i h. ---0 %~ ~ J1' "''' Jr' and one needs to E O l v@he~k only those expressions F. FVih., ..., F. F Zh. for minimal paths. • $I o l ~r o z
if
vi
or,
more precisely
iV - Description of the .algorithm. All the following computations
must be done formally,
for example with the
languages MACSYMA or REDUCE. I. The graph
F
To avoid a complete construction of
F
with a number of useless
n~des and arc~s~
560 one can determine
d. = v. + 2, and i
U. the subset of the
i
to the minimal paths, directly from the data of method
[u~ .... u')corresponding
i
~, and by a dynamic programming
:
6h.
° Starting from
Yi(i = I, ..., p), we build every incident arc with:
Then, for every
~x v
such that
(x~ ,yi ) £ F,
0
(uJ,x k )
in
r
~
,i ,~x-
is an arc
o
0
by
~jo ~ O.
If
(uJ,x k ) E F, then
0
di=2, v i = 0
and u j £ U i"
0
• If (uJ,Xko) ~ F xk
we test if there
0
by
Vj, we change
~fk°o
Yi
into
~]Q , and build every incident arc to
~ 0 ; then again, for ever~
Xkl
such that
(Xkl ,xk ) E F, O
we test if there I. is an arc (u~,x k ) is no arc from
u S,
Vj,
to
in
r
by
fj
everylpath of length
~0,
~n-1,
and so on. I
The same procedure can be done in parallel to determine and in
~i
t~e subset of the
(w I , ..., w M)
If there
v. = + ° %
then
.
Min d(wD,Yi)-- = ~ , I ~j~M
corresponding to the
(~i+2)
length
r.
2. CQmputation Qf
Pl
and the matrix
A.
• We first compute
F.F Vih. Vj such that u J" E ~.. i S o I Two cases can happen : v. • either FjFolhi ~ 0 for at least one j with u j g U i. v. Pi = vi' A lj = PjPol h i
Then
= 0
Vj
such that
uJ £ ~i
Vj
such that
u j ~U.. l
If
V~ = + ~, then
p4 = + ~
and the
i th line of
A
can be deleted.
vi . or
F.F h. -= 0 S o •
Then
p~ > v~
gj
such that
u" E ~. l
and one must compute
i
F.~rh. .lol
Vr > v.
VJ = I , ..., N, until the moment when one of these expressions becomes non 0 (Pi
is then equal to the corresponding
expression is null If
p~
is finite, the
every expression If
i t llin
(11)
for
3. The comparison between
Pi
and
of the matrix
i th line of
Pi < ~i' we have
• If
Pi > ~i' we have to look further if
G .pmh. ---0 jo l
GjFo~ih i
G ~mh.
- 0
= 0
G~Fnmh i_
Two cases can happen 0
r = n-1
if every
m 0
A is obtained by computing
A.
~i"
o If
if
or until
j = I, ..o, N.
Pi = + ~' one can delete the
and after
r)
(then ~. = 2 ~)o
Vj
Vm ~ Pi'
such that
gj.
w j £ ~i'
Vm = ~i_ + I, ..., Pi_ '
Vj.
:
Vm ~ p~, Vj, 1
then the decoupling problem has a local
561
solution iff the system o ~jo~{1,
(14)
.... M1 , Zm o < 0 i
has a local solution m
(a,~).
such that G4Fo ° hi ¢o, t~en the
decoupling problem has no solution, and the system is finitely decoupied up to the order
m
4. Inversion of the,,,s,ystem ( 1 4 ) Remark 5 : If evaluation of
vi < Pi' and if FjFomhi with
m + 2 joining
u j to
necessarily null.
o
,
V(~,~).
Same as in [ 3 ] . ~
(see [2]). '
has a large dimension, it can be useful, in the
m > v i, to remark that if there is no path of length Yi
in F, every expression
Thus, we eliminate this way
n
~m3 ~i(ko' ...,k m)
is
formal differentiations in
F .Fmh o • SOl
Remark 6 : It is clear that this method is more efficient for larger
v's and l 1/. does n o t c o n t a i n t o o many e l e m e n t s , J_ we need a very low number of formal derivations and the efficiency of thismethod is
l a r g e r n , N, M, p. the h i g h e s t .
If
'~i = P i
and i f
On t h e o t h e r h a n d , i f
vi < Pi'
since a minimal length in
F is
computed much faster than a formal derivation, the economy of time grows with V-
v.. ! •
C0nclusion. We have pried
that the feedback decoupling method of Claude and Dufresne
can be significantly simplified by the introduction of the system's graph. graph has the property that the minimal length
di
Pi
This
between the i th output
and the inputs (uI , ..., aN), is generically equal to the number
[3]
plus 2, and in general smaller or equal to
i th characteristic
Pi + 2.
This property
can be used to avoid a number of formal computations and is all the more efficient as
d. i
is large.
Acknowledgement.
The authors are indebted to P. Willis and F. Oeromel, of Eeole Polytechnique,
that have successfully realized
the programming
work.
REFERENCES
[I] Do CLAUDE. Decoupling of nonlinear systems. Syst. and Con~.
Letters. Volo I,
nO4 (1982), 242-248. [2] D. CLAUDE. Decouplage des syst&mes
" du lin4aire au nonlin4air% in :
Develcppement et utilisation d'outils et modules math4matiques en automatique, analyse des syst~mes et traitement du signal. Colloque National CNRS, Sept. 82, Belle-lie, France.
[3] ~)o CLA~E, P. DUFRESNE. An application of Macsyma to nonlinear systems decoupling. Ehropean Conference on Computer Algebra, Ap ril 82, Marseille, France .
562
[4] A. ISIDORI, A. KRE}~R, C. GORI-GIORGI, S. MONACO. Nonlinear decoupling via feedback. IEEE Trans. AC. Vol. AC26, n°2 (1981), 331-345. [5] A. ISIDORI. The geometric approach to nonlinear feedback control : a survey. Analysis and Optimization of Systems. Lecture Notes in Control and information sciences n°44, Springer, 1 9~2. [6] D. SILJAK° On teachability of dynamic systems. Int. J. Syst. So. Vol. 8, n°3, (1977), 321-358.