需要帮助在Matlab中实现基本二进制对称通道

时间:2013-05-31 16:25:23

标签: matlab probability information-theory

我正在研究Cover,Thomas“信息理论要素”,并希望尝试实现一个二元对称通道的简单例子。也就是说,我可以指定一条消息“1001”,一个编码“11000011”(基本上重复每一位两次),一个通道定律:p(y | x),我想在接收器上看到我的后验更新。

现在说实话,我甚至不知道从哪里开始,我似乎无法在网上找到太多的内容。我发现的大部分内容都是使用Matlab的simulink来抽象出这个过程。我实际上想要将分布指定为向量等等。任何指针都会很棒!

编辑:我不知道这个问题是否适合DSP.SE,但如果是这样,我可以将其移除。

1 个答案:

答案 0 :(得分:1)

二进制对称通道只是以一定的概率翻转位。

x = [1, 1, 0, 0, 0, 0, 0, 0, 1, 1];
p = 0.1; % with probability p, make an error
errorbits = rand(size(x)) < p; % toss some biased coins and make a logical index
y = x; % first perfectly copy
y(errorbits) = 1 - y(errorbits); % make 0 -> 1 and 1 -> 0

你是否看到这是一个实现对称二进制通道的$ P(y | x)$?