MIMO检测-基于马尔科夫随机场的置信传播算法-非LLR形式
MIMO 检测(MIMO detection),是根据接收天线接收到的数据,估计发射天线发送的数据。当然,这个问题的前提是信道系数已经知道。 我们假设信道是平坦衰落的,即发送的信号乘以一个复数增益,就是接收到的数据。
MIMO 检测有很多种方法,这个文档,我们想讲一下基于马尔科夫随机场(Markov Random Field, MRF) 的置信传播(Belief Propagration, BP)算法。
由于每个接收的天线都能接收到所有发射天线来的信号,因此,在接收到的每个信号,都可以给出每个发送符号的概率信息。因此,如果把每个发射信号都各看成一种需要估计的东西,那么这些估计之间是相互依赖的,这种依赖关系,是由接收天线得到的数据建立起来的。我们构造的马尔科夫随机场概率图模型中,是看不到接收到的信号的,是隐藏在后面的。例如,一个四根发射天线四根接收天线的系统如图一,对应的马尔科夫随机场如图二。


我们来推导一下全概率公式,即全概率的后验概率
其中 x 是发送数据的列向量, y 是接收数据的列向量, H 是 Nr x Nt 的信道系数矩阵。若 n 是高斯白噪声信号构成的列向量,则:
那么
其中,因为 x 是与 H 无关的,且 x 各个元素的取值也是相互独立的,则:
现在来推导一下 :
给定 x 和 H 后,y 是一个均值为 Hx,协方差为 的 复高斯随机向量。
我们把 展开:
其中 表示取实部的意思。
将公式 (2) 代入 公式 (1):
因为接收信号 y 和噪声 都是已知的,因此,可以令:
则可以把公式 (3) 简写为:
根据矩阵乘法的一般推导公式(见附件),公式 (4) 可以展开为:
其中
另外需要注意,在矩阵展开时,又引入了一些常数,因此公式 (5) 中的常数与公式(4) 中的常数是不同的,因此,我加了一个撇号做标记,以示不同。
综合上面的推导,公式 (0) 可以写成:
令:
根据马尔科夫随机场概率模型的相关定理(此处需要补充细节),从 i 到 j 的消息为:
公式(7) 中需要注意的是上标 t,这个表示迭代的轮次。第 t 轮的所有消息的计算,都是基于 t-1 轮的消息,要把所有消息都计算完毕之后, t-1 轮的消息才没有用了,t 轮的消息才变成 t+1 轮的输入。
则 最终关于变量 的概率信息(置信度)正比于:
通过比较 与
的大小 ,可以对
做判决。
代码(Matlab)
仿真的结果:

附录一:矩阵公式的推导
在文中从公式(4) 到公式(5),这里面有点跳跃,现在在这里详细证明一下。
首先,令 , 则我们需要分析的矩阵乘法是:
我们先计算后两个相乘的部分:
则
信道系数矩阵 H 的自相关矩阵 R 中,主对角线上的元素都是实数,没有虚部。
又由于我们假定是 BPSK,只有 +1 和 -1 两种取值,所以在上面的求和公式中,i=j 的部分可以单独拿出来 (-1)*(-1) =1, 1*1 =1 :
这是与 无关的常量。
另外,当 时,因为 R 矩阵有共轭转置就是其自身的特性,所以:
珍惜环境,减少塑料垃圾进入河流海洋,谢谢了
