Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Глава 4. Информационные процессы и сигналы.doc
Скачиваний:
83
Добавлен:
16.04.2015
Размер:
463.36 Кб
Скачать

Эффективное статистическое кодирование сообщений. Теорема Шеннона для каналов без помех

Для дискретных каналов без помех К. Шенноном была доказана следующая теорема (первая теорема Шеннона):

Если производительность источника = C  ε, гдеε– сколь угодно малая величина, то всегда существует способ кодирования, позволяющий передавать по каналу все сообщения источника. Передачу всех сообщений при> C осуществить невозможно.

Как бы ни была велика избыточность источника, все его сообщения могут быть переданы по каналу, если R < C.

Для рационального использования пропускной способности канала необходимо применять соответствующие способы кодирования.

Эффективным статистическим кодированиемназывается кодирование, при котором статистические характеристики источника информации согласуются с характеристиками канала связи.

При эффективном кодировании фактическая скорость передачи информации приближается к пропускной способности канала.

Рассмотрим основные принципы оптимального кодирования для двоичного канала без помех. Пусть источник оперирует алфавитом символов ai,i=1…M. Вероятность каждого символаP(ai).Кодер преобразует символaiв двоичную последовательность длинойni. Средняя длительность кодовой комбинации одного символа первичного алфавита вычисляется так:

, гдеτ0– длительность одного элемента кода.

При этом средняя длина кода определяется как . (4.5)

Соответственно тогда τ = Kτ0.

Величина V/Kопределена ранее как среднее число знаков первичного алфавита, транслируемых по каналу в единицу времени. Соответственно, величинаK/V– это средняя длительность трансляции одного знака первичного алфавита, т.е.τ=K/V.

Значит, в соответствии с формулой (4.4) скорость передачи в канале . Подставляя выражения для средней длительности и энтропии, получим:

. (4.6)

В выражении (4.6) значение числителя определяется исключительно статистическими свойствами источника, а τ0– свойствами канала связи. Возникает вопрос: можно ли так закодировать сообщение, чтобы скорость передачи достигала своего максимального значения? Максимальная скорость передачи определяется пропускной способностью канала связи. Для двоичного канала:. ЧтобыJравнялосьСнадо чтобыni = - log2P(ai). Применение неравномерного кодирования (например, кода Шеннона-Фано) может приблизить длину кодаni к величине- log2P(ai).

Пример 4.2. Первичный алфавит состоит из трех знаковA,B,Cс вероятностямиpA = 0,2;pB = 0,7;pC = 0,1. Для передачи по каналу без помех используются код Шеннона-Фано. Частота тактового генератора500Гц. Какова пропускная способность канала и скорость передачи?

Решение. Поскольку код Шеннона-Фано – двоичный, тоm = 2;C =V = 500бит/с.

Энтропия источника: H = – 0,2·log20,2 – 0,7·log20,7 – 0,1·log20,1 = 1,16 бит

Длительность одного бинарного разряда в канале τ0=1/V=0.002c.

Закодируем первичный алфавит кодом Шеннона-Фано: A→10,B→0,C→11, длины кодов будут равны:nA = 2;nB = 1;nC = 2

Средняя длина кода = 0.2·2 + 0.7·1 + 0.1·2 = 1.3

Следовательно, получаем:

(бит/с).

По сравнению с равномерным двоичным кодом (см. пример 4.1) скорость передачи возросла на 54% и приблизилась к пропускной способности.

Пример 4.3. Можно ли с помощью кодирования еще больше увеличить скорость передачи?

Решение. Первичный алфавит из примера 4.2 будем кодировать по парам символов (это так называемое укрупнение кодов). Пары символов, их вероятности, коды Шеннона-Фано и длины кодовых последовательностей приведены в таблице:

Символ

Вероятность

код

длина

BB

0.7∙0.7=0.49

0

1

AB

0.2∙0.7=0.14

100

3

BA

0.14

101

3

BC

0.07

1100

4

CB

0.07

1101

4

AA

0.04

1110

4

CA

0.02

11110

5

AC

0.02

111110

6

CC

0.01

111111

6

Средняя длина кодового слова для пары (см. формулу (4.5)) равна 2.42, следовательно, для одного символа – 1.21.

Скорость передачи (бит/с).

Скорость передачи еще больше приблизилась к своему пределу – пропускной способности канала.

Эффективность кода определяется соотношением средней длины кода K, энтропии источникаHи оптимальной энтропииHO. Коэффициент общей эффективности кода показывает, насколько выбранный код соответствует статистическим характеристикам источника. Коэффициент статического сжатия показывает соответствие кода идеальному (оптимальному) источнику.