A Simplified Fish School Search Algorithm for Continuous Single-Objective Optimization
Abstract
:1. Introduction
- Analyse the original FSS to identify critical elements that drive its performance and refine or eliminate non-essential components.
- Reduce the number of fitness evaluations per iteration by redesigning the interplay between the fish movement operators.
- Decrease the number of parameters to make it less susceptible to performance issues due to improper parametrization.
2. Fish School Search (FSS)
- Individual movement : This is a random search in which each fish randomly chooses a new position in its neighbourhood. It causes diversity and triggers the other operators. It is executed according to Equation (1):
- Feeding operator (): This updates the fish weight and occurs after the individual movement. Firstly, the new position is evaluated according to the fitness obtained in the previous movement and compared to the fitness of the current position , according to Equation (2):The value is used to update the fish weight, as shown in Equation (3):Equation (3) shows that the weight of the fish increases according to the success rate achieved by the individual movement. The fish will move to the new position if the movement elevates its fitness or, in other words, if the new position is better than the current one (greedy search).
- Instinctive collective movement (): This movement is influenced by the fish who successfully update their fitness from the individual movement. All the fish perform this movement, calculated via Equation (4):So, the entire school has its position updated by Equation (5):
- Volitive collective movement (): This second collective movement is performed according to the overall success rate of the fish school, measured by the sum of the fish weights. If the total school weight has increased (), this means that the current search was successful. So, the school should contract to improve the exploitation behaviour. However, if the school weight has decreased (), it should expand to increase the exploration of the search space. This movement is executed according to the school barycenter calculated via (6):If the weight of the school grows (), the fish’s positions are updated according to Equation (7):If not (), new positions are produced by (8):
Algorithm 1: FSS pseudocode. |
3. The Proposed Fish School Search
- Individual Displacement : For each fish in the school, a random value is drawn, generated by a uniform distribution in the interval [0, 1]. If the probability of the fish i is greater than the value generated, then the displacement is calculated using Equation (9). Otherwise, the fish does not perform an individual displacement.Equation (10) calculates the fish selection probability.
- Instinctive Displacement : For each fish that has improved in the school, the new position is calculated using the Equation (11):
- Volitive Collective Displacement : For each fish in the school, the displacements are generated by Equation (12):
Algorithm 2: SFSS pseudocode. |
3.1. SFSS: Trials
3.1.1. Movements Trials
- A roulette wheel is used to select a fish that will try to move and another roulette is used to choose a fish that will attract fish. The fish moves if the new location is better than the previous one.
- This is similar to the previous one, but instead of a roulette wheel to select a fish that will try to move, all fish try to move.
- All fish try to move, and selecting a random fish from the school will attract fish.
- A new position is generated in all dimensions vs. modifying only one random dimension.
3.1.2. Feeding Operator Trials
- Exponential weight gain and loss:
- Nonlinear weight gain attempt 1:
- Nonlinear weight gain attempt 2:It was similar to the previous one but with an addition operation instead of multiplication between the normalized variation of the delta cost and the last term.
- Nonlinear weight gain attempt 3:
- Nonlinear weight gain attempt 4:
- Nonlinear weight gain attempt 5:All the exponential weight gain attempts produced similar results. For this reason, the criteria for selecting one of the approaches were simplicity and computational cost.
4. Case Study
- Calculate the function complexity by computing the time of 10,000 evaluations for the problem i.
- Compute the algorithm complexity by computing the time of 10,000 evaluations for the problem i. To accommodate variations in performance due to the algorithms’ stochastic nature, is the average of 15 runs.
- The final complexity is given by .
5. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
Abbreviations
ABC | Artificial Bee Colony |
EAs | Evolutionary Algorithms |
FSS | Fish School Search |
GAs | Genetic Algorithms |
PSO | Particle Swarm Optimization |
SFSS | Simplified Fish School Search |
SI | Swarm Intelligence |
wFSS | Weight-based Fish School Search |
References
- Holland, J.H. Genetic algorithms. Sci. Am. 1992, 267, 66–73. [Google Scholar] [CrossRef]
- Eberhart, R.; Kennedy, J. Particle swarm optimization. In Proceedings of the IEEE International Conference on Neural Networks, Perth, Australia, 27 November–1 December 1995; Volome 4, pp. 1942–1948. [Google Scholar]
- Karaboga, D.; Basturkl, B. A powerful and efficient algorithm for numerical function optimization: Artificial bee colony (abc) algorithm. J. Glob. Optim. 2007, 39, 459–471. [Google Scholar] [CrossRef]
- Bastos-Filho, C.J.A.; de Lima-Neto, F.B.; Lins, A.J.D.C.C.; de Lacerda, M.G.P.; da Motta Macedo, M.G.; de Santana Junior, C.J.; Siqueira, H.V.; da Silva, R.C.L.; Neto, H.A.; de Melo Menezes, B.A.; et al. Fish School Search: Account for the First Decade. In Handbook of AI-Based Metaheuristics; CRC Press: Boca Raton, FL, USA, 2021; pp. 21–42. [Google Scholar]
- Schmitt, L.M. Theory of genetic algorithms. Theor. Comput. Sci. 2001, 259, 1–61. [Google Scholar] [CrossRef]
- Kumar, A. Encoding schemes in genetic algorithm. Int. J. Adv. Res. Eng. 2013, 2, 1–7. [Google Scholar]
- Sousa-Ferreira, I.; Sousa, D. A review of velocity-type pso variants. J. Algorithms Comput. Technol. 2017, 11, 23–30. [Google Scholar] [CrossRef]
- Filho, C.J.B.; Neto, F.B.d.; Lins, A.J.; Nascimento, A.I.; Lima, M.P. A novel search algorithm based on fish school behavior. In Proceedings of the 2008 IEEE International Conference on Systems, Man and Cybernetics, Singapore, 12–15 October 2008; pp. 2646–2651. [Google Scholar]
- de Albuquerque, I.M.; Filho, J.M.; Neto, F.B.d.L.; Silva, A.M.d.O. Solving assembly line balancing problems with fish school search algorithm. In Proceedings of the 2016 IEEE Symposium Series on Computational Intelligence (SSCI), Athens, Greece, 6–9 December 2016; pp. 1–8. [Google Scholar]
- Ronald, S. Robust encodings in genetic algorithms: A survey of encoding issues. In Proceedings of the 1997 IEEE International Conference on Evolutionary Computation (ICEC’97), Indianapolis, IN, USA, 13–16 April 1997; pp. 43–48. [Google Scholar]
- Pandey, H.; Chaudhary, A.; Mehrotra, D. A comparative review of approaches to prevent premature convergence in GA. Appl. Soft Comput. 2014, 24, 1047–1077. [Google Scholar] [CrossRef]
- Jordehi, A.R. Enhanced leader pso (elpso): A new pso variant for solving global optimisation problems. Appl. Soft Comput. 2015, 26, 401–417. [Google Scholar] [CrossRef]
- Abdel-Kader, R.F. An improved pso algorithm with genetic and neighborhood-based diversity operators for the job shop scheduling problem. Appl. Artif. Intell. 2018, 32, 433–462. [Google Scholar] [CrossRef]
- Tang, Q.; Zeng, J.; Li, H.; Li, C.; Liu, Y. A particle swarm optimization algorithm based on genetic selection strategy. In Proceedings of the Advances in Neural Networks–ISNN 2009: 6th International Symposium on Neural Networks, ISNN 2009, Wuhan, China, 26–29 May 2009; Proceedings, Part III 6. Springer: Berlin/Heidelberg, Germany, 2009; pp. 126–135. [Google Scholar]
- Ye, T.; Wang, H.; Wang, W.; Zeng, T.; Zhang, L.; Huang, Z. Artificial bee colony algorithm with an adaptive search manner and dimension perturbation. Neural Comput. Appl. 2022, 34, 16239–16253. [Google Scholar] [CrossRef]
- Makas, H.; Yumuşak, N. Balancing exploration and exploitation by using sequential execution cooperation between artificial bee colony and migrating birds optimization algorithms. Turk. J. Electr. Eng. Comput. Sci. 2016, 24, 4935–4956. [Google Scholar] [CrossRef]
- Yu, W.-J.; Zhan, Z.-H.; Zhang, J. Artificial bee colony algorithm with an adaptive greedy position update strategy. Soft Comput. 2018, 22, 437–451. [Google Scholar] [CrossRef]
- Knypiński, Ł.; Kurzawa, M.; Wojciechowski, R.; Gwóźdź, M. Application of the Salp Swarm Algorithm to Optimal Design of Tuned Inductive Choke. Energies 2024, 17, 5129. [Google Scholar] [CrossRef]
- Khajehzadeh, M.; Iraji, A.; Majdi, A.; Keawsawasvong, S.; Nehdi, M.L. Adaptive Salp Swarm Algorithm for Optimization of Geotechnical Structures. Appl. Sci. 2022, 12, 6749. [Google Scholar] [CrossRef]
- Hao, G.-S.; Lim, M.-H.; Ong, Y.-S.; Huang, H.; Wang, G.-G. Domination landscape in evolutionary algorithms and its applications. Soft Comput. 2019, 23, 3563–3570. [Google Scholar] [CrossRef]
- Santana, C.J.; Bastos-Filho, C.J.; Macedo, M.; Siqueira, H. Sbfss: Simplified binary fish school search. In Proceedings of the 2019 IEEE Congress on Evolutionary Computation (CEC), Wellington, New Zealand, 10–13 June 2019; pp. 2595–2602. [Google Scholar]
- Demidova, L.; Gorchakov, A. Application of chaotic Fish School Search optimization algorithm with exponential step decay in neural network loss function optimization. Procedia Comput. Sci. 2021, 186, 352–359. [Google Scholar] [CrossRef]
- Wu, G.; Mallipeddi, R.; Suganthan, P. Problem definitions and evaluation criteria for the cec 2017 competition and special session on constrained single objective real-parameter optimization. Nanyang Technol. Univ. Singap. Tech. Rep. 2016, 1–18. [Google Scholar]
Function | SFSS | ABC | CSO | FA | FSS | GA | PSO |
---|---|---|---|---|---|---|---|
F1 | () | () | () | () | () | () | () |
F2 | () | () | () | () | () | () | () |
F3 | () | () | () | () | () | () | () |
F4 | () | () | () | () | () | () | () |
F5 | () | () | () | () | () | () | () |
F6 | () | () | () | () | () | () | () |
F7 | () | () | () | () | () | () | () |
F8 | () | () | () | () | () | () | () |
F9 | () | () | () | () | () | () | () |
F10 | () | () | () | () | () | () | () |
F11 | () | () | () | () | () | () | () |
F12 | () | () | () | () | () | () | () |
F13 | () | () | () | () | () | () | () |
F14 | () | () | () | () | () | () | () |
F15 | () | () | () | () | () | () | () |
F16 | () | () | () | () | () | () | () |
F18 | () | () | () | () | () | () | () |
F19 | () | () | () | () | () | () | () |
F21 | () | () | () | () | () | () | () |
F22 | () | () | () | () | () | () | () |
F23 | () | () | () | () | () | () | () |
F24 | () | () | () | () | () | () | () |
F25 | () | () | () | () | () | () | () |
F26 | () | () | () | () | () | () | () |
F27 | () | () | () | () | () | () | () |
F28 | () | () | () | () | () | () | () |
Function | SFSS | ABC | CSO | FA | FSS | GA | PSO |
---|---|---|---|---|---|---|---|
F1 | 8.166 | 1.937 | 0.348 | 5.067 | 4.615 | 1.396 | 0.957 |
F2 | 5.416 | 1.828 | 0.315 | 4.874 | 4.367 | 1.336 | 0.937 |
F3 | 3.517 | 0.933 | 0.112 | 2.783 | 2.448 | 0.577 | 0.331 |
F4 | 5.283 | 1.091 | 0.037 | 3.239 | 2.913 | 0.704 | 0.463 |
F5 | 6.422 | 1.820 | 0.308 | 5.059 | 4.398 | 1.311 | 0.915 |
F6 | 4.109 | 1.090 | 0.155 | 3.253 | 2.782 | 0.741 | 0.456 |
F7 | 3.279 | 0.902 | 0.154 | 2.392 | 1.992 | 0.600 | 0.411 |
F8 | 4.869 | 1.544 | 0.441 | 3.937 | 3.637 | 1.070 | 0.774 |
F9 | 3.128 | 0.864 | 0.144 | 2.745 | 2.389 | 0.588 | 0.385 |
F10 | 2.649 | 0.780 | 0.154 | 2.399 | 1.962 | 0.508 | 0.358 |
F11 | 1.533 | 0.567 | 0.181 | 1.531 | 1.266 | 0.391 | 0.292 |
F12 | 1.880 | 0.561 | 0.197 | 1.315 | 1.204 | 0.370 | 0.303 |
F13 | 1.676 | 0.544 | 0.191 | 1.321 | 1.110 | 0.358 | 0.278 |
F14 | 1.305 | 0.489 | 0.184 | 1.252 | 1.032 | 0.333 | 0.244 |
F15 | 1.584 | 0.524 | 0.172 | 1.327 | 1.117 | 0.350 | 0.267 |
F16 | 1.228 | 0.413 | 0.153 | 1.046 | 0.897 | 0.262 | 0.198 |
F18 | 1.253 | 0.452 | 0.186 | 1.093 | 0.933 | 0.298 | 0.226 |
F19 | 0.968 | 0.343 | 0.162 | 0.845 | 0.718 | 0.227 | 0.174 |
F21 | 0.942 | 0.306 | 0.131 | 0.799 | 0.734 | 0.163 | 0.114 |
F22 | 0.850 | 0.341 | 0.196 | 0.741 | 0.748 | 0.204 | 0.161 |
F23 | 0.686 | 0.217 | 0.135 | 0.557 | 0.484 | 0.111 | 0.124 |
F24 | 0.782 | 0.287 | 0.162 | 0.650 | 0.576 | 0.175 | 0.139 |
F25 | 0.755 | 0.204 | 0.171 | 0.606 | 0.443 | 0.111 | 0.077 |
F26 | 0.672 | 0.210 | 0.159 | 0.595 | 0.448 | 0.119 | 0.090 |
F27 | 0.543 | 0.123 | 0.120 | 0.404 | 0.331 | 0.053 | 0.048 |
F28 | 0.661 | 0.189 | 0.179 | 0.484 | 0.396 | 0.120 | 0.098 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2025 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Figueiredo, E.; Santana, C.; Siqueira, H.V.; Macedo, M.; Converti, A.; Gokhale, A.; Bastos-Filho, C. A Simplified Fish School Search Algorithm for Continuous Single-Objective Optimization. Computation 2025, 13, 102. https://doi.org/10.3390/computation13050102
Figueiredo E, Santana C, Siqueira HV, Macedo M, Converti A, Gokhale A, Bastos-Filho C. A Simplified Fish School Search Algorithm for Continuous Single-Objective Optimization. Computation. 2025; 13(5):102. https://doi.org/10.3390/computation13050102
Chicago/Turabian StyleFigueiredo, Elliackin, Clodomir Santana, Hugo Valadares Siqueira, Mariana Macedo, Attilio Converti, Anu Gokhale, and Carmelo Bastos-Filho. 2025. "A Simplified Fish School Search Algorithm for Continuous Single-Objective Optimization" Computation 13, no. 5: 102. https://doi.org/10.3390/computation13050102
APA StyleFigueiredo, E., Santana, C., Siqueira, H. V., Macedo, M., Converti, A., Gokhale, A., & Bastos-Filho, C. (2025). A Simplified Fish School Search Algorithm for Continuous Single-Objective Optimization. Computation, 13(5), 102. https://doi.org/10.3390/computation13050102