Overview QZ Based Algorithm for System Pole, Transmission Zero and Residue Derivatives

advertisement
5/12/2016
QZ Based Algorithm for
System Pole, Transmission
Zero and Residue Derivatives
Bradley T. Burchett, Ph.D., P.E.
Associate Professor
Rose-Hulman Institute of Technology
Overview
Introduction
Review of QZ
Batch Calculation of the Residues
Numerical Results
Gradient based OOF using Sylvester
Open issues
1
5/12/2016
Introduction
Objective: Numerically robust
algorithm to compute derivatives of
poles, zeros and residues
Output will be used in Sylvester
expansion solution of quadratic cost
function for optimal output feedback
Facilitates feedback design in large
systems.
QZ review
QZ historically used to solve
generalized eigenvalue problem (GEP)
Aw = λBw
In turn used to solve Ricatti
Equations, compute transmission
zeros, etc.
2
5/12/2016
Steps of QZ
A is reduced to upper Hessenberg form
while B is reduced to upper triangular form,
A is reduced to quasi-triangular form while
the triangular form of B is maintained
the quasi-triangular matrix is reduced to
triangular form and the eigenvalues are
extracted
the eigenvectors are obtained from the
triangular matrices and transformed back
into the original coordinate system
Building blocks of QZ
QZ refers to the left and right unitary
matrices Q and Z such that QAZ is
quasi-triangular and QBZ is upper
triangular
Q and Z need not be explicitly
formed, rather, Householder reflectors
and Givens rotations are applied to
submatrices of A and B.
3
5/12/2016
Householder / Givens
Householder finds:
H = I − uu H
Such that
Ha = νe1
Givens rotation:
Ha = νe1
Overall QZ
Problem is sub-divided to reduce
computational burden
4
5/12/2016
Rotations are applied to pencil and its
derivatives
Deflation
zeros on the diagonal of B must
deflated out the bottom of the pencil
to preserve the correct derivative
information.
When B initially has two or more
zeros on the diagonal the deflation
logic becomes somewhat more
complicated. as shown below.
5
5/12/2016
Extracting the Eigenvalues
Real eigs given by:
Derivs by:
Complex eigs from the algorithm:
6
5/12/2016
Complex eigs algorithm continued
and finally
7
5/12/2016
LTI System nomenclature
State Space
Transfer Function
F (s ) = c (sI − a ) b + d
−1
Batch Calculation of the Residues
(distinct poles)
Partial fraction expansion:
Can be solved by finding common
denominator, adding, and equating
powers of s.
8
5/12/2016
If we write the simultaneous set of
equations in matrix form we get:
Ξr=R, where:
Xi(i,j) = sum(prod(combnk(−ps([1:j−1,j+1:n]),i−1),2)).
and
that is:
9
5/12/2016
Batch Calculation of the Residues
(repeated poles)
Repeating the algebraic process, we discover that
the corresponding column of the Ξ matrix can be
built from the bottom up pretending that the
system is lacking mk − j + 1 occurrences of the
repeated pole. The top mk − j of said column will
then be filled in with zeros.
Columns of Ξ corresponding to
repeated pole:
10
5/12/2016
Derivatives of the Residues
The batch equation is differentiated
yielding:
Unpacking the derivative of the Ξ
matrix, we get:
11
5/12/2016
System numerator polynomial is
found from:
Thus derivatives of the numerator
coefficients from the pencil
sum(prod(combnk(-ps([1:j-1,j+1:n]),m),2))*(-dps(j))
12
5/12/2016
Numerical Examples
Transmission Zero Calculation
13
5/12/2016
14
5/12/2016
Residue Derivatives
For the system shown previously
15
5/12/2016
Sylvester Based Algorithm for OOF:
Sylvester’s expansion
residue (num polynomial)
eigenvalue
Is substituted for the system
dynamics in the quadratic cost
function
I.E.
Which is re-written
16
5/12/2016
Which is then integrated closed-form
Where
mk occurences of
λ are deconvolved
from char poly
and the nk terms come from the PFE
Characteristic polynomial of A
Gradient of the cost function
quotient rule
17
5/12/2016
Derivative of matrix polynomial leads
to first / last algorithm:
%
F
L
Z
first term:
= Z;
= dA;
= Z + (F + L)*Psi(p-1);
% subsequent terms:
for q = p-2:-1:1
F = A*(F + L);
L = L*A;
Z = Z + (F + L)*Psi(q);
end
Map eigenvalue derivatives to
derivatives of char poly coeffs:
Is just one term in the polyderm
expansion.
18
5/12/2016
Result: Non-gradient search
Results: Gradient search
Equal axis scaling:
1
1
0.8
0.8
0.6
0.6
859095
K(2,1)
55
0.2 95
0.2
0
0
-0.2
80706560
75
75
70
65
-0.6
0.4
0.5
0. 6
K(1,1)
0.7
0.8
65
60
-0.6
60
0.3
90
85
80
75
70
90
85
-0.2
80
75
70
65
60
-0.4
80
-0.4
0.2
55
0.4
0.4
0.9
1
95
0.2
0.4
0. 6
95
0.8
19
5/12/2016
Open Issues
Is the differentiated QZ stable?
Operations counts
Actual repeated eigenvalue cases that
are not defective / overly contrived?
0
0
-2
-2
-4
-4
-6
-6
-8
0
2
4
A11
6
8
-8
0
0
-2
-2
-4
-4
-6
-6
-8
0
2
4
B11
6
8
-8
0
2
4
dA11
6
8
0
2
4
dB11
6
8
20
Download