Improved two-way double-relay selection technique for cooperative wireless communications

In this article, a novel two-way double-relay selection strategy with its bit error rate (BER) performance analysis is proposed. In this novel strategy, as a first step we choose two relays out of a set of relay-nodes in a way to maximize the system performance in terms of BER and complexity. In the second step, the selected relays apply orthogonal space-time coding scheme using the three-phase protocol to establish a two-way communication between the transceivers, which will lead to a significant improvement in the achievable diversity and coding gain with a very low decoding complexity by using a symbol-wise decoder. Furthermore, the performance of the overall system is further enhanced through the use of a network coding method at the selected relay-nodes. Moreover, this paper proposes the analytical approximation of the BER performance. As well, we show that the analytical results match perfectly the simulated ones. In addition, we prove that our strategy outperforms the current state-of-the-art ones by proposing a better cooperative communication system in terms of BER.


Introduction
Multiuser interference and channel impairments such as multipath propagation and time-varying fading can affect the performance of wireless communications in terms of achievable data rate and bit error rate (BER) [1][2][3][4][5][6][7][8][9][10][11][12][13]. The use of distributed space-time coding techniques [2,3,8], distributed beam-forming techniques [4][5][6] and relay selection techniques [9][10][11][12][13][14][15][16][17][18][19][20][21][22] helps in reducing the impact of channel impairments and as a result enhancing the performance of wireless communication systems. The performance of these systems in terms of achievable data rate and BER can be enhanced through the use of these techniques by allowing the receiver side to receive different versions with different phases and amplitudes of the transmitted information symbols which will be combined efficiently together in order to achieve the former.
In relaying techniques, the relay-nodes receive and process the transmitted data before retransmitting the resulting signals in an orthogonal channels or using a specific technique to maximize the received signal-to-noise ratio or achievable data rate or to forward or backward channel or they select two relays where one of them has the strongest forward channel and the other owns the strongest backward channel. Therefore, the motivation of this work is that the current techniques are not considering the differences among the close value channels, while this can significantly improve the performance of relaying techniques. Therefore, in this paper, we propose a novel double-relay selection technique based on STC using the three-phase protocols. Furthermore, in the proposed technique, network coding is applied at the relay sides in order to decrease power consumption through the combination of symbols of the communicating transceivers in one symbol with the same constellation. From simulations and analytical results, we show that our novel technique delivers a better performance compared to the already existing relaying techniques. This article is summarized as follows: Sects. 2 and 3 explain the system model and the proposed technique, respectively. Section 4 demonstrates the BER analysis, while Sects. 5 and 6 show the experimental methods and the results and discussions, respectively. The conclusion is introduced in Sect. 7.

System model
In our system model shown in Fig. 1, we consider a half-duplex wireless relay network with R + 2 single-antenna nodes, i.e., two peripheral-nodes ( PN 1 and PN 2 ), that intend to communicate with each other, but they cannot communicate directly due to transmission range limitation. Therefore, a group of R intermediate singleantenna relay-nodes that are located between them need to facilitate this communication. More specifically, two intermediate relay-nodes will be chosen to facilitate the required communication. Also, we assume having independent Rayleigh flat-fading channels with zero mean and unit variance where the channel from PN 1 to relay-node i is denoted as f i and from PN 2 to relay-node i as b i . Furthermore, all the communication channels between peripheral and relay-nodes are assumed to be reciprocal for the transmission from PN 1 to PN 2 and vice versa and perfect CSI is assumed to be available at all receiving nodes. The channels are assumed to stay constant during two time slots and change to an independent realization afterward. In addition, perfect synchronization and timing are considered. Finally, we assume here that all the Fig. 1 Bi-directional relay network relay-nodes and peripheral-nodes have limited average transmit powers denoted as P PN j , j = 1, 2 for peripheral-nodes and P RN i , i = 1, 2, . . . , R for relay-nodes. In this article, we use the following notations |.|, ., . , (.)* and E(.) to denote the absolute value, the floor function which rounds toward zero, the Frobenius norm, the complex conjugate and the statistical expectation, respectively. Now, let us consider the example shown in Fig. 2 which illustrates the concept of this novel technique. We assume that all channel values between the intermediate relay-nodes and the two peripheral-nodes are given. Based on the max-min selection criterion [10][11][12], RN 1 and RN 3 will be chosen as the best two available relaynodes since they have the maximum value links of (7 and 6.95) among the group of minimum value links (7, 6.9, 6.95, 6.85, 4, and 3). However, we can clearly see that RN 2 and RN 4 will probably have a much better performance as compared to RN 1 and RN 3 , as the maximum difference between their minimum value links is less than 3% ((7-6.85)/7) × 100% in the best scenario, while the maximum value links for RN 2 and RN 4 are (20 and 25), respectively, compared to (8 and 7.5) for RN 1 and RN 3 , which is at least 60% improvement in favor of RN 2 and RN 4 . Therefore, our proposed two-relay-node selection technique, whose flowchart is shown in Fig. 3, will first find the minimum value link for each relay-node (w = 7, 6.9, 6.95, 6.85, 4, and 3). Then, it sorts those minimum value links in descending order, so (w n = 7, 6.95, 6.9, 6.85, 4, and 3). After that, it will check the successive difference between the minimum value links, to find a sub-group of relay-nodes that have close values of their minimum value links (i.e., successive difference less than threshold). Once the successive difference becomes above the specified threshold (e.g., Threshold = 10%), this comparison will terminate, and the technique will move for further processing of the selected sub-group of relay-nodes (w g = 7, 6.95, 6.9, 6.85). At this stage, the proposed technique will estimate the expected performance of each node in the selected subgroup by multiplying the values of their both channels ( f i × b i ) to produce (7 × 8 = 56, 6.95 × 7.5 = 52, 6.9 × 20 = 138, and 6.85 × 25 = 171). After that it selects the two relaynodes ( RN 2 and RN 4 ) with the highest possible performance (138, and 171). Section 3 explains the proposed dual-relay selection technique in more details.

The proposed bi-directional dual-relay selection technique
In this proposed technique, the three-phase decode-and-forward (DF) communication protocol will be executed [2,3]. The first peripheral-node PN 1 broadcasts its message vector z P 1 in the first available time slot; then, the second peripheral-node PN 2 broadcasts its message vector z P 2 in the second available time slot, so that the rth intermediate relay-node RN r receives the following during the first and second time slots, respectively: and Z P 2 are possibly two different constellations, and n RN 1 ,r and n RN 2 ,r represent the noise signal vectors at the rth relay-node RN r in the first and the second time slots. After that, the rth intermediate relay-node RN r decodes the two received message vectors using the maximum likelihood (ML) decoder as: It is worth mentioning here that the encountered decoding complexity by the intermediate relay-nodes is very low, as they apply a symbol-wise decoding capable of providing a (1) y RN 1 ,r = P PN 1 f r z P 1 + n RN 1 ,r , (2) y RN 2 ,r = P PN 2 b r z P 2 + n RN 2 ,r .
(3) z PN 1,r = arg z P 1 min y RN 1 ,r − P PN 1 f r z P 1 , (4) z PN 2,r = arg z P 2 miny RN 2 ,r − P PN 2 b r z p 2 . linear decoding complexity to detect the received messages. Later, the rth relay-node RN r will combine the two received message vectors z PN 1,r and z PN 2,r to form a single message vector as follows: where F(., .) is a combination function of the two received message vectors used at the intermediate relay-nodes. Such combination functions have been recently discussed by many articles where modular arithmetic (MA) proposed in [2], XOR function discussed in [1,2] and the combination function suggested in [2] are just some examples of the available combination functions. In the relay decoding described by Eqs. (3) and (4), the relay-nodes simply round the real and imaginary parts of the received messages to the nearest constellation point in case of an integer constellation. Furthermore, the use of the combination function F(., .) in the proposed scheme has a negligible complexity. The two selected intermediate relay-nodes ( RN i and RN j ) will be chosen based on the proposed relay-nodes selection technique, discussed in Sect. 2, as follows: Step 1 Select the first relay-node based on max-min selection criterion, such that: Step 2 Select the next relay-node based on max-min selection criterion when k = {2, 3} , such that: Step 3 The third step of the proposed technique consists of sorting the relay-nodes in a descending order based on their minimum value links, then calculating the difference in the quality of links between the second relay RN a 2 and the third relay RN a 3 using the following equation when k = 2 If Diff > Threshold, then the best selected relay-nodes are RN a k , k = {1, 2} . Since they have the best links between the two communicating peripheral-nodes that offer the best performance in the network.
Step 4 For Diff < Threshold, repeat Step 2 and 3 when k = 4 . After that, if Diff > Threshold, then M k = 3 else M k = 4 . This step aims to shortlist all the intermediate relay-nodes that have very close minimum value links, and will be repeated once again as long as the Diff value is below the targeted threshold.
Step 5 Select the best two relay-nodes among the previous shortlisted relay-nodes based on their expected performance, which will be calculated as the multiplication of their forward and backward links as below: , it is clearly observed that i = a k and j = a l . An example for the proposed selection technique is available in Sect. 2 as well as more details related to the previous steps are explained in the flowchart shown in Fig. 3. Let us now discuss the complexity of the proposed relay-selection technique. First of all, steps 1 and 2 have the same complexity of the best-known relay selection technique [10][11][12]. Therefore, we have added steps 3, 4, and 5 to modify the best-known technique. Note that the sorting of the forward and backward channels is already applied in steps 1 and 2. In general, the proposed algorithm terminates after checking two to four relay-nodes causing a negligible complexity in this case. However, let us discuss the worst-case scenario when the proposed algorithm checks all the available relay-nodes. In step 3, the algorithm performs (R − 1) subtractions and (R − 1) divisions, and in step 4, it compares the results of step 3 with the threshold value, resulting in (R − 1) comparisons. In step 5, it multiplies the forward channel value with the backward channel value for the selected relay-nodes and selects the ones with the highest two values resulting in (R − 1) multiplications and (2R − 3) comparisons. This means that the proposed algorithm performs (3R − 4) comparisons, (R − 1) subtractions, (R − 1) divisions and (R − 1) multiplications. Therefore, in the worst-case scenario, the complexity of these three added steps is linearly increasing with the increase of the number of available relay-nodes. However, in almost all scenarios, the algorithm terminates after 2-4 iterations only, without the need to go through R − 1 iterations. Note that the complexity of the proposed algorithm can be fixed by setting the number of iterations to K. This means that in steps 1 and 2, the algorithm selects the best K relays, e.g., K = 4. In step 3, the algorithm performs only (K − 1 = 3) subtractions and (K − 1 = 3) divisions. In step 4, it performs (K − 1 = 3) comparisons. In step 5, it performs (2K − 3 = 5) comparisons and (K − 1 = 3) multiplications. In the aforementioned scenario, the complexity of the proposed algorithm becomes negligible. After that, those two selected intermediate relay-nodes ( RN i and RN j ) will perform orthogonal STC technique using Alamouti scheme to enhance the overall system's diversity and gain without adding extra decoding complexity. In the following step, the two selected intermediate relay-nodes ( RN i and RN j ) broadcast their combined and decoded message vectors in the third time slot toward the peripheral-nodes, so that, the second peripheral-node will receive: , and n PN 2 represents the noise signal vector at the second peripheral-node PN 2 received in the third time slot. Similarly, ML decoding scheme will also be performed at the peripheral-nodes to recover the received message vectors. Note here that the concerned peripheral-node can retrieve the data message vectors using a symbol-by-symbol detector, instead of applying the ML decoder, which has a linear decoding complexity based on the knowledge of its own data message z P 2 , and by applying the inverse of the combination function used at the rth relay-node RN r similarly as in [2,3]. Note that if only one relay ( R = 1 ) is available between the communicating terminals, the selection technique does not have any option other than the available relay to be selected to facilitate the needed communication between them. In this case, the relay receives the information symbols from the communicating terminals, combine them using (5) and forward the resulting symbol to the terminals without applying any STC technique.

BER performance analysis
In this section, we derive the mathematical model of the average BER performance of the proposed relay selection technique using binary phase shift key (BPSK) modulation according to the assumptions proposed in Sect. 2. In this analysis, we assume that all relay-nodes are ideal as in [13,14,27] and all noise signals are drawn from an independently distributed Gaussian random variables with zero mean and covariance σ 2 I T . Now, the proposed relay-node selection technique, defined in Eqs. (6a)-(6d) above, selects the ith and jth relay-nodes with P RN i = P RN j = P RN , and considering that the SNR of the link between RN r and PN 1 is denoted by γ PN 1 r = γ f r 2 , the SNR of the link between RN r and PN 2 is denoted by Note here that the independent factors, w l for l = 1, . . . , R , are following a probability distribution function as depicted in the below equation [13,14,27]: In this relay selection technique, as a first step the ith relay-node RN i is selected among the R available relay-nodes based on the selection criterion, explained in Eqs. (6a)-(6d), considering that b i is the link between RN i and PN 2 with γ PN 2 α 1 and f i is the link between RN i and PN 1 with γ PN 1 u 1 where γ PN 1 u 1 ≥ γ PN 2 R / 2 , and u 1 could be any uth greater than α 1 . For the second step, the jth relay-node RN j is selected similarly from the remaining (R − 1) relay-nodes with b j is the link between RN j and PN 2 with γ PN 2 α 2 , and f j is the link between RN j and PN 1 with γ PN 1 u 1 ≥ γ PN 2 α 2 , and u 2 could be any uth greater than α 2 and assuming that γ PN 2 α 1 ≥ γ PN 2 α 2 . As a result, the average BER of the proposed double-relay selection technique can be expressed as: It can be clearly seen that this equation is a combination of four terms where the first term (P 1 ) can be calculated using the moment-generation function (MGF) as: Then, the MGF of Q 1 can be also calculated as [13,14,27]: Now, we can use the partial fraction method to simplify the given equation above to: Therefore, the term P 1 can now be expressed as [13,14,27] Finally, combining Eqs. (11), (12) and (13), then P 1 can be rewritten as: Similarly, the terms P 2 , P 3 , and P 4 presented in Eq. (9) can be found by following the same procedure that leads to the calculation of P 1 presented in Eq. (14). For P 2 , considering that u 1 ≥ u 2 and using the MGF of Q 2 = γ PN 1 u 1 + γ PN 1 u 2 , for P 3 given that u 2 ≥ α 1 , and using MGF of Q 3 = γ PN 1 u 2 + γ PN 2 α 1 , and for P 4 given that u 1 ≥ α 2 and using MGF of Q 4 = γ PN 1 u 1 + γ PN 2 α 2 , P 2 , P 3 and P 4 can be calculated as follows: Again, using partial fraction expansion we get: Then, the term of P 2 , P 3 and P 4 can be rewritten as: Finally, using the final equations of P 1 , P 2 , P 3 , and P 4 then the average BER of the suggested relay-node selection technique can be now calculated using: Now, assuming that the threshold value is equal to zero, then the ith relay-node RN i is selected among the R available relay-nodes based on the selection criterion explained in Sect. 2, given that b i is the link between RN i and PN 2 with γ PN 2 R / 2 and f i is the link between RN i and PN 1 with γ PN 1 u 1 where γ PN 1 u 1 ≥ γ PN 2 R / 2 , and u 1 could be any uth greater than R 2 .
After that, the jth relay-node RN j is selected similarly from the remaining (R − 1) relaynodes with b j which is the link between RN j and PN 2 with γ PN 2 (R − 1) / 2 , and f j is the link between RN j and PN 1 with γ PN 1 u 2 where γ PN 1 u 1 ≥ γ PN 2 (R − 1) / 2 and u 2 could be any uth greater than (R − 1) 2 . Then, the average BER of the proposed double-relay-node selection technique can be expressed as: Again, this equation is composed of four terms, where the first term P 1 can be calculated using the MGF, such that: (27) Then, the MGF of Q 1 can be also calculated as [13,14,27]: Now, we can use the partial fraction method to simplify the given equation above to: Therefore, the term P 1 can now be expressed as [13,14,27] Finally, combining Eqs. (33), (34) and (35), then P 1 can be rewritten as: Similarly, the terms P 2 , P 3 and P 4 in Eq. (31) can be found by following the same procedure. For P 2 , considering that u 1 ≥ u 2 , and using the MGF of Q 2 = γ PN 1 u 1 + γ PN 1 u 2 , for P 3 given that u 2 ≥ R 2 , and using MGF of Q 3 = γ PN 1 u 2 + γ PN 2 R / 2 , and for P 4 given that u 1 ≥ (R − 1) 2 and using MGF of Q 4 = γ PN 1 u 1 + γ PN 2 (R − 1) / 2 , then:  Again, using partial fraction expansion we get:  Fig. 9 BER versus SNR for dual-relay selection strategies using the three-phase relaying protocol with 4-QAM modulation and R = 6   Then, the terms of P 2 , P 3 and P 4 can be rewritten as: Finally, using the final equations of P 1 ,P 2 , P 3 , and P 4 then the average BER of the suggested relay-node selection technique can be now calculated using:

Methods/experimental
In this section, we present the results obtained from both our conducted simulations and mathematical model presented in Sect. 4. In the simulation results, Monte Carlo runs have been used to generate the simulated performance of the proposed technique to be compared with the best known techniques and the theoretical performance attained from the mathematical equation given by (30) in Sect. 4. Note that in our system model (47) shown in Fig. 1, we consider a half-duplex relay network with R + 2 single-antenna nodes consisting of two communicating terminals, i.e., (PN 1 and PN 2 ), that intend to communicate with each other through R intermediate single-antenna relay-nodes. We assume independent slow Rayleigh flat-fading channels with zero mean and unit variance. Furthermore, all CSI is perfectly known at all receiving nodes and all communication channels between the terminals and relays are assumed to be reciprocal. The channels are assumed to stay constant during two time slots and change to an independent realization afterward. Moreover, perfect synchronization and timing are considered. In Fig. 4, we show the simulated performance of the proposed relay-selection technique in terms of BER with the theoretical performance attained from the mathematical equation given by (30) in Sect. 4 under the scenario of a wireless cooperative network with various number of available intermediate relay-nodes R = {2; 4; 6} using BPSK constellation and assuming no direct link available between the first peripheral-node PN 1 and the second peripheral-node PN 2 . This figure shows a very close matching between our simulations and mathematical model. Figure 5 shows a performance comparison in terms of the BER between our proposed double-relay selection technique with the double-max technique proposed in [11], the max-min technique proposed in [12], and the dual-relay selection technique proposed in [14] under the scenario of R = {2, 4} intermediate relay-nodes using 4-QAM constellation. Figure 6 also shows a performance comparison between the previously mentioned relay-node selection techniques but under the scenario of R = {2, 4, 6} intermediate relay-nodes using 8-PSK constellation. Both figures clearly show that our proposed technique outperforms the best available state-of-the-art relay-node selection techniques. Figure 7 shows the BER performance of our proposed dual-relay selection technique using the scenario of four available intermediate relay-nodes (R = 4) and 4-QAM constellation under different threshold values, i.e., threshold varies between 0 and 5. Note here that our proposed technique with threshold value set to zero is equivalent to the selection strategy proposed in [14]. The figure clearly shows that the best performance is achieved when the threshold value is two. To confirm this result, Fig. 8 shows the BER results of our proposed relay selection technique using 4-QAM modulation with four available intermediate relay-nodes and SNR of 20 dB under different threshold values. This figure clearly supports our findings in Fig. 7.
Similarly, Fig. 9 shows the BER performance of our proposed dual-relay selection technique using the scenario of six available intermediate relay-nodes (R = 6) using 4-QAM constellation under different threshold values, i.e., threshold varies between 0 and 5. Again, this figure clearly shows also that the best performance is achieved when the threshold value is two. Figure 10  Furthermore, Fig. 11 shows the BER performance of our proposed dual-relay selection technique using the scenario of four available intermediate relay-nodes (R = 4) using 8-PSK constellation under different threshold values, i.e., threshold varies between 0 and 5. Again, this figure clearly shows also that the best performance is achieved when the threshold value is two. Figure 12  Similarly, Fig. 13 shows the BER performance of our proposed dual-relay selection technique using the scenario of six available intermediate relay-nodes (R = 6) using 8-PSK constellation under different threshold values, i.e., threshold varies between 0 and 5. Again, this figure clearly shows also that the best performance is achieved when the threshold value is two. Figure 14

Results and discussion
From Fig. 4, we observe that the simulated performance of the suggested strategy in terms of BER is very close to the theoretical BER performance attained from Eq. (30) in Sect. 4. In Figs. 5 and 6, it can be observed that the suggested strategy that uses the three-phase relaying protocol outperforms the current state-of-the-art strategies that perform the same relaying protocol.
From Fig. 7, it is clearly shown that our proposed three-phase dual-relay-node selection technique under different threshold values outperforms the three-phase doublerelay-node selection technique proposed in [14]. Noting that our proposed technique using a threshold value of zero is similar to the three-phase double-relay-node selection technique proposed in [14]. It is worth mentioning that the proposed technique which implements a three-phase relaying protocol outperforms the current state-ofthe-art strategies that perform the same relaying protocol. From Fig. 8, it is observed that the BER improves while increasing the threshold value until the best performance is achieved at threshold value of two (threshold = 2); then, the performance will degrade for threshold values greater than three. Figure 9 clearly shows that our proposed three-phase dual-relay-node selection technique under different threshold values outperforms the three-phase double-relay-node selection technique proposed in [14]. Figure 10 shows the relation between the BER performance of the relay-node network scenario discussed for Fig. 9 and the threshold values. It is very obvious that this relation is similar to that noticed in Fig. 8, the BER will improve while increasing the threshold value until the best performance is achieved at threshold value of two (Threshold = 2), then the performance will degrade for threshold values greater than three. Furthermore, we note here that the BER has been reduced by almost 3 dB when we change the threshold value in our proposed technique from zero (standard max-min selection criteria) to two.
Finally, observed results from Figs. 11 and 13 are similar to those found in Figs. 7 and 9. In addition, observed results from Figs. 12 and 14 are similar to those found in Figs. 8 and 10.

Conclusion
In this work, we have proposed a novel dual-relay selection strategy using the threephase protocol based on STC. Furthermore, in this technique we have applied a network coding scheme at the selected relays in order to combine the symbols of the communicating symbols into one symbol with the same constellation. As a result, additional coding gain will be achieved. Furthermore, the analytical BER of this novel technique is investigated and proposed. The BER expression is compared to the simulation results in order to validate the analytical results. We proved as well that our novel method outperforms the most recent work and the current techniques.