Next Article in Journal
Static Balancing of Wheeled-legged Hexapod Robots
Previous Article in Journal
Augmented Reality for Robotics: A Review
Open AccessArticle

Evaluation of Hunting-Based Optimizers for a Quadrotor Sliding Mode Flight Controller

1
Agricultural School of Jundiaí, Federal University of Rio Grande do Norte, UFRN, Macaíba, RN 59280-000, Brazil
2
INESC TEC—INESC Technology and Science, Campus da FEUP, 4200-465 Porto, Portugal
3
University of Trás-os-Montes and Alto Douro, School of Sciences and Technology, 5000-801 Vila Real, Portugal
*
Author to whom correspondence should be addressed.
Robotics 2020, 9(2), 22; https://doi.org/10.3390/robotics9020022
Received: 30 January 2020 / Revised: 29 March 2020 / Accepted: 2 April 2020 / Published: 7 April 2020

Abstract

The design of Multi-Input Multi-Output nonlinear control systems for a quadrotor can be a difficult task. Nature inspired optimization techniques can greatly improve the design of non-linear control systems. Two recently proposed hunting-based swarm intelligence inspired techniques are the Grey Wolf Optimizer (GWO) and the Ant Lion Optimizer (ALO). This paper proposes the use of both GWO and ALO techniques to design a Sliding Mode Control (SMC) flight system for tracking improvement of altitude and attitude in a quadrotor dynamic model. SMC is a nonlinear technique which requires that its strictly coupled parameters related to continuous and discontinuous components be correctly adjusted for proper operation. This requires minimizing the tracking error while keeping the chattering effect and control signal magnitude within suitable limits. The performance achieved with both GWO and ALO, considering realistic disturbed flight scenarios are presented and compared to the classical Particle Swarm Optimization (PSO) algorithm. Simulated results are presented showing that GWO and ALO outperformed PSO in terms of precise tracking, for ideal and disturbed conditions. It is shown that the higher stochastic nature of these hunting-based algorithms provided more confidence in local optima avoidance, suggesting feasibility of getting a more precise tracking for practical use.
Keywords: ant lion optimizer; grey wolf optimizer; sliding mode control; particle swarm optimization; quadrotor; unmanned aerial vehicle ant lion optimizer; grey wolf optimizer; sliding mode control; particle swarm optimization; quadrotor; unmanned aerial vehicle

1. Introduction

QuadRotor (QR) is a small rotorcraft which can be remotely controlled or fly autonomously through GPS-based embedded flight plans. Besides educational and leisure applications, its professional use has been increasing for intervention in hostile environments, remote sensing, precision agriculture, and urban planning [1]. This system is nonlinear, strongly coupled, Multiple-Input Multiple-Output (MIMO), and underactuated. Besides, since its operation is subject to external disturbances, robust control strategies have been investigated. Although some approaches are based on linear approximations and Proportional-Integral-Derivative (PID) controllers [2,3], most controllers are based on nonlinear algorithms and tools, such as feedback linearization, backstepping, and Sliding Mode Control (SMC). SMC [4] is a robust control technique, based upon a switching control law and the definition of a  sliding surface, function of the system state variables. In [5], backstepping and SMC have shown to be equivalent from a robustness point of view, with SMC presenting a smoother and faster response. This has motivated research on both continuous and discrete-time SMC for quadrotor control [6,7,8]. However, these works do not present optimization routines or tuning rules for the controller parameters. In [9], a Hurwitz-based procedure was focused on the exploration of the nonlinear coefficients of the sliding manifolds, without optimization. Usually, these QR controllers present coupled design parameters with inherent trade-off and, therefore, need to be optimally tuned to achieve simultaneous performance requirements, which is a non-trivial trial-and-error task. Although some statistic-based [10] and bio-inspired [3,11,12], optimization algorithms have been used for PID and backstepping based flight control systems, a solution for the SMC-based approach is still an open and necessary research issue [13]. This has motivated the novel work reported here on the proposal and evaluation of hunting-based search algorithms as optimization tools, compared to the known and classical bio-inspired Particle Swarm Optimization (PSO) [14]. The choice of such techniques relies on their dominant stochastically behavior, since more random operators and population subgroups (or population split) are included and, thus, one has the improved ability of escaping from local optima through the search process. Although other similar strategies are available, previous experience [15], recent results [16], application diversity, and continuous improvement on both Ant Lion (ALO) [17,18] and Grey Wolf Optimizers (GWO) [19,20] encourage and motivate their application. Regarding mobile robotics, besides an improved version for ALO [21], GWO has also been recommended for mission (and trajectory) planning [22], even with moving obstacles [23]. ALO is known for its interesting performance indicators when tested with benchmark function sets [17], where local optima avoidance, better convergence speed, and higher accuracy were achieved, when compared to PSO [14], Genetic Algorithms, and Cuckoo Search. ALO mimics the hunting strategy of the ant lion and defines two population groups: ants and ant lions (predator—prey). Likewise, GWO mimics how a population of wolves chase a prey, inspired in its social hierarchy. Both have been evaluated for different applications, such as power systems control [24,25,26,27], process planning [28], and data gathering [29], as well as their multi-objective approaches [30,31]. This fact corroborates their application potential. However, although these hunting-based approaches are still evolving with several variations available, applications to controller tuning problem are minor [32], mainly available for PID controller design [33]. Moreover, no comparison between GWO and ALO is available for SMC-based flight system and thus it defines another contribution of this research. Therefore, this work evaluated the use of ALO and GWO to adjust the SMC parameters of a quadrotor altitude and attitude controller, and the simulation results were compared with the PSO considering the main objective of setpoint tracking. The main highlights and novelty may be summarized as follows:
  • First evaluation of SMC parameter optimization for quadrotor flight system with hunting-based algorithms ALO and GWO
  • Parameters obtained by ALO and GWO provided more confidence and repeatability during optimization process
  • Parameters obtained by ALO and GWO provided lower tracking error
  • Novel extension of such optimization approaches to SMC controller tuning, usually applied to PID control

2. Quadrotor Dynamics

A quadrotor consists of a rigid body frame equipped with four rotors, as  shown in Figure 1, where the following assumptions are made: (1) the center of gravity is fixed at the origin of the quadrotor B and it coincides with the inertial axis E; (2) its structure is symmetrical; and (3) thrust and drag constants are proportional to the square value of the motor’s speed.
The full quadrotor Newton–Euler dynamic model in  Equation (4) represents the  x , y , z motions as a consequence of a roll ( ϕ ), pitch ( θ ) or yaw ( ψ ) rotation. A detailed quadrotor physical model derivation may be seen in [34]. Lift forces F 1 , F 2 , F 3 , F 4 are basically the thrust generated by each propeller and they are related to the input signals U i , i = 1 4 . This vehicle can be controlled and stabilized by altering rotors’ speed ω i , i = 1 4 . By varying these speeds, one can change the lift forces and create motion. The collective input U 1 is the sum of each DC motor thrust. By defining the state variables as:
X = x , x ˙ , y , y ˙ , z , z ˙ , ϕ , ϕ ˙ , θ , θ ˙ , ψ , ψ ˙ T R 12
and considering that x = x 1 , x ˙ = x 2 , y = x 3 , y ˙ = x 4 , z = x 5 , z ˙ = x 6 , ϕ = x 7 , ϕ ˙ = x 8 , θ = x 9 , θ ˙ = x 10 , ψ = x 11 , ψ ˙ = x 12 , Equation (1) may be written as:
X = x 1 , x 2 , x 3 , x 4 , x 5 , x 6 , x 7 , x 8 , x 9 , x 10 , x 11 , x 12 T ,
with the control input vector U:
U = U 1 , U 2 , U 3 , U 4 T
the full state-space system may be split into translational and rotational subsystems (see Table 1),with the model parameters of  a micro Vertical Take-Off (VTOL) flying robot proposed in [34], and detailed in Table 2.
Therefore, using the notation presented in Table 1, the quadrotor model described in [34] may be written as:
X ˙ = f X , U = f Δ f Θ = x 2 cos x 7 sin x 9 cos x 11 + sin x 7 sin x 11 U 1 m x 4 cos x 7 sin x 9 sin x 11 sin x 7 cos x 11 U 1 m x 6 g + cos x 7 cos x 9 U 1 m x 8 x 12 x 10 I y I z I x J r I x x 10 Ω r + L I x U 2 x 10 x 12 x 8 I z I x I y + J r I y x 8 Ω r + L I y U 3 x 12 x 10 x 8 I x I y I z + U 4 I z
where Ω r is considered a disturbance associated to the difference between clockwise and counterclockwise propellers’ rotation in Figure 1, defined as Ω r = ω 2 ω 1 + ω 4 ω 3 . The control inputs U i and rotors’ speeds ω i are related by the following equation:
U 1 U 2 U 3 U 4 U = b 0 0 0 0 b 0 0 0 0 b 0 0 0 0 d S 1 1 1 1 0 1 0 1 1 0 1 0 1 1 1 1 D ω 1 2 ω 2 2 ω 3 2 ω 4 2 Ω , Ω = U S 1 D 1

3. Altitude and Attitude Control—Sliding Mode Flight System

This design closely follows Herrera et al. [13], and it is based on the equivalent control method [35]. A Lyapunov-based stability analysis may be found in [36]. First, a Proportional-Derivative sliding surface S = e ˙ + λ e is defined for each process variable ( z , ϕ , θ , ψ ) and respective tracking error ( e z , e ϕ , e θ , e ψ ), to be reached by the trajectories in finite time. In this condition, named sliding mode, S ˙ = 0 and a non-switching control signal U e q , referred as equivalent control, is designed. The second step consists on designing the control law U s m , which drives the process variable to the sliding surface, during the reaching mode, and it must obey a reaching law, considered here as S S ˙ < η | S | , η > 0 . Therefore, considering Equation (4) one has for the altitude z,
e z = z R z = z R x 5
S z = e z ˙ + λ 1 e z = z R ˙ x 6 + λ 1 z R x 5
S ˙ z = 0 , S z ˙ = e z ¨ + λ 1 e z ˙ = 0 , z R ¨ x 6 ˙ + λ 1 z R ˙ x 6 = 0
U 1 e q = g ˘ 1 x 6 z ˙ R + z ¨ R m cos x 7 cos x 9
U 1 s m = k 1 S z S z + δ 1 , U 1 = U 1 e q + U 1 s m
and, following a similar procedure for roll, pitch, and yaw angles, one has the expressions presented in Table 3.
From Equations (9) and  (10) and Table 3 expressions for the control components U i e q , U i s m ( i = 2 , 3 , 4 ) , it can be seen that twelve parameters must be adjusted, namely:
P = λ 1 , k 1 , δ 1 , λ 2 , k 2 , δ 2 , λ 3 , k 3 , δ 3 , λ 4 , k 4 , δ 4
detailed in Table 4.
When the controller parameters set in Equation (11) is badly tuned, non-negligible tracking error may occur. Besides, high frequency oscillations (chattering) and control signal saturation must be kept within feasible limits. This situation is undesirable in practice [8] as it increases the risk of actuators and motors damage, as shown in Figure 2, for thrusts U 2 and  U 3 . Therefore, an optimal (or suboptimal) set of parameters is desired to minimize some suitable fitness function. The next section presents ALO and GWO algorithms as selected optimization metaheuristics to be evaluated within the specific problem stated in this work.

4. Hunting-Based Optimizers

4.1. Ant Lion Optimizer

ALO is a nature-inspired stochastic optimization algorithm which mimics the hunting mechanism of  ant lions (predator), that is, how they build pits (traps) where ants (prey) slide in and are caught. It has presented competitive results when compared to PSO [17], in terms of improved exploration, local optima avoidance, exploitation, and convergence, to solve constrained problems with diverse search spaces. The exploration (global search) is guaranteed by the random selection of ant lions to some extent and the random walks of ants around ant lions, so the probability of avoiding local optima is high [21]. The exploitation (local search) is ensured by shrinking size of ant lions traps and the promising search is saved by the elite ant lion, so the convergence accuracy is good. The main interpretation is that ant lions can build pits proportional to their fitness (the higher the fitness, the higher the pit). Its stochastic behavior also results in obtaining different solutions in each independent run, and therefore the final parameters and convergence curve represent the mean value of the population. The ALO steps are detailed next.

4.1.1. Random Walk of Ants

The basic idea of ALO is how to model ants’ random walks around the ant lions and keep them inside the search space, which is achieved by a min-max normalization, described by:
X t = 0 , c s ( 2 r ( t 1 ) 1 ) , c s ( 2 r ( t 2 ) 1 ) , , c s ( 2 r ( t T ) 1 )
X i t = X i t a i × d i t c i t b i a i + c i t
where c s is the cumulative sum; t is the iteration of the random walk; T is the total number of iterations; r ( t ) is a function defined as 1 if rnd > 0.5 or 0 if rnd 0.5 ; rnd is generated with uniform distribution in the interval [ 0 , 1 ] ; a i and  b i are the  min and  max of random walk of the variable i; and  d i t and  c i t are the upper bound and lower bounds of variable i at iteration t.

4.1.2. Ant Lions Building Traps

To build a trap and associate every ant with an ant lion, a roulette wheel mechanism selects an ant lion based on its fitness and the trapping in its pit is modeled as
c i t = A n t l i o n j t + c t , d i t = A n t l i o n j t + d t
with c t and  d t as the minimum and maximum for the entire ant vector, considering all dimensional variables, at iteration t. A n t l i o n j t is the position of the selected ant lion j at iteration t.

4.1.3. The Entrapment of Ants in Traps

To move ants towards ant lions, the radius I of their random walks is decreased, reducing the level of exploitation as the iterations t increase,
c t = c t I , d t = d t I , I = 10 w t T ,
with
w = 1 t 0.1 T 2 0.1 T < t 0.5 T 3 0.5 T < t 0.75 T 4 0.75 T < t 0.9 T 5 0.9 T < t 0.95 T 6 t > 0.95 T

4.1.4. Ant Lions Catching Ants and Re-Building Traps

The action of catching a prey (ant) and rebuilding the pit is represented by replacing each ant lion with its corresponding ant, if it becomes fitter (see Equation (17)).
A n t l i o n j t = A n t i t if f A n t i t < f A n t l i o n j t
Moreover, ALO has an elitism scheme, where the best of all ant lions is the elite solution represented as R E . Every ant movement is affected by using an average between a random walk performed around an ant lion selected using the roulette wheel scheme, R A , and a random walk around the best ant lion (elite), R E . This is represented by  Equation (18):
A n t i t = R A t + R E t 2 .
The ALO pseudocode is presented in Algorithm 1.
Algorithm 1: ALO algorithm pseudocode.
Robotics 09 00022 i001

4.2. Grey Wolf Optimizer

The GWO algorithm, as proposed by Mirjalili et al. [19], is inspired by the behavior of a wolf pack social hierarchy. An analogy is established between a set of potential solutions for a given problem and a population of wolves chasing a prey. Following the wolf pack social hierarchy, the GWO establishes four organization levels:
  • Alpha ( α ) are dominant wolves and thus followed by the rest of the pack.
  • Beta ( β ) are second in command helping alphas in the decision process and establish a bridge between alphas and the lower levels.
  • Delta ( δ ) are third in the pack hierarchy; while submitted to alphas and betas, they submit the lowest rank, which is called omega. Deltas represent wolves such as scouts, sentinels, elders, hunters, and caretakers.
  • Omega ( ω ) represent the rest of population solutions.
The three higher rank elements ( α , β , and  δ ) movement mimics the prey encirclement by wolves, and it is modeled by:
D = | C X p ( t ) X ( t ) | , w i t h C = c 1 r 2 ,
where t represents the current iteration, X p is the prey position vector, X is a grey wolf position, and C is a coefficient vector, which is evaluated using a uniformly random vector r 2 generated in the interval [ 0 , 1 ] . c 1 can be an adjustable constant proposed in [19] as c 1 = 2 . The result difference vector D is then used to move the specific element towards or away from the region where the best solution is located (the prey) using:
X ( t + 1 ) = X p ( t ) A D , w i t h a = 2 a ( t ) r 1 a ( t ) ,
where r 1 represents a  uniformly random generated number in the interval [ 0 , 1 ] and a is linearly decreased vector from a m a x = 2 to  a m i n = 0 throughout the predefined number of iterations. If the absolute value of A is smaller than 1, this corresponds to an exploitation behavior and mimics the wolf attacking the prey. Otherwise, if the absolute value of A is larger than 1, this corresponds to an exploration behavior and mimics the wolf diverging from the prey. The proposed values by Mirjalili et al. [19] for A are in the interval of  [ 2 , 2 ] . Thus, applying the general expressions (Equations (19) and (20)) to the higher wolfs ranks ( α , β , and  δ ) results, respectively, in:
D α = | C 1 X α ( t ) X ( t ) | , X 1 = X α A 1 D α
D β = | C 2 X β ( t ) X ( t ) | , X 2 = X β A 2 D β
D δ = | C 3 X δ ( t ) X ( t ) | , X 3 = X δ A 3 D δ
In Equations (21)–(23), the prey position corresponds, respectively, to the best position attained by each of the wolf ranks ( α , β , and  δ ). All wolf population positions are updated using the following expression:
X ( t + 1 ) = X 1 + X 2 + X 3 3
The GWO pseudocode is presented in Algorithm 2.
Algorithm 2: Pseudocode for the GWO algorithm.
Robotics 09 00022 i002

5. Simulations and Discussion

All simulations were carried out on an Intel Core i7 3.4GHz, 8 GB DDR3 RAM, 500 GB Hard Disk Drive, Windows 7 64bits, Matlab® R-2014b and represent a time of 300 s. A sampling frequency of f s = 30 Hz was selected, within the feasible sample time limit for a small quadrotor with a diameter around 50 cm [37].

5.1. Fitness Function and Optimization Methodology

ALO and GWO were used to improve iteratively a set of random potential solutions encoding in Equation (11) by minimizing a representative aggregated cost function in Equation (25), which equally balances the objectives of set point tracking and control signal variation. The results were compared to PSO subject to the same cost function. Although many PSO variants are available [38], the conventional PSO [14] is the common choice for performance comparison [17,19] and it is already available as an optimization solver in software such as Matlab®. The fitness of each potential solution (particle, ant, or wolf) were evaluated using Equation (25) considering a full quadrotor flight (see Figure 3) which explores all common VTOL movements (vertical take-off and landing and curves) during 300 s (see Table 5). Although no trajectory benchmark is available, most works consider rectangular, helical, elliptical, or mixed paths [9,13], in such a way that the main VTOL movements be explored. It is noteworthy and required that the same reference trajectory be used for all optimization algorithms. The proposed general fitness function J is defined as:
J = F J T W ,
where,
F J = J 1 J 2 J 3 J 4 T , W = w 1 w 2 w 3 w 4 T
Each component J i , i = 1 , , 4 is given by
J 1 = ϵ 11 e z 2 + ϵ 12 U 1 ( k + 1 ) U 1 ( k )
J 2 = ϵ 21 e ϕ 2 + ϵ 22 U 2 ( k + 1 ) U 2 ( k )
J 3 = ϵ 31 e θ 2 + ϵ 32 U 3 ( k + 1 ) U 3 ( k )
J 4 = ϵ 41 e ψ 2 + ϵ 42 U 4 ( k + 1 ) U 4 ( k )
with e z , e ϕ , e θ , and e ψ defined as in Equation (6) and Table 3. To equally balance all components, w i = 0.25 ( i = 1 , , 4 ) and ϵ i j = 0.5 ( i = 1 , , 4 ; j = 1 , 2 ) . The control action constraints are defined by the motors specifications [34] with physical parameters presented in Table 2, as follows:
0 U 1 9.67
0.57 U 2 0.57
0.57 U 3 0.57
0.11 U 4 0.11
The same conditions were applied to the PSO algorithm [14], with cognitive and social constants, c 1 = c 2 = 2 and inertia vector, ω E , linearly decayed within the range 0.9 0.4 , along the number of iterations ( T = 250 ). A pre-defined number of independent runs N r u n s = 30 was executed for each algorithm, considering a suitable and representative choice to assure variability [17,19]. Populations with size N = 100 were considered. It was assumed that all initial populations are different among runs and algorithm type. The bounds for the common search space are:
P m i n = 0.1 , 0.1 , 0.1 , 0.5 , 0.1 , 0.1 , 0.1 , 0.1 , 0.1 , 0.1 , 0.1 , 0.1 T
P m a x = 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10 T
The optimization results achieved are presented in Table 6 for the fitness values of Equation (25) and in Table 7 for the controller parameters set. In Table 7, two sets are presented for each method: (i) the mean best values of all 30 runs; and( ii) the best set (which provided the best fitness value) throughout N r u n s = 30 independent runs. The used indicators (metrics) for comparing the different algorithms are:
  • statistical Best is the minimum fitness function value ( F i ) (or best value) obtained in N r u n s .
    B e s t = m i n i = 1 N r u n s F i
  • statistical Worst is the maximum fitness function value ( F i ) (or worst value) obtained in N r u n s .
    W o r s t = m a x i = 1 N r u n s F i
  • statistical Median is the middle fitness function value ( F i ) in a sorted list (or median value) obtained in N r u n s . If there are two middle numbers ( N r u n s is even), the median is their average.
  • statistical Mean is the average performance of a stochastic algorithm applied N r u n s times, where F i * is the optimal solution at the ith run.
    M e a n = 1 N r u n s i = 1 N r u n s F i *
  • statistical Standard deviation (Std) indicates the optimizer stability and robustness, preferably as small as possible.
    S t d = 1 N r u n s 1 ( F i * M e a n ) 2
As shown in Figure 4a and by the B e s t measure in Table 6, the results achieved for PSO and GWO are almost the same. However, the exploratory behavior of GWO (see Figure 4b)) is more suitable to get a stable convergence (reflected by S t d and M e a n indexes), outperforming PSO. Although the B e s t value for ALO is slightly greater, its S t d value suggests a higher probability of getting similar results at each independent run. An equivalent convergence rate for the population mean fitness value in all algorithms may be verified, around 200 iterations.
The required computational time is equivalent for PSO and GWO (35.49 s and 35.55 s, respectively) and sightly higher for ALO (37.26 s), for each iteration in the test hardware. Regarding the optimized parameters in Table 7, there is an interesting similarity among PSO, ALO, and GWO for the roll angle, since this combination provides the best fitness value for each algorithm. The values for the switching component U s m converged to the boundary limits, with the lower bound 0.1 for the gain of this component and the upper bound for δ . The pair ( k , δ ) has an intrinsic trade-off and affects the disturbance rejection (robustness) and chattering. It is noteworthy that the highest λ found by ALO (using mean controller parameter set) for the roll and pitch angles presents better disturbance rejection properties in the flight simulation shown in the next section. A simple comparison between Figure 2 and Figure 5 below gives a good understanding on how the used SMC technique reduces chattering.

5.2. Flight Simulation

With these parameters (Table 7), four Flight Plans (FP) were simulated (Table 8) to meet common movements such as vertical takeoff with yaw correction, hovering, maneuvering, and landing. Usually, such movements explore non-ideal conditions [6], such as constant input disturbances, parameter variations, motor failure, and noise, here simulated as a white Gaussian noise in the range of ± 15 mV. A diversity of common paths (rectangular, elliptical, and helical) are also used [9,13]. These flight plans are described as follows, and, where not explicitly mentioned, all initial values are zero.
Below, four figures for each flight plan case (Figure 6, Figure 7, Figure 8, Figure 9, Figure 10, Figure 11 and Figure 12) present the simulation results. For visualization purposes, the same legend is considered throughout the plots within a specific figure. The total performance indexes used in Table 9 and Table 10 are defined as:
I S E T = e 2 = e z 2 + e ϕ 2 + e θ 2 + e ψ 2
U T = | U | = i = 1 4 | U i |
T V U = i = 1 4 k = 1 f s × t s i m U i ( k + 1 ) U i ( k )
S t d T = i = 1 4 S t d ( U i )
where f s is the sampling frequency and t s i m is the total simulation time. S t d represents the usual standard deviation of Equation (40), for each control component U i , i = 1 , , 4 .
The feasibility of applying such hunting-based optimization algorithms can be supported by the results in Figure 6, Figure 7, Figure 8, Figure 9, Figure 10, Figure 11, Figure 12 and Figure 13 and the data in Table 9 and Table 10. All simulations used the mean controller parameters set presented in Table 6, which provides more diversity and suitability. At least one hunting method outperforms PSO in terms of general tracking ( I S E T ): both ALO and GWO when the mean controller parameters (Table 6) are used (Table 9 ) and ALO when the choice is the controller parameter set related to best fitness values (Table 10). Although these benefits may require more oscillatory control signal ( T V U ) when compared to PSO, the total control effort ( U T ) is quite similar. Figure 6 and Figure 7 show the ideal case with a zoom at the initial instants, to highlight that ALO provides a faster tracking for all process variables. The worst performance for GWO on pitch and roll control in Figure 6 and Figure 12 is explained by the smaller parameters λ 2 and λ 3 . However, since the quadrotor control must be considered as a whole, the I S E T is still better for GWO when compared to PSO. For the disturbed cases in Figure 8, Figure 9, Figure 10, Figure 11 and Figure 12, the overall best tracking for ALO and GWO is also verified. The zoom in the top plot of Figure 8 shows the best recovery achieved, when system physical parameters vary. If a motor failure is considered (Figure 10, roll plot), ALO outperforms PSO and GWO, for the same reason explained above for pitch and roll. Figure 12 presents only the altitude tracking under measurement noise, but the other process variables show similar behavior. In terms of tracking, both GWO and ALO are slightly better than PSO. This finding is in accordance to the results in [17,19,32,33]. In these two latter works, the Gravitational Search Algorithm [39] exceeds both, but here it is not considered since it is not an animal-behavior method, but inspired in physical motion laws. For an actual and digital implementation where robustness and stable convergence rate must be emphasized [7,8], GWO may be recommended in its original formulation, since it has presented a good balance between exploration and exploitation. Regarding ALO, nonsystematic adaptation methods of exploration rate along the search space have recently been proposed to outperform the original ALO [21]. However, here, this feature did not compromise the tracking results, due to the aggregated cost function type and since the control must be considered for the four motors as a whole. In Figure 7, Figure 8, Figure 9, Figure 10, Figure 11, Figure 12 and Figure 13, for illustrative purposes, the trajectories in Table 8 are controlled using the SMC with the parameters found by the ALO (see Table 7). When the curves almost coincide with the set point, it is due to the SMC transient response, which is very fast and non-oscillatory, achieving the objectives of this work of getting a more precise tracking with equivalent and feasible control signal effort and chattering, when compared to PSO.

6. Conclusions

This paper proposes the use of both ALO and GWO algorithms to solve the optimization problem of finding a suitable parameter set for the quadrotor Sliding Mode control of altitude and attitude stabilization and tracking. As trial-and-error adjustment is the common practice; this work addresses a challenging and open issue due to the strong trade-off among parameters related to set point tracking, as robustness is guaranteed and chattering is kept within feasible limits. Both techniques were simulated and compared with PSO. Both GWO and ALO outperformed PSO in terms of precise tracking, for ideal and disturbed conditions. Regarding the optimization process, since ALO does not achieve the same best fitness values found by GWO and PSO, this result stimulates further research on ALO improvements for control and robotics applications, as well as the path that PSO and other meta-heuristics optimization algorithms have undergone. This finding is in accordance to the motivation for novel ALO approaches, such as the Dynamic ALO [21] and the Chaotic ALO [15,40], to be explored in future works. Moreover, the multi-objective approach can be explored, as well as hybrid optimization techniques, since ALO and GWO presented good results for different process variables. Besides, practical implementation is intended in order to evaluate on-board specific issues (embedded) and corroborate such simulation results.

Author Contributions

The authors J.O., P.M.O., T.P. and J.B.-C. declare that they are responsible for the preparation of the manuscript entitled EVALUATION OF HUNTING-BASED OPTIMIZERS FOR A QUADROTOR SLIDING MODE FLIGHT CONTROLLER. Below are described each contribution: J.O. and P.M.O. conceived the conceptualization and original idea and developed the methodology; J.O. designed the model and the computational framework, analysed the data and carried out the simulation, writing-original draft with input from all authors; J.B.-C., besides reviewing, contributed to get funding acquisition. T.P. conducted simulation and visualization editing; All authors discussed the results and writing-review and editing process. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Simelli, I.; Tsagraris, A. The Use of Unmanned Aerial Systems (UAS) in Agriculture. In Proceedings of the 7th International Conference on Information and Communication Technologies in Agriculture, Food and Environment (HAICTA 2015), Kavala, Greece, 17–20 September 2015; pp. 730–736. [Google Scholar]
  2. Dief, T.; Yoshida, S. Review: Modeling and Classical Control of Quad-rotor. Int. J. Comput. Sci. Inf. Technol. Secur. 2015, 5, 314–319. [Google Scholar] [CrossRef]
  3. Bolandi, H.; Rezaei, M.; Mohsenipour, R.; Nemati, H.; Smailzadeh, S. Attitude Control of a Quadrotor with Optimized PID Controller. Intell. Control. Autom. 2013, 4, 335–342. [Google Scholar] [CrossRef]
  4. Utkin, V. Sliding Modes in Control and Optimization; Springer: Berlim/Heidelberg, Germany, 1992. [Google Scholar]
  5. Swarup, A.; Sudhir. Comparison of Quadrotor Performance using Backstepping and Sliding Mode Control. In Proceedings of the International Conference on Circuits, Systems and Control, Interlaken, Switzerland, 22–24 February 2014; pp. 79–82. [Google Scholar]
  6. Runcharoon, K.; Srichatrapimuk, V. Sliding Mode Control of Quadrotor. In Proceedings of the 45th International Conference on Technological Advances in Electrical, Electronics and Computer Engineering (TAEECE), Konya, Turkey, 9–11 May 2013; pp. 552–557. [Google Scholar] [CrossRef]
  7. Xiong, J.J.; Zhang, G. Discrete-time Sliding Mode Control for a Quadrotor UAV. Int. J. for Light Electron Opt. 2016, 127, 3718–3722. [Google Scholar] [CrossRef]
  8. González, J.; Salazar, S.; Lozano, R. Chattering-Free Sliding Mode Altitude Control for a Quad-Rotor Aircraft: Real-time Application. J. Intell. Robot. Syst. 2014, 73, 137–155. [Google Scholar] [CrossRef]
  9. Zhang, E.H.; Xiong, J.J.; Luo, J.L. Second Order SMC for a quadrotor UAV. Isa Trans. 2014, 53, 1350–1356. [Google Scholar] [CrossRef]
  10. Berkenkamp, F.; Schoellig, A. Safe and Robust Learning Control with Gaussian Processes. In Proceedings of the 14th European Control Conference, Linz, Austria, 15–17 July 2015; pp. 2501–2506. [Google Scholar]
  11. Yacef, F.; Bouhali, O.; Hamerlain, M.; Rezoug, A. PSO Optimization of Integral Backstepping Controller for Quadrotor Attitude Stabilization. In Proceedings of the 3th IEEE International Conference on Systems and Control, Algiers, Algeria, 29–31 October 2013; pp. 462–466. [Google Scholar] [CrossRef]
  12. Basri, M.; Danapalasingam, K.; Husain, A. Design and Optimization of Backstepping Controller for an Underactuated Autonomous Quadrotor Unmanned Aerial Vehicle. Trans. Famena 2014, 38, 27–44. [Google Scholar]
  13. Herrera, M.; Chamorro, W.; Gómez, A.; Camacho, O. Sliding Mode Control: an Approach to Control a Quadrotor. In Proceedings of the Asia-Pacific Conference on Computer Aided System Engineering, Quito, Ecuador, 14–16 July 2015; pp. 314–319. [Google Scholar] [CrossRef]
  14. Clerc, M.; Kennedy, J. The Particle Swarm—Explosion, Stability and Convergence in a Multidimensional Complex Space. IEEE Trans. Evol. Computation 2002, 6, 58–73. [Google Scholar] [CrossRef]
  15. Oliveira, J.; Oliveira, P.; Boaventura-Cunha, J.; Pinho, T. Chaos-based grey wolf optimizer for higher order sliding mode position control of a robotic manipulator. Nonlinear Dyn. 2017, 1–10. [Google Scholar] [CrossRef]
  16. Panda, M.; Das, B. Grey Wolf Optimizer and Its Applications: A Survey. In Proceedings of the Third International Conference on Microelectronics, Computing and Communication Systems, Ranchi, India, 12–13 May 2019; pp. 179–194. [Google Scholar]
  17. Mirjalili, S. The Ant Lion Optimizer. Adv. Eng. Softw. 2015, 83, 80–98. [Google Scholar] [CrossRef]
  18. Heidari, A.; Faris, H.; Mirjalili, S.; Aljarah, I.; Mafarja, M. Nature-Inspired Optimizers; Chapter Ant Lion Optimizer: Theory, Literature Review, and Application in Multi-layer Perceptron Neural Networks; Springer: Berlin, Germany, 2020; Volume 811, pp. 23–46. [Google Scholar]
  19. Mirjalili, S.; Mirjalili, S.; Lewis, A. Grey Wolf Optimizer. Adv. Eng. Softw. 2014, 69, 46–61. [Google Scholar] [CrossRef]
  20. Gao, Z.M.; Zhao, J. An Improved Grey Wolf Optimization Algorithm with Variable Weights. Comput. Intell. Neurosci. 2019, 1–13. [Google Scholar] [CrossRef] [PubMed]
  21. Yao, P.; Wang, H. Dynamic Adaptive Ant Lion Optimizer Applied to Route Planning for Unmanned Aerial Vehicle. Soft Comput. 2016, 1–14. [Google Scholar] [CrossRef]
  22. Zhang, S.; Zhou, Y.; Li, Z.; Pei, W. Grey Wolf Optimizer for Unmanned Combat Aerial Vehicle Path Planning. J. Adv. Eng. Softw. 2016, 99, 121–136. [Google Scholar] [CrossRef]
  23. Radmanesh, M.; Kumar, M. Grey Wolf Optimization based Sense and Avoid Algorithm for UAV Path Planning in Uncertain Environment using a Bayesian Framework. In Proceedings of the International Conference on Unmanned Aircraft Systems (ICUAS), Arlington, VA, USA, 7–10 June 2016; pp. 68–76. [Google Scholar]
  24. Raju, M.; Saikia, L.; Sinha, N. Automatic Generation Control of a Multi-area System using Ant Lion Optimizer Algorithm based PID plus Second Order Derivative Controller. Int. J. Electr. Power Energy Syst. 2016, 80, 52–63. [Google Scholar] [CrossRef]
  25. Nischal, M.; Mehta, S. Optimal Load Dispatch using Ant Lion Optimization. J. Eng. Res. Appl. 2015, 5, 10–19. [Google Scholar]
  26. Gupta, E.; Saxena, A. Grey wolf optimizer based regulator design for automatic generation control of interconnected power system. Cogent Eng. 2016, 3, 1–20. [Google Scholar] [CrossRef]
  27. Mehta, S.; Nischal, M. Ant Lion Optimization for Optimum Power Generation with Value Point Effects. Int. J. Res. Appl. Sci. Eng. Technol. 2015, 3, 1–6. [Google Scholar]
  28. Milica, P.; Jelena, P.; Mitić, M.; Vuković, N.; Miljković, Z.; Babić, B. The Ant Lion Algorithm for Integrated Process Planning and Sheduling. Appl. Mech. Mater. 2016, 384, 187–192. [Google Scholar]
  29. Yogarajan, G.; Revathi, T. A Discrete Ant Lion Optimization (DALO) for Solving Data Gathering Tour Problem in Wireless Sensor Networks. Middle-East J. Sci. Res. 2016, 24, 3113–3120. [Google Scholar]
  30. Dubey, H.; Pandit, M.; Panigrahi, B. Hydro-thermal-wind Scheduling Employing Novel Ant Lion Optimization Technique with Composite Ranking Index. Renew. Energy 2016, 99, 18–34. [Google Scholar] [CrossRef]
  31. Mirjalili, S.; Saremi, S.; Mirjalili, S.; Coelho, L. Multi-objective Grey Wolf Optimizer: A Novel Algorithm for Multi-Criterion Optimization. Expert Syst. Appl. 2016, 47, 106–119. [Google Scholar] [CrossRef]
  32. Oliveira, P.; Vrančić, D. Grey Wolf, Gravitational Search and Particle Swarm Optimizers: A Comparison for PID Controller Design. In Proceedings of the 12th Portuguese Conference on Automatic Control (CONTROLO 2016), Guimarães, Portugal, 14–16 September 2016; pp. 239–249. [Google Scholar]
  33. Oliveira, P.; Freire, H.; Pires, E. Grey wolf optimization for PID controller design with prescribed robustness margins. Soft Comput. 2016, 20, 4243–4255. [Google Scholar] [CrossRef]
  34. Bouabdallah, S.; Murrieri, P.; Siegwart, R. Towards Autonomous Indoor Micro VTOL. Auton. Robot. 2005, 18, 171–183. [Google Scholar] [CrossRef]
  35. Lee, H.; Utkin, V. Chattering suppression methods in sliding mode control systems. Annu. Rev. Control. 2007, 31, 179–188. [Google Scholar] [CrossRef]
  36. Samir, Z. Sliding Mode Control of a 6 DOF Quadrotor Helicopter. J. Electr. Eng. 2010, 10, 126–132. [Google Scholar]
  37. Batmaz, A.; Elbir, O.; Kasnakoglu, C. Design of a Quadrotor Roll Controller Using System Identification to Improve Empirical Results. Int. J. Mater. Mech. Manuf. 2013, 1, 347–349. [Google Scholar] [CrossRef]
  38. Wahab, M.; Nefti-Meziani, S.; Atyabi, A. A Comprehensive Review of Swarm Optimization Algorithms. PLoS ONE 2015, 10. [Google Scholar] [CrossRef]
  39. Rashedi, E.; Nezamabadi-pour, H.; Saryazdi, S. GSA: Gravitational Search Algorithm. Inf. Sci. 2009, 179, 2232–2248. [Google Scholar] [CrossRef]
  40. Zawbaa, H.; Emary, E.; Grosan, C. Feature Selection via Chaotic Antlion Optimization. PLoS ONE 2016, 11. [Google Scholar] [CrossRef]
Figure 1. Quadrotor representation.
Figure 1. Quadrotor representation.
Robotics 09 00022 g001
Figure 2. Example of bad tuning effect (chattering) on input signals.
Figure 2. Example of bad tuning effect (chattering) on input signals.
Robotics 09 00022 g002
Figure 3. General trajectory used for optimization.
Figure 3. General trajectory used for optimization.
Robotics 09 00022 g003
Figure 4. Convergence curves: (a) best fitness value; (b) average mean fitness value.
Figure 4. Convergence curves: (a) best fitness value; (b) average mean fitness value.
Robotics 09 00022 g004
Figure 5. Example of SMC-based equivalent control method to reduce chattering.
Figure 5. Example of SMC-based equivalent control method to reduce chattering.
Robotics 09 00022 g005
Figure 6. Flight plan 1 (zoom)—non-disturbed case.
Figure 6. Flight plan 1 (zoom)—non-disturbed case.
Robotics 09 00022 g006
Figure 7. Flight plan 1—non-disturbed case.
Figure 7. Flight plan 1—non-disturbed case.
Robotics 09 00022 g007
Figure 8. Flight plan 2—zoom of the effect of the parameter variation inserted at t = 80 s .
Figure 8. Flight plan 2—zoom of the effect of the parameter variation inserted at t = 80 s .
Robotics 09 00022 g008
Figure 9. Flight plan 2—parametric variation.
Figure 9. Flight plan 2—parametric variation.
Robotics 09 00022 g009
Figure 10. Flight plan 3—input disturbance in U 1 and motor failure in U 2 .
Figure 10. Flight plan 3—input disturbance in U 1 and motor failure in U 2 .
Robotics 09 00022 g010
Figure 11. Flight plan 3—input disturbance and motor failure.
Figure 11. Flight plan 3—input disturbance and motor failure.
Robotics 09 00022 g011
Figure 12. Flight plan 4 (zoom)—effect of measurement noise on the height control.
Figure 12. Flight plan 4 (zoom)—effect of measurement noise on the height control.
Robotics 09 00022 g012
Figure 13. Flight plan 4—measurement noise.
Figure 13. Flight plan 4—measurement noise.
Robotics 09 00022 g013
Table 1. Quadrotor dynamical subsystems.
Table 1. Quadrotor dynamical subsystems.
Subsystems
TranslationalRotational
X Δ = x , x ˙ , y , y ˙ , z , z ˙ T R 6 X Θ = ϕ , ϕ ˙ , θ , θ ˙ , ψ , ψ ˙ T R 6
X Δ = x 1 , x 2 , x 3 , x 4 , x 5 , x 6 T X Θ = x 7 , x 8 , x 9 , x 10 , x 11 , x 12 T
U Δ = U 1 U Θ = U 2 , U 3 , U 4 T
X Δ ˙ = f X Δ , U Δ = f Δ X Θ ˙ = f X Θ , U Θ = f Θ
Table 2. Physical parameters—dynamical model.
Table 2. Physical parameters—dynamical model.
ParameterDescriptionValue
mtotal quadrotor mass 0.52 kg
ggravity acceleration 9.8 ms 2
Lquadrature arm length 0.235 m
dpropeller resistance coefficient (drag factor) 7.5 × 10 7
bpropeller lift coefficient (thrust factor) 3.13 × 10 5
J r moment of propeller inertia around Z axis 8.66 × 10 7
I x moment of inertia around X axis 6.228 × 10 3 kgm 2
I y moment of inertia around Y axis 6.228 × 10 3 kgm 2
I z moment of inertia around Z axis 1.121 × 10 2 kgm 2
Table 3. Roll, pitch, and yaw control signals.
Table 3. Roll, pitch, and yaw control signals.
Roll
e ϕ = ϕ R ϕ = ϕ R x 7 S ϕ = e ϕ ˙ + λ 2 e ϕ = ϕ R ˙ x 8 + λ 2 ϕ R x 7 U 2 e q = ϕ r ¨ x 10 x 12 I y I z I x + J r I x x 10 Ω r + λ 2 ϕ r ˙ x 8 I x L U 2 s m = k 2 S ϕ S ϕ + δ 2 , U 2 = U 2 e q + U 2 s m
Pitch
e θ = θ R θ = θ R x 9 S θ = e θ ˙ + λ 3 e θ = θ R ˙ x 10 + λ 3 θ R x 9 U 3 e q = θ r ¨ x 8 x 12 I z I x I y J r I y x 8 Ω r + λ 3 θ r ˙ x 10 I y L U 3 s m = k 3 S θ S θ + δ 3 , U 3 = U 3 e q + U 3 s m
Yaw
e ψ = ψ R ψ = ψ R x 11 S ψ = e ψ ˙ + λ 4 e ψ = ψ R ˙ x 12 + λ 4 ψ R x 11 U 4 e q = ψ r ¨ x 8 x 10 I x I y I z + λ 4 ψ r ˙ x 12 I z U 4 s m = k 4 S ψ S ψ + δ 4 , U 4 = U 4 e q + U 4 s m
Table 4. Controller parameters to be optimized.
Table 4. Controller parameters to be optimized.
Control ComponentController Parameters
Altitude zRoll ϕ Pitch θ Yaw ψ
U e q λ 1 λ 2 λ 3 λ 4
U s m k 1 , δ 1 k 2 , δ 2 k 3 , δ 3 k 4 , δ 4
Table 5. Trajectory used in the optimization with initial condition ψ ( 0 ) = π 10 .
Table 5. Trajectory used in the optimization with initial condition ψ ( 0 ) = π 10 .
Time Interval z R ϕ R θ R ψ R
0 < t 50 s 5000
50 s < t 80 s 3 π 5 00
80 s < t 140 s 10 π 5 0
140 s < t 180 s 4 π 3 00
t > 180 s 0000
Table 6. Fitness values obtained in 30 runs.
Table 6. Fitness values obtained in 30 runs.
Measure
Fitness Value
Method
PSOALOGWO
Best 822 , 840 823 , 860 822 , 850
Worst 925 , 520 864 , 350 833 , 150
Median 825 , 060 836 , 580 823 , 350
Mean 838 , 060 841 , 590 823 , 510
Std 0.0305 0.0153 0.0018
Table 7. Resulting optimized controller parameters.
Table 7. Resulting optimized controller parameters.
Controller
Parameters
Mean Values
(30 runs)
Best Values
(30 runs)
PSOALOGWOPSOALOGWO
λ 1 0.24 0.26 0.27 0.27 0.26 0.27
k 1 8.00 7.61 8.43 8.42 8.83 8.42
Height z δ 1 10.00 8.91 10.00 10.00 9.99 10.00
λ 2 2.40 3.67 0.82 0.5 0.50 0.50
k 2 0.10 0.10 0.10 0.10 0.10 0.10
Roll ϕ δ 2 10.00 10.00 10.00 10.00 10.00 10.00
λ 3 3.08 6.03 1.11 0.44 2.89 0.44
k 3 1.16 1.29 0.38 0.10 0.13 0.10
Pitch θ δ 3 6.12 7.55 7.62 1.54 8.80 1.68
λ 4 3.97 5.61 3.34 2.50 9.43 0.25
k 4 0.14 1.13 0.73 0.10 0.54 1.05
Yaw ψ δ 4 9.08 7.67 5.64 10.00 7.18 8.68
Table 8. Flight plans.
Table 8. Flight plans.
Flight Plan 1
ψ ( 0 ) = π 5
0 < t 70 s ,     z R = 3 , ϕ R = θ R = ψ R = 0
70 s < t 120 s ,     z R = 3 , ϕ R = π 3 , θ R = ψ R = 0
120 s < t 180 s ,     z R = 3 , ϕ R = 0 , θ R = π 10 , ψ R = 0
180 s < t 250 s ,     z R = 3 , ϕ R = π 10 , θ R = 0 , ψ R = 0
t > 250 s ,     z R = ϕ R = θ R = ψ R = 0
Flight Plan 2—Parameter variation
t > 0 ,     z R = 6
80 s t 130 s ,    Parameter variation of  + 20 % in  m , J r , I x , I y , I z , d , b
Flight Plan 3—Input disturbance and temporary motor failure
the same FP 1 with constant input disturbance of  + 0.1 in  U 1
80 s t 130 s ,     U 2 = 0
Flight Plan 4—Measurement noise
the same FP 1 with added noise in  z , ϕ , θ , ψ
Table 9. Performance comparison with mean controller parameters.
Table 9. Performance comparison with mean controller parameters.
Flight PlanMethod ISE T U T | TV U | std T
PSO 1.58 × 10 3 47 , 240 6.17 × 10 3 0.13
ALO 1.48 × 10 3 47 , 243 7.53 × 10 3 0.14
FP1GWO 1.46 × 10 3 47 , 229 7.73 × 10 3 0.13
PSO 3.11 × 10 3 47 , 398 9.77 × 10 3 0.38
ALO 2.95 × 10 3 47 , 398 1.07 × 10 4 0.38
FP2GWO 2.87 × 10 3 47 , 398 1.11 × 10 4 0.38
PSO 4.26 × 10 3 46 , 690 6.68 × 10 3 0.20
ALO 3.63 × 10 3 46 , 684 8.04 × 10 3 0.21
FP3GWO 3.54 × 10 3 46 , 852 8.05 × 10 3 0.24
PSO 1.57 × 10 3 47 , 265 6.22 × 10 3 0.13
ALO 1.48 × 10 3 47 , 316 7.60 × 10 3 0.14
FP4GWO 1.47 × 10 3 47 , 367 7.62 × 10 3 0.15
Table 10. Performance comparison with controller parameters related to best fitness value.
Table 10. Performance comparison with controller parameters related to best fitness value.
Flight PlanMethod ISE T U T | TV U | std T
PSO 1.48 × 10 3 47 , 210 6.85 × 10 3 0.13
ALO 1.46 × 10 3 47 , 215 8.06 × 10 3 0.13
FP1GWO 1.49 × 10 3 47 , 210 6.91 × 10 3 0.13
PSO 2.87 × 10 3 47 , 398 1.11 × 10 4 0.38
ALO 2.85 × 10 3 47 , 398 1.16 × 10 4 0.38
FP2GWO 2.87 × 10 3 47 , 398 1.11 × 10 4 0.38
PSO 3.66 × 10 3 47 , 206 6.81 × 10 3 0.34
ALO 3.48 × 10 3 47 , 212 8.01 × 10 3 0.35
FP3GWO 3.66 × 10 3 47 , 206 6.87 × 10 3 0.34
PSO 1.52 × 10 3 47 , 392 6.68 × 10 3 0.15
ALO 1.49 × 10 3 47 , 433 7.87 × 10 3 0.15
FP4GWO 1.51 × 10 3 47 , 283 6.84 × 10 3 0.14
Back to TopTop