multiuser mimo vector perturbation precoding
TRANSCRIPT
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”
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”
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”
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”
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”
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”
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”
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”
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”
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”
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”
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”
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”
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”
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
2γ
[
log
∞∑
t=−∞e−
|ξ−t|2
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”
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
2γ
[
log∞∑
t=−∞e−
|ξ−t|2
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”
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”
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”
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”
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”
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”
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”
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”
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”
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”
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”
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”
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”
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”
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”
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”
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”