Topic #21
16.31 Feedback Control
MIMO Systems
? Singular Value Decomposition
? Multivariable Frequency Response Plots
Copyright 2001 by Jonathan How.
1
Fall 2001 16.31 21—1
Multivariable Frequency Response
? In the MIMO case, the system G(s) is described by a p × m trans-
fer function matrix (TFM)
— Still have that G(s)= C(sI ? A)
?1
B + D
— But G(s) → A,B,C,D MUCH less obvious than in SISO case.
— Discussion of poles and zeros of MIMO systems also much more
complicated.
? In SISO case we use the Bode plot to develop a measure of the
system “size”.
— Given z = Gw,where G(jω)= |G(jω)|e
jφ(w)
— Then w = |w|e
j(ω
1
t+ψ)
applied to |G(jω)|e
jφ(w)
yields
|w||G(jω
1
)|e
j(ω
1
t+ψ+φ(ω
1
))
= |z|e
j(ω
1
t+ψ
o
)
≡ z
— Amplification and phase shift of the input signal obvious in the
SISO case.
? MIMO extension?
— Is theresponseof the system largeorsmall?
G(s)=
?
10
3
/s 0
0 10
?3
/s
?
Fall 2001 16.31 21—2
? For MIMOsystems,cannotjustplotall of the G
ij
elements of G
— Ignores the coupling that might exist between them.
— So not enlightening.
? Basic MIMO frequency response:
— Restrict all inputs to be at the same frequency
— Determine how the system responds at that frequency
— See how this response changes with frequency
? So inputs are w = w
c
e
jωt
,where w
c
∈ C
m
— Then we get z = G(s)|
s=jω
w, ? z = z
c
e
jωt
and z
c
∈ C
p
— We need only analyze z
c
= G(jω)w
c
? As in the SISO case, we need a way to establish if the system re-
sponse is large or small.
— How much amplification we can get with a bounded input.
? Consider z
c
= G(jω)w
c
and set kw
c
k
2
=
p
w
c
H
w
c
≤ 1. What can
we say about the kz
c
k
2
?
— Answer depends on ω and on the direction of the input w
c
— Best found using singular values.
Fall 2001 16.31 21—3
Singular Value Decomposition
? Must perform the SVD of the matrix G(s)ateachfrequency s =jω
G(jω) ∈ C
p×m
U ∈ C
p×p
Σ ∈ R
p×m
V ∈ C
m×m
G = U ΣV
H
— U
H
U = I, UU
H
= I, V
H
V = I, VV
H
= I,and Σ is diagonal.
— Diagonal elements σ
k
≥ 0of Σ are the singular values of G.
σ
i
=
q
λ
i
(G
H
G)or σ
i
=
q
λ
i
(GG
H
)
the positive ones are the same from both formulas.
— The columns of the matrices U and V (u
i
and v
j
)are theasso-
ciated eigenvectors
G
H
Gv
j
= σ
j
2
v
j
GG
H
u
i
= σ
i
2
u
i
Gv
i
= σ
i
u
i
? If the rank(G)= r ≤ min(p,m), then
— σ
k
> 0, k =1,...,r
— σ
k
=0, k = r +1,..., min(p,m)
? An SVD gives a very detailed description of how a ma-
trix (the system G) acts on a vector (the input w)ata
particular frequency.
Fall 2001 16.31 21—4
? So how can we use this result?
— Fix the size kw
c
k
2
= 1 of the input, and seehow largewe can
make the output.
— Since we are working at a single frequency, we just analyze the
relation
z
c
= G
w
w
c
, G
w
≡ G(s =jω)
? Define the maximum and minimum amplifications as:
σ ≡ max kz
c
k
2
kw
c
k
2
=1
σ ≡ min kz
c
k
2
kw
c
k
2
=1
? Then we have that (let q =min(p,m))
σ = σ
1
?
σ
q
p ≥ m “tall”
σ =
0 p<m “wide”
? Can use σ and σ to determine the possible amplification and atten-
uation of the input signals.
? Since G(s) changes with frequency, so will σ and σ
Fall 2001 16.31 21—5
SVD Example
? Consider (wide case)
?
?
?
?
G
w
=
?
500
00.50
?
=
?
10
01
? ?
500
00.50
?
100
010
001
= U ΣV
H
so that σ
1
=5 and σ
2
=0.5
σ ≡ max kG
w
w
c
k
2
=5= σ
1
kw
c
k
2
=1
σ ≡ min kG
w
w
c
k
2
=0 6= σ
2
kw
c
k
2
=1
? But now consider (tall case)
?
G
w
=
?
?
50
00.5
00
?
?
=
?
?
100
010
001
?
?
?
?
50
00.5
00
?
?
?
10
01
?
= U ΣV
H
so that σ
1
=5 and σ
2
=0.5still.
σ ≡ max kG
w
w
c
k
2
=5= σ
1
kw
c
k
2
=1
σ ≡ min
kw
c
k
2
=1
kG
w
w
c
k
2
=0.5= σ
2
Fall 2001 16.31 21—6
? For MIMO systems, the gains (or σ’s) are only part of the story, as
we must also consider the input direction.
? To analyze this point further, note that we can rewrite
? ?
σ
1
?
?
?
.
.
.
?
?
?
? σ
m
?
0
?
?
v
H
1
.
.
.
v
H
m
?
?
G
w
= U ΣV
H
=
£
u
1
... u
p
¤
=
m
X
i=1
H
σ
i
u
i
v
i
— Assumed tall case for simplicity, so p>m and q = m
? Can now analyze impact of various alternatives for the input
— Only looking at one frequency, so the basic signal is harmonic.
— But, we are free to pick the relative sizes and phases of each
of the components of the input vector w
c
.
3 These define the input direction
Fall 2001 16.31 21—7
? For example, we could pick w
c
= v
1
,then
? !
m
X
H
z
c
= G
w
w
c
= σ
i
u
i
v
i
v
1
= σ
1
u
1
i=1
since v
i
H
v
j
= δ
ij
.
— Output amplified by σ
1
.The relative sizes and phases of each
of the components of the output are given by the vector z
c
.
? By selecting other input directions (at the same frequency), we can
get quite di?erent amplifications of the input signal
kG
w
w
c
k
2
σ ≤ ≤ σ
kw
c
k
2
? Thus we say that
— G
w
is large if σ(G
w
) à 1
— G
w
is small if σ(G
w
) ? 1
? MIMO frequency response are plots of σ(jω)and σ(jω).
— Then use the singular value vectors to analyze the response at a
particular frequency.
Fall 2001 16.31 21—8
? Example: Just picked a random 3x3 system
a=
-0.7500 -2.0000 0 0
2.0000 -0.7500 0 0
0 0 -1.0000 -4.0000
0 0 4.0000 -1.0000
b=
-1.9994 6.4512 -0.0989
3.4500 3.3430 -0.7836
4.0781 5.9542 -8.0204
3.5595 -6.0123 1.2865
c=
-1.0565 0.5287 -2.1707 0.6145
1.4151 0.2193 -0.0592 0.5077
-0.8051 -0.9219 -1.0106 1.6924
d=
0.0044 0.0092 0.0041
0.0062 0.0074 0.0094
0.0079 0.0018 0.0092
? The singular value plot for this state space system is shown below:
SV Plots
10
2
10
1
10
0
10
?1
10
?2
10
?1
10
0
10
1
10
2
Freq (rad/sec)
SV
Figure 1: SVD of a typical 3x3 TFM
Fall 2001 16.31 21—9
? Then applied a sinusoid input at about 3 rad/sec using the v
1
di-
rection (see code on how this is done)
w
c
|w
c
| arg w
c
0.4715 0.4715 0
?0.2684 + 0.7121i 0.7610 1.9313
?0.2411 ? 0.3746i 0.4455 ?2.1427
so the three input sinusoids are scaled quite di?erently and phase
shifted quite substantially.
Best input. Gain 16.0751
15
10
5
lsim
sin
Y
i
0
?5
?10
?15
0 1 2 3 4 5 6 7 8 9 10
Time sec)
Figure 2: MIMO system response using the v
1
input direction. Outputs
converge to the expected output directions.
Fall 2001 16.31 21—10
? Also picked another random input direction at this same frequency
and got this response
Random input. Gain 4.6334
15
10
5
Y
i
0
?5
?10
?15
0 1 2 3 4 5 6 7 8 9 10
Time sec)
Figure 3: MIMO system response using a random input direction. Out-
puts quite di?erent from the maximum output directions.
Fall 2001 16.31 21—11
Summary
? G
w
is said to be large if σ(G
w
) à 1
? G
w
is said to be small if σ(G
w
) ? 1
? MIMO frequency response plots σ(jω)and σ(jω).
— Then use the singular value vectors to analyze the response at a
particular frequency.
Fall 2001 16.31 21—12
MIMO Performance
? Not much changes from the SISO case, but all elements in the block
diagram are now TFM — so we must pay attention to the order of
the multiplication since GG
c
6= G
c
G in general.
r
G
c
(s) G(s)
-
6
?
? ?
— u
ye
d
i
d
o
n
? Now use input (·)
i
and output (·)
o
loops, depending on where we
break the loop.
L
i
= G
c
G L
o
= GG
c
S
i
=(I + L
i
)
?1
S
o
=(I + L
o
)
?1
S
i
+ T
i
= I S
o
+ T
o
= I
? Now have that
y = T
o
(r ? n)+ S
o
(Gd
i
+ d
o
)
u = G
c
S
o
(r ? n) ? G
c
S
o
d
o
? G
c
S
o
Gd
i
? So the primary objectives are still the same:
— S
o
and S
i
should be small at low frequency
— T
o
should be small at high frequency
Fall 2001 16.31 21—13
? Loop conditions for S
o
to be small are:
1
1
σ(S
o
)=
σ(I + L
o
)
? 1 ? σ(I + L
o
) à 1
Since σ(I + L
o
) ≥ σ(L
o
) ? 1, then if σ(L
o
) à 1, we have
σ(I + L
o
) ≥ σ(L
o
) ? 1 à 1
? So, if we make σ(L
o
) à 1thenwe get σ(S
o
) ? 1
? Conditions for T
o
to be small are:
2
σ(T
o
)= σ([I + L
o
]
?1
L
o
) ≤ σ([I + L
o
]
?1
)σ(L
o
)
= σ([I + L
o
])
?1
σ(L
o
)
? So if we make σ(L
o
) ? 1, then we will get σ(T
o
) ? 1
1
useful identities are σ(L
o
) ? 1 ≤ σ(I + L
o
) ≤ σ(L
o
)+1 and σ(G
?1
)=
σ(
1
G)
2
σAB ≤ σAσB
Fall 2001 16.31 21—14
? Similar to SISO loop shaping, but we have redefined large and small
to use the singular values of L
o
.