## 2 Hybrid Method Description
It has one input parameter, the individual that has been selected to migrate into this player. The _Immigrate_ process is responsible for incorporating the individual into the player. The _Immigrate_ process of the Genetic Algorithm substitutes the design variables of the last individual of its internal population with the one that comes from the conjugate gradient. This introduces the genetic information of this individual into the population. In the next iteration, the design variables of this individual will be used in the genetic operators. In order not to repeat computations, the conjugate gradient player only performs a new iteration when the Genetic Algorithm one provides a best individual different than in the previous global iteration. On the other hand, the Genetic Algorithm player always incorporates to the population the best individual coming from the conjugate gradient, even if it is the same as in any previous global iteration. The stochastic nature of the Genetic Algorithm can benefit from maintaining the best individual in the population at each iteration. There is a probability that the best individual is not selected in the genetic operators, and to keep the best individual in the population, keeping its genetic information can help to converge in that region. One could think about problems with elitism, but the method only forces one individual to remain in the population, the absolute best so far. If this happens for too long, most probably the optimization has converged, and in case it is not converged, the algorithm should still be capable to explore other regions with the mutation operator and the stochastic nature of the Genetic Algorithm. For more clarity, the general algorithm with two players, the Genetic Algorithm as the first player and the conjugate gradient as the second one, is schematized at Figure 1. As mentioned previously, a migration epoch occurs after each iteration of each player. This executes the process detailed in the Algorithm 2, enabling the possibility of exchanging information between the two players. The configuration of the Genetic Algorithm is specified in Table 1 and the configuration of the conjugate gradient is specified in Table 2. The configuration of both optimization algorithms is the same when running alone and when running as a player of the Hybrid Method. \begin{table}
\begin{tabular}{c c} \hline
**Parameter** & **Value** \\ \hline Crossover operator & Simulated Binary Crossover [16] \\ Mutation operator & Polynomial Mutation [17] \\ Selection operator & \(\mu+\lambda\) \& Crowded-Comparison Operator [14] \\ Probability of crossover & 0.9 \\ Probability of mutation & 0.1 \\ Population size & 20 \\ \hline \end{tabular}
\end{table} 
Table 1: Parameters of the Genetic Algorithm. \begin{table}
\begin{tabular}{c c} \hline
**Parameter** & **Value** \\ \hline Search Direction Method & Fletcher-Reeves [18] \\ Optimal Step Size Method & Golden Section [19] \\ Epsilon for numerical diferentiation & \(1.0\times 10^{-6}\) \\ First step size & \(1.0\times 10^{-3}\) \\ Optimal step size tolerance & \(1.0\times 10^{-3}\) \\ \hline \end{tabular}
\end{table} 
Table 2: Parameters of the conjugate gradient algorithm. One of the main drawbacks of the proposed Hybrid Method, using both population and gradient-based optimization methods, is that it requires the independent configuration of each optimization method for each player. In this case, the configuration of the Hybrid Method requires the configuration of the Genetic Algorithm and the conjugate gradient players. On the other hand, it also enables the possibility to fine tune the players to perform better, but in cases with high computational costs, it is difficult to perform tests with different configuration values. Another drawback of the Hybrid Method is that the parallelization of the evaluations of the individuals can become more ineffective because each method may have its optimum number of CPUs which may be different for each method.