Method and apparatus for user distribution to sub-bands in multiple access communications systems
11515986 · 2022-11-29
Assignee
- INSTITUT MINES-TELECOM (PALAISEAU, FR)
- UNIVERSITE LIBANAISE (Beirut, LB)
- UNIVERSITE SAINT-ESPRIT DE KASLIK (Jounieh, LB)
Inventors
- Marie-Rita Hojeij (Mont Liban, LB)
- Charbel Abdel Nour (Brest, FR)
- Joumana Farah (Mont Liban, LB)
- Catherine Douillard (Prest, FR)
Cpc classification
H04L5/006
ELECTRICITY
H04L5/0064
ELECTRICITY
H04W72/0453
ELECTRICITY
H04L5/003
ELECTRICITY
H04L5/0032
ELECTRICITY
International classification
Abstract
A mechanism is presented for attributing users to one or more of a plurality of sub-bands in a multiple access communications system, wherein in an initial assignment phase, a first user is selected for a sub band, for example on the basis of a user priority. Users having complementary channel gains to that of the first user are identified, and then a second sub-band user maximizing a performance metric reflecting the achieved throughput, and/or fairness across users, is selected to accompany the first user on that sub-band. The initial assignment phase may terminate once all users have been assigned to a sub-band once. After the first phase is complete, the first user for each sub-band may be the user whose achieved total throughput is furthest from a target throughput defined for that user, wherein each user is assigned to the remaining sub-band to which no first user is currently attributed offering the highest channel gain for that user. Mechanisms for determining user priority, making provisional and definitive power allocations, and performance metrics are proposed.
Claims
1. A system for attributing users to one or more of a plurality of sub-bands in a multiple access communications system, the system comprising: an assignment processor adapted to assign, as an initial sub-band assignment, a user excluding any user who has already been assigned to an initial sub-band to a respective selected sub-band in a time slot t, as first user for that respective selected sub-band, a power calculator adapted to determine, for the respective selected sub-band, a plurality of candidate pairs of users for possible assignment to the selected sub-band, each candidate pair of users comprising two different users including the first user and a respective candidate second user, and to provisionally assign a power allocation to the selected sub-band for each candidate pair of users, the assignment processor being further adapted to restrict the plurality of candidate pairs to a set of candidate pairs comprising candidate second users whose channel gain is complementary to the channel gain of the first user, and to assign as an initial sub-band assignment as second user for the respective selected sub-band, to the user excluding any user who has already been assigned to an initial sub-band, belonging to the set of candidate pairs maximizing a performance metric reflecting an achieved throughput, and/or fairness across users, and wherein the system is further adapted to process users for each sub-band, until all sub-bands in a current time slot have been attributed, wherein a complementary channel gain is a channel gain such that assigning a user having that channel gain to the selected sub-band together with the corresponding first user would indicate a total sub-band throughput greater than the sub-band throughput achievable by assigning all available power as indicated by the provisional power allocation for the corresponding candidate pair of users for the respective sub-band to the first user.
2. A method for attributing users to one or more of a plurality of sub-bands in a multiple access communications system, the method comprising the steps of: assigning as an initial sub-band assignment a user excluding any user who has already been assigned to an initial sub-band to a respective selected sub-band in a time slot t, as first user for that respective selected sub-band, determining for the respective selected sub-band a plurality of candidate pairs of users for possible assignment to the selected sub-band, each candidate pair of users comprising two different users including the first user and a respective candidate second user, provisionally assigning a power allocation to the selected sub-band for each candidate pair of users, restricting the plurality of candidate pairs to a set of candidate pairs comprising candidate second users whose channel gain is complementary to the channel gain of the first user, and assigning as an initial sub-band assignment as second user for the respective selected sub-band, the user excluding any user who has already been assigned to an initial sub-band, belonging to the set of candidate pairs maximizing a performance metric reflecting an achieved throughput, and/or fairness across users, and the method comprising the further steps of then repeating the steps of assigning a first user to the selected sub-band, provisionally assigning a power allocation to the selected sub-band, assigning a second user to the selected sub-band, until all sub-bands in a current time slot have been attributed, wherein a complementary channel gain is a channel gain such that assigning a user having that channel gain to the selected sub-band together with the corresponding first user would indicate a total sub-band throughput greater than the sub-band throughput achievable by assigning all available power as indicated by the provisional power allocation for the corresponding candidate pair of users for the respective sub-band to the first user.
3. The method of claim 2, wherein the selected sub-band to which the user is assigned as first user as an initial sub-band assignment is selected as the sub-band to which no first user is currently attributed offering the highest channel gain for that user.
4. The method of claim 2, wherein the set of candidate pairs is defined by considering each user excluding the user assigned as the first user in order of the respective channel gain values of each user for the selected sub-band, starting with the user having the highest channel gain, in a case where assignment of that user as a second user to the selected sub-band together with the corresponding first user would indicate a total sub-band throughput greater than the sub-band throughput achievable by assigning all available power for the respective sub-band to the first user alone, incorporating the user in the set and proceeding to the next user in order of respective channel gain values, while in a case where assignment of that user as a second user to the selected sub-band together with the corresponding first user would not indicate a total sub-band throughput greater than the sub-band throughput achievable by assigning all available power for the respective sub-band to the first user alone, proceeding to consider each user excluding the user assigned as the first user in order of the respective channel gain values of each user for the selected sub-band, starting with the user having the lowest channel gain, and in a case where assignment of that user as a second user to the selected sub-band together with the corresponding first user would indicate a total sub-band throughput greater than the sub-band throughput achievable by assigning all available power for the respective sub-band to the first user alone, incorporating the user in the set and proceeding to the next user in order of respective channel gain values, while in a case where assignment of that user as a second user to the selected sub-band together with the corresponding first user would not indicate a total sub-band throughput greater than the sub-band throughput achievable by assigning all available power for the respective sub-band to the first user alone, considering the set to be completely defined and proceeding to the step of assigning the respective second sub-band user for the selected sub-band.
5. The method of claim 2, wherein, once all users have been assigned to a sub-band as an initial sub-band assignment, assigning to any remaining sub-bands in the current time slot, and each sub-band in subsequent time slots, as a first user the user having the lowest total achieved throughput, wherein each user is assigned to the remaining sub-band to which no first user is currently attributed offering the highest channel gain for that user.
6. The method of claim 2, wherein once all users have been assigned to an initial sub-band, performing the further step of assigning to any remaining sub-bands in the current time slot and each sub-band in subsequent time slots as a first user being the user whose achieved total throughput is furthest from a respective target throughput defined for that user, wherein each user is assigned to the remaining sub-band to which no first user is currently attributed offering the highest channel gain for that user.
7. The method of claim 2, comprising the further step of sorting all users in order of best channel gain measured for the current time slot for each user across all sub-bands, where the user accorded the highest priority is the user having the lowest best channel gain, prior to the step of assigning, and wherein at the step of assigning the user assigned is the user having the highest priority excluding any user who has already been assigned to an initial sub-band to a selected sub-band in a time slot t.
8. The method of claim 2, wherein the second sub band user is selected as the candidate second user maximizing a metric reflecting a system throughput, subject to a factor reflecting fairness across users.
9. The method of claim 2, wherein the second sub band user is selected as the candidate second user maximizing a metric reflecting the total throughput achievable by each pair of users comprising the first user assigned to the sub band under consideration and a respective candidate second user, as a proportion of an average throughput achieved by that same pair of users over a predetermined preceding period.
10. The method of claim 2, wherein the second sub band user is selected as the candidate second user maximizing a metric reflecting the total throughput achievable by each pair of users comprising the first user assigned to the sub band under consideration and a respective candidate second user, as a proportion of a sum of deviations of the throughput of each user over a predetermined preceding period from an average throughput of all users over the predetermined preceding period.
11. The method of claim 2, wherein the second sub band user is selected as the candidate second user maximizing a matching between an average throughput of each user and an average throughput of all users over a predetermined preceding period.
12. The method of claim 2, comprising an additional step of assigning a final power allocation to each user of each sub-band.
13. The method of claim 12, wherein the step of assigning a provisional power allocation and the step of assigning a final power allocation comprises the steps of: determining a sub-band attenuation value proportional to a reciprocal of a square of the channel gain value of the users attributed to the selected sub-band and every sub-band to which users have been attributed for the current time slot, applying a water filling algorithm across the selected sub-band and every sub-band to which users have been attributed for the current time slot using a floor for each sub-band defined by a respective sub-band attenuation value, and, calculating a provisional power allocation from the water filling algorithm for the selected sub-band.
14. The method of claim 2, wherein the step of provisionally assigning a power allocation to each sub-band comprises for each sub-band for which the second respective user is to be assigned, calculating a provisional inter sub-band power allocation across all sub-bands for which assignment for the selected sub-band is considered to be complete plus the sub-band for which the second respective user is to be assigned by assuming a pro rata distribution of a total available power across all, and performing a waterfilling distribution of that provisional inter sub-band power allocation amongst the sub-bands for which assignment for the selected sub-band is considered to be complete plus the sub-band for which the second respective user is to be assigned on a basis of a waterfilling algorithm based on the channel gain of the users assigned to each sub-band.
15. A non-transitory computer readable medium storing a computer program comprising instructions which, when the computer program is executed by a computer, cause the computer to carry out the method of claim 2.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) The above and other advantages of the present invention will now be described with reference to the accompanying drawings, for illustration purposes only, in which:
(2)
(3)
(4)
(5)
(6)
DETAILED DESCRIPTION
(7)
(8) As shown in
(9) This embodiment relates to an initial sub-band assignment for each user. Subsequent sub-band assignments may occur once all users have received an initial assignment in accordance with this embodiment as described with reference to certain further embodiments below. Exemplary details of this approach are presented in more detail below.
(10) As shown, the method next proceeds to step 120 at which a user is assigned as an initial sub-band assignment to a respective selected sub-band in the current time slot t, as first user for that respective selected sub-band. The user assigned at this step may be any user excluding users who have already been assigned to an initial sub-band.
(11) The user to be assigned at this step may be selected a variety of bases. In certain embodiments, the method may comprise a further step of sorting all users in order of priority according to a criterion such as channel gain, distance between the user and base station, or the user's throughput prior to the step of assigning. On this basis, at step 120, the user assigned may be the user having the highest priority excluding any user who has already been assigned to an initial sub-band to a selected sub-band in a time slot t. In 3G and 4G systems, a parameter is generally fed back from the receiver to the transmitter with information regarding the quality of the channel. This can be treated in accordance with some embodiments of the present invention as an indicator of the channel gain value, and it is presumed that implementations of NOMA in accordance with the present invention will provide some analogous mechanism. As such, in any embodiment, whilst waterfilling is performed based on the channel gain of the users, this need not depend on an explicit measurement of each user's channel gain, but may also use any value that may be obtained or derived in the system which may be taken as indicative of a respective user's channel gain.
(12) As such, a priority list may be used at the beginning of the allocation process for the selection of the 1.sup.st user on each sub-band. The idea behind this priority list is to have all users granted a sub-band (and some throughput) at least once at the beginning of the allocation process. At the 1.sup.st time slot, the priority list may be created: all the K users are sorted in the Base Station (BS). The users are removed from this priority list as soon as they are selected in step 120 (or step 160 as described below). At subsequent time slots, if the list is not empty, only the remaining users are sorted again (update of the priority list). The resulting priority list is used while at least one user has not been assigned any sub-band during the assignment process. In certain embodiments, this sorting of users in order of priority may comprise sorting the users in order of best channel gain measured for the current time slot for each user across all sub-bands, where the user accorded the highest priority is the user having the lowest best channel gain.
(13) The lowest best channel gain (“lowest best h”) sorting provides good performance (in terms of cell-edge user throughput and total cell throughput)—Users may be sorted at the Base Station based on the channel gain experience by users on available sub-bands, h.sub.s,k being the channel gain of user k on sub-band s. This may be expressed in the following manner: for each user k, select that user's highest channel gain h.sub.s.sub.
(14) In certain embodiments, the user may be selected at random. This may comprise the further step of sorting all users in order of priority according to a random sorting, which may be performed at a lower processing overhead that other sorting approaches.
(15) Sub-Band Assignment
(16) User 1 (k.sub.1) is assigned the sub-band which has the highest value of h.sub.s,k1 among all the available sub-bands.
(17) In embodiments assigning users from a priority list, at this stage if the priority list is not empty, the assigned user k.sub.1 may be removed from the list. Accordingly, the selected sub-band to which the user is assigned as first user at step 120 may be selected as the sub-band to which no first user is currently attributed offering the highest channel gain for that user. Alternatively, the sub-band to which the user is assigned may be selected at random from the sub-bands to which no first user is currently assigned. This may comprise the further step of sorting all users in order of priority according to a random sorting, which may be performed at a lower processing overhead that other sorting approaches.
(18) For the purposes of this description, achieved throughput equals the average throughput achieved by the user over a predefined historical period, and projected throughput is, for the current time slot, the sum of the achievable throughputs for the user on each sub-band to which the user has been attributed. The achieved throughput can include the projected throughput or not.
(19) On the basis of these embodiments using a priority list, and considering that when a user is assigned to a sub-band (either as first or second user) that user is removed from the list, the selection of the first user in the initial sub-band assignment phase as discussed above may be described in terms of the priority list not being empty (i.e. all the users have not been assigned a sub-band, or, equivalently, any throughput, yet) in which case the selection of the next user to be assigned to a sub-band as user 1 may be carried out according to the order given by the priority list. Similarly, when the priority list is empty (all the users have now been assigned a sub-band or equivalently, a non-zero throughput) alternative selection mechanisms may be envisaged as described below.
(20) The method next proceeds from step 120 to step 130 at which a plurality of candidate pairs of users are determined for possible assignment to the selected sub-band, where each candidate pair of users comprises two different users including the first user (as assigned to the sub-band at step 120) and a candidate second user.
(21) At step 140, a provisional power allocation is assigned to the selected sub-band for each candidate pair of users.
(22) Power may be distributed equally amongst sub-bands, although there are many alternative approaches of allocation of power to sub-bands (such as waterfilling), and amongst users (for example FPA—Fixed power allocation, FTPA—fractional transmit power allocation or Full Search Power Allocation) within a sub-band, all of which are compatible with and encompassed in the present disclosure.
(23) In order to further improve the achieved system performance in NOMA, the problem of optimally distributing users among sub-bands should be addressed. This may lead to improved user fairness and/or increase the achieved system throughput.
(24) The achievable throughputs for users k.sub.1 and k.sub.2 are functions of the power allocated to each user as defined in equation 1 above.
(25) Several strategies can be applied to the distribution of a sub-band's available power between the users attributed to that sub-band, such as: Intrasub-band PA: Fixed Power Allocation (FPA) Fractional Transmit Power Allocation (FTPA) Full Search Power Allocation (FSPA)
(26) Similarly, the total available transmission power may be distributed between sub-bands by a variety of mechanisms. One example is based on an equal distribution of power. Alternatively, according to certain alternative embodiments, provisional PA may be carried out during the pairing process. This provides an opportunity to attempt to identify an optimal power distribution between the users.
(27) In certain embodiments, a provisional iterative waterfilling method may be applied to obtain the provisional distribution to be computed using the same iterative waterfilling method, with the total power amount Pmax to be distributed among all the S sub-bands.
(28) Conventional waterfilling requires an overall optimization over all the users and all the sub-bands, and is therefore not compatible with the sequential approach of the present invention.
(29) Using a specific formulation, waterfilling can be applied in a sequential fashion: users are selected sequentially, but final power allocation is only performed at the end of the process, once all the users have been chosen. The throughputs can only be computed at the end of the user selections process.
(30) A variant of this waterfilling process can be applied with the assumption that the power assigned to the s first sub-bands (1≤s≤S) is equal to s×Pmax/S where the s.sup.th sub-band is the sub-band selected for consideration, S is the total number of available sub-bands and Pmax is the total power amount to be distributed among all the S sub-bands.
(31) On this basis, Pmax/S is assigned to a first sub-band and no further inter-sub-band calculation is required for this sub-band. In successive iterations, the inter-sub-band power allocation for the s.sup.th sub-band assigned in the time slot (s>1) s×Pmax/S is provisionally assigned across the s first sub-bands. In these later iterations, where there are more than one sub-bands to consider, this power is redistributed among all the s sub-bands using the iterative waterfilling procedure as described in more detail below.
(32) Initially, a sub-band attenuation value for candidate set of users is obtained, proportional to the reciprocal of the square of gain of the selected channel, corresponding for each combination to the highest of the channel gain value associated with the users in that candidate set.
(33) Optionally, the sub-band attenuation value may be equal to the total transmission bandwidth multiplied by the Noise power, divided by the square of the selected channel gain value multiplied by the total number of the sub-bands, or
(34)
where N.sub.0 is the noise power (equal for all sub-bands) and h.sub.s,k*.sup.2 is the channel gain of the user k* showing the highest channel gain in a given combination of users on the sub-band currently under consideration, s designates a particular sub-band under consideration, and S is the total number of sub-bands.
(35) The provisional power assignment may then be calculated for the sub-band under consideration. This is calculated using a water filling algorithm across the selected sub-band and every sub-band selected previously, using a floor for each sub-band defined by the respective sub-band attenuation value.
(36) A waterfilling algorithm may be seen as implicitly ensuring that the total power assigned across the carrier under consideration and all other sub-bands to which users have been assigned, is equal to a pro-rata proportion of the total power budget, assuming an equal share of power for each sub-band for the total power budget equal to s×Pmax/S as discussed above, and such that for each sub-band considered thus far the sum of the power provisionally assigned to that sub-band and the sub-band attenuation value of that sub-band is a constant.
(37) Specifically, the waterline level is predicted based on the previous level (as determined for the sub-bands allocated so far) and the channel gain of the considered users scheduled on the current sub-band s.
(38) Maximizing the achieved throughput through an optimal sharing a pro-rata proportion of the total transmit power s×Pmax/S among s sub-bands may then be achieved if:
(39)
where P.sub.j denotes the amount of power allocated to sub-band j, W.sub.s is the waterline at allocation stage s, and h.sub.j,k*.sub.
(40) During the allocation process, a pro-rata proportion of the total transmit power s×Pmax/S is distributed, at each allocation stage i, among allocated sub-bands based on (5), resulting in:
(41)
which can be re-written as:
(42)
(43) When allocating power to the next sub-band, denoted by s+1, since a proportional amount of total power is re-distributed by the scheduler, the waterline is updated only if
(44)
otherwise it will keep its old value and w.sub.s+1=w.sub.s. When the waterline is updated, a pro rata proportion of the total transmit power (s+1)Pmax/S is distributed at stage s+1 as follows:
(45)
(46) Hence, using equation (7) and equation (8), the following equality holds:
(47)
(48) Then, the waterline at stage s+1 can be formulated as:
(49)
(50) Therefore, at each s.sup.th step of the scheduling process, for every candidate user set U, the waterline level is derived from
(51)
where k*.sub.s,U is the user showing the highest channel gain among scheduled users in the set U, over sub-band s. Once the waterline level at the actual stages is determined, power may then be provisionally assigned for each candidate set U as P.sub.s,U using:
(52)
(53)
(54)
(55) As shown in
(56) As shown in
(57) As such, in
(58) Thus, as shown, a first provisional power allocation 301 is made to the sub-band currently under consideration, a second provisional power allocation 302 is implied for sub-band 1, and a third provisional power allocation 303 is implied for the sub-band 2, such that in each case the sum of each provisional power allocation with the corresponding sub-band attenuation value would be equal to a constant value 304, and the sum of the three values 301, 302, 303 is equal to the pro rata proportion of the transmission power budget. It will be appreciated the implicit power allocations for the sub-bands not under consideration are not in fact retained for those other sub-bands. In particular, user allocation for those sub bands may be performed on the basis of the provisional power allocations performed for those sub bands when there were under consideration, and where appropriate a new definitive power allocation may be performed once all user assignment is complete.
(59) This approach is analogous to filling a vessel with an uneven floor (as dictated by the different sub-band attenuation values) with water. Given a particular volume of water, corresponding to the total transmission power budget, it will naturally find its own level, whereby the depth at any point indicates the power allocation for the underlying sub-band.
(60) This represents a rational mechanism for power distribution, since it makes sense to invest the most power in the sub-band with the highest channel gain, and thus the lowest sub-band attenuation value, since allocating on this basis ensures the highest possible total throughput rates.
(61) The step of assigning a provisional power allocation may comprise the steps of for each sub-band for which the second respective user is to be assigned, calculating a provisional inter sub-band power allocation across all sub-bands for which assignment for the selected sub-band is considered to be complete plus the sub-band for which the second respective user is to be assigned. This provisional inter sub-band power allocation may be obtained by assuming a pro rata distribution of the total available power across all sub-bands, and performing a waterfilling distribution of that provisional inter sub-band power allocation amongst the sub-bands for which assignment for the selected sub-band is considered to be complete plus the sub-band for which the second respective user is to be assigned on the basis of a waterfilling algorithm based on the channel gain of the users assigned to each sub-band.
(62) At step 150, the plurality of candidates is restricted to a set of candidate pairs comprising candidate second users whose channel gain is complementary to the channel gain of the first user.
(63) A complementary channel gain is a channel gain, such that assigning a user having that channel gain to the selected sub-band together with the corresponding first user, would indicate a total sub-band throughput greater than the sub-band throughput achievable by assigning all available power as indicated by the provisional power allocation for the corresponding candidate pair of users for the respective sub-band to the first user.
(64) In certain embodiments, a complementary second user may be a candidate second user which exhibits a large difference in channel gain with respect to the first user k.sub.1, taking advantage of the fact that the total throughput in NOMA systems increases with the difference in channel gains of paired users. In certain embodiments, a complementary second user may be a candidate second user whose channel gain differs from that of the first user k.sub.1, taking advantage of the fact that the total throughput in NOMA systems increases with the difference in channel gains of paired users.
(65) Different mechanisms for identifying such complementary users may be envisaged. In a first, “brute force” implementation, the channel gain values may be computed for all the users k.sub.2 (excluding the already selected first user k.sub.1) for the sub-band s for which the second respective user is to be assigned, and for every candidate second user k.sub.2, computing the achievable throughput for k.sub.1 and k.sub.2 on s.
(66) It will be appreciated that the achievable throughput for k.sub.1 and k.sub.2 depends on the intra-sub-band and inter sub-band power allocation strategy.
(67) On this basis, only the subset S.sub.2 of users k.sub.2 need be retained such that the cumulated achievable throughput of k.sub.1 and k.sub.2 on sub-band s is greater than the throughput of k.sub.1 alone (that is, the OMA situation). If no user k.sub.2 can satisfy this condition (S.sub.2=Ø), the method may simply adopt OMA, where user k.sub.1 occupies the currently selected sub-band s.
(68) Other approaches besides the forgoing brute force approach are possible.
(69)
(70) As shown in
(71) Specifically, the method starts at step 450 before proceeding to step 451 at which the sub-band throughput achievable by assigning all available power for the respective sub-band to the first user alone is calculated (the OMA scenario). In
(72) In a case where it is determined at step 454 that assignment of the user as a second user to the selected sub-band together with the corresponding first user would not indicate a total sub-band throughput greater than the sub-band throughput achievable by assigning all available power for the respective sub-band to the first user alone (B=<A), the method proceeds to step 456. This represents the inference that if a particular candidate user cannot provide an improvement in throughput, successive candidate second users with lower channel gains will be increasingly close to the channel gain of the first user, and as such necessarily offer still lower total throughputs. On this basis, the subsequent candidate second users can be disregarded without specific treatment.
(73) It will be appreciated that the steps 452 to 455 start from the assumption that the channel gain of the first user is low, so that complementary second users will have high channel gains. The opposite scenario may also be possible, where the first user has a high channel gain, so that the complementary second user will have a low channel gain. The following steps apply a corresponding logic to this scenario.
(74) At step 456, the candidate second user having the lowest channel gain is selected. The method then proceeds to step 457 at which the sub-band throughput achievable by assigning the selected candidate second user to the selected sub-band together with the corresponding first user is determined. In
(75) In a case where it is determined at step 458 that assignment of the user as a second user to the selected sub-band together with the corresponding first user would not indicate a total sub-band throughput greater than the sub-band throughput achievable by assigning all available power for the respective sub-band to the first user alone (B=<A), the method terminates at step 460. This represents the inference that if a particular candidate user cannot provide an improvement in throughput, successive candidate second users with higher channel gains will be increasingly close to the channel gain of the first user, and as such necessarily offer still lower total throughputs. On this basis, the subsequent candidate second users can be disregarded without specific treatment.
(76) Accordingly, the steps of
(77) It will be appreciated that this may be achieved via a range of different logical flows of equivalent effect. For example, the method might start by working up from the candidate second user with the lowest channel gain before considering candidate second users with high channel gains, or the two approaches may be performed independently or in parallel. The determination of the sub-band throughput achievable by the first user alone may be performed at any convenient juncture before step 454 at which the value is required.
(78) The method of
(79) Now that a set of complementary pairs of candidate users is available, the method of
(80) At step 160, the second sub band user may be selected as the candidate second user maximizing a metric reflecting the system throughput, subject to a factor reflecting fairness across users.
(81) There exist a variety of metrics suitable for the selection of the second users subject to a factor reflecting fairness across users, examples of which will be presented in the following part of the specification.
(82) A first example of a metric suitable for use at step 160 is termed “Flexible Throughput vs Fairness Maximisation Metric” (FTFMM).
(83) In accordance with the FTFMM metric, a second user k.sub.2 is selected that maximizes the metric
(84)
Where R.sub.s,k(t) (and respectively R.sub.s,k1(t)) is the achievable throughput for user k (respectively k.sub.1) on sub-band s, when paired with k.sub.1 (respectively k). R.sub.k,tot(t) (and respectively R.sub.k1,tot(t)) is the historical throughput for user k in a past window of length t.sub.c taking account of the projected throughput of user k at time t,R.sub.k(t) (respectively t,R.sub.k1(t)).
(85)
Where T.sub.k(t) is the average throughput of user k in the past window of length t.sub.c, R.sub.k(t) (projected throughput) is the sum of the achievable throughputs for user k on each sub-band to which user k has been attributed in the current time slot.
(86) The maximization of this metric tends to favour the pair of users with a high NOMA throughput and/or with a low historical throughput.
(87) Thus the numerator portion represents the NOMA throughput on sub-band s with a given pair of users, and the denominator represents a weighted cumulated historical throughput of those same users.
(88) Parameters a and b are optional and may take values between 0 and 1, so as to provide a mechanism for varying the relative importance of fairness on one hand and throughput on the other.
(89) If a=0, the historical throughput of the second candidate user is not accounted for in the metric and the selection of user k.sub.2 is only based on the maximisation of the NOMA throughput on the current sub-band (since user k.sub.1 is fixed).
(90) If b=0, user k.sub.2 is selected by taking the NOMA throughput as well as the historical throughput of user k.sub.2 into consideration. The metric ensures balance between fairness for k.sub.2 and NOMA throughput on the current sub-band s.
(91) In other cases (0<a, b<1) the historical throughput of user k.sub.1 is taken into account in the denominator, reducing the impact of the historical throughput of user k.sub.2.
(92) The maximisation of this metric tends to favour the pair of users with a high NOMA throughput, and/or with a low historical throughput and/or with a low throughput loss in NOMA as compared to an OMA configuration with user k.sub.1 alone.
(93) User selection on the basis of the foregoing metrics generally comprises identifying the user minimizing or maximizing the metric. It will be appreciated that since the metrics are presented as one factor divided by another, whether the desired user maximizes or minimizes the metric will depend on which factor is adopted as the numerator and which as the denominator. Generally, this may be referred to as identifying the user giving rise to an extremum in the ratio between the two factors.
(94) As such, this is one example of a metric suitable for use in the selection of the second user for a particular sub-band, wherein the second sub band user is selected as the candidate second user giving rise to an extremum in a metric reflecting the ratio between total throughput achievable by each pair of users comprising the first user assigned to the sub band under consideration and a respective candidate second user, and the average throughput achieved by that same pair of users over a predetermined preceding period.
(95) A second example of a metric suitable for use at step 160 is termed “Fairness Maximisation metric” (FMM). In accordance with this metric, the user k.sub.2 that minimizes the following metric is selected:
(96)
(97)
(98)
(99)
is the average value of R.sub.k′,tot(t), computed over all the users. The minimization of this metric tends to favour user k.sub.2 that makes the historical throughput of every user as close as possible to the average throughput of all users. Perfect fairness is obtained when the metric is equal to zero. In equation (13), the candidate second user under consideration k does not explicitly appear in the expressions of the numerator or of the denominator but it actually has an impact on the values of the historical throughput values R.sub.k′,tot(t) and on AVG(t) via the projected throughputs, R.sub.k′(t). Illustrating Examples: In case of equal power allocation: only the historical throughput values of the candidate second user under consideration k and of the selected first user k.sub.1, R.sub.k,tot(t) and R.sub.k.sub.
(100) As such, this is one example of a metric suitable for use in the selection of the second user for a particular sub-band, wherein the second sub band user is selected as the candidate second user giving rise to an extremum in the matching between the average throughput of each user and the average throughput of all users over a predetermined preceding period.
(101) A third example of a metric suitable for use at step 160 is a variant of the Flexible Throughput vs Fairness Maximisation Metric, wherein the user k.sub.2 that minimizes the following metric is selected:
(102)
(103) The minimization metric tends to favour users k.sub.2 that make the historical throughput of every user as close to the average throughput of all users and/or with a high NOMA throughput. As such this metric represents a combination of aspects of the preceding metrics, offering a balance between fairness and throughput.
(104) This metric computation requires Power Allocation, PA (provisional or final, depending on the PA Strategy).
(105) As such, this is one example of a metric suitable for use in the selection of the second user for a particular sub-band, wherein the second sub band user is selected as the candidate second user giving rise to an extremum in a metric reflecting a ratio between the total throughput achievable by each pair of users comprising the first user assigned to the sub band under consideration and a respective candidate second user, and the sum of deviations of the throughput of each user over a predetermined preceding period from the average throughput of all users over the predetermined preceding period.
(106) It has been shown experimentally that implementations performed by the inventors of the method of
(107) It has been shown experimentally that implementations of the method of
(108) It has been shown experimentally that implementations of the method of
(109) All implementations of the invention provide significant improvements compared to conventional proportional fairness in NOMA (reaching a Gini fairness of 0.1 in less than 10 ms or less) apart from the FTFMM metric with the a weighting factor set to 0 and the b weighting factor set to 1, which shows a relatively small improvement.
(110) The FTFMM metric with the a weighting factor set to 1 and the b weighting factor set to 0, and the FMM metric show a far smoother, less bursty user throughput level over time.
(111) It has been shown experimentally that implementations of the method of
(112) Naturally the values obtained in different configurations will vary on the basis of system configuration and other experimental conditions.
(113) Although as discussed above a certain number of exemplary metrics have been presented, it will be appreciated that many variants of these general approaches may be envisaged, any of which may be chosen based on the relevant importance of different operational parameters in a particular implementation.
(114) As shown in
(115) The method of
(116) As mentioned above, the embodiment of
(117) In either case, on this basis where, at step 160, the set of assignable users is empty, no second user is assigned to the sub-band corresponding to the empty set, and user assignment for the selected sub-band is considered to be complete on the basis of the assignment of the first user alone.
(118) On this basis, once user assignment is considered to be complete for all sub-bands for the current time slot, in a case where some users have not yet been assigned to any sub-band as an initial time slot assignment, the method may comprise the further steps of continuing to repeat the steps of assigning as an initial sub-band assignment a first user to the selected sub-band, provisionally assigning a power allocation to the selected sub-band, and assigning a second user as an initial sub-band assignment to the selected sub-band, and selecting a new sub-band for successive time slots, until all users have been assigned to a sub-band in the current time slot.
(119) As mentioned above, the embodiment of
(120) Alternatively, once all users have been assigned to an initial sub-band, for any remaining sub-bands in the current time slot and each sub-band in subsequent time slots, a user may be assigned as first user whose achieved total throughput is furthest from a respective target throughput defined for that user, wherein each user is assigned to the remaining sub-band to which no first user is currently attributed offering the highest channel gain for that user. This approach may be applicable in particular where users are assigned throughput targets.
(121) The separate treatment of initial sub band allocation advantageously helps ensure that all users are served quickly, thereby reducing service latency and in a quasi-optimal way. After this initial phase, users may be served according to the system/user requirements for example on a best effort or target throughput basis. The initial phase as described above allows the short-term fairness to be improved and the subsequent phase helps guarantee a high throughput and a good long-term fairness.
(122) The method may comprise an additional step of assigning a final power allocation to each user of each sub-band. This may be performed for example for each sub-band once all user allocations are complete for that sub-band in the current time slot. The final power allocation may be performed by a final iteration of the waterfilling method as described above.
(123) There may be provided a further step of computing a final real throughput value for each sub-band on the basis of the respective first and second users assigned thereto and the final power allocation for that sub-band, and comparing this final real throughput with the throughput achievable by each respective user alone on each respective sub-band, and in a case where a respective final real throughput is less than the throughput achievable by the respective user alone on any respective sub-band, revoking the second user assigned to that respective sub-band and allocating all power available for that sub-band to the respective first user.
(124)
(125) a user sorter 501 adapted to sort users in order of priority according to a criterion such as channel gain, distance between the user and base station, or the user's throughput. As shown, the users are stored in a first data structure 510 presenting a user list 511, which is ordered by the user sorter 501.
(126) The system 500 further comprises an assignment processor 503 adapted to assign, as an initial sub-band assignment, the user having the highest priority excluding any user who has already been assigned to an initial sub-band to a respective selected sub-band in a time slot t, as first user for that respective selected sub-band. The selected sub-band to which each user is assigned is selected by the assignment process as the sub-band to which no first user is currently attributed offering the highest channel gain for that user. As such, the assignment processor 503 accesses the user list 511 to obtain priority information to select the first user, and also accesses a second data structure 520 presenting a sub-band list 521, to register assignments in an associated sub-band assignments space 522.
(127) The system 500 further comprises a power calculator 502 adapted to determine for the respective selected sub-band a plurality of candidate pairs of users for possible assignment to the selected sub-band, each candidate pair of users comprising two different users including the first user selected by the assignment processor 503 and a respective candidate second user, and to provisionally assign a power allocation to the selected sub-band for each candidate pair of users. As such, the power calculator 502 accesses the second data structure 520 to register power assignments to each candidate pair of users as stored in the selected sub-band assignments space 522. In some embodiments, depending on the approach adopted for the determination of intra sub-band power assignments, the power calculator may also access user list 511 to obtain channel gain values associated with respective users in an associated user channel gain space 512.
(128) The assignment processor 503 may further be adapted to restrict the plurality of candidate pairs to a set of candidate pairs comprising candidate second users whose channel gain is complementary to the channel gain of the first user, and to assign the respective second sub-band user as an initial sub-band assignment to the user excluding any user who has already been assigned to an initial sub-band, belonging to the set maximizing a performance metric reflecting the achieved throughput, and/or fairness across users. As such, the assignment processor 503 may access the second data structure 520 to cancel candidate pair designations relating to non complementary combinations of users.
(129) The system 500 is adapted to iteratively process users for each sub-band, until all sub-bands in the current time slot have been attributed. By the same token, the system 500 may sequentially process subsequent time slots.
(130) It will be appreciated that alternative functional groupings may be envisaged, implementing equivalent operations.
(131) By way of example, the system of
(132) It will be appreciated that the system of
(133) The disclosed methods and/or functional groupings may take form of an entirely hardware embodiment (e.g. FPGA), an entirely software embodiment (for example to control a system according to the invention) or an embodiment containing both hardware and software elements. Software embodiments include but are not limited to firmware, resident software, microcode, etc. The invention can take the form of a computer program product accessible from a computer-usable or computer-readable medium providing program code for use by or in connection with a computer or an instruction execution system. A computer-usable or computer-readable medium can be any apparatus that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The medium can be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system (or apparatus or device) or a propagation medium.
(134) Thus, according to certain embodiments there, a mechanism is presented for attributing users to one or more of a plurality of sub-bands in a multiple access communications system, in which in an initial assignment phase, a first user is selected for a sub band, for example on the basis of a user priority. Users having complementary channel gains to that of the first user are identified, and then a second sub-band user maximizing a performance metric reflecting the achieved throughput, and/or fairness across users, is selected to accompany the first user on that sub-band. The initial assignment phase may terminate once all users have been assigned to a sub-band once. After the first phase is complete, the first user for each sub-band may be the user whose achieved total throughput is furthest from a target throughput defined for that user, wherein each user is assigned to the remaining sub-band to which no first user is currently attributed offering the highest channel gain for that user.
(135) These methods and processes may be implemented by means of computer-application programs or services, application-programming interface (API), library, and/or other computer-program product, or any combination of such entities.
(136) It will be understood that the configurations and/or approaches described herein are exemplary in nature, and that these specific embodiments or examples are not to be considered in a limiting sense, because numerous variations are possible. The specific routines or methods described herein may represent one or more of any number of processing strategies. As such, various acts illustrated and/or described may be performed in the sequence illustrated and/or described, in other sequences, in parallel, or omitted. Likewise, the order of the above-described processes may be changed.
(137) The subject matter of the present disclosure includes all novel and non-obvious combinations and sub-combinations of the various processes, systems and configurations, and other features, functions, acts, and/or properties disclosed herein, as well as any and all equivalents thereof.