# Ultra-Wideband Antenna Design for 5G NR Using the Bezier Search Differential Evolution Algorithm
## 2 Materials and Methods
### Bezier Search Differential Evolution Algorithm Description
```
Compute Bezier mutation vectors \(dw_{2}\) for\(i=1\)to\(N\)do \(Y_{i}=[M_{i},M_{y_{3},i},M_{y_{4},i},N_{best_{i}}]^{T}\) \(Y:=Y_{Permutation(1:N)}\) \(dw2_{i}=[B_{0,3}(q)\,B_{1,3}(q)\,B_{2,3}(q)\,B_{3,3}(q)]\cdot Y\ \mid\ q \sim U(0,1)\) endfor  Compute evolutionary step size \(F\) for\(i=1\)to\(N\)do \(F_{i}=a\cdot b^{e},\ |\ a\sim\mathcal{N}(0,1)\),\(b=1+\kappa\) \(e=a^{c}\ |\ c\sim U\{1,2,\ldots,7\}\) endfor  Compute crossover control matrix \(C\) \(C_{1}(1:N,1:\mathrm{D})=C_{2}(1:N,1:\mathrm{D})=0\) for\(i=1\)to\(N\)do \(C_{1}(i,h(u))=1\ |\ h=\mathrm{Permuting}(1:\mathrm{D})\), \(u=1\): \(\lceil\kappa^{c}\cdot\mathrm{D}\rceil\) \(C_{2}(i,h(u))=1\ |\ h=\mathrm{Permuting}(1:\mathrm{D})\), \(u=1\): \(\lceil 1-\kappa^{c}\cdot\mathrm{D}\rceil\) if\(\kappa<\kappa\)then \(C=C_{1}\) else \(C=C_{2}\) endif endfor  Compute trial pattern vectors \(T\) for\(i=1\)to\(N\)do \(z_{1}=\kappa,z_{2}=\kappa\) \(T=M+\mathrm{C}\circ F\circ(z_{1}\circ(dw_{1}-M)+z_{2}\circ(dw_{2}-M))\) endfor  Check that \(T_{i}\) values conform to the search space boundaries, and if not, recalculate \(T_{i}\) and \(fitT_{i}\) for\(i=1\)to\(N\)do for\(j=1\)to\(D\)do if\(T_{i,j}<MinVar_{j}\)or\(T_{i,j}>MaxVar_{j}\)then \(T_{i,j}=MinVar_{j}+\kappa\cdot(MaxVar_{j}-MinVar_{j}),\kappa\in[0,1]\) endif endfor  Update pattern matrix \(M\) and \(fitM\) for\(i=1\)to\(N\)do \(fitT_{i}=\mathcal{O}\mathcal{F}(T_{i})\) if\(fitT_{i}<fitM_{i}\)then \(\big{[}M_{i},fitM_{i}\big{]}=[T_{i},fitT_{i}]\) endif endfor  Update the best solution \(best_{global}\) and its value \(min_{global}\) \([M_{best},Val_{best}]=[M(\lambda),fitM(\lambda)]\mid fitM(\lambda)=\min(fitM) \mid\lambda\in\{1:N\}\) if\(BestVal<min_{global}\)then \(best_{global}=M_{best},min_{global}=Val_{best}\) endif  Update the pattern matrix \(G\) and its value \(fitG\) \([G_{r0},fit\,G_{r0}]=[M,fit\,M]\)  Report the best solution \(best_{global}\) and the corresponding global minimum value \(min_{global}\) endfor
```  
**Algorithm 1**_Cont_. Using the bijective and Bezier mutation vectors, as well as the crossover control matrix \(C\) and the scaling factor \(F\), the trial pattern vectors \(T\) are computed, and they are recalculated in cases where they do not conform to the search boundaries \((MinVar,MaxVar)\). The scaling factor \(F\) is simple, fast, and easy to generate, thus making it efficient in finding the best global solution, while the crossover and mutation operators produce trial patterns in an efficient manner, substantially speeding up the search process for the global solution. The crossover operator injects information from the parental to the mutation patterns, preventing, in this way, the excessive degeneration of the latter. The crossover operator is controlled by the binary-valued map matrix, in which, for parental patterns with \(C=0\), they are preserved and unchanged in the mutation patterns. Then, \(T\) vectors update the pattern matrix \(M\) and \(fitM\) and track the best pattern (minimum value), \(M_{best}\), to compare its value, \(Val_{best}\), with \(min_{global}\) so far, and \(best_{global}\) is replaced with \(M_{best}\) if the value of the latter is smaller. This process is repeated in each iterative step, until the user-defined number of iterations is reached, when the last \(best_{global}\) pattern is given as the optimal solution to the minimization problem, with a value of \(min_{global}\). The time complexity of the BeSD [3] is \(\mathcal{O}(N\cdot D\cdot MaxIt)\). Moreover, the space complexity of the algorithm is similar to that of the original differential evolution and equal to \(\mathcal{O}(N\cdot D)\). It should be noted that BeSD outperformed other competitive algorithms in [3]. More specifically, in [3], the authors compared BeSD with the Covariance Matrix Learning and Searching Preference (CMLSP) [28], Mean Variance Optimization (MVO) [29], Without Approximation (WA)-Based Optimization [30], Success History-Based Adaptive Differential Evolution (SHADE) [31], and Linear Population Size Reduction Adaptive Differential Evolution (LSHADE) [32] algorithms.