# An Innovative Hybrid Approach Producing Trial Solutions for Global Optimization
## 2 The Overall Algorithm
**Set** initial step size for Armijo \(a=a_{0}\)* **Find** new points using line search Armijo minLS\((x_{i},c_{i})\): \(x_{i}^{new}=x_{i}+ap_{1}\) and \(c_{i}^{new}=c_{i}+ap_{2}\)
* **Set** the reduction constant \(c_{1}=10^{-4}\)
* **Adjust** step size \(a\) until Armijo condition is met: \[f\text{s}(x_{i}^{new},c_{i}^{new})\leq f\text{s}(x_{i},c_{i})+c_{1}a\
abla f \text{s}(x_{i},c_{i})^{\text{T}}(p_{1}+p_{2})\] (3)
* **Make** sample-child with crossover with random number \(g_{k}\in[0,1]\): \[\text{child}\Big{(}x_{i},x^{best}\Big{)}=g_{k}x_{i,k}+(1-g_{k})x_{k}^{best}\] (4)
* **For**\(j=1,\ldots,n\) **do*
* trial vector: \[y_{j}=x_{i,j}+F\times\big{(}\text{minLS}(x_{i},c_{i})_{j}-\text{child}(x_{i},c_{i})_{j}\big{)}\] (5) where \(F\) is the so-called Differential Weight of Differential Evolution algorithm. * **If**\(y_{j}\
otin\big{[}a_{j},b_{j}\big{]}\), then \(y_{j}=x_{i,j}\)
* **EndFor**
* **Set**\(r\in[0,1]\) a random number. If \(r\leq p_{m}\) then \(x_{i}=\text{LS}(x_{i})\), where \(\text{LS}(x)\) is a local search procedure, such as the BFGS procedure [37]. * **If**\(f(y)\leq f(x)\) then \(x=y\), \(x^{best}=y\). * **EndFor**
* **Check the termination rule stated in [34]**, which means that the method checks the difference between the current optimal solution \(f_{min}^{(t)}\) and the previous \(f_{min}^{(t-1)}\) one. The algorithm terminates when the following: \[\Big{|}f_{\text{min}}^{(t)}-f_{\text{min}}^{(t-1)}\Big{|}\leq\epsilon\] (6) holds for \(N_{t}\) iterations. The value \(\epsilon\) is a small positive value. In the conducted experiments the value \(\epsilon=10^{-5}\) was used. If the termination rule of Equation (6) does not hold, then the algorithm continues from Step 2. * **Return** the sample \(x^{best}\) in the population with the lower function value \(f\Big{(}x^{best}\Big{)}\). The algorithm is also shown as a flowchart in Figure 1. The optimization method described here combines different evolutionary techniques, such as differential evolution, the Armijo line search, and components of genetic algorithms, with the aim of finding the optimal solution. Initially, the population size and the dimensionality of the target function are defined, and the population samples are generated randomly using a uniform or k-means distribution. For each sample, the Euclidean distance (Equation (2)) to the other samples is calculated to identify the nearest one, followed by an Armijo line search (Equation (3)) to determine the optimal movement direction for the initial sample. Subsequently, a new offspring sample is created using a crossover process (Equation (4)), combining the current sample with the best one discovered so far. A trial vector (Equation (5)) is then formed, which accounts for the adjustment of the computed samples and the differential coefficient parameter derived from the differential evolution algorithm. Periodically, local search methods, such as BFGS [37], are applied to improve the accuracy of the solution search. The algorithm terminates when the best solution found remains nearly unchanged for a specified number of iterations. In summary, the basic steps for calculating a new sample are as follows:  
* **Identification of the nearest point \(c_{i}\) to each sample \(x_{i}\). **Calculation of a sample \(\min\)LS\((x_{i},c_{i})\), through the Armijo line search, between the sample \(x_{i}\) and the sample \(c_{i}\). * Generation of the sample, using the crossover process of the genetic algorithm, between the sample \(x_{i}\) and the best sample \(x^{best}\). * Computation of the trial point \(y_{i}\) using a process derived from differential evolution.