Joint Transmit and Receive Antenna Selection in Mimo Systems Based on Swarm Intelligence Algorithm

Multiple-input-multiple-output (MIMO) can provide superior performances such as system capacity, linkage, etc. But also it will bring high RF costs and system complexity, especially in large scale MIMO systems. Antenna selection (AS) is proved to be a trade-off between good performances and complexity. Specifically, from the perspective of both transmit and receive antennas, the joint transmit and receive antenna selection (JTRAS) is employed in MIMO systems. Up to now, some algorithms of JTRAS have been studied in MIMO systems. However, most of them are mainly focused on just one aspect about accuracy or complexity. Especially, compared to numerical analysis, the implementation of swarm intelligence algorithm in JTRAS needs to be studied extensively. In the paper, three intelligent algorithms, i.e. genetic algorithm, cat swarm algorithm and particle swarm algorithm are studied and compared in terms of accuracy, cost, and complexity. In addition, fractional coding is proposed in the algorithms instead of binary integer coding. The simulation results demonstrate that all three algorithms can efficiently accomplish the antenna selection. PSO has the best accuracy and stability, but the complexity of PSO is also highest. If we take overall performances in consideration, CSO is the best choice especially in practical implementation. Moreover, fractional coding will provide better performance than binary integer coding.


Introduction
MIMO (Multiple-Input-Multiple-Output) systems can exponentially enhance the capacity of communication systems [1,2] and the linkage of wireless transmission. Moreover, it can greatly improve system performance without the excess of bandwidth 1 3 compared to single-input and single-output systems [3][4][5]. Multiple antennas, combined with space-time coding and other techniques, can significantly improve spectrum utilization, which is a major breakthrough in smart antenna technology in mobile communications. However, in a typical MIMO system, using RF links to ensure normal performances will unbearably bring the complexity of the system and the cost of implementation, which will make the MIMO system much larger and result in its limited application and promotion. Hence, selecting a subset of multiple antennas can achieve high speed and high capacity communication without sacrifice of performances.
The optimal selection of antenna subset is the exhaustive algorithm (EA) [6,7], which calculates all possible combinations of antenna subsets, so as to select the subset that can make the system performance optimal. However, the EA algorithm also greatly increases the computational complexity. Especially in the case of a large scale antennas [8], the EA calculation time will get too long, as the computational volume is exponentially increased. Hence, the complexity of antenna selection (AS) will be a pivotal element for the practicality of MIMO systems. In order to achieve the better performance with less or certain antennas, a joint transceiver antenna selection (JTRAS) algorithm is proposed [9], which yields good results in terms of channel capacity. But the computational complexity of the algorithm is still very high and the performance is poor in terms of practicality. As a result, many scholars have proposed some JTRAS algorithms [10,11] to reduce the computational complexity of the algorithm from various aspects, of which they hope to maintain a relatively high channel capacity while reducing the computational complexity of the algorithm. Alternatively, the AS is based on the principle of maximizing the minimum column parametrization of the channel matrix according to the maximum Frobenius parametrization [12], which has no matrix operations and low computational complexity. Then, a fast and global AS algorithm is proposed [13], in which the number of receiver antennas is the same as the number of transmit antennas. A real-time antenna-by-antenna iterative swapping enhancement (RAISE) is proposed based on the maximum capacity submatrix approach for transmit antenna selection in massive MIMO systems [14]. But it is also based on the premise that the number of antennas is equal to the number of users. Consequently, it can only handle square submatrices, which is less realistic and practical. On this basis, the theory of rectangular maximum-volume (RMV) submatrices [8] is proposed to eliminate the limitations of the traditional square maximum volume (SMV) method, while maintaining the same good performance as the SMV method. A low-complexity AS scheme [15] is proposed to maximize the constructive interference between users, and hereby maximize the power received by the user. Interestingly, inspired by the branch-andbound (BAB) search method for finding a subset of the beam, the BAB algorithm [16] is also used to choose a subset of antennas with maximized channel capacity (MCC).
It can be observed that a suitable algorithm can help to solve the AS problem well, and hereby replace the EA in practice. Intelligent algorithms are inspired by the laws of nature and designed to mimic their principles in solving the problems of optimization. In recent years, intelligent algorithms have achieved numerous convincing results in solving practical problems, such as genetic algorithms (GA) for complex optimization problems and industrial engineering applications, and particle swarm algorithms (PSO) which are now widely used in function optimization, neural network training, and medicine. Thus, the combination of AS and intelligent algorithms is a new way of thinking and a different direction for exploring multiple AS techniques.
In this paper, a comprehensive comparison of three swarm intelligence algorithms, namely particle swarm algorithm (PSO), cat swarm algorithm (CSO) and genetic algorithm (GA) is presented. All three ones are heuristic algorithms, among which the GA [17,18] is a simulation of the superiority and inferiority of biological populations in nature, with the merits of low computational complexity, good robustness, parallel search of the solution space, fast convergence, etc. The CSO [19,20] is derived from the observation of feline behavior, involving few parameters, simple principles, fast convergence, and better global detection and local search. The PSO is a kind of evolutionary algorithm [21], which originates from the observation of the predatory behavior of birds. The basic idea is to find the optimal solution through collaboration and information sharing between individuals in a group. The algorithm is designed with few parameters and is easy to implement with high accuracy. The three algorithms can be well integrated with the AS problem to solve realistic problems efficiently. Not only to this, we will employ the fractional coding (FC) method, which can be used in most intelligent algorithms because it can still encode and decode normally in the actual process without affecting the operation of the algorithm, and it is more general than binary encoding and real encoding. Moreover, we will specify how the three intelligent algorithms are nested with the AS problem and analyze the characteristics and advantages of the three algorithms in this problem, with the aim of choosing the right algorithm according to the actual situation and needs.

System Model
To greatly increase the channel capacity [1,2], MIMO systems use multiple antennas at both the transmitter and receiver ends, and information is transmitted and received through multiple antennas between the transmitter and receiver ends. Without increasing spectrum resources and transmitting power, multi-antenna systems can increase the capacity of the system, improve the quality of the wireless transmission link, and increase the bandwidth efficiency of the system exponentially. Assuming a MIMO system with N t transmitting antennas and N r receiving antennas, at the transmitting end, the transmitted information stream is coded in space-time to form N t identical data sub-streams, which are transmitted simultaneously from N t antennas and received by N r antennas through the spatial channel. Since the channel state information (CSI) can be obtained via channel estimation, the multi-antenna receiver is able to separate and decode these data sub-streams. Since the receiver obtains multiple independent copies of the same information from multiple channel bearers, and the signals are not in deep fading at the same time. Thus, at least one copy of the signal with sufficient strength is guaranteed to be accepted at any given moment, then multiple antennas can achieve higher signal-tonoise ratio (SNR) than single antenna.
However, as many RF links are used to ensure proper communication in a MIMO system, it will increase the complexity and cost of the system. Hence, AS is a key technology that can significantly reduce processing complexity and hardware costs while maintaining the benefits of MIMO technology. As shown in Fig. 1, let L t and L r denote the subset of antennas selected from N t to N r by the AS algorithm, satisfying N t ≥ L t and N r ≥ L r . In addition, H is a random channel matrix, denoted as the N r × N t channel matrix. Assuming that the symbols transmitted at each antenna cell are uncorrelated and have normalized power. In the case of frequency-flat fading, the signal at the receiver can be expressed as where R is receiving signal vector, S is the transmitting signal vector, ρ is the average signal-to-noise ratio of each transmit antenna, and W is the additive Gaussian white noise (AWGN) with a variance of 1/2 in both the real and imaginary parts.
The system capacity is one important performance of a communication system, and it represents the maximum transmission rate of the communication system. The channel capacity of a MIMO system is expressed as where I is the unit matrix of L t × L r , (·) H is the conjugate transpose, det (·) signifies to take the determinant, and cell h ij is the channel fading coefficient from transmit antenna j to receive antenna i in the channel matrix H. h ij is independently distributed and satisfies a Gaussian distribution with mean zero variance of 1/2. The channel capacity C is numerically equal to the channel efficiency (bits/Hz). There is sufficient fading in the channel and the envelope conforms to the Rayleigh distribution. The aim of antenna selection is therefore to select a sub-channel matrix from H such that it can obtain the maximized capacity under the premise of certain L t and L r .

Genetic Coding
Most of the coding methods about swarm intelligent algorithms are binary integer coding [17][18][19][20][21], e.g., the use of 0, 1 mask for antenna coding. However, the number of required antennas is different for swarm intelligence algorithm. It is difficult to ensure the certain number of antennas to be selected. To tackle with the problem, this paper proposes fractional coding (FC) to ensure the general operation. Specifically, a random decimal encoding of 0 to 1 is used for N t + N r antennas, and the number indices are selected from largest to smallest, in accordance with the number of antennas required. Take the following GA as an example, we set N t = 4, N r = 3, L t = 2, L r = 2: Fig. 2 shows a chromosome encoding, the number of genes depends on the total number of antennas, the first N t bits indicate the transmit antennas, the last N r bits indicate the receive antennas. Given a random decimal number and arranged from highest to lowest, L t = 2 and L r = 2 are selected respectively. As is shown in Fig. 2, the indices of {2, 4} and {1, 2} are selected at transmitter and receiver respectively.
To better understand FC, Fig. 3 shows the crossover operation of GA chromosome. In this paper, three intelligent algorithms are exploited to solve the AS problem.

Genetic Algorithms
Firstly, the genetic algorithm(GA), is a bionic algorithm with a strong global search for superiority, in which more individuals with higher fitness are passed on to the next generation according to the rules of superiority and inferiority, so that some individuals with lower fitness in the population are gradually eliminated, while some individuals with higher fitness become more and more numerous. The process of AS based on genetic algorithm is shown in Fig. 4.
Step 0 Setting the parameters. Firstly, the relevant parameters required for the algorithm should be set, such as popsize, iterations, N t , N r , L t , L r , signal to noise ratio (ρ), the crossover probability, the variation probability, etc.
Step 1 Initialization: Initialize the parent population, the size of the population is popsize. Each chromosome represents a combination of antennas, and the number of genes contained in the chromosome is the sum of the number of antennas for transmit and receive ends, i.e. N t + N r . Each gene is a random decimal number between 0 and 1, and the decimal numbers are sorted from largest to smallest to take the corresponding position. Each chromosome corresponds to a set of selected antennas.
Step 2 Adaptation evaluation and chromosome selection replication. Each chromosome corresponds to a set of antennas, and each set of selected antennas corresponds to a channel matrix H s .
Step 3 Chromosome crossover operation. In this paper, a single point crossover is used to generate a random crossover point in the chromosome string. When the crossover is implemented, the two genes after that point are swapped to generate a new chromosome string according to a certain probability.
where P c is the crossover probability, f max is the maximum fitness in the population, f c is the larger fitness of the two individuals to be crossed, f avg is the maximum average fitness in the population. k 1 , k 2, are constant.
Step 4 Chromosomal mutation operation. In this paper, a random number between 0 and 1 is generated at the point of variation. The original gene at the point is mutated according to the probability.
where P m is the mutation probability, and f m is the fitness of the individuals to be mutated. k 3, k 4 are constant.
Step 5 Update the population. The chromosome adaptations in the gene pool are calculated after crossover and mutation, and the chromosome with the highest adaptation is found in the population and compared with the maximum adaptation of the chromosome in the original population, if it is larger, the chromosome with the highest adaptation in the population is replaced with the newly generated chromosome in the pairing pool, and vice versa. The new population is obtained after iterations through ergodic procedure.
Step 6 Repeat/end: Repeat steps 2-5 above until the number of iterations is reached. The chromosome with the greatest fitness in the final population is regarded as the optimal combination of transmit and receive antennas. Finally, the number of antennas at both transmitter and receiver is decoded according to the required selection, resulting in the L t transmit antenna and L r receive antenna with excellent performance.

Cat Swarm Optimization
The cat swarm optimization (CSO) is a bionic algorithm proposed by observing the behavior of cats. Each cat represents a combination of antennas. The algorithm divides the cats behavior into searching mode, wherein the cats are resting and searching, and tracking mode, wherein the cats are tracking a dynamic target. Different interaction rates are set to randomly assign cats into searching and tracking modes. In searching mode, the memory pool records the neighborhood searched by the cat, the size of the pool represents the number of locations that the cat can search, and the pool stores the new locations that the cat can search in its own neighborhood. The location code corresponding to the largest fitness value is selected to replace the current location value of the corresponding cat. In tracking f m < f avg mode, the cat will track an 'extreme value' to update itself, so that the cat moves in the direction of the global optimal solution. The AS process based on the cat swarm optimization is shown in Fig. 5: Step 0 Setting the parameters. Firstly, the relevant parameters required for the algorithm should be set, such as popsize, iterations, N t , N r , L t , L r , signal to noise ratio (ρ), the parameters required in the searching mode such as the memory pool, the interaction rate, etc.
Step 1 Initialize and calculate the fitness value: each cat represents an antenna combination, then each cat's position is coded as (N t + N r ) fractional codes, and these cats are randomly assigned to the tracking mode and the searching mode according to the interaction rate.
Step where ω is the inertia weight, d ij 0 and d ij 1 are random numbers uniformly distributed in the range [0, 1]. Whether to be positive or negative will depend on the flag judgement (searching or tracking mode).
Step 3 Calculate the new fitness value. The largest fitness value in the population is the new optimal solution. If the new optimal solution is larger than the previous one, then the previous fitness value is replaced with the new optimal solution.
Step 4 Judgment (stop rule): if the optimal solution is satisfied or the number of iterations is reached, the global optimal solution is found; Otherwise, repeat step 2-3 to continue the searching for the optimal solution.

Particle Swarm Algorithms
The particle swarm algorithm (PSO) is essentially a stochastic searching algorithm that simulates the predatory behavior of a flock of birds. PSO retains the population-based searching strategy and uses a simple velocity-displacement model. In the procedure of convergence, as all particles converge to the optimal solution, the particles tend to homogenize making the following convergence rate significantly slower. The AS process based on the particle swarm algorithm is shown in Fig. 6: Step 0 Setting the parameters. Firstly, the relevant parameters required for the algorithm should be set, such as popsize, iterations, Nt, Nr, Lt, Lr, signal to noise ratio (ρ), and acceleration constants c 1 , c 2 , inertia weight ω, etc.
Step 1 Initialize the velocity and position of the particles and calculate the fitness value. Each particle position and velocity is expressed via fractional coding, and each particle represents a combination of antennas. Calculate the fitness value of all the particles based on the capacity Eq. (2) and compare the fitness value of each particle with the original individual extreme value. If the new optimal solution is larger than the previous one, then the previous fitness value is replaced with the new optimal solution.
Step 2 Update the velocity and position of the particle according to (6) and (7), where P i is the individual extremum, P g is the global extremum, c 1 , c 2 is the learning factor, r 1 and r 2 are random numbers uniformly distributed in the range [0,1].
Step 3 Judgment (stop rule): if the optimal solution is satisfied or the number of iterations is reached, the global optimal solution is found; otherwise, repeat step 2 to continue the searching for the optimal solution. (5)

Simulation and Analysis
This section will analyze the simulation results of the three algorithms, with parameters all set to: signal to noise ratio ρ = 4, popsize = 20, number of iterations G = 200, (N t , N r , L t , L r ) = (10,10,5,5). In Fig. 7, we can see that all three algorithms can be well exploited to solve the AS problem. As the number of iterations increases, the fitness values will show the upward trend.
By comparing the maximize channel capacity (MCC) versus SNR in Fig. 8, it can be seen that the best values obtained by all three algorithms and the optimal EA are very close, and the MCC will increase with the SNR. By comparing the maximize channel capacity (MCC) versus SNR in Fig. 9, it can be seen that the fractional coding has the bigger capacity than the integer coding for GA, PSO and CSO algorithms.
We would like to investigate above four algorithms in terms of accuracy, speed of finding the optimum, stability and complexity. The results obtained by the exhaustive algorithm (EA) are regarded as the optimal solutions. Set the initial values of iteration G = 100 and popsize = 20, then run the simulation to obtain the results.
The accuracy is defined as the ratio of the maximal capacity for the intelligent algorithm to the EA solution. Table 1 shows that PSO will have the best accuracy among the three algorithms to solve the AS problem of the MIMO system. The accuracy of both CSO and GA will decrease significantly with the increase of the number of antennas (Fig. 10).
The stability is defined as the standard deviation of the optimal solution for 20 iterations. Smaller the standard deviation, the algorithm is more stable. Table 2 shows that the standard deviation obtained by PSO is lower than that obtained by the other two algorithms. It can be inferred that PSO is able to obtain the optimal value with a greater probability and a smaller error.

3
The searching cost is defined as the number of iterations to reach convergence for the first time. Table 3 shows that the searching cost will increase with the number of antennas for all three algorithms. The searching cost from fast to slow is CSO > GA > PSO, especially the advantage of CSO in the searching cost is very obvious, compared to the slowest speed of PSO.
In terms of complexity, the EA requires the calculations of C to complete the task of AS, while the complexity of the remaining three algorithms is related to the population size and the number of iterations at convergence, i.e. complexity = popsize × iteration . Table 4 shows that the complexity of the three algorithms is much lower than that of the EA, which means that all three algorithms will greatly reduce the complexity of JTRAS. In the table, we will also present the results of two numerical methods [22,23] as comparison. It can be shown that as the number of antennas increases, the two JTRAS will have the complexity between EA and the three intelligent algorithms.
Finally, we would like to give the comprehensive comparison of the intelligent algorithms. It can be inferred in Table 5 that, PSO has the best accuracy and stability, but the complexity of PSO is also highest. If we take overall performances in consideration, CSO is the best choice especially in practical implementation.

Conclusions
This paper investigates three intelligent algorithms, GA, CSO and PSO in joint transmit and receive antenna selection (JTRAS) for MIMO system. Moreover, fractional coding (FC) method is proposed in the chromosome gene. The simulation results show that PSO has the highest accuracy and stability, but the searching cost and the complexity are higher. CSO has the fastest search speed and the lowest complexity, and the accuracy is worse compared with the PSO. However, the complexity of the three intelligent algorithms is much lower than other numerical algorithms including exhaustive algorithm.
In the future, large-scale MIMO systems will serve as an option for beyond 5G. Since the number of antennas in large-scale MIMO systems may be dozens or hundreds, intelligent algorithms will play more important role for JTRAS in large-scale MIMO systems.
Funding This work is supported in part by the Natural Science Foundation of Fujian Province (2020J01711), and National Science Foundation Cultivation Project of Jimei University (ZP2022015) both with the ownership of Lei Guowei.

Availability of Data and Materials Applicable.
Code Availability Not applicable.