预编码是什么?—— 从迫零(ZF)开始
本系列第二篇,我们从最经典的迫零预编码出发,正式进入预编码的世界。
对应论文:“Mitigating Hardware Impairments in Multi-User Multi-Layer MIMO Systems via Weighted Fusion Precoding” (Zixia Shang, IEEE CL 2026)
论文链接:https://ieeexplore.ieee.org/abstract/document/11498349/
📌 引言:为什么从 ZF 开始?
在第一节中,我们完成了从 SISO 到 MU-MIMO 的认知搭建。我们知道了:
- MIMO 系统通过空间维度提供了分集增益和复用增益;
- 多用户 MIMO(MU-MIMO)的核心挑战是多用户干扰(MUI) ;
- 下行链路必须通过预编码在发射端对信号进行预处理,才能让每个用户在不受其他用户干扰的情况下正确接收信号。
现在问题来了:预编码到底是怎么做到的?
这就好比一个交响乐团的指挥。乐团里有多个乐手(发射天线),要同时为不同的听众(用户)演奏不同的旋律(数据)。指挥(预编码算法)必须精心安排每个乐手的演奏强度和相位,让每个听众听到的主要是自己想听的旋律,而其他旋律在传到这个听众耳中时恰好相互抵消。
迫零(Zero-Forcing, ZF)预编码,就是所有预编码算法中最直接、最“暴力”的一种——它试图把所有干扰“强行归零” 。
选择 ZF 作为我们讲解预编码的第一站,有四个充分理由:
- 思想最直观:ZF 的核心逻辑——消除所有干扰——非常容易理解,不需要复杂的数学背景。
- 数学最经典:ZF 的数学形式(矩阵伪逆)是线性代数在通信中最优雅的应用之一。
- 承上启下:ZF 是理解 RZF(正则化迫零)和 WMMSE 的必经之路。不理解 ZF,就无法理解后续所有改进方案为什么存在。
- 论文的直接引用:论文将 ZF 列为首要的基预编码器之一[reference:1],并在仿真中将其作为重要对比基准[reference:2]。
准备好了吗?我们从最根本的问题开始。
一、问题的本质:多用户干扰从何而来?
1.1 回顾 MU-MIMO 下行链路
考虑一个简单的 MU-MIMO 下行场景:基站有 ( N_t ) 根发射天线,同时服务 ( K ) 个单天线用户(为简化推导,我们先假设每个用户只有 1 根天线;多天线用户的情况会在后续推广)。
设用户 ( k ) 的信道向量为 ( \mathbf{h}_k \in \mathbb{C}^{1 \times N_t} )(下行链路中,从 ( N_t ) 根发射天线到用户 ( k ) 的单根接收天线的信道增益)。基站要同时向 ( K ) 个用户发送数据符号 ( s_1, s_2, \ldots, s_K )。
基站的发射信号是这 ( K ) 个数据符号经过预编码后的叠加:
x = ∑ i = 1 K w i s i \mathbf{x} = \sum_{i=1}^{K} \mathbf{w}_i s_i x=i=1∑Kwisi
其中 ( \mathbf{w}_i \in \mathbb{C}^{N_t \times 1} ) 是用户 ( i ) 的预编码向量(或称为波束成形向量)。
用户 ( k ) 的接收信号为:
y k = h k x + n k = h k w k s k + ∑ i ≠ k h k w i s i + n k y_k = \mathbf{h}_k \mathbf{x} + n_k = \mathbf{h}_k \mathbf{w}_k s_k + \sum_{i \neq k} \mathbf{h}_k \mathbf{w}_i s_i + n_k yk=hkx+nk=hkwksk+i=k∑hkwisi+nk
这个公式揭示了三部分:
- 期望信号:( \mathbf{h}_k \mathbf{w}_k s_k ) —— 发给用户 ( k ) 自己的信号。
- 多用户干扰(MUI) :( \sum_{i \neq k} \mathbf{h}_k \mathbf{w}_i s_i ) —— 发给其他用户的信号“泄漏”到了用户 ( k ) 的接收机里。
- 噪声:( n_k ) —— 热噪声。
用户 ( k ) 的信干噪比(SINR)为:
SINR k = ∣ h k w k ∣ 2 ∑ i ≠ k ∣ h k w i ∣ 2 + σ 2 \text{SINR}_k = \frac{|\mathbf{h}_k \mathbf{w}_k|^2}{\sum_{i \neq k} |\mathbf{h}_k \mathbf{w}_i|^2 + \sigma^2} SINRk=∑i=k∣hkwi∣2+σ2∣hkwk∣2
分母中的求和项就是多用户干扰的功率。 如果这个干扰很大,用户 ( k ) 的信号就会被“淹没”,速率急剧下降。
1.2 预编码的目标
预编码的目标,就是设计一组预编码向量 ( {\mathbf{w}_1, \mathbf{w}_2, \ldots, \mathbf{w}K} ),在满足发射功率约束 ( \sum{i} |\mathbf{w}i|^2 \le P{\max} ) 的前提下,最大化所有用户的速率和。
但直接优化这个目标是非常困难的——它是一个非凸问题。ZF 提供了一种闭式解:不绕弯子,直接要求所有多用户干扰严格为零。
二、ZF 的核心思想:把所有干扰“迫”到零
2.1 正交性条件
ZF 的核心要求可以用一句话概括:发给用户 ( i ) 的信号,在用户 ( k )(( k \neq i ))的接收端必须完全消失。
数学上,这意味着预编码向量 ( \mathbf{w}_i ) 必须与所有其他用户的信道向量 ( \mathbf{h}_k )(( k \neq i ))正交:
h k w i = 0 , ∀ k ≠ i \mathbf{h}_k \mathbf{w}_i = 0, \quad \forall k \neq i hkwi=0,∀k=i
换句话说:
h k w i = 0 当 k ≠ i \mathbf{h}_k \mathbf{w}_i = 0 \quad \text{当 } k \neq i hkwi=0当 k=i
这个条件保证了一个用户的信号不会对其他任何用户产生干扰。在物理上,这相当于在发射端为每个用户生成了一个定向波束,这个波束指向目标用户的方向,但在所有其他用户的方向上形成了零陷(Null) ——信号强度为零。
2.2 写成矩阵形式
将所有用户的信道向量堆叠成一个矩阵:
H = [ h 1 T , h 2 T , … , h K T ] T ∈ C K × N t \mathbf{H} = [\mathbf{h}_1^T, \mathbf{h}_2^T, \ldots, \mathbf{h}_K^T]^T \in \mathbb{C}^{K \times N_t} H=[h1T,h2T,…,hKT]T∈CK×Nt
将所有用户的预编码向量堆叠成一个矩阵:
W = [ w 1 , w 2 , … , w K ] ∈ C N t × K \mathbf{W} = [\mathbf{w}_1, \mathbf{w}_2, \ldots, \mathbf{w}_K] \in \mathbb{C}^{N_t \times K} W=[w1,w2,…,wK]∈CNt×K
ZF 的正交性条件可以简洁地写成:
H W = D \mathbf{H} \mathbf{W} = \mathbf{D} HW=D
其中 ( \mathbf{D} ) 是一个对角矩阵(对角线元素非零,非对角线元素为零)。
这意味着什么呢?等效信道矩阵 ( \mathbf{H} \mathbf{W} ) 必须是对角矩阵。 也就是说,经过预编码之后,每个用户只看到自己的“等效信道增益”(对角线元素),而来自其他用户的信道增益(非对角线元素)全部为零。
2.3 ZF 预编码器的数学表达式
那么,什么样的 ( \mathbf{W} ) 能满足 ( \mathbf{H} \mathbf{W} = \mathbf{D} )?
最直接的想法是:取信道矩阵的伪逆(Pseudo-inverse) 。
当 ( N_t \ge K )(发射天线数不少于用户数)且 ( \mathbf{H} ) 行满秩时,ZF 预编码矩阵为:
W Z F = H H ( H H H ) − 1 \mathbf{W}_{ZF} = \mathbf{H}^H (\mathbf{H} \mathbf{H}^H)^{-1} WZF=HH(HHH)−1
这就是 ZF 预编码的核心公式。
你可能注意到,这个公式和我们在第一节提到的 ZF 表达式是一致的[reference:11]。它的推导过程如下:
我们希望 ( \mathbf{H} \mathbf{W} = \mathbf{I} )(即等效信道为单位矩阵,每个用户的信号被完美恢复,且无任何干扰)。两边右乘 ( (\mathbf{H} \mathbf{H}H){-1} \mathbf{H} ),得到:
W = H H ( H H H ) − 1 \mathbf{W} = \mathbf{H}^H (\mathbf{H} \mathbf{H}^H)^{-1} W=HH(HHH)−1
验证一下:
H W = H H H ( H H H ) − 1 = I \mathbf{H} \mathbf{W} = \mathbf{H} \mathbf{H}^H (\mathbf{H} \mathbf{H}^H)^{-1} = \mathbf{I} HW=HHH(HHH)−1=I
完美!等效信道变成了单位矩阵,所有干扰被彻底消除。
三、一个直观的几何解释
3.1 投影到零空间
ZF 预编码有一个非常优美的几何解释:每个用户的预编码向量,是目标用户的信道向量在所有其他用户信道向量张成的子空间的正交补空间(零空间)上的投影。
换句话说,( \mathbf{w}_i ) 必须同时满足:
- ( \mathbf{h}_i \mathbf{w}_i \neq 0 )(对目标用户有足够的信号增益);
- ( \mathbf{h}_k \mathbf{w}_i = 0, \forall k \neq i )(对所有其他用户完全无干扰)。
在数学上,( \mathbf{w}_i ) 属于所有其他用户信道向量张成的子空间的正交补空间:
w i ∈ Null ( [ h 1 T , … , h i − 1 T , h i + 1 T , … , h K T ] T ) \mathbf{w}_i \in \text{Null} \left( [\mathbf{h}_1^T, \ldots, \mathbf{h}_{i-1}^T, \mathbf{h}_{i+1}^T, \ldots, \mathbf{h}_K^T]^T \right) wi∈Null([h1T,…,hi−1T,hi+1T,…,hKT]T)
3.2 一个 2 用户 2 天线的简单例子
假设 ( N_t = 2 ),( K = 2 )。两个用户的信道向量分别为 ( \mathbf{h}_1 ) 和 ( \mathbf{h}_2 ),它们都是二维平面中的向量。
ZF 要求:
- ( \mathbf{w}_1 ) 必须与 ( \mathbf{h}_2 ) 正交(即 ( \mathbf{h}_2 \mathbf{w}_1 = 0 ));
- ( \mathbf{w}_2 ) 必须与 ( \mathbf{h}_1 ) 正交(即 ( \mathbf{h}_1 \mathbf{w}_2 = 0 ))。
在二维平面中,与一个非零向量正交的方向是唯一确定的(相差一个缩放因子)。所以 ( \mathbf{w}_1 ) 被唯一地确定为 ( \mathbf{h}_2 ) 的垂直方向,( \mathbf{w}_2 ) 被唯一地确定为 ( \mathbf{h}_1 ) 的垂直方向。
这就是 ZF 在 2 用户 2 天线场景下的几何直觉:每个用户的波束都“避开”了另一个用户的方向。
3.3 当用户数增加时
当 ( K > 2 ) 时,情况变得复杂。( \mathbf{w}_i ) 需要同时与 ( K-1 ) 个其他用户的信道向量正交。在 ( N_t ) 维空间中,这 ( K-1 ) 个向量张成一个子空间,其正交补空间的维度为 ( N_t - (K-1) )。
因此,ZF 可行的前提条件是:
N t ≥ K N_t \ge K Nt≥K
发射天线数必须不少于用户数。 如果 ( N_t < K ),那么 ( K-1 ) 个其他用户的信道向量可能张成整个 ( N_t ) 维空间,其正交补空间为零空间,不存在非零的 ( \mathbf{w}_i ) 能同时与所有其他用户正交。
这就是 ZF 对天线数量的基本限制。[reference:12]
四、ZF 的辉煌与阴影
4.1 辉煌之处:干扰的完美消除
在理想条件下(完美信道估计、无限精度计算),ZF 预编码能够彻底消除多用户干扰。
这意味着什么?
- 每个用户的 SINR 中,分母不再包含 MUI 项,只剩下热噪声。
- 接收端的设计被极大简化——用户甚至不需要做任何干扰抑制处理,只需要一个简单的匹配滤波器就能恢复信号。
- 在高信噪比(SNR)区域,ZF 的性能接近理论最优。[reference:13][reference:14]
这正是 ZF 能够成为 MU-MIMO 系统经典方案的原因。在 3GPP LTE 等标准中,ZF 预编码被广泛采用,因为它实现简单、性能可预期。
4.2 阴影之处:噪声增强(Noise Enhancement)
然而,完美的干扰消除是有代价的。这个代价就是噪声增强(Noise Enhancement) 。[reference:16][reference:17]
我们回头看看 ZF 预编码矩阵的表达式:
W Z F = H H ( H H H ) − 1 \mathbf{W}_{ZF} = \mathbf{H}^H (\mathbf{H} \mathbf{H}^H)^{-1} WZF=HH(HHH)−1
注意 ( (\mathbf{H} \mathbf{H}H){-1} ) 这一项。当信道矩阵 ( \mathbf{H} ) 的条件数(Condition Number) 很大时(即不同用户的信道高度相关,矩阵接近奇异),这个逆矩阵的范数会变得非常大。
这意味着什么?
预编码向量 ( \mathbf{w}_i ) 的范数 ( |\mathbf{w}_i| ) 会变得很大。 为了在特定方向形成深度零陷,发射端需要消耗巨大的功率。
但发射功率是有限的(( \sum |\mathbf{w}i|^2 \le P{\max} ))。如果某些用户的预编码向量范数特别大,就会挤占其他用户的功率预算。更糟糕的是,接收端的有效信号功率可能被削弱,而热噪声 ( n_k ) 不变,导致接收信噪比下降。
这就是“噪声增强”的本质:为了消除干扰,ZF 可能把有用的信号功率也“消耗”在了对抗病态信道上,相当于放大了噪声的影响。 [reference:18][reference:19]
4.3 一个具体的数值例子
假设 ( N_t = 2 ),( K = 2 ),两个用户的信道向量非常接近:
h 1 = [ 1 , 0.1 ] , h 2 = [ 1 , − 0.1 ] \mathbf{h}_1 = [1, 0.1], \quad \mathbf{h}_2 = [1, -0.1] h1=[1,0.1],h2=[1,−0.1]
这两个向量几乎是平行的(都沿着 x 轴方向),只是 y 分量有微小的差异。
计算信道矩阵:
H = [ 1 0.1 1 − 0.1 ] \mathbf{H} = \begin{bmatrix} 1 & 0.1 \\ 1 & -0.1 \end{bmatrix} H=[110.1−0.1]
计算 ( \mathbf{H} \mathbf{H}^H ):
H H H = [ 1.01 0.99 0.99 1.01 ] \mathbf{H} \mathbf{H}^H = \begin{bmatrix} 1.01 & 0.99 \\ 0.99 & 1.01 \end{bmatrix} HHH=[1.010.990.991.01]
这个矩阵的条件数很大(接近 100),意味着它几乎是奇异的。
计算 ( (\mathbf{H} \mathbf{H}H){-1} ):
( H H H ) − 1 ≈ [ 25.25 − 24.75 − 24.75 25.25 ] (\mathbf{H} \mathbf{H}^H)^{-1} \approx \begin{bmatrix} 25.25 & -24.75 \\ -24.75 & 25.25 \end{bmatrix} (HHH)−1≈[25.25−24.75−24.7525.25]
这个矩阵的元素数值很大(约 25)。因此,预编码矩阵 ( \mathbf{W} = \mathbf{H}^H (\mathbf{H} \mathbf{H}H){-1} ) 的范数也会很大。
最终结果是:为了在这两个几乎平行的信道方向之间制造出正交的波束,发射端需要消耗巨大的功率。在总功率受限的情况下,每个用户实际接收到的有用信号功率被严重削弱,而热噪声不变,有效 SINR 大幅下降。
4.4 低 SNR vs. 高 SNR 的权衡
噪声增强的后果在不同的 SNR 区域表现不同:
- 低 SNR 区域:热噪声是主要矛盾。ZF 的噪声增强会进一步恶化已经很低的有效 SNR,因此性能可能不如根本不抑制干扰的 MRT。[reference:20]
- 高 SNR 区域:干扰是主要矛盾。ZF 彻底消除了干扰,虽然牺牲了一部分信号功率,但总体性能优于不抑制干扰的方案。[reference:21]
这就是 ZF 的根本性权衡:用一部分信号功率(和抗噪声能力)换取干扰的完全消除。 在信道条件良好(用户间正交性好)时,这个交易是划算的;在信道条件恶劣(用户间高度相关)时,这个交易可能是亏本的。
五、从单天线用户到多天线用户:块对角化(BD)
5.1 多天线用户带来的新挑战
上面我们一直假设每个用户只有单根天线。但在论文的实际系统中,每个用户配备了 ( N_r ) 根接收天线[reference:22]。
当每个用户有多根天线时,事情变得更复杂了。用户 ( i ) 的接收信号是一个 ( N_r \times 1 ) 的向量:
y i = H i ∑ j = 1 K W j s j + n i \mathbf{y}_i = \mathbf{H}_i \sum_{j=1}^{K} \mathbf{W}_j \mathbf{s}_j + \mathbf{n}_i yi=Hij=1∑KWjsj+ni
其中 ( \mathbf{H}_i \in \mathbb{C}^{N_r \times N_t} ) 是用户 ( i ) 的信道矩阵,( \mathbf{W}_j \in \mathbb{C}^{N_t \times d} ) 是用户 ( j ) 的预编码矩阵(注意现在每个用户可以有多流,所以预编码是矩阵而不是向量)。
对用户 ( i ) 来说,来自用户 ( j )(( j \neq i ))的干扰是:
H i W j s j \mathbf{H}_i \mathbf{W}_j \mathbf{s}_j HiWjsj
要完全消除这个干扰,需要:
H i W j = 0 , ∀ j ≠ i \mathbf{H}_i \mathbf{W}_j = \mathbf{0}, \quad \forall j \neq i HiWj=0,∀j=i
也就是说,用户 ( j ) 的整个预编码矩阵 ( \mathbf{W}_j ) 必须位于所有其他用户信道矩阵的零空间中。
5.2 块对角化(Block Diagonalization, BD)
当每个用户有多根天线时,ZF 的推广称为块对角化(Block Diagonalization, BD) 。[reference:23]
BD 的目标是让等效信道矩阵 ( \mathbf{H} \mathbf{W} ) 成为块对角矩阵:
H W = [ H 1 W 1 0 ⋯ 0 0 H 2 W 2 ⋯ 0 ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ H K W K ] \mathbf{H} \mathbf{W} = \begin{bmatrix} \mathbf{H}_1 \mathbf{W}_1 & 0 & \cdots & 0 \\ 0 & \mathbf{H}_2 \mathbf{W}_2 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & \mathbf{H}_K \mathbf{W}_K \end{bmatrix} HW= H1W10⋮00H2W2⋮0⋯⋯⋱⋯00⋮HKWK
每个对角块 ( \mathbf{H}_i \mathbf{W}_i ) 是用户 ( i ) 的等效信道(尺寸为 ( N_r \times d )),非对角块全部为零。
BD 的实现需要构造每个用户的干扰信道矩阵:
H ~ i = [ H 1 T , … , H i − 1 T , H i + 1 T , … , H K T ] T \tilde{\mathbf{H}}_i = [\mathbf{H}_1^T, \ldots, \mathbf{H}_{i-1}^T, \mathbf{H}_{i+1}^T, \ldots, \mathbf{H}_K^T]^T H~i=[H1T,…,Hi−1T,Hi+1T,…,HKT]T
然后取 ( \tilde{\mathbf{H}}_i ) 的零空间,将 ( \mathbf{W}_i ) 限制在这个零空间中。
BD 的可行性条件是:
N t − ∑ j ≠ i N r ≥ d , ∀ i N_t - \sum_{j \neq i} N_r \ge d, \quad \forall i Nt−j=i∑Nr≥d,∀i
即发射天线数必须足够多,以容纳所有其他用户的接收天线维度加上本用户的数据流数。
5.3 论文中的 ZF 角色
在论文的融合预编码框架中[reference:24],ZF(以及 BD 的变体)被用作基预编码器之一。论文不依赖单一预编码方案,而是将 ZF 与 MRT、RZF、WMMSE 等方案通过优化权重进行融合[reference:25]。
为什么要把 ZF 放进融合池子里?
因为 ZF 在高 SNR、用户信道正交性好的场景下表现卓越[reference:26][reference:27]。把 ZF 作为基预编码器之一,融合算法可以在这些场景下给 ZF 分配更高的权重,从而充分利用其干扰抑制能力。而在低 SNR 或信道病态的场景下,融合算法可以降低 ZF 的权重,转向 MRT 或 RZF 等更稳健的方案[reference:28]。
这正是融合预编码的核心优势——不是在所有场景下都依赖 ZF,而是在 ZF 擅长的场景下启用它,在不擅长的场景下用其他方案补位。 [reference:29]
六、ZF 的局限与后续改进的动机
6.1 ZF 的三个根本局限
通过上面的分析,我们可以总结出 ZF 的三个根本局限:
| 局限 | 描述 | 后果 |
|---|---|---|
| 天线数限制 | 需要 ( N_t \ge \sum K \times d )(发射天线数不少于总数据流数)[reference:30] | 在大规模多用户场景下,天线需求巨大 |
| 噪声增强 | 信道病态时,预编码矩阵范数极大[reference:31] | 低 SNR 下性能严重下降[reference:32] |
| 对 CSI 敏感 | 依赖完美的信道状态信息 | CSI 误差会导致残留干扰 |
6.2 后续方案的改进方向
这些局限直接催生了后续的改进方案:
- 正则化迫零(RZF) :在 ZF 的伪逆中加入正则化项 ( \beta \mathbf{I} ),在干扰抑制和噪声增强之间取得平衡。这是 ZF 和 MRT 的“平滑过渡”。
- 最小均方误差(MMSE)预编码:与 RZF 在数学上等价,但从不同的角度(最小化 MSE)推导而来。
- WMMSE:通过迭代优化,在更复杂的多用户多流场景下逼近和速率最优。
这些方案都不是在“否定”ZF,而是在“扩展”ZF。 它们保留了 ZF 的核心思想(利用信道信息在发射端预处理信号),但通过引入额外的优化维度(正则化、迭代、加权),在更广泛的场景下获得了更好的性能。
这就像从“非黑即白”到“灰度调节”——ZF 只有“消除干扰”这一个极端选项,而 RZF 和 WMMSE 提供了“消除多少干扰”的连续调节能力。
七、ZF 与论文的融合预编码
7.1 ZF 作为基预编码器
在论文的融合预编码框架中,ZF 是 ( B ) 个基预编码器之一(( B ) 通常为 4 或 5)[reference:33]。最终的融合预编码是这些基预编码器的加权和[reference:34]:
V i , k ( α ) = ∑ b = 1 B α b V i , k ( b ) \mathbf{V}_{i,k}(\boldsymbol{\alpha}) = \sum_{b=1}^{B} \alpha_b \mathbf{V}_{i,k}^{(b)} Vi,k(α)=b=1∑BαbVi,k(b)
其中 ( \mathbf{V}_{i,k}^{(b)} ) 表示第 ( b ) 个基预编码器(如 ZF、MRT、RZF、WMMSE 等),( \alpha_b ) 是对应的融合权重。
```matlab
function [W] = ZF(H, P, K, S)
% ZF 预编码函数(迫零)
% 输入:
% H : 信道矩阵,尺寸为 (K*S) x Nt,每行对应一个数据流(用户或层)
% P : 总发射功率标量
% K : 用户数
% S : 每用户的数据流数(此处与论文中的 d 对应)
% 输出:
% W : 预编码矩阵,尺寸为 Nt x (K*S),每一列对应一个数据流的预编码向量
% 核心 ZF 预编码:取信道矩阵的伪逆
% W = H' * inv(H * H'); % 经典写法
W = H' / (H * H'); % 更简洁的 MATLAB 写法(右除)
% 功率归一化:保证总发射功率等于 P
W = W / norm(W, 'fro') * sqrt(P);
% 列归一化(可选):将每个数据流的预编码向量归一化为单位范数
% 这一步可以确保每个数据流等功率分配,但会破坏总功率约束,需谨慎使用
for i = 1 : K * S
W(:, i) = W(:, i) / norm(W(:, i));
end
end
7.2 ZF 在融合中的角色
在融合框架中,ZF 扮演的角色是 “极端干扰抑制者” :
- 优势场景:高 SNR、用户信道正交性好、CSI 精确。[reference:35][reference:36]
- 劣势场景:低 SNR、信道病态、CSI 有误差。[reference:37]
融合算法的任务就是通过优化权重 ( \boldsymbol{\alpha} ),让系统在不同的场景下“自动”选择最合适的基预编码器组合[reference:38]:
- 在高 SNR、信道正交性好的场景下,给 ZF 分配高权重。
- 在低 SNR 或信道病态的场景下,降低 ZF 的权重,增加 MRT 或 RZF 的权重。
7.3 为什么融合比“选最优”更好?
你可能会问:为什么不干脆在所有场景下都选择“当前最优”的那个单一预编码器?
答案是:“最优”是场景依赖的,而场景是连续变化的。 一个“最优”预编码器可能在某个 SNR 点下最优,但在另一个 SNR 点下就变成最差。融合通过连续调整权重,实现了平滑的场景适应,避免了“切换”带来的性能跳变。
论文的仿真结果[reference:39]清楚地展示了这一点:融合方案在所有 SNR 范围内、所有天线配置下、所有硬件损伤强度下,都一致地优于“单最优选择”方案。
八、小结与下节预告
8.1 核心要点回顾
今天我们完成了 ZF 预编码的完整剖析:
| 知识点 | 核心内容 |
|---|---|
| ZF 的核心思想 | 通过矩阵伪逆,让等效信道矩阵变为对角矩阵,彻底消除多用户干扰 |
| 数学表达式 | ( \mathbf{W}_{ZF} = \mathbf{H}H(\mathbf{H}\mathbf{H}H)^{-1} )[reference:41] |
| 几何解释 | 每个用户的预编码向量与其他所有用户的信道向量正交 |
| 可行性条件 | 发射天线数 ( N_t ) 必须不少于总数据流数[reference:43] |
| 核心优势 | 高 SNR 下干扰完全消除,性能接近理论最优[reference:44] |
| 核心缺陷 | 噪声增强——信道病态时预编码范数极大,低 SNR 下性能恶化[reference:45][reference:46] |
| 多天线推广 | 块对角化(BD),将每个用户的预编码限制在其他用户信道矩阵的零空间中[reference:47] |
| 在论文中的角色 | 作为基预编码器之一,在高 SNR、信道正交性好的场景下贡献干扰抑制能力[reference:48] |
8.2 关键公式速查
ZF 预编码矩阵(下行链路,单天线用户):
W Z F = H H ( H H H ) − 1 \mathbf{W}_{ZF} = \mathbf{H}^H(\mathbf{H}\mathbf{H}^H)^{-1} WZF=HH(HHH)−1
等效信道:
H W Z F = I \mathbf{H}\mathbf{W}_{ZF} = \mathbf{I} HWZF=I
接收信号(无干扰):
y k = s k + n k y_k = s_k + n_k yk=sk+nk
ZF 的功率代价(预编码范数):
∥ W Z F ∥ F 2 = tr ( ( H H H ) − 1 ) \|\mathbf{W}_{ZF}\|_F^2 = \text{tr}\left((\mathbf{H}\mathbf{H}^H)^{-1}\right) ∥WZF∥F2=tr((HHH)−1)
当 ( \mathbf{H}\mathbf{H}^H ) 接近奇异时,这个值很大 → 噪声增强。
8.3 下节预告:最大比传输(MRT)
在第三节中,我们将介绍与 ZF 完全“对立”的预编码方案——最大比传输(Maximum Ratio Transmission, MRT) 。
如果说 ZF 是“宁可牺牲信号功率也要消除干扰”,那么 MRT 就是“宁可忍受干扰也要最大化信号功率”。我们将看到:
- MRT 的数学表达式为什么那么简单(就是信道矩阵的共轭转置);
- MRT 在低 SNR 下为什么比 ZF 更好[reference:49];
- MRT 在大规模 MIMO 中为什么渐近最优;
- MRT 和 ZF 如何构成预编码设计的两个极端,以及 RZF 如何在这两个极端之间架起桥梁。
欢迎在评论区留言讨论,我们下节见!🚀


系列导航(共九节):
第一节:重温 MIMO 基础 —— 从 SISO 到 MU-MIMO ✅(已发布)
- SISO → SIMO → MISO → MIMO 演进、分集与复用增益、MU-MIMO 干扰本质、下行预编码必要性
第二节:预编码是什么?—— 从迫零(ZF)开始 ✅(已发布)
- ZF 核心思想(干扰迫零)、数学推导(矩阵伪逆 ( W_{ZF} = HH(HHH)^{-1} ))、几何解释(零空间投影)、噪声增强缺陷、多天线推广(BD 思想)、MATLAB 实现(ZF.m)
第三节:最大比传输(MRT)与匹配滤波(MF)—— 让信号“指哪儿打哪儿”
- MRT/MF 核心思想(最大化信号功率)、数学表达式 ( W_{MF} = H^H )、优缺点分析、大规模 MIMO 中的渐近最优性、ZF vs. MRT 极端对比、MATLAB 实现(MF.m)
第四节:正则化迫零(RZF)与 MMSE 预编码 —— ZF 与 MRT 的优雅折中
- RZF 动机(解决 ZF 噪声增强)、数学表达式 ( W_{RZF} = HH(HHH + \beta I)^{-1} )、正则化参数 ( \beta ) 的物理意义(退化为 ZF/MRT)、与 MMSE 的等价性、( \beta ) 的选择方法、MATLAB 实现(RZF.m、MMSE.m)
第五节:块对角化(BD)与信漏噪比(SLNR)预编码 —— 多天线多流用户的干扰管理
- BD 原理(块对角化消除用户间干扰)、零空间构造、可行性条件、SLNR 思想(最大化信号与泄漏噪声比)、闭式解与广义特征值分解、MATLAB 实现(BD.m、BD2.m、SLNR.m、SLNR2.m)
第六节:WMMSE 与 RWMMSE —— 从 MSE 最小化到和速率最大化
- WMMSE 核心洞察(和速率最大化 ⇔ 加权 MSE 最小化)、迭代算法三步走(接收机更新 → 权重更新 → 预编码更新)、RWMMSE 鲁棒扩展(抗 CSI 误差)、优缺点分析
第七节:硬件损伤 —— 从理想到现实的“降维打击”
- 硬件损伤来源(DAC/ADC 量化、PA 非线性、相位噪声)、Bussgang 分解核心思想、关键参数(量化增益 ( \alpha )、残余损伤因子 ( \kappa_{tx} ))、速率硬上限
第八节:系统建模 —— 把损伤“写进”数学公式
- 系统配置回顾(( N_t, I, K, d, N_r ))、接收信号完整表达式、干扰加噪声协方差矩阵 ( R_{\text{int+noise}} ) 逐项推导(论文公式 (1))、最坏噪声假设与可达速率下界(论文公式 (2))
第九节:融合预编码与优化算法 —— 从“选最优”到“加权组合”及仿真验证
- 原始问题困境(非凸、高维)、融合思路(基预编码器加权和 ( V_{i,k}(\alpha) = \sum_{b} \alpha_b V_{i,k}^{(b)} ))、问题降维与约束、平均工作点与泰勒展开、一阶梯度与二阶线性系统 ( A\alpha = b )、兜底启发式算法、四组仿真结果(CDF、vs. SNR、vs. 天线数、vs. 硬件损伤强度)、复杂度分析

被折叠的 条评论
为什么被折叠?



