一種基于按需se枚舉的復(fù)數(shù)域球解碼方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種基于按需SE枚舉的復(fù)數(shù)域球解碼方法 及系統(tǒng)。
【背景技術(shù)】
[0002] 格(lattice)的理論是幾何數(shù)論中的經(jīng)典研究領(lǐng)域。最短向量問題(shortest vector problem,SVP)是格的一個(gè)基本計(jì)算問題,在基于格的密碼體制中起著重要的 作用,同時(shí)也是解決格的其他基本計(jì)算問題以及一些格基規(guī)約算法的基本組成模塊, 例如最近向量問題(closest vector problem, CVP)、最短獨(dú)立向量組問題(shortest independent vectors problem,SIVP)、連續(xù)最小值問題(successive minima problem, SMP)、Hermite-Korkine-ZolotarefT(HKZ)規(guī)約及 Minkowski 規(guī)約等。
[0003] 傳統(tǒng)上針對格的研究都是在實(shí)數(shù)域上開展的,但是隨著格理論在無線通信系統(tǒng)中 得到了越來越多的應(yīng)用,格理論被逐步擴(kuò)展到了復(fù)數(shù)域,并且人們發(fā)現(xiàn)直接工作在復(fù)數(shù)域 上的算法能夠有效地提高計(jì)算效率。格理論在無線通信系統(tǒng)中應(yīng)用的例子包括用球解碼算 法來實(shí)現(xiàn)多輸入多輸出(Multiple-Input Multiple-Output,ΜΙΜ0)無線通信系統(tǒng)的極大似 然接收、用格基規(guī)約來提升M頂0系統(tǒng)低復(fù)雜度接收機(jī)的性能、通過解決SIVP或SMP為一種 新型的迫整(integer-forcing,IF)MIM0接收機(jī)提供最優(yōu)的系數(shù)矩陣、以及通過HKZ規(guī)約來 為結(jié)合了連續(xù)干擾消除的IF MHTO接收機(jī)提供最優(yōu)的系數(shù)矩陣,等等。因此,針對這些MMO 接收機(jī),我們希望構(gòu)建直接工作在復(fù)數(shù)域上的格基規(guī)約算法或者用以解決SIVP等問題的 算法,那么就需要首先能夠構(gòu)造復(fù)數(shù)域上的SVP算法。
[0004] 針對實(shí)數(shù)域格的SVP可以用一類被稱為球解碼(sphere decoding)的樹搜索 算法有效地解決。為了簡要介紹這類算法,首先我們給出格的定義:一個(gè)在η維實(shí)數(shù) 域上的格是一組線性獨(dú)立的基向量 gl,...,gni的全部整數(shù)系數(shù)線性組合的集合,記為:
基向量的個(gè)數(shù)m也稱為這個(gè)格的秩,如果m = n,就稱這個(gè)格是滿 秩的。不失一般性地,我們假設(shè)格是滿秩的。此外,稱矩陣G= [gl g2-gj為這個(gè)格的生成 矩陣,上述格也稱為由G生成的,記為£(G)。如果得到了 G的QR分解:G = QR,其中Q是一 個(gè)正交矩陣,R是一個(gè)對角元素為正的上三角陣,就能得到與Z(G)等價(jià)的一個(gè)格:/:(R), 因?yàn)榍罢呖梢哉J(rèn)為是后者通過在空間中的旋轉(zhuǎn)得到的。因而C(G)上的基本計(jì)算問題也等 價(jià)于AR)上的基本計(jì)算問題。
[0005] £_)中的任意一個(gè)向量者P能夠用一個(gè)線性方程來唯一表示:V = Rz,其中z = [Z1,…,V的整數(shù)系數(shù)向量。C(R)的SVP的目標(biāo)是找到C(R)中的一個(gè)最短非零向 量,也可以理解為尋找一個(gè)非零的系數(shù)向量z使彳4
盡可能的小,Vk代表的 是V的第k個(gè)元素。利用R的上三角特性,Vk可以表示為Vk= rk,k(zk-ck),其中的 [0006]
(1 )
[0007] 完全由zk+1,. . .,zj夬定,且Cni= 0, r u代表的是R中位于第i行第j列的元素。
[0008] 球解碼的基本做法是,假如知道C(R)的最短非零向量的長度的平方一定小于一 個(gè)值,假設(shè)為W。,那么最短非零向量的系數(shù)可以通過構(gòu)造一個(gè)m層的樹搜索結(jié)構(gòu),其最頂層 對應(yīng)Zni,最底層對應(yīng)Z1,自上而下地采用深度優(yōu)先的方式,在限制條件
[0009]
(2)
[0010] 之下對&& = !11,111-1,...,1)可能的候選整數(shù)進(jìn)行搜索。上式中
[0011]
(3)
[0012] 表示的是k層之前的累積權(quán)重,
[0013]
(4)
[0014] 也就是說,Z1^值應(yīng)在(c k-yk, ck+yk)這個(gè)區(qū)間內(nèi)的整數(shù)點(diǎn)中進(jìn)行搜索。針對這 個(gè)問題,C. P. Schnorr和M. Euchner提出了一種非常有效的枚舉方法,即,按照到C1Jii離由 近到遠(yuǎn)的順序?qū)@些整數(shù)點(diǎn)進(jìn)行搜索,由此保證最先找到的格向量的長度較短,并且這種 搜索可以通過非常簡單的走Z字形的方法來實(shí)現(xiàn),如圖1所示。因此,相對于從單純左至右 或者從右至左的搜索,這種搜索方法的效率要高得多。這種搜索方法就稱為SE枚舉法。一 旦我們找到一個(gè)長度比^小的格向量,那么就用這個(gè)格向量的長度作為新的^,再 繼續(xù)進(jìn)行搜索。從幾何角度來看,這種搜索方法相當(dāng)于是在一個(gè)以原點(diǎn)為球心,#為半 徑的m維球體中進(jìn)行搜索,因此也叫做球解碼。如果在當(dāng)前的球體中再也找不到長度比當(dāng) 前的半徑更小的格向量時(shí),搜索終止并返回最后找到的那個(gè)向量作為SVP的解。只要初始 選擇的W。是合理的,那么這種方法就能保證一定能夠找到SVP的解。
[0015] 現(xiàn)在我們考慮復(fù)數(shù)域上的格的SVP問題。復(fù)數(shù)格的定義與實(shí)數(shù)格的定 義基本一致,但是對于復(fù)數(shù)格,它的基向量 gl,...,gni是在復(fù)數(shù)域上線性獨(dú)立的一 組向量,而格向量的系數(shù)變成了高斯整數(shù),即:對于1彡k彡m,% e Zm,其中
:其生成矩陣的QR分解G = QR中,Q是一個(gè)酉 矩陣,R是一個(gè)對角元素為正實(shí)數(shù),其他元素為復(fù)數(shù)的上三角陣。復(fù)數(shù)格?((?)的SVP問題 也等效為復(fù)數(shù)格Z(R)上的SVP問題,對SVP的建模與之前給出的實(shí)數(shù)格SVP問題也是一 致的,不同點(diǎn)在于,式(2)表示的不再是一個(gè)一維的區(qū)間,而是一個(gè)位于二維平面的圓形區(qū) 域,即:以CkS圓心、丫,為半徑的圓的內(nèi)部區(qū)域。我們?nèi)匀幌M凑誗E枚舉法所規(guī)定的, 對位于這個(gè)圓內(nèi)的高斯整數(shù)點(diǎn)按照距離C k由近到遠(yuǎn)的順序進(jìn)行搜索。但由于在二維平面 上計(jì)算整數(shù)點(diǎn)到ck的距離并不像在一維軸上那么簡單,因此一直沒有一種類似Z字形搜索 的簡單有效的方式來控制二維平面上搜索的進(jìn)行。所以現(xiàn)有技術(shù)中所采用的一般是計(jì)算出 滿足式(2)的全部整數(shù)點(diǎn),再計(jì)算出它們到ck的距離,然后按照距離大小進(jìn)行排序,再按照 排序結(jié)果進(jìn)行搜索。這種要求窮舉的方法使得SE枚舉法失去了按需進(jìn)行的重要特性,帶來 了很多不必要的計(jì)算,降低了球解碼算法的效率。
[0016] 而另一種解決復(fù)數(shù)格SVP的做法是把復(fù)數(shù)格的問題轉(zhuǎn)移到等效的實(shí)數(shù)格上去。具 體來說,由于格的計(jì)算問題從根本上來說是關(guān)于線性方程的問題,復(fù)數(shù)格£((?)中的一個(gè) 向量V = Gz,其中V e Cw,:: G e C"_ , ζ e 可以展開成如下的實(shí)數(shù)域上的線性方 程
[0017]
P)
[0018] 其中輯表示取實(shí)部,3表示取虛部。因此,復(fù)數(shù)格Z(G)的SVP的解可以通過解決 實(shí)數(shù)格£(Gf )的SVP來獲得,其中t代表的就是上式中的2mX 2m的實(shí)矩陣。但此時(shí)實(shí)數(shù) 域的球解碼構(gòu)造的是一個(gè)2m層的搜索樹,由于搜索深度的加倍,導(dǎo)致了搜索速度的降低和 復(fù)雜度的增加。
【發(fā)明內(nèi)容】
[0019] 為了解決現(xiàn)有技術(shù)中的問題,本發(fā)明提供了一種基于按需SE枚舉的復(fù)數(shù)域球解 碼方法。
[0020] 本發(fā)明提供了一種基于按需SE枚舉的復(fù)數(shù)域球解碼方法,包括如下步驟:
[0021] 第一步,對G進(jìn)行QR分解,得到G = QR;找到R的最短列向量,把它的索引記為I、 長度的平方記為W。,并令i為Effi的第i個(gè)標(biāo)準(zhǔn)3
;令z - Onixi,
[0022] 第二步,分別根據(jù)式
計(jì)算出γη, zm(R'L),zm(R' U),zm(I'L)和 z并依次執(zhí)行子程序 Create