## 4 Error Performance Analysis  
After depicting the optimization in Section 3, the average SER under the desired PMF, which is optimized by the heuristic algorithm, needs to be discussed. Therefore, in this section, we will evaluate the error performance of the PS scheme under the Gamma-Gamma fading channel. For a BICM system, PEP is applied to derive the union bound in SER. The upper bound of the average SER can be expressed as [25]:  
\[P_{s}\leq\sum_{j=1}^{M}\sum_{i\
eq j}P\big{(}o_{ij}\big{)}P(x_{i}), \tag{10}\]  
where PEP \(P\big{(}o_{ij}\big{)}\) represents the probability of choosing \(x_{j}\) as a transmitted signal, when in fact \(x_{i}\) was transmitted. Under the assumption of the perfect CSI available at the receiver, the PEP concerning turbulence attenuation, is given by:  
\[P\big{(}o_{ij}|G\big{)}=\mathbb{E}_{\text{G}}\Bigg{\{}Q\Bigg{[}\frac{e^{2}\ln \frac{\mathbb{P}_{X}(x_{i})}{\mathbb{P}_{X}\big{(}x_{j}\big{)}}+\left\lVert g \big{(}x_{i}-x_{j}\big{)}\right\rVert^{2}}{\sqrt{2\
u^{2}}\left\lVert g\big{(} x_{i}-x_{j}\big{)}\right\rVert^{2}}\Bigg{]}\Bigg{\}}, \tag{11}\]  
where \(\left\lVert\bullet\right\rVert\) denotes the norm operation of a vector. \(Q(x)=\frac{1}{\sqrt{2\pi}}\int_{x}^{\infty}e^{-\
icefrac{{x}}{{2}}}dy\) is Gaussian Q function. Based on \(Q(x)\approx\frac{1}{12}e^{\
icefrac{{-x}}{{2}}}+\frac{1}{4}e^{\
icefrac{{-2 x}}{{3}}}\), we obtained:  
\[Q\Bigg{[}\frac{e^{2}\ln\frac{\mathbb{P}_{X}(x_{i})}{\mathbb{P}_{X} \big{(}x_{j}\big{)}}+\left\lVert g\big{(}x_{i}-x_{j}\big{)}\right\rVert^{2}}{ \sqrt{2\
u^{2}}\left\lVert g\big{(}x_{i}-x_{j}\big{)}\right\rVert^{2}}\Bigg{]} \tag{12}\] \[\approx\frac{1}{12}e^{-\zeta}e^{-\frac{1}{2}\left(\frac{x}{S^{2} }+\
icefrac{{\log^{2}}}{{S^{2}}}\right)}+\frac{1}{4}e^{-\frac{4}{S}\zeta}e^{- \frac{2}{3}\left(\frac{x}{S^{2}}+\
icefrac{{\log^{2}}}{{S^{2}}}\right)},\]  
For the convenience of representation, we define three variables, namely \(\zeta=\frac{1}{2}\ln\frac{\mathbb{P}_{X}(x_{i})}{\mathbb{P}_{X}(x_{j})}\), \(\mu=\frac{e^{2}}{2\left(x_{i}-x_{j}\right)^{2}}\ln^{2}\frac{\mathbb{P}_{X}(x_ {i})}{P_{X}(x_{j})}\), \(\upsilon=\frac{\left(x_{i}-x_{j}\right)^{2}}{2\alpha^{2}}\). The PDF of the intensity attenuation \(H\) is given in Equation (13) by means of rewriting the \(K_{\alpha-\beta}(2\sqrt{\alpha}\beta)\). We make \(g_{1}(k)=\frac{\left(\alpha\beta\right)^{k+\beta+1}}{\Gamma(\alpha)\Gamma( \beta)}\frac{\Gamma(-\beta)}{(1-\upsilon)k^{\beta}}\) and \(g_{2}(k)=\frac{\left(\alpha\beta\right)^{k+\beta+1}}{\Gamma(\alpha)\Gamma( \beta)}\frac{\Gamma(\beta-a)}{(\upsilon+1)k^{\beta}}\). Thus, Equation (11) can be calculated by Equation (12) and Equation (13), which is shown in Equation (14). \begin{table}
\begin{tabular}{c l} \hline \hline  & **Input**: SNR; position and velocity of the individuals \\  & **Output**: \(\mathbf{p}_{2\,\text{dim}}\) \\ \hline
1 & **Initialize:** \\
2 & Produce initial population with \(P_{pop}\) individuals. \\
3 & Initialize the position and velocity of the individuals. \\
4 & Set the iteration identification \(flag=0\). \\
5 & Set mutation probability \(\delta=0.85\). \\
6 & Set the genetic iteration number \(G=0\). \\
7 & **while** (\(flag==0\)). \\
8 & **Reproduction:** \\
9 & Update the velocity and position. \\
10 & Calculate individual fitness function \(\Re_{n}\). \\
11 & Determine the individual optimum fitness and the population optimum fitness. \\
12 & **Mutation:** \\
13 & if \(rand>\delta\) \\
14 & Update the velocity and position. \\
15 & **if**\(G=100\) update \(flag=1\). \\
16 & **Output**: return the optimum value \(\mathbf{p}_{2\,\text{dim}}\). \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Pseudo-code of heuristic algorithm.