我的任务是为低密度奇偶校验码实现循环信念传播算法。这段代码使用了一个相当稀疏的奇偶校验矩阵 H(比如 750×1000 二进制矩阵,每列平均大约有 3 个“1”)。生成奇偶校验矩阵的代码取自这里
无论如何,子任务之一是在矩阵 H 的密度增加时检查 LDPC 码的可靠性。因此,我将通道容量固定为 0.5,将代码速度固定为 0.35,并开始增加矩阵的密度。随着列中“1”的平均数量以 1 为步长从 3 变为 7,灾难就会发生。使用 3 或 4,代码可以很好地应对。随着更高的密度,它开始失败:它不仅有时无法收敛,而且经常收敛到错误的码字并产生错误。
所以我的问题是:随着稀疏奇偶校验矩阵变得更密集,LDPC 码的预期行为类型是什么?对于熟练的读心者来说,一个额外的问题:在我的情况下(随着代码性能下降),更可能是因为 Loopy Belief Propagation 算法无法保证收敛,还是因为我在实现它时犯了错误?