Abstract
Crow search algorithm (CSA) is a recently proposed metaheuristic optimizer inspired by the intelligent behaviour of crows with attributes like simplicity and ease of implementation. CSA is claimed superior and more effective in optimizing a variety of constrained engineering design problems in comparison to other state-of-art algorithms. In the present work, CSA is applied to high dimensional optimization problems and it is found that CSA suffers from premature convergence which leads to lower precision and less accuracy in optimization or sometimes failure. Therefore an improvement in CSA (ICSA) is suggested to solve high-dimensional global optimization problems efficiently. The balance between exploitation and exploration capabilities of CSA is improved by introducing experience factor, adaptive adjustment operator and Lévy flight distribution in position updating mechanism of crows. Lévy flight distribution promotes continuous exploration of search space and prevents premature convergence by escaping from local optimum at any stage. The performance of ICSA is validated on high-dimensional nonlinear scalable benchmark test functions. The proposed improvement in CSA makes it highly competitive and less sensitive to function dimensions. ICSA is also found superior to other well established optimizers.
Introduction
In the current competitive world, resources are depleting day by day which forces people to make maximum profit at minimal cost and resources. Mathematical modelling of these issues evolves into maxima and minima problems, generally known as optimization problems. Several methods available to solve these optimization problems are broadly divided into two categories: classical approaches and modern metaheuristic algorithms. Classical approaches generally follow a step by step procedure and provide same solution every time for the same initial point. On the other hand, modern metaheuristic algorithms use stochastic distributions and generally do not provide same solution under same circumstances. In last few decades, a revolutionary change is observed in the field of optimization due to remarkable development of nature inspired metaheuristic search algorithms. This is due to the reason that classical methods make the task of optimization quite tedious and cumbersome especially when the problem is highly complex as well as non-linear. In contrary to this, nature inspired metaheuristics offer effortless handling and less time consumption to solve any complex engineering design problem due to their global search capability. As an illustration, knapsack problem is solved by novel global harmony search algorithm [1]. S. Talatahari et al. proposed the optimum design of truss structures using multi-stage particle swarm optimization (MSPSO) [2]. Task assignment problem is another complex problem and effectively solved by an improved differential evolution algorithm (IDE) [3]. Moreover, several other complicated engineering design problems have also been efficiently solved by metaheuristic search algorithms [4, 5]. Generally these metaheuristics mimic the natural behaviour of living things [6] and take benefit of meaningful information obtained from the complete population of solutions.
Genetic Algorithm (GA) is one of the most popular heuristic search algorithms inspired by nature’s evolutionary behaviour [7]. After the development of GA, numerous heuristic algorithms were proposed for optimization problems. In 1995 Kennedy et al. proposed Particle Swarm Optimization (PSO) based on foraging and navigation behaviour of bird flocks [8]. The algorithm was tested for optimization of continuous nonlinear functions and multidimensional problem of adjusting weights to train a feedforward multilayer perceptron neural network (NN). Dorigo et al. investigated Ant Colony Optimization (ACO) algorithm [9], which simulates the intelligent food searching behaviour of ants. ACO demonstrated excellent performance in solving symmetric and asymmetric travelling salesman problems. Karaboga [10] introduced Artificial Bee Colony (ABC) algorithm based on clever foraging behaviour of honey bee swarm. The author claimed promising performance of the algorithm while evaluating unimodal and multimodal benchmark functions. Some of the recent developments are Bat Algorithm (BA) [11], Firefly Algorithm (FA) [6], Flower Pollination Algorithm (FPA) [12], Cuckoo Search Algorithms (CS) [13], Gravitational Search Algorithm (GSA) [14], Ant Lion Optimizer (ALO) [15], Water Cycle Algorithm (WCA) [16], Dragonfly Algorithm (DA) [17] etc.
Till now researchers have utilized only limited characteristics found in nature and therefore Alireza Askarzadeh [18] proposed a new metaheuristic optimizer based on the intelligent behaviour of crows called as Crow Search Algorithm (CSA). The performance of CSA was claimed superior and more effective in optimizing a variety of constrained engineering design problems in comparison to other state-of-art algorithms. Unlike the gradient search methods which require derivative information, CSA uses stochastic random search which is an advantage especially when function is not differentiable, or is not continuous. Apart from this CSA needs only two control variables i.e. awareness probability and flight length. Generally each metaheuristic technique adopts best features available in nature. Two eminent features are adaptability and choice of the fittest which may be interpreted as exploration and exploitation respectively. During exploration the algorithm is directed far away from the current best solution i.e. unvisited search regions are explored whereas in case of exploitation the search is focused around the neighbourhood of previously visited solutions with an expectation of more fit solution.
Even though CSA seems to be a promising optimization technique but it is observed in the present work that sometimes it may get trapped in local optimum regions and fail to achieve the global optimal solution due to its simple solution updating mechanism. This problem is observed especially while solving large scale global optimization problems that involve high-dimensions. The possible causes behind this may be its low global exploration efficiency and lack of balance between exploration and exploitation phases. These issues are well addressed in the present work by modifying the solution updating mechanism of CSA. In this study global exploration efficiency of CSA is strengthened, by incorporating Lévy flight [13] behaviour of birds and an adaptive adjustment operator to enhance the process of randomization. Lévy flight is a generalized Brownian motion which comprises non-Gaussian randomly distributed step sizes. It helps in finding new candidate solutions far away from the current best solution. Further the adjustment operator initially motivates the global search at large scale but as the algorithm progresses its effect is minimized in order to stabilize the search. Apart from this, exploitation phase is made (i.e. local search) more efficient by incorporating experience factor in solution updating mechanism of standard CSA. This helps in seeking the required balance between exploration and exploitation phases. The experience factor correlates the previous experiences of crow regarding robbery. The improved CSA (ICSA) is tested on 15 high-dimensional nonlinear scalable benchmark functions and compared with some well-known optimizers.
Moreover, CSA offers attributes like simplicity and ease of implementation due to less adjustable parameters in comparison to popular optimizers like GA, PSO and Harmony Search (HS) [18] which motivates for the present work. Apart from this “No free lunch theorem” [19] also encourages the researchers to develop new and improved algorithms which can solve various optimization problems. Main contributions of the proposed work are as follows: A maiden attempted has been made to explore and improve the CSA for high-dimensional optimization problems. Basic framework of CSA is extended for unconstrained optimization problems. An improved balance between exploration and exploitation is achieved through experience factor, Lévy distribution and adaptive adjustment operator. Rigorous comparative analysis is performed on the basis of statistical measures as well as average CPU time.
Rest of the paper is organized as follows. Section 2 presents the details of crow search algorithm. Section 3 explains the problem formulation. Section 4 describes the proposed modification in CSA. Section 5 discusses the comparative analysis of ICSA with existing methods on high-dimensional benchmark test functions. Finally, the work is concluded in Section 6.
Overview of Crow Search Algorithm
Crows are known for their cleverness and can communicate in a sophisticated manner, remember faces and use tools. That is why they have been recognized as one of the most intelligent animals found on the planet. The basic concept behind the algorithm is that crows store their surplus food secretly at hiding locations and retrieve it whenever needed. They can recall their food hiding places even after several months. Crows observe food hiding places of other birds and steal their food. To find the food hiding locations of crows is a tough task as they can make fool by going to other location in case they know that someone is following. CSA is formulated on the following assumptions [18]: Crows are generally found in flocks. They memorize their food hiding locations. They follow each other to rob food. They guard their food stores from being robbed by using probability.
It is considered that crows hide their food in an n-dimensional search environment. Let us consider N
c
number of crows i.e. flock size is N
c
. The current location of crow k at i
th
iteration can be defined as vector xk,i:
Suppose at ith iteration, crow k needs to visit its food hiding location, Mk,i. At the same time (iteration) crow q decides to chase crow k in order to access the food hiding location of crow k. In this situation, two cases may be considered: Case 1: Crow k may not be aware that it is being followed by crow q. As a consequence, crow q will see the food hiding location of crow k and the new position of crow q will be obtained by the following equation:
Case 2: Crow k is aware that crow q is following. As an outcome, crow k will try to defend its reserved food source from being robbed and it will go to some random location in search space, in order to mislead crow q.
On the basis of these cases, the position updating mechanism of crows can be formulated as follows:
Standard CSA was tested on five unconstrained optimization problems i.e. Sphere, Rosenbrock, Griewank, Schwefel and Ackley function with 10 dimensions [18]. In order to solve the challenging real world problems a metaheuristic must be tested for high-dimensional benchmark functions. Therefore, in the present work CSA is tested on five previously mentioned test functions [18] with higher dimension size up to 100. To perform this experimentation CSA is executed for 30 independent runs and in each run it is supposed to perform 40000 number of function evaluations. Table 1 shows the recorded mean values and standard deviation (SD) for every test function. It is observed from the results that increase in problem dimension, increases the mean and standard deviation and CSA could not find the optimal solution in most of the cases. Hence the performance of CSA depends on dimension, which indicates that CSA has low global exploration efficiency. The rise in standard deviation indicates that there is a lack of balance between exploration and exploitation phases and hence motivates to improve the algorithm.
Performance of CSA on benchmark functions* for different dimensions
Performance of CSA on benchmark functions* for different dimensions
*See Appendix A for benchmark functions.
Equilibrium between exploitation and exploration phases is always required for global optimization so as to solve high-dimensional optimization problems [20, 21]. Besides this, a complete search space must be explored to obtain a guaranteed optimal solution. A careful observation of position updating mechanism in standard CSA (Equations (3a) & (3b)) gives the complete insight for the required modification. In case 1 (Equation (3a)), CSA tends to search in local optimal region where the current best solution exists. The boundaries of local search regions can be expanded slightly which may provide better exploitation. On the other hand, case 2 (Equation (3b)) diverts the search far away from the current best solution which means CSA tries to find other best solutions (global search). As per Equation (3b) the global search solely depends on the random walk and fast convergence cannot be guaranteed. Hence there is a scope of improvement in solution updating strategy without any loss in the attributes i.e. simplicity and effortless implementation of standard CSA.
Modified position updating mechanism
In order to design any potentially acclaimed meta-heuristic algorithm there should be a proper balance between exploitation and exploration. There is no thumb rule to solve this issue [22], therefore it becomes purely an experimental or observational exercise. The standard CSA also suffers with this problem. The improvement in exploitation phase refers to intensifying search in the vicinity of best possible solutions by increasing search area in the neighbourhood of best possible solutions. This is achieved by the introduction of experience factor. Further the increase in problem dimension shows premature convergence in CSA which indicates lack of diversity in new candidate solutions. Therefore diversification in generating new candidate solutions is improved by considering Lévy flight. Experience factor A precise observation of Equation (3a) reveals that search boundary can be extended by introducing a fractional constant called as experience factor (ef) which leads to a modified rule for updating the position of crow q in case 1 (Equation (4)): Consider a 3-dimensional optimization problem to minimize Lévy Flight The second case of standard CSA is designed to produce any random location in search space using uniform distribution (Equation (3b)) and may be represented by the following expression:

Improvement in exploitation using experience factor (ef).
The effect of different ef values on the performance of ICSA on three benchmark functions* with 50 dimensions
*See Appendix A for benchmark functions.
The following equation can be used to generate new positions of crows:

Exploration of search space with Lévy flight inspired behaviour of crows.
The changes in position updating mechanism of crow search algorithm leads to an improved CSA i.e. ICSA. The flow chart of the proposed ICSA discussed above is presented in Fig. 3 and the results obtained are given in next section.

Flowchart of ICSA.
To investigate the effectiveness and stability of the proposed ICSA, experimental tests are designed and conducted on fifteen well-known high-dimensional nonlinear scalable benchmark functions taken from [28–30]. Two types of functions are considered i.e. unimodal and multimodal, listed in Appendix A (Table 12). Unimodal functions have only one optimum and are used to examine the exploitation capabilities of optimization algorithms. On the other hand, multimodal functions have several local optima and are suitable for investigating the exploration capabilities of optimization algorithms [31]. The simulation is carried out in MATLAB on PC having 32-bit operating system and Intel(R) Core(TM) 2 Duo CPU T5870 processor operated on 2.00 GHz frequency with 3 GB RAM.
Experimental test 1
In this experimental test the performance of ICSA is compared with standard CSA for fifteen benchmark functions with high dimensions i.e. 50, 100 and 500. For fair comparison, common parameters of the two algorithms are taken to be identical i.e. awareness probability (ap) is 0.1, flight length (FL) is taken as 2 while maximum number of function evaluations are considered to be 40000. For an effective statistical analysis, both the algorithms are executed for 30 independent runs for every benchmark function. The results in terms of mean and standard deviation of solutions are recorded in Table 3. For the sake of clarity in comparison, results with values 10E-14 or less are treated as optimal value. It is observed from Table 3 that ICSA outperforms the standard CSA on all 15 benchmark functions with 50, 100 and 500 dimension size. In terms of optimization accuracy, ICSA could achieve global optimum for functions F1, F2, F3, F4, F5, F6, F8, F9, F10, F12 and F14 i.e. on 11 cases out of 15, while CSA could not find global optimum in any case. Both the algorithms show premature convergence on function F7, F11, F13 and F15, however ICSA is still closer to the optimal region as compared to CSA. Apart from this ICSA is also found highly stable and consistent as it offers very low SD in almost every case except for function F11. The results of ICSA for F11 function are quite deviated, but far better than the standard CSA. It is also observed that ICSA shows consistent performance on increasing the dimensions as variation in mean value and standard deviation is very less. This indicates that the balance between exploration and exploitation phases is improved and dimensional dependency is also reduced.
Comparison of CSA and ICSA for high-dimensional problems
Comparison of CSA and ICSA for high-dimensional problems
Besides the statistical measures like mean and standard deviation values, commonly used non-parametric statistical test i.e. Wilcoxon’s rank test is also performed to compare the results of ICSA and CSA. The test is conducted with 5% significance level i.e. α = 0.05 and the obtained p-values are presented in Table 4 for ICSA vs CSA for 50, 100 and 500 dimensions. All p values are less than 0.05 which strongly indicates that the results of ICSA are statistically significant and not occurred just by coincidence. The sign ‘+’ indicates that the difference is of statistical interest while sign ‘-’ shows that difference is not statistically significant. The behaviour of search agents over the course of iterations is studied to analyse the reason of improved performance. The search history of ICSA is recorded for this purpose while solving a highly complex multimodal function F14 (Fig. 4 (a)). It is revealed from the results (Fig. 4 (c)-(f)) that in starting phase, ICSA explores the promising regions of search space and as the algorithm progresses it starts exploitation near the global optima. Trajectory of the first variable for first search agent (Fig. 4 (b)) also confirms that ICSA first explores and then exploitation is done. In other words the search agent faces abrupt fluctuations in early stage of optimization and these variations are suppressed gradually over the course of iterations. The above facts show that ICSA maintains a proper balance between exploration and exploitation phases and hence provides the improved performance.
Results of Wilcoxon’s test for ICSA vs CSA

(a) 2-D version of function F14, (b) Trajectory of the first variable for first search agent while solving F14 and the positions of individual crow after (c) 1 st iteration, (d) 10 th iteration, (e) 20 th iteration and (f) 30 th iteration.
The effectiveness of ICSA is demonstrated by comparing it with other existing state-of-art algorithms like DA, BA, FA, PSO, GA including CSA. The test is performed on the same benchmark functions with dimension size 30 which is relatively low in comparison to the experimental test 1. The commonly defined parameters used for various algorithms and their details are presented in Table 5. All the algorithms are executed for 30 independent runs with 40000 number of function evaluations for fair comparison. The best, mean, worst, standard deviation and successful runs (SR) offered by the algorithms are recorded for each test function and presented in Tables 6 and 7. It is observed that ICSA shows superior performance in comparison to the other six optimization algorithms on all benchmark functions except F13. ICSA successfully found global optimum for 13 cases out of 15. However other algorithms show premature convergence in almost all cases. FA could achieve global optimum for functions F3 and F7 while CSA achieves global optimum only for function F3. None of the algorithms could find global optimum for functions F11 and F13. In case of function F11, ICSA is quite close to optimal region while for function F13, FA defeats the other algorithms but could not achieve the global optimum. Quantitative analysis of the algorithms is carried out by computing the mean absolute error (MAE) for all 15 cases. MAE is an effective and valid performance index used in statistical analysis which indicates the difference of results from actual values [32]. The MAE can be defined as follows:
where m k denotes the mean of optimal results produced by an algorithm, o k is actual value of global optimum for the function under optimization and n indicates the total number of benchmark functions considered for study. Average error rates offered by the algorithms on 15 benchmark functions are presented in Table 8. The algorithms are ranked on the basis of MAE as shown in Table 9. ICSA offered minimum MAE and hence ranked 1. The consistency of any metaheuristic can be measured by calculating the total number of successful runs and therefore each algorithm is executed 450 times i.e. 30 runs for each benchmark function. More number of successful runs means that a particular metaheuristic obtained global optimum solution almost every time and is highly consistent or reproducible. It is revealed from the results (Fig. 5) that ICSA has a very good reproducibility as it achieved the global optimum solution 381 times out of 450 runs and hence ranked one. FA is ranked second as it could find 60 global optimums while CSA achieves 7 global optimums. The DA, BA, PSO and GA failed to achieve global optimums in 450 runs. To show the statistical significance between the proposed ICSA and other existing algorithms, Wilcoxon’s ranks test is also performed and the results are given in Table 10. The sign ‘+’ in Table 10 indicates that null hypothesis is rejected which means the first algorithm outperforms the second one. Hence it can be concluded that ICSA performs better than all six algorithms by considering the 5% level of significance. Apart from statistical analysis, average CPU time consumption of any optimization algorithm is also an important performance measure. Therefore average CPU time (Avg. time) for all the algorithms is evaluated for 30 trial runs and results are recorded in Tables 6 and 7. It is observed that standard CSA takes least average CPU time for most of the optimization problems (13 cases out of 15) as compared to other algorithms. On the other hand, the proposed ICSA is slightly slower as compared to CSA for same number of runs due to Lévy function calculation. However, ICSA offers consistency and accuracy for all the test cases.

Comparison of algorithms in finding the global optimal solution out of 450 runs.
Parameter settings used for DA, BA, FA, PSO and GA during experimental test 2
Results obtained by ICSA, CSA, DA, BA, FA, PSO and GA on 15 benchmark functions
Results obtained by ICSA, CSA, DA, BA, FA, PSO and GA on 15 benchmark functions
Average error rates offered by all the algorithms on 15 benchmark problems
Rank of algorithms for all functions with 30 dimension using MAE
Results of Wilcoxon’s test for ICSA against the other six algorithms for 15 functions
Comparison of modified algorithms
To investigate the performance of proposed ICSA at run time for high-dimensional benchmark functions, a graphical comparison analysis is performed by plotting the convergence curves of ICSA and other employed algorithms (Figs. 6 and 7). It is observed that ICSA achieves accurate global optimal results with significantly accelerated convergence rate for all benchmark functions (except F11 and F13) while standard CSA and other algorithms trap in local optimal regions with poor convergence rate. Only ICSA and FA successfully find global optimum for function F7 but ICSA depicts better convergence rate (Fig. 6 (g)). In case of F11 all the algorithms stuck in near optimal region but ICSA minimizes the test function with fast convergence rate. ICSA traps in local minima on function F13 while FA is still exploring the search space and achieves only near global optimal region (Fig. 7 (e)). The analysis of convergence characteristics proves that the proposed technique offers quick convergence and achieves optimal results by continuous exploration of search space whereas standard CSA and other state-of-art algorithms trap in local optimums. The fast convergence of ICSA allows less number of iterations for optimization. Thus overall time taken by ICSA for optimization will be less and increase in computational time is compensated by fast convergence. It is obvious that the improved performance is achieved with slightly increased computational effort.
The improved balance between exploration and exploitation phases results in enhanced performance of the proposed algorithm. During exploration phase population diversity is achieved by unique combination of Lévy flight operator and adaptive flight adjustment operator. This combination redirects the search in the unexplored regions of the search space. Thus new candidate solutions are generated which increased population diversity and premature convergence is prevented. Further experience factor enhances the accuracy by improving the exploitation phase and thus accelerated convergence is achieved. The viability of proposed modifications is also evaluated on other evolutionary methods as discussed in the next section.

The convergence curves of ICSA and other methods (a) F1, (b) F2, (c) F3, (d) F4, (e) F5, (f) F6, (g) F7 and (h) F8.

The convergence curves of ICSA and other methods (a) F9, (b) F10, (c) F11, (d) F12, (e) F13, (f) F14 and (g) F15.
As discussed previously there is no thumb rule to achieve a proper balance between exploration and exploitation while designing or modifying any evolutionary method. The algorithms involving random probability distributions may be modified using Lévy distribution. Further the updating mechanism of parameters in an algorithm may be improved using the concept of experience. In this work, these modifications are attempted on GA and FA and their modified versions are named as MGA and MFA respectively. The mutation operation of GA uses uniform distribution which is replaced by Lévy distribution in MGA. On the other hand, in FA [33] the movement of i
th
firefly is determined by following Equation
The present work focuses on the improved version of single-objective CSA. However the implementation, testing and viability of multi-objective CSA for high dimensional problems with the proposed modifications is still to be investigated and may be considered as a new research direction. In future ICSA can be extended for solving high dimensional multi-objective optimization problems with Pareto front solution. The improved version can be compared with its standard multi-objective variant as well as other existing multi-objective optimization algorithms.
In this paper, a novel metaheuristic search technique, ICSA is proposed for high-dimensional global optimization problems. The global search capability of standard CSA is improved by including Lévy flight. Additionally, the convergence efficiency is enhanced by incorporating experience factor and adaptive adjustment operator in the position updating mechanism of CSA. A test bed of 15 benchmark functions each with 50, 100 and 500 dimensions is used to evaluate the performance of proposed ICSA. The simulation results show that ICSA is better than CSA in terms of stability, search ability and convergence speed. Further ICSA shows superior performance on almost every benchmark function in comparison to other existing optimizers like DA, BA, FA, PSO and GA. Hence it is concluded from the results that ICSA provides better and robust optimization of high-dimensional problems while retaining simplicity and ease of implementation features of CSA. In future the proposed technique will also be tested on more challenging large scale optimization problems provided in CEC2008 and CEC2010.
Footnotes
Appendix A. Benchmark functions
Benchmark functions
| Function | Range | F (x*) |
| [-100, 100] | 0 | |
| [-100, 100] | 0 | |
| [-1, 1] | 0 | |
| [-32, 32] | 0 | |
| [-600, 600] | 0 | |
| [-100, 100] | 0 | |
| [-100, 100] | 0 | |
| [-10, 10] | 0 | |
| [-5, 10] | 0 | |
| [-10, 10] | 0 | |
| [-10, 10] | 0 | |
| [-1, 1] | 0 | |
| [-10, 10] | 0 | |
| [-5.12, 5.12] | 0 | |
| [-100, 100] | 0 |
