You are on page 1of 43

Introduction to Basic Concepts Test Properness and Stability of Inverse

- Test properness and stability of inverse  


AB
Suppose G = is stabilizable/detectable realization.
- Fractional transformations C D

G has a proper inverse iff

G(∞) = D is non-singular.

If D is invertible, G−1 has a realization


 
−1 A − BD−1C BD−1
G = .
−D−1C D−1

Let G be stable. Then it has a proper and stable inverse


if and only if

det(G(λ)) = 0 for all λ ∈ C0 ∪ C+ ∪ {∞}

if and only if

D is invertible and A − BD−1C is stable.

1 2

Fractional Transformations Stabilizing Controllers

Lower linear fractional trafo S(P, K) of P and K: - General framework to handle interconnections
Partition - Definition of stabilizing controllers
 
P11 P12 - Tests of whether a controller is stabilizing
P = such that P22K is square,
P21 P22
- Definition of generalized plants
check whether I − P22K has an inverse, and set
- Tests of whether an interconnection is generalized plant

S(P, K) := P11 + P12K(I − P22K)−1P21.

Upper linear fractional trafo S(∆, P ) of ∆ and P :


Partition
 
P11 P12
P = such that P11∆ is square,
P21 P22
check whether I − P11∆ has an inverse, and set

S(∆, P ) := P22 + P21∆(I − P11∆)−1P12.

3 4
A Tracking Configuration Corresponding Open-Loop Interconnection

6@ 6@

Q Q
„ r `  „ r ` 
+  t + + + t + +

z z
6@ + 6@ +

Straightforward derivation of algebraic relations:


Have explicitly specified signals of interest:
 
   d
- Signals that affect the interconnection and cannot be e I 0 −I G n
=  .
influenced by the controller: r, d, n y −I −I I −G  r

- Signals that characterize whether the controller achieves u


the desired goal: e should be kept as small as possible
for all inputs r, d, n in a certain class Obtain input-output description of closed-loop interconnec-
- Signals via which the plant can be controlled: u tion with u = Ky.

- Signals that are available for control: y

5 6

General Framework General Framework

In an arbitrary interconnection, let After disconnecting the controller, any open-loop intercon-
- w denote the signal that affects the system and cannot nection is described as
      
be influence by the controller. z w P11 P12 w
w is called generalized disturbance. =P = .
y u P21 P22 u
- z denote the signal that allows to characterize whether
a controller has certain desired properties.
The closed-loop interconnection is obtained by reconnecting
z is called controlled variable.
the controller as
- u denote the output signal of the controller.
u is called control input. u = Ky.
- y denote the signal that enters the controller.
y is called measurement output. General Formula for closed-loop interconnection:

In example:  
d z = [P11 + P12K(I − P22K)−1P21]w = S(P, K)w.
 
w =  n  , z = e.
r
Assumption
Throughout the course, both P and K are LTI systems.

7 8
General Framework in Pictures State-Space Descriptions

F j Open-loop interconnection P :
h
r < ẋ = Ax + B1w + B2u
z = C1x + D11w + D12u
General open-loop interconnection y = C2x + D21w + D22u

<Q HQ
Q Controller K:

ẋK = AK xK + BK uK
General controller
yK = CK xK + DK uK
F j
h
Assumption: Both stabilizable and detectable.
r <


Closed-loop interconnection with u = yK and uK = y:
General closed-loop interconnection
ξ˙ = Aξ + Bw
z = Cξ + Dw

9 10

We have
Realization of Closed-Loop Interconnection?
 
  x  
 
yK   u
Merge descriptions of P and K as = C 2 D 21  xK  + D 22 .
y uK
     w
ẋ A 0 B1 B2 0 x
    
 ẋK   0 AK 0 0 BK   xK     
    
 z  =  C1 0 D11 D12 0   w  u yK
     With = obtain
     uK y
 yK   0 CK 0 0 DK   u   
  x
y C2 0 D21 D22 0 uK  
  yK  
 [I − D 22] = C 2 D 21  xK  .
 A B1 B2  y

C D
 w
11 D 12 

 1
 
C 2 D 21 D 22
If I − D 22 is non-singular, obtain
 
Formula for realization of closed-loop system:   x
 
yK  
     = [I − D 22]−1 C 2 D 21  xK  .
  y
A B A B1 B2 w
= + [I−D 22]−1 C 2 D 21 .
C D C 1 D 11 D 12
End up with
   
ẋ     
  A B1 B2    x 
 ẋK  = + [I −D 22]−1 C 2 D 21  
  C 1 D 11 D 12  xK  .
z w

11 12
Fundamental Definition Example

  In tracking configuration, take the plant model


  A B1 B2
AK BK   200 1
K = stabilizes P =  C1 D11 D12  if the G(s) =
CK DK 10s + 1 (0.05s + 1)2
C2 D21 D22
matrix and the controller
 
I −DK
0.1s + 1
−D22 I K(s) = .
(0.65s + 1)(0.03s + 1)
is non-singular and
    −1  Test whether K stabilizes P in µ-tools:
A 0 B2 0 I −DK 0 CK
+
0 AK 0 BK −D22 I C2 0 G=nd2sys( [200],conv([10 1],conv([0.05 1],[0.05 1])) );
K=nd2sys( [0.1 1], conv([0.65 1],[0.03 1]) );
is stable. systemnames=’G’;
inputvar=’[d;n;r;u]’;
outputvar=’[G+d-r;r-n-d-G]’;
Remarks. input_to_G=’[u]’;
sysoutname=’P’;
- Recall: Realizations must be stabilizable/detectable.
cleanupsysic=’yes’;
- Same definition if w and z are absent. sysic
S=starp(P,K);
- Much simpler formulas if DK = 0 or D22 = 0.
[A,B,C,D]=unpck(S);
eig(A)

13 14

Input-Output Description More Explicitly

Merge description to
F j
    
h
r ` + 8
@
z
  
P11 P12 0 w
 
 v1  =  0 I −K   u  .
8 v2 −P21 −P22 I v
8
+ 
   
w z
   
System  v1  →  u  proper if and only if
Theorem v2 v
K stabilizes P if and only if the interconnection defined  
I −K
through the relations or I − P22K have proper inverse.
    −P22 I
z w
=P , u = Kv + v1, v = y + v2    
y u w z
   
defines a proper and stable transfer matrix Then  v1  →  u  is described by transfer matrix
    v2 v
w z  
    P11 + P12K(I − P22K)−1P21 P12(I − KP22)−1 P12K(I − P22K)−1
 v1  →  u  .  
 K(I − P22K)−1P21 (I − KP22)−1 K(I − P22K)−1 
v2 v  .
(I − P22K)−1P21 (I − P22K)−1P22 (I − P22K)−1

Have to check stability of all nine blocks.

15 16
Input-Output Description Why is Input-Output Characterization Valid?

    
Explicit Input-Output Stability Test z P11 P12 0 w
K stabilizes P if and only if     
 v1  =  0 I −K   u 
I − P22K has a proper inverse v2 −P21 −P22 I v

and the following transfer matrix is stable: admits stabilizable and detectable realization:

P11 + P12 K(I − P22 K)−1 P21 P12 (I − KP22 )−1 P12 K(I − P22 K)−1
    
  ẋ x
 K(I − P22 K)−1 P21 (I − KP22 )−1 K(I − P22 K)−1  .
    
(I − P22 K)−1 P21 (I − P22 K)−1 P22 (I − P22 K)−1  ẋK  A B1 B2  xK 
   
 z = D 12   
   C 1 D 11  w .
   
 v1  −C 2 −D 21 I − D 22  u 
v2 v
Remarks.
   
- In general, one really has to check all nine blocks. w z
   
- If some of the blocks of P or K are stable, might suffice  v1  →  u  is LTI if and only if I − D 22 non-singular.
to check only a subset. Useful: Formulas for rearranging v2 v
block matrices. Has stabilizable and detectable realization defined with
 
- w, z absent: K stabilizes P22 if and only if A + B 2 (I − D 22 )−1 C 2 B 1 + B 2 (I − D 22 )−1 D 21 B 2 (I − D 22 )−1
 
 C 1 + D 12 (I − D 22 )−1 C 2 D 1 + D 12 (I − D 22 )−1 D 21 D 12 (I − D 22 )−1  .
   
−1 −1 −1
(I − D 22 ) C 2 (I − D 22 ) D 21 (I − D 22 )
I −K
has proper and stable inverse.
−P22 I
Transfer matrix stable iff A + B 2(I − D 22)−1C 2 stable.

17 18

Example Generalized Plant

The system We distinguish those P that admit a stabilizing controller.


 
1 1/s
P (s) = Definition
1 1/(s + 1)
If
there
 existsat least
 one controller u = Ky that stabilizes
z w
does not admit a stabilizing controller. =P , we call P a generalized plant.
y u
Why? Either one of the functions

1 1
P12(s)(I − K(s)P22(s))−1 =
s 1 − K(s) Violation indicates that interconnection contains unstable
s+1
components that cannot be stabilized.
or

1 1 Requires to change components, interconnection, actuator


P12(s)(I − K(s)P22(s))−1K(s) = 1 1 or sensor location, ...
s K(s) − s+1

is unstable.
Must always be verified. Is there a simple test?

19 20
Generalized Plant: State-Space Test Construct Stabilizing Controller

Take F , L such that A + B2F , A + LC2 stable. Define


Theorem
The system with stabilizable/detectable realization    
     AK BK A + B2F + LC2 + LD22F −L
= .
ẋ A B1 B2 x CK DK F 0
    
 z  =  C1 D11 D12   w 
y C2 D21 D22 u
Why does this controller stabilize?
is a generalized plant if and only if
 
I −DK
(A, B2) is stabilizable, (A, C2) is detectable. Since DK vanishes, is non-singular.
−D22 I

The matrix

Nontrivial condition due to presence of channel w → z.     −1  


A 0 B2 0 I −DK 0 CK
+
0 AK 0 BK −D22 I C2 0
If valid, design controller on the basis of F , L that render
A + B2F and A + LC2 stable.
equals
 
Always true if w and z are absent. System then looks as A B2 F
     .
−LC2 A + B2F + LC2
ẋ A B2 x
= .
y C2 D22 u
This is stable! (Look at error dynamics.)

21 22

Generalized Plant: Input-Output Test Summary

As a consequence of our discussion, there always exists a


Extract open-loop interconnection described with P .
controller u = Ky that stabilizes y = P22u.

Test whether P is generalized plant:


One can find a minimal realization of P22 and construct a
state-space controller.
- Find a stabilizable/detectable state-space realization
of P and check whether (A, B2) is stabilizable and (A, C2)
Theorem is detectable.
Let u = Ky be any controller that stabilizes y = P22u. - Find any K that stabilizes P22, and verify whether this
Then P is a generalized plant if and only if this controller K stabilizes P .
K stabilizes the open-loop interconnection P .
Only proceed if P is a generalized plant.

Easy to check. Closed-loop system given by


 
Suppose P is a generalized plant. Then A B
z = S(P, K) = w
- Any controller that stabilizes P22 also stabilizes P . C D

- To check whether K is stabilizing, it suffices to verify  


A B
only four instead of nine transfer matrices. with formulas for S(P, K) and for .
C D

23 24
Back to Tracking Example Back to Tracking Example

Open-loop interconnection Input-output test


   
P11 P12 I 0 −I G
P = = Let K stabilize P22 = −G. Hence
P21 P22 −I −I I −G
 
is generalized plant.
(I − KP22)−1 K(I − P22K)−1
=
(I − P22K)−1P22 (I − P22K)−1
 
State-space test: (I + KG)−1 K(I + GK)−1
=
−(I + GK)−1G (I + GK)−1
Let G(s) = CG(sI −AG)−1BG +DG be minimal realization.
is well-defined and stable.
Then P (s) equals
   
CG   I 0 −I DG Look at nine blocks. Note that P11, P21 are stable.
−1
(sI−AG) 0 0 0 BG + .
−CG −I −I I −DG
‘Critical’ blocks
Hence P admits minimal realization
    P12(I − KP22)−1 = G(I + KG)−1 = (I + GK)−1G
A B1 B2 AG 0 0 0 BG
    P12K(I − KP22)−1 = KG(I + KG)−1 = I − (I + KG)−1
 C1 D11 D12  =  CG I 0 −I DG  .
C2 D21 D22 −CG −I −I I −DG P11 + P12K(I − P22K)−1P21

(A, B2) is stabilizable, (A, C2) is detectable. Finished! are seen to be stable. Finished!

25 26

3 Robust Stability Robust Stability - A SISO Example

Choose G(s) and K(s) in tracking configuration as earlier.


• A SISO example to demonstrate main ideas
Have seen that K stabilizes P formed with G.
• General framework for uncertain systems

• Type/Structure/Size of uncertainties
Suppose the model G deviates from the actual plant H.
• Pulling out uncertainties
Suppose we can bound the deviation as
• Determinant test for robust stability |G(iω) − H(iω)| < 1 for all ω ∈ R ∪ {∞}.
• Small-gain theorem for full block uncertainties

• Small-SSV theorem for structured uncertainties Fundamental robust stability question:


Does K stabilize the interconnection if replacing G by H?
• Digression: The Structured Singular Value (SSV)

27 28
Introduce Uncertainty Transfer Function Seen by Uncertainty

Introduce plant-model mismatch ∆(s) := H(s) − G(s). Rewrite interconnection:


Actual plant given as
6@

H(s) = G(s) + ∆(s) F j


 Q
with some proper stable ∆(s) satisfying
„ r ` 
L  t L L L
|∆(iω)| < 1 for all ω ∈ R ∪ {∞}.

z
6@ L
6@

Q
Disconnect uncertainty:
„ r ` 
L  tL L L
6@

F j
z Q
6@ L
„ r ` 
L  t L L L
Fundamental robust stability question:
Does K stabilize the interconnection in Figure for all ∆? z
6@ L
Is there a ∆ for which K does not stabilize interconnection?
Transfer function seen by ∆: w∆ → z∆.

29 30

How to Compute? General Framework

Disconnect controller and uncertainty: Open-loop interconnection described as


      
z∆ w∆ P11 P12 P13 w∆
6@       
 zp  = P  wp  =  P21 P22 P23   wp  .
F j
Q y u P31 P32 P33 u
„ r ` 
L t L L L Reconnect controller as u = Ky to obtain closed-loop in-
terconnection described as
   
z z∆ w∆
6@ L = S(P, K) .
zp wp
 
d Reconnect uncertainty as w∆ = ∆z∆ to obtain perturbed
 
Collect wp =  n , zp = e. closed-loop interconnection described as
r
zp = S(∆, S(P, K))wp = S(S(∆, P ), K)wp.
Leads to interconnection description
   
z∆ w∆
   
 zp  = P  wp  .
For S(P, K), use abbreviation
y u    
N11 N12 M N12
Performance channel wp → zp. N= = .
N21 N22 N21 N22
Uncertainty channel w∆ → z∆. M is transfer matrix seen by ∆.

31 32
General Framework in Pictures Back to Example

z∆ w∆ 6@

z P w F j
p p Q
y u
„ r ` 
L  t L L L

z∆ w∆
z P w z
p p 6@ L

y u
Closed-loop interconnection described as
    
K z∆ M N12 w∆
= .
zp N21 N22 wp

∆ Reconnecting w∆ = ∆z∆ leads to

z∆ w∆ zp = [N22 + N21∆(I − M ∆)−1N12]wp.

z
p
P w
p Only source for instability: Inverse (I − M ∆)−1!

y u

33 34

Transfer Function Seen by Uncertainty Back to Specific Example

Need to verify whether Compute M and plot M (iω) over frequency with code

I − M ∆ has proper and stable inverse for all ∆. G=nd2sys( [200],conv([10 1],conv([0.05 1],[0.05 1])) );
Both M and ∆ are stable. K=nd2sys( [0.1 1], conv([0.65 1],[0.03 1]) );
systemnames=’G’;
Hence (I − M ∆)−1 is stable if Nyquist curve inputvar=’[w;d;n;r;u]’;
outputvar=’[u;w+G+d-r;w+r-n-d-G]’;
ω → M (iω)∆(iω) does not encircle 1.
input_to_G=’[u]’;
sysoutname=’P’;
True if
cleanupsysic=’yes’;
|M (iω)∆(iω)| < 1 for all ω ∈ R ∪ {∞}. sysic
N=starp(P,K);
Since |∆(iω)| < 1, this holds if [A,B,C,D]=unpck(N);
eig(A)
M=sel(N,1,1);
|M (iω)| ≤ 1 for all ω ∈ R ∪ {∞}.
om=logspace(-2,4);
Mom=frsp(M,om);
vplot(’liv,lm’,Mom);
grid on
If true, system cannot be destabilized with proper stable
uncertainty ∆ satisfying |∆(iω)| < 1 for all ω ∈ R ∪ {∞}.

35 36
Graph of Frequency Response of M Destabilizing Perturbations?

1
10
Expected to happen for ∆ such that (I − M ∆)−1 unstable.
Find ∆ and iω0 such that det(I − M (iω0)∆(iω0)) = 0.
0
10 If M is SISO: Amounts to 1 = M (iω0)∆(iω0).

First Step
−1

Choose iω0 with |M (iω0)| > 1.


10

1
Complex number ∆0 := M (iω0 ) satisfies

1 = M (iω0)∆0, |∆0| < 1.


−2
10

−3
Second Step
10
−2 −1 0 1 2
10 10 10 10 10
Determine real-rational proper and stable ∆(s) with

Cannot guarantee robust stability for |∆(iω)| < 1. ∆(iω0) = ∆0, |∆(iω)| < 1 for all ω ∈ R ∪ {∞}.

Can guarantee robust stability for |∆(iω)| < 14 .


Conclusion
Largest possible bound given by - ∆ is in desired class: |∆(iω)| < 1 for all ω ∈ R ∪ {∞}.
 −1
sup |M (iω)| = M −1 - (I − M ∆)−1 unstable: 1 = M (iω0)∆(iω0).
∞.
ω∈R∪{∞}

37 38

A little Interpolation Lemma Example: Matlab Code

Lemma
Delta0=vunpck(minv(frsp(M,5)));
Let ω0 ≥ 0 and ∆0 ∈ C. Set
alpha=abs(Delta0);
α − ∆0
α = ±|∆0|, β = iω0 . beta=real(5*i*(alpha-Delta0)/(alpha+Delta0));
α + ∆0 Delta=nd2sys([alpha -alpha*beta],[1 beta]);
Then
s−β
∆(s) = α spoles(Delta)
s+β
is proper, real-rational, and satisfies
m=logspace(0.5,1,500);clf;
∆(iω0) = ∆0, |∆(iω)| = |∆0| for all ω ∈ R ∪ {∞}.
for tau=linspace(0,5,10);
Either for α = |∆0| or for α = −|∆0|, ∆ is stable.
D=mmult(tau,Delta);
PDelta=starp(D,P);
cll=starp(PDelta,K);

figure(1);plot(spoles(cll),’+’);hold on;
figure(2);vplot(’liv,lm’,frsp(sel(cll,1,2),om));hold on;

end;

39 40
Example: Results Summary of SISO Example

Frequency response of r → e: The SISO example demonstrated ...

• ... how to get to general framework


2
10

1
10
• ... that the transfer matrix seen by uncertainty deter-
mines robust stability
0
10 • ... that robust stability can be guaranteed by a simple
version of small-gain theorem

• ... how to construct destabilizing perturbations to verify


−1
10
1
10

that robust stability test is exact.


Poles of controlled interconnection:
6

−2

−4

−6
−60 −50 −40 −30 −20 −10 0 10

41 42

Uncertainties? Parametric Uncertainty

Typical types of uncertainties in system components. Second order system with parametric uncertainty:
How does structure appear? 1
ẑ(s) = 2 ŵ(s), c1 < c < c2.
s + cs + 1
Set of all parameters described as
How to pull uncertainties out of system components?
c = c0 + W δ with − 1 < δ < 1
How to pull uncertainties out of interconnections?
c1 +c2 c2 −c1
with nominal value c0 := 2 and weight W = 2 .
Will arrive at general framework.
Uncertain system described as
Size and structure of uncertainties captured by specifying
1
possible values of frequency response. G∆(s) = 2 , ∆∈∆
s + (c0 + W ∆)s + 1
Values = Block-diagonal complex matrices bounded by 1. with uncertainty class

∆ := {δ ∈ R | − 1 < δ < 1}.

43 44
Pull out Uncertainty General Affine Parametric Uncertainty

Input-output description: System matrices depend affinely on parameters:


1
G∆(s) = 2      
s + (c0 + W ∆)s + 1 A(δ) B(δ) A0 B0 k
Aj Bj
rewritten to   = + δj =
C(δ) D(δ) C0 D0 j=1
Cj Dj
    
 −W s s   
 1  A0 B0  k
L1j
G∆(s) = S ∆, 2 . = + δj [δ I] 1 2 =
 s + c0s + 1 −W 1  C0 D0 L2j
j R j R j
 j=1
G   
0 0 R11 R22
  
... .. ..  
State-space description:  δ1I 0  
     
   
  =S ... 0 Rk1 Rk2  
0 1 0  , 0 
ẋ = x+ w, z = 1 0 x   1 1 
−1 −(c0 + W ∆) 1  0 δk I  L1 · · · Lk A0 B0 
rewritten to   L21 · · · L2k C0 D0
  0 1 0 0  
ẋ   x
   −1 −c0 −W 1    with full rank factorization
 z∆  =   0 1   w∆  , w∆ = ∆z∆.
 0 0     
z w  
1 0 0 0 Aj Bj L1j
= Rj1 Rj2 .
Cj Dj L2j
Can rewrite uncertainty system as

G∆ = S(∆, G). Easily generalized to rational dependence.

45 46

Dynamic SISO Uncertainty Mixture

Frequency domain experiments: Set of responses H(ω). Can have both parametric and dynamic uncertainty together:
 
1 1+W2 (s)∆2 (s)
G∆(s) =  
s+1 s+2
Cover H(ω) by set with more appropriate description:
1+W1 ∆1 1
H(ω) ⊂ G(iω) + W (iω)∆c for all ω ∈ R ∪ {∞} s+3 2s+1

where with real |∆1| < 1, dynamic ∆2∞ < 1.

- G(s) is real-rational proper


With nominal model and weighting
- ∆c is open unit disk around 0:    
1 1 1
∆c := {∆c ∈ C | |∆c| < 1} s+1 s+2 0 s+2 W2 (s)
G(s) = 1 1
, W (s) = 1
- W (s) is real-rational weighting. s+3 2s+1 s+3 W1 0
rewritten to
 
∆1 0
G∆(s) = G(s) + W (s) .
Uncertain system described as 0 ∆2(s)
  
0W Have to live with block-diagonal structure of uncertainty!
G∆ := S ∆, , ∆∈∆
I G
with uncertainty class

∆ := {∆ ∈ RH∞ | ∆(iω) ∈ ∆c for all ω ∈ R ∪ {∞}}

Observe: ∆ is just set of ∆ ∈ RH∞ with ∆∞ < 1!


47 48
Structure in Uncertainty Unstructured Uncertainty

Set of uncertainties consists of all MIMO model accurate at low frequencies.


 
∆1 0 Accuracy of all entries decreases at high frequencies.
2×2
∆= ∈ RH∞
0 ∆2
With SISO high-pass filter W , actual frequency response is
with real |∆1| < 1 and dynamic ∆2∞ < 1.
G(iω) + [W (iω)I]∆c

Capture structure and size of uncertainty as follows: with any unstructured complex matrix
 
Define value set
   ∆c =
∆11 ∆12
∆1 0 ∆21 ∆22
∆c := | ∆1 ∈ R, ∆2 ∈ C, |∆j | < 1 .
0 ∆2
that is bounded as
Actual class of uncertainties then given by
∆c = σmax(∆c) < 1.
∆ := {∆ ∈ RH∞ | ∆(iω) ∈ ∆c for all ω ∈ R ∪ {∞}}.

Full block uncertainty or unstructured uncertainty.


Uncertain system again described as
   Fits in general scenario with
0 I
G∆ := S ∆, , ∆ ∈ ∆. ∆c := {∆c ∈ C2×2 | ∆c < 1}.
W G

49 50

Unstructured versus Structured Other Typical Structures how Uncertainties could Enter

Individual weightings and bounds on elements: Additive uncertainty:


    
W11(iω)∆11 W12(iω)∆12 0 W2
G(iω) + G + W1∆W2 = S ∆, .
W21(iω)∆21 W22(iω)∆22 W1 G
with |∆11| < 1, |∆12| < 1, |∆21| < 1, |∆22| < 1. Input-output multiplicative uncertainty:
  
  0GG
Deviation can be rewritten to  ∆1 0  
  (I + ∆1)G(I + ∆2) = S  ,  0 0 I 
0 ∆2
   ∆11 0
 I GG
W11(iω) 0 W12(iω) 0  ∆21 0 
 
0 W21(iω) 0 W22(iω)  0 ∆12 
 Factor uncertainty: Let G2 have proper inverse. Then
0 ∆22
(G1 + ∆1)(G2 + ∆2)−1 =
or to    
  
∆1 0 −G−1
2 G−1
2
   ∆11 0 0 0

W11(iω) 0
 =S , .
1010  0   W21(iω)  ∆2 I −G1G−1
2 G1 G2
−1
 0 ∆21 0  0 .
0101  0 0 ∆12 
0   0 W12(iω) 

0 0 0 ∆22 0 W22(iω) Can iterate procedure.
Which should we take? Can introduce weightings a posteriori.
If we insist on |∆jk | < 1, have to take second one!

51 52
Summary: Component Uncertainties Pulling Uncertainties out of Interconnections

Uncertain components could be described as Pull uncertainties out of component:

G∆ = S(∆, G), ∆ ∈ ∆
6@

where G involves nominal system and weightings. 


F j
Class of uncertainties is
t Q
∆ := {∆ ∈ RH∞ | ∆(iω) ∈ ∆c for all ω ∈ R ∪ {∞}} „ r `
L  
with set ∆c of complex matrices defining structure, size. L L

z
6@ L
Could work with set ∆c of block-diagonal matrices
 
Disconnect K and ∆ to get P :
δ1I 0
 
 ... 
  6@
 
 δr I 
∆c =   with δj ∈ R, ∆j ∈ Cpj ×qj
 ∆ 1 
  F j
 ... 
 
t Q
0 ∆f
„ r
that are bounded as L ` 
L L
∆c < 1. z
6@ L

53 54

Structure Cannot be Avoided General Framework

Multiple unstructured uncertainties in several components Open-loop interconnection described as


      
⇓ z∆ w∆ P11 P12 P13 w∆
      
 zp  = P  wp  =  P21 P22 P23   wp  .
Structured uncertainty for interconnection.
y u P31 P32 P33 u

Reconnect controller as u = Ky to obtain closed-loop in-


6@ terconnection described as
   
F@ j@
F J Q z∆ w∆
Q j

zp
= S(P, K)
wp
.
„ 
L L  t L L L
r ` Reconnect uncertainty as w∆ = ∆z∆ to obtain perturbed
z closed-loop interconnection described as
6@ L
zp = S(∆, S(P, K))wp = S(S(∆, P ), K)wp.

Will lead to interconnection uncertainty


    
w1 ∆G 0 z1 For S(P, K), use abbreviation
= .    
w2 0 ∆K z2 N11 N12 M N12
N= = .
N21 N22 N21 N22
M is transfer matrix seen by ∆.

55 56
Fundamental Hypotheses Robust Stability

Controlled uncertain system described as Robust Stabilization


   
z∆ w∆ Say that
   
 zp  = P  wp  , u = Ky, w∆ = ∆z∆, ∆ ∈ ∆.
K robustly stabilizes S(∆, P ) against ∆
y u
if K stabilizes S(∆, P ) for any uncertainty ∆ contained in
Hypotheses class ∆.

• P is a generalized plant.
• With value set of complex matrices ∆c (structure, size): Robust Stability Analysis Problem
For given and fixed controller K, test whether it
∆ = {∆ ∈ RH∞ | ∆(iω) ∈ ∆c for ω ∈ R ∪ {∞}}.
robustly stabilizes S(∆, P ) against ∆.
Value set ∆c is star-shaped with center 0 :
Robust Stability Synthesis Problem
∆c ∈ ∆c ⇒ τ ∆c ∈ ∆c for all τ ∈ [0, 1]. Design a controller K that robustly stabilizes S(∆, P )
against ∆.
• For all ∆c ∈ ∆c,

I − P11(∞)∆c is non-singular.
Let’s turn to analysis.

57 58

Reduce to Transfer Matrix Seen by Uncertainty Proof

Recall abbreviation With any ∆ ∈ ∆, have to check that


     
M N12 zp wp
S(P, K) = N = . = S(∆, P ) , u = Kv + v1, v = y + v2
N21 N22 y y
   
wp zp
Theorem    
defines proper and stable system  v1  →  u .
If K stabilizes P , and if
v2 v
I − M ∆ has a proper and stable inverse for all ∆ ∈ ∆, System can be written as
   
then K robustly stabilizes S(∆, P ) against ∆. z∆ w∆
   
 zp  = P  wp  , u = Kv+v1, v = y+v2, w∆ = ∆z∆.
y u
Recall that I − M ∆ has proper and stable inverse iff
Absorbing controller leads to
det(I − M (s)∆(s)) = 0 for all s ∈ C0 ∪ C+ ∪ {∞}.     
z∆ M N12 H13 H14 w∆
Still hard to test!     
 zp   N21 N22 H23 H24   wp 
 =  
 u   H H H H   v  , w∆ = ∆z∆.
   31 32 33 34   1 
v H41 H42 H43 H44 v2

Since K stabilizes P , all transfer matrices are stable.


Since (I − M ∆)−1 is stable, upper LFT is stable.

59 60
Example: Spinning Satellite Stability Test

Determinant of
Parametric input multiplicative uncertainty  
    δ1
1 + s+1 aδ2
1 s − a2 a(s + 1) δ1 0 I − M (s)∆ = −aδ1
s+1
δ2
I+ 1 + s+1
s2 + a2 −a(s + 1) s − a2 0 δ2 s+1

equals
with    2 
1
∆(s) =
δ1 0
∈ R2×2. 2
s + (2 + δ1 + δ2)s + (1 + δ1 + δ2) + (a2 + 1)δ1δ2 .
(s + 1)
0 δ2
Only stable zeros if

2 + δ1 + δ2 > 0, (1 + δ1 + δ2) + (a2 + 1)δ1δ2 > 0.


6@

For a = 10, plot region of (δ1, δ2) where not true:


Q
F  j 1
Region of Instability for a=10

„ 
L r  ` L t L L 0.8

0.6

z
0.4

6@ L 0.2

−0.2

−0.4

If controlled with K = I, transfer matrix seen by ∆ is


  −0.6

1 −1 −a −0.8

M (s) = .
s+1 a −1 −1
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

61 62

Reduction to Test on Imaginary Axis Idea of Proof

Theorem (I − M (s)∆(s))−1 unstable.


Suppose M is proper and stable. If Hence det(I − M (s)∆(s)) has zero s1 in C+.
det(I − M (iω)∆c) = 0 for all ∆c ∈ ∆c, ω ∈ R ∪ {∞}, Follow zeros of det(I − M (s)[τ ∆(s)]) for τ = 1 . . . 0:
then

I − M ∆ has a proper and stable inverse for all ∆ ∈ ∆. {EMF, {„BRR‚RSs-$RSPB„ RB8‚
+ sS}B$tSX[[)7

Straightforward consequence: Fundamental Result.

X@
Corollary pMF,
If K stabilizes P , and if

det(I − M (iω)∆c) = 0 for all ∆c ∈ ∆c, ω ∈ R ∪ {∞},


Bt‚S9‚„BS$t
then K robustly stabilizes S(∆, P ) against ∆. sjjS9‚„BRS$t „Y}SPB„S+[)d
jY}SPB„S+[[ Y(

Have to check non-singularity of I − M (iω)∆c for all fre-


quencies (including infinity) and for values that can be taken det(I − M (s)[τ0∆(s)]) has zero on axis.
by frequency response of uncertainty.
Contradiction.

63 64
Construction of Destabilizing Perturbations Conditions to Guarantee Success

Suppose test fails. Then there exist frequency ω0 ∈ R∪{∞} Constructed ∆ is certainly destabilizing if
and complex matrix ∆0 ∈ ∆c such that
• ω0 = ∞
I − M (iω0)∆0 is singular.
• or if ω0 is finite, if
 
Find proper and stable ∆(s) with A − iω0I 0 B1 B2
 
 0 ∆0 −I 0  has full row rank,
∆(iω0) = ∆0 and ∆(iω) ∈ ∆c for all ω ∈ R ∪ {∞}.
C1 −I D11 D12
and if
 
A − iω0I 0 B1
Trivial if ∆0 is real matrix.  
 0 ∆0 −I 
  has full column rank.
 −I D11 
Clear that ∆ renders (I − M ∆)−1 unstable.  C1 
C2 0 D21
Candidate for destabilizing perturbation. • or if ω0 is finite, if iω0 is no pole of P , if
 
I − P11(iω0)∆0 P12(iω) has full row rank,
Test whether K stabilizes S(∆, P ).
and if
 
I − ∆0P11(iω0)
has full column rank.
Answer no: Have found destabilizing perturbation. P21(iω0)

Answer yes: ??? (This can happen!!!)


65 66

Example by Hand Example By Hand

Consider Consider
1 + ∆1(s)
y(s) = u(s).
s+α det(I − M (iω)∆(iω)) =
Pull out ∆1 and α:     
10 1 −1  
     = det − ∆1(iω) −α =
01 iω + 1 1
z1(s) 0 0 1 w1(s)  
     1
 z2(s)  =  1/s −1/s 1/s   w2(s)  = det 1 + (∆1(iω) + α) .
y(s) 1/s −1/s 1/s u(s) iω + 1

P (s)
Nonzero if and only if
    
w1(s) ∆1(s) 0 z1(s) ∆1(iω) + α = −(iω + 1).
= .
w2(s) 0 α z2(s)
 Holds for example for
∆(s)

α1 < α, −1 − α1 < Re(∆1(iω)).


Control P with K(s) = −1 to get
  Have RS for stable ∆ with frequency response in
−1/(s + 1) 1/(s + 1)   
S(P, K)(s) = M (s) = ∆1 0
1/(s + 1) −1/(s + 1) ∆c = | α1 < α, Re(∆1) > −1 − α1
  0 α
1 −1  
= 1−1 .
s+1 1

67 68
Definitions for Complex Matrices Various Sufficient Conditions

Eigenvalues: λ(Mc) = {λ : det(λI − Mc) = 0} det(I − M (iω)∆c) = 0



Spectral Norm: Mc = σ(Mc) 1 ∈ λ(M (iω)∆c)

Spectral Radius: ρ(Mc) = max{|λ| : λ ∈ λ(Mc)}
ρr (M (iω)∆c) < 1
Real SR: ρr (Mc) = max{|λ| : λ ∈ R ∩ λ(Mc)} ⇑
ρ(M (iω)∆c) < 1
Relations: ρr (Mc) ≤ ρ(M ) ≤ Mc

M (iω)∆c < 1
{EMF,

M (iω)∆c < 1.
,-  , ' M- ,

w[ -D Can continue with

1
pMF, M (iω) ≤
'„M- ,

r
if matrices in ∆c are bounded as

∆c < r for all ∆c ∈ ∆c.


‚$‚t%sjZ‚R

69 70

Small-Gain is Sufficient Full Block Uncertainty: Small-Gain is Exact

Suppose we know that Suppose we know that

∆c < r for all ∆c ∈ ∆c ∆ equals set of all ∆ ∈ RH∞ with ∆∞ < r.

or, equivalently,
Theorem
∆∞ < r for all ∆ ∈ ∆. Let M be proper and stable. Then
1
Corollary M ∞ ≤
r
If M is proper and stable, and if if and only if
1
M ∞ ≤ I − M ∆ has a proper and stable inverse for all ∆ ∈ ∆.
r
then I −M ∆ has proper and stable inverse for all ∆ ∈ ∆.
For full block uncertainty, norm condition is also necessary!
Norm condition is sufficient! Ignores structure.

This means:
1
Corollary M ∞ >
r
If K stabilizes P , and if implies that
1
M ∞ ≤ I − M ∆ has no proper, stable inverse for some ∆ ∈ ∆.
r
then K robustly stabilizes S(∆, P ) against ∆.

71 72
Construction of Destabilizing Perturbation Construction of Destabilizing Perturbation

1 Have to find dynamic ∆ with ∆(iω0) = ∆0 and ∆∞ < r.


Let M (iω0) > .
r
If u and v are real, ∆0 is real. Choose ∆(s) := ∆0.
Otherwise apply interpolation Lemma to components of
 
Exists u = 0 with [M (iω0)M (iω0)∗]u = M (iω0)2u. v1  
 .  u∗
v =  . , = u 1 · · · u q .
u2
M (iω0)∗u u∗ vp
Define v := and ∆0 := v .
M (iω0) 2 u2
Exist αj ≥ 0 and βj ≥ 0 such that
Implies s − αj s − βj
∗ uj (s) = ±|uj | and vj (s) = ±|vj |
v 1 M (iω0) u 1 s + αj s + βj
∆0 ≤ ≤ ≤ <r
u u M (iω0)2 M (iω0) satisfy
and uj (iω0) = uj , |uj (iω)| = |uj |
[I − M (iω0)∆0]u = u − M (iω0)v =
vj (iω0) = vj , |vj (iω)| = |vj |.
M (iω0)M (iω0)∗u M (iω0)2
=u− = u − u = 0.
M (iω0)2 M (iω0)2
Then the dynamic uncertainty
 
v1(s)  
 
Have constructed complex matrix ∆0 with ∆(s) =  ..  u1(s) · · · uq (s)
vp(s)
∆0 < r and det(I − M (iω0)∆0) = 0.
does the job.

73 74

Summary of Robust Stability Tests Standard Block-Diagonal Structure

For general uncertain interconnections, have seen Assume from now on: ∆c set of all
 
p1 I 0
• ... how to pull out uncertainties to compute the transfer  
 ... 
matrix M seen by the uncertainties in controlled inter-  
 
 pn r I 
connection.  
 δ1I 
 
• ... that robust stability is guaranteed if controller is nom- 
∆c =  . . .  ∈ Cp×q

 
inally stabilizing and if det(I − M ∆) has no zeros on  δnc I 
 
extended imaginary axis (determinant test).  ∆ 
 1 
 ... 
• ... how to check whether test is tight by constructing  
0 ∆nf
destabilizing perturbations.
with
• ... that small-gain theorem is exact for full block uncer-
- pj ∈ R with |pj | < 1
tainties.
- δj ∈ C with |δj | < 1

Continue with block-diagonal uncertainty structure. - ∆j ∈ Cpj ×qj with ∆j  < 1.

Will arrive at structured singular value.


Hence we have
- nr real repeated blocks
- nc complex repeated blocks
- nf full (complex) blocks.
75 76
Non-Singularity Margin Non-Singularity Margin

For robust stability, have to check Largest r such that


det(I − M (iω)∆c) = 0 for all ∆c ∈ ∆c, ω ∈ R ∪ {∞} det(I − Mc∆c) = 0 for all ∆c ∈ r∆c.

Let Mc ∈ Cq×p be a complex matrix.

Test whether „‚tI‚„RS{[T-[~


det(I − Mc∆c) = 0 for all ∆c ∈ ∆c. R$tZjs„
„[1
Answer: Yes or No. „[d
„[~ [~
[)(
Modification:

[ 3B„SsjjS[[S$tR$I‚U
Determine largest r such that {T-[StBtTR$tZjs„
det(I − Mc∆c) = 0 for all ∆c ∈ r∆c.

Answer: Number r∗. (Non-singularity margin.)

If r∗ < 1 then answer is no.


If r∗ ≥ 1 then answer is yes.
77 78

The Structured Singular Value SSV Test of Robust Stability

Definition Theorem
The structured singular value (SSV) of the matrix Mc with Suppose M is proper and stable. Then
respect to the set ∆c is the number
µ∆c (M (iω)) ≤ 1 for all ω ∈ R ∪ {∞}
1
.
sup{r | det(I − Mc∆c) = 0 for all ∆c ∈ r∆c} if and only if
and denoted as I − M ∆ has a proper and stable inverse for all ∆ ∈ ∆.
µ∆c (Mc).

Destabilizing perturbations: Construct blockwise.


Upper bound on SSV:

Suppose that µ∆c (Mc) ≤ γ1. Consequence: Fundamental result of course.


1
Then I −Mc∆c is non-singular for all ∆c in the class γ1 ∆c .
Corollary
If K stabilizes P , and if

Lower bound on SSV: µ∆c (M (iω)) ≤ 1 for all ω ∈ R ∪ {∞}

Suppose that µ∆c (Mc) > γ2. then K robustly stabilizes S(∆, P ) against ∆.
1
Then there exists ∆c ∈ γ2 ∆c such that I − Mc∆c singular.

79 80
SSV Test of Hypothesis on P11 Other Value Sets: Weightings

With complex U and V want to test


In general hypothesis, had to test whether
ˆ c) = 0 for all ∆
det(I − Mc∆ ˆ c ∈ U ∆cV.
I − P11(∞)∆c is non-singular

for all ∆c ∈ ∆c.


True if and only if

True if and only if µ∆c (V McU ) ≤ 1.

µ∆c (P11(∞)) ≤ 1.

Why?

Test of whether upper LFT with ∆ is well-defined can be Just follows from
performed with SSV. det(I − Mc[U ∆cV ]) = 0

if and only if
Remark. Many more applications of SSV!
det(I − [V McU ]∆c) = 0.

81 82

Special Value Sets: Explicit Computation Why?

One full complex block:


∆c = {∆c ∈ Cp×q | ∆c < 1} - one full complex block:
Mc ≤ 1 ⇒ det(I − Mc∆c) = 0 for all ∆c < 1
µ∆c (Mc) = Mc.
⇒ µ∆c (Mc) ≤ 1.

Suppose λ := Mc > 1.


Note the consequence:
Exists u with u∗u = 1 and McMc∗u = λ2u.
det(I − Mc∆c) = 0 for all ∆c ∈ Cp×q , ∆c < 1
1
∆c = (Mc∗u)u∗ satisfies ∆c < 1 & (I − Mc∆c)u = 0.
if and only if λ
Mc ≤ 1. This implies µ∆c (Mc) > 1.

∆c = {δI | δ ∈ C, |δ| < 1} - one repeated complex block: One complex repeated block:

µ∆c (Mc) = ρ(Mc) ρ(Mc) ≤ 1 ⇔ All eigenvalues inside unit disk


1 1
⇔ det( I − Mc) = 0 for | | > 1
∆c = {δI | δ ∈ R, |δ| < 1} - one repeated real block: δ δ
⇔ det(I − Mcδ) = 0 for |δ| < 1
µ∆c (Mc) = ρr (M )
⇔ µ∆c (Mc) ≤ 1.

One real repeated block: Similar.

83 84
Dependence on Value Set Calculation of Improved Lower Bound

Let U denote unitary elements in ∆c:


In general, µ grows with uncertainty set:
U = {U ∈ ∆c : U ∗U = I}.
∆1 ⊂ ∆2 implies µ∆1 (Mc) ≤ µ∆2 (Mc).
If U ∈ U then µ∆c (Mc) = µ∆c (McU ) and hence

ρr (McU ) ≤ µ∆c (McU ) = µ∆c (Mc).

In general we have Consequently

{δI | δ ∈ R, |δ| < 1} ⊂ ∆c ⊂ {∆c ∈ Cp×q | ∆c < 1}.


sup ρr (McU ) ≤ µ∆c (Mc)
U ∈U

Leads to simple bounds


That’s how lower bound is calculated in µ-tools.

ρr (Mc) ≤ µ∆c (Mc) ≤ Mc. No real blocks: Equality with complex spectral radius:

max ρ(McU ) = µ∆c (Mc).


U ∈U

85 86

Continuity Improve Upper Bound - Idea

Suppose det(D) = 0, D∆c = ∆cD for all ∆c ∈ ∆c.


If there are real blocks (nr ≥ 1), then
Then
µ∆c (Mc) can be discontinuous in Mc.
det(I − Mc∆c) = det(D−1) det(D) det(I − Mc∆c)
Hence 
1

ω → µ∆c (M (iω)) can have jumps! = det(D−1[I − Mc∆c]D)


= det(I − D−1[Mc∆c]D)
= det(I − [D−1McD]∆c)

Example: One real repeated block: and hence


  
1 m 0 for m = 0 µ∆c (Mc) = µ∆c (D−1McD).
ρR =
−m 1 1 for m = 0. Therefore

µ∆c (Mc) = µ∆c (D−1McD) ≤ D−1McD.


If there are no real blocks (nr = 0),
Observe that D−1McD varies with D.
µ∆c (Mc) is continuous in Mc.

Hence Minimize D−1McD to get best bound.


ω → µ∆c (M (iω)) does not have jumps.
Notation: D is called scaling.

87 88
Structure of Scalings Calculation of Improved Upper Bound

Recall structure of ∆c in ∆c: We infer


 
p1 I 0
 . .. 
 pn r I 
 δ1I  µ∆c (Mc) ≤ inf D−1McD.
 ...  D∈D
 
∆c =  δnc I .
 
 ∆ 1  Optimization problem nicely solvable: LMIs.
 ... 
 ∆nf −1 
Gap might be large.
0 ∆nf
Gap can be reduced with more scalings.
Choose D as set of matrices Latter technique used in µ-tools.
 
P1 0
...
 
 Pn r 
 D1  Nice non-trival result:
 ... 
D=  Dnc


 d1I 
 ...  Suppose that
 
dnf −1I 2(nr + nc) + nf ≤ 3.
0 I
where Then upper bound computed in µ-tools is equal to SSV.

- Pj , Dj Hermitian positive definite


- dj positive real scalars.

Have D∆ = ∆D and det(D) = 0.


89 90

Summary of SSV Summary of SSV Robust Stability Test

Value set ∆c and matrix Mc define SSV µ∆c (Mc). M real-rational, proper, stable.

Can calculate lower bound and upper bound Suppose


l∆c (Mc) < µ∆c (Mc) ≤ u∆c (Mc). µ∆c (M (iω)) ≤ γ1 for all ω ∈ R ∪ {∞}.

Then
Interpretation of upper bound: 1
I − M ∆ has proper, stable inverse for all ∆ ∈ ∆.
1 γ1
det(I − Mc∆c) = 0 for all ∆c ∈ ∆c.
u∆c (Mc)
Interpretation of lower bound:
1
det(I − Mc∆c) = 0 for some ∆c ∈ ∆c. Suppose
l∆c (Mc)
µ∆c (M (iω0)) > γ2 for some ω0 ∈ R ∪ {∞}.

Then
Upper bound can be calculated with set of scalings D (with 1
there exists ∆ ∈ ∆ for which I − M ∆ does not
γ2
structure opposite to that of ∆) as have proper, stable inverse.
u∆c (Mc) = inf D−1McD.
D∈D

91 92
Example Two Full Complex

Choose  
1 s−2
1 3.5
 2s+1 2s+4 
M (s) =  −1 s2+s+1
s 1 . tB„8
 (s+1)2  [d
3s −1
s+5 4s+1 1 3

{B8}j‚- 77z
Three cases: ∆c all matrices with ∆c < 1 structured as 2.5 R}‚{„sjS„sI$ZR
two full complex blocks: [1
  2
∆1 0
∆c = , ∆1 ∈ C2×2, ∆2 ∈ C [n
0 ∆2
1.5

one repeated complex block, one full complex block:


 
δ1I2 0 1 -2
∆c = , δ1 ∈ C, ∆2 ∈ C 10 10
-1
10
0
[([)10 10
2

0 ∆2

one repeated real block, one full complex block: 1


For all ∆c ∈ ∆c: det(I − M (iω0)∆c) = 0
  γ2
δ1I2 0
∆c = , δ1 ∈ R, ∆2 ∈ C 1
0 ∆2 For γ < γ2 exists ∆c ∈ ∆c: det(I − M (iω0)∆c) = 0.
γ

Margin γ1 for one full complex 3 × 3-block.


Margin γ3 for one repeated complex 3 × 3-block.

93 94

One Complex Repeated, One Full One Real Repeated, One Full

1.7 1.8
[d
[d
1.6 [1
1.6 [1
1.4

Z}}‚„ Z}}‚„
1.5 ABZtI 1.2
ABZtI
[n 1
1.4 jBb‚„ jBb‚„
ABZtI 0.8 [n ABZtI

1.3 -2 0.6 -2
10 [([)(1 10
0
10
1
10
2
10 10
-1
10
0
10
1
10
2

1
For all ∆c ∈ ∆c: det(I − M (iω0)∆c) = 0 Upper bound ≤ γ1 for all frequencies:
3
0
1
2 1
0
6
.5 .7
1

γ1
1
1 (I − M ∆)−1 proper, stable for all uncertainties ∆ ∈ ∆.
Exists ∆c ∈ ∆c: det(I − M (iω0)∆c) = 0. γ1
γ2
Lower bound > γ2 at some frequency:
1
Can destabilize (I − M ∆)−1 with some ∆ ∈ ∆.
γ2

95 96
Nominal and Robust Performance Analysis Nominal Performance

Nominal Performance Suppose K stabilizes P and leads to closed-loop system

• Response to persistent signals z = S(P, K)w.

• Disturbance suppression and model matching Generalized disturbances:

• The role of weightings - Decaying:

w is of finite energy with norm w2.


Robust Performance Analysis
- Persistent: Sinusoid
• General framework for robust performance analysis
w(t) = w0eiω0t with norm wRMS := w0.
• SSV test for robust performance
- Persistent: Sum of sinusoids
• Scaling properties of SSV 
 N

N

w(t) = wj eiωj t with norm wRMS := wj 2
Summary: Robust stability and performance analysis j=1 j=1

where ωj are pairwise different.

Concentrate on second two cases.

97 98

Response to Sums of Sinusoids Effects of Weightings


 
A B 
N
Response of S(P, K) = to w(t) = wj eiωj t:
C D j=1
Signal based interpretation of


N 
N ZS(P, K)W ∞ ≤ 1
z(t) = S(P, K)(iωj )wj eiωj t + CeAt(iωj I−A)−1Bwj .
j=1 j=1 with real-rational proper stable weightings W and Z.

steady-state response zs(t)

Suppose that, up to transients, disturbances given as


Norm of steady-state response:

N 
N
 w(t) = W (iωj )wj eiωj t
with wj 2 ≤ 1.
 N
 j=1 j=1
zsRMS = S(P, K)(iωj )wj 2
j=1
 Then z = S(P, K)w satisfies, up to transients,
 N

≤ S(P, K)∞ wj 2 = S(P, K)∞wRMS. 
N 
N

j=1
z(t) = zj eiωj t with Z(iωj )zj 2 ≤ 1.
j=1 j=1

Leads to following alternative interpretation of H∞-norm: For sinusoids: Amplitudes in frequency dependent ellipsoids.

zsRMS
sup = S(P, K)∞.
z=S(P,K)w, wRMS >0 wRMS

99 100
Loop-Shaping Put into Generalized Plant Framework

Let W , Z be real-rational proper stable weightings and Wm Define  


be real-rational proper stable ideal model. Z[P11 − Wm]W ZP12
P˜ = .
P21W P22
Loop-shaping interpretation of
Since S(P̃ , K) = Z[S(P, K) − Wm]W , infer that
Z [S(P, K) − Wm] W ∞ ≤ 1

with real-rational proper stable weightings W and Z: Z[S(P, K) − Wm]W ∞ ≤ 1


if and only if

Weighted bound on frequency response: S(P̃ , K)∞ ≤ 1.

Z(iω)[S(P, K)(iω) − Wm(iω)]W (iω) ≤ 1


Remarks.
for all ω ∈ R ∪ {∞}.
• Performance weightings are auxiliary filters.

• Wm = 0: Shape S(P, K) by pushing it towards ideal • Require K to stabilize P̃ .


model Wm over frequency band. Hence P˜ has to be generalized plant.

• Wm = 0: Shape S(P, K) by rendering it small over • If also P is generalized plant:


frequency band. Any K that stabilizes P̃ also stabilizes P and vice-versa.

Assume: Performance weightings incorporated in P .

101 102

Incorporate Performance Weightings General Paradigm: Robust Performance

Interconnection with performance weightings: Controlled uncertain system described as


   
z∆ w∆
6@ P-    
 zp  = P  wp  , u = Ky, w∆ = ∆z∆, ∆ ∈ ∆.
y u
KF jK
. L P
h
Hypotheses
r <
• P is a generalized plant.

• ∆c set of block-diagonal matrices ∆c with ∆c < 1.
Class of uncertainties is

Incorporated in generalized plant: ∆ = {∆ ∈ RH∞ | ∆(iω) ∈ ∆c for ω ∈ R ∪ {∞}}.

KF jK • For all ∆c ∈ ∆c,


hK
I − P11(∞)∆c is non-singular.
r <
• Performance specification:
 H∞-norm of channel wp → zp is smaller than one.

103 104
Robust Performance Frequency by Frequency Test

In case that Recall the notation


      
K stabilizes P∆ = S(∆, P ) and S(P∆, K)∞ ≤ 1 z∆ w∆ M N12 w∆
= S(P, K) =
zp wp N21 N22 wp
for all uncertainties ∆ in the class ∆, we say that
for the unperturbed controlled system. Recall also
K achieves robust performance for S(∆, P ) against ∆. S(P∆, K) = S(∆, N ) = N22 + N21∆(I − M ∆)−1N12.

Controller achieves nominal performance if


Robust Performance Analysis Problem
N22(iω) ≤ 1 for all ω ∈ R ∪ {∞}.
For given and fixed controller K, test whether it
achieves robust performance for S(∆, P ) against ∆.

Robust Performance Synthesis Problem Controller achieves robust stability if


Design a controller K that achieves robust performance for
µ∆c (M (iω)) ≤ 1 for all ω ∈ R ∪ {∞}.
S(∆, P ) against ∆.

Controller achieves robust performance if, in addition,


Let’s turn to analysis. N22(iω) + N21(iω)∆c(I − M (iω)∆c)−1N12(iω) ≤ 1

for all ω ∈ R ∪ {∞} and for all ∆c ∈ ∆c.

Have to check frequency by frequency conditions!


105 106

Excursion: Linear Algebra Problem Excursion: Line of Reasoning

Given set ∆c and complex matrix ˆ c := {∆


Define ∆ ˆ c ∈ Cp2×q2 | ∆
ˆ c < 1}.
 
Mc N12
Nc = with N22 of size q2 × p2. For all ∆c ∈ ∆c
N21 N22

det(I − Mc∆c) = 0 and S(∆c, Nc) ≤ 1


Test whether
ˆc
ˆc ∈ ∆
if and only if for all ∆c ∈ ∆c, ∆
µ∆c (Mc) ≤ 1
and
ˆ c) = 0
det(I − Mc∆c) = 0 and det(I − S(∆c, Nc)∆
N22 + N21∆c(I − Mc∆c)−1N12 ≤ 1 for all ∆c ∈ ∆c.
ˆc
ˆc ∈ ∆
if and only if for all ∆c ∈ ∆c, ∆
 
I − Mc∆c −N12∆ ˆc
Trick: det = 0
−N21∆c I − N22∆ ˆc
N22 + N21∆c(I − Mc∆c)−1N12 ≤ 1

if and only if if and only if for all ∆c ∈ ∆c, ∆ ˆc


ˆc ∈ ∆
   
det(I −S(∆c, Nc)∆ ˆ c ∈ Cp2×q2 , ∆
ˆ c) = 0 for all ∆ ˆ c < 1. Mc N12 ∆c 0
det I − = 0.
N21 N22 0 ∆ˆc

107 108
Excursion: Main Loop Theorem Other than Bound 1 - Rescale

Define set of extended matrices


   SSV-inequality
∆c 0 ×q
ˆ c ∈ C 2 2 , ∆
ˆ c < 1 .   
∆e := : ∆c ∈ ∆c, ∆ p
γ1I 0
0 ∆ˆc
µ∆e Nc ≤ γ3
0 γ2I
Previous structure extended with one full block.
equivalent to γ3
µ∆c (Mc) ≤
Main Loop Theorem γ1
Conditions and
µ∆c (Mc) ≤ 1 and S(∆c, Nc) ≤ 1 for all ∆c ∈ ∆c γ3 γ1
S(∆c, Nc) ≤ for all ∆c ∈ ∆c.
γ2 γ3
equivalent to
µ∆e (Nc) ≤ 1.

Can investigate trade-off between


Desired test reduced to just another SSV-test on matrix Nc
for extended structure ∆e. uncertainty size and worst norm S(∆c, Nc)

by varying γ1, γ2 and computing SSV giving γ3.

109 110

Main Analysis Results in SSV Theory Summary

Perturbed controlled system


Theorem     
  z∆ M N12 w∆
M N12 = , w∆ = ∆z∆
Let N = be proper, stable. zp N21 N22 wp
N21 N22 
N
For all ∆ ∈ ∆,
with proper and stable ∆ that is only restricted through
(I − M ∆)−1 ∈ RH∞ and S(∆, N )∞ ≤ 1 ∆(iω) ∈ ∆c for all ω ∈ R ∪ {∞}.

if and only if

µ∆e (N (iω)) ≤ 1 for all ω ∈ R ∪ {∞}. Summary


Controller K stabilizing P achieves
• Robust stability if
Immediate consequence: Central result. µ∆c (M (iω)) ≤ 1 for all ω ∈ R ∪ {∞}.

Corollary • Nominal performance if


If K stabilizes P , and if N22(iω) ≤ 1 for all ω ∈ R ∪ {∞}.
µ∆e (N (iω)) ≤ 1 for all ω ∈ R ∪ {∞}, • Robust performance if
then K achieves robust performance for S(∆, P ) against µ∆e (N (iω)) ≤ 1 for all ω ∈ R ∪ {∞}.
∆ ∈ ∆.

111 112
Summary in Pictures Example

RS: SSV test left-uppoer block M block of N . Suppose the controlled system is described with
 
NP: SV test on right-lower block N22 of N . 1
1 s−2 s−0.1
2s+1 2s+4 s+1
 1 
RP: SSV test on whole N with extended structure.  −1 s2+s+1 s
0.1 

N (s) =  3s (s+1)2 
−1 10 
 s+5 4s+1 1 s+4 
1 0.1 s−1
∆ 2
s+2 s +s+1 s+1 1
z∆ w∆
and ∆c is set of ∆c with ∆c < 1 and
M N12  
∆1 0
zp N21 N22 wp ∆c = , ∆1 ∈ C2×2, ∆2 ∈ C.
0 ∆2
Extended set ∆e consists of ∆e with ∆e < 1 and
RP test is identical to RS test for system  
∆1 0 0
 
∆e =  0 ∆2 0  , ∆1 ∈ C2×2, ∆2 ∈ C, ∆ ˆ ∈ C.
∆ 0 0 ∆ ˆ
z∆ w∆
M N12 RS: Plot ω → µ∆c (M (iω)).
N21 N22
NP: Plot ω → N22(iω).
zp wp
ˆ
∆ RP: Plot ω → µ∆e (N (iω)).

113 114

Frequency-Wise Interpretation of SSV Plot of N Interpretation for all Frequencies

3.4

3.2 tB„8 [@


2.7 [
3
Z}}‚„SABZtI
2.8

2.6
[d
2.4
[1 jBb‚„SABZtI 2.6
2.2

[n
2

77zSi7 2.5
1.8

1.6

[(
1.4 1
-2 -1 0 2
10 10 10 10 10

2.4 -2 -1 0 1 2
10 10 10 10 10
µ∆e (N (iω0)) ≤ γ1 implies
1 Upper bound ≤ γ1 = 2.72 for all frequencies:
S(∆c, N (iω0)) ≤ γ1 for all ∆c ∈ ∆c.
γ1
S(∆, N )∞ ≤ 2.72 for all ∆ ∈ 0.367∆.

µ∆e (N (iω0)) > γ2 implies Lower bound > γ2 = 2.71 for some frequency:
1
S(∆c, N (iω0)) > γ2 for some ∆c ∈ ∆c. S(∆, N )∞ > 2.71 for some ∆ ∈ 0.369∆.
γ2

115 116
Bring RP Level below 2 Nominal and Robust Controller Design

Multiply first block column of N with 0.5 - SSV plot:


• Preparation: Riccati equations and inequalities
Maximal upper bound 1.91 Maximal lower bound 1.883
1.95 • State-space computation of H∞-norm

1.9 • Bounded Real Lemma

1.85
• State-feedback H∞ control
1.8
• Output-feedback H∞ control
1.75

1.7 • Robust controller design is SSV-Minimization

• Scalings/controller iteration as heuristic approach


1.65

1.6 −2 −1 0 1 2
10 10 10 10 10
Summary of course
Upper bound ≤ 1.92 for all frequencies:
0.5 What can be expected using linear matrix inequalities?
S(∆, N )∞ ≤ 1.92 for all ∆ ∈ ∆.
1.92

≈ 0.26

117 118

Symmetric Matrices and Properties Lyapunov Inequalities

Let A be Hermitian: A = A∗. Suppose the symmetric X satisfies


- All eigenvalues are real. AT X + XA < 0.
- A positive definite: All eigenvalues positive. Then A is stable if and only if X > 0.
Write A > 0.
- A negative definite: All eigenvalues negative. Proof of if: Ax = λx, x = 0, implies
Write A < 0.
Re(λ)(x∗Xx) < 0.
- A positive semi-definite: All eigenvalues non-negative.
Write A ≥ 0. Since X > 0, infer Re(λ) < 0.

- A negative semi-definite: All eigenvalues non-positive. Proof of only if: Set P = AT X + XA. Then
! ∞
Write A ≤ 0. T
X=− eA tP eAt dt.
0

Semi-Ordering: Since P < 0, formula implies X > 0.

A < B means that A, B Hermitian and A − B < 0.


Suppose the symmetric X satisfies

Congruence Transformations: AT X + XA ≤ 0.
- T full column rank: A < B implies T T AT < T T BT . If A is stable then X ≥ 0. Converse not true.
T T
- T non-singular: A < B if and only if T AT < T BT .

119 120
ARE and ARI Hamiltonians

Data: Matrices A, Q symmetric, R ≥ 0 of size n × n. Define the Hamiltonian matrix


 
A R
Consider algebraic Riccati inequality (ARI) H= .
−Q −AT
AT X + XA + XRX + Q < 0
Why? If X solves ARE then
and algebraic Riccati equation (ARE)
    
AT X + XA + XRX + Q = 0 I 0 I 0 A + RX R
H = .
X I X I 0 −(A + RX)T
in symmetric unknown X.

Immediate consequence:
Main point: Characterization of solvability
If ARE has stabilizing solution X−, then H does not have
Test in terms of A, Q, R whether the ARE or the ARI does
eigenvalues on imaginary axis.
have a solution X.
If ARE has anti-stabilizing solution X+, then H does not
have eigenvalues on imaginary axis.
Special solutions of ARE:
X− stabilizing solution: A + RX− stable. (A, R) is controllable: Converse holds as well!

X+ anti-stabilizing solution: A + RX− anti-stable.

121 122

Main Result: (A, R) Controllable Main Result: (A, R) Stabilizable

Suppose (A, R) is controllable. Equivalent are Suppose (A, R) is stabilizable. Equivalent are
   
A R A R
• has no eigenvalues on imaginary axis. • has no eigenvalues on imaginary axis.
−Q −AT −Q −AT
• ARE has a stabilizing solution X−. • ARE has a stabilizing solution X−.
• ARE has a antistabilizing solution X+. • ARI has a solution.
• ARI has a solution. Any solution X of ARE or ARI satisfies
Any solution X of ARE or ARI satisfies X− ≤ X.
X− ≤ X ≤ X+. The stabilizing solution is unique.
Stabilizing and anti-stabilizing solutions are unique.

Similar result if (−A, R) is stabilizable. Trick:


Among all solutions of ARE (ARI), the
AT X + XA + XRX + Q =
- Stabilizing solution is smallest
= (−AT )(−X) + (−X)(−A) + (−X)R(−X) + Q.
- Anti-stabilizing solution is largest.
Reduced to result above.
If (A, R) is only stabilizable, X+ does generally not exist.
All the other statements remain valid.

123 124
Construction of (Anti) Stabilizing Solution Monotonicity

Schur decomposition: Can compute unitary T with Suppose


 
M M AT X + XA + XRX + Q = P.
11 12
T ∗HT =
0 M22 Subtract
where AT Z + ZA + ZRZ + Q = 0
M11 is of size n × n and stable. to get

(A + RZ)(X − Z) + (X − Z)(A + RZ)T +


Partition T into four n × n blocks as
  + (X − Z)R(X − Z) = P.
U ∗
T = .
V ∗
If P = 0 or P < 0, obtain with R ≥ 0
Can show that U is non-singular, and that
(A + RZ)(X − Z) + (X − Z)(A + RZ)T ≤ 0.
X− = V U −1

is stabilizing solution of ARE.


A + RZ is stable: Then X − Z ≥ 0.
A + RZ is anti-stable: Then X − Z ≤ 0.
If M11 has all its eigenvalues in C+, same construction leads
to anti-stabilizing solutin X+.

125 126

Example: Eigenvalues of Hamiltonian Example: Compute Solution

A=[0 1;1 1];R=[0 0;0 1];Q=[-2 1;1 4]; [n,n]=size(A);H=[A R;-Q -A’];[T,D]=eig(H);
for fa=linspace(1,2,1000); Z=[];
H=[A R;-Q*fa -A’];plot(eig(H),’.’); for j=1:2*n;
end; if real(D(j,j))<0;Z=[Z T(:,j)];end;
end;
2
U=Z(1:n,:);V=Z(n+1:2*n,:);X=V*U^(-1);
1.5

A’*X+X*A+X*R*X+Q =
1
1.0e-014 *
0.5 -0.5329 0.1776
0
0.3553 0.5329
eig(A+R*X) =
−0.5
-0.7849 + 1.0564i
−1
-0.7849 - 1.0564i
X =
−1.5
-2.7189 -2.7321
−2 -2.7321 -2.5697
−0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8
eig(X) =
-5.3774
0.0888

127 128
Computation of H∞-Norm Reduce to Test on Hamiltonian

Suppose M (s) = C(sI − A)−1B stable. Do not compute M ∞ < 1 if and only if

M ∞ = sup M (iω) λmax (M (s)∗M (s) − I) < 0, ∀s ∈ C0


ω∈R∪{∞}

by solving optimization problem. if and only if


 
λmax M (−s)T M (s) − I < 0, ∀s ∈ C0
Alternative: For γ > 0, test
if and only if
C(sI − A)−1B∞ < γ.  
det M (−s)T M (s) − I = 0, ∀s ∈ C0
in terms of A, B, C, γ. How?
if and only if
 
With substitution A − sI 0 B
 
1 1 det  −C T C −AT − sI 0  = 0, ∀s ∈ C0
B → B or C → C
γ γ 0 BT −I
reduced to bound 1. if and only if (Schur)
  
A BB T
det − sI = 0, ∀s ∈ C0
−C T C −AT
if and only if
 
A BB T
has no eigenvalues in C0.
−C T C −AT

Hamiltonian

129 130

H∞-Bound In Terms of Hamiltonian SVs of Frequency Response and EVs of Hamiltonian

Plot of singular values of C(iωI − A)−1B:


Theorem
Suppose M (s) = C(sI − A)−1B with A stable. Then 1.2

M ∞ < 1
1

if and only if
  0.8
T
A BB
H= has no eigenvalues in C0.
−C T C −AT 0.6

0.4

• Test bound γ > 0 with


0.2
1 1
BB T → BB T or C T C → C T C.
γ γ
0
0 2 4 6 8 10 12 14 16 18 20
• Not difficult to generalize to D = 0.
• Have actually obtained: Eigenvalues of Hamiltonian:
1.2 3.9 −3.9 −1.9 − 4.4i −1.9 + 4.4i 1.9 − 4.4i 1.9 + 4.4i
Set of eigenvalues of H on the imaginary axis
1 −6.2i 6.2i −3.5 3.5 −0.9i 0.9i
equals
0.8 −8.3i 8.3i −4.1 4.1 −1.8 1.8
Set of all iω for which 1 is a singular value of M (iω). 0.6 −10.9i 10.9i −5.6 5.6 −2.8i 2.8i
0.2 −30.7i 30.7i −10.5 10.5 −10.2i 10.2i

131 132
The Bounded Real Lemma General Setup for Nominal Controller Design

Let M (s) = C(sI − A)−1B with A stable. F j


h
Theorem F j
M ∞ < 1 if and only if exists solution of ARI r ` Bwh[[[D

AT X + XA + XBB T X + C T C < 0 

if and only exists stabilizing solution of ARE


!tjkS_‚„PB„8st{‚S]Ystt‚jSTSWBS=t{‚„s$tk
T T T
A X + XA + XBB X + C C = 0.

Minimize H∞ norm of transfer matrix z = S(P, K)w by


designing stabilizing controller K.
Dualize: C(sI − A)−1B∞ = B T (sI − AT )−1C T ∞.
Includes many specific configurations:
Theorem
M ∞ < 1 if and only if exists solution of ARI - Shaping closed-loop transfer matrices
- Match a given desired model
AY + Y AT + BB T + Y C T CY < 0
- Signal-based specifications (disturbance and noise sup-
if and only exists stabilizing solution of ARE pression, command tracking)
AY + Y AT + BB T + Y C T CY = 0. - One- and two-degree of freedom controllers

Weightings absorbed in P .

133 134

System Descriptions Formulation of the H∞ Problem

Generalized Plant: Minimize




 ẋ = Ax + B1w + B2u S(P, K)∞ = C(sI − A)−1B + D∞
P z = C1x + D11w + D12u

 over all controllers such that
y = C2x + D21w
A has all its eigenvalues in C−.
Controller: 
ẋK = AK xK + BK y
K
u = CK xK + DK y
Solved via suboptimal H∞ Problem
Controlled System:
 For fixed number γ > 0, test whether there exists a con-
ξ˙ = Aξ + Bw
S(P, K) troller such that
z = Cξ + Dw
C(sI − A)−1B + D∞ < γ, λ(A) ⊂ C−.
with A, B, C, D given by
Any such controller is called γ-suboptimal.
 
A + B2DK C2 B2CK B1 + B2DK D21
 
 BK C2 AK BK D21 .
Compute minimal possible γ by bisection.
C1 + D12DK C2 D12CK D11 + D12DK D21

135 136
Why can we assume D22 = 0? Our Hypotheses

Can push D22 to controller: Our derivation based on

F j 1. (A, B2) stabilizable, (A, C2) detectable.


\ 4^ 49
g^ ;^^ ;^9
g9 ;9^ ;99    
    B1 0
T T
r < 2. D12 C1 D12 = 0I , D21 = .
D21 I
\Q4Q
gQ;Q
3. (A, C1) observable, (A, B1) controllable.
F j
\ 4^ 49
g^ ;^^ ;^9
g9 ;9^  4. D11 = 0 and DK = 0 (strictly proper controllers).
Implies D = 0.
+ ;99

r \4 <
g; DGKF Assumptions: Hypotheses 3 relaxed to
- (A, C1) has no unobservable modes in C0
F j
\ 4^ 49 - (A, B1) has no uncontrollable modes in C0
g^ ;^^ ;^9
g9 ;9^ 
Kr K<
\K4K
gK;K 

137 138

ARI Solution of Static State-Feedback Problem Proof

Control with u = F x to obtain closed-loop system Exists F with

ẋ = (A + B2F )x + B1w, z = (C1 + D12F )x.


λ(A+B2F ) ⊂ C−, (C1+D12F )(sI−A−B2F )−1B1∞ < 1

There exists a gain F such that if and only if exists F and Y with

λ(A + B2F ) ⊂ C− Y > 0, (A + B2F )Y + Y (A + B2F )T + B1B1T +


(C1 + D12F )(sI − A − B2F )−1B1∞ < 1 + Y (C1 + D12F )T (C1 + D12F )Y < 0

if and only if the ARI if and only if exists F and Y with


AY + Y AT + B1B1T − B2B2T + Y C1T C1Y < 0
Y > 0, AY + Y AT + B1B1T + Y C1T C1Y −
has a solution Y > 0.
− B2B2T + (F Y + B2T )T (F Y + B2T ) < 0
With any positive definite solution Y of the ARI, the gain
if and only if exists Y with
F = −B2T Y −1
Y > 0, AY + Y AT + B1B1T − B2B2T + Y C1T C1Y < 0.
defines a 1-suboptimal static state-feedback controller.

139 140
ARE Solution of Static State-Feedback Problem Output-Feedback Problem: Derivation

Recall that (A, C1) observable. Hence ARI


Controller AK (with same size as A), BK , CK satisfies
AY + Y A + T
B1B1T − B2B2T +Y C1T C1Y <0
λ(A) ⊂ C− and C(sI − A)−1B∞ < 1
has solution Y > 0 if and only if the ARE
if and only if exists X with
AY + Y AT + B1B1T − B2B2T + Y C1T C1Y = 0
X > 0, AT X + X A + X BB T X + C T C < 0.
has an anti-stabilizing solution Y+ that satisfies Y+ > 0.

Partition X and X −1 according to A:


There exists a gain F such that    
X U −1 Y V
X = , X = .
λ(A + B2F ) ⊂ C− UT ∗ VT ∗
(C1 + D12F )(sI − A − B2F )−1B1∞ < 1 Can assume that U , V are non-singular. We infer that

if and only if the anti-stabilizing solution Y+ of the ARE    


X U I 0
R= , S= satisfy SX = R.
AY + Y AT + B1B1T − B2B2T + Y C1T C1Y = 0 I 0 Y V
exists and is positive definite.
Includes relation XY + U V T = I which is required later.
With Y+, the gain

F := −B2T Y+−1 Left- and right-multiply inequalities with S and S T :

defines a 1-suboptimal static state-feedback controller. RS T > 0, SAT RT +RAS T +RBBT RT +SC T CS T < 0.

141 142

Output-Feedback Problem: Derivation Output-Feedback Problem: Derivation

With the substitution Two inequalities

RS T > 0, SAT RT + RAS T + RBBT RT + SC T CS T < 0


−1 T −1
L = X U BK and F = CK V Y
equivalent to
   
X I R11 R12
a straightforward computation leads to > 0, T
<0
I Y R12 R22
  with
X I
SR =T
R11 = (A + LC2)T X + X(A + LC2)+
I Y
  + X(B1 + LD21)(B1 + LD21)T X + C1T C1
X(A + LC2) U AK V T + X(A + LC2 + B2F )Y
RAS = T
A (A + B2F )Y R22 = (A + B2F )Y + Y (A + B2F )T + B1B1T +
 
X(B1 + LD21) + Y (C1 + D12F )T (C1 + D12F )Y
RB =
B1
 
R12 = U AK V T + XAY +
CS T = C1 (C1 + D12F )Y .
+ U BK C2Y + XB2CK V T + XB1B1T + C1T C1Y + AT .

Implies: R11 < 0, R22 < 0.


Is implied by: R11 < 0, R22 < 0, R12 = 0.

143 144
ARI Solution of Output-Feedback Problem Output-Feedback Control: Riccati Equation Solution

Exists controller AK , BK , CK that satisfies Theorem


Exists 1-suboptimal H∞ controller if and only if ARE’s
λ(A) ⊂ C− and C(sI − A)−1B∞ < 1

if and only if exist X and Y that satisfy AT X + XA + XB1B1T X + C1T C1 − C2T C2 = 0


 
X I AY + Y AT + Y C1T C1Y + B1B1T − B2B2T = 0
>0
I Y
have anti-stabilizing solutions X+ and Y+ that satisfy the
AT X + XA + C1T C1 − C2T C2 + XB1B1T X < 0
coupling condition
AY + Y AT + B1B1T − B2B2T + Y C1T C1Y < 0.  
X+ I
> 0.
I Y+

With X and Y , construct 1-suboptimal controller as follows:


Construct controller as follows:
Choose non-singular U , V with XY + U V T = I and take
Choose non-singular U , V with X+Y+ + U V T = I and take
−1
BK = −U C2T , CK = −B2T V −T , AK with R12 = 0.
AK = −U −1[AT + X+AY+ + X+(B1B1T − B2B2T ) +
+ (C1T C1 − C2T C2)Y+]V −T
BK = −U −1C2T , CK = −B2T V −T .

145 146

DGKF Solution of H∞ Problem Test Conditions

Exist γ-suboptimal controller if and only if


<s8$jBt$stRSbY${YS{B„„‚R}BtISBSVieRSs„‚
P„‚‚SBPS‚$‚t%sjZ‚RSBtS$8s$ts„kSs-$R2
• The unique solution P of the ARE
1
AP + P AT + P ( 2 C1T C1 − C2T C2)P + B1B1T = 0 WB 7B}USSBBSR8sjj
γ
1
with stable A + P ( 2 C1T C1 − C2T C2) ]B8}Z‚S7BjZ$BtRSh[[SstIS<
γ
exists and satisfies P ≥ 0. O‚R BPSVieRS%$sS<s8$jBt$stR

• The unique solution Q of the ARE


1
AT Q + QA + Q( 2 B1B1T − B2B2T )Q + C1T C1 = 0 *BSh[[SstIS<[SYs%‚StBtTt‚s$%‚S‚$‚t%sjZ‚R2
γ
1
with stable A + ( 2 B1B1T − B2B2T )Q WB 7B}USSBBSR8sjj
γ
exists and satisfies Q ≥ 0.
O‚R
• P and Q satisfy coupling condition

ρ(P Q) < γ 2. yRSR}‚{„sjS„sI$ZRSBPSh[<[SR8sjj‚„SYstS2

WB 7B}USSBBSR8sjj

O‚R ]Bt„Bjj‚„S‚-$RRS]B8}Z‚S$
147 148
DGKF: How to Compute Controller? Required Hypotheses for ARE Solution

Compute close to optimal γ by bisection. Command hinfsyn requires following propeties:

With P , Q and Z = (I − 1
P Q)−1, one γ-suboptimal 1. (A, B2) stabilizable, (A, C2) detectable.
γ2
controller is 2. D12 full column rank, D21 full row rank.
1 3. Ranks of
AK = A + B1B1T Q − B2B2T Q − ZP C2T C2    
γ2 A − iωI B2 A − iωI B1
,
BK = ZP C2T C1 D12 C2 D21
CK = −B2T Q. do not drop for ω ∈ R.

Enforce Hypotheses 2 and 3


Important Remark
With > 0, solve problem for
If γ is close to optimal value, if often happens that  
C1 D12    
1  
I − 2 QP is close to singular.   B1 B1 I 0
γ C1 D12 →  I 0  , →
D21 D21 0 I
Then inversion to compute Z is ill-conditioned. 0 I
 
Leads to a fast pole of the controller. D11 0 0
 
D11 →  0 0 0  .
Hence: Don’t get too close to optimal value. 0 00
For small > 0, original and perturbed problem equivalent.

149 150

Example Typical Run of hinfsyn

himat example in µ-tools. Generalized plant with


[k,g]=hinfsyn(sys,nm,nc,0,10,0.01);
8 states
4 disturbance inputs/controlled outputs Test bounds: 0.0000 < gamma <= 10.0000

2 control inputs/measured outputs gamma hamx_eig xinf_eig hamy_eig yinf_eig nrho_xy p/f
10.000 2.3e-002 1.2e-007 2.3e-002 0.0e+000 0.0223 p
5.000 2.3e-002 1.3e-007 2.3e-002 0.0e+000 0.0908 p
Analyse closed-loop with loop-shaping controller. 2.500 2.3e-002 1.3e-007 2.3e-002 0.0e+000 0.3913 p
1.250 2.3e-002 1.5e-007 2.3e-002 0.0e+000 2.2947# f
1.875 2.3e-002 1.3e-007 2.3e-002 -3.0e-014 0.7572 p
1.562 2.3e-002 1.4e-007 2.3e-002 0.0e+000 1.1977# f
1.719 2.3e-002 1.4e-007 2.3e-002 0.0e+000 0.9373 p
1.641 2.3e-002 1.4e-007 2.3e-002 -3.0e-014 1.0547# f
1.680 2.3e-002 1.4e-007 2.3e-002 0.0e+000 0.9932 p
1.660 2.3e-002 1.4e-007 2.3e-002 0.0e+000 1.0232# f
1.670 2.3e-002 1.4e-007 2.3e-002 0.0e+000 1.0080# f

Gamma value achieved: 1.6797

151 152
Result of H∞ Optimization General Setup for Robust Controller Design

Analyse closed-loop with optimal H∞-controller.


z∆ w∆

1.8
Optimal H−infinity controller: Singular values
z∆ w∆

1.6
zp wp
1.4 P
1.2 zp S(P,K) wp
y u
Magnitude

1
K
0.8

0.6
Uncertainy and Performance Channels
0.4

0.2
Find controller K that stabilizes P and achieves robust per-
formance.
0 −1 0 1 2 3
10 10 10 10 10
Frequency (rad/s)
Uncertainty weightings and performance
Typical: Largest singular value is flat. weightings supposed to be absorbed in P .

Structure set for uncertainty is ∆c.

153 154

SSV Synthesis Recall Structure of Scalings

Define extended value set Structure of ∆c in ∆c:


    
∆c 0 p1 I 0
×q
ˆ c ∈ C 2 2 , ∆
ˆ c < 1 . ...
∆e := : ∆c ∈ ∆c, ∆ p
 
0 ∆ˆc  pn r I 
 δ1I 
 . 
∆c =  .. .
 δnc I 
 
SSV Design Problem  ∆1
... 
Find controller K that stabilizes P and achieves 0 ∆nf

µ∆e (S(P, K)(iω)) ≤ 1 for all ω ∈ R ∪ {∞}.


Structure of D in D:
 
P1 0
...
 
 Pn r 
 D1 
No general solution available.  ... 
D= 
 Dnc 
 d1I 
Hard to devise algorithms since not even the  ... 
the SSV is easily computable. dnf I
where
Remedy: Try to reduce computable upper bound below 1.
- Pj , Dj Hermitian positive definite,
Are on the safe side!
- dj positive real scalars.

Remark. Scalings neglect that pj is real!

155 156
Upper Bound Synthesis Upper Bound Synthesis

To extended value set ∆e correspond extended scalings: Find controller K that stabilizes P and for which there exists
  
D 0 a function D(ω) ∈ D e such that
D e := >0|D∈D .
0 I sup D(ω)−1S(P, K)(iω)D(ω) < 1.
ω∈R∪{∞}

Recall that

µ∆e (S(P, K)(iω)) ≤ inf D−1S(P, K)(iω)D. Minimize


D∈De
sup D(ω)−1S(P, K)(iω)D(ω)
ω∈R∪{∞}

over all controllers K that stabilize P and


Upper Bound Design Problem over all functions D(ω) ∈ D e.
Find controller K that stabilizes P and achieves

inf D−1S(P, K)(iω)D < 1 for all ω ∈ R ∪ {∞}.


D∈D e
If minimum smaller than 1: Done.
Have found controller that achieves robust performance.

Inequality equivalent to: If minimum larger than 1: Procedure fails.

There exists function D(ω) ∈ D e such that May or may not exist controller that achieves RP.

D(ω)−1S(P, K)(iω)D(ω) < 1 for all ω ∈ R ∪ {∞}.

157 158

Scalings-Controller Iteration Details of D/K-Iteration: Start

Minimizing Set D1(ω) = I.

sup D(ω)−1S(P, K)(iω)D(ω)


ω∈R∪{∞} Minimize
over K and D(ω) together still not possible. sup D1(ω)−1S(P, K)(iω)D1(ω) = S(P, K)∞
ω∈R∪{∞}

Instead, iterate the two steps: over all K that stabilize P .

Fix scaling function D(ω), minimize over K.


Fix controller K, minimize over D(ω). H∞ problem. Minimum ≈ γ1, controller K1.

Procedure is called D/K-iteration.


After k steps: Have found Dk (ω), Kk with
In each step, value of sup Dk (ω)−1S(P, Kk )(iω)Dk (ω) = γk .
ω∈R∪{∞}
sup D(ω)−1S(P, K)(iω)D(ω)
ω∈R∪{∞}

is reduced. Hence it converges.

Stopping criterion: If value < 1.

159 160
Optimization over Scaling Optimization over Controller

Cannot optimize over K with arbitrary Dk+1(ω).


SSV analysis problem: At each ω ∈ R ∪ {∞}, calculate

inf D−1S(P, Kk )(iω)D Find real rational proper stable D̂(s) with proper stable
D∈D e
D̂(s)−1 such that
and an (almost) optimal scaling Dk+1(ω).
Dk+1(ω) − D̂(iω) ≈ 0 for all ω ∈ R ∪ {∞}.

Observe:
Find (almost) optimal Kk+1 for
Dk+1(ω)−1S(P, Kk )(iω)Dk+1(ω) ≤ inf D̂−1S(P, K)D̂∞.
K stabilizes P
≤ Dk (ω)−1S(P, Kk )(iω)Dk (ω) ≤ γk
Is standard H∞ problem!
and hence

sup Dk+1(ω)−1S(P, Kk )(iω)Dk+1(ω) ≤ γk . For good scalings approximation


ω∈R∪{∞}
γk+1 = sup Dk+1(ω)−1S(P, Kk+1)(iω)Dk+1(ω) ≤
ω∈R∪{∞}

≤ sup Dk+1(ω)−1S(P, Kk )(iω)Dk+1(ω) ≤ γk


ω∈R∪{∞}

and hence value is improved. Iterate.

161 162

Comments Example

• The µ-tools support the fitting of D(ω) with rational Continue himat example from µ tools.
transfer matrices D̂(iω).
One full block uncertainty: 2 × 2
One performance block: 2 × 2
• Value of the upper bound is not increased in each step.
Stop if it cannot be significantly decreased.
Extended block structure
There is no guarantee for optimality whatsoever!    
∆1 0 2×2
∆e := ∆c = | ∆k ∈ C , |∆c < 1 .
0 ∆2
• Order of D̂ is provided by user.
Controller K that (approximately) minimizes Extended scalings
   
D̂−1S(P, K)D̂∞ d I2 0
D e := D= : d ∈ R, d > 0 .
0 I2
is given by

2 × order(D̂) + order(P ).
Have performed first step: Unscaled H∞ design.
Keep the order of D̂ small!

• If order of controller too large, perform model reduction.


Chapters 7/9 in Zhou, Doyle, Glover,
Chapter 11 in Skogestad, Postlethwaite.

163 164
SSV Analysis for H∞ Controller Fit Scalings

Robust stability: yellow Frequency by frequency scalings: yellow


Nominal performance: violet Rational fit: violet
Robust performance: red
FITTING D SCALING #1 of 1, W/ORDER = 4
1
10

mu−controller: RS NP RP
1.8 10
0

1.6
−1
10
1.4
−2
10 −1 0 1 2 3
1.2 10 10 10 10 10
1) data 2) newfit 3) oldfit
weight for fit
Magnitude

1
1 10

0.8

0
0.6 10

0.4

−1
0.2 10 −1 0 1 2 3
10 10 10 10 10
ENTER NEW ORDER, ’drawmag’, or NEGATIVE NUMBER TO STOP
0 −1 0 1 2 3
10 10 10 10 10
Frequency (rad/s)
Perfect fit.

165 166

H∞ Design and SSV Analysis Fit Scalings

Robust stability: yellow Frequency by frequency scalings: yellow


Nominal performance: violet Rational fit: violet
Robust performance: red
FITTING D SCALING #1 of 1, W/ORDER = 4
1
10

mu−controller: RS NP RP
1.2 10
0

−1
1 10

−2
10 −1 0 1 2 3
0.8 10 10 10 10 10
1) data 2) newfit 3) oldfit
weight for fit
Magnitude

1
10
0.6

0
0.4 10

0.2
−1
10 −1 0 1 2 3
10 10 10 10 10
ENTER NEW ORDER, ’drawmag’, or NEGATIVE NUMBER TO STOP
0 −1 0 1 2 3
10 10 10 10 10
Frequency (rad/s)

Robust performance not achieved. Continue.

167 168
H∞ Design and SSV Analysis Summary

Robust stability: yellow


Controller Analysis with Structured Singular Value
Nominal performance: violet
- Sound computations
Robust performance: red
- Can test robust stability and robust performance
mu−controller: RS NP RP - Allowed Uncertainties - linear time-invariant:
1
parametric or dynamic, full or repeated
0.9 - Delicate: parametric uncertainties.

0.8
Controller Synthesis
0.7 - General solution for H∞ problem
Magnitude

0.6
- Robust performance design via D/K iteration:
Theory: No optimality guarantee. Alternatives?
0.5 Practice: Works fine on many examples

0.4
- Linear controllers only

0.3 −1 0 1 2 3
10 10 10 10 10
Frequency (rad/s)

Robust performance achieved. Stop.

169 170

Outlook on LMIs

Linear Matrix Inequalities Techniques

- More flexible choice of performance specs:


positive real, H2, amplitude constraints

- Allows extension to multi-objective design:


various performance specs on different channels

- Extension of class of uncertainties:


Time-varying parametric, non-linear
Description with Integral Quadratic Constraints

- Can use more scalings - lesser conservatism

- Refined alternatives to D/K iteration

- Can perform systematic gain-scheduling for


non-linear controller design problems

171

You might also like