Next Article in Journal
Fault Diagnosis of a Reciprocating Compressor Air Valve Based on Deep Learning
Next Article in Special Issue
Estimation of Distribution Algorithms with Fuzzy Sampling for Stochastic Programming Problems
Previous Article in Journal
Degradation State Recognition of Piston Pump Based on ICEEMDAN and XGBoost
Previous Article in Special Issue
BSM-Data Reuse Model Based on In-Vehicular Computing
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Comparison and Ranking of Metaheuristic Techniques for Optimization of PI Controllers in a Machine Drive System

by
Omar Aguilar-Mejía
1,†,
Hertwin Minor-Popocatl
1,*,† and
Ruben Tapia-Olvera
2,†
1
School Engineering, UPAEP University, Puebla 72410, Mexico
2
Departamento de Energía Eléctrica, Universidad Nacional Autónoma de México, CD de México 04510, Mexico
*
Author to whom correspondence should be addressed.
These authors contributed equally to this work.
Appl. Sci. 2020, 10(18), 6592; https://doi.org/10.3390/app10186592
Submission received: 30 June 2020 / Revised: 19 August 2020 / Accepted: 31 August 2020 / Published: 21 September 2020
(This article belongs to the Collection Bio-inspired Computation and Applications)

Abstract

:
Proportional integral (PI) control is still the most widely deployed controller in the industrial drives due to its simplicity and the fact that it is easy to understand and implement. Nevertheless, they are successes applied to systems with a complex behavior with a nonlinear representation, but a disadvantage is the procedure to find the optimal PI controller gains. The optimal values of PI parameters must be computed during the tuning process. However, traditional tuning techniques are based on model and do not provide optimal adjustment parameters for the PI controllers because the transient response could produce oscillations and a large overshoot. In this paper, six swarm intelligence-based algorithms (whale, moth-flame, flower pollination, dragonfly, cuckoo search, and modified flower pollination), are correctly conditioned and delimited to tune the PI controllers, the results are probed in a typical industry actuator. Also, a rigorous study is developed to evaluate the quality and reliability of these algorithms by a statistical analysis based on non-parametric test and post-hoc test. Finally, with the obtained results, some time simulations are carried out to corroborate that the nonlinear system performance is improved for high precision industrial applications subjected to endogenous and exogenous uncertainties in a wide range of operating conditions.

1. Introduction

Alternating current (AC) motors are widely used in industrial applications such as electric vehicles, hybrid electric vehicle, wind generation systems, mining machinery, marine propulsion, industrial robots, air conditioners, cranes, among other applications, as well as particular demand in residential and commercial areas [1,2]. There are two main categories of AC motors: induction motors (IM) and synchronous motors (SM), the last one, are gaining great attention due to its self-excitation, high efficiency, low maintenance cost, high power density, fast dynamic response, high torque-to-inertia, and more economic maintenance compared to direct current and induction machines. [3,4].
During recent decades, the permanent magnet synchronous motor (PMSM) has been used more and more due to its advantages; but at the same time, too many control structures have been developed to enhance the performance due to the nonlinears, and endogenous and exogenous disturbances [5]. Some of them include classical controllers, intelligent control, vector control, backstepping technique, linear quadratic regulator, fuzzy logic controller, artificial neural networks, genetic algorithm, predictive control, and robust control [6]. Vector control with classical controllers, Figure 1, is the most widely used controller in industries due its easy design and implementation procedure. Moreover, in the literature, proportional integral derivative (PID) controllers have been extensively studied to prove stability of PMSM dynamic performance and improve its operation under critical scenarios [7,8]. In [9] shows that the PMSM is globally regulated around a desired equilibrium point, with a simple PI control around current errors, if the gains are suitably chosen. Therefore, a control scheme based on traditional PI controllers is a proper choice for velocity trajectory tracking.
The advantages of a PID controller are its feasibility, simplicity, ease to understand, and implementation stage. However, a disadvantage of the traditional PID controller is the procedure to find the optimal PID gains for a particular system that is very difficult and tedious to perform [10,11,12,13]. In the literature, there are several techniques to solve the problem of gains tuning of conventional PID and PI controllers when the system is non-linear, such as the PMSM. Traditional tuning techniques do not provide optimal adjustment parameters for the PID controllers because the transient response could produce oscillations and a large overshoot due to the system dynamics [14]. Therefore, new regulation strategies know as advanced and intelligent schemes have been applied to overcome the main drawbacks of PID controller in tuning stage, by the solution of an objective function to achieve optimal gains.
A crucial problem in nonlinear systems control design and PID scheme is the definition of a set of controller gains that provide a system performance near-optimal. This process, which is usually carried out at the design stage as a compensation regarding various adverse factors, often produces restricted results. Thus, algorithms inspired in nature and population seems like an important alternative to synergistically operate with PID controller for improving the system behavior [10].
In recent literature, various metaheuristic algorithms have been used to carry out an inclusive search for optimal solutions, which cannot be solved by classical techniques. That the metaheuristic algorithms try to emulate the natural behavior of different class of animals, outcomes to have a high level of efficiency, overcome limitations of classical methodologies. Besides, search results depend on the system complexity or the problem to solve; becouse a metaheuristic algorithm can be more efficient than other to solve a particular problem, while the same metaheuristic algorithm could present a poor performance for another system [15].
In this context, different optimization techniques, such as cuckoo search algorithm (CSA) [14], biogeography-based optimization (BBO) [16], firefly algorithm (FA) [17], hybrid FA-pattern search [18], krill herd algorithm [19], flower pollination algorithm (FPA) [12], hybrid flower pollination algorithm (HFPA) [20], grey wolf optimization algorithm (GWO) [21], bacterial foraging algorithm [22], particle swarm optimization (PSO) [23], differential evolution [24], artificial bee colony (ABC) [25], whale optimization algorithm (WOA) [26], moth-flame optimization algorithm (MOA) [27], dragonfly algorithm (DA) [13] have been developed and can be used to compute the optimal PID controller gains of many dynamic systems. However, useful algorithms’ performance depends on the adequate search procedure, which implies the correct objective function definition, search limits, the setting the search algorithm control parameters, and the complexity of the analysis system.
In [28] a WOA application is presented to optimally design PID controllers in the automatic generation control loops of interconnected power systems, including renewable energy sources. The effectiveness of the proposed controller to deal with the uncertainties in generation systems is an essential feature of this study.
An objective function to enhance transient response of terminal voltage in terms of maximum overshoot, rise time, settling time, and steady state error is solved by CSA algorithm [14]. A PID controller is used in automatic voltage regulator scheme. Also, in [10] the automatic control problem of synchronous generator is attended with MOA optimization procedure.
In [13] DA, is applied for design and implementation of a PID controller with three degrees of freedom. The control stabilizes the frequency and power fluctuations after some disturbance is presented in a hybrid topology of an electric distribution system.
In [29] a meta-heuristic optimization algorithm called chaotic whale optimization algorithm is used to regulate the performance of PMSM when it is affected by load disturbances and changes in system parameters. In [30] a control system for permanent magnet synchronous motors, together with an online self-tuning method is presented. In this work, a meta-heuristic bio-inspired approach has been implemented to find the voltage source converter parameter set which minimizes a specific objective function. In the last three cases, there is not a robustness analysis, sensitivity analysis, or statistical test to affirm robust performance of designed controller, analyze the effectiveness of the controller and verify the significance of the results, respectively.
The purpose of this paper is to compare different reactive, nature-inspired algorithms for tuning parameters of the PID controller in order to discover the most suitable algorithm for use in solving this class of problem. The six nature-inspired algorithms such as whale, moth-flame, flower pollination, dragonfly, cuckoo search, and modified flower pollination are compared in order to show which of them are the best to work with the same population sizes and generation numbers. This proposal uses six nature-inspired algorithms to search optimal values of a regulatory scheme for robust tracking tasks of desired velocity profiles of a PMSM [31]. This evolutionary technique is applied on one objective/fitness function to find an optimal solution that minimizes the overall error.
In another context, the contributions of a meta-heuristic must be objectively evaluated and reported; however, as described in [32], this is not always the case. This is due to the fact that the meta-heuristic procedures are not described in sufficient detail, the experimental adjustments are very generally described and this results in the impossibility of replicating an experiment exactly and an equitable comparison as mentioned in [33]. Statistical analysis [34] is used for the objective evaluation of the performance of metaheuristic algorithms. The statistical procedures developed to carry out statistical analyzes can be classified into two: parametric and non-parametric, according to the specific type of data used [35]. In many experimental studies, the lack of properties required for proper application of parametric procedures (independence, normality, and homoscedasticity) gives non-parametrics the task of rigorous comparison between algorithms. Due to the above, the use of non-parametric statistical analysis is widely used in the field of metaheuristics [34] to establish its performance.
Due to different current drawbacks in PMSM regulation, some objectives could be included in the controller design stage: (a) Search simultaneously optimum values of a regulation scheme for robust tracking tasks of desired velocity profiles of a PMSM using six nature-inspired algorithms. To explore optimum controller settings, an extensive comparative study is carried out with different performance index and time domain specification; (b) in order to investigate the effectiveness of the velocity trajectory tracking controller tuned with six nature-inspired algorithms, the comparison of the transient response of the PMSM subject to different operating conditions is made; (c) to examine the robustness of the velocity trajectory tracking controller tuned with six nature-inspired algorithms, a sensitivity analysis under parametric variation and different operating conditions of the PMSM is done; and (d) The presented results exhibit high quality behavior and is demonstrated by a statistical analysis based on non parametric test and post hoc test.
The remainder of the paper is organized as follows. Section 2 portrays the mathematical model of a nonlinear PMSM. The control structure is presented in Section 3. The objective function and constraints for the optimization of PI gains are described in Section 4. An overview of the six nature-inspired algorithms are presented in Section 5. In Section 6 presents optimization results, sensitivity analysis and robustness of controller. Section 6 shows the statistical analysis for comparing nature-inspired optimization algorithms. Finally, the conclusions of the paper are established.

2. Analytical Representation Regulation Scheme of PMSM

2.1. Dynamic Model

The set of nonlinear differential equations that describe the dynamics of a three-phase PMSM drive in the d q reference frame oriented to the rotor flux axis can be written as [36]:    
d i d d t = ( R s i d + ω e L q i q v d ) 1 L d
d i q d t = ( R s i q + ω e L d i d ω e λ m v q ) 1 L q
d ω r d t = 0.75 P i q ( λ m + ( L d L q ) i d ) T l B ω r J
d θ r d t = ω r
where R s is the stator winding resistance per-phase; ω e is the electrical rotor angular speed; L d and L q are the stator winding self-inductances in the d and q axes, respectively; i q is the q-axis stator current; v q is the q-axis stator voltage; i d is the d-axis stator current; v d is the d-axis stator voltage; λ m is the magnetic flux linkage in the rotor due to the magnets; J and B are the inertia moment and the viscous friction coeffcient, respectively; T l is the disturbance signal; P is the number of pole pairs; θ r and ω r are position and the mechanical speed of the rotor ( ω e = P ω r ), respectively.

2.2. Control Algorithm

The system depicted in (1)–(4) is a set of coupled nonlinear differential equations with two control inputs, v d and v q and one disturbance signal ( T l ). The main task of the PMSM drive based on linear controllers is to design an asymptotically stable regulation scheme for robust tracking tasks against different operating conditions and desired speed reference profiles.
The PMSM used in this servo system demands a particular configuration of control scheme, Figure 1. The system contains a permanent magnet synchronous motor, a field oriented control, coordinate transformations a b c to d q and vice versa, a sinusoidal pulse width modulation, a power source rectifier based on semiconductor devices, a direct current voltage bus ( V C D ) an encoder used to detect speed and three PI controllers. The controllers apply a structure of cascade control loops, consisting of an external speed loop and two inners currents loops. The cascade control is used to attenuate the effect of disturbances. In this work, the three control loops are used to track desired speed reference profiles and provide robustness against exogenous disturbances (mechanical load torque) and parametric variations due to operating temperature.
The external control loop with negative feedback is used for speed regulation and compensate variations of load torque. Figure 1 shows that the outer control loop computes the desired current signal ( i q ) in q axes, for the desired speed ω with the rotor speed error signal e ω . The expression to compute the rotor speed error signal can be represented as,
e ω = ω ω r
where ω is the desired rotor speed and e ω is the rotor speed error. The external loop equation can be expressed as
i q = k p , ω r ( ω ω r ) + k i , ω r 0 t ( ω ( τ ) ω r ( τ ) ) d τ
where k p , ω r and k i , ω r are the proportional gain of rotor speed and the integral gain of rotor speed, respectively. The two internal control loops are called the secondary control. The inner loops attenuate the effect due to the parametric variations of PMSM. The equations of the two internal control loops are given by
v d = k p , i d ( i d i d ) + k i , i d 0 t ( i d ( τ ) i d ( τ ) ) d τ L q ω e i q v q = k p , i q ( i q i q ) + k i , i q 0 t ( i q ( τ ) i q ( τ ) ) d τ + L d ω e i d + ω e λ m
where k p , i d and k i , i d are proportional and integral gains of the current on d-axis, respectively; i d is the d-axis current reference value, k p , i q and k i , i q are proportional and integral gains of the current on q-axis, respectively; and
v d = L q ω e i q + U d v q = L d ω e i d ω e λ m + U q
where U d and U q are two new auxiliary control variables. The auxiliary variables are used to obtain the desired dynamics for the PMSM stator currents eliminating the nonlinearities and the coupling of the mechanical and electrical variables indicated in (1) and (2) [7,37]. Thus, k p , i q , k i , i q , k p , i d , k i , i d , k p , ω r and k i , ω r are computed simultaneously using six nature-inspired algorithms to ensure high speeds tracking performance and efficient disturbances rejection. The purpose of this analysis is to compare different reactive, nature-inspired algorithms for tuning parameters of the PID controller in order to discover the most suitable algorithm for the velocity trajectory tracking controller problem.

3. Objective Function for Parameters Tuning

The objective function to compute the gains of the controllers can be designed in different ways. In previous works, the objective function is constructed by one or more performance indices, such as: integral squared error (JISE), integral absolute error (JIAE), integral time and squared error (JITSE), mean squared error (MSE) and integral of time and absolute error (JITAE). Nevertheless, some researchers have been used different fitness functions based on time domain specifications response, such as: settling time ( t s ), rise time ( t r ), maximum overshoot ( M p ) and steady state error ( e s s ). In this paper, to design the objective function, both criteria of transient response and performance indices are used in order to minimize all the indices as mentioned earlier. [14,38,39]. Thus, the respective objective function is defined as [40],
min J = ( 1 e x p γ ) ( M p + e s s ) + e x p γ ( t s t r )
subject to the following constraints:
k p , j min k p k p , j max k i , j min k i k i , j max
where j = [ i q , i d , ω r ] ; k p , j min , k i , j min , k p , j max and k i , j max are the maximum and minimum values of the gains of the PI controllers, and γ is the weighting factor which could be changed according to the dynamics of the system, in this work γ = 0.5. The search space for proportional gains ( k p , j ) are defined between 0.1 and 100; and that of the integral gains ( k i , j ) are between 0.1 and 250.

4. Description of Search Algorithms

4.1. Overview of Cuckoo Search Optimization

The CSA is an algorithm based on the aggressive strategy of reproduction of the cuckoo birds and the characteristics of flights called Lévy of some species of birds [41]. CSA starts when the mother cuckoo lays her eggs in alien nests. The host bird can discover that the eggs are not its own and either destroy the eggs or leave the nest with all the eggs inside. CSA starts with an initial population randomly distributed to search for a nest to lay the egg. The random position of the nest where the egg is placed is decided by carrying out Levy flights, defined as:
x ( t + 1 ) = x ( t ) + α Lévy ( λ )
where t is the current generation number and α > 0 is the step size. The product ⊗ means entry-wise multiplication. Basically, Lévy flights provide a random walk, while their random steps are extracted from a Lévy distribution, which for large steps has an infinite variance with an infinite average, with the form
Lévy u = t ( λ ) , ( 1 < λ 3 )
In the real world, if the egg of a cuckoo bird is very similar to the egg of the nest-owning bird, then the egg has less chance of being discovered so the suitability must be related to the difference in solutions. Following the rules defined above, the optimization algorithm can be summarized in Algorithm 1.
Algorithm 1: Cuckoo Search Optimization
begin
      Objective function J, k i , j = [ k p , i d , k i , i d , k p , i q , k i , i q , k p , e ω , k i , e ω ]
      Generate initial population of N host nests x i ( i = 1 , 2 , , N )
      while ( t < Max Generation) or (stop criterion)
            Get a cuckoo randomly by Lévy flights
            Evaluate its fitness
            Choose a nest among N randomly
            if ( F i > F j )
                  Replace j by the new solution
            end if
            Abandon a fraction ( p a ) of worse nests
            Keep the best solutions (or nests with quality solutions)
            Rank the solutions and find the current best
      end while
      Show results and visualization
end

4.2. Overview of Dragonfly Algorith

The dragonfly, is one of the most interesting and fascinating insects of nature. Currently, more than 5500 different species of dragonflies are known. Dragonfly Algorithm mimicks the swarming behaviours of a dragonfly. The inspiration of the DA [42] is taken from the social behavior of the dragonflies to hunt their food (static swarm) and when they migrate (dynamic swarm). Considering these two behaviors, there are five factors involved in determining the individual dragonfly position: (a) Separation; (b) Alignment motion; (c) Cohesion motion; (d) Food Attraction; and (e) Predator distraction. There are two ways for updating the individual dragonfly position depending on the neighborhood position. If there is no dragonfly in the neighborhood radius, the individual position is updated considering the Levy flight equation and given as follow:
X t + 1 = X t + lévy ( d ) X t
where d is the number of decision variables. The Lévy flight function is given by
lévy ( d ) = 0.01 r 1 ρ r 2 1 / β
where r 1 and r 2 are two random numbers in [0, 1]; β is a constant and ρ is computed as
ρ = Γ 1 + β sin π β 2 Γ 1 + β 2 β 2 β 1 2 1 β
where Γ x = x 1 ! . Otherwise, the new position is calculated as follow:
X t + 1 = X t + Δ X t + 1
where Δ X t + 1 is the step vector and can be obtained as
Δ X t + 1 = ( s S i + a A i + c C i + f F i + e E i ) + w Δ X t
where s shows the separation weight; a is the alignment weight; c is the cohesion weight; f is a food factor; e is the enemy factor; w is the inertia weight, S i indicates the separation of the i -th individual, A i is the alignment of i -th individual, C i is the cohesion of the i -th individual, F i is the food source of the i -th individual, E i is the position of enemy of the i -th individual and t is the iteration number. The optimization process of DA is further explained in Algorithm 2:
Algorithm 2: Dragonfly Algorithm
      Define population size (M)
      Begin the iteration counter t = 1
      Initialize the population by generating X i for i = 1 , 2 , 3 , M
      Calculate the objective function values of all dragonflies
      Update the food and the predator’s location
      While (the stop criterion is not satisfied) do
            For i = 1 : M
                  Update neighborhood radius (or update w , s , a , c , f , and e)
                  If a dragonfly has at least one neighborhood dragonfly
                        Separation motion
                        Alignment motion
                        Cohesion motion
                        Food attraction motion
                        Predator distraction motion
                  Else
                        Update position vector using the Lévy flight function
                  End if
            End for i
            Sort the population/dragonflies from best to and find the current best
      End while

4.3. Overview of Flower Pollination Algorithm

FPA was developed by Xin-She Yang in 2012 [43] and is considered to be an excellent optimization method. The algorithm is based on copying or mimicking the process of pollination or reproduction of flowering plants. This process can occur through various forms and through different pollinators, manifesting a high degree of adaptation and specialization. There are two types of pollination according to how the pollen is sent or arrives at the plant: biotic pollination and abiotic pollination. Biotic pollination is done by pollinators such as insects (bees, wasps, ants, flies and butterflies) or some animals (mice, bats, and some birds, such as the hummingbird) in flowering plants. Abiotic pollination does not require the transfer of pollen by alive organisms; this is done by water, wind, or gravity. The biotic or cross-pollination is considered to be global pollination process with pollen carrying pollinators performing Lévy flights. Global pollination can be formulated as
x i t + 1 = x i t + γ L ( λ ) ( g x i t )
where x i t denotes pollen i or the solution vector x i at iteration t, g is the current best solution among all current generation solutions, γ is a scalar factor that is used for controlling the step size and L ( λ ) is the Lévy flights based step size that corresponds to the strength of the pollination. Since insects can fly over a long distance with steps of different distance, where the length of each step or jump follows the levy probability distribution function.
L λ Γ λ sin π λ / 2 π 1 s 1 + λ s s 0 > 0
where Γ λ is a standard gamma function, and this distribution valid for large steps s > 0 . The strength of pollination is generally considered to be λ = 1.5 . For the local pollination, may be represented as follow
x i t + 1 = x i t + ϵ ( x j t x k t )
where x j t and x k t are pollen from different flowers of the same plant species. For a local random walk, x j t and x k t come from the same species and ϵ is drawn from a uniform distribution as [ 0 , 1 ] . The FPA is summarized in the Algorithm 3:
Algorithm 3: Flower Pollination Algorithm
      Find the best solution in the initial population
      while ( t < MaxGeneration)
            for i = 1 : n (all n flowers in the population)
                  if rand < p,
                        Draw a step vector L from a Lévy distribution
                        Do global pollination
                  else
                        Draw ϵ from a uniform distribution in [ 0 , 1 ]
                        Do local pollination
                  end if
                  Evaluate new solutions
                  If new solutions are better, update them in the population
            end for
            Find the current best solution
      end

4.4. Overview of Whale Optimization Algorithm

The whale optimization algorithm (WOA) was recently implemented to solve various non-linear optimization problems [26]. The principle of how the WOA works is based on the way in which humpback whales trap their food. This special form of hunting is called the bubble net feeding method. The process consists of several whales coming together and forming a spiral around a school of fish making bubbles below them so that they do not escape and push them towards the surface. Humpback whales can recognize the location of the prey and surround it. This behavior is represented by the following equations:
X ( t + 1 ) = X ( t ) A · D
D = C · X ( t ) X ( t )
where t indicates the current iteration, A and C are coefficient vectors, X is the position vector of the best solution obtained so far, X is the position vector, and · is an element-by-element multiplication. It is worth mentioning here that X should be updated in each iteration if there is a better solution. The vectors A and C are calculated in the following way:
A = 2 a · a
C = 2 r
where a decreases linearly from 2 to 0 over the course of iterations and r is a random vector between  [ 0 , 1 ] .
It is worth mentioning that humpback whales swim around their prey by closing a circle and along a spiral path simultaneously. To model this behavior simultaneously, it is assumed that there is a 50% probability of selecting if the circle mechanism is closed or the position of the whales. The mathematical model that describes the previous process is the following:
X ( t + 1 ) = X ( t ) A · D if p 0.5 D · e b l · cos ( 2 l π ) + X ( t ) if x 0.5
where b is a constant for defining the shape of the logarithmic spiral, l is a random number in 1 , 1 and p is a random number in 0 , 1 . In each iteration, search agents update their positions with respect to a randomly chosen search agent or the best solution obtained so far. The parameter a is reduced from 2 to 0 to provide exploration and exploitation. The basic steps of the WOA are summarized in the pseudocode as shown in Algorithm 4:
Algorithm 4: Whale Optimization Algorithm
Begin
      Calculate the fitness of each search agent
X = the best search agent
      while t M a x I t e r do
            for each search agent do
                  if | A | 1 then
                        Update the position of the current search
                  else if | A | 1 then
                        Select a random search agent X r and
                        Update the position of the current agent
                  end if
            end for
            Update a , A , and C
            Update X if there is a better solution
       t = t + 1
      end while
return X
end Begin

4.5. Overview of Moth-Flame Optimization Algorithm

The moth-flame optimization algorithm (MOA) was developed by Mirjalili [44] taking as inspiration the moth’s way of traveling during the night. The way of moving from the month-flame is known as transverse orientation. The two most important elements in the MOA are moths and light sources (flame). However, in each iteration of the optimization algorithm moths and flames are part of different processes for its update. For this reason, they can fly in a 1-dimensional, 2-dimensional, 3-dimensional or hyperdimensional area by changing the position vectors.
In the MOA algorithm, each moth is assumed to have a position in a D-dimensional solution space. The set of search agents can be expressed as a matrix, just as follows:
M = m 1 , 1 m 1 , 2 m 1 , d m 2 , 1 m 2 , 2 m 2 , d m n , 1 m n , 2 m n , d
where M is the position matrix of moths, m i , j is the value of j -th parameter of the i -th moth, j = 1,2,…, d and i = 1,2,…, n, n is the number of moths and d indicates number of dimensions (problem’s variables) in the solution space. The corresponding fitness function values for the moths are sorted in an array represented by
OM = O M 1 O M 2 O M n
Flame matrix is in the same dimension as moth matrix. Flame also stores the fitness value accordingly as number of flames. Moth and flame are both solutions but moth is the search agent and flame is the best position of moth. Flames are the flag which dropped by moth during the search process and move around that position and update accordingly. Due to this, the moths never lose the best solution. Moths update its position with respect to flame according to the next equation
M i , j = S M i , F j
where M i represents the i -th moth, F j represents the j -th flame and S is the spiral function. The logarithmic spiral function for the movement can be defined as:
S M i , F j = D i e b t . cos 2 π t + F j
where b is a constant to define the shape of the logarithmic spiral, t is a random number between 1 , 1 and D i is the distance between the i -th moth and the j -th flame, which is defined as:
D i = F j M i
To avoid the exploitation degradation of the best promising solutions, the following equation is expressed for the number of flames about this problem
Flame no = round N l N l T
where l = current number of iterations, N = maximum number of flames and T = maximum number of iterations. The steps of the MOA algorithm are given in Algorithm 5:
Algorithm 5: Moth-flame Optimization Algorithm
Begin
      Initialize the positions of moths and evaluate their fitness values
      While (the stop criterion is not satisfied)
            Update flame no.
             OM = Fitness Function ( M )
            if iteration = 1
                   F = sort ( M )
                   OF = sort( OM )
            Else
                   F = sort( M t 1 , M t )
                   OF = sort ( M 1 , M t )             End if
            For i = 1 : N
                  For j = 1 : D
                        Update r and t
                        Calculate D with respect to the corresponding moth
                        Update M ( i , j ) with respect to the corresponding moth
                  End for j
            End for i
      End While
      Post-processing the results and visualization.
End Begin

4.6. Overview of MOD-FPA

In [31], the pollination process is replaced by the generation during each iteration of a set of complete random orientations under conditions similar to FPA [43]. The main objective of MOD-FPA is to improve the performance of FPA in terms of intensification, diversification, and speed of convergence properties.
Two variations were made in the FPA process: (a) The estimation of a set of global orientations for all members of the population towards global or local pollination; (b) The construction of a set of better solution vectors related to all generated global orientations. This set is compared with each iteration with a fixed number of real solution vectors to select the best one among them based on their fitness values. In MOD-FPA two matrices are calculated at each iteration t; one contain N o r sets, where each set is represented by a column with a random number of orientations toward global pollination. The second matrix includes the same number of sets as the first, but has n f r a n d G l o g orientations toward local pollination. Please note that the filling of each set is computed using the switch FPA parameter p.
The computed solution vector x i t + 1 , in t + 1 requires of ( g x i t ) and ( x j t x k t ) according to (14) and (16), respectively. The MOD-FPA has been proposed to use a solution vector x i t + 1 generated N p pairs of pollen lists extracted from different flowers of the same plants species, each iteration either using global or local pollination. This presents significant improvements to the FPA basic version in terms of found solutions quality [31]. The N p ( x j t x k t ) terms can be generated using successively N p pairs of pollen determined at each new iteration t. However, it is important to note that each generated complete orientation is associated with a pair of pollen gametes lists. More specifically, each set number n o is assorted to the pair number n p . This means that N o r = 2 N p . As a result, the global exploitation algorithm characteristic is significantly enhanced. It should be noted that MOD-FPA offers the possibility to have a unique best solution generated during one cycle, either through a local or global pollination. The flow chart of MOD-FPA algorithm is shown in Figure 2. A detailed description of these processes is presented in [31].

5. Controllers Tuning Methodology

In this section, six different reactive, nature-inspired algorithms with the proposed objective function (12) are employed to search optimum values of three PI controllers for the velocity trajectory tracking controller. The block diagram of the control scheme is given in Figure 1 and PMSM parameters are given in Table 1. Six parameters in velocity trajectory tracking controller can be tuned simultaneously to attain an improvement in motor performance. The control scheme, together with optimized PI are implemented using Matlab/Simulink 9.1 on Window 8.1 Professional Intel® CoreTM i7-4712HQ CPU @ 2.3 GHz 16 GB RAM.
The parameter settings for each algorithm used in the experiment are shown in Table 2. The six algorithms use the same objective function (12) for the optimization of each algorithm. The performance of the optimized PI controller is evaluated with objective function (12) that considers rise time, settling time, steady state error, overshoot, RMSE, JISE, JIAE, JITSE, and JITAE. The search for optimal gains is done with nominal PMSM parameters and a nominal load torque of 2 Nm. For finding the optimum values of PI parameters through MOD-FPA, DA, WOA, FPA, MOA, and CSA, 25 independent runs of each algorithm were computed so that a statistical analysis could be performed on data, see Table 3.
The optimal gains value for the velocity trajectory tracking controller are tuned with six different nature-inspired algorithms are tabulated in Table 4. Table 3 lists the statistical comparison between six search algorithms in terms of the best, mean, worst fitness values, and computational (CPU) time. The best results of each study and comparative analysis are highlighted in bold in the corresponding table.
The results presented in Table 3 show that MOD-FPA offered the best fitness values ( 11.6044 ) compared to other nature-inspired algorithms. From these analyses, CSA has the best average computation (8.92225 s); on the other hand, WOA has the worst fitness value than MOD-FPA, MOA, DA, and FPA.

5.1. Robustness Study

5.1.1. Simulation Result for Speed Tracking Task without Load and Nominal Parameters Condition

The velocity reference trajectory planned for the PMSM operation was specified to efficiently track the smooth motion profile defined as [45].
ω ( t ) = 0 for 0 t T i ω ˜ t , T 1 , T 2 ω 1 ¯ for T i t T f ω 3 ¯ for t > T f
where ω 1 ¯ = 500 rpm, T i = 0 s, T f = 0.02 s, ω ˜ t , T i , T f is a Bézier interpolation polynomial, with ω ˜ T i , T i , T i + 1 = 0 and ω ˜ T i + 1 , T i , T i + 1 = 1 , given by
ω ˜ ( t , T i , T i + 1 ) = t T i T i + 1 T i 5 d 1 d 2 t T i T i + 1 T i + d 3 t T i T i + 1 T i 2 d 6 t T i T i + 1 T i 5
with d 1 = 252 , d 2 = 1050 , d 3 = 1800 , d 4 = 1575 , d 5 = 700 , d 6 = 126 .
Figure 3 shows the closed-loop tracking response of the velocity reference trajectory without load condition with set speed of 500 rpm of six algorithms. The performance parameter of the speed tracking task response is shown in Table 5. The performance of the optimized PI controller is evaluated for trajectory tracking control in terms of time domain specifications in speed response and performance indices (MSE, JISE, JIAE, JITSE, JITAE, t s , t r , M p and e s s ). The main parameters, such as the overall error rate (0.46720) and overshoot (0.20369) are in favor of the MOD-FPA controller. The MOD-FPA controller has a better MSE, JISE, JIAE, JITSE, JITAE, and steady state error than other considered controllers, as shown in Table 5.

5.1.2. Simulation Result for Speed Tracking Task with Constant Load and Nominal Parameters Condition

The Figure 4 shows the closed-loop tracking response for full load (2 N.m) condition with set speed of 500 rpm. The performance parameter of the speed response is shown in Table 6. From these results, it is clear that MOD-FPA controller has better time domain specifications in speed response and performance indices. Parameters such as overshoot, MSE, JISE, JITAE and steady state error are favoring only for MOD-FPA controller.

5.1.3. Simulation Result for Varying Load at Constant Speed and Nominal Parameters Condition

To validate the effectiveness of controllers, PMSM is subjected to sudden load changes also, and the response is analyzed. The speed response characteristics for varying load conditions are observed for this case. The speed is set at 500 rpm, load torque is varied from no load to full load at 0.065 s, and 0.051 s, later load torque is varied from full load to zero load. Figure 5 shows the speed response for sudden load changes condition and performance parameters are shown in Table 7. The total performance indices are less for MOD-FPA controller than other considered controllers. Moreover, performance indices such as recovery time, overshoot, and steady state error are also in support of MOD-FPA controller.

5.1.4. Simulation Result for Varying Set Rotor Speed and Load Torque, at Nominal Parameters Condition

To make the comparative analysis of the dynamic performance of the algorithms under different operating conditions, the PMSM is subjected to varying set of conditions with parameters at their nominal values. In this case, the load torque is varied suddenly three times during the simulation: (a) from 2.0 Nm to 0 Nm at 0.04 s, (b) from 0 Nm to 2.0 Nm at 0.11 s and (c) from 2.0 Nm to 0 Nm at 0.145 s The velocity reference trajectory planned for the motor operation was specified to efficiently track the smooth motion profile given by (17). The reference trajectory is taken from 950 rpm at t = 0.065 s. to 1450 rpm in a period of 0.3 s, following a Bézier polynomial trajectory. Finally, the reference trajectory is taken from 1450 rpm at t = 0.17 s to 0 rpm in 0.025 s, following a Bézier trajectory, too. The simulation results of the optimized PI controllers for speed tracking under different operating conditions are shown in Figure 6. The corresponding performance parameters are shown in Table 8. In this case, all considered parameters such as steady state error, overall error rate, MSE, JISE, JIAE, JITAE are favoring to MOD-FPA algorithm. Figure 6 exhibits that the overshoot due to external variations (load torque) is between ±3 rpm for the MOD-FPA algorithm and between ±6.4 rpm for WOA algorithm.

5.1.5. Simulation Result for Random Load Torque, Varying Set Rotor Speed and Nominal Parameters Condition

To investigate the robustness of the PI controllers, the PMSM is subjected to a random load torque, it is simulated by a the Lorenz system, described by the next first-order differential equations system [46].
d x d t = a ( y x ) d y d t = x ( b z ) y d y d t = x y c z
where T l = 0.04z, where a = 5, b = 12 y c = 25; with initial conditions: x(0) = 0.1, y(0) = 0.1 and z(0) = 0.5. Figure 7 depicts the random perturbation load torque applied to the PMSM. The velocity reference trajectory planned for the motor operation is the same as the previous cases. The simulation results of the optimized PI controllers for speed tracking under nominal parameters and at chaotic load torque pattern are shown in Figure 8. The tracking error and the performance indices for PI controller tuned with six heuristic algorithms are shown in Figure 9 and Table 9 respectively. The JISE (0.00283), JIAE (0.05939), and the steady state error (0.00519) of MOD-FPA are lower than MOA, WOA, FPA, DA, and CSA algorithms as shown in Table 9. Table 9 shows clearly that the performance of the MOD-FPA is least affected by the random load torque variations as compared to MOA, WOA, FPA, DA, and CSA algorithms.
It can be inferred that the PI controllers optimized by MFA, WOA, FPA, DF, CSA, and MOD-FPA exhibit sufficient robustness despite different operating conditions.

5.2. Sensitivity Study

The sensitivity analysis is performed to determine, quantify, and analyze the transient response and performance of the PMSM when the machine is subjected under parameter uncertainty and external load disturbances. Some internal parameters (electrical and mechanical) of PMSM are changed in the range of +300% and −50% from the nominal parameters. The external load torque increases its initial value from 0 to 2 Nm, which represents its full load at t = 0.075 s; this value is maintained until t = 0.14 s, where it reaches a value of 0 Nm; finally, it increases its value from 0 to 2 Nm at t = 0.325 s; this value is maintained until t = 0.45 s. To investigate the sensitivity analysis of the implemented PI controllers, the following four cases are considered.

5.2.1. Case 1, Load Torque Is Varied from 0 to 2 Nm and Nominal Parameters

To have a point of comparison between the transient response and performance of the PMSM with nominal parameters and under parameter uncertainty, the speed response characteristics six different reactive, nature-inspired algorithms are investigated. The performance parameter of the speed response with nominal parameters and external load disturbances is shown in Table 10. Table 10 shows that all performance indices (MSE, JISE, JIAE, JITSE, and JITAE) and the overall error rate are lower for the MOD-FPA (17.71227). In this case, the MOD-FPA has the overshoot (3.08115) higher than the other controllers, but steady state error lower, as shown in Table 10. The time domain specification of the transient response is calculated at 0.05 s.

5.2.2. Case 2, Load Torque Is Varied from 0 to 2 Nm, L d = 2.5 L d , R s = 2 R s and Nominal J, B, λ

The simulation results of the optimized PI controllers for closed-loop tracking response of the velocity under variations parameters ( L d = 2.5 L d , R s = 2 R s ) and load torque of 0 to 2.0 Nm are shown in Figure 10. The performance parameter of the speed response is shown in Table 11. MOD-FPA controller has lower performance indices than the other considered controllers, as shown in Table 11. Nevertheless, the percentage increase in MSE for MOD-FPA is 45.487%, and for DF algorithm the increase is 33.27%. The percentage increase in JIAE for MOD-FPA is 28.78%, and for MOA the increase is 20.12%.

5.2.3. Case 3, Load Torque Is Varied from 0 to 2 Nm, L d = 0.8 L d , R s = 3 R s , J = 3 J , B = 3 B and λ = 0.9 λ

The simulation results of the optimized PI controllers for closed-loop tracking response of the velocity under the said parameter variations are shown in Figure 11 and Table 12. The percentage increase in the MSE for MOD-FPA is 159.592%, and for DF algorithm, the growth was 180.279%. The percentage increase in the JIAE for MOD-FPA is 167.304% and for MFA, the increase is 170.688%; in both cases, the time settling is less than 0.02507 s. These comparative results indicate that MOD-FPA exhibits better time response characteristics as compared to others.

5.2.4. Case 4, Load Torque Is Varied from 0 to 2 Nm, L d = 3 L d , R s = 3 R s , J = 3 J , B = 3 B and λ = 0.75 λ

The simulation results of the optimized PI controllers for closed-loop tracking response of the velocity under variations external (Load torque is varied from 0 to 2 Nm) and internal disturbances (3 L d , 3 R s , 3J, 3B and 0.75 λ ) are shown in Figure 12 and Table 13. The percentage increase in the MSE and JITSE for MOD-FPA algorithm is 273.739%, and 262.753% is lower as compared to DF algorithm 281.797% and 274.698%, respectively. Almost all considered parameters, such as MSE, JISE, JIAE, and JITAE, favor the MOD-FPA algorithm. Compared to MFA, FPA, WOA, DF and CSA in terms of maximum overshoot, rise time and settling time, the MOD-FPA algorithm is quick and has better in disturbance rejection as observed in Figure 12 and Table 13.
As a result, the PI controller tuned by MOD-FPA using the proposed objective function outperforms PI controllers tuned with WOA, CSA, MOA, DA, and FPA optimization techniques in angular velocity tracking of the PMSM under parameter uncertainty and external load disturbances.

6. Statistical Analysis

To statistically evaluate the results obtained by the algorithms used (MOD-FPA, WOA, CSA, MOA, DA, and FPA) for the estimation of the parameters of the PI controllers. When comparing pairs, through statistical tests, we seek to establish the performance of two algorithms when applied to a common set of problems [47]. Table 14 presents the critical number of wins with a ∝ = 0.05 level of significance. We established that MOD-FPA as the comparison algorithm and the table shows that this algorithm is significantly better compared to the others.
In this work, we used a non-parametric analysis called Wilcoxon test to compare two sets of ordinal data subject to different conditions [47]. For this statistical analysis, MOD-FPA algorithm is compared separately with other strategies proposed in order to test whether there is a significant difference between the proposed algorithm and the others with which it is compared. For this test, we have two hypotheses.:
  • Null hypothesis ( H 0 ), there is no difference between the results of the compared strategies,
  • Alternative hypothesis ( H 1 ), there is a difference between the results of the differentiated strategies, in other word when the null hypothesis is false.
Table 15 shows the R+, R−, and the p-values computed for all pairwise comparisons concerning MOD-FPA. As the table states, MOD-FPA exhibits a significant improvement over WOA, CSA, MOA and FPA on the other hand; DA algorithm shows a better performance than MOD-FPA on average with a level of significance ∝ = 0.05. Another non-parametric statistical test called Friendman’s test was also performed [48]. In this test, a two-way analysis of the variations by ranges is performed. The statistical test is performed in the second step using the calculated ranges. In this test, a low range implies a better algorithm [34]. Table 16 shows the Friedman Ranks.
The p-value is less than the level of significance 0.05, the null hypothesis is rejected, and it is concluded that at least 1 of the 6 algorithms has a different effect. The mean for DA and MOD-FPA are lowers and indicates that it could be more effective than other algorithms.
Finally, a post-hoc test was performed called Nemenyi test [49]. The results obtained show that there is a significant difference between the tests as shown in Table 17, except for DA and MOD-FPA, whose performance is similar. If we consider the sum of ranges, we conclude that the DA test is slightly better than the other algorithms.
After performing the nonparametric statistical analysis, we find than the DA and MOD-FPA algorithms have a statistically best performance result than other algorithms.

7. Conclusions

In this paper, the implementation of six nature-inspired heuristic techniques was used to tune the six gains of three PI controllers that regulate the speed of a PMSM. To find the optimal six gains, six particle swarm intelligence algorithms were taken into account: MOD-FPA, CSA, WOA, MOA, DA, and FPA. To verify the performance, 25 independent runs of each algorithm were done so that a statistical analysis could be performed on data. The performance of the optimized PI controller was evaluated for trajectory tracking control in terms of integral squared error (JISE), integral absolute error (JIAE), integral time absolute error (JITAE), and integral time squared error (JITSE). The effectiveness and performance of these algorithms were tested under nominal parameters with constant load torque and external load disturbances. The results of these algorithms were statistically analyzed in order to get the best algorithm. The analysis of the statistical results shows that MOD-FPA is better than CSA, WOA, MOA, FPA, DA in terms of the fitness value, JISE, JIAE, JITAE, and JITSE metrics. It should be mentioned that the six algorithms present with excellent performance, so there would be no preference or problem of using each of them indistinctly in the process of tuning the PI controllers.

Author Contributions

Conceptualization, O.A.-M., H.M.-P. and R.T.-O.; performed the experiments O.A.-M. and R.T.-O.; analyzed the data, H.M.-P.; Writing—Original draft preparation, O.A.-M. and H.M.-P.; Writing—Review and Editing, O.A.-M., H.M.-P. and R.T.-O.; Funding acquisition, O.A.-M. and H.M.-P. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Acknowledgments

The authors thanks the support from the project CEMIE-Redes CONACYT-SENER Mexico, B-S-50730. Omar Aguilar-Mejia thanks the financial support Program for Research of UPAEP.

Conflicts of Interest

The authors declare that there is no conflict of interest.

References

  1. Wang, G.; Zhan, H.; Zhang, G.; Gui, X.; Xu, D. Adaptive Compensation Method of Position Estimation Harmonic Error for EMF-Based Observer in Sensorless IPMSM Drives. IEEE Trans. Power Electron. 2014, 29, 3055–3064. [Google Scholar] [CrossRef]
  2. Wu, Y.J.; Li, G.F. Adaptive disturbance compensation finite control set optimal control for PMSM systems based on sliding mode extended state observer. Mech. Syst. Signal Process. 2018, 98, 402–414. [Google Scholar] [CrossRef]
  3. Bolognani, S.; Calligaro, S.; Petrella, R. Adaptive flux-weakening controller for IPMSM drives. In Proceedings of the 2011 IEEE Energy Conversion Congress and Exposition, Phoenix, AZ, USA, 17–22 September 2011; pp. 2437–2444. [Google Scholar]
  4. Kim, J.; Jeong, I.; Lee, K.; Nam, K. Fluctuating Current Control Method for a PMSM Along Constant Torque Contours. IEEE Trans. Power Electron. 2014, 29, 6064–6073. [Google Scholar] [CrossRef]
  5. Mendoza-Mondragón, F.; Hernández-Guzmán, V.M.; Rodríguez-Reséndiz, J. Robust Speed Control of Permanent Magnet Synchronous Motors Using Two-Degrees-of-Freedom Control. IEEE Trans. Ind. Electron. 2018, 65, 6099–6108. [Google Scholar] [CrossRef]
  6. Ye, S. A novel fuzzy flux sliding-mode observer for the sensorless speed and position tracking of PMSMs. Optik 2018, 171, 319–325. [Google Scholar] [CrossRef]
  7. Quang, N.P.; Dittrich, J.A. Vector Control of Three-Phase AC Machines System Development in the Practice, 2nd ed.; Springer International Publishing: Berlin/Heidelberg, Germany, 2015; Chapter 5; pp. 1–364. [Google Scholar]
  8. Krishnan, R. Permanent Magnet Synchronous and Brushless DC Motor Drives, 2nd ed.; CRC Press: Boca Raton, FL, USA, 2010; Chapter 3; pp. 1–611. [Google Scholar]
  9. Ortega, R.; Monshizadeh, N.; Monshizadeh, P.; Bazylev, D.; Pyrkin, A. Permanent magnet synchronous motors are globally asymptotically stabilizable with PI current control. Automatica 2018, 98, 296–301. [Google Scholar] [CrossRef] [Green Version]
  10. Mohanty, B. Performance analysis of moth flame optimization algorithm for AGC system. Int. J. Model. Simul. 2019, 39, 73–87. [Google Scholar] [CrossRef]
  11. Sabir, M.M.; Ali, T. Optimal PID controller design through swarm intelligence algorithms for sun tracking system. Appl. Math. Comput. 2016, 274, 690–699. [Google Scholar] [CrossRef]
  12. Dash, P.; Saikia, L.C.; Sinha, N. Flower Pollination Algorithm Optimized PI-PD Cascade Controller in Automatic Generation Control of a Multi-area Power System. Int. J. Electr. Power Energy Syst. 2016, 82, 19–28. [Google Scholar] [CrossRef]
  13. Guha, D.; Roy, P.K.; Banerjee, S. Optimal tuning of 3 degree-of-freedom PID controller for hybrid distributed power system using dragonfly algorithm. Comput. Electr. Eng. 2018, 72, 137–153. [Google Scholar] [CrossRef]
  14. Bingul, Z.; Karahan, O. A novel performance criterion approach to optimum design of PID controller using cuckoo search algorithm for AVR system. J. Frankl. Inst. 2018, 355, 5534–5559. [Google Scholar] [CrossRef]
  15. Wang, J.J. Parameter optimization and speed control of switched reluctance motor based on evolutionary computation methods. Swarm Evol. Comput. 2018, 39, 86–98. [Google Scholar] [CrossRef]
  16. Hassanzadeh, M.E.; Hasanvand, S.; Nayeripour, M. Improved optimal harmonic reduction method in PWM AC–AC converter using modified Biogeography-Based Optimization Algorithm. Appl. Soft Comput. 2018, 73, 460–470. [Google Scholar] [CrossRef]
  17. Chaurasia, G.S.; Singh, A.K.; Agrawal, S.; Sharma, N. A meta-heuristic firefly algorithm based smart control strategy and analysis of a grid connected hybrid photovoltaic/wind distributed generation system. Sol. Energy 2017, 150, 265–274. [Google Scholar] [CrossRef]
  18. Sahu, R.K.; Panda, S.; Padhan, S. A hybrid firefly algorithm and pattern search technique for automatic generation control of multi area power systems. Int. J. Electr. Power Energy Syst. 2015, 64, 9–23. [Google Scholar] [CrossRef]
  19. Yaghoobi, S.; Mojallali, H. Tuning of a PID controller using improved chaotic Krill Herd algorithm. Optik 2016, 127, 4803–4807. [Google Scholar] [CrossRef]
  20. Dubey, H.M.; Pandit, M.; Panigrahi, B. Hybrid flower pollination algorithm with time-varying fuzzy selection mechanism for wind integrated multi-objective dynamic economic dispatch. Renew. Energy 2015, 83, 188–202. [Google Scholar] [CrossRef]
  21. Mohanty, S.; Subudhi, B.; Ray, P.K. A New MPPT Design Using Grey Wolf Optimization Technique for Photovoltaic System Under Partial Shading Conditions. IEEE Trans. Sustain. Energy 2016, 7, 181–188. [Google Scholar] [CrossRef]
  22. Hossain, M.A.; Ferdous, I. Autonomous robot path planning in dynamic environment using a new optimization technique inspired by bacterial foraging technique. Robot. Auton. Syst. 2015, 64, 137–141. [Google Scholar] [CrossRef]
  23. Zhao, J.; Lin, M.; Xu, D.; Hao, L.; Zhang, W. Vector Control of a Hybrid Axial Field Flux-Switching Permanent Magnet Machine Based on Particle Swarm Optimization. IEEE Trans. Magn. 2015, 51, 1–4. [Google Scholar] [CrossRef]
  24. Costa, B.L.G.; Bacon, V.D.; da Silva, S.A.O.; Angélico, B.A. Tuning of a PI-MR Controller Based on Differential Evolution Metaheuristic Applied to the Current Control Loop of a Shunt-APF. IEEE Trans. Ind. Electron. 2017, 64, 4751–4761. [Google Scholar] [CrossRef]
  25. Zhang, D.L.; Tang, Y.G.; Guan, X.P. Optimum Design of Fractional Order PID Controller for an AVR System Using an Improved Artificial Bee Colony Algorithm. Acta Autom. Sin. 2014, 40, 973–979. [Google Scholar] [CrossRef]
  26. Mirjalili, S.; Lewis, A. The Whale Optimization Algorithm. Adv. Eng. Softw. 2016, 95, 51–67. [Google Scholar] [CrossRef]
  27. Dhyani, A.; Panda, M.K.; Jha, B. Moth-Flame Optimization-Based Fuzzy-PID Controller for Optimal Control of Active Magnetic Bearing System. Iran. J. Sci. Technol. Trans. Electr. Eng. 2018, 42, 451–463. [Google Scholar] [CrossRef]
  28. Hasanien, H.M. Whale optimisation algorithm for automatic generation control of interconnected modern power systems including renewable energy sources. IET Gener. Transm. Distrib. 2018, 12, 607–614. [Google Scholar] [CrossRef]
  29. Yousri, D.; Allam, D.; Eteiba, M. Chaotic whale optimizer variants for parameters estimation of the chaotic behavior in Permanent Magnet Synchronous Motor. Appl. Soft Comput. 2019, 74, 479–503. [Google Scholar] [CrossRef]
  30. Ciabattoni, L.; Ferracuti, F.; Foresi, G.; Alessandro, F.; Monteriu, A.; Proietti, D.P. A robust and self-tuning speed control for permanent magnet synchronous motors via meta-heuristic optimization. Int. J. Adv. Manuf. Technol. 2018, 96, 1283–1292. [Google Scholar] [CrossRef]
  31. Fouad, A.; Gao, X.Z. A novel modified flower pollination algorithm for global optimization. Neural Comput. Appl. 2019, 31, 3875–3908. [Google Scholar] [CrossRef]
  32. Barr, R.S.; Golden, B.L.; Kelly, J.P.; Resende, M.G.C.; Stewart, W.R., Jr. Designing and reporting on computational experiments with heuristic methods. J. Heuristics 1995, 1, 9–32. [Google Scholar] [CrossRef] [Green Version]
  33. Eiben, A.E.; Jelasity, M. A critical note on experimental research methodology in EC. In Proceedings of the 2002 Congress on Evolutionary Computation, Honolulu, HI, USA, 12–17 May 2002; Volume 1, pp. 582–587. [Google Scholar]
  34. Derrac, J.; García, S.; Molina, D.; Herrera, F. A practical tutorial on the use of nonparametric statistical tests as a methodology for comparing evolutionary and swarm intelligence algorithms. Swarm Evol. Comput. 2011, 1, 3–18. [Google Scholar] [CrossRef]
  35. Higgins, J. An Introduction to Modern Nonparametric Statistics; Duxbury Advanced Series; Brooks/Cole: London, UK, 2004. [Google Scholar]
  36. Glumineau, A.; Morales, J.D.L. Sensorless AC electric motor control, robust advanced design techniques and applications. In Advances in Industrial Control, 4th ed.; Springer International Publishing: Berlin/Heidelberg, Germany, 2015; Chapter 1.4; pp. 1–244. [Google Scholar]
  37. Wang, L.; Chai, S.; Yoo, D.; Gan, L.; Ng, K. PID and predictive control of electrical drives and power converters using MATLAB/simulink. In PID and Predictive Control of Electrical Drives and Power Converters Using MATLAB/Simulink; John Wiley and Sons: Hoboken, NJ, USA, 2015; Chapter 3.2; pp. 1–360. [Google Scholar]
  38. Diab, A.A.Z.; Rezk, H. Global MPPT based on flower pollination and differential evolution algorithms to mitigate partial shading in building integrated PV system. Sol. Energy 2017, 157, 171–186. [Google Scholar] [CrossRef]
  39. Kumar, V.; Gaur, P.; Mittal, A. ANN based self tuned PID like adaptive controller design for high performance PMSM position control. Expert Syst. Appl. 2014, 41, 7995–8002. [Google Scholar] [CrossRef]
  40. Premkumar, K.; Manikandan, B. Speed control of Brushless DC motor using bat algorithm optimized Adaptive Neuro-Fuzzy Inference System. Appl. Soft Comput. 2015, 32, 403–419. [Google Scholar] [CrossRef]
  41. Rajabioun, R. Cuckoo Optimization Algorithm. Appl. Soft Comput. 2011, 11, 5508–5518. [Google Scholar] [CrossRef]
  42. Mirjalili, S. Dragonfly algorithm: A new meta-heuristic optimization technique for solving single-objective, discrete, and multi-objective problems. Neural Comput. Appl. 2016, 27, 1053–1073. [Google Scholar] [CrossRef]
  43. Xin-She, Y. Flower Pollination Algorithm for Global Optimization. In International Conference on Unconventional Computing and Natural Computation; Springer: Berlin/Heidelberg, Germany, 2012; Volume 7445, pp. 240–249. [Google Scholar] [CrossRef] [Green Version]
  44. Mirjalili, S. Moth-flame optimization algorithm: A novel nature-inspired heuristic paradigm. Knowl. Based Syst. 2015, 89, 228–249. [Google Scholar] [CrossRef]
  45. Beltran-Carbajal, F.; Tapia-Olvera, R.; Lopez-Garcia, I.; Guillen, D. Adaptive dynamical tracking control under uncertainty of shunt DC motors. Electr. Power Syst. Res. 2018, 164, 70–78. [Google Scholar] [CrossRef]
  46. Beltran-Carbajal, F.; Valderrabano-Gonzalez, A.; Rosas-Caro, J.; Favela-Contreras, A. An asymptotic differentiation approach of signals in velocity tracking control of DC motors. Electr. Power Syst. Res. 2015, 122, 218–223. [Google Scholar] [CrossRef]
  47. Sheskin, D.J. Handbook of parametric and nonparametric statistical procedures. In Handbook of Parametric and Nonparametric Statistical Procedures, 5th ed.; CRC Press: Boca Raton, FL, USA, 2011; Chapter 6; pp. 1–1926. [Google Scholar]
  48. Friedman, M. A Comparison of Alternative Tests of Significance for the Problem of m Rankings. Ann. Math. Stat. 1940, 11, 86–92. [Google Scholar] [CrossRef]
  49. Zar, J.H. Biostatistical Analysis, 5th ed.; Prentice Hall: Upper Saddle River, NJ, USA, 2010; Chapter 5; pp. 1–960. [Google Scholar]
Figure 1. Schematic diagram of the permanent magnet synchronous motor (PMSM) control system.
Figure 1. Schematic diagram of the permanent magnet synchronous motor (PMSM) control system.
Applsci 10 06592 g001
Figure 2. Flowchart of MOD-FPA.
Figure 2. Flowchart of MOD-FPA.
Applsci 10 06592 g002
Figure 3. Speed tracking task without load and nominal parameters condition.
Figure 3. Speed tracking task without load and nominal parameters condition.
Applsci 10 06592 g003
Figure 4. Simulation result for speed tracking task with constant load and nominal parameters condition.
Figure 4. Simulation result for speed tracking task with constant load and nominal parameters condition.
Applsci 10 06592 g004
Figure 5. Simulation result for varying load and nominal parameters conditionn.
Figure 5. Simulation result for varying load and nominal parameters conditionn.
Applsci 10 06592 g005
Figure 6. Speed Tracking Task for Varying Set Rotor Speed and Load Torque, at Nominal Parameters Condition.
Figure 6. Speed Tracking Task for Varying Set Rotor Speed and Load Torque, at Nominal Parameters Condition.
Applsci 10 06592 g006
Figure 7. Random perturbation load torque applied to the PMSM.
Figure 7. Random perturbation load torque applied to the PMSM.
Applsci 10 06592 g007
Figure 8. Simulation result for random load torque, varying set rotor speed and nominal parameters condition.
Figure 8. Simulation result for random load torque, varying set rotor speed and nominal parameters condition.
Applsci 10 06592 g008
Figure 9. Tracking error for random load torque, varying set rotor speed and nominal parameters condition.
Figure 9. Tracking error for random load torque, varying set rotor speed and nominal parameters condition.
Applsci 10 06592 g009
Figure 10. Simulation result for speed tracking task, Case 2.
Figure 10. Simulation result for speed tracking task, Case 2.
Applsci 10 06592 g010
Figure 11. Simulation result for speed tracking task, Case 3.
Figure 11. Simulation result for speed tracking task, Case 3.
Applsci 10 06592 g011
Figure 12. Simulation result for speed tracking task, Case 4.
Figure 12. Simulation result for speed tracking task, Case 4.
Applsci 10 06592 g012
Table 1. PMSM nominal parameters.
Table 1. PMSM nominal parameters.
DescriptionSymbolValue
Inertia momentJ 3.5 × 10 5 kg/m2
Nominal voltagev120 V
Rated current 4 A
Stator resistance r s 2.6 Ω
Stator inductance d L d 6.73 mH
Stator inductance q L q 6.73 mH
Stator dispersion inductance L l s 0.1 L q
Magnetic flux λ m 0.319 Wb
Viscous friction coefficientB1.0 × 10 4 Nms
Direct current voltage bus V C D 250 V
Pole pairs n p 2
Table 2. Parameter settings for each algorithm.
Table 2. Parameter settings for each algorithm.
Algorithm
CSAWOAMOADAFPAMOD-FPA
ParameterSetParameterSetParameterSetParameterSetParameterSetParameterSet
Max num iterations150Max num iterations150Max num iterations150Max num iterations150Max num iterations150Max num iterations150
P a 0.25Pop. size50Pop. size50Pop. size50Pop. size50Pop. size50
α 2.5p0.5b1 β 1.5P0.8P0.8
λ 1.5b0.95 β 1.5 β 1.5
Nests50 a linearly decreases2 to 0 λ 1.5 N o r 2 N p = 150
Table 3. Results for each algorithm.
Table 3. Results for each algorithm.
AlgorithmWOACSAMOADAFPAMOD-FPA
FminTime (s)FminTime (s)FminTime (s)FminTime (s)FminTime (s)FminTime (s)
122.69949.762912.668611.121616.1739100.892612.178260.327819.442861.903213.128650.8423
224.630010.012013.334720.025016.038117.806112.6654173.418417.557368.520612.180253.8376
324.10759.884013.890212.971515.183419.804912.2521198.947314.318568.663112.978163.3364
431.966315.949414.211225.976615.0710171.189412.456165.902318.343767.970913.979856.6246
526.039710.417912.396511.506715.670442.332312.319361.343617.124068.287512.201976.9480
624.262810.236613.434113.235815.0166456.244212.170362.129217.244569.367815.476466.5200
725.045115.352613.295224.395715.0218401.009712.2335124.878417.006168.261211.713082.0027
825.176015.966113.347633.888915.133191.324912.3435159.406615.341967.697712.006273.9802
923.442712.360712.740037.092815.098757.792412.2090140.461715.916168.921114.044964.1778
1023.071514.245012.524023.490115.901926.484712.1547155.351719.111469.584512.270957.2700
1125.789216.039212.212524.714015.886453.181112.2761166.687217.668669.763611.604482.5346
1224.514810.225912.200513.765116.099624.537912.417162.393018.611671.200211.905660.7460
1320.004213.027613.236011.068715.892522.672412.1286162.246218.751569.769313.608080.2960
1423.771810.091712.764921.717015.206442.823112.1749144.814615.714371.534812.938288.3238
1523.833011.341312.235226.739315.121553.446712.2862127.025117.739570.559611.624868.3444
1623.491518.356413.529516.306915.948721.471212.4545184.587816.899369.466115.424085.9715
1719.999628.759914.80698.922316.176123.927412.1259172.142116.268669.740911.993385.0920
1824.451715.367914.188912.405615.175832.280712.1928183.790616.690770.417213.108067.1999
1923.27519.453713.290016.432215.592026.172812.1271171.789117.348269.499512.745874.1920
2029.230417.107012.619811.857915.0467288.899212.3381154.191415.953870.772414.666957.7763
2122.84989.991313.076126.266015.168484.860012.2090144.647117.402868.833813.415577.1744
2222.792716.171712.283417.583816.284423.187012.2886168.514917.600194.724211.755761.6966
2325.776215.719214.662618.858515.484736.436312.5411195.419815.935694.456212.609353.6038
2422.106716.031012.552931.579815.0241362.924512.2561175.557616.250693.040611.764250.0331
2524.422817.774513.371925.274515.0251280.760112.4785173.867815.997597.400412.763083.3687
Minimum19.99969.453712.20058.922315.016617.806112.125960.327814.318561.903211.604450.0331
Maximum31.966328.759914.806937.092816.2844456.244212.6654198.947319.442897.400415.476488.3238
Average24.270013.985813.154919.887915.4976110.498512.2911143.593717.049673.214312.876368.8757
Standard deviation2.45954.29570.75557.82280.4575134.24990.141845.22551.24269.84541.134912.1583
Variance6.049018.45260.570961.19550.209318,023.03410.02012045.34841.544296.93131.2881147.8247
The best results of each study and comparative analysis are highlighted in bold in the corresponding table.
Table 4. Optimal value for PI controller gains using CSA, WOA, MOA, DA, MOD-FPA and FPA.
Table 4. Optimal value for PI controller gains using CSA, WOA, MOA, DA, MOD-FPA and FPA.
Algorithm k p , ω r k i , ω r k p , i q k i , i q k p , i d k i , i d F min
CSA1.02628.83696.924823.47017.12672.259112.2005
WOA0.110446.425962.32450.175647.85630.175619.9996
MOA0.272797.300011.162325.15221.318718.649515.0166
DA0.041117.144028.11497.186912.99355.073912.1259
FPA1.597088.401723.5742185.987874.7438194.989114.3185
MOD-FPA0.400470.857139.7645207.342851.864180.33811.6044
The best results of each study and comparative analysis are highlighted in bold in the corresponding table.
Table 5. Performance analysis for speed tracking task without load and nominal parameters condition.
Table 5. Performance analysis for speed tracking task without load and nominal parameters condition.
AlgorithmMSEJISEJIAEJITSEJITAERise TimeOvershootSettling Time e ss Overall Error Rate
MOA0.590690.118140.041210.000890.000420.005610.391980.011110.000051.1601
FPA0.388090.077620.034090.000580.000370.005640.260660.011170.000010.77823
WOA1.188690.237750.059670.001780.000650.005610.465710.011130.000031.97103
DF0.550370.110080.04040.000830.000430.005620.336860.011150.000041.05577
CSA0.482870.096580.037570.000730.000390.005620.334920.011140.000030.96986
MOD-FPA0.185720.037150.023290.000280.000240.005640.203690.011170.000010.4672
The best results of each study and comparative analysis are highlighted in bold in the corresponding table.
Table 6. Performance analysis for speed tracking task with constant load and nominal parameters condition.
Table 6. Performance analysis for speed tracking task with constant load and nominal parameters condition.
AlgorithmMSEJISEJIAEJITSEJITAERise TimeOvershootSettling Time e ss Overall Error Rate
MFA1.237290.247470.058940.001340.000440.005580.322950.011140.00022.66301
FPA0.89140.178290.048050.000960.000350.005610.158970.011220.000051.91997
WOA2.726070.545240.084110.002970.000620.005570.284170.01120.000155.29016
DF1.223340.244680.057360.001330.000430.005640.235350.011190.000192.56649
CSA1.04130.208270.053590.001130.00040.005590.257510.011170.000152.2548
MOD-FPA0.400390.080080.033230.000430.000250.005620.157390.011190.000081.0014
The best results of each study and comparative analysis are highlighted in bold in the corresponding table.
Table 7. Performance analysis for speed tracking task with constant load and nominal parameters condition.
Table 7. Performance analysis for speed tracking task with constant load and nominal parameters condition.
AlgorithmMSEJISEJIAEJITSEJITAERise TimeOvershootSettling Time e ss Overall Error Rate
MFA1.188040.237620.090670.013450.005740.005610.946100.011110.000093.40021
FPA0.839170.167840.084460.010150.005890.005640.731950.011170.000712.55113
WOA2.563350.51270.14770.030950.010290.005611.239090.011130.001235.70655
DF1.156180.231250.095770.013640.006450.005620.853290.011150.000353.1855
CSA0.991150.198240.085650.011440.005590.005620.826870.011140.000132.92222
MOD-FPA0.381750.076350.053000.004410.003450.005640.540460.011170.000081.58563
The best results of each study and comparative analysis are highlighted in bold in the corresponding table.
Table 8. Performance analysis for varying set rotor speed and load torque, at nominal parameters condition.
Table 8. Performance analysis for varying set rotor speed and load torque, at nominal parameters condition.
AlgorithmMSEJISEJIAEJITSEJITAE e ss Overall Error Rate
MFA4.278360.855710.267840.097930.02720.665636.19267
FPA3.225260.645090.242720.071690.02440.793005.00217
WOA9.859851.972070.424510.219350.042691.3924913.91096
DF4.360260.87210.278660.097980.028110.854996.49211
CSA3.655640.731170.251460.082940.025450.703125.44978
MOD-FPA1.404890.280990.155690.031860.015760.431262.32046
The best results of each study and comparative analysis are highlighted in bold in the corresponding table.
Table 9. Performance analysis for speed tracking task for random load torque, varying set rotor speed and nominal parameters condition.
Table 9. Performance analysis for speed tracking task for random load torque, varying set rotor speed and nominal parameters condition.
AlgorithmMSEJISEJIAEJITSEJITAE e ss Overall Error Rate
MFA5.517431.103540.325580.098230.032180.317697.39465
WOA3.910250.782090.26850.069730.02650.112095.16916
FPA11.972042.394530.469880.213590.046390.2083115.30475
DF5.406971.081450.318170.096490.031420.001536.93602
CSA4.625390.925120.296270.082480.029270.141166.09969
MOD-FPA1.776920.35540.183680.031670.018140.095782.46159
The best results of each study and comparative analysis are highlighted in bold in the corresponding table.
Table 10. Performance analysis, Case 1.
Table 10. Performance analysis, Case 1.
AlgorithmMSEJISEJIAEJITSEJITAERise TimeOvershootSettling Time e ss Overall Error Rate
MFA12.506365.627990.382341.252150.082070.000131.723340.02020.0005423.25371
FPA9.936594.471560.307421.000990.065840.000093.016380.020260.0029121.73004
WOA16.663057.498540.524421.658030.111850.000172.193560.020420.0051130.78568
DF10.909074.909190.35571.096170.076150.000120.962340.02020.0019219.25247
CSA10.720614.824380.3389510.777870.072710.000121.14340.020190.0009128.99652
MOD-FPA7.327253.297340.219390.746880.047310.000073.081150.020190.0005317.71227
The best results of each study and comparative analysis are highlighted in bold in the corresponding table.
Table 11. Performance analysis, Case 2.
Table 11. Performance analysis, Case 2.
AlgorithmMSEJISEJIAEJITSEJITAERise TimeOvershootSettling Time e ss Overall Error Rate
MFA17.277167.77490.45931.909730.09880.0001313.861770.020480.0006954.8034
FPA14.425286.491520.392421.599710.08430.000117.998740.02050.0029658.41653
WOA23.5128410.581010.642592.58730.137530.0001715.581440.020630.0052668.12983
DF14.539396.542870.409311.611970.087790.0001210.319310.02040.0020843.50611
CSA14.516386.532520.397661.609570.085460.0001111.851840.02040.0010346.47098
MOD-FPA10.660164.797180.282541.190760.061020.0000818.232770.020370.0005952.87439
The best results of each study and comparative analysis are highlighted in bold in the corresponding table.
Table 12. Performance analysis, Case 3.
Table 12. Performance analysis, Case 3.
AlgorithmMSEJISEJIAEJITSEJITAERise TimeOvershootSettling Time e ss Overall Error Rate
MFA28.4991612.824911.034954.222360.225670.000523.731840.025060.0015316.95471
FPA21.588349.714970.798723.206080.174190.000392.055050.021820.0092911.35382
WOA37.4343816.845841.36285.535420.296950.000683.327960.02610.0155819.17052
DF25.4798611.466190.954563.778370.208130.000492.73430.023890.0058414.01472
CSA24.7479211.136810.917953.670890.200180.000462.982960.024060.0026814.24489
MOD-FPA15.850827.133030.586442.363690.128060.000291.999220.020470.001659.30956
The best results of each study and comparative analysis are highlighted in bold in the corresponding table.
Table 13. Performance analysis, Case 4.
Table 13. Performance analysis, Case 4.
AlgorithmMSEJISE JIAEJITSEJITAERise TimeOvershootSettling Time e ss Overall Error Rate
MFA34.0198315.309261.268484.693630.276480.000524.727470.026000.0017464.88439
FPA26.5735211.958350.986493.671060.215010.000392.821580.023160.0108548.97353
WOA45.1751720.329281.676796.224240.365270.000684.292910.027400.0178282.23961
DF29.7503613.387961.157164.107350.25220.00053.364520.025070.0067455.29176
CSA29.1746213.128871.116984.028460.243480.000473.706050.025120.0030754.99965
MOD-FPA19.560578.802450.725012.709320.158180.000282.786210.022280.0019237.45108
The best results of each study and comparative analysis are highlighted in bold in the corresponding table.
Table 14. Sing test for pairwise comparisons with a level of significance ∝ = 0.05.
Table 14. Sing test for pairwise comparisons with a level of significance ∝ = 0.05.
MOD-FPAWOACSAMOADAFPA
Wins (+)2517241025
Loses (−)081150
Table 15. Wilcoxon signed rank test results with a level of significance ∝ = 0.05.
Table 15. Wilcoxon signed rank test results with a level of significance ∝ = 0.05.
ComparisonR+R−p-ValueConclusions
MOD-FPA VS WOA0325 1.2290 × 10 5 Reject the null hypothesis H 0
MOD-FPA VS CSA106219 1.2900 × 10 1 Retain de null hypothesis H 0
MOD-FPA VS MOA2323 1.5705 × 10 5 Reject the null hypothesis H 0
MOD-FPA VS DA24085 3.7000 × 10 2 Reject the null hypothesis H 0
MOD-FPA VS FPA0325 1.2300 × 10 5 Reject the null hypothesis H 0
Table 16. Friedman Ranks.
Table 16. Friedman Ranks.
P = 0.000
TreatmentMedianSum of Ranks
WOA24.083150
CSA13.22663
DA12.3739
FPA17.073124
MOA15.531100
MOD-FPA12.73449
The best results of each study and comparative analysis are highlighted in bold in the corresponding table.
Table 17. Multiple comparisons through Nemenyi Test.
Table 17. Multiple comparisons through Nemenyi Test.
ComparisonDifference in
Rank Sum (DRS)
Standard
Error (SE)
DRS/SECritical Q Value
at 0.05 Level
Conclusions
WOA VS CSA2171217.226849.994160943.658Reject the null hypothesis H 0
WOA VS MOA1206217.226845.551800143.658Reject the null hypothesis H 0
WOA VS DA2810217.2268412.93578643.658Reject the null hypothesis H 0
WOA VS FPA702217.226843.231644863.658Retain de null hypothesis H 0
WOA VS MOD-FPA2486217.2268411.4442583.658Reject the null hypothesis H 0
CSA VS MOD-FPA−965217.22684−4.44236083.658Retain de null hypothesis H 0
CSA VS DA639217.226842.941625453.658Retain de null hypothesis H 0
CSA VS FPA−1469217.22684−6.76251613.658Retain de null hypothesis H 0
CSA VS MOD-FPA315217.226841.450097053.658Retain de null hypothesis H 0
MOA VS DA1604217.226847.383986253.658Reject the null hypothesis H 0
MOA VS FPA−504217.22684−2.32015533.658Retain de null hypothesis H 0
MOA VS MOD-FPA1280217.226845.892457863.658Reject the null hypothesis H 0
DA VS FPA−2108217.22684−9.70414153.658Retain de null hypothesis H 0
DA VS MOD-FPA−324217.22684−1.49152843.658Retain de null hypothesis H 0
FPA VS MOD-FPA1784217.226848.212613143.658Reject the null hypothesis H 0

Share and Cite

MDPI and ACS Style

Aguilar-Mejía, O.; Minor-Popocatl, H.; Tapia-Olvera, R. Comparison and Ranking of Metaheuristic Techniques for Optimization of PI Controllers in a Machine Drive System. Appl. Sci. 2020, 10, 6592. https://doi.org/10.3390/app10186592

AMA Style

Aguilar-Mejía O, Minor-Popocatl H, Tapia-Olvera R. Comparison and Ranking of Metaheuristic Techniques for Optimization of PI Controllers in a Machine Drive System. Applied Sciences. 2020; 10(18):6592. https://doi.org/10.3390/app10186592

Chicago/Turabian Style

Aguilar-Mejía, Omar, Hertwin Minor-Popocatl, and Ruben Tapia-Olvera. 2020. "Comparison and Ranking of Metaheuristic Techniques for Optimization of PI Controllers in a Machine Drive System" Applied Sciences 10, no. 18: 6592. https://doi.org/10.3390/app10186592

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop