A new design of fuzzy logic controller optimized by PSO-SCSO applied to SFO-DTC induction motor drive

Received Dec 7, 2019 Revised May 12, 2020 Accepted May 25, 2020 In this article, a new strategy for the design of fuzzy logic controllers (FLC) is proposed. This strategy is based on the optimization of the FLC, by the hybridization between the particle swarm optimization algorithm (PSO) and the sine-cosine swarm optimization algorithm (SCSO), This new strategy is called FLC-PSCSO. The input-output gains and the geometric shapes of the triangular membership functions of the FLC are the objective functions to be optimized. The optimization of the latter is obtained by minimizing a cost function based on the combination of two criteria, the integral time absolute error (ITAE) and the integral absolute error (IAE). A comparison between the conventional FLC and the proposed FLC-PSCSO is made. The FLC optimized by PSCSO shows a remarkable improvement in the performance of the controlled induction motor.


INTRODUCTION
Since the first appearance of fuzzy logic in the sixties by Zadeh [1], many other research works were made such as those of Mamdani [2], Takagi and Sugeno [3] and then Yamakawa [4]. In recent years, the phenomenal development of digital electronics has demonstrated the merit of using fuzzy logic algorithms to control many complex systems. Nowadays, fuzzy logic controllers (FLCs) [5][6][7] have been widely used successfully in industrial control system applications, such as: Electrical engineering [8,9], Medical field [10], Renewable energy [11][12][13][14], Robotics [15][16][17]. These complex applications are nonlinear and do not require good knowledge of their exact mathematical models.
Nevertheless, an efficient design of FLC needs to be carried out by an expert with a very well knowledge of the system. Furthermore, because of the large number of parameters of conventional FLC, which are input-output gains in addition to the geometric shapes of membership functions, the use of the trial-and-error method in order to find an optimal solution is a laborious work. In electrical engineering for example, the conventional FLC gives acceptable performances but they are still insufficient. Indeed, during changes in the operating point, the overshoot is important, involving a large consumption of stator current that can be destructive for the inverter that controls the induction motor.
In order to overcome this problem, many approaches have been suggested [18], including the use of heuristic methods inspired by nature [19][20][21][22][23][24], such as: particle swarm optimization (PSO), proposed by Kennedy [25,26], In order to improve the performance of the structure of the PSO algorithm, a contribution was proposed in [27,28]. On the other hand, the development of the SCSO and SCA algorithms [29][30][31] and their contribution either by the optimization of the physical systems [32], or in the optimization of the FLC controllers [33], gave satisfactory results. Both PSO and SCA [34] are random global optimization techniques. Combining PSO and SCA finds optimal areas for complex search spaces through the interaction of individuals in a group of particles and has proven to be very powerful at solving persistent and non-linear complex optimization problems [35]. Since SCSO is an improved version of SCA, hybridization between PSO and SCSO techniques can generate an excellent-quality solution within an ideal computational time and a very stable convergence characteristic compared to other random methods. The combination of PSO and SCSO is called the PSCSO. As the PSCSO method is a perfect optimization methodology and a promising approach for solving the optimal FLC controller parameters problem; therefore, this study develops the PSCSO-FLC controller to search optimal FLC parameters. This FLC Controller is called the PSCSO-FLC controller.
In this paper, this new approach is applied to direct flux-oriented torque control (SFO-DTC) [36], in order to be tested and subjected to a simulation using the MATLAB/Simulink process environment to demonstrate its inherent capabilities. In the context of optimization, it is the performance index of the closed loop system which becomes the fitness function. The goal is to have a short response time, a zero overshoot and a steady state error close to zero. In this end, a multiple objective function that should be used depends mainly on the ITAE and the IAE [37].

HEURISTIC ALGORITHMS
Induction motors (IM) are widely used in the industrial field, because they are robust, reliable, compact and more efficient than other electrical motors. However, the main difficulties encountered in controlling the induction motor reside in the coupling between flux and torque, as well as in the nonlinearity of the mathematical model. The development in IM based electrical drive has manifested in the realization of static converters, which respond to the speed of the fastest processors, as well as in the development of efficient control algorithms. Among these, the Stator Flux Oriented Direct Torque Control (SFO-DTC) is the most common method for variable frequency operation of IM. Nevertheless, an efficient design of fuzzy logic controller (FLC) needs to be carried out by an expert with a very well knowledge of the system. However, the inadequate performance provided by the traditional FLC to the SFO-DTC scheme is implicit in its structure.
The idea suggested to solve this problem is to use heuristic algorithms such as PSO and SCSO. The proposed new approach is based on the hybridization of these two algorithms to optimize the structure of the membership functions with adequate normalization and denormalization gain values. This approach is called PSCSO. In the following part, conventional FLC is briefly reviewed. The presentation of the two algorithms, PSO and PSCO, is made with the development of this new PSCSO Algorithm.

Conventional fuzzy logic controller
A conventional fuzzy logic control includes three parts: fuzzification process, linguistic rule base, and defuzzification process. The first input of the FLC is the error (e) between the controlled variable and its reference value. The second is the error derivative (de). The integral of the increment control (U * ) is the output. The input and output variables are replaced by their normalized values. Ke and Kde are the normalizing gains which map the input variables into the range of [-1, 1]. KU is defined to map the de-normalized output value to the actual output range.
The symmetric and equidistant triangular membership functions characterize the conventional FLC. The membership functions are assigned with seven fuzzy sets which are NB (negative big), NM (negative medium), NS (negative small), AZ (approximate zero), PS (positive small), PM (positive medium) and PB (positive big), in ascending order as shown in Figures 2(a), 2(b) and 2(c). Table 1 represents the basic linguistic rules which describe an FLC [9,11,14].
For the flux's FLC, the input variables are the error between, the stator reference flux * , and the IM estimated flux ̂ and its derivative. The output of this controller is the voltage vector * . For the torque's FLC, the input variables are the error between the reference torque * , and the IM estimated electromagnetic torque ̂ , and the error derivative. The output represents the voltage vector * . The speed's FLC uses the error between the reference speed * and the measured speed and its derivative, and its output represents the reference torque vector * .
The fuzzy discourse universe is subdivided into seven zones involving 49 control rules [9]. The fuzzy rules are presented in Table 1. Mamdani's min-max inference system has been selected for the computation of the fuzzy decision. In the defuzzification step, the center of gravity method is used for converting this decision into crisp value [2]. A trial-and-error method was used to determine the normalization and denormalization gains of the three FLCs by numerical experiments. Table 2 summarizes the results obtained after several simulations.

PSO algorithm
Consider Swarm of Particles is flying through the parameter space and searching for optimum. Each particle is characterized by its position vector or Pi (k) and its velocity vector vi (k). During the process each particle will have its individual knowledge Pbest i.e. its own best -sofar in the position and social knowledge gbest i.e., Pbest of its best neighbour. The velocity of each particle can be modified by the (1) [27]: where: C1 : inertia weight Rand : random number between 0 and 1 C2, C3 : acceleration constants

SCSO algorithm
While the structure of the sine-cosine based swarm optimization (SCSO) method, presented in [30], calculates the velocity of each particle using the (2).
where r is a random number in [0,1]. The current position (searching point in the solution space) can be modified by the (3) [27,30]:

Proposed FLC-PSCSO controller
During changes in the operating point, the conventional fuzzy logic controllers give acceptable performance but are still insufficient. The fuzzy logic controllers, which have asymmetric and non-equidistant membership functions, seem to provide improved performance. As infinity of structures with an asymmetric membership functions exist, and the use of the trial-and-error method to find the optimal structure is laborious, a new strategy based on a combination between the PSO algorithm and the SCSO algorithm is proposed to overcome this problem. This approach is called PSCSO. The principle of FLC tuned by PSCSO algorithm is shown in Figure 1.
The process takes place in two steps; first, the PSO algorithm begins to find the global optimum. Then, to speed up the process, the SCSO algorithm takes over and ends the search process until the optimal solution is obtained. The parameters of the algorithm with the iteration number are given in Table 3.
Here, ωref(k) is system input (the reference speed) , * ( ) is the output of FLC, which is used to control the torque of SFO-DTC, ωr(k) is system output (the rotor speed).

Individual string definition
To apply the PSCSO method for searching the controller parameters, we defined ten controller parameters ( ) ( ) ( ) 1 ( ) … 7 ( ). Hence, there are ten members in an individual, which are assigned as real values. If there are 30 individuals in a population, then the dimension of a population is 30x10. The matrix representation in a population is as follows.
According to equation (4), the vector Pi(k) regroups ten values and it subdivides into two essential blocks. The first block is reserved for the normalization-denormalization gains for speed-FLC (i.e. _ , _ and _ ); the second block is devoted to the parameters of the membership functions speed-FLC (i.e. _1 ,…, _7 ). Figure 2 illustrates the general form of the Speed-FLC.

Evaluation function definition
The multi-objective function (fitness) (k) is the error function, which is defined as follows: where: ωref(k)=f(k) represents second order function of zero overshoot with an imposed response time. The function is applied to limit starting stator currents at full speed. While, Nω=p/(2*π*50) is the normalization coefficient of the cost function. ITAE measures the steady state error [37], while IAE is measure of a fast-dynamic response [37]. Each particle i represents a possible solution Pi(k). By minimizing the multi-objective function Ji_obj by PSCSO algorithm, the optimal solution is found as well as the performance of the speed FLC-PSCSO is improved. This paper presents a FLC-PSCSO controller for searching the optimal or near optimal controller parameters ( ) ( ) ( ) 1 ( ) … 7 ( ) with the PSO algorithm, to speed up the process; the SCSO algorithm takes over and ends the search process until the optimal solution is obtained. The searching procedures of the proposed PSCSO-FLC controller were shown as follows: -Step 1. Generate initial particles randomly in the search space.
where ( ) is upper bound, and ( ) is lower bound. Initialize inertia factor C1, weighting factors C2 and C3, max iteration Nmax=300, error (ɛ). Evaluate Velocity ( ) of each particle using (1). The current searching point is set to Pbest for each particle. The best-evaluated value of Pbest is set to gbest and the particle number with the best value is stored. -Step 2. Sample system input ωref(k) and system output ωr(k), comuting ( ) in the moment of sampling. -Step 3. Evaluate searching points of each particle.
The multi-objective function value is calculated for each particle. If the value is better than the current Pbest of the particle, the Pbest value is replaced by the current value. If the best value of Pbest is better than the current gbest , then gbest is replaced by the best value and the particle number with the best value is stored. -Step 4. Modify each searching point.
The current searching point of each particle is changed using (1) and (3). -Step 5. Check the exit condition.
then go to step 6, otherwise, continue iteration. Go to step 2. The process starts with the PSO algorithm, when the search becomes slow, the SCSO algorithm is automatically started to finalize the global optimization.

STATOR-FLUX-ORIENTED DIRECT TORQUE CONTROL STRATEGY (SFO-DTC)
For the Stator Flux Oriented Direct Torque Control (SFO-DTC), the stator flux vector is aligned with d-axis and setting the stator flux to be constant equal to the rated flux, which means Φds=Φs and Φqs=0. In a referential related to the rotating field, the dynamic model of the induction motor controlled by SFO-DTC, as shown in Figure 3, is governed by the system of equations [36]: The mechanical rotor speed equation is given by the following expression: where: = (1 − 2 / ), = ⁄ , = ⁄ and 0 = /( + ). From (11) and (13), direct and quadrature stator currents are given by following expressions: After some elementary calculation between (11) and (12) and under steady state conditions, and by neglecting the term ( ) 2 , slip speed obtained as: By considering equations (9), (10), (15) and (16), and by neglecting the same term ( ) 2 , it can be noticed that and are coupled, where the coupling terms are (2σL s ω sl T e) /3pφ s * and −( (1 + )/(1 + ) + ) respectively. The aforementioned two terms are considered to be disruption; therefore, they can be eliminated by using a method known as decoupling by compensation term which results in the following system of equations: where: Ed and Eq are the direct and quadrature back electromotive forces (EMF). Where: where, and are the position and stator angular velocity, and and are the position and slip angular velocity respectively.

Int J Elec & Comp Eng
ISSN: 2088-8708  The block diagram of the SFO-DTC based on three controllers (hereafter, speed, flux and torque controllers) is illustrated in Figure 4. From the system of (18), it can be seen that the voltage equations of the d-axis and the q-axis are strongly coupled. It should be noted that the induction motor model is nonlinear and its variables are interdependent. Therefore, the use of conventional fuzzy controllers can solve this problem. Two conventional fuzzy controllers based on triangular membership functions are used for the three control magnitudes (which are torque, flux, and speed).

SIMULATION RESULTS
Simulations were carried out under the MATLAB/Simulink environment. The IM's parameters are illustrated in appendix. The PSCSO algorithm is applied to the control system under nominal conditions. The initial setting parameters of PSCSO are given in Table 3. A full-speed startup of 157 rd/s is given to the system drive. Full load of 10 Nm is applied at 1s, then; this load is completely removed at 2 s, while this simulation is carried out till 3s.
As shown in Figure 5, the PSCSO algorithm is able to find a good optimal solution after only 267 iterations despite the high number of parameters to be optimized (ten parameters). Table 4 gives the optimal values of Normalization gains and optimal values of membership functions parameters of the speed-FLC found by PSCSO algorithm after 300 iterations. Figure 6 gives to the influence of the speed-FLC optimized by PSCSO on the performance of the system in both transient and steady state conditions. The starting transient performance of the induction motor under the different controllers' types is shown in Figure 6. FLC-PSCSO has the best transient response where the motor speed is approximately built up in less than 0.5 s without overshoot.  On the other hand, conventional FLC can provide the same response time but with a speed overshoot of 10.2%. The FLC-PSCSO provide a robust control compared to conventional FLC when a load of 10 Nm is applied to the induction motor at 1 s, since the induction motor's speed controlled by these controllers (FLC-PSCSO) drops initially to 141.6 rd/s at 1 s, then it has been adjusted back to the reference in only 0.11s. While conventional FLC shows a speed drop to 120.8 rd/s and 0.5s to re-adjust the speed to the reference. Table 5 gives more illustrations about the performance of FLC-PSCSO and conventional FLC. According to Figure 7 and Table 5, it can be noticed that the ITAE and Jobj of conventional FLC is very high compared to those of FLC-PSCSO. Moreover, FLC-PSCSO has very low values of speed overshoot, steady state error and settling time compared to conventional FLC.

Robustness test
Various tests are conducted in this sub-section in order to evaluate the performance of FLC-PSCSO when the parameters of the induction motor, such as the stator's resistance and the moment of inertia, varies because of drift in their magnitudes or because a bad identification of the induction motor. In the first test, the parametric variation takes into consideration the stator's resistance that up to 100% of its initial value. While in the second test the moment of inertia Jm is up to 100% of its initial value. In both tests, the induction motor is loaded and unloaded at 1s and 1.5s, respectively, by 50% of rated load, see Figure 8 and Figure 9. In order to evaluate the tracking performance, a test is conducted by varying the speed reference with a step of 50 rad/s at t=0, followed by a change of speed from 100 rad/s to 150 rad/s at 1s and 1.5s respectively as shown in Figure 10. The observation of the obtained results permits making the following interpretations: the most notable changes are those observed during changes in stator resistance. This is in accordance with the fact that SFO-DTC control is mainly sensitive to the variations of this resistance at low speeds. A better tracking is detected during the observation of the behavior changes of the optimized FLC-PSCSO, despite the large variations applied. Indeed, the tracking error remains very low and the disruption are rejected very quickly. It can therefore be said that the FLC-PSCSO is robust in controlling induction motors.

CONCLUSION
In this paper, we have highlighted the improvement in the performance of FLC controllers optimized by PSCSO algorithm, compared to other controllers, namely conventional FLC. Simulation results showed a remarkable behavior of the FLC controller optimized by PSCSO in regulation and tracking, a much better disturbance rejection than for conventional FLC controllers, and a very good performance with respect to robustness. Thus, the use of such an optimization solution by PSCSO algorithm makes it possible to exploit rationally the advantages of the conventional FLC controllers and to avoid their disadvantages. Generally, the PSCSO off-line tuning process is simple but may need a lot of time to converge to the optimal solution, depending on the complexity of the drive system and as the choice of the PSCSO parameters. To reduce the convergence time, the research domain and the particles number as well as the stopping criterion must be carefully selected to form an adaptive algorithm.

APPENDIX
The parameters of the IM used in simulations are given in Table 6.