信息论第五章答案解析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5.1 设信源⎭
⎬⎫⎩⎨⎧=⎥⎦⎤⎢⎣⎡01.01.015.017.018.019.02.0)(765432
1x x x x x x x X P X (1) 求信源熵H(X); (2) 编二进制香农码; (3) 计算平均码长和编码效率。
解: (1)
symbol
bit x p x p X H i i i /609.2)01.0log 01.01.0log 1.015.0log 15.017.0log 17.018.0log 18.019.0log 19.02.0log 2.0()
(log )()(22222227
1
2=⨯+⨯+⨯+⨯+⨯+⨯+⨯-=-=∑= (2)
(3)
%1.8314.3609
.2)()(14.301
.071.0415.0317.0318.0319.032.03)(====
=⨯+⨯+⨯+⨯+⨯+⨯+⨯==∑K
X H R X H x p k K i
i i η
5.2 对信源⎭
⎬⎫⎩⎨⎧=⎥⎦⎤⎢⎣⎡01.01.015.017.018.019.02.0)(765432
1x x x x x x x X P X 编二进制费诺码,计算编码效率。
解:
%2.9574.2609
.2)()(74.201
.
041.0415.0317.0218.0319.032.02)(====
=⨯+⨯+⨯+⨯+⨯+⨯+⨯==∑K
X H R X H x p k K i
i i η
5.3 对信源⎭⎬⎫⎩⎨⎧=⎥
⎦⎤⎢⎣⎡01.01.015.017.018.019.02.0)(765432
1x x x x x x x X P X 编二进制和三进制哈夫曼码,计算各自的平均码长和编码效率。
解:
二进制哈夫曼码:
%9.9572.2609
.2)()(72.201
.041.0415.0317.0318.0319.022.02)(====
=⨯+⨯+⨯+⨯+⨯+⨯+⨯==∑K
X H R X H x p k K i
i i η
三进制哈夫曼码:
%4.913log 8.1609
.2log )()(8.1)
01.01.015.017.018.019.0(22.01)(22=⨯===
=+++++⨯+⨯==∑m L
K
X H R X H x p k K i
i i η
5.4 设信源⎪⎭
⎪
⎬⎫⎪⎩⎪⎨⎧=⎥
⎦⎤⎢⎣⎡12811281641321161814121)(87654321x x x x x x x x X P X (1) 求信源熵H(X);
(2) 编二进制香农码和二进制费诺码;
(3) 计算二进制香农码和二进制费诺码的平均码长和编码效率; (4) 编三进制费诺码;
(5) 计算三进制费诺码的平均码长和编码效率;
解: (1)
symbol
bit x p x p X H i i i /984.1128log 1281
128log 128164log 64132log 32116log 1618log 814log 412log 21)
(log )()(222222
228
1
2=⨯+⨯+⨯+⨯+⨯+⨯+⨯+⨯=-=∑=
=127/64 bit/symbol (2)
二进制香农码:
二进制费诺码:
(3)
香农编码效率:
%
100984.1984.1)()(64
/127984.17128
171281664153214161381241121)(======⨯+⨯+⨯+⨯+⨯+⨯+⨯+⨯=
=∑K
X H R X H x p k K i
i i η
费诺编码效率:
%
100984.1984.1)()(984
.17
128171281664153214161381241121)(=====⨯+⨯+⨯+⨯+⨯+⨯+⨯+⨯==∑K
X H R X H x p k K i
i i η (4)
(5)
%
3.943
log 328.1984.1log )()(328.14
128141281364133212161281141121)(22=⨯=⋅===⨯+⨯+⨯+⨯+⨯+⨯+⨯+⨯==∑m K X H R X H x p k K i
i i η
5.5 设无记忆二进制信源⎭
⎬⎫⎩⎨⎧=⎥
⎦⎤⎢
⎣⎡1.09.010
)(X P X
先把信源序列编成数字0,1,2,……,8,再替换成二进制变长码字,如下表所示。
(1) 验证码字的可分离性;
(2) 求对应于一个数字的信源序列的平均长度1K ; (3) 求对应于一个码字的信源序列的平均长度2K ; (4) 计算
1
2
K K ,并计算编码效率; (5) 若用4位信源符号合起来编成二进制哈夫曼码,求它的平均码长K ,并计算编码效率。
解:(1)满足Kcraft 不等式:
12282
149
1
=+⨯=--=-∑i K i
;由码树图可见,没有一个码字是其它码字的
前缀,码字均在树的终结点。
所以码字可分离。
8
1
234
56
7
1
1
1
11
1110
00000
(2)序列长度、序列概率及二元码长如下表所示:
数字符号信源符号/.69359
11==∑=i i i L p K
(3) 数字符号/.bit L p K i i
i
708629
1
2='=
∑=
(4)
信源符号/.bit K K 475601
2
=, 此值表示无记忆二元信源采用游程长度编码后每个二元信源需要的平均码长。
信源符号/.)(log )()(bit x p x p X H i i 46902
1i 2==∑=,%./)
(6981
2==
K K X H η
(5)4位信源符号的联合概率、Huffman 编码及码长如下表:(码字可以不同,但码长一样)
%.)
(/./,
/.)(295492604497021416
1
4==
====∑=K
X H Sym
bit K K Sym bit L s p K i i i η
5.6 有二元平稳马氏链,已知p (0/0) = 0.8,p (1/1) = 0.7,求它的符号熵。
用三个符号合成一个来编写二进制哈夫曼码,求新符号的平均码字长度和编码效率。
解:平稳时马尔科夫状态的概率:
⎩⎨
⎧=+-+=17018010100)()()().()(.)(S P S P S P S P S p 解得:⎩
⎨⎧==525
310/)(/)(S P S p 一阶马氏信源的熵:
sym bit S S P S S
p S p H j i j i j
i
i /.log log log )
|(log )|()(7860725
7
3253525142221
21
11=--+-
=-=∑∑
==+7
01130102001800052153023121321.)|(,
.)|(,.)|(,.)|(,
/)(,/)()|()|()()(=================S S p S S p S S p S S p S p S p S S p S S p S p S S S p
%
.//.)()()()(1490336162125327
125
3
25095250212502112512425049125123125481119
1
====
+⨯+++⨯++⨯+⨯
==+=∑K H
sym bit L s p K i i i η1
101
0101100111000011110006/250
9/25021/25021/25024/25024/25049/250
96/25015/250
36/250
45/250
60/250
94/250
154/250
00000
01
1
1
1
1
1
5.7 对题5.6的信源进行游程编码。
若“0”游程长度的截止值为16,“1”游程长度的截止值为8,求编码效率。
解:一阶马氏信源的熵同上题,sym bit H /.786011=+
二元平稳一阶记忆序列“0”游程的长度概率:
∑∞
=-=>=⎪⎩⎪⎨⎧=1
00
015
00
1100000
115
15
321i i l i
i i l i l
p l l p p p l p )(,...,,)(///
二元平稳一阶记忆序列“1”游程的长度概率:
∑∞
=-=>=⎪⎩⎪
⎨⎧=1
11
171
11
0111111
17
7
321i i l i
i i l i l p l l p p p l p )(,...,,)(///
“1”游程长度的熵:
信源符号/.2),()(log )
(log )(log log )(log log )(log )(log log )(log log )(log log )(log log ][log ][][log ][][/////////////////////////////////////////////bit p p H p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p
l p p p
p p p p
p p
p p l p l p l p l p l H i i i i i i i i i i i l l l l l i
l l l l l i i i
l i
i
6961111111711111101
17111
121
17111110271
171127111121
17
111111271110271171
1271171
1
1111112101110271
17
1
71
127111127
1
1011
11102101
1
17
171
127111011
12101
1
17
1
71
1271112111
211
1
1111111111=--=-----=----+--=-∂∂⋅⋅---=----=--=--=-=∑∑∑∑∑∑=-==--=--=∞=
同理,“0”游程长度的熵:
信源符号/.),()(][////bit p p H p p l H i 48331101000
015
000=--= 分别对“0”和“1”游程序列进行Huffman 编码,并分别计算出它们的编码效率。
“0”游程序列的长度、对应得概率、Huffman编码的二元码长及码字
数字符号
信源符号/.)())(()())(()
()()()()(5113517654312517654312171651514132150
01301906030200011150013011001701401012001013
012001001150
2
0070120040120001116
1
2=+++++++++=+++++++++=+++++++++++++++==∑=p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p L p L i i i %.././][199951134833200===L l H i η
“1”游程序列的长度、对应得概率、Huffman 编码的二元码长及码字:
数字符号
二元码字/.)())((////////'7324143217
1
12
11114
11102
1111108
1
2=++++++==∑=p p p p p p p p K p K i i i
%.../][759873
2696
2211==
=K l H i η %....][][/][/][][][11
1
01997325113696
2483322000=++=++=++=∴K L l H l H l H l H l H l H i i i i i i ηηη 可见满足10ηηη>>,这里的“0”游程编码效率高,因为游程长度长,而“1”游程编码效率受游程的长度限制显得比“0”游程编码效率略低一些,因此整体的编码效率介于两者之间。
5.8 选择帧长N = 63
(1) 对00100000,00000000,00000000,00000000,01000000,00000000,00000000,0000000编L-D 码;
(2) 对10000100,00101100,00000001,00100001,01001000,00000111,00000100,0000001编L-D 码 再译码;
(3) 对0000000000000000000000000000000000000000000000000000000000000000编L-D 码;
(4) 对10100011010111000110001110100110000111101100101000110101011010010编L-D 码;
(5) 对上述结果进行讨论。
解:(1)本帧内信息位数Q=2;各信息位位置值n 1=3,n 2=34;帧长N=63。
53052822
13411311=+=+==--=-∑C C C T Q
j j n j
Q 位和T 位需要的二进制自然码位数分别是:
⎣⎦⎣⎦⎣⎦11
195319536
64122
6322=====+log ,log )(log C C N Q N 所以,L-D 编码结果:000010,010********
解码:已知N=63,故前6位为Q 的自然码表示,所以Q=2;后11位为T 的自然码表示,得T=530 寻找某一值K ,使
,5,221130++<≤<≤K K Q K Q K C C C T C 即:得:K=33
再令,25285305302
3321
=-=-=-=C C T T K
再次寻找某一值L ,使
,,11111112+-+-<≤<≤L L Q L Q L C C C T C 即:得:L=2
所以解码出信息位的位置值是n 1=3,n 2=34
(2) 对10000100,00101100,00000001,00100001,01001000,00000111,00000100,00000010编L-D 码
本帧内信息位数Q=15;各信息位位置值n 1=1,n 2=6,n 3=11,n 4=13,n 5=14,n 6=24,n 7=27,n 8=32,
n 9=34,n 10=37,n 11=46,n 12=47,n 13=48,n 14=54,n 15=63;帧长N=63。
9470
95646769289920930527499120024039799044514067684845389106176501015059591254186856385671007888725657800100947128749512010015
1
63141541314812147111461013791348
1
32712761245114411331112161111
1=++++++++++++++=++++++++++++++==---------------=-∑C C C C C C C C C C C C C C C C T Q
j j n j Q 位和T 位需要的二进制自然码位数分别是:
⎡⎤⎡⎤⎡⎤47
98952213173426989522131734266
64121563
22=====+1log ,
1log )(log C
C
N Q
N
所以,L-D 编码结果:001111,1010110,11111101,01111111,10110101,00011000,11111110
解码:已知N=63,故前7位为Q 的自然码表示,所以Q=15;后47位为T 的自然码表示,得 T= 95646769289470 (a) 寻找某一值K ,使
,,15151194709564676928++<≤<≤K K Q K Q K C C C T C 即:得:K=62
(b)令,
550
25940193699920
9305274991=-=-=-=94709564676928947095646769281562C C T T Q K Q=Q-1
重复步骤(a )(b )每次寻找出一个K 值,得:
解出的各信息位位置值:
n 1=1,n 2=6,n 3=11,n 4=13,n 5=14,n 6=24,n 7=27,n 8=32,n 9=34,n 10=37,n 11=46,n 12=47,n 13=48,n 14=54,n 15=63;
(3) 本帧内信息位数Q=0;帧长N=64
Q 位和T 位需要的二进制自然码位数分别是:
⎡⎤⎡⎤⎡⎤0
765120
6422=====+1log ,1log )(log C C N Q N 所以,L-D 编码结果:0000000
解码:已知N=64,故前7位为Q 的自然码表示,所以Q=0。
表示64位全零。
(4)“0”、“1”数几乎相等,用一般的能表示15位十进制整数的数学软件已无法表示其T 值,可以肯定的是,其编出的码要比64bit 二进制还要长。
(5)L-D 编码的结论是,全0、全1、或少量的0、1可以编出短码,当冗余位和信息为相当时,
反而使其码长增加,此时不宜使用L-D编码。