# An Efficient and Fast Hybrid GWO-JAYA Algorithm for Design Optimization
## 2 The FHGWJA Algorithm
Vectors \(\overset{\rightarrow}{A}\) and \(\overset{\rightarrow}{C}\) are defined as follows:  
\[\overset{\rightarrow}{A}=2\overset{\rightarrow}{a}\cdot\overset{ \rightarrow}{r_{1}}-\overset{\rightarrow}{a} \tag{6}\]  
\[\overset{\rightarrow}{C}=2\overset{\rightarrow}{r_{2}} \tag{7}\]  
In Equations (6) and (7), the components of the \(\overset{\rightarrow}{a}\) vector decrease linearly from 2 to 0 as the optimization progresses; \(\overset{\rightarrow}{r_{1}}\) and \(\overset{\rightarrow}{r_{2}}\) are random vectors in the [0,1] interval. While grey wolves actually recognize the prey's location in the hunting phase, the optimum position (prey) usually is not known a priori in the optimization search. In order to reproduce wolves' behavior in the GWO algorithm, it is assumed that the three best solutions of the population (i.e., \(\alpha\), \(\beta\), and \(\delta\) wolves) have a better knowledge of the potential prey's location (i.e., the target optimal solution). The rest of population must be updated using the \(\overset{\rightarrow}{X_{\alpha}}\), \(\overset{\rightarrow}{X_{\beta}}\), and \(\overset{\rightarrow}{X_{\delta}}\) positions of the best three search agents. The generic solution \(\overset{\rightarrow}{X_{i}}\) of population is updated to \(\overset{\rightarrow}{X_{i,tr}}\) as follows:  
\[ \begin{cases}\overset{\rightarrow}{D_{\alpha}}=\left|\overset{\rightarrow}{ C_{1}}\cdot\overset{\rightarrow}{X_{\alpha}}\right|-\overset{\rightarrow}{X_{i}}\\ \overset{\rightarrow}{D_{\beta}}=\left|\overset{\rightarrow}{C_{2}}\cdot \overset{\rightarrow}{X_{\beta}}\right|-\overset{\rightarrow}{X_{i}}\\ \overset{\rightarrow}{D_{\delta}}=\left|\overset{\rightarrow}{C_{3}}\cdot \overset{\rightarrow}{X_{\delta}}\right|-\overset{\rightarrow}{X_{i}}\\ \end{cases}  \tag{8}\]  
\[ \begin{cases}\overset{\rightarrow}{X_{1}}=\overset{\rightarrow}{X_{\alpha}}- \overset{\rightarrow}{A_{1}}\cdot\overset{\rightarrow}{D_{\alpha}}\\ \overset{\rightarrow}{X_{2}}=\overset{\rightarrow}{X_{\beta}}- \overset{\rightarrow}{A_{2}}\cdot\overset{\rightarrow}{D_{\beta}}\\ \overset{\rightarrow}{X_{3}}=\overset{\rightarrow}{X_{\delta}}- \overset{\rightarrow}{A_{3}}\cdot\overset{\rightarrow}{D_{\delta}}\\ \end{cases}  \tag{9}\]  
\[\left(\overset{\rightarrow}{X_{i,tr}}\right)^{pred}=\frac{\overset{\rightarrow} {X_{1}}+\overset{\rightarrow}{X_{2}}+\overset{\rightarrow}{X_{3}}}{3} \tag{10}\]  
In Equation (9), vectors \(\overset{\rightarrow}{X_{1}}\), \(\overset{\rightarrow}{X_{2}}\), and\(\overset{\rightarrow}{X_{3}}\) are defined for each candidate design \(\overset{\rightarrow}{X_{i}}\) of the population. Equations (8)-(10) update the positions of all search agents. In the optimization process, the wolves \(\alpha\), \(\beta\), and \(\delta\) estimate the prey's position (i.e., the position of the optimal solution) and each candidate solution in the population updates its distance from the prey. The parameter \(a\) is reduced from 2 to 0 to emphasize exploration and exploitation, respectively. In the exploration phase, candidate solutions tend to search for another prey when \(\|\overset{\rightarrow}{A}\|>1\). Conversely, in the exploitation phase, candidate solutions converge towards the prey when \(\|\overset{\rightarrow}{A}\|<1\). Step 3. Rank-based refinement of preliminary trial designs  
In the classical GWO, the new population formed by the trial solutions \(\overset{\rightarrow}{X_{i,tr}}\) obtained by perturbing the individuals \(\overset{\rightarrow}{X_{i}}\) stored in the population in the previous iteration are sorted in terms of penalized cost function values to update positions \(\overset{\rightarrow}{X_{\alpha}}\), \(\overset{\rightarrow}{X_{\beta}}\), and \(\overset{\rightarrow}{X_{\delta}}\). The process ends upon reaching the limit to the number of iterations or function evaluations defined by the user.