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 .