Fairness and Sum-Rate Maximization via Joint Channel and Power Allocation in Uplink SCMA Networks

# Fairness and Sum-Rate Maximization via Joint Channel and Power Allocation in Uplink SCMA Networks

Joao V.C. Evangelista,  Zeeshan Sattar,   Georges Kaddoum,  and Anas Chaaban,  This work has been submitted to the IEEE for possible publication. Copyright may be transferred without notice, after which this version may no longer be accessible. J.V.C. Evangelista, G. Kaddoum and Z. Sattar were with the Department of Electrical Engineering, Ãcole de Technologie SupÃ©rieure, Montreal, QC, H3C 1K3 CA, e-mail: {joao-victor.de-carvalho-evangelista.1, zeeshan.sattar.1}@ens.etsmtl.ca and georges.kaddoum@etsmtl.ca Anas Chaaban is with the School of Engineering, University of British Columbia, Kelowna, BC, V1V 1V7 CA, email: anas.chaaban@ubc.ca
###### Abstract

In this work, we consider a sparse code multiple access uplink network, where users simultaneously transmit data over subcarriers, such that , with a constraint on the power transmitted by each user. To jointly optimize the codebook assignment and the transmitted power per subcarrier, two new iterative algorithms are proposed, the first one aims to maximize the sum-rate (Max-SR) of the network, while the second aims to maximize the minimum rate (Max-Min). In both cases, the optimization problem is of the mixed-integer nonlinear programming (MINLP) type, with non-convex objective functions. To address this issues, we employ an alternating optimization framework, where the codebook allocation problem is decoupled from the power allocation into two subproblems, and they are solved in an iterative alternating fashion. These subproblems are non-convex, therefore, we employ a sequential convex programming (SCP) method to solve them. An analysis of the convergence of the algorithms is provided. A comparison of the sum-rate and Jain’s fairness index of the novel algorithms with three other algorithms proposed in the literature is presented for varying power budgets. The Max-SR algorithm outperforms the others in the sum-rate sense, while the Max-Min outperforms them in the fairness sense, achieving near perfect fairness.

SCMA, 5G, Power Allocation, Multiple Access.

## I Introduction

The fifth generation (5G) of wireless networks is expected to deliver a better coverage and a higher capacity to massively connected users. One of the fundamental aspects to achieve this goal is the design of multiple access techniques. Orthogonal multiple access (OMA) techniques, allocate different users into orthogonal network resources, in order to minimize the interference between users. In time division multiple access (TDMA), users are scheduled into different time slots, in code division multiple access (CDMA), they are assigned orthogonal codes, and, in orthogonal frequency division multiple access (OFDMA) they are allocated orthogonal subcarriers. However, considering the data consumption trend and the introduction of new data-hungry technologies, such as virtual and augmented reality (VR/AR) and massively deployed internet of things (IoT) devices, a tenfold increase in traffic is expected by 2020 [1]. As the number of orthogonal network resources available is finite, this design paradigm is incompatible with the massive traffic and connectivity requirements of 5G networks. Recently, early information-theoretic works on multi-user communications [2, 3] have reemerged under the name non-orthogonal multiple access (NOMA) as a potential solution to deal with this requirement. Although NOMA methods are rooted in the information-theoretic literature, the recent interest has been focused on communication-theoretic aspects such as developing practical NOMA coding and modulation schemes, with desired error-rate performance and multi-user communication capabilities. Differently from OMA, in NOMA techniques, multiple users are allocated on the same network resources, permitting the allocation of more users and more efficient use of the available resources. In NOMA, each receiver must perform multiuser detection (MUD) in order to recover the intended transmitted signal. NOMA techniques can be classified into two different groups, power division NOMA (PD-NOMA) and code division NOMA (CD-NOMA).

In PD-NOMA, multiple users, with distinct channel conditions, are served under the same resource. In the downlink, users are sorted according to their channel quality, and more power is allocated to users with worst channel and less power is allocated to users with better channels. On the other hand, in the uplink users with different channel quality are scheduled on the same resource (e.g. a user close to the base station is paired with a user at the edge of the cell). In order to decode messages, successive interference cancellation (SIC) is performed on the decoding end. In the downlink, the users decode messages destined to users with worse channel conditions, and subtract them from the received signal. Messages from the users with the better channel conditions are treated as interference [4],[5, Ch. 6]. Similarly, in the uplink, the base station (BS), decodes the received messages successively, starting from the user with the best channel to the worse, and removing the already decoded messages at each step. A large number of contributions have been made in the development of PD-NOMA technology; the reader may refer to the survey in [6] for a comprehensive summary of the state-of-the-art.

In this work, our main goal is to investigate the fairness in resource allocation in uplink SCMA networks. To tackle this challenge, we propose two algorithms, from now on referred as the Max-SR and the Max-Min, for joint channel and power allocation in SCMA networks. The first algorithm’s goal is to maximize the sum-rate of the network. While this is an important criterion in cellular networks, fairness between users is equally important. Thus, to include fairness in the optimization, we propose the Max-Min algorithm aimed to maximize the minimum rate among the users. The obtained results demonstrate better fairness than the former, but, this fairness comes at the price of reducing the overall sum-rate performance.

### I-a Related Work

Regarding resource management and allocation in SCMA networks, an algorithm to maximize the rate of successful accesses on a random access massive machine communications network, is suggested in [11]. In [12], a resource allocation and subcarrier pairing scheme combining OFDMA and SCMA, for a dual-hop multiuser relay network, is proposed. The problem of assigning SCMA codebooks to maximize sum rate in uplink transmission is formulated as matching game in [13]. A grant-free contention based uplink SCMA scheme was proposed in [14]. In [15], the capacity of an SCMA cell with a Gaussian input is derived, and a joint codebook and power allocation algorithm is proposed. In [16], three algorithms for dynamic codebook allocation are presented, and their link-level performance is evaluated, one of which takes user fairness in consideration. However, the system-level capacity of these algorithms is not investigated and their fairness is compared in terms of the BER difference of the best and the worst user. In [17], a low complexity bisection-based power allocation algorithm, aiming to maximize the capacity of the SCMA system with a finite alphabet is proposed. A stochastic geometry framework to obtain the system wide area spectral efficiency of underlaid and overlaid device-to-device (D2D) SCMA networks is developed in [18], and a power allocation strategy to minimize cross-tier interference in underlaid mode and an optimal codebook allocation for the overlaid mode are presented. To the best of our knowledge, no previous works have investigated the fairness in joint codebook and power allocation in SCMA networks, and, no algorithms for joint codebook and power allocation aiming to maximize the fairness have been proposed so far. Furthermore, in the Max-SR algorithm, we take a different approach from previously proposed solutions, by solving a relaxed approximation of the codebook allocation problem.

### I-B Contributions

In this paper we formulate two optimization problems for joint codebook and power allocation in SCMA networks, one aiming to maximize the sum-rate and another one for maximizing the fairness. Both problems are of the non-convex mixed integer nonlinear programming (MINLP) type. Currently, there are no known polynomial time algorithms to solve such problems, therefore, we propose some simplifications and heuristics, based on alternating optimization, and, sequential convex programming (SCP), that are able to find high quality solutions. The proposed algorithms split the codebook and power allocation subproblems and solve them in an alternating fashion, where the output of one is the input of the other, until convergence. However, these subproblems are non-convex, so, we employ SCP to obtain a locally optimal solution to the subproblems, by solving a sequence of convexified sub problems. Additionally, we compare both algorithms and the ones proposed in [16] in the sum-rate and in the Jain’s fairness index sense. Results show that the Max-SR algorithm outperforms all other algorithms in terms of sum-rate, while the Max-Min algorithm outperforms all others in terms of fairness. To summarize, the list below presents the main accomplishments and insights developed in this work:

• The proposal of the Max-SR algorithm, which employs alternating optimization and SCP, to obtain a convex continuous approximation of the original MINLP. The algorithm achieves a better sum-rate in comparison to the ones proposed in [16].

• The proposal of the Max-Min algorithm, which employs alternating optimization and SCP, to obtain a convex continuous approximation of the original MINLP. The algorithm achieves a better fairness, using Jain’s fairness index as the fairness metric, in comparison to the ones proposed in [16].

This paper is organized as follows: Section II contains a brief overview on the SCMA encoder and decoder structure and a description of SCMA signals and the derivation of its sum-rate are presented. In Section III, the optimization problems are formulated and an algorithm for sum-rate maximization, and, another for fairness maximization are proposed. Furthermore, in Section IV numerical results are shown and the performance of the algorithm is evaluated. Also, a numerical analysis of the convergence is presented. Finally, in Section V the conclusions are presented.

### I-C Notation

Throughout this paper, italic lowercase letters denote real and complex scalar values, and denotes the complex conjugate of . Lower case boldface letters denote vectors, while upper case boldface denote matrices. A lowercase letter with one subscript, , represents the -th element of the vector , while both and are used to denote the element on the -th row and -th column of matrix . The operators and denote the hermitian conjugate of a vector and of a matrix, respectively. The operator is the determinant of the square matrix and is its trace. The operator denotes a square matrix with its diagonal components given by . The operator denotes the expected value of a random variable. The function represents the probability density function (PDF) of a random variable and , where , denotes that is a complex Gaussian random vector, with mean and covariance matrix . The sets , and are the sets of the reals, complex and binary integers, respectively. A calligraphic uppercase letter, such as , denotes a set and is its cardinality. The function denotes the natural logarithm of its argument, while the function is the mutual information between two random variables.

## Ii System Model

Consider a system consisting of one BS, and let be the set of available resources (OFDMA subcarriers, MIMO spatial layers and so on), with , and be the set of users served by the BS, with . Each user transmits a symbol from a multidimensional constellation with, order . The SCMA encoder is a mapping , with , where is a vector of bits taken at the output of a channel encoder, , and is a sparse vector with nonzero elements for all . Each user encodes its transmitted signal from a different multidimensional constellation [19] . In order to guarantee that the SCMA signals from different users are separable at the receiver each users’ constellation has an unique sparsity pattern (i.e. no two users transmit on the same subcarriers). Therefore, the BS serves up to users simultaneously and up to users are allocated on the same resource. The overloading factor of the cell is given by . Figure 1 shows an example of codebooks and a multiplexed codeword for an SCMA system with , , and .

Optimal SCMA decoding is achieved by maximum a priori (MAP) decoding. However, due to the complexity of MAP decoding, message passing algorithms (MPA) that achieve near-optimal decoding, such as belief propagation (BP) [20] are employed, resulting in a complexity of . In order to reduce the decoding complexity of SCMA, alternative receiver architectures have been proposed, such as the SIC-MPA decoder [21, 22], which is an hybrid of the SIC and MPA procedure and the list spherical decoding (LSD) algorithm [23].

The structure of the SCMA code can be neatly conveyed through a factor graph representation. Let be the factor graph matrix, each element indicates if any information from the user is transmitted on resource . Figure 3 illustrates a factor graph with , , and . Figure 2 shows the structure of a SCMA transceiver. The reader may refer to [8] for more details on the encoder/decoder structure of SCMA.

In a SCMA system, the signal received by the BS at the resource can be written as

 yk=∑j∈Jfk,jhk,jsk,j+nk, (1)

where is the channel coefficient, is the symbol transmitted from user on the -th resource, with average power , and is the -th component of . Here, we assume that . Without loss of generality, we assume is a Rayleigh distributed random variable representing the small scale fading of the channel of user on subcarrier , is the distance of user from the BS and is the path loss exponent. Throughout this work, it is assumed that the users send a pilot sequence periodically, and the BS is able to perfectly estimate the channel state information (CSI). From (1), the received signal vector at the BS is written as

 y=Hx+n, (2)

where is a complex vector, is a matrix composed of submatrices, such that, , where, . The vector is given by , where .

The sum-rate of a SCMA system is defined as the maximum mutual information between the received and transmitted signals. Therefore, assuming channel knowledge at the receiver we have that

 RsumSCMA = maxp(x)I(x;y|H) (3) = maxp(x)h(y|H)−h(n) (a)≤ ln[(πe)Kdet(σ2nIK+HKxHH)]−Kln[πeσ2n] =

In (3), the inequality in comes from the fact that for a given variance a Gaussian input maximizes the entropy of a random vector [24]. In this paper we are concerned on maximizing this upper bound in the Max-SR algorithm, and, from now the upper bound is referred by . It is worth noting that for an increase on the distribution of approaches a multivariate Gaussian, due to the central limit theorem. Figure 4 shows the histogram and a corresponding Gaussian fit for 10000 realizations of , with , and , where the non zero coordinates of each is drawn from a finite constellation of order . Furthermore, is the covariance matrix of , and is given by

 Kx=⎡⎢ ⎢ ⎢⎣E(x1xH1)E(x1xH2)⋯E(x1xHJ)⋮⋮⋱⋮E(xJxH1)E(xJxH2)⋯E(xJxHJ)⎤⎥ ⎥ ⎥⎦, (4)

where, each is given by

 E(xixHj)=⎡⎢ ⎢ ⎢ ⎢ ⎢⎣E(x1,ix∗1,j)E(x1,ix∗2,j)⋯E(x1,ix∗K,j)⋮⋮⋱⋮E(xK,ix∗1,j)E(xK,ix∗2,j)⋯E(xK,ix∗K,j)⎤⎥ ⎥ ⎥ ⎥ ⎥⎦, (5)

therefore, . The transmitted symbols from different users are uncorrelated, thus, all the non-diagonal entries of (4) are equal to zero. Furthermore, we have that

 HKxHH=J∑j=1HjE(xjxHj)HHj= ⎡⎢ ⎢ ⎢ ⎢ ⎢⎣∑Jj=1h1,jE(x1,jx∗1,j)h∗1,j⋯∑Jj=1h1,jE(x1,jx∗k,j)h∗k,j⋮⋱⋮∑Jj=1hk,jE(xk,jx∗1,j)h∗1,j⋯∑Jj=1hk,jE(xk,jx∗k,j)h∗k,j⎤⎥ ⎥ ⎥ ⎥ ⎥⎦ (6)

As concluded in [15], if each nonzero coordinate of is drawn from centrally symmetric constellations, the cross correlation between the signals transmitted in different subcarriers , thus, (II) is diagonal. Figure 5 shows an example of centrally symmetric constellations for . It is worth noting that such codebook satisfies the design principles established in [9]. With that being said the SCMA sum-rate in (3) can be simplified as

 CSCMA (7) = lndet(IK+1σ2nHKxHH) = lndet⎡⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢⎣1+∑j∈J|h1,j|2E(x21,j)σ2n⋯0⋮⋱⋮0⋯1+∑j∈J|hK,j|2E(x2K,j)σ2n⎤⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥⎦ = ∑k∈Kln⎛⎝1+∑j∈J|hk,j|2E(x2k,j)σ2n⎞⎠ = ∑k∈Kln⎛⎝1+∑j∈J|hk,j|2fk,jpk,jσ2n⎞⎠.

Furthermore, by assuming a decoding order starting from user to user , and, using the logarithm identity , it is possible to obtain the achievable rate of user on resource , , as

 ln⎛⎝1+∑j∈J|hk,j|2fk,jpk,jσ2n⎞⎠ (8) = ln⎛⎝σ2n+∑j∈J|hk,j|2fk,jpk,jσ2n⎞⎠ = ln(σ2n+|hk,1|2fk,1pk,1σ2n) + ln(σ2n+|hk,1|2fk,1pk,1+|hk,2|2fk,2pk,2σ2n+|hk,1|2fk,1pk,1) + ⋯+ln⎛⎜ ⎜ ⎜⎝σ2n+J−1i=1∑|hk,i|2fk,ipk,i+|hk,J|2fk,Jpk,Jσ2n+∑i=1J−1|hk,i|2fk,ipk,i⎞⎟ ⎟ ⎟⎠ = ∑j∈Jln(1+|hk,j|2fk,jpk,jσ2n+∑i=1j−1|hk,i|2fk,ipk,i) = ∑j∈JCk,j.

Therefore, the achievable rate of each user, , is given by

 Cj=∑k∈KCk,j=∑k∈Kln(1+|hk,j|2fk,jpk,jσ2n+∑i=1j−1|hk,i|2fk,ipk,i). (9)

In the next section, we formulate the joint codebook and power allocation problems and present our proposed method to solve them.

## Iii Joint Codebook and Power Allocation

In this section, we formulate and propose two joint codebook and power allocation algorithms to solve two optimization problems: maximizing the sum-rate () and maximizing the minimum rate of users (). The former can be formulated as

 PMax-SR: (10) maxP,F CSCMA=∑k∈Kln⎛⎝1+∑j∈J|hk,j|2fk,jpk,j)σ2n⎞⎠ s.t. ∑k∈Kfk,j≤N ∀%j∈J (14) ∑j∈Jfk,j≤df ∀ k∈K ∑k∈Kfk,jpk,j≤P(j)%max ∀ j∈J fk,j∈{0,1} ∀ k∈K % and ∀ j∈J,

where is the matrix of allocated power, (10) is the sum-rate, (14) is the constraint on the number of subcarriers allocated per user. The constraint on the number of users per subcarrier is given by (14), while (14) is the constraint on the maximum transmitting power available per user. Finally, (14) is a binary constraint on the values of . The objective function is concave in and all the constraints are linear, however, it is non-convex due to the product between the entries of and . Moreover, due to the presence of the integer constraint (14), this problem fall in the category of non-convex MINLP problems, which are in general NP-hard [25]. Furthermore, the problem is formulated as

 PMax-Min: maxP,F minj∈J∑k∈Kln(1+|hk,j|2fk,jpk,jσ2n+∑i=1j−1|hk,i|2fk,ipk,i) s.t. (???),(???),(???eq:cmaxpwr),(???),

where (III) is the max-min utility function of the rate per user. The objective function of this problem is non-concave and, similarly to , also has integer constraints on .

In order to provide good solutions to both problems in polynomial time, we propose two algorithms, employing heuristics, to approximately solve this problems. The first approach, common to both problems, is to divide the main problem into two subproblems, one optimizing the transmitted power while maintaining the codebook allocation fixed, and the other one optimizing the codebook allocation while keeping the transmitted power fixed. However, the codebook allocation problem remains an integer problem, thus, we solve a continuous relaxed version of the problem and add a penalty function to bias the solution towards an integer one. Then, the subproblems are solved in alternating fashion until convergence. This alternating optimization framework has been widely used to solve joint allocation problems in wireless networks [26, 27, 28, 29, 30, 31]. The reformulated problems within the alternating framework are both non-convex, thus, in addition to the alternating framework, we propose a sequential convex programming (SCP) approach, to locally solve a sequence of concave approximations of the original problem until convergence. In the rest of this section, the reformulation of the problems, the details of the employed heuristics, and, the analysis of the convergence of the proposed algorithms are thoroughly discussed.

### Iii-a Alternating Optimization

Consider a generic optimization problem of the form

 maxx,y f(x,y) s.t gi(x,y)≤0 ∀ i=1,⋯,N x∈RD1 , y∈RD2

such that and ’s are convex on for a constant , and on with a constant , but are not convex on and together. The alternating procedure consists on solving separate convex problems iteratively. At the -th alternating step we obtain

 xn = argmaxxf(x,yn−1), {x∈RD1 | gi(x,yn−1)≤0} yn = argmaxyf(xn,y)% , {y∈RD2 | gi(xn,y)≤0},

where and are the values of the variables at the -th alternating step. The algorithm stops when and .

#### Iii-A1 Max-SR Problem

Starting by , the original problem is split into two subproblems: and . The former is given by

 P(P)Max-SR:maxP(???)s.t.(???).

This new problem is convex and can be readily solved with an optimization package, such as CVX [32]. As the codebook allocation is integer a few modifications are made to turn into a continuous problem. Firstly, the integer variables are relaxed to continuous ones inside the interval . Secondly, a penalty term of the form , where is chosen to be a large number, is added to the objective function. As , we have that , with equality if . This penalty term drives the solution towards an integer value of . Finally, the second problem, , is given by

 P(F)Max-SR: (16) maxF ∑k∈Kln⎛⎝1+∑j∈J|hk,j|2fk,jpk,jσ2n⎞⎠+γ(F) s.t. 0≤fk,j≤1 ∀ k∈K % and ∀ j∈J (???),(???),(???eq:cmaxpwr).

Due to the fact that is a convex function, (16) is non-concave. The procedure to turn the objective function into a concave is discussed in the next subsection.

#### Iii-A2 Max-Min Problem

A similar procedure is applied to , by splitting it into and . Furthermore, an auxiliary variable is added to rewrite the original formulation of the objective function and a new set of constraints is added to guarantee the equivalence between the problems. Then, is given by

 P(P)Max-Min: maxP,z z s.t z≤∑k∈Kln(1+|hk,j|2fk,jpk,jσ2n+∑i=1j−1|hk,i|2fk,ipk,i) ∀ j∈J (???).

The set of constraints given by (III-A2) are non-convex. Similarly to , the integer variables are relaxed into continuous ones and a penalty factor is added to the objective, resulting in

 P(F)Max-Min: maxF z+γ(F) s.t (???),(???),(???),(???),(???)

Both (16) and (III-A2) are non-concave objective functions, and the constraints defined by (III-A2) are non-convex, which makes the subproblems hard to solve. In the next section we present a sequential convex programming (SCP) approach to iteratively solve convex approximate versions of these problems, that can be solved efficiently.

### Iii-B Sequential Convex Programming

In order to solve the non-convex optimization problems presented in the last section, we employ the SCP framework [33]. In the SCP formulation, a sequence of subproblems, consisting of convexifications of the original problem, are solved. The solution of each subproblem is used as the input to the next one. The sequence of solutions converges to a local optimum of the original problem.

For a general constrained optimization problem consider

 maxx f(x)s.t.gi(x)≤0 , ∀i∈{1,2,…,N},

where , with , are convex functions, and are non-convex functions and the objective function is non-concave. Let be a lower bound approximation of in the neighborhood of , and, be upper bound approximations of the non-convex constraints in the neighborhood of , satisfying the following properties:

1. Both and are continuous and differentiable in .

2. The function is concave in .

3. The functions are convex in

4. and , .

5. and , .

6. and , .

Summarizing, is a first order, concave, lower bound approximation of and are first order, convex, upper bound approximations of .

###### Theorem 1.

Let be a sequence such that , where is a solution to the problem

 P(n): maxx ~f(x,xn−1) , xn−1∈^xn s.t. gi(x)≤0 , ∀i∈{1,…,M}. ~gi(x,xn−1)≤0 , ∀i∈{M+1,…,N}.

Assuming the sequence converges to and Slater’s condition hold on , then is a KKT point of the original problem, thus, a local maximum.

###### Proof.

The proof is relegated to Appendix A. ∎

#### Iii-B1 Max-SR Problem

In the sum-rate maximization problem, the power optimization step, , is already convex and does not need any modifications. In order to solve , a sequence of convex sub problems denoted by are solved to obtain a locally optimal solution to the non-convex problem , where the index represents the -th SCP subproblem. Both (16) and (III-A2), the objective functions of and respectively, consist of the sum of a concave function with a convex one so they follow the same convexification procedure. The objective function of the subproblem , given in (16), consist of the sum of a concave function with a convex one.

###### Lemma 1.

Let be the codebook allocation matrix at the -th SCP iteration, be a concave function, and, . Then, the function

 ~f(F,F(t))=Ω(F)+γ(F(t))+tr[∇γ(F(t))T(F−F(t))],

where is a matrix such that

 [∇γ(F(t))]k,j=∂γ(F(t))∂f(t)k,j (23)

satisfies properties (a), (b), (d), (e) and (f).

###### Proof.

Properties (a), (d), (e) are trivial to prove. The function is the sum of a concave and an affine function, therefore, it is concave and property (b) is satisfied. Moreover, as is a convex function, we have that

thus, property (f) is also satisfied, completing the proof. ∎

From Lemma 1 the subproblems to solve in the SCP framework are given by

 P(F)Max-SR(t): maxF ∑k∈Kln⎛⎝1+∑j∈J|hk,j|2fk,jpk,jσ2n⎞⎠+ γ(F(t−1))+tr[∇γ(F(t))T(F−F(t))] s.t. (???),(???),(???eq:cmaxpwr),(???).

The complete algorithm to solve the sum-rate maximization problem, , is summarized in Algorithm 1.

#### Iii-B2 Max-Min Problem

For the max-min problem, both steps and are non-convex. In both steps, a locally optimal solution for each of the problems is obtained by solving a sequence of convex sub problems and . Both (16) and (III-A2), the objective functions of and , respectively, consist of the sum of a concave function with a convex one so they follow the same convexification procedure based on Lemma 2. A similar procedure is employed to convexify the constraints of . Firstly, notice that

 ∑k∈Kln(1+|hk,j|2fk,jpk,jσ2n+∑i=1j−1|hk,i|2fk,ipk,i) = ∑k∈Kln(|hk,j|2fk,jpk,j+σ2n+j−1∑i=1|hk,i|2fk,ipk,i)− (25) ∑k∈Kln(σ2n+j−1∑i=1|hk,i|2fk,ipk,i),

which is the difference of concave functions. The constraints given by (III-A2) in can be approximated as follows

###### Lemma 2.

Let , then the function

 z− [∑k∈Kln(|hk,j|2fk,jpk,j+σ2n+j−1∑i=1|hk,i|2fk,ipk,i)− (26) θj(F(t))−tr(∇θj(F(t))T(F−F(t)))],

where is a matrix such that

 [∇θj(F(t))]k,n = ∂θj(F(t))∂f(t)k,n = ⎧⎪⎨⎪⎩|hk,n|2pk,nσ2n+∑i=1j−1|hk,i|2f(t)k,ipk,i , ∀ n

satisfies the properties (a), (c), (d), (e) and (f) for the constraints of .

###### Proof.

The proof of properties (a), (d) and (e) is straightforward. The term inside the outermost bracket in (26) consists of the subtraction of an affine function from a concave function in , thus, the result is concave. Furthermore, the whole expression (26) consists of an affine function minus a concave one, therefore, it is a convex function of and (c) is satisfied. Also, as is concave we have that

 θj(F)≤θj(F(t))−tr[∇θj(F(t))T(F−F(t))],

so,

 (???)≥ z−[ln(|hk,j|2fk,jpk,j+σ2n+j−1∑i=1|hk,i|2fk,ipk,i)−θj(F)],

and property (f) is satisfied, completing the proof. ∎

Similarly, the constraints given by (III-A2) in can be approximated as follows

###### Lemma 3.

Let , then the function

 z− [∑k∈Kln(|hk,j|2fk,jpk,j+σ2n+j−1∑i=1|hk,i|2fk,ipk,i)− (28) θj(P(t))−tr(∇θj(P(t))T(P−P(t)))],

where is a matrix such that

 [∇θj(P(t))]k,n = ∂θj(P(t))∂p(t)k,n = ⎧⎪⎨⎪⎩|hk,n|2fk,nσ2n+∑i=1j−1|hk,i|2fk,ip(t)k,i , ∀ n

satisfies the properties (a), (c), (d), (e) and (f) for the constraints of .

###### Proof.

The proof follow the same procedure as Lemma 2. ∎

The power allocation SCP subproblems of are given by

 P(P)Max-Min(t): maxP z s.t. z−∑k∈Kln(hk,jfk,jpk,j+σ2n+j−1∑i=1hk,ifk,ipk,i)+ θj(P(t−1))+tr[∇θj(P(t−1))T(P−P(t−1))]≤0 ∀ j∈J (???).

The codebook allocation SCP subproblems of are given by

 P(F)Max-Min(t): maxF z+γ(F(t−1))+tr[∇γ(F(t−1))T(F−F(t−1))] s.t. z−∑