[发明专利]一种精确求解实数格逐次最小量问题的方法及系统有效
申请号: | 201510439709.6 | 申请日: | 2015-07-24 |
公开(公告)号: | CN105119692B | 公开(公告)日: | 2019-04-05 |
发明(设计)人: | 丁丽琴;汪洋;马鲁娟;张继良 | 申请(专利权)人: | 哈尔滨工业大学深圳研究生院 |
主分类号: | H04L1/00 | 分类号: | H04L1/00 |
代理公司: | 深圳市科吉华烽知识产权事务所(普通合伙) 44248 | 代理人: | 于标 |
地址: | 518000 广东省深*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供了一种精确求解实数格逐次最小量问题的方法及系统。本发明的有益效果是:本发明精确求解实数格逐次最小量问题的方法当应用到MIMO无线通信系统的迫整线性接收机中时,这个方法能够找到最优的系数矩阵,从而确保迫整线性接收机能够获得最好的接收性能。与现有的精确求解方法相比,本发明的方法避免了穷举,并且通过子算法Initialization对球解码搜索过程中找到的中间结果进行了充分地利用,因此本发明的方法能够极大地降低计算复杂度和对存储的要求,因此是一种更加实际可行的算法。 | ||
搜索关键词: | 一种 精确 求解 实数 逐次 小量 问题 方法 系统 | ||
【主权项】:
1.一种精确求解实数格逐次最小量问题的方法,其特征在于,包括如下步骤:第一步:对给定的生成矩阵进行LLL(Lenstra‑Lenstra‑Lovász)规约,把规约得到的新基直接赋给G,把规约得到的一个单模矩阵赋给T;第二步:对G进行QR分解,得到G=QR;构造集合CS0={eidx(1),eidx(2),...,eidx(m)},CSW0={||gidx(1)||2,||gidx(2)||2,...,||gidx(m)||2},和三个空集CS、CSW和CSO;m表示实数格的维度,也就是生成矩阵G的列向量个数;idx(k),1≤k≤m,1≤idx(k)≤m,表示G中第k短的基向量的索引,gidx(k)表示G中第k短的基向量,||gidx(k)||表示gidx(k)的长度;表示的第idx(k)个标准基;第三步:对于k=1,2,...,m,依次进行下述操作:(1)利用子算法Initialization确定W0、初始的uk、u和o;(2)利用子算法GSVP找到系数向量uk并更新CS、CSW和CSO;第四步:返回U←T·[u1u2…um];该精确求解实数格逐次最小量问题的方法应用到MIMO无线通信系统的迫整线性接收机中时,由等效实系统的信道矩阵发射功率P以及发射天线数量Nt获得实数格生成矩阵G的过程为:通过Cholesky分解得到其中是一个下三角阵,将LT作为生成矩阵G;求出实数格也就是的逐次最小量问题的精确解后,由精确解获取最优矩阵A及BIF的过程为:将上述第四步中得到的整数系数矩阵U作为A,并计算得出最优映射矩阵所述子算法GSVP包括如下步骤:步骤1:k←1,uk←uk+ok,ok←‑ok‑sgn*(ok);步骤2:计算若Wnew<W0,执行步骤3,否则执行步骤5;步骤3:若k≠1,则令k←k‑1,Wk←Wnew,ok←sgn*(ck‑uk);若k=1,执行步骤4;步骤4:计算K←rank([u1…uk‑1u]),若K=k,则令uk←u,W0←Wnew,并将此时的uk、W0和o分别作为最后一个元素存储在CS、CSW和CSO中,接着令k←k+1,uk←uk+ok,ok←‑ok‑sgn*(ok),返回步骤2;若K≠k,则令uk←uk+ok,ok←‑ok‑sgn*(ok)并返回步骤2;步骤5:若k=m,输出uk,CS、CSW和CSO,终止程序;若k≠m,则令k←k+1,uk←uk+ok,ok←‑ok‑sgn*(ok)并返回步骤2;步骤1中,ok表示的是子算法GSVP进行球解码搜索时偏置向量o=[o1,o2,...,om]T中的第k个元素;步骤2中,表示第k层以前的累积权重,表示第k层的局部权重,其中vk是格向量v=Ru的第k个元素,vk=rk,k(uk‑ck),其中步骤3中,rk,l表示的是上三角矩阵R中位于第k行、第l列上的元素,1≤k≤l≤m;在所述子算法Initialization中,如果|CS|≤1,则计算rank([u1…uk‑1CS0(1)]):若结果为k,就令uk←CS0(1),W0←CSW0(1),u←0m×1,o←1m×1,并且令CS←{uk},CSW←{W0},CSO←{o},最后从CS0和CSW0中删除第1个元素;如果结果不为k,那么从CS0和CSW0中删除第1个元素后重复上述操作,直至找到满足条件的初始值;重复上述操作指的是再次计算rank([u1…uk‑1CS0(1)])并判断结果是否为k;满足条件指的就是满足rank([u1…uk‑1CS0(1)])=k这个条件;在所述子算法Initialization中,如果|CS|≥2,则计算rank([u1…uk‑1CS(end‑1)]):如果结果为k,那么令uk←CS(end‑1),W0←CSW(end‑1),u←CS(end),o←CSO(end),并从CS、CSW和CSO中删除最后一个元素;而如果结果不为k,那么从CS、CSW和CSO中删除最后一个元素后重复上述操作,直至找到满足条件的初始值,或者直到CS中的元素个数少于两个;重复上述操作指的是计算rank([u1…uk‑1CS(end‑1)])并判断结果是否为k;满足条件指的是满足rank([u1…uk‑1CS(end‑1)])=k的条件。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工业大学深圳研究生院,未经哈尔滨工业大学深圳研究生院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510439709.6/,转载请声明来源钻瓜专利网。