1989 numerical algorithms for eigenvalue assignment ... paper/c76_www... · numerical algorithms...

10
IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 34, NO. 6, JUNE 1989 579 Numerical Algorithms for Eigenvalue Assignment by Constant and Dynamic-Output Feedback Abstract-In this paper, we propose algorithms for eigenvalue assign- ment (EVA) by constant as well as dynamic output feedback. The main algorithm is developed for single-input, multioutput systems and (be results are then extended to multiinput, multioutput systems. In comput- ing the feedback, use is made of the fact that the closed-loop eigenvalues can “almost always” be assigned arbitrarily close to desired locations in the complex plane, provided the system satisfies the condition m + p > n, where m, p, and n are, respectively, the number of inputs, outputs, and states of the system. The EVA problem has been treated as a converse of the algebraic eigenvalue problem. The proposed algorithms are based on the implicitly shifted QR algorithm for solving the algebraic eigenvalue problem. The performance of the algorithms is illustrated by means of several numerical examples. I. INTRODUCTION ONSIDER a linear time-invariant multivariable system C described by its state-space equations i(t)=Ax(t)+Bu(t) (l.la) Y (0 = (l.lb) wherex(t) E Rn, u(t) E Rm, andy(t) E Rp. Assume that the triple (A, B, C) is controllable and observable. It is desired to compute a constant gain output feedback matrix K E RmxP defined by the feedback law (1 .a u(t) = u(t) - Ky(t) such that the resulting closed-loop state matrix A,I=A-BKC (1.3) has some desired set of eigenvalues. In (1.3), if the matrix C is the n x n identity matrix, then the closed-loop state matrix is given by AcI = A - BK, and the problem is reduced to that of EVA by means of state feedback. EVA by output feedback may, therefore, be considered as a generalization of EVA by state feedback. The latter has been treated extensively from theoretical [ 11-[4] as well as numerical [5]-[9], [16], [26] points of view. For EVA by means of output feedback, considerable theoretical work has been done [IO]-[14]. However, with the exception of a few recent results [ 151-[ 181, hardly any attention has been paid to developing numerically reliable algorithms for solving the problem. To the best of our knowledge, the algorithms described in this paper appear to be the first comprehensive work in this context. Manuscript received April 28, 1986; revised October 10, 1987 and August 11, 1988. Paper recommended by Past Associate Editor, D. A. Castaiion. This work was supported by the Natural Sciences and Engineering Research Council of Canada under Grant A1345. P. Misra was with the Department of Electrical and Computer Engineering, Concordia University, Montreal, P.Q., Canada H3G 1M8. He is now with the Department of Electrical Engineering, Wright State University, Dayton, OH 45435. R. V. Patel is with the Department of Electrical and Computer Engineering, Concordia University, Montreal, P.Q., Canada H3G 1M8. IEEE Log Number 892685 1. In developing numerically reliable algorithms, several numeri- cal issues must be addressed [ 191, [20]. One of the most important issues is the use of numerically stable transformations because the use of unstable transformations could lead to computational errors which may become significant enough to yield completely incorrect results. Algorithms using canonical forms or those using transfer function representations of a system require the use of potentially unstable transformations. The methods that require knowledge of the eigenvalues of the state matrix of an open-loop system may lead to extremely erroneous results when the corresponding algebraic eigenvalue problem is ill-conditioned [19], [20]. In this paper, we propose numerical algorithms which do not suffer from the drawbacks mentioned above. The proposed algorithms use only orthogonal (numerically stable) state coordi- nate transformations together with output feedback to assign the closed-loop eigenvalues arbitrarily close to desired locations in the complex plane. The EVA problem is treated as a “converse” of the algebraic eigenvalue problem [19], [ZO]. The latter has been treated extensively in the numerical analysis literature. The approach taken in subsequent sections is based on the well-known QR algorithm with implicit shifts [19], [20]. Without any loss of generality, we consider only controllable and observable triples (A, B, C). The paper is organized as follows. In Section 11, we briefly review some results from linear algebra and control theory which will be used extensively in subsequent sections to develop the algorithms. Section I11 is the main section in which we outline the design philosophy for solving the EVA problem. The theoretical basis for the algorithm is developed in Sections 111-A and 111-B. The algqrithms for EVA using constant gain output feedback are described in Section 111-C. In Section IV, we extend the results to systems which do not meet the condition (m + p > n) for arbitrary EVA and, therefore, require dynamic output feedback. This is done by converting the dynamic output feedback problem to a constant gain output feedback problem for an augmented system. Numerical examples are provided in Section V to illustrate the performance of the proposed algorithms. 11. REVIEW OF PRELIMINARY RESULTS In this section, we shall review some relevant results from linear algebra and control theory that will be used extensively in later sections to develop the algorithms for EVA. Definition 2.1: A matrix A E Elnxn is said to be an upper Hessenberg matrix if aii = 0, i 2 j + 2 where aii denotes the element in the ith row andjth column of A. Furthermore, if a,,,- I # 0, i = 2, * * e, n, then A is said to be an unreduced upper Hessenberg matrix [ 191, [20]. Definition 2.2: A matrix A E Wnxn is said to be in real Schur form (RSF) if it is a quasi-upper triangular matrix with only scalars and 2 X 2 blocks on the (block) diagonal. Each scalar corresponds to a real eigenvalue and each 2 x 2 block to a complex-conjugate (c-c) pair of eigenvalues of A. Theorem 2.3 [20]: Given a real vector x = [xl , * . * , x,,] T, we can always find an orthogonal matrix H = I, - 2 uuT/uru, whereu=x+ uelwithu= f1\~11~,ande:= [lO..*O]of 0018-9286/89/0600-0579$01 .oO 0 1989 IEEE Downloaded from http://www.elearnica.ir www.Matlabi.ir

Upload: lephuc

Post on 04-Jun-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1989 Numerical Algorithms for Eigenvalue Assignment ... paper/c76_www... · Numerical Algorithms for Eigenvalue Assignment ... by AcI = A - BK, ... linear algebra and control theory

IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 34, NO. 6, JUNE 1989 579

Numerical Algorithms for Eigenvalue Assignment by Constant and Dynamic-Output Feedback

Abstract-In this paper, we propose algorithms for eigenvalue assign- ment (EVA) by constant as well as dynamic output feedback. The main algorithm is developed for single-input, multioutput systems and (be results are then extended to multiinput, multioutput systems. In comput- ing the feedback, use is made of the fact that the closed-loop eigenvalues can “almost always” be assigned arbitrarily close to desired locations in the complex plane, provided the system satisfies the condition m + p > n, where m, p , and n are, respectively, the number of inputs, outputs, and states of the system. The EVA problem has been treated as a converse of the algebraic eigenvalue problem. The proposed algorithms are based on the implicitly shifted QR algorithm for solving the algebraic eigenvalue problem. The performance of the algorithms is illustrated by means of several numerical examples.

I. INTRODUCTION

ONSIDER a linear time-invariant multivariable system C described by its state-space equations

i ( t )=Ax( t )+Bu( t ) (l.la)

Y (0 = (l . lb)

wherex(t) E Rn, u ( t ) E Rm, andy(t) E Rp. Assume that the triple (A, B, C) is controllable and observable. It is desired to compute a constant gain output feedback matrix K E R m x P

defined by the feedback law

(1 .a u( t ) = u ( t ) - Ky(t)

such that the resulting closed-loop state matrix

A,I=A-BKC (1.3)

has some desired set of eigenvalues. In (1.3), if the matrix C is the n x n identity matrix, then the closed-loop state matrix is given by AcI = A - BK, and the problem is reduced to that of EVA by means of state feedback. EVA by output feedback may, therefore, be considered as a generalization of EVA by state feedback. The latter has been treated extensively from theoretical [ 11-[4] as well as numerical [5]-[9], [16], [26] points of view. For EVA by means of output feedback, considerable theoretical work has been done [IO]-[14]. However, with the exception of a few recent results [ 151-[ 181, hardly any attention has been paid to developing numerically reliable algorithms for solving the problem. To the best of our knowledge, the algorithms described in this paper appear to be the first comprehensive work in this context.

Manuscript received April 28, 1986; revised October 10, 1987 and August 11, 1988. Paper recommended by Past Associate Editor, D. A. Castaiion. This work was supported by the Natural Sciences and Engineering Research Council of Canada under Grant A1345.

P. Misra was with the Department of Electrical and Computer Engineering, Concordia University, Montreal, P.Q., Canada H3G 1M8. He is now with the Department of Electrical Engineering, Wright State University, Dayton, OH 45435.

R. V. Patel is with the Department of Electrical and Computer Engineering, Concordia University, Montreal, P.Q., Canada H3G 1M8.

IEEE Log Number 892685 1.

In developing numerically reliable algorithms, several numeri- cal issues must be addressed [ 191, [20]. One of the most important issues is the use of numerically stable transformations because the use of unstable transformations could lead to computational errors which may become significant enough to yield completely incorrect results. Algorithms using canonical forms or those using transfer function representations of a system require the use of potentially unstable transformations. The methods that require knowledge of the eigenvalues of the state matrix of an open-loop system may lead to extremely erroneous results when the corresponding algebraic eigenvalue problem is ill-conditioned [19], [20]. In this paper, we propose numerical algorithms which do not suffer from the drawbacks mentioned above. The proposed algorithms use only orthogonal (numerically stable) state coordi- nate transformations together with output feedback to assign the closed-loop eigenvalues arbitrarily close to desired locations in the complex plane.

The EVA problem is treated as a “converse” of the algebraic eigenvalue problem [19], [ZO]. The latter has been treated extensively in the numerical analysis literature. The approach taken in subsequent sections is based on the well-known QR algorithm with implicit shifts [19], [20]. Without any loss of generality, we consider only controllable and observable triples (A , B, C ) .

The paper is organized as follows. In Section 11, we briefly review some results from linear algebra and control theory which will be used extensively in subsequent sections to develop the algorithms. Section I11 is the main section in which we outline the design philosophy for solving the EVA problem. The theoretical basis for the algorithm is developed in Sections 111-A and 111-B. The algqrithms for EVA using constant gain output feedback are described in Section 111-C. In Section IV, we extend the results to systems which do not meet the condition ( m + p > n) for arbitrary EVA and, therefore, require dynamic output feedback. This is done by converting the dynamic output feedback problem to a constant gain output feedback problem for an augmented system. Numerical examples are provided in Section V to illustrate the performance of the proposed algorithms.

11. REVIEW OF PRELIMINARY RESULTS

In this section, we shall review some relevant results from linear algebra and control theory that will be used extensively in later sections to develop the algorithms for EVA.

Definition 2.1: A matrix A E E l n x n is said to be an upper Hessenberg matrix if aii = 0, i 2 j + 2 where aii denotes the element in the ith row andjth column of A. Furthermore, if a,,,- I

# 0, i = 2, * * e , n, then A is said to be an unreduced upper Hessenberg matrix [ 191, [20].

Definition 2.2: A matrix A E W n x n is said to be in real Schur form (RSF) if it is a quasi-upper triangular matrix with only scalars and 2 X 2 blocks on the (block) diagonal. Each scalar corresponds to a real eigenvalue and each 2 x 2 block to a complex-conjugate (c-c) pair of eigenvalues of A .

Theorem 2.3 [20]: Given a real vector x = [ x l , * . * , x,,] T , we can always find an orthogonal matrix H = I, - 2 uuT/uru, w h e r e u = x + u e l w i t h u = f 1 \ ~ 1 1 ~ , a n d e : = [ l O . . * O ] o f

0018-9286/89/0600-0579$01 .oO 0 1989 IEEE

Downloaded from http://www.elearnica.ir www.Matlabi.ir

Page 2: 1989 Numerical Algorithms for Eigenvalue Assignment ... paper/c76_www... · Numerical Algorithms for Eigenvalue Assignment ... by AcI = A - BK, ... linear algebra and control theory

580 IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 34, NO. 6 , JUNE 1989

input EVA problems [23], the first to assign p - 1 eigenvalues and the second to assign the remaining n - p + 1 eigenvalues while preserving the p - 1 previously assigned ones. As a first step, in Section 111-A, we consider the problem of assigning r ( ~ p ) eigenvalues arbitrarily close to some desired locations in the complex plane (subject to c-c pairing) for single-input , multiout- put systems.

length n, such that the vector y = Hx has elements y 2 , . . * , y , equal to zero.

Theorem 2.4 f5], 161, fl6], f26J: Given a controllable single- input, multioutput system

(2. la)

Y (0 = C-W (2.lb)

wherex(t) E W”, u ( t ) E R, andy(t) E Wp, the triple ( A , b, C ) can be reduced to an upper Hessenberg form (UHF) by_ applying orthogonal state coordinate transformations such that F = UT A U is an unreduced upper Hes_senberg matrix, g = UTb has the form [g, 0 0IT, and H = CU has no specific structure.

Theorem 2.5 161, [It$]: Given a controllable multiinput, multioutput system ( A , B, C) there exists an orthogonal state coordinate transformation matrix U such that

X ( t ) = Ax(t) + bu(t)

and

A = C U = [A, H 2 . . . Ha] (2.2b)

where F;;, i = 1, . . * , 01 are unreduced upper Hessenberg

and H i , i = I , . a a 01 have no specific structure. The triples (&, gii , Hi) are in UHF.

Theorem 2.6 f20/: A matrix A E W n x n having linearly independent columns can be written uniquely in the form A = QR where Q E W“ is an orthogonal matrix and R E W” x n is an upper triangular matrix with positive diagonal elements.

Remark: The factorization in Theorem 2.6 is called the QR factorization of a matrix A . This factorization together with “shifts of origin’ ’ have been used to develop iterative algorithms for solving the “algebraic eigenvalue problem” 1191, [20]. By successive applications of shifts of origin and the QR factoriza- tion, a given matrix A can be reduced to its RSF. The converse of this principle is used in subsequent sections to develop a “direct” EVA algorithm for systems described by ( l . l ) , using output feedback.

111. EIGENVALUE ASSIGNMENT BY CONSTANT GAIN OUTPUT FE ED B A c K

matrices, gji = [E, 0 * * - O I T , i = 1, . * - , a,

In this section, we develop an algorithm for “almost” arbitrary EVA using constant gain output feedback for systems in which m + p > n where rn, p , and n are, respectively, the number of inputs, outputs, and states of the given system. Our results are based on the following theorem [ 113-[ 141.

Theorem 3. I : Given a controllable and observable system ( A , B, C ) with A E R n x ” , rank B = m, and rank ( C ) = p , then for “almost all” ( B , C ) pairs, there exists a constant gain output feedback matrix K such that A + BKC has min (n , m + p - 1) eigenvalues assigned arbitrarily close to min ( n , m + p - 1) specified locations in the complex plane with complex eigenvalues occurring in conjugate pairs.

The locations at which the eigenvalues cannot be positioned exactly by finite constant gain output feedback correspond to the blocking zeros [21] of the system which, for a single-input system, are also its transmission zeros.

In order to achieve EVA, we reduce the problem to two single-

A . Theoretical Considerations for EVA in Single-Znput, Multioutput Systems

We consider the controllable and observable single-input system

i ( t ) = A x ( t ) + bu(t) (3.la)

Y (0 = WO (3.lb)

where x ( t ) E W“, u ( t ) E W, y ( t ) E Wp, and rank (C) = p (5 n). We shall assume without loss of generality that the given system triple ( A , b, C ) is in UHF. Moreover, since the system (3.1) is controllable, the state matrix A is an unreduced upper Hessenberg matrix.

In a controllable and observable single-input system with p outputs, Theorem 3.1 can be strengthened in that we can always assign p closed-loop eigenvalues at almost any desired locations in the complex plane by means of finite constant gain output feedback, e.g., see [l], [4], and [9]. Next we discuss how “explicit” shifts of origin may be employed to assign these eigenvalues by means of output feedback. The theoretical devel- opments for implicit shifts are discussed in Section 111-A-2). For a more detailed account of various shift strategies, the reader is referred to [ 161 and [26] .

I ) Explicitly Shifted EVA for Single-Input, Multioutput Systems: The problem that we consider in this section is to find a constant gain output feedback vector k E WP such that the closed- loop state matrix A,, = A + bkrC has r ( s p ) eigenvalues at desired locations. Let A = {XI , a , A,} denote the set of desired locations to which the closed-loop eigenvalues are to be assigned. For the sake of illustration, assume that all eigenvalues to be assigned are real (this assumption is only for clarity of presenta- tion, and is not a limitation of the algorithm). At the start of the lth step ( I 5 r ) , we have

(3.2) where, by the assumption of controllability, A , E Rvx’J with 7 = n - 1 + 1 is an unreduced upper Hessenberg matrix, A / - 1 is a real Schur matrix with the assigned eigenvalues XI . * XI- I along its diagonal, U,, = Z, (the n x n identity matrix), and C:Ltk,? is the output feedback vector

UT-I ... U,Tb=[bf_, bfIT (3.3)

with b, (E W) = [b,,l 0 . * 01 and

cu, * * * U,_ 1 = [c, c2 . . c,- 1 C,] (3.4)

where ci E R P , i = 1 , . - . , I - 1, and C, E WP’V.

In the lth step, we calculate kT in order to assign an eigenvalue at XI . To accomplish this, we first transform the matrix A , - AJ, to an upper triangular form by means of orthogonal plane rotations

(A/-hI7)Pn-l , , p,,,7-I A RI (3.5) where P, - I ,n is a plane rotation in the ( n - 1, n)th plane [ 191, 1201 such that the element a,,, - I is annihilated using the element a,,, - A,. Since A , is an unreduced upper Hessenberg matrix, the plane rotations above are nontrivial and the diagonal elements of RI have nonzero values.

Page 3: 1989 Numerical Algorithms for Eigenvalue Assignment ... paper/c76_www... · Numerical Algorithms for Eigenvalue Assignment ... by AcI = A - BK, ... linear algebra and control theory

MISRA AND PATEL: ALGORITHMS FOR EIGENVALUE ASSIGNMENT

Denoting the product P,- I ,n * . . P,,,-, by Ql, we have

c/Q/=[E/ E / + ] * * * E,]. (3.6)

In order to preserve the ( I - 1) eigenvalues already assigned at the locations XI , * XI- we let

k,T=O/k;TT (3.7)

where k; E Rp is selected such that

k;TTci=O, i = l , . e * , 1-1 (3.8a)

k;' TE/ Z 0 (3.8b) and T i s an orthogonal transformation matrix to be determined. In (3.8) above, ci and el are the vectors defined in (3.4) and (3.6), respectively, and Or is a scalar that is to be determined so as to assign an eigenvalue at XI. We define a vector +I as

4/= [$/,I 41,2 . . . 4/,,1 4 k;TTC/Q/. (3.9)

Next, consider the matriz A/ - X,Z, - brkTCl. With the similarity transformation Q/ applied, i.e., using (3.5)-(3.9), we have

Due to the structures of RI and bl , the matrix RI - brO,+T is upper triangular and its first row is

(3.11)

Qr(A/-h/I,- b/RTC/)&=QT(R/-b/8/+r). (3.10)

[r{,l-bl,10/4/,l r;,2-b/,10/41,2 . .. r~,q-b/,1014/,,l

where r:,j, i , j = 1, * , 7 is the ( i , j ) t h element of RI . We choose Ol to eliminate the (1, 1) element of RI - blOl+r. By assumption of controllability b / ~ + 0 and from (3.8b), 4/,1 f 0. Therefore, we can eliminate the (1, 1) element of RI - b_lB/+Tby selecting Ol = r{,l/bl,l+l,l. Then, the first column of QT(R1 - blO,+T) and, therefore, the first column of the expression on the left-hand side of (3.10) are zero vectors. Also, the matrix

QT(Al- All,, - b/kTC/)Q/+ All, = QT(A/- b/kTC/)&

from which it follows that:

58 1

i.e., the matrix Al - bTk:C, has an eigenvalue at Al. To verify that XI is also an eigenvalue of the closed-loop state matrix, define

r

where Q is the product of the plane rotations defined in (3.5). Then, using (3.2)-(3.5)

(3.13a)

where we have substituted for &;(A, - b,kTC/)Q/ from (3.12). From (3.13), it is clear that we have assigned an eigenvalue at hl while preserving the previously assigned eigenvalues A I , * . , A,- I . Moreover, completing the similarity transformation on the triple (A , b, C), we get

QTbl=[b/,l bT+,ITand C/Q,=[E/ C/+I] . (3.13b)

On noting that controllability is invariant under output feedback, the first element of b/+ I is nonzero and A/+ is an unreduced upper Hessenberg matrix. Therefore, the EVA process may be contin- ued to assign A,+ I by output feedback to the triple (A+ bl+ I , Cl+]) in (3.13).

There are certain points that must be considered to formalize the EVA algorithm. The first one is to show how the vector k can be selected to satisfy (3.7) and (3.8). To do this we compute an orthogonal matrix T such that

C = T[cl ~2 . c1-I E/ * . . E,] (3.14)

is a lower row echelon matrix. The number of linearly indepen- dent columns of C can be determined by inspection of its lower row echelon form. If the rank of the first I - 1 columns is denoted by CY- then the vector kT is chosen as

k T= O/ffTT (3.15)

where

From (3.15) it is easy to see that the condition (3.8a) will always be satisfied. To satisfy (3.8b), it is required that E p - a I - l , I # 0. However, if in (3.11) is equal to zero. This situation occurs when Tt/ in (3.14) is linearly dependent on T [ c l , . * e , c / - ~ ] . In this case we cannot assign an eigenvalue at XI as shown below.

= 0, then XI is a transmission (blocking) zero of the system (Al , b / , kTC/).

I , l = 0, the element

Lemma 3.2: If

Proof: Consider the matrix

After performing the plane rotations as described by (3.5), we have

from where it is clear that the first and the last columns of the right-hand side in (3.16) are linearly dependent. Therefore, rank [Z(Xl)] < n - I + 2 which in turn implies [4], [25] that XI is a transmission zero of (Al, b/ , k TC!).

It is well known that for single-input systems, the eigenvalues of closed-loop systems cannot be positioned exactly at the transmission zeros of the system by means of finite gain output feedback. Theoretically, we can position an eigenvalue arbitrarily close to a transmission zero. However, it would require undesir- ably high feedback gains. We should note here that if XI is a transmission zero of (A/ , b/, Cl), then it would also be a transmission zero of (A / , b,, kTCl) but the converse is not necessarily true. If hr is a transmission zero of (Al , b/,.k,TCl) but not of (Al, bl, Cl), then we can assign the remaining eigenvalues by reordering A,, - e , A, such that XI is assigned in one of the subsequent steps. If A/ is a transmission zero of ( A / , 61, Cl), then we cannot assign an eigenvalue at X, by means of finite gain output feedback k,T. If A/ is not a transmission zero of (A , b, C), then by reordering the elements of A, this difficulty can be overcome, so

Page 4: 1989 Numerical Algorithms for Eigenvalue Assignment ... paper/c76_www... · Numerical Algorithms for Eigenvalue Assignment ... by AcI = A - BK, ... linear algebra and control theory

582

that X, is assigned in an earlier step. However, if hl is a transmission zero of (A, b, C), then as mentioned earlier, we cannot assign a closed-loop eigenvalue at XI by finite gain output feedback.

It can be shown [22] that X, is a transmission (blocking) zero of (A, , b,, C,) if and only if, in (3.6), the vector 5, = 0. This test can also be applied to the system (A, 6, C) to determine if any elements of A are transmission zeros of (A, b, C). However, it is worth mentioning here that single-input, multioutput systems (A, b, C) that possess transmission zeros are nongeneric, i.e., the class of such systems is either empty or lies on a hypersurface in the parameter space of (A, b, C) [25].

From the numerical point of view, a problem that can arise is the following. At the Ith step, XI may be very close to a transmission zero of ( A I , bI, kTC,), but not of (A l , b,, C/ ) . Then the output feedback gains required to place an eigenvalue at AI by the proposed approach could be high, whereas it may be possible to achieve the assignment with lower gains by another approach or by reordering the elements of A.

2) Implicitly Shifted EVA: Using the explicitly shifted EVA algorithm we would require complex arithmetic to assign c-c pairs of eigenvalues. Therefore, it is important to develop a method that would enable us to assign c-c pairs of eigenvalues using real arithmetic only. This can be done by performing the shifts "implicitly" [19], [20]. We shall illustrate the use of implicit shifts for assigning real eigenvalues first and then extend it for assigning c-c pairs of eigenvalues. The following result (in a slightly modified form) is taken from [20].

Theorem 3.3 [20/: Let X, Y, Q E W n x n with Q orthogonal and Y an unreduced upper Hessenberg matrix with positive subdiagonal elements. If Y 4 QTXQ, then Y and Q are both uniquely determined by the last column of Q .

In Theorem 3.3, if the condition on the sign of subdiagonal elements of Y is removed, then the columns of Q and the subdiagonal elements of Y are determined modulo a sign [20]. To apply the results of this theorem to formalize the basis for the implicitly shifted EVA algorithm, assume that one step of the QR algorithm with shift X has been applied to the unreduced upper Hessenberg matrix Y. Then we can state the following result.

Theorem 3.4: Let Q be-the orthogonal part of the QR factorization of Y _and let Y = Q'YQ. Suppose an upper Hessenberg matrix P is computed as follows.

1) Find an orthogonal matrix P that has the same last column as

2) Reduce P T YP to upper Hescenberg form p, using ortho- gonal transformations, then Y = Y.

Proof: The proof is similar to that given in [20] and has-been included for the sake of completeness. To show that Y = Y, set

Q .

Q=PPn-l,n * * e P n - / + l , n - l

where Pn - i , n - r + i = 1, . . . , I - 1 are the transformations that make Y an upper Hessenberg matrix. Note that unlike the conventional QR decomposition, the dec_ompc_sition_ here starts from the lower right-hand corner. Now, Y = Q'YQ. However, because of the structures of the matrices Pn-i,n-i+ I , postmultipli- cation Of P by these matrices does not change its last column. Thus, Q has the same last column as P which by construction ha! the same la!t colu-mn as Q. Therefore, by Theorem 3.3, Q = Q and hence Y = Y.

To see how Theorem 3.4 will enable us to compute the feedback gain using implicit shifts, consider the unreduced upper Hessenberg matrix A, = A, - b,krC/ with an eigenvalue at A,. Note that the pair (A, , b,) is in UHF and A , is an unreduced upper Hessenberg matrix. We can write the vector k,T in the form klepT;r+l where ep- l+ l is the ( p - I + l)th_column of t hep X p identity matrix. Then an orthogonal matrix Q which implements a shift of X I will result in

IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 34, NO. 6, JUNE 1989

Substituting for A,, we have

From the structure of b / , k , , and Q,, it can be seen that QTAlQ, differs from Q,TAIQI in only the first two rows. Further, XI = a l l - b l lkIcp - I+ l , l and uZ1 - b21k ,cp -~+l , l = 0 , where a,,, biikij, and cij are the (i, j ) t h elements of QrA,QI, Q J h , krTT, and TC,QI, respectively, and T is the transformation matrix that reduces CQI to a lower row echelon form.

By the assumption that (A&,) is a controllable pair and that XI is not a transmission zero of ( A l , b,, C/ ) , the elements bZI and c,-r+ are nonzero. Therefore, k, can be computed as k,. = a21 / bZIcp-,+ Therefore, having formed the transformation Q / , which applies an implicit shift of XI to !he matrix A I , this choice of kl will assign an eigenvalue at X, in A,.

Clearly, we have concentrated the effect of the shifts of the origin into the transformation matrix P of Theorem 3.4. To determine P, we need to find the last column of QI. Consider

(AI - W'I) Q/ = R/

where q = n - 1 + 1. Defining Q, A ( q l , q,,) and premultiplying the above equation by e;, we have

e:(A/-XJ,)=e:R,QT.

Equivalently,

(0 o - . e o u ! , ~ - ~ U ! , ~ - X , ) k br=r,, ,qT

selecting P such that SrP = IId,112e:, we have,

i.e., the last column of P is the same as the last column of Q,. Hence, with this choice of P and therefore of Q,, we can transform the pair (A, b, C) and find the feedback k r i n (3.7) that assigns an eigenvalue at A,.

To assign a c-c pair of eigenvalues, we need to form a double- step implicit shift. To apply the double-step shift, assume that we have already applied one QR step with a shift A, to A, to obtain

A,+ I = QTAIQI.

We then apply another shift A,, I to A,+ I to get

A + 2 = ~ T + I ~ T ~ , ~ I ~ , + I .

Using similar reasoning as for the single step shift, we can compute

1) Find an orthogonal matrix P with the same last column as

2) Reduce the matrix PTA,P to an upper Hessenberg matrix

Once again, because of the structure of the plane rotation matrices= required to transform PTAIP to an upper Hessenberg matrix the product of these rotation matrices has thg same last column as QIQ/+ Therefore, from Theorem 3.4, A/+2 =

and we have accomplished the transformation without explicitly using the shifts XI and XI+ I . Next, to determine the transformation P , let R, and RI+ be the upper triangular parts of the QR decompositions of A , and AI+ Then it can be shown that

by the following two steps.

Q/Q/+ I .

A + 2 .

P O I

Premultiplying by e r , we get

Page 5: 1989 Numerical Algorithms for Eigenvalue Assignment ... paper/c76_www... · Numerical Algorithms for Eigenvalue Assignment ... by AcI = A - BK, ... linear algebra and control theory

MISRA AND PATEL: ALGORITHMS FOR EIGENVALUE ASSIGNMENT

where 8; is the last row of (Al - All,) (A /+ - hl+ 11,), q;is the last row of Qf , I QJ, and the elements of 8; are given by

4 I J - 2 =a,- 1,1-2a,,,- I (3.17a)

bv,?- I = a,,,- I [a,- I,, - I + a,,, -(A/+ A/+ I)]

a I + 1

( 3 . m

i?),7 = , ,q + aq,q - I a, - I, , - a,,, (A/ + A/+ 1 1 + A/ A/ + I . (3.174

Now, if we select P such that

583

then P and Q,QI+ ; have the same last column. The main application of the above result is in assigning c-c

pairs of eigenvalues. In the case when A/+1 is the conjugate of A,, (3.17) becomes

(3.18a) a7.q-2 = a,- 1,,-2a,,,- I

iq,q - 1 = aq,q - I [av- I , , - I + a,,v - (A/ + A:)] (3.18b)

i7,, = a t,, + a,,, a, - I ,~ - U,,? (A/ + A:) + A:. (3.18~)

Note that A/ + A? and A/A: are both real; therefore, all expressions in (3.18) are real, so that a double shift can be performed using real arithmetic only. Similar results for the case of EVA by state feedback were first noted in [26].

B. Theoretical Considerations in EVA for Multiinput, Multioutput Systems

In this section, we will discuss the case where the number of states of the system is less than the sum of the numbers of inputs and outputs (n < m + p). It will be shown that the multiinput, multioutput EVA problem can be easily transformed to two single-input, multioutput EVA problems each of which can be solved using the results of Section 111-A. Our approach is similar to the two-step procedure proposed in [23]. In the first step, we solve an EVA problem for a single-input, p-output system to assign p - 1 eigenvalues to desired locations in the complex plane. In the next step, we assign additional n - p + ,1 eigenvalues while preserving the p - 1 eigenvalues assigned in the first step. We shall now examine some salient features of this approach.

We have shown that in a controllable and observable single- input, p-output system we can assign r ( ~ p ) closed-loop eigen- values arbitrarily close to desired locations in the complex plane. However, a multiinput, multioutput controllable and observable system may not be completely controllable from any one specific input. In fact, complete controllability from one input is not required. As we shall see later, it is only necessary that there exists an input from which a subsystem of dimension at least p - 1 is controllable. If such an input cannot be found or if it is required to obtain a controllable single-input system from the multiinput system, we can use the generic results in [27], [28]. This involves using randomly generated matrix K, E R m x p and vector d, E Rm to get a single-input system ( A - BK,C, Ed,). It can be shown that this single-input system will "almost always" be controllable. The effect of K, is to make the resulting closed- loop state matrix cyclic [27] so that if A is already cyclic, then K, can be chosen as the null matrix. For a controllable pair (A, B) with A cyclic, it can be shown [28] that almost any linear combination of the inputs (via the vector d,) will result in a controllable pair (A, Bd,). Having obtained a controllable and

observable single-input, p-output system, we can use the approach described in Section 111-A to assign p - 1 eigenvalues at desired locations in the complex plane. The use of K, and d, may also have some benefits from the numerical point of view since the use of randomly generated K, and d, appears in general to improve the numerical conditioning of the resulting single-input EVA prob- lem. This could be because EVA by output feedback is implicitly related to the controllability and observability properties of a system and randomly generated K, and d, may make the resulting single-input system more strongly controllable and observable. This aspect of the output feedback problem is of interest from a computational point of view and needs further investigation.

Let us now consider a controllable and observable system (A, B, C) with rank ( B ) = m, rank (C) = p, and m + p > n. We assume further that A is a cyclic matrix and that we can determine a vector b lying in the column space of B, i.e., b = Bdl for some d, E R"', such that (A, b ) is controllable. Note that if the system (A, B, C) is controllable from the ith input, then dl can be chosen such that b is the ith column of B. If this is not the case, then we can use the condensed form given in Theorem 2.5 and find a linear combination (with arbitrary nonzero multipliers) of the first a! columns of the input matrix G in (2.2a). This, in general, will result in a controllable single-input system. The nonzero multipli- ers will then be the first a! elements of dl and the remaining can be set equal to zero. We also assume without loss of generality that the controllable and observable single-input, multioutput system (A , b, C) is in UHF and that the orthogonal transformations required to obtain this UHF have also been applied to the matrix B. The proposed algorithm involves a two-step procedure. The first step assigns p - 1 eigenvalues by means of constant gain output feedback k , applied to the single-input system ( A , b, C ) using the approach described in the previous section. In terms of the system (A, B, C), the output feedback matrix after this step is K I = dlkr. The state matrix ( = A - B K I C ) of the compensated system (Ap- Bp- I , Cp- I ) will then be in block upper triangular form. For brevity of notation, we define p 4 n - p + 1. Then at the end of this step, the matrices will have the following structures:

(3.19)

where A:-, E R(p-l)x(p-l) is a real Schur matrix with p - 1 eigenvalues at desired locations, A:- E R(P-l)xp has no specific form, E R p x p is an unreduced upper Hessenberg matrix, and the matrices

are conformably partitioned. To assign the remaining p eigen- values, we consider the dual system (F, G, H) with

where

22 FII = ( A by I ) ', &I = ( A r- I ) ', FZZ = ( A p - 1 )'.

G* = cc;- I ) T , G2 = <c;- ', H1=(B;-,)'and H2=(B;-,)'.

Note that (F, G, H) is a p-input, m-output controllable and observable system. For this system, we wish to assign p( = n - p + 1) eigenvalues while preserving the p - 1 eigenvalues that have already been assigned in the first step. In order to accomplish the latter, we need to determine a vector d2 such that Gldz = 0, Gzdz # 0, and (FZ2, G2d2) is a controllable pair. Since GI is a ( p

Page 6: 1989 Numerical Algorithms for Eigenvalue Assignment ... paper/c76_www... · Numerical Algorithms for Eigenvalue Assignment ... by AcI = A - BK, ... linear algebra and control theory

584 IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 34, NO. 6, JUNE 1989

- 1) x p matrix, there always exists a nonzero vector dT E Rp such that G I d2 = 0 and the assumption that rank ( G ) = p implies that G2d2 # 0. The vector d2 can be determined by reducing G to a lower column echelon form G by postmultiplication with an orthogonal matrix S E R P x P . Writing

GLi [g;]=[:;] s

we see that rank (G I ) = rank (GI) , i = 1, 2 . Therefore, we ?an select d2 as d2 = Se,, where 0 is an integer satisfying rank ( G I ) < p I p and e, is the 0th column of the p x p identity matrix. It can be shown (see the Appendix) that the pair (FZ2, G2d2) will “almost always” be controllable. It is easy to see that if p eigenvalues were assigned in the first step, then G I would be a p x p matrix. In this case, a nonzero d2 which satisfies Gld2 = 0 will not exist if G I has full rank.

We now consider the problem of EVA by constant gain output feedback for the single-input, m-output system (F, g , H) where g = Gd,. From the structure of g, it is clear that this output feedback will affect the submatrix FZI but not the submatrix Fll , so that the p - 1 eigenvalues assigned in the first step will be preserved. Also, the structure of g implies that we can compute the required output feedback vector k2 by solving the problem of assigning the p eigenvalues of F2, by constant gain output feedback applied to the controllable and observable subsystem (&, Gzd2, H2). The observability of this subsystem follows from the observability of (F, G , H) and the lower block triangular structure of F. This problem can be solved using the approach described in the previous section provided that m 2 p and rank (Elz) 2 p. The first condition is equivalent to the condition m + p > n which holds by assumption. It can be shown (see the Appendix) that the second condition is “almost always” satisfied. It should be noted that the system (FZ2, G2d2, H2) must be transformed to a UHF before the EVA procedure described in the previous section can be applied. At the end of this step, we get a constant gain output feedback matrix K2 = d 2 k l which preserves the p - 1 eigenvalues assigned in the first step and assigns the remaining p eigenvalues. The constant gain output feedback required to position all n eigenvalues for the given system ( A , B, C) is then given by

K = K , + K l + K :

where K, can be set equal to the m x p null matrix if the state matrix of the given system is cyclic. Note that K2 is transposed because we used the dual system in the second step.

It should be noted that if n > m + p - 1, then in the second step, we can assign at most m eigenvalues, implying that in the two steps together we can assign at most m + p - 1 eigenvalues. It is also worth mentioning that instead of assigning p - 1 and m eigenvalues in the two steps, we could assign m - 1 and p eigenvalues by starting with the dual of the given system. If n = m + p - 1, these are the only two ways of distributing the EVA task so as to assign all n eigenvalues. However, if n < m + p - 1, then several task distributions may be possible and this freedom can be exploited in choosing dl and d2 or in obtaining a numerically better conditioned solution to the output feedback EVA problem.

C. Algorithms for EVA by Constant Gain Output Feedback

Next we present algorithms for EVA based on the approach described in the preceding sections. The first algorithm is for EVA in single-input, multioutput systems. This algorithm can assign at most p eigenvalues of the closed-loop system. The second algorithm uses the first algorithm to assign n( 5 m + p - 1) eigenvalues of the closed-loop system arbitrarily close to desired locations in the complex plane.

I) An Algorithm for EVA in Single-Input, Multioutput Systems: We consider the single-input, multioutput controllable

and observable system in (3.1) in its UHF. If the desired set of closed-loops eigenvalues contain one or more pairs of c-c eigenvalues, then we employ implicit shifts with double steps to avoid the use of complex arithmetic. We assume that each desired complex eigenvalue and its conjugate are arranged consecutively. Also, we assume, without any loss of generality, that the output matrix C has full rank, i.e., we can assign p eigenvalues of the closed-loop eigenvalues contain one or more pairs of c-c complex plane. The following algorithm assigns real as well as C- c pairs of eigenvalues.

Algorithm 3.1: (EVA in Single-Znput, Multioutput Systems Using Implicit Shifts):

Step Z: (Initialization): . SetkT = k,T = O T , b - - b , A I = A , Q = Z, , i = 1, and1 = number of eigenvalues to be assigned ( I p ) .

Set ki = 0 and T, = I,; If Ai is complex, go to Step 111; Step II:- (Real Eigenvalues):

If i = 1 = n, go to Step 11-8); else determine an orthogonal matrix PI such that &:Pi = f 11 ci I12e: where ST = [0, 0, ... , a,,,- I , a,,, - A;] is the last row of A; - Ail , , 11 Cii 112 = (ti,Ttij)1’2, and e: is a vector of length n defined as [0, 0,

Set A i =-PTA;P;, b;. = PTbi, and c; = G P , . Reduce A; to an upper Hessenberg matrix A ; by means of plane rotations Pi, j , j = 1, 2 , a . - , n - i - 1, i.e.,

* * , J].

A;=P&-;-, . . . P:,A;P;J - . . P l , n - i & I ,

and let bi+l = P,?n-j-l

If the ith column of C?; is a zero vector (A; is a transmission zero of the system), go to Step 11-7), else, continue. Find an orthogonal matrix T such that = TCi is in a lower row-echelon form. Determine a feedback vector k̂ T such that the ( i + 1, i)th element of A ; - bitIkT becomes zero. A suitable choice of the vector kT( E RP) is [q * * * 0 ED-;+ I 0 * . * 01 where the only nonzero element of k,? is the ( p - i + 1)th element. Set T = T,T, k T = k T + iTTT, A ; + l = a; - If i = I , STOP; else, set i = i + 1 and go to Step 11. Set A;+ = A ; ; (bj+ and Cj+ I have already been defined). If i =. I , STOP; else, set i = i + 1 and go to Step 11. If the last column vector of C, is a zero vector (A, is a transmission zero of the- system), then STOP; else, deter- mine a fecdback vector k: such that the (n, n)th element of A , - b,k:C, is equal to A, . The vector AT will have only the first element El as nonzero and T, will be the n x n identity matrix. Comment: The nonzero element in k :̂ is determined as

P,Tl b;., C?; = c j P j , l Pi,n-i-I.

bi+lkTCi+l.

where a,,, denotes the (n, n)th element of A,, b, denotes the nth element of b,, , and cl,, denotes the (1, n)th element of c,.

9) Set k T = k T + k :̂ and STOP. Step 111: (Complex-Conjugate Pairs of Eigenvalues): 1) If i = n - 1, go to Step 111-8); else determine an orthogonal

&,?‘Pi= f Iliill2e,T where &T= [O 0

matrix Pi such that

Ci,, ,_z, Ci,,,- I , in,,]

is the last row of (A i - Ail,) (A; - AT&), A,? being the complex-conjugate of A;. The elements Ci,,,-2, and h,,, are given by

a n , n - Z = a n - 1,n-2an,n-1

d,,,-l=an,n-l[an-l,n-l + a , , , - ( b + ~ ) l ) l

Page 7: 1989 Numerical Algorithms for Eigenvalue Assignment ... paper/c76_www... · Numerical Algorithms for Eigenvalue Assignment ... by AcI = A - BK, ... linear algebra and control theory

MISRA AND PATEL: ALGORITHMS FOR EIGENVALUE ASSIGNMENT

6 n , n = ( a n , n I 2 + an,,- Ian- I , n - a n , n ( h i + XP) + where

a , 3 (n - i - 1) in order to make AY;) as close to upper Hessenberg as possible, i.e.,

denotes t i e (i, j ) t h element of A;. 2) Set A = P,TA;P;, b; = PTb;, C = CiPj , and k; = 0. 3) Apply plane rotations ) = 1, 2,

"i=P;j(,-;-I) * . . PcIAiPi,l . . . pl,3(n-j-I)

and k t &+z = P r 3 ( , - j - l ) f . . prlb;., ci = CjPi,1 - * . Pi,3(n-i+ I). If the ith and ( i + 1)th columns of ci are zero vectors (hi and A T are c-c transmission zeros of the system), go to Step 111-7); else, continue.

4) Find an orthogonal matrix T, such that Cj+2 = T,cj is in a lower row-echelon form.

5) Determine a feedback vector k,? such_ that the (i + 2, i)th and ( i + 2, i + 1)th eJements of Ai - b;+2k,? Ci+z are eliminated. The vector k,? (E WP) is given by

k,T= [O 0 . * 0 5 - j lp-;+ I 0 * . . 01

where kp-; = ~ ? ; + 2 , ; / b ; + ~ c ~ - ; , ~ and fp-i+l = B i + 2 , i + l /

Comment: The feedback described above results in a 2 x 2 matrix in the ith and ( i + l)th rows and columns of the closed-loop matrix A; - bi+2k,TCi+2 with eigenvalues (hi,

6) Set T = T;T, kT = k T + kTTT and Ai+2 = a; - If i = I, STOP; else, set i = i + 2 and go to Step 11.

7) Set Ai+2 = Ai; (bi+2 and Cj+2 have already been defined). If i = I - 1, STOP; else, set i = i + 2 and go to Step 11.

8) If the last two columns of C,- are zero vectors (An- and are transmission zeros of the system), then STOP;

else, determine a feedback vector 6;- I such that the 2 x 2 matrix in the last two rows and columns of An-1 - b,- I kT-, C,- have the desired c-c pair of eigenvalues at

bi+2~p- i+1 , ;+1 .

hi*).

bi+2k;Ci+2.

585

and-X,*-l. Comment: The vector kT-, will be a vector of length n with only the last two elemedbeing nonzero. The lasttwo rows and columns of An - I - b, - I k;- I Cn - I are given by

(3.23a)

and

The effect of applying the feedback k̂:-, is to change the first row of the 2 x 2 matrix above so that by appropriate choice of the two nonzero elements of the feedback vector, we can ensure that the 2 x 2 matrix in (3.22) has eigenvalues at h, - and A:- .

9) Set kT = k T + k;- and STOP.

As shown in Step 11-8) and Step 111-8), if i = I = n for a real eigenvalue or i = I - 1 = n - 1 for a c-c pair of eigenvalues, then the eigenvalues are assigned directly, since we cannot form implicit shifts in these cases.

2) A n Algorithm for EVA in Multiinput, Multioutput Systems: In this section we consider a controllable and observable m-input, p-output system (A, B, C) with rank (B) = m, rank (C) = p, and m + p > n. As described in Section 111-B, the proposed algorithm involves the solution of two single-input EVA problems. The algorithm of the previous section is therefore applied twice to assign all n eigenvalues arbitrarily close to desired locations in the complex plane. For simplicity of presentation, it is assumed that the desired closed-loop eigen- values have been arranged in such a manner that when assigning the firstp - 1 eigenvalues, the algorithm does not encounter a c- c pair of eigenvalues at the ( p - 1)th step. This does not impose any restriction on the closed-loop eigenvalues because all possible cases can be treated by starting either with the given system or its dual. For example, i f p is even, m is odd and n ( = m + p - 1) is even, we can have all the closed-loop eigenvalues as c-c pairs by starting with the dual system (AT, CT, B T ) . An algorithm for EVA in multiinput, multioutput systems may then be formally stated as follows.

Algorithm 3.2: (EVA in Multiinput, Multioutput Systems Using Implicit Shifts):

Step I: (Assign the First p - I Eigenvalues): 1) Set l = p - 1, and A = { A l , X2 ... A,}, the set of

2) Obtain a controllable pair (A, b ) where b = Bdl . eigenvalues to be assigned in this step.

Comment: The vector d l can be generated randomly or chosen as described in Section 111-B. If the matrix A is not cyclic, then a randomly generated output feedback K, should be applied to make the resulting state matrix cyclic.

3) Reduce (A, b, C) to its UHF and apply Algorithm 3.1 to get the system (Ap- I , Bp- Cp- and output feedback matrix K I = dl k where k is the output feedback vector required to assign the desired p - 1 eigenvalues for the single-input - .

system-(A, b, C). Step 11: (Assign the Remaining Eigenvalues): 1) Form the dual system, i.e., set F = (Ap-l)T, G =

( Cp- I ) T , H = (Bp- 1) ', and partition F, G , H a s shown in (3.20).

2) Determine d2 E W p such that Gld2 = 0 and G2d2 # 0. If (&, G2) is a controllable pair go to Step 11-3), else change A and go to Step I.

3) SetA = F l l , b = G2d2, C = H2, n = n - p + 1, andp = m.

4) Set 1 = n (the number of eigenvalues to be assigned and reduce the single-input, multioutput system (A, b, C) to a UHF and apply Algorithm 3.1 to assign the I eigenvalues and get an output feedback vector k:.

5) Set the output feedback matrix K = K, + K1 + d2k:.

IV. EIGENVALUE ASSIGNMENT BY DYNAMIC OUTPUT FEEDBACK

The problem of EVA by dynamic output feedback can be reduced to that of EVA by constant output feedback for an augmented system [ 11. We consider a controllable and observable linear multivariable system

X ( t ) =Ax( t ) +Bu(t) (4. la)

Y ( 0 = W t ) (4. lb)

with a cyclic state matrix A . We define dynamic output feedback for EVA by

u(t)=u(t)--z(t)-Dy(t) (4.2a)

i( t)=&(t)+G.W) (4.2b)

Page 8: 1989 Numerical Algorithms for Eigenvalue Assignment ... paper/c76_www... · Numerical Algorithms for Eigenvalue Assignment ... by AcI = A - BK, ... linear algebra and control theory

586

9.36726 + 00 -1.44726 t 02 -1.29396 + 02 -1 .31426+01 -1.0545E t 01

6.16866 + 01 5.20516 + 01 7.49786 +MI 2.87746 + 00 4.32656 t 01 3.39706 t 01 -

1.67216 + 01-

IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 34, NO. 6, JUNE 1989

wherex(t) E Wfl , u ( t ) E W", y ( t ) E W", z ( f ) E Wr, u ( t ) E W", and r is the order of the dynamic compensator that assigns all the eigenvalues of the resulting closed-loop system arbitrarily close to n + r desired locations. The closed-loop state matrix is given by

[Ai:Dc -BH F 1 a,, =

In (4.3) Y E W'"' is selected such that all its eigenvalues are distinct and different from those of A and the transmission zeros of (A, Bdl , C ) where dl is chosen as discussed in Section III-B so that (A, B d l ) is a controllable pair. From (4.3), we note that the same closed-loop state matrix would result if we were to apply a constant gain output feedback

to the system (a, B, e), where

A = [ 0 A 0 , B = [ o B O - I ] ,a,,=[: y ] . It should be noted that the matrices D, H, G, Y, and F define the required dynamic output feedback completely. The order of the dynamic compensator ( r ) can be determined such that m + p +, 2r > n + r , i.e., r > n - m - pi Because of the strucpre_o_f B and Y, we can easily find a vector-d E such that (A , B<) is a controllable pair. The vector d will have the form [dr-d']' where dl and d are chosen such that (A, Bdl) and ( Y, - d ) are controllable pairs. Note that the latter is possible because of the assumption that Y has distinct eigenvalues. Now the subsystem (Y, - d, I ) will not have any transmission zeros. Therefore, if the matrix Y does not have any eigen_va&s at the transmission zeros of (A, Bdl , C), then the pair ( A , Bd) will be controllable. The structure of C ensures that (A, C) is an observable pair if (A, C) is observable. We can therefore apply_ A_lgo_rithm 3.2 to accomplish EVA in the augmented system (A, B, C) and get the matrices D, H, G, and F that define the required dynamic output feedback compensator.

Remarks: 1) For the dynamic output feedback case, Algorithm 3.2 is

applied to a higher order system and, therefore, requires more computations.

2 ) It can be checked in a numerically reliable manner [22] , whether or not the single-input, multioutput system (A, b, C) has a transmission zero at a particular location A.

V. NUMERICAL EXAMPLES

In this section, we illustrate the performance of the algorithms described in the preceding sections by means of some numerical examples. The desired closed-loop eigenvalues have been selected for the purpose of illustration only and not to meet any specific design criteria.

Example I : For this example, we have taken the data for the 16th-order FlOO Turbofan engine [24]. The system has only five inputs and five outputs, therefore, we can assign at most m + p - 1 (= 9) eigenvalues arbitrarily close to desired locations by means of constant gain output feedback. The desired and the computed eigenvalues of the closed-loop system are given in Table 1.

Example 2: We have selected this example to illustrate the EVA algorithm using dynamic output feedback. The system being considered is the ninth-order model of a drum boiler with two inputs and two outputs [25]. A dynamic Compensator of sixth-

TABLE I DESIRED AND CLOSED-LOOP EIGENVALUES OF F ~ O O TURBOFAN ENGINE

Desired c-l eigenvalues -5.75E t 02 -1.75E + 02 -5.906 t 02 -5.00E t 02 -2.156 t 01

i i 8 . 1 0 E t 00 -1.85E + 01 -1 .906 + 00 -2.606 + 00

~

Computed c-l eigenvalues

-5 7500000W0000016 t 02 -1.7500000WOOOOWE t 02 -5.9WOOOO00OOOOOO6 + 01 -5.0000000W000001E + 01 -2.149999999999997E + 01

ft8.099999999999961E t 00 -1.850000000000003E + 01 -1.8999999999999816 t 00 -2.599999999999996E + 00 -4.6841974236639096 + 01 -3.389256478290264E + 01 -2.081856928342824B + 01 -2.048046790579636B + 01 -7.8767492947328688 t 00 -6.5643107547938386 - 01 -2.028103998833246E t 00

TABLE I1 (a) DYNAMIC COMPENSATOR MATRIX F. (b) DYNAMIC COMPENSATOR MATRIX D. (c) DYNAMIC COMPENSATOR MATRIX H . (d) DYNAMIC

COMPENSATOR MATRIX G

1 2.3160E + 01 1.64496 + 01 1.20346 + 01 1.79716 f 01 1.16136 + 01 2.04056 + 01 -1.52406 t 02 -1.2805E + 02 -8.24536 + 01 -9.2432E + 01 -7.67236 + 01 -1.93276 t 02 -2.01016 t 01 -1.58746 + 01 -1.39086 t 01 -1.27506 + 01 -1.1868B t 01 -2.46466 t 01

7.1147.E + 01 5.6522B + 01 4.09416 + 01 4.35826 t 01 3.45736 t 01 8.37706 + 01 -2.9681E + W 3.03716 + 00 4.55416 - 01 -1.50716 t 00 4.70276 t 00 6.7136B f 00

4.10816 + 01 3.70046 t 01 2.74296 t 01 3.12026 t 01 2.89346 t 01 4.90516 t 01

(a)

2.07546 + 00 5.18076 t 02 -3.28036 t 01 -3.97816 t 011

(b)

[ 13.1480E t 02 4.56WE f 01 -3.70416 + 01 1.00656 t 03 7.92036 + 02 -1.36386 t 03 4.45116 + 01 -3.55096 t 01 -1.92186 f 01 -2.59196 t 01 -2.0249E + 01 -4.50066 t 011

(C)

order enabled us to assign all the eigenvalues of the augmented system at desired locations. The parameters of the dynamic compensator (rounded off to five significant digits) are given in Table 11. The desired and the computed closed-loop eigenvalues of the augmented system are shown in Table 111.

VI. CONCLUDING REMARKS

In this paper, we have presented numerical algorithms for eigenvalue assignment by means of constant gain as well as dynamic output feedback. To the best of our knowledge, this is the first numerically reliable, direct approach for these problems where significant attention has been given to numerical issues, in particular to the reliability of the numerical computations in- volved. The problem was treated as a converse of the algebraic eigenvalue problem, the underlying principle being the QR decomposition of a matrix and the use of "implicit" shifts. In the eigenvalue computation problem, the shifts converge to the true eigenvalues while in the eigenvalue assignment problem, the shifts are known a priori, being the desired closed-loop eigen- values. The basic idea is to use output feedback to modify the given state matrix so that it has an eigenvalue corresponding to the specified shift. The algorithms use only orthogonal transforma- tions together with output feedback to assign the desired eigen- values and, therefore, have good numerical properties. The performance of the algorithms has been illustrated by numerical examples.

Page 9: 1989 Numerical Algorithms for Eigenvalue Assignment ... paper/c76_www... · Numerical Algorithms for Eigenvalue Assignment ... by AcI = A - BK, ... linear algebra and control theory

MISRA AND PATEL: ALGORITHMS FOR EIGENVALUE ASSIGNMENT 587

TABLE I11 DESIRED AND COMPUTED CLOSED-LOOP EV’S OF AUGMENTED SYSTEM

Desired c-I eigenvalues -2.100E t 01 -5.000E t 00 -4.5006 t 00 -4.0006 t 00 -3.500E t 00 -3.0006 t 00 -2.500E t 00 -2.000E t 00 -1.000E t 00 -5.5006 - 01 -4.0006 - 01 -2.0006 - 01 -1.300E- 01 -2.000E - 02 -2.400E - 02

Computed e-I e.v.’s of augmented system

-2.099999999973079E t 01 -5.0000000065381228 t W -4.5000000023093886 t 00 -3.9999999576891516 + 00 -3.500W0040624153E + 00 -2.9999999996756636 t 00 -2.500W0069781103B t 00 -1.999999906418416B t 00 -9.9999995111023896 - 01 -5.500W1740466275E - 01 -3.9999988881659266 - 01 -2.000W0037274676E - 01 -1.2999999675656686 - 01 -1.999998996023493E - 02 -2.400W12817539636 - 02

APPENDIX

To accomplish the eigenvalue assignment of the dual subsystem in Section 111-B, it is required that the following two conditions be satisfied.

1) At the beginning of the second step, rank ( H 2 ) = p ( = n - P + 1); ( n .< m + P).

2) The pair (F22, G2d2) is controllable. We shall use the approach in [12], [25] to prove that the above

two conditions will almost always be met. In order to do this, we need to introduce the concept of a hypersurface [27], [29].

Definition A . I : Let the ring of polynomials in the variables xi, i = 1, 9 * * , rover the real field be denoted by W[xl, * * a , x?]. Let x = [xl, ** . ,x r lTandf (x ) E W[x].ThenapointfE W‘issaid to be a zero off(x) i f f ( f ) = 0. The set S ( f ) of zeros off(x) is called the locus off(x). The set S is a subset of W‘ and is called a hypersurface in W r if it is the locus of a nonconstant polynomial.

At the end of the first step in solving the multiinput EVA problem in Section 111-B, the system is given by (Ap- 1 , Bp- 1 ,

Cp- I ) . We can write

where Bi- E Rp” and U is an orthogonal transformation matrix containing all the similarity transformations performed on the system up to this point. Next, we define a set Bp-l = {Bp-llBp-l E W””” and rank (Bi-l) < p } and show that it is an empty set or a hypersurface in the parameter space of Bp- 1 ,

i.e., for “almost all” matrices Bp-l, rank (Bi-l) = p. Now, rank (Bi- I ) < p if and only if all its p x p minors, denoted by pi, i = 1, . . . , k, are equal to zero. By considering the elements of Bi-l as variables, we note that the pi, i = 1, - e , k , are polynomials in these elements. Let p = E f = I p f . Then rank (B;-l) < p if and only i f p = 0. However, on noting that Bi-, = [I, 01 has rank p , we see that the polynomial p cannot be identically zero. Now, if p is a nonzero constant, then it follows that Bp- is an empty set. If p is a nonconstant polynomial, then by Definition A. 1, Bp- is a hypersurface in the parameter space of Bp- I . Now for a given U, any hypersurface in the parameter space of Bp-l corresponds to a unique hypersurface in the parameter space of B = UBp- and vice versa, implying that the condition on Bp-l (equivalently on B i - l ) will be satisfied for “almost all” input matrices. Finally, since H2 = ( B i - l ) , T , it follows that Condition 1) is satisfied for almost all input matrices.

To establish the second condition, we consider the observable system (&, GZ2d2, Z,) and use the result from [25] that almost all systems ( A , B, C ) with rank (B) = m, rank ( C ) = p , and m # p , have no finite transmission zeros, i.e., the class of such systems which possess finite transmission zeros is either empty or lies on a hypersurface in the parameter space of ( A , B, C) . Now, as discussed in Section 111-B, we can always find a d2 such that G22d2 # 0 . Therefore, the single-input, p-output system (&, G@z,

I , ) will almost always be devoid of transmission zeros, implying

that there will almost never be any finite pole-transmission zero cancellations in the single-input system. This in turn implies that the pair (&, GZ2d2) will almost always be controllable.

ACKNOWLEDGMENT

The authors are grateful to the reviewers for their constructive criticism. Their comments were helpful in improving the technical content and exposition of the paper.

REFERENCES F. Fallside, Ed., Control Systems Design by Pole-Zero Assign- ment. New York: Academic, 1977. W. M. Wonham, Linear Multivariable Control: A Geometric Approach. New York: Springer-Verlag, 1979. T. Kailath, Linear Systems. Englewood Cliffs, N J : Prentice-Hall, 1980. R. V. Patel and N. Munro, Multivariable System Theory and Design. Oxford: Pergamon, 1982. G. S. Miminis and C. C. Paige, “An algorithm for pole-assignment of time-invariant linear systems,” Int. J. Contr., vol. 35, pp. 341-354, 1982. R. V. Patel and P. Misra, “Numerical algorithms for eigenvalue assignment by state feedback,” Proc. IEEE, vol. 72, pp. 1755-1764, 1984. J. Kautsky, N. K. Nichols, P. VanDooren, and L. Fletcher, “Robust pole assignment in linear feedback,” Int. J. Contr., vol. 41, pp.

B. N. Datta, “An algorithm to assign eigenvalues in a Hessenberg matrix: Single input case,” IEEE Trans. Automat. Contr., vol. AC- 32, pp. 414417, 1970. G. S. Miminis and C. C. Paige, “A direct algorithm for pole assignment of time-invariant multiinput linear systems using state feedback,” Automatica, vol. 24, pp. 343-356, 1988. F. M. Brasch and J. B. Pearson, “Pole placement using dynamic compensators,” IEEE Trans. Automat. Contr., vol. AC-15, pp. 34- 43, 1970. H. Kimura, “Pole assignment by gain output feedback,” IEEE Trans. Automat. Contr., vol. AC-20, pp. 509-516, 1975. E. J. Davison and S. H. Wang, “On pole assignment in linear multivariable systems using output feedback,” IEEE Trans. Auto- mat. Contr., vol. AC-20, pp. 516-518, 1975. L. Fletcher and J. F. Magni, “Exact pole assignment by output feedback, Part 1,” Int. J. Contr., vol. 45, pp. 1995-2007, 1987. J. F. Magni, “Exact pole assignment by output feedback, Part 3,” Int. J. Contr., vol. 45, pp. 2021-2033, 1987. P. Misra and R. V. Patel, “Numerical considerations in eigenvalue assignment by output feedback,” in Proc. 24th IEEE Conf. Decision Contr., Ft. Lauderdale, FL, 1985, pp. 315-316, P. Misra, “Computational methods for multivarlable system analysis and design,” Ph.D. dissertation, Dep. Elect. Comput. Eng., Concor- dia Univ., Montreal, P.Q., Canada, 1987. E. K. W. Chu, N. K. Nichols, and J. Kautsky, “Robust pole assignment by output feedback,” in Proc. 4th IMA Conf. Contr. Theory, 1985. G. S. Miminis, “A direct algorithm for pole assignment of time invariant linear systems using output feedback,” presented at the 25th IEEE Conf. Decision Contr., Athens, Greece, 1986. J. H. Wilkinson, The Algebraic Eigenvalue Problem. New York: Oxford University Press, 1965. G. W. Stewart, Introduction to Matrix Computations. New York:

1129-1 155, 1985.

Academic, 1973. R. V. Patel, “On blocking zeros in linear multivariable systems,” IEEE Trans. Automat. Contr., vol. 33, pp. 239-241, 1988. R. V. Patel and P. Misra, “A numerical testfor transmission zeros with applications in characterizing decentralized fixed modes,” in Proc. 23rd IEEE Conf. Decision Contr., Las Vegas, NV, 1984, pp. 1148- 1153.

H. Seraji, “A new method for pole placement using output feedback,” Int. J. Contr., vol. 28, pp. 147-155, 1978. M. K. Sain, J. L. Peczkowski, and J. L. Melsa, Eds., Alternatives for Linear Multivariable Control. Chicago: Nat. Eng. Consortium, 1978. E. J. Davison and S. H. Wang, “Properties and calculation of transmission zeros of linear multivariable systems,” Automaticu, vol.

G. S. Miminis, “Numerical algorithms for controllability and eigen- value allocation,” MSc. thesis, McGill Univ., Montreal, P.Q., Canada, 1981. E. J. Davison and S. H. Wang, “Properties of linear time-invaria;! multivariable systems subject to arbitrary output and state feedback, IEEE Trans. Automat. Contr., vol. AC-18, pp. 24-32, 1973.

10, pp. 643-648, 1974.

Page 10: 1989 Numerical Algorithms for Eigenvalue Assignment ... paper/c76_www... · Numerical Algorithms for Eigenvalue Assignment ... by AcI = A - BK, ... linear algebra and control theory

588 IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 34, NO. 6, JUNE 1989

B. Gopinath, “On the control of linear multiple input-output systems,’ BellSyst. Tech. J . , vol. 50, pp. 1063-1081, 1981. W. Fulton, Algebraic Curves. New York: Benjamin, 1969.

Pradeep Misra (M’88) received the B.Tech. degree in electrical engineering from the Indian Institute of Technology, Kharagpur, India, and the Ph.D. degree from Concordia University, Montreal, P.Q., Canada.

At present, he is an Assistant Professor of Electrical Systems Engineering at Wright State University, Dayton, OH. His research interests include computational methods for analysis and design of high-order systems, modeling and control of robot manipulators, and multidimensional digital signal processing.

Rajnikant V. Patel (M’76-SM’80) received the B.Eng. degree in electronics from the University of Liverpool, Liverpool, England, in 1969 and the Ph.D. degree in electrical engineering from the University of Cambridge, Cambridge, England, in 1973.

He has held postdoctoral and visiting faculty positions at the University of Cambridge, Lund Institute of Technology, NASA Ames Research Center, the University of Waterloo, and Delft University of Technology. He was a Lecturer in

Control Engineering at the Control Systems Centre, UMIST, England, from 1980 to 1981. At present, he is a Professor of Electrical Engineering at Concordia University, Montreal, P.Q., Canada. He has conducted research on problems of structure and design of multivariable systems, robustness in estimation and control theory, adaptive stochastic control, and computational methods for high-order systems. He has published numerous technical papers in these areas and is the author (with N. Munro) of the book, Multivariable System Theory and Design (Oxford: Pergamon, 1982). His current research interests also include theoretical and computational aspects of robot kinematics, dynamics, and control.

Dr. Patel is an Associate Editor of the IEEE TRANSACTIONS ON AUTOMATIC CONTROL and of Automotica (the journal of the International Federation of Automatic Control).