Radio Resource Allocation in SC-FDMA Uplink with Resource Adjacency Constraints

Radio Resource Allocation (RRA) in cellular systems is a relevant and difficult task that should assign the system resources in the most efficient manner while fulfilling different constraints such as Quality of Service (QoS). In wireless systems that employ Single Carrier Frequency Division Multiple Access (SC-FDMA) as in Long Term Evolution (LTE) uplink, RRA is even more difficult since the frequency resources should be assigned in contiguous blocks of subcarriers to each terminal. In this work we study two important RRA problems in SC-FDMA: the total data rate maximization and the total data rate maximization with minimum user satisfaction constraints. We formulate them as optimization problems and show that the optimal solutions are not practical to be employed in real systems due to the high computational complexity. Therefore, we propose two efficient heuristic solutions for those problems. By simulation results, we show that both solutions are near optimal and subject only to small performance degradation compared to the complex and impractical optimal solutions.


I. INTRODUCTION
Mobile networks have experienced an incredible development in the last decades and now we are witnessing the commercial deployment of 4 th Generation (4G)'s Long Term Evolution (LTE) Release 10 or Long Term Evolution -Advanced (LTE-A).LTE-A networks present several technological advancements that allow for low packet latencies, higher data rates in both downlink and uplink, and support to new multimedia services.Despite these improvements, mobile networks have to cope with a relevant challenge: the steep increase of mobile traffic expected for the next years.According to Ericsson [1], by the end of 2020 the global mobile data traffic will increase 8-fold and 5.4 billion mobile broadband subscriptions will be added worldwide.Notwithstanding this increased data traffic, mobile operators should be still able to guarantee the user Quality of Service (QoS) for all provided services in order to retain users and increase revenue.
One important tool to address this challenging scenario is the effective use of Radio Resource Allocation (RRA).RRA has access to the radio interface resources and is responsible for managing and distributing them to the active data connections in order to achieve different objectives such as improved spectral efficiency, fairness, energy efficiency or QoS fulfillment.Among the system resources we can mention power, time slots and frequency chunks.Some aspects of mobile networks have a strong impact on RRA design.More specifically, multiple access schemes in general imposes limitation on how the system resources should be assigned.
LTE networks have adopted Single Carrier -Frequency Division Multiple Access (SC-FDMA) and Orthogonal Frequency Division Multiple Access (OFDMA) as the multiple access schemes for the uplink and downlink, respectively.Basically, SC-FDMA applies a Discrete Fourier Transform (DFT) in the time domain data symbols before passing them to an OFDMA modulation.The main motivation for using SC-FDMA in uplink is that SC-FDMA signals have inherently lower Peak-to-Average Power Ratio (PAPR) thus reducing requirements on the linear region of power amplifiers in mobile terminals.However, the base stations should employ adaptive frequency domain equalization in order to mitigate inter-symbol interference [2].
RRA performed in the uplink of SC-FDMA should comply with an important constraint when assigning frequency resources so as to obtain the advantages in terms of PAPR: the adjacency constraint.According to this resource constraint, the frequency chunks or blocks of subcarriers assigned to a given mobile terminal should be adjacent to each other, i.e., the frequency resources should compose a unique and contiguous block.Furthermore, the data transmitted from mobile terminals should be modulated and coded using the same Modulation and Coding Scheme (MCS) in all assigned (adjacent) frequency resources.Therefore, RRA in SC-FDMA uplink owns an additional difficulty when trying to satisfy QoS requirements that is not present in OFDMA case.
In this article we study two RRA problems in SC-FDMAbased uplink systems that are capable of boosting spectral efficiency and/or guaranteeing QoS constraints.The remainder of this article is organized as follows.In section II we shortly review the most relevant works related to our article and present the main contributions of this work.In sections III and IV we present the main assumptions concerning the system modeling and also the studied problems in optimization form, respectively.In section V we present methods to obtain the optimal solutions of the studied optimization problems whereas in section VI we propose low-complexity heuristic solutions to the studied problems.Simulation results are shown and relative performance of the studied algorithms are discussed in section VII.Finally, the main conclusions and perspectives are summarized in section VIII.

II. STATE-OF-THE-ART AND MAIN CONTRIBUTIONS
RRA problems have been studied in optimization form for OFDMA schemes with different objectives and constraints.The interested reader can see [3] for a good reference on this topic.As commented previously, RRA in uplink SC-FDMA should comply with adjacency constraints.Consequently, the problems and solutions developed for OFDMA were revisited in the uplink SC-FDMA case.
One of the most basic RRA problem is the total data rate maximization that consists in finding the resource allocation that maximizes the total transmitted data rate.Although this problem can be optimally solved in the downlink OFDMA with single antennas transceivers by using a simple algorithm [4], this is not the case in the uplink SC-FDMA case due to the adjacency constraint.In [5], the authors considered the total data rate maximization problem for the SC-FDMA scenario.However, that work ignores the system constraint of subcarrier adjacency.In [6] the authors considered the adjacency constraint, however, it was assumed that each terminal demanded the same number of frequency resources.In practice, terminals have different data rate requirements and channel qualities leading to different demands regarding the number of frequency resources.In [7], a different approach was followed by formulating the total data rate maximization problem as a pure binary-integer problem called set partitioning for which the optimal solution can be obtained without employing an exhaustive enumeration.Therein, the authors also proposed a low-complexity suboptimal algorithm for the studied problem.In [8] the authors propose three general algorithms based on a general metric that can be designed for different objectives.The algorithm that achieves the best performance-complexity trade-off, Recursive Maximum Expansion (RME), prioritizes the users with best channel quality and assures resource adjacency.In [9], the authors propose a new solution that exploits the correlation between frequency resources by using the channel coherence bandwidth in their formulation.Through simulation results, the authors claim that their proposal is more robust to abrupt changes in channel quality of adjacent resources than [7] which leads to improved total data rate performance.However, the system modeling considered in that article does not take into account the effect of the frequency domain equalization on the Signal to Noise Ratio (SNR) of the contiguous frequency blocks at the receiver when estimating the transmit data rate.For a general survey on RRA algorithms to solve the total data rate maximization problem in uplink LTE system, the interested reader can see [10].
As the solutions to the total data rate maximization problem in general lead to unfair resource distribution, some works have considered other RRA problems that can guarantee a better resource distribution.In [11], a suboptimal solution is proposed to the problem of utility maximization.The considered utility functions were the sum of terminals' data rates and the sum of the logarithm of the terminals' data rates; the last one designed to achieve proportional fairness.Although SC-FDMA is considered in that work, the subcarrier adjacency constraint was not taken into account for RRA.In [12], the authors studied an RRA problem based on a general metric that quantifies the efficiency of assigning each resource to each terminal.Then, a search-tree based algorithm was proposed that equally divides the resources among the terminals.This simplifying assumption limits the flexibility for RRA and the potential gains on multi-user diversity.The authors of [12] subsequently proposed another algorithm in [13] that allows the assignment of different amounts of frequency resource to the terminals in order to achieve proportional fairness.The proposed algorithm iteratively finds the terminal and frequency resources combination with highest metric and expands the allocated bandwidth to that terminal by assigning the contiguous frequency resources in which the selected terminal has the highest metric compared to all other terminals.The algorithm stops when all resources are assigned.In [14] that algorithm is modified to provide better performance at the cost of higher computational complexity.Proportional fairness is also the subject of [15], in which the authors show that the adjacency constraint is sufficient to characterize NP-hardness.Furthermore, the authors propose suboptimal algorithms to deal with the formulated problem and which exploit frequency correlation as in [13], [14].
Although the introduction of fairness in RRA provides a better distribution of the system resources than in the total data rate maximization, depending on the system load, QoS may not be fulfilled.Some works have considered QoS with RRA in SC-FDMA uplink [16], [17].The main contribution of [16] consists in the integration of a well-known downlink scheduling solution with a method of estimating packet delays in uplink that is not as trivial as in downlink.Although, LTE uplink is considered, the adjacency constraint is not modeled.The margin adaptive problem that has been extensively studied in downlink OFDMA was considered in [17] for SC-FDMA uplink.The authors propose a suboptimal solution with variable complexity by adaptively defining the size of the search space composed of the possible terminal-resource assignments.
The works [18], [19] consider another dimension in QoSbased RRA: multiservice scenario.In [18] the authors propose an RRA problem that aims at maximizing the operator revenue while satisfying the user QoS of different services or traffic classes.An important aspect of that article is the concern in addressing not only user requirements in terms of QoS but also system operator needs.However, the authors in [18] disregard the resource adjacency constraint and do not present an optimum solution or a bound to the studied problem.The work [19] also addresses a multiservice RRA problem by maximizing a utility function constrained to QoS requirements of different services or traffic classes.The authors propose two heuristic algorithms to solve the problem but no optimal solution or bound was provided.
Although some of the previous works have addressed QoS issues for multiservice scenario in uplink SC-FDMA, one aspect was not considered: per-service minimum satisfaction guarantees.In general the traffic behaviour and QoS requirements of some user applications own similar characteristics that motivate the definition of different services types.As examples we can mention web browsing, File Transfer Protocol (FTP) and video streaming services.In order to assure an acceptable provision of the different services, system operators could guarantee that a minimum percentage of the connections of each service should have their QoS fulfilled, i.e., these connections should be satisfied.The minimum satisfaction guarantees was proposed as a system-level metric in [20] and used in many other works such as [21], [22].In this article we study two different RRA problems; we firstly revisit the total data rate maximization or Unconstrained Rate Maximization (URM) problem; and we study the total data rate maximization subject to minimum satisfaction guarantees problem or Constrained Rate Maximization (CRM) in uplink SC-FDMA scenario.As far we know, the CRM problem was not studied in the uplink SC-FDMA scenario, and was first studied in the downlink OFDMA scenario by us in [23].
In summary, the new contributions of this work are: • Problem formulation and modeling of CRM problem: We present the CRM problem as an optimization problem considering the main constraints present in the uplink SC-FDMA scenario; • Optimal solution of the CRM problem: We manage to re-formulate the CRM problem by using matrix transformations in order to enable the use of standard numerical solvers to optimally solve the studied problem; • Proposal of low-complexity solutions to URM and CRM problems: Motivated by the unpractical computational complexity of the method to obtain the optimal solution, we propose low-complexity solutions based on simple heuristics in order to achieve a good performance-complexity trade off; • Calculation of computational complexity: In order to characterize the performance/complexity trade-off, we provide the worst-case computational complexity of the involved algorithms.
III. SYSTEM MODELING We assume that resource allocation should be performed in a cell of a cellular system with a Base Station (BS) that serves the connected terminals.Both mobile terminals and BS employ single antenna transceivers.As we consider the uplink direction, resources should be allocated in order to allow these terminals transmit to their serving BS.We assume that the intra-cell interference, i.e., interference between terminals of the same cell, is controlled by employing the combination of Time Division Multiple Access (TDMA) and SC-FDMA multiple access schemes with the assignment of orthogonal resources.We define the minimum allocable resource or Resource Block (RB) by a time-frequency grid composed of a number of consecutive Orthogonal Frequency Division Multiplexing (OFDM) symbols in the time domain and a group of subcarriers in the frequency domain.We consider the simplifying assumption that the inter-cell interference, i.e., the interference caused by the transmission of terminals from other cells that reuse the same frequency bandwidth, is added to the thermal noise in the the SNR expression.Note that this assumption becomes more and more valid as the system load, and therefore, the number of transmitting terminals and resource usage increase [24].
Our focus in this article is on a snapshot resource assignment problem that consists in determining at a specific Transmission Time Interval (TTI), which resources should be assigned to the connected terminals in order to fulfill specific objectives and constraints (defined later in section IV).Note that the sequential solution of the resource assignment problem along several TTIs is equivalent to a packet scheduling problem.Therefore, we consider that J terminals are candidates to get assigned N RBs in order fulfill their QoS requirements.J and N are the terminal and RB sets.
We assume that the system operator provides different services to the connected terminals such as Voice over IP (VoIP) and file upload.We assume that there are S services in the system and S is the set of services.We consider that there are J s users or terminals using service s ∈ S and J s is the set of these terminals.Also, s∈S J s = J and s∈S J s = J.
The SC-FDMA multiple access imposes two constraints on the resource assignment: resource exclusivity and resource adjacency.The former constraint assures that the same RB cannot be shared by multiple terminals within a cell.The resource adjacency constraint demands that the RBs assigned to a given terminal should be adjacent to each other in the frequency domain.This condition is needed in order to obtain low PAPR.Note that the former constraint is present in the OFDMA system with single antennas while the latter is particular to the SC-FDMA systems.
The adjacency constraint limits the total number of possible assignment in the system.In fact, the work [7] shows that the total number of resource assignment patterns that can be build with N RBs is As an example, with N = 4 the possible group of RBs or assignment patterns are {1}, {2}, {3}, {4}, {1, 2}, {2, 3}, {3, 4}, {1, 2, 3}, {2, 3, 4}, {1, 2, 3, 4} and {∅}.We assume that P is a set with all resource assignment pattern indices.According to this, instead of modeling the assignment of a specific RB to a terminal, we consider in this work the assignment of a resource assignment pattern to a terminal.In order to model this, we define the matrix A whose element a n,p with n ∈ N and p ∈ P assumes the value 1 if the RB n belongs to the assignment pattern p, and 0 otherwise.The resource assignment is modeled by X that is a J × P matrix whose element x j,p with j ∈ J and p ∈ P assumes the value 1 if the assignment pattern p is associated with terminal j and 0 otherwise.
The SNR experienced in the link between the BS and terminal j when transmitting on the z th subcarrier of RB n, γ j,z,n , is given by where c is the number of subcarriers per RB, P is the total transmit power available at the terminal j, α j represents the contributions of path gain and shadowing in the link between the BS and terminal j, σ 2 is the noise power at the BS receiver in the bandwidth of a subcarrier, and finally, h j,z,n is the frequency response of the channel between the BS and the terminal j on the z th subcarrier of RB n with ||•|| returning the absolute value of its argument.Note that the transmit power is not optimized in this study.As pointed out in [4], [25], the gain obtained by power allocation is marginal when another adaptive mechanism is applied such as adaptive RB assignment.
Due to the single-carrier nature of SC-FDMA scheme, the receiver should employ frequency domain equalization in order to combat Inter Symbol Interference (ISI).Assuming that Minimum Mean Square Error (MMSE) equalizer is used, the effective SNR perceived by the receiver when data is transmitted by terminal j on the RBs that belongs to assignment pattern p, γ MMSE j,p , is shown in the following [26]: where N p is the set of RBs that compose the assignment pattern p and | • | denotes the cardinality of a set.
In order to take advantage of different channel conditions, we assume that the terminals employ link adaptation that consists in adapting the transmit parameters such as modulation and coding schemes to achieve higher data rates or decrease error rate.In this work we assume that the mapping between the effective SNR and transmit data rate is given by a function f (•).Therefore, the transmit data rate of terminal j when transmitting with assignment pattern p is given by We highlight that the same transmission scheme should be employed in all RBs of a given assignment pattern allocated to terminal j ∈ J .

A. URM
In this article we revisit the URM problem that was first formulated in [7].The problem formulation is reproduced here for the sake of didactic.According to the definitions in section III, the total data rate maximization problem to be solved at each TTI can be formulated as subject to x j,p ∈ {0, 1}, ∀j ∈ J and ∀p ∈ P.
The objective function shown in (5a) is the total uplink data rate transmitted by the terminals.Constraints (5b) and (5d) assure that RBs are not reused within the cell, while constraint (5c) guarantees that only one assignment pattern is chosen by each terminal.

B. CRM
The popularity of fixed networks with very high data rates motivated the development of several data services that demand exchange of different multimedia information.The development of mobile networks has opened the possibility of having access to these services on mobile devices.However, different from wired networks, in mobile networks the system operator has to deal with limited resources such as frequency bandwidth and power, and the unpredictable nature of the communication channels.
From the operator's point of view it is important to provide the different services with a sustainable quality.In order to measure the quality level in which each service is provided in the network, system operators could adopt the QoS management strategy of considering minimum user satisfaction ratios for each service.In this way, in order to consider that a given service is provided with acceptable quality, a minimum percentage of the terminals are considered satisfied based on QoS requirements [20], [21], [27].Motivated by this, we also study here the total uplink transmit data rate maximization subject to minimum satisfaction guarantees for each provided service (or shortly, CRM).In the following, we define some other important variables before presenting the studied problem in the optimization form.
We denote by t j the required data rate by terminal j at the current TTI.In order to model the per-service satisfaction guarantees we assume that a minimum of k s terminals should be satisfied after resource assignment solution.A terminal is satisfied if its allocated data rate is higher than or equal to its the data rate requirement t j .Note that the indices of the terminals in x j,p , r j,p and in t j are sequentially disposed according to the service.Consequently, service 1 is composed of the terminals from j = 1 to j = J 1 , service 2 is composed of the terminals j = J 1 + 1 to j = J 1 + J 2 , and so on.
According to the previous considerations, the CRM resource assignment problem can be formulated by adding the following constraint to the optimization problem (5): where u(x, b) is a step function at b that assumes the value 1 if x b and 0 otherwise.The constraint (6a) states that a minimum number of terminals should be satisfied for each service.

A. URM
Problem ( 5) is an Integer Linear Problem (ILP) that in general cannot be solved optimally with polynomial-time complexity.According to [15], the simple constraint of resource adjacency is sufficient to make the problem NP-hard.However, the optimal solution to this kind of problem can be found by standard numerical methods such as the Branch and Bound (BB) algorithm [28].The 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 BB method grows exponentially with the number of constraints and variables.In problem (5) we have J • P variables and J + N constraints, which may assume large values even for small numbers of terminals and RBs.

B. CRM
The CRM problem belongs to the class of non-linear combinatorial optimization problems.In general, the global optimal solution of those optimization problems cannot be obtained easily.
In the following, we reformulate the CRM problem by eliminating the non-linear constraint (6a) with the addition of new optimization variables and constraints.We define ρ j as a (binary) selection variable that assumes the value 1 if terminal j is selected to be satisfied and 0 otherwise.According to this, the CRM problem can be reformulated as follows: subject to x j,p ∈ {0, 1}, ∀j ∈ J and ∀p ∈ P, j∈Js Note that we replaced the constraint (6a) by the constraints (7e) and (7f) in problem (7).In the following, we will write the studied problem in a standard form by representing the problem variables and inputs in vector and matrix form.Note that we utilize vertical and horizontal lines when defining vectors and matrices so as to ease the comprehension of their structure.Consider that T .We define the optimization variable . Note that the vectors x and ρ can be obtained from y through the use of the following relations: The objective function (7a) can be written as a T A 1 y where . The constraint (7b) can be written as BA 1 y = 1 N where B = 1 T J ⊗ A, 1 k is a column vector with length k composed of 1's and ⊗ is the Kronecker product operator.The second constraint (7c) can be written as with ) and 0 k is a column vector with length k composed of 0's.Finally, the last constraint (7f) can be stated as GA 2 y k where Please, notice that the blocks being block-diagonally organized in C, E, and G are vectors so that the resulting matrices are not necessarily square matrices as often expected from block diagonal matrices.
According to the vectors and matrices defined earlier, we can write the studied problem as y is a binary vector, where T T and e = 0 T J k T T .Based on the previous development, we have transformed the non-linear version of the CRM problem into a linear integer (binary) optimization problem.We have accomplished that at the cost of the addition of new optimization variables and constraints.This problem can be solved by standard methods such as the BB algorithm [28].In problem (9) we have J • P + J variables and 2J + N + S constraints, which may assume large values even for small numbers of terminals, RBs and services.

VI. LOW-COMPLEXITY HEURISTIC SOLUTIONS
Motivated by the high computational complexity to obtain the optimal solutions to the studied problems, we present in sections VI-A and VI-B low-complexity solutions to the URM and CRM problems, respectively.

A. URM
The total data rate maximization problem with OFDMA has a simple optimal solution that consists basically in assigning an RB to the terminal with the best channel quality on it.However, this solution in general does not comply with the adjacency constraint present in SC-FDMA uplink.In fact, all RB assignments that comply with the adjacency constraint also obey the exclusivity constraint.However, the converse is not necessarily true.Also, it is expected that RB assignments that comply with only exclusivity constraint are more spectrally efficient than RB assignments that obey both exclusivity and adjacency constraints due to the larger search space of the former.Basically, the adjacency constraint restricts the search space of possible assignments and, therefore, limits the efficiency of resource assignment.
According to the reasoning stated here, our proposed solution starts by solving the studied problem respecting exclusivity constraint but relaxing the adjacency one.Then, we iteratively modify the initial allocation in order to obtain an RB assignment that is in accordance with the adjacency constraint.This is illustrated in Figure 1 where we present a hypothetical instance of our solution.On the right side of this figure we show the space of all possible RB assignments where we highlight two specific regions that respect the exclusivity and the adjacency constraints.The adjacency constraint is represented by the orange area whereas the exclusivity constraint is represent by the grey area as well as the orange area, i.e., the exclusivity constraint region contains the adjacency constraint region.The black circles represent specific RB assignments.On the left side of this figure we present an arrow that illustrates the spectral efficiency achieved by each RB assignment that consists in the objective of the optimization problem to be solved.
In Figure 1, "solution 1" represents the initial solution after solving the studied problem with relaxed adjacency constraint.Then, this initial solution is modified in order to get a feasible solution ("solution 4") after three iterations.As it will be explained later, at each iteration some RB combinations are generated and the most efficient one is chosen.The main objective is to obtain a feasible and spectrally efficient solution that obeys both SC-FDMA constraints and that additionally is found in a low number of iterations in order to reduce computational complexity.Figure 2 presents the simplified flowchart of the proposed algorithm.The step (1) of the algorithm consists in finding the terminal with best channel quality (or SNR) on each RB.This assignment corresponds to the solution to the studied problem when the network employs OFDMA as the multiple access method.Therefore, this solution in general does not consider the adjacency constraint and is not a feasible solution to the studied problem in the SC-FDMA uplink scenario.

Set of all RB assignments
In step (2) we introduce the concept of Virtual Resource (VR).A VR consists in a set of contiguous RBs assigned to a given terminal.Note that a VR belongs to the terminal that owns the contiguous RBs.Based on the RB assignment from step (1), we build the VRs and associate them with the terminals.Figure 3 illustrates steps (1) and (2) with an example where we have 3 terminals and 10 RBs.In this example we can see that the RB assignment after step (1) is not in accordance with the adjacency constraint.Nevertheless, there are some contiguous RBs that were assigned to the same terminal, e.g., RBs 2 and 3, and 7 to 9 assigned to terminal 1, and RBs 5 and 6 assigned to terminal 3.As illustrated in Figure 3, those contiguous RBs assigned to the same terminal are redefined as VRs after step (2) of the proposed solution.In step (3) of the proposed algorithm we evaluate if the current RB or VR assignment complies with the adjacency constraint.Basically, this constraint is fulfilled if the number of assigned VR to each terminal is lower than or equal to one.In the example of Figure 3 we can see that this constraint is not fulfilled.If the adjacency constraint is fulfilled we have a feasible solution, otherwise we need to generate new VR combinations based on the current ones.
In step (5) we generate new VRs by combining the current ones and calculate an efficiency metric in order to evaluate which combination or new VR would be more beneficial to the system.In order to generate the new VRs combinations we use the following rules on all current VRs: In Figure 4 we illustrate the new VRs that can be generated based on the example of Figure 3.Each new possible VR is highlighted by dotted lines.The second combination for terminal 1, and first and second combinations for terminal 2 are examples of the application of rule 1. Rule 2 is applied on the first combination for terminal 1 and the first combination for terminal 3. Finally, rule 3 was applied on the third combination for terminal 1 and second combination for terminal 3.In the example of Figure 4 we have 7 new VR combinations that should be evaluated regarding their contribution to the objective of maximizing the total data rate.In order to measure the contribution of a new VR combination to the spectral efficiency, we calculate the effective SNR of the subcarriers contained in the new VR based on equation (3).Therefore, if the new VR belongs to terminal j ⋆ and is composed of the RBs from n ′ to n ′′ the metric associated with this new VR is given by where ϕ URM a is the metric of the a th VR combination.Once the metrics associated with each new VR combination are calculated, we proceed to step (6) where we choose the new VR combination with highest metric.Then, the VR assignment is updated according to this choice and the feasibility test is carried out again.This procedure is repeated until a feasible solution is found.It is important to highlight here that the proposed algorithm always converges to a feasible solution as after each iteration the number of VRs decreases.

B. CRM
In this section we propose a low-complexity solution to the CRM problem.The solution is split into two parts: Unconstrained Maximization and Reallocation.In the Unconstrained Maximization part, the main idea is to firstly solve the problem (7) without the satisfaction of constraints (7e) and (7f), i.e., solve the URM problem.Note that to solve this problem we can use the optimal approach shown in section V-A, any of the solutions to the URM problem presented in the literature review (section II), or the proposed solution in section VI-A.Motivated by the performance results shown in section VII of this article, we have chosen our proposed solution to be used here.
If the solution of the Unconstrained Maximization part is able to satisfy the minimum satisfaction constraints we have found an efficient solution to our problem.Nevertheless, this in general is not the case since the solution of this problem tends to assign most of the resources to the terminals in better channel conditions while the other terminals starve of resources.In this case, the Reallocation part consists in changing the initial assignment, i.e., the solution of total data rate maximization problem, by exchanging resources among terminals in order to get the required minimum satisfaction constraints satisfied.The resource reallocation in this part should obey the adjacency constraint required by SC-FDMA.The flowcharts of the first and second parts are depicted in Figures 5 and 6, respectively, and each part of our proposed solution is detailed in the following.
In step (1) of Figure 5 we define the auxiliary (B) and available (A) terminal sets that are initialized with the set of all terminals (J ).The auxiliary terminal set B is composed of the terminals that can be taken out of the allocation process or disregarded without infringing the minimum satisfaction constraints.By disregarding we mean that this terminal would get no resource in the current assignment phase or TTI.Basically, when this set is empty no more terminals can be disregarded since it would be impossible to guarantee that the number of satisfied terminals is not lower than k s for each service s ∈ S. The available terminal set A is composed of the terminals that were not disregarded in part 1 of the proposed solution (2) Maximum rate allocation proposed in section VI-A with the terminals from the available terminal set (3) From the terminals of the available terminal set define the satisfied and unsatisfied terminals (4) Is the satisfaction constraint fulfilled for all services?(6) Take out from the available and auxiliary terminal sets the terminal with the poorest channel quality and highest requirement in the auxiliary terminal set (7) Can another terminal be disregarded from the same service of this terminal?(8) Take out from the auxiliary terminal set all terminals from this service (9) Is the auxiliary terminal set empty? (10) Is there any satisfied terminal?(12) Define the donor and receiver terminal sets and will be candidates to receive RBs in the second part.As explained earlier, in the Unconstrained Maximization part, the main objective is to get an spectral efficient solution that achieves a high objective function presented in (7a), i.e., total transmit data rate.Therefore, in step (2) we run a solution to the total data rate maximization problem presented in section VI-A with the terminals from the available terminal set A.
Based on the solution obtained in the previous step, in step (3) the terminals are classified in two groups: the unsatisfied terminals that are the ones whose allocated data rate is lower than the data rate requirement and the satisfied terminals composed of the remaining terminals.Then, in step (4) we evaluate whether the required minimum satisfaction constraint is fulfilled for each service.In other words, in this step we check if the solution found in step ( 2) is a solution to the problem (7).If so, we have found an efficient solution (step (5)).However, this in general is not the case as explained previously.In this case, we disregard in step (6) the terminal from the auxiliary terminal set B that demands more RBs to achieve the required data rate in average.Mathematically, this terminal can be found as follows As commented earlier, the number of disregarded terminals from each service should take into account the required minimum number of satisfied terminals for that service.Basically, for service s ∈ S the maximum number of terminals that can be disregarded is J s − k s .Therefore, in step (7) we evaluate whether the service from which the disregarded terminal belongs can have another terminal disregarded without infringing the minimum satisfaction constraint of the considered service.
If the number of disregarded terminals from that service is the maximum one allowed, no terminal from that service can be disregarded anymore and we should take out from the auxiliary terminal set B all the terminals from that service in step (8).
Otherwise, the allocation in step (2) is redone.
In step (9) we evaluate whether the auxiliary terminal set B is empty.If not, it means that more terminals could be disregarded without compromising the required minimum satisfaction guarantees.In this case, the allocation performed in step (2) is executed.Otherwise, no terminal could be disregarded in part 1 of our solution and therefore we should check in step (10) whether there is at least one terminal with allocated data rate higher than or equal to its data rate requirement, i.e., a satisfied terminal.This is necessary since in the part 2 of our solution, satisfied terminals with excess of resources will donate RBs to the other unsatisfied terminals that were not disregarded.In the context of the CRM problem, we define an outage event when an algorithm is not able to provide a solution that obeys the constraints of problem (7), especially the constraints (7e) and (7f) (or alternatively (6a)).An outage event is achieved in step (11) when there is no satisfied terminal in the first part of the proposed solution.Basically, our solution is not able to find a feasible solution to the studied problem.
The last step of the Unconstrained Maximization part, step (12) we define two new terminal sets based on the available terminal set A: the receiver (R) and the donor (D) terminal sets.The former consists in the terminals from the available terminal set A that got allocated a data rate lower than the required data rate (unsatisfied terminals) while the latter is composed of the remaining terminals from the available terminal set A (satisfied terminals).As it will be shown next, some RBs from terminals in the donor terminal set D will be donated to the terminals from the receiver terminal set R.
The Reallocation part depicted in Figure 6 works in a terminal-by-terminal basis by selecting a terminal and evaluating possible RB assignment patterns that can satisfy it without compromising the QoS of the terminals already satisfied.Therefore, in step (1) we select the terminal with worst average (among all RBs) channel condition.The idea of this procedure is to give these terminals the opportunity and priority to take their best and possible few RBs in good channel condition.In step (2), we identify the RBs that can be reassigned to the selected receiver terminal.We have two possibilities here: • Receiver terminal has got an RB or a block of RBs in the first part of the algorithm (case i): Assume that the selected terminal has got assigned the block of RBs from n ′ to n ′′ with n ′ ≤ n ′′ and n ′ = 1 and n ′′ = N .In this case, the RBs that are available for reassignment are n ′ − 1 and n ′′ + 1.Note that if n ′ = 1 or RB n ′ − 1 belongs to another receiver terminal, the RB n ′ − 1 is not available for reallocation.Similarly, if n ′′ = N or RB n ′′ + 1 belongs to another receiver terminal, the RB n ′′ + 1 is not available for reallocation.• Receiver terminal has not got any RB in the first part (case ii): In this case, the available RBs for reallocation are the first and the last RBs of the blocks assigned to each donor terminal in the first part of the proposed solution.
The reasoning considered to define the available RBs is as follows.In the case i, as the receiver terminal has got an RB or a block of RBs and so as not to break the adjacency constraint, the available resources are the ones adjacent to the RBs already assigned to the receiver terminal.In the case ii, the choice of the available RBs was defined in order not to break the adjacency constraint on the RBs already assigned to the donor terminals.Therefore, the available RBs are the ones at the corner of the assigned block to each donor terminal.In Figure 7 we illustrate four hypothetical assignments after the first part of our proposed solution.In each example we show the available RBs when terminal 2 is chosen to get RBs in the second part of our solution.Consider that terminals 1 and 4 are satisfied (donor terminals) and that terminals 2 and 3 are unsatisfied (receiver terminals).The first three examples illustrate the case i, i.e., terminal 2 has got at least one RB in the part 1 of our proposed solution, while in example 4 we illustrate the case ii.Note that in the second example RB 7 is not available for reassignment because it belongs to another receiver terminal.In step (3) we check if at least one RB is available for reassignment.If there is no available RB the algorithm is not able to find a feasible solution.In step (4) we initialize the variable i and in step ( 5) we generate all possible contiguous RB groups of size i based on each available RB identified on step (2).The use of variable i will be clarified later.For i = 1 the possible contiguous RB groups are the available RBs themselves.For i > 1 we have more possibilities for each available RB. Basically, for each available RB we generate the contiguous RB blocks that (1) includes the available RB and (2) that do not include any RB that belongs to receiver terminals.
In Figure 8 we illustrate the possible RBs groups that can be composed based on the second available RB of the fourth example presented in Figure 7 with i equal to 1, 2 and 3.Moreover, in Figure 9 we show the possible RB groups for the available RB in the second example of Figure 7 for different values of i.
In step (6) we verify if at least one feasible RB group exists, i.e., an RB group that includes the available RB and that does not include any RB that belongs to receiver terminals.Then, in step (8) we calculate the efficiency of each generated RB group in step (5) for each available RB identified in step (2).Considering that j * is the index of the chosen receiver in step (1) and that the RB group is composed of the RBs from n ′ to n ′′ , the efficiency metric associated with this RB group, ϕ CRM a , is given by equation (10).Note that, ϕ CRM a is the efficiency metric of the a th RB group.This efficiency metric is equal to the effective SNR of the subcarriers that compose the RB group (see equation ( 3)).
After calculating the efficiency metric for each generated RB group we choose, in step (9), the RB group with highest efficiency metric.However, before reassigning the selected RB group to the receiver terminal we check in step (10) if the reassignment of the chosen RB group would leave the donor terminal(s) unsatisfied.If so, the selected RB group is discarded and the next RB group with highest efficiency is selected.If the reassignment of the selected RB group does not lead the donor terminals to unsatisfaction, we check if the receiver terminal would be satisfied with the reassignment (step ( 13)).In case the receiver terminal would not be satisfied we increment the variable i, i.e., we increase the number of RBs in the RB groups.By increasing the number of RBs in the RB groups, we increase the potential data rate of the receiver terminal and the possibility of being satisfied.
Once we choose an RB group whose reassignment does not affect the satisfaction state of the donor terminals, and satisfy the selected receiver terminal, we execute the reassignment and update the terminals' data rates and the terminal sets in step (15).The algorithm finds a feasible solution when all the terminals in the receiver terminal set are satisfied.
As presented previously, the proposed algorithm can achieve outage events that means that no solution that satisfy the required minimum satisfaction constraints could be found.The reason for this can be due to (1) the suboptimality of the proposed solution or (2) to the infeasibility of the problem itself, i.e., there is no feasible solution.In the last case, even the optimal solution obtained by the method presented in section V is not able to fins a feasible solution.In order to deal with outage events we could relax either the required minimum satisfaction per service (k s ) of low priority services or the terminals' required data rates (t s ).

VII. PERFORMANCE EVALUATION
In this section we present the simulation setting and performance metrics in section VII-A and the simulation results and analysis in section VII-B.

A. Simulation assumptions
The main aspects of an SC-FDMA uplink system presented in section III were considered in the computational simulator.We assume that an SC-FDMA RB consists of 12 adjacent subcarriers in the frequency domain and is 1 ms long in the time domain.The mapping between the channel quality state, i.e., SNR, and transmit data rate shown in equation ( 4) is modeled based on the upper bound Shannon capacity [29] shown in the following where B is the frequency bandwidth of an RB considered as 300 kHz and Γ = − ln (5 • BER) /1.5 where BER is   Different scenarios were chosen in order to evaluate the proposed solutions for URM and CRM problems.In Tables II and III we present the specific parameters for URM and CRM simulations, respectively.Note that the required data rate and other QoS-related variables are not critical for URM problem.So as to evaluate the proposed solutions to the CRM problem in different contexts, we selected some simulation scenarios where the number of services (S), the number of terminals per service (J s ), and the required minimum number of satisfied terminals per service (k s ) are changed.Note that increments in the offered load are emulated by increasing the data rate requirements of the terminals.Furthermore, in the figures of section VII-B we denote the i th scenario as SCEi.The algorithms simulated in this section for the URM problem are: • Our proposed solution presented in section VI-A and identified in the plots by URM Proposal; • The optimal solution to the URM problem obtained by the method shown in section V-A.In the plots, this solution is identified as URM OPT; • The classical solution to the URM problem presented in [7].
This solution is identified as Wong Alg. in the plots; • The RME algorithm proposed in [8].This algorithm achieved the best performance in spectral efficiency according to the survey in [10].This solution is identified as RME in the plots; • The solution proposed in [9].This is a recent work that proposed an efficient solution compared to other solutions in the literature.This solution is identified as Zhang Alg. in the plots.The algorithms simulated for the CRM problem are3 : • Our proposed solution presented in section VI-B and identified in the plots by CRM Proposal; • The optimal solution to the CRM problem obtained by the method shown in section V-B.In the plots, this solution is identified as CRM OPT.
• The optimal solution to the URM problem (identified in the plots as URM OPT).This solution provides an upper bound on the spectral efficiency.
In order to solve ILP problems we used the IBM ILOG CPLEX Optimizer [30].The channel realizations were the same for all simulated algorithms in order to get fair comparisons.The choice of the number of terminals, RBs and services are limited by the computational complexity to obtain the optimal solutions.
The main performance metrics used to evaluate the studied algorithms are: • Total data rate: This metric is related to the objective function of problems ( 5) and (7).The total data rate is the sum of the data rates transmitted by all terminals in the uplink in a given snapshot; • Outage rate (only CRM problem): This metric is related to the required minimum satisfaction constraints of problem (7).Outage rate is defined as the ratio between the number of snapshots with outage events and the total number of simulated snapshots.An outage event happens when a specific solution cannot manage to find a feasible solution, i.e., the algorithm does not find a solution fulfilling the constraints of problem (7).The outage rate performance metric shows the capability of the algorithms in finding a feasible solution to the CRM problem; • Individual user data rates: This metric represents the individual data rates achieved by each terminal.The analysis of this metric allows us to obtain some insights about fairness in resource allocation.

1) URM:
In Figure 10 we present the average total data rate versus the number of terminals for the URM OPT, Wong Alg, Zhang Alg, RME and the proposed solution for the URM problem with different number of RBs.Firstly, we can see that the total data rate for all algorithms is improved as a result of the higher number of RBs or bandwidth.Another general observation is that for the same number of RB, the total data rate increases due to the multi-user diversity, i.e., the higher the number of terminals, the higher is the probability of terminals with good channel qualities.
When the relative performance of the considered algorithms is concerned, we can see that independently of the number of RBs, Wong Alg.presents the worst performance among all algorithms followed by Zhang Alg. and RME.In fact, Wong Alg. is a greedy algorithm that is not able to capture the quick changes in the frequency channel response of the terminals.Due to the frequency domain equalization that leads to the effective SNR shown in equation ( 3), subcarriers (or RBs) with poor SNR are capable of degrading the effective SNR of a block of subcarriers (or RBs) even when the other subcarriers of the contiguous block are with high SNR.Zhang Alg. and RME try to solve this problem with different heuristics that lead to better results.However, the best performance among the suboptimal solutions is achieved by our proposed solution.Basically, our proposed solution directly takes into account the effect of the frequency domain equalization in the RB assignment.According to this, our proposed solution avoids assigning RBs with low SNR together with RBs with high SNRs since this is not efficient in terms of transmit data rate.Other reason for the good performance of the proposed solution is the RB assignment process that generates some possible RB assignment combinations and chooses the most efficient one.
In Figure 10, we can see that the performance losses in the total data rate of Wong Alg.(worst performance) relative to the optimal solution is between 17.4% and 21.4%, and 33.8% and 37.8% for 12 and 24 RBs, respectively.Performance losses relative to the optimal solution between 11.4% and 12.0%, and 22.1% and 24.4% are obtained by RME algorithm (third best performance) for 12 and 24 RBs, respectively.Finally, the lowest performance losses to the optimal solution are achieved by the proposed solution: for the simulated scenarios the performance loss is no larger than 6.5%.
In Appendices A-A and A-C we present the worst-case computational complexity of the solutions URM OPT and URM Proposal, respectively.The complexity of the optimal solution is exponential in terms of the input variables, O 2 JP .The URM Proposal has a polynomial computational complexity given by O (J.N ) for scenarios where J > N or O N 2 in case J < N .The complexity of Wong Alg and the Zhang Alg solutions are third-order polynomials given by O J.N 2 and O J • (N − Q) 2 , respectively, where Q represents the ratio between the available bandwidth and the channel coherence bandwidth [7], [9].The worst-case computational complexity of RME solution is O (J.N ) [8].According to the presented results and computational complexity analysis, we can see that the proposed suboptimal solution is feasible for the practical use in the resource assignment task due to its good performance-complexity trade-off compared to the optimal and suboptimal solutions.
2) CRM: In Figure 11 we show the outage rate versus the data rate required by all terminals in scenarios 1, 2 and 3 (only one service) for the algorithms CRM OPT, URM OPT and the proposed solution for the CRM problem.
Firstly, we can see that the higher the required data rate of the terminals, the higher the outage rate is, as expected.Moreover, we can see that the outage rate for the same algorithm increases from scenarios 1 to 3. The reason for this is the variation of the minimum number of terminals that should be satisfied, k s .While in the first scenario, 6 out of 8 terminals should get assigned RBs in order to become satisfied, in the third scenario, all 8 terminals should have their data rate requirements fulfilled.Another general observation is that the URM OPT solution is not able to obtain low outage rates even for low data rate requirements.This is also an expected behavior since this algorithm is solution to the total data rate maximization that is a QoS-unaware problem.
In Figures 12 and 13 we present the outage rate versus the data rate required by all terminals for the algorithms CRM OPT, URM OPT and proposed solution in scenarios 4, 5 and 6 (two services), and 7, 8 and 9 (three services), respectively.
As in the outage rates presented in Figure 11, we can see in Figures 12 and 13 that the URM OPT solution presents high  outage rates and poor resource distribution.Furthermore, in those figures we can see again that the outage rate increases as the requirements on the minimum number of satisfied terminals augments.Another important observation that can be drawn from the observation of Figures 11 and 12 is the impact of the number of services on the outage rates.In scenarios 2 and 5 the total number of terminals that should be satisfied is the same: 7 terminals.However, observing Figures 11 and  12 we can see that the achieved outage rates for CRM OPT solution are not the same.The configuration of those two scenarios is similar with only one difference: in scenario 5 the terminals are split into two services while all terminals belongs to the same service in scenario 2. This interesting observation shows the additional complexity of solving the studied problem as the number of services increases.
The last comments about the outage rate presented in Figures 11, 12 and 13 are concerned with the relative performance of the proposed solution and CRM OPT.We can observe that the proposed solution is able to keep a relatively small outage rate difference to the CRM OPT solution in low and medium loads in single and multiservice scenarios.Focusing on the required data rate where the corresponding CRM OPT solution has an outage rate of 10%, we can see that the difference in outage rate between our proposed solution and the CRM OPT solution in Figure 13 are of 1.3%, 1.4% and 1.7% in scenarios 7, 8 and 9, respectively.
The remaining plots illustrate the Cumulative Distribution Function (CDF) of the total data rate for specific data rate requirements considered in the abscissas of the figures regarding the outage rate performance.These results illustrate how spectral efficient are the algorithms while the outage rate performance metric shows the capability of the algorithms in finding a feasible solution to the CRM problem.In order to build the CDF of all algorithms we consider the samples (total achieved data rate) of the snapshots in which our proposed and the CRM OPT solutions were able to find a solution (no outage).Note that possibly many of the samples used to build the CDFs for URM OPT are in outage.
In Figure 14 we present the CDFs of the total data rate for CRM OPT, URM OPT and the proposed solution in the single service scenarios 1 and 2 for the required data rate of 20kbps and 60kbps.In Figure 15 we present the CDFs of the total data rate for CRM OPT, URM OPT and the proposed solution in the two-services scenarios 4 and 5 for the required data rate of 20kbps and 60kbps.Notice that the difference between scenarios 1 and 2 is the required minimum number of satisfied terminals per service (k s ).Therefore, the performance of the solution URM OPT is the same in those scenarios since those solutions do not depend on the k s parameter.The same comment is valid for scenarios 4 and 5.
Firstly, we can see that the URM OPT solution provides higher total data rates in both Figures 14 and 15.This is a general observation that comes at the cost of higher outage rate as shown in Figures 11 and 12. Another observation that can be noted is related to the impact of the required data rate on the achieved total data rate of the CRM OPT and proposed solutions.In order to illustrate that, the performance loss of CRM OPT related to the URM OPT at the 50 th -percentile of the total data rate is of 14.8% at the required data rate of 20 kbps in scenario 2. When the required data rate is of 60 kbps the performance loss of CRM OPT increases to 25.4%.This aspect shows that in order to satisfy increased required data rates, the most efficient RB assignments become infeasible and, therefore, the spectral efficiency of the system is compromised.
Another aspect that impacts on the achieved total data rate is characterized in Figure 16 where we present the CDFs of the total data rate for CRM OPT, URM OPT and the proposed solution in the three-services scenarios 7, 8 and 9 for the required data rate of 20 kbps.The difference between scenarios 7, 8 and 9 is the required minimum number of satisfied terminals (k s ).We can see that k s also impacts on the achieved total data rate.In fact, the achieved total data rate increases as the required number of satisfied terminals decreases.The performance gain of CRM OPT solution in scenario 8 and 7 compared to scenario 9 in the 50 th -percentile of the total data rate are of 14.6% and 32.1%, respectively.Therefore, as the required data rate, the required minimum number of satisfied  terminals also limits the choice of efficient RB assignments and, consequently, decreases the achieved spectral efficiency.Focusing on the performance of the proposed solution we can draw some comments.At low required data rates, i.e., required data rates that leads to small outage rates (< 10%), the proposed solution is able to maintain a reasonable performance gap to the CRM OPT solution.As an example, the performance loss at the 50 th -percentile of the total data rate of the proposed solution compared to CRM OPT is of 17% in scenario 1 for the required data rate of 20 kbps.For required data rates that leads to higher outage rates the performance loss is increased.It is important to mention here that the increased performance losses at high loads are not critical since these loads are not of interest for practical purposes due to the high outage rates.
The last result to be presented in this section concerns the CDF of users' data rates for the simulated algorithms in Figure 17.In Figure 17(a) and 17(b) we present the CDF of user data rates in scenarios 7 and 8, respectively, for a required data rate of 40 kbps.These figures provide important insights about fairness and the reasoning of the algorithms.First of   all, we can see that the URM OPT solution provides a high number of unsatisfied users without transmit data rate (about  60% of the terminals).This is a consequence of the URM problem whose focus is to maximize the total transmit data rate without QoS or satisfaction guarantees.On the other hand, the number of users without transmit data rate is about 22% and 11% in Figures 17(a) and 17(b), respectively, for the algorithms CRM OPT and CRM Proposal.Basically, according to the Table III, in scenario 8 we must satisfy 8 users from 9 leading to an unsatisfaction rate of approximately 11%.In scenario 7 we must satisfy 7 users from 9 which leads to an unsatisfaction rate of 22%.Observe in Figures 17(a) and 17(b) that approximately 78% (7/9) and 89% (8/9) of the users have a data rate higher than 40 kbps, respectively.
Although fairness is not the focus of this article, Figure 17 provides information about how the transmit data rate is distributed among users.According to the the Jain's fairness index [31], fairness increases as the users' transmit data rates become similar to each other.In the plots presented in Figure 17, the fairness increases with the steepness of the curve.Therefore, the CRM Proposal is fairer than the CRM OPT solution.
In Appendices A-B and A-D we provide the worstcase computational complexity of the CRM OPT and CRM Proposal solutions, respectively.The complexity of the CRM OPT solution is exponential in terms of the input variables: O 2 JP .On the other hand, the computational complexity of the proposed suboptimal solution is O s∈S k s N − s∈S k s 3 .As a general analysis of the outage rates and total data rates, as well as the computational complexity of the involved solutions, we can see that our proposed solution achieves a good performance-complexity trade-off compared to the CRM OPT solution.

VIII. CONCLUSIONS AND PERSPECTIVES
In this article we studied two important Radio Resource Allocation (RRA) problems in the uplink of a wireless system employing Single Carrier -Frequency Division Multiple Access (SC-FDMA): Unconstrained Rate Maximization (URM) and Constrained Rate Maximization (CRM) problems.The URM problem is classical RRA problem that aims at maximizing the total system data rate whereas CRM problem consists in the maximization of the overall data rate subject to minimum satisfaction constraints per service.With SC-FDMA, the assigned Resource Blocks (RBs) to a terminal should be adjacent to each other in order to assure low Peak-to-Average Power Ratio (PAPR).
We have shown that the CRM problem can be formulated as a combinatorial non-linear optimization problem.Due to the high complexity of solving this kind of problem, we managed to convert this problem to an Integer Linear Problem (ILP) by adding new optimzation variables and constraints.Although ILP problems can be solved by standard techniques, their exponential computational complexity is not feasible for practical scenarios.In previous works, it was shown that the URM problem can also be formulated as an ILP problem.Therefore, we proposed two heuristic solutions based on simple and reasonable ideas to solve both problems with lower computational complexity.
Simulation results were presented for the proposed solutions where we could see that the heuristic solutions were able to perform closely to the optimal solution in low and moderated loads for both problems.The proposed heuristic solution for URM problem presented a performance loss not higher than 6.5%.The proposed heuristic solution to the CRM problem showed a maximum difference in outage rate to the optimal solution of 1.7% for the three-service scenario when the optimal solution has an outage rate of 10%.Moreover, the computational analysis of the involved algorithms has shown that our proposals are feasible to be implemented in real time networks where the complexity is a relevant aspect.
As perspectives of this work we can mention the consideration of other Quality of Service (QoS)/Quality of Experience (QoE) requirements that take into account delay, for example, as well as the modeling of system restrictions such as the limitation of transmit/receive buffer levels.Furthermore, the analysis of the presented problem in the context of ultra dense networks and multi-user Multiple Input Multiple Output (MIMO) systems seems as promising perspectives.

APPENDIX A COMPUTATIONAL COMPLEXITY OF STUDIED ALGORITHMS
The worst-case computational complexity of the optimal and heuristic solutions proposed in this article to the URM and CRM problems are presented in sections A-A, A-B, A-C and A-D, respectively.
The computational complexity considered in the following 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 (•).As in [25], [32], we consider summations, multiplications and comparisons as the most relevant and time-consuming operations.

A. Computational complexity -optimal solution of URM problem
The optimal solution to the URM problem presented in (5) can be obtained by using the Branch and Bound (BB) algorithm.In that problem there are JP variables and J + N constraints.The required total number of operations is √ 2 (JP ) 2 (JP + J + N ) (2 (JP ) (J + N ) −3 (J + N ) + JP ) .
Retaining the term of higher order we have that the worstcase computational complexity is O 2 JP .

B. Computational complexity -optimal solution of CRM problem
The optimal solution to the CRM problem presented in (7) can be obtained by using the BB algorithm.In that problem there are JP + J variables and 2J + N + S constraints.The required total number of operations is √ 2 (JP +J) 2 (JP + 3J + N + S) (2 (JP + J) (2J + N + S) −3 (2J + N + S) + JP + J) .
Retaining the term of higher order we have that the worstcase computational complexity is O 2 JP .

C. Computational complexity -heuristic solution to URM problem
The proposed solution to the URM problem is shown in Figure 2. The most time consuming operations in this algorithm are • Search for the terminal with best channel quality on each RB in step (1) of Figure 2: N. (J − 1) comparisons; • Calculation of the metric for each new Virtual Resource (VR) combination in step (5) of Figure 2: The term of higher order is N 2 ; • Choice of the new VR with the highest metric value: The term of higher order is N 2 .Therefore, the overall worst-case computational complexity of this algorithm is O (J.N ) for scenarios where J > N or O N 2 in case J < N .

Figure 1 .
Figure 1.Main idea of the proposed solution for the URM problem.

Figure 3 .
Figure 3. Illustration of steps (1) and (2) of the proposed algorithm with 3 terminals and 10 RBs to the URM problem.

Figure 4 .
Figure 4. Process for building new VRs based on the example of Figure 3.

Begin ( 1 )
Auxiliary terminal set and available terminal set are composed of all terminals

Figure 5 .
Figure 5. Flowchart of the first part of the proposed solution for the CRM problem: Unconstrained Maximization.

Figure 7 .
Figure 7. Illustration of the process for selecting the available resources for terminal 2.

4 RB group with i = 1 RB groups with i = 2 RB groups with i = 3 Figure 8 .
Figure 8. Illustration of the process to generate the RB groups based on the second available RB of the fourth example of Figure 7 considering i equal to 1, 2 and 3 for the CRM problem.

RB group with i = 1 RB groups with i = 2 RB groups with i = 3 Figure 9 .
Figure 9. Illustration of the process to generate the RB groups based on the available RB of the second example of Figure 7 considering i equal to 1, 2 and 3 for the CRM problem.

Figure 11 .
Figure 11.Outage rate for CRM OPT, URM OPT and the proposed solution with one service in scenarios 1, 2 and 3 for the CRM problem.

Figure 12 .
Figure 12.Outage rate for CRM OPT, URM OPT and the proposed solution with two services in scenarios 4, 5 and 6 for the CRM problem.

Figure 13 .
Figure 13.Outage rate for CRM OPT, URM OPT and the proposed solution with three services in scenarios 7, 8 and 9 for the CRM problem.
Data rate requirement of 60 kbps.

Figure 14 .
Figure 14.CDF of total data rate for CRM OPT, URM OPT and proposed solution with one service in scenarios 1 and 2 for the CRM problem.
Data rate requirement of 60 kbps.

Figure 15 .
Figure 15.CDF of total data rate for CRM OPT, URM OPT and proposed solution with two services in scenarios 4 and 5 for the CRM problem.

Figure 16 .
Figure16.CDF of total data rate for CRM OPT, URM OPT and proposed solution for required data rate of 20 kbps with three services in scenarios 7, 8 and 9 for the CRM problem.
Scenario 8 and data rate requirement of 40 kbps.

Figure 17 .
Figure 17.CDF of user data rates for CRM OPT, URM OPT and proposed solutions in scenarios 7 and 8 for the CRM problem.
Consider a given assigned pair (terminal j, VR v) and that v ′ is the lowest VR index greater than v that belongs to terminal j, and v ′′ is the highest VR index lower than v that belongs to terminal j.Based on VR v, two new VRs can be build.The first VR combination is composed of all VRs between VRs v and v ′ (including the VRs v and v ′ ).The second VR combination is composed of all the VRs between VRs v ′′ and v (including the VRs v ′′ and v).If for a given assigned pair (terminal j, VR v) only v ′ or v ′′ exists, then only one VR combination can be build.• Rule 2: If for a given assigned pair (terminal j, VR v) terminal j does not have any other VR with index lower than v, a new VR combination is composed of the VRs v − 1 and v.Note that in case v = 1 (leftmost) we cannot build a new VR combination; • Rule 3: If for a given assigned pair (terminal j, VR v) terminal j does not have any other VR with index higher than v, a new VR is composed of the current VR v and v + 1.Note that in case VR v is the last VR (rightmost) we cannot build a new VR combination.

Table I MAIN
SIMULATION PARAMETERS FOR PERFORMANCE EVALUATION.

Table II SPECIFIC
SIMULATION PARAMETERS CONSIDERED IN THE PERFORMANCE EVALUATION OF THE URM RESULTS.
Figure 10.Average total data rate versus the number of terminals for URM OPT, Wong Alg. and proposed solution considering 12 and 24 RBs for the URM problem.