## 4 The Proposed New SMO Variant
### The Beta-Hill Climbing Optimizer (BHC)  
The Beta-Hill Climbing optimizer, created by [PERSON] [45], is a novel local search method that explores solutions. The BHC algorithm is iterative and starts with the generation and evaluation of a random solution, \(x_{j}=(x_{1},x_{2},\ldots\ldots x_{D})\), where \(D\) is the dimension of the problem. The algorithm employs two main operators, the \(\mathcal{N}\)-operator and the \(\mathcal{B}\)-operator, which are used for exploitation and exploration, respectively. The \(\mathcal{N}\)-operator serves as a neighborhood search, while the \(\mathcal{B}\)-operator operates similarly to a mutation operator. In each iteration of the BHC algorithm, the \(\mathcal{N}\)-operator is executed before the \(\mathcal{B}\)-operator. After the initial random solution \(x\) is evaluated using the objective function \(f_{obj}()\), the \(\mathcal{N}\)-operator updates it by producing a new solution \(x^{\prime}\) in the vicinity of the original solution \(x\):  
\[x_{j}^{{}^{\prime}}=x_{j}\pm rand(0,1)\times b_{w} \tag{9}\]  
where \(j\) is randomly selected from the set \(j\in\{1,2,\ldots,D\}\), \(b_{w}\) denotes the distance between the new solution and the current solution, and \(rand(0,1)\) represents a random number in the range \([0,\ 1]\). It is important to note that in each iteration, the \(\mathcal{N}\)-operator only modifies one component randomly in the solution vector \(x_{j}=(x_{1},x_{2},\ldots\ldots x_{D})\).  
Using the B-operator, a new solution vector component, \(x^{\prime\prime}\) is designed. Its index \(j\) is selected beforehand using a random selection, as shown in the following formula:  
\[x_{j}^{{}^{\prime\prime}}=\begin{cases}l_{j}+\big{(}u_{j}-l_{j}\big{)}\times rand _{1}(0,1)&rand_{2}(0,1)<\mathcal{B}\\ x_{j}^{{}^{\prime}}&otherwise\end{cases} \tag{10}\]  
If the condition \(rand_{2}(0,1)<\mathcal{B}\) is verified, the index \(j\) is randomly selected from the set \(\{1,2,\ldots,D\}\). \(rand_{1}(0,1)\) and \(rand_{2}(0,1)\) are random numbers in \([0,\ 1]\). Finally, we obtain a new solution vector \(x_{j}^{new}\), for example, equal to:  
\[x_{j}^{new}=\big{(}x_{1},x^{\prime},\ldots x^{{}^{\prime\prime}},\ldots x_{D} \big{)} \tag{11}\]  
It should be noted that the \(x_{j}^{new}\) has only one component obtained using the \(\mathcal{N}\)-operator and at least one component found using the \(\mathcal{B}\)-operator. Additionally, the element \(x^{\prime}\) can be replaced by an another \(x^{\prime\prime}\) produced during the \(\mathcal{B}\)-operator stage. Finally, if \(f_{obj}(x^{new})<f_{obj}(x)\), then \(x\) is replaced by \(x^{new}\).  
```
Input: Global Leader Limit (GLL), MG Output:\(X_{GL\ SM_{new}}^{j}\), \(X_{LL\ SM_{new}}^{k,j}\) for each \(k\)th group, Global Limit Count = 0
1:function SMO-GLD phase
2:  if Global Limit Count \(\leq\) Global Leader Limit
3:  if Numbers of groups \(<\) MG
4:  Number of groups = Number of groups + 1
5:  Generate a \(X_{LL\ SM_{new}}^{k,j}\) equal to the existing groups, where \(l\)\(\in\left\{l_{1}^{k},l_{1}^{k}+1,\ldots\ldots,l_{1}^{k}+\frac{N}{M_{l}}\right\}\), \(k\) is the index of the \(k\)th group
6:  Generate a new \(X_{GL\ SM_{new}}^{j}\)
7:  Global Limit Count = 0
8:else
9:  Numbers of groups =1
10:  Global Limit Count = 0
11:  end if
12:  end if
13:  end function
```  
**Algorithm 4**Global Leader Decision (GLD) phase