Joint Resource Block Assignment and Power Allocation Problem for Rate Maximization With QoS Guarantees in Multiservice Wireless Systems

We formulate the resource and power assignment problem of maximizing the spectral efficiency of a wireless system subject to user satisfaction constraints in the multiservice scenario. We show that although this optimization problem is nonlinear, it can be converted to an integer linear program. In this way, standard techniques can be used to obtain the optimal solution. Motivated by the high computational complexity of the optimal solution, we propose a fast suboptimal algorithm. Simulation results show that our proposal achieves near-optimal performance in low and medium loads with a much lower computational complexity compared with the algorithm used to obtain the optimal solution. Therefore, our proposed algorithm achieves a good tradeoff between performance and computational complexity. We also show that the addition of adaptive power allocation renders significant performance gains in the considered scenario.


I. INTRODUCTION
Mobile communications have experienced an incredible development in the past 30 years since the analog First Generation (1G) of cellular systems until the Fourth Generation (4G) networks in their first commercial deployment tests. Nowadays, the Fifth Generation (5G) is object of intense research in the industry and academia [1]. The main drivers for that development are demands for better Quality of Service (QoS) such as lower latency and higher transmit data rates, new (multimedia) services and digital technology evolution with new powerful devices. Nowadays, steep traffic increase according to industry forecasts and the plenty of new mobile devices that need to be connected to mobile networks compose a challenging landscape to mobile communications evolution.
In order to cope with that challenging scenario, technological advancements were achieved in the access network side such as physical layer optimization as well as in the core network side of mobile networks with the All-Internet Protocol (IP) convergence. Despite these improvements, we highlight Radio Resource Allocation (RRA) as one of the most important feature of a mobile network. RRA algorithms are responsible for the management of the scarce radio resources such as power, time slots, spatial channels and frequency chunks.
In this article we deal with the RRA problem of improving spectral efficiency while fulfilling QoS and satisfaction target constraints by means of frequency resources and power allocation. In section II we review the main contributions in the literature related to the presented research topic and also show the main contributions of the current article. The assumed system model and main variables are depicted in section III. The studied problem as well as an approach to obtain its optimal solution are presented in sections IV and V. A low-complexity suboptimal solution is shown in section VI. Section VII shows the performance evaluation of the involved solutions. Finally, in section VIII we present the main conclusions and perspectives.

II. LITERATURE REVIEW AND MAIN CONTRIBUTIONS
In point-to-point connections, the most important objective is the transmit power optimization. The well-known solution for power allocation called Water Filling is obtained through convex analysis. Basically, Water Filling solution allocates more transmit power to frequency resources in better channel conditions, i.e., the ones that can most efficiently use that power [2]. One downside of Water Filling solution is that it relies on a continuous log-shaped mapping between channel quality and transmit data rate. On practical mobile systems, discrete Modulation and Coding Scheme (MCS) are used and, therefore, the achieved transmit data rates and transmit power levels assume discrete levels. In point-to-point connections, it has been shown that the bit-loading algorithm Hughes-Hartogs (HH) is able to achieve optimality when discrete transmit levels are used [3].
In point-to-multipoint connections such as the downlink of mobile networks, not only the transmit power allocation is important but also the frequency resource assignment. The joint frequency resource and power allocation in this case can be very hard to optimally solve. The difficulty increases when non-convex functions are present in the objective and/or constraints of the optimization problem. In these cases, one of the approaches is to use brute force method that consist in sequentially listing all possible solutions, evaluating their contribution to the objective and finally choosing the best one. As the search space size in general increases exponentially with the problem inputs, the brute force method is not feasible for practical deployments.
Many works have addressed RRA for point-to-multipoint Orthogonal Frequency Division Multiple Access (OFDMA) networks with different objectives: unconstrained total data rate maximization [4], margin adaptive or power minimization [5], [6], rate adaptive or improved fairness [7], [8], among others. Focusing on QoS guarantees we highlight the total data rate maximization problem restricted to minimum data rate guarantees (MaxRate-MinReq). One of the first works to address that problem was [9]. Basically, the authors split the original problem into two subproblems: resource allocation and resource assignment. The resource allocation determines the amount of frequency resources and power for each terminal whereas in the resource assignment the proper subcarrier assignment and bit loading is performed based on the terminals' channel gains and their requirements. In the simulation results presented in [9], however, the authors do not compare the proposed solution with the optimal one. In [10] the authors are able to obtain the optimal solution based on Integer Linear Problem (ILP) techniques by assuming Equal Power Allocation (EPA) among all frequency resources. As ILP techniques have exponential worst-case computational complexity, the authors propose a low-complexity suboptimal solution to the problem. The suboptimal solution firstly assigns the subcarriers to the terminals with best channel conditions (maximum rate allocation), and then switch subcarriers among terminals in order to fulfill data rate requirements (reallocation part). Although, the optimal solution with EPA is shown in [10], the authors do not compare the outage rate 1 between the optimal and suboptimal solutions. A marginal improvement in spectral efficiency over the suboptimal solution of [10] is presented by [11]. By modifying the subcarrier reallocation part of the suboptimal solution proposed in [10], the authors in [12] are able to obtain marginal gains in outage rate compared to [10].
In [13] the authors study the MaxRate-MinReq problem and provide a suboptimal approach of firstly assigning subcarriers giving priority to the terminals that need more power to achieve the minimum data rate requirement. After assigning all subcarriers, the remaining power is allocated in order to maximize the OFDMA capacity. The limitation of [13] is the use of continuous mapping between Signal to Noise Ratio (SNR) and transmit data rate. In [14] the authors assume discrete mapping between SNR and data rate and provides a solution based on the dual problem. The authors claim that although the original problem is not convex, the duality gap tends to zero when the number of subcarriers increases. However, in real systems the minimum allocable resource is a group of subcarriers instead of individual ones which decreases the strength of this hypothesis. Despite the effort of the authors in decreasing the overall complexity by using subgradient method to find the Lagrange multipliers, computational complexity is still high.
The authors in [15], [16] have proposed solutions to the MaxRate-MinReq problem based on meta heuristics while [17] presents an exact solution. In [15] the authors define the MCS allocation based on Tabu Search. However, the proposed solution is not compared to the optimal solution and no outage results are provided. In [16], Particle Swarm Optimization is used in order to perform subcarrier and power allocation. However, the problem is simplified by assuming continuous mapping between SNR and transmit data rate. The exact solution provided in [17] is obtained from a transformation of a Mixed Integer Non-Linear Problem to a Mixed Integer Linear Problem. Although the article provide interesting contributions from a theoretical point of view, the computational complexity of the proposed algorithm is still high to be employed in practical networks where resource allocation is expected to change in few milliseconds.
Some variants of the MaxRate-MinReq have appeared in other contexts. In [18] the authors study an optimization problem to guarantee minimum required data rates to the users but also includes fairness constraints. In [19] the authors study the MaxRate-MinReq problem in the context of Long Term Evolution (LTE) uplink where different conditions from the downlink should be assured. In [20], instead of guaranteeing at least a minimum required rate for all users, the authors propose an RRA problem where users's data rates should be in an interval with a minimum and a maximum data rate limitation. Continuous mapping between SNR and data rate is assumed in that work.
In [21] we generalize the MaxRate-MinReq problem by studying a new RRA problem of maximizing the overall data rate subject to minimum satisfaction constraints per service. Basically, in this problem we assume that the system operators require that a certain fraction of the connected terminals of each service should be satisfied with the provided QoS. In other words, a pre-defined number of terminals from each service should be satisfied with the provided QoS. Note that none of the previous works presented so far in this section have addressed multiservice scenario with satisfaction guarantees.
In [21] the authors considered only the frequency resource assignment and assumed that the transmit power was equally distributed among frequency resources. In this article, we extend the problem of [21] to evaluate the possible performance gains that can be achieved with the joint optimization of frequency resource assignment and power allocation. Basically, the main contributions of this article are: • Mathematical formulation of the joint frequency resource and power allocation problem; • Reformulation of the original problem from non-linear integer problem to ILP that can be optimally solved by standard techniques; • Evaluation of the possible achievable gains that can be obtained mainly in terms of outage rate when the power allocation is added to the problem; • Proposal of an efficient and low complexity solution; • Calculation of the computational complexity of the involved algorithms and their performance evaluation by means of computational simulations.

III. SYSTEM MODELING
We consider the downlink of a cellular system composed of a number of sectored cells. For a given sector of a cell, there is a group of terminals connected to cell's Base Station (BS). The system combines OFDMA and Time Division Multiple Access (TDMA) and its available resources are arranged in a frequency-time resource grid. We denote Resource Block (RB) as the minimum allocable resource that is defined as a group of adjacent subcarriers and a number of consecutive Orthogonal Frequency Division Multiplexing (OFDM) symbols in the time domain, which represents the Transmission Time Interval (TTI). The terminals of a sector can be simultaneously served by the assignment of different orthogonal frequencytime RBs and, therefore, there is no intra-cell interference among terminals of the same sector. It is worth of mentioning that the analyses performed in this study are also useful for other wireless multiple access schemes capable of assuring no intra-cell interference.
We assume the simplifying assumption that the inter-cell interference is added to the thermal noise in the SNR expression. We highlight that this assumption becomes more and more valid as the sector load and the number of BSs in the system increase [22]. Basically, as the number of interference sources increases, the central limit theorem can be applied. Obviously, our single-cell approach can be directly applied in multi-cell scenarios where the inter-cell interference can be predicted with acceptable confidence. As interference can be estimated, transmit data rates can also be estimated before resource allocation. Therefore, the resource allocation in each sector of multicell systems could be solved as single-cell resource allocation problems. This is representative of fully centralized systems where transmit nodes, e.g., BS or Access Point (AP), are connected through high speed links and RRA decisions are taken in a central node. Centralized networks are one of the points of the modern 5G's Cloud -Radio Access Network (C-RAN) concept [23].
Our single-cell approach is also a valid model for 3 rd Generation Partnership Project (3GPP) distributed networks where interference coordination schemes such as Intercell Interference Coordination (ICIC) (Release 8) [24] and Enhanced ICIC (eICIC) (Release 10) [25], [26] techniques can be applied at the top of single-cell resource allocation strategies in order to mitigate interference effects. One of the simplest strategies is to block some of the available RBs in cells so as to avoid that neighbour cells reuse the same RB at the same time. Note that the proposed solutions in our article can be applied in this case by simply redefining the available RBs at each sector.
In a given TTI, J active terminals are candidates to get RBs. We assume that there are N available RBs. Moreover, J and N are the set of active terminals and available RBs, respectively. As we are dealing with a multiservice scenario we assume that the number of services provided by the system operator is S and that S is the set of all services. We consider that the set of terminals from service s ∈ S is J s and that |J s | = J s , where | · | denotes the cardinality of a set in this context. When this operator is used in a scalar it denotes its absolute value. Note that s∈S J s = J and s∈S J s = J.
We define X as a J × N assignment matrix with elements x j,n that assume the value 1 if the RB n ∈ N is assigned to the terminal j ∈ J and 0 otherwise. As we will show in section IV, some constraints should be imposed on this matrix in order to assure no intra-cell interference within a sector. Assuming that the RB n is assigned to terminal j, the received SNR γ j,n of terminal j on RB n is given by where α j models the joint effect of path gain and long-term fading experienced in the link between the BS and the terminal j, h j,n is the short-term frequency response of the channel experienced by terminal j on RB n, σ 2 j is the noise power at terminal j, η j,n is the channel gain to noise ratio of terminal j on RB n, and finally p n is the transmit power allocated to the RB n. We assume that p is an N × 1 vector with elements p n . The vector p together with the assignment matrix X are the optimization variables of the studied problem. We also assume that P tot is the total available power at the BS.
By using link adaptation, a terminal can transmit at different data rates according to its channel state, allocated power and perceived noise/interference. We assume that the mapping between the achieved SNR and the transmit data rate is performed by the function f (·). We assume that discrete MCSs are employed as in practical wireless networks. The transmit data rate when the RB n is assigned to terminal j, r j,n , is given by Without loss of generality, we assume a BLock Error Rate (BLER)-based link adaptation where for a given SNR, the chosen MCS level is the one with the highest transmit data rate that assures an estimated BLER lower than a given fixed BLER target. Accordingly, depending on the SNR interval different transmit data rates can be achieved.
We assume that there are M possible MCSs levels to transmit and therefore, M possible non-zero transmit data rates per RB where v m represents the transmit data rate corresponding to the m th MCS level. M = {1, 2, · · · , M } is the set of all MCSs. Note that the m th MCS level is employed when the estimated SNR is between γ m and γ m+1 with γ m < γ m+1 .

IV. PROBLEM FORMULATION
As presented in section II, the considered problem in this work is the one presented in [21]. That problem has as objective the maximization of the aggregated sector data rate constrained by a per-service minimum number of satisfied terminals in a given TTI. In [21], only RB assignment was considered and equal power allocation per RB was assumed. In this article, besides RB assignment, we consider also the transmit power allocation. Henceforth, we call this problem as Joint RB Assignment and Power Allocation Problem (JRAPAP).
In the following, we define some other important variables. We assume that, at the current TTI, terminal j has a data rate requirement equal to t j . It is important to mention here that long-term data rate requirements can be mapped to instantaneous data rate requirements [27]. The minimum satisfaction constraints for each service are represented by the parameter k s which is the minimum number of terminals from service s that should be satisfied. We assume that the indices of the terminals in x j,n , r j,n and in t j are sequentially disposed according to the service, i.e., the terminals from j = 1 to j = J 1 are from service 1, terminals from j = J 1 + 1 to j = J 1 + J 2 are from service 2, and so on.
According to the previous considerations, the JRAPAP formulation is given in the following: subject to x j,n ∈ {0, 1}, ∀j ∈ J and ∀n ∈ N , where u(x, b) is a step function at b that assumes the value 1 if x b and 0 otherwise. The objective function shown in (3a) is the total downlink data rate transmitted by the BS. The first two constraints (3b) and (3c) assure that an RB will not be shared by different terminals, i.e., there is no intra-cell interference. The constraint (3d) assures that the total used transmit power is not higher than the total available power P tot . Finally, (3e) states that a minimum number of terminals should be satisfied for each service.
The optimization problem (3) is a mixed optimization problem with integer (binary) variable x j,n and a real variable p n . Due to the integer nature of x j,n , the convex combination of two feasible solutions does not necessarily results in another feasible solution. Therefore, the space of feasible solutions is non convex [28]. This class of problem is very hard to optimally solve. In general, the optimal solution can be obtained by performing an exhaustive search over all possible RB assignments and for each one, try to solve the continuous optimization problem corresponding the power allocation problem. The RB assignment and power allocation resulting the highest objective function is the optimal one. The complexity of problem (3) is increased especially because of the non-linear and non-convex functions present in the problem objective (3a) (see equations (1) and (2)) and in the constraint (3e). In the next section we present different formulations of this optimization problem in order to provide a method to obtain the optimal solution.

V. OPTIMAL SOLUTION FOR JRAPAP
In order to simplify the structure of problem (3) we firstly need to unify the optimization variables X and p. Notice that, since discrete MCSs are employed, the transmit power can also be modeled as a discrete variable. As commented in sections II and III, the BLER-based link adaptation mechanism can select the MCS used in the transmission based on SNR regions. Therefore, it is reasonable that the transmit power should be set to the minimum value that is capable to achieve the SNR that fulfills the BLER requirement. In other words, so as to transmit with a given MCS it is sufficient to guarantee the minimum SNR of the corresponding SNR region. Considering terminal j and RB n, we define λ j,n,m as the minimum transmit power that should be allocated to terminal j on RB n so as to employ the MCS m. Specifically, λ j,n,m is given by Therefore, we can reformulate JRAPAP by assuming a new (binary) optimization variable y j,n,m that assumes the value 1 if RB n is assigned to terminal j and the transmission is configured with the m th MCS level. In this case, the allocated power to the RB n assigned to terminal j is equal to λ j,n,m given by equation (4). The studied problem can be reformulated as follows subject to j∈J m∈M y j,n,m ≤ 1, ∀n ∈ N , (5b) y j,n,m ∈ {0, 1}, ∀j ∈ J , ∀n ∈ N and ∀m ∈ M, (5c) j∈J n∈N m∈M y j,n,m · λ j,n,m ≤ P tot , (5d) Problem (5) belongs to the class of integer or combinatorial optimization problem. However, it is still non linear due to constraint (5e). In order to linearize the constraint (5e), we introduce a new optimization variable. Consider ρ j as a binary selection variable that assumes the value 1 if terminal j is selected to be satisfied and 0 otherwise. Note that ρ = [ρ 1 · · · ρ J ] T . In this way, problem (5) can be reformulated by substituting the constraint (5e) by the following three new constraints: Based on the previous development we have transformed (3) into an ILP. This problem can be solved by standard methods such as the Branch and Cut (BC) algorithm (also referred in some contexts as Branch and Bound (BB)) [28]. The average computational complexity of obtaining the optimal solution by these methods is much lower than using brute force (complete enumeration of all possible RB assignments). Nevertheless, the complexity of the BC method grows exponentially with the number of constraints and variables. The linear form of JRAPAP has JN M + J optimization variables and JN + J + N + S + 1 constraints which may assume large values even for small numbers of terminals, RBs, MCSs and services.

VI. PROPOSED LOW-COMPLEXITY SOLUTION
In this section, we present our proposed algorithm that is a low-complexity alternative solution for JRAPAP. Before presenting the proposed algorithm, we show that JRAPAP can be simplified without significant loss of optimality.

A. Behavior of the ILP Solution: User Selection
Similar to the approach followed by [29], we have performed simulations with the optimal solution presented in section V in the considered scenario to observe the behavior of the ILP solution. The main aspects presented in section III were modeled in the simulation and more details about simulation scenario can be found in the section VII. For the sake of clarity, here, we present the most important parameters. We assumed 8 terminals in a sector (J = 8) that belong to the same service type 2 (S = 1) and 15 RBs (N = 15).
As we consider only one service in this section, we drop the index s of the variables. The simulation consisted in uniformly dropping the terminals in the sector coverage area in 3,000 independent snapshots. The channel were modeled assuming a distance dependent path loss, with a shadowing factor and short-term fading, as detailed in section VII. The considered result here is the outage rate that consists in the relative frequency in which an algorithm is not able to find a feasible solution to JRAPAP, i.e., the algorithm is not able to satisfy the problem constraints of the optimization problem (5). The system load is emulated by the increase of the users' required data rate. We assume that all users demand the same data rate.
The main objective of this investigation is to evaluate the impact on the outage rate of discarding some terminals of the terminal's set J . Consider that JRAPAP original is the optimal solution obtained according to section V assuming all terminals in the problem (5). Also, assume that JRAPAP selec. is the optimal solution obtained according to section V assuming that only k terminals (the minimum number of terminals that should be satisfied per service) were selected to solve problem (5). The selection process consists in choosing k terminals out of J terminals with highest ratio between the average data rate r j and the data rate requirement t j . The average data rate is obtained by mapping the average terminal SNR to data rate through link adaptation function as follows: 2 Although we assume only one service here, multiservice scenario is considered in the performance evaluation in section VII The main idea of discarding the terminals with lowest ratio r j /t j is to take out of the allocation process the terminals that are more difficult to satisfy, i.e., terminals with highest data rate requirements and poorest channel quality. Although we have performed many simulation scenarios, due to space restrictions, we only show in Figure 1 the outage rate versus the required data rate per terminal for JRAPAP original and JRAPAP selec. considering J = 8 and k = 4 labeled as 4/8 and J = 8 and k = 6 labeled as 6/8. In this figure we can see that the optimal solution considering all terminals and the optimal solution with the best k terminals have approximately the same performance in both scenarios. The performance degradation of JRAPAP original relative to JRAPAP selec. is more noticeable in scenario 4/8 due to the higher level of freedom to select terminals compared to the scenario 6/8. However, note that in general the required satisfaction ratio defined by system operators are in general higher than 80% while in scenario 4/8 we have a satisfaction ratio of 50% [30].
Important to note that this almost optimal selection process can be generalized to the multiservice scenario by selecting the best k s terminals of each service s ∈ S. Assume thatJ s is the new terminal set with sizeJ s after selecting the best terminals from J s , and thatJ = s∈SJ s andJ = s∈SJ s . The advantage of this process is the reduction of the optimization problem dimension and complexity. In fact, by selecting the best k s terminals of each service s ∈ S, we reduce the number of optimization variables since we decrease the number of terminals in the problem and we can drop the ρ j variable and constraint (6c). In the next section, we incorporate this strategy to our proposed low-complexity solution.

B. Algorithm Description
The proposed low-complexity solution to JRAPAP is composed of two parts. Parts 1 and 2 are shown in Figures 2 and  3, respectively. In part 1 of the proposed solution, we perform an initial RB assignment assuming a simplifying hypothesis: the terminals are able to transmit on the RBs at the highest MCS. Each terminal gets assigned only a minimum number of RBs according to the simplifying hypothesis and the terminal's transmit data rate requirements. In part 2 of the algorithm we assign the remaining RBs and apply adaptive transmit power allocation among RBs for further system performance improvement.
In step 1 of the first part of the proposed solution, we apply the user selection process described in section VI-A, i.e., we select for each service s ∈ S the k s terminals with highest values for the ratio r j /t j . The selected terminals compose the Auxiliary set, A. In step 2 we set all available RBs in the RB set, B. Then, in step 3, we estimate the number of RBs needed to each terminal achieve the required transmit data rate assuming that they are capable of transmitting in the best MCS, i.e., data rate ν M on each RB. Therefore, the minimum number of RBs needed to satisfy terminal j requirement is given by t j /ν M . The main idea of step 3 is to have an optimistic estimate of the number of required RBs for each terminal. Steps 4 and 5 check whether the Auxiliary and RB sets are empty or not. In step 6 we choose the terminal from Auxiliary set with lowest ratio r j /t j to get RBs firstly. The motivation here is to prioritize the terminals in worst channel conditions by letting them choose their best RBs. Terminals in good channel conditions in general have many RBs in good channel conditions differently of the terminals in worst channel conditions. In step 7 we choose to the selected terminal in step 6 its best RB. The selected RB is taken out of the set B. In step 8 we evaluate if the selected terminal has the minimum number of RBs calculated in step 3. If so, this terminal is taken out of set A in step 9 and other terminal will get RBs. Otherwise, the selected terminal will get more RBs until the required minimum number of RBs is fulfilled. Important to note that if during the assignment process all the RBs are assigned and there are still terminals without the required minimum number of RBs, the algorithm is not able to satisfy the constraint of problem (3). Later, we discuss how the proposed algorithm acts in this case.
At the end of the first part of the proposed solution, each terminal has a minimum number of RBs assigned and possibly there are other unassigned RBs. The first step of part 2 shown in Figure 3 is to apply the transmit power allocation according to HH algorithm on the RBs for each terminal individually without total power constraint. Basically, HH algorithm allocates transmit power to the RBs and consequently increases the MCS levels until the required transmit data rate of each terminal in set A is met. Note that possibly the sum of the transmit power used for each terminal (total used transmit power) may violate the total power constraint in the BS turning the solution unfeasible. This is evaluated in step 2 where we test if the total used transmit power (summation of the transmit power allocated to the RBs of all terminals) is lower than or equal to the BS total power constraint, P tot . If so, we have got a feasible solution to JRAPAP and a further optimization is done in step 9 where the remaining RBs are assigned to the terminals with best channel quality. The HH algorithm is then Part 1.
Step 1: Auxiliary Set A is composed by the best ks terminals for each service s ∈ S according to rj/tj.
Step 2: RB Set B is composed by all available RBs.
Step 6: Choose the terminal from the Auxiliary Set with lowest ratio rj/tj.
Step 7: Allocate the best RB from RB Set to the selected terminal. Remove the selected RB from RB Set.
Step 4: Is the Auxiliary Set empty?
Step 5: Is the RB Set empty?
Step 8: Has the selected terminal received the required minimum number of RBs?
Step 9: Remove the selected terminal from Auxiliary Set.  executed again in order to distribute the remaining transmit power to the RBs. In this case, HH algorithm increases the MCS levels of the RBs that need less power to increase one MCS level. If after step 1 the total used power is higher than the total available at the BS, we evaluate if sets A and B are empty (step 3). If so, the algorithm is not able to find a solution that obeys the constraints of problem (3). Later, we discuss how we can proceed in this case. In step 4, the terminal from Auxiliary set A with lowest ratio r j /t j selects the RB from RB set, B, in best channel condition. The idea here is the same as presented in step 6 and 7 of part 1 of the proposed solution. In step 5 we redo the transmit power allocation (HH algorithm) for the selected terminal in step 4 considering the already assigned RBs and the selected RB in step 4. The HH solution is executed until the terminal achieves the data rate requirement without total power constraint. If the selected RB is in good channel conditions, it is likely that the total transmit power allocated to the terminal will decrease in case the selected RB is assigned to the terminal. Therefore, in Part 2.
Step 1: Apply HH power allocation on all terminals, individually, without power constraint until all terminals become satisfied. Update current total used power.
Step 2: Is the current used transmit power lower than the total power constraint?
Step 3: Are Auxiliary Set or RB Set empty? Feasible Solution not found.
Step 4: Select the terminal from Auxiliary Set with lowest rj/tj. Select the best RB from RB Set to the selected terminal.
Step 5: Apply HH on the already assigned RBs of the selected terminal and the new selected RB without total power constraint and until the terminal becomes satisfied.
Step 6: Has the current transmit power used by the selected terminal decreased with the new RB?
Step 8: Do not allocate the new RB to the selected terminal. Remove the selected terminal from Auxiliary Set.
Step 7: Allocated the new RB to the selected terminal. Update the total transmit power.
Step 9: Allocate all remaining RBs from RB Set to the terminals with best channel quality. Apply HH power allocation on all RBs of all terminal (jointly).  step 6 we evaluate if the total power allocated to the selected terminal has decreased with the addition of the new RB. If so, the new RB is assigned to the terminal and the total used power by the BS is updated. Otherwise, the RB is not assigned to the terminal and this terminal is taken out of the Auxiliary set A. This terminal is taken out of the allocation process because no more power saving can be obtained by assigning new RBs to it. The algorithm continues testing if the addition of new RBs is able to decrease the total used power. The algorithm is finished when the total used power is lower than or equal to the total transmit power available at the BS when we get a feasible solution.
As commented previously, the proposed solution may fail in obtaining a feasible solution to the problem JRAPAP. This means that the algorithm was not able to satisfy the constraints of problem (3). Our proposal here is to smoothly decrease the terminal's data rate constraints by an arbitrary rate β with β < 1. Then, our proposed solution can be executed again in order to evaluate if the new required data rates can be satisfied. Depending on β value, we expect to satisfy the system QoS with the limited RBs and available transmit power.

VII. PERFORMANCE RESULTS
This section is devoted to the performance evaluation of the optimal and suboptimal solutions of JRAPAP. The main objective here is to evaluate the performance gains that can be obtained with the joint RB assignment and power allocation over the strategy of RB assignment with equal power allocation among RBs (no adaptive power allocation) and how close the proposed solution gets to the optimal solution. In section VII-A we present the main simulation assumptions whereas in section VII-B we show and discuss the simulation results.

A. Simulation parameters
We consider the downlink of one sector deployed in a trisectorized cell of a cellular system. The results were obtained by performing several independent snapshots in order to get valid results in a statistical sense. In each snapshot, the terminals are uniformly distributed within the sector, whose BS is placed at its corner. We consider resources arranged in a time-frequency grid with each RB composed of a group of 12 adjacent subcarriers in the frequency dimension and 14 consecutive OFDM symbols in the time dimension, following the specifications in [31].
The propagation model includes a distance-dependent path loss model, a log-normal shadowing component and a Rayleigh-distributed fast fading component. We assume that the link adaptation is performed based on the report of 15 discrete Channel Quality Indicators (CQIs) used by the LTE system [32]. The SNRs thresholds for MCS switching were obtained by link level simulations from [33]. The main simulation parameters are summarized in Table I.
The optimal solution of the JRAPAP problem (identified in the plots by JRAPAP OPT) is contrasted to the optimal solution of the same problem with RB assignment but with equal power allocation (identified in the plots by RAP that stands for Resource Assignment Problem) [21]. Our proposed suboptimal solution to the JRAPAP problem is identified in the plots by PROP. The channel realizations were the same for all simulated algorithms in order to get fair comparisons. In order to solve ILP problems we used the IBM ILOG CPLEX Optimizer [34]. The choice of the number of terminals, RBs and services is limited by the computational complexity to obtain the optimal solutions.
We consider two performance metrics: the outage ratio and the total data rate. An outage event happens when an algorithm does not find a solution fulfilling the constraints of problem (5). Note that depending on the positions of the terminals within the sector, channel gains and data rate requirements of terminals, the problem itself can be infeasible. Outage rate is defined as the ratio between the number of snapshots with outage events and the total number of simulated snapshots. Therefore, this performance metric shows the capability of the algorithms in finding a feasible solution to our problem. The total data rate is the sum of the data rates obtained by all the terminals in the sector in a given snapshot. Finally, increments in the offered load are emulated by increasing the data rate requirements of the terminals.
To evaluate our proposal over different conditions, in the results, we present some simulation scenarios in which the main parameters of our model are changed. The scenarios are described in the Table II.

B. Results
In the following figures, we denote the i-th scenario as SCE i. In Figure 4 we show the outage rate versus the required data rate per terminal for algorithms JRAPAP OPT, RAP OPT and PROP in scenarios 1 to 3. As expected, the outage rate increases with the required data rate per terminal. Furthermore, we can observe that all algorithms presents an improved performance when we go from scenario 3 to 1. This is also an expected behavior since the required number of satisfied terminals, k s , increases from scenario 1 to 3.
Focusing on the relative performance among algorithms, a first interesting observation is that the joint optimization of RB assignment and power allocation renders a significant performance gain in outage rate over the RB assignment optimization with equal power allocation in the presented scenarios. When the JRAPAP OPT solution reaches an outage rate of 10%, the differences in outage rate performance between JRAPAP OPT and RAP OPT are 22.4%, 16.1% and 17.25% in scenarios 1 to 3, respectively. Differently of the conclusions of [4], the power optimization jointly with RB assignment leads to important gains over the RB assignment optimization only. The main difference in the conclusions is that the RRA problem considered in [4] does not consider QoS or satisfaction constraints. The solution of that problem in general grants terminals in better channel quality with most of the RBs. Consequently, the RBs are in general configured by the transmitter with the highest MCS levels even when equal power allocation is employed. Therefore, there is no margin for power optimization in this scenario. On the other hand, when QoS or satisfaction constraints are considered in the total data rate maximization problem, RBs must be assigned to terminals in average or poor channel conditions since the problem constraints should be satisfied. Consequently, some of the assigned RBs are configured with lower or medium MCS levels and in this case there is room for power optimization obtain gains in transmit data rate.
A second observation that can be obtained from Figure  4 is about the performance of PROP solution. The PROP solution outperforms the RAP OPT solution showing that performance gains could be obtained even with suboptimal solutions when adaptive transmit power allocation is considered. Therefore, the PROP solution outperforms both the optimal and suboptimal solutions proposed in [21] where only RB assignment is assumed. Also, the PROP solution presents a small performance degradation to the JRAPAP OPT solution for low and moderated loads 4 in all presented scenarios. When the JRAPAP OPT solution reaches an outage rate of 10%, the differences in outage rate performance between our solution and JRAPAP OPT are 6.1%, 6.9%, and 5% in scenarios 1 to 3, respectively. In Figure 5 we study the impact of the terminals' required data rate, t j . In this Figure we show the outage rate versus the required data rate per terminal for algorithms JRAPAP OPT, RAP OPT and PROP in scenarios 4 to 6. Note that in these scenarios we have three services and the terminals of service 3 in scenarios 5 and 6 demand a data rate of 125 kbps and 250 kbps higher that the ones of service 1 and 2, respectively. The data rate demanded by all terminals in scenario 4 are the same. According to Figure 5 we can see that the higher the required data rate of the terminals of service 3, the higher is the outage rates for all algorithms. In fact, as the data rate demands of the terminals is increased, the problem of satisfying k s terminals for each service s becomes more difficult.
In Figure 6 and 7 we present the outage rate versus the required data rate per terminal for algorithms JRAPAP OPT, RAP OPT and PROP in scenarios 7 to 9 and 8, 10 and 11, respectively, where all scenarios consider four services, S = 4. In Figure 6 the required minimum number of satisfied terminals per service, k s , is varied whereas in Figure 7 we change the required data rate per terminal, t j , among terminals. The main conclusions achieved so far can be summarized in these scenarios with more services: the variables k s and t j have important impact on the outage rate for all algorithms. Furthermore, the JRAPAP OPT solution presents important gains in outage rate compared to RAP OPT solution highlighting the relevance of adaptive power allocation. Also, the PROP solution presents a small performance loss to the JRAPAP OPT solution in low and moderated loads whereas it outperforms the RAP OPT solution even when the number  S  J1  J2  J3  J4  k1  k2  k3  k4  N  Required data rate   1  2  4  4  --3  3  --15  All terminals demand the same data rate   2  2  4  4  --4  3  --15  All terminals demand the same data rate   3  2  4  4  --4  4  --15  All terminals demand the same data rate   4  3  3  3  3  -3  3  2  -15  All terminals demand the same data rate   5  3  3  3  3  -3  3  2  -15  Terminals from service 3 demand a data rate 125 kbps  higher than the terminals from services 1 and 2   6  3  3  3  3  -3  3  2  -15  Terminals from service 3 demand a data rate 250 kbps  higher than the terminals from services 1 and 2   7  4  3  3  3  3  3  3  2  2  20  All terminals demand the same data rate   8  4  3  3  3  3  3  3  3  2  20  All terminals demand the same data rate   9  4  3  3  3  3  3  3  3  3  20  All terminals demand the same data rate   10  4  3  3  3  3  3  3  3  2  20 Terminals from service 4 demand a data rate 250 kbps higher than the terminals from services 1 , 2 and 3   11  4  3  3  3  3  3  3  3  2  20 Terminals from service 4 demand a data rate 500 kbps higher than the terminals from services 1, 2 and 3  of service is increased.
The outage rate performance metric shows the capability of the algorithms in finding a feasible solution to our problem. In order to analyse the algorithms from another standpoint, in the remaining figures, we show the Cumulative Distribution Function (CDF) of the total data rate for specific data rate requirements considered in the x-axis of the figures regarding the outage rate performance. The total data rate represents the objective function of our optimization problem. For a specific scenario and load, the CDFs of all the algorithms are built with the samples of the snapshots in which and PROP and JRAPAP OPT were able to find a solution.
In Figures 8(a) and 8(b), we present the CDFs of the total data rate for all the algorithms in scenario 1 for the required data rate of 200 kbps and 1,200 kbps. One general observation for all remaining figures is that the RAP OPT algorithm provides the lowest total data rates. The performance losses at the 50 th percentile of the total data rate of RAP OPT solution relative to the JRAPAP OPT solution are 4% and 9.5% in Figures 8(a) and 8(b), respectively. Note that when the RAP OPT is in outage we consider a total data rate equal to 0 in the plots. This explain the high probability of a total data rate equal to 0 in Figure 8(b). When the PROP solution is concerned, we highlight that in this scenario our proposed solution is able to keep a small performance loss compared to  the best solution that can be achieved even at the highest data rate requirement. In Figures 9(a) and 9(b) we present the CDFs of the total data rate for all algorithms in scenarios 4 and 6 for the required data rate of 400 kbps and 900 kbps, respectively. The objective is to show the impact of the required data rate, t j . Basically, we can see that the variation of t j among the terminals of different services does not present a significant impact on the total data rate except for the RAP OPT algorithm in Figure  9(b). The proposed solution performs almost optimal in Figure  9(a) whereas a small performance loss can be seen in Figure  9(b) at low percentiles.
In Figures 10(a) and 10(b) we present the CDFs of the total data rate for all the algorithms in scenario 7 and 9 for the required data rates of 400 kbps and 900 kbps, respectively. The objective is to show the impact of the required minimum number of satisfied terminals per service, k s . Once again, the RAP OPT solution presents the highest performance difference among the algorithms when k s is changed. The PROP and JRAPAP OPT solutions present a moderated decrease in the  total data rate when k s is changed at the required data rate of 900 kbps. Basically, the difference in the total data rate when k s is changed is more pronounced when the outage rate is high (see figure 7). In summary, from the joint analysis of the results in Figures  4 -10(b), we can see that our proposed solution performs near optimally considering the problem objective and constraints in the low and medium load conditions. As we are dealing with algorithms, it is worthwhile to analyze the computational complexity of the involved solutions.
The worst-case computational complexity to obtain the optimal solution by using the BC algorithm is ( √ 2) (JN M+J) , as explained in Appendix A. The worst-case computational complexity of the PROP algorithm, which is calculated in Appendix B, is O (J × M × N × log 2 N ). It is clear that the complexity of PROP is much lower than the one of optimal solution. According to [21], the worst-case computational complexity solution of RAP OPT is also exponential. Therefore, by analyzing the computational complexity and performance of the PROP algorithm, we conclude that it leads  to a good performance-complexity tradeoff when compared with the strategies RAP OPT and JRAPAP OPT.

VIII. CONCLUSIONS AND PERSPECTIVES
We studied the total data rate maximization problem subjected to Quality of Service (QoS) and satisfaction constraint. This problem has been studied before only by the Resource Block (RB) assignment perspective. In this paper, we exploit the joint use of RB assignment and transmit power allocation scenario that is a more challenging problem from the system operators point of view. We have shown that although the optimization problem seems to have nonlinear constraints, it can be turned into an ILP that can be solved by standard techniques. After that, we have proposed an alternative lowcomplexity suboptimal solution to the mentioned problem.
The simulation results have shown that the PROP algorithm performs near optimally for low and moderated data rate requirements. The small degradation in performance observed for high data rate requirements can be compensated by the low complexity of the PROP algorithm compared with the method employed to obtain the optimal solution. APPENDIX A COMPUTATIONAL COMPLEXITY TO OBTAIN THE OPTIMAL SOLUTION OF JRAPAP As in [10] and [11], we consider summations, multiplications, and comparisons as the most relevant and timeconsuming operations. The computational complexity considered here is the worst-case one that gives an upper bound on the computational resources required by an algorithm and is represented by the asymptotic notation O(·). To obtain the optimal solution, we used the BC algorithm. For an arbitrary number of integer variables l, the number of linear programming subproblems to be solved is at least ( √ 2) l [35]. Meanwhile, the number of iterations needed to solve one linear programming problem with m constraints and l variables is approximately 2(m + l), and each iteration encompasses (lm − m) multiplications, (lm − m) summations, and (l − m) comparisons [10], [35]. As in problem (5) there are JN M +J integer variables and JN +J +N +S+1 constraints, the worstcase computational complexity to obtain the optimal solution is O( √ 2) (JN M+J) .

APPENDIX B COMPUTATIONAL COMPLEXITY OF SUBOPTIMAL
SOLUTION OF JRAPAP The worst-case computational complexity of our proposed suboptimal solution is clearly dominated by the power allocation steps performed by HH solution illustrated in Figure  3. Assuming the same hypothesis about the most important operations for computational complexity as in appendix A, we have that the worst case computational complexity of HH algorithm when applied in N RBs and M MCS levels is given by O(M × N × log 2 N ). Assuming that the variable J in practical scenarios is greater than N , the worst-case complexity of the proposed algorithm is dominated by the execution of HH solution for each terminal. Therefore, it is given by O (J × M × N × log 2 N ). Francisco Rodrigo Porto Cavalcanti received the B.Sc. and M.Sc. degrees in Electrical Engineering from Federal University of Ceará (UFC), Fortaleza, Brazil, in 1994 and 1996, respectively, and the D.Sc. degree in Electrical Engineering from the State University of Campinas, São Paulo, Brazil, in 1999. Upon graduation, he joined the UFC, where he is currently an Associate Professor and holds the Wireless Communications Chair with the Department of Teleinformatics Engineering. In 2000, he founded and, since then has directed the Wireless Telecom Research Group (GTEL), which is a research laboratory based on Fortaleza, which focuses on the advancement of wireless telecommunications technologies. At GTEL, he manages a program of research projects in wireless communications sponsored by the Ericsson Innovation Center in Brazil and Ericsson Research in Sweden. Prof. Cavalcanti has produced a varied body of work including two edited books, conference and journal papers, international patents and computer software dealing with subjects such as radio resource allocation, cross-layer algorithms, quality of service provisioning, radio transceiver architectures, signal processing and project management. Prof. Cavalcanti is a distinguished researcher of the Brazilian Scientific and Technological Development Council for his technology development and innovation record. He also holds a Leadership and Management professional certificate from the Massachusetts Institute of Technology, Cambridge.