32
Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding Adeel Razi ,⋆ joint work with Daniel J. Ryan * Iain B. Collings Jinhong Yuan School of Electrical Eng. & Telecommun., The University of New South Wales, Sydney, AUSTRALIA [email protected] * Dept. of Electronics and Telecommuns., Norwegian University of Science and Tech. (NTNU), NORWAY Wireless Technologies Laboratory, CSIRO ICT Centre, Sydney, AUSTRALIA Eurecom, Sophia Antipolis, FRANCE, June 11, 2009 Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Multiuser MIMO Vector Perturbation Precoding

Embed Size (px)

Citation preview

Page 1: Multiuser MIMO Vector Perturbation Precoding

Sum Rates, Rate Allocation, and UserScheduling for Multi-user MIMO Vector

Perturbation Precoding

Adeel Razi†,⋆

joint work with

Daniel J. Ryan∗ Iain B. Collings⋆ Jinhong Yuan†

†School of Electrical Eng. & Telecommun., The University of New South Wales, Sydney, AUSTRALIA

[email protected]∗Dept. of Electronics and Telecommuns., Norwegian University of Science and Tech. (NTNU), NORWAY

⋆Wireless Technologies Laboratory, CSIRO ICT Centre, Sydney, AUSTRALIA

Eurecom, Sophia Antipolis, FRANCE, June 11, 2009

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 2: Multiuser MIMO Vector Perturbation Precoding

Outline

• Multi-user MIMO Channel

• Background on Multi-user Techniques

• Review on Vector Perturbation Precoding

• Previous Work

• Expressions for Sum Rate

• Rate Allocation Problem

• Algorithm for User Scheduling

• Conclusions

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 3: Multiuser MIMO Vector Perturbation Precoding

Outline

• Multi-user MIMO Channel

• Background on Multi-user Techniques

• Review on Vector Perturbation Precoding

• Previous Work

• Expressions for Sum Rate

• Rate Allocation Problem

• Algorithm for User Scheduling

• Conclusions

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 4: Multiuser MIMO Vector Perturbation Precoding

Multi-user MIMO Channel

Multi-user MIMO channel for the kth user:

yk = hkx + nk

where

• x ∈ CNT is the vector of transmitted symbols,

• yk ∈ C is the received symbol at the kth user,

• nk is the noise at the k user’s receiver, and

• hk ∈ C1×NT is the channel vector.

• Noise and channel coefficients are i.i.d. zero-mean circularly-symmetric Gaussian

variables.

Combined system equation:

y = Hx + n

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 5: Multiuser MIMO Vector Perturbation Precoding

Outline

• Multi-user MIMO Channel

• Background on Multi-user Techniques

• Review on Vector Perturbation Precoding

• Previous Work

• Expressions for Sum Rate

• Rate Allocation Problem

• Algorithm for User Scheduling

• Conclusions

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 6: Multiuser MIMO Vector Perturbation Precoding

Multi-user Techniques: Background

• Dirty-paper coding is optimal but prohibitively complex [Caire and Shamai Trans. I.T. ’03].

• Linear precoders such as Zero-Forcing Beamforming and Channel Inversion have low

complexity but a diversity order of only one. [Peel, Hochwald and Swindlehurst Trans.

Comms. ’05, Jindal Trans. I.T. ’06]. They have inferior sum rate.

• Non-linear block Tomlinson-Harashima precoding improves the performance, but still has

a diversity order of only one.

• Vector Perturbation Precoding: Low-complexity, non-linear, achieves sum rates close to

DPC [Hochwald, Peel and Swindlehurst Trans. Comms. ’05]. Achieves maximum

diversity [Taherzadeh, Mobasher and Khandani, Trans. Info. Theory. ’07].

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 7: Multiuser MIMO Vector Perturbation Precoding

Outline

• Multi-user MIMO Channel

• Background on Multi-user Techniques

• Review on Vector Perturbation Precoding

• Previous Work

• Expressions for Sum Rate

• Rate Allocation Problem

• Algorithm for User Scheduling

• Conclusions

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 8: Multiuser MIMO Vector Perturbation Precoding

Vector Perturbation

Precoding and Perturbation:

x =

P

Ese

s where s = F(a + p)

where

• a ∈ BK is the vector of K data symbols, B , a : |Re a|, |Im a| < 0.5,

• F is the precoding matrix. Here we set F = H+, where H+is the pseudo-inverse of H.

• p ∈ ZKC

is the perturbation vector.

• P is the transmit signal to noise ratio (SNR).

• Ese , E[‖s‖2] is the average energy after perturbation. We normalize the transmit

power by averaging over the data and channel realizations.

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 9: Multiuser MIMO Vector Perturbation Precoding

Choosing the Perturbation Vector

The complex-integer perturbation vector is chosen to minimize ‖s‖2, i.e.

p = arg minq∈Z[j]K

‖F(a + q)‖2.

Using this construction, s lies within the Voronoi region about the origin of the lattice with

generator matrix F.

Since p contains complex integers, this is an instance of the nearest lattice-point problem.

Strictly NP-hard, however fast near-optimal polynomial-time algorithms exist e.g. LLL algorithm.

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 10: Multiuser MIMO Vector Perturbation Precoding

Reception and Demodulation

The received signal at the kth user is given by

yk =√

P/Ese(ak + pk) + nk.

Then the data is recovered using a modulo demodulator

ak =[

Ese/Pyk

]

mod B

=[

ak + pk +√

Ese/Pnk

]

mod B

= [ak + ηk] mod B.

where ηk ,√

Ese/Pnk is the effective noise for each k, and therefore Var ηk = Ese/P .

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 11: Multiuser MIMO Vector Perturbation Precoding

Outline

• Multi-user MIMO Channel

• Background on Multi-user Techniques

• Review on Vector Perturbation Precoding

• Previous Work

• Expressions for Sum Rate

• Rate Allocation Problem

• Algorithm for User Scheduling

• Conclusions

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 12: Multiuser MIMO Vector Perturbation Precoding

Previous Work

Since Ese is determined by the operation of an NP-hard algorithm acting over arbitrary

matrices it is unsurprising that analysis is difficult.

• [Peel, Hochwald and Swindlehurst Trans. Communs. ’05] derived an expression that gave

insight into the choice of perturbation vector, but still required numerical simulation to

evaluate Ese.

• [Muller, Guo and Moustakas JSAC ’08] derived Ese in the limit as NT , K → ∞ using the

replica method of statistical physics. The result is in terms of coupled fixed-point integral

equations but reduces to 1 fixed-point equation for i.i.d Rayleigh fading.

• [Zaidel, Muller, de Miguel and Moustakas Allerton ’08] Employing first-order replica

symmetry breaking improves the result, particularly for K/NT ∼ 1 but yields four

equations hence difficult to achieve convergence.

• [Ryan, Collings, Clarkson and Heath Trans. Comms. accept ’08] Some useful closed-form

lower bounds for Ese have been derived.

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 13: Multiuser MIMO Vector Perturbation Precoding

Our Contribution

• We derived an expression for the sum rate in terms of the average energy of the precoded

vector, Ese,

• we used this sum rate expression to derive a closed-form high-SNR upper bound,

• we proposed an extension to vector perturbation to allocate different rates to different

users, and

• we proposed a low-complexity user selection algorithm as a way of rate allocation.

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 14: Multiuser MIMO Vector Perturbation Precoding

Outline

• Multi-user MIMO Channel

• Background on Multi-user Techniques

• Review on Vector Perturbation Precoding

• Previous Work

• Expressions for Sum Rate

• Rate Allocation Problem

• Algorithm for User Scheduling

• Conclusions

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 15: Multiuser MIMO Vector Perturbation Precoding

Sum Rate for Vector Perturbation Precoding

First, we derive an expression for the sum rate of a VP precoding system in terms of Ese(H).

Theorem 1 The sum rate RVP of an NT × K vector perturbation system with uniformlydistributed inputs is

RVP ,

K∑

k=1

I(ak; ak|H,F)

= K logP

K− K log

πeEse(F)

K+ 2KΩ

(

Ese(F)

2P

)

where

Ω(γ) =1

2+

∫ 1

2

− 1

2

∞∑

s=−∞

1√2πγ

e−|ξ−s|2

[

log

∞∑

t=−∞e−

|ξ−t|2

]

dξ.

The term Ω(γ) where here γ = Ese(F)/(2P ) captures the effect of the modulo operation on

the Gaussian noise.

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 16: Multiuser MIMO Vector Perturbation Precoding

Proof Outline

RVP ,

K∑

k=1

I(ak; ak|F) =

K∑

k=1

H(ak|F) − H(ak|ak,F)

• ak and hence ak are uniformly distributed over B, therefore H(ak|F)=log Vol(B)=0.

• The effective noise is modulo-Gaussian distributed, with pre-modulo variance of

Ese(F)/P .

Ω(γ) =1

2+

∫ 1

2

− 1

2

∞∑

s=−∞

1√2πγ

e−|ξ−s|2

[

log∞∑

t=−∞e−

|ξ−t|2

]

dξ.

where γ = Ese(F)/(2P ).

As P → ∞, Ω(γ) → 0 , as the effect of the modulo operation diminishes, and therefore

negligible when it comes to determining the sum rate.

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 17: Multiuser MIMO Vector Perturbation Precoding

Bounds on Sum Rate

By noting that Ω(γ) > 0 and approaches 0 as P → ∞ we have the following lower bound,

Corollary 1 The sum rate RVP of an NT × K vector perturbation system with uniformlydistributed inputs satisfy the lower bound

RVP,LB , K logP

K− K log

πeEse(F)

K.

which is approached as P → ∞.

We also have following asymptotic upper bound,

Corollary 2 The limit of the sum rate RVP of an NT × K vector perturbation system asP → ∞ satisfies the upper bound

limP→∞

RVP < K logP

K+ log det(W) − K log

Γ(K + 1)1

K e

(K + 1).

where W , HH† and Γ(·) denotes the gamma function.

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 18: Multiuser MIMO Vector Perturbation Precoding

Simulation Results

0 5 10 15 20 25 30−20

−10

0

10

20

30

40

50

60

70

SNR (dB)

Sum

rat

e (b

ps/H

z)

DPCVP−exactVP−UBZF−WF Plot of sum rate (bps/Hz) versus

SNR (dB) for

• RDPC

• RVP

• RVP-UB

• zero-forcing beamformingwith waterfilling (ZF-WF)[Yoo, Goldsmith, JSAC ’06]

K = NT = 8

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 19: Multiuser MIMO Vector Perturbation Precoding

Outline

• Multi-user MIMO Channel

• Background on Multi-user Techniques

• Review on Vector Perturbation Precoding

• Previous Work

• Expressions for Sum Rate

• Rate Allocation Problem

• Algorithm for User Scheduling

• Conclusions

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 20: Multiuser MIMO Vector Perturbation Precoding

System Model for Rate Allocation

We propose an extension to vector perturbation precoding so that different rates may be

allocated to different users.

We begin by decomposing the channel matrix H as

H = DVQwhere

• D = diag(d1, . . . , dK),

• V is lower traingular with ones on its diagonal, and

• Q is a unitary matrix.

Instead of using F = H+ as a precoding matrix, we now set

F = Q+V+Λ

where Λ = diag(λ1, . . . , λK) is the rate allocation matix.

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 21: Multiuser MIMO Vector Perturbation Precoding

Perturbation Vector and Demodulation

The Gaussian (complex) integer-valued perturbation vector p is again chosen to minimize Ese,

i.e.

p = argminq∈Z[j]K

∥V+Λ(a + q)∥

2.

The received signal at the kth user is then

yk =

P

Ese

dkλk(ak + pk) + nk

and the data recovered at the kth user’s modulo demodulator is

ak =

[

ak + pk +

Ese(F)

Pλ2kd2

k

nk

]

mod B

= [ak + ηk] mod B

where ηk =√

Ese

Pλ2

kd2

knk is the effective noise for user k.

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 22: Multiuser MIMO Vector Perturbation Precoding

Rate Allocation for Vector Perturbation Precoding

Corollary 3 The sum rate RVP-RA of an NT × K vector perturbation system with uniformlydistributed inputs and precoding matrix F = Q+V+Λ is

RVP-RA =

K∑

k=1

I(ak; ak|Ese(F), dk)

=

K∑

k=1

logPλ2

kd2k

K− log

πeEse(F)

K+ 2Ω

(

Ese(F)

2Pλ2kd2

k

)

• The choice of the optimal Λ is difficult as the rate is a function of Ese(F), which is an

NP-hard problem to evaluate.

• We propose a piece-wise linear approximation to I(ak; ak|Ese(F), dk)

IVP-PW(ak; ak|Ese(F), dk) = max

0, logPλ2

kd2k

πeEse(F)

.

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 23: Multiuser MIMO Vector Perturbation Precoding

Piece-wise Linear Approximation to Sum Rate

−15 −10 −5 0 5 10 15−1

0

1

2

3

4

5

6

λk (dB)

Mut

ual i

nfor

mat

ion

(bps

/Hz)

Corollary 3

Piece−wise linear approximation

Gaussian channel

Plot of mutual information (bps/Hz) versusλk for

• IVP-RA from corollary 3

• A piece-wise linear approximationIPW,

• Mutual information of a Gaussianchannel IAWGN

• max (IAWGN − IVP-PW)=1 bit

• max (IVP-RA − IVP-PW)≈0.2992 bit

SNR = 0dB, Ese = 0.1 and dk = 1

By taking advantage of the tightness of the piece-wise lower bound we propose to maximize

the rate allocation function

RVP,PW ,

K∑

k=1

max

0, logPλ2

kd2k

πeEse(F)

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 24: Multiuser MIMO Vector Perturbation Precoding

Rate Allocation as a User Selection Problem

• By using the lower bound on Ese(F) we could write

RVP,PW 6

K∑

k=1

max

0, R0,k + log(λ′k)2

.

where R0,k , log PK−logΓ(K+1)1/Ke

(K+1) +log d2k and log(λ′

k)2=logλ2k−

1K

∑K

k=1logλ2k

• By placing the restriction that K users must be selected, we write

RVP-PW 6

K∑

k=1

(R0,k + log(λ′k)2) =

K∑

k=1

R0,k = RVP-UB

• By this piece-wise linear approximation, and the use of the Ese approximation, the best

sum-rate is obtained by selecting users so as to maximize RVP,UB given by Corollary 2.

• It is also sufficient to use H+ as a precoding matrix to achieve this rate.

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 25: Multiuser MIMO Vector Perturbation Precoding

Outline

• Multi-user MIMO Channel

• Background on Multi-user Techniques

• Review on Vector Perturbation Precoding

• Previous Work

• Expressions for Sum Rate

• Rate Allocation Problem

• Algorithm for User Scheduling

• Conclusions

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 26: Multiuser MIMO Vector Perturbation Precoding

User Selection

• Vector perturbation requires that K 6 NT . What about when there are many users,

i.e. U > NT .

• Naively, search over all combinations that maximize the sum rate (or sum rate bound).

• We propose greedy rate maximization (GRM): we maximize the rate by iteratively adding

users to the set of receivers.

• Users are chosen successively to maximize det(W(S)).

• The selection algorithm terminates when adding the next best user will decrease the rate

upper bound of Corollary 2, or NT users are selected.

• The determinant det(WK+1) is calculated from the next user’s channel vector and

det(WK).

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 27: Multiuser MIMO Vector Perturbation Precoding

User Selection

1. Initialize the set of selected vectors S = ∅, and set U to the set of all users.

2. Calculate det(W(S ∪ u)) for all users u ∈ U .

3. Selection: Determine umax, the user that maximizes det(W(S ∪ u)). Add user umax to

S and remove it from U .

4. Shedding: Remove from U all those users such that RVP-UB would be reduced if it were

to be added to S . Precisely, remove user u if

‖gu‖2

=det(W(S ∪ u))

det(W(S))<

e(K + 1)2K+1

PKK(K + 2)K+1.

5. Termination: If U is empty or K = NT .

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 28: Multiuser MIMO Vector Perturbation Precoding

Algorithm Complexity

The step 2 of the algorithm is calculated as

det(W(S ∪ u))

det(W(S))= ‖hu(I − P(S))‖2

where P(S) = H(S)(H(S)H(S)†)−1H(S)†.

But instead of calculating hu(I − P(S)), we calculate

hu(I−P(S)) = gu , hu

(

I −∑

s∈S

g∗sgs

‖gs‖2

)

where the gs are the values of gu calculated in the previous iterations of the algorithm.

It is obvious that calculating gu requires 2 vector multiplications.

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 29: Multiuser MIMO Vector Perturbation Precoding

Algorithm Complexity

• SUS [Yoo, Goldsmith, JSAC ’06] is a selection algorithm designed for zero forcing BF.

• It turns out that SUS and GRM are equivalent, but with a different shedding criterion.

• In SUS, all users satisfying

cos2 θ(gs,hk) ,|hkg

∗s |

2

‖hk‖2 ‖gs‖

2 > α2

are removed, where α is a parameter in the interval [0, 1].

• The shedding criterion in SUS is heuristic - α is chosen by best simulation performance.

• This user shedding step for SUS require an additional vector multiplication as

compared to GRM.

SNR=0dB SNR=10 dB SNR=20dB SNR=30dBVP-GRM 27.4 62.8 70.8 71.88VP-SUS 34.5 64.2 100.8 104.67

Complexity comparison (in terms of vector multiplications) between VP-GRM and VP-SUS.

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 30: Multiuser MIMO Vector Perturbation Precoding

Simulation Results

0 5 10 15 20 25 30−2

−1.8

−1.6

−1.4

−1.2

−1

−0.8

−0.6

−0.4

−0.2

0

SNR (dB)

Loss

in s

um r

ate

(bps

/Hz)

αopt

=0.2

αopt

=0.45

αopt

=0.5

αopt

=0.6

αopt

=0.75

αopt

=0.8αopt

=0.75

VP−GRMVP−SUS

Plot of loss in sum rate (bps/Hz)compared to an exhaustive searchover the user set.• RVP with GRM

• RVP with semiorthogonaluser selection (SUS)

K 6 U = NT = 8

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 31: Multiuser MIMO Vector Perturbation Precoding

Outline

• Multi-user MIMO Channel

• Background on Multi-user Techniques

• Review on Vector Perturbation Precoding

• Previous Work

• Expressions for Sum Rate

• Rate Allocation Problem

• Algorithm for User Scheduling

• Conclusions

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”

Page 32: Multiuser MIMO Vector Perturbation Precoding

Conclusions

• We derived expressions for the capacity in terms of the average energy of the precoded vector.

• We examine the problem of individual rate allocation, and by using a piece-wise linear

approximation, we showed that for VP, rate allocation can be reduced to a user selection problem.

• We then proposed a low-complexity user selection algorithm that attempts to maximize the

high-SNR sum rate upper bound.

• We showed, by simulation, that the proposed algorithm outperforms other user selection algorithms

of similar complexity.

Related Work

• A. Razi, D. J. Ryan, I. B. Collings, J. Yuan , “Sum Rates, Rate Allocation, and User Scheduling forMulti-User MIMO Vector Perturbation Precoding”, submitted to IEEE Trans. Wireless Communs.,May 2009.

• A. Razi, D. J. Ryan, I. B. Collings, J. Yuan , “Sum Rates and User Scheduling for Multi-User MIMOVector Perturbation Precding”, to appear 2009 IEEE International Communications Conference(ICC), Dresden, Germany, June 2009.

• D. J. Ryan, I. B. Collings, I. V. L. Clarkson and R. W. .Heath Jr. , “Performance of Vector PerturbationMultiuser MIMO Systems with Limited Feedback”, to appear IEEE Trans. Communs..

Razi et. al. ”Sum Rates, Rate Allocation, and User Scheduling for Multi-user MIMO Vector Perturbation Precoding”