首页> 中国专利> 使用雅可比旋转的矩阵本征值分解和奇异值分解

使用雅可比旋转的矩阵本征值分解和奇异值分解

摘要

描述了用于使用雅可比旋转对矩阵进行分解的技术。以多个复数值雅可比旋转矩阵对第一个复数值矩阵进行多次雅可比旋转迭代,以将第一个矩阵中的非对角线元素变为零。对于每次迭代,可以基于第一个矩阵构成子矩阵,并且对子矩阵进行分解以获得该子矩阵的本征向量,并且可以以该本征向量构成雅可比旋转矩阵,并且将雅可比旋转矩阵用于对第一个矩阵进行更新。基于雅可比旋转矩阵得到包含正交向量的第二个复数值矩阵。对于本征值分解,可以基于雅可比旋转矩阵得到第三个本征值矩阵。对于奇异值分解,可以基于雅可比旋转矩阵得到具有左奇异向量的第四个矩阵以及奇异值矩阵。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-11-05

    未缴年费专利权终止 IPC(主分类):H04L25/02 授权公告日:20121010 终止日期:20181115 申请日:20051115

    专利权的终止

  • 2012-10-10

    授权

    授权

  • 2009-05-13

    实质审查的生效

    实质审查的生效

  • 2009-03-18

    公开

    公开

说明书

根据35 U.S.C§119的优先权要求

本专利申请要求2004年11月15日提交的题目为“EigenvalueDecomposition and Singular Value Decomposition of Matrices UsingJacobi Rotation”的临时申请No.60/628,324的优先权,该临时申请已转让给本申请的受让人,从而清楚地将其合并于此作为参考。

技术领域

本发明一般涉及通信,并且更具体地,涉及用于对矩阵进行分解的技术。

背景技术

多输入多输出(MIMO)通信系统在发射站处使用多个(T个)发射天线并且在接收站处使用多个(R个)接收天线用于数据传输。可以将由T个发射天线和R个接收天线所构成的MIMO信道分解成S个空间信道,其中S≤min{T,R}。可以使用S个空间信道,以便以获得更高总吞吐量和/或更大可靠性的方式发送数据。

可以通过R×T信道响应矩阵H来表示MIMO信道响应的特性,H包含用于所有不同发射和接收天线对的复信道增益。可以对信道响应矩阵H进行对角化以便获得S个本征模式,可以将该S个本征模式视为MIMO信道的正交空间信道。通过在MIMO信道的本征模式上发送数据可以实现改进的性能。

可以通过进行H的奇异值分解或者H的相关矩阵的本征值分解对信道响应矩阵H进行对角化。奇异值分解提供左和右奇异向量,而本征值分解提供本征向量。发射站使用右奇异向量或本征向量,以便在S个本征模式上发送数据。接收站使用左奇异向量或本征向量,以便对在S个本征模式上被发送的数据进行接收。

本征值分解和奇异值分解计算量非常大。因此,在本领域中需要有效率地对矩阵进行分解的技术。

发明内容

这里描述了用于使用雅可比旋转有效率地对矩阵进行分解的多种技术。可以将这些技术用于复数值埃尔米特矩阵的本征值分解,以获得该埃尔米特矩阵的本征向量矩阵和本征值矩阵。还可以将这些技术用于任意复数值矩阵的奇异值分解,以获得该任意矩阵的左奇异向量矩阵、右奇异向量矩阵和奇异值矩阵。

在一个实施例中,以多个复数值雅可比旋转矩阵对第一个复数值矩阵进行多次雅可比旋转迭代,以将第一个矩阵中的非对角线元素变为零。第一个矩阵可以是信道响应矩阵HH的相关矩阵、其为R,或者某些其它矩阵。对于每次迭代,可以基于第一个矩阵构成子矩阵,并且对子矩阵进行分解以获得该子矩阵的本征向量;并且可以用本征向量构成雅可比旋转矩阵,并且可以将雅可比旋转矩阵用于对第一个矩阵进行更新。基于雅可比旋转矩阵得到第二个复数值矩阵。第二个矩阵包含正交向量,并且可以是H的右奇异向量矩阵Vi或者R的本征向量。

对于本征值分解,可以基于雅可比旋转矩阵得到第三个本征值矩阵Di。对于基于第一个SVD实施例的奇异值分解(SVD),可以基于雅可比旋转矩阵得到第三个复数值矩阵Wi,可以基于第三个矩阵Wi得到具有正交向量的第四个矩阵并且还可以基于第三个矩阵Wi得到奇异值矩阵对于基于第二个SVD实施例的奇异值分解,可以基于雅可比旋转矩阵得到具有正交向量的第三个矩阵Ui和奇异值矩阵

下面对本发明的各个方面和实施例进行更详细的描述。

附图说明

图1示出了用于使用雅可比旋转进行本征值分解的过程;

图2根据第一个SVD实施例示出了用于使用雅可比旋转进行奇异值分解的过程;

图3根据第二个SVD实施例示出了用于使用雅可比旋转进行奇异值分解的过程;

图4示出了用于使用雅可比旋转对矩阵进行分解的过程;

图5示出了用于使用雅可比旋转对矩阵进行分解的装置;

图6示出了接入点和用户终端的方框图。

具体实施方式

这里所使用的词语“示例性”指“用作例子、实例、或例证”。这里描述为“示例性”的任何实施例不必被理解为相对于其它实施例是优选的或有利的。

这里所描述的矩阵分解技术可以用于各种通信系统,诸如具有单独一个频率子带的单载波通信系统、具有多个子带的多载波通信系统、具有多个子带的单载波频分多址(SC-FDMA)系统、以及其它通信系统。可以以正交频分复用(OFDM)、某些其它调制技术、或者某些其它结构来获得多个子带。OFDM将整个系统带宽分割成多个(K个)正交子带,也将其称为音调、子载波、仓等。采用OFDM,每个子带与各自的子载波相关,可以将各自的子载波与数据进行调制。SC-FDMA系统可以利用交织FDMA(IFDMA),以便在分布在系统带宽上的子带上进行发送;可以利用定位FDMA(LFDMA),以便在一个邻近子带块上进行发送;或者可以利用增强FDMA(EFDMA),以便在多个邻近子带块上进行发送。一般而言,在频域中以OFDM并且在时域中以SC-FDMA发送调制符号。为清楚起见,下文的大多数描述针对具有单独一个子带的MIMO系统。

可以通过R×T信道响应矩阵H来表示由多个(T个)发射天线和多个(R个)接收天线构成的MIMO信道的特性,可以将H给定为:

             式(1)

其中,对于i=1,...,R和j=1,...,T,项hi,j表示发射天线j和接收天线i之间的耦合或者复信道增益。

可以对信道响应矩阵H进行对角化,以便获得H的多个(S个)本征模式,其中S≤min{T,R}。例如,可以通过进行H的奇异值分解或者H的相关矩阵的本征值分解来实现对角化。

可以将本征值分解表示为:

RHH·HV·Λ·VH          式(2)

其中,RH的T×T相关矩阵;

      V是T×T酉矩阵,其列是R的本征向量;

      ΛR的本征值的T×T对角矩阵;以及

      “H”代表共轭转置。

通过属性VH·VI来表示酉矩阵V的特性,其中,I是单位矩阵。酉矩阵的列互相正交,并且每列具有单位功率。对角矩阵Λ包含沿着对角线的可能非零值以及其它位置的零值。Λ的对角线元素是R的本征值。将这些本征值表示为{λ1,λ2,...,λS},并且这些本征值代表用于S个本征模式的功率增益。R是埃尔米特矩阵,其非对角线元素具有下列属性:>ri,j=rj,i*,>其中,“*”表示复共轭。

可以将奇异值分解表示为:

HU··VH             式(3)

其中,UH的R×R左奇异向量酉矩阵;

      H的R×T奇异值对角矩阵;以及

      VH的T×T右奇异向量酉矩阵。

UV各包含多个正交向量。式(2)和(3)表明H的右奇异向量也是R的本征向量。的对角线元素是H的奇异值。将这些奇异值表示为{σ1,σ2,...,σS},并且这些奇异值代表用于S个本征模式的信道增益。H的奇异值也是R的本征值的平方根,使得>σi=λi,>i=1,...S。

发射站可以使用V中的右奇异向量,以便在H的本征模式上发送数据。典型地,与简单地从T个发射天线发送数据而无任何空间处理相比,在本征模式上发送数据提供更好的性能。接收站可以使用U中的左奇异向量或者V中的本征向量,以便对在H的本征模式上被发送的数据传输进行接收。表1示出了由发射站所进行的空间处理、在接收站处所接收的符号、以及由接收站所进行的空间处理。在表1中,s是T×1向量,其具有可达S个将要被发送的数据符号,x是T×1向量,其具有T个将要从T个发射天线被发送的发送符号,r是R×1向量,其具有从R个接收天线所获得的R个接收符号,n是R×1噪声向量,并且是T×1向量,其具有可达S个被检测出的数据符号,该被检测出的数据符号是对s中的数据符号的估计。

表1

可以以使用雅可比旋转的迭代过程来进行复矩阵的本征值分解和奇异值分解,一般地,也将雅可比旋转称为雅可比方法和雅可比变换。雅可比旋转通过对矩阵进行平面旋转将复矩阵的非对角线元素对变为零。对于2×2复埃尔米特矩阵,仅需要一次雅可比旋转迭代,来获得该2×2矩阵的两个本征向量和两个本征值。对于具有大于2×2维的更大的复矩阵,迭代过程进行多次雅可比旋转迭代,以获得更大复矩阵的所需本征向量和本征值或者奇异向量和奇异值。如下所述,对更大复矩阵的每次雅可比旋转迭代使用2×2子矩阵的本征向量。

可以如下进行2×2埃尔米特矩阵R2×2的本征值分解。可以将埃尔米特矩阵R2×2表示为:

>R2×2=r1,1r1,2r2,1r2,2=AB·ejθbB·e-jθbD>           式(4)

其中,A、B和D是任意实数值,并且θb是任意相位。

R2×2的本征值分解的第一个步骤是应用双边酉变换,如下:

>Rre=100ejθb·AB·ejθbB·e-jθbD·100e-jθb=ABBD>     式(5)

其中,Rre是包含实数值的对称实矩阵,并且在位置(1,2)和(2,1)处具有对称的非对角线元素。

随后,使用双边雅可比旋转对对称实矩阵Rre进行对角化,如下:

>Λ2×2=cosφ-sinφsinφcosφ·ABBD·cosφsinφ-sinφcosφ=λ100λ2>      式(6)

其中,可以将角度φ表示为:

>φ=12tan-1(2BD-A)>                                     式(7)

可以得到R2×2的2×2本征向量酉矩阵V2×2,其为:

>V2×2=100e-jθb·cosφsinφ-sinφcosφ=cosφsinφ-e-jθb·sinφe-jθbcosφ>   式(8)

可以基于式(6)或者基于式>Λ2×2=V2×2H·R2×2·V2×2>得到两个本征值λ1和λ2,如下:

>λ1=12(A+D)+12(A-D)·cos2φ-B·sin2φ>

                                                式(9)

>λ2=12(A+D)-12(A-D)·cos2φ+B·sin2φ>

在方程组(9)中,两个本征值的次序不是固定的,并且λ1可以大于或小于λ2。然而,如果对角度φ进行约束使得|2φ|≤π/2,那么当且仅当D>A时,cos2φ≥0且sin2φ>0。这样,可以通过A和D的相对幅度来确定两个本征值的次序。如果A>D,那么λ1是更大的本征值;而如果D>A,那么λ2是更大的本征值。如果A=D,那么sin2φ=1并且λ2是更大的本征值。如果λ2是更大的本征值,那么可以交换Λ2×2中的两个本征值,以便维持预定的从最大到最小本征值的次序,并且还可以相应地交换V2×2的第一和第二列。为V2×2中的两个本征向量维持该预定次序的结果是,将使用V2×2分解的更大尺寸矩阵的本征向量按照从最大到最小本征值的次序排序,这是所期望的。

还可以从Rre的元素中直接计算两个本征值λ1和λ2,如下:

>λ1,2=12(A+D)±B·1+(D-A2B)2>                   式(10)

式(10)是R2×2的特征方程的解。在式(10)中,以对于右侧第二个量的加号获得λ1,而以对于第二个量的减号获得λ2,其中,λ1≥λ2

式(8)需要计算cosφ和sinφ以便得到V2×2的元素。cosφ和sinφ的计算是复杂的。可以直接从R2×2的元素中计算V2×2的元素,如下:

>r=(Re{r1,2})2+(Im{r1,2})2>               式(11a)

>r1=1r>                                  式(11b)

>c1=r1·Re{r1,2}=cos(r1,2)>                 式(11c)

>s1=-r1·Im{r1,2}=sin(r1,2)>                式(11d)

g1=c1+js1                            式(11e)

>τ=12·r1·(r2,2-r1,1)>                       式(11f)

>x=1+τ2>                             式(11g)

>t=1|τ|+x>                              式(11g)

如果(τ<0),那么t=-t                  式(11i)

>c=11+t2>                             式(11j)

s=t·c                                 式(11k)

如果(τ<0),那么>V2×2=cs-g1·sg1·c,>否则>V2×2=scg1·c-g1·s>

                                        式(111)

其中,r1,1、r1,2和r2,1R2×2的元素,并且r是r1,2的幅度。由于g1是复数值,所以V2×2在第二行中包含复数值。

设计了方程组(11),来减少从R2×2得到V2×2的计算量。例如,在式(11c)、(11d)和(11f)中,需要除以r。作为替代,对r进行求逆以获得r1,并且对于式(11c)、(11d)和(11f),通过r1进行相乘。这减少了除法操作的数目,其中,除法比乘法在计算上开销更大。同样,计算复元素r1,2的辐角(相位)需要反正切操作、并且随后计算该相位值的余弦和正弦以便获得c1和s1,作为对此的替代,使用各种三角恒等式以便将c1和s1解为r1,2的实部和虚部的函数,并且仅使用一个平方根操作。此外,作为在式(7)中计算反正切以及在式(8)中计算正弦和余弦函数的替代,使用其它三角恒等式以便将c和s解为R2×2的元素的函数。

方程组(11)对R2×2进行复雅可比旋转以便获得V2×2。设计方程组(11)中的这组计算,以便减少得到V2×2所需的乘法、平方根和求逆操作的数目。这可以大大减少使用V2×2分解更大尺寸矩阵的计算复杂度。

可以将R2×2的本征值计算如下:

>y=12·(r1,1+r2,2)>                      式(12a)

z=x·r                           式(12b)

λ1=y+z                           式(12c)

λ2=y-z                           式(12d)

1、本征值分解

如式(2)中所示,可以以迭代过程进行大于2×2的N×N埃尔米特矩阵的本征值分解。该迭代过程反复使用雅可比旋转,以便将N×N埃尔米特矩阵中的非对角线元素变为零。对于迭代过程,基于N×N埃尔米特矩阵的2×2埃尔米特子矩阵构成N×N酉变换矩阵,并且将N×N酉变换矩阵反复用于对N×N埃尔米特矩阵进行对角化。每个酉变换矩阵包含从相应的2×2埃尔米特子矩阵的元素中得出的四个非平凡元素(即不是0或1的元素)。也将变换矩阵称为雅可比旋转矩阵。在完成了所有的雅可比旋转之后,所得到的对角矩阵包含N×N埃尔米特矩阵的实本征值,并且所有酉变换矩阵的乘积是N×N埃尔米特矩阵的N×N本征向量矩阵。

在下文描述中,标号i表示迭代号并且将其初始化为i=0。R是将要被分解的N×N埃尔米特矩阵,其中N>2。N×N矩阵Di是对R的本征值对角矩阵Λ的近似,并且将其初始化为D0R。N×N矩阵Vi是对R的本征向量矩阵V的近似,并且将其初始化为V0I

可以如下进行单独一次雅可比旋转迭代来更新矩阵DiVi。首先,基于当前Di构成2×2埃尔米特矩阵Dpq,如下:

>Dpq=dp,pdp,qdq,pdq,q>                    式(13)

其中,dp,qDi中在位置(p,q)处的元素;并且

p∈{1,...,N}、q∈{1,...,N}且p≠q。

DpqDi的2×2子矩阵,并且Dpq的四个元素是Di中在位置(p,p)、(p,q)、(q,p)和(q,q)处的四个元素。如下所述,可以以各种方式选择标号p和q的值。

随后,例如,如方程组(11)中所示,进行Dpq的本征值分解,以便获得Dpq的2×2本征向量酉矩阵Vpq。对于Dpq的本征值分解,以Dpq代替式(4)中的R2×2,并且提供来自式(111)的V2×2作为Vpq

随后,以矩阵Vpq构成N×N复雅可比旋转矩阵TpqTpq是在位置(p,p)、(p,q)、(q,p)和(q,q)处的四个元素分别被替换为Vpq的(1,1)、(1,2)、(2,1)和(2,2)元素的单位矩阵。Tpq具有以下形式:

               式(14)

其中,v1,1、v1,2、v2,1和v2,2Vpq的四个元素。Tpq的所有其它非对角线元素是零。式(111)表明Tpq是包含复数值v2,1和v2,2的复矩阵。也将Tpq称为用于进行雅可比旋转的变换矩阵。

随后,对矩阵Di进行更新,如下:

>Di+1=TpqH·Di·Tpq>               式(15)

式(15)将Di中分别位于位置(p,q)和(q,p)处的两个非对角线元素dp,q和dq,p变为零。该计算可能改变Di中其它非对角线元素的值。

也对矩阵Vi进行更新,如下:

Vi+1Vi·Tpq                   式(16)

可以将Vi视为累积变换矩阵,其包含对Di使用的所有雅可比旋转矩阵Tpq

每次雅可比旋转迭代将Di的两个非对角线元素变为零。对于标号p和q的不同值,可以进行多次雅可比旋转迭代,以便将Di的全部非对角线元素变为零。可以以预定的方式通过扫描所有可能值来选择标号p和q。

可以如下进行对于标号p和q在所有可能值上的单独一次扫描。标号p可以以增1的方式从1步进到N-1。对于每个p值,标号q可以以增1的方式从p+1步进到N。对于p和q值的每种不同组合,可以进行雅可比旋转迭代来对DiVi进行更新。对于每次迭代,基于p和q的值以及用于该迭代的当前Di来构成Dpq,如方程组(11)中所示为Dpq计算Vpq,如式(14)中所示用Vpq构成Tpq,如式(15)中所示对Di进行更新,并且如式(16)中所示对Vi进行更新。对于给定的p和q值的组合,如果Di中在位置(p,q)和(q,p)处的非对角线元素的幅度低于预定的阈值,那么就可以跳过对DiVi进行更新的雅可比旋转。

对于所有可能的p和q值,一次扫描包含N·(N-1)/2次对DiVi进行更新的雅可比旋转迭代。每次雅可比旋转迭代将Di的两个非对角线元素变为零,但是可能改变之前已经变成零的其它元素。通过标号p和q进行扫描的效果是减少Di的所有非对角线元素的幅度,使得Di接近对角矩阵ΛVi包含共同给出Di的所有雅可比旋转矩阵的累积。因此,随着Di接近ΛVi接近V

可以进行任意次扫描,以便获得对VΛ越来越精确的近似。计算机仿真已经示出四次扫描应该足以将Di的非对角线元素减少到可忽略的级别,并且三次扫描对于大多数应用来说应该是足够的。可以进行预定数目的扫描(例如:三或四次扫描)。可替换地,在每次扫描之后,可以对Di的非对角线元素进行检查,以便确定Di是否足够精确。例如,在每次扫描之后,可以计算总误差(例如:Di的所有非对角线元素的乘方),并且将总误差与误差阈值进行比较,并且如果总误差低于误差阈值,就可以终止迭代过程。还可以使用其它条件或准则来终止迭代过程。

还可以以确定性的方式对标号p和q的值进行选择。作为例子,对于每次迭代i,可以将Di的最大非对角线元素识别出并表示为dp,q。随后,可以用Dpq进行雅可比旋转,其中该Dpq包含该最大非对角线元素dp,q以及在Di中的位置(p,p)、(q,p)和(q,q)处的三个其它元素。迭代过程可以一直进行直到遇到终止条件为止。例如,终止条件可以是预定迭代次数的完成、满足上述误差准则、或者某些其它条件或准则。

一旦迭代过程终止,最终的Vi就是对V的良好近似,并且最终的Di就是对Λ的良好近似。可以将Vi的列提供为R的本征向量,并且可以将Di的对角线元素提供为R的本征值。因为对于每次迭代,对Vpq中的本征向量进行了排序,所以对最终的Di中的本征值按照从最大到最小的次序进行排序。还基于最终的Vi中的本征向量在Di中的相关联本征值对这些本征向量进行排序。

图1示出了用于使用雅可比旋转进行N×N埃尔米特矩阵R的本征值分解的迭代过程100,其中,N>2。将矩阵ViDi初始化为V0ID0R,并且将标号i初始化为i=1(方框110)。

对于迭代i,以预定的方式(例如:通过步进遍历这些标号的所有可能值)或者确定性的方式(例如:通过选择最大非对角线元素的标号值)选择标号p和q的值(方框112)。随后,以矩阵Di在由标号p和q所确定的位置处的四个元素构成2×2矩阵Dpq(方框114)。随后,例如,如方程组(11)中所示,进行Dpq的本征值分解以便获得Dpq的2×2本征向量矩阵Vpq(方框116)。随后,如式(14)中所示,基于矩阵Vpq构成N×N复雅可比旋转矩阵Tpq(方框118)。随后,如式(15)中所示,基于Tpq对矩阵Di进行更新(方框120)。如式(16)中所示,还基于Tpq对矩阵Vi进行更新(方框122)。

随后,作出是否终止R的本征值分解的判决(方框124)。终止准则可以基于已经进行的迭代或者扫描的次数、误差准则等。如果对于方框124的答复为“否”,那么标号i递增(方框126),并且过程返回方框112进行下一次迭代。否则,如果到达终止,那么提供矩阵Di作为对角矩阵Λ的近似,并且提供矩阵Vi作为R的本征向量矩阵V的近似(方框128)。

对于具有多个子带的MIMO系统(例如:利用OFDM的MIMO系统),可以为不同的子带获得多个信道响应矩阵H(k)。对于每个信道响应矩阵H(k),可以进行迭代过程,以便获得矩阵Di(k)和Vi(k),他们分别是对R(k)=HH(k)·H(k)的对角矩阵Λ(k)和本征向量矩阵V(k)的近似。

典型地,在MIMO信道的邻近子带之间存在高度的相关性。可以通过迭代过程充分利用该相关性,以便减少用于得到针对感兴趣子带的Di(k)和Vi(k)的计算量。例如,可以每次针对一个子带进行迭代过程,该迭代过程从系统带宽的一端开始,并且穿越到系统带宽的另一端。对于除第一个子带以外的每个子带k,可以将针对前一个子带k-1所获得的最终解Vi(k-1)用作针对当前子带k的初始解。可以将针对每个子带k的初始化给定为:V0(k)=Vi(k-1)和>D0(k)=V0H(k)·R(k)·V0(k).>随后,迭代过程在针对子带k的初始解D0(k)和V0(k)上操作,直到遇到终止条件为止。

还可以在时间上使用上文所描述的概念。对于每个时间间隔t,可以将针对前一时间间隔t-1所获得的最终解Vi(t-1)用作针对当前时间间隔t的初始解。可以将针对每个时间间隔t的初始化给定为:V0(t)=Vi(t-1)和>D0(t)=V0H(t)·R(t)·V0(t),>其中R(t)=HH(t)·H(t)并且H(t)是针对时间间隔t的信道响应矩阵。随后,迭代过程在针对时间间隔t的初始解D0(t)和V0(t)上操作,直到遇到终止条件为止。还可以同时在频率和时间上使用该概念。对于每个时间间隔内的每个子带,可以将针对前一个子带所获得的最终解和/或针对前一个时间间隔所获得的最终解用作针对当前子带和时间间隔的初始解。

2、奇异值分解

还可以将迭代过程用于大于2×2的任意复矩阵H的奇异值分解。将H的奇异值分解给定为HU··VH。可以关于H进行下列观测。首先,矩阵RHH·H和矩阵>R~=H·HH>都是埃尔米特矩阵。第二,H的右奇异向量也是R的本征向量,其中,H的右奇异向量是V的列。相应地,H的左奇异向量也是的本征向量,其中,H的左奇异向量是U的列。第三,R的非零本征值等于的非零本征值,并且是H的相应奇异值的平方。

可以将2×2复数值矩阵H2×2表示为:

>H2×2=h1,1h1,2h2,1h2,2=h1h2>                 式(17)

其中,h1是具有在H2×2的第一列中的元素的2×1向量;并且

h2是具有在H2×2的第二列中的元素的2×1向量。

H2×2的右奇异向量是的本征向量,并且可以使用上文方程组(11)中所描述的本征值分解计算H2×2的右奇异向量。将2×2埃尔米特矩阵R2×2定义为>R2×2=H2×2H·H2×2,>并且可以基于H2×2的元素来计算R2×2的元素,如下:

>R2×2=r1,1r1,2r1,2*r2,2>                   式(18a)

>r1,1=|h1|2=h1,1*·h1,1+h2,1*·h2,1>              式(18b)

>r2,2=|h2|2=h1,2*·h1,2+h2,2*·h2,2>            式(18c)

>r1,2=h1H·h2=h1,1*·h1,2+h2,1*·h2,2>           式(18d)

对于埃尔米特矩阵R2×2,由于>r2,1=r1,2*,>所以不需要计算r2,1。可以将方程组(11)应用于R2×2,以获得矩阵V2×2V2×2包含R2×2的本征向量,其也是H2×2的右奇异向量。

H2×2的左奇异向量是的本征向量,并且可以使用上文方程组(11)中所描述的本征值分解来计算H2×2的左奇异向量。将2×2埃尔米特矩阵定义为>R~2×2=H2×2·H2×2H,>并且可以基于H2×2的元素来计算的元素,如下:

>R~2×2=r~1,1r~1,2r~1,1*r~2,2>                    式(19a)

>r~1,1=h1,1*·h1,1+h1,2*·h1,2>                 式(19b)

>r~2,2=h2,1*·h2,1+h2,2*·h2,2>                式(19c)

>r~1,2=h2,1*·h1,1+h2,2*·h1,2>                 式(19d)

可以将方程组(11)应用于以获得矩阵包含的本征向量,其也是H2×2的左奇异向量。

可以将上文所描述的用于N×N埃尔米特矩阵R的本征值分解的迭代过程用于大于2×2的任意复矩阵H的奇异值分解。H具有维度R×T,其中,R是行的数目并且T是列的数目。可以以若干种方式进行用于H的奇异值分解(SVD)的迭代过程。

在第一个SVD实施例中,迭代过程得到对V中右奇异向量和U·中被缩放的左奇异向量的近似。对于该实施例,T×T矩阵Vi是对V的近似,并且将其初始化为V0I。R×T矩阵Wi是对U·的近似,并且将其初始化为W0H

对于第一个SVD实施例,可以如下进行对矩阵ViWi进行更新的单独一次雅可比旋转迭代。首先,基于当前Wi构成2×2埃尔米特矩阵MpqMpq的2×2子矩阵,并且包含中在位置(p,p)、(p,q)、(q,p)和(q,q)处的四个元素。可以将Mpq的元素计算如下:

>Mpq=m1,1m1,2m1,2*m2,2>                       式(20a)

>m1,1=|wp|2=Σl=1Rwl,p*·wl,p>                  式(20b)

>m2,2=|wq|2=Σl=1Rwl,q*·wl,q>                  式(20c)

>m1,2=wpH·wq=Σl=1Rwl,p*·wl,q>                式(20d)

其中,wpWi的列p,wqWi的列q,并且wl,pWi中在位置(l,p)处的元素。标号p和q使得p∈{1,...,T},q∈{1,...,T}且p≠q。如下文所述,可以以各种方式选择标号p和q的值。

随后,例如,如方程组(11)中所示,进行Mpq的本征值分解,以便获得Mpq的2×2本征向量酉矩阵Vpq。对于该本征值分解,用Mpq代替R2×2,并且提供V2×2作为Vpq

随后,用矩阵Vpq构成T×T复雅可比旋转矩阵TpqTpq是在位置(p,p)、(p,q)、(q,p)和(q,q)处的四个元素分别被替换为Vpq的(1,1)、(1,2)、(2,1)和(2,2)元素的单位矩阵。Tpq具有式(14)中所示的形式。

随后,对矩阵Vi进行更新,如下:

Vi+1Vi·Tpq              式(21)

也对矩阵Wi进行更新,如下:

Wi+1Wi·Tpq              式(22)

对于第一个SVD实施例,迭代过程反复地将的非对角线元素变为零,而不明确地计算HH·H。可以通过将p从1步进到T-1,并且对于每个p值,将q从p+1步进到T来对标号p和q进行扫描。可替换地,对于每次迭代,可以选择使最大的p和q值。迭代过程一直进行直到遇到终止条件为止,终止条件可以是预定扫描次数、预定迭代次数、满足误差准则等。

一旦迭代过程终止,最终的Vi就是对V的良好近似,并且最终的Wi就是对U·的良好近似。当收敛时,>WiH·Wi=ΣT·Σ>并且UWi·-1,其中“T”代表转置。对于平方对角矩阵,可以将的最终解给定为:>Σ^=(WiH·Wi)1/2.>对于非平方对角矩阵,可以通过的对角线元素的平方根来给定的非零对角线元素。可以将U的最终解给定为:>U^=Wi·Σ^-1.>

图2根据第一个SVD实施例示出了用于使用雅可比旋转进行大于2×2的任意复矩阵H的奇异值分解的迭代过程200。将矩阵ViWi初始化为V0IW0H,并且将标号i初始化为i=1(方框210)。

对于迭代i,以预定的方式或者确定性的方式选择标号p和q的值(方框212)。随后,如方程组(20)中所示,以矩阵Wi在由标号p和q所确定的位置处的四个元素构成2×2矩阵Mpq(方框214)。随后,例如,如方程组(11)中所示,进行Mpq的本征值分解,以获得Mpq的2×2本征向量矩阵Vpq(方框216)。随后,如式(14)中所示,基于矩阵Vpq构成T×T复雅可比旋转矩阵Tpq(方框218)。随后,如式(21)中所示,基于Tpq对矩阵Vi进行更新(方框220)。如式(22)中所示,还基于Tpq对矩阵Wi进行更新(方框222)。

随后,作出是否终止H的奇异值分解的判决(方框224)。终止准则可以基于已经进行的迭代或者扫描的次数、误差准则等。如果对于方框224的答复为“否”,那么标号i递增(方框226),并且过程返回方框212,进行下一次迭代。否则,如果到达终止,那么对Wi进行后处理,以便获得(方框228)。提供矩阵Vi作为对H的右奇异向量矩阵V的近似,提供矩阵作为对H的左奇异向量矩阵U的近似,并且提供矩阵作为对H的奇异值矩阵的近似(方框230)。

可以通过执行第一个SVD实施例、求解被缩放的左奇异向量H·VU·并且随后进行归一化,来获得H的左奇异向量。还可以通过进行用于H·HH的本征值分解的迭代过程来获得H的左奇异向量。

在第二个SVD实施例中,迭代过程直接得到对V中右奇异向量和U中左奇异向量的近似。该SVD实施例在双边基础上应用雅可比旋转,以便同时解出左和右奇异向量。对于任意复2×2矩阵H2×2=[h1 h2],该矩阵的共轭转置是>H2×2H=[h~1h~2],>其中,的两列,并且也是H2×2的行的复共轭。H2×2的左奇异向量也是的右奇异向量。如上文对于方程组(18)所描述的,可以使用雅可比旋转计算H2×2的右奇异向量。如上文对于方程组(19)所描述的,可以通过使用雅可比旋转计算的右奇异向量来获得H2×2的左奇异向量。

对于第二个SVD实施例,T×T矩阵Vi是对V的近似,并且将其初始化为V0I。R×R矩阵Ui是对U的近似,并且将其初始化为U0I。R×T矩阵Di是对的近似,并且将其初始化为D0H

对于第二个SVD实施例,可以如下进行对矩阵ViUiDi进行更新的单独一次雅可比旋转迭代。首先,基于当前Di构成2×2埃尔米特矩阵的2×2子矩阵并且包含中在位置(p1,p1)、(p1,q1)、(q1,p1)和(q1,q1)处的四个元素。可以计算的四个元素,如下:

>Xp1q1>=x1,1x1,2x1,2*x2,2>                 式(23a)

>x1,1=|dp1|2=Σl=1Rdl,p1*·dl,p1>            式(23b)

>x2,2=|dq1|2=Σl=1Rdl,q1*·dl,q1>            式(23c)

>x1,2=dp1H·dq1=Σl=1Rdl,p1*·dl,q1>          式(23d)

其中,Di的第p1列,Di的第q1列,并且Di中在位置(l,p1)处的元素。标号p1和q1使得p1∈{1,...,T}、q1∈{1,...,T}且p1≠q1。如下所述,可以以各种方式选择标号p1和q1

随后,例如,如方程组(11)中所示,进行的本征值分解,以便获得的2×2本征向量矩阵对于该本征值分解,用代替R2×2,并且提供V2×2作为随后,用矩阵构成T×T复雅可比旋转矩阵并且在位置(p1,p1)、(p1,q1)、(q1,p1)和(q1,q1)处包含的四个元素。具有式(14)中所示的形式。

还可以基于当前Di构成另一个2×2埃尔米特矩阵的2×2子矩阵并且包含中在位置(p2,p2)、(p2,q2)、(q2,p2)和(q2,q2)处的元素。可以计算的元素,如下:

>Yp2q2=y1,1y1,2y1,2*y2,2>               式(24a)

>y1,1=|d~p2|2=Σl=1Tdp2,l·dp2,l*>          式(24b)

>y2,2=|d~q2|2=Σl=1Tdq2,l·dq2,l*>          式(24c)

>y1,2=d~p2·d~q2H=Σl=1Tdp2,l·dq2,l*>        式(24d)

其中,是Di的第p2行,是Di的第q2行,并且Di中在位置(p2,l)处的元素。标号p2和q2使得p2∈{1,...,R}、q2∈{1,...,R}且p2≠q2。如下所述,也可以以各种方式选择标号p2和q2

随后,例如,如方程组(11)中所示,进行的本征值分解,以便获得的2×2本征向量矩阵。对于该本征值分解,用代替R2×2,并且提供V2×2作为。随后,用矩阵构成R×R复雅可比旋转矩阵并且在位置(p2,p2)、(p2,q2)、(q2,p2)和(q2,q2)处包含的四个元素。具有式(14)中所示的形式。

随后,对矩阵Vi进行更新,如下:

>Vi+1=Vi·Tp1q1>                   式(25)

对矩阵Ui进行更新,如下:

>Ui+1=Ui·Sp2q2>                   式(26)

对矩阵Di进行更新,如下:

>Di+1=Sp2q2H·Di·Tp1q1>               式(27)

对于第二个SVD实施例,迭代过程交替地找到(1)将HH·H中具有标号p1和q1的非对角线元素变为零的雅可比旋转和(2)将H·HH中具有标号p2和q2的非对角线元素变为零的雅可比旋转。可以通过将标号p1从1步进到T-1,并且对于每个p1值,将q1从p1+1步进到T来对标号p1和q1进行扫描。也可以通过将标号p2从1步进到R-1,并且对于每个p2值,将q2从p2+1步进到R来对标号p2和q2进行扫描。作为例子,对于平方矩阵H,可以将标号设置为p1=p2和q1=q2。作为另一个例子,对于平方或者非平方矩阵H,可以选择一组p1和q1,随后可以选择一组p2和q2,随后可以选择一组新的p1和q1,随后可以选择一组新的p2和q2,等等,使得可以为标号p1和q1以及标号p2和q2交替选择新的值。可替换地,对于每次迭代,可以选择使最大的p1和q1值,并且可以选择使最大的p2和q2值。迭代过程一直进行直到遇到终止条件为止,终止条件可以是预定扫描次数、预定迭代次数、满足误差准则等。

一旦迭代过程终止,最终的Vi就是对的良好近似,最终的Ui就是对U的良好近似,并且最终的Di就是对的良好近似,其中,可以分别是V和∑的被旋转版本。上文所描述的计算没有充分地对左和右奇异向量解进行约束来使得最终的Di的对角线元素是正实数值。最终的Di的元素可以是复数值,其幅度等于H的奇异值。ViDi可以不被旋转,如下:

>Σ^=Di·P>                                式(28a)

>V^=Vi·P>                                式(28b)

其中,P是具有如下对角线元素的T×T对角矩阵,即该对角线元素具有单位幅度并且其相位是Di的相应对角线元素的相位的负数。分别是对V的最终近似。

图3根据第二个SVD实施例示出了用于使用雅可比旋转进行大于2×2的任意复矩阵H的奇异值分解的迭代过程300。将矩阵ViUiDi初始化为V0IU0ID0H,并且将标号i初始化为i=1(方框310)。

对于迭代i,以预定的方式或者确定性的方式选择标号p1、q1、p2和q2的值(方框312)。如方程组(23)中所示,用矩阵Di在由标号p1和q1所确定的位置处的四个元素构成2×2矩阵(方框314)。随后,例如,如方程组(11)中所示,进行的本征值分解,以便获得的2×2本征向量矩阵(方框316)。随后,基于矩阵构成T×T复雅可比旋转矩阵(方框318)。如方程组(24)中所示,用矩阵Di在由标号p2和q2所确定的位置处的四个元素构成2×2矩阵(方框324)。随后,例如,如方程组(11)中所示,进行的本征值分解,以便获得的2×2本征向量矩阵(方框326)。随后,基于矩阵构成R×R复雅可比旋转矩阵(方框328)。

随后,如式(25)中所示,基于对矩阵Vi进行更新(方框330)。如式(26)中所示,基于对矩阵Ui进行更新(方框332)。如式(27)中所示,基于对矩阵Di进行更新(方框334)。

随后,作出是否终止H的奇异值分解的判决(方框336)。终止准则可以基于已经进行的迭代或者扫描的次数、误差准则等。如果对于方框336的答复为“否”,那么标号i递增(方框338),并且过程返回方框312,进行下一次迭代。否则,如果到达终止,那么对DiVi进行后处理,以便获得(方框340)。提供矩阵作为对V的近似,提供矩阵Ui作为对U的近似,并且提供矩阵作为对的近似(方框342)。

对于第一个和第二个SVD实施例,由于对于每次迭代,对Vpq中的本征向量(对于第一个SVD实施例)以及中的本征向量(对于第二个SVD实施例)进行了排序,所以将最终的Vi中的右奇异向量以及最终的Ui中的左奇异向量按照从最大到最小奇异值的顺序进行排序。

对于具有多个子带的MIMO系统,可以针对每个信道响应矩阵H(k)进行迭代过程,以便获得矩阵Vi(k)、Ui(k)和Di(k),对于该H(k),矩阵Vi(k)、Ui(k)和Di(k)分别是对右奇异向量矩阵V(k)、左奇异向量矩阵U(k)和奇异值对角矩阵(k)的近似。可以每次针对一个子带进行迭代过程,迭代过程从系统带宽的一端开始并且穿过朝向系统带宽的另一端。对于第一个SVD实施例,对于除了第一个子带之外的每个子带k,可以将针对前一个子带k-1所获得的最终解Vi(k-1)用作当前子带k的初始解,使得V0(k)=Vi(k-1)并且W0(k)=H(k)·V0(k)。对于第二个SVD实施例,对于除了第一个子带之外的每个子带k,可以将针对前一个子带k-1所获得的最终解Vi(k-1)和Ui(k-1)用作当前子带k的初始解,使得V0(k)=Vi(k-1)、U0(k)=Ui(k-1)并且>D0(k)=U0H(k)·H(k)·V0(k).>在两个实施例中,对于子带k,迭代过程都在初始解上操作,直到遇到用于该子带的终止条件为止。如上所述,也可以将该概念用在时间上或者频率和时间上。

图4示出了用于使用雅可比旋转对矩阵进行分解的过程400。以多个复数值雅可比旋转矩阵对第一个复数值矩阵进行多次雅可比旋转迭代(方框412)。第一个矩阵可以是信道响应矩阵HH的相关矩阵、其为R,或者某些其它矩阵。雅可比旋转矩阵可以是Tpq以及/或者某些其它矩阵。对于每次迭代,可以基于第一个矩阵构成子矩阵,并且可以对子矩阵进行分解以便获得该子矩阵的本征向量,并且用该本征向量构成雅可比旋转矩阵,并且将雅可比旋转矩阵用于对第一个矩阵进行更新。基于多个雅可比旋转矩阵得到第二个复数值矩阵(方框414)。第二个矩阵包含正交向量,并且可以是H的右奇异向量矩阵Vi或者R的本征向量矩阵Vi

对于本征值分解,如方框416中所确定的,可以基于多个雅可比旋转矩阵得到第三个本征值矩阵Di(方框420)。对于基于第一个SVD实施例或方案的奇异值分解,可以基于多个雅可比旋转矩阵得到第三个复数值矩阵Wi,可以基于第三个矩阵Wi得到具有正交向量的第四个矩阵并且还可以基于第三个矩阵Wi得到奇异值矩阵(方框422)。对于基于第二个SVD实施例的奇异值分解,可以基于多个雅可比旋转矩阵得到具有正交向量的第三个矩阵Ui和奇异值矩阵(方框424)。

图5示出了用于使用雅可比旋转对矩阵进行分解的装置500。装置500包括用于以多个复数值雅可比旋转矩阵对第一个复数值矩阵进行多次雅可比旋转迭代的模块(方框512)以及用于基于多个雅可比旋转矩阵得到第二个复数值矩阵Vi的模块(方框514)。

对于本征值分解,装置500还包括用于基于多个雅可比旋转矩阵得到第三个本征值矩阵Di的模块(方框520)。对于基于第一个SVD实施例的奇异值分解,装置500还包括用于基于多个雅可比旋转矩阵得到第三个复数值矩阵Wi、基于第三个矩阵得到具有正交向量的第四个矩阵并且基于第三个矩阵得到奇异值矩阵的模块(方框522)。对于基于第二个SVD实施例的奇异值分解,装置500还包括用于基于多个雅可比旋转矩阵得到具有正交向量的第三个矩阵Ui和奇异值矩阵的模块(方框524)。

3、系统

图6示出了MIMO系统600中的接入点610和用户终端650的实施例的方框图。接入点610装配了多个(Nap个)可以用于数据发送和接收的天线。用户终端650装配了多个(Nut个)可以用于数据发送和接收的天线。为简便起见,下列描述假定MIMO系统600使用时分双工(TDD),并且每个子带k的下行链路信道响应矩阵Hdn(k)是该子带的上行链路信道响应矩阵Hup(k)的互易,或者,Hdn(k)=H(k)并且Hup(k)=HT(k)。

在下行链路上,在接入点610处,发送(TX)数据处理器614从数据源612接收业务数据,并且从控制器/处理器630接收其它数据。TX数据处理器614对所接收的数据进行格式化、编码、交织和调制,并且生成数据符号,其为数据的调制符号。TX空间处理器620对数据符号进行接收,并且将数据符号与导频符号进行复用;如果可应用本征向量或者右奇异向量,就以本征向量或者右奇异向量进行空间处理;并且将Nap个发送符号流提供给Nap个发射机(TMTR)622a至622ap。每个发射机622对它的发送符号流进行处理并且生成下行链路调制信号。将来自发射机622a至622ap的Nap个下行链路调制信号分别从天线624a至624ap进行发送。

在用户终端650处,Nut个天线652a至652ut对所发送的下行链路调制信号进行接收,并且每个天线652将所接收的信号提供给各自的接收机(RCVR)654。每个接收机654进行与发射机622所进行的处理互补的处理,并且提供被接收的符号。接收(RX)空间处理器660对从所有接收机654a至654ut接收的符号进行空间匹配滤波,并且提供被检测出的数据符号,其为对由接入点610所发送的数据符号的估计。RX数据处理器670进一步对被检测出的数据符号进行处理(例如:符号解映射、解交织和解码),并且将被解码的数据提供给数据宿672和/或控制器/处理器680。

信道处理器678对所接收的导频符号进行处理,并且为每个感兴趣的子带提供下行链路信道响应估计。处理器678和/或680可以使用这里所描述的技术对每个矩阵进行分解,以便获得是对用于下行链路信道响应矩阵H(k)的V(k)和(k)的估计。如表1中所示,处理器678和/或680可以基于得到用于每个感兴趣子带的下行链路空间滤波矩阵Mdn(k)。处理器680可以将Mdn(k)提供给RX空间处理器660用于下行链路匹配滤波,并且/或者将提供给TX空间处理器690用于上行链路空间处理。

用于上行链路的处理与用于下行链路的处理可以是相同的或者不同的。TX数据处理器688对来自数据源686的业务数据以及来自控制器/处理器680的其它数据进行处理(例如:编码、交织和调制),将其与导频符号进行复用,并且TX空间处理器690以用于每个感兴趣子带的进一步对其进行空间处理。发射机654a至654ut对来自TX空间处理器690的发送符号进行进一步处理,以便生成Nut个上行链路调制信号,经由天线652a至652ut对其进行发送。

在接入点610处,天线624a至624ap对上行链路调制信号进行接收,并且接收机622a至622ap对其进行处理,以便生成针对上行链路传输的接收符号。RX空间处理器640对所接收的数据符号进行空间匹配滤波,并且提供被检测出的数据符号。RX数据处理器642进一步对被检测出的数据符号进行处理,并且将被解码的数据提供给数据宿644和/或控制器/处理器630。

取决于上行链路导频被发送的方式,信道处理器628对所接收的导频符号进行处理,并且为每个感兴趣的子带提供对HT(k)或U(k)的估计。处理器628和/或630可以使用这里所描述的技术对每个矩阵进行分解,以便获得处理器628和/或630还可以基于为每个感兴趣的子带得到上行链路空间滤波矩阵Mup(k)。处理器680可以将Mup(k)提供给RX空间处理器640用于上行链路空间匹配滤波,并且/或者将提供给TX空间处理器620用于下行链路空间处理。

控制器/处理器630和680分别对在接入点610和用户终端650处的操作进行控制。存储器632和682分别为接入点610和用户终端650存储数据和程序代码。处理器628、630、678、680和/或其它处理器可以进行信道响应矩阵的本征值分解和/或奇异值分解。

可以通过各种方式实现这里所描述的矩阵分解技术。例如,可以以硬件、固件、软件或者其组合来实现这些技术。对于硬件实现,可以在一个或多个专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理器件(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、其它设计为实现这里所描述的功能的电子单元、或者其组合内实现用于进行矩阵分解的处理单元。

对于固件和/或软件实现,可以以执行这里所描述的功能的模块(例如:程序、函数等)来实现矩阵分解技术。可以将软件代码存储在存储器(例如,图6中的存储器632或682)中,并且通过处理器(例如,处理器630或680)来执行该软件代码。可以在处理器内部或者处理器外部实现存储器单元。

这里所包括的标题用于参考并且帮助对某些章节进行定位。这些标题不是想要限制其下所描述的概念的范围,并且这些概念在贯穿整个说明书的其它章节中具有适用性。

提供了已公开实施例的上述说明,以便使本领域的任何技术人员都能够实现或使用本发明。这些实施例的各种修改对本领域的技术人员来说将是显而易见的,并且在不脱离本发明的精神或范围的情况下,可以将这里定义的一般原理应用到其它实施例。因此,本发明并不是要被限制于这里所示的实施例,而是要符合与这里公开的原理和新颖特征相一致的最宽范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号