# Patent

## Title
Dynamic subchannel and bit allocation in a multiuser-MIMO/OFDMA system

## Abstract

A resource allocation method in a multiuser-multiple-input multiple-output/orthogonal frequency division multiple access (MIMO/OFDMA) system. In the multiuser-MIMO/OFDMA system feedback information is received from terminals. A channel gain and a transmission rate for each user are determined using the feedback information. An average channel gain for each user is computed according to the channel gain. The average number of bits for each user is determined according to the average channel gain. The number of subchannels for each user is computed according to the average number of bits for each user. At least one subchannel is allocated to each user according to the number of subchannels for each user. A modulation scheme for each of the at least one subchannel is determined. The resource allocation method adaptively allocates subchannels and bits according to channel environment, thereby considerably improving frequency use efficiency as well as a power gain.

## Background
PRIORITY
This application claims priority to an application entitled “Dynamic Subchannel and Bit Allocation in a Multiuser-MIMO/OFDMA System” filed in the Korean Intellectual Property Office on May 17, 2004 and assigned Serial No. 2004-34960, the contents of which are incorporated herein by reference.
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates generally to a mobile communication system, and more particularly to a scheme for optimizing subchannel and bit allocation in a multicarrier-based mobile communication system.
2. Description of the Related Art
A multiple-input multiple-output (MIMO) system in the downlink can be broken down to multiple parallel independent single-user MIMO systems. Further, when the orthogonal frequency division multiple access (OFDMA) technology is applied to the downlink MIMO system, a multiuser-MIMO/OFDMA system is provided. In this system, data streams for users are multiplexed over space and frequency, and thus the users receive the spatially multiplexed data streams.
FIG. 1 is a conceptual diagram illustrating subchannels of a multiuser-multiple-input multiple-output/orthogonal frequency division multiple access (MIMO/OFDMA) system. In the multiuser-MIMO/OFDMA system as illustrated in FIG. 1, there are space division multiple access (SDMA) subchannels in which each user occupies several MIMO subchannels, for each orthogonal frequency division multiplexing (OFDM) subcarrier. The users generate MIMO subchannels using the MIMO technologies, and transmit data through the generated MIMO subchannels. A more important feature of a multiuser-MIMO/OFDMA system design is that SDMA channels are allocated to users, and bits are loaded to the MIMO subchannels allocated to a single user for adaptive modulation.
For subchannel and bit allocation, optimal and suboptimal schemes have been proposed to minimize the overall transmission power under the data rate constraint or to maximize a data rate under the transmission power constraint. For a multiuser-multiple-input single-output (MISO)/OFDM system, a bit allocation scheme for maximizing a signal-to-noise ratio (SNR) has been proposed. More specifically, a suboptimal scheme that takes into account interference and a data rate in a multiuser-MISO/OFDMA system has been proposed. However, when the data rate constraint is present, there is a drawback that the suboptimal scheme can be applied only to an OFDMA system.
SUMMARY OF THE INVENTION
Accordingly, the present invention has been designed to solve the above and other problems occurring in the prior art. Therefore, it is an aspect of the present invention to provide a subchannel and bit allocation method for efficiently allocating subchannels in an orthogonal frequency division multiple access (OFDMA) system using multiple antennas.
It is another aspect of the present invention to provide a subchannel and bit allocation method for improving a power gain, and frequency use efficiency by performing adaptive modulation according to channel state.
The above and other aspects of the present invention can be achieved by a resource allocation method in a multiuser-multiple-input multiple-output/orthogonal frequency division multiple access (MIMO/OFDMA) system including a base station for transmitting signals through a plurality of transmitter antennas, and a plurality of terminals for receiving the signals through receiver antennas. The resource allocation method includes determining a number of subchannels for each user according to a channel environment; and allocating a modulating scheme for each subchannel according to the determined number of subchannels.



BRIEF DESCRIPTION OF THE DRAWINGS
The above and other aspects and advantages of the present invention will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings, in which:
FIG. 1 is a conceptual diagram illustrating subchannels of a multiuser-multiple-input multiple-output/orthogonal frequency division multiple access (MIMO/OFDMA) system;
FIG. 2 is a block diagram illustrating a multiuser-MIMO/OFDMA base station to which a subchannel and bit allocation method in accordance with the present invention is applied; and
FIG. 3 is a flow chart illustrating the subchannel and bit allocation method in accordance with the present invention.



DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
A subchannel and bit allocation method in accordance with preferred embodiments of the present invention will be described in detail herein below with reference to the accompanying drawings. More specifically, the present invention provides an optimal scheme for subchannel and bit allocation, and a suboptimal scheme for separately performing the subchannel and bit allocation.
FIG. 2 is a block diagram illustrating a multiuser-multiple-input multiple-output/orthogonal frequency division multiple access (MIMO/OFDMA) base station to which a subchannel and bit allocation method in accordance with the present invention is applied. Referring to FIG. 2, the multiuser-MIMO/OFDMA base station includes a modulation unit 21, a precoding unit 23, and an OFDMA transmission unit 27. The modulation unit 21 includes a plurality of adaptive modulators 21a for processing input data of multiple users. The precoding unit 23 includes a plurality of precoders 23a for preceding signals output from the adaptive modulators 21a, and a plurality of adders 25 for adding outputs of the precoders 23a. The OFDMA transmission unit 27 includes a plurality of Inverse Fast Fourier Transform (IFFT) and parallel-to-serial (P/S) modules 27a, and a plurality of cyclic prefix (CP) insertion modules 27b for inserting CPs into output signals of the IFFT and P/S modules 27a. 
The multiuser-MIMO/OFDMA base station further includes a subchannel and bit allocation module 29 for generating information necessary for subchannel and bit allocation using feedback information received from terminals, and providing the generated information to the modulation unit 21 and the precoding unit 23.
The above-described base station transmits signals of N subcarriers through Nt transmitter antennas 28. It is assumed that the channel is flat fading in the present invention. The base station receives downlink channel information from all K user terminals, allocates a set of subchannels to each user terminal, and determines the number of bits to be transmitted through each channel.
The subchannel and bit allocation information is transmitted to user terminals through a separate control channel. When each user terminal has Nr receiver antennas and Nt=M·NR, where M is an integer greater than or equal to 2, M different user terminals occupy M SDMA subchannels per subcarrier, and each user terminal receives NR spatially multiplexed bit streams through MIMO processing. The bit streams are referred to as MIMO subchannels. Ωn denotes an indicator set for M user terminals occupying M SDMA subchannels of the n-th subcarrier. Ωn consists of M integers chosen from {1,2, . . . , K}. When an NR×1 vector is defined by Xn,k,




  
    X
    
      n
      ,
      k
    
  
  =
  
    
      {
      
        
          
            
              
                information
                ⁢
                
                  
                
                ⁢
                symbol
                ⁢
                
                  
                
                ⁢
                vector
              
              ,
              
                
                  if
                  ⁢
                  
                    
                  
                  ⁢
                  k
                
                ∈
                
                  Ω
                  n
                
              
            
          
        
        
          
            
              0
              ,
              otherwise
              ,
            
          
        
      
      }
    
    .
  




When Xn,k is multiplied by an NT×NR processing matrix, Sn,k=Fn,kXn,k is yielded and




  
    ∑
    
      k
      ∈
      
        Ω
        n
      
    
  
  ⁢
  
    S
    
      n
      ,
      k
    
  




is transmitted through the n-th subcarrier. However, when Xn,k=0, such multiplication is unnecessary.

When the matrix Fn,k is properly chosen, the multiuser interference in




  
    ∑
    
      k
      ∈
      
        Ω
        n
      
    
  
  ⁢
  
    S
    
      n
      ,
      k
    
  




can be eliminated, and Sn,k and k∈Ωn can be recovered at a receiver. The matrix Fn,k provides M SDMA subchannels associated with single-user MIMO subchannels, such that each user terminal can spatially multiplex NR data streams.

A transmitter transmits data to K user terminals through all M·N·NR subchannels under the following conditions:
Condition 1: M SDMA subchannels per subcarrier should be allocated to M different user terminals.
Condition 2: All NR MIMO subchannels associated with one SDMA subchannel should be allocated to a single user terminal occupying the SDMA subchannel.
When M=1, the multiuser-MIMO/OFDMA system is switched to a single-user-MIMO/OFDMA system in which each subcarrier with NR MIMO subchannels is occupied by a single user terminal. In this case, NT=NR, Fn,k=En,k, and Condition 1 is unnecessary.
Another form of the multiuser-MIMO/OFDMA system is a multiuser-multiple-input single-output (MISO)/OFDMA system having a single receiver antenna, where NR=1. In this case, M=NT, Fn,k= Nn,k, and Condition 2 is unnecessary.
An optimal subchannel and bit allocation scheme based on integer programming (IP) in accordance with the present invention will be described herein below. For convenience, it is assumed that the number of SDMA subchannels for each OFDM subcarrier is 2, i.e., M=2.
A data rate Rk of the k-th user terminal can be expressed as shown in Equation (1).




  
    
      
        
          
            
              
                R
                k
              
              =
              
              ⁢
              
                
                  ∑
                  
                    n
                    =
                    1
                  
                  N
                
                ⁢
                
                  
                    ∑
                    
                      l
                      =
                      1
                    
                    
                      N
                      R
                    
                  
                  ⁢
                  
                    
                      ∑
                      
                        
                          p
                          =
                          1
                        
                        ,
                        
                          p
                          ≠
                          k
                        
                      
                      K
                    
                    ⁢
                    
                      
                        ∑
                        
                          c
                          =
                          1
                        
                        C
                      
                      ⁢
                      
                        c
                        ·
                        
                          
                            ρ
                            k
                          
                          ⁡
                          
                            (
                            
                              n
                              ,
                              l
                              ,
                              p
                              ,
                              c
                            
                            )
                          
                        
                      
                    
                  
                
              
            
          
        
        
          
            
              
                
                  =
                  Δ
                
                ⁢
                
                ⁢
                
                  
                    ∑
                    
                      n
                      =
                      1
                    
                    N
                  
                  ⁢
                  
                    
                      ∑
                      
                        l
                        =
                        1
                      
                      
                        N
                        R
                      
                    
                    ⁢
                    
                      
                        c
                        k
                      
                      ⁡
                      
                        (
                        
                          n
                          ,
                          l
                        
                        )
                      
                    
                  
                
              
              ,
            
          
        
      
    
    
      
        (
        1
        )
      
    
  




where




  
    
      
        c
        k
      
      ⁡
      
        (
        
          n
          ,
          l
        
        )
      
    
    =
    
      
        ∑
        
          
            p
            =
            1
          
          ,
          
            p
            ≠
            k
          
        
        K
      
      ⁢
      
        
          ∑
          
            c
            =
            1
          
          C
        
        ⁢
        
          c
          ·
          
            ρ
            
              (
              
                n
                ,
                l
                ,
                p
                ,
                c
              
              )
            
          
        
      
    
  
  ,




and C is the maximum number of bits per symbol that can be loaded to one subchannel.

If the k-th and p-th user terminals occupy two SDMA subchannels of the n-th subcarrier, and c bits are allocated to the l-th MIMO subchannel associated with an SDMA subchannel of the k-th user terminal, ρk(n,l,p,c)=1. Otherwise, ρk(n,l,p,c)=0.
In Equation (1), ck(n,l) denotes the number of bits allocated to the l-th MIMO subchannel of the k-th user terminal when the k-th user terminal occupies one of the SDMA subchannels of the n-th subcarrier. The transmission power allocated to the k-th user terminal can be expressed as shown in Equation (2).




  
    
      
        
          P
          k
        
        =
        
          
            ∑
            
              n
              =
              1
            
            N
          
          ⁢
          
            
              ∑
              
                l
                =
                1
              
              
                N
                R
              
            
            ⁢
            
              
                ∑
                
                  
                    p
                    =
                    1
                  
                  ,
                  
                    p
                    ≠
                    k
                  
                
                K
              
              ⁢
              
                
                  ∑
                  
                    c
                    =
                    1
                  
                  C
                
                ⁢
                
                  
                    
                      
                        f
                        k
                      
                      ⁡
                      
                        (
                        c
                        )
                      
                    
                    
                      
                        α
                        k
                        2
                      
                      ⁡
                      
                        (
                        
                          n
                          ,
                          l
                          ,
                          p
                        
                        )
                      
                    
                  
                  ·
                  
                    
                      ρ
                      k
                    
                    ⁡
                    
                      (
                      
                        n
                        ,
                        l
                        ,
                        p
                        ,
                        c
                      
                      )
                    
                  
                
              
            
          
        
      
    
    
      
        (
        2
        )
      
    
  




In Equation (2), fk(c) is the received power required to stably receive c bits per symbol. αk(n,l,p) is an equivalent channel gain of the l-th MIMO subchannel of the k-th user terminal when the k-th and p-th user terminals occupy two SDMA subchannels of the n-th subcarrier.
It is assumed that the MIMO subchannels are ordered according to their equivalent channel gains without loss of generality, i.e., |αk(n,1,p)|≧|αk(n,2,p)|, ∀k,n,p.
The optimal subchannel and bit allocation problem for minimizing the total transmission power required to transmit data at a rate of {R1, . . . , RK} can be formulated as shown in Equation (3).




  
    
      
        
          
            P
            T
          
          =
          
            
              ∑
              
                k
                =
                1
              
              K
            
            ⁢
            
              
                ∑
                
                  n
                  =
                  1
                
                N
              
              ⁢
              
                
                  ∑
                  
                    l
                    =
                    1
                  
                  
                    N
                    R
                  
                
                ⁢
                
                  
                    ∑
                    
                      
                        p
                        =
                        1
                      
                      ,
                      
                        p
                        ≠
                        k
                      
                    
                    K
                  
                  ⁢
                  
                    
                      ∑
                      
                        c
                        =
                        1
                      
                      C
                    
                    ⁢
                    
                      
                        
                          
                            f
                            k
                          
                          ⁡
                          
                            (
                            c
                            )
                          
                        
                        
                          
                            α
                            k
                            2
                          
                          ⁡
                          
                            (
                            
                              n
                              ,
                              l
                              ,
                              p
                            
                            )
                          
                        
                      
                      ·
                      
                        
                          ρ
                          k
                        
                        ⁡
                        
                          (
                          
                            n
                            ,
                            l
                            ,
                            p
                            ,
                            c
                          
                          )
                        
                      
                    
                  
                
              
            
          
        
        ⁢
        
          

        
        ⁢
        
          Constraints
          ⁢
          
            :
          
        
        ⁢
        
          

        
        ⁢
        
          
            
              ρ
              k
            
            ⁡
            
              (
              
                n
                ,
                l
                ,
                p
                ,
                c
              
              )
            
          
          ∈
          
            {
            
              0
              ,
              1
            
            }
          
        
        ⁢
        
          

        
        ⁢
        
          
            
              R
              k
            
            =
            
              
                ∑
                
                  n
                  =
                  1
                
                N
              
              ⁢
              
                
                  ∑
                  
                    l
                    =
                    1
                  
                  
                    N
                    R
                  
                
                ⁢
                
                  
                    ∑
                    
                      
                        p
                        =
                        1
                      
                      ,
                      
                        p
                        ≠
                        k
                      
                    
                    K
                  
                  ⁢
                  
                    
                      ∑
                      
                        c
                        =
                        1
                      
                      C
                    
                    ⁢
                    
                      c
                      ·
                      
                        
                          ρ
                          k
                        
                        ⁡
                        
                          (
                          
                            n
                            ,
                            l
                            ,
                            p
                            ,
                            c
                          
                          )
                        
                      
                    
                  
                
              
            
          
          ,
          
            ∀
            k
          
        
        ⁢
        
          

        
        ⁢
        
          
            0
            ≤
            
              
                ∑
                
                  c
                  =
                  1
                
                C
              
              ⁢
              
                c
                ·
                
                  
                    ρ
                    k
                  
                  ⁡
                  
                    (
                    
                      n
                      ,
                      l
                      ,
                      p
                      ,
                      c
                    
                    )
                  
                
              
            
            ≤
            1
          
          ,
          
            ∀
            k
          
          ,
          n
          ,
          l
          ,
          p
        
        ⁢
        
          

        
        ⁢
        
          
            0
            ≤
            
              
                ∑
                
                  k
                  =
                  1
                
                K
              
              ⁢
              
                
                  ∑
                  
                    
                      p
                      =
                      1
                    
                    ,
                    
                      p
                      ≠
                      k
                    
                  
                  K
                
                ⁢
                
                  
                    ∑
                    
                      c
                      =
                      1
                    
                    C
                  
                  ⁢
                  
                    
                      ρ
                      k
                    
                    ⁡
                    
                      (
                      
                        n
                        ,
                        l
                        ,
                        p
                        ,
                        c
                      
                      )
                    
                  
                
              
            
            ≤
            2
          
          ,
          
            ∀
            n
          
          ,
          l
        
        ⁢
        
          

        
        ⁢
        
          
            0
            ≤
            
              
                ∑
                
                  l
                  =
                  1
                
                
                  N
                  R
                
              
              ⁢
              
                
                  ∑
                  
                    c
                    =
                    1
                  
                  C
                
                ⁢
                
                  
                    ρ
                    k
                  
                  ⁡
                  
                    (
                    
                      n
                      ,
                      l
                      ,
                      p
                      ,
                      c
                    
                    )
                  
                
              
            
            ≤
            
              
                N
                R
              
              ⁢
              
                
                  δ
                  k
                
                ⁡
                
                  (
                  
                    n
                    ,
                    p
                  
                  )
                
              
            
          
          ,
          
            ∀
            k
          
          ,
          n
          ,
          p
        
        ⁢
        
          

        
        ⁢
        
          
            
              
                ∑
                
                  k
                  =
                  1
                
                K
              
              ⁢
              
                
                  ∑
                  
                    
                      p
                      =
                      1
                    
                    ,
                    
                      p
                      ≠
                      k
                    
                  
                  K
                
                ⁢
                
                  
                    δ
                    k
                  
                  ⁡
                  
                    (
                    
                      n
                      ,
                      p
                    
                    )
                  
                
              
            
            =
            2
          
          ,
          
            ∀
            n
          
        
        ⁢
        
          

        
        ⁢
        
          
            
              
                δ
                k
              
              ⁡
              
                (
                
                  n
                  ,
                  p
                
                )
              
            
            =
            
              
                δ
                p
              
              ⁡
              
                (
                
                  n
                  ,
                  k
                
                )
              
            
          
          ,
          
            ∀
            k
          
          ,
          n
          ,
          p
        
        ⁢
        
          

        
        ⁢
        
          
            
              
                δ
                k
              
              ⁡
              
                (
                
                  n
                  ,
                  p
                
                )
              
            
            ∈
            
              {
              
                0
                ,
                1
              
              }
            
          
          ,
          
            ∀
            k
          
          ,
          n
          ,
          p
        
      
    
    
      
        (
        3
        )
      
    
  




In Equation (3), PT denotes an intensity of the total transmission power. If the k-th and p-th user terminals occupy two SDMA subchannels associated with the n-th subcarrier, δk(n,p)=1. Otherwise, δk(n,p)=0.
In Equation (3), an inequality




  
    0
    ≤
    
      
        ∑
        
          c
          =
          1
        
        C
      
      ⁢
      
        
          ρ
          k
        
        ⁡
        
          (
          
            n
            ,
            l
            ,
            p
            ,
            c
          
          )
        
      
    
    ≤
    1
  
  ,
  
    ∀
    k
  
  ,
  n
  ,
  l
  ,
  p




is needed because c bits (c∈{0, . . . , C}) are allocated to each MIMO channel.





  
    0
    ≤
    
      
        ∑
        
          k
          =
          1
        
        K
      
      ⁢
      
        
          ∑
          
            
              p
              =
              1
            
            ,
            
              p
              ≠
              k
            
          
          K
        
        ⁢
        
          
            ∑
            
              c
              =
              1
            
            C
          
          ⁢
          
            
              ρ
              k
            
            ⁡
            
              (
              
                n
                ,
                l
                ,
                p
                ,
                c
              
              )
            
          
        
      
    
    ≤
    2
  
  ,
  
    ∀
    n
  
  ,
  l
  ,
  
    

  
  ⁢
  
    0
    ≤
    
      
        ∑
        
          l
          =
          1
        
        
          N
          R
        
      
      ⁢
      
        
          ∑
          
            c
            =
            1
          
          C
        
        ⁢
        
          
            ρ
            k
          
          ⁡
          
            (
            
              n
              ,
              l
              ,
              p
              ,
              c
            
            )
          
        
      
    
    ≤
    
      
        N
        R
      
      ⁢
      
        
          δ
          k
        
        ⁡
        
          (
          
            n
            ,
            p
          
          )
        
      
    
  
  ,
  
    ∀
    k
  
  ,
  n
  ,
  p
  ,
  
    

  
  ⁢
  
    
      
        ∑
        
          k
          =
          1
        
        K
      
      ⁢
      
        
          ∑
          
            
              p
              =
              1
            
            ,
            
              p
              ≠
              k
            
          
          K
        
        ⁢
        
          
            δ
            k
          
          ⁡
          
            (
            
              n
              ,
              p
            
            )
          
        
      
    
    =
    2
  
  ,
  
    ∀
    n
  
  ,
  
    
      
        δ
        k
      
      ⁡
      
        (
        
          n
          ,
          p
        
        )
      
    
    =
    
      
        δ
        p
      
      ⁡
      
        (
        
          n
          ,
          k
        
        )
      
    
  
  ,
  
    ∀
    k
  
  ,
  n
  ,
  p
  ,




and δk(n,p)∈{0,1}; ∀k,n,p are included to satisfy Conditions 1 and 2. An optimal solution of the problem is obtained by IP using binary variables.

When M=1 (single-user-MISO/OFDMA), one of the user indices p and the corresponding summations can be removed from Equation (3). As a result, a condition of δk(n,p)=δp(n,k), ∀k,n,p is discarded. Furthermore, in this case, an inequality




  
    0
    ≤
    
      
        ∑
        
          k
          =
          1
        
        K
      
      ⁢
      
        
          ∑
          
            
              p
              =
              1
            
            ,
            
              p
              ≠
              k
            
          
          K
        
        ⁢
        
          
            ∑
            
              c
              =
              1
            
            C
          
          ⁢
          
            
              ρ
              k
            
            ⁡
            
              (
              
                n
                ,
                l
                ,
                p
                ,
                c
              
              )
            
          
        
      
    
    ≤
    2
  
  ,
  
    ∀
    n
  
  ,
  l




required to meet only Condition 1 is discarded.

When NR=1 (multiuser-MISO/OFDMA), the index l for MIMO subchannels and the corresponding summations can be removed from Equation (3). In this case,




  
    0
    ≤
    
      
        ∑
        
          l
          =
          1
        
        
          N
          R
        
      
      ⁢
      
        
          ∑
          
            c
            =
            1
          
          C
        
        ⁢
        
          
            ρ
            k
          
          ⁡
          
            (
            
              n
              ,
              l
              ,
              p
              ,
              c
            
            )
          
        
      
    
    ≤
    
      
        N
        R
      
      ⁢
      
        
          δ
          k
        
        ⁡
        
          (
          
            n
            ,
            p
          
          )
        
      
    
  
  ,
  
    ∀
    k
  
  ,
  n
  ,
  p




of Equation (3) becomes





  
    0
    ≤
    
      
        ∑
        
          c
          =
          1
        
        C
      
      ⁢
      
        
          ρ
          k
        
        ⁡
        
          (
          
            n
            ,
            p
            ,
            c
          
          )
        
      
    
    ≤
    
      
        δ
        k
      
      ⁡
      
        (
        
          n
          ,
          p
        
        )
      
    
  
  ,
  
    ∀
    k
  
  ,
  n
  ,
  p




including





  
    0
    ≤
    
      
        ∑
        
          c
          =
          1
        
        C
      
      ⁢
      
        
          ρ
          k
        
        ⁡
        
          (
          
            n
            ,
            l
            ,
            p
            ,
            c
          
          )
        
      
    
    ≤
    1
  
  ,
  
    ∀
    k
  
  ,
  n
  ,
  l
  ,
  p




of Equation (3). Accordingly,





  
    0
    ≤
    
      
        ∑
        
          c
          =
          1
        
        C
      
      ⁢
      
        
          ρ
          k
        
        ⁡
        
          (
          
            n
            ,
            l
            ,
            p
            ,
            c
          
          )
        
      
    
    ≤
    1
  
  ,
  
    ∀
    k
  
  ,
  n
  ,
  l
  ,
  p




can be discarded.

In the case of the multiuser-MISO/OFDMA system (for convenience, M=2), a single MIMO subchannel associated with a single SDMA subchannel exists. Accordingly, a MIMO subchannel index l can be removed, and only Condition 1 needs to be satisfied. The optimization problem in Equation (3) can be simplified as shown in Equation (4).




  
    
      
        
          
            P
            T
          
          =
          
            
              ∑
              
                k
                =
                1
              
              K
            
            ⁢
            
              [
              
                
                  ∑
                  
                    n
                    =
                    1
                  
                  N
                
                ⁢
                
                  
                    ∑
                    
                      
                        p
                        =
                        1
                      
                      ,
                      
                        p
                        ≠
                        k
                      
                    
                    K
                  
                  ⁢
                  
                    
                      ∑
                      
                        c
                        =
                        1
                      
                      C
                    
                    ⁢
                    
                      
                        
                          
                            f
                            k
                          
                          ⁡
                          
                            (
                            c
                            )
                          
                        
                        
                          
                            α
                            k
                            2
                          
                          ⁡
                          
                            (
                            
                              n
                              ,
                              p
                            
                            )
                          
                        
                      
                      ·
                      
                        
                          ρ
                          k
                        
                        ⁡
                        
                          (
                          
                            n
                            ,
                            p
                            ,
                            c
                          
                          )
                        
                      
                    
                  
                
              
              ]
            
          
        
        ⁢
        
          

        
        ⁢
        
          
            
              ρ
              k
            
            ⁡
            
              (
              
                n
                ,
                p
                ,
                c
              
              )
            
          
          ∈
          
            {
            
              0
              ,
              1
            
            }
          
        
        ⁢
        
          

        
        ⁢
        
          
            
              R
              k
            
            =
            
              
                
                  ∑
                  
                    n
                    =
                    1
                  
                  N
                
                ⁢
                
                  
                    ∑
                    
                      
                        p
                        =
                        1
                      
                      ,
                      
                        p
                        ≠
                        k
                      
                    
                    K
                  
                  ⁢
                  
                    
                      ∑
                      
                        c
                        =
                        1
                      
                      C
                    
                    ⁢
                    
                      c
                      ·
                      
                        
                          ρ
                          k
                        
                        ⁡
                        
                          (
                          
                            n
                            ,
                            p
                            ,
                            c
                          
                          )
                        
                      
                    
                  
                
              
              =
              
                
                  ∑
                  
                    n
                    =
                    1
                  
                  N
                
                ⁢
                
                  
                    c
                    k
                  
                  ⁡
                  
                    (
                    n
                    )
                  
                
              
            
          
          ,
          
            ∀
            k
          
        
        ⁢
        
          

        
        ⁢
        
          
            0
            ≤
            
              
                ∑
                
                  k
                  =
                  1
                
                K
              
              ⁢
              
                
                  ∑
                  
                    
                      p
                      =
                      1
                    
                    ,
                    
                      p
                      ≠
                      k
                    
                  
                  K
                
                ⁢
                
                  
                    ∑
                    
                      c
                      =
                      1
                    
                    C
                  
                  ⁢
                  
                    
                      ρ
                      k
                    
                    ⁡
                    
                      (
                      
                        n
                        ,
                        p
                        ,
                        c
                      
                      )
                    
                  
                
              
            
            ≤
            2
          
          ,
          
            ∀
            n
          
        
        ⁢
        
          

        
        ⁢
        
          
            0
            ≤
            
              
                ∑
                
                  c
                  =
                  1
                
                C
              
              ⁢
              
                
                  ρ
                  k
                
                ⁡
                
                  (
                  
                    n
                    ,
                    p
                    ,
                    c
                  
                  )
                
              
            
            ≤
            
              
                δ
                k
              
              ⁡
              
                (
                
                  n
                  ,
                  p
                
                )
              
            
          
          ,
          
            ∀
            k
          
          ,
          n
          ,
          p
        
        ⁢
        
          

        
        ⁢
        
          
            
              
                ∑
                
                  k
                  =
                  1
                
                K
              
              ⁢
              
                
                  ∑
                  
                    
                      p
                      =
                      1
                    
                    ,
                    
                      p
                      ≠
                      k
                    
                  
                  K
                
                ⁢
                
                  
                    δ
                    k
                  
                  ⁡
                  
                    (
                    
                      n
                      ,
                      p
                    
                    )
                  
                
              
            
            =
            2
          
          ,
          
            ∀
            n
          
        
        ⁢
        
          

        
        ⁢
        
          
            
              
                δ
                k
              
              ⁡
              
                (
                
                  n
                  ,
                  p
                
                )
              
            
            =
            
              
                δ
                p
              
              ⁡
              
                (
                
                  n
                  ,
                  k
                
                )
              
            
          
          ,
          
            ∀
            k
          
          ,
          n
          ,
          p
        
        ⁢
        
          

        
        ⁢
        
          
            
              
                δ
                k
              
              ⁡
              
                (
                
                  n
                  ,
                  p
                
                )
              
            
            ∈
            
              {
              
                0
                ,
                1
              
              }
            
          
          ,
          
            ∀
            k
          
          ,
          n
          ,
          p
        
      
    
    
      
        (
        4
        )
      
    
  




In Equation (4), if the k-th and p-th user terminals occupy two SDMA subchannels of the n-th subcarrier, and c bits are allocated to an MIMO subchannel associated with an SDMA subchannel of the k-th user terminal, ρk(n,l,c)=1. Otherwise, ρk(n,l,c)=0.
In Equation (4), αk(n,p) is an equivalent channel gain of the k-th user terminal when the k-th and p-th user terminals occupy two SDMA subchannels of the n-th subcarrier. In the data rate constraint of




  
    
      R
      k
    
    =
    
      
        
          ∑
          
            n
            =
            1
          
          N
        
        ⁢
        
          
            ∑
            
              
                p
                =
                1
              
              ,
              
                p
                ≠
                k
              
            
            K
          
          ⁢
          
            
              ∑
              
                c
                =
                1
              
              C
            
            ⁢
            
              c
              ·
              
                
                  ρ
                  k
                
                ⁡
                
                  (
                  
                    n
                    ,
                    p
                    ,
                    c
                  
                  )
                
              
            
          
        
      
      =
      
        
          ∑
          
            n
            =
            1
          
          N
        
        ⁢
        
          
            c
            k
          
          ⁡
          
            (
            n
            )
          
        
      
    
  
  ,
  
    ∀
    k
  
  ,
  
    

  
  ⁢
  
    
      
        c
        k
      
      ⁡
      
        (
        n
        )
      
    
    =
    
      
        ∑
        
          
            p
            =
            1
          
          ,
          
            p
            ≠
            k
          
        
        K
      
      ⁢
      
        
          ∑
          
            c
            =
            1
          
          C
        
        ⁢
        
          c
          ·
          
            
              ρ
              k
            
            ⁡
            
              (
              
                n
                ,
                p
                ,
                c
              
              )
            
          
        
      
    
  




denotes the number of bits allocated to an MIMO subchannel of the k-th user terminal when the k-th user terminal occupies one of the SDMA subchannels of the n-th subcarrier.

In the single-user MIMO/OFDMA system, only Condition 2 should be satisfied because there is one SDMA subchannel per subcarrier. A user index p can be removed.
Accordingly, the optimization problem can be expressed as shown in Equation (5).




  
    
      
        
          
            P
            T
          
          =
          
            
              ∑
              
                k
                =
                1
              
              K
            
            ⁢
            
              [
              
                
                  ∑
                  
                    n
                    =
                    1
                  
                  N
                
                ⁢
                
                  
                    ∑
                    
                      l
                      =
                      1
                    
                    
                      N
                      R
                    
                  
                  ⁢
                  
                    
                      ∑
                      
                        c
                        =
                        1
                      
                      C
                    
                    ⁢
                    
                      
                        
                          
                            f
                            k
                          
                          ⁡
                          
                            (
                            c
                            )
                          
                        
                        
                          
                            α
                            k
                            2
                          
                          ⁡
                          
                            (
                            
                              n
                              ,
                              l
                            
                            )
                          
                        
                      
                      ·
                      
                        
                          ρ
                          k
                        
                        ⁡
                        
                          (
                          
                            n
                            ,
                            l
                            ,
                            c
                          
                          )
                        
                      
                    
                  
                
              
              ]
            
          
        
        ⁢
        
          

        
        ⁢
        
          Constraints
          ⁢
          
            :
          
        
        ⁢
        
          

        
        ⁢
        
          
            
              ρ
              k
            
            ⁡
            
              (
              
                n
                ,
                l
                ,
                c
              
              )
            
          
          ∈
          
            {
            
              0
              ,
              1
            
            }
          
        
        ⁢
        
          

        
        ⁢
        
          
            
              R
              k
            
            =
            
              
                
                  ∑
                  
                    n
                    =
                    1
                  
                  N
                
                ⁢
                
                  
                    ∑
                    
                      l
                      =
                      1
                    
                    
                      N
                      R
                    
                  
                  ⁢
                  
                    
                      ∑
                      
                        c
                        =
                        1
                      
                      C
                    
                    ⁢
                    
                      c
                      ·
                      
                        
                          ρ
                          k
                        
                        ⁡
                        
                          (
                          
                            n
                            ,
                            l
                            ,
                            c
                          
                          )
                        
                      
                    
                  
                
              
              =
              
                
                  ∑
                  
                    n
                    =
                    1
                  
                  N
                
                ⁢
                
                  
                    ∑
                    
                      l
                      =
                      1
                    
                    
                      N
                      R
                    
                  
                  ⁢
                  
                    
                      
                        c
                        ^
                      
                      k
                    
                    ⁡
                    
                      (
                      
                        n
                        ,
                        l
                      
                      )
                    
                  
                
              
            
          
          ,
          
            ∀
            k
          
        
        ⁢
        
          

        
        ⁢
        
          
            0
            ≤
            
              
                ∑
                
                  c
                  =
                  1
                
                C
              
              ⁢
              
                
                  ρ
                  k
                
                ⁡
                
                  (
                  
                    n
                    ,
                    l
                    ,
                    c
                  
                  )
                
              
            
            ≤
            1
          
          ,
          
            ∀
            k
          
          ,
          n
          ,
          l
        
        ⁢
        
          

        
        ⁢
        
          
            0
            ≤
            
              
                ∑
                
                  l
                  =
                  1
                
                
                  N
                  R
                
              
              ⁢
              
                
                  ∑
                  
                    c
                    =
                    1
                  
                  C
                
                ⁢
                
                  
                    ρ
                    k
                  
                  ⁡
                  
                    (
                    
                      n
                      ,
                      l
                      ,
                      c
                    
                    )
                  
                
              
            
            ≤
            
              
                N
                R
              
              ⁢
              
                
                  δ
                  k
                
                ⁡
                
                  (
                  n
                  )
                
              
            
          
          ,
          
            ∀
            k
          
          ,
          n
        
        ⁢
        
          

        
        ⁢
        
          
            
              
                ∑
                
                  k
                  =
                  1
                
                K
              
              ⁢
              
                
                  δ
                  k
                
                ⁡
                
                  (
                  n
                  )
                
              
            
            =
            1
          
          ,
          
            ∀
            n
          
        
        ⁢
        
          

        
        ⁢
        
          
            
              
                δ
                k
              
              ⁡
              
                (
                n
                )
              
            
            ∈
            
              {
              
                0
                ,
                1
              
              }
            
          
          ,
          
            ∀
            k
          
          ,
          n
        
      
    
    
      
        (
        5
        )
      
    
  




In Equation (5), if the k-th user terminal occupies one SDMA subchannel of the n-th subcarrier, c bits are allocated to the l-th MIMO subchannel associated with the SDMA subchannel of the k-th user terminal, ρk(n,l,c)=1. Otherwise, ρk(n,l,c)=0.
In Equation (5) and its constraint




  
    
      R
      k
    
    =
    
      
        
          ∑
          
            n
            =
            1
          
          N
        
        ⁢
        
          
            ∑
            
              l
              =
              1
            
            
              N
              R
            
          
          ⁢
          
            
              ∑
              
                c
                =
                1
              
              C
            
            ⁢
            
              c
              ·
              
                
                  ρ
                  k
                
                ⁡
                
                  (
                  
                    n
                    ,
                    l
                    ,
                    c
                  
                  )
                
              
            
          
        
      
      =
      
        
          ∑
          
            n
            =
            1
          
          N
        
        ⁢
        
          
            ∑
            
              l
              =
              1
            
            
              N
              R
            
          
          ⁢
          
            
              
                c
                ^
              
              k
            
            ⁡
            
              (
              
                n
                ,
                l
              
              )
            
          
        
      
    
  
  ,
  
    ∀
    k
  
  ,
  
    
      α
      k
    
    ⁡
    
      (
      
        n
        ,
        l
      
      )
    
  




and





  
    
      c
      k
    
    ⁡
    
      (
      
        n
        ,
        l
      
      )
    
  
  =
  
    
      ∑
      
        c
        =
        1
      
      C
    
    ⁢
    
      c
      ·
      
        
          ρ
          k
        
        ⁡
        
          (
          
            n
            ,
            l
            ,
            c
          
          )
        
      
    
  




denote an equivalent channel gain and the number of bits associated with the l-th MIMO subchannel of the k-th user terminal, respectively, when the k-th user terminal occupies an SDMA subchannel of the n-th subcarrier. If the k-th user terminal occupies an SDMA subchannel of the n-th subcarrier, a binary variable δk(n)=1. Otherwise, δk(n)=0.

Conventionally, IP requires an exponential time algorithm whose complexity rapidly increases with the number of constraints and variables.
Now, the behavior of the optimal IP algorithm is examined through computer simulation, and several observations are performed in relation to bit allocation.
The optimal IP algorithm was simulated using multiuser-MIMO/OFDMA, multiuser-MISO/OFDMA, and single-user-MIMO/OFDMA systems. Table 1 describes system parameters used in the simulation.











TABLE 1







Multiuser-
Multiuser-
Single-user-



MIMO/OFDMA
MISO/OFDMA
MIMO/OFDMA



















NT
4
2
2


NR
2
1
2


M
2
2
1


# of FFT (N)
64
64
64


Total # of
256
128
128


subchannels








# of users (K)
4 


# of max. bits (C)
12


Required BER
  10−4


Channel
8-tap frequency selective Rayleigh fading chan-



nels with exponentially decaying power profiles



were assumed. The channel parameters were fixed



during one frame period. The average channel



magnitudes of the different users were generally



unequal and the difference, denoted by γ,



between the strongest and weakest channels of the



four users was either zero or 30 dB.









For the multiuser-MIMO/OFDMA system, Table 2 describes the number of subchannels allocated to each user terminal and the number of bits allocated to each subchannel where R1=R2=R3=R4=256.












TABLE 2





γ(dB)
MIMO subchannelgroup
Userk
# of assignedMIMO subchannels
# of MIMO subchannelswith ck(n,l) = i bitsi = 2 i = 4 i = 6 i = 8 i = 10




  Ratio
  ⁢
  
    
  
  ⁢
  
    
      α
      k
      2
    
    
      
        α
        _
      
      k
      2
    
  
























0
l = 1
1
34
 0  13  21   0  0
0.77




2
28
 0   0  28   0  0
0.87




3
32
 0   9  23   0  0
0.73




4
34
 0  15  19   0  0
0.83




Total
128
 0  37  91   0  0



l = 2
1
30
 21   9   0   0  0
0.58




2
27
 10  17   0   0  0
0.50




3
31
 21  10   0   0  0
0.57




4
32
 23   9   0   0  0
0.49




Total
120
 75  45   0   0  0


30
l = 1
1
63
 31  32   0   0  0
0.88




2
28
 0   1  27   0  0
0.79




3
20
 0   0   4  16  0
0.74




4
17
 0   0   0  10  7
0.72




Total
128
 31  33  31  26  7



l = 2
1
33
 33   0   0   0  0
0.42




2
25
 6  18   1   0  0
0.46




3
20
 0   8  12   0  0
0.57




4
17
 0   0  15   2  0
0.56




Total
95
 39  26  28   2  0









Because equivalent channel gains of two MIMO subchannels (NR=2), {αk(n,l,p), l=1,2}, are different in most cases, the results are sorted into two groups. The first group includes resulting values associated with an MIMO subchannel with a larger equivalent channel gain αk(n,l,p), and the second group includes the rest. In relation to channels with the same channel gain (γ=0), subchannels are almost equivalently distributed to user terminals. That is, 28 to 34 subchannels of Group 1 are allocated to each user, and 27 to 32 subchannels of Group 2 are allocated to each user. Where γ=30 dB, a large number of subchannels were allocated to User Terminal 1 with the lowest average channel magnitude, and a small number of subchannels were allocated to User Terminal 4 with the highest average channel magnitude. This occurred because R1=R2=R3=R4.
It is important to observe that the optimal IP often loaded the same number of bits (or constellation size) for subchannels allocated to one user. This indicates that ck(n,l) in Equation (1) tends to be the same regardless of n. More specifically, ck(l) indicates the dominant constellation.
When γ=0 dB, c1(1)=6 because 21 out of 34 MIMO subchannels were loaded 6 bits. The remaining 13 subchannels were loaded 4 bits. Accordingly, the dominant constellation for each pair of (k,l) can be found.
When the same experiment are repeated 1,000 times as shown in Table 3, it was observed that about 70% of ck(n,l) were equal to their corresponding dominant constellation ck(l), and almost all ck(n,l) were in the neighborhood of ck(l).










TABLE 3








γ =



γ = 0 dB
30 dB






















  Pr
  ⁢
  
    
  
  ⁢
  
    (
    
      
        
          c
          k
        
        ⁡
        
          (
          
            n
            ,
            l
          
          )
        
      
      =
      
        
          
            
              c
              k
            
            ⁡
            
              (
              l
              )
            
          
          ❘
          
            
              ∑
              
                
                  p
                  =
                  1
                
                ,
                
                  p
                  ≠
                  k
                
              
              K
            
            ⁢
            
              
                ∑
                
                  c
                  =
                  1
                
                C
              
              ⁢
              
                
                  ρ
                  k
                
                ⁡
                
                  (
                  
                    n
                    ,
                    l
                    ,
                    p
                    ,
                    c
                  
                  )
                
              
            
          
        
        =
        1
      
    
    )
  




0.69
0.74


 






  
    
      
        
          
            Pr
            ⁢
            
              
            
            ⁢
            
              (
              
                
                  
                    c
                    k
                  
                  ⁡
                  
                    (
                    
                      n
                      ,
                      l
                    
                    )
                  
                
                =
                
                  
                    
                      
                        c
                        k
                      
                      ⁡
                      
                        (
                        l
                        )
                      
                    
                    ❘
                    
                      
                        ∑
                        
                          
                            p
                            =
                            1
                          
                          ,
                          
                            p
                            ≠
                            k
                          
                        
                        K
                      
                      ⁢
                      
                        
                          ∑
                          
                            c
                            =
                            1
                          
                          C
                        
                        ⁢
                        
                          
                            ρ
                            k
                          
                          ⁡
                          
                            (
                            
                              n
                              ,
                              l
                              ,
                              p
                              ,
                              c
                            
                            )
                          
                        
                      
                    
                  
                  =
                  1
                
              
              )
            
          
          +
        
      
    
    
      
        
          Pr
          ⁡
          
            (
            
              
                
                  c
                  k
                
                ⁡
                
                  (
                  
                    n
                    ,
                    l
                  
                  )
                
              
              =
              
                
                  
                    
                      
                        c
                        k
                      
                      ⁡
                      
                        (
                        l
                        )
                      
                    
                    ±
                    2
                  
                  ❘
                  
                    
                      ∑
                      
                        
                          p
                          =
                          1
                        
                        ,
                        
                          p
                          ≠
                          k
                        
                      
                      K
                    
                    ⁢
                    
                      
                        ∑
                        
                          c
                          =
                          1
                        
                        C
                      
                      ⁢
                      
                        
                          ρ
                          k
                        
                        ⁡
                        
                          (
                          
                            n
                            ,
                            l
                            ,
                            p
                            ,
                            c
                          
                          )
                        
                      
                    
                  
                
                =
                1
              
            
            )
          
        
      
    
  
   




0.99
0.99









The observation regarding the dominant constellation is essential to obtain a suboptimal algorithm.
Table 2 describes a ratio of average subchannel gains αk2(l) and αk2(l). This ratio had only a small variation. Accordingly, this ratio will also be useful for the suboptimal algorithm.
When R1=R2=R3=R4=128 in the multiuser-MISO/OFDMA system and the single-user-MIMO/OFDMA system, Tables 4 and 5 show the resulting number of subchannels allocated to each user terminal and the number of bits allocated to each subchannel.











TABLE 4





γ(dB)
Userk
# of assignedMIMOsubchannels
# of MIMO subchannelswith ck(n) = i bitsi = 2 i = 4 i = 6 i = 8 i = 10




  
    
      
        Ratio
      
    
    
      
        
          
            α
            k
            2
          
          
            
              α
              _
            
            k
            2
          
        
      
    
  
   























0
1
33
 2   31   0   0   0
0.83



2
30
 0   26   4   0   0
0.76



3
32
 6   20   6   0   0
0.75



4
33
 2   31   0   0   0
0.81



Total
128
 10  108  10   0   0


30
1
54
 44   10   0   0   0
0.88



2
32
 7   18   7   0   0
0.80



3
21
 0   5  10   6   0
0.89



4
20
 0   1  14   5   0
0.87



Total
127
 51   34  31  11   0





















TABLE 5





γ(dB)
MIMO subchannelgroup
Userk
# of assignedMIMO subchannels
# of MIMO subchannelswith ck(n, l) = i bitsi = 2 i = 4 i = 6 i = 8 i = 10




  
    
      
        Ratio
      
    
    
      
        
          
            
              α
              k
              2
            
            ⁡
            
              (
              l
              )
            
          
          
            
              
                α
                _
              
              k
              2
            
            ⁡
            
              (
              l
              )
            
          
        
      
    
  
   
























0
l = 1
1
19
 0  14   5   0   0
0.87




2
16
 0   3  13   0   0
0.82




3
14
 0   3  11   0   0
0.74




4
15
 0   4  11   0   0
0.71




Total
64
 0  24  40   0   0



l = 2
1
19
 17   2   0   0   0
0.66




2
16
 13   3   0   0   0
0.60




3
14
 3  11   0   0   0
0.47




4
14
 5   9   0   0   0
0.62




Total
63
 38  25   0   0   0


30
l = 1
1
38
 17  21   0   0   0
0.83




2
11
 0   0   8   3   0
0.90




3
8
 0   0   0   5   3
0.84




4
7
 0   0   0   0   7
0.96




Total
64
 17  21   8   8  10



l = 2
1
5
 5   0   0   0   0
0.40




2
11
 0   5   6   0   0
0.43




3
8
 0   0   3   5   0
0.54




4
7
 0   0   1   4   2
0.64




Total
31
 5   5  10   9   2









We can also find the same observation regarding the dominant constellation and the ratio between average subchannel gains as in the multiuser-MIMO/OFDMA system. ck denotes the dominant constellation in the multiuser-MISO/OFDMA system.
When γ=0 dB, c1=4 because 31 out of 33 subchannels were loaded 4 bits. The remaining two subchannels were loaded 2 bits (refer to Table 4). Accordingly, the dominant constellation for each user terminal k can be found. From Table 5, the dominant constellation ck(l) in the single-user-MIMO/OFDMA system can also be determined. Further, in Table 5, ratios between average subchannel gains only have a small variation.
Suboptimal Subchannel and Bit Allocation
A preferred embodiment of the present invention separates the subchannel and bit allocation problem into two steps to reduce complexity.
In the first step, subchannels are allocated under the assumption of dominant constellation.
Dominant Constellation of Multiuser-MIMO/OFDMA




  
    
      c
      k
    
    ⁡
    
      (
      
        n
        ,
        l
      
      )
    
  
  =
  
    {
    
      
        
          
            
              
                c
                k
              
              ⁡
              
                (
                l
                )
              
            
            ,
          
        
        
          
            
              if
              ⁢
              
                
              
              ⁢
              
                
                  ∑
                  
                    
                      p
                      =
                      1
                    
                    ,
                    
                      p
                      ≠
                      k
                    
                  
                  K
                
                ⁢
                
                  
                    ∑
                    
                      c
                      =
                      1
                    
                    C
                  
                  ⁢
                  
                    
                      ρ
                      k
                    
                    ⁡
                    
                      (
                      
                        n
                        ,
                        l
                        ,
                        p
                        ,
                        c
                      
                      )
                    
                  
                
              
            
            =
            1
          
        
      
      
        
          
            0
            ,
          
        
        
          
            otherwise
            .
          
        
      
    
  




Dominant Constellation of Multiuser-MISO/OFDMA




  
    
      c
      k
    
    ⁡
    
      (
      n
      )
    
  
  =
  
    {
    
      
        
          
            
              c
              k
            
            ,
          
        
        
          
            
              if
              ⁢
              
                
              
              ⁢
              
                
                  ∑
                  
                    
                      p
                      =
                      1
                    
                    ,
                    
                      p
                      ≠
                      k
                    
                  
                  K
                
                ⁢
                
                  
                    ∑
                    
                      c
                      =
                      1
                    
                    C
                  
                  ⁢
                  
                    
                      ρ
                      k
                    
                    ⁡
                    
                      (
                      
                        n
                        ,
                        p
                        ,
                        c
                      
                      )
                    
                  
                
              
            
            =
            1
          
        
      
      
        
          
            0
            ,
          
        
        
          
            otherwise
            .
          
        
      
    
  




Dominant Constellation of Single-User-MIMO/OFDMA




  
    
      c
      k
    
    ⁡
    
      (
      
        n
        ,
        l
      
      )
    
  
  =
  
    {
    
      
        
          
            
              
                c
                k
              
              ⁡
              
                (
                l
                )
              
            
            ,
          
        
        
          
            
              if
              ⁢
              
                
              
              ⁢
              
                
                  ∑
                  
                    c
                    =
                    1
                  
                  C
                
                ⁢
                
                  
                    ρ
                    k
                  
                  ⁡
                  
                    (
                    
                      n
                      ,
                      l
                      ,
                      c
                    
                    )
                  
                
              
            
            =
            1
          
        
      
      
        
          
            0
            ,
          
        
        
          
            otherwise
            .
          
        
      
    
  




In the second step, bits are distributed to subchannels allocated in the first step. Accordingly, the assumption in the first step is not assumed in this step. The subchannel allocation in the first step can be performed via suboptimal algorithms, while the bit allocation in the second step can adopt a greedy algorithm. By separately performing subchannel and bit allocation, this yields a suboptimal algorithm that is considerably simpler to implement than the optimal IP approach.
Subchannel Allocation
Using the dominant constellation of the multiuser-MIMO/OFDMA, the optimal subchannel allocation problem in the first step can be expressed as shown in Equation 6.




  
    
      
        
          
            P
            T
          
          =
          
            
              
                ∑
                
                  n
                  =
                  1
                
                N
              
              ⁢
              
                
                  ∑
                  
                    k
                    =
                    1
                  
                  K
                
                ⁢
                
                  
                    ∑
                    
                      
                        p
                        =
                        1
                      
                      ,
                      
                        p
                        ≠
                        k
                      
                    
                    K
                  
                  ⁢
                  
                    
                      
                        
                          g
                          k
                        
                        ⁡
                        
                          (
                          
                            n
                            ,
                            p
                          
                          )
                        
                      
                      ·
                      
                        
                          δ
                          k
                        
                        ⁡
                        
                          (
                          
                            n
                            ,
                            p
                          
                          )
                        
                      
                    
                    ⁢
                    
                      
                    
                    ⁢
                    for
                    ⁢
                    
                      
                    
                    ⁢
                    
                      
                        δ
                        k
                      
                      ⁡
                      
                        (
                        
                          n
                          ,
                          p
                        
                        )
                      
                    
                  
                
              
            
            ∈
            
              {
              
                0
                ,
                1
              
              }
            
          
        
        ⁢
        
          

        
        ⁢
        
          
            
              
                ∑
                
                  k
                  =
                  1
                
                K
              
              ⁢
              
                
                  ∑
                  
                    
                      p
                      =
                      1
                    
                    ,
                    
                      p
                      ≠
                      k
                    
                  
                  K
                
                ⁢
                
                  
                    δ
                    k
                  
                  ⁡
                  
                    (
                    
                      n
                      ,
                      p
                    
                    )
                  
                
              
            
            =
            2
          
          ,
          
            ∀
            n
          
        
        ⁢
        
          

        
        ⁢
        
          
            
              
                ∑
                
                  n
                  =
                  1
                
                N
              
              ⁢
              
                
                  δ
                  k
                
                ⁡
                
                  (
                  
                    n
                    ,
                    p
                  
                  )
                
              
            
            ≤
            N
          
          ,
          
            ∀
            k
          
          ,
          p
        
        ⁢
        
          

        
        ⁢
        
          
            
              
                ∑
                
                  n
                  =
                  1
                
                N
              
              ⁢
              
                
                  ∑
                  
                    
                      p
                      =
                      1
                    
                    ,
                    
                      p
                      ≠
                      k
                    
                  
                  K
                
                ⁢
                
                  
                    δ
                    k
                  
                  ⁡
                  
                    (
                    
                      n
                      ,
                      p
                    
                    )
                  
                
              
            
            =
            
              r
              k
            
          
          ,
          
            ∀
            k
          
        
        ⁢
        
          

        
        ⁢
        
          
            
              
                δ
                k
              
              ⁡
              
                (
                
                  n
                  ,
                  p
                
                )
              
            
            =
            
              
                δ
                p
              
              ⁡
              
                (
                
                  n
                  ,
                  k
                
                )
              
            
          
          ,
          
            ∀
            k
          
          ,
          n
          ,
          p
        
      
    
    
      
        (
        6
        )
      
    
  




In Equation (6),




  
    
      g
      k
    
    ⁡
    
      (
      
        n
        ,
        p
      
      )
    
  
  =
  
    
      ∑
      
        l
        =
        1
      
      
        N
        R
      
    
    ⁢
    
      
        
          f
          k
        
        ⁡
        
          (
          
            
              c
              k
            
            ⁡
            
              (
              l
              )
            
          
          )
        
      
      
        
          α
          k
          2
        
        ⁡
        
          (
          
            n
            ,
            l
            ,
            p
          
          )
        
      
    
  




and





  
    
      r
      k
    
    =
    
      
        R
        k
      
      
        
          ∑
          
            l
            =
            1
          
          
            N
            R
          
        
        ⁢
        
          
            c
            k
          
          ⁡
          
            (
            l
            )
          
        
      
    
  
  ,




and





  
    
      
        ∑
        
          n
          =
          1
        
        N
      
      ⁢
      
        
          δ
          k
        
        ⁡
        
          (
          
            n
            ,
            p
          
          )
        
      
    
    ≤
    N
  
  ,
  
    ∀
    k
  
  ,
  p




is an auxiliary constraint, which is always true due to δk(n,p)∈{0,1}. The auxiliary constraint is included for the purpose of finding a useful observation. Equation (6) is considerably simpler than the original IP of Equation (3).

Furthermore, an efficient heuristic algorithm can be found for the following observation.
Observation 1: Suppose that {ck(l)} are known. Then, {fk(ck(l))} becomes known and Equation (6) takes the form of a transportation problem that can be relaxed to linear programming (LP).
In Equation (6), the combination of two user terminals k and p, {(k,p)}, is supplied to each subcarrier depending on the costs {gk(n,p)}. δk(n,p) is the number of units shipped from the combination (k,p) to the n-th subcarrier if the k-th and p-th users occupy two SDMA subchannels of the n-th subcarrier. The constraints in Equation (6) are the demand and supply constraints, respectively, of the transportation problem.
In the case of transportation, it is straightforward to show that IP is relaxed to LP.
In addition, there are efficient heuristic algorithms. One such algorithm is known as Vogel's method capable of being modified to take account of the additional constraints of




  
    
      
        ∑
        
          n
          =
          1
        
        N
      
      ⁢
      
        
          ∑
          
            
              p
              =
              1
            
            ,
            
              p
              ≠
              k
            
          
          K
        
        ⁢
        
          
            δ
            k
          
          ⁡
          
            (
            
              n
              ,
              p
            
            )
          
        
      
    
    =
    
      r
      k
    
  
  ,
  
    ∀
    k
  




and δk(n,p)=δp(n,k), ∀k,n,p in Equation (6), even though the whole optimization in Equation (6) cannot be relaxed to LP. In the suboptimal algorithm in accordance with the present invention, the problem is solved using the modified Vogel's method.

Before solving the optimization problem in the first step, {ck(l)} in the dominant constellation can be obtained during an initial phase. Evaluation of {ck(l)} requires the following assumption on the channel gain:




  
    
      α
      k
      2
    
    ⁡
    
      (
      
        n
        ,
        l
        ,
        p
      
      )
    
  
  =
  
    {
    
      
        
          
            
              
                α
                k
                2
              
              ⁡
              
                (
                l
                )
              
            
            ,
          
        
        
          
            
              if
              ⁢
              
                
              
              ⁢
              
                
                  δ
                  k
                
                ⁡
                
                  (
                  
                    n
                    ,
                    p
                  
                  )
                
              
            
            =
            1
          
        
      
      
        
          
            0
            ,
          
        
        
          
            otherwise
            ,
          
        
      
    
  




where αk2(l) is the average of all subchannel gains associated with the k-th user and MIMO subchannel group l.

Under the above assumption, Equation (6) can be simplified as shown in Equation (7).




  
    
      
        
          
            P
            T
          
          =
          
            
              ∑
              
                k
                =
                1
              
              K
            
            ⁢
            
              
                ∑
                
                  l
                  =
                  1
                
                
                  N
                  R
                
              
              ⁢
              
                
                  
                    
                      f
                      k
                    
                    ⁡
                    
                      (
                      
                        
                          c
                          k
                        
                        ⁡
                        
                          (
                          l
                          )
                        
                      
                      )
                    
                  
                  
                    
                      α
                      k
                      2
                    
                    ⁡
                    
                      (
                      l
                      )
                    
                  
                
                ·
                
                  
                    R
                    k
                  
                  
                    
                      ∑
                      
                        l
                        =
                        1
                      
                      
                        N
                        R
                      
                    
                    ⁢
                    
                      
                        c
                        k
                      
                      ⁡
                      
                        (
                        l
                        )
                      
                    
                  
                
              
            
          
        
        ⁢
        
          

        
        ⁢
        
          
            
              Constraint
              ⁢
              
                :
              
              ⁢
              
                
              
              ⁢
              
                
                  ∑
                  
                    k
                    =
                    1
                  
                  K
                
                ⁢
                
                  
                    R
                    k
                  
                  
                    
                      ∑
                      
                        l
                        =
                        1
                      
                      
                        N
                        R
                      
                    
                    ⁢
                    
                      
                        c
                        k
                      
                      ⁡
                      
                        (
                        l
                        )
                      
                    
                  
                
              
            
            =
            
              2
              ⁢
              N
            
          
          ,
        
      
    
    
      
        (
        7
        )
      
    
  




where





  
    ∑
    
      n
      =
      1
    
    N
  
  ⁢
  
    
      ∑
      
        
          p
          =
          1
        
        ,
        
          p
          ≠
          k
        
      
      K
    
    ⁢
    
      
        δ
        k
      
      ⁡
      
        (
        
          n
          ,
          p
        
        )
      
    
  




is replaced with





  
    
      R
      k
    
    /
    
      
        ∑
        
          l
          =
          1
        
        
          N
          R
        
      
      ⁢
      
        
      
      ⁢
      
        
          c
          k
        
        ⁡
        
          (
          l
          )
        
      
    
  
  ,




due to the constraint of





  
    
      
        ∑
        
          n
          =
          1
        
        N
      
      ⁢
      
        
      
      ⁢
      
        
          ∑
          
            
              p
              =
              1
            
            ,
            
              p
              ≠
              k
            
          
          K
        
        ⁢
        
          
        
        ⁢
        
          
            δ
            k
          
          ⁡
          
            (
            
              n
              ,
              p
            
            )
          
        
      
    
    =
    
      r
      k
    
  
  ,
  
    ∀
    k
  




in Equation (6).

The solution {c*k(l)} of Equation (7) can be obtained by introducing a Lagrange multiplier μ and using a numerical technique, such as vector-form Newton's method. Although the obtained {c*k(l)} are not integers, they can still be used for the optimization in Equation (6).
The optimization in Equation (6) is an IP problem with much computational load.
As described above, to reduce the load, a heuristic subchannel allocation algorithm is developed by modifying Vogel's method. The modification is to put the additional constraints of




  
    
      
        ∑
        
          n
          =
          1
        
        N
      
      ⁢
      
        
      
      ⁢
      
        
          ∑
          
            
              p
              =
              1
            
            ,
            
              p
              ≠
              k
            
          
          K
        
        ⁢
        
          
        
        ⁢
        
          
            δ
            k
          
          ⁡
          
            (
            
              n
              ,
              p
            
            )
          
        
      
    
    =
    
      r
      k
    
  
  ,
  
    ∀
    k
  




and δk(n,p)=δp(n,k), ∀k,n,p in Equation (6) into the suitable steps of Vogel's method.

To describe the heuristic algorithm, the following notations are necessary: S and U denotes sets of subcarrier and user indices, respectively. These sets are defined in Equation (8) and Equation (9).

S⊂{1,2, . . . , N}  (8)

U⊂{(k,p)|k=1, . . . ,K,p=1, . . . , K,k≠p}  (9)

Pn is the penalty defined as the difference between the two smallest cost values in {gm(n,p)|k=1, . . . , K,p=1, . . . , K,k≠p}. More specifically, Pn=gk(2)(n,p)−gk(1)(n,p), where gk(i)(n,p) denotes the i-th smallest value among {gk(n,p)|k=1, . . . , K,p=1, . . . , K,k≠p}. At the beginning, S={1,2, . . . , N} and U={(k,p)|k=1, . . . , K,p=1, . . . , K,k≠p}. The heuristic algorithm is stated as follows:
Initialization

    
    
        Set δk(n,p) to zero for all k, n, and p.
        Subcarrier index set S={1,2, . . . ,N}
        Subcarrier index set {(k,p)|k=1, . . . , K,p=1, . . . , K,k≠p}.
        Calculate initial penalties {Pn|=1, . . . , N}.
    
    


Iteration

    
    
        Repeat the following operations until S becomes the null set φ.
        {circumflex over (n)}=arg maxn∈SPn 
        ({circumflex over (k)},{circumflex over (p)})=arg min(k,p)∈Ugk({circumflex over (n)},p)
        Set δ{circumflex over (k)}({circumflex over (n)},{circumflex over (p)}) to one. δ{circumflex over (p)}({circumflex over (n)},{circumflex over (k)}) also becomes one due to δk(n,p)=δp(n,k), ∀k,n,p.
        Then S=S−{{circumflex over (n)}} since
    
    






  
    
      
        ∑
        
          k
          =
          1
        
        K
      
      ⁢
      
        
      
      ⁢
      
        
          ∑
          
            
              p
              =
              1
            
            ,
            
              p
              ≠
              k
            
          
          K
        
        ⁢
        
          
        
        ⁢
        
          
            δ
            k
          
          ⁡
          
            (
            
              n
              ,
              p
            
            )
          
        
      
    
    =
    2
  
  ,
  
    ∀
    n
  




is met.

    
    
        If
    
    






  
    
      
        ∑
        
          n
          =
          1
        
        N
      
      ⁢
      
        
      
      ⁢
      
        
          ∑
          
            
              p
              =
              1
            
            ,
            
              p
              ≠
              k
            
          
          K
        
        ⁢
        
          
        
        ⁢
        
          
            δ
            k
          
          ⁡
          
            (
            
              n
              ,
              p
            
            )
          
        
      
    
    =
    
      r
      k
    
  
  ,
  
    ∀
    k
  




is satisfied, then U=U−{({circumflex over (k)},{circumflex over (p)})} and update the penalties for the subcarriers whose indices are in the set S.

For each iteration of this algorithm, the size of the subcarrier index set S is reduced by one, due to the constraints of




  
    
      
        ∑
        
          k
          =
          1
        
        K
      
      ⁢
      
        
      
      ⁢
      
        
          ∑
          
            
              p
              =
              1
            
            ,
            
              p
              ≠
              k
            
          
          K
        
        ⁢
        
          
        
        ⁢
        
          
            δ
            k
          
          ⁡
          
            (
            
              n
              ,
              p
            
            )
          
        
      
    
    =
    2
  
  ,
  
    ∀
    n
  




and δk(n,p)=δp(n,k), ∀k,n,p in Equation (6). The user index set U is reduced and the penalty {Pn} is updated, whenever the constraint of





  
    
      
        ∑
        
          n
          =
          1
        
        N
      
      ⁢
      
        
      
      ⁢
      
        
          ∑
          
            
              p
              =
              1
            
            ,
            
              p
              ≠
              k
            
          
          K
        
        ⁢
        
          
        
        ⁢
        
          
            δ
            k
          
          ⁡
          
            (
            
              n
              ,
              p
            
            )
          
        
      
    
    =
    
      r
      k
    
  
  ,
  
    ∀
    k
  




in Equation (6) is satisfied for a certain k.

In summary, the subchannel allocation for the suboptimal approach in accordance with the present invention is as follows:
Heuristic
Step 1: Evaluate real-valued {c*k(l)} from Equation (7) using the vector-form Newton's method.
Step 2: Substitute {c*k(l)} for {ck(l)} in Equation (6) and solve Equation (6) using the above-described modified Vogel's method to obtain {δk(n,p)}.
The overall heuristic algorithm for subchannel allocation requires O(K2) operations for one iteration of the vector-form Newton's method, and requires O(NK4) operations for the heuristic algorithm. This is a polynomial-time algorithm that can be applied to real-time multiuser-MIMO/OFDMA systems.
Except for the values of




  
    
      g
      k
    
    ⁡
    
      (
      
        n
        ,
        p
      
      )
    
  
  =
  
    
      
        f
        k
      
      ⁡
      
        (
        
          c
          k
        
        )
      
    
    
      
        α
        k
        2
      
      ⁡
      
        (
        
          n
          ,
          p
        
        )
      
    
  




and





  
    
      r
      k
    
    =
    
      
        R
        k
      
      
        c
        k
      
    
  
  ,




the channel allocation method in the multiuser-MISO/OFDMA system is the same as the optimization method in Equation (6). Accordingly, the proposed heuristic algorithm can be applied to the multiuser-MISO/OFDMA system.





  
    
      
        
          
            P
            T
          
          =
          
            
              ∑
              
                n
                =
                1
              
              N
            
            ⁢
            
              
            
            ⁢
            
              
                ∑
                
                  k
                  =
                  1
                
                K
              
              ⁢
              
                
              
              ⁢
              
                
                  g
                  k
                
                ⁡
                
                  (
                  n
                  )
                
              
            
          
        
        ⁣
        
          
            ·
            
              
                δ
                k
              
              ⁡
              
                (
                n
                )
              
            
          
          ⁢
          
            

          
          ⁢
          Constraints
          :
          
            

          
          ⁢
          
            
              
                δ
                k
              
              ⁡
              
                (
                n
                )
              
            
            ∈
            
              {
              
                0
                ,
                1
              
              }
            
          
        
        ⁢
        
          

        
        ⁢
        
          
            
              
                ∑
                
                  k
                  =
                  1
                
                K
              
              ⁢
              
                
              
              ⁢
              
                
                  δ
                  k
                
                ⁡
                
                  (
                  n
                  )
                
              
            
            =
            1
          
          ,
          
            ∀
            n
          
        
        ⁢
        
          

        
        ⁢
        
          
            
              
                ∑
                
                  n
                  =
                  1
                
                N
              
              ⁢
              
                
              
              ⁢
              
                
                  δ
                  k
                
                ⁡
                
                  (
                  n
                  )
                
              
            
            =
            
              r
              k
            
          
          ,
          
            ∀
            k
          
          ,
        
      
    
    
      
        (
        10
        )
      
    
  




where




  
    
      g
      k
    
    ⁡
    
      (
      n
      )
    
  
  =
  
    
      ∑
      
        l
        =
        1
      
      
        N
        R
      
    
    ⁢
    
      
        
          f
          k
        
        ⁡
        
          (
          
            
              c
              k
            
            ⁡
            
              (
              l
              )
            
          
          )
        
      
      
        
          α
          k
          2
        
        ⁡
        
          (
          
            n
            ,
            l
          
          )
        
      
    
  




and





  
    r
    k
  
  =
  
    
      
        R
        k
      
      
        
          ∑
          
            l
            =
            1
          
          
            N
            R
          
        
        ⁢
        
          
            c
            k
          
          ⁡
          
            (
            l
            )
          
        
      
    
    .
  




This is again an IP problem, but it is considerably simpler than the original IP in Equation (5).

Furthermore, we can find some suboptimal algorithms for this problem due to the following observation:
Observation 2: Suppose that {ck(l)} are known. Then, {fk(ck(l))} become known and Equation (10) takes the form of a transportation problem that can be relaxed to linear programming (LP).
In Equation (10), N subcarriers are supplied to K users depending on the costs {gk(n)}. δk(n) is the number of units shipped from the n-th subcarrier to the k-th user. The constraints of




  
    
      
        ∑
        
          k
          =
          1
        
        K
      
      ⁢
      
        
          δ
          k
        
        ⁡
        
          (
          n
          )
        
      
    
    =
    1
  
  ,
  
    ∀
    n
  




and





  
    
      
        ∑
        
          n
          =
          1
        
        N
      
      ⁢
      
        
          δ
          k
        
        ⁡
        
          (
          n
          )
        
      
    
    =
    
      r
      k
    
  
  ,




∀k in Equation (10) are the supply and demand constraints, respectively, of the transportation problem. As described above, a transportation problem can be solved by LP relaxation and Vogel's method.

Before solving the optimization problem in the first step, {ck(l)} can be obtained during an initial phase.
Evaluation of {ck(l)} requires the following assumption on the channel gain:




  
    
      α
      k
      2
    
    ⁡
    
      (
      
        n
        ,
        l
      
      )
    
  
  =
  
    {
    
      
        
          
            
              
                α
                k
                2
              
              ⁡
              
                (
                l
                )
              
            
            ,
          
        
        
          
            
              if
              ⁢
              
                
              
              ⁢
              
                
                  δ
                  k
                
                ⁡
                
                  (
                  n
                  )
                
              
            
            =
            1
          
        
      
      
        
          
            0
            ,
          
        
        
          
            otherwise
            ,
          
        
      
    
  




where αk2(l) is the average of all subchannel gains associated with the k-th user and MIMO subchannel group l.
Under the above assumption, the optimization problem in Equation (10) can be simplified as shown in Equation (11).




  
    
      
        
          
            
              
                P
                T
              
              =
              
                
                  ∑
                  
                    k
                    =
                    1
                  
                  K
                
                ⁢
                
                  
                    ∑
                    
                      l
                      =
                      1
                    
                    
                      N
                      R
                    
                  
                  ⁢
                  
                    
                      
                        
                          f
                          k
                        
                        ⁡
                        
                          (
                          
                            
                              c
                              k
                            
                            ⁡
                            
                              (
                              l
                              )
                            
                          
                          )
                        
                      
                      
                        
                          α
                          k
                          2
                        
                        ⁡
                        
                          (
                          l
                          )
                        
                      
                    
                    ·
                    
                      
                        R
                        k
                      
                      
                        
                          ∑
                          
                            l
                            =
                            1
                          
                          
                            N
                            R
                          
                        
                        ⁢
                        
                          
                            c
                            k
                          
                          ⁡
                          
                            (
                            l
                            )
                          
                        
                      
                    
                  
                
              
            
          
        
        
          
            
              
                
                  Constraint
                  ⁢
                  
                    :
                  
                  ⁢
                  
                    
                  
                  ⁢
                  
                    
                      ∑
                      
                        k
                        =
                        1
                      
                      K
                    
                    ⁢
                    
                      
                        R
                        k
                      
                      
                        
                          ∑
                          
                            l
                            =
                            1
                          
                          
                            N
                            R
                          
                        
                        ⁢
                        
                          
                            c
                            k
                          
                          ⁡
                          
                            (
                            l
                            )
                          
                        
                      
                    
                  
                
                =
                N
              
              ,
            
          
        
      
    
    
      
        (
        11
        )
      
    
  




where




  
    ∑
    
      n
      =
      1
    
    N
  
  ⁢
  
    
      δ
      k
    
    ⁡
    
      (
      n
      )
    
  




is replaced with





  
    
      R
      k
    
    
      
        ∑
        
          l
          =
          1
        
        
          N
          R
        
      
      ⁢
      
        
          c
          k
        
        ⁡
        
          (
          l
          )
        
      
    
  
  ,




due to the constraint of





  
    
      
        ∑
        
          n
          =
          1
        
        N
      
      ⁢
      
        
          δ
          k
        
        ⁡
        
          (
          n
          )
        
      
    
    =
    
      r
      k
    
  
  ,
  
    ∀
    k
  




in Equation (10). Thereafter, the solution {c*k(l)} of Equation (11) can be obtained by introducing a Lagrange multiplier μ and using a numerical technique, such as vector-form Newton's method.

Finally, the suboptimal approaches to the subchannel allocation in the single-user-MIMO/OFDMA system in accordance with the present invention are as follows:
Suboptimal LP
Step 1: Evaluate real-valued {c*k(l)} from Equation (11) using the vector-form Newton's method.
Step 2: Substitute {c*k(l)} for {ck(l)} in Equation (10) and solve Equation (10) using LP after dropping the integer constraints from {δk(n, p)} in order to obtain {δk(n,p)}.
Heuristic
Step 1: Evaluate real-valued {c*k(l)} from Equation (11) using the vector-form Newton's method.
Step 2: Substitute {c*k(l)} for {ck(l)} in Equation (10) and solve Equation (10) using Vogel's method to obtain {δk(n,p)}.
The computational load required by Vogel's method is O(NK2), while the computation load for LP is O(N4). Because usually N>>K, Vogel's method is considerably simpler to implement than LP.
The overall heuristic algorithm for subchannel allocation requires O(K2) operations for one iteration of the vector-form Newton's method, and requires O(NK2) operations for the heuristic algorithm. This is a polynomial-time algorithm that can be applied to real-time single-user-MIMO/OFDMA systems.
Bit Allocation
The bit allocation problem in the multiuser-MIMO/OFDMA system can be expressed as shown in Equation (12).




  
    
      
        
          
            
              
                P
                T
              
              =
              
                
                  ∑
                  
                    k
                    =
                    1
                  
                  K
                
                ⁢
                
                  [
                  
                    
                      ∑
                      
                        n
                        =
                        1
                      
                      N
                    
                    ⁢
                    
                      
                        ∑
                        
                          
                            p
                            =
                            1
                          
                          ,
                          
                            p
                            ≠
                            k
                          
                        
                        K
                      
                      ⁢
                      
                        
                          ∑
                          
                            l
                            =
                            1
                          
                          
                            N
                            R
                          
                        
                        ⁢
                        
                          
                            
                              
                                f
                                k
                              
                              ⁡
                              
                                (
                                
                                  
                                    c
                                    k
                                  
                                  ⁡
                                  
                                    (
                                    
                                      n
                                      ,
                                      l
                                    
                                    )
                                  
                                
                                )
                              
                            
                            
                              
                                α
                                k
                                2
                              
                              ⁡
                              
                                (
                                
                                  n
                                  ,
                                  l
                                  ,
                                  p
                                
                                )
                              
                            
                          
                          ·
                          
                            
                              δ
                              k
                            
                            ⁡
                            
                              (
                              
                                n
                                ,
                                p
                              
                              )
                            
                          
                        
                      
                    
                  
                  ]
                
              
            
          
        
        
          
            
              
                
                  Constraint
                  ⁢
                  
                    :
                  
                  ⁢
                  
                    
                  
                  ⁢
                  
                    R
                    k
                  
                
                =
                
                  
                    ∑
                    
                      n
                      =
                      1
                    
                    N
                  
                  ⁢
                  
                    
                      ∑
                      
                        
                          p
                          =
                          1
                        
                        ,
                        
                          p
                          ≠
                          k
                        
                      
                      K
                    
                    ⁢
                    
                      
                        ∑
                        
                          l
                          =
                          1
                        
                        
                          N
                          R
                        
                      
                      ⁢
                      
                        
                          
                            c
                            k
                          
                          ⁡
                          
                            (
                            
                              n
                              ,
                              l
                            
                            )
                          
                        
                        ·
                        
                          
                            δ
                            k
                          
                          ⁡
                          
                            (
                            
                              n
                              ,
                              p
                            
                            )
                          
                        
                      
                    
                  
                
              
              ,
              
                ∀
                k
              
              ,
            
          
        
      
    
    
      
        (
        12
        )
      
    
  




where only {ck(n,l)∈{0, . . . , C}} are treated as variables since {δk(n,p)} are already determined through the subchannel allocation.
Equation (12) reveals that the bit allocation for each user can be independently performed. Under the constraint




  
    
      
        
          
            
              
                
                  R
                  k
                
                =
                
                  
                    ∑
                    
                      n
                      =
                      1
                    
                    N
                  
                  ⁢
                  
                    
                      ∑
                      
                        
                          p
                          =
                          1
                        
                        ,
                        
                          p
                          ≠
                          k
                        
                      
                      K
                    
                    ⁢
                    
                      
                        ∑
                        
                          l
                          =
                          1
                        
                        
                          N
                          R
                        
                      
                      ⁢
                      
                        
                          
                            c
                            k
                          
                          ⁡
                          
                            (
                            
                              n
                              ,
                              l
                            
                            )
                          
                        
                        ·
                        
                          
                            δ
                            k
                          
                          ⁡
                          
                            (
                            
                              n
                              ,
                              p
                            
                            )
                          
                        
                      
                    
                  
                
              
              ,
            
          
          
            
              
                ∀
                k
              
              ,
            
          
        
      
    
  
  
    
      
        
          ∑
          
            k
            =
            1
          
          K
        
        ⁢
        
          [
          
            
              ∑
              
                n
                =
                1
              
              N
            
            ⁢
            
              
                ∑
                
                  
                    p
                    =
                    1
                  
                  ,
                  
                    p
                    ≠
                    k
                  
                
                K
              
              ⁢
              
                
                  ∑
                  
                    l
                    =
                    1
                  
                  
                    N
                    R
                  
                
                ⁢
                
                  
                    
                      
                        f
                        k
                      
                      ⁡
                      
                        (
                        
                          
                            c
                            k
                          
                          ⁡
                          
                            (
                            
                              n
                              ,
                              l
                            
                            )
                          
                        
                        )
                      
                    
                    
                      
                        α
                        k
                        2
                      
                      ⁡
                      
                        (
                        
                          n
                          ,
                          l
                          ,
                          p
                        
                        )
                      
                    
                  
                  ·
                  
                    
                      δ
                      k
                    
                    ⁡
                    
                      (
                      
                        n
                        ,
                        p
                      
                      )
                    
                  
                
              
            
          
          ]
        
      
    
  




for each k is minimized, and the total power PT is eventually minimized. This fact indicates that the bit allocation for each user can be performed as in the case of single-user OFDM. Accordingly, it is possible to apply the greedy algorithm proposed for single-user OFDM.

Equations (13) and (14) are the bit allocation problems of multiuser-MISO/OFDMA and single-user-MIMO/OFDMA systems, respectively.




  
    
      
        
          P
          T
        
        =
        
          
            ∑
            
              k
              =
              1
            
            K
          
          ⁢
          
            [
            
              
                
                  ∑
                  
                    n
                    =
                    1
                  
                  N
                
                ⁢
                
                  
                    ∑
                    
                      
                        p
                        =
                        1
                      
                      ,
                      
                        p
                        ≠
                        k
                      
                    
                    K
                  
                  ⁢
                  
                    
                      
                        f
                        k
                      
                      ⁡
                      
                        (
                        
                          
                            c
                            k
                          
                          ⁡
                          
                            (
                            n
                            )
                          
                        
                        )
                      
                    
                    
                      
                        α
                        k
                        2
                      
                      ⁡
                      
                        (
                        
                          n
                          ,
                          p
                        
                        )
                      
                    
                  
                
              
              ⁣
              
                ·
                
                  
                    δ
                    k
                  
                  ⁡
                  
                    (
                    
                      n
                      ,
                      p
                    
                    )
                  
                
              
            
            ]
          
        
      
    
    
      
        (
        13
        )
      
    
  
  
    
      
        
          
            
              
                
                  Constraint
                  ⁢
                  
                    :
                  
                  ⁢
                  
                    
                  
                  ⁢
                  
                    R
                    k
                  
                
                =
                
                  
                    ∑
                    
                      n
                      =
                      1
                    
                    N
                  
                  ⁢
                  
                    
                      ∑
                      
                        
                          p
                          =
                          1
                        
                        ,
                        
                          p
                          ≠
                          k
                        
                      
                      K
                    
                    ⁢
                    
                      
                        
                          c
                          k
                        
                        ⁡
                        
                          (
                          n
                          )
                        
                      
                      ·
                      
                        
                          δ
                          k
                        
                        ⁡
                        
                          (
                          
                            n
                            ,
                            p
                          
                          )
                        
                      
                    
                  
                
              
              ,
            
          
          
            
              ∀
              k
            
          
        
      
    
    
      
        
      
    
  
  
    
      
        
          P
          T
        
        =
        
          
            ∑
            
              k
              =
              1
            
            K
          
          ⁢
          
            [
            
              
                ∑
                
                  n
                  =
                  1
                
                N
              
              ⁢
              
                
                  ∑
                  
                    l
                    =
                    1
                  
                  
                    N
                    R
                  
                
                ⁢
                
                  
                    
                      
                        f
                        k
                      
                      ⁡
                      
                        (
                        
                          
                            c
                            k
                          
                          ⁡
                          
                            (
                            
                              n
                              ,
                              l
                            
                            )
                          
                        
                        )
                      
                    
                    
                      
                        α
                        k
                        2
                      
                      ⁡
                      
                        (
                        
                          n
                          ,
                          l
                        
                        )
                      
                    
                  
                  ·
                  
                    
                      δ
                      k
                    
                    ⁡
                    
                      (
                      n
                      )
                    
                  
                
              
            
            ]
          
        
      
    
    
      
        (
        14
        )
      
    
  
  
    
      
        
          
            
              
                
                  Constraint
                  ⁢
                  
                    :
                  
                  ⁢
                  
                    
                  
                  ⁢
                  
                    R
                    k
                  
                
                =
                
                  
                    ∑
                    
                      n
                      =
                      1
                    
                    N
                  
                  ⁢
                  
                    
                      ∑
                      
                        l
                        =
                        1
                      
                      
                        N
                        R
                      
                    
                    ⁢
                    
                      
                        
                          c
                          k
                        
                        ⁡
                        
                          (
                          
                            n
                            ,
                            l
                          
                          )
                        
                      
                      ·
                      
                        
                          δ
                          k
                        
                        ⁡
                        
                          (
                          n
                          )
                        
                      
                    
                  
                
              
              ,
            
          
          
            
              ∀
              k
            
          
        
      
    
    
      
        
      
    
  




Like the case of the multiuser-MIMO/OFDMA system, Equations (13) and (14) are also solved using the greedy algorithm.
The bit allocation for multiuser-MIMO/OFDMA and multiuser-MISO/OFDMA systems requires O(NK2) operations, while the bit allocation for single-user-MIMO/OFDMA needs O(NK) operation.
The optimal IP and suboptimal algorithm were examined. For comparison, also considered were the random algorithm where subchannels were randomly allocated and bits were allocated by the greedy algorithm. Accordingly, the parameters were the same as those in Table 1.
For the multiuser-MIMO/OFDMA system, the simulation results were the average of 100 trials.
Table 6 shows the resulting transmission power for various {R1,R2,R3,R4} and γ∈{0,30}[dB].











TABLE 6







γ
Bits/OFDM symbol
Optimal IP
Heuristic
Random














(dB)
R1
R2
R3
R4
(dB)
(dB)
(dB)

















0
256
256
256
256
39.93
40.24
42.93



128
128
384
384
40.38
40.93
43.10



64
64
448
448
41.03
41.56
43.31


30
256
256
256
256
55.92
57.86
62.41



128
128
384
384
50.74
52.20
57.08



64
64
448
448
46.71
48.01
53.31









As expected, the optimal IP yielded the minimum PT for all cases. The PT values from the suboptimal algorithm were reasonably close to the minimum values. The performance gap between the optimal IP and the suboptimal algorithm did not exceed 0.55 dB, when γ=0 dB, and 1.94 dB, when γ=30 dB. The random algorithm was worse than the others. That is, the maximum additionally required power was 3.00 dB, when γ=0 dB, and 6.60 dB, when γ=30 dB.
To further examine the performance degradation of the algorithms against the optimal IP, additional experiments with the optimal IP were performed for various {R1,R2,R3R4}.
Table 7 describes the data rates obtained by the additionally required power of the heuristic and random algorithms with respect to the optimal IP.












TABLE 7









γ

Bits/OFDM symbol
Optimal IP














(dB)
R1
R2
R3
R4
(dB)


















0
256
256
256
256
39.93




262
262
262
262
40.24




316
316
316
316
42.93




128
128
384
384
40.38




140
140
396
396
40.93




186
186
442
442
43.10




64
64
448
448
41.03




76
76
460
460
41.56




116
116
500
500
43.31



30
256
256
256
256
55.92




306
306
306
306
57.86




424
424
424
424
62.41




128
128
384
384
50.74




150
150
406
406
52.20




246
246
502
502
57.08




64
64
448
448
46.71




78
78
464
464
48.01




148
148
532
532
53.31










For example, when γ=0 dB, 40.24 dB, which was needed for {256,256,256,256} using the heuristic algorithm in Table 6, achieved {262,262,262,262} with the optimal IP. The performance degradation of the heuristic algorithm was less than 12 bits/OFDM symbol per user, when γ=0 dB, and was less than 50 bits/OFDM symbol per user, when γ=30 dB. In the case of random algorithm, the maximum loss was 60 bits/OFDM symbol per user, when γ=0 dB, and 128 bits/OFDM symbol per user, when γ=30 dB.
As indicated above, the simulation results for the multiuser-MISO/OFDMA systems were the average of 100 trials.
Table 8 shows the resulting transmission power PT for various {R1,R2,R3,R4} and γ∈{0,30}[dB].











TABLE 8







γ
Bits/OFDM symbol
Optimal IP
Heuristic
Random














(dB)
R1
R2
R3
R4
(dB)
(dB)
(dB)

















0
128
128
128
128
38.28
38.84
42.71



64
64
192
192
38.93
39.92
42.86



32
32
224
224
39.87
40.83
43.18


30
128
128
128
128
55.15
56.70
62.02



64
64
192
192
50.12
51.67
57.02



32
32
224
224
46.40
47.74
53.48









As expected, the optimal IP showed the minimum PT for all cases. The PT values from the suboptimal algorithm were reasonably close to the minimum values. The performance gap between the optimal IP and the suboptimal algorithm was less than 0.99 dB, when γ=0 dB, and 1.55 dB, when γ=30 dB. The random algorithm was worse than the others. That is, the maximum additionally required power was 3.93 dB, when γ=0 dB, and 7.08 dB, when γ=30 dB.
For the single-user-MIMO/OFDMA system, the simulation results were the average of 20 trials.
The resulting transmission power PT is shown in Table 9.












TABLE 9









Optimal
Subop-
Heu-
Ran-


γ
Bits/OFDM symbol
IP
timal
ristic
dom















(dB)
R1
R2
R3
R4
(dB)
LP (dB)
(dB)
(dB)


















0
128
128
128
128
37.05
37.24
37.30
40.57



64
64
192
192
37.24
37.46
37.56
41.06



32
32
224
224
37.56
37.80
37.84
40.82


30
128
128
128
128
52.52
53.11
53.41
55.95



64
64
192
192
47.42
47.49
48.43
52.59



32
32
224
224
43.36
43.70
44.29
49.79









In Table 9, the optimal IP yielded the minimum PT for all cases. The PT values from the suboptimal algorithms were reasonably close to the minimum values. The performance gap between the optimal IP and the suboptimal LP algorithm did not exceed 0.24 dB, when γ=0 dB, and did not exceed 0.59 dB, when γ=30 dB. In the case of the heuristic algorithm, the gap was less than 0.32 dB, when γ=0 dB, and was less than 0.01 dB, when γ=30 dB. The random algorithm was worse than the others. That is, the maximum additionally required power was 3.82 dB, when γ=0 dB, and 6.43 dB, when γ=30 dB.
To compare the performance of the above three systems, additional simulations were performed when all systems has the same number of subchannels. The parameters were shown in Table 10 and the heuristic algorithm was applied.











TABLE 10







Multiuser-
Multiuser-
Single-user-



MIMO/OFDMA
MISO/OFDMA
MIMO/OFDMA



















NT
4
4
4


NR
2
1
4


M
2
4
1


# of FFT (N)
64
64
64


Total # of
256
256
256


subchannels








# of users (K)
 4


# of max. bits (C)
12


Required BER
  10−4


Channel
8-tap frequency selective Rayleigh fading chan-



nels with exponentially decaying power profiles



were assumed. The channel parameters were fixed



during one frame period. The average channel



magnitudes of the different users were generally



unequal and the difference, denoted by γ,



between the strongest and weakest channels of



the four users was either zero or 30 dB.









In Table 10, the simulation results were the average of 100 trials.
Table 11 shows the resulting transmission power P, for various {R1,R2,R3,R4} and γ∈{0,30}[dB].











TABLE 11







γ
Bits/OFDM symbol
Multiuser-MIMO/
Multiuser-MISO/
Single-user-MIMO/














(dB)
R1
R2
R3
R4
OFDMA (dB)
OFDMA (dB)
OFDMA (dB)

















0
256
256
256
256
40.28
44.93
38.52



128
128
384
384
41.06
48.41
38.79



64
64
448
448
41.70
51.29
38.90


30
256
256
256
256
57.88
64.46
54.26



128
128
384
384
52.35
57.22
49.29



64
64
448
448
48.09
53.53
45.68









As shown in Table 11, the single-user-MIMO/OFDMA, which has the maximum number of receiver antennas, yielded the minimum PT and the multiuser-MISO/OFDMA, which has the minimum number of receiver antennas, yielded the maximum PT. The performance gap between the single-user-MIMO/OFDMA and the multiuser-MIMO/OFDMA did not exceed 2.8 dB, when γ=0 dB, and did not exceed 3.62 dB, when γ=30 dB. The multiuser-MISO/OFDMA was worse than the others. That is, the maximum additionally required power was 12.39 dB, when γ=0 dB, and 10.20 dB, when γ=30 dB.
FIG. 3 is a flow chart illustrating a subchannel and bit allocation method in accordance with the present invention. As illustrated in FIG. 3, the subchannel and bit allocation method computes channel gain and transmission rate information using feedback information from terminals in Step S301, and computes an average channel gain according to a computed channel gain for each user in Step S302. When the average channel gain for each user has been determined, the average number of bits to be allocated to a corresponding user is determined in Step S303. The number of subchannels to be allocated to each user is determined in Step S304. Subchannels are allocated to each user according to the determined number of subchannels in Step S305.
After the subchannels are allocated to each user, a modulation scheme is determined on a channel-by-channel basis in Step S306.
As is apparent from the description above, the subchannel and bit allocation method for multiuser-MIMO/OFDMA systems (including its special systems) in accordance with the present invention can optimize subchannel and bit allocation using IP. Further, the subchannel and bit allocation method in accordance with the present invention can obtain the performance close to that of the optimal IP algorithm using an efficient suboptimal algorithm for separately performing a subchannel and bit allocation process.
Additionally, the subchannel and bit allocation method in accordance with the present invention can considerably improve frequency use efficiency as well as a power gain by adaptively allocating subchannels and bits according to channel environments, as compared with a system using a fixed modulation scheme.
While the present invention has been shown and described with reference to certain preferred embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the present invention as defined by the appended claims.

## Claims

1. A resource allocation method in a multiple-input multiple-output/orthogonal frequency division multiple access (MIMO/OFDMA) system including a base station for transmitting signals through a plurality of transmitter antennas, and a plurality of terminals for receiving the signals through receiver antennas, the method comprising:
determining, at the base station upon receipt of feedback information, at least one of a channel gain and transmission rate for each user terminal;
computing an average channel gain for each said user terminal according to the determined channel gain;
determining an average number of bits for each said user terminal using the determined average channel gain;
determining a number of subchannels for each said user terminal according to the determined average number of bits for each said user terminal; and
allocating a modulating scheme for each subchannel according to the determined number of subchannels;
wherein the average channel gain is computed differently for each said user terminal according to one of a multiuser-MIMO/OFDMA environment, a multiuser-multiple-input single-output (MISO)/OFDMA environment, and a single-user MIMO/OFDMA environment.

2. The resource allocation method according to claim 1, wherein the average channel gain for each said user terminal in the multiuser-MIMO/OFDMA environment is computed by:




  
    
      
        α
        k
        2
      
      ⁡
      
        (
        l
        )
      
    
    =
    
      
        1
        
          N
          ⁡
          
            (
            
              K
              -
              1
            
            )
          
        
      
      ⁢
      
        
          ∑
          
            n
            =
            1
          
          N
        
        ⁢
        
          
            ∑
            
              
                p
                =
                1
              
              ,
              
                p
                ≠
                k
              
            
            K
          
          ⁢
          
            
              α
              k
              2
            
            ⁡
            
              (
              
                n
                ,
                l
                ,
                p
              
              )
            
          
        
      
    
  
  ,



where K is a total number of user terminals, N is a total number of subcarriers, k and p are user terminal indices, and l is a MIMO subchannel index.

3. The resource allocation method according to claim 1, wherein the average channel gain for each said user terminal in the multiuser-MISO/OFDMA environment is computed by:




  
    
      
        α
        k
        2
      
      ⁡
      
        (
        l
        )
      
    
    =
    
      
        1
        
          N
          ⁡
          
            (
            
              K
              -
              1
            
            )
          
        
      
      ⁢
      
        
          ∑
          
            n
            =
            1
          
          N
        
        ⁢
        
          
            ∑
            
              
                p
                =
                1
              
              ,
              
                p
                ≠
                k
              
            
            K
          
          ⁢
          
            
              α
              k
              2
            
            ⁡
            
              (
              
                n
                ,
                p
              
              )
            
          
        
      
    
  
  ,



where K is a total number of user terminals, N is a total number of subcarriers, and k and p are user terminal indices.

4. The resource allocation method according to claim 1, wherein the average channel gain for each said user terminal in the single-user-MIMO/OFDMA environment is computed by:




  
    
      
        α
        k
        2
      
      ⁡
      
        (
        l
        )
      
    
    =
    
      
        1
        N
      
      ⁢
      
        
          ∑
          
            n
            =
            1
          
          N
        
        ⁢
        
          
            α
            k
            2
          
          ⁡
          
            (
            
              n
              ,
              l
            
            )
          
        
      
    
  
  ,



where N is a total number of subcarriers, and l is a MIMO subchannel index.

5. The resource allocation method according to claim 1, wherein the average channel gain for each said user terminal is computed by:




  
    
      α
      k
      2
    
    ⁡
    
      (
      l
      )
    
  
  =
  
    
      1
      
        N
        ⁡
        
          (
          
            K
            -
            1
          
          )
        
      
    
    ⁢
    
      
        ∑
        
          n
          =
          1
        
        N
      
      ⁢
      
        
          ∑
          
            
              p
              =
              1
            
            ,
            
              p
              ≠
              k
            
          
          K
        
        ⁢
        
          
            α
            k
            2
          
          ⁡
          
            (
            
              n
              ,
              l
              ,
              p
            
            )
          
        
      
    
  



in a multiuser-MIMO/OFDMA environment, is computed by:





  
    
      α
      k
      2
    
    ⁡
    
      (
      l
      )
    
  
  =
  
    
      1
      
        N
        ⁡
        
          (
          
            K
            -
            1
          
          )
        
      
    
    ⁢
    
      
        ∑
        
          n
          =
          1
        
        N
      
      ⁢
      
        
          ∑
          
            
              p
              =
              1
            
            ,
            
              p
              ≠
              k
            
          
          K
        
        ⁢
        
          
            α
            k
            2
          
          ⁡
          
            (
            
              n
              ,
              p
            
            )
          
        
      
    
  



in a multiuser-multiple-input single-output (MISO)/OFDMA environment, and is computed by:





  
    
      α
      k
      2
    
    ⁡
    
      (
      l
      )
    
  
  =
  
    
      1
      N
    
    ⁢
    
      
        ∑
        
          n
          =
          1
        
        N
      
      ⁢
      
        
          α
          k
          2
        
        ⁡
        
          (
          
            n
            ,
            l
          
          )
        
      
    
  



in a single-user-MIMO/OFDMA environment,
where K is a total number of user terminals, N is a total number of subcarriers, k and p are user terminal indices, and l is a MIMO subchannel index.

6. The resource allocation method according to claim 1, wherein the number of subchannels for each said user terminal is computed using Vogel's method, which is modified such that additional constraints are taken into account in a multiuser-MIMO/OFDMA environment, and a multiuser-multiple-input single-output (MISO)/OFDMA environment.

7. The resource allocation method according to claim 1, wherein the number of subchannels for each said user terminal is computed using Vogel's method in a single-user-MIMO/OFDMA environment.

8. The resource allocation method according to claim 1, wherein the number of subchannels for each said user terminal is computed using Vogel's method, which is modified such that additional constraints are taken into account in a multiuser-MIMO/OFDMA environment.

9. The resource allocation method according to claim 1, wherein the number of subchannels for each said user terminal is computed using Vogel's method, which is modified such that additional constraints are taken into account in a multiuser-multiple-input single-output (MISO)/OFDMA environment.

10. The resource allocation method according to claim 1, wherein the number of subchannels for each said user terminal is computed using Vogel's method, which is modified such that additional constraints are taken into account in a single-user-MIMO/OFDMA environment.