Precoding via Approximate Message Passing with Instantaneous Signal Constraints

by   Ali Bereyhi, et al.

This paper proposes a low complexity precoding algorithm based on the recently proposed Generalized Least Square Error (GLSE) scheme with generic penalty and support. The algorithm iteratively constructs the transmit vector via Approximate Message Passing (AMP). Using the asymptotic decoupling property of GLSE precoders, we derive closed form fixed point equations to tune the parameters in the proposed algorithm for a general set of instantaneous signal constraints. The tuning strategy is then utilized to construct transmit vectors with restricted peak-to-average power ratios and to efficiently select a subset of transmit antennas. The numerical investigations show that the proposed algorithm tracks the large-system performance of GLSE precoders even for a moderate number of antennas.


page 1

page 2

page 3

page 4


RLS Precoding for Massive MIMO Systems with Nonlinear Front-End

To keep massive MIMO systems cost-efficient, power amplifiers with rathe...

Convolutional Approximate Message-Passing

This letter proposes a novel message-passing algorithm for signal recove...

GLSE Precoders for Massive MIMO Systems: Analysis and Applications

This paper proposes the class of Generalized Least-Square-Error (GLSE) p...

Approximate Message Passing with Restricted Boltzmann Machine Priors

Approximate Message Passing (AMP) has been shown to be an excellent stat...

Macroscopic Analysis of Vector Approximate Message Passing in a Model Mismatch Setting

Vector approximate message passing (VAMP) is an efficient approximate in...

Interference Exploitation Precoding for Multi-Level Modulations: Closed-Form Solutions

In this paper, we study closed-form interference-exploitation precoding ...

Consistent Parameter Estimation for LASSO and Approximate Message Passing

We consider the problem of recovering a vector β_o ∈R^p from n random an...

I Introduction

For a given precoding support and penalty function , the Generalized Least Square Error (GLSE) precoder constructs the transmit vector from the data vector and the channel matrix as where is a power control factor and [1]


The generality of and allows for addressing various forms of constraints on the transmit vector. Compared to the classical approaches for imposing such constraints, the studies in [2, 3, 1, 4] have shown significant enhancements obtained via the GLSE precoding scheme. Nevertheless, the computational complexity of this scheme has been remained as the main chal- lenge and is intended to be addressed in this paper.

The main motivation of this study comes from the great deal of interest being received recently by massive Multiple-Input Multiple-Output (MIMO) systems [5]. Form implementational points of view, however, these systems confront the problem of high Radio Frequency (RF)-cost which raises due to the vast number of RF-chains needed in such setups. The initial approach to overcome this issue is to restrict the Peak-to-Average Power Ratio (PAPR) of the transmit vector [6, 7]. In this case, nonlinear power amplifiers with lower dynamic ranges can be employed, and the total RF-cost can be significantly reduced. Another approach is Transmit Antenna Selection (TAS) [8, 9] in which a subset of transmit antennas is kept active at each transmission interval, and therefore, the number of required RF-chains is reduced. Although such approaches combat the issue of high RF-cost, the conventional algorithms significantly degrade the performance. In this case, GLSE precoders reduce this degradation by finding the optimal transmit vector which satisfies the constraints imposed by these approaches. In general, GLSE precoders solve an optimization problem in each transmission interval. This task is not trivial for choices of and

which are non-convex. For cases with convex optimization problems, the precoder can be implemented via generic linear programming algorithms. The high computational complexity of these algorithms for large dimensions, however, leaves the implementation of

GLSE precoders as an issue in massive MIMO setups. Generalized Approximate Message Passing (GAMP) [10]

proposes a low complexity iterative approach for several estimation problems based on approximating the loopy belief propagation algorithm in the large limit

[11]. The algorithm is known to considerably outperform other available iterative approaches. The underlying estimation problems, which are addressed by GAMP, are mathematically similar to the GLSE precoding scheme, and therefore, the algorithm can be employed to design a class of iterative precoders based on the GLSE scheme.

The main contribution of this paper is to adopt and tune the GAMP algorithm to address the GLSE precoding scheme, recently proposed in [2, 3, 1, 4]. The developed iterative scheme is referred to as “GLSE-GAMP” precoding and exhibits low complexity characteristic. Using the fact that the GLSE and GLSE-GAMP precoders consider same optimization problems, we further propose a tuning strategy based on the asymptotic results in [2, 3, 1, 4] derived via the replica method. Our numerical investigations show that the performance of GLSE-GAMP precoders tuned by the proposed strategy is accurately consistent with asymptotics of corresponding GLSE precoders.


Throughout the paper, scalars, vectors and matrices are represented with non-bold, bold lower case and bold upper case letters, respectively. is a identity matrix, and is the Hermitian of . The set of real and integer numbers are denoted by and , and represents the complex plane. For , , and identify the real part, imaginary part and augmented vector, respectively, and the expression indicates that is the augmented version of . For , the gradient operator is defined as . and denote the Euclidean and

-norm, respectively. Considering the random variable


represents either the probability mass or density function. Moreover,

 identifies the expectation. For sake of compactness, is abbreviated by , and we define and for a given non-negative real .

Ii Problem Formulation

Consider a Gaussian broadcast MIMO setup in which a sequence of data symbols for is transmitted to single-antenna users simultaneously. The transmitter is equipped with transmit antennas. The channel is considered to be quasi-static fading and perfectly known at the transmitter. By employing the GLSE precoding scheme given in (1) with some penalty and precoding support , the transmit vector is constructed as  where  and is a non-negative power control factor. For this setup, we assume that the following constraints hold.

  1. has independent and identically distributed (i.i.d.

    ) zero-mean complex Gaussian entries with unit variance.

  2. decouples meaning that .

  3. and grow large, such that the load factor is kept fixed in both and .

  4. in which is an unitary matrix, and

    is a diagonal matrix with asymptotic eigenvalue distribution

    . For , we define the Stieltjes transform as with the expectation being taken over and the -transform as where denotes the inverse with respect to composition.

By proper choices of the support and penalty , the GLSE precoder can impose several constraints on the transmit vector.

  • Setting and , the transmit vector is restricted to have a limited PAPR. In fact in this case, the peak power is set to and a desired constraint on the PAPR is imposed by tuning such that the average power is accordingly restricted.

  • Let and ; then, the number of active transmit antennas is constrained.

Iii Glse-Gamp Precoders

The GLSE scheme can be considered as a max-sum problem which can be addressed via the GAMP algorithm [10].

Iii-a Gamp Algorithm

The GAMP algorithm, proposed in [10], intends to estimate from iteratively considering the following setup.

  1. Each entry of is generated from the corresponding entry of some via .

  2. The entries of are obtained form the entries of the vector through identical scalar channels with .

  3. is a random linear transform of

    , i.e., for some random matrix .

Depending on the estimation scheme, the GAMP algorithm is developed to address the “max-sum” or “sum-product” problems. The max-sum GAMP algorithm iteratively determines the Maximum-A-Posterior (MAP) estimation


for some scalar functions and which represent the conditional distributions and . The sum-product GAMP algorithm, moreover, addresses the Minimum Mean-Square-Error (MMSE) estimation where .

Iii-B The Gamp-Glse Algorithm

By comparing GLSE precoding with (2), it is observed that the precoding scheme solves a max-sum problem in which with being the channel matrix, for , and and . As the result, the GAMP algorithm can be applied to iteratively construct the transmit vector . By some lines of derivations, the max-sum GAMP algorithm can be adopted to the GLSE scheme in (1). The resulting algorithm is referred to as “GLSE-GAMP” algorithm and is represented in Algorithm 1 for the precoding support and the complex-valued matrix . The variables and functions in the algorithm, for and , are defined as follows.

  • The real two-dimensional vectors , , , , and are the augmented forms of the complex scalars , , , , and , respectively.

  • The matrices , , and are real matrices, and is defined as


    with representing the entry of .

  • is the output thresholding function defined as


    where the function is determined by

  • is the input thresholding function being defined as


    where the function is evaluated by

  • The initial conditions are and .

The update rules in Algorithm 1 are derived by extending the sum-max GAMP algorithm to the case with a complex-valued matrix and an arbitrary input support . The extension is followed by determining the update rules for the corresponding loopy belief propagation algorithm and then taking some steps similar to [10, Appendix C]. The detailed derivations are skipped due to the page limit and is represented in the extended version of the manuscript.

Remark 1:

One should distinguish between the GLSE scheme and the GLSE-GAMP algorithm. In fact, the former is a least square based scheme to design transmit signals which fulfill some desired constraints. The GLSE-GAMP algorithm, on the other hand, proposes an iterative approach based on GAMP to address the GLSE scheme. For some choices of the penalty function, precoding support and channel matrix, the GLSE-GAMP algorithm converges to the transmit signal given by the GLSE scheme. There are however some particular cases in which the GLSE-GAMP algorithm does not converge. For these cases, Algorithm 1 does not give the desired transmit signal. To avoid the divergence in such cases, we need to modify the algorithm. This issue is briefly discussed in Section V.

In contrast to GLSE precoders, GLSE-GAMP precoders exhibit low complexity characteristic. Considering Algorithm 1 and noting that the matrices in (8a)-(9d) are fixed matrices, it is straightforward to show that the total worst-case complexity of GLSE-GAMP precoders per iteration is . The number of iterations, moreover, does not grow with the dimensions. Therefore, one can conclude that the overall complexity of the precoding scheme is  as well.

Start from and for let . Set and for to their initial conditions.
     end for
     end for
end while
for .
Algorithm 1 GLSE-GAMP Precoding Algorithm

Iii-C Tuning Glse-Gamp precoders

In order to impose a given set of constraint on the transmit signal, the corresponding GLSE-GAMP precoder should be tuned. As an example, consider the case in which the number of active transmit antennas, as well as the average transmit power, is desired to be restricted via a GLSE-GAMP precoder. In this case, one may set and . The factors and in this case control the average transmit power and the fraction of active antennas, respectively. Consequently for given constraints, these factors need to be tuned. Nevertheless, the derivation of an exact tuning strategy is not a trivial problem as the constrained parameters, i.e., the ave- rage power or fraction of active antennas, cannot be derived in terms of the tuning factors straightforwardly. We therefore propose a tuning strategy based on the asymptotics of the GLSE-GAMP algorithm and its connection to the GLSE scheme. The large-system performance of GLSE-GAMP precoders is studied through asymptotic analyses of “state evolution” equations; see [12] and the references therein. Following the results in the literature, e.g. [13, 14], it is shown that for choices of , and , in which the GLSE-GAMP algorithm converges, the asymptotic performance of the algorithm coincides with the large-system performance of GLSE precoders investigated in [1, 4]. This result indicates that in the large-system limit, the tuning factors for GLSE-GAMP and GLSE precoders are the same. Therefore, for a given set of constraint, we derive the tuning factors of the GLSE-GAMP precoders by tuning the corresponding GLSE precoders.

Tuning Strategy:

Assume that the constraints are desired to be satisfied via a GLSE-GAMP precoder with penalty and support which are controlled by  for . Here, are decoupling functions meaning that . To tune accordingly, we define


where with


and for and which satisfy  and


The precoder is then accordingly tuned by choosing for such that the equations are satisfied.


The derivation follows the marginal decoupling property of the GLSE precoders presented in [1, 4]. In fact, using the property, it is concluded that asymptotically converges to . By taking the approach illustrated at the beginning of the section, the tuning strategy is obtained.

The proposed tuning strategy evaluate the decoupled GLSE precoder111See Proposition 2 in [1] for the decoupling property of GLSE precoders. A more general version of the property is represented in [4, Section II-A]. by finding and form the fixed-point equations. The asymptotic constrained parameters are then determined by taking the expectation and set it equal to

. One should note that the strategy in general is heuristic, since it tunes the precoders for the large-system limit. Nevertheless, the numerical investigations show that for several cases, the

GLSE-GAMP precoders are well tuned via this strategy.

Iv Applications of Glse-Gamp Precoders

In this section, we investigate two special cases of GLSE-GAMP precoders with TAS and limited PAPR. Throughout the analyses, we assume that represents an i.i.d. Rayleigh fading channel with variance , i.e., .

Iv-a Glse-Gamp Precoder with Tas

As it was discussed, TAS can be directly addressed at the transmit side by using GLSE scheme with . The corresponding GLSE-GAMP precoder is therefore given by Algorithm 1 where , and , respectively with


and . For the input thresholding function, the analytic evaluation of the function from the augmented form in (6) is not trivial. We thus employ the complex scalar form of the equation which results in and where


with and , and


By setting , the GLSE scheme reduces to Regularized Zero Forcing (RZF) precoding, and thus, the GLSE-GAMP algorithm iteratively constructs the output of the RZF precoder.

Tuning Strategy

We employ the strategy in Section III-C to tune and such that the fraction of active antennas and the average transmit power are and , respectively. For this case, and and . Consequently, and are determined from the fixed-point equations for and


and is determined in terms of and through


Iv-B Glse-Gamp Precoder with Papr Constraint

The precoder in Section IV-A can further take the PAPR constraint into account by setting . The support in this case imposes a peak power constraint on the transmit signal which along with the penalty function restricts both the PAPR and the number of active antennas222See [1, Section IV-B] for further illustrations.. Considering Algorithm 1, the output function for this setup remains unchanged , and the input function reads


with the corresponding gradient


where , , and


, and are moreover given as in Section IV-A. By setting , the precoder employs all the transmit antennas and restricts only the PAPR. In this case, , , and reduces to zero.

Tuning Strategy

Consider the same constraints as for the case without the PAPR restriction. From Section III-C, and for the average power and the fraction of active antennas  are given by the fixed-point equations and


Here, is a function of and which satisfies


Moreover, and we have defined


V Numerical Investigations

To investigate the performance of GLSE-GAMP precoders, we define the distortion measure for a given as


which determines the average distortion caused by the multiuser interference at receive terminals. It is moreover shown that the achievable ergodic rate per user can be bounded from below in terms of as proved in [2].

[width=.35]Figs/Fig1.eps D[c][t][0.23] in [dB] alpha-inv[c][c][0.25] PP=3-070[l][l][0.24] PP=3-100[l][l][0.24] PP=3-030[l][l][0.24] PP=3-050[l][l][0.24] -4[r][c][0.18] -8[r][c][0.18] -12[r][c][0.18] -16[r][c][0.18] -20[r][c][0.18]

2[c][b][0.18] 2.5[c][b][0.18] 3[c][b][0.18] 3.5[c][b][0.18] 4[c][b][0.18] 4.5[c][b][0.18] 5[c][b][0.18]

Fig. 1: Distortion at vs. for and various . Circles depict the performance of the GLSE-GAMP precoder for and . Solid lines denote the asymptotic performance of the corresponding GLSE scheme determined by the replica method.

The circles in Fig. 1 show the distortion given by the GLSE-GAMP precoder presented in Section IV-A for various inverse load factors considering several constraints on the number of active antennas. The results have been given for antennas and iterations. The asymptotic performances of the corresponding GLSE precoders, derived via the replica method in [4], have been also sketched with solid lines. Here, and is set such that . As the figure shows, the GLSE-GAMP precoder tracks accurately the performance of the GLSE scheme, even for a practically moderate number of antennas. For the PAPR-limited precoder in Section IV-B, the distortion at has been plotted in terms of in Fig. 2. The curves have been sketched for multiple PAPR constraints. Similar to Fig. 1, solid lines correspond to the GLSE scheme and circles denote the simulation results for the GLSE-GAMP precoder with and for PAPR dB. Here, we have considered , and is tuned via the proposed strategy assuming all the antennas being active. The figure depicts that by increasing the PAPR up to dB, the performance of the precoder is sufficiently close to the case without PAPR restriction. This observation suggests for employing the GLSE-GAMP precoder, in order to reduce the transmit PAPR without any significant performance loss. In this case, low efficiency power amplifiers can be utilized which can significantly reduce the RF-cost.

Remark 2:

It is known that the GAMP algorithm converges for i.i.d. Gaussian matrices [13, 14]. However, by deviating from this assumption, the algorithm may diverge. This issue was recently addressed in [15] via the Vector Approximate Message Passing (VAMP) algorithm. Consequently, for channel models with ill-conditioned matrices, one can develop a precoding algorithm based on the GLSE scheme by taking a same approach while employing VAMP.

Vi Conclusion

This paper has proposed a class of low complexity precoders based on the GLSE scheme using the GAMP algorithm. The numerical investigations have been consistent with the replica results for the GLSE scheme given in [2, 3, 1, 4]. This consistency demonstrates that various implementational limitations in massive MIMO systems can be effectively overcome using some low-complexity, but effective, algorithms. As indicated in Remark 2, the GLSE-GAMP precoders may fail in converging for channel models with ill-conditioned channel matrices, and therefore, an alternative algorithm can be proposed via VAMP. The extension under VAMP is however skipped and left as a possible future work.

[width=.35]Figs/Fig2_copy_2.eps D[c][t][0.23] in [dB] alpha-inv[c][c][0.25] PAPR=3-AAA-BBB[l][l][0.24] dB PAPR=0-AAA-BBB[l][l][0.24] dB PAPR=5-AAA-BBB[l][l][0.24] dB PAPR=9-AAA-BBB[l][l][0.24] -4[r][c][0.18] -8[r][c][0.18] -12[r][c][0.18] -16[r][c][0.18] -20[r][c][0.18]

2[c][b][0.18] 2.5[c][b][0.18] 3[c][b][0.18] 3.5[c][b][0.18] 4[c][b][0.18] 1.5[c][b][0.18] 1[c][b][0.18]

Fig. 2: Distortion at vs. for several PAPRs. and . Solid lines and circles respectively denote the results for GLSE and GLSE-GAMP algorithm with and .


  • [1] A. Bereyhi, M. A. Sedaghat, S. Asaad, and R. Müller, “Nonlinear pre- coders for massive MIMO systems with general constraints,” International ITG Workshop on Smart Antennas (WSA), 2017.
  • [2] M. A. Sedaghat, A. Bereyhi, and R. Müller, “Least Square Error Pre- coders for Massive MIMO with Signal Constraints: Fundamental Limits,” IEEE Transactions on Wireless Communications, 2017.
  • [3] M. A. Sedaghat, A. Bereyhi, and R. Müller, “A New Class of Nonlinear Precoders for Hardware Efficient Massive MIMO Systems,” International Conference on Communications (ICC), 2017.
  • [4] A. Bereyhi, M. A. Sedaghat, and R. Müller, “Asymptotics of nonlinear LSE precoders with applications to transmit antenna selection,” IEEE International Symposium on Information Theory (ISIT), 2017.
  • [5] J. Hoydis, S. Ten Brink, and M. Debbah, “Massive MIMO in the UL/DL of cellular networks: How many antennas do we need?” IEEE Journal on selected Areas in Communications, vol. 31, no. 2, pp. 160–171, 2013.
  • [6] S. K. Mohammed and E. G. Larsson, “Per-antenna constant envelope precoding for large multi-user MIMO systems,” IEEE Transactions on Communications, vol. 61, no. 3, pp. 1059–1071, 2013.
  • [7] J.-C. Chen, “Low-papr precoding design for massive multiuser MIMO systems via Riemannian manifold optimization,” IEEE Communications Letters, vol. 21, no. 4, pp. 945–948, 2017.
  • [8] H. Li, L. Song, and M. Debbah, “Energy efficiency of large-scale multiple antenna systems with transmit antenna selection,” IEEE Transactions on Communications, vol. 62, no. 2, pp. 638–647, 2014.
  • [9] S. Asaad, A. Bereyhi, R. R. Müller, and A. M. Rabiei, “Asymptotics of transmit antenna selection: Impact of multiple receive antennas,” International Conference on Communications (ICC), 2017.
  • [10] S. Rangan, “Generalized approximate message passing for estimation with random linear mixing,” IEEE Int. Sym. on Inf. Theory (ISIT), 2011.
  • [11] D. L. Donoho, A. Maleki, and A. Montanari, “Message-passing algorithms for compressed sensing,” Proceedings of the National Academy of Sciences, vol. 106, no. 45, pp. 18 914–18 919, 2009.
  • [12] A. Javanmard and A. Montanari, “State evolution for general approximate message passing algorithms, with applications to spatial coupling,” Information and Inference, p. iat004, 2013.
  • [13] S. Rangan, P. Schniter, and A. Fletcher, “On the convergence of approximate message passing with arbitrary matrices,”IEEE International Symposium on Information Theory (ISIT), 2014.
  • [14] S. Rangan, P. Schniter, E. Riegler, A. K. Fletcher, and V. Cevher, “Fixed points of generalized approximate message passing with arbitrary matrices,” IEEE Transactions on Information Theory, vol. 62, no. 12, pp. 7464–7474, 2016.
  • [15] S. Rangan, P. Schniter, and A. K. Fletcher, “Vector approximate message passing,” IEEE International Symp. on Inf. Theory (ISIT), 2017.