Ifac
Ifac
Ifac
A.Brdys T.Chang
School of Electronic, Electrical Engineering and Computer, The University of Birmingham, Birmingham B15
2TT, UK; Tel: +44 121 414 4354, Fax: +44 121 414 4291, email: [email protected]
bql (t ) a il (t )
a il (t )]
l u
validated by simulation. The results are presented in
section 5. The quality control in DWDS is at present θ u (t ) = [b1u (t )
bqu (t ) a iu (t )
l
a iu (t )]
u
θ (t ) = [θ 1 (t ) θ n (t ) ] u min (t ) ≤ u (t ) ≤ u max (t )
(6)
= [b1 (t ) bq (t ) a i (t ) a i (t ) ] | u (t ) − u (t − 1) |≤ ∆u max
l u
The θ (⋅) and ε 0 (⋅) constitute the model uncertainty. where c(⋅) is the input and output constraint
conditions represented by (5) and (6), and
Let y [pt , t ] (⋅) denote the plant response to input
0
y p (u (⋅))(t ) is the plant response to the input u (⋅) .
u[ t ,t ] (⋅) over time period [t 0 , t ] . Clearly there exist
0 As the control problem is under constraints and the
the trajectories of θ (⋅) and ε 0 (⋅) so that with these inputs are delayed the Model Predictive Control
scenarios of the model uncertainty the model (MPC) will be applied to design the controller.
response equals to the plant response, that is Hence, it is assumed that Tc < Tm .
y [ t ,t ] (⋅) = y [pt ,t ] (⋅) . Different inputs require different
0 0
scenarios of θ (⋅) and ε 0 (⋅) in order to match the 2.2 Parameter Piece-Wise Constant Bounded Model
plant responses. It is assumed that the control input is
valued on a compact set so that the trajectories of Parameter θ (t ) can abruptly change their values at
θ (⋅) and ε 0 (⋅) can be bounded above and below time instant t j ∈ [t0 , t0 + Tm ] , j = 1,2,
Np and
over a time interval [t 0 , t 0 + Tm ] by the bounded t N = t0 + Tm . Within the time interval [t j −1 , t j ] the
p
, Np (8)
control design. Hence the following holds:
where H m is the control sequence dimension, H p is
Let I j define set of active parameter indices over
the prediction horizon, H m ≤ H p , and Q is positive-
S j . Hence, θ j = {θ i }i j j ∈I j
is the active parameter definite matrix. The first part of the index is to
sub-vector over S j . Hence, θ (t ) = θ j
for t ∈ S j , minimise the total control energy and at the same
time attempts to avoid abrupt control value change.
and θ is treated as constant. The corresponding
j
For the water quality control by chlorine injection,
bounds on θ j are calculated as follows: this part is to minimise the total chlorine dose
( )
applied. The terminal output of the finite predictive
θ min
j
= {min
t∈S
θ il (t ) }i ∈I j j j
horizon is penalised by the second part of the index,
= {max (θ (t ) )}
j
which tends to keep the terminal output close to the
θ j
max
u
ij i j∈I j reference value y r by applying a tuning knob µ .
t∈S j
y min (t + H p ) ]T
(16)
= [y )]
Hence, the nominal parameter trajectories satisfy
(t + 1) (t + H p
max max max T
Y
y (17)
θˆ(t ) = θˆ j for t ∈ S j . It is assumed without any loss
of generality that εˆ 0j = 0 . The optimisation problem The limits are modified by the safety zones σ l and
to be solved by MPC at time instant t can be σ u as:
formulated as:
Ysmin = Y min + σ l Ysmax = Y max − σ u
J (Uˆ ) = Uˆ T QUˆ + µ[ y (t + H p | t ) − y r ] 2 (14)
σ l = [σ 1l σ Hl ]T σ u = [σ 1u σ Hu ] T
[ ]
p p
Yˆ = y (t + 1 | t ) y (t + H p | t )
T
[σ σ ]∈ ∑
l u
Uˆ = [u (t | t ) u (t + H m − 1 | t )]
T
∆
∑ ={[σ σ u ] : σ il ≥ 0, σ iu ≥ 0, for i = 1
l
H p and
y (t + k | t ) = θˆ(t + k )ϕ (t + k − 1) , for k = 1, ,Hp
(t + i ) + σ < y (t + i ) − σ }
min l max u
y i i (18)
(15)
The modified model based constraints read:
| u c (t ) − u (t ) |≤ ε e
Ys min
≤ Yˆ ≤ Ysmax (19)
where y m (t ) is the plant output measurement, u c (t )
The condition (18) is needed in order to make sure
is the controller output or the actuator input and
that the modified constraints define nonempty set.
The input constraints are treated as hard constraints
ε m and ε e are the error bounds.
in the optimisation formulation. The actuator error The plant output prediction at t over [t , t + H p ] is
ε e will also be considered in implementing a control performed based on a priori information contained in
command. Hence, the input constraints are modified the past inputs and output measurements, future
in order to cater for the actuator error as: inputs, input-output model equations and uncertainty
bounds. This a priori information has been described
U min ≤ Uˆ ≤ U max (20) in a form of equalities and inequalities constraining
outputs over [t , t + H p ] . Any output trajectory
− ∆U max ≤ ∆Uˆ ≤ ∆U max
U min = [u min (t ) + ε e u min (t + H m − 1) + ε e ]
T satisfying these constraints can be the plant response.
The robust output prediction provides the intervals:
U max = [u max (t ) − ε e u max (t + H m − 1) − ε e ]
T
Ypl = [ y lp (t + 1 | t ) y lp (t + H p | t )]T
∆U max = [∆u min (t ) − 2ε e ∆u min (t + H m − 1) − 2ε e ]
T
Ypu = [ y up (t + 1 | t )
y up (t + H p | t )]T
Finally, the MPC optimisation task at t reads:
over [t , t + H p ] bounding the plant output values
arg min ( J (Uˆ )) over [t , t + H p ] . Hence,
Uˆ (σ l , σ u ) = Uˆ
subject to Uˆ ∈ Ω s
(21)
y lp (t + k | t ) ≤ y p (t + k ) ≤ y up (t + k | t ) (23)
∆
N (•)
Ω s =Uˆ ∈ R H m : c s (Uˆ , Yˆ ) ≤ 0, Yˆ = Uˆ → Yˆ for k = 1, ,Hp
î
where c s (⋅) is the mapping describing the modified Based on model ℜ(⋅) of (10)-(12), the plant output
input and output constraints (20) and (19). After the bounding constraints at t+k can be summarised as:
optimisation problem has been solved, only the first
m = 1, , k
min [y (t + k | t )]
a robust prediction of the plant response to
Uˆ (σ l , σ u ) . If the feasibility of the proposed control y lp (t + k | t ) = (24)
subject to y (t + k | t ) ∈ P k
can not be guaranteed then the safety zones σ , σ l u
max[y (t + k | t )]
are redesigned and new control actions are generated y up (t + k | t ) = (25)
as before. This repeats till suitable safety zones are subject to y (t + k | t ) ∈ P k
determined.
If the predicted plant output satisfy:
3.2 Assessment of Feasibility by Robust Prediction Ypl ≥ Y min and Ypu ≤ Y max (26)
f (V 2 H )] T
p
this sequel. The algorithm I can now be stated as:
(27) Algorithm I:
where
V = [V1
[
V 2 H ]T = (Y min − Y pl ) T
p
(Y pu − Y max ) T ]
T
(i) Initially set k = 0, Λ = Λ(1) , Ψ = Ψ (1) ,
and || C ( 0 ) || ∞ = ∞ ;
x if x > ε+ (ii) Find the minimizer of (29) x(Ψ , Λ ) and denote
C = C (x) ;
f ( x) = ( x + ε ) / 4ε +
+ 2
if −ε+ ≤ x ≤ ε+ (28)
0 if x < −ε +
1 1
î (iii) If || C || ∞ > || C (k ) || ∞ , ∀i :| C i |> || C (k ) || ∞ set
4 4
ψ i = 10ψ i , and go to (ii);
where ε + is small positive number. Notice, that if (iv) Set k = k + 1, Λ( k ) = Λ, Ψ ( k ) = Ψ , C ( k ) = C ;
C (σ l , σ u ) = 0 holds then (26) holds as well. (v) Set Λ = Λ( k ) − Ψ ( k ) C ( k ) and go to (ii) until the
Moreover, the constraint C (σ l , σ u ) = 0 can get constraint is fulfilled with desired accuracy,
arbitrarily close to (26) by setting ε + sufficiently where x = [σ l , σ u ] .
small. The multiplier (shifted) type of penalty
function associated with (27) is defined as (Fletcher, The algorithm can ensure global convergence with
1987): the convergent rate of 0.25 by online tuning in step
(iii).
1 If Λ* is known, (29) can be attempted by Newton
φ (σ l , σ u , Ψ , Λ ) = [C (σ l , σ u )] T Ψ[C (σ l , σ u )] methods. Applying the Newton algorithm we obtain
2
that:
− ΛC (σ l , σ u )
∇φ ( x) = AΨC ( x) − AΛ* where A = ∇C (x )
where Ψ = diag 2 H ψ i , Λ = [λ1
λ 2 H ] , λi are
∇ 2φ ( x ) = ∇ 2 C ( x)[ΨC ( x) − Λ* ] + AΨA T = W x
p p
x ( k +1) = x ( k ) − ( A T ) −1 [C ( x ( k ) ) − Ψ −1 Λ* ] (31)
6 18 13 14
22
Notice that the iteration (32) does not require Λ* any
longer. It is surprising at the first glance. However, 10
9 21 12
the formula (32) has a very appealing form. Namely, 3
A drinking water distribution case-study system was where P(t ) is the set of the paths from the injection
investigated. The network structure is illustrated in
Fig. 1. There are 16 nodes, 27 pipes and 3 tanks in node to the monitored node, α p (t ) is the chlorine
the system. The water is pumped from the source decay factor related to path p and d p (t ) is the
(node 100 and node 200) and is also supplied by the detention time in path p . It describes a time-varying
tanks (node 17,18,19). Node 16 and node 8 are
system with time-varying delayed inputs. In order to
selected as monitored nodes as they are the most
make the model applicable for control and
remote nodes from the source. The chlorine
concentrations at these nodes are the two plant estimation, the delayed time d p (t ) is discretized as
outputs y1 and y 2 . In order to maintain the chlorine in (Polycarpou, 2001). Finally, a time-varying model
with constant delays is obtained and extended to a
level at the monitored nodes, two booster stations are
MIMO form including tanks:
installed at the nodes 5 and 10. The chlorine
concentrations at the injection nodes are the inputs 2 2 i = 24
1.2
with constraints and bounded disturbances.
1.1
Automatica, 33, 551-568.
1
Hager, W.W. (1979). Lipschitz continuity for
0.9
constrained processes. SIAM J. Control and 0.8
Optimisation, 17, no.3, 321-338. 0.7
0 50 100 150 200 250 300
Kothare, M.V., V. Balakrishnan and M. Morari
(1996). Robust constrained model predictive Chlorine Injection at Node 1
2.2
control using linear matrix inequalities.
Automatica, 32(10), 1361-1379. 2.1
0.9
0.8
0.14
0.7
0 50 100 150 200 250 300
1.9
0.1
1.8
0.08 1.7
1.6
0.06
1.5
0 50 100 150 200 250 300