#### Abstract

Squirrel search algorithm (SSA) is a new biological-inspired optimization algorithm, which has been proved to be more effective for solving unimodal, multimodal, and multidimensional optimization problems. However, similar to other swarm intelligence-based algorithms, SSA also has its own disadvantages. In order to get better global convergence ability, an improved version of SSA called ISSA is proposed in this paper. Firstly, an adaptive strategy of predator presence probability is proposed to balance the exploration and exploitation capabilities of the algorithm. Secondly, a normal cloud model is introduced to describe the randomness and fuzziness of the foraging behavior of flying squirrels. Thirdly, a selection strategy between successive positions is incorporated to preserve the best position of flying squirrel individuals. Finally, in order to enhance the local search ability of the algorithm, a dimensional search enhancement strategy is utilized. 32 benchmark functions including unimodal, multimodal, and CEC 2014 functions are used to test the global search ability of the proposed ISSA. Experimental test results indicate that ISSA provides competitive performance compared with the basic SSA and other four well-known state-of-the-art optimization algorithms.

#### 1. Introduction

Optimization is the process of determining decision variables of a function in a way that the function is in its maximal or minimal value. Many real-life engineering problems belong to optimization problems [1–3] in which decision variables are determined in a way that the systems operate in their best optimal point. Usually, these problems are discontinuous, nondifferentiable, multimodal, and nonconevx, and thus the classical gradient-based deterministic algorithms [4–6] are not applicable.

To overcome the drawbacks of the classical algorithms, a considerable number of stochastic optimization algorithms known as metaheuristic algorithms [7–9] have been developed in recent decades. These algorithms are mainly inspired by biological behaviors or physical phenomena and can be roughly classified into three categories: evolutionary algorithms, swarm intelligence, and physical-based algorithms. The evolutionary algorithms simulate the evolution of the nature such as reproduction, mutation, recombination, and selection, in which a population tries to survive based on the evaluation of fitness value in a given environment. Genetic algorithm (GA) [10] and evolution strategy (ES) [11] are the most popular evolutionary algorithms. Swarm intelligence algorithms are the second category, which are based on movement of a swarm of creatures and imitate the interaction of swarm and their environment in order to enhance their knowledge of a goal (e.g., food source). The most well-known swarm intelligence algorithms are particle swarm optimization (PSO) [12], artificial bee colony (ABC) [13] algorithm, ant colony optimization (ACO) [14], and grey wolf optimization algorithm (GWO) [15], to name a few. The physical-based algorithms are inspired by the basic physical laws in universe such as gravitational force, electromagnetic force, and inertia force. Several representatives of this category are simulated annealing (SA) [16], big-bang big-crunch (BB-BC) [17], and gravitational search algorithm (GSA) algorithm [18]. Some of the recent nature-inspired algorithms are lightning attachment procedure optimization (LAPO) [19], spotted hyena optimizer (SHO) [20], weighted superposition attraction (WSA) [21], and many more [22, 23].

Unfortunately, most of the abovementioned basic metaheuristic algorithms fail to balance exploration and exploitation, thereby yielding unsatisfactory performance for real-life complicated optimization problems. Exploration stands for global search ability and ensures the algorithm to reach all over the search space and then to find promising regions, whereas exploitation represents local search ability and ensures the searching of optimum within the identified promising regions. Emphasizing the exploration capability only results in a waste of computational resources on searching all over the interior regions of search space and thus reduces the convergence rate; emphasizing the exploitation capability only, by contrast, causes loss of population diversity early and thus probably leads to premature convergence or to be stuck in local optimal. This fact motivates the introduction of various strategies for improving the convergence rate and precision of the basic metaheuristic algorithms. As an illustration, premature convergence of PSO was prevented in CLPSO by proposing a comprehensive learning strategy to maintain the population diversity [24]; a social learning component called fitness-distance-ratio was employed to enhance local search capability of PSO [25]; a self-organizing hierarchical PSO with time-varying acceleration coefficients (HPSO-TVAC) was introduced to efficiently control the local search and convergence to the global optimal solution [26]; a distance-based locally informed PSO (LIPS) enabled the algorithm to quickly converge to global optimal solution with high accuracy [27]. Likewise, many modified versions have been proposed to enhance the global search ability of the basic ABC: an improved-global-best-guide term with a nonlinear adjusting factor was employed to balance the exploration and exploitation [28]; a multiobjective covariance guided artificial bee colony algorithm (M-CABC) was proposed to obtain higher precision with quick convergence speed when solving portfolio problems [29]; the slow convergence and unsatisfactory solution accuracy were improved in the variant IABC [30]. As for fruit fly optimization algorithm (FOA) [31], an escape parameter was introduced in MFOA to escape from the local solution [32]; and modified versions for balancing between exploration and exploitation abilities include, for example, IFOA [33], MSFOA [34], IFFO [35], and CMFOA [36].

Squirrel search algorithm (SSA), proposed by Mohit et al. in 2018, is a new and powerful global optimization algorithm inspired by the natural dynamic foraging behavior of flying squirrels [37]. In comparison with other swarm intelligence optimization algorithms, SSA has the advantages of better and efficient search space exploration because a seasonal monitoring condition is incorporated. Moreover, three types of trees (normal tree, oak tree, and hickory tree) are available in the forest region, preserving the population diversity and thus enhancing the exploration of the algorithm. Test results of 33 benchmark functions and a real-time controller design problem confirm the superiority of SSA in comparison with other well-known algorithms such as GA [10], PSO [25], BA (bat algorithm) [38], and FF (firefly algorithm) [39].

However, SSA still suffers from premature convergence and easily gets trapped in a local optimal solution, especially when solving highly complex problems. The convergence rate of SSA, like other swarm intelligence algorithms, depends on the balance between exploration and exploitation capabilities. In other words, an excellent performance in dealing with optimization problems requires fine-tuning of the exploration and exploitation problem. According to “no free lunch” (NFL) theorem [40], no single optimization algorithm is able to achieve the best performance for all problems, and SSA is not an exception. Therefore, there still exists room for improving the accuracy and convergence rates of SSA.

Based on the discussion above, this study proposes an improved variant of SSA (ISSA) which employs four strategies to enhance the global search ability of SSA. In brief, the main contributions of this research can be summarized as follows:

(i) An adaptive strategy of predator presence probability is proposed, which dynamically adjusts with the iteration process. This strategy discourages premature convergence and improves the intensive search ability of the algorithm, especially at the latter stages of search. In this way, a balance between the exploration and exploitation capabilities can be properly managed.

(ii) The proposed ISSA employs a normal cloud generator [41] to generate new locations for flying squirrels during the course of gliding, which improves the exploration capability of SSA. This is motivated by the fact that the gliding behaviors of flying squirrels have characteristics of randomness and fuzziness, which can be simultaneously described by the normal cloud model [42].

(iii) A selection strategy between successive positions is proposed to maintain the best position of a flying squirrel individual throughout the optimization process, which enhances the exploitation ability of the algorithm.

(iv) A dimensional search enhancement strategy is originally put forward and results in a better quality of the best solution in each iteration, thereby strengthening the local search ability of the algorithm.

The general properties of ISSA are evaluated against 32 benchmark function including unimodal, multimodal, and CEC 2014 functions [43]. Meanwhile, its performance is compared with the basic SSA and other four well-known state-of-the-art optimization algorithms.

The rest of this paper is organized as follows: Section 2 briefly recapitulates the basic SSA. Next, the proposed ISSA is presented in detail in Section 3. Experimental comparisons are illustrated in Section 4. Finally, Section 5 gives the concluding remarks.

#### 2. The Basic Squirrel Search Optimization Algorithm

SSA mimics the dynamic foraging behavior of southern flying squirrels via gliding, an effective mechanism used by small mammals for travelling long distance, in deciduous forest of Europe and Asia [37]. During warm weather, the squirrels change their locations by gliding from one tree to another in the forest and explore for food resources. They can easily find acorn nuts for meeting daily energy needs. After that, they begin searching hickory nuts (the optimal food source) that are stored for winter. During cold weather, they become less active and maintain their energy requirements with the storage of hickory nuts. When the weather gets warm, flying squirrels become active again. The abovementioned process is repeated and continues throughout the life space of the squirrels, which serves as a foundation of the SSA. According to the food foraging strategy of flying squirrels, the optimization SSA can be modeled by the following phases mathematically.

##### 2.1. Initialize the Algorithm Parameters

The main parameters of the SSA are the maximum number of iteration , the population size , the number of decision variables* n*, the predator presence probability , the scaling factor , the gliding constant , and the upper and lower bounds for decision variable and . These parameters are set in the beginning of the SSA procedure.

##### 2.2. Initialize Flying Squirrels’ Locations and Their Sorting

The flying squirrels’ locations are randomly initialized in the search apace as follows:where is a uniformly distributed random number in the range .

The fitness value of an individual flying squirrel’s location is calculated by substituting the value of decision variables into a fitness function:Then the quality of food sources defined by the fitness value of the flying squirrels’ locations is sorted in an ascending order:After sorting the food sources of each flying squirrel’s location, three types of trees are categorized: hickory tree (hickory nuts food source), oak tree (acorn nuts food source), and normal tree. The location of the best food source (i.e., minimal fitness value) is regarded as the hickory nut tree (), the locations of the following three food sources are supposed to be the acorn nuts trees (), and the rest are considered as normal trees ():

##### 2.3. Generate New Locations through Gliding

Three scenarios may appear after the dynamic gliding process of flying squirrels.

*Scenario 1. *Flying squirrels on acorn nut trees tend to move towards hickory nut tree. The new locations can be generated as follows:where is random gliding distance, is a function which returns a value from the uniform distribution on the interval , and is a gliding constant.

*Scenario 2. *Some squirrels which are on normal trees may move towards acorn nut tree to fulfill their daily energy needs. The new locations can be generated as follows:where is a function which returns a value from the uniform distribution on the interval .

*Scenario 3. *Some flying squirrels on normal trees may move towards hickory nut tree if they have already fulfilled their daily energy requirements. In this scenario, the new location of squirrels can be generated as follows:where is a function which returns a value from the uniform distribution on the interval .

In all scenarios, gliding distance is considered to be in the interval between 9 and 20 m [37]. However, this value is quite large and may introduce large perturbations in (7)-(9) and hence may cause unsatisfactory performance of the algorithm. In order to achieve acceptable performance of the algorithm, a scaling factor () is introduced as a divisor of and its value is chosen to be 18 [37].

##### 2.4. Check Seasonal Monitoring Condition

The foraging behavior of flying squirrels is significantly affected by season variations [43]. Therefore, a seasonal monitoring condition is introduced in the algorithm to prevent the algorithm from being trapped in local optimal solutions.

A seasonal constant and its minimum value are calculated firstly: Then the seasonal monitoring condition is checked. Under the condition of , the winter is over, and the flying squirrels which lose their abilities to explore the forest will randomly relocate their searching positions for food source again:where distribution is a powerful mathematical tool to enhance the global exploration capability of most optimization algorithms [44]:where and are two functions which return a value from the uniform distribution on the interval , is a constant ( = 1.5 in this paper), and is calculated as follows:where .

##### 2.5. Stopping Criterion

The algorithm terminates if the maximum number of iterations is satisfied. Otherwise, the behaviors of generating new locations and checking seasonal monitoring condition are repeated.

##### 2.6. Procedure of the Basic SSA

The pseudocode of SSA is provided in Algorithm 1.

Set , , n, , , , and | |

Randomly initialize the flying squirrels locations | |

Calculate fitness value | |

while | |

Generate new locations | |

for t = 1: n1 (n1 = total number of squirrels on acorn trees) | |

if | |

else | |

end | |

end | |

for t =1: n2 (n2 = total number of squirrels on normal trees moving towards acorn trees) | |

if | |

else | |

end | |

end | |

for t = 1: n3 (n3 = total number of squirrels on normal trees moving towards hickory trees) | |

if | |

else | |

end | |

end | |

if | |

end | |

Calculate fitness value of new locations | |

end |

#### 3. The Improved Squirrel Search Optimization Algorithm

This section presents an improved squirrel search optimization algorithm by introducing four strategies to enhance the searching capability of the algorithm. In the following, the four strategies will be presented in detail.

##### 3.1. An Adaptive Strategy of Predator Presence Probability

When flying squirrels generate new locations, their natural behaviors are affected by the presence of predators and this character is controlled by predator presence probability . In the early search stage, flying squirrels’ population is often far away from the food source and its distribution range is large; thus it faces a great threat from predators. With the evolution going on, flying squirrels’ locations are close to the food source (an optimal solution). In this case, the distribution range of flying squirrels’ population is increasingly smaller and less threats from predators are expected. Thus, to enhance the exploitation capacity of the SSA, an adaptive , which dynamically varies as a function of iteration number, is adopted as follows:where and are the maximum and minimum predator presence probability, respectively.

##### 3.2. Flying Squirrels’ Random Position Generation Based on Cloud Generator

Under the condition of , the flying squirrels randomly proceed gliding to the next potential food locations, different individuals generally have different judgments and their gliding directions and routines vary. In other words, the foraging behavior of flying squirrels has the characteristics of randomness and fuzziness. These characteristics can be synthetically described and integrated by a normal cloud model. In the model, a normal cloud model generator instead of uniformly distributed random functions is used to reproduce new location for each flying squirrel. Thus, (7)-(9) are replaced by the following equations:where (Entropy) represents the uncertainty measurement of a qualitative concept and (Hyper Entropy) is the uncertain degree of entropy [42]. Specifically, in -, stands for the search radius, and is used to represent the stability of the search. In the early iterations, a large is requested because the flying squirrels’ location is often far away from an optimal solution. Under the condition of final generations where the population location is close to an optimal solution, a smaller is appropriate for the fine-tuning of solutions. Therefore, the search radius dynamically changes with iteration number:where is the maximum search radius.

##### 3.3. A Selection Strategy between Successive Positions

When new positions of flying squirrels are generated, it is possible that the new position is worse than the old one. This suggests that the fitness value of each individual needs to be checked after the generation of new positions by comparing with the old one in each iteration. If the fitness value of the new position is better than the old one, the position of the corresponding flying squirrel is updated by the new position. Otherwise, the old position is reserved. This strategy can be mathematically described by

##### 3.4. Enhance the Intensive Dimensional Search

In the basic SSA, all dimensions of one individual flying squirrel are updated simultaneously. The main drawback of this procedure is that different dimensions are dependent and the change of one dimension may have negative effects on others, preventing them from finding the optimal variables in their own dimensions. To further enhance the intensive search of each dimension, the following steps are taken for each iteration: (i) find the best flying squirrel location; (ii) generate one more solution based on the best flying squirrel location by changing the value of one dimension while maintaining the rest dimensions; (iii) compare fitness values of the new-generated solution with the original one, and reserve the better one; (iv) repeat steps (ii) and (iii) in other dimensions individually. The new-generated solution is produced by

##### 3.5. Procedure of ISSA

The pseudocode of SSA is provided in Algorithm 2.

Set , , n, , , , and | |

Randomly initialize the flying squirrels locations | |

Calculate fitness value | |

while | |

Generate new locations | |

for t = 1: n1 (n1 = total number of squirrels on acorn trees) | |

if | |

else | |

end | |

end | |

for t = 1: n2 (n2 = total number of squirrels on normal trees moving towards acorn trees) | |

if | |

else | |

end | |

end | |

for t = 1: n3 (n3 = total number of squirrels on normal trees moving towards hickory trees) | |

if | |

else | |

end | |

end | |

if | |

end | |

Calculate fitness value of new locations | |

if | |

end | |

Enhance intensive dimensional search | |

Find | |

for j = 1:n | |

Calculate fitness value of the new solution | |

if | |

end | |

end | |

end |

#### 4. Experimental Results and Analysis

The performance of proposed ISSA is verified and compared with five nature-inspired optimization algorithms, including the basic SSA, PSO [12], fruit fly optimization algorithm (FOA) [31], and its two variations: improved fruit fly optimization algorithm (IFFO) [35] and cloud model based fly optimization algorithm (CMFOA) [36]. 32 benchmark functions are tested with a dimension being equal to 30, 50, or 100. These functions are frequently adopted for validating global optimization algorithms, among which F1-F11 are unimodal, F13-F25 belong to multimodal, and F26-F32 are composite functions in the IEEE CEC 2014 special section [43]. Each function is calculated for ten independent runs in order to better compare the results of different algorithms. Common parameters are set the same for all algorithms, such as population size* NP* = 50; maximal iteration number = 10,000. Meanwhile, the same set of initial random populations is used. The algorithm-specific parameters are chosen the same as those used in the literature that introduces the algorithm at the first time. The parameters of PSO, FOA, IFFO, CMFOA, and SSA are chosen according to [12], [31], [35], [36], and [37], respectively. Table 1 summarizes both common and algorithm-specific parameters for ISSA and other five algorithms. The error value, defined as (*f*(*x*) – Fmin), is recorded for the solution* x*, where* f*(*x*) is the optimal fitness value of the function calculated by the algorithms, and Fmin is the true minimal value of the function. The average and standard deviation of the error values over all independent runs are calculated.

##### 4.1. Test 1: Unimodal Functions

Unimodal benchmark functions (Table 2) have one global optimum only and they are commonly used for evaluating the exploitation capacity of optimization algorithms. Tables 3–5 list the mean error and standard deviation of the results obtained from each algorithm after ten runs at dimension* n* = 30, 50, and 100, respectively. The best values are highlighted and marked in italic. It is noted that difficulty in optimization arises with the increase in the dimension of a function because its search space increases exponentially [45]. It is clear from the results that on most of unimodal functions ISSA has better accuracy and convergence precision than other five counterpart algorithms, which confirms that the proposed ISSA has good exploitation ability. As for F2 and F5, ISSA can obtain the same level of accurate mean error as IFFO, while the former outperforms the latter under the condition of* n* = 100. It is also found that both ISSA and CMFOA can achieve the true minimal value of F3 at* n* = 30 and 50, while ISSA is superior at* n* = 100.

Figures 1–3 show several representative convergence graphs of ISSA and its competitors at* n* = 30, 50, and 100, respectively. It can be observed that ISSA is able to converge to the true value for most unimodal functions with the fastest convergence speed and highest accuracy, while the convergence results of PSO and FOA are far from satisfactory. The IFFO and CMFOA, with the improvements of search radius though, yield better convergence rates and accuracy in comparison with FOA, but still cannot outperform the proposed ISSA. It is also found that ISSA greatly improves the global convergence ability of SSA mainly because of the introduction of an adaptive strategy of , a selection strategy between successive positions, and enhancement in dimensional search. In addition, the accuracy of all algorithms tends to decrease as the dimension increases, particularly on F6 and F11.

**(a) F1**

**(b) F4**

**(c) F6**

**(d) F7**

**(e) F8**

**(f) F9**

**(g) F10**

**(h) F11**

**(a) F1**

**(b) F4**

**(c) F6**

**(d) F7**

**(e) F8**

**(f) F9**

**(g) F10**

**(h) F11**

**(a) F1**

**(b) F4**

**(c) F6**

**(d) F7**

**(e) F8**

**(f) F9**

**(g) F10**

**(h) F11**

##### 4.2. Test 2: Multimodal Functions

Different from the unimodal functions, multimodal functions have one global optimal solution and multiple local optimal solutions, and the number of local optimal solutions exponentially increases with the increase of dimension. This feature makes them suitable for testing the exploration ability of an algorithm. Details of these multimodal functions are listed in Table 6. The recorded results of statistical analysis over 10 independent runs are presented in Tables 7–9 for* n* = 30, 50, and 100, respectively. It is revealed from these tables that ISSA is superior on F12, F13, F14, F16, F19, and F24, regardless of dimension number. On other functions, ISSA tends to have comparable level of accuracy with some of its competitors. For example, both ISSA and CMFOA are able to obtain the exact optimal solution of F21 and F22; both ISSA and SSA have the same level of accuracy on F15, F18, and F23. It is noticeable that ISSA tends to get better performance in accuracy on more functions as the dimension number increases. This is mainly contributed by normal cloud model based flying squirrels’ random position generation and dimensionally enhanced search. These two strategies can help the flying squirrels to escape from local optimal.

Figures 4–6 show the recorded convergence characteristics of algorithms for several multimodal benchmark functions at* n* = 30, 50, and 100, respectively. It is evident that ISSA offers better global convergence rate and precision in comparison with other five algorithms among which both PSO and FOA are easy to be trapped to the local optimal and the rest three algorithms (IFFO, CMFOA, and SSA) produce fair convergence rates. It is interesting to note that SSA becomes much poorer as the dimension number increases, while ISSA still has excellent exploration ability and its convergence curve ranks No. 1 at all iterations in the case of* n* = 100. This is due to the incorporation of attributes regarding normal cloud model generators and search enhancement on each dimension.

**(a) F12**

**(b) F13**

**(c) F14**

**(d) F16**

**(e) F19**

**(f) F24**

**(a) F12**

**(b) F13**

**(c) F14**

**(d) F16**

**(e) F19**

**(f) F24**

**(a) F12**

**(b) F13**

**(c) F14**

**(d) F16**

**(e) F19**

**(f) F24**

##### 4.3. Test 3: CEC 2014 Benchmark Functions

Next, the benchmark functions used in IEEE CEC 2014 are considered for investigating the balance between exploration and exploitation of optimization algorithms. These functions include several novel basic problems (e.g., with shifting and rotation) and hybrid and composite test problems. In the present test, seven CEC 2014 functions are selected with at least one function in each group and the details are provided in Table 10. Statistical results obtained by different algorithms through 10 independent runs are recorded in Tables 11–13. It is worth mentioning that CEC 2014 functions are specifically designed to have complicated features, and thus it is difficult to reach the global optimal for all algorithms under consideration. Nevertheless, in contrast to other five algorithms, ISSA is able to get highly competitive results for most CEC 2014 functions in Table 10, especially at higher dimension number. As a matter of fact, ISSA always has the best solution at* n* = 100 although the solution is still far away from optimal. The results of convergence studies (Figures 7–9) show that ISSA has promising convergence performance with the comparison of other five algorithms. The superior performance of the proposed ISSA is mainly benefited from an equilibrium between global and local search abilities because of the use of the four strategies described in Section 3.

**(a) F26**

**(b) F27**

**(c) F28**

**(d) F29**

**(a) F26**

**(b) F27**

**(c) F28**

**(d) F29**

**(a) F26**

**(b) F27**

**(c) F28**

**(d) F29**

##### 4.4. Statistical Analysis

In order to analyze the performance of any two algorithms, the most frequently used nonparametric statistical test, Wilcoxon’s test [46], is considered for the present work and results are summarized in Tables 14–16 for* n* = 30, 50, and 100, respectively. The test is carried out by considering the best solution of each algorithm on each benchmark function with 10 independent runs and a significance level of *α* = 0.05. In Tables 14–16, ‘+’ sign indicates that the reference algorithm outperforms the compared one, ‘-’ sign indicates that the reference algorithm is inferior to the compared one, and ‘=’ sign indicates that both algorithms have comparable performances. The results of last row of the tables show that the proposed ISSA has a larger number of ‘+’ counts in comparison to other algorithms, confirming that ISSA is better than the other five compared algorithms under 95% level of significance.

The quantitative analysis is also carried out for six algorithms with an index of mean absolute error (MAE) which is an effective performance index for ranking the optimization algorithms and is defined by [47]where is the mean of optimal values, is the actual global optimal value, and is the number of samples. In the present work, is the number of benchmark functions. The MAE of all algorithms and their ranking for all functions are given in Table 17. It is clear to find that ISSA ranks No. 1 and provides the minimum MAE in all cases. ISSA reaches the optimum solution 653 times out of 960 runs (10 runs for each test function for* n* = 30, 50, and 100, respectively) and comes in the first rank as shown in Figure 10. It is concluded that ISSA provides the best performance in comparison to other five optimization algorithms.

#### 5. Conclusions

The SSA is a new algorithm for searching global optimization based on the food foraging behavior of the flying squirrels. To balance the exploration and exploitation capacities of the SSA, an improved SSA (ISSA) is proposed in this paper by introducing four strategies, namely, an adaptive predator presence probability, a normal cloud model generator, a selection strategy between successive positions, and enhancement in dimensional search. The adaptive strategy of predator presence probability assists to reach the potential search region at the early stage and then to implement the local search at the later stage. The normal cloud model is utilized to describe the randomness and fuzziness of the gliding behavior of the flying squirrel population. The selection strategy enhances the local search ability of an individual flying squirrel. In addition, enhancing dimensional search results in a better quality of the best solution in each iteration. Extensive comparative studies are conducted for 32 benchmark functions (including 11 unimodal functions, 14 multimodal functions, and 7 CEC 2014 functions). Results confirm that the proposed ISSA is a powerful optimization algorithm and in general significantly outperforms five state-of-the-art algorithms (PSO, FOA, IFFO, CMFOA, and SSA).

#### Data Availability

The data used to support the findings of this study are available from the corresponding author upon request.

#### Conflicts of Interest

The authors declare that they have no conflicts of interest.

#### Acknowledgments

This work is supported by a research grant from National Key Research and Development Program of China (project no. 2017YFC1500400) and the National Natural Science Foundation of China (51808147).