資訊理論實驗 通道容量迭代演算法 C 實現

2021-08-07 05:26:43 字數 2335 閱讀 5998

熟悉通道容量的迭代演算法;

學習如何將複雜的公式轉化為程式;

已知:信源符號個數r,新宿符號份額數s、通道轉移概率矩陣p;

輸入:任意的乙個通道轉移概率矩陣。r、s、p在執行時從鍵盤輸入。

輸出:最佳信源分布p『,通道容量c。

乙個通道,若給定輸入分布q(x) ,和轉移概率分布p(y|x) ,則輸出概率分布為 θ(

y)=∑

xq(x

)p(y

|x)

對dmc通道有θ(

y)=∑

xq(x

)p(y

|x)

當研究聯合 空間xy時,則通道輸出和輸入之間的平均互資訊量為 i(

x;y)

=∑k=

0k−1

∑j=0

j−1q

kp(j

|k)l

ogp(

j|k)

∑k−1

k=0q

ip(j

|i)

=h(y

)−h(

y|x)

=h(x)−h

(x|y

) 從上述公式中,當通道輸入為x,接收端得到的平均資訊量 i(x;y)是通道輸入概率和通道轉移概率的函式。一般干擾越大,傳輸的資訊量就越小。現在研究通道哦給定,即 給定的情況下,如何選擇輸入分布 qk

使傳輸的資訊量 i(x;y)達到最大。

通道容量的定義: c=

maxi

(x;y

) 即c為改變輸入分布時,使每個符號所能含有的平均互資訊量的最大值。相應的輸入分布稱為最佳輸入分布。

演算法流程:

1. 取出時分布 r(

0),置k=0。

2. 由公式 q(

k)(x

|y)=

p(y|

x)r(

k)(x

)∑xp

(y|x

′)r(

k)(x

′)計算q(

k)(x

|y)

3. 由公式rk

+1(x

)=∏y

q(k)

(x|y

)p(y

|x)∑

x′∏y

q(k)

(x′|

y)p(

y|x)

計算r(

k+1)

4. 由公式 c(

k+1)

=i(r

(k+1

),q(

k))

5. 若|c

(k+1

)−c(

k)|≤

δ ,進入第7步。

6. 令k=

k+1 , 轉向第二步

7. 程式結束輸出最佳輸入分布r(

k+1)

及c(k

+1)

根據演算法的基本原理和迭代的流程進行程式編寫。

程式**如下

#include

#include

#include

void printmessage();

int main()

for (i = 0; i < r; i++)

p[i] = (double)(1.0 / (double)r);

//設初始信源分布為等概分布

do

y = 0.0;

for (i = 0; i < r; i++)

z[i] = (pow(2.0, z[i]));

y = y + z[i];//z[i]為ip的分母部分

}for (i = 0; i < r; i++)

c = (log(y) / log(2.0));//求通道容量單位為「bit」

} while (fabs((c - a) / c) > epsilon);

printf("!----------迭代次數為:k=%d --------!\n", k);//輸出迭代次數

printf("!----------最佳信源分布為:--------!\n\n");

for (i = 0; i < r; i++)

printf("\n");

printf("!----------通道容量為:c=%.3lf bit --------!\n\n", c); //輸出通道容量,保留3位小數

getchar();

getchar();

}void printmessage()

執行過程需要輸入信源符號個數,信宿的個數和對應的狀態轉移矩陣。最終通過迭代過程獲得通道容量和對應的最佳輸入分布。

求高斯通道的通道容量 資訊理論

clear,clc 一維二元高斯通道的通道容量 xn 8000 定義點數 m1 0 m2 1 訊號引數 sigma1 0.38 sigma2 0.5 高斯雜訊引數 xmin min m1 5 sigma1,m2 5 sigma2 xmax max m1 5 sigma1,m2 5 sigma2 定義...

資訊理論 離散通道及其容量筆記

1.通道容量是資訊能夠可靠傳輸的最大傳輸速率。通道容量定義為通道輸入與輸出平均互資訊的最大值。通道容量僅於通道特性,通道轉移概率有關,與通道輸入無關。但是通道輸入概率必須與通道容量進行匹配才能達到容量。2.單符號離散通道 乙個平穩離散無記憶通道的容量 c定義為輸入與輸出平均互資訊 i x y 的最大...

603通道與通道容量

目錄 通道分類與模型 通道傳輸特性 通道容量 狹義通道 訊號傳輸介質 廣義通道 訊號傳輸介質和通訊系統的一些變換裝置 調製通道 訊號從調製器的輸出端傳輸到解調器的輸入端經過的部分 編碼通道 數碼訊號由編碼器輸出端傳輸到解碼器輸入端經過的部分 恆參通道 各種有線通道和部分無線通道,傳輸特性變化小 緩慢...