# Reliable and Energy-Efficient LEO Satellite Communication with IR-HARQ via Power Allocation
## 3 Outage Analysis and Solution to the Optimization Problems
### Proposed Energy Efficiency Maximization  
In this section, we maximize the energy efficiency of the IR-HARQ-EP and the IR-HARQ-VPA schemes. The key is to optimize the power \(P\) or the power sequence \((P_{1},P_{2},\ldots,P_{L})\) to obtain the maximum energy efficiency \(\eta_{EE}^{ep}\) and \(\eta_{EE}^{pnu}\) in (21) and (25), respectively. The two optimization problems can be simplified as follows:  
**Problem 1**.: _In the IR-HARQ-EP scheme, the energy efficiency \(\eta_{EE}^{ep}\) is maximized over transmission power \(P\), which is:_  
\[\underset{P}{\text{argmax}}\ \eta_{EE}^{ep}=\frac{R(1-e_{L}^{pq})}{ \frac{\sum\limits_{i=1}^{L}e_{i-1}^{pq}}p} \tag{34}\] \[s.t.\ \left\{\begin{array}{c}e_{L}^{ep}\leqslant e_{0}\\ 0<P\leq P_{\max},1\leq i\leq L.\end{array}\right.\]  
**Problem 2**.: _In the IR-HARQ-VPA scheme, the energy efficiency \(\eta_{EE}^{ppa}\) is maximized over the transmission power sequence \((P_{1},P_{2},\ldots,P_{L})\), which is:_  
\[\underset{(P_{1},P_{2},\ldots,P_{L})}{\text{argmax}}\ \eta_{EE}^{ppa}=\frac{R(1-e_{L}^{pq})}{ \frac{\sum\limits_{i=1}^{L}e_{i-1}^{pq}P_{i}}} \tag{35}\] \[s.t.\ \left\{\begin{array}{c}e_{L}^{pqa}\leqslant e_{0}\\ 0<P_{i}\leq P_{\max},1\leq i\leq L,\end{array}\right.\]  
_where \(e_{0}\) is the maximum outage probability allowed by the communication system and \(P_{\max}\) is the maximum transmission power. At HARQ round 0, the values of \(e_{0}^{ep}\) and \(e_{0}^{epa}\) are set to 1 by default._  
As the exact closed-form analytical expression of \(e_{i}\) cannot be obtained, the optimal energy efficiency \(\eta_{EE}^{eppa}\) is intractable mathematically. Therefore, we propose a heuristic method based on the genetic algorithm (GA) to solve the above problems.  
The GA is a method to search for suboptimal solutions by simulating the natural evolution process. In the proposed VPA-GA method, a population **pop** with population size of \(size_{pop}\) is firstly initialized, which is also an initial solution set of the optimization problem. GA evaluates each chromosome which represents an individual of **pop**. The chromosomes **pop_parent** are selected based on the fitness value. In this paper, the fitness function is the same as (34) and (35). The chromosomes with high fitness have more reproductive opportunities. The selected individuals or chromosomes need to be coded; then, crossover and mutation operations are carried out in turn to get the new individuals **pop_new** after evolution. Then, the new population begins the next round of evolution until the maximum number of evolutions is reached. The specific calculation process is described in Algorithm 1.  
In the proposed VPA-GA method, we assume the maximum transmission rounds of the IR-HARQ is \(L\), \(M\)-point FFT and IFFT are used in the calculation of \(e_{i}^{IR}(i>1)\); the population size is \(Q\) and the iterations is \(N\). Based on this, we analyze the computational complexity of the proposed VPA-GA method as shown in Algorithm 1. In each iteration, the calculation cost mainly includes the following two parts:  
1. Calculate the fitness of \(Q\) individuals in the population. In the process of calculating the fitness of each individual, it is necessary to calculate the outage probability \(e_{1},e_{2},\ldots,e_{L}\). When calculating \(e_{i}\)\((i>1)\), \(M\)-point FFT and IFFT are used. Therefore, the time complexity of the process is \(\mathcal{O}(Q\cdot(L-1)\cdot 2\cdot M\cdot\log 2(M))\).
2. In each evolution, two parents are selected from \(Q\) individuals for crossover, mutation, and other operations until \(Q\) individuals are updated. The computational complexity of crossover and mutation is much lower than that of \(M\)-point FFT and IFFT in (a). Therefore, compared with (a), the complexity of (b) can be ignored.  
In short, the computational complexity of VPA-GA method with \(U\) iterations is about \(\mathcal{O}(U\cdot Q\cdot L\cdot M\cdot\log 2(M))\).