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

книги из ГПНТБ / Бовбель, Е. И. Элементы теории информации

.pdf
Скачиваний:
10
Добавлен:
19.10.2023
Размер:
6.15 Mб
Скачать

Разложение каждого Qt продолжается до тех пор, пока число членов разложения не окажется в пределах

Iog Р(хі) ^ w ^ 1 + 1о§ Р{Хі) *

Остальные члены разложения отбрасываются. Таким об­ разом, каждому сообщению xt сопоставляется двоичное число (код) у 1г содержащее ^ членов: Qi~q__x<7_2?_3 ...

q = уі, где Рі определяется выражением (*).

Поясним процедуру коди розап ия на предложейиом выше примере. Результаты расчетов сведем в табл. 15.

 

 

 

 

 

Т а б л и ц а 15

•ѵ/

P(x.)

l0Sp('-/)

ч

Q;

Qi

Код

 

 

 

Хі

1/2

0

2

0

0-0+...

00

X2

1/4

2

0

1/4

1/2-0 + 1/4-1 + 1/8-0+...

01

4*

*s

1/8

3

3

2/4

1/2-1+1/4-0+1/8-0+...

100

X4

1/8

3

3

5/8

1/2-1 + 1/4-0+1/8-1+...

101

*5

1/8

3

3

6/8

1/2-1 + 1/4-1+1/8-0+...

110

Хб

1/16

4

4

7/8

1/2-1 + 1/4-1-1-1/8-1 + 1/16-Ѳ+...

1110

X"i

1/32

5

5

15/16

1/2 - 1+1/4 - 1+ 1/8 - 1 -f-1/16-1 +

11110

 

1/32i

5

 

31/32

+ 1/32-0+...

 

xa

5

1/2-1 + 1/4-1 + 1/8-1 + 1/16-1 +

11111

 

 

 

 

 

-j-1/32 1-{-...

 

Задача 1. Независимые сообщения Х\, х% ,ѵ3, Х\ появ­ ляются соответственно с вероятностями 1/2, 1/4, 1/8, 1/8 и кодируются по методу Шеннона — Фано: 0,10, ПО, 111. Показать, что в получающейся последовательности кодо­ вых слов символы «0» и «1» встречаются с равными ве­ роятностями.

Р е ш е н и е . Вероятность символа «0» определим как отношение среднего числа сим-волов «0» в кодовых словах к средней длине кодового слова:

£ «оР(хі)

р/Пч =

/Й_________________ 1/2-1+1/4-1 + 1/8-1

_

7/8

_

1

yü)

■ L

1/2-1 + 1/4.2+Т /8-3+1/8-3

14/8

2*

Аналогично Р (1)'=1/2, что и требовалось-показать. Задача 2. Источник независимо друг от друга выраба­

тывает два различных сообщения Х\ и х<і с вероятностями

80

Р(х\) = 0,9 и Р(х2) =0,1.- Произвести кодирование по ме­ тоду Хаффмана: а) отдельных сообщений; б) сообщений, составленных по два в группе; в) сообщений, составлен­ ных по три в группе. Сравнить коды по экономности (L), по скорости передачи (I) и по избыточности (R). Длитель-

мости кодовых символов одинаковы и равны т0 = 10~ с. Р е ш е ін и е. Энтропия источника сообщений

Н(Х) = 0,91og0,9 0,1 logO, 1 = 0,469 (бит).

а) При кодировании отдельных сообщений методом Хаффмана сообщению Х\ сопоставляется кодовый символ «1», а сообщению х2 «0». Средняя длина кодового симво­ ла при этом L= 0,9*1+0,1 • 1 = 1. Скорость передачи

7

В Д

=

О 4RQ

= 469000 (бит/с),

 

< т >

 

 

что составляет 46,9% от пропускной способности С = 1/т. Избыточность кода равна избыточности источника сооб­ щений:

 

Яшах (*) -

ЩХ)

1 — 0,469

0,531.

 

 

 

Ятах СО

1

 

 

 

 

 

б) Для повышения эффективности кода перейдем к

кодированию групп сообщений (табл. 16).

 

 

 

 

 

 

 

Таблица

16

*1

Р(*і' Xj)

Объединение сообщений

Код

 

Хі *1

0,81

0,81

0,81—

1,0

1

1

Х\ х 2

0,09

- .0,10-7 |— 0, 9-0

-

ob

2

х 2 *1 -

0,09-

0,09—Q

 

011

3

Х2 Х2

• °-01_0

 

 

 

010

3

 

 

 

 

 

 

Средняя длина кодового слова, приходящегося на од­ но сообщение:

L = у (1- 0,81+2-0,09+3-0,09+3-0,01) =0,645.

Скорость передачи при этом

Т _

Я(А)

_

0,469

= 727000 (бит/с),

1 ~~

< т >

*“

0,64510'ü

 

6' За к. 2340.

81

00000

82

что составило 72,7% от максимально возможной скоро­ сти передачи (10б бит/с).

Чтобы найти избыточность кода, вычислим вероят­ ность появления кодового символа «О»:

0,09-2 4- 0,09-1 0,01-2 0,645-2

Р( 1) = 1 — Р(0) = 0,77.

Энтропия кода

Нк= —0,23 logO,23—0,77 log 0,77 = 0,778 (бит);

избыточность Rk = 1 — Hk 0,222.

в) Наконец, перейдем к кодированию групп сообще­ ний, содержащих три сообщения в группе (табл. 17).

Средняя длина кодового слова, приходящаяся на од­ но сообщение, в этом случае будет

L = у (0,729+0,081 -9+0,009-15+0,001-5) =0,533.

При этом скорость передачи

0,469

880000 (бит/с),

0,533-10-6

что составляет 88% от С. Вероятность появления симво­ ла «0»

0,08Ь5+0,009-11+0,001-5

0,533-3

Р( 1) = 1 - Р ( 0 ) = 0,68. .

Найдем энтропию и избыточность кода в этом случае:

Я* = —0,32 log 0,32—0,68. log 0,68=0,904; '

Rk = 1 - Hk = 0,096.

Сведем полученные результаты в табл. 18.

 

 

 

 

Т а б л и ц а 18

Вычисляемая

Число сообщении в группе

Предельное значение

 

 

 

величина

1

2

3

вычисляемой величины

L

- 1

0,645

0,533

Н{Х)!log 2 = 0,469

I , бит/с

469000

727000

880000

С = = 1000000

Р(0)

0,9

0,23

0,32

Р(0) =

0,5

р{ о

0,1

0,77

• 0,68

/>(1) =

0,5

Rk. %

53,1

22,2

9,6

 

0

83

‘ Если кодировать группы по четыре и более сообщений, мы еще более приблизимся к предельным значениям вы­ числяемых величин. • •

Задача 3. Закодировать методом Хаффмана сообще­ ния источника, описываемого схемой вида

Х1

Х2

Х3

Х\

Л'-

xG

х 7

0.4

0,2

0,2

0,05

0,05

0,05

0,05

в кодовом алфавите, содержащем три различных символа уи Уъ Уъ- Вычислить экономичность полученного кода.

Ре ш е и и е. Энтропия источника

Н(Х) = 0 ,4 lo g 0,4+0,4 log 0,2+0,2 lo g 0,05 = 2,322 (бит).

Процедура составления кода Хаффмана в этом случае иллюстрируется табл. 19.

 

 

 

 

 

 

 

Т а б л

и ц а

19

-ѵг

 

Построение кодовых комбинаций

 

Код

 

ЛТ

0,4

0,4

 

 

0,4

у3

1,0

 

 

У»

X*

0,2

0,2

у,

0,4

У-

 

 

 

Уі

*3

0,2

0,2

 

0,2

 

 

y a У3

Ха

0,05

- 0,15 у2

 

Уі

 

 

r s Ki

-*5

0,05 у 3

0,05

 

 

 

 

У, Vo У3

*0

0,05 у 0

 

Уз

 

 

 

 

У* У2 У2

 

0 ,0 5 ^

 

 

 

 

 

 

у

2

Уі

 

 

 

 

 

 

 

 

г У

Экономичность

кода

 

 

 

 

 

 

 

 

L =

0,4-1 +0 , 2 - 1

+ 0 ,2 .2 + 0 ,0 5 -2

+ 0,05-9 =

 

 

 

 

 

Н(Х)

_

2,322

 

 

 

 

 

=

1,55 >

log 3

=

1,585

1,46.

 

 

 

Задача 4. Проверить, что выписанная наугад произволь­ ная последовательность кодовых символов легко декоди­ руется, если кодирование производится методами Шен­ нона — Фано и Хаффмана.

Задача 5. Проиллюстрировать теорему Крпфта на при­ мере кодирования 15 сообщений кодовым алфавитом, со­ держащим три различных символа а, b и с

Р е ш е н и е. Так как число сообщений (лг = 15) боль- ше числа кодовых символов (л г = 3 ), то каждому сооб-

84

щеншо необходимо ставить в соответствие более одного кодового символа.

Первое сообщение (х\) можно закодировать любым кодовым символом, к примеру, символом а. Таким обра­

зом, число кодовых символов длиной 1 Іл= \ < і т =

3. Со­

общения

х\ и х2 следует кодировать так, чтобы кодовые

словане содержали в начале кодового символа а,

иначе

кодовые

слова будут перекрываемы. Каждому из сооб­

щений х\

и х 2 сопоставим кодовые слова, содержащие, к

примеру,

два кодовых символа. Число различных после­

довательностей по два символа,

составленных из трех

различных символов, равно 32 = 9:

 

 

 

аа, ab, ас, Ъс, ba, cb, ca, bb, сс.

(3.36)

Из всех последовательностей (3.36)

можно использовать

для кодирования сообщений Х\ и х 2 только т ( т 1\) =

= 3(3— 1) = 6 следующих;

bc, ba, cb, ca, bb, сс.

Для этого

возьмем первые две из

них, т.

е. закодируем

сообщение

х2 последовательностью

Ьс, а

д-з— Ьа, Тогда

число использованных для кодирования кодовых слов, со­ держащих два кодовых символа, l2 = 2<ijn(m 1\) — 6. Для кодирования оставшихся сообщений используем ко­ довые слова, содержащие по три кодовых символа. Число их равно 33= 2 7 . Выпишем их;

abc

abb

aac

 

acb

bab

аса

 

Ьас

bba

caa

 

Ьса

cca

bbc

 

cab

cac

bcb

(3.37)

cba

acc

ebb

 

aab

aaa

ccb

 

aba

bbb

ebe

 

baa

ccc

bcc

 

Для последующего кодирования мы не должны использо­ вать в таблице (3.37) те последовательности, которые со­ держат в начале себя символ а (х\) и кодовые слова Ьс (х2) и Ьа (хг). Оставшихся последовательностей (3.37)

/:{ = [т(чп Іі)— /2]/?г = 12

оказывается достаточно для кодирования сообщений лг4, х$, ..., Хіз. Тогда кодовая таблица будет выглядеть так:

85

X,-

|Л '1

* 3

Х3 X , *5 Хл Л*7 ЛГ* X,, Л 'ю

Х и

Хк

Х із

Х и

-Ѵі5

код

I а

be

ba cab eba ЬЬа сса сас ЬЬс ссс

саа

bbc

ebb

ccb

ebe

Легко видеть, что произвольная последовательность кодо­ вых символов

aacccbcccccbbababccbacaaacbc

декодируется без разделительных символов:

Х\Х\Х\ QX2X1qX1 3 Х1 X1 3 ХIX3 Х2 Х5 Х1 1 ^ 1 ^ 1 5

Задача 6. Источник вырабатывает 16 различных сооб­ щений. Энтропия источника Н ( Х ) = 2 (бит). Показать, что равномерное двоичное кодирование сообщений не яв­ ляется оптимальным.

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

2^-— 16, откуда- (X= 4 . Таким образом, каждому из 16 сообщений сопоставляется кодовое слово, состоящее из 4 двоичных чисел. Очевидно, при этом средняя длина ко­ дового слова L = 4 .

Из теоремы (Шеннона) о кодировании следует, что средняя длина кодового слова (при подходящем кодиро­ вании) может быть

L ЩХ)

2

Jog т

 

что и доказывает неоптимальность равномерного кода.

I

Г Л А В А 4

ДИСКРЕТНЫЕ КАНАЛЫ С ШУМАМИ

1

 

§ 1. Модель канала связи, в котором действуют шумы

Ввиду наличия шумов в канале передачи информации нарушается соответствие между переданными и приняты­ ми сообщениями. Чем выше уровень шумов, тем сильнее разрушается это соответствие.

Для ослабления действия шумов в информационную систему приходится вводить два дополнительных устрой­ ства— кодер II и декодер I (рис. 4). Назначение второго

источник

н одеріL кодерИ

линия

сообщений

связи

Рис. 4

кодера состоит в реализации помехоустойчивого кодиро­ вания сигналов, В простейшем случае 2-е кодирующее устройство многократно повторяет те сигналы кодера I, которые наиболее сильно подвержены, действию шума в линии связи; последующее сличение многократно пере­ данных сигналов уменьшает вероятность их неправильно­ го приема. Однако такой метод помехоустойчивого коди­ рования резко увеличивает необходимое время передачи; Заметим, что во всех случаях кодер вносит ту или иную избыточность’в сигналы, выдаваемые кодером I, благода­ ря чему помехоустойчивость системы растет.

Назначение декодера I состоит в том, чтобы восста­ навливать по принятому сигналу соответствующий сигнал ііа выходе кодера I.

Функции, выполняемые кодером I и декодером II, та­ кие же, как в схеме на рис. 3.

Рассмотрим подробнее вопрос о введении избыточно­ сти вторым кодирующим устройством на примере равно­ мерного кода.

87

Пусть на выходе кодера I появляются двоичные кодо­ вые слова одинаковой длины (х, соответствующие пере­ даваемым сообщениям. Чтобы декодер I имел возмож­ ность'обнаруживать и исправлять ошибки, 2-е кодиру­ ющее устройство по некоторому правилу добавляет |хЛ корректирующих двоичных символов к каждому кодово­ му слову, поступающему на его вход. В результате полу­ чаются кодовые слова длиной символов, которые затем .передаются по линии связи с шумами, где некото­ рые символы искажаются (символ «1» подменяется сим­ волом «О», а символ «О»— символом «1»).

При этом число различных передаваемых кодовых слов меньше числа всех возможных кодовых слов, полу­ чаемых на выходе линии связи, т. е.

 

N = «Г < Л'0=

,

 

(4.1)

где т — число различных кодовых символов.

называют

N различных передаваемых

кодовых

слов

р а з р е ш е н н ы м и , а No— N

кодовых

слов

з а п р е ­

ще н н ыми .

Если в результате ошибок переданное (раз­

решенное)

кодовое слово перейдет в одно из запрещен­

ных, ошибка будет о б и а р у ж е и а декодером

I при ус­

ловии, что в его запоминающем устройстве хранятся все разрешенные кодовые слова. Если же в результате оши­ бок переданная комбинация превращается в одну из раз­ решенных, ошибка декодером I не обнаруживается.

Таким образом, корректирующий код, удовлетворя­ ющий условию (4.1), способен в N(N0— N) случаях обна­ руживать ошибки из общего числа NqN. Однако если іѴ < < іѴ0, разрешенные комбинации могут быть выбраны с учетом вероятностных свойств шума так, чтобы вероят­ ность получения ошибочной разрешенной комбинации была очень мала. Другими словами, при Лгс<С-Ѵ0 в ре­ зультате ошибочного приема отдельных символов приня­ тое кодовое слово, как правило, окажется запрещенным, что и укажет на ошибку.

Для принятия однозначного решения о том, какое ко­ довое слово было отправлено, в общем случае все мно­ жество принимаемых кодовых слов No разбивается по не­ которому правилу на N подмножеств. Каждое подмноже­ ство отождествляется с одним из разрешенных кодовых слов. Если, например, принятое кодовое слово попало в і-е подмножество, считается, что было передано і-е кодо-

88

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

Эта задача в общем виде разрешается теоремами Шеннона, которые мы докажем в § 3 настоящей главы.

§ 2. Пропускная способность дискретного канала связи с шумами

Соотношения (3.1) — (3.3), определяющие скорость пе­ редачи и пропускную способность канала и линии связи, были получены нами в общем случае. Поэтому они при­ менимы как для дискретных, так и для непрерывных ка­ налов, как для каналов без шумов, так и для каналов с шумами. Разница заключается в способе вычисления ко­

личества информации.

 

 

 

Задача 1. По линии связи с шумами передаются два

различных сигнала у0 и у\

с вероятностями

соответст­

венно Ро и Р 1. На приемной стороне сигнал уо обозначим

Z0,

а у 1 через Z\. Заданы вероятности ошибочного прие­

ма:

P(Zo/y\) = Pl; P(Z\/yo) =

P n. Длительности сигналов-

Уо и у\ одинаковы и равны

~0. Определить

пропускную

способность такой линии связи с шумами.

 

Р е ш е и и е.

Пропускную способность заданной линии

связи будем определять по формуле (3.3):

 

-

С m ax

Шах / (Z,

К") ,

 

где

 

H ( Z r ) - H ( Z T I YT )

 

/(Z,

Y) =

(4.3)

lim

Т

 

 

'P -*■ со

 

Так как длительности сигналов одинаковы, то Т — М^г

где М — число

сигналов в последовательности

длитель­

ностью Т. Если H(Z)— энтропия, приходящаяся

на один

сигнал Zt (і =

0,1), то энтропия, приходящаяся на М та­

ких сигналов,

H (Z r) = M H ( Z ) .

(4.4)

Аналогично

N ( Z T/ Y T) = M H { Z / Y ) .

(4.5)

 

Соседние файлы в папке книги из ГПНТБ