## 1 Introduction  
Fifth Generation (5G) technology is being deployed worldwide and its arrival brings a technological breakthrough in mobile and cellular communications [1]. One of the new characteristics of 5G networks is the data rate up to the order of Gbps [2, 3]. The spectrum of 5G is classified into two frequency regions, (a) the Frequency Range 1 (FR1) which includes frequency bands similar to 5G's predecessor (4G) as well as the sub-6 GHz frequency bands up to 5 GHz and (b) the Frequency Range 2 (FR2) that includes frequency bands in the millimeter-wave range from 24.25 GHz to 40 GHz. 5G technology requires antennas with small size (in the order of millimeters), Multiple Input Multiple Output (MIMO) structures,and wideband operation (to meet the demand of high throughput) [4, 5], characterized by medium or high complexity since they require a considerable number of parameters to define their geometry. Microstrip patch antennas have been extensively and widely applied in a plethora of wireless communications systems due to their comparative advantages [6]. Among all, these include low-cost prototyping, low design profiling, versatility, compatibility with integrated circuit technology, and easiness in fabrication [7]. With the advent of 5G communication systems, microstrip patch antennas are considerable and well-promising candidates for providing efficacious solutions in cross-haul network architectures. Within this context, meta-heuristic algorithms can be effectively used by reformulating the synthesis problem of designing an antenna as an optimization one. This is one of many and various problems in electromagnetics that needs efficient and reliable computational tools based on meta-heuristic techniques. Meta-heuristics are mainly stochastic algorithms. They are designed to determine feasible solutions in a given optimization problem when deterministic algorithms are inefficient [8, 9]. According to the \"No Free Lunch Theorem\" [10], there is no algorithm that can always, on average, outperform the others in all possible optimization problems. However, better performance of an algorithm is still possible in specific problems. Thus, a particular meta-heuristic could inherently, more easily be suited for a specific type of optimization problem. One algorithm may have better performance for some optimization problems, but its performance may become worse on other types of optimization problems. However, the set of all optimization problems is so huge that is impossible to find the best algorithm for each of them. Therefore, it is noteworthy to introduce and apply a new optimization algorithm if it can be proven that it performs well in some specific types of optimization problems. The most popular and widely applied algorithms for the problem of optimizing antenna arrays are, among all, the Genetic Algorithm (GA) [11, 12], the Particle Swarm Optimization (PSO) [13, 14], and the Differential Evolution (DE) [15]. The problem of synthesis linear and planar antenna array patterns has been addressed by utilizing a binary-coded GA in [16, 17]. The authors in [18] introduced a decimal operator in the legacy GA to reduce the sidelobe array pattern synthesis. [PERSON] [19] applied a binary-coded GA to solve the problem of array thinning, whereas [PERSON] et al. [20] utilized a real-coded GA to address the optimization problem of array-failure correction. Moreover, the authors in [21, 22] examined the problem of linear array synthesis by applying the PSO algorithm. A different approach has been introduced in [23] to address the problem of designing phased arrays. The authors compared the performance of PSO and GA to find the best-suited method for obtaining the optimal solution. Additionally, DE has been utilized by the scientific community to address various optimization problems in the research field of antennas. These include the design of thinned arrays [24], the synthesis of difference patterns of monopulse antennas [25], the design of linear arrays [26], and the synthesis of array patterns with nulls [27].