+ All Categories
Home > Documents > [IEEE 1978 IEEE Conference on Decision and Control including the 17th Symposium on Adaptive...

[IEEE 1978 IEEE Conference on Decision and Control including the 17th Symposium on Adaptive...

Date post: 01-Oct-2016
Category:
Upload: alan
View: 215 times
Download: 0 times
Share this document with a friend
6
WA3 - 11% A SCHUR METBOD FOR SOLVING ALGEBRAIC RICCATI EQUATIONS* Alan J. Laub Laboratory for Information and Decision Systems Massachusetts Institute of Technology Cambridge, HA 02139 FUII .35-331 Abstract In this paper anew algorithm for solving alge- braic Riccati equations (both continuous-time and discrete-time versions) is presented, The methd studied is a variant of the classical eigenvector approach and uses instead an appropriate set of Schur vectors thereby gaining substantial numeri- cal advantages. Complete proofs of the Schur ap- proach are given as well as considerable discus- sion of numerical issues. The method is apparently quite numerically stable and performs reliably on systems with dense matrices up to order 100 or so, storage being the main limiting factor. The de- scription given below is a considerably abridged version of a complete report given in 101. 1. Introduction In this paper anew algorithm for solving al- gebraic Riccati equations (both continuous-time and discrete-time versions) is presented. These equa- tions play fundamental roles in the analysis, syn- thesis, and design of linear-quadratic-Gaussian control and estimation systems as well as in many other branches of applied mathematics. It is not the purpose of this paper to survey the extensive literature available for these equations but, rather, we refer the reader to, for example, [l], 121, 131, [4], 151 for references. Nor is it our intention to investigate any but the unique (under suitable hypotheses) symmetric, nonnegative defi- nite solution of an algebraic Riccati equation even though the algorithm to be presented does also have the potential to produce other solutions. For further reference to the "geometry" of the Riccati equation we refer to 131, 161, and [71. The method studied here is a variant of the classical eigenvector approach to Riccati equations, the essentials of which date back to at least von Escherich in 1898 IS]. The approach has also found its way into the control literature in papers by, for example, MacParlane 191, Potter [lo], and Vaughn 1111. Its use in that literature is often associated with the name of Potter. However, the use of eigenvectors is often highly unsatisfactory from a numerical point of view and the present *This research was supported by the U.S. Energy Research and Development Agency under contract ERDA-E (49-18) -2087. 60 method uses the so-called and much =re numerically attractive Schur vectors to get a basis for a cer- tain subspace of interest in the problem. Other authors such as Fath [121 and Willems 131, to name tw, have also noted that any basis of the subspace would suffice but the specific use of Schur vectors was inhibited by a not- entirely-straightford problem of ordering tri- angular canonical forms - a problem which is dis- cussed at length in the sequel. The paper byFath is very much in the spirit of the work presented here andis one of the veryfew in the literature which seriously addresses numerical issues. One of the best suxuoaries of the eigenvector approach to solving algebraic Riccati equations is the work of Martensson 1131. This work extends 1103 to the case of "multiple closed-loop eigen- values". It will be shown in the sequel how the present approach recovers all the theoretical re- sults of 1101 and I131 while providing significant numerical advantages. Moreover, most numerical comparisons of Riccati algorithms tend to definitely favorthe original eigenvector approach - its numerical difficulties notwithstanding - over other approaches such as Newton's method 1141 or.methods base; on integrating a Riccati differential equation. Typical of such comparisons are 171, 1151, and 1161. It will be demonstrated in this paper that if you previously liked the eigenvector approach, you will like the Schur vector approach at least twice as much. This statement, while sanewhat simplistic, is based on the fact that a Schur vector approach provides an efficient, useful, and reliable technique for numerically Solving algebraic Riccati equations. The uethod is in- tended primarily for the solution of dense, moderate-sized equations (say, order 5 100) rather than large, sparse equations. While the algorithm in its present state offers much scope for im- provement, it still represents an order-of- magnitude improvement over current methods for solving algebraic Riccati equations. ly standard in numerical linear algebra and is compatible with, for example, 1191. We shall also use standard properties of Hamiltonian and symp- lectic matrices; see 1171, DE1 . And finally, we shall use extensively the Murnaghan-Wintner 1203 canonical form or real Schw form (RSF) with the corresponding Schur vectors; see 1211. Further details on notation and background are in 101. The notation used in this paper will be fair-
Transcript
Page 1: [IEEE 1978 IEEE Conference on Decision and Control including the 17th Symposium on Adaptive Processes - (1978.01.10-1978.01.12)] 1978 IEEE Conference on Decision and Control including

WA3 - 11% A SCHUR METBOD FOR SOLVING ALGEBRAIC RICCATI EQUATIONS*

Alan J. Laub Laboratory for Information and Decision Systems

Massachusetts Institute of Technology Cambridge, HA 02139

FUII. 35-331

Abstract

In t h i s paper a new algorithm for solving alge- braic Riccati equations (both continuous-time and discrete-time versions) is presented, The methd studied is a variant of the classical eigenvector approach and uses instead an appropriate set of Schur vectors thereby gaining substantial numeri- cal advantages. Complete proofs of the Schur ap- proach are given as well as considerable discus- sion of numerical issues. The method is apparently quite numerically stable and performs reliably on systems with dense matrices up to order 100 or so, storage being the main limiting factor. The de- scription given below is a considerably abridged version of a complete report given in 101.

1. Introduction

In t h i s paper a new algorithm for solving al- gebraic Riccati equations (both continuous-time and discrete-time versions) is presented. These equa- tions play fundamental roles in the analysis, syn- thesis, and design of linear-quadratic-Gaussian control and estimation systems as well as in many other branches of applied mathematics. It is not the purpose of this paper to survey the extensive literature available for these equations but, rather, we refer the reader to, for example, [l], 121, 131, [4], 151 for references. Nor is it our intention to investigate any but the unique (under suitable hypotheses) symmetric, nonnegative defi- nite solution of an algebraic Riccati equation even though the algorithm to be presented does also have the potential to produce other solutions. For further reference to the "geometry" of the Riccati equation we refer to 131, 161, and [71.

The method studied here is a variant of the classical eigenvector approach to Riccati equations, the essentials of which date back to at least von Escherich in 1898 IS]. The approach has also found its way into the control literature in papers by, for example, MacParlane 191, Potter [lo], and Vaughn 1111. Its use in that literature is often associated with the name of Potter. However, the use of eigenvectors is often highly unsatisfactory from a numerical point of view and the present

*This research was supported by the U.S. Energy Research and Development Agency under contract ERDA-E (49-18) -2087.

60

method uses the so-called and much =re numerically attractive Schur vectors to get a basis for a cer- tain subspace of interest in the problem.

Other authors such as Fath [121 and Willems 131, to name tw, have also noted that any basis of the subspace would suffice but the specific use of Schur vectors was inhibited by a not- entirely-straightford problem of ordering tri- angular canonical forms - a problem which is dis- cussed at length in the sequel. The paper by Fath is very much in the spirit of the work presented here and is one of the very few in the literature which seriously addresses numerical issues.

One of the best suxuoaries of the eigenvector approach to solving algebraic Riccati equations is the work of Martensson 1131. This work extends 1103 to the case of "multiple closed-loop eigen- values". It will be shown in the sequel how the present approach recovers all the theoretical re- sults of 1101 and I131 while providing significant numerical advantages.

Moreover, most numerical comparisons of Riccati algorithms tend to definitely favor the original eigenvector approach - its numerical difficulties notwithstanding - over other approaches such as Newton's method 1141 or.methods base; on integrating a Riccati differential equation. Typical of such comparisons are 171, 1151, and 1161. It will be demonstrated in t h i s paper that if you previously liked the eigenvector approach, you will like the Schur vector approach at least twice as much. This statement, while sanewhat simplistic, is based on the fact that a Schur vector approach provides an efficient, useful, and reliable technique for numerically Solving algebraic Riccati equations. The uethod is in- tended primarily for the solution of dense, moderate-sized equations (say, order 5 100) rather than large, sparse equations. While the algorithm in its present state offers much scope for im- provement, it still represents an order-of- magnitude improvement over current methods for solving algebraic Riccati equations.

ly standard in numerical linear algebra and is compatible with, for example, 1191. We shall also use standard properties of Hamiltonian and symp- lectic matrices; see 1171, DE1 . And finally, we shall use extensively the Murnaghan-Wintner 1203 canonical form or real Schw form (RSF) with the corresponding S c h u r vectors; see 1211. Further details on notation and background are in 101.

The notation used in this paper will be fair-

Page 2: [IEEE 1978 IEEE Conference on Decision and Control including the 17th Symposium on Adaptive Processes - (1978.01.10-1978.01.12)] 1978 IEEE Conference on Decision and Control including

2. The Continuous-Time Algebraic Riccati Equation

In this sect ion we shall present a method fo r using a certain set of Schur vectors to solve (for x) the cantinaus-time algebraic Riccati equa- t ion

F X+XF - XGX+H = 0 T (1)

All matrices are i n R and G=G 2 0, H=H 2 0.

It is assumed tha t (F,B) is a stablizable pa i r [ l ] where B is a full-rank factorization (FRF) of G (i.e., BBT=G and rank (B)=rank ( G I ) and (C,F) is a d e t p t a b l e pair [ 1 ] where C is a FRF of H (i .e., C CgH and rank (C) =rank (HI . Under these assumptions, (1) i s known t o have a unique nonnega- t i v e d e f i n i t e s o l u t i o n [ l ] . There are, of course, many other solutions to (1) but for the algorithm presented here the emphasis w i l l be on cmputing the nonnegative definite one.

nxn T T

Nov consider the Hamiltonian matrix

Z x(-: lzT) E R2nx2n

our assrrmpticms guarantee that 2 has no pure imag ina ry e igenva lues . Thus we c a n f i n d an orthogonal transformation which puts Z i n RSF:

where s e R"". i j

It is possible to arrange, moreover, that the r ea l parts of the spectrum of S are negative while the rea l parts of the s p e k m ~ of S are positive. U is conformably partitioned i%$o four ~ucn blocks:

= 1:;) We then have the following theorem.

Theorem 1: With respect to the notation and assump- t ions above:

1. Ul1 i s invertible and X=UZ1Ul1 solves (1).

2. u(S ) = U(F-GX) = the "closed-loop" spectrum. -1

11 3 . X = X T

4. x 1 0

Proof: See [O].

Further discussion of t h i s theorem and computational considerations are deferred until Section 4.

3 . The Discrete-Time Algebraic Riccati Equation

I n this section we shall present an analogous method of usins certain Schur vectors to solve the discrete-time algebraic Riccati equation

F T W - X-F T XG (G ffiTXG )-lG;W + H 0 ( 8 ) 1 2 1 1

Here F, H, x e R-, G~ e R-, G~ e R-, and

H = H 1 0 , G = G > 0. Also m c n . The de ta i l s of the method fo r t h i s equation are suf f ic ien t ly d i f - ferent from the continuous-time case that we sha l l explicit ly present mst of them.

pa i r and that (C,P) is a detechable pair where C is a FRF of H (i.e., CTC = H and rank(C) = rank(H)). We also assume that F is inve r t ib l e -a comn a s - sumption on the open-loop dynamip of a discrete- time system [23p. The detai ls for the case when F is singular can be found i n Appendix 1 of LO].

Under the above assumptions ( 8 ) is known t o have a unique nonnegative definite solution 1231 and the method proposed below w i l l be directed to- wards finding that solution.

T T 2 2

It is assumed tha t ( F I G ) is a stablizable

Sett ing G=G1G2 G1 we consider this time the -1 T

symplectic matrix

z = ( .

F + GF-TH

- F - ~ H

Our assumptions guarantee tha t Z has no eigenvalues on the unit circle. Thus we can f i nd an orthogonal transformation U e R2nx2n which puts Z i n RSF:

u zu = s = 1:;) T

where S e R"". i j

I

It is possible to arrange, moreover, that the spectrum of Sll lies inside the uni t c i rc le while the spectrum of S22 l ies outs ide the uni t c i rc le . Again U i s partitioned conformably. We then have the following theorem.

Theorem 2: With respect to the notation and as- sumptions above:

1. Ull is invertible and X=UZ1Ul1 solves ( 8 ) . -1

2. U ( S = U ( F - G (G +GTXG )-'GTXF 11 1 2 1 1 1 = U ( F - GF-T(x-H))

= U(F - G(X-'+ G) -IF) when X i s in - ver t ib le

= the "closed-loop" spectrum.

3 . x = x T

4. x 2 0 . Proof: See 101.

We now t u r n t o some general numerical consider- ations regarding the Schur vector approach.

z

Note that an alternate equivale t form of ( 8 ) when X is invertible is: FT(X-l+G G-'GT) 'IF -X+H = 0. 1 2 1

61

Page 3: [IEEE 1978 IEEE Conference on Decision and Control including the 17th Symposium on Adaptive Processes - (1978.01.10-1978.01.12)] 1978 IEEE Conference on Decision and Control including

4. Numerical Considerations

There are two steps to the Schur vector approach. The first is reduction of a 2nx2n matrix to an or- dered real S c h u r form, the second is the solution of an & order linear matrix equation. We shall discuss these in the context of the continuous-the case noting differences for the discrete-- case where appropriate.

4.1 Algorithm Implementation

It is well-known (see 12Ll, for -le) that the QR algorithm applied to a real general mtrix does not guarantee any special order for the eigen- values on the diagonal of the Schur form. Bowever, it is also known haw the real Schux f o m can be arbitrarily re-ordered via orthogonal similarities; see [ 2U for details. Thus any further orthogonal similarities required to ensure that UCS ) in C3) lies in the left half complex plane can kk m i n e d with the U initially used to get a FSF to get a final orthogonal matrix which effects the desired ordered RSP.

Stewart has recently published FORTRAN sub- routines for calculating and ordering the Rsp of a real upper Hessenberg matrix 1263. The 1y1 or 2x2 blocks are ordered so that the eigenvalues appear in descending order of absolute value along the di- agonal. Stewart's software (RQR3) may thus be used directly if one is willing to first apply an appro- priate bilinear transformation to the Z of (2) whi& maps the left half plane to the exterior of the unlt circle. Since the transformed Z is an analytic function of Z, the U that reduces it to an ordered Rsp - with half the eigenvalues outside the unit circle - is the desired U from which the solution of (1) may be constructed. Alternatively, Stewart's software can be modified to directly reorder a S F by algebraic sign.

In the discrete-time case, HQR3 can be used di- rectly by working with

The U which puts U(S ) outside the unit circle is thus the same U whicilputs the upper left ran block of the RSF of Z inside the unit circle.

In slmnyry then, to use HQR3 we would recamend using the following sequence of subroutines Cor their equivalents):

BAULNC to balance a real general matrlx OrrpHES to reduce the balanced matrix to upper

Hessenberg form using orthogonal transformations

from the Hessenberg reduction

Hessenberg matrix

trix to a nonsingular matrix cor- responding to the original matrix.

The subroutines BALANC, ORTHES, ORTRAN, BALBAK are all available in EISPACK [ 271.

OKPRAN to accmulate the transformations

HQm to determine an ordered RSF from the

BALBAK to backtransfonn the orthogonal ma-

The second step to be -1emented is the solu- tion of an ,th order linear matrix equation

T 1 = u21 to find X = Uz~U;:- For t h i s step we would recom- mend a good llnear equation solver such as DECOCIP and SOLVE available in [281 or the appropriate routines available in the forthcaaing LINPACK [29f. A routine such a s D ~ c o a p x l t e s the LU-factoriza- tion of UI1 and SOLVE performs the forward and backward substitutions. A good estimate of the condition number of U with respect to inversion is available with &'linear eqution software and this estimate sbould be inspected. A badly con- ditioned Ull usually results from a "badly condi- tioned Riccati equation". This matter will be dis- cussed further in Section 4.4. While we hav.e,no analytical proof at t h i s time, we have observed empirically that a condition number estimate on the order of 10t for U usually results in a loss of about t digits of Gcuracy in x.

one final note on implementation. Since X is symmetric it is usually more convenient, with standard linear equation software, to solve the equation

u x = D21 T T 11

to find X = .;xl = D,,U;~.

4.2 Balancing and Scalinq

Note that the use of balancing in the above implementation results in a nonsingular (but not necessarily orthogonal) matrix which reduces A to Rsp. More specifically, suppose P is a permutation matrix and D is a diagonal matrix such that PD balances 2, i.e.,

D PZPD = -1 Zb

where v s the balanced matrix; see 1301 for de- tails. e then find an orthogonal matrix U which reduces Z to ordered FSF: b

U ~ U - S . T

Then P W (produced by BALBAK) is clearly a non- singular matrix which reduces 2 to ordered RSF. The first n Columns of PDO span the eigenspace corresponding to eignevalues of Z with negative real parts and that is the only property we re- quire of the transformation. For simplicity in the sequel, we shall speak of the transformation reducing Z to RSF as simply an orthogonal matrix U with the understanding that the more computa- tionally useful transformation is of the form PW.

A n alternative approach to direct balancing of Z is to attempt same sort of scaling in the problem which generates the Riccati equation. To illus- trate, consider the linear optimal control problem of finding a feedback controller u (t) = Kx(t) which minimizes the performance index

IxT(t)Hx(t) + uT(t)Ru(t)ldt

62

Page 4: [IEEE 1978 IEEE Conference on Decision and Control including the 17th Symposium on Adaptive Processes - (1978.01.10-1978.01.12)] 1978 IEEE Conference on Decision and Control including

with plant constraint dynamics given by

f(t) = Fx(t) + Bu(t) : x(0) = x. . We assume H = H 0, d = R > 0 and (F,B) control- lable, (F,C) observable where CTC = H and rank ( C ) = rank(H). Then the optimal solution is well-known to be

T T

u(t) = -R B X X -1 T

where X solves the Riccati equation

F~X+XF-XBR-'B~X + H = o . Now suppose we change coordinates via a nonsingular transformation x(t) =W(t). Then in terms of the new state Y our problem is to minimize

subject to

&(t) (T-'FT)w(t) + (T-lB)U(t) . The Hamiltonian matrix Z for t h i s transformed

system is now given by

and the associated solution X of the transformed Riccati equation is related 2 the original X by X = T - ~ X ~ T - ~ . One interpretation of T then is as a scaling transformation, a diagonal matrix, for example, in an attempt to "balance" the elements of Zw. Applying such a procedure, even in an ad hoc way, is frequently very useful from a computa- tional point of view.

Another way to look at the above procedure is that !& is symplectically similar to Z via the

transformation ( 1 l-T) , i.e.,

It is well-known that Z is again Hamiltonian (or symplectic in the discrzte-time case) since the similarity transformation is symplectic. One can then pose the problem of transforming Z by other, more elaborate symplectic similarities so as to achieve various desirable numerical properties or canonical forms. This topic for further research is presently being investigated.

4.3 Operation counts, timing, and storage

We shall give approximate operation counts for the solution of I&!? order algebraic Riccati equa- tions of the form (1) or (8). Each operation is assumed to be roughly equivalent to forming a+(bxc) where a,b,c are floating point numbers.

operation count for the algorithm described above It is almost impossible to give an accurate

since so m y factors are variable such as the ordering of the RSF. We shall indicate only a ballpark Ob3) figure.

Let us assume then that we already have at hand the 2nx2n matrix A of the form (2) or (9). Note, however, that unlike forming Z in (21, Z in (9) requires approximately 4 n3 additional opera- tions to construct, given only FIG, and H. This will turn out to be fairly negligible compared to the counts for the overall process. Ruthemre, we shall give only order of n3 counts for these rough estimates. The three main steps are:

Operations

5 3 (i) reduction of Z to upper j(2n)

(ii) reduction of upper > 4k(2n) Hessenberg form

3 - Hessenberg form to RSF

(iii) solution of XV 11 = u21 $ n3 The nunter k represents the average number of

QR steps required per eigenvalue and is usually over-estimated by 1.5. We write 2 4k (2n) since, in general, the reduction may need more operations if ordering is required. Using k=1.5 we see that the fotal number of operations required is at least 63 n . Should the ordering.of the RSF require, say, 25% more operations than the unorder d RSF, we have a ballpark estimate of about 75 n for the entire process.

f

Timing estimates for steps (i) and (ii) may be obtained from D71 for a variety of computing environments. The additional time for balancing and for step (iii) wuld then add no more than about 5% to those times while the additional time for ordering the RSF is variable, but typically adds no more than about 15%. For example, adding 20% to the published figures E71 for an IBM 370/165 (a typical medium speed machine) under OS/360 at the University of Toronto using FORTRAN H Extended with Opt. = 2 and double precision arithmetic, we can construct the following table:

Or r n RiLcati -Equation 10 20 30 40 - CPU TIME (Sec.) 0.2 1.3 4.0 9.0

In fact, these times are in fairly close agreement with the actual observed times for randomly chosen test examples of these orders. Note the approxi- mately cubic behavior of time versus order.

th Extrapolating these figures for a 64- order equation (see Example 5 in 'Section 6) one might expect a CPU time in the neighborhood of 38 sec. In fact, for that particular example the time was approximately 34 sec.

It must be re-emphasized here that timing estimates derived as abwe are very approximate and depend on numerous factors in the actual computing environment as well as the particular input data. However, such estimates can provide very useful and quite reliable information if interpreted as providing essentially order of magnitude figures.

63

Page 5: [IEEE 1978 IEEE Conference on Decision and Control including the 17th Symposium on Adaptive Processes - (1978.01.10-1978.01.12)] 1978 IEEE Conference on Decision and Control including

With respect to storage considerations the algorithm requires 8n2 + cn (c = a very small con- stant) storage locations. This fairly large fig- ure limits applicability of the algorithm to Riccati equations on the order of about 100 or les in many common aomputing environments. Of course, CPU time becomes a significant factor for n > 100, also.

4.4 Stability and Conditioning

This section will be largely speculative in nature as very few hard results are presently available. A number of areas of continuing re- search will be described.

= & + & + i i where we have neglected the second-order term w;E. Thus conditioning of (1) should be closely related

s to nearness of the closed-loop spectrum (U(F-GX)) to the imaginary axis . Observations similar to these have been made elsewhere; see, for example, Bucy I311 where the problem is posed as one of structural stability. A condition number might, in same sense, be thought of as a quantitative measure of the degree of structural stability.

of (1) relates to the assumptions of stabilizabil- ity of (F,B) and detectability of ( C , F ) . For ex-

Another factor involved in the conditioning

With respect to stability the implementation discussed in Section 4.1 consists of two effective- ly stable steps. The crucial step is the QR step and the present algorithm is probably essentially as stable as QR. The overall two step process is apparently quite stable numerically but we have no proof of that statement.

Concerning the conditioning of (1) (or ( 8 ) ) almost no analytical results are known. The study of (1) is obviously m r e complex than the study of even the Lyapunov equation

F X + X F + H = O T (12)

where H = HT 0. And yet very little numerical analysis is known for (12). In case F is normal, a condition number with respect to inversion of the Lyapunov operator FX = FTX + XF is easily shown to be given by

But, in the general case, a condition number in terms of F rather than $0 I + I @ FT ( @ denotes Kronecker product) has not been determined. Some empirical observations on the accuracy of solutions of certain examples of (12) suggest that one factor influencing conditioning of (12) is the proximity of the spectrum of Fato the imaginary axis. To be more specific, suppose F has an eigenvalue at

a 5 jb with Igl >> 1 (typically a < 0 is very small).

If l i l = o(10 ) we lose approximately t digits of

accuracy and we might expect a condition number for the solution of (12) to also be 0(10t) in this situation.

t

There are some close connections between (12) and (1) (and the respective discrete-time versions) and we shall indicate some preliminary observations here. A perturbation analysis or the notion of a condition number for (1) is intimately related to the condition of an associated Lyapunov equation, namely one whose "F-matrix" approximates the closed- loop matrix F-GX where X solves (1). To illus- trate, suppose X = Y + E where Y = yT may be in- terpreted as an approximation of X. Then

0 = FT(Y+E) + (Y+E)F - (Y+E)G(Y+E) + H : (F-GY)~E + E (F-GY) + C F ~ Y + YF - YGY + HI

ample, near-unstabilizability of CF,B) in either a parametric sense or in a control energy sense (i.e., near-singular controllability Gramian) def- initely causes (1) to b e m e badly conditioned. Our experience has been that the ill-conditioning manifests itself in the algorithm by a badly conditioned U 11'

Work related to the conditioning of (1) and ( 8 ) is under continuing investigation and will be the subject of another paper. Such analysis is, of course, independent of the particular algorithm used to solve (1) or (81, but is useful to under- stand how ill-conditioning can be expected to manifest itself in a given algorithm.

5. Advantages of the Schur Vector Approach

The advantages of this algorithm over others using eigenvectors (such as Potter's approach [lo] and its extensions) are obvious. Firstly, the reduction to RSP is an intermediate step in com- puting eigenvectors anyway (using the double Francis QR algorithm) so the Schur approach must, by definition, be faster usually by a factor of at least two. Secondly, and m r e importantly, this algorithm will not suffer as severely f r m the numerical hazards inherent in computing eigenvectors associated with multiple or near-multiple eigen- values. The computation of eigenvectors is fraught with difficulties (see, e.g. [211 for a cogent discussion) and the eigenvectors themselves are simply not needed. All that is needed is a basis for the eigenspace spanned by the eigenvalues of 2 with negative real parts (with an analogous statement for the discrete-time case). As good a basis as is possible (in the presence of rounding error) for this subspace can be found from the

Schur vectors comprising the matrix [:i , inde- pendently of individual eigenvalue multiplicities. The reader is strongly urged to consult [321 and 1211 (especially pp. 609-610) for further numerical details.

The fact that any basis for the stable eigen- space can be used to construct the Riccati equa- tion solution has been noted by many people; see [121 or 131 among others. The main stumbling block with using the Schur vectors was the order- ing problem with the RSF but once that is handled satisfactorily the algorithm is easy.

64

Page 6: [IEEE 1978 IEEE Conference on Decision and Control including the 17th Symposium on Adaptive Processes - (1978.01.10-1978.01.12)] 1978 IEEE Conference on Decision and Control including

The Schur vector approach derives its desir- able numerical properties from the underlying m- type process. To svmiarize: if you like the eigen- vector approach for solving the algebraic Riccati equation you' 11 like the Schur vector approach at least twice as much.

Like the eigenvector approach, the Schur vector approach has the advantage of producing the closed-loop eigenvalues (or whatever is appropriate to the particular application from which the Ric- cati equation arises) essentially for free. And finally, an important advantage of the Schur vec- tor approach, in addition to its general reliabili- ty for engineering applications, is its speed in comparison with other methods. We have already mentioned the advantage, by definition, over pre- vious eigenvector approaches but there is also generally an even more significant speed advan- tage over iterative methods. This advantage is particularly apparent in poorly conditioned prob- lems and in cases in which the iterative method has a bad starting value. Of course, it is im- possible to make the comparison between a direct versus iterative method any more precise for general problems but we have found it not at all UnmmmDn for an iterative method, such as straighe forward Newton 1141, to take ten to thirty times as long - if, indeed, there was convergence at all.

6. Examples

Six detailed examples are given in I03 but space constraints preclude their inclusion here.

References

Laub, A. J., A Schur Method for Solving Alge- braic Riccati Equations, Laboratory for Info. and Decis. Systems Report No. LIDS-R-859, Oct. 1978. Wonham, W.M., On a Matrix Riccati Equation of Stochastic Control, SIAM J. Contr., 6(1968), 681-697. Reid, W.T., Riccati Differential Bquations, Academic Press, New York. 1972. Willems, J.C., Least Squares Stationary Opti- mal Control and the Algebraic Riccati Equatim,

Silverman, L.M., Discrete Riccati Equations: Alternative Algorithms, Asymptotic Properties, and System Theory Interpretations, in Advances in Control Systems, Vol. 12, (Leondes, Ed.), Academic Press, New York, 1976, pp.313-386. Lainiotis, D.G., Partitioned Riccati Solutions and Integration-Free Doubling Algorithms, IEEE Trans. Aut. Control., AC-21 (1976),617-689. Rodriguez-Canabal, Jr., The Geometry of the Riccati Equation, Stochastics, l(1973) ,129~149. Pachter, M., and T.E. Bullock, Ordering and Stability Properties of the Riccati Equation, Na. Res. Inst. for Math. Sci. Report, WISK 264, Pretoria, June 1977. von Escherich, G., Die Zweite Variation der

. ~~ ~

IEEE Trans. Aut. Contr., AC-160971), 621-634.

Einfachen Integrale, Wiener Sitzungsberichte, 8 (18981, 1191-1250. MacFarlane, A.G.J., An Eigenvector Solution of the optimal Linear Regulator Problem, J.

Electron. Contr., 14(1963),643-654. Potter, J.E., Hatrix madratic Solutions,

Vaughn, D.R., A Nonrecursive Algebraic Solu- tion for the Discrete Riccati Equation, IEEE Trans. Aut. Contr., AC-15(1970), 597-599. Fath, A.F., Computational Aspects of the Lin- ear Optimal Regulator Problem, IEEE Trans. Aut. Contr., AC-14(1969), 547-550. Martensson, K., New Approaches to the Numeri- cal Solution of Optimal Control Problems, Lund Institute of Techn'' , Divis. of Auto. Control., Report No. 7206, Lund, Sweden, Mar. 1972. Kleinman, D.L., On An Iterative Technique for Riccati Equation Computations, IEEE Trans. Aut. Contr., AC-13(1968), 114-115. Farrar, F.A. , and R.C. DiPietro, Comparative Evaluation of Numerical Methods for Solving the Algebraic Matrix Riccati Equation, United Technologies Research Center Report No. R76- 140268-1, East Hartford, CT, Dec. 1976. Hewer, G.A., and G. Nazaroff, A Survey of Numerical Methods for the Solution of Algebraic Riccati Equations, Naval Weapons Center Report, China Lake, a. Laub, A.J., and K.R. Heyer, Canonical Forms for Hamiltonian and Symplectic Matrices, Celestial Mechanics, 9(1974), 213-238. Laub, A.J., Canonical Forms for a-Symplectic Matrices, M.S. Thesis, School of Mathematics, Univ. of Minnesota, Dec. 1972.

SIAM J. Appl. Math., 14(1966), 496-501.

Stewart, G.W., Introduction to Matrix Compu- tations, Academic Press, New York, 1973. Murnaghan, F.D., and A. Wintner, A Canonical Form for Real Matrices Under Orthogonal Transfonnations, Proc. Na. Acad. Sci.,17(1931),

Golub, G.H., and J.H. Wilkinson, Ill-Condi- tioned Eigensystems and the Computation of the Jordan Canonical Form, SI- Rev., 18(1976),

Gantmacher, F.R., The Theory of Matrices, Chelsea, New York, 1959. Dorato, P., and A. Levis, Optimal Linear Re- gulators: The Discrete-Time Case, IEEE Trans. Aut. Contr.. AC-16[1971), 613-620. Stewart, G.W., HQR3 and EXCHNG: Fortran Sub- routines for Calculating and Ordering the Eigenvalues of a Real Upper Hessenberg Matrix, ACM Trans. Math. Software, 2(1976), 275-280. Smith, B.T., et.al., Matrix Eigensystem Rou- tines -- EISPACK Guide, Second Edition, Lect. Notes in Comp. Sci., Vol. 6, Springer-Verlag, New York, 1976. Forsythe, G.E., M.A. Malcolm, and C.B. Moler, Computer Methods for Mathematical Computations, Prentice-Hall, Englewccd Cliffs, N.J., 1977. Dongarra, J.J., J.R. Bunch, C.B. Moler, and G.W. Stewar , Preliminary LINPACK User's Guide, LINPACK Working Note #9, Auq. 1977. Parlett, B . N . , anc? C. Reinsch, Balancing a Matrix for Calculation of Eigenvalues and Eigenvectors, Numer. Math., 13(1969) ,293-304. ~ucy, R.S., structural Stability for the Riccati Equation, SIAM J. Contr., 13(1975), 749-753. Wilkinson, J.H., The Algebraic Eigenvalue Problem, Oxford Univ. Press, London, 1965.

417-420.

578-619.

65


Recommended