# A Simple Hybrid Local Search Algorithm for Solving Optimization Problems

A. Baskar, M. Anthony Xavior

► To cite this version:

A. Baskar, M. Anthony Xavior. A Simple Hybrid Local Search Algorithm for Solving Optimization Problems. 7th International Conference on Computer, Communication, and Signal Processing (ICCCSP), Jan 2023, Chennai, India. pp.246-259, 10.1007/978-3-031-39811-7_20. hal-05363232

HAL Id: hal-05363232

https://inria.hal.science/hal-05363232v1

Submitted on 13 Nov 2025

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
<figure><img src="image_2.png" /></figure>

ifip

International Federation for Information Processing

This document is the original author manuscript of a paper submitted to an IFIP
conference proceedings or other IFIP publication by Springer Nature. As such, there
may be some differences in the official published version of the paper. Such
differences, if any, are usually due to reformatting during preparation for publication or
minor corrections made by the author(s) during final proofreading of the publication
manuscript.
<figure><img src="image_3.png" /></figure>

# A Simple Hybrid Local Search Algorithm for Solving Optimization Problems

A. Baskar¹(✉) and M. Anthony Xavior²

¹ Panimalar Institute of Technology, Poonamallee 600123, Tamil Nadu, India
a.baaskar@gmail.com

² Vellore Institute of Technology, Vellore 632014, Tamil Nadu, India

**Abstract.** Optimization in engineering is an important domain of operations research that gains a lot of attention nowadays. Optimization may be constrained or unconstrained; single objective or multi-objective. With the extent of computing power available today, optimization algorithms are capable of handling several constraints and more variables. This paper proposes a new, simple hybrid local search metaheuristic algorithm for solving single objective, unconstrained problems in the optimization domain. The new algorithm is a hybrid one that generates the initial population randomly and, iteratively, move towards optimal/near-optimal solutions. It uses one tuning parameter and a single random number. The performance is analyzed using ninety-three benchmark functions including the 100-digit challenge test suite of IEEE Congress on Evolutionary Computation (CEC2019). The number of dimensions varies from one to 100. The results obtained are compared with a few efficient algorithms including Sine Cosine Algorithm and Arithmetic Optimization Algorithm. The analyses show that the newly proposed hybrid local search algorithm is effective and competitive.

**Keywords:** Optimization · Local Search Algorithm · Benchmark Functions

## 1 Introduction

Optimization refers to finding the best possible solution by varying the variables' values with or without constraints. Due to the advent of computing machines and the speed of processing available today, solving complex optimization problems have become a reality. For smaller problems, evaluating the optimal solutions in a reasonable time is comparatively easier. When the number of dimensions and constraints increase, the computing time grows exponentially and many times, we will not be able to obtain the solution. As a result, heuristics and metaheuristics have been proposed by researchers which are capable of providing the results with acceptable accuracy in a reasonable time.

The development of optimization algorithms gained momentum since 1940. Earlier optimization algorithms generally make use of the gradient of a function and constraints to arrive at a solution. In such cases, the function shall be differentiable to move forward.

Gradient-based optimization makes use of the gradient to find the direction of the steepest increase. The stationary point will be reached when the gradient becomes zero.
In such cases, the point need not be a global optimum. Based on the approach of choosing the search direction, several methods can be used like Newton, Quasi-Newton, Conjugate descent and steepest descent.

The first of its kind quasi-Newton concept was applied for solving non-linear problems in optimization by Davidon in 1959 [1] which was further developed by Fletcher and Powell [2]. The Sequential Quadratic Programming (SQP) was proposed by Robert Wilson which was made popular by the work of Powell [3].

Modeling the optimization problems using the process of natural evolution started in early 1950s. The pioneering work in this area can be credited to Holland [4] who proposed the Genetic Algorithm (GA).

Due to the difficulties faced in gradient-based algorithms, several gradient-free methods were proposed over the few decades. A wide range of classifications could be found in the “Engineering Design Optimization” book by Martins and Ning [5]. The classification is done based on the characteristics like search (local or global), optimal criteria and iteration criteria (mathematical or heuristic), function evaluation (direct or surrogate) and stochasticity (deterministic or stochastic). Rios and Sahinidis [6] considered a whopping 112,448 instances for analyzing different gradient-free algorithms. They concluded that the ability of these gradient-free solvers to yield better solutions diminishes when the problem size increases.

A gradient-free method termed as the “pattern search” was proposed by Hooke and Jeeves [7]. A revolutionary, new and fast method was proposed by Karmarkar in the year 1984 [8] to solve large scale linear programming problems.

Developments of evolution based algorithms are greatly influenced by a process that takes place in the society or nature. A majority of these nature inspired algorithms are population-based that evaluate several points during each iteration instead of one. These algorithms are stochastic in nature and assume different optimization problems as black boxes (Droste et. al., 2006 [9]) and hence, derivatives of functions are not required. The exploration (global search) is ensured by the widespread of the population within the bounds and their stochastic nature. The global minimum is not guaranteed and the convergence rate becomes poor with increasing dimensions.

Popular evolutionary algorithms include ant colony (ACO) optimization, bat (BA) algorithm, cuckoo (CS) search, firefly (FA) algorithm, hummingbirds (HBO) optimization algorithm, whale optimization (WOA) algorithm and teaching-learning based (TLBO) optimization. Rao [10] proposed the popular JAYA algorithm in 2016 which does not require any tuning parameter. It is one of the widely used and analysed population-based algorithms in this decade.

The Sine Cosine Algorithm (SCA) proposed by Mirjalili [11] is trigonometric functions based that generates a pool of candidate solutions initially using sine function and cosine function. During the solution process, three random numbers are generated. “The Whale Optimization Algorithm (WOA)” of Mirjalili and Lewis [12] is another efficient algorithm proposed in the same year. Two similar trigonometric algorithms were developed by Baskar [13, 14] and the performances were analyzed using 40 numbers of popular and time-tested benchmark test suite and, a few constrained engineering problems available in the literature. Abualigah et al. [15] proposed an efficient “Arithmetic Optimization Algorithm (AOA)” utilizing the distribution behavior of different
mathematical operators (addition, subtraction, multiplication and division) during the optimization process. Agushaka and Ezugwu [16] further improved the AOA and solved a few mechanical engineering design problems.

A physics-inspired “Archimedes Optimization Metaheuristic Algorithm” was proposed based on the Archimedes principle and analyzed by Hashim et al. [17]. They claimed that the results obtained have outperformed a few well-known metaheuristic algorithms. CEC’17 test functions and four engineering real-world problems were used for analyzing the algorithm.

Any optimization algorithm may be a new one or an improvement over the existing one or a hybrid algorithm. Researchers apply all the three strategies effectively as it may not be possible to have a single algorithm that would be able to solve all kinds of optimization problems, as concluded by the ‘No Free Lunch Theorem’ proposed by Wolpert and Macready [18].

This paper proposes a hybrid local search algorithm (FP-AB) and the performance is analyzed using 93 test functions. The performances are then compared with the popular SCA, AOA, WOA, Grey Wolf Optimizer (GWO) [19], the hybrid WOAGWO [20], and WOA-BAT [21] algorithms. Finally, a statistical analysis has been carried out to compare FP-AB and AOA.

## 2 Optimization Problem Statement

The design variables and, single objective function with applicable constraints for a continuous optimization problem can be stated as:

$$ 
\begin{array}{ll}
\textbf{Minimize} & f(\mathbf{x}) \text{ such that, } \text{LB} \le \mathbf{x}_i \le \text{UB}; i = 1 \text{ to } n \\
\text{Subject to} & g_j(\mathbf{x}) \le 0; \text{ for } j = 1 \text{ to } g \\
& h_k(\mathbf{x}) = 0; \text{ for } k = 1 \text{ to } h
\end{array}
$$

LB and UB are lower and upper bounds for the design variables. The non-equality and equality constraints are denoted by $g(\mathbf{x})$ and $h(\mathbf{x})$ respectively. For a maximization problem the objective function is negated as:

$$ \textbf{Minimize} \quad -f(\mathbf{x}). $$

Generally; $f$, $g$ and $h$ are evaluated for all values of ‘$\mathbf{x}$’ within the bounds.

## 3 New Hybrid Local Search Algorithm (FP-AB)

A local search algorithm that evaluates the cost functions at four-points around the existing one was applied by Baskar and Anthony Xavior [22] to locate any facility on different planar, spherical, and ellipsoidal surfaces. It selects the better one for the next iteration. Thus the location is iteratively moved towards the optimal / near-optimal location for a specific cost function.

Only the four point search strategy is borrowed from them and the newly proposed algorithm combines that with the population concept for effectively solving optimization
problems which is an entirely different domain from the facility location. That is, the algorithm initially generates a population of $4*n$ ($n$ = number of dimensions) solutions which are evaluated for their costs. The best solution is selected among them and then it is iteratively moved towards a better solution. Thus, this algorithm combines both the population and local search strategies to find an approximate solution which may be an optimal or near optimal one. Hence, this is called a “Hybrid Local Search Algorithm”. This could be demonstrated with an example.

Let,

Number of dimensions, $dv = n$ ($x1, x2, ..., xn$); Population size, $PS = 4*n$.

Consider a single objective optimization problem with three dimensions and the variables be; $x1, x2$ and $x3$. The solution bounds are LB (Lower Bound) and UB (Upper Bound).

Step 1: The initial population size will be, $4*3 = 12$ and the solution set is randomly generated using the expression, $LB + rand*(UB - LB)$.

Step 2: All the 12 solutions are evaluated for the cost function and the best one and its corresponding solution values, '$Xbest [X1best, X2best and X3best]$' are selected.

Step 3: Now, pairs of solution values are selected; there will be '$n$' number of pairs ($n = 3$ here).

$[X1best, X2best]; [X2best, X3best] and [X3best, X1best]$

Step 4: The new solution set (PS1 to PS12) is constructed by adding/ subtracting a small amount, "$alpha$" as follows:

Pair I: [X1best, X2best]:

PS1: {X1best + $alpha$}, {X2best + $alpha$}, X3best

PS2: {X1best - $alpha$}, {X2best + $alpha$}, X3best

PS3: {X1best - $alpha$}, {X2best - $alpha$}, X3best

PS4: {X1best + $alpha$}, {X2best - $alpha$}, X3best

Pair II: [X2best, X3best]:

PS5: X1best, {X2best + $alpha$}, {X3best + $alpha$}

PS6: X1best, {X2best - $alpha$}, {X3best + $alpha$}

PS7: X1best, {X2best - $alpha$}, {X3best - $alpha$}

PS8: X1best, {X2best + $alpha$}, {X3best - $alpha$}

Pair III: [X1best, X3best]:

PS9: {X1best + $alpha$}, X2best, {X3best + $alpha$}

PS10: {X1best + $alpha$}, X2best, {X3best - $alpha$}

PS11: {X1best - $alpha$}, X2best, {X3best - $alpha$}

PS12: {X1best - $alpha$}, X2best, {X3best + $alpha$}

Where, $alpha = gamma*(0.5 + 0.4*rand())$

$gamma = [beta - ((beta * Current_Iteration_No)/Max_No_of_Iterations)]$
... ('beta' is a tuning parameter and varies from problem to problem).

The value of 'gamma' starts with 'beta' and approaches zero as the iteration progresses.

Step 5: The newly constructed solution set is evaluated for the cost and the best solution and its corresponding solution values are selected.

Step 6: Step 4 and Step 5 are repeated until the optimal solution is attained or the stopping criterion is reached.

For one dimensional and two dimensional problems, the population size should be 2 and 4 respectively and cannot be 1*4 = 4 and 4*2 = 8. However, in this paper, the population size, $PS = 4*n$ is considered to have a wider solution set for one and two-dimensional problems as well. The population size cannot be a fixed one and, it is a function of the dimension. With the dimension, the population size also grows. This increases the computation time for higher dimension problems.

## 4 Benchmark Functions

For comparing the performance of any algorithm, numerous test functions are available in the literature. Several benchmark functions, their optimal values, search range and solution set used in this paper are collected [23]. Many functions are classified as tough in this portal and out of these, a few are analyzed separately. In addition, 10 instances of the 100 digit challenge of CEC2019 [24] and 13 instances from the paper, "The Arithmetic Optimization Algorithm" are also used in the analyses (Table 4 and Table 5). The test functions, their optimal values and search spaces are listed from Tables 1, 2, 3, 4, 5, and 6.

<table><caption>**Table 1.** Single Variable Functions</caption><thead><tr><td>S.No</td><td>Function</td><td>Optimal Value</td><td>Solution (x*)</td><td>Search Space</td></tr></thead><tbody><tr><td>1</td><td>sin(x) + sin(10*x/3)</td><td>-1.8996</td><td>5.145735</td><td>[2.7, 7.5]</td></tr><tr><td>2</td><td>-(16*x<sup>2</sup>-24*x+5)*e<sup>-x</sup></td><td>-3.8505</td><td>2.868034</td><td>[1.9, 3.9]</td></tr><tr><td>3</td><td>-(1.4-3*x)*sin(18*x)</td><td>-1.4891</td><td>0.96609</td><td>[0, 1.2]</td></tr><tr><td>4</td><td>sin(x) + sin(10*x/3) + log(x)-0.84*x + 3</td><td>-1.6013</td><td>5.19978</td><td>[2.7, 7.5]</td></tr><tr><td>5</td><td>2*cos(x) + cos(2*x)</td><td>-1.5</td><td>2.09439</td><td>[-π/2, 2*π]</td></tr><tr><td>6</td><td>sin<sup>3</sup>(x) + cos<sup>3</sup>(x)</td><td>-1</td><td>pi</td><td>[0, 2*π]</td></tr><tr><td>7</td><td>-e<sup>-x</sup>*sin(2*pi*x)</td><td>-0.78870</td><td>0.224885</td><td>[0, 4]</td></tr><tr><td>8</td><td>(x<sup>2</sup>-5x+6)/(x<sup>2</sup> + 1)</td><td>-0.035534</td><td>2.41422</td><td>[-5, 5]</td></tr><tr><td>9</td><td>-(x-sin(x))*exp(-x<sup>2</sup>)</td><td>-0.063491</td><td>1.195137</td><td>[-10, 10]</td></tr><tr><td>10</td><td>x*cos(x) + x*cos(2x)</td><td>-9.5084</td><td>4.79507</td><td>[0, 10]</td></tr></tbody></table>
<table><caption>**Table 2.** Popular Benchmark Functions</caption><thead><tr><th>S.No</th><th>Function</th><th>Optimal</th><th>Variables</th><th>Search Space</th></tr></thead><tbody><tr><td>1</td><td>Acklay1</td><td>0</td><td>30</td><td>[-35, 35]</td></tr><tr><td>2</td><td>Beale</td><td>0</td><td>2</td><td>[-4.5, 4.5]</td></tr><tr><td>3</td><td>Bohachevsky1</td><td>0</td><td>2</td><td>[-100, 100]</td></tr><tr><td>4</td><td>Booth</td><td>0</td><td>2</td><td>[-10, 10]</td></tr><tr><td>5</td><td>Branin RCOS1</td><td>0.3979</td><td>2</td><td>X1ε[-5, 10], X2ε[0, 15]</td></tr><tr><td>6</td><td>Brown</td><td>0</td><td>30</td><td>[-1, 4]</td></tr><tr><td>7</td><td>Carrom-Table</td><td>-24.1568</td><td>2</td><td>[-10, 10]</td></tr><tr><td>8</td><td>Cigar</td><td>0</td><td>30</td><td>[-100, 100]</td></tr><tr><td>9</td><td>Colville</td><td>0</td><td>4</td><td>[-10, 10]</td></tr><tr><td>10</td><td>Csendes</td><td>0</td><td>30</td><td>[-1, 1]</td></tr><tr><td>11</td><td>Cross in Tray</td><td>-2.0626</td><td>2</td><td>[-10, 10]</td></tr><tr><td>12</td><td>Cube</td><td>0</td><td>2</td><td>[-10, 10]</td></tr><tr><td>13</td><td>Dixon Price</td><td>0</td><td>30</td><td>[-10, 10]</td></tr><tr><td>14</td><td>Drop Wave</td><td>-1</td><td>2</td><td>[-5.12, 5.12]</td></tr><tr><td>15</td><td>Easom</td><td>-1</td><td>2</td><td>[-100, 100]</td></tr><tr><td>16</td><td>Egg Holder</td><td>-959.6407</td><td>2</td><td>[-512, 512]</td></tr><tr><td>17</td><td>Goldstein Price</td><td>3</td><td>2</td><td>[-2, 2]</td></tr><tr><td>18</td><td>Hartmann3</td><td>-3.8628</td><td>3</td><td>[0, 1]</td></tr><tr><td>19</td><td>Hartmann 4</td><td>-3.1345</td><td>4</td><td>[0, 1]</td></tr><tr><td>20</td><td>Hartmann6</td><td>-3.0424</td><td>6</td><td>[0, 1]</td></tr><tr><td>21</td><td>Holder Table2</td><td>19.2085</td><td>2</td><td>[-10, 10]</td></tr><tr><td>22</td><td>Katsuura</td><td>1</td><td>10</td><td>[0, 100]</td></tr><tr><td>23</td><td>Langermann 5</td><td>-4.1558</td><td>2</td><td>[0, 10]</td></tr><tr><td>24</td><td>Levy</td><td>0</td><td>30</td><td>[-10, 10]</td></tr><tr><td>25</td><td>Matyas</td><td>0</td><td>2</td><td>[-10, 10]</td></tr><tr><td>26</td><td>Mccormick</td><td>-1.9132</td><td>2</td><td>X1ε[-1.5, 4]; X2ε[-3, 3]</td></tr><tr><td>27</td><td>Michalewicz2</td><td>-1.8013</td><td>2</td><td>[0, pi]</td></tr><tr><td>28</td><td>Perm</td><td>0</td><td>2</td><td>[-2, 2]</td></tr><tr><td>29</td><td>Powell1</td><td>0</td><td>16</td><td>[-4, 5]</td></tr><tr><td>30</td><td>Power Sum</td><td>0</td><td>4</td><td>[0, 4]</td></tr><tr><td>31</td><td>Price02</td><td>0.9</td><td>2</td><td>[-10, 10]</td></tr><tr><td>32</td><td>Rastrigin</td><td>0</td><td>30</td><td>[-5.12, 5.12]</td></tr></tbody></table>

(continued)
<table><caption>**Table 2.** (continued)</caption><thead><tr><th>S.No</th><th>Function</th><th>Optimal</th><th>Variables</th><th>Search Space</th></tr></thead><tbody><tr><td>33</td><td>Rosenbrock</td><td>0</td><td>30</td><td>[-30, 30]</td></tr><tr><td>34</td><td>Rotated Hyper Ellipsoid</td><td>0</td><td>2</td><td>[-65.536, 65.536]</td></tr><tr><td>35</td><td>Scahffer 2</td><td>0</td><td>2</td><td>[-100, 100]</td></tr><tr><td>36</td><td>Scahffer 4</td><td>0.2926</td><td>2</td><td>[-100, 100]</td></tr><tr><td>37</td><td>Schwefel 2.26</td><td>0</td><td>2</td><td>[-500, 500]</td></tr><tr><td>38</td><td>Shekel 10</td><td>-10.5364</td><td>4</td><td>[0, 10]</td></tr><tr><td>39</td><td>Shubert</td><td>-186.7308</td><td>2</td><td>[-10, 10]</td></tr><tr><td>40</td><td>Six Hump Camel</td><td>-1.0316</td><td>2</td><td>X1ε[-3, 3]; X2ε[-2, 2]</td></tr><tr><td>41</td><td>Sphere</td><td>0</td><td>30</td><td>[-100, 100]</td></tr><tr><td>42</td><td>Styblinski-Tang</td><td>-78.3323</td><td>2</td><td>[-5, 5]</td></tr><tr><td>43</td><td>Sum Spheres</td><td>0</td><td>30</td><td>[-10, 10]</td></tr><tr><td>44</td><td>Three Hump Camel</td><td>0</td><td>2</td><td>[-5, 5]</td></tr><tr><td>45</td><td>Test Tube Holder</td><td>-10.8723</td><td>2</td><td>[-10, 10]</td></tr><tr><td>46</td><td>Trid6</td><td>-50</td><td>6</td><td>[-36, 36]</td></tr><tr><td>47</td><td>Ursem Waves</td><td>-8.5536</td><td>2</td><td>X1ε[-0.9, 1.2]; X2ε[-1.2, 1.2]</td></tr><tr><td>48</td><td>Vincent</td><td>-30</td><td>30</td><td>[0.25, 10]</td></tr><tr><td>49</td><td>Zakharov</td><td>0</td><td>30</td><td>[-5, 10]</td></tr></tbody></table>

<table><caption>**Table 3.** Hard Benchmark Functions</caption><thead><tr><th>S.No</th><th>Function</th><th>Optimal Value</th><th>No. of Variables</th><th>Search Space</th></tr></thead><tbody><tr><td>1</td><td>DeVilliersGlasser02</td><td>0</td><td>5</td><td>[0, 60]</td></tr><tr><td>2</td><td>Damavandi</td><td>0</td><td>2</td><td>[0, 14]</td></tr><tr><td>3</td><td>CrossLegTable</td><td>-1</td><td>2</td><td>[-10, 10]</td></tr><tr><td>4</td><td>XinSheYang03</td><td>-1</td><td>30</td><td>-20 to 20 (β = 15, m = 3)</td></tr><tr><td>5</td><td>SineEnvelope</td><td>0</td><td>30</td><td>[-100, 100]</td></tr><tr><td>6</td><td>Whitley</td><td>0</td><td>30</td><td>[-10.24, 10.24]</td></tr><tr><td>7</td><td>Griewank</td><td>0</td><td>30</td><td>[-100, 100]</td></tr><tr><td>8</td><td>Trefethen</td><td>-3.3068</td><td>2</td><td>[-10, 10]</td></tr><tr><td>9</td><td>Bukin06</td><td>0</td><td>2</td><td>x1ε[-15, -5]; x2ε[-3, 3]</td></tr><tr><td>10</td><td>CrownedCross</td><td>0.0001</td><td>2</td><td>[-10, 10]</td></tr><tr><td>11</td><td>Salomon</td><td>0</td><td>30</td><td>[-100, 100]</td></tr></tbody></table>
<table><caption>**Table 4.** More Unimodal Benchmark Functions</caption><thead><tr><th>Function</th><th>Description, f(x)</th><th>Dimensions</th><th>Search Space</th><th>Optimal</th></tr></thead><tbody><tr><td>F1</td><td>Σx<sub>i</sub><sup>2</sup>, i = 1 to n</td><td>30, 100</td><td>[-100, 100]</td><td>0</td></tr><tr><td>F2</td><td>Σ|x<sub>i</sub>| + Π|x<sub>i</sub>|, i = 0 to n</td><td>30, 100</td><td>[-10, 10]</td><td>0</td></tr><tr><td>F3</td><td>Σ<sup>d</sup><sub>i=1</sub>(Σ<sup>i</sup><sub>j=1</sub>x<sub>j</sub>)<sup>2</sup></td><td>30, 100</td><td>[-100, 100]</td><td>0</td></tr><tr><td>F4</td><td>Max<sub>i</sub>{|x<sub>i</sub>|, 1 ≤ i ≤ n}</td><td>30, 100</td><td>[-100, 100]</td><td>0</td></tr><tr><td>F5</td><td>Σ[100*(x<sub>i</sub><sup>2</sup> - x<sub>i+1</sub>)<sup>2</sup> + (1-x<sub>i</sub>)<sup>2</sup>], i = 1 to (n-1)</td><td>30, 100</td><td>[-30, 30]</td><td>0</td></tr><tr><td>F6</td><td>Σ([x<sub>i</sub> + 0.5]<sup>2</sup>, i = 1 to n</td><td>30, 100</td><td>[-100, 100]</td><td>0</td></tr><tr><td>F7</td><td>(Σi*x<sub>i</sub><sup>4</sup>) + random[0, 1], i = 0 to n</td><td>30, 100</td><td>[-128, 128]</td><td>0</td></tr></tbody></table>

<table><caption>**Table 5.** More Multimodal Benchmark Functions</caption><thead><tr><th>Function</th><th>Description, f(x)</th><th>Dimensions</th><th>Search Space</th><th>Optimal Value</th></tr></thead><tbody><tr><td>F8</td><td>Σ(-x<sub>i</sub> * Sine(√|x<sub>i</sub>|)), i = 1 to n</td><td>30, 100</td><td>[-500, 500]</td><td>-418.9829*n</td></tr><tr><td>F9</td><td>Σ[x<sub>i</sub><sup>2</sup> - 10*Cosine(2*π*x<sub>i</sub>) + 10]</td><td>30, 100</td><td>[-5.12, 5.12]</td><td>0</td></tr><tr><td>F10</td><td>-20*exp(-0.2*√(1/n) * Σ<sup>n</sup><sub>i=1</sub>x<sub>i</sub><sup>2</sup>) - exp(√(1/n) * Σ<sup>n</sup><sub>i=1</sub>Cosine(2*π*x<sub>i</sub>)) + 20 + e</td><td>30, 100</td><td>[-32, 32]</td><td>0</td></tr><tr><td>F11</td><td>1 + (1/4000)*Σ<sup>n</sup><sub>i=1</sub>x<sub>i</sub><sup>2</sup>) - Π[cosine(x<sub>i</sub>/√i)], i = 1 to n</td><td>30, 100</td><td>[-600, 600]</td><td>0</td></tr><tr><td>F12</td><td>(π/n)*[10*Sine(π*y<sub>i</sub>)] + Σ<sup>n-1</sup><sub>i=1</sub>(y<sub>i</sub> - 1)<sup>2</sup> [1 + 10*Sine<sup>2</sup>(π*y<sub>i</sub> + 1) + Σ<sup>n</sup><sub>i=1</sub> u(x<sub>i</sub>, 10, 100, 4)]</td><td>30, 100</td><td>[-50, 50]</td><td>0</td></tr><tr><td>F13</td><td>0.1*(sine<sup>2</sup>(3*π*x<sub>i</sub>) + Σ(x<sub>i</sub>-1)<sup>2</sup>[1 + Sine<sup>2</sup>(3*π*x<sub>i</sub> + 1)] + (x<sub>n</sub>-1)<sup>2</sup> + Sine<sup>2</sup>(2*π*x<sub>n</sub>)) + Σu(x<sub>i</sub>, 5, 100, 4), i = 1 to n</td><td>30, 100</td><td>[-50, 50]</td><td>0</td></tr></tbody></table>
<table><caption>**Table 6.** 100 Digit Challenge: Basic Test Suite (CEC2019)</caption><thead><tr><td>S.No</td><td>Function</td><td>Optimal Value</td><td>No. of Variables</td><td>Search Space</td></tr></thead><tbody><tr><td>1</td><td>Storn's Chebyshev Polynomial Fitting</td><td>1</td><td>9</td><td>[-8192, 8192]</td></tr><tr><td>2</td><td>Inverse Hilbert Matrix</td><td>1</td><td>16</td><td>[-16384, 16384]</td></tr><tr><td>3</td><td>Lennard-Jones Minimum Energy Cluster</td><td>1</td><td>18</td><td>[-4, 4]</td></tr><tr><td>4</td><td>Rastrigin</td><td>1</td><td>10</td><td>[-100, 100]</td></tr><tr><td>5</td><td>Griewangk</td><td>1</td><td>10</td><td>[-100, 100]</td></tr><tr><td>6</td><td>Weierstrass</td><td>1</td><td>10</td><td>[-100, 100]</td></tr><tr><td>7</td><td>Modified Schwefel</td><td>1</td><td>10</td><td>[-100, 100]</td></tr><tr><td>8</td><td>Expanded Schaffer (F6)</td><td>1</td><td>10</td><td>[-100, 100]</td></tr><tr><td>9</td><td>Happy Cat</td><td>1</td><td>10</td><td>[-100, 100]</td></tr><tr><td>10</td><td>Ackley</td><td>1</td><td>10</td><td>[-100, 100]</td></tr></tbody></table>

**5 Computational Results and Analysis with Other Algorithms**

In this section, the results of FP-AB are compared with a few other efficient algorithms like AOA, SCA. The original MATLAB codes used for the AOA are downloaded from the website [25]. The codes are run using MATLAB R2012b in an i5 PC with 4 GB RAM. The “*Beta*” values used in FP-AB are also given against each function.

Table 7 shows the results for 10 single variable functions. Sine Cosine Algorithm (SCA) and Arithmetic Optimization Algorithm (AOA) are used for this set of functions. FP-AB reports better results in 7/10 test functions when the ‘*mean*’ values are considered against 4/10 of AOA. When the ‘*best*’ values are considered, FP-AB could reach the optimal values in 9/10 cases whereas, for AOA and SCA, it is 8/10. The standard deviation is less in 7/10 problems for FP-AB whereas, the count is 3/10 for AOA and none for SCA.

Now, 49 numbers popular benchmark functions are analyzed for AOA and FP-AB. The ‘*best*’ (minimum), ‘*mean*’ (average), ‘*worst*’ (maximum), ‘*SD*’ (standard deviation) and time taken for 30 trials are computed.

FP-AB could reach the optimal values in 34/49 cases as against 29/49 of AOA. However, AOA dominates with 29/49 and 32/49 counts when the ‘*mean*’ and ‘*standard deviation*’ are considered. The total computation time for the execution of 49 test functions and 30 runs is 112.229784 s which is much less than the time taken (675.141266 s) by AOA.

For the 11 hard problems, FP-AB reports better results in 7/10 for the ‘*mean*’ and ‘*best*’ values followed by AOA which is accountable for 4/10 better results. However, the ‘*standard deviation*’ is better for AOA in 7/11 problems and for FP-AB, the count is 4/11. The performance of SCA is moderate here.

Seven unimodal and six multimodal functions that were analysed in AOA paper are considered here also for 30 and 100 dimensions. Performance of AOA is better than
<table><caption>**Table 7.** One Dimensional Functions (500 iterations)</caption><thead><tr><th>Function</th><th>Optimal Value</th><th>Algorithm</th><th>Best</th><th>Mean</th><th>Worst</th><th>SD</th></tr></thead><tbody><tr><td rowspan="3">1</td><td rowspan="3">-1.8996</td><td>SCA</td><td><b>-1.8996</b></td><td>-1.8993</td><td>-1.8967</td><td>0.00055563</td></tr><tr><td>AOA</td><td><b>-1.8996</b></td><td>-1.8995</td><td>-1.8989</td><td>0.00019048</td></tr><tr><td>Beta = 2</td><td>FP-AB</td><td><b>-1.8996</b></td><td><b>-1.8996</b></td><td>-1.8996</td><td><b>0</b></td></tr><tr><td rowspan="3">2</td><td rowspan="3">-3.8505</td><td>SCA</td><td><b>-3.8505</b></td><td>-3.8504</td><td>-3.8497</td><td>0.00013361</td></tr><tr><td>AOA</td><td><b>-3.8505</b></td><td>-3.8504</td><td>-3.8504</td><td>0.0000090285</td></tr><tr><td>Beta = 1</td><td>FP-AB</td><td><b>-3.8505</b></td><td><b>-3.8505</b></td><td>-3.8505</td><td><b>0</b></td></tr><tr><td rowspan="3">3</td><td rowspan="3">-1.4891</td><td>SCA</td><td><b>-1.4891</b></td><td>-1.2036</td><td>-0</td><td>0.55682</td></tr><tr><td>AOA</td><td><b>-1.4891</b></td><td><b>-1.4889</b></td><td>-1.4885</td><td><b>0.00013805</b></td></tr><tr><td>Beta = 1</td><td>FP-AB</td><td><b>-1.4891</b></td><td>-1.4777</td><td>-1.1502</td><td>0.0619</td></tr><tr><td rowspan="3">4</td><td rowspan="3">-1.6013</td><td>SCA</td><td><b>-1.6013</b></td><td>-1.6004</td><td>-1.5945</td><td>0.0013386</td></tr><tr><td>AOA</td><td><b>-1.6013</b></td><td>-1.6012</td><td>-1.6001</td><td>0.00023216</td></tr><tr><td>Beta = 4</td><td>FP-AB</td><td><b>-1.6013</b></td><td><b>-1.6013</b></td><td>-1.6013</td><td><b>1.0902E-05</b></td></tr><tr><td rowspan="3">5</td><td rowspan="3">-1.5</td><td>SCA</td><td><b>-1.5000</b></td><td>-1.4999</td><td>-1.4995</td><td>0.00013572</td></tr><tr><td>AOA</td><td><b>-1.5000</b></td><td><b>-1.5000</b></td><td>-1.5000</td><td>0.000010740</td></tr><tr><td>Beta = 0.5</td><td>FP-AB</td><td><b>-1.5</b></td><td><b>-1.5</b></td><td>-1.5</td><td><b>0</b></td></tr><tr><td rowspan="3">6</td><td rowspan="3">-1</td><td>SCA</td><td><b>-1.00000</b></td><td>-0.99998</td><td>-0.99987</td><td>0.000030543</td></tr><tr><td>AOA</td><td><b>-1.00000</b></td><td>-0.99999</td><td>-0.99991</td><td>0.000018753</td></tr><tr><td>Beta = 0.6</td><td>FP-AB</td><td><b>-1</b></td><td><b>-1</b></td><td>-1</td><td><b>7.2051E-08</b></td></tr><tr><td rowspan="3">7</td><td rowspan="3">-0.78869</td><td>SCA</td><td>-0.78869</td><td>-0.65723</td><td>-0</td><td>0.29895</td></tr><tr><td>AOA</td><td>-0.78869</td><td>-0.78864</td><td>-0.78821</td><td>0.000091231</td></tr><tr><td>Beta = 1.5</td><td>FP-AB</td><td><b>-0.78870</b></td><td><b>-0.78870</b></td><td>-0.78870</td><td><b>5.1068E-06</b></td></tr><tr><td rowspan="3">8</td><td rowspan="3">-0.035534</td><td>SCA</td><td><b>-0.035534</b></td><td>-0.035526</td><td>-0.035480</td><td>0.00001134</td></tr><tr><td>AOA</td><td><b>-0.035534</b></td><td><b>-0.035534</b></td><td>-0.035534</td><td><b>0.000000000040546</b></td></tr><tr><td>Beta = 0.4</td><td>FP-AB</td><td>-0.035533</td><td>-0.035531</td><td>-0.035530</td><td>0.00000074</td></tr><tr><td rowspan="3">9</td><td rowspan="3">-0.063491</td><td>SCA</td><td><b>-0.063491</b></td><td>-0.063480</td><td>-0.063372</td><td>0.00002453</td></tr><tr><td>AOA</td><td><b>-0.063491</b></td><td><b>-0.063491</b></td><td>-0.063491</td><td><b>0.00000000015304</b></td></tr><tr><td>Beta = 2</td><td>FP-AB</td><td><b>-0.063491</b></td><td>-0.063490</td><td>-0.063490</td><td>0.00000017</td></tr><tr><td rowspan="3">10</td><td rowspan="3">-9.5084</td><td>SCA</td><td>-9.5083</td><td>-5.3873</td><td>0</td><td>4.7916</td></tr><tr><td>AOA</td><td>-9.5083</td><td>-9.5081</td><td>-9.5066</td><td>0.00045874</td></tr><tr><td>Beta = 5</td><td>FP-AB</td><td><b>-9.5084</b></td><td><b>-9.5083</b></td><td>-9.5082</td><td><b>4.5189E-05</b></td></tr></tbody></table>

FP-AB for the 7 unimodal functions whereas, FP-AB performs better in the case of multimodal test cases (Table 8).
<table><caption>**Table 8.** Count of Better Results: Unimodal and Multimodal Functions</caption><thead><tr><th rowspan="2">Unimodal Functions (7 nos.)</th><th colspan="2">Dimension: 30</th><th colspan="2">Dimension: 100</th></tr><tr><th>AOA</th><th>FP-AB</th><th>AOA</th><th>FP-AB</th></tr></thead><tbody><tr><th>Best</th><td>5</td><td>2</td><td>4</td><td>3</td></tr><tr><th>Mean</th><td>5</td><td>2</td><td>5</td><td>2</td></tr><tr><th>SD</th><td>4</td><td>3</td><td>5</td><td>2</td></tr><tr><th>Total Count</th><td>14</td><td>7</td><td>14</td><td>7</td></tr><tr><th rowspan="2">Multimodal Functions (6 nos.)</th><th colspan="2">Dimension: 30</th><th colspan="2">Dimension: 100</th></tr><tr><th>AOA</th><th>FP-AB</th><th>AOA</th><th>FP-AB</th></tr><tr><th>Best</th><td>2</td><td>4</td><td>2</td><td>4</td></tr><tr><th>Mean</th><td>2</td><td>4</td><td>2</td><td>4</td></tr><tr><th>SD</th><td>3</td><td>3</td><td>4</td><td>2</td></tr><tr><th>Total Count</th><td>7</td><td>11</td><td>8</td><td>10</td></tr></tbody></table>

FP-AB could yield better values in 14/42 results of unimodal functions and 21/36 of multimodal cases when both 30 dimensions and 100 dimensions are combined. AOA performs better in the case of unimodal functions with 28/42 results and behind FP-AB with 15/36 results in the case of multimodal problems.

<table><caption>**Table 9.** Results of the 100 Digit Challenge (CEC2019) [30 Trials, 500 Iterations]</caption><thead><tr><th rowspan="2">F</th><th rowspan="2">Optimal Value</th><th colspan="2">AOA</th><th colspan="2">FP-AB</th><th rowspan="2">Beta</th></tr><tr><th>Mean</th><th>SD</th><th>Mean</th><th>SD</th></tr></thead><tbody><tr><td>1</td><td>1</td><td><strong>2.435E + 09</strong></td><td>6.110E + 09</td><td>7.72E + 09</td><td><strong>5.81E + 09</strong></td><td>200</td></tr><tr><td>2</td><td>1</td><td>2.045E + 01</td><td>3.348E-01</td><td><strong>1.84E + 01</strong></td><td><strong>1.30E-02</strong></td><td>100</td></tr><tr><td>3</td><td>1</td><td><strong>1.370E + 01</strong></td><td>8.831E-04</td><td><strong>1.37E + 01</strong></td><td><strong>5.68E-10</strong></td><td>0.5</td></tr><tr><td>4</td><td>1</td><td>1.051E + 04</td><td>3.827E + 03</td><td><strong>2.30E + 01</strong></td><td><strong>9.98E + 00</strong></td><td>15</td></tr><tr><td>5</td><td>1</td><td>4.652E + 00</td><td>8.626E-01</td><td><strong>2.19E + 00</strong></td><td><strong>9.73E-02</strong></td><td>20</td></tr><tr><td>6</td><td>1</td><td>9.880E + 00</td><td><strong>1.106E + 00</strong></td><td><strong>4.83E + 00</strong></td><td>1.46E + 00</td><td>1</td></tr><tr><td>7</td><td>1</td><td>2.256E + 02</td><td>1.281E + 02</td><td><strong>8.71E + 01</strong></td><td><strong>1.05E + 02</strong></td><td>70</td></tr><tr><td>8</td><td>1</td><td>5.503E + 00</td><td><strong>6.216E-01</strong></td><td><strong>4.92E + 00</strong></td><td>7.04E-01</td><td>70</td></tr><tr><td>9</td><td>1</td><td>8.352E + 02</td><td>4.169E + 02</td><td><strong>3.62E + 00</strong></td><td><strong>1.36E-01</strong></td><td>25</td></tr><tr><td>10</td><td>1</td><td>1.662E + 01</td><td>2.163E + 00</td><td><strong>2.39E + 00</strong></td><td><strong>3.81E-01</strong></td><td>50</td></tr></tbody></table>

Finally, ten test suites used in the popular 100-digit challenge of CEC2019 are evaluated for the 'mean' and 'standard deviation' metrics.
The program is run with AOA and FP-AB algorithms and the outputs are analyzed. Other results are taken from the paper of Mohammed and Rashid [20] for the purpose of comparison since the maximum iterations (500), population size (30) and trials (30) considered are the same in this paper also.

The results demonstrate the better performance of FP-AB when compared with WOA, WOA-GWO, GWO, WOA-BAT and SCA. FP-AB accounts for 7/10 better results followed by WOA-BAT with 2/10 and WOA-GWA with 1/10 results for the 'mean' metric. However, for the 'standard deviation', FP-AB could account for the 4 best values. In this case, GWO comes next with 3 best results and, WOA, WOA-GWO and SCA with 1 each.

When AOA and FP-AB are compared (Table 9), FP-AB performs well showing superior results in 9/10 cases (for 'mean' values) and, 8/10 cases (for the 'standard deviation'). AOA could yield better values only in 2 cases each.

## 6 Statistical Analyses

The non-parametric Wilcoxon Signed-Rank Test is used for comparing the data and is used if the differences between pairs of data are not distributed normally. Since the sample size exceeds 16 in number, the test is conducted for the 49 popular benchmark functions. The differences between the 'mean' as well as 'best' values from the 'optimal' values are considered for the analysis. The results are presented in Table 10.

<table><caption>**Table 10.** Wilcoxon Signed-Rank Test</caption><caption>Test of median = 0.000000 versus median ≠ 0.000000</caption><thead><tr><th></th><th>N</th><th>N for Test</th><th>Wilcoxon Statistic</th><th>P</th><th>Estimated Median</th></tr></thead><tbody><tr><td>Mean</td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>AOA</td><td>49</td><td>31</td><td>468.0</td><td>0.000</td><td>0.8541</td></tr><tr><td>FP-AB</td><td>49</td><td>36</td><td>635.5</td><td>0.000</td><td>0.1838</td></tr><tr><td>Best</td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>AOA</td><td>49</td><td>23</td><td>248.5</td><td>0.001</td><td>0.001850</td></tr><tr><td>FP-AB</td><td>49</td><td>21</td><td>211.0</td><td>0.001</td><td>0.00004780</td></tr></tbody></table>

The P-value is zero for both which indicates that the difference between the population median and the hypothesized median is statistically significant (rejecting the null hypothesis) when the 'mean' values are considered. However, the Wilcoxon Statistic for AOA is 468.0 against 635.5 of FP-AB which confirms the better performance of AOA over FP-AB.

When the 'best' values are analyzed, the P-value is 0.001 for both AOA and FP-AB which is again < 0.05. This shows that the difference between the population median and the hypothesized median is statistically significant here also. However, the
Wilcoxon Statistic for FP-AB is 211.0 which is less than that of AOA indicating the better performance of FP-AB over AOA for the 'best' values.

The estimated median is smaller for FP-AB in both the cases of 'mean' and 'best' values. Table 11 shows the results of Mann-Whitney tests for both 'mean' and 'best' values.

<table><caption>Table 11. Mann-Whitney Test</caption><thead><tr><th rowspan="2"></th><th colspan="2">Mean</th><th colspan="2">Best</th></tr><tr><th>N</th><th>Median</th><th>N</th><th>Median</th></tr></thead><tbody><tr><td>AOA</td><td>49</td><td>0.0</td><td>49</td><td>0.000</td></tr><tr><td>FP-AB</td><td>49</td><td>0.0</td><td>49</td><td>0.000</td></tr><tr><td>Wilcoxon test statistic</td><td colspan="2">2468</td><td colspan="2">2504.5</td></tr><tr><td>P-value (adjusted for ties)</td><td colspan="2">0.7566</td><td colspan="2">0.5282</td></tr></tbody></table>

It can be concluded that there is no significant difference statistically in median engagement between AOA and FP-AB since the p-value reported is greater than 0.05. However, the p-value is less for the 'best' values.

# 7 Conclusions, Limitation and Future Work

This work proposed and analyzed a simple hybrid local search optimization algorithm, FP-AB using 93 unconstrained benchmark functions. The obtained results are compared with a few recent efficient algorithms available in the literature including the recent Arithmetic Optimization Algorithm (AOA). The analyses confirm the efficacy of the new hybrid algorithm; FP-AB which is comparable with AOA and a fair competitor to other optimization algorithms. The limitation of the new algorithm is that the computation time increases with increasing dimensions since the initial population size is dynamically fixed as 4*dimensions. Future work includes an analysis of the new algorithm for constrained and real-world engineering optimization problems.

# References

1. Davidon, W.C.: Variable metric method for minimization. SIAM J. Optim. 1(1), 1–17 (1991)

2. Fletcher, R., Powell, M.J.: A rapidly convergent descent method for minimization. Comput. J. 6(2), 163–168 (1963)

3. Powell, M.J.: Algorithms for nonlinear constraints that use Lagrangian functions. Math. Program. 14(1), 224–248 (1978)

4. Holland, J.H.: Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence. MIT press, London (1992)

5. Martins, J.R., Ning, A.: Engineering Design Optimization. Cambridge University Press, Cambridge (2021)
6. Rios, L.M., Sahinidis, N.: Derivative-free optimization: a review of algorithms and comparison of software implementations. J. Global Optim. 56(3), 1247–1293 (2013)

7. Hooke, R., Jeeves, T.A.: Direct search solution of numerical and statistical problems. J. ACM 8(2), 212–229 (1961)

8. Karmarkar, N.: A new polynomial-time algorithm for linear programming. In: Proceedings of the Sixteenth Annual ACM Symposium on Theory of Computing, pp. 302–311. Association for Computing Machinery, New York (1984)

9. Droste, S., Jansen, T., Wegener, I.: Upper and lower bounds for randomized search heuristics in black-box optimization. Theory of Comput. Syst. 39(4), 525–544 (2006)

10. Rao, R.: Jaya: a simple and new optimization algorithm for solving constrained and unconstrained optimization problems. Int. J. Ind. Eng. Comput. 7(1), 19–34 (2016)

11. Mirjalili, S.: SCA: a sine cosine algorithm for solving optimization problems. Knowl.-Based Syst. 96, 120–133 (2016)

12. Mirjalili, S., Lewis, A.: The whale optimization algorithm. Adv. Eng. Softw. 95, 51–67 (2016)

13. Baskar, A.: New simple trigonometric algorithms for solving optimization problems. J. Applied Sci. Eng. 25(6), 1105–1120 (2022). https://doi.org/10.6180/jase.202212_25(6).0020

14. Baskar, A.: Sine (B): a single randomized population-based algorithm for solving optimization problems. Materials Today – Proceedings 62(7), 4745–4751 (2022). https://doi.org/10.1016/j.matpr.2022.03.253

15. Abualigah, L., Diabat, A., Mirjalili, S., Abd Elaziz, M., Gandomi, A.H.: The arithmetic optimization algorithm. Comput. Methods Appl. Mech. Eng. 376, 113609 (2021)

16. Agushaka, J.O., Ezugwu, A.E.: Advanced arithmetic optimization algorithm for solving mechanical engineering design problems. PLoS ONE 16(8), e0255703 (2021). https://doi.org/10.1371/journal.pone.0255703

17. Hashim, F.A., Hussain, K., Houssein, E.H., Mabrouk, M.S., Al-Atabany, W.: Archimedes optimization algorithm: a new metaheuristic algorithm for solving optimization problems. Appl. Intell. 51(3), 1531–1551 (2020)

18. Wolpert, D.H., Macready, W.G.: No free lunch theorems for optimization. IEEE Trans. Evol. Comput. 1(1), 67–82 (1997)

19. Mirjalili, S., Mirjalili, S.M., Lewis, A.: Grey wolf optimizer. Adv. Eng. Softw. 69, 46–61 (2014)

20. Mohammed, H., Rashid, T.: A novel hybrid GWO with WOA for global numerical optimization and solving pressure vessel design. Neural Comput. Appl. 32(18), 14701–14718 (2020)

21. Mohammed, H.M., Umar, S.U., Rashid, T.A.: A systematic and meta-analysis survey of whale optimization algorithm. Comput. Intell. Neurosci. (2019). https://doi.org/10.1155/2019/8718571

22. Baskar, A., Anthony Xavior, M.: A four-point direction search heuristic algorithm applied to facility location on plane, sphere, and ellipsoid surfaces. J. Operational Res. Soc. 73(11), 2385–2394 (2021). https://doi.org/10.1080/01605682.2021.1984185

23. Test Functions Homepage. http://infinity77.net/global_optimization/test_functions.html. Accessed 01 Nov 2021

24. Price, K.V., Awad, N.H., Ali, M.Z., Sughanthan, P.N.: The 100-digit challenge: problem definitions and evaluation criteria for the 100-digit challenge special session and competition on single objective numerical optimization. Nanyang Technological University (2018)

25. Syedalimirjalili Homepage. https://seyedalimirjalili.com/aoa. Accessed 4 Nov 2021