# A Phase Angle-Modulated Bat Algorithm with Application to Antenna Topology Optimization
## 2 Background  
### The Bat Algorithm  
The BA is a heuristic search algorithm that was proposed by [PERSON] in 2010 based on swarm intelligence [16]. It is an effective method to search for the global optimal solution. It simulates bats' behavior of using ultrasound to detect and locate obstacles or prey, as shown in Figure 1. The bionic principle of BA is to map the population of individual bats to the \(n\)-dimensional problem space and then to simulate the optimization process. The fitness function value of the solution is used to measure the advantages and disadvantages of the bat's position. The survival process of the most suitable individual is similar to the iterative process of replacing the poorer feasible solutions with better feasible solutions in the optimization and search process. Compared with other algorithms, BA is superior in terms of accuracy and effectiveness, and it does not have many parameters that need to be adjusted. In the BA, the optimization parameter is \(n\)-dimensional, and the number of bat populations is \(n\). Each artificial bat has a frequency vector \(X_{i}^{k}(i=1,2,3,\ldots,n,k=1,2,3,\ldots,N)\), a velocity vector \(V_{i}^{k}(i=1,2,3,\ldots,n,k=1,2,3,\ldots,N)\), and a position vector \(F_{i}(i=1,2,3,\ldots,n)\), which are updated at iteration \(t\) as Equations (1)-(3):  
\[V_{i}^{k}(t+1)=V_{i}^{k}(t)+(X_{i}^{k}(t)-X_{gbest})F_{i} \tag{1}\]  
\[X_{i}^{k}(t+1)=X_{i}^{k}(t)+V_{i}^{k}(t+1) \tag{2}\]  
where \(X_{i}^{k}(t)\) and \(V_{i}^{k}(t)\) indicate the \(k\)-th dimension position and velocity of the \(i\)-th bat at iteration \(t\), respectively. \(X_{gbest}\) is the best solution thus far, and \(F_{i}\) indicates the frequency of the \(i\)-th bat that is updated in each course of iterations as follows:  
\[F_{i}=F_{\min}+(F_{\max}-F_{\min})\beta \tag{3}\]  
where \(\beta\) is the random number uniformly distributed in [0,1]. According to Equations (1) and (2), different frequencies can improve the diversification of artificial bats and reach the optimal solution. To improve the local search capability, each bat has a local search strategy. When \(rand>r\), the new position \(X_{i}^{k}(t)_{new}\) changes with a random walk:  
\[X_{i}^{k}(t)_{new}=X_{i}^{k}(t)_{old}+\varepsilon A_{i}(t) \tag{4}\]  
where \(\varepsilon\in[-1,1]\), \(rand\in[0,1]\), \(r\) is pulse emission rate, and \(A_{i}(t)\) is the loudness value of all particles at iteration \(t\). As a result of the introduction of pulse emission rate (\(r\)) and loudness (\(A\)), the bat algorithm can be seen as a balance between particle swarm search and intensive local  
Figure 1: Schematic diagram of the bat’s preying behavior. search. With the update of the two parameters, the optimization enters the exploration stage from the exploitation state. For each iteration of the algorithm, the pulse emission rate (\(r\)) and loudness (\(A\)) are updated as follows:  
\[A_{i}(t+1)=\alpha A_{i}(t) \tag{5}\]  
\[r_{i}(t+1)=r_{i}(0)[1-\exp(-\gamma t)] \tag{6}\]  
where \(\alpha\) and \(\gamma\) are constants, with \(\alpha\) being similar to the cooling factor in the simulated annealing (SA) [36]. The loudness and pulse emission rate are updated in each iteration until the artificial bat finds the optimal solution or reaches the maximum number of iterations.