7/27/2019 86692946
1/16
Article
Transactions of the Institute of
Measurement and Control
35(2) 166180
The Author(s) 2012
Reprints and permissions:
sagepub.co.uk/journalsPermissions.nav
DOI: 10.1177/0142331212438910
tim.sagepub.com
RungeKutta model-based adaptivepredictive control mechanism for
non-linear processes
Serdar Iplikci
Abstract
This paper proposes a novel non-linear model predictive control mechanism for non-linear systems. The idea behind the mechanism is that the so-
called RungeKutta model of a continuous-time non-linear system can be regarded as an approximate discrete model and employed in a generalized
predictive control loop for prediction and derivative calculation purposes. Additionally, the RungeKutta model of the system is used for state estima-
tion in the extended Kalman filter framework and online parameter adaptation. The proposed method has been tested on two different non-linear sys-
tems. Simulation results have revealed the effectiveness of the proposed method for different cases.
Keywords
Extended Kalman filter, non-linear model predictive control, optimal control, parameter estimation
Introduction
Since the appearance of the first model predictive control
(MPC) technique (Richalet et al., 1978), many MPC methods
have been proposed (Cutler and Ramaker, 1980; Keyser and
Cauwenberghe, 1985; Soeterboek, 1992) in the literature and
they have been proven to be effective and robust tools forcontrolling industrial processes especially for non-minimum
phase plants, open-loop unstable plants and plants with vari-
able dead-time and/or parameters (Camacho, 1993; Clarke
and Mohtadi, 1989). They have been applied not only to
industrial processes (Clarke, 1988; Richalet, 1993), but also to
a wide spectrum of areas ranging from chemistry to aerospace
(Qin and Badgwell, 2003) mainly because of their superior
features, namely the time-domain formulation, receding hori-
zon scheme and constraint-handling capability. Among oth-
ers, the most special and probably the most common one is
the so-called generalized predictive control (GPC) technique
(Clarke et al., 1987a,b; Clarke, 1994). Still, all MPC tech-
niques share the same idea: the model of the plant is used to
predict future behaviour of the plant in response to a candi-
date control vector, which is to be optimized by solving a
finite-horizon open-loop optimal problem during each sam-
pling period, and then the first element of the optimized con-
trol vector is applied to the plant. In this respect, the model of
the plant plays a crucial role in the MPC methods. The first
MPC technique (Richalet et al., 1978) is based on an impulse-
response model, whereas another early method (Cutler and
Ramaker, 1980) is based on the step-response model of the
plant. Although the MPC techniques based on the impulse-
and step-response models exhibit adequate performance for
stable systems, they are inapplicable to unstable ones. In
order to overcome this problem, techniques based on the
CARIMA (Clarke et al., 1987a,b) and CARMA (Keyser and
Cauwenberghe, 1985) models have been proposed. Even if
these MPC techniques have been suggested for discrete-time
systems at the beginning, their continuous-time versions can
be found in the literature (Demircioglu and Gawthrop, 1991;
Gawthrop and Demircioglu, 1989). These GPC methods have
originally been developed for linear plants, which leads to anoptimization problem that can be solved analytically. This
study, on the other hand, concentrates on controlling non-
linear continuous-time processes. In this case, one solution is
to linearize the non-linear system dynamics around the oper-
ating points and then to apply a linear GPC technique based
on the linearized model. However, the linearization approach
may lose its efficiency in the following cases: (a) highly non-
linear processes operating in the vicinity of a fixed point, (b)
moderately non-linear processes operating in the whole oper-
ating region, (c) reference signals varying frequently in the
whole operating region. Another remedy is the so-called non-
linear model predictive control (NMPC) technique (Camacho
and Bordons, 2003, 2007; Henson, 1998), which employs anon-linear model of the plant. The NMPC technique entails
solving a constrained non-linear optimization problem during
every sampling period. It is usually a very difficult and time
consuming task to find the global solution of such a problem.
Fortunately, it is demonstrated in Scokaert et al. (1999) that
Department of Electrical and Electronics Engineering, Pamukkale
University, Turkey
Corresponding author:
Serdar Iplikci, Department of Electrical and Electronics Engineering,
Pamukkale University, Denizli, Turkey.
Email: [email protected]
7/27/2019 86692946
2/16
instead of finding the global solution, feasible, sub-optimal
solutions to this problem can yield a stabilizing controller.
Moreover, as stressed in Maciejowski (2002), it is even not
necessary to find a local minimum and the only task during
each sampling period is to find a solution that provides a suf-
ficient decrement in the cost function.
NMPC relies on the model of the non-linear plant and, as
discussed in Henson (1998) and Camacho and Bordons (2003),there are three types of non-linear plant models that are
employed in the NMPC loop. The first one is referred to as the
fundamental models, which are obtained by applying first prin-
ciples (e.g. mass, energy and momentum balances), resulting in
ordinary differential equations (ODEs) and in some cases addi-
tive algebraic equations. The second type of non-linear plant
models are obtained by inputoutput measurements and they
are therefore referred to as the empirical models. In the litera-
ture, there exist many types of empirical models employed in
the NMPC loop, such as polynomial ARMA models
(Hernandez and Arkun, 1993), Hammerstein models (Fruzzetti
et al., 1997), Volterra models (Doyle et al., 1995; Genceli and
Nikolaou, 1995; Gruber et al., 2010; Maner et al., 1996),Wiener models (Cervantes et al., 2003; Norquay et al., 1998),
and also models using soft computing tools, namely artificial
neural networks (Lawrynczuk, 2007; Piche et al., 2000), fuzzy
logic (Cho et al., 1999; Roubos et al., 1999), and machine
learning tools like support vector machines (Iplikci, 2006,
2010; Xi et al., 2007). Finally, the hybrid non-linear models
combine the fundamental and empirical approaches.
This work has been concentrated on MPC of non-linear
systems based on the fundamental models. More specifically,
the focus is on the continuous-time systems because a great
deal of the natural processes and industrial plants are in the
form of continuous-time systems. However, most of the
NMPC techniques are most naturally developed for discrete-
time systems, and therefore, it is usually necessary to convert
the non-linear optimal control problem (NOCP) into a non-
linear programming (NLP) problem by either discretization
or approximation methods, and then solve it using an NLP
solver. For this purpose, several methods, which are referred
to as the direct methods, have been proposed in the literature,
for instance collocation on finite elements (Kawathekar and
Riggs, 2007), multiple shooting (Schafer et al., 2007) and their
combinations (Tamimi and Li, 2010). Alternatively, another
approach is to employ the discretized models of the
continuous-time systems by discretizing their ODEs in the
fundamental models obtained by first principles. In Sistu and
Bequette (1996), for example, explicit and implicit Euler
methods have been considered.
This paper, on the other hand, proposes a novel NMPC
method for non-linear continuous-time systems, which is
based on the classical fourth-order RungeKutta algorithm.
In the method, a discretized model of the non-linear continu-
ous-time system, which is referred to as the RungeKutta
model of the system, is obtained by the RungeKutta algo-
rithm and then employed in the GPC loop. As will be demon-
strated in the next section, the RungeKutta model of thesystem is used not only for prediction and derivative calcula-
tion purposes in the GPC framework but also for state and
parameter estimation purposes. In the literature, there exist
many numerical integration methods for solving ODEs (Press
et al., 2007). The motivation behind the use of the fourth-
order RungeKutta algorithm among others is the fact that it
has been proved to be very accurate and stable and also works
well in many applications. The novelty in the paper is the use
of the classical RungeKutta numerical integration algorithm
to discretize the non-linear continuous-time system to obtain
its so-called RungeKutta model, whereby it is possible to
implement MPC, state estimation and online parameter esti-
mation, which results in an adaptive non-linear predictivecontroller.
This paper is organized as follows: divided into five sub-
sections, the next section introduces the proposed Runge
Kutta-based control scheme. The first subsection reviews the
classical fourth-order RungeKutta algorithm. The proposed
structure is given in the following subsection. In the third
subsection, it is demonstrated how to obtain future predic-
tions and Jacobian calculations using the RungeKutta
models. The RungeKutta model-based state and online
parameter estimation blocks, which are used in the proposed
structure, are discussed in the last two subsections, respec-
tively. In the section after that, the effectiveness of the pro-
posed structure is demonstrated on two different non-linear
multiple-input multiple-output (MIMO) systems. At the endof the section, total computation times for each system
have been given in order to have a basis for real-time applic-
ability of the proposed method. The paper ends with the
conclusions.
The proposed RungeKutta-based
control structure
MIMO systems and the RungeKutta method
Consider an N-dimensional continuous-time MIMO system
as illustrated in Figure 1(a). The state equations of the system
are
Figure 1 (a) A continuous-time multiple-input multiple-output (MIMO) system and (b) its RungeKutta model.
Iplikci 167
7/27/2019 86692946
3/16
_x1 =f1(x1(t), . . . ,xN(t), u1(t), . . . , uR(t), u)
.
.
.
_xN =fN(x1(t), . . . ,xN(t), u1(t), . . . , uR(t), u)
1
subject to state and input constraints of the form
x1(t) 2 X1, . . . ,xN(t) 2 XN, 8t 0u1(t) 2 U1, . . . , uR(t) 2 UR, 8t 0 2
Where Xis and Uis are box constraints for the states and
inputs as given below, respectively
Xi = fxi 2 < j ximin
7/27/2019 86692946
4/16
state of the plant and the accurate value of the system para-
meters, which are provided by the RungeKutta model-based
EKF and parameter estimation blocks, respectively.
Based on these predictions, the candidate control vector
u(n) is updated in a manner such that the sum of the squared
K-step ahead prediction errors are minimized with minimumdeviations in the control actions, thereby resulting in an opti-
mal control action u*(n)= u(n) +du(n) to be applied to the
plant. In other words, it is attempted to minimize the objec-
tive function Fgiven by (11)
F(u(n)) =XQq= 1
XKk= 1
(yq(n+ k) ^yq(n+ k))2
+XRr= 1
lr(ur(n) ur(n 1))2 11
where K is the prediction horizon and lr is the penalty term
associated with the rth input. For an optimal control actionu*(n), an additive correction term du(n) has to be found such
that the objective function F(u(n) + du(n)) is minimized,
while satisfying the condition for descent direction: F(u(n)
+ du(n))\ F(u(n)). The CFM block tries to minimize this
objective function with respect to du(n) based on the second-
order Taylor approximation as follows:
F(u(n) + du(n)) ffi F(u(n)) + F(u(n))u(n)
Tdu(n)
+1
2du(n)T
2F(u(n))
u2(n)
du(n) 12
whereF(u(n))
u(n)is the gradient vector and
2F(u(n))
u2(n)is the
Hessian matrix. Since it is sought for a du(n) that minimizes
the objective function, if the derivative of the approximation
ofFwith respect to du(n) is taken and then equated to zero as
F(u(n) + du(n))
du(n)ffi F(u(n))
u(n)+
2F(u(n))
u2(n)du(n) = 0 13
then du(n) is obtained as
du(n) = 2F(u(n))
u2(n)
1F(u(n))
u(n)14
which corresponds to the Newton direction that provides a
quadratic convergence to the local minimum if the Hessian
matrix is positive definite (for descent direction) and the higher-
order terms are negligibly small (Nocedal and Wright, 1999;
Venkataraman, 2002). If the Hessian matrix is not positive defi-nite, a judiciously chosen additive term gI can be added to the
Hessian to make this extended Hessian matrix positive definite.
By judiciously, we mean g should be chosen slightly larger
than the most negative eigenvalue of the Hessian matrix.
At this point, it is apparent that the calculation of the
gradient and Hessian terms, i.e. the first- and second-order
derivatives of the objective function with respect to u(n),
is needed. However, in order to avoid calculating the
time-consuming second-order derivatives, the well-known
Jacobian approximation can be employed (Nocedal and
Wright, 1999), which suggests that the (KQ + R)3R Jacobian
matrix J
)1(1 ny
)1(nyQ
1z
1y
Qy
])()1([ 11 Knyny
])()1([ Knyny QQ
)(*1 nu
)(* nuR
1z
1z
)(~1 nx )(~ nxN
1z
1z
1z
)]([ 1 nu
)]([ nuR
Cost Function
Minimization
Runge-Kutta
Model
Runge-KuttaModel Based
Parameter
Estimation
Runge-Kutta
Model Based
EKF
MIMO
System
Figure 2 Proposed RungeKutta-based control structure.
Iplikci 169
7/27/2019 86692946
5/16
J =
e(n+ 1)u1(n)
e(n+ 1)u2(n)
. . .e(n+ 1)uR(n)
.
.
....
..
....
e(n+K)u1(n)
e(n+K)u2(n)
. . .e(n+K)uR(n)
.
.
....
..
....
e(n+KQ)u1(n)
e(n+KQ)u2(n)
. . .e(n+KQ)
uR(n)ffiffiffiffil1p (u1(n)u1(n1))u1(n)
ffiffiffiffil1p (u1(n)u1(n1))u2(n)
. . .ffiffiffiffil1p (u1(n)u1(n1))
uR(n)
.
.
....
..
....ffiffiffiffi
lRp
(uR(n)uR(n1))u1(n)
ffiffiffiffilR
p(uR(n)uR(n1))
u2(n). . .
ffiffiffiffilR
p(uR(n)uR(n1))
uR(n)
266666666666666666664
377777777777777777775
=
^y1(n+ 1)u1(n)
^y1(n+ 1)u2(n)
. . .^y1(n+ 1)uR(n)
.
.
....
..
....
^y1(n+K)u1(n)
^y1(n+K)u2(n)
. . .^y1(n+K)
uR(n)
.
.
....
..
....
^yQ(n+K)
u1(n)
^yQ(n+K)
u2(n). . .
yQ(n+K)
uR(n)
ffiffiffiffiffil1
p
ffiffiffiffiffil1
p. . .
ffiffiffiffiffil1
p
..
....
. ..
..
.ffiffiffiffiffilR
p ffiffiffiffiffilR
p. . .
ffiffiffiffiffilR
p
26666666666666666664
37777777777777777775
15
can represent the gradient vector exactly and the Hessian
matrix approximately as
F(u(n))
u(n)=2JTe and
2F(u(n))
u2(n)ffi 2JTJ 16
respectively, where e is the vector of prediction errors and
input slews given by
e =
e(n+1)
.
.
.
e(n+K)
.
.
.
e(n+KQ)ffiffiffiffiffil1
pDu1(n)
.
.
.ffiffiffiffiffilR
pDuR(n)
266666666666664
377777777777775=
y1(n+1) ^y1(n+1)...
y1(n+K) ^y1(n+K)...
yQ(n+K) ^yQ(n+K)ffiffiffiffiffil1
p(u1(n) u1(n 1))
.
.
.ffiffiffiffiffilR
p(uR(n) uR(n 1))
266666666666664
37777777777777517
Thus, the correction term is computed as
du(n) = (JT
J +mI)1
JT
e 18
which implies that it is needed only the first-order derivatives
byq(n+ k)ur(n)
for q=1,.,Q and r=1,.,R.
By using the RungeKutta model of the plant given in
Equation (9), it is explained in the next subsection how to
obtain the K-step ahead future predictions of the plant outputs
and also the necessary derivatives for the Jacobian calculations.
Future predictions and Jacobian calculations
The K-step ahead future predictions of the plant outputs
can be calculated by using the RungeKutta model of the
plant if Equations (6) and (7) are employed in an iterative
manner as
x(n+ k) = f(x(n+ k 1), u(n), u)y(n+ k) = g(x(n+ k 1), u(n)) for k= 1, . . . ,K 19
It should be noted that the candidate control vector u(n) is
assumed to remain unchanged during the prediction interval
([t + Ts t + KTs]). Hence, a series of future predictions is
obtained for each output as
^yq(n+ 1), . . . , ^yq(n+K), for q=1, . . . ,Q 20
In order to obtain the necessary derivatives for the Jacobian
calculation, first, Equations (6)(8) are rewritten as
^xi(n+ k) = ^xi(n+ k 1) + 16K1Xi(n+ k 1)
+1
3K2Xi(n+ k 1) + 1
3K3Xi(n+ k 1)
+1
6K4Xi(n+ k 1) 21
for i=1,.,Nand
^yq(n+ k) =gq(^x1(n+ k), . . . , ^xN(n+ k), u1(n), . . . , uR(n))
22
for q=1,.,Q, where
K1Xi(n+ k 1) =Tsfi(^x1(n+ k 1), . . . , ^xN(n+ k 1),u1(n), . . . , uR(n), u) 23
K2Xi(n+ k 1) =Tsfi(^x1(n+ k 1) + 0:5K1X1(n+ k 1), . . . ,xN(n+ k 1) +0:5K1XN(n+ k 1), u1(n), . . . , uR(n), u)
24
K3Xi(n+k 1) =Tsfi(^x1(n+k 1) +0:5K2X1(n+k 1), . . .,^xN(n+k 1) +0:5K2XN(n+k 1),u1(n), . . .,uR(n),u)
25
K4Xi(n+ k 1) =Tsfi(^x1(n+ k 1) +K3X1(n+ k 1), . . . ,^xN(n+ k 1) +K3XN(n+ k 1), u1(n), . . . , uR(n), u)
26
Now, the problem of calculation of the derivatives is turned
out to that of the termsbyq(n+ k)
ur(n), which can be handled as
follows:
170 Transactions of the Institute of Measurement and Control 35(2)
7/27/2019 86692946
6/16
yq(n+ k)
ur(n)=
gq(^x1(n+ k), . . . ,xN(n+ k), u1(n), . . . , uR(n))
ur(n)
=gq
ur+
gq
^x1(n+ k)
^x1(n+ k)
ur(n)+ . . . +
gq
xN(n+ k)
^xN(n+ k)
ur(n)
x1 = ^x1(n+ k)
.
.
.
xN = ^xN(n+ k)
=gq
ur+
gq
x1
^x1(n+ k)
ur(n)+ . . . +
gq
xN
^xN(n+ k)
ur(n)
x1 = ^x1(n+ k)
.
.
.
xN = ^xN(n+ k)
=gq
ur+XNi= 1
gq
xi
^xi(n+ k)
ur(n)
" #x1 = ^x1(n+ k)
.
.
.
xN = ^xN(n+ k)
27
Here
^xi(n+ k)
ur(n)=
^xi(n+ k 1)ur(n)
+1
6
K1Xi(n+ k 1)ur(n)
+1
3
K2Xi(n+ k 1)ur(n)
+1
3
K3Xi(n+ k 1)ur(n)
+1
6
K4Xi(n+ k 1)ur(n)
28where
K1Xi(n+ k 1)ur(n)
=Tsfi(^x1(n+ k 1), . . . , ^xN(n+ k 1), u1(n), . . . , uR(n), u)
ur(n)
=Tsfi
ur+XNj= 1
fi
xj
^xj(n+ k 1)ur(n)
" #x1 = ^x1(n+ k1)
.
.
.
xN = ^xN(n+ k1)29
and
K2Xi(n+ k 1)ur(n)
=Tsfi
ur
x1 = ^x1(n+ k1) +K1X1(n+ k1)=2
.
.
.
xN =xN(n+ k1) +K1XN(n+ k1)=2
+TsXNj=1
fi
xj
^xj(n+ k 1)ur(n)
+1
2
K1Xj(n+ k 1)ur(n)
" #x1 = ^x1(n+ k1) +K1X1(n+ k1)=2
.
.
.
xN = ^xN(n+ k1) +K1XN(n+ k1)=2
30and
K3Xi(n+ k 1)ur(n)
=Tsfi
ur
x1 = ^x1(n+ k1) +K2X1(n+ k1)=2
.
.
.
xN =xN(n+ k1) +K2XN(n+ k1)=2
+Ts XN
j=1
fi
xj
^xj(n+ k 1)ur(n)
+1
2
K2Xj(n+ k 1)ur(n) " # x1 = ^x1(n+ k1) +K2X1(n+ k1)=2.
.
.
xN = ^xN(n+ k1) +K2XN(n+ k1)=2
31
and
K4Xi(n+ k 1)ur(n)
=Tsfi
ur
x1 = ^x1(n+ k1)+ K3X1(n+ k1)
.
.
.
xN = ^xN(n+k1) +K3XN(n+ k1)
+TsXNj=1
fi
xj
^xj(n+ k 1)ur(n)
+1
2
K3Xj(n+ k 1)ur(n)
" #x1 = ^x1(n+ k1) +K3X1(n+k1)
.
.
.
xN = ^xN(n+k1) +K3XN(n+ k1)
32
Consequently, the necessary derivatives can be obtained by
using the RungeKutta model of the plant.
The RungeKutta model-based EKF
This subsection describes the estimation of the current
state of the plant based on its RungeKutta model incombination with the well-known EKF approach (Grewal
and Andrews, 2008; Welch and Bishop, 2006). Before dis-
cussing the RungeKutta model-based EKF, it is helpful
to review EKF. Consider a non-linear discrete-time system
given by
x(n+ 1) = h(x(n), u(n)) + w(n)
y(n+ 1) = g(x(n), u(n)) + v(n)33
where x is an N-dimensional state vector to be estimated,
u 2
7/27/2019 86692946
7/16
~xi(n)
~xj(n 1) =di,j+1
6
K1Xi(n 1)~xj(n 1) +
1
3
K2Xi(n 1)~xj(n 1)
+1
3
K3Xi(n 1)~xj(n 1) +
1
6
K4Xi(n 1)~xj(n 1) 39
where
K1Xi(n 1)~xj(n 1) =Ts
fi(~x1(n 1), . . . , ~xN(n 1), u1(n 1), . . . , uR(n 1))~xj(n 1)
=Tsfi
xj
x = ~x(n1)u = u(n1)
40
and
K2Xi(n 1)~xj(n 1)
= TsXNp=1
fi
xp
1
2
K1Xp(n 1)~xj(n 1) + dp,j
" #x1 = ~x1(n 1) +K1X1(n 1)=2
.
.
.
xN= ~xN(n 1) +K1XN(n 1)=2u = u(n 1)
41
and
K3Xi(n 1)~xj(n 1)
= TsXNp=1
fi
xp
1
2
K2Xp(n 1)~xj(n 1) + dp,j
" #x1 = ~x1(n 1) +K2X1(n 1)=2
.
.
.
xN= ~xN(n 1) +K2XN(n 1)=2u = u(n
1)
42
and
K4Xi(n 1)~xj(n 1)
= TsXNp= 1
fi
xp
1
2
K3Xp(n 1)~xj(n 1) + dp,j
" #x1 = ~x1(n 1) +K3X1(n 1)
.
.
.
xN= ~xN(n 1) +K3XN(n 1)u = u(n 1)
43
Thus, the current state of the plant can be estimated by itsRungeKutta model employed in the EKF algorithm.
The RungeKutta model-based online parameter
estimation
Assume that previous state x(n) and current state x(n +1) of
a non-linear system (1) are given directly (or estimated by
EKF) at time (n + 1)Ts and that the previous control input
u(n) is known. If the RungeKutta model of the system is
employed, it is definitely possible to relate the current state of
the system to its previous state, inputs and the parameter (u)
by Equation (6). Thus, the parameter (u) of the system can be
estimated as follows: first, x(n + 1) is predicted by the Runge
Kutta model of the system and then the vector of prediction
errors related to the parameter is formed as
e =
e1e2
...
eN
26664 37775=x1(n+1) ^x1(n+ 1)x2(n+1)
^x2(n+ 1)
...
xN(n+1) ^xQ(n+ 1)26664 37775 44
Next, the Jacobian matrix consisting of the partial derivatives
of the errors with respect to the parameter is constructed as
Ju =e1
u
e2
u. . .
eN
u
T45
Finally, the parameter of the system is updated by
un+ 1 = un JTu e
JTu Ju46
In this respect, the derivatives bx i(n+ 1)u for i= 1,.
,N areneeded for calculation of the Jacobian, which can be obtained
by using Equation (6) of the RungeKutta model of the sys-
tem as described below.
^xi(n+ 1)
u=
^xi(n)
u+
1
6
K1Xi(n)
u+
1
3
K2Xi(n)
u
+1
3
K3Xi(n)
u+
1
6
K4Xi(n)
u47
where
K1Xi(n)
u=Ts
fi(^x1(n), . . . , ^xN(n), u1(n), . . . , uR(n))
u
=Tsfi
u
x = x(n)u = u(n)
48
and
K2Xi(n)
u=Ts
fi
u+
1
2
XNj= 1
fi
xj
K1Xj(n)
u
" #x1 = ^x1(n) +K1X1(n)=2
.
.
.
xN = ^xN(n) +K1XN(n)=2
49
and
K3Xi(n)u
=Tsfi
u+
1
2XNj= 1
fi
xj
K2Xj(n)u
" #x1 = ^x1(n) +K2X1(n)=2
.
.
.
xN = ^xN(n) +K2XN(n)=2
50
and
K4Xi(n)
u=Ts
fi
u+
1
2
XNj=1
fi
xj
K3Xj(n)
u
" #x1 = ^x1(n) +K3X1(n)
.
.
.
xN = ^xN(n) +K3XN(n)
51
172 Transactions of the Institute of Measurement and Control 35(2)
7/27/2019 86692946
8/16
Thus, necessary derivatives for parameter estimation can be
obtained by using the RungeKutta model of the plant.
The simulation results
In the simulations, it is assumed that both process and mea-
surement noises are independent of each other and Gaussianwith zero-mean, and that covariance matrices Q and R are
diagonal matrices given by
Q =s2wI and R=s2vI 52
where I is the identity matrix and s2w and s2v are the variances
of the process and measurement noises, respectively.
The three-tank system
The first system on which the proposed scheme has been
tested is the three-tank liquid system as sketched in Figure 3.
The dynamics of the system can be expressed by a set of
differential equations (Iplikci, 2010)
_y1(t) =1
Au1(t) Q13(t)
_y2(t) =1
Au2(t) +Q32(t) Q20(t)
_y3(t) =1
AQ13(t) Q32(t) 53
where
Q13(t) = az13Snsgn(y1(t) y3(t))ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi ffiffi2gjy1(t) y3(t)j
pQ20(t) = az20Sn ffiffiffiffiffiffiffiffiffiffiffiffiffiffi2gy2(t)pQ32(t) = az32Snsgn(y3(t) y2(t)) ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi ffiffi2gjy3(t) y2(t)jp
For the system, ui(t) is the supply flow rate of pumpi as the
ith input and yi(t) is the liquid level of tanki as the ith output.
Explanations and values for the parameters appearing in the
system equations are given in Table 1.
In this work, the aim is to control the liquid levels of tank1and tank2 by manipulating flow rate of pump1 and pump2. In
the simulations, the sampling period is selected as Ts=1.0 s
and magnitudes of the control signals are allowed to be altered
between u1min =u2max= 0 m3/s and u1min =u2max=10
4 m3/s.
Furthermore, standard deviations of measurement and process
noises are sv=0.003 and sw=0.0001, respectively. Moreover,
because of the assumption that states of the system are not
available for measurement, they are estimated by the Runge
Kutta-based EKF block of the proposed structure.Figure 4 shows the simulation results for staircase reference
inputs. From the figure, it is seen that the proposed controller
carries out the control task very successfully: it provides very
small transient and steady-state tracking error despite the exis-
tence of both measurement and process noises. Moreover, it
effectively tolerates the interactions between the tanks, which
can be observed well during the periods when the level of a
tank is changing while the other one is remaining constant.
For better visualization of the performance of the pro-
posed controller, the reference input of tank2 is changed sinu-
soidally, while the reference input of tank1 is kept constant at
0.2 m, as seen in Figure 5. As can be seen from the figure,
even though the reference input for tank1 is constant, flowrate of pump1 is changing sinusoidally in order to compensate
for the interaction between the tanks.
Finally, in order to show the effectiveness of the online
parameter estimation capability of the proposed controller,
the reference inputs are set to 0.25 and 0.2 m for tank1 and
tank2, respectively, while varying the outflow parameter az13sinusoidally between 0.2 and 0.8. It is observed from Figure 6
that correct values of the parameter are estimated accurately
in a short period and then maintained in the long run.
3.2 The Van de Vusse chemical reaction
The second process on which the proposed structure has beentested is the Van de Vusse chemical reaction. It is a non-
isothermal process affected by thermal effect, and the result-
ing open-loop system shows strictly non-minimum-phase
behaviour. In this process, the following series/parallel reac-
tions take place
A!k1 B!k2 C2A!k3 D
54
The mass and energy balances describing the dynamics of the
process are given by
pump1 pump2
A
1y 2y3y
1u 2u
nSnS
DC
tank1 tank3 tank2
13az 32az10az 30az 20az
DC
Figure 3 The three-tank liquid level control system.
Table 1 The system parameters
Parameter description Value
az13 : outflow coefficient between tank1 and tank3 0.52
az32 : outflow coefficient between tank3 and tank2 0.55
az10 : outflow coefficient from tank1 to reservoir 0.26
az20
:
outflow coefficient from tank2
to reservoir 0.28az30 : outflow coefficient from tank3 to reservoir 0.45
A: cross section of the cylinders 0.0154 [m2]
Sn: section of connection pipe n 53105 [m2]
g: gravitation coefficient 9.81 [m/s2]
Iplikci 173
7/27/2019 86692946
9/16
_CA(t) =F
V(CA0
CA(t))
k10e
E1TCA
k30e
E3TC2A
_CB(t) = FVCB(t) +k10e
E1TCA k20e
E2TCB
_T(t) =1
rCpk10e
E1TCA( DH1) +k20e
E2TCB( DH2)
+k30eE3TC2A( DH3) +
F
V(T0 T(t)) + Q
rCp
55
where CA and CB are the molar concentrations of A and B,
respectively, T is the temperature of the reactor, FV
is the dilu-
tion rate, r is the density of the reacting mixture, CP is the
heat capacity, the DHi terms are the heat of the reaction, V is
the volume of the reactor and Q is the rate of heat added or
removed per unit volume (Niemiec, 2003). Nominal values of
the system parameters are given in Table 2.
For this process, the aim is to control the molar concentra-
tion of B (CB) and the temperature of the reactor (T) by
manipulating the dilution rate (FV
) and the rate of heat added
or removed per unit volume (Q)
In the simulations, the sampling period is selected as
Ts=0.01 h and magnitudes of the control signals are allowed
to be altered between [0,500] h21
and [1000,0] kJ/lh, respec-
tively. Moreover, the standard deviations of measurement
and process noises are sv =0.01 and sw =0.001, respectively.
Since the states of the system are assumed to be unavailable
for measurement, they are estimated by the RungeKutta-
based EKF block of the proposed structure.
0 200 400 600 800 1000 1200 1400 1600 18000
0.1
0.2
0.3
0.4
time (sec.)
h1ref,
h1
h1ref
h1
0 200 400 600 800 1000 1200 1400 1600 18000
0.1
0.2
0.3
0.4
time (sec.)
h2ref,
h2
h2ref
h2
0 200 400 600 800 1000 1200 1400 1600 18000
0.2
0.4
0.6
0.8
1x 10
-4
time (sec.)
q1
0 200 400 600 800 1000 1200 1400 1600 18000
0.2
0.4
0.6
0.8
1x 10
-4
time (sec.)
q2
Figure 4 Inputs and outputs of the three-tank system for staircase reference inputs.
174 Transactions of the Institute of Measurement and Control 35(2)
7/27/2019 86692946
10/16
For staircase reference inputs, the simulation results can
be seen in Figure 7. It is observed from the figure that the
proposed controller provides very small tracking errors except
for the short periods during which the reference input for the
reactor temperature is changed abruptly. During these peri-
ods, CB inevitably deviates from its reference value for a while
and then settles back to it. This is attributed to the strong
dependence ofCB on the reactor temperature.
Yet, it can be said that the proposed controller can effec-
tively tolerate the interactions between the state variables of
the process. As a matter of fact, as seen in Figure 8, the con-
troller is able to keep the temperature very close to the con-
stant reference input even though the reference input for CBis changing sinusoidally.
As has been done for the three-tank case, one parameter
(CA0 ) of the chemical reaction is sinusoidally changed around
its nominal value in order to test the adaptation capability of
the proposed structure. It can be observed from Figure 9 that
the actual parameter value is estimated very rapidly and accu-
rately by the online parameter estimation block and that the
0 200 400 600 800 1000 1200 1400 1600 1800 2000 22000
0.1
0.2
0.3
0.4
time (sec.)
h1ref,
h1
h1ref
h1
0 200 400 600 800 1000 1200 1400 1600 1800 2000 22000
0.1
0.2
0.3
0.4
time (sec.)
h2ref,
h2
h2ref
h2
0 200 400 600 800 1000 1200 1400 1600 1800 2000 22000
0.2
0.4
0.6
0.8
1x 10
-4
time (sec.)
q1
0 200 400 600 800 1000 1200 1400 1600 1800 2000 22000
0.2
0.4
0.6
0.8
1x 10
-4
time (sec.)
q2
Figure 5 Inputs and outputs of the three-tank system for constant and sinusoidal reference inputs.
Iplikci 175
7/27/2019 86692946
11/16
0 100 200 300 400 500 600 700 800 900 10000
0.2
0.4
time (sec.)
h1ref,h1
h1ref
h1
0 100 200 300 400 500 600 700 800 900 10000
0.2
0.4
time (sec.)
h2ref,h2
h2ref
h2
0 100 200 300 400 500 600 700 800 900 10000
0.5
1x 10
-4
time (sec.)
q1
0 100 200 300 400 500 600 700 800 900 10000
0.5
1x 10
-4
time (sec.)
q2
0 100 200 300 400 500 600 700 800 900 1000
0.20.4
0.6
0.81
1.2
time (sec.)
az13
act. az13
est. az13
Figure 6 Inputs and outputs of the three-tank system for varying outflow parameter (az13) and its estimation
Table 2 Nominal parameters of the chemical reaction
k10 = 1:28731012 [h21] k20 = 1:287310
12 [h21] k30 = 9:0433109 [h21l/mol]
E1 = 9758:3 [K] E2 = 9758:3 [K] E3 = 8560:0 [K]DH1 = 4:2 [kJ/mol] DH2 = 11 [kJ/mol] DH3 = 41:85 [kJ/mol]CA0 = 5:0 [mol/l] T0 = 403:15 [K] r= 0:9342 [kg/l]Cp = 3:01 [kJ/kgK] V = 10:0 [l]
176 Transactions of the Institute of Measurement and Control 35(2)
7/27/2019 86692946
12/16
controller can successfully tolerate the variations in the para-
meter of the process.
Computation times
Another important issue concerning the proposed structure is
the applicability to real-time systems. In order to have a basis
for the applicability of the proposed controller to the real-
time systems, the maximum response times of the proposed
controller have been calculated. For that purpose, the method
has been implemented in MatLab (version 7.4.0.287) on a PC
(with Intel(R) Core(TM)2 CPU T7200 running at 2.0 GHz
and 1024 MB RAM) without optimizing the codes, i.e. the
formulations given for each operation such as K-step ahead
predictions, Jacobian calculations, etc., have been strictly fol-
lowed. Then, the simulations have been carried out for the
staircase reference inputs, which are discussed in the previous
subsections. For each system under investigation, computa-
tion times of the operations and the resulting total response
times have been recorded during every sampling period. The
records corresponding to the maximum total response times
for the controller are tabulated in Table 3.
As can be seen from the table, the maximum total response
times of the proposed controller for both systems are less than
6 ms, which is much less than the sampling periods of the
investigated systems. Based on the results given in the table, it
0 5 10 15 20 25 30 35 40 45 500.6
0.8
1
1.2
time (hour)
CBref,CB
CBref
CB
0 5 10 15 20 25 30 35 40 45 50405.5
406
406.5
407
407.5
408
time (hour)
Tref,T
Tref T
0 5 10 15 20 25 30 35 40 45 500
100
200
300
400
500
time (hour)
F/V
0 5 10 15 20 25 30 35 40 45 50-1000
-800
-600
-400
-200
0
time (hour)
Q
Figure 7 Inputs and outputs of the chemical reaction for staircase reference inputs.
Iplikci 177
7/27/2019 86692946
13/16
can be stated that the proposed controller can be used in real-
time applications.
Conclusions
This paper proposes a structure that introduces the use of the
fourth-order RungeKutta numerical integration tool for con-
structing the so-called RungeKutta models for non-linear
processes and consequently its utilization in the GPC frame-
work. In the proposed structure, the role of the RungeKutta
model of a non-linear process is fourfold: (a) it accounts for
future predictions of the process in response to the candidate
control vector; (b) it is used to extract the gradient informa-tion required for the Jacobian calculation; (c) it is used in the
EKF framework in order to estimate the unmeasurable states
of the system; (d) it is used for online estimation of a time-
varying parameter of the process.
The proposed structure has been tested on two different
non-linear MIMO processes by simulations under various sce-
narios. The simulation results have revealed that the proposed
structure is capable of (a) providing very small transient and
steady-state tracking errors for constant reference inputs and
system parameters; (b) adaptation to the changes in the
0 5 10 15 20 25 30 35 40 45 500.6
0.8
1
1.2
time (hour)
CBref,CB
CBref
CB
0 5 10 15 20 25 30 35 40 45 50405.5
406
406.5
407
407.5
408
time (hour)
Tref,T
Tref T
0 5 10 15 20 25 30 35 40 45 500
100
200
300
400
500
time (hour)
F/V
0 5 10 15 20 25 30 35 40 45 50-1000
-800
-600
-400
-200
0
time (hour)
Q
Figure 8 Inputs and outputs of the chemical reaction for constant and sinusoidal reference inputs.
178 Transactions of the Institute of Measurement and Control 35(2)
7/27/2019 86692946
14/16
reference inputs; (c) compensation of the interactions between
the state variables of the processes; (d) online estimation of
the time-varying system parameter and (e) tolerating the
effects of the time-varying system parameter.
As a result, the proposed structure, containing several
novelties, can be used not only for control but also for state
estimation and online parameter estimation purposes.
Funding
This research received no specific grant from any funding
agency in the public, commercial, or not-for-profit sectors.
0 5 10 15 20 25 30 35 40 45 50
0.6
0.8
1
1.2
time (hour)
CBref,CB
CBref
CB
0 5 10 15 20 25 30 35 40 45 50
406
407
408
time (hour)
Tref,T
Tref T
0 5 10 15 20 25 30 35 40 45 500
200
400
time (hour)
F/V
0 5 10 15 20 25 30 35 40 45 50-1000
-500
0
time (hour)
Q
0 5 10 15 20 25 30 35 40 45 50
4.5
5
5.5
6
6.5
time (hour)
CA
0
act. CA
0
est. CA
0
Figure 9 Inputs and outputs of the chemical reaction for varying concentration parameter ( CA0 ) and its estimation.
Table 3 Computation times for the proposed controller
Computation time [ms.]
Operation Three-tank Chemical reaction
State estimation 0.49 0.39
K-step ahead prediction 0.68 0.33
Jacobian calculation 2.23 2.57
Parameter estimation 1.77 0.92
Miscellaneous 0.12 0.12
Total 5.29 4.33
Iplikci 179
7/27/2019 86692946
15/16
References
Camacho EF (1993) Constrained generalized predictive control. IEEE
Transactions on Automatic Control 38: 327332.
Camacho EF and Bordons C (2003) Model Predictive Control.
London: Springer-Verlag.
Camacho EF and Bordons C (2007) Nonlinear model predictive con-
trol: an introductory review. Lecture Notes in Control and Informa-tion Sciences 358: 116.
Cervantes AL, Agamennoni OE and Figueroa JL (2003) A nonlinear
model predictive control system based on wiener piecewise linear
models. Journal of Process Control 13: 655666.
Cho KH, Yeo YK, Kim JS and Koh ST (1999) Fuzzy model predic-
tive control of nonlinear pH process. Korean Journal of Chemical
Engineering 16: 208214.
Clarke DW (1988) Application of generalized predictive control to
industrial processes. IEEE Control Systems Magazine 122: 4955.
Clarke DW (1994) Advances in Model-based Predictive Control.
Oxford: Oxford University Press.
Clarke DW and Mohtadi C (1989) Properties of generalized predictive
control. Automatica 25: 859875.
Clarke DW, Mohtadi C and Tuffs PC (1987a) Generalized predictive
controlpart 1: the basic algorithm. Automatica 23: 137148.Clarke DW, Mohtadi C and Tuffs PC (1987b) Generalized predictive
controlpart 2: extensions and interpretations. Automatica 23:
149163.
Cutler CR and Ramaker BL (1980) Dynamic matrix control: a com-
puter control algorithm. In: Proceedings of the Joint Automatic
Control Conference, San Francisco, CA.
Demircioglu H and Gawthrop PJ (1991) Continuous-time generalised
predictive control (CGPC). Automatica 27: 5574.
Doyle FJ, Ogunnaike BA and Pearson RK (1995) Nonlinear model
based control using second-order Volterra models. Automatica 31:
697714.
Fruzzetti KP, Palazoglu A and McDonald KA (1997) Nonlinear
model predictive control using Hammerstein models. Journal of
Process Control7: 3141.
Gawthrop PJ and Demircioglu H (1989) Continuous-time generalizedpredictive control. In: Proceedings of the IFAC Symposium on Adap-
tive Systems in Control and Signal Processing, Glasgow, 123128.
Genceli H and Nikolaou M (1995) Design of robust constrained
model predictive controllers with Volterra series. AIChe Journal
41: 20982107.
Grewal MS and Andrews AP (2008) Kalman Filtering: Theory and
Practice Using MATLAB. New York: John Wiley and Sons.
Gruber JK, Bordons C, Bars R and Haber R (2010) Nonlinear pre-
dictive control of smooth nonlinear systems based on Volterra
models application to a pilot plant. International Journal of
Robust and Nonlinear Control20: 18171835.
Henson MA (1998) Nonlinear model predictive control: current sta-
tus and future directions. Computers and Chemical Engineering 23:
187202.
Hernandez E and Arkun Y (1993) Control of nonlinear systems usingpolynomial ARMA models. AIChE Journal 39: 446460.
Iplikci S (2006) Support vector machines-based generalized predictive
control. International Journal of Robust and Nonlinear Control 16:
843862.
Iplikci S (2010) A support vector machines based control application
to the experimental three-tank system. ISA Transactions 49:
376386.
Kawathekar RB and Riggs J (2007) Nonlinear model predictive con-
trol of a reactive distillation column. Control Engineering Practice
15: 231239.
Keyser RMCD and Cauwenberghe ARV (1985) Extended prediction
selfadaptive control. In: Proceedings of the 7th IFAC Symposium
on Identification and System Parameter Estimation, York.
Lawrynczuk M (2007) A family of model predictive control algo-
rithms with artificial neural networks.International Journal of
Applied Mathematics and Computer Science 17: 217232.
Maciejowski JM (2002) Predictive Control with Constraints. Essex:
Pearson Education Limited.
Maner BR, Doyle FJ, Ogunnaike BA and Pearson RK (1996) Non-
linear model predictive control of a simulated multivariable poly-
merization reactor using second-order Volterra models.
Automatica 32: 12851301.
Niemiec MP and Kravaris C (2003) Nonlinear model-state feedback
control for nonminimum-phase processes. Automatica 39: 1295
1302.
Nocedal J and Wright SJ (1999) Numerical Optimization. New York:
Springer.
Norquay SJ, Palazoglu A and Romagnoli JA (1998) Model predictive
control based on Wiener models. Chemical Engineering Science 53:
7584.Piche S, Sayyar-Rodsari B, Johnson D and Gerules M (2000) Non-
linear model predictive control using neural networks. IEEE Con-
trol Systems Magazine 20: 5362.
Press WH, Teukolsky SA, Vetterling WT and Flannery BP (2007)
Numerical Recipes: The Art of Scientific Computing. New York:
Cambridge University Press.
Qin SJ and Badgwell TA (2003) A survey of industrial model predic-
tive control technology. Control Engineering Practice 11: 733764.
Richalet J (1993) Industrial applications of model-based predictive
control. Automatica 29: 12511274.
Richalet JA, Rault A, Testud JL and Papon J (1978) Model predictive
heuristic control: applications to an industrial process. Automatica
14: 413428.
Roubos JA, Mollov S, Babuska R and Verbruggen HB (1999) Fuzzy
model-based predictive control using TakagiSugeno models.International Journal of Approximate Reasoning 22: 330.
Schafer A, Kuhl P, Diehl M, Schlder J and Bock HG (2007) Fast
reduced multiple shooting methods for nonlinear model predictive
control. Chemical Engineering and Processing 46: 12001214.
Scokaert POM, Mayne DQ and Rawlings JB (1999) Suboptimal
model predictive controllers (feasibility implies stability). IEEE
Transactions on Automatic Control44: 648654.
Sistu PB and Bequette B (1996) Nonlinear model predictive control:
closed-loop stability analysis. AIChE Journal 42: 33883402.
Soeterboek R (1992) Predictive Control: A Unified Approach. Engle-
wood Cliffs, NJ: Prentice-Hall.
Tamimi J and Li P (2010) A combined approach to nonlinear model
predictive control of fast systems. Journal of Process Control 20:
10921102.
Venkataraman P (2002) Applied Optimization with MATLAB Pro-gramming. New York: Wiley-Interscience.
Welch G and Bishop G (2006) An Introduction to the Kalman Filter.
Technical Report, TR 95-041, Department of Computer Science,
University of North Carolina at Chapel Hill, NC.
Xi XC, Poo ANK and Chou S (2007) Support vector regression
model predictive control on a HVAC plant. Control Engineering
Practice 15: 897908.
180 Transactions of the Institute of Measurement and Control 35(2)
7/27/2019 86692946
16/16
Copyright of Transactions of the Institute of Measurement & Control is the property of Sage Publications, Ltd.
and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright
holder's express written permission. However, users may print, download, or email articles for individual use.