POLITECNICO DI MILANO GMV Control (Generalized Minimum Variance) MODEL IDENTIFICATION AND DATA ANALYSIS Prof. S. Bittanti EXAMPLE 1
GMV Control (Generalized Minimum Variance) J = E[(P(z)y(t + k) + Q(z)u(t) - yº(t))²] n Model reference (Q(z) = 0) n Penalized control (P(z) = 1) GMV
Summary n Example (minimum phase system) n System to be controlled n Model reference control design n Penalized control design GMV 3
Example n System time domain description ARMAX (1,1,4) n y(t) = 0,8y(t 1) + + u(t 2) + 1,28u(t 3) + 0,81u(t 4) + e(t) + 0,6e(t 1) n e WN(0,s 2 ) GMV 4
Example System n A(z)y(t) = B(z)u(t-k) + C(z)e(t) with n A(z) = 1 0,8z ¹ n B(z) = 1 + 1,28z ¹ + 0,81z ² k = 2 n C(z) = 1 + 0,6z ¹ GMV 5
System features n Gain: n B(1) / A(1) = 15,45 n Zeros of A(z) (system poles) n z = 0,8 n Zeros of B(z): n z = 0,64 ± 0.63i n Zeros of C(z): n z = -0,6 GMV 6
Singularities in the complex plane n A(z) x n B(z) n C(z) GMV 7
Open loop step response n Output y(t) when s 2 = 0 (no noise) GMV 8
Model reference design n System: n A(z)y(t) = B(z)u(t-k) + C(z)e(t) n e WN(0,s 2 ) n Model reference criterion n J = E[ (P(z)y(t+k) - y (t))²] n P(z) to be chosen by the designer GMV 9
Overall control scheme e(t) C(z) S yº(t) H(z) + u(t) + 1 / G(z) z k B(z) 1 / A(z) - + y(t) C F(z) GMV 10
Model reference design n Controller polynomials n F(z) n G(z) = PD(z)B(z)E(z) n H(z) = C(z)PD(z) n E(z) and F(z) from Long Division n P N (z)c(z) = P D (z)a(z)e(z) + z -k F(z) (long division of P N C by P D A for k steps) GMV 11
Model reference design n Main issue P(z) =? GMV 12
Model reference design n Basic idea P(z) = M(z) -1 where M(z) is the reference model GMV 13
Reference model n M(z) = (1 + f)ⁿ (1 + f z ¹)ⁿ (n poles in f and gain 1) n Step response of reference model n Time response 90% (the table shows the number of steps employed by the step response of M(z)to reach 90% of steady state value, as a function of f and n) GMV 14
Reference model choice f n = 1 n = 2 n = 3 0.1 1 2 2 0.2 2 3 3 0.3 2 3 4 0.4 3 4 5 0.5 4 6 7 0.6 5 8 10 0.7 7 11 14 0.8 11 17 23 0.85 15 28 32 0.9 22 37 50 0.95 45 76 131 0.99 230 387 500 GMV 15
Model reference choice n choosing n n =2 and f = 0.4 n with such choice 4 steps are required to reach the 90% threshold GMV 16
Determination of P(z) n Reference model: n M(z) = (1 + 0.4) 2 (1 + 0.4z -1 ) 2 n P(z)= M(z) -1 n P(z) = (1 0.8z -1 + 0.16z -2 ) / 0.36 n P N (z) = 1 0.8z -1 + 0.16z -2 n P D (z) = 0.36 GMV 17
Controller polynomials n 2 steps long division leads to n E(z) = 2,78 + 1,67z -1 n F (z) = 0,16 + 0,096z -1 n thus: n F(z) = 0,16 + 0,096z -1 n G(z) = PD(z)B(z)E(z) = 1 + 1,88z -1 + 1,58z -2 + 0,49z -3 n H(z) = C(z)PD(z) = 0,36 + 0,216z -1 GMV 18
Overall control scheme e(t) C(z) S yº(t) H(z) + u(t) + 1 / G(z) z k B(z) 1 / A(z) - + y(t) C F(z) Characteristic Polynomial: B(z)C(z)PN(z) GMV 19
Closed loop step response n Output y(t) with s 2 = 0 GMV 20
Closed loop step response n input u(t) with s 2 = 0 Transfer function from y o to u: P(z)A(z)/B(z) GMV 21
Penalized control design n System to be controlled: n A(z)y(t) = B(z)u(t-k) + C(z)e(t) n e WN(0,s 2 ) n Performance criterion n J = E[(y(t + k) + Q(z)u(t) - yº(t))²] n P(z) = 1 n Q(z) up to designer GMV 22
Penalized control design n Controller polynomials n F(z) = F (z)qd(z) n G(z) = B(z)QD(z)E(z) + C(z)QN(z) n H(z) = C(z)QD(z) n E(z) and F (z) from Long Division n C(z) = A(z)E(z) + z -k F (z) (L D of C by A for k steps) GMV 23
Penalized control design n Closed loop tr function from y to y n S(z) = z k 1 + Q(z) A(z) B(z) n Characteristic polynomial n B(z)QD(z) + A(z)QN(z) GMV 24
Choice of Q(z) n Typical: n Q(z) = q constant n Q(z) = q (1 - z ¹) n Q(z) = q 1 - z ¹ 1 gz ¹ GMV 25
Choice of Q(z) n Q(z) = q n Poles: B(z) + q A(z) = 0 n q = 0 : zeros of B(z) n q : zeros of A(z) GMV 26
Poles n Root locus of B(z) + q A(z) q = 0 q 8,57 q GMV 27
Closed loop step response (q = 1) n Output y(t) with s 2 = 0 GMV 28
Closed loop step response (q = 1) n Input u(t) with s 2 = 0 GMV 29
Closed loop step response (q = 8,57) n Output y(t) with s 2 = 0 GMV 30
Closed loop step response (q = 8,57) n Input u(t) with s 2 = 0 Controllo GMV 31
Gain of control system n S(1) = 1 1 + q A(1) B(1) n q 0 gain S(1) 1 non zero steady state error GMV 32
Choice of Q(z) n To avoid bias in steady state Q(z) = q (1 - z ¹) n Poles: B(z) + q(1 - z ¹)A(z) = 0 n q = 0 : zeros of B(z) n q : zeros of (1 - z ¹)A(z) GMV 33
Closed loop poles n Root locus of B(z) + q(1 - z ¹)A(z) q = 0 q GMV 34
Closed loop gain n S(z) = 1 1 + q(1 - z ¹) A(z) B(z) for z = 1 the gain is 1 n Unitary gain guaranteed for all q GMV 35
Closed loop step response (q = 1) n Output y(t) with s 2 = 0 GMV 36
Closed loop step response (q = 1) n Input u(t) with s 2 = 0 GMV 37
Closed loop step response (q = 50) n Output y(t) with s 2 = 0 GMV 38
Closed loop step response (q = 50) n Input u(t) with s 2 = 0 GMV 39
Choice of Q(z) n Q(z) = q(1 - z ¹) / (1 0.9z ¹) n Poles: n q = 0 : zeros of (1 0.9z ¹)B(z) n q : zeros of (1 - z ¹)A(z) Controllo GMV 40
Closed loop poles n Root locus of (1 0.9z ¹)B(z) + q(1 - z ¹)A(z) q = 0 q GMV 41
Closed loop step response (q = 1) n Output y(t) with s 2 = 0 GMV 42
Closed loop step response (q = 1) n Input u(t) with s 2 = 0 Controllo GMV 43
Closed loop step response (q = 7,3) n Output y(t) with s 2 = 0 GMV 44
Closed loop step response (q = 7,3) n Input u(t) with s 2 = 0 GMV 45
Choice of Q(z) n Q(z) = q(1 - z ¹) / (1 0.8z ¹) n Closed loop poles: n q = 0 : zeros of (1 0.8z ¹)B(z) n q : zeros of (1 - z ¹)A(z) Controllo GMV 46
Closed loop poles n Root locus of (1 0.8z ¹)B(z) + q(1 - z ¹)A(z) q = 0 q GMV 47
Closed loop step response (q = 6,1) n Output y(t) with s 2 = 0 Controllo GMV 48
Closed loop step response (q = 6,1) n Input u(t) with s 2 = 0 Controllo GMV 49
Closed loop step response (q = 6,1) n Output y(t) with s 2 = 10-4 Controllo GMV 50
Closed loop step response (q = 6,1) n Input u(t) with s 2 = 10-4 Controllo GMV 51
POLITECNICO DI MILANO GMV Control (Generalized Minimum Variance) MODEL IDENTIFICATION AND DATA ANALYSIS Prof. S. Bittanti EXAMPLE 2
Ezample 2: non-minimum phase system n System ARMAX (1,2,3) n A(z) = 1-0,5z ² n B(z) = 1 2z ¹ + 2z ² + z ³ k = 1 n C(z) = 1 1,4z ¹ + 0,7z ² n A(z)y(t) = B(z)u(t-k) + C(z)e(t) GMV 53
System features n Gain n B(1) / A(1) = 4 n Zeros of A(z) (poles) n z = 0,71 n z = -0,71 n Zeros of B(z): n z = -0,35 n z = 1,18 ± 1,20i n Zeros of C(z): n z = 0,70 ± 0,46i GMV 54
Singularities in the complex plane n A(z) x n B(z) n C(z) GMV 55
Open loop step response n Output y(t) with s 2 = 0 GMV 56
Choosing Q(z) n With: Q(z) = q(1 - z ¹) / (1 0,5z ¹) n Poles: n q = 0 : zeros of (1 0.5z ¹)B(z) n q : zeros of (1 - z ¹)A(z) Controllo GMV 57
Closed loop poles n Root locus of (1 0.5z ¹)B(z) + q(1 - z ¹)A(z) q = 0 q GMV 58
Closed loop step response (q = 1,5) n Output y(t) with s 2 = 0 GMV 59
Closed loop step response (q = 1,5) n Input u(t) with s 2 = 0 GMV 60
Closed loop step response (q = 2,1) n Output y(t) with s 2 = 0 GMV 61
Closed loop step response (q = 2,1) n Input u(t) with s 2 = 0 GMV 62
Closed loop step response (q = 19) n Output y(t) with s 2 = 0 GMV 63
Closed loop step response (q = 19) n Input u(t) with s 2 = 0 GMV 64
Closed loop step response (q = 19) n Output y(t) with s 2 = 10-4 GMV 65
Closed loop step response (q = 19) n Input u(t) with s 2 = 10-4 GMV 66
POLITECNICO DI MILANO GMV Control (Generalized Minimum Variance) MODEL IDENTIFICATION AND DATA ANALYSIS Prof. S. Bittanti EXAMPLE 3
Example 3 n Non-minimum phase system (zeros outside the unit disk) and oscillatory open loop behaviour (poles located near the border of stability region) GMV 68
Singularities n Zeros of A(z) (open loop poles) n z = - 0,95 ± 0,1i n z = -0,5 ± 0,6i n Zeros of B(z) (open loop seros) n z = 1 ± i n z = 0,2 ± 0,6i n Zeros of C(z): n z = -0,7 GMV 69
ARMAX model n (4,1,4) n A(z) = 1 + 2,9z ¹ + 3,422z -2 + 2,072z -3 + 0,557z -4 n B(z) = 1 2,4z -1 + 3,2z -2 1,6z -3 + 0,8z -4 n C(z) = 1 + 0,7z ¹ n Input output delay: k = 1 n Time domain equation n y(t) = -2,9y(t-1) - 3,422y(t-2) - 2,072y(t-3) - 0,557y(t-4) + + u(t-1) - 2,4u(t-2) + 3,2u(t-3) - 1,6u(t-4) + 0,8u(t-5) + + e(t) + 0,7e(t-1) n e WN(0,s 2 ) s 2 = 0 GMV 70
Singularities in the complex plane n A(z) x n B(z) n C(z) GMV 71
Open loop step response n Output y(t) with s 2 =0 Controllo GMV 72
Choosing Q(z) n Q(z) = q(1 - z ¹)/(1 + 0,3z -1 ) n Closed loop poles: n q = 0 : zeros of (1 + 0,3z -1 )B(z) n q : zeros of (1 - z ¹)A(z) Controllo GMV 73
Closed loop poles n Root locus of (1 + 0,3z -1 )B(z) + l(1 - z ¹)A(z) l l = 0 Controllo GMV 74
Closed loop step response (q = 30) n Output y(t) with s 2 = 0 Controllo GMV 75
Closed loop step response (q = 30) n Input u(t) with s 2 = 0 GMV 76