Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
26
Добавлен:
02.05.2014
Размер:
1.35 Mб
Скачать

1.6. Кодирование укрупненных сообщений.

В рассмотренных экономных кодах каждому исходному сообщению, например, символу алфавита, ставится в соответствие кодовое слово (переменной длины). Экономность кода можно повысить, если кодировать не отдельные сообщения, а целые последовательности сообщений (например, всевозможные пары символов или всевозможные тройки символов и т.д.). Поясним это на примере, в котором в исходном алфавите имеются лишь два различных символа (сообщения): А и В с вероятностями появления 0.7 и 0.3 соответственно.Будем их кодировать, например, методом Шеннона-Фано.

Кодирование исходного двухсимвольного алфавита тривиально, получается простейший равномерный код:

Символ:

Вероятность:

Кодовое слово:

Средняя длина

А

0.7

1

кодового слова:

В

0.3

0

1 бит/символ

Применим экономное кодирование к всевозможным двухсимвольным комбинациям (символы появляются в последовательности независимо):

Символ:

Вероятность:

Кодовое слово:

Средняя длина

АА

0.49

1

кодового слова:

АВ

0.21

01

0.905

ВА

0.21

001

бит/исходный

ВВ

0.09

000

символ

Экономность кода повысилась. Еще лучше результаты дает кодирование трехсимвольных комбинаций:

Символ:

Вероятность:

Кодовое слово:

Средняя длина

ААА

0.343

11

кодового слова:

ААВ

0.147

10

АВА

0.147

011

0.895

ВАА

0.147

010

бит/исходный

АВВ

0.063

0010

символ

ВАВ

0.063

0011

ВВА

0.063

0001

ВВВ

0.027

0000

При дальнейшем укрупнении сообщений средняя длина кодового слова уменьшается, стремясь к предельному значению, приблизительно равному 0.881 бит/исходный символ.

Повышение экономности кода при укрупнении кодируемых сообщений достигается за счет того, что при укрупнении увеличивается число кодируемых сообщений и ассортимент возможных значений вероятностей их появления. За счет этого удается точнее подбирать приблизительно равновероятные подмножества сообщений на каждом шаге кодирования. Интригующим является тот факт, что для заданного множества исходных сообщений и вероятностей их появления имеется некоторый предел уменьшения средней длины кодового слова. С практической точки зрения было бы весьма полезно уметь заранее вычислять этот предел (до построения экономного кода).

Соседние файлы в папке Лекции по информатике2