 Research
 Open Access
 Published:
Power allocation, bit loading and subcarrier bandwidth sizing for OFDMbased cognitive radio
EURASIP Journal on Wireless Communications and Networking volume 2011, Article number: 87 (2011)
Abstract
The function of the Radio Resource Management module of a Cognitive Radio (CR) system is to evaluate the available resources and assign them to meet the Quality of Service (QoS) objectives of the Secondary User (SU), within some constraints on factors which limit the performance of the Primary User (PU). While interference mitigation to the PU spectral band from the SU's transmission has received a lot of attention in recent literature; the novelty of our work is in considering a more realistic and effective approach of dividing the PU into subbands, and ensuring that the interference to each of them is below a specified threshold. With this objective, and within a power budget, we execute the tasks of power allocation, bit loading and sizing the subcarrier bandwidth for an orthogonal frequency division multiplexing (OFDM)based SU. After extensively analyzing the solution form of the optimization problems posed for the resource allocation, we suggest iterative algorithms to meet the aforementioned objectives. The algorithm for subcarrier bandwidth sizing is novel, and not previously presented in literature. A multiple SU scenario is also considered, which entails assigning subcarriers to the users, besides the resource allocation. Simulation results are provided, for both single and multiuser cases, which indicate the effectiveness of the proposed algorithms in a CR environment.
I. Introduction
A new paradigm, called Cognitive Radio (CR), has emerged in the field of wireless communication, to alleviate the imbalance between spectrum allocation and its use [1, 2]. CR entails the temporary usage of unused portions of the spectrum (spectrum holes or white spaces), owned by the licensed users (Primary UsersPUs), to be accessed by unlicensed users (Secondary UsersSUs). Built on the platform of softwaredefined radio (SDR), a CR node is rendered reconfigurable: the SDR allows the operating parameters such as frequency range, modulation type or output power to be reconfigured in software, without making any alteration in the hardware [2]. It is anticipated that the NextGeneration (xG) communication networks will be based on CR [2]. These networks will provide high bandwidth to mobile users via heterogenous wireless architectures and dynamic spectrum access techniques. Besides the tasks of spectrum sensing, spectrum allocation, spectrum sharing and spectrum mobility, one of the key functions of CR nodes in spectrumaware xG networks is spectrum utilization. The spectrum utilization function entails efficient Radio Resource Management (RRM), the aim of which is to evaluate the available resources (power, time slots, bandwidth, etc) and assign them to meet the QoS objectives of the SU, within some constraints on factors (typically interference) which limit the performance of the PU [3]. Furthermore, for optimum spectrum utilization it is necessary to be adaptive to, one or more, timevarying characteristics of the system, such as the wireless channel state, number of users, QoS requirements, etc.
OFDM is a widelydeployed multicarrier modulation technology for various wireless application segments, besides being a popular choice for CR. Other than its ability to handle multipath fading and intersymbol interference, it offers flexibility of resource allocation (power, constellation size and bandwidth) of its individual subcarriers. The two main impairments in OFDM are intersymbol interference (ISI) and intercarrier interference (ICI) [4]. ISI is mitigated by the addition of a guard interval (GI) which should be longer than that delay spread of the channel (also known as the cyclic prefix, since it is a cyclic copy of the original symbol). The loss of orthogonality between the subcarriers of OFDM due to its sensitivity to frequency offsets results in ICI. Frequency errors which occur due to local oscillator errors can be easily compensated by frequency tracking, while those due to Doppler spread are poorly compensated for.
In conventional OFDM systems, optimum power allocation that maximizes the channel capacity under a total power budget is waterfilling [4]. However, when OFDM is used for the SU system in a CR scenario, it's sidelobes causes interference to the PUs, limiting their performance. The Federal Communications Commission's (FCC) Spectrum Policy Task Force has recommended a metric called the interference temperature which when exceeded causes harmful interference to the PU band. The issue of interference mitigation in the PU band is receiving increasing attention in recent literature [5–14]. In an OFDMbased SU system, the amount of interference to the PU band depends on the SU's subcarrier parameters (power and bandwidth), the spectral distance between the SU's subcarriers and the PU band, as well as the channel between the SU and PU. Bit loading (or constellation sizing or modulation) for CR imposes an additional condition that a given performance should be achieved in every subcarrier. The SNR gap is used to measure the reduction of SNR (signal to noise ratio) with respect to the capacity; it depends on the target error probability required in every subcarrier when it carries log_{2}(M ) bits per symbol, either QAM (quadrature amplitude modulation) or PSK (phase shift keying) modulated [15]. The subcarrier bandwidth selection in OFDM is a tradeoff between increasing the subcarrier bandwidth to decrease the ICI, and reducing the bandwidth to mitigate ISI [16, 22]. In CR, the interference to the PU band is a function of the SU subcarrier bandwidth; the optimum subcarrier bandwidth is, therefore, the one that maximizes the SU throughput while mitigating the PU interference.
The contribution of this paper is in developing a holistic resource allocation scheme for an OFDMbased CR, which includes power allocation, bit loading and subcarrier bandwidth sizing. First, we address each of these issues as independent problems; the objective being  maximization of the SU's throughput under a power budget and an interference constraint for the PU spectral band. Then, a joint optimization problem is formulated, which encompasses the aforementioned individual problems (Figure 1). In each case, we consider a realistic and efficient strategy, wherein the PU is divided into subbands, and the interference to each of its subbands is separately constrained. In case of both single and multiuser scenarios, the optimization problems are difficult to solve due to either nonlinearity of equations or their combinatorial nature. A rigorous examination of their solution form motivates the development of computationally simple, suboptimum algorithms for the problems posed. The proposed strategies for power allocation and bit loading outperform those which have been previously presented in literature; while those for adaptive subcarrier sizing for CR, are novel and have not been proposed earlier. (We would like to note here that the titles of some works of literature on CR suggest adaptive subcarrier bandwidth/allocation[11, 23, 24], which actually refers to the assignment of subcarriers to users in a multiple SU scenario, and not subcarrier bandwidth sizing.)
To detail the proposed scheme, the paper has been organized as follows: Section 30 presents related literature. Section 31 describes the system model and communication scenario for a single SU. Sections 33, 35, VI and VII describe the power allocation, bit loading, subcarrier bandwidth sizing and combined optimization problems, respectively. Likewise, SectionsVIIIXII are dedicated to the corresponding multiple SU situation. It is followed by a complexity analysis of each of the proposed algorithms, in Section XIII. Section XIV presents exhaustive simulation results and their discussion, while Section XV concludes the paper.
II. Related work
A. Power allocation
Weiss et al. [5] have characterized the mutual interference between the PU and SU in an OFDMbased CR. Bansal et al. [6] have formulated the power allocation problem for a single SU with the objective of maximizing it's throughput while maintaining the interference to the entire PU band below a threshold, however, without a total power constraint. The model of Wang et al. [7] considers a single SU and multiple PUs; the system bandwidth is divided into subchannels, and different PUs coexist with the SU on each subchannel. A pathloss model is used between the SU and PU to determine the peak power constraint of each subchannel. Additionally, a total power constraint is included and the objective is to maximize the SU's capacity. The algorithm used is called iterative partitioned waterfilling. The system model of Wang et al. [8] is similar to that of [7], however, they have additionally considered the sidelobe power in each SU subchannel, contributed by the neighboring subcarriers, in the optimization problem.
The situation for multiple SUs is more challenging, since it involves allotment of subcarriers to users, besides power allocation, under the specified constraints. Münz et al. [25] and Jang et al. [26] have suggested strategies for multiuser power allocation with the objective of maximizing the total data rate. Shen et al. [27] have proposed power allocation with proportional fairness among the users. Wong et al. [23] and Kivanc et al. [24] have provided bitloading and power allocation algorithms to minimize the total transmit power in the multiuser scenario.
Power allocation for multiple SUs in the CR scenario has also received considerable attention in recent literature. Chengshi et al. [9] have performed multiuser waterfilling for CR. More recently, Shaat et al. [10] and Bansal et al. [11], have presented a Lagrangian formulation for maximizing the sum capacity of multiple SUs subject to a power budget and PU interference constraints. Since the combinatorial optimization problem is computationally complex, both references have proposed suboptimal schemes. First the users are allocated SU subcarriers based on the best channel conditions, and the interference constrained maximum power limit on each SU subcarrier is computed; then a caplimited waterfilling is executed [10]. On the other hand, the users are allocated subcarriers based on the channeltonoise ratio (CNR), and the Lagrangian formulation is used to maximize the sum capacity of the SUs under the PU interference constraints [11].
B. Bit loading
Two main classes of bit loading problems are: rate maximization (RM)maximizing the data rate within a power budget; and margin maximization (MM)minimizing power consumption given a target data rate [28]. The implementation of bit loading algorithms in literature fall into two broad categories. The first category of algorithms use numerical methods that employ Lagrangian optimization, resulting in real numbers for the bit loading ([23, 29, 30]). However, for practical constellation sizing, the number of bits allocated per subcarrier is restricted to integer values, which imposes a combinatorial structure in the loading optimization problem. The second category of algorithms employ a discrete greedy method in order to obtain optimum integer bit allocation results ([31–38]). Bit loading for a multiuser OFDM scenario has been addressed by Wong et al. [23] and Huang et al. [39] for MM and RM problems, respectively.
In the CR context, the following work exists in literature: Tang et al. [12] have formulated a bit loading problem for multiple SUs, which is based on maximizing total system throughput under interference power constraint to PUs, individual data rate constraints for the SUs and total transmission power constraint. Cheng et al. [13] have used a gametheoretic approach to formulate a transmit power control game for CR, which jointly solves the bandwidth allocation, bit loading and power allocation problems. Budiarjo et al. [14] have used the Fischer and Huber algorithm [37] for bitloading for a single SU, followed by Raised Cosine windowing to mitigate the side lobe interference to the PU.
C. Subcarrier bandwidth sizing
The most significant literature on subcarrier bandwidth sizing is summarized in this section. Das et al. [16, 17] have proposed an approach for adaptive bandwidth for subcarriers for single user OFDM and a multiuser scenario [18]. Zhang and Ma [19] have also proposed the implementation of variable subcarrier bandwidth for a multiuser OFDM downlink scenario. Steendam and Moeneclaey [20], Harvatin and Ziemer [21], and Tufvesson and Maseng [22] have demonstrated the impact of varying the subcarrier bandwidth on the system performance in a time and frequencyselective channel (either in terms of interference power or in terms of BER), but do not discuss the gains from dynamically adjusting the bandwidth.
We infer from our analysis of the aforementioned works in literature, that most of the power allocation algorithms for CR have considered the entire PU band as one, for characterizing the interference. This is not as effective as the proposed strategy of dividing the PU into subbands, and separately mitigating the interference to each of them. While the authors of [10] have characterized the interference to each PU subband, in their problem solution, only the spectrally closest PU band is considered for the interference constraint. Moreover, the channel gain from different SUs to each PU subband has been ignored in their formulation. In [11], a bruteforce combinatorial approach is executed for power allocation, which has high computational complexity. In the proposed power allocation algorithm, we have jointly considered interference mitigation to each PU subband, within the power budget, while maximizing the throughput of the single SU, or the sum throughput in case of multiple SUs. The approach attempts to strike a balance between performance optimization and computational complexity. Similar considerations are applied for PU interference mitigation in the proposed bit loading and subcarrier bandwidth sizing algorithms.
III. System Model and Communication Scenario: Single SU
In the current model, a single SU transceiver is considered, and a PU exists in its radio range (Figure 2). OFDM is the communication technology of the SU, the use of which divides the available bandwidth into frequencyflat subcarriers. When the PU claims a portion of the spectrum, the SU nulls the corresponding subcarriers. Let N_{ s } be the number of active subcarriers for the SU. The transmission opportunity is detected by the SU in the spectrum sensing phase of its cognitive cycle [1]. The channel power gain of the i th subcarrier on the link between the SU transmitter (Tx) and receiver (Rx) is denoted by h_{ i } . To efficiently control the interference to the PU, the PU spectrum is divided into N_{ p } subbands of equal width, and the gain of the j th subband from the SU Tx to the PU Rx is given by g_{ j } . In the present work, we have considered an immobile SU, resulting in no Doppler spread. It is assumed that the frequency offset due to any other source is compensated [40], and consequently we ignore the effect of ICI. The mutual interference model between the PU and SU is assumed [5].
Resource allocation strategies in CR require that the channel state information (CSI) be known to the SU Tx. It is assumed that the SU Rx estimates the channel by measuring the received power of the pilot signals sent by the transmitter, and the CSI is fed back to the transmitter [41]. A robust and lowcomplexity protocol can be used for the feedback. A block fading propagation channel is assumed where the channel remains constant during the resource allocation and transmission process. The channel sensing and feedback is done once per coherence time. Estimating the channel between the PU Tx and SU Rx, as well as that between the SU Tx and PU Rx, is more challenging, and entails the use of blind estimation techniques [41].
The maximum achievable throughput of the SU, in bits/sec, is given by [16]
in which B is the subcarrier bandwidth, T_{ g } is the duration of the guard interval, and P_{ i } is the power allocated to the i th SU subcarrier. {\sigma}_{i}^{2}={\sigma}^{2}+{J}_{i}, where σ^{2} is the Additive White Gaussian Noise (AWGN) variance, and J_{ i } is the interference from the PU on the i th SU subcarrier. J_{ i } depends on the power spectral density (PSD) of the PU and the channel gain between the PU Tx and SU Rx.
The interference from the SU on the j^{th} PU subband is formulated as
where {{T}_{s}}^{\prime}={T}_{s}+{T}_{g}. {{T}_{s}}^{\prime} is the total length of the symbol after adding the guard interval, T_{ s } is the length of the symbol without the guard interval, and f_{ i } represents the center frequency of the i th subcarrier. Sinc(x) is the mathematical function commonly defined by Sin(πx)/(πx).
IV. Power allocation
In the power allocation problem, our objective is to maximize the SU throughput under a total node power constraint P_{ t } , in such a way that the interference to the j th PU subband is less than a threshold {I}_{th}^{j}. {I}_{th}^{j}={T}_{th}^{j}B{W}_{j}, where {T}_{th}^{j} is the interference temperature limit for the j^{th} PU subband and BW _{ j } is its bandwidth. For simplicity of representation, we assume that the interference threshold is the same for all PU subbands and is denoted by I_{ th } . The optimization problem can stated as
Problem P1
subject to
The Lagrangian for the above is formulated as
The multiplicative factor 1/(Tg + 1/B) in the expression for C, is a constant in the power optimization problem, and is ignored in the above expression and all the subsequent analysis in this section. λ_{ j } , μ and β_{ i } are the Lagrangian multipliers. The problem is a convex optimization problem, and KarushKuhnTucker (KKT) conditions [42] are applied to find the optimum solution. Also, since we require P_{ i } ≥ 0, β_{ i } is substituted as 0, due to the complementary slackness condition [42]. The optimum power allocation is given by [43] (which refers to our own previous work)
in which
Though the above solution looks like waterfilling, it is different from the conventional waterfilling technique in the fact that each SU subcarrier has a different water level.
We would like to note here that the problem formulation in [7] and [8] appear similar to the above problem (P1). However, the system model of the current work and that of the aforementioned references are significantly differentwhile the former considers the system bandwidth to be frequency division multiplexed by the PU and SU, the latter assumes the two entities to be spatially separate but occupying the same spectrum. In the problem formulation of [7], the inequality constraints are decoupled, making the problem simpler to solve using either an exhaustive searchbased approach or an iterative partitioned waterfilling. On the other hand, in the formulation of [8], the inequality constraints are coupled by the use of dependent variables. Its solution involves segregating the equality (binding) and inequality (nonbinding) constraints for the given power budget using a searchbased approach and computing the optimal solution from the equality constraints. This technique has a high computationally complexity. The proposed method attempts to find a lowcomplexity suboptimum solution after a detailed analysis of the solution form.
As the optimization problem (P1) is convex with linear constraints, at the optimum point some constraints are binding, while the others are nonbinding. If the power budget of the SU (P_{ t } ) is too small, then that will be a binding constraint and all interference constraints are nonbinding; the corresponding Lagrange multipliers (λ_{ j } ) are zero and the solution looks like that of conventional waterfilling with a constant water level:
If the power budget is very high, then only the interference constraint will be binding. Generally, the j^{th} PU subcarrier which receives the maximum interference will be responsible for the binding constraint; and the solution looks like
To make it a general waterfilling solution with a constant waterlevel, we can multiply by g_{ j }Q_{ j, i } , to get
and the power allocation is
If we consider the above solution as the peak power on each SU subcarrier i.e. {P}_{i}^{max}, under the PU interference constraint (as in [10]), and then execute waterfilling, it is referred to as caplimited waterfilling. The solution takes the form
If the power budget is neither too high nor too low, the solution will take the form given by (9). On substituting {P}_{i}^{*} in the constraint of (4), we get
The solution to the above N_{ p } equations cannot be obtained directly, and we propose an iterative algorithm (Algorithm 1) to achieve the objective of P1, given the interference constraints on each PU subband and the power budget.
Algorithm 1

1)
Initialize all λ_{ j } and μ.

2)
Compute P_{ i } by substituting the above λ_{ j } and μ in (9).
Compute the total power allocated as P_{ s } = ∑ P_{ i }
Calculate the interference caused to each PU subband, I_{ j }, as given by (2).

3)
For each PU subband calculate the difference between the interference generated and the threshold, as diff_{ j } = I_{ j }I_{ th }. Calculate the difference between the total power allocated and the power budget, as diff_{ p } = P_{ s }P_{ t } .

4)
For each PU subcarrier, If(diff _{ j } > 0)
λ _{ j } = λ _{ j } + a _{ j } * diff _{ j }
end If
If(diff _{ p } > 0)
μ = μ + b * diff _{ p }
end If

5)
If (diff _{ j } > 0) or (diff _{ p } > 0)
Goto Step2.
Else
End Algorithm
end If
In the first step of the algorithm, we initialize all λ_{ j } and μ, such that the resultant power allocation violates one or all of the constraints. In the subsequent steps, we update the Lagrange multipliers λ_{ j } and μ in proportion to diff _{ j } and diff _{ p } respectively. a_{ j } and b are the step sizes; a_{ j } = diff _{ j }/max(diff_{ j } ) and b = 1/N_{ s } . The process is iteratively repeated until all the constraints are satisfied.
V. Bit loading
The power allocation and bitloading problems are closely related. However, in this section we treat bitloading as an independent problem, and address the issue of practical constellation sizing with integer number of bits per symbol, under a power budget and PU interference constraint for an OFDMbased CR. The number of bits that can be transmitted on the i^{th} OFDM subcarrier is given by [44]
where Γ is the SNR gap calculated according to the gap approximation formula [44, 15], based on the target probability of error (P_{ e } ). Mary QAM (MQAM) is a preferred choice of modulation, because it is more energy efficient than Mary PSK (MPSK) while retaining the same bandwidthefficiency. When rectangular MQAM is deployed (b_{ i } ∈ 2, 4, 6, ...), we can write [45]
where Q^{1} is the inverse of the wellknown Q function given by
For nonrectangular QAM signal constellations (b_{ i } ∈ 3, 5, 7, ...), the SNR gap is given by (19) without the equality [45]. In the case of BPSK, the SNR gap is approximated by [Q^{1}(P_{ e } /4)]^{2}/ 2, which is slightly larger than the right hand side of (19). However, for simplicity and practicality, (19) with the equality sign is used to approximate the SNR gap for b_{ i } ∈ ℤ_{+}[45].
The optimization problem for bitloading can stated as
Problem P2
subject to
where {\alpha}_{i}=\frac{{h}_{i}}{{\sigma}_{i}^{2}\Gamma}. (22) and (23) represent the interference and power budget constraints respectively. The constraint of (24) represents the integer constraint for practical constellation sizing. It turns out that the above problem (P2) is a combinatorial optimization problem [28]; to make it tractable, the integer constraint is relaxed to
and the following substitution is made
The problem is now equivalent to the single user power allocation problem (P1), and the solution to it is characterized the way it has been done in Section IV. We propose a few iterative algorithms, with varying degrees of tradeoff between optimality of solution and computational complexity.
The first of the proposed bit loading algorithms comprises two steps; to start with, the power allocation P_{ i } is computed using Algorithm 1, and the corresponding bitload b_{ i } is obtained from (18). These are, however, real values. The next step, is to round the real values to the nearest higher integer, for practical constellation sizing. This may cause the interference or power constraint, or both to be violated. Therefore, a greedy bitremoval is executed till both the constraints are met. The complete algorithm operates as follows:
Algorithm 2

1)
Compute the transmit power P _{ i } using Algorithm 1, and the corresponding bitload bi using (18)

2)
b_{ i } = ceil(b_{ i }), where ceil() represents rounding to the nearest higher integer.

3)
Calculate the transmit power P_{ i } corresponding to the quantized b_{ i } using (25), and the interference caused to each PU subband, I_{ j }, using (2).
Compute the total power allocated as P_{ s } = ∑P_{ i }

4)
If {(P_{ s } > P_{ t }) OR (I_{ j } > I_{ th } (for any j))}
{
While {I_{ j } > I_{ th } ∀j } Do
{
Compute the power saved in removing one bit from the i^{th} SU subcarrier as\Delta {P}_{i}=\frac{1}{{\alpha}_{i}}{2}^{{b}_{i}1}.
Compute the reduced interference in the j^{th} PU subband due to removal of one bit from every i^{th} SU subcarrier as ΔI_{ j, i } = g_{ j } ΔP_{ i }Q_{ j, i }, which is a vector of size N_{ p } × N_{ s } .
Compute the maximum element of the vector ΔI_{ j, i }, max{ΔI_{ j, i } }, and remove a bit from the subcarrier identified by the corresponding column index i.
Update the bit allocation profile b_{ i } and the corresponding power allocation profile P_{ i } .
}
While {P_{ s } > P_{ t } } Do
{
Compute the power saved in removing one bit from the i^{th} SU subcarrier as\Delta {P}_{i}=\frac{1}{{\alpha}_{i}}{2}^{{b}_{i}1}.
Remove one bit from the subcarrier that corresponds to the highest ΔP_{ i } .
Update the bit allocation profile b_{ i }, and the corresponding power allocation profile P_{ i } .
Compute the total power allocated as P_{ s }= ∑P_{ i } .
}
}
end If.
Motivated by the need to reduce the computational complexity associated with Algorithm 2 (due to the iterative power allocation process of Algorithm 1 in its Step 1), we also propose a simple greedy bit allocation process with two passes. In the first pass bitloading is executed till the power constraint is met; and in the second pass, bitremoval is performed till the interference constraint is satisfied. The algorithm is as follows:
Algorithm 3

1)
Initialize the bits allocated to each subcarrier b_{ i } to zero.
Compute the corresponding power allocation P_{ i } using (25), and the total power allocation as P_{ s } = ∑ P_{ i } .

2)
While {P_{ s } < P_{ t } } Do
{
Compute the power required to add one bit to the i^{th} SU subcarrier as\Delta {P}_{i}=\frac{1}{{\alpha}_{i}}{2}^{{b}_{i}}.
Add one bit to the subcarrier that corresponds to the lowest ΔP_{ i } .
Update the bit allocation profile b_{ i } and the corresponding power allocation profile P_{ i } .
Compute the total power allocated as P_{ s } = ∑ P_{ i } .
}

3)
Compute the interference caused to each PU subband, I_{ j }, using (2).

4)
While {I_{ j } > I_{ th } ∀ _{ j } } Do
{
Compute the power saved in removing one bit from the i^{th} SU subcarrier as\Delta {P}_{i}=\frac{1}{{\alpha}_{i}}{2}^{{b}_{i}1}.
Compute the reduced interference in the j^{th} PU subband due to removal of one bit from every i^{th} SU subcarrier as ΔI_{ j, i } = g_{ j } ΔP_{ i }Q_{ j, i }, which is a vector of size N_{ p } × N_{ s } .
Compute the maximum element of the vector ΔI_{ j, i }, max{ΔI_{ j, i } }, and remove a bit from the subcarrier identified by the corresponding column index i.
Update the bit allocation profile b _{ i } , the corresponding power allocation profile P _{ i } , and the interference caused to each PU subband, I _{ j }
}
The execution of two passes can be further condensed to a single loop, which executes till both the power and interference constraints are met. This is rendered possible in Algorithm 4, by the introduction of a new metric, viz, power weighted by the spectral distance from the PU band.
Algorithm 4

1)
Initialize the bits allocated to each subcarrier b_{ i } to zero.
Compute the corresponding power allocation P_{ i }, and the total power allocation as P_{ s } = ∑ P_{ i } .
Compute the interference caused to each PU subband, I_{ j }, using (2).

2)
While { (P_{ s } < P_{ t }) AND (I_{ j } < I_{ th } ∀j) } Do
{
Compute the metric ΔWP_{ i } = ΔP_{ i }/d_{ i }, which represents the power saved in removing one bit from the i^{th} SU subcarrier weighted by the distance of the i^{th} subcarrier from the PU band.
Add one bit to the subcarrier that corresponds to the lowest ΔWP_{ i } .
Update the bit allocation profile b _{ i } , the corresponding power allocation profile P _{ i } , and the interference caused to each PU subband, I _{ j }
Compute the total power allocated as P_{ s } = ∑ P_{ i } .
}
The proposed algorithms have been compared on the basis of their computational complexity and performance in Section XIII and XIV, respectively. Intuitively, we can expect Algorithm 2 to give the best performance, since its solution is obtained from the optimization problem. But it is associated with high complexity. Algorithm 3 entails bitremoval till the PU interference constraint is met without any compensatory bitaddition in some other subcarrier to improve the throughput. Consequently its performance will be inferior to Algorithm 2. Algorithm 4, though computational the simplest, will result in poorer performance as compared to the previous two algorithms because of weighting ΔP_{ i } with d_{ i } , which may not always give the desired result. For instance, if ΔP_{ i } is very small and d_{ i } is small, it may result in an overall low value of the metric causing a bit to be added on that subcarrier at the cost of increased PU interference.
VI. Subcarrier bandwidth sizing
The OFDM subcarrier bandwidth should be greater than the Doppler spread of the channel and less than the coherence bandwidth. An increase in the bandwidth results is a corresponding increase in the throughput (1) unto a certain point, after which the throughput falls due to a drop in the bandwidth efficiency. In a CR scenario, the subcarrier bandwidth also impacts the PU interference. Increasing the bandwidth implies decreasing the number of subcarriers, and thereby, the node power is distributed among lesser subcarriers; a higher power in each subcarrier generates higher sidelobe interference in the PU band. Consequently, as the bandwidth increases, the interference to the PU band increases, within a fixed power budget. This has been observed during simulation study and the results are plotted in Sect. XIV.
In the optimum subcarrier bandwidth sizing problem for an OFDMbased CR, the objective is to maximize the SU throughput under a power budget and PU interference constraint. It can be posed as follows:
Problem P3
subject to
The first two constraints are the same as those of Equations 4 and 5, but are repeated for completeness. Δf_{ c } is the coherence bandwidth of the channel. Since presently mobility is not considered, the bandwidth is lower bounded by 0 (in the case of mobile SUs, the bandwidth B should be greater than the Doppler spread of the channel). To solve the above problem for the optimum bandwidth B*, the subcarrier power is considered to be uniform, i.e. P_{ i } = P_{ t } /N_{ s } . However, it is possible that none of the values of bandwidth satisfy the PU interference constraint within the given power budget, and consequently the solution to the above problem does not exist. Only if the power budget is very small, some value of bandwidth may satisfy the interference constraint. Therefore, both the subcarrier bandwidth and power need to be varied to arrive at an optimum OFDM configuration which meets the interference constraint, within the power budget, while maximizing the achievable throughput. The problem entails solving for B* and {P}_{i}^{*}, and can be posed as
Problem P4
subject to the same constraints as those of problem P3, and additionally
Here the number of SU subcarriers is a function of the bandwidth B, as follows:
where BW is the total system bandwidth.
The objective function (31) is concave since its Hessian is positive semidefinite [42], and the problem (P4) has a combination of linear and nonlinear (polynomial in B) constraints. It has been analyzed to form a convex optimization problem (though the proof has not been included). Its Lagrangian will look like
where κ_{ j }, χ, ω and ψ_{ i } are the Lagrangian multipliers. Applying KKT conditions to solve the problem results in complex nonlinear equations (as discussed in Appendix A), which cannot be solved directly. A graphical, as well as intuitive analysis of the variation of subcarrier bandwidth (in discrete steps of N_{ s } ) with corresponding power allocation uniformly (P_{ i } = P_{ t } /N_{ s } ), by waterfilling, and by Algorithm 1, reveals its relation with the achievable throughput. Unto a certain point, an increase in bandwidth results in a corresponding increase in throughput; after which, any further increase results in the symbol duration becoming relatively smaller than the guard interval, and the bandwidth efficiency reduces. The proposed iterative algorithm is motivated by this discussion; it is a searchbased approach, in which, initially the throughput is computed in larger steps of N_{ s } , with the power allocation at every point obtained from Algorithm 1 (which ensures the PU interference constraint being met within the power budget). Then a finer search is executed to look for the global optima. N_{ s } (number of subcarriers) is the preferred choice of variable, as compared to B, due to its integer granularity. The two are related as given by (33). The algorithm is as follows:
Algorithm 5

1)
Initialize the subcarrier bandwidth to its maximum value, i.e. B = Δf_{ c } .

2)
Calculate the corresponding number of sub carriers as {N}_{{s}_{min}} , using (33).

3)
Initialize C_{ prev } (P_{ i } )=C_{ new } (P_{ i } )=0 (where C(P_{ i } ) represents the achievable throughput obtained from (1)).
Initialize the number of subcarriers {N}_{s}={N}_{{s}_{min}}
While {C_{ prev } (P_{ i } ) <= C_{ new } (P_{ i } )} Do
{
C_{ prev } (P_{ i } )=C_{ new } (P_{ i } )
Increment the number of subcarriers with some suitable stepsize s, i.e. N _{ s } = N _{ s } +s.
Find the power allocation P_{ i } using Algorithm 1.
Calculate throughput C_{ new } (P_{ i } ) using (1).
}

4)
N_{ s } = N_{ s }s.
Calculate the throughput for the number of subcarriers N_{ s }, N_{ s }+1, N_{ s }1 and represent them C_{ Ns } (P_{ i } ), C_{Ns+1}(P_{ i } ), C_{Ns1}(P_{ i } ), respectively, using Algorithm 1 and (1).

5)
While {(C_{ Ns } (P_{ i } ) < (C _{Ns+1}(P_{ i } )) OR (C_{ Ns } (P_{ i } ) < C _{Ns1}(P_{ i } ))} Do
{
s = ceil(s/2)
If {C_{ Ns } (P_{ i } ) < C_{Ns+1}(P_{ i } )}
N_{ s } = N_{ s }+s.
end If
If {C_{ Ns } (P_{ i } ) < C_{Ns1}(P_{ i } )}
N_{ s } = N_{ s }s.
end If
Calculate throughput for the number of subcarriers N_{ s }, N_{ s }+1, N_{ s }1 and represent them as C_{ Ns } (P_{ i } ), C_{Ns+1}(P_{ i } ), C_{Ns1}(P_{ i } ), respectively, using Algorithm 1 and (1).
}

6)
N_{ sopt } = N_{ s }, and the corresponding subcarrier bandwidth B_{ opt } is obtained using (33).
VII. Subcarrier power allocation, bandwidth sizing and bit loading
After having addressed the power allocation, bit loading and bandwidth sizing individually, we formulate the problem of doing all the three together, for an OFDMbased CR, with the objective of maximizing the SU throughput. It is as follows:
Problem P5
subject to the PU interference constraint (4), power budget (23), the integer bit granularity (24), and bounds on the subcarrier bandwidth (30).
The proposed algorithm first computes the power allocation and subcarrier bandwidth using the strategy discussed in the previous section. The corresponding bit load are real values, which are rounded to the nearest higher integer, and a greedy bit removal is executed till the power and PU interference constraint are met.
Algorithm 6

1)
Compute the optimum power allocation P_{ i } and subcarrier bandwidth B using Algorithm 5.

2)
Compute the corresponding bit load b_{ i } using (18).

3)
Execute Step 2 onwards of Algorithm 2.
VIII. System Model and Communication Scenario: Multiple SUs
In this scenario, we assume that there are K SU transceivers, and the PU is in the radio range of all of them (Figure 3). The assumptions on the propagation channel are the same as in the single user case (Sect. III). The multiuser scenario is more complex than the single user situation, since it involves assigning subcarriers to users, besides allocating power under the given constraints. The throughput of the k th user on the i th subcarrier is defined as
where p_{ k, i } is the power allocated to the i th sub carrier assigned to the k th user, and h_{ k, i } is channel power gain of k th user on i th sub carrier.
The N_{ s } active SU subcarriers will be assigned to the various users, while optimizing the sum throughput under a power budget and an interference constraint on each PU subband. The sum throughput is given by
All the CSI estimated at the receivers, is now required to be sent to a centralized controller, which is responsible for coordinating the resource allocation in the multiuser CR network. A centralized mode involves considerable signaling overheads, especially in fast fading environments. In a slow fading environment as is assumed in this work, the centralized architecture will compensate for the overheads with nearoptimum solutions.
Note: To avoid complexity of notations, we have used the same variables (for the Lagrangian multipliers) for the single and multiuser cases. Their values will, however, depend on the specific problem.
IX. Power allocation (Multiple SUs)
To formulate the power allocation problem for the multiuser CR scenario, (38) is rewritten as
where ζ_{ k, i } = p_{ k, i } * ρ_{ k, i }
Our objective is to maximize the sum throughput, given the total power budget on all users P_{ t } , and the interference constraint on each PU subband. The problem is posed as
Problem P6
subject to
where g_{ k, j } is the channel power gain between k^{th} SU and j^{th} primary band.
The Lagrangian for the above is formulated as
On applying KKT conditions to solve the convex optimization problem, we get (details in Appendix XV)
and
in which
From the above analysis, we infer that there are two main steps in solving the multiuser power allocation problem within the power budget and the PU interference constraint. In the first step, we allocate subcarriers to the users. This can be done by assigning subcarrier i to that user k that will maximize the function H_{ k, i }, i.e.
Next, we compute the power on each SU subcarrier using (48). This looks like a waterfilling solution with different water levels, as in the case of a single user. But it can be inferred from (48)(51), that for multiple SUs, the subcarrier assignment and power allocation are not independent of each other and the solution to the equations cannot be obtained directly. H_{ k, i } is proportional to the ratio of the channel gain of the k^{th} user on the i^{th} subcarrier to the cumulative interference of all the N_{ p } PU bands, weighted by the corresponding Lagrangian multipliers λ_{ j } . H_{ k, i } will be used as the metric to assign subcarriers to users in the proposed power allocation algorithm (Algorithm 7). The proposed algorithm is devised to iteratively assign subcarriers and allocate the powers till neither the interference or power constraints are violated.
Algorithm 7

1)
Initialize all λ_{ j } and μ.

2)
Initialize λ_{ jold } and μ_{ old } to zero.

3)
Assign each subcarrier i to that user k that will maximize the function H_{ k, i } .

4)
Compute ξ_{ k, i } by substituting the above λ_{ j } and μ in (48).
Compute the total power allocated as P_{ s } = ∑ _{ k } ∑_{ i } ζ_{k, i}
Calculate the interference caused to each PU subband, I_{ j } (from left hand side of (42)).

5)
For each PU subband calculate the difference between the interference generated and the threshold, as diff_{ j } = I_{ j }I_{ th }. Calculate the difference between the total power allocated and the power budget, as diff_{ p } = P_{ s }P_{ t } .

6)
λ _{ jold } = λ_{ j } ∀_{ j } and μ_{ old } = μ
If(max(diff _{ j } ) < 0) and (diff _{ p } < 0)
λ_{ j } = (λ_{ jold }+λ_{ j })/2 ∀j
μ = (μ _{ old } +μ)/2
Goto Step3.
end If

7)
For each PU subcarrier, If(diff _{ j } > 0)
λ _{ j } = λ _{ j } + a _{ j } * diff _{ j }
end If
If(diff _{ p } > 0)
μ = μ + b * diff _{ p }
end If

8)
If (diff _{ j } > 0) or (diff _{ p } > 0)
Goto Step3.
Else
End Algorithm
end If
The step sizes a_{ j } and b are the same as those defined in Algorithm 1.
X. Bit loading (Multiple SUs)
The objective of the bit loading problem is the same as the corresponding single user case, i.e. Problem P2, additionally requiring the subcarriers to be assigned to the K users. The problem is posed as
Problem P7
where ε_{ k, i } = b_{ k, i } * ρ_{ k, i } (ρ_{ k, i } is described in (40))
where g_{ k, j } is the channel power gain between k^{th} SU and j^{th} PU band.
where {\alpha}_{k,i}=\frac{{h}_{{k}^{\prime}i}}{{\sigma}_{i}^{2}\Gamma}
We relax the integer constraint to
and make the following substitution
The problem becomes equivalent to the multiuser power allocation problem (P6). Similar to the single user bitloading, we propose iterative algorithms to arrive at the optimum integer bit allocation for practical constellation sizing. The first such algorithm (Algorithm 8) computes the power allocation using Algorithm 7 and rounds the corresponding bit load to the nearest higher integer. Then a greedy bitremoval is executed till both the power and interference constraints are met.
Algorithm 8

1)
Compute the transmit power, ζ_{ k', i }, using Algorithm 7.
Compute the corresponding bitload ε_{ k', i } using (59).
The subscript k' indicates the optimum user assignment on the i^{th} subcarrier using ρ_{ k, i } .

2)
ε_{ k', i } = ceil(ε_{ k', i }), where ceil() represents rounding to the nearest higher integer.

3)
Calculate the transmit power, ζ_{ k', i }, corresponding to the quantized b_{ k', i } using (59), and the interference caused to each PU subband, I_{ j }, using the left hand side of (42).
Compute the total power allocated as P_{ s } = ∑_{ i } ζ_{k', i}

4)
If {(P_{ s } > P_{ t }) OR (I_{ j } > I_{ th } )}
{
While {I_{ j } > I_{ th } ∀ _{ j } } Do
{
Compute the power saved in removing one bit from the i_{ th } SU subcarrier as \Delta {\zeta}_{{k}^{\prime},i}=\frac{1}{{\alpha}_{{k}^{\prime},i}}{2}^{{\epsilon}_{{k}^{\prime},{i}^{1}}} , where {\alpha}_{{k}^{\prime},i}=\frac{{h}_{{k}^{\prime},i}}{{\sigma}_{i}^{2}\Gamma} Compute the reduced interference in the j^{th} PU subband due to removal of one bit from every i^{th} SU subcarrier as ΔI_{ j, i } = g_{ k', j } Δζ_{ k', i }Q_{ j, i }, which is a vector of size N_{ p }× N_{ s } .
Compute the maximum element of the vector ΔI_{ j, i }, max{ΔI_{ j, i } }, and remove a bit from the subcarrier identified by the corresponding column index i.
Update the bit allocation profile, ε_{ k' , i }and the corresponding power allocation profile, ζ_{ k' , i }.
}
While {P_{ s } > P_{ t } } Do
{
Compute the power saved in removing one bit from the i^{th} SU subcarrier as \Delta {\zeta}_{{k}^{\prime},i}=\frac{1}{{\alpha}_{{k}^{\prime},i}}{2}^{{\epsilon}_{{k}^{\prime},{i}^{1}}} .
Remove one bit from the subcarrier that corresponds to the highest Δζ_{ k' , i }.
Update the bit allocation profile, ε_{ k' , i }and the corresponding power allocation profile, ζ_{ k' , i }.
Compute the total power allocated as P_{ s } = ∑ _{ i } ζ_{ k' , i }.
}
}
end If.
The next algorithm (Algorithm 9), on the other hand, involves a greedy bit allocation which reduces the computational complexity. In its first pass, bitloading is executed till the power constraint is met; and in the second pass, bitremoval is performed till the interference constraint is satisfied. The algorithm is as follows:
Algorithm 9

1)
Compute the metric h(k, i)/∑ _{ j } g(k, j), which is a vector of size K × N_{ s } .

2)
Identify the maximum element of each column, and corresponding row index k' denotes the assignment of that user to the i^{th} subcarrier.

3)
Initialize the bits allocated to each i^{th} subcarrier, b _{ k' , i } to zero.
Compute the corresponding power allocation p_{ k' , i }, and the total power allocation as P_{ s } = ∑ _{ i } p_{ k' , i. }

4)
While { P_{ s } < P_{ t } } Do
{
Compute the power required to add one bit to the i^{th} SU subcarrier as \Delta {p}_{{k}^{\prime},i}=\frac{1}{{\alpha}_{{k}^{\prime},i}}{2}^{{b}_{{}_{{k}^{\prime},i}}} .
Add one bit to the subcarrier that corresponds to the lowest Δp_{ k' , i }.
Update the bit allocation profile, b_{ k' , i }and the corresponding power allocation profile, p_{ k' , i }.
Compute the total power allocated as P_{ s } = ∑ _{ i } p_{ k' , i }.
}

5)
Compute the interference caused to each PU subband, I_{ j }, using left hand side of (42).

6)
While { I_{ j } > I_{ th } ∀j } Do
{
Compute the power saved in removing one bit from the i^{th} SU subcarrier as \Delta {p}_{{k}^{\prime},i}=\frac{1}{{\alpha}_{{k}^{\prime},i}}{2}^{{b}_{{}_{{k}^{\prime},i}}1} .
Compute the reduced interference in the j^{th} PU subband due to removal of one bit from every i^{th} SU subcarrier as as ΔI_{ j, i }= g_{ k' , j }Δp_{ k' , i }Q_{ j, i }, which is a vector of size N_{ p }× N_{ s } .
Compute the maximum element of the vector ΔI_{ j, i }, max{ΔI_{ j, i } }, and remove a bit from the subcarrier identified by the corresponding column index i.
Update the bit allocation profile, b _{ k' , i } , the corresponding power allocation profile, p _{ k' , i } , and the interference caused to each PU subband, I _{ j }
}
The execution of the two passes can be further condensed to a single loop, which executes till both the power and interference constraints are met. Algorithm 10 achieves that by using the power weighted by the distance from the PU band, as its metric.
Algorithm 10

1)
Compute the metric h(k, i)/∑ _{ j } g(k, j), which is a vector of size K × N_{ s } .

2)
Identify the maximum element of each column, and corresponding row index k' denotes the assignment of that user to the i^{th} subcarrier.

3)
Initialize the bits allocated to each i^{th} subcarrier, b _{ k' , i } to zero.
Compute the corresponding power allocation p_{ k' , i }, and the total power allocation as P_{ s } = ∑_{ i }p_{ k' , i }.
Compute the interference caused to each PU subband, I_{ j }, using the right hand side of (42).

4)
While { (P_{ s } < P_{ t }) AND (I_{ j } < I_{ th } )} Do
{
Compute the metric ΔW P_{ k' , i }= Δp_{ k' , i }/d_{ i }, which represents the power spent in adding one bit to the i^{th} SU subcarrier weighted by the distance of the i^{th} subcarrier from the PU band.
Add one bit to the subcarrier that corresponds to the lowest ΔW P_{ k' , i }.
Update the bit allocation profile, b _{ k' , i } , the corresponding power allocation profile, p _{ k' , i } , and the interference caused to each PU subband, I _{ j }
Compute the total power allocated as P_{ s } = ∑_{ i }p_{ k' , i. }
}
XI. Subcarrier bandwidth sizing (Multiple SUs)
The subcarrier bandwidth sizing problem for multiple SUs entails computing the assignment of subcarriers to the users, and the optimum power and bandwidth that will maximize the sum throughput, subject to a net power budget and PU interference constraint. The problem is formulated as
Problem P8
subject to
The Lagrangian for the above is formulated as
The nonlinearity of the equations associated with the problem solution (as explained for the corresponding single user case in Appendix XV), coupled with the task of assigning subcarriers to the multiple users, make the problem extremely complex. To make the problem tractable, a searchbased algorithm is executed, in discrete steps of N_{ s } , to identify that the value of the subcarrier bandwidth, which will maximize the net throughput of the SUs, within the power budget, while mitigating the PU interference. The algorithm is as follows:
Algorithm 11

1)
Initialize the subcarrier bandwidth to its maximum value, i.e. B = Δf_{ c } .

2)
Calculate the corresponding number of sub carriers as {N}_{{s}_{min}} using 33.

3)
Initialize {C}_{{m}_{prev}}\left({p}_{k,i}\right)={C}_{{m}_{new}}\left({p}_{k,i}\right)=0 (where C_{ m } (p_{ k, i } ) represents the achievable throughput obtained from (38)).
Initialize the number of subcarriers {N}_{s}={N}_{{s}_{min}}
While \left\{{C}_{{m}_{prev}}\left({p}_{k,i}\right)<={C}_{{m}_{new}}\left({p}_{k,i}\right)\right\} Do
{
{C}_{{m}_{prev}}\left({p}_{k,i}\right)={C}_{{m}_{new}}\left({p}_{k,i}\right)
Increment the number of subcarriers with a suitable stepsize s, i.e. N_{ s } = N_{ s }+s.
Find the assignment of subcarriers to users and the power allocation using Algorithm 7.
Calculate throughput {C}_{{m}_{new}}\left({p}_{k,i}\right) using (38).
}

4)
N_{ s } = N_{ s }s.
Calculate the throughput for the number of subcarriers N_{ s }, N_{ s }+1, N_{ s }1 and represent them as {C}_{{m}_{Ns}}\left({p}_{k,i}\right) , {C}_{{m}_{Ns+1}}\left({p}_{k,i}\right) , {C}_{{m}_{Ns1}}\left({p}_{k,i}\right) , respectively, using Algorithm 7 and (38).

5)
While {(C_{ Ns } (p_{ k, i } ) < C _{Ns+1}(p_{ k, i } )) OR (C_{ Ns } (p_{ k, i } ) < C _{Ns1}(p_{ k, i } ))} Do
{
s = ceil(s/2)
If {C_{ Ns } (p_{ k, i } ) < C_{Ns+1}(p_{ k, i } )}
N_{ s } = N_{ s }+s.
end If
If {C_{ Ns } (p_{ k, i } ) < C_{Ns1}(p_{ k, i } )}
N_{ s } = N_{ s }s.
end If
Calculate throughput for the number of subcarriers N_{ s }, N_{ s }+1, N_{ s }1 and represent them as {C}_{{m}_{Ns}}\left({p}_{k,i}\right) , {C}_{{m}_{Ns+1}}\left({p}_{k,i}\right) , {C}_{{m}_{Ns1}}\left({p}_{k,i}\right) , respectively, using Algorithm 7 and (39).
}

6)
N_{ sopt } = N_{ s }, and the corresponding subcarrier bandwidth B_{ opt } is obtained using (33).
XII. Subcarrier power allocation, bandwidth sizing and bit loading (Multiple SUs)
The joint problem of power allocation, bit loading and bandwidth sizing for the multiple SU scenario, is posed as follows:
subject to the PU interference constraint (42), power budget (55), the integer bit granularity (57), bounds on the subcarrier bandwidth (30), and the integer variable for assigning subcarriers to users (44).
The iterative algorithm which is meant to solve for optimum power allocation, bit load and subcarrier bandwidth, operates as follows:
Algorithm 12

1)
Compute the optimum power allocation p_{ k, i } and subcarrier bandwidth B using Algorithm 11.

2)
Compute the corresponding bit load b_{ k, i } using (59), and ε _{ k, i } = b_{ k, i } * ρ_{ k, i } .

3)
Execute Step 2 onwards of Algorithm 8.
XIII. Complexity Analysis
In this section, we analyze the worstcase computational complexity of each of the proposed algorithms.
A. Single User Algorithms
The computational complexity of singleuser waterfilling for conventional OFDM is O(N log N), where N is the number of subcarriers that are sorted in the order of their channel gainto noise ratio [28]. The proposed power allocation algorithm for a single SU in the CR scenario (Algorithm 1) is an iterative process which starts from some initial values of the Lagrangian multipliers μ and λ_{ j } , and converges when both the PU interference constraint and power budget are satisfied. Let C_{1} and C_{2} represent the initial total power (∑P_{ i } ) and initial maximum interference among all the PU subbands (max I_{ j } ), respectively. Then, since each iteration entails N_{ p } × N_{ s } computations, the complexity of this algorithm is given by
The first of the proposed bit loading algorithms for CR (Algorithm 2) obtains nonreal values of the bit allocation using Lagrangian multiplier optimization, followed by rounding to the nearest higher integer and then a greedy bit removal till both the PU interference constraint and power budget are satisfied. Each greedy bitremoval from N_{ s } SU subcarriers involves N_{ p } × N_{ s } computations. Thus, the computational complexity is given by
The complexity of greedy bitaddition and bitremoval for conventional OFDM are given as O(B_{ tar }N ) and O((B_{ max }  B_{ tar } )N ), respectively. In the proposed greedy bitaddition algorithm for CR (Algorithm 3), we start with an all zeros allocation and add bits till the power budget is met. This involves log(P_{ t } × CNR) iterations, where CNR represents the maximum channeltonoise ratio among all the SU subcarriers. Then, the algorithm executes a greedy bitremoval till the PU interference constraint is met. The complexity of Algorithm 3 is given by
As compared to Algorithm 3, Algorithm 4 has condensed the two passes into a single pass which executes till both the constraints are satisfied. Its complexity is given by
Out of the three proposed bit loading algorithms, Algorithm 2 has the highest computational complexity. This is followed by Algorithm 4 and Algorithm 3 in that order. It can be attributed to the following facts: Algorithm 2 involves calculation P_{ i } using Algorithm 1, and hence the overall number of iterations are very high. Algorithm 3 initially entails a conventional greedy bitaddition pass which has complexity O(N_{ s } ) in each iteration, and is followed by a greedy bitremoval pass with a complexity O(N_{ p }N_{ s } ) in each iteration. The second pass will involve very few iterations, unless the power budget is very high. On the other hand, in Algorithm 4, each essential iteration requires a complexity O(N_{ p }N_{ s } ).
The subcarrier bandwidth sizing algorithm (Algorithm 5) involves two passes: in the first pass a crude search is conducted with a relatively larger step size of N_{ s } , followed by a fine search to look for the global optima. The computational complexity of the complete algorithm is therefore given by
in which X and Y represent the complexities of the crude search and fine search respectively.
The algorithm involves computing the power allocation for each N_{ s } using Algorithm 1. If we denote \frac{{N}_{{s}_{max}}{N}_{{s}_{min}}}{s} as S_{ N } , then
which can be simplified as
The fine search involves computing the power allocation three times corresponding to N_{ s } , N_{ s } + 1 and N_{ s }  1 in each iteration. Thus, we get
which can be simplified as
Algorithm 6 uses Algorithm 5 for power allocation and bandwidth sizing, which is followed by greedy bitremoval using Algorithm 2. Thus, its computational complexity is given by
where {N}_{{s}_{\mathsf{\text{opt}}}} represents the number of subcarriers corresponding to the optimum bandwidth.
B. Multiple User Algorithms
The multiuser power allocation algorithm (Algorithm 7) entails assigning subcarriers to the K SUs, besides the power allocation. Hence, its complexity is given by
The complexity of the bit allocation algorithm (Algorithm 8) is given by
The complexity of Algorithm 9 and Algorithm 10 will be the same as the corresponding singleuser algorithms (Algorithm 3 and Algorithm 4). As such, their complexities are given by (72) and (73), respectively. This is because, in these two algorithms assigning subcarriers to users is not an iterative process, rather is computed once at the beginning of the algorithms.
Subcarrier bandwidth sizing for multiple SUs (Algorithm 11) also involves assigning subcarriers to the K SUs, and its complexity is given by (referring to the corresponding singleuser algorithm complexity in (74))
The complexity of Algorithm 12, which involves power allocation, bandwidth sizing and bit loading for multiple SUs is given by (referring to the corresponding singleuser algorithm complexity in (81))
XIV. Simulation Results and Discussion
A. Single user
Power Allocation
For the single user case, we assume that the total system bandwidth for the PU and SU is 6 MHz wide, of which the SU occupies a contiguous band of 5 MHz, while the PU occupies 1 MHz bandwidth. The SU transceiver uses 32 subcarrier OFDM for communication. The channels undergo Rayleigh multipath fading, defined in the time domain by \sum _{l=0}^{L1}{h}_{l}\delta \left(tlT\right) where h_{ l } is the complex amplitude of path l and L is the number of channel taps. The l^{th} channel coefficient is distributed as N(0, σ^{2}), and the frequency domain channel is given by its Fourier Transform. The AWGN variance is assumed to be σ^{2} = 1e4 and the guard interval length is T_{ g } = 1 μ sec. The PU band is divided into 8 subbands, and we attempt to mitigate the interference to each of them. We set the interference temperature, T_{th} = 1e5 W/Hz for each PU subband. Without loss of generality, it is assumed that the interference induced by the PU to the SU is negligible.
The power allocation profile of the SU is shown in Figure 4. For the result of Figure 4a, the power budget P_{ t } = 100 mW. This value being very small, the interference constraint is nonbinding, and it is observed (though the channel gains have not been plotted) that the solution closely resembles that of conventional waterfilling: better channels are allocated higher powers as compared to the poorer ones. As the power budget is increased to 1 W (Figure 4b), the interference constraint becomes binding. The graph tapers towards the PU band because lesser power is allocated in the SU subcarriers spectrally closer to the PU.
The SU throughput versus power budget is plotted in Figure 5. Conventional waterfilling gives the highest SU throughput, since it is unconstrained by the PU interference threshold. It is closely followed by uniform power allocation. The caplimited scheme [10] is only partially interference constrained by the closest PU subband. On the other hand, the proposed scheme (Algorithm 1) considers the interference threshold to each PU subband. The SU throughput achieved is the optimum result within the given power budget and interference constraints. It is observed that when the power budget is very low, the solution is very close to that of conventional waterfilling since only the power constraint is binding. Furthermore, after a certain power budget (P_{ t } = 700 mW), the throughput hardly increases, since only the interference constraint is binding. Any further increase in the power budget, cannot increase the SU subcarrier power allocation without violating the interference constraint. These results have been averaged over 100 independent realizations of the channel.
We have also provided the interference profile to the 8 PU subbands on execution of the various power allocation schemes (Figure 6). The proposed algorithm maintains the interference to each PU subband under the threshold. The caplimited scheme is successful in keeping only the interference to the closest PU subband under the threshold. We have also included for comparison, the power allocation scheme which considers the entire PU as a single band for mitigating interference, as is done in literature [6]. It can be observed that it is not as effective as dividing the PU into subbands, as is proposed in Algorithm 1. These results are reported for a power budget P_{ t } = 1 W, and a single instance of the channel.
The proposed power allocation algorithm is verified for five different positions of the PU within the given system bandwidth of 6 MHz, and a power budget of 1 W in each case. As observed in Figure 7, each profile tapers towards the PU band.
Bit loading
The simulation parameters for bit loading are the same as those assumed for power allocation. The SNR gap is computed considering an error probability P_{ e } = 10^{6}.
The result of Algorithm 2 is depicted in Figure 8. Figure 8a demonstrates the results of executing the Lagrangian optimization problem, which yields real numbers for the bit allocation. This is followed by integer quantization to the nearest higher integer (Figure 8b), causing the interference to the PU to increase beyond the specified threshold (I_{th}), or the power constraint (P_{ t } ) to be violated. A greedy bitremoval is executed, resulting in the final allocation of bits (Figure 8c). It can be observed that the interference constraint causes the profile to taper towards the PU band. A power budget P_{ t } of 1 W is considered for these graphs.
The bit allocation profile achieved with the proposed algorithms, i.e. Algorithm 2, Algorithm 3 and Algorithm 4 are shown together in Figure 9; while those obtained with the schemes proposed in literature are depicted in Figure 10. A power budget P_{ t } of 1 W is considered in each of these cases. Though much cannot be concluded from Figure 9, the SU throughput for various algorithms, averaged over 100 independent realizations of the channel (Figure 11), reveals more about their performance: the highest throughput is achieved by the caplimited scheme proposed in literature [10], since it only mitigates interference to the closest PU band. It is followed closely by that obtained from the proposed Algorithm 2. Algorithm 3 and Algorithm 4 follow, in that order. The scheme from literature which is based on subcarrier nulling [14] gives the lowest throughput.
The interference profile to the 8 PU subbands on execution of the aforementioned bit allocation schemes is depicted in Figure 12. While the proposed algorithms, Algorithm 24, are successful in mitigating the interference to each of the PU subbands, the caplimited scheme only does so for the spectrally closest PU subband. The subcarriernulling scheme, however, generates the lowest interference profile, since it nulls subcarriers till interference to each band is mitigated.
Subcarrier bandwidth sizing
The simulation parameters are the same as those described for the power allocation and bit loading problems. However, the 5 MHz SU bandwidth is not divided into 32 subcarriers anymore. Instead, the problem entails searching for that subcarrier bandwidth which will maximize the SU throughput, while mitigating the interference to the PU band. The coherence bandwidth is Δf_{ c } = 200 KHz (Δf_{c} = 1 = 5σ_{ τ }[46], where σ_{ τ } is the rms delay spread, and assumed to be 1 μ sec). The power budget at the SU Tx is P_{ t } = 1 W.
In Figure 13, we analyze the SU throughput, while increasing the subcarrier bandwidth unto the coherence bandwidth Δf_{c}. Although not plotted, it is expected that the SNR will increase with an increase in the subcarrier bandwidth, however, the same cannot be said about the throughput. It is observed (Figure 13) that unto a certain point, an increase in bandwidth results in a corresponding increase in throughput; after which, any further increase results in the symbol duration becoming relatively smaller than the guard interval, and the throughput reduces. Initially, a crude search was conducted by varying N_{ s } in a step size of 10 as indicated by the markers in Figure 13. Then a fine search was conducted to look for the global optima. The execution of Algorthm 5 yielded N_{sopt} as 101 and the corresponding B_{ opt } as 99.01 Khz. The optimum SU subcarrier bandwidth should also maintain the interference to the PU band below the specified threshold. To understand the effect of varying subcarrier bandwidth on the PU interference, we have plotted Figures 14 and 15 by dividing the PU band into 4 and 8 subbands, respectively, and allocating the power uniformly. In both cases, the following observations are made: (1) as the SU subcarrier bandwidth decreases, the interference to the PU subbands decreases. This is because, decreasing the bandwidth implies increasing the number of subcarriers, and thereby, the power budget is now distributed among a relatively large number of subcarriers; a lower power in each subcarrier generates lower interference power to the PU band. (2) As expected, the interference decreases with the increasing spectral distance. The same results will be obtained for waterfillingbased allocation.
Figures 14a and 14b (resp. Figures 15a and 15b), represent the interference profile of the PU, without and with consideration of the SU to PU channel gains, respectively, for 4 PU subbands (resp. 8 PU subbands).
The interference profile to 8 PU subbands with the optimum SU subcarrier bandwidth is reported in Figure 16, with uniform power allocation, waterfilling and the proposed algorithm (Algorithm 5). Only Algorithm 5 is successful in keeping the interference to the PU band below the specified threshold.
Subcarrier power allocation, bandwidth sizing and bitloading
On executing Algorithm 6, first the optimum bandwidth is obtained with the corresponding power allocation. Figure 17a reports the optimum number of subcarriers as N_{ sopt } = 78 and the bandwidth B_{ opt } = 126.6 KHz, while Figure 17b depicts the power allocation profile. The bit loading profile is as shown in Figure 17c.
B. Multiuser
Power Allocation
The simulation parameters are the same as those of the single user case. 3 SUs have been assumed, which contend for the 5 MHz bandwidth, which is divided into 32 OFDM subcarriers. Figure 18 demonstrates the power allocation profile and the assignment of subcarriers to the users, with a total power budget P_{ t } = 1W. Due to the interference constraint, the profile tapers towards the PU band. Figure 19 depicts the sum throughput graphs of the SU, averaged over 100 independent realizations of the channel, and Figure 20 represents the PU interference profile. Both these graphs have the same interpretations as the corresponding single user results.
Bit loading
Figure 21 demonstrates the bit loading profile and the assignment of subcarriers to the users on execution of Algorithm 8. Figure 21a, b and 21c depict the result of the Lagrangian optimization, rounding and bit removal, respectively. Figure 22 represents the comparative sum SU throughput of the various bit loading schemes, viz., Algorithm 8, Algorithm 9, Algorithm 10, the caplimited scheme and subcarrier nulling, averaged over 100 independent realizations of the channel. The highest throughput is achieved by the caplimited scheme, since it only mitigates interference to the closest PU band. It is followed closely by that obtained from the proposed Algorithm 8. Algorithm 9 and Algorithm 10 follow in that order. The subcarrier nulling scheme gives the lowest throughput. Figure 23 depicts the PU interference profile.
Subcarrier power allocation, bandwidth sizing and bitloading
On executing Algorithm 12, first the optimum bandwidth is obtained with the corresponding power allocation. Figure 24a reports the optimum number of subcarriers as N_{sopt} = 144 and the bandwidth B_{opt} = 68.97KHz, while Figure 24b depicts the power allocation profile and the assignment of subcarriers to the 3 users. The bit loading profile is as shown in Figure 24c. The results of Algorithm 11 have not been included, since they would be similar to the results of bandwidth sizing, power allocation and the assignment of subcarriers to users, as those demonstrated in Figures 24a and 24b.
XV. Conclusion
The major contribution of the paper is towards Radio Resource Management in an OFDMbased CR. The issues of power allocation, bit loading and subcarrier bandwidth sizing are addressed individually, and then as a joint problem, for both single and multiple SU scenarios; the objective beingmaximization of the SU's throughput within a power budget and PU interference constraints. The PU spectral band is divided into subbands, and the proposed algorithms effectively mitigate the interference to each of them. For bit loading, multiple algorithms are suggested. The algorithms for subcarrier bandwidth sizing for the SU are novel, and effective in mitigating the PU interference. The computational complexity of all the algorithms is analyzed. Exhaustive simulation results are provided with rigorous interpretations of each of the graphs, and comparisons with techniques from literature, wherever possible. The performance results are encouraging, and motivate the deployment of the suggested strategies in practical CR networks. While the proposed algorithms are mainly for stationary SUs and may be applicable to walking speeds, the resource allocation for medium/high speed mobile SUs, is an issue we intend to tackle in the near future.
Appendix A
Substituting N_{ s } from (33) in (35), and differentiating it wrt B,
Differentiating (35) wrt P_{ i } ,
Appendix B
Differentiating (47) wrt ζ_{k, i}and applying KKT conditions,
The above equation is expressed as (with β_{k, i}substituted as 0, due to the complementary slackness condition [42])
From (92) and (93) we can write
where {\mathsf{\text{c\u2019}}}_{k,i}^{1} is the inverse of derivative of function c_{k, i}.
Differentiating (47) wrt ρ_{k, i}and applying KKT conditions,
Further,
From (94) and (97) we can write
On substituting c_{ k, i }from (37) in (94) and (99), we get, respectively
References
Haykin S: Cognitive radio: brainempowered wireless communications. IEEE Trans Sel Areas in Comm 2005, 23: 201220.
Akyildiz IF, Leea W, Vuran MC, Mohantya S: NeXt generation/dynamic spectrum access/cognitive radio wireless networks: A survey. Computer Networks 2006, 50(13):21272159. 10.1016/j.comnet.2006.05.001
Corvino V, Giupponi L, Neira AP, Tralli V, Verdone R: Crosslayer radio resource allocation: The journey so far and the road ahead. Proc of 2nd International Workshop on Cross Layer Design 2009.
Tse D, Vishwananth P: Fundamentals of Wireless Communication. Cambridge University Press, Cambridge; 2005.
Weiss T, Hillenbrand J, Krohn A, Jondral FK: Mutual interference in OFDMbased spectrum pooling systems. Proc 59th IEEE Vehicular Technology Conference 2004, 18731877.
Bansal G, Hossain MJ, Bhargava VK: Adaptive power loading for OFDMbased cognitive radio systems. Proc IEEE Int Conference on Comm 2007, 51375142.
Wang P, Zhao M, Xiao L, Zhou S, Wang J: Power allocation in OFDMBased cognitive radio systems. Proc of IEEE Global Telecommunications Conference 2007, 40614065.
Wang P, Zhong X, Xiao L, Zhou S, Wang J: A general power allocation algorithm for ofdmbased cognitive radio systems. Proc of the IEEE International Conference on Communications Workshops 2009.
Chengshi Z, Mingrui Z, Bin S: Capacity Maximized Power Allocation for Secondary Users in OFDMBased Cognitive Networks. Proc 2008 International Symposium on Communications and Information Technologies 2008, 110115.
Shaat M, Bader F: Computationally Efficient Power Allocation Algorithm in MulticarrierBased Cognitive Radio Networks: OFDM and FBMC Systems, EURASIP Adv. Signal Process 2010. Article ID 528378
Bansal G, Hasan Z, Hossain MJ, Bhargava VK: Subcarrier and power adaptation for multiuser OFDMbased cognitive radio systems. Proc National Conference on Communications 2010, 15.
Tang J, Rahulamathavan Y, Lambotharan S: Optimal adaptive bit loading and subcarrier allocation techniques for OFDM based cognitive radio systems.[http://www.emfield.org/icctadmin/download_paper.php?id=404]
Cheng SL, Yang Z: Adaptive modulation and power control for throughput enhancement in cognitive radios. J Electro 2008, 25(1):6569.
Budiarjo I, Nikookar H, Ligthart LP: Combined spectrum pooling and adaptive bit loading for cognitive radio OFDM based system. Proc 13th IEEE Symposium on Communications and Vehicular Technology 2006, 7376.
Armada AG: SNR gap approximation for MPSKbased bit loading. IEEE Trans Wirel Comm 2006, 5(1):5760.
Das SS, De Carvalho E, Prasad R: Performance analysis of OFDM systems with adaptive sub carrier bandwidth. IEEE Trans Wireless Commun 2008, 7(4):11171122.
Das SS, De Carvalho E, Prasad R: Dynamically adaptive bandwidth for sub carriers in OFDM based wireless systems. Proc IEEE Wirel Commun Networking Conference 2007, 13781383.
Das SS, De Carvalho E, Prasad R: Variable subcarrier bandwidth in OFDM framework. Electron. Lett 2007, 43(1):4647. 10.1049/el:20072920
Zhang X, Ni Ma: An adaptive scheme to determine the subcarrier spacing for multicarrier systems. International Patent No. W0 2010/015102 A1, 11 Feb 2010
Steendam H, Moeneclaey M: Analysis and optimization of the performance of OFDM on frequencyselective timeselective fading channels. IEEE Trans Comm 1999, 47(12):18111819. 10.1109/26.809701
Harvatin DT, Ziemer RE: Orthogonal frequency division multiplexing performance in delay and Doppler spread channels. Proc IEEE Veh Tech Conf 1997, 16441647.
Tufvesson F, Maseng T: Multiaccess, mobility and teletraffic  advances in wireless networks. Dordrecht, Kluwer Academic Publishers; 1998.
Wong CY, Cheng RS, Lataief KB, Murch RD: Multiuser OFDM with adaptive subcarrier, bit, and power allocation. IEEE J Sele Areas Commun 1999, 17(10):17471758. 10.1109/49.793310
Kivanc D, Li G, Liu H: Computationally efficient bandwidth allocation and power control for OFDMA. IEEE Trans on Wirel Commun 2003, 2(6):11501158. 10.1109/TWC.2003.819016
Münz G, Pfletschinger S, Speidel J: An Efficient Waterfilling Algorithm for Multiple Access OFDM. Proc IEEE Global Telecommunications Conference 2002, 681685.
Jang J, Lee KB: Transmit power adaptation for multiuser OFDM systems. IEEE J Sele Areas Commun 2003, 21(2):171178. 10.1109/JSAC.2002.807348
Shen Z, Andrews JG, Evans BL: Optimal power allocation in multiuser OFDM systems. Proc IEEE Global Telecommun Conference 2003, 337341.
Papandreou N, Antonakopoulos T: Bit and Power Allocation in Constrained Multicarrier Systems: the SingleUser Case. EURASIP J Adv Signal Process 2008.
Krongold B, Ramchandran K, Jones D: Computationally efficient optimal power allocation algorithms for multicarrier communication systems. IEEE Trans Comm 2000, 48: 2327. 10.1109/26.818869
Ko H, Lee K, Oh S, Kim C: Fast Optimal Discrete BitLoading Algorithms for OFDMBased Systems. Proc 18th International Conference on Computer Communications and Networks 2009, 16.
HughesHartogs D: Ensemble modem structure for imperfect transmission media, 4 679 227 (July 1987), 4 731 816 (March 1988) and 4 833 796 (May 1989).
Sonalkar RV, Shively RR: Efficient bitloading algorithm for DMT applications. IEEE Commun Letts 2000, 4(3):8082. 10.1109/4234.831031
Baccarelli E, Biagi M: Optimal integer bitloading for multicarrier ADSL systems subject to spectralcompatibility limits. Signal Process 2004, 84(4):729741. 10.1016/j.sigpro.2003.12.004
Fasano A: On the optimal discrete bit loading for multicarrier systems with constraints. Proc 57th IEEE Semiannual Vehicular Technology Conference 2003, 915919.
Leke A, Cioffi JM: A Maximum rate loading algorithm for discrete multitone modulation systems. Proc IEEE Global Telecommunications Conference 1997, 15141518.
Wyglinski AM, Labeau F, Kabal P: An Efficient Bit Allocation Algorithm for Multicarrier Modulation. Proc IEEE Wirel Commun Networking Conference 2004, 11941199.
Fischer R, Huber J: A New Loading Algorithm for Discrete Multitone Transmission. Proc IEEE Global Telecommunications Conference 1996, 724728.
Chow PS, Cioffi JM, Bingham J: Practical discrete multitone transceiver loading algorithm for data transmission over spectrally shaped channels. IEEE Transactions on Communications 1995, 43: 773775. 10.1109/26.380108
Huang D, Shen Z, Miao C, Leung C: Resource Allocation in MUOFDM Cognitive Radio Systems with Partial Channel State Information. EURASIP Journal on Wireless Comm 2010.
Ycek T: Channel, Spectrum and Waveform Awareness in OFDMBased Cognitive Radio Systems. Ph.D. Dissertation, University of South Florida; 2007.
Muquet B, de Courville M, Duhamel P: Subspacebased blind and semiblind channel estimation for OFDM systems. IEEE Transactions on Signal Processing 2002, 50(7):16991712. 10.1109/TSP.2002.1011210
Boyd S, Vandenberghe L: Convex Optimization. Cambridge University Press, Cambridge; 2004.
Tej GPS, Nadkar T, Thumar VM, Desai UB, Merchant SN: Power Allocation in Cognitive Radio: Single and Multiple Secondary Users. Proc of IEEE Wireless Communications and Networking Conference 2010.
Cioffi JM: A multicarrier primer. ANSI Contribution T1E1.4/91157 1991.
Lee C, Jeon GJ: An Efficient Adaptive Modulation Scheme for Wireless OFDM Systems. ETRI Journal 2007, 29: 445451. 10.4218/etrij.07.0106.0246
Rappaport TS: Wireless communications: Principles & Practice, Prentice Hall, New Jersey. 1996.
Acknowledgements
This work has been supported by the Ministry of Communication and Information Technology, Government of India, New Delhi, and also been supported by Microsoft Corporation and Microsoft Research India under the Microsoft Research India PhD Fellowship Award 2009.
Author information
Authors and Affiliations
Corresponding author
Additional information
Competing interests
The authors declare that they have no competing interests.
Authors’ original submitted files for images
Below are the links to the authors’ original submitted files for images.
Rights and permissions
Open Access This article is distributed under the terms of the Creative Commons Attribution 2.0 International License (https://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
About this article
Cite this article
Thumar, V., Nadkar, T., Gopavajhula, T. et al. Power allocation, bit loading and subcarrier bandwidth sizing for OFDMbased cognitive radio. J Wireless Com Network 2011, 87 (2011). https://doi.org/10.1186/16871499201187
Received:
Accepted:
Published:
DOI: https://doi.org/10.1186/16871499201187
Keywords
 cognitive radio
 OFDM
 interference mitigation
 power allocation
 bit loading
 subcarrier bandwidth sizing