# Parameter Optimization of MIMO Fuzzy Optimal Model Predictive Control By APSO

Authors: Adel Taieb; Moêz Soltani; Abdelkader Chaari
Journal: Complexity
 (2017)

---

## Abstract

This paper introduces a new development for designing a Multi-Input Multi-Output (MIMO) Fuzzy Optimal Model Predictive Control (FOMPC) using the Adaptive Particle Swarm Optimization (APSO) algorithm. The aim of this proposed control, called FOMPC-APSO, is to develop an efficient algorithm that is able to have good performance by guaranteeing a minimal control. This is done by determining the optimal weights of the objective function. Our method is considered an optimization problem based on the APSO algorithm. The MIMO system to be controlled is modeled by a Takagi-Sugeno (TS) fuzzy system whose parameters are identified using weighted recursive least squares method. The utility of the proposed controller is demonstrated by applying it to two nonlinear processes, Continuous Stirred Tank Reactor (CSTR) and Tank system, where the proposed approach provides better performances compared with other methods.


---

## Body

## 1. Introduction

Predictive control is a member of advanced discrete-time process control algorithms. This control algorithm is based on the use of an explicit process model to predict the manipulated variables and thus the future control actions are optimized throughout a finite horizon. To obtain a good performance, a process model describing the effects of all the different inputs on all the outputs must be developed. Although the linear model predictive control is suitable for processes that are not highly nonlinear, this strategy has been applied in the control of nonlinear systems, whether for SISO systems [1–3] or for MIMO systems [4–7]. But many industrial processes have strong nonlinearities and predictive control is applied in order to provide satisfactory control results. Two problems have appeared because of the introduction of nonlinearities in the predictive control.(i)
The first of the problems is that the modeling of processes is much more difficult and complex than the linear case. fuzzy logic is among the most used strategies in all areas [4]. Despite the fact that this strategy has been developed in the last few years, the fuzzy models of the TS type remain among the most used methods to deal with the MPC control for nonlinear systems (NMPC), because of their capacity to give an accurate approximation of the complex nonlinear MIMO systems.(ii)
The second important problem in nonlinear predictive control is the solving of the optimization problem. Conventional optimization methods, such as the gradient search method, used for designing the state feedback controller are restricted to the eigenvalues of the linear system matrix that not only increases the difficulty but also takes long time to find the global optimum solution [8]. Hence, evolutionary computation (EC) can be considered an alternative method to solve this type of optimization problem. In literature, plenty of works have been reported to solve the control optimization problems using EC techniques because they do not require explicit gradient information for optimization.Particle Swarm Optimization (PSO), introduced by [9], is a population based metaheuristic search (MS) algorithm, which emulates the collaborative behaviour of bird flocking and fish schooling in searching for foods. In addition, unlike other heuristic optimization methods, PSO has a flexible and well-balanced mechanism to enhance the global and local exploration abilities. Since the introduction of PSO, many works based on MPC have been solved using PSO because it is not largely affected by the size and nonlinearity of the problem. Reference [10] introduces an approach for designing an adaptive fuzzy model predictive control using the PSO algorithm (AFMPC-PSO). In [11], a type of MPC is proposed using Chaos Particle Swarm Optimization (CPSO). First, for the modeling phase, the TS fuzzy model is employed to approximate the nonlinear system. Second, we introduce CPSO into MPC using a modified performance criterion in order to provide less computational controller’s expression.Although these methods have represented effective solutions to the problem of the MPC control of nonlinear systems, there is the problem of choice of control parameters. Several studies have shown the influence of these parameters on the quality of the responses of the systems treated. To overcome this problem, this paper presents a method of tuning the weight parameters of the performance function according to the output quantities detected from the system. One of the challenges in MPC is how control parameters can be tuned for various target systems, and the use of APSO for automatic tuning is one of the solutions. Firstly, for the modeling phase, the TS fuzzy model is employed to approximate the nonlinear system. In the second step, we used the principle of optimal control to calculate the control law of each linear subsystem. Then, we introduce APSO algorithm to determine the best weight parameters of the performance function using a performance criterion in order to improve the quality of the response with a minimum of energy.The rest of the paper is organized as follows. Section2 presents the influence of weights existing in the objective function on the quality of system performances. Section 3 reviewed the TS fuzzy model and the OMPC design method. The main contribution of this paper is presented in Section 4. In order to show the good performance of the proposal approach, simulation results are given in Section 5. Finally, Section 6 concludes.


## 2. Statement

The MPC control is a method of designing process control systems with feedback. This designing is carried out by the online repetition of a procedure that includes inputting data to a system of the initial input values. The principle of calculating the control law is the resolution of an optimal control problem using the present output values. So, the MPC control is a special case of the optimal control whose horizon is finite. It is recalled that this command minimizes the function described above. However, when the horizon is infinite, we speak of optimal control. The objective function is written as follows:(1)Jco=∑i=1nyΓyiyri-yi2+∑i=1nuΓuiui-uri2,where Γyi, Γui are the weight values of the outputs and inputs. uri are the control instructions that are defined beforehand based on an expertise of the system. The partial derivative of the objective function described by (1) is as follows:(2)∂Jco∂u=∂∑i=1nyΓyiyri-yi2+∑i=1nuΓuiui-uri2∂u.By applying the principle of the optimal control, we obtain the following:(3)uopk=∂Jcoy,u,Γyi,Γui∂u.The structure of the loop system based on OMPC illustrating this method is shown in Figure 1. According to (1), the criterion Jco depends strongly on the weights Γi=Γyi,Γui. These weights directly affect the performances index (Pi) of the system studied, such as overshoot (Ov%), settling time (Ts), rise time (Tr), and static error (Es).Figure 1
Problem principle of optimal control.To show the importance of the choice of these parameters on the response of the system in closed loop, we consider the following a multivariable linear system. This system is described by the following equations:(4)x11k=0.9401x11k-1+u1k-1x12k=0.9524x12k-1+u2k-1x21k=0.9083x21k-1+u1k-1x22k=0.9306x22k-1+u2k-1y1k=-0.7664x11k+0.9x12ky2k=-0.6055x21k+1.3472x22k.The criterion to be minimized is:(5)Jco=∑i=12Γyiyi-yri2+∑i=12Γuiui-uri2;i=1,2with yr1=6.1, yr2=12.8, ur1=1, and ur2=1.In a first step, the minimization of the objective function is obtained by canceling the gradient ofJco with respect to ui; the expressions are obtained as a function of xij of (4) and Γ:(6)u1k=2Γu1+Γy21.63Γy2k-1-0.66x21k-1+1.52x22k-1-15,50+Γy11.37u2k-1-1.10x11k-1+1.13x22k-1-9.351.17Γy1+0.73Γy2+2Γu1.u2k=2Γu2+Γy11,37u1k-1+1.29x11k-1-1.54x12k-1+10.98+Γy21.36u1k-1+1,48x21k-1-3.37x22k-1+34.481.62Γy1+3.62Γy2+2Γu2Table1 shows how the overshoot, settling time, rise time, and static error as the performance indices vary with the weight parameters Γy1,Γy2,Γu1,Γu2 of the performance function when outputs transitions y1 and y2 of the optimal control are used. As can be seen from the table, the transient characteristics depend strongly on the weight parameters Γy1,Γy2,Γu1,Γu2 of evaluation function (4).Table 1
Weight parameterΓi dependence of transient characteristic.
Pi
Γ
y
1
,
Γ
y
2
Γ
u
1
,
Γ
u
2
1,1
1,1
1,1
0.2,0.2
1,0.1
1,0.1
0.3,0.3
1,0.1
Es1
0.000
0.003
0.015
0.000
Es2
0.000
0.001
0.02
0.000
Ov1 (%)
40.41
32.09
09.33
26.33
Ov2 (%)
57.3988
36.36
25.33
53.20
Ts1
12.00
10.50
8.00
12.00
Ts2
11.00
13.00
16.00
17.00
Tr1
4.869
5.4701
4.6000
5.5637
Tr2
7.00
6.50
20.00
21.00The example presented shows the influence of the choice of the values of the weights existing in the expression of the optimal control law. So, the weight parameters directly affect Ov%, Es, ts, and tr.


## 3. MIMO TS Fuzzy Model and OMPC Design

Takagi and Sugeno proposed the well-known TS fuzzy model in [12] to describe the complicated nonlinear system. The TS fuzzy models are universal approximators capable of approximating any continuous function with certain level of accuracy [13]. Since the MIMO system can be divided into multiple input-single output (MISO) systems, we take MISO systems instead, to identify MIMO systems. It is assumed that an MISO system Fx,y is the system that needs identification, where x is the system input with x∈RM and y is the system output with y∈R.The rules of TS fuzzy models, used in this work, have the following form:(7)Rg:  IFZi1estΩig1et…ZiMestΩigMTHENyigk=Aigyk-1+Biguk-1,i=1,…,ny,g=1,2,…,ci,where Rg represents the gth rule, ci is the number of rules for the ith subsystem, M is the dimension of the input vector, Ωig is the fuzzy subset of the g-th rule, Zi=Zi1,…,ZiM∈RM is the input vector, and Ag=Ag1,…,Agny and Bg=Bg1,…,Bgnu are two polynomial vectors. The final output is calculated as the average of the outputs corresponding to the rules Rr, weighted by the normalized degree of completion (membership), as follows:(8)y^ik=∑g=1ciwigZiyigk∑g=1ciwigZi(9)wigZi=∏j=1MAigjZij.The standardized degree of completion is described in the following form:(10)μigZi=wigZi∑g=1ciwigZi.The standard degree of achievement is actually the degree of activation of the corresponding local model in the region where the system evolves. The fuzzy subsets are generally Gaussian, triangular or sigmoid and must satisfy the following properties:(11)∑g=1ciμirZi=1,∀g=1,2,…,ci0≤μigZi≤1.The MPC control is a method of designing process control systems with feedback. This designing is carried out by the online repetition of a procedure that includes inputting data to a system of the initial input values. The MPC control is a special case of the optimal control. It is recalled that this control minimizes the function described above. However, when the horizon is infinite, we speak of optimal control for each linear subsystem.The concept of the OMPC technique for TS system is utilized to design fuzzy controller. In this concept, the fuzzy controller rule shares the same premise part as the fuzzy system (8) and use same number of fuzzy rules.The fuzzy controller is inferred as follows:(12)Ui=∑g=1ciwigZiuig∑g=1ciwigZi.In the OMPC, the cost index to be minimized is expressed as follows:(13)Jg=∑i=1nyΓygyrig-yig2+∑i=1nuΓuguig-urig2,where Γyg, Γug are the weight values of the outputs and inputs. urig are the control instructions that are defined beforehand based on an expertise of the system. The general structure of the gth controller is then as follows:(14)Rg:  IFZi1isΩig1,…,ZiMisΩigMTHENuigk=∂Jig∂uig.The previous solution shows that the Γ weights directly affect the performance of the system. Indeed, despite the fact that the weight values Γ chosen can give good performance, we can not conclude that these are the best values.


## 4. Design of the Proposed FOMPC Controller

In this section, we describe a new method for determining the weight values of the objective functionJg of each local system.So, an objective function is given, and the optimal control law of each local system is calculated. Then, the APSO algorithm intervenes to determine the optimal values of the weight. The next step is to design the global control law such that the proposed OFMPC-APSO presents the desired dynamic characteristics. The proposed FOMPC based on APSO combines both of the advantages of FOMPC and APSO algorithm. APSO algorithm is used to search and to fine tune the weight vectorΓy and Γu of MPC controller. So, the expression of control law by the principle of optimal control is calculated. Once the latter has been established, the next step is to calculate the optimal weights such that the proposed algorithm presents the desired dynamic characteristics.


### 4.1. Design of the Linear Control Law

We consider parameter optimization problem as a simple problem of tuning only the weightΓ. Now let us assume that the performance function Φ for each output evaluates the (Ov%), (Ts), (Tr), and (Es). Let us define the performance function Φ as proposed in the following:(15)Φg=q1Es+q2Ov%+q3Ts+q4Tr.Here (q1, q2, q3 et q4) are the weights of the respective performance indices. So, we obtain the optimal values of the weights of criterion (13) while respecting the following constraint:(16)minΦgΓmin<Γ<ΓmaxΓ.With Γmin and Γmax the minimum and maximum limits are chosen.The optimization problem given by (15) is a constrained nonlinear and nonconvex optimization problem, the solution of which is difficult and generally expensive in computing time. Different approaches were investigated to solve this problem, such as the numerical optimization techniques [14, 15], the metaheuristic based optimization algorithms [16–18], the linearization of the process fuzzy model [19], and the use of particular model structures to obtain a convex form for the cost function [20].


### 4.2. APSO Algorithm

The PSO algorithm is a type of stochastic global optimization algorithm for improving candidate solutions [9]. This algorithm iteratively explores a multidimensional search space with a swarm of individuals (referred to as “particles”), looking for the global optima [21, 22]. PSO has memory to store the knowledge of good solutions by all particles; in addition, particles in the swarm share information with each other. Therefore, due to the simple concept, easy implementation, and quick convergence, nowadays PSO has gained much attention and wide applications in solving continuous nonlinear optimization problems [23–26].It is initialized with a population of random solutions, called particles, to find the optimal result. Each particle has a position and a velocity, representing a possible solution to the optimization problem and a search direction in the search space. In each iterative process, the particle adjusts the velocity and position according to the best experiences that are called thepbest, found by itself, and gbest, found by all its neighbors [27]. For every generation, the velocity and position can be updated by the following equations:(17)Vpdt+1=wVpdt+r1C1pbestpd-Xpdt+r2C2pbestgd-Xpdt(18)Xpdt+1=Xpdt+Vpdt+1,where i=1,2,…,Np and Np is the number of particles, t is the number of iterations, and r1 and r2 are two random numbers in the interval [0,1]. C1 and C2 are positive constants. w is the inertia weight, a parameter used to control the impact of the previous velocities on the current velocity. If it is chosen properly, the particle will have the balanced ability of exploitation and development. w is updated as follows:(19)w=wmaxwmax-wmintmaxt,where wmin and wmax are minimum and maximum values of w which are taken as 0.4 and 0.9, respectively.In conventional PSO, the velocity of each particle in the next search is updated using the knowledge of its past velocity and personal and global best positions. However, the performance of PSO greatly depends on its parameters; it often suffers from being trapped in local optimum [28, 29]. Indeed, the inertia weight is the most important parameter to balance the local search ability and global search ability [30]. This balancing is a key role to improve the performance of PSO. However, the method of selecting inertia weight is difficult. And experiments show that particles can accumulate at point in local searching area. So, to avoid all these difficulties, an improved version of PSO has appeared; it is the APSO algorithm.The basic idea of APSO is that the global best and the personal best position of particle always change over iteration and tend to the similar value if the swarm has approached the solution. The values ofpbest and gbest are taken and are used to adjust the value of inertia weight by using feedback mechanism. In this condition, the inertia weight should be set to larger value. So, the balancing between local-global can be controlled based on the swarm condition.The modified inertia weight is modified as follows:(20)ω=ω0-pgbestppbest,where χ0 is the initial value of inertia weight.The controller structure is illustrated in Figure2. This Figure represents the case of a system with two inputs (u1 and u2) and two outputs (y1 and y2). yr1 and yr2 represent the references of each output, respectively.Figure 2
The control scheme.


### 4.3. FOMPC-APSO Algorithm

The general design steps of the FOMPC-APSO algorithm are summarized in Algorithm1.Algorithm 1:FOMPC-APSO algorithm.
Pahse 1.Identification of the model
Step 1. The nonlinear MIMO system is modeled by a TS fuzzy inference system.
Step 2. Identify of parameters using WRLS method.
Pahse 2. Application of Algorithm1for each local model
Step 1. The weight parameter Γ is specified.
Step 2. Give the objective function in the form of Eq. (13).
Step 3. Calculate the control law ui using Eq. (3).
Step 4. Compute ΓBest that minimize the restricted function (15) using the procedure of Algorithm 2
and find the best particle labeled asΓ=[ΓyiBest,ΓuiBest].
Step 5. Calculate the control law ui using (3) According to the optimum values of ΓBest
Pahse 3. Design the control law U via equation (12)Algorithm 2:Procedure of weight parameter optimization.
S.1. Choose the weighting matrices Γ=[Γyi>0,Γui>0], Γmax, Γmin, the number of particles NP.
Initialize the position and velocity of each particle; fix learning factorsC1 and C2; ω0 and the
number of iterationstmax.
S.2. For t = 1 to tmax do
for each particle do
(1) Calculate the fittness value of each particle by minimizing the following Eq. (15)
(2) Find the individual best pbest for each particle and the global best gbest.
(3) Update the velocity and the position of each particle using equations (17) and (18), respectively.
end for
end for
S.3. Find the best particle labeled as Γ=[ΓyiBest,ΓuiBest]


## 4.1. Design of the Linear Control Law

We consider parameter optimization problem as a simple problem of tuning only the weightΓ. Now let us assume that the performance function Φ for each output evaluates the (Ov%), (Ts), (Tr), and (Es). Let us define the performance function Φ as proposed in the following:(15)Φg=q1Es+q2Ov%+q3Ts+q4Tr.Here (q1, q2, q3 et q4) are the weights of the respective performance indices. So, we obtain the optimal values of the weights of criterion (13) while respecting the following constraint:(16)minΦgΓmin<Γ<ΓmaxΓ.With Γmin and Γmax the minimum and maximum limits are chosen.The optimization problem given by (15) is a constrained nonlinear and nonconvex optimization problem, the solution of which is difficult and generally expensive in computing time. Different approaches were investigated to solve this problem, such as the numerical optimization techniques [14, 15], the metaheuristic based optimization algorithms [16–18], the linearization of the process fuzzy model [19], and the use of particular model structures to obtain a convex form for the cost function [20].


## 4.2. APSO Algorithm

The PSO algorithm is a type of stochastic global optimization algorithm for improving candidate solutions [9]. This algorithm iteratively explores a multidimensional search space with a swarm of individuals (referred to as “particles”), looking for the global optima [21, 22]. PSO has memory to store the knowledge of good solutions by all particles; in addition, particles in the swarm share information with each other. Therefore, due to the simple concept, easy implementation, and quick convergence, nowadays PSO has gained much attention and wide applications in solving continuous nonlinear optimization problems [23–26].It is initialized with a population of random solutions, called particles, to find the optimal result. Each particle has a position and a velocity, representing a possible solution to the optimization problem and a search direction in the search space. In each iterative process, the particle adjusts the velocity and position according to the best experiences that are called thepbest, found by itself, and gbest, found by all its neighbors [27]. For every generation, the velocity and position can be updated by the following equations:(17)Vpdt+1=wVpdt+r1C1pbestpd-Xpdt+r2C2pbestgd-Xpdt(18)Xpdt+1=Xpdt+Vpdt+1,where i=1,2,…,Np and Np is the number of particles, t is the number of iterations, and r1 and r2 are two random numbers in the interval [0,1]. C1 and C2 are positive constants. w is the inertia weight, a parameter used to control the impact of the previous velocities on the current velocity. If it is chosen properly, the particle will have the balanced ability of exploitation and development. w is updated as follows:(19)w=wmaxwmax-wmintmaxt,where wmin and wmax are minimum and maximum values of w which are taken as 0.4 and 0.9, respectively.In conventional PSO, the velocity of each particle in the next search is updated using the knowledge of its past velocity and personal and global best positions. However, the performance of PSO greatly depends on its parameters; it often suffers from being trapped in local optimum [28, 29]. Indeed, the inertia weight is the most important parameter to balance the local search ability and global search ability [30]. This balancing is a key role to improve the performance of PSO. However, the method of selecting inertia weight is difficult. And experiments show that particles can accumulate at point in local searching area. So, to avoid all these difficulties, an improved version of PSO has appeared; it is the APSO algorithm.The basic idea of APSO is that the global best and the personal best position of particle always change over iteration and tend to the similar value if the swarm has approached the solution. The values ofpbest and gbest are taken and are used to adjust the value of inertia weight by using feedback mechanism. In this condition, the inertia weight should be set to larger value. So, the balancing between local-global can be controlled based on the swarm condition.The modified inertia weight is modified as follows:(20)ω=ω0-pgbestppbest,where χ0 is the initial value of inertia weight.The controller structure is illustrated in Figure2. This Figure represents the case of a system with two inputs (u1 and u2) and two outputs (y1 and y2). yr1 and yr2 represent the references of each output, respectively.Figure 2
The control scheme.


## 4.3. FOMPC-APSO Algorithm

The general design steps of the FOMPC-APSO algorithm are summarized in Algorithm1.Algorithm 1:FOMPC-APSO algorithm.
Pahse 1.Identification of the model
Step 1. The nonlinear MIMO system is modeled by a TS fuzzy inference system.
Step 2. Identify of parameters using WRLS method.
Pahse 2. Application of Algorithm1for each local model
Step 1. The weight parameter Γ is specified.
Step 2. Give the objective function in the form of Eq. (13).
Step 3. Calculate the control law ui using Eq. (3).
Step 4. Compute ΓBest that minimize the restricted function (15) using the procedure of Algorithm 2
and find the best particle labeled asΓ=[ΓyiBest,ΓuiBest].
Step 5. Calculate the control law ui using (3) According to the optimum values of ΓBest
Pahse 3. Design the control law U via equation (12)Algorithm 2:Procedure of weight parameter optimization.
S.1. Choose the weighting matrices Γ=[Γyi>0,Γui>0], Γmax, Γmin, the number of particles NP.
Initialize the position and velocity of each particle; fix learning factorsC1 and C2; ω0 and the
number of iterationstmax.
S.2. For t = 1 to tmax do
for each particle do
(1) Calculate the fittness value of each particle by minimizing the following Eq. (15)
(2) Find the individual best pbest for each particle and the global best gbest.
(3) Update the velocity and the position of each particle using equations (17) and (18), respectively.
end for
end for
S.3. Find the best particle labeled as Γ=[ΓyiBest,ΓuiBest]


## 5. Simulation Study

In order to show the considerable contribution in the performance of the proposed control scheme, two highly nonlinear systems are selected. The first example is the surge tank. The second example is the CSTR. We compare our results with those obtained by other existing methods such as NMPC [31] and FMPC using the APSO algorithm [32].In this paper, the Tr, Ts, Ov%, pic, and Es are used as the performance indexes.


### 5.1. Surge Tank System

The behaviour of the surge tank system, shown in Figure3, is fed by a pump driven by a current Ik [10].Figure 3
The surge tank system.In Figure3, Qk is the feed rate, Ik is the supply current of the pump, H is the liquid level in the tank, Qs is the output flow, a is the section of the output channel, A is the section of the tank, and Hs is the water level in the output channel. The mathematical model of this reactor is(i)
Model of the valve is as follows:(21)Qk=Qk-1+Te-k0Qk-1+k1Ik-1(ii)
The change in water level in the tank is given by the following:(22)Vk=AHk=Hk-1+TeQk-1-Qsk-1,where Qsk=0.6a2gHk-Hs.The values of the constant parameters of this system are grouped in the Table2.Table 2
Specification of the surge tank.
Parameter
Description
Normal operation condition
H
0
Initial value of tank level
0.15
[
m
]
H
s
Initial value of the output channel level
0.015
[
m
]
a
Section of the channel output
0.0001
[
m
2
]
A
Section of the tank
0.04
[
m
2
]
Q
0
The initial flow
0.00013
[
m
3
s
-
1
]
k
0
Constant
1
k
1
Constant
0.1Fuzzy modeling: 1000 pairs of data are used to identify the model using the FCM algorithm. For a good approximation of the plant, we suppose that the subsystems are in the third order. The model consists of two rules of the form:(23)R1:  IfI1isQ1THENH1k=a11Hk-1+a12Hk-2+a13Hk-3+b11I1k-1+b12I1k-2R2:  IFI1isQ2THENH2k=a21Hk-1+a22Hk-2+a23Hk-3+b21I1k-1+b22I1k-2.The vector of parameters of gth rule is obtained by using the WRLS. This fuzzy model is used to represent the process model in the controller:(24)a11=1.952,a21=0.0487,a31=0.0522,b11=0.1131,b21=0.1106,a21=0.8421,a22=0.0808,a23=0.0764,b21=0.1668,b22=0.1697.Once the estimated model is obtained, we will investigate the optimal parameters of the FOMPC control law using the APSO algorithm. This gives the best results with these settings:tmax=350, Np=35, C1=C2= 2.05, r2=0.2, and w0=1.4. The fitness function of the APSO algorithm is defined by the following:(25)Ji=ΓyiHi-Hr2+ΓIiIi2,i=1,2.Table3 shows the performances obtained by these methods. In each interval time, we have changed the set point for evaluating each method to control a highly nonlinear system. The proposed method can generate a high quality solution within shorter calculation time and it tends to converge very fast compared to other methods. The comparison shows some interesting results. It is important to observe that, with FOMPC-APSO, the Ts has been reduced almost 2 times comparing with that obtained from the NMPC and has been reduced almost 5 times comparing with that obtained from the FMPC-APSO. The same observation can be made for the Ov%, where in the FOMPC-APSO case we notice a reduction of nearly 4 times compared with that obtained from FMPC-APSO and more than 10 times with NMPC without any increase in Tr. So, the proposed method is able to keep better stability with less control effort applied.Table 3
Pi performances obtained by the different algorithms.
Pi
Algorithms
NMPC
FMPC-APSO
FOMPC-APSO
Tr
0.8111
0.9820
0.7402
Ts
5.6402
11.0788
1.9936
Ov%
6.0804
2.6922
0.5017
Pic
1.26
0.2055
0.2162
Es
0.00
0.00
0.00
W%
53.4
54.86
—In fact, the proposed technique is able to achieve good performance using53.4% of total control energy consumed by FMPC-APSO as well as54.68% of FMPC-APSO. As it is presented in Table 3, the accuracy of our model outperforms that of other methods. To confirm these results further, Figure 4 shows the variations in liquid level in the tank when a step change is applied at 30, 60, and 90, respectively, by FOMPC-APSO, FMPC-APSO, and NMPC.Figure 4
Evolution of liquid levelH.Figure5 shows the manipulated responses when a disturbance is applied to the feed rate, at 40 and 80, respectively.Figure 5
Evolution of liquid levelH in the presence of disturbance.In conclusion, the proposed controller shows the best performance for both set point tracking and regulatory conditions for the entire range of the process as compared to the other controllers.In fact, the proposed technique is able to achieve good performance using 53.4% of total control energy consumed by NMPC as well as 54.86% of FMPC-APSO. As it is presented in Table3, the accuracy of our model outperforms that of other methods.


### 5.2. Continuous Stirred Tank Reactor (CSTR)

The efficiency and the control accuracy of the proposed algorithm were investigated and compared to other control strategies by considering the control of a highly nonlinear MIMO process, namely, a Continuous Stirred Tank Reactor, where the model is presented in [33] and described by the following differentials equations:(26)Cak+1=Cak+Te1vqkCAf-Cak-k0Cake-E/RTkTk+1=Tk+Te1vqkTf-Tk+k1Cake-E/RTk+k2qck1-e-k3/qckTcf-Tk,where k1=-ΔHk0/lCp, k2=lcCpc/lCpv, and k3=ha/lcCpc.The process describes the reaction that converts the productA into a new productB, the concentration Ca is the concentration of product A, and T is the temperature of the mixture. The reaction is exothermic and it is controlled by a coolant flow whose rate is represented by qc. The temperature is controlled by changing the coolant and by controlling the temperature, and the concentration is also controlled. Ca0 is the inlet feed concentration, q is the process flow rate, and Tf and Tcf are the inlet feed and coolant temperatures. All these values are assumed constant at nominal values. In the same way, k0, E/R, v, k1, k2, and k3 are thermodynamic and chemical constants. The numerical values of these parameters are given in Table 4.Table 4
CSTR model parameters.
Description
Parameter
Nominal value
Product concentration
C
a
0.1 [molL-1]
Reactor temperature
T
438.51 [K]
Coolant flow rate
q
c
103.41
[
m
i
n
-
1
]
Process flow rate
q
100
[
L
m
i
n
-
1
]
Feed concentration
C
A
f
1 [molL-1]
Feed temperature
T
f
350
[
K
]
Inlet coolant temp
T
c
f
350 [K]
Reaction volume
v
100 [L]
Heat transfer coefficient
h
a
7
∗
1
0
5
[
c
a
l
m
i
n
-
1
K
]
Reaction rate constant
k
0
7.2
∗
1
0
10
[
m
i
n
-
1
]
Activation energy term
E
/
R
1
∗
1
0
4
[
K
]
Heat of reaction
Δ
H
2
∗
1
0
5
[
c
a
l
m
o
l
-
1
]
Liquid densities
l
c
,
l
1
∗
1
0
3
[
g
L
-
1
]
Specific heats
C
p
,
C
p
c
1
[
c
a
l
g
-
1
K
-
1
]Fuzzy modeling: the above nonlinear model is used to produce input-output time data. The sampling time is set to 0.01 min.[Ca(k-1),Ca(k-2),qc(k-1),qc(k-2),q(k-1)] and [T(k-1),T(k-2),q(k-1),q(k-2),qc(k-1)] are selected as the input vector. The rule numbers of the identified fuzzy models are four.The APSO algorithm parameters are chosen as follows: the maximum number of APSO iterationstmax=110, number of particles Np=10, r1 =0.2, r2 = 0.2, C1 = 1.5, C2 = 2.5, and w0=1.4.The fitness function is selected as follows:(27)Ji=Γy1iCai-Car2+Γqiqci2+Γy2iTi-Tr2+Γqiqi2i=1,2,3,4.The reference signals applied to the system are as follows:(28)Car=0.10≤k<500.0550≤k<1000.15100≤k<1500.25150≤kTr=4800≤k<5036550≤k<100495100≤k<150465150≤k.Tables 5 and 6 contain the performance indices obtained for the outputsCa andT by the NMPC [10], FMPC-APSO [11], and FOMPC-APSO algorithms. It summarizes the results of this example in terms of the Ov%, Tr, Ts, and Es. As seen in these tables, we can note that our method gives the best performance of all compared techniques.Table 5
Pi found by different methods.
Pi
Algorithms
NMPC
FMPC-APSO
FOMPC-APSO
Tr
1.4965
4.4693
0.4135
Ts
6.8561
7.2779
3.5480
Ov%
5.0973
0.1215
0.00
Pic
1.0510
1.0012
1.0000
Es
0.00
0.00
0.00
W%
48.94
47.28
—Table 6
Pi found by different methods.
Pi
Algorithms
NMPC
FMPC-APSO
FOMPC-APSO
Tr
1.3711
3.0459
0.4116
Ts
9.2185
4.5471
3.2626
Ov%
5.4003
1.6309
0.0011
Pic
1.0540
1.0163
1.0000
ES
0.00
0.00
0.00
W%
48.14
49.07
—They applied NMPC algorithm to control the concentration of product and it has the Tr and Ts values of 1.4965 min and 6.8561 min, while the FMPC-APSO approach has 4.4693 min and 7.2779 min. However, the corresponding Tr and Ts values for the same problem were 0.4135 min and 3.5480 and with no Ov%. This indicates that the proposed controller is able to perform faster than the other methods in real application environment. Figures6 and 7 show the evolution of theCa andT outputs from the three methods. From these figures, there is a perfect continuation of the signal of the setpoint whose FOMPC-APSO method has ensured good performances. We also note that our method provides more acceptable control effort regarding Figures 8 and 9.Figure 6
Evolution of concentrationCa.Figure 7
Evolution of temperatureT.Figure 8
Evolution of controlq.Figure 9
Evolution of controlqc.In a second test, the disturbances on the system output in different times have been applied to validate the tracking of the reactor concentration. Thus, a disturbance of 0.002 mol/l at timet=82min and time t=130min is added. Figure 10 illustrates the disturbance rejection performance of the FOMPC-APSO controller. The results show that the adaptive controller has the ability to keep the process stable and regulate the outlet concentration at its desired set point value.Figure 10
Evolution of concentration with external disturbances.


## 5.1. Surge Tank System

The behaviour of the surge tank system, shown in Figure3, is fed by a pump driven by a current Ik [10].Figure 3
The surge tank system.In Figure3, Qk is the feed rate, Ik is the supply current of the pump, H is the liquid level in the tank, Qs is the output flow, a is the section of the output channel, A is the section of the tank, and Hs is the water level in the output channel. The mathematical model of this reactor is(i)
Model of the valve is as follows:(21)Qk=Qk-1+Te-k0Qk-1+k1Ik-1(ii)
The change in water level in the tank is given by the following:(22)Vk=AHk=Hk-1+TeQk-1-Qsk-1,where Qsk=0.6a2gHk-Hs.The values of the constant parameters of this system are grouped in the Table2.Table 2
Specification of the surge tank.
Parameter
Description
Normal operation condition
H
0
Initial value of tank level
0.15
[
m
]
H
s
Initial value of the output channel level
0.015
[
m
]
a
Section of the channel output
0.0001
[
m
2
]
A
Section of the tank
0.04
[
m
2
]
Q
0
The initial flow
0.00013
[
m
3
s
-
1
]
k
0
Constant
1
k
1
Constant
0.1Fuzzy modeling: 1000 pairs of data are used to identify the model using the FCM algorithm. For a good approximation of the plant, we suppose that the subsystems are in the third order. The model consists of two rules of the form:(23)R1:  IfI1isQ1THENH1k=a11Hk-1+a12Hk-2+a13Hk-3+b11I1k-1+b12I1k-2R2:  IFI1isQ2THENH2k=a21Hk-1+a22Hk-2+a23Hk-3+b21I1k-1+b22I1k-2.The vector of parameters of gth rule is obtained by using the WRLS. This fuzzy model is used to represent the process model in the controller:(24)a11=1.952,a21=0.0487,a31=0.0522,b11=0.1131,b21=0.1106,a21=0.8421,a22=0.0808,a23=0.0764,b21=0.1668,b22=0.1697.Once the estimated model is obtained, we will investigate the optimal parameters of the FOMPC control law using the APSO algorithm. This gives the best results with these settings:tmax=350, Np=35, C1=C2= 2.05, r2=0.2, and w0=1.4. The fitness function of the APSO algorithm is defined by the following:(25)Ji=ΓyiHi-Hr2+ΓIiIi2,i=1,2.Table3 shows the performances obtained by these methods. In each interval time, we have changed the set point for evaluating each method to control a highly nonlinear system. The proposed method can generate a high quality solution within shorter calculation time and it tends to converge very fast compared to other methods. The comparison shows some interesting results. It is important to observe that, with FOMPC-APSO, the Ts has been reduced almost 2 times comparing with that obtained from the NMPC and has been reduced almost 5 times comparing with that obtained from the FMPC-APSO. The same observation can be made for the Ov%, where in the FOMPC-APSO case we notice a reduction of nearly 4 times compared with that obtained from FMPC-APSO and more than 10 times with NMPC without any increase in Tr. So, the proposed method is able to keep better stability with less control effort applied.Table 3
Pi performances obtained by the different algorithms.
Pi
Algorithms
NMPC
FMPC-APSO
FOMPC-APSO
Tr
0.8111
0.9820
0.7402
Ts
5.6402
11.0788
1.9936
Ov%
6.0804
2.6922
0.5017
Pic
1.26
0.2055
0.2162
Es
0.00
0.00
0.00
W%
53.4
54.86
—In fact, the proposed technique is able to achieve good performance using53.4% of total control energy consumed by FMPC-APSO as well as54.68% of FMPC-APSO. As it is presented in Table 3, the accuracy of our model outperforms that of other methods. To confirm these results further, Figure 4 shows the variations in liquid level in the tank when a step change is applied at 30, 60, and 90, respectively, by FOMPC-APSO, FMPC-APSO, and NMPC.Figure 4
Evolution of liquid levelH.Figure5 shows the manipulated responses when a disturbance is applied to the feed rate, at 40 and 80, respectively.Figure 5
Evolution of liquid levelH in the presence of disturbance.In conclusion, the proposed controller shows the best performance for both set point tracking and regulatory conditions for the entire range of the process as compared to the other controllers.In fact, the proposed technique is able to achieve good performance using 53.4% of total control energy consumed by NMPC as well as 54.86% of FMPC-APSO. As it is presented in Table3, the accuracy of our model outperforms that of other methods.


## 5.2. Continuous Stirred Tank Reactor (CSTR)

The efficiency and the control accuracy of the proposed algorithm were investigated and compared to other control strategies by considering the control of a highly nonlinear MIMO process, namely, a Continuous Stirred Tank Reactor, where the model is presented in [33] and described by the following differentials equations:(26)Cak+1=Cak+Te1vqkCAf-Cak-k0Cake-E/RTkTk+1=Tk+Te1vqkTf-Tk+k1Cake-E/RTk+k2qck1-e-k3/qckTcf-Tk,where k1=-ΔHk0/lCp, k2=lcCpc/lCpv, and k3=ha/lcCpc.The process describes the reaction that converts the productA into a new productB, the concentration Ca is the concentration of product A, and T is the temperature of the mixture. The reaction is exothermic and it is controlled by a coolant flow whose rate is represented by qc. The temperature is controlled by changing the coolant and by controlling the temperature, and the concentration is also controlled. Ca0 is the inlet feed concentration, q is the process flow rate, and Tf and Tcf are the inlet feed and coolant temperatures. All these values are assumed constant at nominal values. In the same way, k0, E/R, v, k1, k2, and k3 are thermodynamic and chemical constants. The numerical values of these parameters are given in Table 4.Table 4
CSTR model parameters.
Description
Parameter
Nominal value
Product concentration
C
a
0.1 [molL-1]
Reactor temperature
T
438.51 [K]
Coolant flow rate
q
c
103.41
[
m
i
n
-
1
]
Process flow rate
q
100
[
L
m
i
n
-
1
]
Feed concentration
C
A
f
1 [molL-1]
Feed temperature
T
f
350
[
K
]
Inlet coolant temp
T
c
f
350 [K]
Reaction volume
v
100 [L]
Heat transfer coefficient
h
a
7
∗
1
0
5
[
c
a
l
m
i
n
-
1
K
]
Reaction rate constant
k
0
7.2
∗
1
0
10
[
m
i
n
-
1
]
Activation energy term
E
/
R
1
∗
1
0
4
[
K
]
Heat of reaction
Δ
H
2
∗
1
0
5
[
c
a
l
m
o
l
-
1
]
Liquid densities
l
c
,
l
1
∗
1
0
3
[
g
L
-
1
]
Specific heats
C
p
,
C
p
c
1
[
c
a
l
g
-
1
K
-
1
]Fuzzy modeling: the above nonlinear model is used to produce input-output time data. The sampling time is set to 0.01 min.[Ca(k-1),Ca(k-2),qc(k-1),qc(k-2),q(k-1)] and [T(k-1),T(k-2),q(k-1),q(k-2),qc(k-1)] are selected as the input vector. The rule numbers of the identified fuzzy models are four.The APSO algorithm parameters are chosen as follows: the maximum number of APSO iterationstmax=110, number of particles Np=10, r1 =0.2, r2 = 0.2, C1 = 1.5, C2 = 2.5, and w0=1.4.The fitness function is selected as follows:(27)Ji=Γy1iCai-Car2+Γqiqci2+Γy2iTi-Tr2+Γqiqi2i=1,2,3,4.The reference signals applied to the system are as follows:(28)Car=0.10≤k<500.0550≤k<1000.15100≤k<1500.25150≤kTr=4800≤k<5036550≤k<100495100≤k<150465150≤k.Tables 5 and 6 contain the performance indices obtained for the outputsCa andT by the NMPC [10], FMPC-APSO [11], and FOMPC-APSO algorithms. It summarizes the results of this example in terms of the Ov%, Tr, Ts, and Es. As seen in these tables, we can note that our method gives the best performance of all compared techniques.Table 5
Pi found by different methods.
Pi
Algorithms
NMPC
FMPC-APSO
FOMPC-APSO
Tr
1.4965
4.4693
0.4135
Ts
6.8561
7.2779
3.5480
Ov%
5.0973
0.1215
0.00
Pic
1.0510
1.0012
1.0000
Es
0.00
0.00
0.00
W%
48.94
47.28
—Table 6
Pi found by different methods.
Pi
Algorithms
NMPC
FMPC-APSO
FOMPC-APSO
Tr
1.3711
3.0459
0.4116
Ts
9.2185
4.5471
3.2626
Ov%
5.4003
1.6309
0.0011
Pic
1.0540
1.0163
1.0000
ES
0.00
0.00
0.00
W%
48.14
49.07
—They applied NMPC algorithm to control the concentration of product and it has the Tr and Ts values of 1.4965 min and 6.8561 min, while the FMPC-APSO approach has 4.4693 min and 7.2779 min. However, the corresponding Tr and Ts values for the same problem were 0.4135 min and 3.5480 and with no Ov%. This indicates that the proposed controller is able to perform faster than the other methods in real application environment. Figures6 and 7 show the evolution of theCa andT outputs from the three methods. From these figures, there is a perfect continuation of the signal of the setpoint whose FOMPC-APSO method has ensured good performances. We also note that our method provides more acceptable control effort regarding Figures 8 and 9.Figure 6
Evolution of concentrationCa.Figure 7
Evolution of temperatureT.Figure 8
Evolution of controlq.Figure 9
Evolution of controlqc.In a second test, the disturbances on the system output in different times have been applied to validate the tracking of the reactor concentration. Thus, a disturbance of 0.002 mol/l at timet=82min and time t=130min is added. Figure 10 illustrates the disturbance rejection performance of the FOMPC-APSO controller. The results show that the adaptive controller has the ability to keep the process stable and regulate the outlet concentration at its desired set point value.Figure 10
Evolution of concentration with external disturbances.


## 6. Conclusion

In this paper, we have introduced the FOMPC-APSO controller applied to highly nonlinear systems. An approach of determining the optimum weights is developed by minimizing a chosen performance criterion using APSO algorithm. The proposed approach is based on the advantage of the TS fuzzy system in the modeling phase and the metaheuristic optimization APSO algorithm in a new structure predictive controller. The advantage of this structure is its ability to handle highly nonlinear systems regardless and keep a good stability in terms of overshoot, rise time, and settling time including disturbances. We have achieved these objectives without any obligation increase in the control signal since we have injected the phenomenon of optimal control in the synthesis of our controller. Compared with other similar existing methods, the FOMPC-APSO algorithm enhances the convergence and accuracy of the controller optimization, which is much easier for implementation in real time.



---

*Source: 5813192-2017-10-09.xml*