NEW DEVELOPMENTS IN PREDICTIVE CONTROL FOR ...Introduction • Model Predictive Control (MPC) is one...
Transcript of NEW DEVELOPMENTS IN PREDICTIVE CONTROL FOR ...Introduction • Model Predictive Control (MPC) is one...
NEW DEVELOPMENTS IN NEW DEVELOPMENTS IN PREDICTIVE CONTROL PREDICTIVE CONTROL
FOR NONLINEAR SYSTEMSFOR NONLINEAR SYSTEMS
M. J. Grimble, A. Ordys, A. Dutka, P. Majecki
University of StrathclydeGlasgow Scotland, U.K
Introduction
• Model Predictive Control (MPC) is one of the most popular advanced control techniques
• The MPC algorithms are well established for linear systems
• Recent developments extended this methodology to the Non-linear systems control
• Techniques developed at the University of Strathclyde are presented
Linear Quadratic Gaussian Predictive Linear Quadratic Gaussian Predictive ControlControlLQGPCLQGPC
Preview ControlThe algorithm was first presented by Tomizuka M. and D.E. Whitney. The algorithm uses the LQG approach to optimisation and a stochastic model for the reference signal beyond the preview horizon.
x t Ax t Bu t Gw ty t Cx t v t
( ) ( ) ( ) ( )( ) ( ) ( )+ = + +
= +1State space model:
Performance index:
J t y t j r t j y t j r t jT
j
M
u t j u t jT
( ) ( ) ( ) ( ) ( )
( ) ( )
= + + − + + + + − + +LNMRS|T| =∑
+ ⋅ + +
Ε 1 1 1 10b g b g
λ
R t R t t NN N N N( ) ( ) ( )+ = + +1 Θ η ξReference generator:
Preview Control
x t
x tt
At
Bu t
G w t
t NR N N N
( )
( )( ) ( ) ( )
( )
( ),
+
+
LNMM
OQPP = + =
LNMM
OQPP +
LNMMOQPP
+LNMM
OQPP +
LNMM
OQPP
1
11χ χ
µ ξ
Ο
Ο Θ Ο
Ο
Ο
y t
R t
C x t
x tv t
N R N
( )
( )
( )
( )( )
,
LNMM
OQPP =LNMMOQPPLNMM
OQPP +LNMMOQPP
Ο
Ο Ι
Ι
Ο
AC GB
A standard (infinite horizon) LQG approach can now be used.
Linear Quadratic Gaussian Predictive Control Linear Quadratic Gaussian Predictive Control LQGPCLQGPC
J Y t R t Y t R t U t U ttT
eT
u= − − +( ) ( ) ( ) ( ) ( ) ( )b g b g b g b gΛ Λ
The standard predictive control performance index:
re-formulate it to be compatible with the above index:
x t A x t U t W t( ) ( ) ( ) ( )+ = + +1 β Γ
Y t A x t S U t S W t V tN N N( ) ( ) ( ) ~ ( ) ( )= + + +Φ
state equation:
output equation:
The control vector U(t)contains all control actions within the horizon N into the future
)t(v)t(Dx)t(y)t(Gw)t(Bu)t(Ax)t(x
+=++=+1Starting with the state-space model:
Linear Quadratic Gaussian Predictive Control Linear Quadratic Gaussian Predictive Control LQGPCLQGPC
Define the LQG-type performance index (finite or infinite) as a sum of “predictive” performance indices:
JT
J lDPC GPCl t
t T=
+
RSTUVW=
+∑Ε
11
( ) JT
J lDPC GPCl t
t=
+
RSTUVW→∞ =
+∑Ε
Τ
Τlim ( )1
1
JT
Y l R l Y l R l U l U ltT
eT
ul t
T=
+− − +LNM OQP
RSTUVW=
∑Ε Λ Λ1
1( ) ( ) ( ) ( ) ( ) ( )b g b g b g b g
Substituting the criterion from the previous slide obtains:
The solution can be obtained through Dynamic Programming with two Riccati equations involved.
The “reference generator” is used in a similar way as in Preview Control
Solution of Quadratic Gaussian Solution of Quadratic Gaussian problem for nonlinear systems problem for nonlinear systems
andandNonNon--Linear Quadratic Gaussian Linear Quadratic Gaussian
Predictive ControlPredictive Control
NLQG and NLQGPC
• NLQG - an extension of SDRE method• SDRE method – State Dependent Riccati
Equations• The NLQGPC algorithm: predictive
extension of SDRE
System representation
• The model:
• Linear State Dependent form of the model:
• Assumption on the parameterisation of the model:
1 ( ) ( )( )
t t tt t
t t
x f x g x u Gy h x
ξ+ = + +=
1 ( ) ( )t t t t t tx A x x B x u Gξ+ = + +
( )t t ty C x x=
( ),
( ), ( )t tx u
A x B x is controllable∀
System representation
• Simplified notation:
• The Prediction of the trajectory:
• Assumption on the trajectory after the prediction horizon.
( ), ( ), ( )t t t t t tA A x B B x C C x= = =
1 1 1 2, ,..., , ,...,t t t N t t t Nu u u x x x+ + − + + +→
The NLQG algorithm• Estimate (or measure) the state x(t)
• Use previous feedback gain K(t-1) to calculate prediction of current
control u(t)
• Use current control prediction u(t) and the model re-calculated at time
instant t (with the state x(t)) to obtain future state prediction x(t+1).
( ) ( 1) ( )u t K t x t= − −
The NLQG algorithm• The state prediction x(t+1) together with the state feedback gain K(t-1)
from previous iteration of the algorithm is used for a calculation of the
future control prediction u(t+1).
• The model once again is re-calculated using future state prediction,
stored and sequence is repeated n times.
( ) ( 1) ( )u t K t x t= − −
The NLQG algorithm
• Use the model prediction for time instant t+n and solve Algebraic
Riccati Equation.
• The solution at time instant t+n is obtained: ( , )P t n+ ∞
The NLQG algorithm
• Use as a boundary condition for iterations of
the Riccati Difference Equation and use appropriate prediction of the
model throughout iterations of Riccati Equation.
• Use to calculate the feedback control gain and calculate the
current control.
( ) ( , )P t n P t n+ = + ∞
( 1)P k +
The NLQG algorithm
• Use to calculate the feedback control gain and calculate the
current control.
• Calculated current control is used for the plant input signal manipulation.
( 1)P k +
( ) ( ) ( )u t K t x t= −
( ) ( ( ), ( ), ( 1))K t function A t B t P t= +
The NLQG cost function
• The following cost function is minimised:
• The cost function may be split in two parts:
( ) ( ) ( ) ( ) ( )1lim2 ( ) ( ) ( ) ( )
h
h
T Tt T c ct T T TT k th c c
x k Q k x k u k R u kJ E
T u k M x k x k M u k
+
→∞ =
⎧ ⎫⎛ ⎞⎧ ⎫+⎪ ⎪ ⎪ ⎪⎜ ⎟= ∑⎨ ⎨ ⎬ ⎬⎜ ⎟+ +⎪ ⎪⎪ ⎪⎩ ⎭⎝ ⎠⎩ ⎭
( )1lim2h
finite infinitet t tT h
J E J JT→∞
⎧ ⎫= +⎨ ⎬
⎩ ⎭
The NLQG cost function
• First part is an infinite cost function:
• and this part is minimised by Algebraic Riccati Equation.• Second part is a finite cost function
• And is minimised by Difference Riccati Equation with border condition given by the solution of ARE.
( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
hT Tt T c p cinfinite
t T T Tk t n c c
x k Q t n x k u k R u kJ
u k M x k x k M u k
+
= +
⎧ ⎫+ +⎪ ⎪= ∑ ⎨ ⎬+ +⎪ ⎪⎩ ⎭
1 ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
T Tt n c cfinitet T T Tk t c c
x k Q k x k u k R u kJ
u k M x k x k M u k
+ −
=
⎧ ⎫+⎪ ⎪= ∑ ⎨ ⎬+ +⎪ ⎪⎩ ⎭
Remarks
• To obtain accurate results it should be assumed that system will remain time invariant after t+n time instant:
• Therefore if real behaviour of the system is closer to the assumption results are more accurate
Example
Example
• Plant model
• Reference model
( ),2
,2
atan ( )0 0.011.7
( 1) ( ) ( ) ( )( ) 0.3 00 1
p
p p pp
x tx t x t u t tx t ξ
⎡ ⎤⎢ ⎥ ⎡ ⎤ ⎡ ⎤
+ = + +⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦⎢ ⎥
⎣ ⎦
[ ]( ) ( ) 1 0 ( )h py t y t x t= =
( 1) [1] ( ) [0] ( )r r rx t x t tξ+ = +
( ) [1] ( )h rr t x t=
Results
0 10 20 30 40 50 60 70-0.2
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6output
SDRE Proposed algorithm Constant gain feedback
Results
0 10 20 30 40 50 60 70-2.5
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2control
SDRE Proposed algorithm Constant gain feedback
The NLQGPC control law derivation• Re-written state equation:
where
• State-space model with prediction-output equation
Note: that state equation is identical to the state equation of the controlled system.
1 ,t t t t t N tx A x U Gβ ξ+ = + +
[ ]1 2,0 ,0 ,...,0t t NBβ =
1 ,
1, , , , , , 1
t t t t t N t
t N t N t t t N t N t N t N
x A x U G
Y A x S U G
β ξ+
+ −
= + +
= Φ + + Ξ
The NLQGPC control law derivation
• Reference signal model:
• Augmented system :
with
1
1,
R R R R Rt t t
R Rt N t
X A X G
R C X
ξ+
+
= +
=
1 ,A
t t t t t N tUχ χ ξ+ = Θ +Ω +Γ
1, , , , , 1t N t t t N t N t N t NS U Gχ+ −Ψ = ϒ + + Ξ
1, 1, 1, ,
0 0, , , , ,
00 0
,
t tt tAt t t tR RR R
t t
Rt N t N t N t t N t
x A G
X A G
Y R A C
ξ βχ ξ
ξ
+ + +
⎡ ⎤ ⎡ ⎤⎡ ⎤ ⎡ ⎤⎡ ⎤= Θ = = Ω = Γ =⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥
⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥ ⎣ ⎦⎣ ⎦ ⎣ ⎦⎣ ⎦ ⎣ ⎦⎡ ⎤Ψ = − ϒ = Φ −⎣ ⎦
The NLQGPC control law derivation• The cost function:
or:
Introduce notation:
Final form:
1 0
1lim ( ) ( )2
h
h
t T N NTT i i
t k i k i E k i k i k i U k iT h k t i i
J E y r y r u uT
+
+ + + + + +→∞ = = =
⎧ ⎫⎡ ⎤⎛ ⎞⎪ ⎪= − Λ − + Λ⎢ ⎥⎜ ⎟⎨ ⎬⎜ ⎟⎢ ⎥⎪ ⎪⎝ ⎠⎣ ⎦⎩ ⎭∑ ∑ ∑
, ,
, , , , , ,
, ,
1lim2
h
h
T T T Tk k E k k k N k N E k k
t TT T T T
t k k E k N k N k N k N E k N k NT h k t T
k N U k N
U S
J E S U U S S UT
U U
χ χ χ
χ+
→∞ =
⎧ ⎫⎡ ⎤⎛ ⎞⋅ ϒ Λ ϒ ⋅ + ⋅ Λ ϒ ⋅ +⎪ ⎪⎢ ⎥⎜ ⎟⎪ ⎪⎢ ⎥⎜ ⎟= ⋅ϒ Λ ⋅ + ⋅ Λ ⋅ +⎨ ⎬⎢ ⎥⎜ ⎟⎪ ⎪⎢ ⎥⎜ ⎟⎜ ⎟+ ⋅Λ ⋅⎪ ⎪⎢ ⎥⎝ ⎠⎣ ⎦⎩ ⎭
∑
, , ,, ,T T Tk k E k k k E k N k k N E k N UQ M S R S S= ϒ Λ ϒ = ϒ Λ = Λ + Λ
0J+
, 0,
1lim2
h
h
t Tk k kT T
t k k N TT k Nh k t k k
Q MJ E U J
UT M R
χχ
+
→∞ =
⎧ ⎫⎡ ⎤⎛ ⎞⎡ ⎤ ⎡ ⎤⎪ ⎪⎡ ⎤⎢ ⎥⎜ ⎟= +⎢ ⎥⎨ ⎬⎢ ⎥⎣ ⎦⎜ ⎟⎢ ⎥⎢ ⎥ ⎣ ⎦⎪ ⎪⎣ ⎦⎝ ⎠⎣ ⎦⎩ ⎭∑
NLQGPC control law derivation - Algorithm 1
The control law minimising the cost function:
where : solution of Algebraic Riccati Equation
This Algebraic Riccati Equation contains state dependent matrices calculated at time t, which contain the prediction of future system behaviour
,tP ∞
( ) ( )1, , ,
T T Tt N t t t t t t t t tU P R P M χ
−∞ ∞= − Ω Ω + Ω Θ +
( )( ) ( )tP Q Θ1
, , , , ,T TT T T
t t t t t t t t t t t t t t t tP M P R P M P−
∞ ∞ ∞ ∞ ∞= +Θ Θ − +Θ Ω +Ω Ω +Ω
, ,t t tQ M R
NLQGPC control law derivation - Algorithm 2
• A more accurate solution of the minimisation problem:
• Cost function split in two parts – finite horizon – infinite horizon.
1
,,
0
,,
1lim2 hh
t N k k kT Tk k N T
k Nk t k kt t N TT h k k kT T
k k N Tk Nk t N k k
Q MU
UM RJ E J
T Q MU
UM R
χχ
χχ
+ −
=
+ +→∞
= +
⎧ ⎫⎡ ⎤⎛ ⎞⎛ ⎞⎡ ⎤ ⎡ ⎤⎪ ⎪⎡ ⎤⎢ ⎥⎜ ⎟⎜ ⎟ +⎢ ⎥ ⎢ ⎥⎣ ⎦⎜ ⎟⎪ ⎪⎢ ⎥⎜ ⎟⎢ ⎥ ⎣ ⎦⎣ ⎦⎪ ⎝ ⎠ ⎪⎢ ⎥⎜ ⎟= +⎨ ⎬⎢ ⎥⎜ ⎟⎛ ⎞⎡ ⎤ ⎡ ⎤⎪ ⎪⎡ ⎤⎢ ⎥⎜ ⎟⎜ ⎟⎢ ⎥ ⎢ ⎥⎪ ⎪⎣ ⎦⎜ ⎟⎜ ⎟⎢ ⎥⎢ ⎥ ⎣ ⎦⎣ ⎦⎪ ⎪⎝ ⎠⎝ ⎠⎣ ⎦⎩ ⎭
∑
∑
NLQGPC control law derivation - Algorithm 2
• Difference Riccati Equation :
boundary condition iterated backwards
• The control vector minimising cost function:
1, 1,..., 1for k t N t N t= + − + − +
( )( ) ( )11 1 1 1
T TT T Tk k k k k k k k k k k k k k k k kP Q P M P R P M P
−+ + + += +Θ Θ − +Θ Ω +Ω Ω +Ω Θ
,t N t NP P+ + ∞=
( ) ( )1, 1 1
T T Tt N t t t t t t t t tU P R P M χ
−+ += − Ω Ω + Ω Θ +
Example• The model is given by the following non-linear state space equations
• Next the model is re-arranged into Linear State Dependent form:
( )( )
1 1 1 2 11
32 2 1 21
0.3 sin
0.3
t t t t t
t t t t t
t t
g
g
y
ζ ζ ζ ζ ξ
ζ ζ ζ υ ξ
ζ
+
+
= − ⋅ + +
= − ⋅ + +
=
( )
( )[ ] [ ]
1
11
22
0.3 sin1 1 0 0
1 00 1 0.3
1 0 0 ,
t
tt t t t
t
t t t
gg
y
ζ
ζζ ζ υ ξ
ζ
ζ υ
+
⎡ ⎤⋅⎢ ⎥− ⎡ ⎤ ⎡ ⎤⎢ ⎥= + +⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎣ ⎦ ⎣ ⎦⎢ ⎥
− ⋅⎢ ⎥⎣ ⎦= +
Example
• The system is controllable since
( )( )22
0 12
1 1 0.3 trank
ζ ζ
⎛ ⎞⎡ ⎤⎜ ⎟⎢ ⎥∀ =⎜ ⎟⎢ ⎥− ⋅⎜ ⎟⎢ ⎥⎣ ⎦⎝ ⎠
Example• The step response for two NLQGPC algorithms is compared with
SDRE with g=0.01 (noise level)
0 5 10 15 20 250
0.5
1
1.5
2
2.5
3
3.5
4output
Alg. 2, Setpoint=1: J=2.5178Setpoint=3: J=23.6322Alg. 1, Setpoint=1: J=2.5214 Setpoint=3: J=24.1597SDRE, Setpoint=1: J=2.5799 Setpoint=3: J=27.2109
Example• Now compare noise rejection (for two levels of process noise)
0 5 10 15 20 250
1
2
3
4output
0 5 10 15 20 250
1
2
3
4output
Alg. 2, g=0.01: J=23.5602Alg. 1, g=0.01: J=23.9984SDRE, g=0.01: J=26.9404
Alg. 2, g=0.1: J=22.4603Alg. 1, g=0.1: J=22.852SDRE, g=0.1: J=25.7435
Advantages & Disadvantages of NLQGPC
• Advantages:1. Controls based on solutions to the NLQGPC
have been shown to offer high performance. 2. Less computational burden than other non-linear
predictive control techniques. • Disadvantages:1. Since NLQGPC utilizes the Riccati equation, it
is an unconstrained predictive control technique.2. Like SDRE, NLQGPC doesn’t guarantee closed-
loop global stability.
Dealing with constraints in NLQGPCThe input constraints can be approximated by means of smooth limiting functions, and then included into the dynamics of the plant in a state-dependent state-space form.
α≤≤ u0 αα ≤≤− u
Improving stability via “Satisficing”
Satisficing is based on a point-wise cost/benefit comparison of an action.
The benefits are given by the “Selectability”function Ps(u,x), while the costs are given by the “Rejectability” function Pr(u,x).
The “satisficing” set is those options for which selectability exceeds rejectability: i.e.,
)x,u(bP)x,u(P:u)b,x(S rs ≥=
CLF-Based Satisficing Technique
The selectability criteria is defined to be:
The rejectability criteria is defined to be:
b=0, therefore, the satisficing set S:( , ) ( ) T
rP u x l x x Rx= +
( , ) : ( ) 0TxS x b u V f gu= − + ≥
)guf(V)x,u(P Txs +−=
Augmenting NLQGPC with Satisficing
By projecting the NLQGPC controller point-wise onto the satisficing set, the good properties of the NLQGPC approach are combined with the analytical properties of satisficing.
Example: Control of F-8 aircraft
The non-linear dynamical model of the F-8 fighter aircraft:
rad.u
u.uxux.u.
x.x.x.x.x
,xx
,u.ux.ux.u.x.xx
x.x.xx.xx.x
052360
46146265696720
564347039602084
63047028021508463
019047008808770
321
21
31
21313
32
321
21
313
21
22
2131311
≤
+++−
−−−−=
=
+++−+−
−+−+−=
0 2 4 6 8 10 12 14-0.2
-0.1
0
0.1
0.2
0.3
0.4
0.5
Time
Ang
le o
f Atta
ck (r
ad)
Blue lines…………Unconstrained NLQGPC.
Black lines ……… Constrained NLQGPC.
Magenta lines ……Constrained NLQGPC with guarantee of global asymptotic stability
0 2 4 6 8 10 12 14-0.08
-0.06
-0.04
-0.02
0
0.02
0.04
Time
u (ra
d)Elevator Deflection
radu 05236.0≤
NLQGPC
High Performance
Deals with input Constraints
Low Computational
Burden
Guarantee of Robustness &
Asymptotic Stability
NonNon--Linear Generalized Minimum Linear Generalized Minimum Variance ControlVariance Control
Contents
Introduction
Nonlinear GMV control problem and solution
Relationship to the Smith Predictor
Incorporating future information:Feedforward and Tracking
Simulation example
Introduction
• 1969: Åström introduces Minimum Variance (MV) controller assuming linear minimum phase plant. Successful applications in pulp and paper industry.
• 1970s: Clarke and Hastings-James modify the MV control law by adding a control costing term. This is termed a Generalized Minimum Variance (GMV) control law and is the basis for their later self-tuning controller.
• The GMV control law has similar characteristics to LQG design in some cases and is much simpler to implement
• However, when the control weighting tends to zero the control law reverts to the initial algorithm of Åström, which is unstable for non-minimum phase processes.
Introduction
Aim: introduce a GMV controller for nonlinear, multivariable, possibly time-varying processes
• The structure of the system is defined so that a simple solution is obtained.
• When the system is linear the results revert to those for the linear GMV controller.
• There is some loss of generality in assuming the reference and disturbance models are represented by linear subsystems.
• However, plant model can be in a very general nonlinear operator form, which might involve state-space, transfer operators, neural networks or even nonlinear function look-up tables.
Nonlinear system description
Pc
Wr
Wd
r e u + -
y
d
W + +
m
Fc Disturbance model
Control weighting
Reference
Error weighting
+ + ξ
C0
Nonlinear plant Controller
0 c cP e uφ = +F
ω
( )( ) ( )( )-kku t z u t=W WNonlinear plant model:
1= fd dW A C−
1 fr rW A E−=
Linear disturbance model:
Linear reference model:
Plant modelNonlinear plant model can be given in a very general form, e.g.:• state-space formulation• neural network / neuro-fuzzy model• look-up table• Fortran/C code
ζ
0kW
dW
kz − 1kW +
Nonlinear Linear
d
Control
Delay
Plant subsystems
u m y
Output
It can include both linear and nonlinear components,e.g. Hammerstein model:
u y
( , ) 0f u y =
Just need to obtain the output to given input signal
NGMV problem formulationTo minimize: variance of the “generalized” output φ0(t):
20[ ( )]NGMVJ E tφ=
( ) ( )( )0 ( ) c ct P e t u tφ = + Fwith
- linear error weighting1c cn cdP P P−=
( )( ) ( )( )c ck
ku t z u t−=F F - control weighting (possibly nonlinear)
• Control weighting assumed invertible and potentially nonlinear to compensate for plant nonlinearities in appropriate cases
• The weighting selection is restricted by closed-loop stability
NGMV problem solution
( )( ) ( )( )( )
0 ( ) ( ( ))
( ) ( )
kc k f c
kck c k c f
t P z u t Y t u t
z P u t P Y t
φ ε
ε
−
−
= − + +
= − +
W F
F W
kc fPY F z R−= +
( )0 ( ) ( ) ( ) ( )ck c kt F t P u t k R t kφ ε ε= + ⎡ − − + − ⎤⎣ ⎦F W
The approach also similar:
Diophantine equation
* * *f f d d r rY Y W W W W= +
Spectral factorization
statistically independent ε(t) – white noise (sequence of independent random variables)
1( ) ( ) ( )NGMVck c ku t P R tε−= − −F W
stable causal nonlinear operator inverse
Optimal control:
Controller implementation1 1 1( ) [( ) ]( )NGMV
ck f k fu t FY RY e t− − −= − −F W
d
++u-
+
Controller
Disturbance
eReference
OutputPlant
y+-
r 1fRY− 1
ck−F
kWW
1fFY−
linear blocks
Existence of a Stable Operator Inverse• Necessary condition for optimality:
operator must have a stable inverse
• For linear systems: the operator must be strictly minimum-phase.
• To show this is satisfied for a very wide class of systems consider the case where Fck is linear and negative so that Fck = -Fk . Then obtain:
( )c k ckP −W F
( ) ( )1c k k k k c kP F u F F P I u−+ = +W W
1 .c k cK F P−=
return-difference operator for a feedback system withA delay-free plant and controller
PID-based initial designConsider the delay-free plant Wk and assume a PID controller KPID exists to stabilize the closed-loop system.
Then a starting point for the weighting choice that will ensure the operator( )c k kP F+W is stably invertible is
, 1c PID kP K F= =
To demonstrate this selection reasonable consider scalar case and let controller
( ) ( ) ( ) 1 21 0 1 2 0 2 21
0 21 12
11 1c
k k k k k z k zkK k k zz z
− −−
− −
+ + − + += + + − =
− −
Assume the PID gains are positive numbers, with small derivative gain. Then simple to confirm if Fk = 1 the Pcn term is minimum phase and has real zeros.
Relationship to the Smith PredictorThe optimal controller can be expressed in a similar form to that of a Smith Predictor. This provides a new nonlinear version of the Smith Predictor.
1ck
−F
10 f
F Y−
1 10( )
fp cd kA P G Y D− −
Plant
Compensator
-
_ 1 1
0( )fp cdA P G Y− − y +
+ + + _ +
r u
+
kD
km
d
W
_
kW
Reference
Smith Predictor form of NGMV controllerThe system may be redrawn and the compensator rearranged as shown below. This structure is essential if Pc includes an integrator.
_
+
u
Plant
- +
kD
-
+ + +
p
kW
Compensator
W1 10p fA G Y− −
Disturbance
0ψ
1 1
ck cdP− −F
cnP
Output Reference y
r
Comments• This last structure is intuitively reasonable. With no plant-model mismatch, the
control is not due to feedback but involves an open-loop stable compensator.
• The nonlinear inner-loop has weightings acting like an inner-loop controller. If weightings are chosen to be of usual form this will represent a filtered PID controller.
• Such a choice of weightings is only a starting point, since stability is easier to achieve. However, control weighting can have additional lead term and high frequency characteristics of optimal controller will then have more realistic roll off.
• Stability: Under the given assumptions the resulting Smith system is stable. This follows because the plant is stable, the inner-loop is stable and there are only stable terms in the input block.
1ck cP−F
Feedback + Feedforward + Tracking Control
wW
Wd0
u
d0
W +
m
Disturbance models
Nonlinear plant
0e - +
w
Pc Error weighting
Control weightingFc
dWrW
Setpoint
η
r + +
++
Controller
+ +
C1
C2
+ +
r
fy
ζ
Measurable Un-measurable
+ +
ξ
y 0C
fH
( ) ( )( )0 ( ) c ct P e t u tφ = + F
fH ω
Feedback gain/dynamics
Scaling
+
d1
Reference
future referenceinformation
Feedback, Tracking and Feedforward Control Signal Generation Control Modules
d
+ +
u
+e W
fH
1 12
− −rd rG P E
( )1 1 1 1 10 0 1 1 1 1 3
id f d d di dG P D z G P D W W− − − − − −−
01 1
0 1− −d fG P D
+ + Nonlinear plant
+
Feedback, Feedforward and Tracking Controller
fu
kW1
0 fF Y −
ru
+
-
m
Reference
Measured disturbance
OutputSetpoint 1
ck−F
y
( )r t p+
fH w + -
Total disturbance f
y
Simulated example2-by-2 model given in the non-linear state space form:
21 12
121
2 2 2( )
( )( 1) ( )1 ( )
( 1) 0.9 ( ) ( )( ) ( )
x t
x tx t u tx t
x t x t e u ty t x t
−
+ = ++
+ = +=
Both outputs are followed by a transport delay of k = 6 samples so the time-delay matrix:
6
6
00k
zD
z
−
−
⎡ ⎤= ⎢ ⎥⎣ ⎦
Models:
1
0
1
0.1 01 0.5
0.101 0.5
dzW
z
−
−
⎡ ⎤⎢ ⎥−= ⎢ ⎥⎢ ⎥⎢ ⎥−⎣ ⎦
1
1
1 01
101
rzW
z
−
−
⎡ ⎤⎢ ⎥−= ⎢ ⎥⎢ ⎥⎢ ⎥−⎣ ⎦
16
1
1 01
101
dzW z
z
−−
−
⎡ ⎤⎢ ⎥−= ⎢ ⎥⎢ ⎥⎢ ⎥−⎣ ⎦
measurabledisturbance
unmeasurabledisturbance
reference
Transient responsesFeedforward action
0 20 40 60 80 100 120 140 160 180 2000
0.5
1
1.5
2Output 1
0 20 40 60 80 100 120 140 160 180 2000
0.5
1
1.5
2Output 2
setpointNGMVNGMV+FFNGMV+FF+TR
0 20 40 60 80 100 120 140 160 180 2000
0.5
1
1.5Control 1
0 20 40 60 80 100 120 140 160 180 2000
0.5
1
1.5Control 2
NGMVNGMV+FFNGMV+FF+TR
Future reference information incorporated
Stochastic performance
0 20 40 60 80 100 120 140 160 180 200-1
0
1
2
3Output 1
0 20 40 60 80 100 120 140 160 180 200-2
-1
0
1
2
3Output 2
setpointNGMVNGMV+FFNGMV+FF+TR
0 20 40 60 80 100 120 140 160 180 200-1
0
1
2Control 1
0 20 40 60 80 100 120 140 160 180 200-1
-0.5
0
0.5
1
1.5Control 2 NGMV
NGMV+FFNGMV+FF+TR
Controller Var[e] Var[u] Var[φ0]NGMV FB 0.61 8.43 2.45NGMV FB+FF 0.51 8.41 0.82NGMV FB+FF+TR 0.48 8.37 0.27
Concluding Remarks
State dependent models gives a useful structure for NL predictive controllers
NGMV has much potential for development with multi - step predictive control an obvious development.Key to success in NL control is to show works and practical on real processes - why NGMV seems great potential.