{'fraction_non_alphanumeric': 0.026549625720286497, 'fraction_numerical': 0.012440088319241748, 'mean_word_length': 4.548252166118912, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
WEIGHTED VERTICES OPTIMIZER (WVO): A NOVEL METAHEURISTIC OPTIMIZATION ALGORITHM

This paper introduces a novel optimization algorithm that is based on the basic idea underlying the bisection root-finding method in mathematics. The bisection method is modified for use as an optimizer by weighting each agent or vertex, and the algorithm developed from this process is called the weighted vertices optimizer (WVO). For exploitation and exploration, both swarm intelligence and evolution strategy are used to improve the accuracy and speed of WVO, which is then compared with six other popular optimization algorithms. Results confirm the superiority of WVO in most of the test functions.

1. Introduction. Optimization algorithms are used to identify the minimum or maximum value of a function without using mathematical approaches. Such algorithms are generally classified into two major categories, namely, heuristic and metaheuristic algorithms [16]. Heuristic algorithms are used to determine an optimum solution by trial and testing within a limited computational time. These methods provide excellent results in terms of finding suboptimal solutions, but they do not guarantee the identification of a global optimum solution. Conversely, metaheuristic algorithms use trial and testing, higher-level techniques, and exploration and exploitation to ascertain a global optimum solution. They are divisible into many categories, among which two are important and are the focus of this study. The first category consists of evolutionary algorithms, which use genetic operators (selection, mutation, and crossover) to a certain degree. The most popular algorithm in this class is the genetic algorithm (GA) [7]. The second category comprises algorithms that are based on swarm intelligence and the collective behavior of animals. Particle swarm optimization (PSO) [5], artificial bee colony (ABC) [10], and ant colony optimization (ACO) [4] fall within this category. Although metaheuristic algorithms are not limited in terms of sources of inspiration, most of them are grounded in the characteristics of nature and are designed to mimic a natural phenomenon to find a solution. Examples of nature-inspired algorithms are GA, PSO, and invasive weed optimization (IWO). The advantage of these algorithms is that the nature behaviors and techniques that underlie them have been examined and improved over thousands of years and therefore serve as reliable bases for algorithmic development. A representative example is GA, which is based on Darwins evolution theory and defines the best solution by generating new solutions from the highest-performing agents and eliminating those that are unfit. Despite the benefits derived from using nature techniques, however, these also present limitations that prevent innovation. For example, GA should use only two parents to produce offspring; otherwise, the essence of the algorithm will completely change and become meaningless. Yet, the participation of more than two parents enables the production of more qualified offspring and guarantees improved diversity, which leads to more accurate solutions. Some other algorithms, such as the cultural algorithm (CA) [14] and imperialist competitive algorithm (ICA), are developed on the basis of human behavior [2]. In CA, agents are spread throughout a belief space, and the algorithm employs an evolutionary strategy to find an optimum solution. ICA also uses an evolutionary approach, but it adopts a mathematical model of human social evolution, contrary to GA, which uses the biological evolution of animals. The aim of this study is to introduce a new metaheuristic algorithm that is not inspired by nature but by a mathematical approach called the bisection root-finding method [3]. The proposed algorithm is called the weighted vertices optimizer (WVO), which simultaneously employs swarm intelligence and an evolutionary strategy [6] for exploration and exploitation purposes. Briefly, the algorithms and techniques from which the raw concept of the WVO algorithm is drawn are described below: • Bisection root-finding method: This idea is employed to enable the algorithm to guide an agent toward the global best solution. • Evolutionary strategy from GA: The strategy enables the generation of a new solution through genetic operators. This functionality is extended in WVO, which is designed to choose more than two parents and the transfer characteristics of each parent on the basis of their fitness. • Swarm intelligence from swarm-based algorithms (PSO, ACO, etc.): Particles or agents come into contact with one another and guide other particles toward the best solution in each iteration. The rest of the paper is organized as follows. Section 2 presents the definition of the bisection root-finding method and the raw concept of WVO. Subsection 2.1 explains the selection method used in WVO, and Subsection 2.2 describes the methods used by WVO to produce new generations. Section 3 discusses the results of a simulation, and Subsection 3.2 presents the solution to a practical example. Section 4 concludes the paper.
2. The proposed algorithm. The concept of the proposed algorithm is based on the bisection root-finding method where the roots are defined by guessing two initial points and using iterating trial and test (Figure 1-a). In each iteration of this method, three new possible solutions (C1 to C3) are generated and only one of these solutions along with one of primary points (G1 or G2) with the best fitness will be kept for next iteration. In rest of the paper, these primary points are called vertices. With some changes, the bisection method could be used for finding minimum of function (Figure 1-b).
In Figure 1-b, G1 and G2 represent two initial points and the C1 to C3 points are possible new vertices. Contrary to the bisection method, these points will not be used directly as a new solution but as a guide to move G1 or G2 toward them. In one hand, selecting C1 for moving G1 or selecting C3 for moving G2 causes more distance between G1 and G2 which in this paper, this move is known as backward movement. On the other hand, the C2, known as geometric center and is placed in middle of G1 and G2, causes G1 and G2 come closer which known as forward movement. To reduce amount of computation, only the best vertex will be considered for generating new solution or to be moved. This strategy will be very helpful when number of vertices is high. In addition, fitness value of each vertex are taken in to account to calculate geometric center of vertices. The array of problem variables for N V ar -dimensional optimization for WVO is given in 1. Different optimization methods have used different terminology to name this array, for instance "chromosome" in GA or "particle position" is PSO. In this paper it is called "vertex" as mentioned earlier.
Which N P op indicate number of vertices. Each vertex is evaluated using cost function as fallow: As mentioned earlier, the two possible actions for creating new solutions are forward movement and backward movement which both of them are depicted in 2. In this figure, the white-colored circles represent the selected vertices which their sizes are related to their fitness values.
In the forward movement, two factors form new solution by moving the best vertex: 1) toward the geometrical center of selected vertices and 2) toward the global best. Similarly, the backward movement is formed by moving the best vertex: 1) against the geometric center as much as D-unit and 2) toward the global best. The whole processes of selection and movement are formulated and are explained in below subsections.
2.1. Selecting vertices. As mentioned earlier, the WVO lets operator to define number of participant vertices for producing new generation of solutions which is a new concept in evolutionary strategy. The vertices are selected randomly using integer unified random function which produces integer values between 1 to N P op . where the N V represents number of desired vertices. This number is equal to two for genetic algorithm because only two parents are involved to produce new offspring. Unlike the GA, the WVO is able to use two or more vertices to produce new solutions. The P is a random integer number between 1 to N P op that defines which agents should be used as vertices to produce a new vertex. The set of selected vertices is given in 4.
The S sel represents the set of selected vertices. The V sel shows the matrix form of S sel .
where C F and C G are coefficient of forward movement and coefficient of moving toward the global best. The V BV and Vertex GB are the best vertex from selected vertices set (S sel ) and the global best. Geo c represents geometrical center or weighted sum of selected vertices which is calculated using 7.
The CV represents weight of vertex. The CV for i th vertex is calculated using 8.
Here W GB , W GW , Profit GB , Profit GW and Profit i are assumed weight for the global best, assumed weight for the global worst, cost value of global best, cost value of global worst and cost value of i th vertex.

Moving backward. The backward movement is calculated by
The CB is coefficient for backward movement.
2.3. Speed and accuracy. In WVO, operator is able to define a value between zero to one for V Speed which is responsible to make a balance between accuracy and speed of the algorithm. In other words, the operator is able to choose whether to find a very optimum solution in expense of long computation time and numerous function evaluations or finding near optimum solution in shorter time and fewer function evaluations. The steps of WVO algorithm is given in below: I Define objective function: f ( X), X = (x 1 , x 2 , . . ., x N V ar ) II Initialize the WVO algorithm with generating random values and calculating cost value III Selecting some vertices, calculating geometric center and generating new agents by moving the best selected vertex: 1) forward or backward 2) toward the global best. IV Function evaluation of each movement according to V speed and forming a primary new generation V Producing the main new generation by mixing primary and old generations and selecting best agents of them as many as N P op . VI If number of iteration reached its maximum stop the algorithm else go to step II.

VII End
The whole procedure also is shown in 3.
3. Simulation results. The proposed algorithm is tested on six standard function and the obtained results are compared with those driven from IWO [13], CA, harmony search (HS) [9], PSO and GA. In addition, the numeric results for modified versions of IWO [11], CA [1] and HS [15] are also presented. The results are obtained by running over 10 times independent simulations on each optimization algorithm. The number of function evaluations is used as termination criteria and it is set to 150000 for all algorithms. The parameters of WVO algorithm for these  Table 1. To avoid complexity and for a better comparison, only 2 vertices are considered for WVO algorithm. A number of well-known benchmark functions are used for simulation and are given in Table 2 which are extracted from [17]. The 2D plot of each test function is shown in Figure 4. The simulations are implemented in MATLAB T M computer program.
The plot of F1 for two dimensional variables is shown in Figure 5. The global minimum of this function is -186.7309 at (-0.8003, -1.4251). the position of vertices in first iteration of WVO algorithm is shown in Figure 6 which shows that most of vertices have found a local minimum or are near to the global minimum. The position of vertices in next iterations are depicted in Figures 7a to 7d. From Figure  7a it can be seen that all of vertices had found the global minimum or the second best optimum point. In Figure 7b the vertices are trying to find the global minimum and finally in 9 th iteration the global minimum have been found by all agents and therefore the vertices in local minimum are eliminated (Figure 7c). In 13 th iteration the algorithm have found the accurate place of global minimum (Figure 7d). Figure  8 depicts the cost value versus iteration of the WVO along with other algorithms.
The cost value of F2 functions for each iteration is presented in Figure 9. As it can be seen, again the WVO algorithm has incredibly faster convergence speed and it has come near to solution in 9 th iteration and has reached it in 19 th iteration.
The Figure 10 shows performance of each optimization method for the F3. Although the WVO algorithm reaches the stopping criteria (maximum number of function evaluation) in 78 th iteration, it still has the highest decline rate among other algorithms. For a better insight, the cost value for each method in the 78 th iteration is provided in Table 3.
The performance of WVO for F4 is superior to other methods. It has the highest decline rate and reaches the lowest cost value in the 67 th iteration (Figure 11).
The WVO algorithm reaches the optimum cost value (0) in 41 th iteration and also faster than other optimization methods ( Figure 12).      The performance of optimization methods for the last function is shown in Figure  13 and again the WVO algorithm has the highest decline rate and reaches the zero cost value in 30 th iteration.
For a better comparison between WVO and other optimization methods, all information are gathered in Table 4. The ranking is based on considering two aspects, first priority is given to cost value and second priority to number of iteration.  In addition to the six chosen traditional test functions, the performance of WVO is also measured by using three novel composition functions (CF) [12]. These CFs are formed from number of traditional test functions which were introduced in Table 2 except Weierstrass function which is given in 10. The understudy CFs are shown in Table 5. Due to lack of space, the details of CF is not presented here and can be found in [12].
The numeric results of each algorithm for 20 times independent runs are given in 6. the stopping criteria is number of function evaluation which is set at 50000.  Table 5. the understudy composition functions [12] CF1 CF2 CF3 f 1 , f 2 , . . . , f 10 = F 5 Practical example. In this subsection, it is targeted to find optimum gains of PID controller for automatic voltage regulator (AVR) system using WVO which lately it was done in [8] using PSO. In synchronous generators, the AVR is responsible to maintain the generator voltage and control reactive power flow. The linearized model of AVR system is consisted of four major parts: amplifier, exciter, generator and sensor which along with a PID controller are shown in Figure 14. The intent of using optimization algorithm is that to find the best values for K I , K P  Figure 14. block diagram of AVR along with PID controller [17] and K D to improve time-domain characteristics of AVR such as overshoot, output error, rise time, settling time and etc. Different approaches regarding calculation of output error are introduced but in this study the integral absolute error (IAE) is used (Eq. 11). In addition, rise time (RT) and overshoot (OS) also are considered in cost function. The cost function is given in 12.
Cost F unction = 5 × RT + 3 × IAE + OS (12) where the V ref , V out and e(t) are reference voltage, output voltage and difference between reference and output voltage. In this study, according to desired characteristics, the coefficients of rise time and error are chosen 5 and 3 respectively. The parameters' value of AVR system are given in Table 7 [8].
The parameters for WVO algorithm are similar to values which are provided in Table 1. Figure 15 shows cost value versus iteration of WVO along with GA and PSO algorithms which proves good performance of WVO. In addition, Table  8 provides obtained K I , K P and K D by each optimization method along with the obtained numeric results. The number of population and number of iteration are Table 7. value of AVR's parameters [17] Parameter value  Figure 16. The proposed optimization algorithm uses independent parameters to achieve efficient performance. Here, the effect of WVO's parameters, namely C F , C B , C G , W GB and W GW on optimization results are studied but the N V is extensively studied in a separate subsection. The results of variation of the mentioned parameters are presented in Table 9.
3.3.1. Number of vertices. In above subsections, the number of vertices (N V ) was set to two and it was constant to avoid chaos. Here, it is aimed to observe the Figure 16. the step response of without PID controller and with optimized gains Table 9. effect of C F , C B , C G , W GB and W GW on performance of WVO   effect of N V variation on performance of algorithm, and therefore a comparison is done among WVOs with different N V . The parameters of WVO is similar to pervious simulations, except V Speed is set to 0.6 to reduce number of function evaluation. The presented results in Figure 17, Figure 18 and Table 10 are average of 10 times simulation on F5 and F6 test functions. As it is observable from the results, N V should be chosen carefully to increase speed and accuracy of algorithm otherwise the optimization may not lead to a proper solution. Figure 17. the logarithmic plot of cost function versus iteration for F5 function and different N V Figure 18. the logarithmic plot of cost function versus iteration for F6 function and different N V 4. Conclusion. In this paper, a novel heuristic optimization algorithm based on the bisection root-finding method is introduced. The proposed algorithm, called WVO, uses a number of parents (vertices) and calculates the geometric center of vertices to produce new generations. Similar to other optimization algorithms, WVO takes into account the best global agent for producing new generations. To investigate the performance of the algorithm, a simulation is carried out on 9 test functions, and the results are compared with those derived for PSO, GA, IWO, HS, and CA and also modified versions of IWO, HS and CA. In addition to traditional test functions, three composition test functions are employed to evaluate performance of WVO. The findings indicate that WVO exhibits very good performance in a number of test functions and reasonable performance in others. WVO is then applied in a practical example, in which the optimum PID's gains of an AVR system require identification. The comparison of the results derived by WVO, GA, and PSO confirm the superiority of the proposed algorithm.