# Blind Turbo Equalization of Short CPM Bursts for UAV-Aided Internet of Things
## 4 EMLVA for Blind Channel Equalization
### The EMVA/EMLVA Blind Equalizer  
With these definitions in mind, the Lazy VA in Algorithm 1 is used to implement the E-step for the EM algorithm. The resulting algorithm is denoted as the expectation-maximization Lazy VA (EMLVA) soft blind equalizer, and it can be found in Algorithm 2, which can be implemented as follows:```
1:Input: the received signal \(\mathbf{r}\)
2:Set the maximum estimated number of iterations \(S\)
3:Initialization: \(\mathbf{\theta}^{(0)}=(\mathbf{c}^{(0)},{N_{0}}^{(0)})\)
4:for\(s=1\) to \(S\)do
5: With the current initializer to run Viterbi or Lazy Viterbi in Algorithm 1 \(\left(\mathbf{a}_{q}^{(s)},\Lambda_{q}^{(s)}\right)_{q=1}^{Q}=\mathit{Viterbi}/ Lazy\mathit{Viterbi}(\mathbf{r},\mathbf{\theta}^{(s)})\)
6: Calculate the probability of each path by (18)
7: Compute the expectation of the logarithmic likelihood function by (19)
8: Maximize the expectation and compute the estimated parameters by (21) and (22)
9:endfor
10:Output: the soft information corresponding to the ML path
```

**Algorithm 2** The EMVA/EMLVA blind equalizer. (1) Set the initializer \(\mathbf{c}^{(0)}=(c^{(0)}(0),c^{(0)}(1),...,c^{(D)}(0))\) and \(N_{0}^{(0)}\), the maximum number of inner iterations S, which is the iterations of EMLVA starting with zero. (2) A set of Q survivor paths is obtained by using the Viterbi-like algorithm with current initializer \(\mathbf{\theta}^{(s)}=(\mathbf{c}^{(s)},N_{0}^{(s)})\). The probability of the \(q\)th survivor path can be computed:

\[P_{q}^{(s)}=Pr(\mathbf{a}_{q}^{(s)}|\mathbf{r},\mathbf{\theta}^{(s)})=\frac{1}{z^{(s)}}exp \left(\eta^{(s)}-\frac{\Lambda_{q}^{(s)}}{N_{0}^{(s)}}\right) \tag{18}\]

where \(\Lambda_{q}^{(s)}\) is the path metric for the \(q\)th survivor path, \(\eta^{(s)}\) is a constant to prevent these metrics from becoming too large, which is usually selected as the minimum path metric, and the normalizing factor \(z^{(s)}\) satisfies \(\sum_{q}P_{q}^{(s)}=1\). (3) Obtain the complete data expected log-likelihood function:

\[L(\mathbf{\theta}|\mathbf{\theta}^{(s)})=E_{a}(LLR|\mathbf{r},\mathbf{\theta}^{(s)})\approx \sum_{q=1}^{Q}\frac{P_{q}^{(s)}||\mathbf{r}-\mathbf{S}(\mathbf{\alpha})\mathbf{c}||^{2}}{N_{ 0}}-ln(N_{0})+d. \tag{19}\]

where \(d\) is a constant independent of the estimated parameter \(\mathbf{\theta}\). (4) Maximize the likelihood function for \(\mathbf{\theta}=(\mathbf{c},N_{0})\):

\[\mathbf{\theta}^{(s+1)}=argmaxL(\mathbf{\theta}|\mathbf{\theta}^{(s)}). \tag{20}\]

where

\[\mathbf{c}^{(s+1)}=\left(\sum_{q=1}P_{q}^{(s)}\mathbf{S}^{H}(\mathbf{a}_{q})\mathbf{S}(\mathbf{a} _{q})\right)^{-1}\cdot\left(\sum_{q=1}P_{q}^{(s)}\mathbf{S}^{H}(\mathbf{a}_{q})\right) \mathbf{r}. \tag{21}\]

\[{N_{0}}^{(s+1)}=\frac{1}{L}\sum_{q=1}P_{q}^{(s)}\Lambda_{q}^{(s)}. \tag{22}\]

(5) With the values \((\mathbf{c}^{(S)},N_{0}^{(S)})\) obtained after the EMV algorithm, make soft decisions as to which sequence of channel symbols or output soft information in input into the decoder. Similarly, the standard VA used to implement the E-step for the EM algorithm is referred to as EMVA. A block diagram of the EMLVA/EMVA equalizer is included in Figure 4, where the grey boxes represent the initializer. ### BCA Method and Convergence Criterion

Since the EM algorithm is sensitive to the initializer and the channel is different in any two different bursts, a single fixed initializer has a poor convergence, which falls into an initial value trap, making it difficult to track the channel. Therefore, a set of initializers based on the BCA method [37] is used in this paper. For complex channel response, global convergence is ensured with a high probability if the initializer contains only one nonzero unit real-valued tap and one nonzero unit purely imaginary tap, located at the appropriate locations. Therefore, for a complex channel response of length \(l\), there are \([(2l+1)]^{2}\) initializers for a set, and the number is reduced to \((2l+1)\) for a real-valued channel. The set of initializers is denoted as the BCA initializer, and the other is called a single initializer.