GB2469081A - Optimizing subsets of channels for wireless scheduling and precoding - Google Patents

Optimizing subsets of channels for wireless scheduling and precoding Download PDF

Info

Publication number
GB2469081A
GB2469081A GB0905588A GB0905588A GB2469081A GB 2469081 A GB2469081 A GB 2469081A GB 0905588 A GB0905588 A GB 0905588A GB 0905588 A GB0905588 A GB 0905588A GB 2469081 A GB2469081 A GB 2469081A
Authority
GB
United Kingdom
Prior art keywords
station
subset
stations
run
optimization
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
GB0905588A
Other versions
GB2469081B (en
GB0905588D0 (en
Inventor
Ngoc-Dung Dao
Yong Sun
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Europe Ltd
Original Assignee
Toshiba Research Europe Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Research Europe Ltd filed Critical Toshiba Research Europe Ltd
Priority to GB0905588A priority Critical patent/GB2469081B/en
Publication of GB0905588D0 publication Critical patent/GB0905588D0/en
Publication of GB2469081A publication Critical patent/GB2469081A/en
Application granted granted Critical
Publication of GB2469081B publication Critical patent/GB2469081B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J11/00Orthogonal multiplex systems, e.g. using WALSH codes
    • H04J11/0023Interference mitigation or co-ordination
    • H04J11/0026Interference mitigation or co-ordination of multi-user interference
    • H04J11/003Interference mitigation or co-ordination of multi-user interference at the transmitter
    • H04J11/0033Interference mitigation or co-ordination of multi-user interference at the transmitter by pre-cancellation of known interference, e.g. using a matched filter, dirty paper coder or Thomlinson-Harashima precoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03006Arrangements for removing intersymbol interference
    • H04L25/03343Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • H04L25/40Transmitting circuits; Receiving circuits
    • H04L25/49Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
    • H04L25/497Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems by correlative coding, e.g. partial response coding or echo modulation coding transmitters and receivers for partial response systems
    • H04L25/4975Correlative coding using Tomlinson precoding, Harashima precoding, Trellis precoding or GPRS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/003Arrangements for allocating sub-channels of the transmission path
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/04TPC
    • H04W52/30TPC using constraints in the total amount of available transmission power
    • H04W52/34TPC management, i.e. sharing limited amount of power among users or channels or data types, e.g. cell loading
    • H04W52/346TPC management, i.e. sharing limited amount of power among users or channels or data types, e.g. cell loading distributing total power among users or channels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/12Wireless traffic scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/02Channels characterised by the type of signal
    • H04L5/023Multiplexing of multicarrier modulation signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/12Wireless traffic scheduling
    • H04W72/1263Mapping of traffic onto schedule, e.g. scheduled allocation or multiplexing of flows
    • H04W72/1273Mapping of traffic onto schedule, e.g. scheduled allocation or multiplexing of flows of downlink data flows

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Power Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

In a wireless communication system in which Tomlinson-Harashima-precoded data streams are assigned to a sub-band (ie. Resource Block, RB - see fig. 1) of Orthogonal Frequency Division Multiplexed (OFDM) subcarriers, users (stations) are scheduled by optimising a matrixA-1which identifies users having the minimum mean square error (MMSE) based on their channel matrixHand allows them to be precoded last, while high MSE users requiring more protection are precoded first, in a way which accounts for different channel and noise powers amongst users.A-1is updated after each step in which a new user is added or an existing user removed from the subset according to rules J1and J2. Multiple runs of the process can be performed in order to calculate whether further optimization is possible, and schedules involving two or more sub-bands separated in time (fig. 1b) or frequency (fig. 1c) can be optimised.

Description

I
WIRELESS COMMUNICATION METHOD AND APPARATUS
FIELD OF THE INVENTION
The present invention relates to wireless communication. It is particularly, but not exclusively, concerned with a method and apparatus for multi-user downIink scheduling and precoding in a wireless network.
BACKGROUND OF THE INVENTION
Multi-user precoding exploits channel information available at a transmitter to facilitate the simultaneous transmission of multiplexed data streams to multiple users. When channel state information (CSI) is available, linear and non-linear precoding can be employed, with non-linear techniques such as Tomlinson-Harashima precoding generally achieving improved performance but at the expense of increased complexity.
In practice, only a limited number of users can be accommodated at any given time, and so some method of scheduling users is often implemented jointly with multi-user precoding.
User scheduling Many current and proposed wireless communications systems employ orthogonal frequency division multiple access (OFDMA) modulation. In such systems, a resource block (RB), which can broadly be defmed as a unit of radio resource for data transmission, comprises several adjacent subcarriers and several consecutive OFDM symbols. The data stream for a user (or data streams for multiple users, in the case of multi-user precoding) can be sent over one or several RBs.
For example, in the proposed IEEE 802.16m standard (http://wirelessman.orgltgrnf), a resource block (also known as a sub-band) is defmed as consecutive OFDMA symbols in the time domain, and consecutive subcan-iers in the frequency domain.
Figures 1 a to 1 c illustrate three exemplary ways in which users can be assigned to OFDM RBs. In Figure 1a, several users are allocated to one RB (RB1); in Figure lb. several users are allocated to two RBs (RB!, RB5) that are consecutive in time; and in Figure ic, users are allocated to two RBs (RB1, RB2) that are along in frequency. The main difference between the allocation of users according to Figures lb and ic is that, in the case of Figure ib, the channels of the two RBs can be considered to be constant, whereas in the case of Figure ic, the channels of the two adjacent RBs are different.
The three cases shown in Figure 1 form the basis from which other combinations of user assignments can be derived and which will be readily apparent to the skilled person.
Known criteria for user selection include: minimizing the sum of mean square error (MSE) of all users (Kusume, K. et al., "Cholesky Factorization With Symmetric Permutation Applied to Detecting and Precoding Spatially Multiplexed Data Streams", IEEE Transactions on Signal Processing, vol. 55, no.6, pp.3089-3103, June 2007; and Schmidt, D.A. et a!., "Minimum mean square error vector precoding", Proc. IEEE Conf on Personal, Indoor, and Mobile Radio Communications, vol. 1, Berlin, Germany, Sep. 2005, pp. 107-111); maximizing the orthogonality among users in one RB (Yoo, 1. and Goldsmith, A. "On the optimality of multiantenna broadcast scheduling using zero-forcing beamforming", IEEE Journal on Selected Areas in Communications, vol. 24,. No. 3, pp. 528-541, March 2006); and maximizing the upper bound on capacity of the multi-user precoding (Zhang, X. and Lee, J. "Low complexity MIMO scheduling with channel decomposition using capacity upperbound", IEEE Transactions on Communications, vol. 56, no. 6, pp. 871- 876, June 2008).
Linear precoding In linear precoding, a linear transformation is applied to a data stream prior to its transmission. Exemplary linear precoding approaches are described in Joham, M. Ct aL, "Linear transmit processing in MIMO communications systems", IEEE Transactions on Signal Processing, vol. 53, no. 8, pp. 2700-2712, Aug. 2005; and Peel, C.B. et a!., "A vector-perturbation technique for near-capacity multiantenna multiuser communication-part I: channel inversion and regularization", IEEE Transactions on Communications, vol. 53, no. 1, pp. 195-202, Jan. 2005.
A general block diagram of a communications system 200 implementing linear, multi-user precoding is depicted in Figure 2. At a transmitter 202, a power loading unit 206 allocates different transmit power to data streams by multiplying the users' data vectors s with a diagonal matrix A. For convenience, it is often assumed that a uniform power allocation among users is employed, in which case the diagonal matrix A is identity (A = I). A precoding unit 208 generates a precoding matrix P to precode the data vector s, resulting in the precoded data vector x, which is then transmitted across a channel H. At a receiver 204, a receiver filter 210 may be used to improve the performance. Then a detector 212 detects the signals output by of the receiver filter to provide an estimated data vector Sest.
If it is assumed that the channel H exhibits frequency flat fading, the fading model may be directly extended to one RB of OFDMA systems. In one RB, the subcarrier channels are highly correlated. Thus channel vectors of one representative subcarrier can be used for user selection. Let the number of selected users be K �= M, where M is the number of antennas at the transmitter. Each user has single receive antenna and the receiver filter, which here is defined as a variable scalar g (k 1,2,.. ., K). Let G = diag(g1, g2,. . . g,) and H = [hç h... b f be the channel matrix, obtained by stacking the row channel vector hk of user k (k = 1,.. . , K), where superscript T denotes matrix transpose operation.
In the block diagram of linearly precoded system in Figure 2, the transmit signal is precoded by a matrix P as x=Ps, (1) and the received signals of all users after the receiver filter module is z=G(Hx+n)G(HPs+n) (2) A brief overview of how precoding matrices and their mean square error (MSE) are generated is now presented, for both minimum mean square error (MMSE) and zero forcing (ZF) precoders. Subsequently, the discussion will focus on MMSE precoders, which can be considered a more generalized precoder than ZF precoders.
For the linear MMSE precoder (or Wiener filter precoding) proposed in Joha.m et al. (2004) and Peel et a!. (2005), the precoding matrix is given as = [HH GHGH+ tr(GRnG")i J HHG (3) where R is the noise covariance matrix, E,. is the total transmit power, IM is an M x M identity matrix, and superscript H denotes matrix transpose conjugate operation. Let
F = H"G"GH+ tr(GR:GH)i (4) The power normalization scalar /3 is given as -/ (5) /3 \Itr(F2HGHRsGH) The sum MSE for the linear MMSE precoder follows = )GG +1K] Rs]. (6) Note that R is the signal covariance matrix, which is equal to the power loading matrix A, and K is a K x K identity matrix. Here, set R K' since no power loading is considered for this particular case.
For the linear zero forcing (ZF) precoder, the precoding matrix can be obtained by tr(GR GHs removing the term / in equations (3) and (4). The sum MSE for the ZF precoder is obtained by removing the identity matrix K in equation (6).
From the optimization of the linear MMSE precoder, the cost metric is the sum MSE of users given in equation (6). First, the situation schematically depicted in Figure 1 a (one RB) is considered. The target is to select K out of KT users such that the selected users have the smallest sum MSE.
In equation (6), the optimal solution could be obtained by performing an exhaustive search for a combination of user that minimize the sum MSE metric iy, w =fr[ (GRGH)GIfflG +1K]]. (7) Such an exhaustive search may be too complex computationally as the number of user combinations is (K') K! (8) tK) K!(K-K)! In Karaa, H. and Adve, R. S., "User Assignment for MIMO-OFDM Systems with Multiuser Linear Precoding", IEEE Wireless Communications and Networking Conference 2008, WCNC 2008, PP. 952-957, a user selection algorithm applying the virtual uplink concept is suggested. A power allocation scheme is proposed for a virtual uplink. The users having minimal virtual uplink MSE will be selected. However, this approach requires optimization tools having high complexity.
For the situations schematically depicted in Figures lb and ic, in which users are assigned to two different RBs, exhaustive user selection is similarly highly complex.
Currently, low-complexity solutions have not been proposed.
Non-linear precoding Fundamentally, non-linear precoding is based on the concept of Dirty Paper Coding (DPC), the basic premise of which is to pre-subtract known interference at the transmitter such that the capacity is effectively the same as if there was no interference at all.
Exemplary non-linear precoding approaches are described in Hochwald, B.M. Ct al., "A vector-perturbation technique for near-capacity multiantenna multiuser communication- part II: perturbation", IEEE Transactions on Communications, vol.53, no.3, pp. 537- 544, March 2005); Kusume et al. (2007); and Schmidt et al. (2005).
For non-linear precoding approaches the communications system of Figure 2 can be modified by the addition of a vector perturbation unit 314 at the transmitter 302, as shown in Figure 3. Also at the transmitter side, power loading can applied to the users' data streams by a power loading unit 306, though for this discussion it is again assumed that no power loading is employed. This means that the power loading matrix A is identity. Then the perturbation unit 314 adds a perturbation (translation) vector to a user's data vector, so as to minimize a performance metric, for example the instantaneous transmit energy (the transmit power for each channel use) or the sum MSE of all users. Finally, in precoding unit 308, a precoding matrix P is applied to the perturbed data vector.
At the receiver 304, a receiver filter 310 is used to provide more freedom in optimizing the receiver performance. Then the perturbation data is removed by unit 316 and unperturbed received signals are used to detect the transmitted data by detector 312.
Tomlinson-Harashima precoding Of the known non.-linear precoding techniques, Tomlinson-Harashima (TH) precoding provides an efficient yet simple solution which nearly approaches the capacity of the broadcast channels. In TH precoding the feedback part of decision feedback equalization (DFE) is performed at the transmitter.
Exemplary TH precoding techniques are described in Joham, M. et al. "MMSE approaches to multiuser spatio-temporal Tonilinson-Harashima precoding", Proc. 5thi ITG Conf Source and Channel Coding Erlangen, Germany, Jan. 2004, p. 387; Windpassinger, C. et al. "Precoding in multiantenna and multiuser communications", IEEE Transactions on Communications, vol. 3, no. 4, pp. 1305-1316, 2004; and Liu, J. and Kizymien, W.A., "Improved Tomlinson-Jlarashima precoding for the downlink of multi-user MIMO systems", Canadian Journal of Electrical and Computer Engineering, vol. 32, no.3, pp. 133-144, Summer 2007.
Further, the method proposed in Kusume et al. (2007) and EP1782554 (Precoder and method for precoding an input sequence to obtain a transmit sequence) provides good performance in terms of bit error rate (BER) and its performance is close to the vector perturbation (VP) precoding of Schmidt et al. (2005).
Figure 4 shows a block diagram of a system 400 using non-linear TH preco ding. At the transmitter 402, data vector s is permuted by a matrix H 406. Then the feedback precoding matrix B -I 408 in combination with Mod module 410 is to sequentially compute the perturbation data of users. The feedforward precoding matrix F 412 precode the perturbed data vector. For simplicity, it is assumed that each user has single receive antenna. Hence, the receiver filter is omitted.
It is also assumed that the transmitter knows the channels of all of the users. Let hk [h1 h2... hM] be the channel vector from the transmitter to a user k. Stacking all the users' channel vectors, a channel matrix of all users is obtained as H[hr h... h]T. (9) At the transmitter side, data symbols of users are first permuted and then processed in two steps: backward precoding and feedforward precoding. The permutation matrix H plays an important role in improving the average bit error rate (BER) performance of all users. In the feedback and feedforward precoding matrices, B and F, are specified as follows. Let
HH+t1()I, (10) and IEJ'IIT =U'1DU (11) where R is the noise covariance matrix of users and Efr is the total transmit power. The matrices H, U and 1) are jointly computed by a Cholesky factorization with symmetric permutation in Kusume et al. (2007); and Golub, G.H. and Loan, C.F.V.
"Matrix Computations", 3Id ed. Baltimore, MD: Johns Hopkins Univ. Press, 1996. The matrix U is an upper triangular with ones in the main diagonal, while D is a diagonal matrix. In Kusume et a!. (2007), the factorization in equation (11) produces a lower triangular matrix. This difference just changes the precoding order of users but has no impact on the average BER of all users.
It will be appreciated that the noise of a user receiver includes thermal noise of receiver itself and interference noise from the wireless channel.
The feedback precoding matrix B and feedforward precoding matrix F are specified as follows.
B=U', (12) F=J3F (13) where F=H1LITU'1D, (14) z = ((:, 1)r + & 2: K)02 (15) (16) 8= , (17) p-.-1 and p is the size of the QAM constellation. The factor e is known as precoding loss of TH precoding in literature.
It can be shown that the sum of mean-square-error (MSE) of all users due to the above TH precoder is v/=/3dK+>.EdkJ (18) where dk is the k-th diagonal entry of matrix P. For a given channel H, user ordering for precoding greatly affects the overall performance of TH precodirig. Therefore, finding the optimal user permutation matrix II is crucial for minimizing the MSE metric of equation (18). The optimal permutation can be obtained by an exhaustive search of all possible user permutations. The best permutation is the one that gives the smallest sum MSE. However, the number of permutations, which is K!, can be very large when a large number of users are present.
Such an approach could therefore be too complex to implement.
A method to compute II is proposed in Kusume et al. (2007), which is shown to be near optimal in the sense that the SNR loss is negligible. In that proposed method, the matrices H, U and D are jointly optimized based on a Cholesky factorization with symmetric permutation, as per Windpassinger et al. (2004). The algorithm selects one user in each step of Cholesky factorization such that the best user (with smallest MSE among the remaining unsorted users) is selected. In this way, the best user is selected first but it is precoded last, i.e. the precoding order of permuted users 1 to K will be K to I. This principle is regarded as best-last precoding strategy. On the other hand, the worst user (with largest MSE) is selected last and hence precoded first. This approach provides more protection for the worst user, such that the BER of the worst user will be improved. In this way, the average BER of all users is reduced.
Tomlinson-Harashima rrecoding with power allocation In practice, users may have different channel and noise power, which is not taken into account by the MMSE based TH precoding described above. Instead, the sum of the noise power is used in the precoding matrices (c.f. equation (10), through the trace operator) and, by extension, in the MSE metric of equation (18). Therefore, it is possible that the user with the largest noise power will not be suitably protected.
Therefore, the average BER of all users may actually increase notably.
By way of example, consider a system where the transmitter has 4 transmit antennas, and 4 single-receive antenna users. The channel power of users have different values, which means the variance o of the rows k (k = 1, 2, 3, 4) of H are different. Assume the values of a are [o o cr c]= [1 4 1 1]. The noise powers v of users are [v v v vfl=[i 8 11].
In Figure 5, the BER of these users are plotted. Since user 2 has strong noise power and low signal power, its performance is the worst amongst the users. In this example, user 2 has the strongest channel power, but it also has strongest noise power. Hence user 2 may need more protection than the other users by being precoded first (or selected last).
However, since its channel has the strongest power, it is likely that user 2 will be selected first and precoded last.
This prediction is supported by simulations of the probability of precoding order of users, shown in Figure 6 for a total transmit power of 20 dB. The probability of user 2 being precoded first is 0.83%, whereas the probability of user 2 being precoded last is 80.6%. Meanwhile, the probability of user 1 being precoded first is 3 3.4%, whereas the probability of user 1 being precoded last is 6.3 6%.
Therefore, the BER of user 2 is high compared to the BER of the other users, as shown in Figure 5. The SNR gap of user 2 is about 8 dB compared with the other users at BER of 1 02. Hence, the MMSE-based TH precoding scheme described above is not optimized for real wireless channels, where users may have different channel and noise powers.
To improve the average BER of all uses, power allocation may be employed. With power loading, the matrix A in Figure 3 is not identity. In Sanguinetti, L. and Morelli, M. "Non-linear Pre-Coding for Multiple-Antenna Multi-User Downlink Transmissions with Different QoS Requirements", IEEE Transactions on Wireless Communications, vol. 6, no. 3, pp. 852-856, march 2007, a power loading for users has been presented for zero-forcing (ZF) TH precoding. However, this method is not applicable for MMSE-based TH precoding, because changing the power of one user will make unpredictable interferences to the other users. Additionally, once the powers of users are modified, the optimal user-ordering is also changed. Therefore, the optimal power allocation for MMSE-based TH precoding may involve complex iterations of power allocation and optimal user ordering searches. One such method has been suggested in Hunger, R. et al. "Alternating Optimization for MMSE Broadcast Precoding", 2006 IEEE International Conference on Acoustics, Speech and Signal Processing, vol. 4, no. IV, pp. 14-19, may 2006. Nevertheless, this method implements a high complexity optimization algorithm and does not always improve the worst user BER and the system performance.
Another disadvantage of power loading for MMSE-based precoding is that the optimal receiver filter G will be dependent on power loading matrix A. The two matrices G and A should be jointly designed. For example, Shi, S. and Boche, H. "Downlink MMSE Transceiver Optimization for Multiuser MllvIO Systems: Duality and Sum-MSE Minimization", IEEE Transactions on Signal Processing, vol. 55, no. 11, pp. 543 6-5446, Nov 2007, presents solutions for linear MIMSE precoding, but the joint optimization has high complexity. It is expected that for non-linear MMSE THP precoder, the joint optimization is even more complex. Additionally, once the matrix G is computed, the receiver filter must be sent to user equipment (UE), which consumes the downlink bandwidth and also increases the system complexity.
There is therefore a need for improved methods and apparatus for scheduling and precoding in wireless communications systems, and particularly methods and apparatus having low complexity.
SUMMARY OF THE INVENTION
According to a first aspect of the invention there is therefore provided a method of scheduling stations for access to one or more resource blocks in a wireless communications system, the method comprising: performing a first run of a determination process, said determination process comprising determining two or more subsets of stations from a set of stations; and performing a first run of an optimization process, said optimization process comprising one or more iterations of adding a station to a first one of said two or more subsets, from a second one of said two or more subsets, and removing a station from said first subset, wherein said adding and removing are performed in accordance with rules based on an optimization metric associated with at least said first subset.
Optimization techniques are typically a compromise between performance and complexity: decremental techniques generally exhibit better performance (but are also more complex) than comparable incremental techniques. This is largely due to the fact that, at each step, decremental techniques typically consider the contributions of all the remaining entities, whereas incremental techniques consider just the contribution of the entity that is to be added. By alternating between adding and removing, the described method facilitates low complexity optimization while also providing good performance, as compared to an exhaustive search over all possible stations for example. In particular, the adding and removing can have similar complexity. Moreover, determining two or more subsets of stations and then optimizing at least one of them provides flexibility to enable stations to be scheduled for resource blocks according to availability.
A skilled person will understand that in this context the term "station" is to be interpreted broadly as any apparatus for sending andlor receiving signals. Although the terms "user" and "user station" are interchangeably used with "station" throughout the description, it will be understood that this is for convenience only and that the presence of a person is not mandatory.
In a preferred embodiment, a value of the optimization metric is based on the channel responses associated with the stations of at least the first subset. In this way, stations having the optimal channels can be selected directly, rather than making a decision based on power allocation, for example.
Although the method can utilise a number of different optimization metrics, in a preferred embodiment optimization of the optimization metric is achievable by minimizing a sum of mean square error (MSE). A method implementing MSE can be considered as a generalized method from the point of view that other implementations can be readily derived therefrom.
The number of iterations of the optimization process can be predetermined. For example, where there are 8 stations, 4 iterations can be performed; where there are 16 stations, 8 iterations can be performed. In essence, this allows the complexity of the optimization process to be variedly set. Alternatively, or in addition, a stopping condition comprises checking whether the station added to the first subset is the same as the station removed from the first subset. This provides a simple way of determining whether further optimization can be achieved.
The complexity of the described scheduling method can be reduced through careful design of the rules and related terms.
Thus, in a preferred embodiment the determination process further comprises computing a matrix K' for each of the one or more resource blocks using the relation A' =(H'H+aIMj1, wherein H is a channel matrix, Mis an MxM identity matrix, Mis the number of transmit antennas, and a is a constant computed using the relation a K/E,7., wherein Efr is the total transmit power, and K is the number of stations to be scheduled for the resource block. In a preferred embodiment each iteration of the optimization process further comprises updating A' after each of the adding and removing steps. Computing and recursively updating A' in this manner enables a simplified implementation of the rules.
In a preferred embodiment each iteration of the optimization process further comprises computing a vector g, for each station of the second subset prior to the adding and for each station of the first subset prior to the removing, using the relation g = h1A', wherein h is a channel vector of said station, and K' is a positive definitive matrix.
In a preferred embodiment the determination process further comprises determining the station described by the relationj =argrnaxjh12 wherein b is the channel vector of station i of said set of stations Q. Low-complexity rules can be specified according to how many resource blocks are available.
In a preferred embodiment the rule for adding is expressible as J1 and the rule for removing is expressible as J2 =argmin[(1_gjh1)1gj2] wherein J1 is the station to be added to said first subset co from said second subset Q, J2 is the station to be removed from said first subset, g1 is a vector corresponding to station i and computed using the relation g,=zhaA, wherein h is a channel vector and K' is a positive definitive matrix.
In another preferred embodiment, in which the stations are scheduled for access to two or more resource blocks and wherein the station removed from the first subset is added to the second subset, the rule for adding is expressible as 2 2 * gl.k g2.
J1=argmin -______ kEfl, 1-g1h l+g2h' and the rule for removing is expressible as 2 2 gI,k g2.k + kd, l+g1h l-g2h wherein J, is the station to be added to said second subset from said first subset, J2 is the station to be added to said first subset Q1 from said second subset Q2, g,,i is a vector corresponding to station k of subset i, and computed using the relation gI,k=hI,kA1', wherein h',k is a channel vector of user k of subset i, and A1' is a positive definitive matrix.
The method of scheduling can be readily extended to multiple runs of the optimization process, and also multiple runs of the determination process.
Accordingly, in one embodiment of the invention the method further comprises: performing a second run of the determination process; performing a second run of the optimization process on the two or more subsets resulting from the second run of the determination process; comparing a value of the optimization metric corresponding to the one or more subsets resulting from the first run of the optimization process to a value of the optimization metric corresponding to the one or more subsets resulting from the second run of said optimization process; and selecting the one or more subsets resulting from either the first or the second run of the optimization process based on said comparing.
Alternatively, in a preferred embodiment where the stations are scheduled for access to two resource blocks and where the station removed from the first subset is added (back) to the second subset, the method further comprises: performing a second run of the optimization process on the two or more subsets resulting from the first run of the determination process; comparing a value of the optimization metric corresponding to the two subsets resulting from the first run of the optimization process to a value of the optimization metric corresponding to the two subsets resulting from the second run of the optimization process; and selecting the two subsets resulting from either the first or the second run of the optimization process based on the comparing.
Alternatively still, in a preferred embodiment where the stations are scheduled for access to two resource blocks and where the station removed from the first subset is added to the second subset, the method further comprises: performing a second run of the optimization process on the two subsets resulting from the first run of the optimization process, wherein the adding and removing in the second run of the optimization process are performed reversely to the adding and removing in the first run of the optimization process; comparing a value of the optimization metric corresponding to the one or more subsets resulting from the first run of the optimization process to a value of the optimization metric corresponding to the one or more subsets resulting from the second run of the optimization process.
It will be appreciated that the low-complexity rules described above can also be implemented independently.
Therefore, in a related aspect of the invention there is provided a method of scheduling stations for access to a resource block in a wireless communications system, the method comprising: performing a first run of a determination process, the determination process comprising determining a first station to form a subset of stations from a set of stations; and performing a first run of an optimization process, the optimization process comprising one or more iterations of adding a station to the subset, from the remaining stations of the set, wherein the adding is performed in accordance with a rule based on an optimization metric associated with the first subset, the rule being expressible as J1 =argrnax[(1+gjh)_1g12] iec wherein J1 is the station to be added to the subset from the set Q, gi is a vector corresponding to station i and computed using the relation g,=h1A1, wherein h is a channel vector and A' is a positive definitive matrix.
In another related aspect of the invention there is provided a method of scheduling stations for access to a resource block in a wireless communications system, the method comprising: performing a first run of a determination process, the determination process comprising determining a set of stations; and performing a first run of an optimization process, the optimization process comprising one or more iterations of removing a station from the set, wherein the removing is performed in accordance with a rule based on an optimization metric associated with the set, the rule being expressible as J2 =argI1in[(l_gjh1)1gj2] wherein J2 is the station to be removed from the set Q, g1 is a vector corresponding to station i and computed using the relation g=h,A', wherein h1 is a channel vector and A' is a positive defmitive matrix.
In another related aspect of the invention there is provided a method of scheduling stations for access to two resource blocks in a wireless communications system, the method comprising: performing a first run of a determination process, the determination process comprising determining a first and a second subset of stations from a set of stations; and performing a first run of an optimization process, the optimization process comprising one or more iterations of adding a station to the subset, from the set, wherein the adding is performed in accordance with a rule based on an optimization metric associated with the first subset, the rule being expressible as g_lCD ____________ jarg l-gh'1 1+gh" 1k 1k 2k 2k whereinj is a station to be added to the first set from the second set Q2, gi,k is a vector corresponding to station k of subset i and computed using the relation g,k=h,,kA[1, wherein h,k is a channel vector and A,' is a positive definitive matrix.
In a preferred embodiment of the invention, the determination process further comprises determining an equivalent channel matrix using H = GH, wherein H is a channel matrix, and G is a filter matrix computed using the relation G = R''2, wherein R,, is a diagonal noise covariance matrix. This facilitates application of the method to instances where user's noise power is different.
Although the method is described in the context of linear precoding, it is also suitable for non-linear precoding, and simulation results predict improvements for both.
In a related aspect of the invention there is provided an apparatus for scheduling stations for access to one or more resource blocks in a wireless communication system, the apparatus comprising: means for performing a first run of a determination process, the determination process comprising determining two or more subsets of stations from a set of stations; and means for performing a first run of an optimization process, the optimization process comprising one or more iterations of adding a station to a first one of the two or more subsets, from a second one of the two or more subsets, and removing a station from the first subset, wherein the adding and removing are performed in accordance with rules based on an optimization metric associated with at least the first subset.
The invention may also be provided by computer implemented means, such as software configuring a general-purpose communications configured computer apparatus, or more application specific apparatus such as an AIS, an FPGA or a DSP. To this end, the invention may be embodied in a software product, which may be delivered on computer redable storage media, such as optical or magnetic media or flash memory storage media, or by means of a computer receivable signal, such as a downloaded file or collection of files. No part of the following description of specific embodiments of the invention should be interpreted as a limitation on the scope of application of the invention, as the embodiment so described are provided by way of example only, with reference to the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
Embodiments of the present invention will now be described with reference to the accompanying drawings, wherein: Figures 1 a to 1 c illustrate three exemplary ways in which stations can be assigned to OFDM resource blocks; Figure 2 shows a general block diagram of a communications system implementing linear, multi-user precoding; Figure 3 shows a general block diagram of a communications system implementing non-linear, multi-user precoding; Figure 4 shows a general block diagram of a communications system implementing Tomlinson-Harashima precoding; Figure 5 shows simulated results for Tomlinson-Harashima precoding in which stations' noise powers are assumed to be different; Figure 6 shows simulated probability mass function results of Figure 5; Figure 7 to 15 each illustrate a method of scheduling stations according to the present invention; Figures 16 and 17 show simulation results of the performance of the methods for scheduling stations to one resource block according to the present invention; Figure 18 shows simulation results of the performance of the methods for scheduling stations to two resource blocks according to the present invention; Figure 19 show simulation results of the performance of the methods for scheduling stations to two resource blocks, when applied to nonlinear TH precoding, according to the present invention; Figure 20 schematically shows the structure of a station according to the present invention; Figure 21 schematically shows a system for implementing scheduling and precoding according to the present invention; Figure 22 shows a block diagram of a station for implementing scheduling and precoding according to the present invention; Figure 23 schematically shows a system for implementing gain adjusted TI-I precoding according to the present invention; Figure 24 schematically shows the signalling exchanges between a transmitter station and a receiver station implementing gain adjusted TB precoding according to the present invention; Figures 25a to 25c schematically shows the signalling exchanges between a transmitter station and a receiver station for conventional TB precoding, gain adjusted TB precoding according to the present invention in the system of Figure 23; and gain adjusted TH precoding according to the present invention for legacy receiver stations.
Figure 26 schematically shows where noise power can be measured in a receiver station according to the present invention; Figure 27 to 31 show simulation results of the performance of the gain adjusted TH precoding method according to the present invention.
DETAILED DESCRIPTION OF THE DRAWINGS
For convenience, the following description is organized into sections. Initially, a discussion of station scheduling is presented, in particular how to schedule K out of KT stations for one resource block, and how to schedule KT stations for two resource blocks. Station scheduling for more than two resource blocks is also described. Low-complexity selection rules are developed in the context of linear precoding, and exemplary methods of implementation presented. It will become apparent that the developed techniques can also be applied in conjunction with non-linear precoding schemes such as TH precoding. Although at first uniform noise power is assumed, it is subsequently shown how the described techniques can be modified to take account of stations' different noise powers, with particular reference to TH precoding, for which an improved method of station ordering is presented.
Also for convenience, algorithms will be referred to in shorthand, such as "I-A", "I-B" and so on for station scheduling for one resource block, and "Il-A", "Il-B" and so on for station scheduling for two resource blocks.
Station scheduling for one resource block Station scheduling for one resource block is described with reference to a communication system in which a transmitter station with M transmit antennas, such as a base station (BS), sends multiple data streams simultaneously to K receiving stations (out of KT total stations). Such a communication model is called a broadcast system. Although it will be appreciated that stations may have several receive antennas, for simplicity it is assumed that each station has a single receive antenna. Exemplary embodiments of the stations will be described in due course.
Where stations are assumed to have the same value of noise power, the noise covariance matrix as well as the receiver filter matrix equal identity, i.e. R I and G = I. The MSE metric in equation (7) therefore becomes = tr(jHH1 +iJ. (19) Equation (19) can be used for exhaustive station searching. As noted earlier, the complexity of such an approach is high where a large number of stations K is involved.
A more convenient form of equation (19) is derived below, allowing low-complexity station selection algorithms to be obtained.
Assume that k is the number of stations being selected in the determination process.
Let H be the channel matrix of these k users. A singular value decomposition of H UDV is employed, where U and V are unitary matrices and D is a diagonal matrix. Let d, (i =1,2,. . . , n) be singular values of H. Note that during the determination process, k may be larger or smaller than K* If k �= M, then n = k; otherwise n = M. Letting a = K / E1,., the sum of MSE metric in equation (19) then becomes v' =tr(a1HJIH +iJ' = tr(a1UDDJ1UH +1k) = tr[U(a'DD' +1k) u'1 -(20) � 1 i=1 a'd, +1 k-M+> 1 ifk>M j1 a1d+1 (The cyclic property of trace operation, tr(ABC) tr(CAB), is used to obtain the fourth line of equation (20) above).
Using equation (20) for station selection, the number of stations k selected for access to the resource block can be changed during the determination process. Typically, in order to compute MSE a matrix inversion operation needs to be performed repeatedly.
However, the computational complexity associated with such an operation is prohibitively high. This problem can be avoided by considering another quantity = tr(a'H'H+IM) = tr(aV"D"DV + M) = tr[VH (a'D'D+IAf) v] M-k+ 1 ifk�=M - a1d,2+1 -1 ifk>M ad? +1 =M-k+i. (21)
Thus, instead of finding a combination of stations minimizing the sum of MSE yt, the stations that minimize can be equivalently found. The fonnat of g in the first line of equation (21) is mathematically convenient for deriving low-complexity station selection algorithms. The advantage of computing is that the size of matrix (a1H1H+IM)is MxM, which is independent of the number of stations k being processed.
Let c�= = {l,2,. . .,K} be the set of indices of all stations, S c�= be a subset of containing the indices of any K stations and IL be the associated channel matrix of these K stations. Then the subset cv of K stations to be selected can satisfy r cvmin[tr(alHs Hs+IM) -1 (22) :=argmin[tr(ii$Niis+aIM) ].
The above optimization problem can be solved by an approach that is loosely based on a technique developed in Gorokhov, A. et al. "Receive antenna selection for MIMO spatial multiplexing: theory and algorithms", IEEE Transactions on Signal Processing, vol. 51, no. 11, pp. 2796-2807, Nov 2003, namely decremental receive antenna selection (RAS), in which the objective is to select n out of N receive antennas for an MMSE receiver in point-to-point MIMO. The approach of Gorokhov first assumes all receive antennas are selected, and then, one by one, antennas are deselected such that the remaining antennas yield the largest open-loop MIMO capacity.
Although the approach described here is similar to the decremental receive antenna selection technique described in Gorokhov (2003), in the sense that stations are removed one at a time, it will be appreciated that there is a fundamental difference between the problem of user selection in multi-user MIMO (MU-MIMO) and receive antenna selection (RAS) in single user MIMO (SU-MIMO). In particular, in SU-MIMO, the number of selected receive antennas n should not be less than the number of transmit antennas. By contrast, the number of selected stations K in MU-MIMO cannot be larger than the number of transmit antennas. However, the decremental search process is still mathematically correct and its performance is in fact nearly optimal.
Let H be the channel matrix of all users. If h1 is the channel vector of the removed station i, the channel matrix of the remaining stations (i.e. without station i) is 11Kr1 Thus HT]HKT_I =H'1H-hh1. (23) Making use of the matrix inversion lemma, where A is a n x n positive definite matrix and a is a n xl vector, then (A _aaH)1 = K1 + A'a(1-_a"Aa)' a'A'. (24) By replacing A = HHH +aIM and a = , the following relationship is obtained (HTIHKT_I +aIM) A' +Ah(1_hA'h')'h1A'. (25) Hence, once K1 has been computed, the left hand side of equation (25) can be found without matrix inversion. Since A is positive definite, A is also positive definite. Let h.K'=g1, (26) which can be simplified as (HT_IHKTI +aIM) =A' +(1-g1h')1g'g1. (27) Consequently, tr(HIHKI +aIM) = H] (28) =tr(Aj+ 11g1112 1-g. h where IIg1H denotes the norm of vector g.. Thus, one station can be removed such the left hand side of equation (28) is minimized, which means that the removed station j follows j = arg mm hg1 112 H (29) 1-.h.
After the first station is removed, further stations can be removed until there are only K stations left. In each step, the matrix A' can be updated as A1 -A1 +(l-g,h1gg,.
This results in a decremental station selection method, which is summarized below in pseudo code form.
"Algorithm I-A" (1) Initialization: input H, a, K, Q = {l, 2,..., K} (2) compute K' (HHH + aIM) (3) for l=1:K-K (4) compute g = h1A' for all i E (5) (6) update K' +-K' +(1-gh)' g'g (7) (8) end (9) Output selected station indices co = Alternatively, a subset of stations initially comprising just one station can be determined, to which stations can be added one at a time. This approach will be referred to as incremental station selection. It is noted in Gorokhov (2003) that incremental antenna selection is not suitable for the MMSE receiver as the number of receive antennas must be at least the same as the number of the transmit antennas to achieve a good performance for the single-station point-to-point MIMO transmission. In contrast to the point-to-point MIMO transmission, the number of users in multiuser point-to-multipoint MIMO is not greater than the number of transmit antennas.
Again, the matrix inversion lemma can be applied for incremental station selection. The only change in equation (24) is the reverse of addition and minus operators, so that (A+aa)' A1 -A'a(l+a"A'a)' a"A'. (30) Let A = aI, a Q {i, 2,. ., KT}, g. h1A', so that the first station can be selected such that j=argmax IEQ (l+g1h) h2 =argmax 2 (31) ° a2 +aIlh1II = En Then the matrix A' is updated as A' -K1 _(i + gh7)' g'g. The second station can be selected similarly. A pseudo code description of this incremental station selection algorithm is detailed below.
"Algorithm I-B" (1) Initialization: input H, a, K, Q = {l, 2,. . ., K}, co = 0 (2) compute A' a IM (3) j=argrnaxh12 (4) wcoUj, Q=Q\j, g1=hA' (5) forl=1:K-1 (6) update A1 f-K' -g (i+ gh') g, (7) compute g, = h1A' for all i E (8) j=argmax IIg,II lEO (l+g1h1) (9) j,co=U)Uj (10) end (11) Output: index set of selected stations a) The principles of the methods described above can be extended to an approach which comprises both incremental and decremental station selection. A one-loop, iterative station selection method is now described with reference to the algorithm set out below, as well as the flowchart shown in Figure 7, which for reasons of clarity does not show each of the steps individually.
In general terms, the algorithm solves an optimisation problem aimed at minimizing the sum MSE of a subset of stations through iterative, incremental and decremental station selection. In essence, the lowest sum MSE represents the highest achievable performance.
The algorithm begins by inputting system information such the channel matrix H (line 1), and then randomly selecting a first subset ai. of.K stations from a set of K total stations (line 2). For convenience only, subset co will be referred to as the selected subset', while the remaining stations (forming a second subset of stations) are collectively referred to as the remaining subset', ) {l, 2,..., KT}\ U) (line 3).
Repetitious application of incremental and decremental station selection rules typically requires calculation of a series of matrix, inverses, which is computationally expensive.
Using a recursive update based on the matrix inversion lemma allows for more efficient computation, i.e. without matrix inversion. The positive-definite matrix K' associated with all of the K stations is therefore computed in line 4.
For convenience, the operations of lines (1) to (4) are generally collectively referred to as the determination process, represented by S7-2 in Figure 7.
The optimization process begins by computing the vector g for each of the stations of remaining subset Q (line 6). The best' station of, namely the station J1 that minimally contributes to the MSE of selected stations, can thus be identified (line 7) and added to selected subset cv (line 8). The matrix K' is updated accordingly (line 9). This incremental station selection step is shown as step S7-4 in Figure 7.
The next stage of the optimization process involves finding the worst' station of subset cv. This time the vector g, for each of the stations of subset cv is computed (line 10), so that the station J2 contributing the largest MSE to subset cv can be identified (line 11) and removed. Here, station J2 becomes part of the remaining subset (line 12), though J2 could also be entirely removed from further consideration. Once again, the matrix A4 is updated to take account of the change. This decremental station selection is shown in as step S7-6 of Figure 7.
Several iterations can be performed so that the sum MSE converges towards a minimum. The number of iterations can be specified during the determination process (step S7-2), in which case the method checks to see whether the iteration number limit has been reached (step S7-8), and, if so, the optimization process is halted and an index of the selected stati6ns is output (line 16 and step S7-10). Otherwise, another iteration of the optimization process is performed.
Alternatively, or in addition, a situation may occur where the station added to and removed from the selected subset of stations is the same. In such cases, no further iterations needs to be performed since no further improvements can be achieved.
Therefore, step S7-8 may comprise making a determination as to whether the added station is the same as the removed station (line 14).
"Algorithm I-C" (1) Initialization: input H, a, K, number of iterations r (2) Select set co of indices of K random stations, 11K their channel matrix (3) (4) compute A' =(HHK +aIM) (5) forl=1:r (6) compute g, = h1A for all i (7) argrnax [(i + g1h' ) g1 2] if (8) cQ\J1,wcouJ1 (9) update A' 4-A -(1+gh7)' g7g (10) compute g h.A' for all i E co (11) 2 =argIin[(1_gjh1)_1gj2]
IEW
(12) QuJ2,co=co\J2 (13) update A1 f-A'+(1-gh7)'g7g (14) if J1 J2 then stop the algorithm (15) End (16) Output: index set of selected station co Once the first run of the optimization process is ended, further subsets of stations can be (randomly) selected for a second run of the optimization process. These two optimization processes may yield two different optimized subsets, and so the subset with the smaller sum of MSE can be selected. Certain constraints may be implemented to limit the complexity of such an algorithm. For example, the total number of iterations of the first and second optimization processes may be fixed. The modified algorithm is provided below in pseudo-code form.
"Algorithm I-D" (1) Initialization: input H, a, K, number of iterations r (2) Select set co1 of indices of K random stations, 11K their channel matrix (3) c�=={1,2,...,K}\co1 (4) compute K' =(HHK +aIM) (5) forl=1:r (6) compute g1 = hAT' for all i e (7) j, = arg max[(1 + g1h' ) g1 12] (8) (9) update K' +-K' _(i +gh7) g7g (10) compute g1 =h1A' for all iEü, (11) j2 =argrnntr[(1_g,h')'g'g1] (12) Q=uJ2,co,=co,\J2 (13) update A1 +-A' + [(i -g,h' ) g1 12] (14) ifJ,==J2 (15) store w, and MSE(1)=tr(A') (16) select a new set (02 of indices of K random stations from, H their channel matrix (17) set (18) compute K' =(HHK +aIM) (19) for 12=1:r-l (20) compute g1 = h1A1 for all i (21) J, (22) (23) update K' --A' -(1+gh7)'g7g (24) compute g, = hAT' for all i E (02 (25) J2 = arg mm [(i -g1hnl g1 12] (26) Q=cuJ2,w2=a2\J2 (27) update K' -AT' + (i -gh7 gg2 (28) compute MSE(2)=tr(A') (29) if J, = J2 then stop the algorithm (0) end %(for secondary loop) (31) end %(for checking J, = J2) (32) [min_ MSE, index] = min(MSE(l), MSE(2)) (33) end (34) Output: index set of selected station COjfld With reference to Figure 8, the scheduling algorithm initially determines a random subset of stations and computes K' (lines 1 to 4; step S8-2), and then performs a first run of an optimization process (lines 5 to 14; step S 8-4). When the station added to the selected subset of stations is the same as the station removed from that subset (line 14), the corresponding MSE is stored (line 15), and a new selected subset of stations is determined and the corresponding matrix K' computed (lines 16 to 18; step S8-6).
Then, a second run of an optimization process is performed on the newly determined selected subset of stations (lines 19 to 28; step S8-8), until the added and removed stations are again determined to be the same (line 29). The scheduling algorithm outputs the subset of stations having the lowest MSE (lines 32 to 34; step S 8-10).
Thus, each of the first and second determination and optimization processes substantially follow the algorithm set out in respect of Figure 7.
Both the single-and the multiple-run optimization processes can be improved by reducing the randomness of the selection of the selected subset of stations. For example, the selected subset could be determined to include the station having the largest channel vector norm. The search for the station having largest channel norm slightly increases the complexity. In Figure 17, for example, algorithms "I-E" and "I-F" refer to algorithms that are similar to "I-C" and "I-D" respectively, but modified as just described.
Station schedulingfor two resource blocks Methods of station scheduling for two resource blocks, which could be distributed along either time or frequency axis, is now presented. To simplify the presentation, it is assumed that the subsets of stations to be assigned to the first and second resource blocks are K, and K2 respectively, so that K = K, + K2. Additionally, K, �= M and 1(2 �= M. The total number of scheduled stations is K �= 2M for the case of two resource blocks in order to ensure that all the stations can be served.
Let H1 and 112 be the channel matrices of the stations for two resource blocks that are adjacent along the frequency axis, i.e. Figure ic. Recall that these channel matrices are, in general, different. By contrast, for two resource blocks that are consecutive in time, i.e. Figure ib, the two channel matrices can be considered to be the same since it can be assumed that the coherent time of channel is greater than the time to transmit the whole data frame. Therefore, the latter situation can be considered to be more general in the sense that if 112 = H1, the developed algorithms can also be applied to the former situation. For this reason, station scheduling for resource blocks consecutive in frequency is considered in detail.
The first algorithm for two-RB station scheduling is derived from the decremental and incremental algorithms for one-RB developed in the previous section. In particular, initially only the strongest station, i.e. the station with the largest norm of channel vector, is assigned to a selected subset, while KT -1 stations are assigned to a remaining subset. One station is then moved from the remaining subset to the selected subset such that the sum of MSE for the selected and remaining subsets is minimized.
This moving process is repeated K2 -1 times, until the number of stations that can be served in each resource block is satisfied. The stations of the selected subset are to be scheduled to one of the resource blocks (RB2') and the stations of the remaining subset are to be scheduled to the other resource block (RB 1). (This is different from station scheduling for one resource block where the remaining subset are not scheduled to a resource block.) In more detail, the set of all stations is {1,2,. . ., KT}, and the channel vector of station k in resource block i (i 1,2) is hlk. Let the subset of stations for RB2 be 2' then 2 =argmaxh2.J2. (32) kEO The subset of stations for RB! is = \ Q2. We denote the channel matrices of stations in the subset for RB1 and f2 for RB2 as H and H, respectively. The matrices A1 and A2 for RB1 and RB2 are A1 = (HH + aIM) and A2 =(HgH +aIM). Let g,k = h1,A'.
Then, the mathematical description for moving one station from the remaining subset to the selected subset Q2 is as follows j=argmintrl gkgI,k -gkg2,k kE�=21 lg3h1 1+g2h 2 2 * (33) gl.k g2,k =argmin -_______ kE21 1-g1h 1+g2h' After each moving step, the inverses of matrices A1 and A2 are updated as A' +-A' + (34) 1-g1h and A' -A - * (35) 1 + g2h'1 The above development for two-RB station scheduling is summarized below in pseudo code form.
"Algorithm 11-A" (1) Initialization: input H1, H2, a, K7, K1, K2 (2) 0={1,2,...,K7} (3) Q2 =argmaxh2k2 kEO (4) Q1�=o2 (5) A (HH +aIM), A' =(HHO +aIM) (6) forl=1:K2-1 (7) compute gI,k =hlkAT' forall keR and 1=1,2 2 2 glk g2.k (8) j=argmln -_______ 1-0 h' h" S1,k 1,k 2,k 2,k (9) update A' 4-Ai' +(1-g1h)' gg1 (10) update A' +-A' -(1+g2h') g'g2 (11) (12) End (13) Output: two sets of station indices c�= and �=)2 With reference to Figure 9, the determination process S9-2 here includes determining the station with the largest channel vector norm (line 3). Then, an optimization process commences in which a station is added to the selected subset 2 from the remaining subset C (lines 6 to 11; step S 9-4). This iterative process is repeated until the number of stations in each subset (RB) meets the requirement (step S 9-6).
A further development of the above algorithm for station scheduling for two RBs is presented with reference to the pseudo code below, and also with reference to Figure 9.
Stations are divided into two subsets and each with K1 and K2 stations (lines 1 to 4; step S9-2). In this case, there is no particular need to determine the strongest station and so the subsets can be determined at random. In the first iteration of the optimization process, one station is moved from selected subset R to remaining subset Q2 such that the sum MSE of two subsets is minimized (lines 7 to 11; step S9-4). Then, one station is moved from subset �=2 to subset, again so that the sum MSE of two subsets is minimized (lines 12 to 15; step S9-10).
"Algorithm Il-B" (1) input H, 2, a, K7, K1, K2, number of iterations r (2) (3) ={1,2,...,K1} (4) 2Oi (5) A' =(H H12 +aIM)', A' z(H H12 +aIM) (6) forl=1:r (7) compute gk bIkA' for all k E Q and I = 1,2 2 2 gl.k g2.k (8) J=argmin -_______ kEQ 1-g1h 1+g2h (9) update A1 -A1 +(1-g1h' ) g,g1 (10) update A' -A' -(i + g21h1) g g2j (11) 11\J,2=O2uJ (12) compute gk hIkA' for all k E �=2 and i = 1,2 2 2 gl.k g2,k (13) J2=argmin -+ kf�=2 l+g1h 1-g2h' (14) update A' -A' -(1+g1h'j) update A1 +-A' + (i -g2,h3,)' g,g2, (15) Q1=1uJ2, Q2=2\J2 (16) end (17) Output: two sets of station indices and Q2 As with the single run optimization process for station scheduling for one RB, a situation may arise where stations J1 and J2 are the same. Thus, based on the principles introduced for station scheduling for one RB, multiple run optimization processes for station scheduling for two RBs are developed.
In the first run of the optimization process, one station is moved from selected subset to remaining subset 2' and then one station is moved from remaining subset Q2 to selected subset Q1. In the second run of the optimization process, stations are move in the reverse direction, i.e. first from remaining subset 2 to selected subset �=), then from selected subset Q to remaining subset c�=2.
An overview of this method is shown in Figure 10. The corresponding pseudo code is provided below, cross-referenced with the more detailed flowchart of Figure 11. The determination process (step S 10-2) comprises dividing the stations into two subsets (lines 2 to 4) and here computing A1 for each subset (line 5). Then, in a first optimization process (initiated at line 6), station J1 is moved from selected subset Q to remaining subset (lines 7 to 11) and station J2 is moved from remaining subset Q2 to selected subset Q (lines 12 to 16). Step S10-4 is substantially similar to steps S9-4 and S9-10 of Figure 9.
Here, performing a second run of the optimization process (step Si 0-8) will depend not only on whether the condition J1=J2 is met, but also on whether the number of iterations performed so far is less than the total number of iterations specified at the start (lines 17 and 20; step S10-6). JfJ1=J2 and there are still allowable iterations (i.e. l1<r is true), then the second run of the optimization process may be initiated. However, if the number of allowable iterations is reached before J1=J2 (i.e. 11<r is false) then the scheduled station index is output instead (step Sb-b).
The second run of the optimization process (step S 10-8) proceeds in a reverse direction to that of the first iteration process. In other words, a station is first moved from subset f12 to subset I (lines 21 to 25), followed by a move of a station from subset Q1 to subset L)2 (lines 26 to 29). Once again, if J1 = J2 the run is broken (lines 30 and 31). The total number of iterations generally should remain within the allowable number of iterations.
"Algorithm Il-C" (1) input H1, H2, a, K, K1, K2, number of iterations r Si 1-2 (2) c0={1,2,...,K} (3) c�=1={i,2,...,K1} -Si1-4 (4) Q2o1 (5) A' =(HH +aIM), A' =(HHQ +UIM) S11-6 (6) forl1=1:r Sli-8 (7) compute gI,k = b.kA', Vk E Q and I = 1,2 S 11-10 [ ) (8) J=argmin H kEf)i l-g1h l+2kh2,k) (9) update A' *-A +(1-g1h) gg1 (10) update A1 *-A' -(1+g h" ) g'jg2j S 11-12 2J1 2,J1 (11) c�=1=c1\J1, Q22uJ1 (12) compute ga,k = hEkA', V/c E 2 and i = 1,2 ( ____________ (13) J2=argminl- 1+g1h 1_gh] S1l-14 (14) update A' -A -(1+g h'' ) g'jg1j 1J2 1,J2 (15) update A' <-A' +(1-g h" ) gHg2 S 11-16 2J2 2,J2 (16) )1=1uJ2, 2=c2\J2 (17) ifJ1=J2andl1<r S1148 (18) store MSE(1)=tr(A�A') Si 1-20 (19) store U) R,C021 2 (20) for 12=1:r-11 S11-22/24 (21) compute gI,k =hIkA, Vke2, i=1,2 1 k 2 2 ____________ 11g2.k (22) J2 arg mm 1 H + g2h Si 1-26 kefl2 1 + g1h1 1- (23) update A -A' -(i + g h' ) g gij If2 1,J2 (24) update A' -A' +(1-g, hH v' g'g2 S 11-28 2J2 2,12) (25) -R u j2, 2 2 \ J2 (26) compute g1,k hIkA, Vk E I = 1,2 1 2 2 \ L g1.kD g2,kH 1 Si 1-30 (27) .J1=argmin I-g1h 1+g2kh2'kJ (28) update A' -A update A -A;' -(1+g h' ) g'jg2j S1i32 2J1 2,J1 (29) R \ I' c�=2 2 U J1 (30) if J, -J2 break Sli-34 (31) end % secondary loop (32) MSE(2) = tr(A' + A') S1i-36 (33) I,2 = 2,2 2 (34) end (35) end % primary loop (36) [SUm_MSE, idx]=min(MSE) Sll-38 (37) Output: station index sets =&ith'2 °2id,' and sum _MSE S1l-44 It is also possible that the same two subsets resulting from a single determination process can be used for two different optimization runs. For example, stations could be moved from selected subset �= to subset �=2 in a first run of an optimization process, and moved from subset Q2 to subset in a second run of an optimization process, where the first and second runs of the optimization process are performed either in series or in parallel. The respective flowcharts are shown in Figures 12 and 13 ("Algorithm II-D").
The determination process comprises preparing a set of input data, determining the subsets R Q2 and computing A', A' (steps S12-2 to S12-6 in Figure 12; steps S13- 2 to S13-6 in Figure 13), which will feed first and second runs of the optimization process (steps S12-8 and S12-12 in Figure 12; steps S13-8 and S13-12 in Figure 13). In the first run of the optimization process, a station is moved from subset to subset 2 per iteration, while in the second run of the optimization process, a station is moved from subset Q2 to subset Q1 per iteration. The resulting MSE values are compared (S12-16; S13-16) and the subsets corresponding to the minimized value scheduled for access (S12-18; S13-18).
This approach can be modified such that the first and second runs of the optimization process utilise the subsets determined by two different determination processes. In essence, the process shown in Figure 9 is performed several times, in series or in parallel. The corresponding flowcharts are shown in Figures 14 and 15 ("Algorithm TI-E"), where like numbers refer to like steps of Figure 12 and 13, but with modified prefixes to take account of the Figure numbering. Additionally, since two determination process are implemented, Figures 14 and 15 show an additional pre-processing step (steps S 14-5 and S 15-5) and an additional input step (steps S 14-11 and S 15-1 1).
Furthermore, the adding and removing in the second run of the optimization process (step S14-12 and step S5-12) are not performed in reverse.
Station scheduling for more than two resource blocks This section briefly discusses how the station scheduling methods described above can be modified for station scheduling for more than two RBs. Assuming the case for three RBs, which can serve K1, K2, K3 stations respectively. The total number of stations is therefore KT K1 + K2 + K3.
There are several strategies to apply the above optimization processes to this problem.
Here one exemplary approach is described.
At first, stations are randomly assigned to three subsets Q, 2' 3 with K1, K2, K3 stations, respectively. Then, one station may be moved from subset to either subset or subset c3 to optimize the performance metric in a similar fashion as for the cases of one or two RBs. If the station is move from subset to subset Q2, then, in the next step, one station might be moved from subset 2 to subset f�=3 to optimize the performance metric. Then a station from subset might be moved to subset to optimize the performance metric. These moving steps can be performed iteratively several times to improve the system performance. Although many variations will be conceivable to the skilled person, this general principle is followed.
Simulation results Simulation results of the performances of the proposed algorithms are shown in Figures 16 to)8. The algorithms are evaluated in an OFDM channel with ITU Pedestrian-B power and delay profiles. Each resource block comprises 16 consecutive subcarriers and OFDM symbols. The number of subcarriers is 1024.
The performances of station scheduling algorithms for one RB are shown in Figure 16.
Decremental station selection has the best performance, followed closely by the two-loop optimization process station selection. Significantly, these approaches nearly achieve the performance of exhaustive station selection, which has high complexity.
Figure 17 presents performances of the two-run optimization process algorithms. This reveals that a SNR gain, albeit small, can be obtained.
Simulation results for two-RB station scheduling algorithms are also presented in Figure 18 for linear MMSE precoding. In the simulations, the number of transmit antennas is M =4, K =8 stations are to be assigned to 2 neighbour RBs with K1 = K2 4.
From the results, algorithms described by flowcharts in Figures 12 and 13 (II-D' in Figure 18) and algorithms described by flowcharts in Figures 14 and 15 (II-E' in Figure 18) have similar performances and are only 0.2 dB away from that of highly complex exhaustive search. The proposed algorithms yield significant gains compared with random station selection, more than 5 dB at uncoded BER of 102.
Application to non-linear precoding with uniform noise power The previous sections have discussed station scheduling in the context of linear precoding, in particular linear MMSE precoding. However, station scheduling for linear MMSE precoding can be readily extended to nonlinear MMSE-based or ZF-based precoding. Here, Tomlinson-Harashima (1ff) precoding is considered. The MMSE metric of MIvISE-TH precoding is quite different from that of linear MMSE precoder, due to the station permutation and signal shaping processes. Nevertheless, the algorithms developed in the previous sections can still be applied to TI-I precoding.
Moreover, although application of the above described algorithms to TH precoding may not be considered optimal, simulation results (shown in Figure 19) reveal that, for at least the two-RB station scheduling algorithms, substantial gains can be achieved.
More specifically, it is evident that for nonlinear TH precoding, the proposed station scheduling algorithms also nearly achieve the performance of exhaustive search, which is about 0.2 dB loss at uncoded BER of l0_2. At the same BER, the proposed algorithms bring more than 1 dB gain compared with random station selection. Thus, even if other algorithms might be specifically designed for nonlinear precoding, performance improvements would appear to be negligible.
Station scheduling with non-uniform noise powers The foregoing sections present station scheduling algorithms when all stations have the same unit noise power. If stations' noise powers are different, the above algorithms are generally not applicable. However, the methods can still be employed for precodirig methods with ZF criterion, where the noise powers are omitted. Nevertheless, subsequent sections will show that the described algorithms can be used in the most general case of MMSE precoders, where stations have different powers, by a special design of receiver filter matrix G. A detailed description is provided in the following sections. In short, the diagonal matrix G is set to G=R2. (36) Thus, the receiver filter of each station is simply equal to the inverse of the square root of noise power. Substituting G in equation (36) into equation (7), we obtain =fr[(4GHIIHGH +1K)]. (37) Letting II GH, then F(E --H trLtI1I +IKJ. (38) The expressions of sum of MSE in equations (7) and (38) have the same format. Thus, by a special design of receiver filter in equation (36) and using new equivalent channel H = GH, we can obtain a similar formula of sum of MSE metric for unit noise power case. Thus all the developed station selection algorithms can be seemingly applied.
Station design Figure 20 illustrates schematically a station 2002 comprising a processor 2004 operable to execute machine code instructions stored in a working memory 2006 and/or retrievable from a mass storage device 2008. By means of a general-purpose bus 2010, user operable input devices 2012 are in communication with the processor. The user operable input devices comprise, in this example, a keyboard and a touchpad, but could include a mouse or other pointing device, a contact sensitive surface on a display unit of the device, a writing tablet, speech recognition means, haptic input means, or any other means by which a user input action can be interpreted and converted into data signals.
Audio/video output devices 2014 are further connected to the general-purpose bus, for the output of information to a user. Audio/video output devices include a visual display unit, and a speaker, but can also include any other device capable of presenting information to a user.
A communications unit 2016 is connected to the general-purpose bus, and further connected to an antenna 2018. By means of the communications unit and the antenna, the station is capable of establishing wireless communication with another station (for example, a base station). The communications unit is operable to convert data passed thereto on the bus to an RF signal carrier in accordance with a communications protocol previously established for use by a system in which the station is appropriate for use.
In the station of Figure 20, the working memory stores user applications 2020 which, when executed by the processor, cause the establishment of a user interface to enable communication of data to and from a user. The applications thus establish general * purpose or specific computer implemented utilities and facilities 2022 that might habitually be used by a user.
Figure 21 shows a communication system 2100 comprising a plurality of stations 2002 including a base station 2102. In system 2100, the stations 2002 have feedback circuit 2112 for generating the information to be fed back to the base station, depicted by a single dashed arrow 2104 for clarity. This information may comprise a channel estimate, or a weighted channel estimate in the case where users' power loading is taken into consideration, as will be described in due course. One or both of the scheduler 2106 and precoder 2108 utilise the information for scheduling stations and precoding data 2 110. In more detail, and with reference to Figure 22, the scheduler 2106 comprises means for perfonning a determination process 2202 and means for performing an optimization process 2204, as described. Where user stations have non-uniform noise powers, the base station 2102 can be further provided with means for determining a channel matrix using the feedback information, the output of which is used by the scheduling and precoding means.
Precoding order of stations in TH precoding One of the main factors detennining the performance of the conventional TH precoding is the ordering of the stations. However, since finding an optimal ordering will involve an exhaustive search over K! possible arrangements, a suboptimal ordering is usually employed. Combinations of THP with zero-forcing (ZF-THP) and THP with minimum mean square error (MMSE-THP) are examples of such suboptimal ordering.
Here, a method of gain adjusted TEl precoding (GA-THP) is described, in which a gain control factor is introduced at the receiver.
The main issue with the MMSE-based TH precoding is that the individual stations' noise powers are not taken into account. This may lead to suboptimal order if the noise powers of stations are different. This problem is overcome by introducing a gain control factor g to the received signals of stations as g (39) The modification to the receiver station 2302 is sketched in Figure 23, where a multiplication module 2304 is added at the receiver side to adjust the received signals.
In fact, module 2304 and multiplication module 2306 (which applies a normalization scalar to the received signal) can be combined into one, but for the sake of clarity, they are separately illustrated.
A flowchart of the feedback, precoding and recovery processes at a receiver station and a transmitter station (e.g. Base Station) is shown in Figure 24. In the present approach, the BS makes use of the effective channel hk Thus, distinct noise power values do not need to be sent back to the BS, which helps to reduce the feedback overhead in the uplinks.
The receiver determines a noise power Vk and channel vector hk (step S24-2), on the basis of which an effective channel vector 1k (=g hk) is determined (step S24-4). The effective channel vector is then transmitted to the base station (step S24-6).
The BS uses the received effective channel vector (step S24-8) during THP precoding (step S24-10). By replacing the channel vector hk with an effective channel vector hk, which incorporates a measure of the station's noise power vk (g = vk), the precoding operation will now take into account the noise power of each station (as well as the instantaneous channel). The precoded signal is then sent to the receiver, in addition to a power normalization scalar fl (which each receiver uses in the recovery of the precoded transmitted data) (step S24-12). For systems in which all stations are aware of GA-TI-i precoding, the same power normalization scalar f.3 can be sent to all stations.
The receiver receives the power normalization scalar /3 (S24-14) and the precoded signal (S24-16). The precoded signal is then weighted (multiplied) by the power normalization scalar (ff), to correct for the amplitude of the desired signal which follows from the transmit power constraint, and by the gain control factor scalar gk, to correct for the noise powers and channel gains introduced at the precoding stage. The scalars can be applied separately or as a single scalar, e.g. gi I/i.
An overview of the signalling exchanges between the BS transmitter and a station for the above approach is also shown in Figure 25a.
The described technique can also be applied to systems employing conventional TH precoding, which are referred to as legacy systems'. Figure 25b depicts a signalling exchange between the BS and a receiver station for conventional cases. The receiver station sends back its noise power Vk and channel vector hk separately, while the BS informs the station(s) of the value /3 for reconstructing the transmitted signal.
For implementing the described approach, the scalar /3 usually sent by the BS is replaced by /3 /g (Figure 25c)'. The reason that the scalar /3 /g is preferred is that in legacy systems stations know that the base station sends /3. However, alternatively, the base station could send 1/fl, in which case gil/i could be sent to users. The legacy stations can use the received coefficient /3 / g for other signal processing stages. The values of coefficient /3 / g could be sent to UE either by analog pilot signals or digital signal on some dedicated channels. Various methods of conveying /3 / g to the UEs will be apparent to the skilled person and so will not be described here.
An explanation of how the precoding matrices are changed after introducing the gain control factors is now provided. For a station k, the effective channel (row) vector hk becomes hk = gh; the effective noise power is now unity as (gvk)2 = 1. Thus, the effective channel power is Ok =(gko'k)2 =cr /v. The effective channel matrix of all stations is h1 11= . (40) hK Now the MMSE-based TH precoding described earlier can be reused. There are two changes. First, the channel matrix H is replaced by the effective channel matrix H. Second, the effective noise power of all stations is 1. In particular, the matrix F in equation (10) becomes ---.H K =HH +-I. (41) In this way, the station ordering process will take into account both the instantaneous channel and noise power of each station during the computation of the permutation and precoding matrices. Thus, the likelihood that the station with the worst effective channel power is selected first will decrease, and the average BER of all stations will be improved.
Although the present approach is described in the context of GA-TH precoding, it can be readily extended to other linear MMSE precoding, such as that described in Joham et al. (2004), and nonlinear MMSE-based vector perturbation precoding, such as that described in Schmidt et al. The values of gain coefficients g could be varied. In equation (39), the gain coefficients g are set to v' such that the precoding order of stations will be statistically changed. By defining g = akvk, where a is any positive real number, there is a greater degree of freedom to modify the precoding orders of stations (by choosing the values of ak).
The described technique makes use of stations' noise (thermal noise plus interference) powers in formulating the precoder. In fact, other MMSE-based linear and nonlinear precoders also require the knowledge of stations' noise powers. Below, exemplary noise powers and ways of measuring it at the receiver are presented.
A simplified block diagram of a receiver 2600 is shown in Figure 26. Theoretically, the noise powers can be measured at any points of the receive chain (indicated by reference points 1', 2', 3' and 4') but with different values at different points. This is because the radio frequency (RF) 2602, auto gain control (AGC) 2604, and analog-to-digital converter (ADC) 2606 modules may also introduce noise and distortion. For example, at reference point 4, where channel and noise powers are measured and used by baseband processing (BP) module 2608, the values of channel and noise power take into account all the noise (thermal noise plus interference) and distortion of the transmission chain from transmitter to the receiver up to this point, which is to say the chain between the BP module of the BS (not shown) and the BP module of the receiver station.
In the chain of modules, when the AGC module has established its gain level, the noise power and channel coefficients can be measured. After that, the AGC gain factor might be assumed to be constant during the reception of an OFDM data frame precoded by the described technique. This is an exact assumption for noise measurement, interference measurement and channel measurement and estimation. This requirement can normally be met since it is assumed that the variation of the environment is substantially unchanged during the transmission of an OFDM frame of several OFDM symbols. This condition also applies for other measurements and feedback, including channel measurements and feedback for other precoding implementations.
In cases where an element of the transmission chain has changed, for example where the environment has changed or where the AGC gain has changed, substantially all the measurements including noise, interference, and CSI are preferably re-measured and re-estimated, as with any current and conventional operation.
There are several ways to measure the noise power measurement in practice, which will be known to the skilled person. For practical purposes, but without loss of generality, two exemplary methods of measuring the noise power are defmed in the IEEE 802.16e Standard (IEEE Standard for Local and Metropolitan Area Networks, Part 16: Air Interface for.F'ixed and Mobile Broadband Wireless Access Systems, IEEE Std 802.16e- 2005 and IEEE Std 802.162004/Corl-2005, 2005..
The noise power can be measured by taking the received signals of unmodulated subcarriers (no data) in the preamble of data frames; for error free packet, the noise is simply a difference between the received signal and error-free recovered signal. Then the noise power can be determined by taking the variance of noise signals.
Simulation results Simulation results for the described GA-TH precoding method using the same channel and noise power provided earlier are given in Figure 27 and Figure 28, and reveal the SNR advantage of the described method. The performance metric is the average BER of all stations since this metric is relevant in terms of system capacity.
In Figure 27, the probability mass functions (pmi) of precoding order of stations 1 and 2 are compared. By using GA-TH precoding, station 2 is more likely precoded first, compared to station 1. Therefore, in Figure 28, the described method yields a significant SNR gain of 4 dB at BER of 1 02 compared with the conventional technique.
In Figure 29 and Figure 30, simulation results for four other test cases are presented, with parameters summarized below. In all simulations, significant SNR improvements are always obtainable. These results strongly support the described method.
Test case Channel power Noise power 1 [1,1,1,11 [1,2,4,8] 2 [4,8,1,2] [1,4,8,2] 3 [32,16,4,11 [1,4, 16,32] 4 [1,4,1,1] [1,8,1,1] [1, 1, 1, 1] [1,2, 1.5, 0.5] The proposed method can be applied to vector perturbation precoding. In Figure 31, simulation results show that significant SNR gain can be achieved for VP precoding.
The reader will appreciate that the foregoing are but examples of implementation of the present invention, and that further aspects, features, variations and advantages may arise from using the invention in different embodiments. The scope of protection is intended to be provided by the claims appended hereto, which are to be interpreted in the light of the description with reference to the drawings and not to be limited thereby. Each feature disclosed in the description and (where appropriate) the claims and drawings may be provided independently or in any appropriate combination.

Claims (20)

  1. CLAIMS: 1. A method of scheduling stations for access to one or more resource blocks in a wireless communications system, the method comprising: performing a first run of a determination process, said determination process comprising determining two or more subsets of stations from a set of stations; and performing a first run of an optimization process, said optimization process comprising one or more iterations of adding a station to a first one of said two or more subsets, from a second one of said two or more subsets, and removing a station from said first subset, wherein said adding and removing are performed in accordance with rules based on an optimization metric associated with at least said first subset.
  2. 2. A method in accordance with claim 1 wherein a value of said optimization metric is based on the channel responses associated with the stations of at least said first subset.
  3. 3. A method in accordance with claim 1 or 2 wherein optimization of said optimization metric is achievable by minimizing a sum of mean square error (MSE).
  4. 4. A method in accordance with any one of the preceding claims wherein said optimization process further comprises checking whether the station added to said first subset is the same as the station removed from said first subset.
  5. 5. A method in accordance with any one of the preceding claims wherein said determination process further comprises computing a matrix A1 for each of said one or more resource blocks using the relation K' =(Hh1H+aIM), wherein H is a channel matrix, I is an identity matrix, Mis the number of transmit antennas, and a is a constant computed using the relation a = K / E,7., wherein Es,. is the total transmit power, and K is the number of stations to be scheduled for said resource block.
  6. 6. A method in accordance with claim 5 wherein each iteration of said optimization process further comprises updating K' after each of said adding and removing steps.
  7. 7. A method in accordance with any one of the preceding claims wherein each iteration of said optimization process further comprises computing a vector gj for each station of said second subset prior to said adding and for each station of said first subset prior to said removing, using the relation g, = wherein h is a channel vector of said station, and A' is a positive defmitive matrix.
  8. 8. A method in accordance with any one of the preceding claims wherein said determination process further comprises determining the station described by the relation j = argmaxh12 wherein h is the channel vector of station i of said set of stations.
  9. 9. A method in accordance with any one of the preceding claims wherein the rule for adding is expressible as J1 =argrnax[(l+gjh)_IJgj2] 1Ec and the rule for removing is expressible as J2 =argrnin[(1_gjh1)1gj2] wherein J1 is the station to be added to said first subset co from said second subset Q, J2 is the station to be removed from said first subset, g is a vector corresponding to station i and computed using the relation g,=b1A', wherein Ii is a channel vector and K1 is a positive definitive matrix.
  10. 10. A method in accordance with any one of claims 1 to 8 wherein said stations are scheduled for access to two or more resource blocks and wherein the station removed from said first subset is added to said second subset, such that the rule for adding is expressible as ( 2 2 * I ________ g2*k J=argmini -_______ kEQ1! I-a h" I+u h' I,k 1,k 82,ft 2,k and the rule for removing is expressible as * ( Dgl,k2 llg2.k J=argmini-+ kEf�=,J l+a h" 1-a h" bI,k 1,* b2,k 2,k wherein J1 is the station to be added to said second subset from said first subset, J2 is the station to be added to said first subset Q1 from said second subset Q2, gi,k is a vector corresponding to station k and of subset Q computed using the relation gIkhI,kAi', wherein bk is a channel vector k of subset Q and A,' is a positive defmitive matrix.
  11. 11. A method in accordance with any one of the preceding claims further comprising: performing a second run of said determination process; performing a second run of said optimization process on the two or more subsets resulting from said second run of said determination process; comparing a value of said optimization metric corresponding to the one or more subsets resulting from said first run of said optimization process to a value of said optimization metric corresponding to the one or more subsets resulting from said second run of said optimization process; and selecting the one or more subsets resulting from either said first or said second run of said optimization process based on said comparing.
  12. 12. A method in accordance with any one of claims 1 to 8 and 10 wherein said stations are scheduled for access to two resource blocks and wherein said station removed from said first subset is added to said second subset, the method further comprising: performing a second run of said optimization process on the two or more subsets resulting from said first run of said determination process; comparing a value of said optimization metric corresponding to the two subsets resulting from said first run of said optimization process to a value of said optimization metric corresponding to the two subsets resulting from said second run of said optimization process; and selecting the two subsets resulting from either said first or said second run of said optimization process based on said comparing.
  13. 13. A method in accordance with any one of claims 1 to 8 and 10 wherein said stations are scheduled for access to two resource blocks and wherein said station removed from said first subset is added to said second subset, the method further comprising: performing a second run of said optimization process on the two subsets resulting from said first run of said optimization process, wherein said adding and removing in said second run of said optimization process are performed reversely to said adding and removing in said first run of said optimization process; comparing a value of said optimization metric corresponding to the one or more subsets resulting from said first run of said optimization process to a value of said optimization metric corresponding to the one or more subsets resulting from said second run of said optimization process.
  14. 14. A method of scheduling stations for access to a resource block in a wireless communications system, the method comprising: performing a first run of a determination process, said determination process comprising determining a first station to form a subset of stations from a set of stations; and performing a first run of an optimization process, said optimization process comprising one or more iterations of adding a station to said subset, from the remaining stations of said set, wherein said adding is performed in accordance with a rule based on an optimization metric associated with said first subset, said rule being expressible as j=argrnax[(1+gjh1)1g12] SEQ, whereinj is the station to be added to said subset from said set Q, gi is a vector corresponding to station i and computed using the relation gjh1A', wherein h1 is a channel vector and K' is a positive definitive matrix.
  15. 15. A method of scheduling stations for access to a resource block in a wireless communications system, the method comprising: performing a first run of a determination process, said determination process comprising determining a set of stations; and performing a first run of an optimization process, said optimization process comprising one or more iterations of removing a station from said set, wherein said removing is performed in accordance with a rule based on an optimization metric associated with said set, said rule being expressible as j -argrnin[(i -g1h)_1 g1 2]IEQwhereinj is the station to be removed from said set Q, g* is a vector corresponding to station I and computed using the relation g,h1K', wherein h is a channel vector and K' is a positive defmitive matrix.
  16. 16. A method of scheduling stations for access to two resource blocks in a wireless communications system, the method comprising: performing a first run of a determination process, said determination process comprising determining a first and a second subset of stations from a set of stations; and performing a first run of an optimization process, said optimization process comprising one or more iterations of adding a station to said subset, from said set, wherein said adding is performed in accordance with a rule based on an optimization metric associated with said first subset, said rule being expressible as jargmm l-gh" l+gh" 1k 1k 2k 2k, wherein j is a station to be added to said -second set from said first set, gk is a vector corresponding to station k of set f�= and computed using the relation gE.k=hI,kAI, wherein h*,k is a channel vector of user k of set c�= and A1 is a positive definitive matrix of set Z.
  17. 17. A method in accordance with any one of the preceding claims wherein said determination process further comprises determining an equivalent channel matrix using H GH, wherein H is a channel matrix, and G is a diagonal filter matrix computed using the relation G = R112, wherein K is a diagonal noise covariance matrix.
  18. 18. An apparatus for scheduling stations for access to one or more resource blocks in a wireless communication system, the apparatus comprising: means for performing a first run of a determination process, said determination process comprising determining two or more subsets of stations from a set of stations; and means for performing a first run of an optimization process, said optimization process comprising one or more iterations of adding a station to a first one of said two or more subsets, from a second one of said two or more subsets, and removing a station from said first subset, wherein said adding and removing are performed in accordance with rules based on an optimization metric associated with at least said first subset.
  19. 19. A storage medium storing computer executable instructions which, when executed on general purpose computer controlled communications apparatus, cause the apparatus to become configured to perform the method of any of claims 1 to 18.
  20. 20. A signal carrying computer receivable information, the information defining computer executable instructions which, when executed on general purpose computer controlled communications apparatus, cause the apparatus to become configured to perform the method of any of claims 1 to 18.
GB0905588A 2009-03-31 2009-03-31 Wireless communication method and apparatus Expired - Fee Related GB2469081B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB0905588A GB2469081B (en) 2009-03-31 2009-03-31 Wireless communication method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB0905588A GB2469081B (en) 2009-03-31 2009-03-31 Wireless communication method and apparatus

Publications (3)

Publication Number Publication Date
GB0905588D0 GB0905588D0 (en) 2009-05-13
GB2469081A true GB2469081A (en) 2010-10-06
GB2469081B GB2469081B (en) 2012-07-11

Family

ID=40672075

Family Applications (1)

Application Number Title Priority Date Filing Date
GB0905588A Expired - Fee Related GB2469081B (en) 2009-03-31 2009-03-31 Wireless communication method and apparatus

Country Status (1)

Country Link
GB (1) GB2469081B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102137495A (en) * 2011-03-11 2011-07-27 东南大学 Method for allocating resources based on minimum capacity loss
EP2515450A1 (en) * 2009-12-18 2012-10-24 Huawei Technologies Co., Ltd. Method and device for pre-coding, and method and device for decoding

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2478603B (en) 2010-03-12 2017-10-11 Toshiba Res Europe Ltd Linear multiuser precoding with multiple-receive antenna users

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080159122A1 (en) * 2006-12-28 2008-07-03 Avner Dor Method and apparatus to support SDMA transmission of a OFDMA based network

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080159122A1 (en) * 2006-12-28 2008-07-03 Avner Dor Method and apparatus to support SDMA transmission of a OFDMA based network

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Simplified Antenna Selection and User Scheduling for Orthogonal Space-Division Multiplexing" (SIGDEL ET AL.) - Wireless Communications and Networking Conference, 2007. 11-15 March 2007 Page(s):1728 - 1733 See especially pages 1731-2. *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2515450A1 (en) * 2009-12-18 2012-10-24 Huawei Technologies Co., Ltd. Method and device for pre-coding, and method and device for decoding
EP2515450A4 (en) * 2009-12-18 2013-01-30 Huawei Tech Co Ltd Method and device for pre-coding, and method and device for decoding
US8781021B2 (en) 2009-12-18 2014-07-15 Huawei Technologies Co., Ltd. Method and device for pre-coding, and method and device for decoding
CN102137495A (en) * 2011-03-11 2011-07-27 东南大学 Method for allocating resources based on minimum capacity loss

Also Published As

Publication number Publication date
GB2469081B (en) 2012-07-11
GB0905588D0 (en) 2009-05-13

Similar Documents

Publication Publication Date Title
Liu et al. Joint power and antenna selection optimization in large cloud radio access networks
US20100246715A1 (en) Wireless communication method and apparatus
CN107483088B (en) Large-scale MIMO robust precoding transmission method
Peters et al. Cooperative algorithms for MIMO interference channels
Shin et al. Weighted-sum-rate-maximizing linear transceiver filters for the K-user MIMO interference channel
Park et al. Regularized interference alignment based on weighted sum-MSE criterion for MIMO interference channels
Khalid et al. Robust hybrid precoding for multiuser MIMO wireless communication systems
Cai et al. Robust MMSE precoding based on switched relaying and side information for multiuser MIMO relay systems
JP2009278205A (en) Radio communication apparatus and radio communication method
Fritzsche et al. Robust sum rate maximization in the multi-cell MU-MIMO downlink
Fritzsche et al. Distributed robust sum rate maximization in cooperative cellular networks
GB2469081A (en) Optimizing subsets of channels for wireless scheduling and precoding
Herath et al. Vector perturbation precoding for multi-user CoMP downlink transmission
Cheng et al. A novel adaptive hybrid truncation precoding strategy in massive MIMO
Aboutorab et al. A new resource allocation technique in MU-MIMO relay networks
Teav et al. Performance optimization of MIMO Y channels: Interference alignment and signal detection
U***lla et al. Robust transceiver design for multiuser MIMO downlink
Dong et al. A two-step user selection algorithm for multiuser precoding
Dong et al. Leakage-based power allocation for relaxed SLNR beamforming in multi-cell MU-MIMO systems
Sung et al. An MMSE based block diagonalization for multiuser MIMO downlink channels with other cell interference
Yaqot et al. Adaptive MMSE-based precoding in multiuser MIMO broadcasting with application to cognitive radio
Sun et al. Adaptive joint nonlinear transmit-receive processing for multi-cell MIMO networks
Zhang et al. BD precoding schemes for cognitive MIMO system
Girija et al. Robust Adaptive AutoRegressive Weighted Constant Modulus Algorithm for Blind Equalization in MIMO-OFDM System
Zu et al. Coordinated Tomlinson-Harashima precoding design algorithms for overloaded multi-user MIMO systems

Legal Events

Date Code Title Description
PCNP Patent ceased through non-payment of renewal fee

Effective date: 20140331