## 4 Decision Engine for Single Link  
This section considers a point-to-point link, and proposes an optimization method where the requested number and type of IR bits can be chosen to minimize a cost function. We discretize the coding rate \(R\) and the SNR into a finite set of values so that practical numerical methods can be applied to the optimization problem. Since the feedback channel has limited capacity and only offers a few bits for each IR request, we constrain the number of IR bits to be requested to a small set of pre-defined values. A Markov Decision Process (MDP) can then be established to model the HARQ protocol as follows:  
* State: \(s=\left(f,\text{SNR},R\right)\), where \(f\) denotes the number of decoding failures in the bundle, \(\text{SNR}\) their effective SNR, and \(R\) their coding rate. * Action: \(A(s)=(\alpha,\beta)\), where \(\alpha\) and \(\beta\) respectively represent the requested number of extension bits for every codeword in the bundle and the requested number of bundle parity bits. Chase Combining bits will not be used because for typical values of SNR and code rate, their performance is inferior compared to extension bits [46]. * Cost: \(C=b\alpha+\beta+fc_{D}+c_{R}\), where \(b\) denotes the bundle size (i.e., number of codewords per bundle). Assuming that transmitting one bit costs one unit, \(c_{D}\) denotes the cost to decode a single codeword, and \(c_{R}\) denotes the overhead cost due to each round of IR accounting for hardware complexity, increased latency, feedback bits, etc. One possible interpretation for this cost is latency  
Figure 4: Decoding failure probability for a signal with \(E_{b}=1\) and variable noise variance. The four solid curves, which correspond to combinations with the same \(\text{SNR}_{\text{eff}}\), are nearly identical. In that case, \(c_{D}\) would be the time required to decode a codeword and \(c_{R}\) the time between retransmissions. The objective is to find the actions that minimize the total expected cost until all codewords in the bundle are successfully decoded, i.e.,  
\[A(s)=\arg\min_{(\alpha,\beta)}E\{\text{Total cost}|s,\alpha,\beta\}, \tag{16}\]  
for all \(s\). By sending IR bits, \(\alpha\) reduces the code rate and \(\beta\) increases the SNR, transitioning from \(s_{0}=(f_{0},\text{SNR}_{0},R_{0})\) to a new state \(s_{1}=(f_{1},\text{SNR}_{1},R_{1})\), where \(\text{SNR}_{1}\) and \(R_{1}\) are deterministic and \(f_{1}\leq f_{0}\) follows a binomial distribution. They can be determined by the following equations:  
\[\text{SNR}_{1}=\Big{[}\Big{(}\frac{\alpha}{\text{SNR}_{R}}+\frac {\beta}{\text{SNR}_{\text{new}}}+\frac{k/R_{0}-\beta}{\text{SNR}_{0}}\Big{)} \frac{1}{k/R_{0}+\alpha}\Big{]}^{-1} \tag{17}\] \[R_{1}=\frac{k}{k/R_{0}+\alpha}\] (18) \[P(f_{1}|s_{0},\alpha,\beta)=\binom{f_{0}}{f_{1}}p^{f_{1}}(1-p)^{ f_{0}-f_{1}}, \tag{19}\]  
where \(k\) denotes the number of information bits per codeword and \(\text{SNR}_{\text{new}}\) denotes the increased SNR of the bits that participated in the bundle parity IR, as given by Equation (14) and illustrated in Figure 3. The formula for \(\text{SNR}_{1}\) is obtained from Equation (15) by observing that every codeword in a bundle can be partitioned into three sections according to the SNR: the \(\alpha\) bits of codeword extension have \(\text{SNR}_{1R}\), the \(\beta\) bits of overlapping part with bundle parity IR have \(\text{SNR}_{\text{new}}\) after updating their LLRs, and the remaining \(k/R_{0}-\beta\) bits keep the same \(\text{SNR}_{0}\) as before receiving the IR.