MIMO檢測中 Zero Forcing 算法比 ML 差的思考
(錄制的視頻在:
1) https://www.bilibili.com/video/BV1aL411S7ez/
2)https://www.bilibili.com/video/BV1TV4y1Q7yw/ )
MIMO 檢測中, maximum likelihood (ML)? 是最優(yōu)的檢測,其數(shù)學表達式為:
?表示星座圖的集合.? Y 是接收到的數(shù)據(jù).
而 zero forcing (ZF) 是基于下面這個思想:
公式 (2) 與公式 (1) 的區(qū)別在于對? X? 的限制,公式 (1) 中的 X 要在調(diào)制的 constellation 星座圖的點中選擇,而公式 (2) 沒有這個限制,可以自由選擇,顯然公式 (2) 的解會偏離公式 (1) 的解。
公式 (2) 的解,再用 maximum likelihood 方式進行解調(diào):
由公式 (2) 得到的最優(yōu)解為(當 H 是方陣且可逆):
將 (4) 代入 (3) 有:
這里假定 H 是方陣且可逆的,則 H 的逆矩陣也可以做 SVD 分解:
則公式 5 中的:
我們把? 看成一個向量,則矩陣? U 因為是單位正交矩陣,所以,是一個剛性旋轉(zhuǎn),不改變被作用的向量的長度,因此 公式 (7) 可以繼續(xù)推導為:
公式 (8) 中,我們把? Y- HX? 看成一個向量,記為 Z,則?? 是對這個向量 Z 做旋轉(zhuǎn),不改變向量長度,旋轉(zhuǎn)后的向量記為
, 則?
矩陣,是對向量各個分量進行縮放:
情況一: 所有特征值都相等
當? 時,公式 (8) 可以寫成:
因為? 是單位正交的矩陣,因此,是一個剛性旋轉(zhuǎn),不改變后面向量的長度,因此公式 (9) 可以寫成:
這種情況下, Zero Forcing 算法就與 Maximum Likelihood 算法的性能一致。
情況二:噪聲非常小,趨近于 0
那么公式 (8) 中,一定能找到一個 X 向量,使得? Y - HX 為 0 向量,因為是 0 向量,所以,這個就是最小值,不可能找到另外一個向量 X' ,使得? (8) 的結(jié)果比 0 小。所以,在噪聲為 0 的情況下,Zero Forcing 算法就與 Maximum Likelihood 算法的性能一致。
情況三:特征值不全都相等,也含有噪聲
則公式 (8) 可以寫成:
公式 (11) 中第一個等號那里,相當于對向量? Y-HX 先做旋轉(zhuǎn),然后再在各個維度上做縮放,例如都是都是逆時針旋轉(zhuǎn)一個固定角度,兩個維度分別是放大三倍和縮小一倍(以二維向量為例子,方便畫圖理解),則不同的向量,即使長度相同,但是角度不同,經(jīng)過旋轉(zhuǎn)和縮放后,長度將會不同.
下圖藍色是初始向量,旋轉(zhuǎn)? 后變成綠色向量,然后經(jīng)過 X 軸放大 三倍, Y 軸縮小 1/2 ,變成右邊紫色向量。

用相同的旋轉(zhuǎn)和縮放,對下圖藍色初始向量進行操作,得到右邊紫色向量。

從上面兩個實例可以看出,旋轉(zhuǎn)縮放前,第一個圖的原始向量要比第二個圖的原始向量要短,但是做了同樣的旋轉(zhuǎn)縮放后,第一個圖的結(jié)果向量反而比第二個圖的結(jié)果向量要長,可見,旋轉(zhuǎn)縮放后,會改變向量長度的大小關(guān)系,進而影響 Zero Forcing 算法達不到 Maximum Likelihood 算法的效果,即可能找到的不是最優(yōu)解。
現(xiàn)在我們來對比一下公式 (1) 和公式 (5) 中的第二行,為了討論方便,我都列在這里:
這兩個公式看起來很像,都是在 X 的所有可能取值中進行遍歷,找對應向量長度的最小值,但是,從幾何意義上,這兩者有本質(zhì)性的區(qū)別,我們接下來分析一下,并且能看出來? Zero Forcing 算法為什么比 Maximum Likelihood 算法的性能要差了。
我們以 H 矩陣是方陣且可逆的, H 做 SVD 分解為:
其中 U ,V 都是單位正交矩陣,在幾何上就是對向量做旋轉(zhuǎn),而? 是對角矩陣,對角線上的元素是其特征值。
公式 (12) 的含義是,發(fā)送的某個特定數(shù)據(jù),經(jīng)過 H 矩陣作用,然后加高斯噪聲,得到的結(jié)果是 Y,然后遍歷所有 X 的可能取值,對每個取值同樣做 H 矩陣的作用,然后與收到的 Y 比較,最近的那個就是最佳估計。
公式 (13) 的含義,是收到的數(shù)據(jù) Y? (發(fā)送的某個特定數(shù)據(jù),經(jīng)過 H 矩陣作用,然后加高斯噪聲,得到的結(jié)果是 Y,? Y = HX + W) 通過 H 的反作用回到發(fā)送時的情況,然后再與 X 的各種取值進行比較。那么這個反作用的時候,是把噪聲 W 也反作用了。本來噪聲在各個天線上(體現(xiàn)在空間中的各個維度上),是同性分布的,即相同的概率分布,但是經(jīng)過 H 的反作用后,噪聲就會有的被放大,有的被縮小,導致各個維度上的概率分布是不同的。
我們以 2x2 MIMO 為例子,用 BPSK 調(diào)制,那么每根天線上發(fā)送的要么是 +1, 要么是 -1,則兩根天線上發(fā)的數(shù)據(jù)就有四種組合,我們把在某個時刻兩個天線上發(fā)送的數(shù)據(jù)看成一個向量,則這個向量是二維的,那么我們就可以在二維空間上來理解.
那么,我們發(fā)送的向量,在二維空間中,只有四個向量,分別在四個象限的中間點上,以 橫坐標為第一個維度,縱坐標為第二個維度,則四個向量在二維空間中的坐標分別為 [+1,+1],? [-1,+1], [-1, -1], [+1, -1]. 如下圖所示,以先旋轉(zhuǎn)一個角度,再橫坐標放大為原來的 3 倍,縱坐標縮小為原來的 1/2, 然后再做已給旋轉(zhuǎn)。我們來看公式 (12)? 和 (13) 對應的效果。

旋轉(zhuǎn)拉伸之后的

原始噪聲的分布

反變換之后的噪聲分布

下圖是仿真結(jié)果,用 4x4 的 MIMO.
