1 Introduction

1.1 Multi-Way relaying with network coding

Consider a multi-way relay system where N terminals want to exchange their independent information packets with the help of a half-duplex relay over time-orthogonalized noisy channels. Such a setup can be used for example for a video conference between N terminals on earth via a satellite. The task of the relay is to efficiently forward its received signals to all terminals, such that every terminal can decode the messages of each other terminal. For this aim, we consider a decode-and-forward scheme where the relay transmits a network encoded version of its received packets. In previous work it was shown that network coding [1] allows an efficient bidirectional relay communication [24] with higher throughput than one-way relaying. In this work, we consider network coding for a multi-way relay system, which extends bidirectional relaying to more than two terminals.

Figure 1 depicts the multi-way relay communication model with time-orthogonalized channels. We consider a strategy where the transmission time is divided into N + 1 time phases. During the first N time phases (termed as uplink), the terminals transmit to the relay (the other terminals cannot receive these signals) and in the last time phase (termed as downlink), the relay broadcasts packets which can be heard by all other terminals. The key idea to apply network coding in this setup is that the relay broadcasts to the terminals a function, for example a bitwise XOR, of its received packets. The terminals decode the required packets from the relay transmission and use their own packet as side information. This scenario with N = 2 terminals and one relay is mainly studied in the literature as two-way relaying. For the two terminal-case, the achievable rates of several strategies were considered in [48].

Figure 1
figure 1

Multi-way relay communication over orthogonal channels

Multi-way relaying was first treated independently in [9] and [10]. The authors of [9] focused on the achievable rate region and the diversity-multiplexing tradeoff of several strategies with a half-duplex constrained relay. The authors of [10] focused on the achievable rate region of several strategies with a full-duplex relay. Moreover, they considered a more general system model than in [9] that included the grouping of terminals into clusters which is also not considered in our paper. In [11] a scheme called functional decode-and-forward was proposed for the multi-way relay channel, where the relay decodes and forwards a function of the messages of the source nodes. The same authors extended their work also in [12, 13]. Another work on multi-way relaying was done in [14, 15] where the authors consider non-regenerative relaying with beamforming. The same authors considered similar scenarios with regenerative relaying in [16] and multi-group multi-way relaying in [17, 18]. Code design for the multi-way relay channel with N = 3 terminals and with direct link between the terminals was considered in [19].

1.2 Contribution of this paper

We consider scenarios with asymmetric channel quality and asymmetric data traffic. For example, such scenarios arise for a video conference via a satellite where some of the terminals have a better receive antenna and desire a high received data rate to show the video on a large screen whereas the other terminals have a smaller receive antenna and require a lower data rate.

The main contribution of this work is the optimization of the time and rate allocation parameters for such setups. This work extends the optimization parts of [20], where we only considered N = 2 terminals, to an arbitrary number of terminals. This is the first work which concentrates on the optimization of the resource allocation for multi-way relay systems with asymmetric channels. Moreover, we obtain insights about the scalability of the network coding gain with the network size.

After introducing the system model in Section 2, we consider in Section 3 how to optimally allocate the transmission time to the terminals and the relay and how to optimally allocate the rates of the terminals such that the sum-rate is maximized. We first derive a closed form expression of the optimal time allocation for given rate ratios and given signal-to-noise ratios (SNRs) of all channels. Then, we show that the optimization of the rate allocation under the assumption that the time allocation is optimally chosen can be transformed into a linear optimization problem that is solvable with computationally efficient algorithms. Moreover, we obtain a closed form expression for the rate optimization that is valid for specific channel conditions that guarantee that the network is not "too asymmetric". If the network is "too asymmetric", at least one of the terminals should not transmit own data to maximize the sum-rate. In Section 4 we provide examples to show how the optimization can increase the system performance. Section 5 concludes the work.

2 System model

2.1 System setup

Consider a multi-way communication between N terminals T i with 1 ≤ iN via a relay where each terminal wants to communicate common information to all other terminals. We do not consider private information that is only intended for a subset of all terminals. The information bits of terminal i are segmented in packets u i of length K i . The packets carry statistically independent data. At T i , the bits u i are protected against transmission errors with channel codes and modulators which output the block x i containing M i symbols. T i transmits x i to the relay with power P i in the i-th of the N +1 time phases. We consider a time-division channel without interference between nodes.

The relay demodulates and decodes in the i-th time phase the corrupted version yi Rof x i to obtain the hard estimate u ̃ i about u i . Then, the estimates u ̃ i of all terminals are network encoded and modulated to the block xR containing MR symbols. The relay broadcasts xR to all terminals with power PR in the N + 1-th time phase.

T i receives the corrupted version yRiof xR in the N + 1-th time phase. Based on yRiand on the own information packet u i , the decoder at T i outputs the hard estimates u ^ i about u j for all j between 1 and N except for j = i.

The total number of transmitted symbols is given by M = M R + i = 1 N M i . The transmitted rate in information bits per symbol from T i is R i = K i /M. The transmitted sum-rate of the system is given by R = i = 1 N R i = i = 1 N K i / M . We define the time allocation parameters θ i = M i /M for 1 ≤ iN and θ R =1- i = 1 N θ i . Moreover, we define the rate ratios σ i = R i /R for 1 ≤ iN with i = 1 N σ i =1. Note that the rate ratios are defined differently compared to [20]. The block diagram of the system model is depicted in Figure 2.

Figure 2
figure 2

System model: We only depict the decoder at T 1 in detail. The decoders at the other terminals work analog to the one at T1.

2.2 Channel model

All channels are assumed to be AWGN channels and thus the received samples after the matched filter are

y i R = h i R x i + z i R ( T i transmits )
(1)
y R i = h R i x R + z R i ( R transmits )
(2)

with the channel coefficients hi Rand hRifor 1 ≤ iN modeling path loss and antenna gains. The noise values z k are zero-mean and Gaussian distributed with variance N0· W/2 per complex dimension, where W denotes the bandwidth.

The SNRs are given by γi R= P i · hi R/(N0 W) and by γRi= P R · hRi/(N0 · W).

3 Optimization of time and rate allocation

In this section we consider the problem of how to optimally allocate the transmission time to the terminals and to the relay and how to optimally allocate the rates of the terminals such that the sum-rate is maximized. We extend the work in [20] from N = 2 to an arbitrary number of terminals.

3.1 Achievable rate region

Assuming the system model given in the previous section, the data of T i can be decoded reliably at all other terminals, if the following conditions hold for all i in 1 ≤ iN:

R i θ i C ( γ i R )
(3)
j = 1 , j i N R j = R ( 1 - σ i ) θ R C ( γ R i )
(4)

with C(γ) = log2(1 + γ) for Gaussian distributed channel inputs. The conditions in (3) ensure that the relay is able to decode reliably while the conditions in (4) ensure that the terminals are able to decode reliably. The conditions in (4) can be obtained from [21]. A similar result has been derived in [22] where more a priori information is assumed than in our channel model. For N = 2 these conditions are derived in [5] and [23].

3.2 Optimal time allocation

In this section we consider the optimization of the time allocation parameters θ - = [ θ 1 θ 2 . . . θ N ] T such that the sum-rate R is maximized for given rate ratios σ - = [ σ 1 σ 2 . . . σ N ] T . Formally, the optimization is stated as

θ - * = arg max θ - R
(5)

subject to

0 θ i 1 i { 1 , 2 , . . . , N } 0 θ R = 1 - i = 1 N θ i 1

and with

R = min 1 i N θ i σ i C ( γ i R ) , 1 - j = 1 N θ j C ( γ R i ) 1 - σ i
(6)
= min 1 i N θ i σ i C ( γ i R ) , 1 - j = 1 N θ j a
(7)

whereas a is given by

a = min 1 k N C ( γ R k ) 1 - σ k
(8)

and the arguments of the minimum in (6) follow from (3), from (4), from R i = σ i · R and from θ R =1- i = 1 N θ i . The step from (6) to (7) is done to ensure that the second argument of the minimization is independent of i.

The solution of the optimization follows by setting the first and the second argument in (7) to equality for all i with 1 ≤ iN:

θ i * σ i C ( γ i R ) = 1 - j = 1 N θ j * a
(9)

The optimization can be solved in this way, because

  • the first argument increases monotonically with θ i ,

  • the second argument decreases monotonically with θ i ,

  • it is guaranteed that the first and the second argument have a cross-over point for C ( γ i R ) 0 and C ( γ R i ) 0.

In order to find the N unknown θ i * , N equations are provided by (9). As long as these N equations are linearly independent, the optimal time allocation parameters θ * can be obtained by

C ( γ 1 R ) σ 1 + a a a a C ( γ 2 R ) σ 2 + a a a a C ( γ N R ) σ N + a - 1 a a a
(10)

Eq. (10) can be further simplified by using the matrix inversion lemma [24]

B + U A V - 1 = B - 1 - B - 1 U A - 1 + V B - 1 U - 1 V B - 1

where we set A = a, V = [1... 1]1 ×N, U = VT and B as a diagonal N × N matrix with C ( γ i R ) / σ i as the i-th diagonal element. Accordingly, the optimal time allocation parameters θ i * for all i are given by

θ i * = σ i C ( γ i R ) 1 a + j = 1 N σ j C ( γ j R )
(11)

and the corresponding achievable sum-rate R is given by

R = θ i * σ i C ( γ i R ) = 1 a + j = 1 N σ j C ( γ j R ) - 1 .
(12)

This also shows that the matrix in (10) is invertible if C ( γ i R ) >0 holds for all i. Moreover, it can be seen from Eq. (12) that if the uplink capacity C ( γ i R ) of terminal T i is increased, the allocated time for that terminal decreases. Another interesting observation is that θ i * depends on all uplink capacities and only on one downlink capacity given in (8). It does not depend on the other downlink capacities.

3.3 Optimal time and rate allocation

Based on the result in the previous section we consider the optimal choice for the rate ratios σ - = [ σ 1 σ 2 . . . σ N ] T such that the sum-rate R of the system is maximized when the time allocation θ - = [ θ 1 θ 2 . . . θ N ] T is chosen optimally. Formally, the optimization is stated as

σ * = arg max σ - R = arg max σ - 1 a + j = 1 N σ j C ( γ j R ) - 1
(13)

subject to

0 σ j 1 i { 1 , 2 , . . . , N } i = 1 N σ i = 1 .

The optimization in (13) can be expressed as the following linear optimization problem [25]:

[ σ * b * ] = arg min [ σ - b ] b + j = 1 N σ j C ( γ j R )
(14)

subject to

0 σ i 1 i { 1 , 2 , . . . , N } i = 1 N σ i = 1 0 1 - σ i C ( γ R i ) - b i { 1 , 2 , . . . , N } .

This allows to solve the problem with computationally efficient numerical algorithms. Note that in this expression b = 1/a is included as additional optimization variable.

The result of a linear optimization problem can only be given by a vertex [ σ - * b * ] of the polyhedron defined by the constraints of the linear optimization problem [25]. We want to take a closer look at one specific vertex which is optimal for networks that are not "too asymmetric". We term this vertex as [ σ - S * b S * ] , whereas the i-th element of σ - S * is given by

σ S , i * = 1 - ( N - 1 ) C ( γ R i ) j = 1 N C ( γ R i ) i { 1 , 2 , . . . , N }
(15)

and the rate

R S * = N - 1 j = 1 N C ( γ R j ) 1 - j = 1 N C ( γ R j ) C ( γ j R ) + j = 1 N 1 C ( γ j R ) - 1
(16)

is achievable at this vertex. The vertex [ σ - S * b S * ] is optimal, if

j = 1 N C ( γ R j ) C ( γ j R ) 1 + 1 C ( γ i R ) j = 1 N C ( γ R j ) Λ ( N - 1 ) C ( γ R i ) j = 1 N C ( γ R j ) 1
(17)

is valid for all i ∈ {1, 2,..., N} whereas ∧ denotes a logical AND (derivation in Appendix 6.1). We denote networks where (17) is not fulfilled for any i ∈ {1, 2,..., N} as "too asymmetric" for full network coding, because the vertex [ σ - S * b S * ] is the only solution of the optimization problem where it is possible that σ i * >0 for all i ∈ {1, 2,..., N} (derivation in Appendix 6.1). That means if (17) is not fulfilled for any i ∈ {1,2, ...,N}, at least one σ i * is zero. Those terminals do not transmit any packet at all. It is also interesting to see that for reciprocal channels ( C ( γ R i ) = C ( γ i R ) for all i ∈ {1, 2,..., N}) both conditions in (17) are identical.

Although the explicit solution in (15) could be also obtained numerically with the linear optimization, it is worthwhile to express it explicitly, because Condition (17) is fulfilled for specific networks that are of practical relevance, for example

  • for completely symmetric networks where all capacities are equal ( C ( γ i R ) = C ( γ R i ) = C for all i ∈ {1,2,..., N}),

  • for "close-to-symmetric" networks in the sense that the set of all terminal-indices {1, 2,..., N} is split into the four disjoint subsets N b , N u , N d and N r with cardinalities | N b | = N b , | N u | = N u , | N d | = N d and | N r | = N r , = N - N b - N u - N d and that the following properties are fulfilled:

C ( γ i R ) =C ( γ R i ) =C+δ for all i N b

C ( γ i R ) =C+δ and C ( γ R i ) =C for all i N u

C ( γ i R ) =C and C ( γ R i ) =C+δ for all i N d

C ( γ i R ) =C ( γ R i ) =C for all i N r

δ is constrained to be in the following interval (derivation in Appendix 6.2):

δ C max - 1 N d + N b , ( N u + N b + 1 ) 2 - 4 N b - N u - N b - 1 2 N b
(18)
δ C min 1 N - N d + N b - 1 , ( N r + N d - 1 ) 2 - 4 N d - N r - N d + 1 2 N d
(19)

[ N b > 0 ] , [ N d > 0 ] , [ N u + N b < N ] and [ N d + N b < N ] .

  • for networks with reciprocal channels, where

    C ( γ i R ) = C ( γ R i ) N N - 1 C D
    (20)

is fulfilled for all i ∈ {1,2,..., N} whereas C D = 1 N j = 1 N C ( γ R j ) describes the average downlink capacity. Note that Condition (20) becomes more strict with growing N, because N N - 1 approaches to 1 and hence the capacities of the channels should be closer to the average capacity C D in order to fulfill the conditions given in (17).

  • for networks with N = 2 with C ( γ 2 R ) C ( γ R 2 ) and C ( γ 1 R ) C ( γ R 1 ) (for example for all reciprocal channels).

Moreover, the explicit solution in (15) can be regarded as an appropriate initial point for numerical algorithms.

We want to take a closer look at the optimization result for N = 2 in order to allow an easier interpretation of the result [20]. Moreover, this allows us to treat also the cases explicitly in closed form where (17) is not fulfilled. We simplify the notation and use ρ = σ21 = 1/σ1 - 1. The solution of the optimization for N = 2 is given by

ρ * = 0 , if Δ u < - 1 / C ( γ R 2 ) ρ * , if Δ u > 1 / C ( γ R 1 ) ρ * = C ( γ R 1 ) / C ( γ R 2 ) else
(21)

with Δ u =1/C ( γ 1 R ) -1/C ( γ 2 R ) , where the optimal rate

R * = C ( γ 1 R ) C ( γ R 2 ) C ( γ 1 R ) + C ( γ R 2 ) , if Δ u < - 1 C ( γ R 2 ) C ( γ 2 R ) C ( γ R 1 ) C ( γ 2 R ) + C ( γ R 1 ) , if Δ u < - 1 C ( γ R 1 ) C ( γ R2 ) + C ( γ R 1 ) 1 + C ( γ R 2 ) C ( γ 1 R ) + C ( γ R 1 ) C ( γ 2 R ) else
(22)

is achievable. For the last case in (21) and (22) Condition (17) is fulfilled and thus, the optimal rate allocation and the corresponding rate are given by (15) and (16), respectively. The optimization of the other two cases is derived in [20]. We conclude from (21) that network coding should only be used for -1/C ( γ R 2 ) 1/C ( γ 1 R ) -1/C ( γ 2 R ) 1/C ( γ R 1 ) to achieve the maximum sum-rate. Otherwise the network is "too asymmetric" and it is optimal to communicate only in one direction for achieving the maximum sum-rate. If network coding should be used, the optimal rate ratio σ* depends only on the links from the relay to the terminals. As mentioned previously, for C ( γ 2 R ) C ( γ R 2 ) and C ( γ 1 R ) C ( γ R 1 ) the result of the optimization in (21) simplifies and it is always optimal to use network coding with ρ * =C ( γ R 1 ) /C ( γ R 2 ) .

3.4 Reference system without network coding

In this section we describe a reference system for the multi-way relay communication, where no network coding is used. In this scheme the transmission time is split into 2N time phases. The first N phases are the same as in Section 2 and the next N phases are used by the relay to forward the packets that it received in the first N phases to the terminals (During the N + i-th phase, the received packet from the i-th phase is broadcasted). For comparison with the network coding case, we also optimize the time allocation and the rate ratio.

3.4.1 Achievable rate region

In this system, the following conditions have to hold for all i in 1 ≤ iN in order to ensure a reliable communication between each terminal [26]:

R θ i σ i C ( γ i R )
(23)
R θ i + N σ i min j { 1 , 2 , . . . , N } / i C ( γ R j )
(24)

3.4.2 Optimal time allocation

We first consider the optimization of the time allocation vector θ - = [ θ 1 θ 2 . . . θ N - 1 ] T for a given rate ratio vector σ - = [ σ 1 σ 2 . . . σ N ] T . Considering the conditions in (24), the optimization can be stated as follows:

θ - * = arg max θ - R
(25)

subject to

0 θ i 1 , i { 1 , 2 , . . . , 2 N - 1 } 0 θ 2 N = 1 - i = 1 2 N - 1 θ i 1

and with

R = min 1 i N θ i σ i C ( γ i R ) , θ i + N σ i min j { 1 , 2 , . . . , N } / i C ( γ R j )
(26)

The solution of the optimization can be found similarly to the one in Section 3.2 by setting the 2N terms in Eq. (26) to equality. We set every term in Eq. (26) equal to the very last term θ 2 N / σ N min j { 1 , 2 , . . . , N - 1 } C ( γ R j ) and express θ 2 N =1- i = 1 2 N - 1 θ i in terms of the sum of all other θ i 's, which at the end gives us 2N - 1 equations with 2N - 1 unknowns. Without loss of generality, we assume that the notation is chosen such that C ( γ R 1 ) C ( γ R 2 ) C ( γ R N ) is valid. This implies

C ( γ R 2 ) = min j { 1 , . . . , N } / i C ( γ R j ) for i = 1
(27)

and

C ( γ R 1 ) = min j { 1 , . . . , N } / i C ( γ R j ) for i > 1
(28)

Then, we can derive with the help of the matrix inversion lemma that the the solution of the problem is given by

θ i * = s i 1 - σ 1 C ( γ R 1 ) + σ 1 C ( γ R 2 ) + j = 1 N σ j C ( γ j R )
(29)

with

s i = σ i C ( γ i R ) if 1 i N σ 1 C ( γ R 2 ) if i = N + 1 σ i - N C ( γ R 1 ) if N + 2 i 2 N - 1
(30)

whereas θ 2 N * can be expressed as θ 2 N * =1- i = 1 2 N - 1 θ i * and b is given by b = C ( γ R 1 ) / σ N . The corresponding achievable sum-rate R is given by

R = θ i * σ i C ( γ i R ) = 1 - σ 1 C ( γ R 1 ) + σ 1 C ( γ R 2 ) + j = 1 N σ j C ( γ j R ) - 1 .
(31)

3.4.3 Optimal time and rate allocation

Based on the result in the previous section we consider the optimal choice for the rate ratios σ - = [ σ 1 σ 2 . . . σ N ] T such that the sum-rate R of the system is maximized when the time allocation θ is chosen optimally. Formally the optimization is stated as

σ * = arg max σ R = arg max σ 1 - σ 1 C ( γ R 1 ) + σ 1 C ( γ R 2 ) + j = 1 N σ j C ( γ j R ) - 1
(32)

subject to

0 σ i 1 i { 1 , 2 , . . . , N } i = 1 N σ i = 1 .

One solution of the optimization is given by

σ 1 * = 1
(33)
σ i * = 0 i { 2 , 3 , . . . , N }
(34)

with

R * = 1 C ( γ R 2 ) + 1 C ( γ 1 R ) - 1
(35)

if

1 C ( γ 1 R ) + 1 C ( γ R2 ) - 1 C ( γ R1 ) 1 C ( γ i R )
(36)

is valid for all i ∈ {1, 2,..., N}.

If (36) is not fulfilled for any i ∈ {1, 2,..., N}, then the optimal rate allocation parameter is given by

σ j * = 1
(37)
σ i * = 0 i { 1 , 2 , . . . , N } / j
(38)

with

j = arg min i { 1 , 2 , . . . , N } 1 C ( γ i R ) = arg max i { 1 , 2 , . . . , N } C ( γ i R )
(39)

and

R * = 1 C ( γ R 1 ) + 1 C ( γ j R ) - 1 .
(40)

This means it is optimal to communicate only in one direction to maximize the sum-rate. The solution can be obtained similarly to the derivation in Section 3.3.

4 Examples

4.1 Example 1

Consider a symmetrical setup with N terminals where all the channels are of the same quality with C ( γ ) =1 bits per symbol. If the optimization of the time and rate allocation parameters is done according to the previous sections, we obtain for the case with network coding according to (15), (16) and (11)

σ i * = 1 N i { 1 , 2 , . . . , N } ,
(41)
R * = N 2 N - 1
(42)

and

θ i * = 1 2 N - 1 i { 1 , 2 , . . . , N }
(43)

For the case without network coding we obtain according to (35)

R * = 1 2 .
(44)

The achievable sum-rate R dependent on the number of terminals N is shown in Figure 3. It can be seen that R for the case without network coding is constant, whereas if network coding is applied, the sum-rate R is always larger compared to the case without network coding. Another important result is that the largest gain is achieved for N = 2 terminals and with increasing N the gain due to network coding decreases. Note that contrary to the considered transmitted sum-rate, the received sum-rate ((N -1)·R) would increase with growing N.

Figure 3
figure 3

Example 1: Sum-rate for different number of terminals with optimal time allocation and equal rate ratios for symmetrical setup.

4.2 Example 2

Consider a two-terminal example with C ( γ R 1 ) =3,C ( γ R 2 ) =2 and C ( γ 2 R ) =1 bits per symbol. Figure 4 depicts the optimal values ρ * = σ 2 * / σ 1 * and R* for network coding and the corresponding values without network coding dependent on C ( γ 1 R ) . According to (21), it is optimal to use network coding with ρ* = 3/2 for 3/4<C ( γ 1 R ) <2 whereas 3/4 and 2 can be regarded as network coding thresholds. If C ( γ 1 R ) is not between these thresholds, network coding should not be used to maximize the sum-rate. By using network coding the optimal sum-rate can be increased to 0.88 bits per channel use at C ( γ 1 R ) =1.2, while the sum-rate without network coding is 0.75 bits per channel use. This corresponds to an increase of 17.5% in spectral efficiency.

Figure 4
figure 4

Example 2: Optimal rate allocation ρ * = σ 2 * / σ 1 * and sum-rate R* for network coding and corresponding values without network coding for C ( γ R 1 ) =3,C ( γ R 2 ) =2and C ( γ 2 R ) =1in a two-terminal case [20].

4.3 Example 3

Figure 5 depicts the achievable sum-rate R over the SNR γR1 from R to T1 in a scenario with N = 5 terminals. All other SNRs are set to γR1 + 10 dB. The reason for the lower channel receive-quality at T1 could be a smaller antenna with a lower gain compared to the other terminals. We consider systems with and without network coding and assume Gaussian distributed channel input distributions. If both time and rate allocation are optimized, network coding gains more than 1.4 dB compared to the system without network coding for a sum-rate of R = 4.0 bits per symbol. If the time allocation is optimized for an equal rate allocation, network coding gains more than 1.3 dB for R = 3.0 bits per symbol. For an equal time and rate allocation, network coding gains more than 2.5 dB for R = 2.0 bits per symbol.

Figure 5
figure 5

Example 3: Achievable rate over the SNR γ R1 from R to T1 for N = 5 terminals. All other SNRs are set to γR1 + 10 dB.

The systems with the optimal time and rate allocation perform best and gain for a sum-rate of R = 2.0 bits per symbol more than 5.3 dB compared to the corresponding systems with equal rates.

If both time and rate allocation are optimized and network coding is used, the terminal T1 with the weakest relay-terminal channel transmits with the largest rate. For example, for γR1 = 10 dB the optimal allocation vectors are given by σ - * = [ 0 . 540 0 . 115 0 . 115 0 . 115 0 . 115 ] T , θ * = [ 0 . 287 0 . 061 0 . 061 0 . 061 0 . 061 ] T and θ R * = 0 . 4690 .

4.4 Example 4

Figure 6 shows the achievable rates for a scenario similar to the previous example with N = 2 terminals. All other SNRs than γR1 are again set to γR1 + 10 dB.

Figure 6
figure 6

Example 4: Achievable rate over the SNR γ R1 from R to T1 for N = 2 terminals. All other SNRs are set to γR1 + 10 dB.

If both time and rate allocation are optimized, network coding gains more than 4.0 dB compared to the system without network coding for a sum-rate of R = 4.0 bits per symbol. If the time allocation is optimized for an equal rate allocation, network coding gains more than 3.4 dB for R = 3.0 bits per symbol. For an equal time and rate allocation, network coding gains more than 6.9 dB for R = 2.0 bits per symbol. This confirms the observation in Example 1 that the gain due to network coding is maximized for N = 2.

The systems with the optimal time and rate allocation perform best and gain for a sum-rate of R = 2.0 bits per symbol more than 3.4 dB compared to the corresponding systems with equal rates.

If both time and rate allocation are optimized and network coding is used, the terminal T1 with the weakest relay-terminal channel transmits with the largest rate. For example, for γR1 = 10 dB the optimal allocation vectors are given by σ * = [ 0 . 66 0 . 34 ] T , θ * = [ 0 . 397 0 . 206 ] T and θ R * = 0 . 397 .

The rate for equal time and rate allocation with network coding changes its pre-log-factor from 1 to 0.5 at γR1 = 9 dB because the rate is limited by the communication to the terminals for γR1 < 9 dB and by the communication to the relay for γR1 > 9 dB.

The considered networks in the Examples 3 and 4 are never "too asymmetric" in the range -10 dB ≤ γR1 ≤ 15 dB and thus, the explicit expression in (16) can be always used to calculate R*.

5 Conclusion

We considered communication systems with multiple terminals and one relay where the terminals want to transmit their packets to each other. We derived closed form expressions for the optimal time allocation. We also obtained a closed form expression for the optimal rate allocation that is valid for specific channel conditions that guarantee that the network is not "too asymmetric". If these conditions are not fulfilled we showed that the optimization can be solved efficiently with linear optimization algorithms. For asymmetric channel conditions, the sum-rate is larger if we allow the time and rate allocation to be asymmetric as well. It turns out that the largest gain due to network coding is obtained for N = 2 terminals and the gain decreases with increasing N.

In further work, efficient code design for asymmetric multi-way relay systems could be considered.

6 Appendix

6.1 Derivation of optimal rate allocation

We want to show under which conditions the vertex [ σ - S * b S * ] whose elements are given according to (15) is the solution of the optimization in (14). The derivation follows [25, Chapter 3.1]. First, we transform the optimization problem in (14) with the help of slack variables s i to its corresponding standard form which is given by

x * = arg min x c T x s .t . A x = b and x 0 2 N + 1 T

with

x = [ σ b s 1 s 2 . . . s N ] T c = 1 C ( γ 1 R ) 1 C ( γ 2 R ) 1 C ( γ N R ) 1 0 N T b = 1 C ( γ R1 ) 1 C ( γ R2 ) 1 C ( γ R N ) 1 T A = 1 C ( γ R 1 ) 0 0 1 0 1 C ( γ R 2 ) 1 0 0 0 1 C ( γ R N ) 1 1 1 1 0 - 1 0 0 0 0 - 1 0 0 0 0 - 1 0

whereas 0l; denotes an all-zero row vector of length l. The problem contains n = 2 • N + 1 variables with m = N + 1 equality constraints. A vector x ∈ ℝnis a vertex if Ax = b is fulfilled and n - m elements of x are zero [25, Theorem 2.4].

We only consider the vertex x S * = [ σ - S * b S * 0 N ] T with s i = 0 for all i ∈ {1, 2,..., N} which is given by

[ σ - S * b S * ] T = B - 1 b
(45)

whereas B is a m × m matrix which consists of the first m columns of A. This is the only vertex where no σ i with i ∈ {1,2,..., N} is constrained to be zero, because b = 0 and s i = 0 leads to σ i = 1 which would imply σ j ≤ 0 for j ∈ {1, 2,..., N}/i.

The vertex x S * is optimal if

c T - c S T B - 1 A 0 n
(46)

and

B - 1 b 0 m T
(47)

is fulfilled whereas cS is the vector which contains the first m elements of c [25, Chapter 3.1]. The condition in (46) is for the last N elements equivalent to the left hand side in Condition (17) and the condition in (47) is for the first N elements equivalent to the right hand side in Condition (17). The conditions (46) and (47) are always fulfilled for the other elements. The corresponding solution of the optimization in (15) follows from (45).

6.2 Derivation of δ-Interval for "Close-to-Symmetric" networks

The first argument of the maximum in (18) follows from the right hand side of (17) for C ( γ R i ) =C. The second argument of the maximum in (18) follows from the left hand side of (17) for C ( γ i R ) =C. The first argument of the minimum in (19) follows from the right hand side of (17) for C ( γ R i ) =C+δ. The second argument of the minimum in (19) follows from the left hand side of (17) for C ( γ i R ) =C+δ.