# A Novel Optimization Algorithm Combing
## 3 The Gbest-Guided ABC Algorithm with Gradient Information  
As illustrated in the Introduction, [PERSON] and [PERSON] [20] incorporated the information of global best solution into the solution equation and developed a better version of the ABC algorithm called the Gbest-guided ABC (GABC) algorithm. They modified the ABC algorithm by replacing Equation (2) with Equation (4), thus driving the new candidate solution toward the global best solution. Their study shows that the new solution search equation described by Equation (4) can increase the exploitation of the ABC algorithm, and the parameter \(C\) plays an important role in balancing the exploration and exploitation of the searching for the optimal solution. For most of the results of their cases, it can be observed that as the value of parameter \(C\) increases, the optimization results get better at first but then begin to deteriorate after a certain value. In their numerical experiments, GABC algorithm with \(C=1.5\) shows the best performance among the tested programs. \[v_{ij}=x_{ij}+\phi_{ij}\Big{(}x_{ij}-x_{kj}\Big{)}+C\psi_{ij}\Big{(}y_{j}-x_{ ij}\Big{)} \tag{4}\]  
where \(C\) is a non-negative constant parameter, \(\Psi_{ij}\) is a random number in \([0,1]\) and \(y_{j}\) is the \(j\)th element of the global best solution. Actually, in Equation (4), \(y_{j}\) represents only the information of best solution found so far. There may be better solutions that have not been searched out by algorithm. In Figure 1, \(y_{j}\) with negative gradient value at \(j\)th element is represented by \(y_{i}^{\prime}\). Taking \(y_{j}^{\prime}\) as an example, if the value of \(C\) in Equation (4) is less than 1, the solutions generated by Equation (4) is closer to a solution on the left side of \(y_{j}^{\prime}\). In another case, if the value of \(C\) is much larger than 1, the solutions generated by Equation (4) is closer to a solution on the very right side of \(y_{j}^{\prime}\). But GABC algorithm prefers to search toward a small range (region A) on the right of \(y_{j}^{\prime}\) because there are better solutions in this area. Therefore, we suggest that 1.5 may be a relatively appropriate value of \(C\) for the cases that [PERSON] and [PERSON] studied. Although the GABC algorithm can achieve good results when the parameter \(C\) is 1.5, it still has some inherent weakness. For example, in Figure 1, \(y_{j}\)\" has positive gradient value at the \(j\)th element and \(x_{ij}\) is less than \(y_{j}^{\prime\prime}\). The solutions generated by Equation (4) with \(C=1.5\) is closer to a solution on the right side of \(y_{j}\)\", instead of better solutions on the left. Besides, because [PERSON] and [PERSON] only took a few discrete values for \(C\), the optimal parameter value could not be accurately determined. In their calculations for the Rastrigin function, the program with \(C=1\) got better results than the program with \(C=1.5\). This means that \(C=1.5\) is not applicable to all optimization problems. A more accurate estimation of the best solution may further improve the exploitation of algorithm. Since the GABC algorithm has these defects, we hope to propose new ideas on the solution search equation. As shown in Figure 1, better solutions may be on the left or right side of the current global best solution, which is related to the sign of the gradient. Therefore, we define the \(j\)th element of estimated best solution as follows: \(y_{j}-\zeta_{ij}(y_{j}-z_{j2})\)/2 (\(\zeta_{ij}\) is a random number in [0, 1] and \(z_{j2}\) is the rightmost solution of \(y_{j}\)) when the gradient value of \(y_{j}\) is negative, \(y_{j}-\zeta_{ij}(y_{j}-z_{j1})\)/2 (\(z_{j1}\) is the leftmost solution of \(y_{j}\)) when the gradient value is positive and still \(y_{j}\) when the gradient value is zero. Taking advantage of the estimated best solution, the solution search equation used by employed bees and onlookers is converted into Equation (5).