Skill Optimization Algorithm: A New Human-Based Metaheuristic Technique

.


Introduction
With the advancement of science and technology, the need for optimization techniques to address the applications and challenges of optimization and achieve optimal designs has become increasingly apparent.The goal in optimization is to find the best solution to a multi-solution problem (known as the optimization problem) [1].Metaheuristic algorithms are one of the most powerful tools for solving optimization problems.These techniques, which are considered as random optimization approaches, are based on trial-and-error methods, random search, and the use of random operators.Advantages such as simplicity of understanding, ease of implementation, being independent of the type of problem, no need to derivation process, and capability to be used in nonlinear, non-convex, and NP-hard problems have led to the widespread utilization of metaheuristic algorithms [2].CMC, 2023, vol.74, no.1 Metaheuristic algorithms have the same optimization process in that they start by generating a number of candidate solutions in the problem-solving space at random.These solutions are then improved in an iterative process.Finally, the best improved candidate solution is introduced as the solution to the problem [3].Due to the random nature of the search process in metaheuristic algorithms, the solutions obtained by these techniques are not guaranteed to be the global optimal solution [4].However, these solutions are close to the global optimum.Therefore, these acceptable solutions are known as quasi-optimal solutions.A quasi-optimal solution is, at best, equal to the global optimum [5].Attempts to find better quasi-optimal solutions have led to the introduction and design of numerous metaheuristic algorithms [6][7][8][9][10][11]. Metaheuristic algorithms have wide applications in various fields of science, including: Energy carriers [12,13], feature selection problem [14], parameter estimation [15], electrical engineering [16][17][18][19][20][21], protection [22], and energy management [23][24][25][26].
The main idea in designing metaheuristic algorithms is inspired by nature, wildlife, behaviors of animal, birds, insects, aquatic animals in nature, physical concepts and laws, biological sciences, game rules, human behaviors, and any type of process that has an evolutionary nature.The birds' natural behaviors have been the main inspiration for Particle Swarm Optimization (PSO) algorithm [27].Genetic Algorithm (GA) [28] was inspired by the reproduction process.The concept of gravity force in physics was utilized to obtain Gravitational Search Algorithm (GSA) [29].The interactions between learners and teachers have been the main inspiration for Teaching-Learning Based Optimization (TLBO) [30], and Volleyball Premier League (VPL) method was inspired by the volleyball game [31].
The main research question is that despite the countless metaheuristic algorithms that have been designed so far, is there still a need to develop newer algorithms?There is the answer to this question in the concept of No Free Lunch (NFL) theorem [32], which states: The effective performance of an algorithm in solving a group of optimization problems does not guarantee the similar performance of that algorithm in solving other optimization problems.In fact, the NFL states that there is no presupposition as to whether or not an algorithm can be implemented successfully on an optimization problem, and that a particular algorithm cannot be claimed to be the best choice for all optimization applications.The NFL theorem motivates researchers to develop newer and more efficient algorithms in order to find better solutions for various optimization problems.The NFL theorem motivated the authors of this study to design a new algorithm to solve optimization problems more effectively to provide better quasi-optimal solutions.Innovation and contribution of this paper is in designing a new metaheuristic algorithm called Skill Optimization Algorithm (SOA) to be utilized for solving optimization problems in various fields of science.The main inspiration employed in designing SOA is the human activities and efforts that seeks to acquire and improve skills.The steps of implementing SOA are mathematically modeled in two phases of exploration and exploitation, which are based on skill learning and individual practice, respectively.Twenty-three sets of standard benchmark functions of unimodal and multimodal types have been used for evaluating the ability of SOA to achieve optimal solutions.Moreover, the results obtained by SOA are compared with the performance of ten well-known metaheuristic algorithms.
The rest of this article is structured as follows: In Section 2, literature review is provided.The proposed SOA is introduced in Section 3. Simulation studies and results are presented in Section 4. Finally, conclusions and several suggestions for future studies are given in Section 5.

Lecture Review
Metaheuristic algorithms are divided into five groups based on the source of inspiration used in the design: Swarm-based, evolutionary-based, physics-based, game-based, and human-based algorithms.
Swarm-based algorithms are inspired by nature, and the swarming behaviors of animals, birds, and other living things.PSO is one of the most popular optimization methods, which was developed based on modeling the movement of birds and fishes in search of food.The ability of ants to discover the shortest path between food sources and nests was a central idea in design of Ant Colony Optimization (ACO) technique [33].The strategy of grey wolves in hunting and attacking prey was employed in the Grey Wolf Optimizer (GWO) design [34].The humpback whale net-bubble hunting strategy was a major source of inspiration for designing Whale Optimization Algorithm (WOA) [35].The strategy of pelicans in hunting and trapping prey was the main inspiration of Pelican Optimization Algorithm (POA) [36].Some other swarm-based algorithms are: Cat and Mouse Based Optimizer (CMBO) [37], Good Bad Ugly Optimizer (GBUO) [38], Marine Predator Algorithm (MPA) [39], Tasmanian Devil Optimization (TDO) [40], Mutated Leader Algorithm (MLA) [41], Tunicate Search Algorithm (TSA) [42], Northern Goshawk Optimization (NGO) [43], Donkey Theorem Optimizer (DTO) [44], Rat Swarm Optimization (RSO) [45], All Members Based Optimizer (AMBO) [46], Red Fox Optimization (RFO) [47], Best Members Based Optimizer (MBMBO) [48], and Mixed Leader Based Optimizer (MLBO) [49].
Evolutionary-based algorithms are inspired by the concepts of natural selection, biology, and genetics.GA and Differential Evolution (DE) [50] are among the most widely used and well-known evolutionary algorithms, inspired by the process of reproduction, Darwin's theory of evolution, and random operators such as selection, crossover, and mutation.Some other evolutionary-based algorithms are: Average and Subtraction-Based Optimizer (ASBO) [51], Genetic Programming (GP) [52], Search Step Adjustment Based Algorithm (SSABA) [53], Evolutionary Programming (EP) [54], Selecting Some Variables to Update-Based Algorithm (SSVUBA) [55], and Artificial Immune System (AIS) [56].
Physics-based algorithms are inspired by simulating processes, laws, and concepts in physics.Simulated Annealing (SA) is one of the most famous optimization algorithms that is inspired by the physical process of melting and cooling metals known as annealing [57].Simulation of the law of curvature and spring force was the basis of Spring Search Algorithm (SSA) [58].Simulation of momentum and collision of objects was the main inspiration of Momentum Search Algorithm (MSA) [59].Considering gravitational force and laws of motion between objects at different distances, GSA was proposed.Some of the other physics-based algorithms are: Multi-Verse Optimizer (MVO) [60], Binary Spring Search Algorithm (BSSA) [61], Equilibrium Optimizer (EO) [62], and Henry Gas Solubility Optimization (HGSO) [63].
Game-based algorithms are inspired by modeling the rules of various individual and team games, the behavior of players, coaches, and referees, as well as holding competitions.Simulating the organization of the football league as well as the behavior of the players, and the interactions of the clubs with each other was the main idea in the design of Football Game Based Optimization (FGBO) [64].The players' effort to put the puzzle pieces together was the major inspiration in Puzzle Optimization Algorithm (POA) design [65].Hide Object Game Optimizer (HOGO) is an optimization approach developed based on modeling players' behavior to find a hidden object in the hide object game [66].Some of other game-based algorithms are: VPL, Darts Game Optimizer (DGO) [67], Binary Orientation Search algorithm (BOSA) [68], Dice Game Optimizer (DGO) [69], Orientation Search algorithm (OSA) [70], and Ring Toss Game Based Optimizer (RTGBO) [71].
Human-based algorithms are designed based on human behaviors, the interactions of people in a community with each other, and the relationships between humans.TLBO is one of the most widely used optimization techniques that is designed based on modeling the space of a classroom with the CMC, 2023, vol.74, no.1 presence of a teacher and a number of students in two phases of teaching and learning.Interactions between doctor and patients for examination, prevention, and treatment were the main inspiration of Doctor and Patient Optimization (DPO) [72].Following the people of a society by the leader in order to develop that society was the source of inspiration in designing Following Optimization Algorithm (FOA) [73].Some other human-based algorithms are: Teamwork Optimization Algorithm (TOA) [74], Group Optimization (GO) [75], Archery Algorithm (AA) [76], and Poor and Rich Optimization (PRO) algorithm [77].

Skill Optimization Algorithm
In this section, the proposed Skill Optimization Algorithm (SOA) is introduced and its mathematical modeling is presented.SOA is a population-based method, whose members are human beings who strive to learn and improve their skills.SOA population members are in fact candidate solutions to the given optimization problem.The positions of these members in the search space show the values of the problem decision variables.The positions of SOA members are randomly initialized at the start of the algorithm.The SOA population can be mathematically modeled using a matrix according to Eq. ( 1).
Here, X is the SOA's population matrix, X i indicates the ith candidate solution, x i,d is the value of dth variable proposed by ith population member, N denotes the number of SOA's members, and m is the number of variables.Each member of the population is a candidate solution to the problem.In other words, by placing each member in the problem variables, a value for the objective function is evaluated.Therefore, the values obtained for the objective function can be mathematically modeled using a vector according to Eq. ( 2).
Here, F is the vector of obtained values for the objective function and F i represents the obtained value for the objective function based on ith candidate solution.Considering the values evaluated for the objective function, the best value identifies the best member and similarly, the worst value identifies the worst member.Given that in each iteration, the members of the population and the values of the objective function are updated, the best and worst members are also updated in each iteration.The process of updating population members in SOA is performed in two phases of exploration and exploitation.The exploration phase is based on simulating the process of skill learning from an expert.The exploitation phase is based on simulating skill improvement through individual efforts and activities.In SOA design, the update process is performed in two phases of exploration with the aim of global search in the problem-solving space, and the phase of exploitation with the aim of local search.In the exploration phase, SOA is designed so that SOA members move in the search space under the guidance of different members, and are prevented from moving only in the direction of the best member.This increases the algorithm's exploration power in accurately scanning the search space and identifying the original optimal area.On the other hand, in the exploitation phase, based on the local search near each member of the population, the algorithm is able to converge to better possible solutions.

Phase 1: Skill Acquisition from Experts (Exploration)
In the first phase, each SOA member strives to acquire a skill based on the guidance of a community expert member.The quality of each population member is commensurate with the objective function value obtained by that member of the population.The expert member for an SOA member is the member who has better conditions based on the value of the objective function.For each SOA member, all members that have a better objective function value than that member are considered as "experts set".Among the members of this set, one member is randomly selected as an expert to train the member in question.Therefore, the expert selected to guide the SOA member is not necessarily the best candidate solution.In fact, the best candidate solution is a permanent member of the experts set, for all SOA members.The expert member causes the member of the population to be guided to different positions in the search space by learning the skill, which means global search and exploration ability of the algorithm.The new position calculated for each member of the population is acceptable if it improves the value of the objective function.Therefore, the first phase of the update can be modeled according to the mentioned concepts using Eqs.( 3) and ( 4).
Here, X P1 i is the new calculated status of ith candidate solution based on the first phase, x P1 i,d is its dth dimension, F P1 i represents its objective function value, E i is the selected expert to guide and train the ith population member, E i,d denotes its dth dimension, r is a random number in interval [0 − 1], and I is a random number which is selected randomly from set of {1, 2}.

Phase 2: Skill Improvement Based on Practice and Individual Effort (Exploitation)
In the second phase, each population member tries to improve the skills acquired in the first phase through individual practice and activity.In SOA, this concept is modeled as local search with the aim of increasing exploitation in such a way that each member, in the neighborhood of its position, seeks better conditions to improve the value of its objective function (which indicates the level of skill).Similar to previous phase, the newly calculated position in this phase is acceptable if it improves the objective function value.The concepts of this phase of SOA updating are mathematically modeled using Eqs.( 5) and (6).
CMC, 2023, vol.74, no.1 Here, X P2 i is the new calculated status of ith candidate solution based on the second phase, indicates its dth dimension, F P2 i is its objective function value, t is the iteration counter, lb j and ub j are the lower and upper bound of jth variable.

Repetition Process, Pseudocode, and Flowchart of SOA
The first iteration of SOA is completed after updating all members based on the first and second phases.The algorithm then enters the next iteration and the update process is repeated according to Eqs. ( 3) to (6).Once fully implemented, SOA puts the best candidate solution in the output.The SOA flowchart is presented in Fig. 1 and its pseudocode is presented in Alg. 1.

Computational Complexity of SOA
In this subsection, the computational complexity of SOA is studied.The computational complexity of SOA initialization to create the initial population and initial evaluation of the objective function is equal to O(Nm), where N is the number of population members and m is the number of problem variables.The SOA member update process has two phases, while in each iteration and in each phase, the position of each updated member and the objective function are evaluated.Thus, the computational complexity of SOA in the upgrade process is equal to O(2NmT), where T is the maximum number of iterations.Thus, the total complexity of SOA is equal to O(Nm (1 + 2 T)).Input the optimization problem information.

2.
Set T (number of iterations) and N (number of population members).
Calculate new status of ith candidate solution based on phase 1 using Eq.(3).9.
Calculate new status of ith candidate solution based on phase 2 using Eq. ( 5).12.
Save the best candidate solution so far.15. end 16.
Output the best obtained solution.End SOA.
Input information of the optimization problem.
Set parameters N and T.

Create initial population.
Calculate objective function.
Start SOA.
Phase 1: Select expert for ith member.
Phase 2: Update using Eq. ( 6) based on comparing 2 and .In this section, the performance of the proposed SOA in optimization applications is evaluated.For this purpose, SOA is implemented on a set of twenty-three standard objective functions.This set includes a variety of unimodal, high-dimensional multimodal, and fixed-dimensional multimodal functions [78].The results obtained by the proposed SOA are compared with ten well-known metaheuristic algorithms including: GA, RFO, PSO, WOA, GWO, MVO, MPA, GSA, TSA, and TLBO.The algorithms selected for comparison are among the most popular metaheuristic algorithms published.The reason for choosing these algorithms for comparison is as follows.The most popular CMC, 2023, vol.74, no.1 and widely used algorithms: GA and PSO.Highly cited algorithms: GSA, GWO, MVO, and WOA.Recently released and popular algorithms: RFO, MPA, and TSA.The setting values for the control parameters of competing algorithms are specified in Tab. 1. SOA and competing algorithms are employed in twenty independent implementations to optimize F1 to F23 functions, each of which contains 50,000 function evaluations.Optimization results are reported using six statistical indicators: Mean, best, worst, standard deviation (std), median, and rank.Gaussian (Probability = 0.05) Population size 50

Intuitive Analysis in Two-Dimensional Search Space
In order to observe the quality of SOA, the first experiment is performed on 10 objective functions including F1, and F3 to F11 in two dimensions, while the number of SOA population members is considered equal to 5. To show the SOA behavior in optimizing these functions, convergence curves, search history curves, and trajectory curves are presented in Fig. 2.These curves show the SOA's behavior in search of the problem-solving space, solution-finding, and convergence process, how it achieves better solutions based on update processes, and decreases objective function values.Based on this analysis, it is determined that SOA, by improving the initial population, is able to increase the quality of candidate solutions and improve the accuracy of the quasi-optimal solution during the iterations of the algorithm.

Evaluation of Unimodal Functions
The first group of objective functions are selected from the unimodal type, including F1 to F7 functions.The results of implementing the proposed SOA and ten competing algorithms on these functions are reported in Tab. 2. Based on the analysis of the simulation results, it is clear that SOA has been able to provide the global optimal solution in optimizing F1, F3, F5, and F6.In optimizing F2, F4, and F7 functions, the SOA is the first best optimizer.Comparison of the optimization results shows that the proposed SOA offers superior and much more competitive performance against the ten mentioned algorithms and has the first rank of the best optimizer for optimizing F1 to F7 unimodal functions.

Evaluation of High-Dimensional Multimodal Functions
The second group of objective functions are selected from the high-dimensional multimodal category, including F8 to F13 functions.The optimization results of these functions using SOA and ten competing algorithms are presented in Tab. 3. The optimization results show that the proposed SOA has been able to provide the global optimal solution for F9, F10, and F11.In optimizing F8, F12, and F13 functions, the SOA is the first best optimizer.Analysis of the simulation results shows that the proposed SOA has presented superior and acceptable performance against ten compared algorithms and has the first rank of the best optimizer in solving F8 to F13 high-dimensional multimodal functions.

Evaluation of Fixed-Dimensional Multimodal Functions
The third group of objective functions is selected from the fixed-dimensional multimodal type, including F14 to F23 functions.The results of employing SOA and ten competing algorithms for optimizing these functions are given in Tab. 4. It can be inferred from the optimization results that the proposed SOA achieves the global optimal solution for F14 and F17.Moreover, SOA is the first best optimizer for F15, F21, and F22 functions.The analysis of the results also shows that in cases where the proposed SOA and some competing algorithms result in the same "mean" value, SOA has a lower value for the "std" criterion, which indicates that the performance of SOA is superior.Based on the results obtained by the proposed SOA and ten competing algorithms, one can confirm the effective ability of SOA in solving fixed-dimensional multimodal optimization problems.
The performance of competing algorithms and SOA in optimizing F1 to F23 is presented in the form of boxplots in Fig. 3.

Statistical Analysis
Reporting the results of implementing optimization algorithms on optimization problems through statistical indicators, provides useful information on the performance of these algorithms.In this subsection, a statistical analysis on the proposed algorithm and the mentioned ten competing algorithms is presented to determine whether the superiority of the proposed algorithm over competing algorithms is statistically significant or not.For this purpose, Wilcoxon rank sum test [79] which is a non-parametric statistical analysis is used.In this test, an index called "p-value" indicates whether there is a significant difference between the means of the two data samples.
The implementation results of this statistical analysis on the proposed algorithm and each of the competing algorithms are presented in Tab. 5.According to this table, in cases where the p-value is less than 0.05, the proposed SOA has a significant statistical superiority over the competing algorithm.In this paper, a new human-based metaheuristic algorithm called Skill Optimization Algorithm (SOA) was designed.Human effort to learn and improve skills is the main inspiration of SOA.The steps of implementing and updating SOA in two phases of exploration and exploitation were described and then mathematically modeled.A set of twenty-three standard objective functions of different types of unimodal and multimodal were considered to evaluate the optimization performance of SOA.The results of optimizing unimodal functions indicated the exploitation ability of SOA in local search.The results obtained by the optimization of high-dimensional multimodal functions showed the exploration ability of SOA in global search.The results of optimizing fixed-dimensional multimodal functions showed that SOA has an acceptable ability to balance the indicators of exploration and exploitation.In order to analyze the quality of the results achieved by SOA, its performance was compared with ten well-known metaheuristic algorithms.The simulation results confirmed the superiority of SOA performance over mentioned algorithms based on exploration and exploitation criteria.In other words, SOA can provide more effective solutions to optimization problems compared to the considered competing algorithms.

i 1 Phase 2 :
== N ?Save the best solution so far.Output the best solution of the objective function found by SOA.t == T ?Calculate 2 using Eq.(5) and calculate 2 .

Table 3 : 1 Table 4 :
Evaluation results for high-dimensional multimodal functions , vol.74, no.Evaluation results for fixed-dimensional multimodal functions

1 Figure 3 :
Figure 3: Boxplots of performances for skill optimization algorithm (SOA) and competing algorithms

Table 1 :
Setting values for control parameters of competing algorithms

Table 5 :
p-values obtained by Wilcoxon sum rank test 5 Conclusions and Future Works