2011-Modeling of Quadruple Tank System Using Support Vector Regression
2011-Modeling of Quadruple Tank System Using Support Vector Regression
235
0 ≤ α i ≤ C i = 1, 2,3,,,,,,,,,, l 1 l
0 ≤ α i* ≤ C i = 1, 2,3,,,,,,,,,, l
b= ∑ ( yi − i∑
l i =1 ∈SV
λi K 〈 xi , x〉 ) (12)
l
∑ (α
i =1
i − α i* ) = 0
III. QUADRUPLE TANK S YSTEM
In this paper, support vector regression is used to model a
This dual problem can be solved by finding Lagrange quadruple tank system, a highly nonlinear and coupled
multipliers utilizing a quadratic programming technique (in system with four tanks with varying liquid levels and two
our implementation, the “quadprog” command from Matlab pumps.
optimization toolbox was used). The support vectors are the In the quadruple tank system, illustrated in Figure 3, the
training data related to nonzero Lagrange amount of liquid each pump provides is distributed between
multipliers[5,6,13]. The solution of the regression problem two tanks by means of a valve. Hence Pump 1 fills Tank 1
can be approximated by the support vectors and the related
and through the valve some amount of liquid is directed
Lagrange multipliers.
towards Tank 4. Similarly, Pump 2 fills Tank 2 and Tank 3.
The ratio of the split up is controlled by the position of each
B. Non-Linear Regression valve. The differential equations describing the system are as
Occasionally, the training data is nonlinearly distributed follows [15]:
and cannot be separated with a linear regression surface. In
this case, the training data is mapped onto a high d h1 a a γk
= − 1 2 gh1 + 3 2 gh3 + 1 1 v1
dimensional feature space by means of a kernel function as dt A1 A1 A1
depicted in Figure 1. This allows us to use linear regression
d h2 a a1 γ 2 k2
techniques to solve non-linear regression problems. In this =− 2 2 gh2 + 2 gh4 + v2
paper, Gaussian function has been employed as the kernel dt A2 A2 A2
function: d h3 a (1 − γ 2 )k2
x -y 2
=− 3 2 gh3 + v2
− dt A3 A3
2σ 2
K ( x, y ) = e (9) d h4 a (1 − γ 1 )k1
=− 4 2 gh4 + v1 (13)
where σ is the bandwidth of the Gaussian radial basis dt A4 A4
kernel function.
All linear regression formulas can be transformed to non- where
linear regression equations using K 〈 xi , x j 〉 instead of Ai cross section of Tank i
〈 xi , x j 〉 shaped inner product. Thus, the non-linear ai cross section of the outlet hole i
regression or approximation function, the optimal desired hi water level in tank i
weights vector of the regression hyperplane and an optimal
bias of the regression hyperplane can be expressed in terms γi ratio of the flow from tank i
of support vectors as given in (10)-(12) [ 5,14] :
The control inputs of the process are v1 and v2 (input
f ( x) = ∑ λ K 〈 x , x〉 + b ,
i∈SV
i i λi = α i − α *
i (10) voltages to the pumps) and the controlled variables are y1
and y2 (voltages from level measure devices) [16]. In the
technical literature, generally y1 and y2 have been selected
〈 w, x〉 = ∑ λ K 〈 x , x〉
i∈SV
i i (11)
as system outputs, since two pumps provide liquid directly
to Tank 1 and Tank 2 [15],[16],[17].
236
IV. SYSTEM MODELING
Modeling a system using support vector machines
involves finding the mapping functions between the input
and the output of the system, as presented in (14).
yˆ k ( x) = ∑ λ K 〈 x , x〉 + b
i∈SV k
i i k , k = 1, 2,3, 4 (14)
γ i is a parameter that controls the amount of liquid that y ( n) = f (u ( n ),.., u ( n − nu ), y ( n − 1),.., y ( n − n y )) (15)
Tank 3, respectively.
The quadruple tank system has an adjustable zero which u1( n) u1(n )
u1(n − 1)
can be controlled by means of the two valves . The system z −1
M
M
can show both minimum and nonminimum phase z − nu1 u1(n − nu1 )
characteristics with the varying value of the adjustable zero. u 2(n ) u 2( n )
z −1 u 2( n − 1) ε − SVR1 y1( n )
M
Considering that our work is about modeling of the M
z − nu 2
u 2( n − nu 2 )
quadruple tank system, we have tried to identify all states of y1( n ) z −1 y1( n − 1)
ε − SVR 2 y 2( n)
z −2 y1( n − 2)
the process. Therefore, in our model v1 and v2 are used as M M = x ( n) y (n)
z
− n y1
y1( n − n y1 )
inputs and the liquid level in each tank, which we denote as y 2( n) z −1 y 2( n − 1)
ε − SVR 3 y 3(n )
M M
y1 , y2 y3 and y4 as outputs. z
− ny 2 y 2( n − n )
y2
y 3(n ) z −1 y 3( n − 1) ε − SVR 4 y 4( n)
The physical parameters of the quadruple tank process are M M
− ny3
listed in table 1. z y 3( n − n y 3 )
y 4( n) y 4( n − 1)
z −1
M M
z
− ny4 y 4( n − n )
y4
TABLE I. THE SYSTEM PARAMETERS
237
T Pump 1
y1 ( n )
T n y1
T T 4
u1 ( n ) y2 ( n ) nu1 n y 2
Voltage(V)
u (n) = , y (n) =
y ( n ) , n u = n , n y = n
3
u2 ( n ) 3 u2 y3 2
y4 ( n )
n y 4
1
Pump 1
0 200 400 600 800 1000 1200 1400 1600 1800 2000
Time(sec)
Since, the amplitude of input signals fluctuates between 0 - 5 Pump 2
Voltage(V)
3
varying between these values has been applied to the plant 2
dynamics of the system. 0.1 second has been employed as 0 200 400 600 800 1000 1200 1400 1600 1800 2000
Time(sec)
the sampling period. Fourth order Runga Kutta method has
been used in the simulation of the system. Fig. 5. Input signals applied to process
As data is arranged according to the NARX model,
training process is converted to finding the solution of the
regression problem. Actual & SVR Model Output 1
The NARX model of the system, shown in Figure 4, has 15
0
system in accordance with equation (14). The number of the
support vectors varies with parameter . Generally as the -0.5
Error
number of support vectors is increased there is a decrease in -1
0 200 400 600 800 1000 1200 1400 1600 1800 2000
the modeling error. Time(sec)
The testing results for SVR based modeling of the
Fig. 6. Testing results and modeling error for h1
quadruple tank system and a detailed analysis involving a
search for the best set of kernel parameters and response of
the model to varying initial conditions are given in section
Actual & SVR Model Output 2
V.
Water Level 2 (cm)
10
V. S IMULATION RESULTS
5
Actual
A. Testing Results for SVR Modeling Model
0
0 200 400 600 800 1000 1200 1400 1600 1800 2000
Time(sec)
After the NARX model is trained with the selected 300 SVR Model Error for Output 2
1
data points as described in Section IV, the performance of
the attained model has been tested. The testing results are 0.5
Error (cm)
parameter set, as described in detail in Section V-B. Fig. 7. Testing results and modeling error for h2
238
the SVR based model has been searched for the set of values
of these parameters that yield the best performance result.
Epsilon has been incremented from 0.01 to 0.001, with a TABLE II. SVR MODEL PARAMETERS
step size of 0.001, while sigma has been varied from 5 to 25 SVR Model Parameters
with a step size of 5. The training and testing results as Symbol
Description Value
epsilon and sigma are varied in these ranges are illustrated
ε1 , ε 2 Epsilon Parameter for SVR 0.001, 0.001
for h 1 in Figure 8. As a result of this search, the best set of
ε 3, ε 4 1 , SVR 2, SVR 3 , SVR 4 0.001, 0.001
model parameters have been identified as listed in Table 2.
In the search, the number of the past inputs( nu ) and outputs C Regulation Parameter 1000
σ 1 ,σ 2 Parameters for Kernel 25, 25
( n y ) have been selected 6. Table 3 lists the training, testing σ 3 ,σ 4 Function 25, 25
and modeling errors obtained for the SVR implementations
for each plant output, when the best set of kernel parameters
are used.
TABLE III. THE BEST SVR MODEL E RRORS
12
10
8
6
4 Actual
2 Model
Fig. 8. Error surface of y1 for training and testing obtained at best
kernel parameter search 0 200 400 600 800 1000 1200 1400 1600 1800 2000
Time(sec)
SVR Model Error for Output 1
5
Error (cm)
Error
-5
0 200 400 600 800 1000 1200 1400 1600 1800 2000
Time(sec)
239
[7] Guyon I, Weston J, Barnhill S , Vapnik V. “Gene Selection for
Actual & SVR Model Output 1 Cancer Classification Using Support Vector Machines” Machine
15 Learning Volume: 46 Issue: 1-3 Pages: 389-422 Published: 2002
Water Level 1 (cm)
[8] Guo GD, Li SZ, Chan KL ,”Support Vector Machines for face
10 recognition ” Image and Vision Computing Volume: 19 Issue: 9-
10 Pages: 631-638 Published: AUG 1 2001
5 Actual [9] Abdessemed F. , Bazi Y. “Kernel Regression for Robot Manipulator
Model Control”
0 200 400 600 800 1000 1200 1400 1600 1800 2000 [10] Na MG, Upadhyaya BR , “Model Predictive control of an SP-100
Time(sec) space reactor using support vector regression and genetic optimization
SVR Model Error for Output 1
” IEEE Transactions on Nuclear Science Volume:53 Pages: 2318-
2 2327 Part: Part 2 Published: Aug 2006
1 [11] W. M. Campbell, , D. E. Sturim,and D. A. Reynolds, “Support
Error (cm)
0
Vector Machines Using GMM Supervectors for Speaker
-1
Verification” IEEE Signal Processing Letters, Vol. 13, No. 5, May
-2
2006
Error
[12] Aly Farag & Refat M.Mohamed “ Regression Using Support Vector
0 200 400 600 800 1000 1200 1400 1600 1800 2000 Machines:Basic Foundations ” Technical Report December 2004
Time(sec)
240