This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
1. Introduction
In modern societies where global resources are increasingly scarce, optimization has become one of the most important and hottest research topics [1]. It is in the core process of various engineering fields such as engineering, science, energy, and computer. With the increasing complexity of scientific and engineering problems, traditional mathematical methods sometimes cannot solve them well. Therefore, some scholars have proposed metaheuristic algorithms, such as particle swarm optimization (PSO) [2], bat algorithm (BA) [3], butterfly optimization algorithm (BOA) [4], flower pollination algorithm (FPA) [5], pigeon inspired optimization (PIO) [6], whale optimization algorithm (WOA) [7], gray wolf optimizer (GWO) [8], and teaching-learning-based optimization (TLBO) [9]. Compared with traditional algorithms, these intelligent algorithms can make up for the defects of the traditional algorithm in the problem of great complexity. However, they still have the problems of low solution accuracy and slow convergence speed.
Crow search algorithm (CSA) [10] is a new swarm intelligence optimization algorithm proposed by Askarzadeh in 2016. The algorithm has the advantages of simple structure, fewer control parameters, and easy implementation. Now it has been widely used to solve various practical optimization problems in chemical engineering and QSAR [11], image processing [12], feature selection [13], neural network and support vector machine [14], aircraft maintenance inspection [15], wireless sensor network [16], and other major engineering fields. However, like most optimization algorithms, crow search algorithm itself also has the defects of slow convergence speed and easy fall into local optimum.
In view of the shortcomings of crow search algorithm, many scholars have put forward their own improvement schemes, which can be roughly divided into two categories. One is to analyze and improve the parameters of the standard crow search algorithm, and the other is to integrate it with other intelligent algorithms to make up for the shortcomings of crow search algorithm. For the first kind of improvement, Wu et al. proposed a crow search algorithm incorporated in Levy flight (LFCSA) [17] and applied it to update the finite element model. The chaotic sequence was used to initialize the population, so that the particles were evenly distributed in the solution space and the diversity of the population was increased. Therefore, Liu et al. proposed the chaotic binary crow search algorithm (CBCSA) [18] for the discrete space, using it to solve the problem of {0–1} knapsack. By introducing adaptive step size, Mohammdi and Abdi proposed self-adaptive step size crow search algorithm (MCSA) [19] and applied it to nonconvex economic load scheduling. For the second kind of improvement, Xiao et al. [20] combined CSA with sine cosine algorithm to solve pressure vessel design problem. Arora et al. [21] combined the crow search algorithm with the gray Wolf algorithm and used it to solve the problem of feature selection.
All the above improved algorithms have improved the performance of the algorithm to some extent, but some improvements were only optimized for a certain strategy in the crow update mechanism or simply mixed optimization with other optimization algorithms. For example, LFCSA uses Levy flight strategy, CBCSA takes advantage of the particularity of chaos mapping, and MCSA introduces self-adaptive flight step. Although these improved strategies can make the algorithm jump out of local optimum better, they cannot make up for the slow convergence speed. Other improvements are simply hybrid optimizations with other algorithms. This kind of improvement scheme ignores the limitations of the fusion algorithm itself, which also makes the optimization ability of the improved algorithm have some defects. In response to these shortcomings, this article mainly improves the standard crow search algorithm from three aspects: increasing population diversity, self-adaptive awareness probability, and improved cross-pollination mechanism of flower pollination algorithm. The population is initialized by tent chaotic sequence so that the particles are evenly distributed in the search space, and the increase of population diversity enables the algorithm to better jump out of the local optimum and accelerate the convergence speed. The next strategies are self-adaptive awareness probability and improved cross-pollination mechanism. It is beneficial to balance the global search ability and local search ability of the crow search algorithm and avoid the blindness of updating the random search position of crows, thus improving the solution accuracy and convergence speed of the algorithm.
In Section 2 of the paper, we will review the crow search algorithm and the flower pollination algorithm. In Section 3, the improved strategy will be described to produce an improved crow search algorithm. In Section 4, the proposed algorithm will be tested by using 20 well-known benchmark functions and applied to a practical engineering problem. Finally, the conclusion is given in Section 5.
2. Overview of Crow Search Algorithm and Flower Pollination Algorithm
2.1. Crow Search Algorithm
The crow is a very clever bird, which can remember the face of human beings and warn its kind when encountering danger. One of the most obvious characteristics of the cleverness of crows is their ability to hide food and remember the location of the hidden food. At the same time, they will follow each other to get a better source of food, but when the crow finds itself followed by other crows, it will try to change the hidden place of its food to avoid food theft. Based on the living habits of crows, the crow search algorithm has the following principles:
(1) Crows are social animals
(2) Crows can remember the location of the hidden food
(3) Crows will follow each other and steal others’ food
(4) Crows do their best to protect their food from being stolen
Based on the four principles, the basic process of CSA is described as follows:
Step 1: initializing the parameters of CSA. These include population size (n), maximum iteration number (
Step 2: initializing the individual crows and memory matrix.
Step 3: evaluating the quality of each crow according to the fitness function.
Step 4: generating a new location for each crow in the
Case 1: crow
Case 2: crow j finds that crow
To sum up, the position update formula of crow
Here,
Step 5: checking whether the new position of each crow is feasible. If possible, change the crow’s position. Otherwise, it is not updated.
Step 6: calculating the fitness value of the new position of each crow.
Step 7: updating the memory matrix of each crow.
Step 8: repeating Steps 4–7 until the termination condition is reached.
[figure omitted; refer to PDF]
The mathematical model of the problem is as follows:
Table 10 shows the optimal values and values of decision variables obtained after 30 independent runs of different algorithms for deceleration design problems. The results are compared with those of CSO [26], Gandomi et al. [27], ABC [28], Akhtar et al. [29], and Montes et al. [30]. According to Table 10, IFCSA finds the optimal cost of 2896.26, which is the least expensive among the comparison algorithms. The solution to find the optimal value is as follows:
Table 10
Test results of different algorithms for speed reducer design.
IFCSA | CSO [26] | Gandomi et al. [27] | ABC [28] | Akhtar et al. [29] | Montes et al. [30] | |
Best | 2896.26 | 2996.60 | 3000.98 | 2997.06 | 3008.08 | 3025.01 |
3.500000 | 3.500000 | 3.501500 | 3.499999 | 3.506122 | 3.506163 | |
0.700000 | 0.700000 | 0.700000 | 0.700000 | 0.700006 | 0.700831 | |
17.00000 | 17.00000 | 17.00000 | 17.00000 | 17.00000 | 17.00000 | |
7.300000 | 7.308000 | 7.605000 | 7.300000 | 7.549126 | 7.460181 | |
7.800000 | 7.802000 | 7.818100 | 7.800000 | 7.859330 | 7.962143 | |
2.900000 | 3.350000 | 3.352000 | 3.350215 | 3.365576 | 3.362900 | |
5.286683 | 5.287000 | 5.287500 | 5.287800 | 5.289773 | 5.309000 |
5. Conclusions
By studying the principle and updating the formula of the standard crow search algorithm, IFCSA is proposed to solve the problem that the algorithm slowly converges and easily falls into local optimum in the later iteration. In this paper, so as to improve the convergence ability of the algorithm, the inverse incomplete gamma function is introduced to make the perceptual probability decrease nonlinearly. Aiming at the blindness of crows’ random search for location updating, a cross-pollination strategy with Cauchy mutation was introduced to make crows tend to take the best individual direction, thus obtaining the best value. The experimental results in this paper also show that the optimization performance of IFCSA is better than that of the original algorithm and other intelligent algorithms.
In future work, IFCSA will be used to solve more complex optimization problems, such as multiresource constrained project sequencing, image processing, and UAV path planning. IFCSA will be also used to solve more engineering examples, which is to provide reference value for engineering applications.
Acknowledgments
This work was supported by the National Natural Science Foundation of China (no. 61662005); Guangxi Natural Science Foundation (no. 2018GXNSFAA294068); Basic Ability Improvement Project for Young and Middle-Aged Teachers in Colleges and Universities in Guangxi (no. 2019KY0195); and Research Project of Guangxi University for Nationalities (no. 2019KJYB006).
[1] Y. Tadepalli, M. Kollati, S. Kuraparthi, P. Kora, A. K. Budati, L. Kala Pampana, "Content-based image retrieval using Gaussian–hermite moments and firefly and grey wolf optimization," CAAI Transactions on Intelligence Technology, vol. 6 no. 2, pp. 135-146, DOI: 10.1049/cit2.12040, 2021.
[2] J. Kennedy, R. Eberhart, "Particle swarm optimization," Proceedings of the IEEE International Conference On Neural Networks 1995, vol. 4, pp. 1942-1948, .
[3] X. S. Yang, X. He, "Bat algorithm: literature review and applications," International Journal of Bio-Inspired Computation, vol. 5 no. 3, pp. 141-149, DOI: 10.1504/ijbic.2013.055093, 2013.
[4] S. Arora, S. Singh, "Butterfly optimization algorithm: a novel approach for global optimization," Soft Computing - A Fusion of Foundations, Methodologies and Applications Archive, vol. 23 no. 3, pp. 715-734, DOI: 10.1007/s00500-018-3102-4, 2019.
[5] X.-S. Yang, "Flower pollination algorithm for global optimization," Proceedings of the 11th International Conference on Unconventional Computation and Natural Computation UCNC’12, pp. 240-249, DOI: 10.1007/978-3-642-32894-7_27, .
[6] H. Duan, P. Qiao, "Pigeon-inspired optimization: a new swarm intelligence optimizer for air robot path planning," International Journal of Intelligent Computing and Cybernetics, vol. 7 no. 1, pp. 24-37, DOI: 10.1108/ijicc-02-2014-0005, 2014.
[7] S. Mirjalili, A. Lewis, "The whale optimization algorithm," Advances in Engineering Software, vol. 95 no. 95, pp. 51-67, DOI: 10.1016/j.advengsoft.2016.01.008, 2016.
[8] S. Mirjalili, S. M. Mirjalili, A. Lewis, "Grey wolf optimizer," Advances in Engineering Software, vol. 69, pp. 46-61, DOI: 10.1016/j.advengsoft.2013.12.007, 2014.
[9] R. V. Rao, V. Patel, "An elitist teaching-learning-based optimization algorithm for solving complex constrained optimization problems," International Journal of Industrial Engineering Computations, vol. 3 no. 4, pp. 535-560, DOI: 10.5267/j.ijiec.2012.03.007, 2012.
[10] A. Askarzadeh, "A novel metaheuristic method for solving constrained engineering optimization problems: crow search algorithm," Computers & Structures, vol. 169,DOI: 10.1016/j.compstruc.2016.03.001, 2016.
[11] G. Y. Abdallh, Z. Y. Algamal, "A QSAR classification model of skin sensitization potential based on improving binary crow search algorithm," Electronic Journal of Applied Statistical Analysis, vol. 13 no. 1, pp. 86-95, 2020.
[12] D. Oliva, S. Hinojosa, E. Cuevas, G. Pajares, O. Avalos, J. Gálvez, "Cross entropy based thresholding for magnetic resonance brain images using crow search algorithm," Expert Systems with Applications, vol. 79, pp. 164-180, DOI: 10.1016/j.eswa.2017.02.042, 2017.
[13] R. C. T. D. Souza, D. S. C. Leandro, A. D. M. Camila, P. Juliano, "A V-shaped binary crow search algorithm for feature selection," Proceedings of the 2018 IEEE Congress on Evolutionary Computation (CEC),DOI: 10.1109/cec.2018.8477975, .
[14] R. S. Chithra, P. Jagatheeswari, "Fractional crow search-based support vector neural network for patient classification and severity analysis of tuberculosis," IET Image Processing, vol. 13 no. 1, pp. 108-117, DOI: 10.1049/iet-ipr.2018.5825, 2019.
[15] N. Siswanto, A. N. Adianto, H. A. Prawira, A. Rusdiansyah, "A crow search algorithm for aircraft maintenance check problem and continuous airworthiness maintenance program," Jurnal Sistem Dan Manajemen Industri, vol. 3 no. 2, pp. 115-123, DOI: 10.30656/jsmi.v3i2.1794, 2019.
[16] P. K. Kodoth, G. Edachana, "An energy efficient data gathering scheme for wireless sensor networks using hybrid crow search algorithm," IET Communications, vol. 15 no. 7, pp. 906-916, DOI: 10.1049/cmu2.12128, 2021.
[17] H. Wu, P. Wu, K. Xu, F. Li, "Finite element model updating using crow search algorithm with Levy flight," International Journal for Numerical Methods in Engineering, vol. 121 no. 13, pp. 2916-2928, DOI: 10.1002/nme.6338, 2020.
[18] X. Liu, Y. He, C. Wu, L. Li, "Chaotic binary crow algorithm for 0-1 knapsack problem," Computer Engineering and Applications, vol. 54 no. 10, pp. 173-179, 2018.
[19] F. Mohammadi, H. Abdi, "A modified crow search algorithm (MCSA) for solving economic load dispatch problem," Applied Soft Computing, vol. 71, pp. 51-65, DOI: 10.1016/j.asoc.2018.06.040, 2018.
[20] Z. Xiao, S. Liu, F. Han, J. Yu, "Crow search algorithm based on directing of sine cosine algorithm," Computer Engineering and Applications, vol. 55 no. 21, pp. 52-59, 2019.
[21] S. Arora, H. Singh, M. Sharma, S. Sharma, P. Anand, "A new hybrid algorithm based on grey Wolf optimization and crow search algorithm for unconstrained function optimization and feature selection," IEEE Access, vol. 7, pp. 26343-26361, DOI: 10.1109/access.2019.2897325, 2019.
[22] S. Zhang, D. Gao, "Flower pollination algorithm based on dynamic adjustment and collaborative search," Computer Engineering and Applications, vol. 55 no. 24, pp. 46-53, 2019.
[23] S. Mirjalili, A. H. Gandomi, S. Z. Mirjalili, S. Saremi, H. Faris, S. M. Mirjalili, "Salp swarm algorithm," Advances in Engineering Software, vol. 114, pp. 163-191, DOI: 10.1016/j.advengsoft.2017.07.002, 2017.
[24] Z. Xin, D. Zhang, Z. Chen, H. Zhang, W. Yan, "Shared crow algorithm using multi-segment perturbation," Computer Engineering and Applications, vol. 56 no. 2, pp. 55-61, 2020.
[25] J. Derrac, S. García, D. Molina, F. Herrera, "A practical tutorial on the use of nonparametric statistical tests as a methodology for comparing evolutionary and swarm intelligence algorithms," Swarm and Evolutionary Computation, vol. 1 no. 1,DOI: 10.1016/j.swevo.2011.02.002, 2011.
[26] X. Meng, Y. Liu, X. Gao, H. Zhang, "A new bio-inspired algorithm: chicken swarm optimization," Proceedings of the International Conference in Swarm Intelligence, pp. 86-94, DOI: 10.1007/978-3-319-11857-4_10, .
[27] A. H. Gandomi, X.-S. Yang, A. H. Alavi, "Cuckoo search algorithm: a metaheuristic approach to solve structural optimization problems," Engineering With Computers, vol. 29 no. 1, pp. 17-35, DOI: 10.1007/s00366-011-0241-y, 2013.
[28] B. Akay, D. Karaboga, "Artificial bee colony algorithm for large scale problems and engineering design optimization," Journal of Intelligent Manufacturing, vol. 23 no. 4, pp. 1001-1014, DOI: 10.1007/s10845-010-0393-4, 2012.
[29] S. Akhtar, K. Tai, T. Ray, "A SOCIO-behavioural simulation model for engineering design optimization," Engineering Optimization, vol. 34 no. 4, pp. 341-354, DOI: 10.1080/03052150212723, 2002.
[30] E. Mezura-Montes, C. A. Coello Coello, R. Landa-Becerra, "Engineering optimization using simple evolutionary algorithm," Proceedings of the 15th IEEE International Conference on Tools with Artificial Intelligence, pp. 149-156, .
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer
Copyright © 2021 Qian Cheng et al. This is an open access article distributed under the Creative Commons Attribution License (the “License”), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License. https://creativecommons.org/licenses/by/4.0/
Abstract
Crow search algorithm (CSA) is a new type of swarm intelligence optimization algorithm proposed by simulating the crows’ intelligent behavior of hiding and retrieving food. The algorithm has the characteristics of simple structure, few control parameters, and easy implementation. Like most optimization algorithms, the crow search algorithm also has the disadvantage of slow convergence and easy fall into local optimum. Therefore, a crow search algorithm based on improved flower pollination algorithm (IFCSA) is proposed to solve these problems. First, the search ability of the algorithm is balanced by the reasonable change of awareness probability, and then the convergence speed of the algorithm is improved. Second, when the leader finds himself followed, the cross-pollination strategy with Cauchy mutation is introduced to avoid the blindness of individual location update, thus improving the accuracy of the algorithm. Experiments on twenty benchmark problems and speed reducer design were conducted to compare the performance of IFCSA with that of other algorithms. The results show that IFCSA has better performance in function optimization and speed reducer design problem.
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer