Дано сообщение из канала связи с вероятностями символов p(a)=0.5, p(b)=0.25, p(c)=0.25: постройте оптимальный префиксный код (например, по алгоритму Хаффмана), вычислите энтропию и среднюю длину кода, обсудите пределы сжатия и как меняются выводы при добавлении коррелированных символов

27 Окт в 13:42
6 +6
0
Ответы
1
Оптимальный префиксный код (Хаффман):
- Один из оптимальных кодов: a↦0, b↦10, c↦11a \mapsto 0,\; b \mapsto 10,\; c \mapsto 11a0,b10,c11.
Энтропия источника:
H=−∑x∈{a,b,c}p(x)log⁡2p(x)=−12log⁡212−14log⁡214−14log⁡214=12+12+12=1.5 бит/символ. H = -\sum_{x\in\{a,b,c\}} p(x)\log_2 p(x)
= -\tfrac12\log_2\tfrac12 - \tfrac14\log_2\tfrac14 - \tfrac14\log_2\tfrac14
= \tfrac12 + \tfrac12 + \tfrac12 = 1.5\ \text{бит/символ}.
H=x{a,b,c} p(x)log2 p(x)=21 log2 21 41 log2 41 41 log2 41 =21 +21 +21 =1.5 бит/символ.

Средняя длина кода:
L=∑xp(x)ℓ(x)=12⋅1+14⋅2+14⋅2=1.5 бит/символ. L = \sum_x p(x) \ell(x) = \tfrac12\cdot1 + \tfrac14\cdot2 + \tfrac14\cdot2 = 1.5\ \text{бит/символ}.
L=x p(x)(x)=21 1+41 2+41 2=1.5 бит/символ.
Здесь L=HL=HL=H, значит полученный префиксный код достигает энтропии (нулевая избыточность).
Пределы сжатия и общие неравенства:
H≤L<H+1 H \le L < H+1
HL<H+1
(для кодов на отдельных символах). Для блочных кодов длины nnn выполняется
H(Xn)n≤Ln<H(Xn)n+1n, \frac{H(X^n)}{n} \le L_n < \frac{H(X^n)}{n} + \frac{1}{n},
nH(Xn) Ln <nH(Xn) +n1 ,
и при n→∞n\to\inftyn можно приближаться к энтропийной скорости источника.
Как меняются выводы при добавлении коррелированных символов:
- При наличии корреляций полезна не односимвольная статистика, а условная/блочная: энтропийная скорость равна lim⁡n→∞H(Xn)/n\lim_{n\to\infty} H(X^n)/nlimn H(Xn)/n и может быть меньше энтропии одиночного распределения.
- Хаффман, построенный на одном символе, не использует корреляцию; чтобы её учесть, кодируют блоки (блочный Хаффман) или применяют адаптивные/арифметические методы с моделью контекста. При блочном кодировании неэффективность на символ падает не более чем на 1/n1/n1/n.
- Пример: если второй символ однозначно определяется первым, условная энтропия H(Y∣X)=0H(Y|X)=0H(YX)=0 и энтропийная скорость уменьшится вдвое по сравнению с энтропией по одиночному распределению; это даёт возможность дополнительного сжатия ниже HHH одиночного распределения, но не ниже энтропийной скорости источника.
Краткий вывод: для заданных вероятностей оптимальный префиксный код приведён выше, он достигает энтропии 1.51.51.5 бит/символ; при наличии корреляций следует учитывать условную/блочную энтропию и применять блочные или статистические методы кодирования, чтобы приблизиться к реальной энтропийной скорости.
27 Окт в 14:37
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир